Basic class for derivation of Cartesian schemes. More...
#include <SchemeBase.h>
Public Types | |
enum | SideName { Left, Right, Bottom, Top, Front, Back } |
enum | Conversion { Conserved, Primitive } |
typedef vector_type | VectorType |
typedef VectorType::InternalDataType | DataType |
typedef base::vec_grid_data_type | vec_grid_data_type |
typedef GridData< DataType, dim > | grid_data_type |
typedef Vector< DataType, dim > | point_type |
Public Member Functions | |
SchemeBase () | |
virtual | ~SchemeBase () |
virtual double | Step (vec_grid_data_type &fvec, vec_grid_data_type &ovec, vec_grid_data_type *Flux[], const double &t, const double &dt, const int &mpass) const =0 |
virtual void | ICStandard (vec_grid_data_type &fvec, const int type, DataType *aux=0, const int naux=0, const int scaling=0) const =0 |
virtual void | BCStandard (vec_grid_data_type &fvec, const BBox &bb, const int type, const int side, DataType *aux=0, const int naux=0, const int scaling=0) const =0 |
virtual bool | GFMUseTransform () const =0 |
virtual void | GFMTransform (vec_grid_data_type &fvec, vec_grid_data_type &fvechelp) const =0 |
virtual void | GFMBCStandard (vec_grid_data_type &fvec, const int type, const int &nc, const int *idx, const VectorType *f, const point_type *xc, const DataType *distance, const point_type *normal, DataType *aux=0, const int naux=0, const int scaling=0) const =0 |
virtual void | Input (vec_grid_data_type &fvec, grid_data_type &work, const int cnt, const int skip_ghosts=1) const =0 |
virtual void | Output (vec_grid_data_type &fvec, grid_data_type &work, const int cnt, const int skip_ghosts=1) const =0 |
virtual int | Check (vec_grid_data_type &fvec, const BBox &bb, const double &time, const int verbose) const =0 |
virtual int | NMethodOrder () const =0 |
virtual int | NMaxPass () const =0 |
int | idx (const int i) const |
int | idx (const int i, const int j, const int Nx) const |
int | idx (const int i, const int j, const int k, const int Nx, const int Ny) const |
Basic class for derivation of Cartesian schemes.
typedef VectorType::InternalDataType SchemeBase< vector_type, dim >::DataType |
Reimplemented in LBMBase< micro_type, macro_type, dim >, LBMBase< Vector< DataType,(9+NUMPLUS) >, Vector< DataType, 3 >, 2 >, LBMBase< Vector< Vector< DataType, 9 >, 9 >, Vector< Vector< DataType, 9 >, 3 >, 2 >, LBMBase< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, LBMBase< Vector< DataType, NUMMICRODIST >, Vector< DataType, 3 >, 2 >, LBMBase< Vector< Vector< DataType, 9 >,(9+NUMPLUS) >, Vector< Vector< DataType, 9 >, 3 >, 2 >, LBMBase< Vector< DataType, NUMMICRODIST >, Vector< DataType, 4 >, 3 >, LBMBase< Vector< DataType, 14 >, Vector< DataType, 4 >, 2 >, LBMBase< Vector< DataType, 26 >, Vector< DataType, 5 >, 3 >, LBMBase< Vector< DataType, 3 >, Vector< DataType, 2 >, 1 >, LBMBase< Vector< Vector< DataType, 9 >, NUMMICRODIST >, Vector< Vector< DataType, 9 >, 3 >, 2 >, and LBMBase< Vector< DataType, 19 >, Vector< DataType, 4 >, 3 >.
typedef GridData<DataType,dim> SchemeBase< vector_type, dim >::grid_data_type |
Reimplemented in LBM4SWED2Q9< class >, LBMD1Q3< class >, LBMD2Q9< DataType >, LBMD2Q9< DataType >, LBMD2Q9< DataType >, LBMD2Q9< DataType >, LBMD2Q9< DataType >, LBMD2Q9DR< class >, LBMD2Q9Smag< class >, LBMD2Q9Thermal< class >, LBMD2Q9Thermal< class >, LBMD3Q19< class >, LBMD3Q19< class >, LBMD3Q19< class >, LBMD3Q19< class >, LBMD3Q19< class >, LBMD3Q19DR< class >, LBMD3Q19Thermal< class >, LBMD3Q19Thermal< class >, EGLM2D< class >, EGLM2D< class >, LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, and LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >.
typedef Vector<DataType,dim> SchemeBase< vector_type, dim >::point_type |
Reimplemented in LBM4SWED2Q9< class >, LBMD1Q3< class >, LBMD2Q9< DataType >, LBMD2Q9< DataType >, LBMD2Q9< DataType >, LBMD2Q9< DataType >, LBMD2Q9< DataType >, LBMD2Q9DR< class >, LBMD2Q9Smag< class >, LBMD2Q9Thermal< class >, LBMD2Q9Thermal< class >, LBMD3Q19< class >, LBMD3Q19< class >, LBMD3Q19< class >, LBMD3Q19< class >, LBMD3Q19< class >, LBMD3Q19DR< class >, LBMD3Q19Thermal< class >, LBMD3Q19Thermal< class >, EGLM2D< class >, EGLM2D< class >, LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, and LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >.
typedef base::vec_grid_data_type SchemeBase< vector_type, dim >::vec_grid_data_type |
Reimplemented from AMRBase< vector_type, dim >.
Reimplemented in LBM4SWED2Q9< class >, LBMBase< micro_type, macro_type, dim >, LBMD1Q3< class >, LBMD2Q9< DataType >, LBMD2Q9< DataType >, LBMD2Q9< DataType >, LBMD2Q9< DataType >, LBMD2Q9< DataType >, LBMD2Q9DR< class >, LBMD2Q9Smag< class >, LBMD2Q9Thermal< class >, LBMD2Q9Thermal< class >, LBMD3Q19< class >, LBMD3Q19< class >, LBMD3Q19< class >, LBMD3Q19< class >, LBMD3Q19< class >, LBMD3Q19DR< class >, LBMD3Q19Thermal< class >, LBMD3Q19Thermal< class >, EGLM2D< class >, EGLM2D< class >, LBMBase< Vector< DataType,(9+NUMPLUS) >, Vector< DataType, 3 >, 2 >, LBMBase< Vector< Vector< DataType, 9 >, 9 >, Vector< Vector< DataType, 9 >, 3 >, 2 >, LBMBase< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, LBMBase< Vector< DataType, NUMMICRODIST >, Vector< DataType, 3 >, 2 >, LBMBase< Vector< Vector< DataType, 9 >,(9+NUMPLUS) >, Vector< Vector< DataType, 9 >, 3 >, 2 >, LBMBase< Vector< DataType, NUMMICRODIST >, Vector< DataType, 4 >, 3 >, LBMBase< Vector< DataType, 14 >, Vector< DataType, 4 >, 2 >, LBMBase< Vector< DataType, 26 >, Vector< DataType, 5 >, 3 >, LBMBase< Vector< DataType, 3 >, Vector< DataType, 2 >, 1 >, LBMBase< Vector< Vector< DataType, 9 >, NUMMICRODIST >, Vector< Vector< DataType, 9 >, 3 >, 2 >, LBMBase< Vector< DataType, 19 >, Vector< DataType, 4 >, 3 >, LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, and LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >.
typedef vector_type SchemeBase< vector_type, dim >::VectorType |
Reimplemented in EGLM2D< class >, and EGLM2D< class >.
enum SchemeBase::Conversion |
enum SchemeBase::SideName |
Reimplemented in LBM4SWED2Q9< class >, LBMD1Q3< class >, LBMD2Q9< DataType >, LBMD2Q9< DataType >, LBMD2Q9< DataType >, LBMD2Q9< DataType >, LBMD2Q9< DataType >, LBMD2Q9DR< class >, LBMD2Q9Smag< class >, LBMD2Q9Thermal< class >, LBMD2Q9Thermal< class >, LBMD3Q19< class >, LBMD3Q19< class >, LBMD3Q19< class >, LBMD3Q19< class >, LBMD3Q19< class >, LBMD3Q19DR< class >, LBMD3Q19Thermal< class >, LBMD3Q19Thermal< class >, EGLM2D< class >, EGLM2D< class >, LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, and LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >.
SchemeBase< vector_type, dim >::SchemeBase | ( | ) | [inline] |
virtual SchemeBase< vector_type, dim >::~SchemeBase | ( | ) | [inline, virtual] |
virtual void SchemeBase< vector_type, dim >::BCStandard | ( | vec_grid_data_type & | fvec, | |
const BBox & | bb, | |||
const int | type, | |||
const int | side, | |||
DataType * | aux = 0 , |
|||
const int | naux = 0 , |
|||
const int | scaling = 0 | |||
) | const [pure virtual] |
virtual int SchemeBase< vector_type, dim >::Check | ( | vec_grid_data_type & | fvec, | |
const BBox & | bb, | |||
const double & | time, | |||
const int | verbose | |||
) | const [pure virtual] |
Implemented in LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, and LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >.
virtual void SchemeBase< vector_type, dim >::GFMBCStandard | ( | vec_grid_data_type & | fvec, | |
const int | type, | |||
const int & | nc, | |||
const int * | idx, | |||
const VectorType * | f, | |||
const point_type * | xc, | |||
const DataType * | distance, | |||
const point_type * | normal, | |||
DataType * | aux = 0 , |
|||
const int | naux = 0 , |
|||
const int | scaling = 0 | |||
) | const [pure virtual] |
virtual void SchemeBase< vector_type, dim >::GFMTransform | ( | vec_grid_data_type & | fvec, | |
vec_grid_data_type & | fvechelp | |||
) | const [pure virtual] |
Implemented in LBMBase< Vector< DataType,(9+NUMPLUS) >, Vector< DataType, 3 >, 2 >, LBMBase< Vector< Vector< DataType, 9 >, 9 >, Vector< Vector< DataType, 9 >, 3 >, 2 >, LBMBase< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, LBMBase< Vector< DataType, NUMMICRODIST >, Vector< DataType, 3 >, 2 >, LBMBase< Vector< Vector< DataType, 9 >,(9+NUMPLUS) >, Vector< Vector< DataType, 9 >, 3 >, 2 >, LBMBase< Vector< DataType, NUMMICRODIST >, Vector< DataType, 4 >, 3 >, LBMBase< Vector< DataType, 14 >, Vector< DataType, 4 >, 2 >, LBMBase< Vector< DataType, 26 >, Vector< DataType, 5 >, 3 >, LBMBase< Vector< DataType, 3 >, Vector< DataType, 2 >, 1 >, LBMBase< Vector< Vector< DataType, 9 >, NUMMICRODIST >, Vector< Vector< DataType, 9 >, 3 >, 2 >, and LBMBase< Vector< DataType, 19 >, Vector< DataType, 4 >, 3 >.
virtual bool SchemeBase< vector_type, dim >::GFMUseTransform | ( | ) | const [pure virtual] |
Implemented in LBMBase< micro_type, macro_type, dim >, EGLM2D< class >, EGLM2D< class >, LBMBase< Vector< DataType,(9+NUMPLUS) >, Vector< DataType, 3 >, 2 >, LBMBase< Vector< Vector< DataType, 9 >, 9 >, Vector< Vector< DataType, 9 >, 3 >, 2 >, LBMBase< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, LBMBase< Vector< DataType, NUMMICRODIST >, Vector< DataType, 3 >, 2 >, LBMBase< Vector< Vector< DataType, 9 >,(9+NUMPLUS) >, Vector< Vector< DataType, 9 >, 3 >, 2 >, LBMBase< Vector< DataType, NUMMICRODIST >, Vector< DataType, 4 >, 3 >, LBMBase< Vector< DataType, 14 >, Vector< DataType, 4 >, 2 >, LBMBase< Vector< DataType, 26 >, Vector< DataType, 5 >, 3 >, LBMBase< Vector< DataType, 3 >, Vector< DataType, 2 >, 1 >, LBMBase< Vector< Vector< DataType, 9 >, NUMMICRODIST >, Vector< Vector< DataType, 9 >, 3 >, 2 >, and LBMBase< Vector< DataType, 19 >, Vector< DataType, 4 >, 3 >.
virtual void SchemeBase< vector_type, dim >::ICStandard | ( | vec_grid_data_type & | fvec, | |
const int | type, | |||
DataType * | aux = 0 , |
|||
const int | naux = 0 , |
|||
const int | scaling = 0 | |||
) | const [pure virtual] |
int SchemeBase< vector_type, dim >::idx | ( | const int | i, | |
const int | j, | |||
const int | k, | |||
const int | Nx, | |||
const int | Ny | |||
) | const [inline] |
int SchemeBase< vector_type, dim >::idx | ( | const int | i, | |
const int | j, | |||
const int | Nx | |||
) | const [inline] |
int SchemeBase< vector_type, dim >::idx | ( | const int | i | ) | const [inline] |
virtual void SchemeBase< vector_type, dim >::Input | ( | vec_grid_data_type & | fvec, | |
grid_data_type & | work, | |||
const int | cnt, | |||
const int | skip_ghosts = 1 | |||
) | const [pure virtual] |
virtual int SchemeBase< vector_type, dim >::NMaxPass | ( | ) | const [pure virtual] |
Implemented in LBMBase< micro_type, macro_type, dim >, EGLM2D< class >, EGLM2D< class >, LBMBase< Vector< DataType,(9+NUMPLUS) >, Vector< DataType, 3 >, 2 >, LBMBase< Vector< Vector< DataType, 9 >, 9 >, Vector< Vector< DataType, 9 >, 3 >, 2 >, LBMBase< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, LBMBase< Vector< DataType, NUMMICRODIST >, Vector< DataType, 3 >, 2 >, LBMBase< Vector< Vector< DataType, 9 >,(9+NUMPLUS) >, Vector< Vector< DataType, 9 >, 3 >, 2 >, LBMBase< Vector< DataType, NUMMICRODIST >, Vector< DataType, 4 >, 3 >, LBMBase< Vector< DataType, 14 >, Vector< DataType, 4 >, 2 >, LBMBase< Vector< DataType, 26 >, Vector< DataType, 5 >, 3 >, LBMBase< Vector< DataType, 3 >, Vector< DataType, 2 >, 1 >, LBMBase< Vector< Vector< DataType, 9 >, NUMMICRODIST >, Vector< Vector< DataType, 9 >, 3 >, 2 >, and LBMBase< Vector< DataType, 19 >, Vector< DataType, 4 >, 3 >.
virtual int SchemeBase< vector_type, dim >::NMethodOrder | ( | ) | const [pure virtual] |
Implemented in LBM4SWED2Q9< class >, LBMD1Q3< class >, LBMD2Q9< DataType >, LBMD2Q9< DataType >, LBMD2Q9< DataType >, LBMD2Q9< DataType >, LBMD2Q9< DataType >, LBMD2Q9Smag< class >, LBMD2Q9Thermal< class >, LBMD2Q9Thermal< class >, LBMD3Q19< class >, LBMD3Q19< class >, LBMD3Q19< class >, LBMD3Q19< class >, LBMD3Q19< class >, LBMD3Q19Thermal< class >, LBMD3Q19Thermal< class >, EGLM2D< class >, EGLM2D< class >, LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, and LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >.
virtual void SchemeBase< vector_type, dim >::Output | ( | vec_grid_data_type & | fvec, | |
grid_data_type & | work, | |||
const int | cnt, | |||
const int | skip_ghosts = 1 | |||
) | const [pure virtual] |
virtual double SchemeBase< vector_type, dim >::Step | ( | vec_grid_data_type & | fvec, | |
vec_grid_data_type & | ovec, | |||
vec_grid_data_type * | Flux[], | |||
const double & | t, | |||
const double & | dt, | |||
const int & | mpass | |||
) | const [pure virtual] |
Implemented in LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >, and LBMD2Q9< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >.