Standard 2d Navier-Stokes LBM stencil operator. More...
#include <LBM4SWED2Q9.h>
Public Types | |
| enum | ICPredefined { GasAtRest, ConstantMacro, ConstantMicro } |
| enum | BCPredefined { Symmetry, NoSlipWall, Inlet, Outlet, Pressure, SlidingWall } |
| typedef base::vec_grid_data_type | vec_grid_data_type |
| typedef base::grid_data_type | grid_data_type |
| typedef base::MicroType | MicroType |
| typedef base::MacroType | MacroType |
| typedef base::SideName | SideName |
| typedef base::point_type | point_type |
Public Member Functions | |
| LBM4SWED2Q9 () | |
| virtual | ~LBM4SWED2Q9 () |
| virtual void | register_at (ControlDevice &Ctrl, const std::string &prefix) |
| virtual void | SetupData (GridHierarchy *gh, const int &ghosts) |
| virtual MacroType | MacroVariables (const MicroType &f) const |
| virtual MicroType | Equilibrium (const MacroType &q) const |
| virtual int | IncomingIndices (const int side, int indices[]) const |
| virtual int | OutgoingIndices (const int side, int indices[]) const |
| virtual void | ReverseStream (vec_grid_data_type &fvec, const BBox &bb, const int side) const |
| virtual void | LocalStep (vec_grid_data_type &fvec, vec_grid_data_type &ovec, const BBox &bb, const double &dt) const |
| 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 |
| virtual void | ICStandard (vec_grid_data_type &fvec, const int type, DataType *aux=0, const int naux=0, const int scaling=0) const |
| 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 |
| virtual void | GFMBCStandard (vec_grid_data_type &fvec, const int type, const int &nc, const int *idx, const MicroType *f, const point_type *xc, const DataType *distance, const point_type *normal, DataType *aux=0, const int naux=0, const int scaling=0) const |
| virtual void | Output (vec_grid_data_type &fvec, grid_data_type &workvec, const int cnt, const int skip_ghosts=1) const |
| virtual void | Input (vec_grid_data_type &fvec, grid_data_type &workvec, const int cnt, const int skip_ghosts=1) const |
| virtual int | Check (vec_grid_data_type &fvec, const BBox &bb, const double &time, const int verbose) const |
| virtual int | NMethodOrder () const |
| const DataType & | L0 () const |
| const DataType & | T0 () const |
| void | SetDensityScale (const DataType r0) |
| void | SetLatticeSpeed (const DataType e_spec) |
| void | SetVelocityScale (const DataType u0) |
| virtual void | SetTimeScale (const DataType t0) |
| const DataType & | DensityScale () const |
| const DataType & | LatticeSpeed () const |
| const DataType & | VelocityScale () const |
| DataType | LatticeViscosity (const DataType omega) const |
| DataType | LatticeSpeedOfSound () const |
| void | SetGas (DataType rho, DataType nu, DataType cs, DataType e_spec) |
| const DataType | Omega_tau () const |
| virtual const DataType | Omega (const DataType dt) const |
| const DataType & | GasDensity () const |
| const DataType & | GasViscosity () const |
| const DataType & | GasSpeedofSound () const |
| const DataType & | GasViscosity (const DataType omega, const DataType cs, const DataType dt) const |
| virtual void | BedElevation (vec_grid_data_type &fvec, GridData< DataType, 2 > &zProfile) const =0 |
| void | SetGravity (DataType grav) |
| DataType | Gravity () const |
Protected Attributes | |
| DataType | cs2 |
| DataType | cs22 |
| DataType | cssq |
| DataType | R0 |
| DataType | U0 |
| DataType | rhop |
| DataType | csp |
| DataType | cs2p |
| DataType | nup |
| DataType | e |
| DataType | e2 |
| DataType | g |
| DataType | tau |
| int | method [1] |
| int | mdx [9] |
| int | mdy [9] |
Standard 2d Navier-Stokes LBM stencil operator.
Density distribution indexing used, 2D-BGK-operator
C5 C3 C4 \ | / C2--C0--C1 / | \ C8 C6 C7
| typedef base::grid_data_type LBM4SWED2Q9< DataType >::grid_data_type |
Reimplemented from SchemeBase< vector_type, dim >.
| typedef base::MacroType LBM4SWED2Q9< DataType >::MacroType |
Reimplemented from LBMBase< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >.
| typedef base::MicroType LBM4SWED2Q9< DataType >::MicroType |
Reimplemented from LBMBase< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >.
| typedef base::point_type LBM4SWED2Q9< DataType >::point_type |
Reimplemented from SchemeBase< vector_type, dim >.
| typedef base::SideName LBM4SWED2Q9< DataType >::SideName |
Reimplemented from SchemeBase< vector_type, dim >.
| typedef base::vec_grid_data_type LBM4SWED2Q9< DataType >::vec_grid_data_type |
Reimplemented from LBMBase< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >.
| enum LBM4SWED2Q9::BCPredefined |
| enum LBM4SWED2Q9::ICPredefined |
| LBM4SWED2Q9< DataType >::LBM4SWED2Q9 | ( | ) | [inline] |
| virtual LBM4SWED2Q9< DataType >::~LBM4SWED2Q9 | ( | ) | [inline, virtual] |
| virtual void LBM4SWED2Q9< DataType >::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 [inline, virtual] |
Implements SchemeBase< vector_type, dim >.
References SchemeBase< vector_type, dim >::Bottom, LBM4SWED2Q9< DataType >::Equilibrium(), SchemeBase< vector_type, dim >::idx(), LBM4SWED2Q9< DataType >::Inlet, SchemeBase< vector_type, dim >::Left, BBox::lower(), LBM4SWED2Q9< DataType >::MacroVariables(), LBM4SWED2Q9< DataType >::NoSlipWall, LBM4SWED2Q9< DataType >::Outlet, LBMBase< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >::Physical, LBM4SWED2Q9< DataType >::Pressure, LBM4SWED2Q9< DataType >::R0, SchemeBase< vector_type, dim >::Right, LBM4SWED2Q9< DataType >::SlidingWall, BBox::stepsize(), LBM4SWED2Q9< DataType >::Symmetry, SchemeBase< vector_type, dim >::Top, LBM4SWED2Q9< DataType >::U0, and BBox::upper().
| virtual void LBM4SWED2Q9< DataType >::BedElevation | ( | vec_grid_data_type & | fvec, | |
| GridData< DataType, 2 > & | zProfile | |||
| ) | const [pure virtual] |
| virtual int LBM4SWED2Q9< DataType >::Check | ( | vec_grid_data_type & | fvec, | |
| const BBox & | bb, | |||
| const double & | time, | |||
| const int | verbose | |||
| ) | const [inline, virtual] |
Implements SchemeBase< vector_type, dim >.
References grow(), SchemeBase< vector_type, dim >::idx(), BBox::lower(), LBM4SWED2Q9< DataType >::MacroVariables(), LBM4SWED2Q9< DataType >::mdx, LBM4SWED2Q9< DataType >::mdy, AMRBase< vector_type, dim >::NGhosts(), LBMBase< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >::NMicroVar(), BBox::stepsize(), and BBox::upper().
| const DataType& LBM4SWED2Q9< DataType >::DensityScale | ( | ) | const [inline] |
References LBM4SWED2Q9< DataType >::R0.
| virtual MicroType LBM4SWED2Q9< DataType >::Equilibrium | ( | const MacroType & | q | ) | const [inline, virtual] |
Implements LBMBase< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >.
References LBM4SWED2Q9< DataType >::e, LBM4SWED2Q9< DataType >::e2, and LBM4SWED2Q9< DataType >::g.
Referenced by LBM4SWED2Q9< DataType >::BCStandard(), LBM4SWED2Q9< DataType >::ICStandard(), LBM4SWED2Q9< DataType >::Input(), and LBM4SWED2Q9< DataType >::Step().
| const DataType& LBM4SWED2Q9< DataType >::GasDensity | ( | ) | const [inline] |
References LBM4SWED2Q9< DataType >::rhop.
Referenced by LBM4SWED2Q9< DataType >::ICStandard().
| const DataType& LBM4SWED2Q9< DataType >::GasSpeedofSound | ( | ) | const [inline] |
References LBM4SWED2Q9< DataType >::csp.
| const DataType& LBM4SWED2Q9< DataType >::GasViscosity | ( | const DataType | omega, | |
| const DataType | cs, | |||
| const DataType | dt | |||
| ) | const [inline] |
| const DataType& LBM4SWED2Q9< DataType >::GasViscosity | ( | ) | const [inline] |
References LBM4SWED2Q9< DataType >::nup.
| virtual void LBM4SWED2Q9< DataType >::GFMBCStandard | ( | vec_grid_data_type & | fvec, | |
| const int | type, | |||
| const int & | nc, | |||
| const int * | idx, | |||
| const MicroType * | f, | |||
| const point_type * | xc, | |||
| const DataType * | distance, | |||
| const point_type * | normal, | |||
| DataType * | aux = 0, |
|||
| const int | naux = 0, |
|||
| const int | scaling = 0 | |||
| ) | const [inline, virtual] |
| DataType LBM4SWED2Q9< DataType >::Gravity | ( | ) | const [inline] |
References LBM4SWED2Q9< DataType >::g.
| virtual void LBM4SWED2Q9< DataType >::ICStandard | ( | vec_grid_data_type & | fvec, | |
| const int | type, | |||
| DataType * | aux = 0, |
|||
| const int | naux = 0, |
|||
| const int | scaling = 0 | |||
| ) | const [inline, virtual] |
Implements SchemeBase< vector_type, dim >.
References LBM4SWED2Q9< DataType >::BedElevation(), LBM4SWED2Q9< DataType >::ConstantMacro, LBM4SWED2Q9< DataType >::ConstantMicro, LBM4SWED2Q9< DataType >::Equilibrium(), BBox::extents(), LBM4SWED2Q9< DataType >::g, LBM4SWED2Q9< DataType >::GasAtRest, LBM4SWED2Q9< DataType >::GasDensity(), SchemeBase< vector_type, dim >::idx(), BBox::lower(), LBM4SWED2Q9< DataType >::MacroVariables(), AMRBase< vector_type, dim >::NGhosts(), LBMBase< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >::NMicroVar(), LBMBase< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >::Physical, LBM4SWED2Q9< DataType >::R0, BBox::stepsize(), LBM4SWED2Q9< DataType >::U0, and BBox::upper().
| virtual int LBM4SWED2Q9< DataType >::IncomingIndices | ( | const int | side, | |
| int | indices[] | |||
| ) | const [inline, virtual] |
| virtual void LBM4SWED2Q9< DataType >::Input | ( | vec_grid_data_type & | fvec, | |
| grid_data_type & | workvec, | |||
| const int | cnt, | |||
| const int | skip_ghosts = 1 | |||
| ) | const [inline, virtual] |
| const DataType& LBM4SWED2Q9< DataType >::L0 | ( | ) | const [inline] |
| const DataType& LBM4SWED2Q9< DataType >::LatticeSpeed | ( | ) | const [inline] |
References LBM4SWED2Q9< DataType >::e.
Referenced by LBM4SWED2Q9< DataType >::SetGas(), and LBM4SWED2Q9< DataType >::SetupData().
| DataType LBM4SWED2Q9< DataType >::LatticeSpeedOfSound | ( | ) | const [inline] |
References LBM4SWED2Q9< DataType >::cs2.
| DataType LBM4SWED2Q9< DataType >::LatticeViscosity | ( | const DataType | omega | ) | const [inline] |
References LBM4SWED2Q9< DataType >::cs2.
| virtual void LBM4SWED2Q9< DataType >::LocalStep | ( | vec_grid_data_type & | fvec, | |
| vec_grid_data_type & | ovec, | |||
| const BBox & | bb, | |||
| const double & | dt | |||
| ) | const [inline, virtual] |
| virtual MacroType LBM4SWED2Q9< DataType >::MacroVariables | ( | const MicroType & | f | ) | const [inline, virtual] |
Implements LBMBase< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >.
References LBM4SWED2Q9< DataType >::e.
Referenced by LBM4SWED2Q9< DataType >::BCStandard(), LBM4SWED2Q9< DataType >::Check(), LBM4SWED2Q9< DataType >::ICStandard(), LBM4SWED2Q9< DataType >::Output(), and LBM4SWED2Q9< DataType >::Step().
| virtual int LBM4SWED2Q9< DataType >::NMethodOrder | ( | ) | const [inline, virtual] |
Implements SchemeBase< vector_type, dim >.
| virtual const DataType LBM4SWED2Q9< DataType >::Omega | ( | const DataType | dt | ) | const [inline, virtual] |
Implements LBMBase< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >.
References LBM4SWED2Q9< DataType >::cs2p, and LBM4SWED2Q9< DataType >::nup.
| const DataType LBM4SWED2Q9< DataType >::Omega_tau | ( | ) | const [inline] |
References LBM4SWED2Q9< DataType >::tau.
Referenced by LBM4SWED2Q9< DataType >::SetupData(), and LBM4SWED2Q9< DataType >::Step().
| virtual int LBM4SWED2Q9< DataType >::OutgoingIndices | ( | const int | side, | |
| int | indices[] | |||
| ) | const [inline, virtual] |
| virtual void LBM4SWED2Q9< DataType >::Output | ( | vec_grid_data_type & | fvec, | |
| grid_data_type & | workvec, | |||
| const int | cnt, | |||
| const int | skip_ghosts = 1 | |||
| ) | const [inline, virtual] |
| virtual void LBM4SWED2Q9< DataType >::register_at | ( | ControlDevice & | Ctrl, | |
| const std::string & | prefix | |||
| ) | [inline, virtual] |
Reimplemented from AMRBase< vector_type, dim >.
References LBM4SWED2Q9< DataType >::csp, LBM4SWED2Q9< DataType >::e, LBM4SWED2Q9< DataType >::g, ControlDevice::getSubDevice(), AMRBase< vector_type, dim >::LocCtrl, LBM4SWED2Q9< DataType >::method, LBM4SWED2Q9< DataType >::nup, RegisterAt(), LBM4SWED2Q9< DataType >::rhop, and LBM4SWED2Q9< DataType >::tau.
| virtual void LBM4SWED2Q9< DataType >::ReverseStream | ( | vec_grid_data_type & | fvec, | |
| const BBox & | bb, | |||
| const int | side | |||
| ) | const [inline, virtual] |
Implements LBMBase< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >.
References SchemeBase< vector_type, dim >::Bottom, SchemeBase< vector_type, dim >::idx(), SchemeBase< vector_type, dim >::Left, comm_service::log(), BBox::lower(), SchemeBase< vector_type, dim >::Right, BBox::stepsize(), SchemeBase< vector_type, dim >::Top, and BBox::upper().
| void LBM4SWED2Q9< DataType >::SetDensityScale | ( | const DataType | r0 | ) | [inline] |
References LBM4SWED2Q9< DataType >::R0.
| void LBM4SWED2Q9< DataType >::SetGravity | ( | DataType | grav | ) | [inline] |
References LBM4SWED2Q9< DataType >::g.
| void LBM4SWED2Q9< DataType >::SetLatticeSpeed | ( | const DataType | e_spec | ) | [inline] |
References LBM4SWED2Q9< DataType >::e, and LBM4SWED2Q9< DataType >::U0.
| virtual void LBM4SWED2Q9< DataType >::SetTimeScale | ( | const DataType | t0 | ) | [inline, virtual] |
Reimplemented from LBMBase< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >.
References LBMBase< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >::T0.
Referenced by LBM4SWED2Q9< DataType >::SetGas(), and LBM4SWED2Q9< DataType >::SetupData().
| virtual void LBM4SWED2Q9< DataType >::SetupData | ( | GridHierarchy * | gh, | |
| const int & | ghosts | |||
| ) | [inline, virtual] |
Reimplemented from AMRBase< vector_type, dim >.
References LBM4SWED2Q9< DataType >::cs2p, LBM4SWED2Q9< DataType >::csp, LBM4SWED2Q9< DataType >::e, LBM4SWED2Q9< DataType >::e2, LBM4SWED2Q9< DataType >::L0(), LBM4SWED2Q9< DataType >::LatticeSpeed(), LBM4SWED2Q9< DataType >::nup, LBM4SWED2Q9< DataType >::Omega_tau(), LBM4SWED2Q9< DataType >::R0, LBM4SWED2Q9< DataType >::rhop, LBM4SWED2Q9< DataType >::SetTimeScale(), AMRBase< vector_type, dim >::SetupData(), LBM4SWED2Q9< DataType >::T0(), and LBM4SWED2Q9< DataType >::U0.
| void LBM4SWED2Q9< DataType >::SetVelocityScale | ( | const DataType | u0 | ) | [inline] |
| virtual double LBM4SWED2Q9< DataType >::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 [inline, virtual] |
Implements SchemeBase< vector_type, dim >.
References LBM4SWED2Q9< DataType >::BedElevation(), LBM4SWED2Q9< DataType >::e, LBM4SWED2Q9< DataType >::e2, LBM4SWED2Q9< DataType >::Equilibrium(), LBM4SWED2Q9< DataType >::g, AMRBase< vector_type, dim >::GH(), SchemeBase< vector_type, dim >::idx(), LBM4SWED2Q9< DataType >::L0(), LB_FACTOR, BBox::lower(), LBM4SWED2Q9< DataType >::MacroVariables(), AMRBase< vector_type, dim >::NGhosts(), LBM4SWED2Q9< DataType >::Omega_tau(), BBox::stepsize(), BBox::upper(), and GridHierarchy::worldStep().
| const DataType& LBM4SWED2Q9< DataType >::T0 | ( | ) | const [inline] |
References LBMBase< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 >::TimeScale().
Referenced by LBM4SWED2Q9< DataType >::SetupData().
| const DataType& LBM4SWED2Q9< DataType >::VelocityScale | ( | ) | const [inline] |
References LBM4SWED2Q9< DataType >::U0.
DataType LBM4SWED2Q9< DataType >::cs2 [protected] |
DataType LBM4SWED2Q9< DataType >::cs22 [protected] |
Referenced by LBM4SWED2Q9< DataType >::LBM4SWED2Q9().
DataType LBM4SWED2Q9< DataType >::cs2p [protected] |
DataType LBM4SWED2Q9< DataType >::csp [protected] |
DataType LBM4SWED2Q9< DataType >::cssq [protected] |
Referenced by LBM4SWED2Q9< DataType >::LBM4SWED2Q9().
DataType LBM4SWED2Q9< DataType >::e [protected] |
Referenced by LBM4SWED2Q9< DataType >::Equilibrium(), LBM4SWED2Q9< DataType >::LatticeSpeed(), LBM4SWED2Q9< DataType >::MacroVariables(), LBM4SWED2Q9< DataType >::register_at(), LBM4SWED2Q9< DataType >::SetGas(), LBM4SWED2Q9< DataType >::SetLatticeSpeed(), LBM4SWED2Q9< DataType >::SetupData(), and LBM4SWED2Q9< DataType >::Step().
DataType LBM4SWED2Q9< DataType >::e2 [protected] |
DataType LBM4SWED2Q9< DataType >::g [protected] |
int LBM4SWED2Q9< DataType >::mdx[9] [protected] |
Referenced by LBM4SWED2Q9< DataType >::Check(), and LBM4SWED2Q9< DataType >::LBM4SWED2Q9().
int LBM4SWED2Q9< DataType >::mdy[9] [protected] |
Referenced by LBM4SWED2Q9< DataType >::Check(), and LBM4SWED2Q9< DataType >::LBM4SWED2Q9().
int LBM4SWED2Q9< DataType >::method[1] [protected] |
Referenced by LBM4SWED2Q9< DataType >::LBM4SWED2Q9(), and LBM4SWED2Q9< DataType >::register_at().
DataType LBM4SWED2Q9< DataType >::nup [protected] |
DataType LBM4SWED2Q9< DataType >::R0 [protected] |
DataType LBM4SWED2Q9< DataType >::rhop [protected] |
DataType LBM4SWED2Q9< DataType >::tau [protected] |
Referenced by LBM4SWED2Q9< DataType >::Omega_tau(), and LBM4SWED2Q9< DataType >::register_at().
DataType LBM4SWED2Q9< DataType >::U0 [protected] |
Referenced by LBM4SWED2Q9< DataType >::BCStandard(), LBM4SWED2Q9< DataType >::ICStandard(), LBM4SWED2Q9< DataType >::Input(), LBM4SWED2Q9< DataType >::Output(), LBM4SWED2Q9< DataType >::SetLatticeSpeed(), LBM4SWED2Q9< DataType >::SetupData(), LBM4SWED2Q9< DataType >::SetVelocityScale(), and LBM4SWED2Q9< DataType >::VelocityScale().