Microflow 3D  v1.0
MF::GU::LatticeParametersD3Q19 Class Reference

A class that stores the parameters characteristic for the D3Q19 lattice. More...

#include <LatticeParametersD3Q19.h>

Public Member Functions

 LatticeParametersD3Q19 ()=default
 
 ~LatticeParametersD3Q19 ()=default
 

Static Public Member Functions

static std::shared_ptr< MF::GU::LatticeParametersD3Q19New ()
 
static uint8_t find_f (const char nz, const char ny, const char nx)
 Function finds the direction of f based on the components of the direction vector nx, ny, nz. More...
 

Static Public Attributes

static constexpr double LatticeConstant_CSQ = 1.0 / 3.0
 c_s^2 lattice constant More...
 
static constexpr int8_t DirectionVectorComponent_Cx [MFQ27] = {0, 1, 0, -1, 0, 0, 0, 1, -1, -1, 1, 1, 1, -1, -1, 0, 0, 0, 0, -1, 1, 1, -1, -1, 1, 1, -1}
 The x direction vector component of all D3Q19 lattice directions plus additional nodes of the Q27 lattice. More...
 
static constexpr int8_t DirectionVectorComponent_Cy [MFQ27] = {0, 0, 1, 0, -1, 0, 0, 1, 1, -1, -1, 0, 0, 0, 0, 1, 1, -1, -1, 1, 1, 1, 1, -1, -1, -1, -1}
 The y direction vector component of all D3Q19 lattice directions plus additional nodes of the Q27 lattice. More...
 
static constexpr int8_t DirectionVectorComponent_Cz [MFQ27] = {0, 0, 0, 0, 0, 1, -1, 0, 0, 0, 0, 1, -1, -1, 1, 1, -1, -1, 1, -1, -1, 1, 1, -1, -1, 1, 1}
 The z direction vector component of all D3Q19 lattice directions plus additional nodes of the Q27 lattice. More...
 
static constexpr uint8_t ReverseDirectionVector_Rc [MFQ27] = {0, 3, 4, 1, 2, 6, 5, 9, 10, 7, 8, 13, 14, 11, 12, 17, 18, 15, 16, 25, 26, 23, 24, 21, 22, 19, 20}
 Indexes of reverse directions to given direction of lattice Q19 plus additional nodes of lattice Q27. More...
 
static constexpr uint8_t SwapDirections [MFQ19_H][2] = {{1,3},{2,4},{5,6},{7,9},{8,10},{11,13},{12,14},{15,17},{16,18}}
 Indexes of swap directions of f(i) in D3Q19. More...
 
static constexpr double DirectionWeight_W [MFQ19]
 Weights for lattice directions. More...
 

Detailed Description

A class that stores the parameters characteristic for the D3Q19 lattice.

D3 - three dimensional, Q19 - 19 lattice directions (0 + 18).

Definition at line 23 of file LatticeParametersD3Q19.h.

Constructor & Destructor Documentation

◆ LatticeParametersD3Q19()

MF::GU::LatticeParametersD3Q19::LatticeParametersD3Q19 ( )
default

◆ ~LatticeParametersD3Q19()

MF::GU::LatticeParametersD3Q19::~LatticeParametersD3Q19 ( )
default

Member Function Documentation

◆ find_f()

static uint8_t MF::GU::LatticeParametersD3Q19::find_f ( const char  nz,
const char  ny,
const char  nx 
)
inlinestatic

Function finds the direction of f based on the components of the direction vector nx, ny, nz.

Definition at line 66 of file LatticeParametersD3Q19.h.

References DirectionVectorComponent_Cx, DirectionVectorComponent_Cy, DirectionVectorComponent_Cz, and MFQ27.

66  {
67  unsigned char k;
68 
69  for (k = 0; k < MFQ27; k++)
71  return (k);
72  return (0);
73  };
static constexpr int8_t DirectionVectorComponent_Cx[MFQ27]
The x direction vector component of all D3Q19 lattice directions plus additional nodes of the Q27 lat...
#define MFQ27
Number of lattice directions D3Q27.
static constexpr int8_t DirectionVectorComponent_Cy[MFQ27]
The y direction vector component of all D3Q19 lattice directions plus additional nodes of the Q27 lat...
static constexpr int8_t DirectionVectorComponent_Cz[MFQ27]
The z direction vector component of all D3Q19 lattice directions plus additional nodes of the Q27 lat...

◆ New()

static std::shared_ptr<MF::GU::LatticeParametersD3Q19> MF::GU::LatticeParametersD3Q19::New ( )
inlinestatic

Definition at line 29 of file LatticeParametersD3Q19.h.

Referenced by main().

29  {
30  auto LatticeParametersD3Q19_Ptr = std::make_shared<MF::GU::LatticeParametersD3Q19>();
31  return LatticeParametersD3Q19_Ptr;
32  };

Field Documentation

◆ DirectionVectorComponent_Cx

constexpr int8_t MF::GU::LatticeParametersD3Q19::DirectionVectorComponent_Cx[MFQ27] = {0, 1, 0, -1, 0, 0, 0, 1, -1, -1, 1, 1, 1, -1, -1, 0, 0, 0, 0, -1, 1, 1, -1, -1, 1, 1, -1}
static

The x direction vector component of all D3Q19 lattice directions plus additional nodes of the Q27 lattice.

Definition at line 39 of file LatticeParametersD3Q19.h.

Referenced by find_f(), and MF::Database::AutoThreading::GridThreading().

◆ DirectionVectorComponent_Cy

constexpr int8_t MF::GU::LatticeParametersD3Q19::DirectionVectorComponent_Cy[MFQ27] = {0, 0, 1, 0, -1, 0, 0, 1, 1, -1, -1, 0, 0, 0, 0, 1, 1, -1, -1, 1, 1, 1, 1, -1, -1, -1, -1}
static

The y direction vector component of all D3Q19 lattice directions plus additional nodes of the Q27 lattice.

Definition at line 44 of file LatticeParametersD3Q19.h.

Referenced by find_f(), and MF::Database::AutoThreading::GridThreading().

◆ DirectionVectorComponent_Cz

constexpr int8_t MF::GU::LatticeParametersD3Q19::DirectionVectorComponent_Cz[MFQ27] = {0, 0, 0, 0, 0, 1, -1, 0, 0, 0, 0, 1, -1, -1, 1, 1, -1, -1, 1, -1, -1, 1, 1, -1, -1, 1, 1}
static

The z direction vector component of all D3Q19 lattice directions plus additional nodes of the Q27 lattice.

Definition at line 49 of file LatticeParametersD3Q19.h.

Referenced by find_f(), and MF::Database::AutoThreading::GridThreading().

◆ DirectionWeight_W

constexpr double MF::GU::LatticeParametersD3Q19::DirectionWeight_W[MFQ19]
static
Initial value:
= {1.0 / 3.0, 1.0 / 18.0, 1.0 / 18.0, 1.0 / 18.0, 1.0 / 18.0, 1.0 / 18.0, 1.0 / 18.0, 1.0 / 36.0, 1.0 / 36.0, 1.0 / 36.0, 1.0 / 36.0, 1.0 / 36.0, 1.0 / 36.0,
1.0 / 36.0, 1.0 / 36.0, 1.0 / 36.0, 1.0 / 36.0, 1.0 / 36.0, 1.0 / 36.0}

Weights for lattice directions.

Definition at line 62 of file LatticeParametersD3Q19.h.

◆ LatticeConstant_CSQ

constexpr double MF::GU::LatticeParametersD3Q19::LatticeConstant_CSQ = 1.0 / 3.0
static

c_s^2 lattice constant

Definition at line 34 of file LatticeParametersD3Q19.h.

◆ ReverseDirectionVector_Rc

constexpr uint8_t MF::GU::LatticeParametersD3Q19::ReverseDirectionVector_Rc[MFQ27] = {0, 3, 4, 1, 2, 6, 5, 9, 10, 7, 8, 13, 14, 11, 12, 17, 18, 15, 16, 25, 26, 23, 24, 21, 22, 19, 20}
static

Indexes of reverse directions to given direction of lattice Q19 plus additional nodes of lattice Q27.

Definition at line 54 of file LatticeParametersD3Q19.h.

◆ SwapDirections

constexpr uint8_t MF::GU::LatticeParametersD3Q19::SwapDirections[MFQ19_H][2] = {{1,3},{2,4},{5,6},{7,9},{8,10},{11,13},{12,14},{15,17},{16,18}}
static

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