49#ifndef G4TExplicitEuler_HH
50#define G4TExplicitEuler_HH
55template <
class T_Equation,
int N>
64 EqRhs, numberOfVariables)
65 , fEquation_Rhs(EqRhs)
67 if( numberOfVariables !=
N ){
69 msg <<
"Equation has an incompatible number of variables." ;
70 msg <<
" template N = " <<
N <<
" equation-Nvar= "
72 G4Exception(
"G4TExplicitEuler: constructor",
"GeomField0003",
86 for(
G4int i = 0; i <
N; ++i)
88 yOut[i] = yIn[i] + h * dydx[i];
98 T_Equation* fEquation_Rhs;
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
std::ostringstream G4ExceptionDescription
static constexpr double IntegratorCorrection
void DumbStepper(const G4double yIn[], const G4double dydx[], G4double h, G4double yOut[])
G4int IntegratorOrder() const
G4TExplicitEuler(T_Equation *EqRhs, G4int numberOfVariables=N)