Basic class for derivation of ClpIntegrator. More...
#include <ClpIntegratorBase.h>
Public Types | |
typedef base::vec_grid_fct_type | vec_grid_fct_type |
typedef base::vec_grid_data_type | vec_grid_data_type |
typedef GridData< VectorType, minus_1< dim >::dim > | ld_vec_grid_data_type |
typedef GridData < AuxVectorType, minus_1< dim > ::dim > | ld_aux_grid_data_type |
typedef generic_fortran_func | generic_func_type |
typedef void(* | check_1_func_type )(FI(1, VectorType), BI, const INTEGER &meqn, const INTEGER &mout, INTEGER &result) |
typedef void(* | check_2_func_type )(FI(2, VectorType), BI, const INTEGER &meqn, const INTEGER &mout, INTEGER &result) |
typedef void(* | check_3_func_type )(FI(3, VectorType), BI, const INTEGER &meqn, const INTEGER &mout, INTEGER &result) |
typedef void(* | aux_1_func_type )(const INTEGER &maxmx, const INTEGER &meqn, const INTEGER &mbc, const INTEGER &ibx, const INTEGER &mx, VectorType q[], DOUBLE aux[], const INTEGER &maux, const DOUBLE &cornx, const DOUBLE &dx, const DOUBLE &t, const DOUBLE &dt) |
typedef void(* | aux_2_func_type )(const INTEGER &maxmx, const INTEGER &maxmy, const INTEGER &meqn, const INTEGER &mbc, const INTEGER &ibx, const INTEGER &iby, const INTEGER &mx, const INTEGER &my, VectorType q[], DOUBLE aux[], const INTEGER &maux, const DOUBLE &cornx, const DOUBLE &corny, const DOUBLE &dx, const DOUBLE &dy, const DOUBLE &t, const DOUBLE &dt) |
typedef void(* | aux_3_func_type )(const INTEGER &maxmx, const INTEGER &maxmy, const INTEGER &maxmz, const INTEGER &meqn, const INTEGER &mbc, const INTEGER &ibx, const INTEGER &iby, const INTEGER &ibz, const INTEGER &mx, const INTEGER &my, const INTEGER &mz, VectorType q[], DOUBLE aux[], const INTEGER &maux, const DOUBLE &cornx, const DOUBLE &corny, const DOUBLE &cornz, const DOUBLE &dx, const DOUBLE &dy, const DOUBLE &dz, const DOUBLE &t, const DOUBLE &dt) |
typedef void(* | source_1_func_type )(const INTEGER &maxmx, const INTEGER &meqn, const INTEGER &mbc, const INTEGER &ibx, const INTEGER &mx, VectorType q[], const DOUBLE aux[], const INTEGER &maux, const DOUBLE &t, const DOUBLE &dt, const INTEGER &ibnd) |
typedef void(* | source_2_func_type )(const INTEGER &maxmx, const INTEGER &maxmy, const INTEGER &meqn, const INTEGER &mbc, const INTEGER &ibx, const INTEGER &iby, const INTEGER &mx, const INTEGER &my, VectorType q[], const DOUBLE aux[], const INTEGER &maux, const DOUBLE &t, const DOUBLE &dt, const INTEGER &ibnd) |
typedef void(* | source_3_func_type )(const INTEGER &maxmx, const INTEGER &maxmy, const INTEGER &maxmz, const INTEGER &meqn, const INTEGER &mbc, const INTEGER &ibx, const INTEGER &iby, const INTEGER &ibz, const INTEGER &mx, const INTEGER &my, const INTEGER &mz, VectorType q[], const DOUBLE aux[], const INTEGER &maux, const DOUBLE &t, const DOUBLE &dt, const INTEGER &ibnd) |
Public Member Functions | |
ClpIntegratorBase (const int equ, const int wv) | |
ClpIntegratorBase (const int equ, const int wv, generic_func_type check, generic_func_type aux, generic_func_type source) | |
void | ConsInit () |
~ClpIntegratorBase () | |
virtual void | ComputeRP (ld_vec_grid_data_type &LeftState, ld_aux_grid_data_type &auxl, ld_vec_grid_data_type &RightState, ld_aux_grid_data_type &auxr, ld_vec_grid_data_type &NewState, const int &direction)=0 |
virtual double | ComputeGrid (vec_grid_data_type &StateVec, vec_grid_data_type *Flux[], DataType *aux, const double &t, const double &dt, const int &mpass)=0 |
virtual void | register_at (ControlDevice &Ctrl, const std::string &prefix) |
virtual void | register_at (ControlDevice &Ctrl) |
virtual void | SetupData (GridHierarchy *gh, const int &ghosts) |
virtual void | finish () |
void | CalculateRP (ld_vec_grid_data_type &LeftState, BBox &bbl, double tl, double dtl, ld_vec_grid_data_type &RightState, BBox &bbr, double tr, double dtr, ld_vec_grid_data_type &NewState, const int &direction) |
virtual double | CalculateGrid (vec_grid_data_type &NewStateVec, vec_grid_data_type &OldStateVec, vec_grid_data_type *Flux[], const int &level, const double &t, const double &dt, const int &mpass) |
virtual void | AllocGridFluxes (const BBox &bb, vec_grid_data_type **&Flux) |
virtual void | DeAllocGridFluxes (vec_grid_data_type **&Flux) |
virtual void | ResetGridFluxes (vec_grid_data_type **&Flux) |
virtual int | ControlGrid (vec_grid_data_type &StateVec, const int &level, const BBox &where, const double &time, const int verbose) |
void | ResetGrid (vec_grid_data_type &StateVec, vec_grid_data_type &RecoverStateVec, vec_grid_data_type *Flux[], double &cfl, const int &level, const double &t, const int &mpass) |
void | SetAux (DataType *aux, vec_grid_data_type &StateVec, const double &t, const double &dt) |
virtual void | SetSrc (DataType *aux, vec_grid_data_type &StateVec, const double t, const double dt, const int &bnd) |
void | DimExtBBox (const BBox &bb, int mx[], int ibx[]) |
virtual int | NMethodOrder () const |
const int & | NCheck () const |
int | NSrc () const |
bool | DimSplit () const |
int | NMaxPass () const |
const int & | NAux () const |
void | SetEqUsed (const int &eq) |
const int & | NEqUsed () const |
void | SetWaves (const int &wv) |
const int & | NWaves () const |
void | SetCheckFunc (generic_func_type check) |
generic_func_type | GetCheckFunc () const |
void | SetAuxFunc (generic_func_type aux) |
generic_func_type | GetAuxFunc () const |
void | SetSrcFunc (generic_func_type src) |
generic_func_type | GetSrcFunc () const |
std::ostream & | debug (std::ostream &out, const self &P) |
Protected Attributes | |
int | _EqUsed |
int | _Waves |
int | method [7] |
int * | limiter |
int * | mthlim |
std::string | _name |
generic_func_type | f_chk |
generic_func_type | f_aux |
generic_func_type | f_src |
int | order |
Basic class for derivation of ClpIntegrator.
This class capsulates the methods of ClpIntegrator that are independent of the spatial dimension.
typedef void(* ClpIntegratorBase< VectorType, AuxVectorType, dim >::aux_1_func_type)(const INTEGER &maxmx, const INTEGER &meqn, const INTEGER &mbc, const INTEGER &ibx, const INTEGER &mx, VectorType q[], DOUBLE aux[], const INTEGER &maux, const DOUBLE &cornx, const DOUBLE &dx, const DOUBLE &t, const DOUBLE &dt) |
typedef void(* ClpIntegratorBase< VectorType, AuxVectorType, dim >::aux_2_func_type)(const INTEGER &maxmx, const INTEGER &maxmy, const INTEGER &meqn, const INTEGER &mbc, const INTEGER &ibx, const INTEGER &iby, const INTEGER &mx, const INTEGER &my, VectorType q[], DOUBLE aux[], const INTEGER &maux, const DOUBLE &cornx, const DOUBLE &corny, const DOUBLE &dx, const DOUBLE &dy, const DOUBLE &t, const DOUBLE &dt) |
typedef void(* ClpIntegratorBase< VectorType, AuxVectorType, dim >::aux_3_func_type)(const INTEGER &maxmx, const INTEGER &maxmy, const INTEGER &maxmz, const INTEGER &meqn, const INTEGER &mbc, const INTEGER &ibx, const INTEGER &iby, const INTEGER &ibz, const INTEGER &mx, const INTEGER &my, const INTEGER &mz, VectorType q[], DOUBLE aux[], const INTEGER &maux, const DOUBLE &cornx, const DOUBLE &corny, const DOUBLE &cornz, const DOUBLE &dx, const DOUBLE &dy, const DOUBLE &dz, const DOUBLE &t, const DOUBLE &dt) |
typedef void(* ClpIntegratorBase< VectorType, AuxVectorType, dim >::check_1_func_type)(FI(1, VectorType), BI, const INTEGER &meqn, const INTEGER &mout, INTEGER &result) |
typedef void(* ClpIntegratorBase< VectorType, AuxVectorType, dim >::check_2_func_type)(FI(2, VectorType), BI, const INTEGER &meqn, const INTEGER &mout, INTEGER &result) |
typedef void(* ClpIntegratorBase< VectorType, AuxVectorType, dim >::check_3_func_type)(FI(3, VectorType), BI, const INTEGER &meqn, const INTEGER &mout, INTEGER &result) |
typedef generic_fortran_func ClpIntegratorBase< VectorType, AuxVectorType, dim >::generic_func_type |
typedef GridData<AuxVectorType,minus_1<dim>::dim> ClpIntegratorBase< VectorType, AuxVectorType, dim >::ld_aux_grid_data_type |
typedef GridData<VectorType,minus_1<dim>::dim> ClpIntegratorBase< VectorType, AuxVectorType, dim >::ld_vec_grid_data_type |
typedef void(* ClpIntegratorBase< VectorType, AuxVectorType, dim >::source_1_func_type)(const INTEGER &maxmx, const INTEGER &meqn, const INTEGER &mbc, const INTEGER &ibx, const INTEGER &mx, VectorType q[], const DOUBLE aux[], const INTEGER &maux, const DOUBLE &t, const DOUBLE &dt, const INTEGER &ibnd) |
typedef void(* ClpIntegratorBase< VectorType, AuxVectorType, dim >::source_2_func_type)(const INTEGER &maxmx, const INTEGER &maxmy, const INTEGER &meqn, const INTEGER &mbc, const INTEGER &ibx, const INTEGER &iby, const INTEGER &mx, const INTEGER &my, VectorType q[], const DOUBLE aux[], const INTEGER &maux, const DOUBLE &t, const DOUBLE &dt, const INTEGER &ibnd) |
typedef void(* ClpIntegratorBase< VectorType, AuxVectorType, dim >::source_3_func_type)(const INTEGER &maxmx, const INTEGER &maxmy, const INTEGER &maxmz, const INTEGER &meqn, const INTEGER &mbc, const INTEGER &ibx, const INTEGER &iby, const INTEGER &ibz, const INTEGER &mx, const INTEGER &my, const INTEGER &mz, VectorType q[], const DOUBLE aux[], const INTEGER &maux, const DOUBLE &t, const DOUBLE &dt, const INTEGER &ibnd) |
typedef base::vec_grid_data_type ClpIntegratorBase< VectorType, AuxVectorType, dim >::vec_grid_data_type |
Reimplemented from Integrator< VectorType, dim >.
Reimplemented in ClpIntegrator< VectorType, AuxVectorType, 1 >, ClpIntegrator< VectorType, AuxVectorType, 2 >, and ClpIntegrator< VectorType, AuxVectorType, 3 >.
typedef base::vec_grid_fct_type ClpIntegratorBase< VectorType, AuxVectorType, dim >::vec_grid_fct_type |
Reimplemented from Integrator< VectorType, dim >.
Reimplemented in ClpIntegrator< VectorType, AuxVectorType, 1 >, ClpIntegrator< VectorType, AuxVectorType, 2 >, and ClpIntegrator< VectorType, AuxVectorType, 3 >.
ClpIntegratorBase< VectorType, AuxVectorType, dim >::ClpIntegratorBase | ( | const int | equ, | |
const int | wv | |||
) | [inline] |
ClpIntegratorBase< VectorType, AuxVectorType, dim >::ClpIntegratorBase | ( | const int | equ, | |
const int | wv, | |||
generic_func_type | check, | |||
generic_func_type | aux, | |||
generic_func_type | source | |||
) | [inline] |
ClpIntegratorBase< VectorType, AuxVectorType, dim >::~ClpIntegratorBase | ( | ) | [inline] |
virtual void ClpIntegratorBase< VectorType, AuxVectorType, dim >::AllocGridFluxes | ( | const BBox & | bb, | |
vec_grid_data_type **& | Flux | |||
) | [inline, virtual] |
Implements Integrator< VectorType, dim >.
virtual double ClpIntegratorBase< VectorType, AuxVectorType, dim >::CalculateGrid | ( | vec_grid_data_type & | NewStateVec, | |
vec_grid_data_type & | OldStateVec, | |||
vec_grid_data_type * | Flux[], | |||
const int & | level, | |||
const double & | t, | |||
const double & | dt, | |||
const int & | mpass | |||
) | [inline, virtual] |
Implements Integrator< VectorType, dim >.
void ClpIntegratorBase< VectorType, AuxVectorType, dim >::CalculateRP | ( | ld_vec_grid_data_type & | LeftState, | |
BBox & | bbl, | |||
double | tl, | |||
double | dtl, | |||
ld_vec_grid_data_type & | RightState, | |||
BBox & | bbr, | |||
double | tr, | |||
double | dtr, | |||
ld_vec_grid_data_type & | NewState, | |||
const int & | direction | |||
) | [inline] |
virtual double ClpIntegratorBase< VectorType, AuxVectorType, dim >::ComputeGrid | ( | vec_grid_data_type & | StateVec, | |
vec_grid_data_type * | Flux[], | |||
DataType * | aux, | |||
const double & | t, | |||
const double & | dt, | |||
const int & | mpass | |||
) | [pure virtual] |
virtual void ClpIntegratorBase< VectorType, AuxVectorType, dim >::ComputeRP | ( | ld_vec_grid_data_type & | LeftState, | |
ld_aux_grid_data_type & | auxl, | |||
ld_vec_grid_data_type & | RightState, | |||
ld_aux_grid_data_type & | auxr, | |||
ld_vec_grid_data_type & | NewState, | |||
const int & | direction | |||
) | [pure virtual] |
void ClpIntegratorBase< VectorType, AuxVectorType, dim >::ConsInit | ( | ) | [inline] |
virtual int ClpIntegratorBase< VectorType, AuxVectorType, dim >::ControlGrid | ( | vec_grid_data_type & | StateVec, | |
const int & | level, | |||
const BBox & | where, | |||
const double & | time, | |||
const int | verbose | |||
) | [inline, virtual] |
Implements Integrator< VectorType, dim >.
Referenced by ClpIntegratorBase< VectorType, AuxVectorType, 1 >::CalculateGrid().
virtual void ClpIntegratorBase< VectorType, AuxVectorType, dim >::DeAllocGridFluxes | ( | vec_grid_data_type **& | Flux | ) | [inline, virtual] |
Implements Integrator< VectorType, dim >.
std::ostream& ClpIntegratorBase< VectorType, AuxVectorType, dim >::debug | ( | std::ostream & | out, | |
const self & | P | |||
) | [inline] |
void ClpIntegratorBase< VectorType, AuxVectorType, dim >::DimExtBBox | ( | const BBox & | bb, | |
int | mx[], | |||
int | ibx[] | |||
) | [inline] |
bool ClpIntegratorBase< VectorType, AuxVectorType, dim >::DimSplit | ( | ) | const [inline] |
virtual void ClpIntegratorBase< VectorType, AuxVectorType, dim >::finish | ( | ) | [inline, virtual] |
Reimplemented from AMRBase< VectorType, dim >.
generic_func_type ClpIntegratorBase< VectorType, AuxVectorType, dim >::GetAuxFunc | ( | ) | const [inline] |
generic_func_type ClpIntegratorBase< VectorType, AuxVectorType, dim >::GetCheckFunc | ( | ) | const [inline] |
generic_func_type ClpIntegratorBase< VectorType, AuxVectorType, dim >::GetSrcFunc | ( | ) | const [inline] |
const int& ClpIntegratorBase< VectorType, AuxVectorType, dim >::NAux | ( | ) | const [inline] |
Referenced by ClpIntegratorBase< VectorType, AuxVectorType, 1 >::CalculateGrid(), ClpIntegratorBase< VectorType, AuxVectorType, 1 >::CalculateRP(), ClpSetAux< VectorType, AuxVectorType, dim >::NAux(), ClpIntegratorBase< VectorType, AuxVectorType, 1 >::SetAux(), ClpIntegratorBase< VectorType, AuxVectorType, 1 >::SetSrc(), and ClpIntegratorBase< VectorType, AuxVectorType, 1 >::SetupData().
const int& ClpIntegratorBase< VectorType, AuxVectorType, dim >::NCheck | ( | ) | const [inline] |
const int& ClpIntegratorBase< VectorType, AuxVectorType, dim >::NEqUsed | ( | ) | const [inline] |
int ClpIntegratorBase< VectorType, AuxVectorType, dim >::NMaxPass | ( | ) | const [inline] |
virtual int ClpIntegratorBase< VectorType, AuxVectorType, dim >::NMethodOrder | ( | ) | const [inline, virtual] |
Implements Integrator< VectorType, dim >.
int ClpIntegratorBase< VectorType, AuxVectorType, dim >::NSrc | ( | ) | const [inline] |
const int& ClpIntegratorBase< VectorType, AuxVectorType, dim >::NWaves | ( | ) | const [inline] |
virtual void ClpIntegratorBase< VectorType, AuxVectorType, dim >::register_at | ( | ControlDevice & | Ctrl | ) | [inline, virtual] |
Reimplemented from Integrator< VectorType, dim >.
virtual void ClpIntegratorBase< VectorType, AuxVectorType, dim >::register_at | ( | ControlDevice & | Ctrl, | |
const std::string & | prefix | |||
) | [inline, virtual] |
Reimplemented from Integrator< VectorType, dim >.
Referenced by ClpIntegratorBase< VectorType, AuxVectorType, 1 >::register_at().
void ClpIntegratorBase< VectorType, AuxVectorType, dim >::ResetGrid | ( | vec_grid_data_type & | StateVec, | |
vec_grid_data_type & | RecoverStateVec, | |||
vec_grid_data_type * | Flux[], | |||
double & | cfl, | |||
const int & | level, | |||
const double & | t, | |||
const int & | mpass | |||
) | [inline] |
virtual void ClpIntegratorBase< VectorType, AuxVectorType, dim >::ResetGridFluxes | ( | vec_grid_data_type **& | Flux | ) | [inline, virtual] |
Implements Integrator< VectorType, dim >.
Referenced by ClpIntegratorBase< VectorType, AuxVectorType, 1 >::ResetGrid().
void ClpIntegratorBase< VectorType, AuxVectorType, dim >::SetAux | ( | DataType * | aux, | |
vec_grid_data_type & | StateVec, | |||
const double & | t, | |||
const double & | dt | |||
) | [inline] |
void ClpIntegratorBase< VectorType, AuxVectorType, dim >::SetAuxFunc | ( | generic_func_type | aux | ) | [inline] |
void ClpIntegratorBase< VectorType, AuxVectorType, dim >::SetCheckFunc | ( | generic_func_type | check | ) | [inline] |
void ClpIntegratorBase< VectorType, AuxVectorType, dim >::SetEqUsed | ( | const int & | eq | ) | [inline] |
virtual void ClpIntegratorBase< VectorType, AuxVectorType, dim >::SetSrc | ( | DataType * | aux, | |
vec_grid_data_type & | StateVec, | |||
const double | t, | |||
const double | dt, | |||
const int & | bnd | |||
) | [inline, virtual] |
void ClpIntegratorBase< VectorType, AuxVectorType, dim >::SetSrcFunc | ( | generic_func_type | src | ) | [inline] |
virtual void ClpIntegratorBase< VectorType, AuxVectorType, dim >::SetupData | ( | GridHierarchy * | gh, | |
const int & | ghosts | |||
) | [inline, virtual] |
Reimplemented from AMRBase< VectorType, dim >.
void ClpIntegratorBase< VectorType, AuxVectorType, dim >::SetWaves | ( | const int & | wv | ) | [inline] |
int ClpIntegratorBase< VectorType, AuxVectorType, dim >::_EqUsed [protected] |
std::string ClpIntegratorBase< VectorType, AuxVectorType, dim >::_name [protected] |
int ClpIntegratorBase< VectorType, AuxVectorType, dim >::_Waves [protected] |
generic_func_type ClpIntegratorBase< VectorType, AuxVectorType, dim >::f_aux [protected] |
generic_func_type ClpIntegratorBase< VectorType, AuxVectorType, dim >::f_chk [protected] |
generic_func_type ClpIntegratorBase< VectorType, AuxVectorType, dim >::f_src [protected] |
int* ClpIntegratorBase< VectorType, AuxVectorType, dim >::limiter [protected] |
Referenced by ClpIntegratorBase< VectorType, AuxVectorType, 1 >::ConsInit(), ClpIntegratorBase< VectorType, AuxVectorType, 1 >::finish(), ClpIntegratorBase< VectorType, AuxVectorType, 1 >::register_at(), ClpIntegratorBase< VectorType, AuxVectorType, 1 >::SetupData(), and ClpIntegratorBase< VectorType, AuxVectorType, 1 >::~ClpIntegratorBase().
int ClpIntegratorBase< VectorType, AuxVectorType, dim >::method[7] [protected] |
Referenced by ClpIntegratorBase< VectorType, AuxVectorType, 1 >::ConsInit(), ClpIntegratorBase< VectorType, AuxVectorType, 1 >::DimSplit(), ClpIntegratorBase< VectorType, AuxVectorType, 1 >::NAux(), ClpIntegratorBase< VectorType, AuxVectorType, 1 >::NCheck(), ClpIntegratorBase< VectorType, AuxVectorType, 1 >::NMaxPass(), ClpIntegratorBase< VectorType, AuxVectorType, 1 >::NMethodOrder(), ClpIntegratorBase< VectorType, AuxVectorType, 1 >::NSrc(), ClpIntegratorBase< VectorType, AuxVectorType, 1 >::register_at(), and ClpIntegratorBase< VectorType, AuxVectorType, 1 >::SetupData().
int * ClpIntegratorBase< VectorType, AuxVectorType, dim >::mthlim [protected] |
int ClpIntegratorBase< VectorType, AuxVectorType, dim >::order [protected] |