13 for (
int i=0; i<nk; i++)
k_[i] =
new double[neq];
17 rhs_ =
new double[neq];
23 for (
int i=0; i<nk_; i++)
delete []
k_[i];
36 for (j=0; j<n; j++) Jac[i][j] = -Jac[i][j]*
gam*dt;
void prep_jac(double **Jac, unsigned long n, double dt, int *p)
do necessary arithmetic with the Jacobian then lu factor it
int * p_
permutation array for LU factorization
OdeRosenbrock(unsigned long neq, int nk)
constructs
double ** k_
stage derivatives
double * soltemp_
temporary sol vector
~OdeRosenbrock()
destructs
double * rhs_
right hand side of matrix equations
double gam
parameter multipying Jacobian or single diagonal gamma
void ode_crout_LU(double **A, int n, int *p)
Crout LU decomposition.