LBM4SWED2Q9< DataType > Class Template Reference

Standard 2d Navier-Stokes LBM stencil operator. More...

#include <LBM4SWED2Q9.h>

Inheritance diagram for LBM4SWED2Q9< DataType >:
LBMBase< Vector< DataType, 9 >, Vector< DataType, 3 >, 2 > SchemeBase< vector_type, dim > AMRBase< vector_type, dim > controlable

List of all members.

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]

Detailed Description

template<class DataType>
class LBM4SWED2Q9< DataType >

Standard 2d Navier-Stokes LBM stencil operator.

Density distribution indexing used, 2D-BGK-operator

C5 C3 C4 \ | / C2--C0--C1 / | \ C8 C6 C7

Author:
Ralf Deiterding, Stephen Wood
Version:
1.0
Date:
Nov-2012

Member Typedef Documentation

template<class DataType >
typedef base::grid_data_type LBM4SWED2Q9< DataType >::grid_data_type

Reimplemented from SchemeBase< vector_type, dim >.

template<class DataType >
typedef base::point_type LBM4SWED2Q9< DataType >::point_type

Reimplemented from SchemeBase< vector_type, dim >.

template<class DataType >
typedef base::SideName LBM4SWED2Q9< DataType >::SideName

Reimplemented from SchemeBase< vector_type, dim >.


Member Enumeration Documentation

template<class DataType >
enum LBM4SWED2Q9::BCPredefined
Enumerator:
Symmetry 
NoSlipWall 
Inlet 
Outlet 
Pressure 
SlidingWall 
template<class DataType >
enum LBM4SWED2Q9::ICPredefined
Enumerator:
GasAtRest 
ConstantMacro 
ConstantMicro 

Constructor & Destructor Documentation

template<class DataType >
virtual LBM4SWED2Q9< DataType >::~LBM4SWED2Q9 (  )  [inline, virtual]

Member Function Documentation

template<class DataType >
virtual void LBM4SWED2Q9< DataType >::BedElevation ( vec_grid_data_type &  fvec,
GridData< DataType, 2 > &  zProfile 
) const [pure virtual]
template<class DataType >
const DataType& LBM4SWED2Q9< DataType >::DensityScale (  )  const [inline]
template<class DataType >
const DataType& LBM4SWED2Q9< DataType >::GasDensity (  )  const [inline]
template<class DataType >
const DataType& LBM4SWED2Q9< DataType >::GasSpeedofSound (  )  const [inline]
template<class DataType >
const DataType& LBM4SWED2Q9< DataType >::GasViscosity ( const DataType  omega,
const DataType  cs,
const DataType  dt 
) const [inline]
template<class DataType >
const DataType& LBM4SWED2Q9< DataType >::GasViscosity (  )  const [inline]
template<class DataType >
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]
template<class DataType >
DataType LBM4SWED2Q9< DataType >::Gravity (  )  const [inline]
template<class DataType >
virtual int LBM4SWED2Q9< DataType >::IncomingIndices ( const int  side,
int  indices[] 
) const [inline, virtual]
template<class DataType >
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]
template<class DataType >
const DataType& LBM4SWED2Q9< DataType >::LatticeSpeed (  )  const [inline]
template<class DataType >
DataType LBM4SWED2Q9< DataType >::LatticeSpeedOfSound (  )  const [inline]
template<class DataType >
DataType LBM4SWED2Q9< DataType >::LatticeViscosity ( const DataType  omega  )  const [inline]
template<class DataType >
virtual void LBM4SWED2Q9< DataType >::LocalStep ( vec_grid_data_type &  fvec,
vec_grid_data_type &  ovec,
const BBox &  bb,
const double &  dt 
) const [inline, virtual]
template<class DataType >
virtual int LBM4SWED2Q9< DataType >::NMethodOrder (  )  const [inline, virtual]
template<class DataType >
virtual const DataType LBM4SWED2Q9< DataType >::Omega ( const DataType  dt  )  const [inline, virtual]
template<class DataType >
const DataType LBM4SWED2Q9< DataType >::Omega_tau (  )  const [inline]
template<class DataType >
virtual int LBM4SWED2Q9< DataType >::OutgoingIndices ( const int  side,
int  indices[] 
) const [inline, virtual]
template<class DataType >
void LBM4SWED2Q9< DataType >::SetDensityScale ( const DataType  r0  )  [inline]
template<class DataType >
void LBM4SWED2Q9< DataType >::SetGravity ( DataType  grav  )  [inline]
template<class DataType >
void LBM4SWED2Q9< DataType >::SetLatticeSpeed ( const DataType  e_spec  )  [inline]
template<class DataType >
virtual void LBM4SWED2Q9< DataType >::SetTimeScale ( const DataType  t0  )  [inline, virtual]
template<class DataType >
void LBM4SWED2Q9< DataType >::SetVelocityScale ( const DataType  u0  )  [inline]
template<class DataType >
const DataType& LBM4SWED2Q9< DataType >::T0 (  )  const [inline]
template<class DataType >
const DataType& LBM4SWED2Q9< DataType >::VelocityScale (  )  const [inline]

Member Data Documentation

template<class DataType >
DataType LBM4SWED2Q9< DataType >::cs22 [protected]
template<class DataType >
DataType LBM4SWED2Q9< DataType >::cssq [protected]
template<class DataType >
int LBM4SWED2Q9< DataType >::mdx[9] [protected]
template<class DataType >
int LBM4SWED2Q9< DataType >::mdy[9] [protected]
template<class DataType >
int LBM4SWED2Q9< DataType >::method[1] [protected]

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