#include <G4SimpleHeum.hh>
|
| G4SimpleHeum (G4EquationOfMotion *EqRhs, G4int num_variables=6) |
|
| ~G4SimpleHeum () |
|
void | DumbStepper (const G4double y[], const G4double dydx[], G4double h, G4double yout[]) |
|
G4int | IntegratorOrder () const |
|
| G4MagErrorStepper (G4EquationOfMotion *EqRhs, G4int numberOfVariables, G4int numStateVariables=12) |
|
virtual | ~G4MagErrorStepper () |
|
void | Stepper (const G4double y[], const G4double dydx[], G4double h, G4double yout[], G4double yerr[]) |
|
virtual void | DumbStepper (const G4double y[], const G4double dydx[], G4double h, G4double yout[])=0 |
|
G4double | DistChord () const |
|
| G4MagIntegratorStepper (G4EquationOfMotion *Equation, G4int numIntegrationVariables, G4int numStateVariables=12) |
|
virtual | ~G4MagIntegratorStepper () |
|
virtual void | Stepper (const G4double y[], const G4double dydx[], G4double h, G4double yout[], G4double yerr[])=0 |
|
virtual G4double | DistChord () const =0 |
|
virtual void | ComputeRightHandSide (const G4double y[], G4double dydx[]) |
|
void | NormaliseTangentVector (G4double vec[6]) |
|
void | NormalisePolarizationVector (G4double vec[12]) |
|
void | RightHandSide (const double y[], double dydx[]) |
|
G4int | GetNumberOfVariables () const |
|
G4int | GetNumberOfStateVariables () const |
|
virtual G4int | IntegratorOrder () const =0 |
|
G4EquationOfMotion * | GetEquationOfMotion () |
|
void | SetEquationOfMotion (G4EquationOfMotion *newEquation) |
|
Definition at line 50 of file G4SimpleHeum.hh.
◆ G4SimpleHeum()
Definition at line 46 of file G4SimpleHeum.cc.
46 :
48 fNumberOfVariables(num_variables)
49{
50 dydxTemp =
new G4double[fNumberOfVariables] ;
51 dydxTemp2 =
new G4double[fNumberOfVariables] ;
52 yTemp =
new G4double[fNumberOfVariables] ;
53 yTemp2 =
new G4double[fNumberOfVariables] ;
54}
◆ ~G4SimpleHeum()
G4SimpleHeum::~G4SimpleHeum |
( |
| ) |
|
Definition at line 61 of file G4SimpleHeum.cc.
62{
63 delete[] dydxTemp;
64 delete[] dydxTemp2;
65 delete[] yTemp;
66 delete[] yTemp2;
67}
◆ DumbStepper()
Implements G4MagErrorStepper.
Definition at line 75 of file G4SimpleHeum.cc.
79{
81 for( i = 0; i < fNumberOfVariables; i++ )
82 {
83 yTemp[i] = yIn[i] + (1.0/3.0) * h * dydx[i] ;
84 }
85
87
88 for( i = 0; i < fNumberOfVariables; i++ )
89 {
90 yTemp2[i] = yIn[i] + (2.0/3.0) * h * dydxTemp[i] ;
91 }
92
94
95 for( i = 0; i < fNumberOfVariables; i++ )
96 {
97 yOut[i] = yIn[i] + h * (0.25 * dydx[i] + 0.75 * dydxTemp2[i]);
98 }
99
101}
void NormalisePolarizationVector(G4double vec[12])
void RightHandSide(const double y[], double dydx[])
◆ IntegratorOrder()
G4int G4SimpleHeum::IntegratorOrder |
( |
| ) |
const |
|
inlinevirtual |
The documentation for this class was generated from the following files: