lbm_reference
Classes | Enumerations | Variables
lbm Namespace Reference

Common namespace for all LBM classes. More...

Classes

class  LBM
 Lattice Boltzmann Method fluid solver. More...
 
struct  PerformanceData
 
struct  Sphere
 

Enumerations

enum  Direction {
  C = 0, N = 1, E = 2, S = 3,
  W = 4, T = 5, B = 6, NE = 7,
  SE = 8, SW = 9, NW = 10, TN = 11,
  TE = 12, TS = 13, TW = 14, BN = 15,
  BE = 16, BS = 17, BW = 18
}
 Directions of the 19 distribution values for each cell. More...
 
enum  Flag {
  UNDEFINED = 0, FLUID = 1, NOSLIP = 2, VELOCITY = 3,
  INFLOW = 4, OUTFLOW = 5, PRESSURE = 6
}
 Enum describing possible states of a cell. More...
 

Variables

const int Dim = 19
 Number of distribution functions for each cell. More...
 
const int ep [6][19]
 Products of lattice velocities. More...
 
const int ex [19] = { 0, 0, 1, 0,-1, 0, 0, 1, 1,-1,-1, 0, 1, 0,-1, 0, 1, 0,-1 }
 Lattice velocities in x-direction. More...
 
const RealType exn [19]
 Normalized lattice velocities in x-direction. More...
 
const int ey [19] = { 0, 1, 0,-1, 0, 0, 0, 1,-1,-1, 1, 1, 0,-1, 0, 1, 0,-1, 0 }
 Lattice velocities in y-direction. More...
 
const RealType eyn [19]
 Normalized lattice velocities in y-direction. More...
 
const int ez [19] = { 0, 0, 0, 0, 0, 1,-1, 0, 0, 0, 0, 1, 1, 1, 1,-1,-1,-1,-1 }
 Lattice velocities in z-direction. More...
 
const RealType ezn [19]
 Normalized lattice velocities in z-direction. More...
 
const Direction fd [19]
 Corresponding Direction value for numeric directions 0 - 18. More...
 
const Direction fdinv [19]
 Inverse Direction values for numeric directions 0 - 18. More...
 
const int finv [19]
 Inverse lattice directions corresponding to numeric directions 0 - 18. More...
 
const RealType le [19]
 Lengths of the lattice links. More...
 
const double w [19]
 Weights of the distribution values for the collision step. More...
 

Detailed Description

Common namespace for all LBM classes.

Enumeration Type Documentation

Directions of the 19 distribution values for each cell.

Enumerator
C 
N 
E 
S 
W 
T 
B 
NE 
SE 
SW 
NW 
TN 
TE 
TS 
TW 
BN 
BE 
BS 
BW 

Definition at line 20 of file D3Q19.h.

enum lbm::Flag

Enum describing possible states of a cell.

Enumerator
UNDEFINED 
FLUID 
NOSLIP 
VELOCITY 
INFLOW 
OUTFLOW 
PRESSURE 

Definition at line 66 of file LBM.h.

Variable Documentation

const int lbm::Dim = 19
const int lbm::ep[6][19]
Initial value:
= {
{ 0, 0, 1, 0, 1, 0, 0, 1, 1, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1 },
{ 0, 1, 0, 1, 0, 0, 0, 1, 1, 1, 1, 1, 0, 1, 0, 1, 0, 1, 0 },
{ 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1 },
{ 0, 0, 0, 0, 0, 0, 0, 1,-1, 1,-1, 0, 0, 0, 0, 0, 0, 0, 0 },
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0,-1, 0,-1, 0, 1 },
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0,-1, 0,-1, 0, 1, 0 }
}

Products of lattice velocities.

Definition at line 154 of file D3Q19.h.

Referenced by lbm::LBM< T >::collideStreamSmagorinsky().

const int lbm::ex[19] = { 0, 0, 1, 0,-1, 0, 0, 1, 1,-1,-1, 0, 1, 0,-1, 0, 1, 0,-1 }
const RealType lbm::exn[19]
Initial value:
= { 0 , 0 , 1 , 0 , -1, 0, 0,
1/sqrt(2), 1/sqrt(2),-1/sqrt(2),-1/sqrt(2),
0 , 1/sqrt(2), 0 ,-1/sqrt(2),
0 , 1/sqrt(2), 0 ,-1/sqrt(2) }

Normalized lattice velocities in x-direction.

Definition at line 167 of file D3Q19.h.

Referenced by lbm::LBM< T >::moveSphere(), and lbm::LBM< T >::setup().

const int lbm::ey[19] = { 0, 1, 0,-1, 0, 0, 0, 1,-1,-1, 1, 1, 0,-1, 0, 1, 0,-1, 0 }
const RealType lbm::eyn[19]
Initial value:
= { 0 , 1 , 0 ,-1 , 0, 0, 0,
1/sqrt(2),-1/sqrt(2),-1/sqrt(2), 1/sqrt(2),
1/sqrt(2), 0 ,-1/sqrt(2), 0 ,
1/sqrt(2), 0 ,-1/sqrt(2), 0 }

Normalized lattice velocities in y-direction.

Definition at line 178 of file D3Q19.h.

Referenced by lbm::LBM< T >::moveSphere(), and lbm::LBM< T >::setup().

const int lbm::ez[19] = { 0, 0, 0, 0, 0, 1,-1, 0, 0, 0, 0, 1, 1, 1, 1,-1,-1,-1,-1 }
const RealType lbm::ezn[19]
Initial value:
= { 0 , 0 , 0 , 0 , 0, 1,-1,
0 , 0 , 0 , 0 ,
1/sqrt(2), 1/sqrt(2), 1/sqrt(2), 1/sqrt(2),
-1/sqrt(2),-1/sqrt(2),-1/sqrt(2),-1/sqrt(2) }

Normalized lattice velocities in z-direction.

Definition at line 189 of file D3Q19.h.

Referenced by lbm::LBM< T >::moveSphere(), and lbm::LBM< T >::setup().

const Direction lbm::fd[19]
Initial value:
= {
C,
N,
E,
S,
W,
T,
B,
NE,
SE,
SW,
NW,
TN,
TE,
TS,
TW,
BN,
BE,
BS,
}

Corresponding Direction value for numeric directions 0 - 18.

Definition at line 68 of file D3Q19.h.

const Direction lbm::fdinv[19]
Initial value:
= {
C,
S,
W,
N,
E,
B,
T,
SW,
NW,
NE,
BS,
BW,
BN,
BE,
TS,
TW,
TN,
}

Inverse Direction values for numeric directions 0 - 18.

Definition at line 92 of file D3Q19.h.

const int lbm::finv[19]
Initial value:
= {
0,
3,
4,
1,
2,
6,
5,
9,
10,
7,
8,
17,
18,
15,
16,
13,
14,
11,
12
}

Inverse lattice directions corresponding to numeric directions 0 - 18.

Definition at line 44 of file D3Q19.h.

Referenced by lbm::LBM< T >::moveSphere(), lbm::LBM< T >::treatCurved(), lbm::LBM< T >::treatNoslip(), lbm::LBM< T >::treatPressure(), lbm::LBM< T >::treatStaircase(), and lbm::LBM< T >::treatVelocity().

const RealType lbm::le[19]
Initial value:
= { 1. , 1. , 1. , 1. , 1., 1., 1.,
sqrt(2), sqrt(2), sqrt(2), sqrt(2),
sqrt(2), sqrt(2), sqrt(2), sqrt(2),
sqrt(2), sqrt(2), sqrt(2), sqrt(2) }

Lengths of the lattice links.

Definition at line 199 of file D3Q19.h.

Referenced by lbm::LBM< T >::moveSphere(), and lbm::LBM< T >::setup().

const double lbm::w[19]
Initial value:
= {
1. / 3.,
1. / 18.,
1. / 18.,
1. / 18.,
1. / 18.,
1. / 18.,
1. / 18.,
1. / 36.,
1. / 36.,
1. / 36.,
1. / 36.,
1. / 36.,
1. / 36.,
1. / 36.,
1. / 36.,
1. / 36.,
1. / 36.,
1. / 36.,
1. / 36.
}

Weights of the distribution values for the collision step.

Definition at line 115 of file D3Q19.h.

Referenced by lbm::LBM< T >::collideStream(), particles::ParticleSystem::generateBlackBodyColorTable(), lbm::LBM< T >::moveSphere(), lbm::LBM< T >::setup(), lbm::LBM< T >::treatPressure(), and lbm::LBM< T >::treatVelocity().