#include <G4ClassicalRK4.hh>
|
| G4ClassicalRK4 (G4EquationOfMotion *EquationMotion, G4int numberOfVariables=6) |
|
| ~G4ClassicalRK4 () override |
|
| G4ClassicalRK4 (const G4ClassicalRK4 &)=delete |
|
G4ClassicalRK4 & | operator= (const G4ClassicalRK4 &)=delete |
|
void | DumbStepper (const G4double yIn[], const G4double dydx[], G4double h, G4double yOut[]) override |
|
G4int | IntegratorOrder () const override |
|
| G4MagErrorStepper (G4EquationOfMotion *EqRhs, G4int numberOfVariables, G4int numStateVariables=12) |
|
| ~G4MagErrorStepper () override |
|
| G4MagErrorStepper (const G4MagErrorStepper &)=delete |
|
G4MagErrorStepper & | operator= (const G4MagErrorStepper &)=delete |
|
void | Stepper (const G4double y[], const G4double dydx[], G4double h, G4double yout[], G4double yerr[]) override |
|
G4double | DistChord () const override |
|
| G4MagIntegratorStepper (G4EquationOfMotion *Equation, G4int numIntegrationVariables, G4int numStateVariables=12, G4bool isFSAL=false) |
|
virtual | ~G4MagIntegratorStepper ()=default |
|
| G4MagIntegratorStepper (const G4MagIntegratorStepper &)=delete |
|
G4MagIntegratorStepper & | operator= (const G4MagIntegratorStepper &)=delete |
|
void | NormaliseTangentVector (G4double vec[6]) |
|
void | NormalisePolarizationVector (G4double vec[12]) |
|
void | RightHandSide (const G4double y[], G4double dydx[]) const |
|
void | RightHandSide (const G4double y[], G4double dydx[], G4double field[]) const |
|
G4int | GetNumberOfVariables () const |
|
G4int | GetNumberOfStateVariables () const |
|
G4int | IntegrationOrder () |
|
G4EquationOfMotion * | GetEquationOfMotion () |
|
const G4EquationOfMotion * | GetEquationOfMotion () const |
|
void | SetEquationOfMotion (G4EquationOfMotion *newEquation) |
|
unsigned long | GetfNoRHSCalls () |
|
void | ResetfNORHSCalls () |
|
G4bool | IsFSAL () const |
|
G4bool | isQSS () const |
|
void | SetIsQSS (G4bool val) |
|
Definition at line 40 of file G4ClassicalRK4.hh.
◆ G4ClassicalRK4() [1/2]
Definition at line 38 of file G4ClassicalRK4.cc.
41{
42 unsigned int noVariables= std::max(numberOfVariables,8);
43
47}
G4MagErrorStepper(G4EquationOfMotion *EqRhs, G4int numberOfVariables, G4int numStateVariables=12)
◆ ~G4ClassicalRK4()
G4ClassicalRK4::~G4ClassicalRK4 |
( |
| ) |
|
|
override |
Definition at line 53 of file G4ClassicalRK4.cc.
54{
55 delete [] dydxm;
56 delete [] dydxt;
57 delete [] yt;
58}
◆ G4ClassicalRK4() [2/2]
◆ DumbStepper()
Implements G4MagErrorStepper.
Definition at line 71 of file G4ClassicalRK4.cc.
75{
79
80
81
82
83 yt[7] = yIn[7];
84 yOut[7] = yIn[7];
85
86 for(i=0; i<nvar; ++i)
87 {
88 yt[i] = yIn[i] + hh*dydx[i] ;
89 }
91
92 for(i=0; i<nvar; ++i)
93 {
94 yt[i] = yIn[i] + hh*dydxt[i] ;
95 }
97
98 for(i=0; i<nvar; ++i)
99 {
100 yt[i] = yIn[i] + h*dydxm[i] ;
101 dydxm[i] += dydxt[i] ;
102 }
104
105 for(i=0; i<nvar; ++i)
106 {
107 yOut[i] = yIn[i]+h6*(dydx[i]+dydxt[i]+2.0*dydxm[i]);
108 }
110
111}
void NormalisePolarizationVector(G4double vec[12])
G4int GetNumberOfVariables() const
void RightHandSide(const G4double y[], G4double dydx[]) const
◆ IntegratorOrder()
G4int G4ClassicalRK4::IntegratorOrder |
( |
| ) |
const |
|
inlineoverridevirtual |
◆ operator=()
The documentation for this class was generated from the following files: