OpenLB 1.7
Loading...
Searching...
No Matches
Public Member Functions | List of all members
olb::cpu::Dynamics< T, DESCRIPTOR, PLATFORM > Struct Template Referenceabstract

Virtual interface for dynamically-dispatched dynamics access on CPU targets. More...

#include <cell.h>

+ Inheritance diagram for olb::cpu::Dynamics< T, DESCRIPTOR, PLATFORM >:
+ Collaboration diagram for olb::cpu::Dynamics< T, DESCRIPTOR, PLATFORM >:

Public Member Functions

virtual ~Dynamics ()
 
virtual CellStatistic< T > collide (Cell< T, DESCRIPTOR, PLATFORM > &cell)=0
 
virtual T computeRho (Cell< T, DESCRIPTOR, PLATFORM > &cell)=0
 
virtual void computeU (Cell< T, DESCRIPTOR, PLATFORM > &cell, T *u)=0
 
virtual void computeJ (Cell< T, DESCRIPTOR, PLATFORM > &cell, T *j)=0
 
virtual void computeRhoU (Cell< T, DESCRIPTOR, PLATFORM > &cell, T &rho, T *u)=0
 
virtual void defineRho (Cell< T, DESCRIPTOR, PLATFORM > &cell, T &rho)=0
 
virtual void defineU (Cell< T, DESCRIPTOR, PLATFORM > &cell, T *u)=0
 
virtual void defineRhoU (Cell< T, DESCRIPTOR, PLATFORM > &cell, T &rho, T *u)=0
 
virtual void defineAllMomenta (Cell< T, DESCRIPTOR, PLATFORM > &cell, T &rho, T *u, T *pi)=0
 
virtual void computeStress (Cell< T, DESCRIPTOR, PLATFORM > &cell, T &rho, T *u, T *pi)=0
 
virtual void computeAllMomenta (Cell< T, DESCRIPTOR, PLATFORM > &cell, T &rho, T *u, T *pi)=0
 
virtual T computeEquilibrium (int iPop, T rho, T *u)=0
 
virtual T getOmegaOrFallback (T fallback)=0
 
void iniEquilibrium (Cell< T, DESCRIPTOR, PLATFORM > &cell, T rho, T *u)
 
void iniRegularized (Cell< T, DESCRIPTOR, PLATFORM > &cell, T rho, T *u, T *pi)
 
virtual void inverseShiftRhoU (Cell< T, DESCRIPTOR, PLATFORM > &cell, T &rho, T *u)=0
 

Detailed Description

template<typename T, typename DESCRIPTOR, Platform PLATFORM>
struct olb::cpu::Dynamics< T, DESCRIPTOR, PLATFORM >

Virtual interface for dynamically-dispatched dynamics access on CPU targets.

Definition at line 39 of file cell.h.

Constructor & Destructor Documentation

◆ ~Dynamics()

template<typename T , typename DESCRIPTOR , Platform PLATFORM>
virtual olb::cpu::Dynamics< T, DESCRIPTOR, PLATFORM >::~Dynamics ( )
inlinevirtual

Definition at line 40 of file cell.h.

40{ }

Member Function Documentation

◆ collide()

template<typename T , typename DESCRIPTOR , Platform PLATFORM>
virtual CellStatistic< T > olb::cpu::Dynamics< T, DESCRIPTOR, PLATFORM >::collide ( Cell< T, DESCRIPTOR, PLATFORM > & cell)
pure virtual

◆ computeAllMomenta()

template<typename T , typename DESCRIPTOR , Platform PLATFORM>
virtual void olb::cpu::Dynamics< T, DESCRIPTOR, PLATFORM >::computeAllMomenta ( Cell< T, DESCRIPTOR, PLATFORM > & cell,
T & rho,
T * u,
T * pi )
pure virtual

◆ computeEquilibrium()

template<typename T , typename DESCRIPTOR , Platform PLATFORM>
virtual T olb::cpu::Dynamics< T, DESCRIPTOR, PLATFORM >::computeEquilibrium ( int iPop,
T rho,
T * u )
pure virtual

◆ computeJ()

template<typename T , typename DESCRIPTOR , Platform PLATFORM>
virtual void olb::cpu::Dynamics< T, DESCRIPTOR, PLATFORM >::computeJ ( Cell< T, DESCRIPTOR, PLATFORM > & cell,
T * j )
pure virtual

◆ computeRho()

template<typename T , typename DESCRIPTOR , Platform PLATFORM>
virtual T olb::cpu::Dynamics< T, DESCRIPTOR, PLATFORM >::computeRho ( Cell< T, DESCRIPTOR, PLATFORM > & cell)
pure virtual

◆ computeRhoU()

template<typename T , typename DESCRIPTOR , Platform PLATFORM>
virtual void olb::cpu::Dynamics< T, DESCRIPTOR, PLATFORM >::computeRhoU ( Cell< T, DESCRIPTOR, PLATFORM > & cell,
T & rho,
T * u )
pure virtual

◆ computeStress()

template<typename T , typename DESCRIPTOR , Platform PLATFORM>
virtual void olb::cpu::Dynamics< T, DESCRIPTOR, PLATFORM >::computeStress ( Cell< T, DESCRIPTOR, PLATFORM > & cell,
T & rho,
T * u,
T * pi )
pure virtual

◆ computeU()

template<typename T , typename DESCRIPTOR , Platform PLATFORM>
virtual void olb::cpu::Dynamics< T, DESCRIPTOR, PLATFORM >::computeU ( Cell< T, DESCRIPTOR, PLATFORM > & cell,
T * u )
pure virtual

◆ defineAllMomenta()

template<typename T , typename DESCRIPTOR , Platform PLATFORM>
virtual void olb::cpu::Dynamics< T, DESCRIPTOR, PLATFORM >::defineAllMomenta ( Cell< T, DESCRIPTOR, PLATFORM > & cell,
T & rho,
T * u,
T * pi )
pure virtual

◆ defineRho()

template<typename T , typename DESCRIPTOR , Platform PLATFORM>
virtual void olb::cpu::Dynamics< T, DESCRIPTOR, PLATFORM >::defineRho ( Cell< T, DESCRIPTOR, PLATFORM > & cell,
T & rho )
pure virtual

◆ defineRhoU()

template<typename T , typename DESCRIPTOR , Platform PLATFORM>
virtual void olb::cpu::Dynamics< T, DESCRIPTOR, PLATFORM >::defineRhoU ( Cell< T, DESCRIPTOR, PLATFORM > & cell,
T & rho,
T * u )
pure virtual

◆ defineU()

template<typename T , typename DESCRIPTOR , Platform PLATFORM>
virtual void olb::cpu::Dynamics< T, DESCRIPTOR, PLATFORM >::defineU ( Cell< T, DESCRIPTOR, PLATFORM > & cell,
T * u )
pure virtual

◆ getOmegaOrFallback()

template<typename T , typename DESCRIPTOR , Platform PLATFORM>
virtual T olb::cpu::Dynamics< T, DESCRIPTOR, PLATFORM >::getOmegaOrFallback ( T fallback)
pure virtual

◆ iniEquilibrium()

template<typename T , typename DESCRIPTOR , Platform PLATFORM>
void olb::cpu::Dynamics< T, DESCRIPTOR, PLATFORM >::iniEquilibrium ( Cell< T, DESCRIPTOR, PLATFORM > & cell,
T rho,
T * u )
inline

Definition at line 60 of file cell.h.

60 {
61 for (unsigned iPop=0; iPop < DESCRIPTOR::q; ++iPop) {
62 cell[iPop] = computeEquilibrium(iPop, rho, u);
63 }
64 };
virtual T computeEquilibrium(int iPop, T rho, T *u)=0

References olb::cpu::Dynamics< T, DESCRIPTOR, PLATFORM >::computeEquilibrium().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ iniRegularized()

template<typename T , typename DESCRIPTOR , Platform PLATFORM>
void olb::cpu::Dynamics< T, DESCRIPTOR, PLATFORM >::iniRegularized ( Cell< T, DESCRIPTOR, PLATFORM > & cell,
T rho,
T * u,
T * pi )
inline

Definition at line 66 of file cell.h.

67 {
68 iniEquilibrium(cell, rho, u);
69 for (unsigned iPop=0; iPop < DESCRIPTOR::q; ++iPop) {
70 cell[iPop] += equilibrium<DESCRIPTOR>::template fromPiToFneq<T>(iPop, pi);
71 }
72 }
void iniEquilibrium(Cell< T, DESCRIPTOR, PLATFORM > &cell, T rho, T *u)
Definition cell.h:60

References olb::cpu::Dynamics< T, DESCRIPTOR, PLATFORM >::iniEquilibrium().

+ Here is the call graph for this function:

◆ inverseShiftRhoU()

template<typename T , typename DESCRIPTOR , Platform PLATFORM>
virtual void olb::cpu::Dynamics< T, DESCRIPTOR, PLATFORM >::inverseShiftRhoU ( Cell< T, DESCRIPTOR, PLATFORM > & cell,
T & rho,
T * u )
pure virtual

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