libode
Easy to compile, fast ODE integrators as C++ classes
Loading...
Searching...
No Matches
ode::OdeRosenbrock Class Reference

Base class for Rosenbrock methods. More...

#include <ode_rosenbrock.h>

Inheritance diagram for ode::OdeRosenbrock:
ode::OdeGRK4A ode::OdeROW6A

Public Member Functions

 OdeRosenbrock (unsigned long neq, int nk)
 constructs
 
 ~OdeRosenbrock ()
 destructs
 

Protected Member Functions

void prep_jac (double **Jac, unsigned long n, double dt, int *p)
 do necessary arithmetic with the Jacobian then lu factor it
 

Protected Attributes

double gam
 parameter multipying Jacobian or single diagonal gamma
 
int * p_
 permutation array for LU factorization
 
double * rhs_
 right hand side of matrix equations
 
double * soltemp_
 temporary sol vector
 
double ** k_
 stage derivatives
 

Detailed Description

Base class for Rosenbrock methods.

Definition at line 11 of file ode_rosenbrock.h.

Constructor & Destructor Documentation

◆ OdeRosenbrock()

ode::OdeRosenbrock::OdeRosenbrock ( unsigned long neq,
int nk )

constructs

Parameters
[in]neqsize of ODE sytem
[in]nknumber of stages

Definition at line 7 of file ode_rosenbrock.cc.

◆ ~OdeRosenbrock()

ode::OdeRosenbrock::~OdeRosenbrock ( )

destructs

Definition at line 22 of file ode_rosenbrock.cc.

Member Function Documentation

◆ prep_jac()

void ode::OdeRosenbrock::prep_jac ( double ** Jac,
unsigned long n,
double dt,
int * p )
protected

do necessary arithmetic with the Jacobian then lu factor it

Parameters
[in]nsize of Jacobian
[in]JacJacobian matrix then LU decomposed Jacobian with modifications for Rosembrock stages
[in]dttime step size
[out]ppermutation array for LU decomposition

Definition at line 30 of file ode_rosenbrock.cc.

Member Data Documentation

◆ gam

double ode::OdeRosenbrock::gam
protected

parameter multipying Jacobian or single diagonal gamma

Definition at line 25 of file ode_rosenbrock.h.

◆ k_

double** ode::OdeRosenbrock::k_
protected

stage derivatives

Definition at line 33 of file ode_rosenbrock.h.

◆ p_

int* ode::OdeRosenbrock::p_
protected

permutation array for LU factorization

Definition at line 27 of file ode_rosenbrock.h.

◆ rhs_

double* ode::OdeRosenbrock::rhs_
protected

right hand side of matrix equations

Definition at line 29 of file ode_rosenbrock.h.

◆ soltemp_

double* ode::OdeRosenbrock::soltemp_
protected

temporary sol vector

Definition at line 31 of file ode_rosenbrock.h.


The documentation for this class was generated from the following files: