OpenLB 1.7
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
olb::guoZhao::GuoZhaoSecondOrder::type< DESCRIPTOR, MOMENTA > Struct Template Reference

#include <guoZhaoDynamics.h>

+ Collaboration diagram for olb::guoZhao::GuoZhaoSecondOrder::type< DESCRIPTOR, MOMENTA >:

Public Types

using MomentaF = typename MOMENTA::template type<DESCRIPTOR>
 

Public Member Functions

template<typename RHO , typename U >
auto compute (int iPop, const RHO &rho, const U &u) any_platform
 
template<typename CELL , typename PARAMETERS , typename FEQ , typename V = typename CELL::value_t>
CellStatistic< V > compute (CELL &cell, PARAMETERS &parameters, FEQ &fEq) any_platform
 

Detailed Description

template<typename DESCRIPTOR, typename MOMENTA>
struct olb::guoZhao::GuoZhaoSecondOrder::type< DESCRIPTOR, MOMENTA >

Definition at line 123 of file guoZhaoDynamics.h.

Member Typedef Documentation

◆ MomentaF

template<typename DESCRIPTOR , typename MOMENTA >
using olb::guoZhao::GuoZhaoSecondOrder::type< DESCRIPTOR, MOMENTA >::MomentaF = typename MOMENTA::template type<DESCRIPTOR>

Definition at line 124 of file guoZhaoDynamics.h.

Member Function Documentation

◆ compute() [1/2]

template<typename DESCRIPTOR , typename MOMENTA >
template<typename CELL , typename PARAMETERS , typename FEQ , typename V = typename CELL::value_t>
CellStatistic< V > olb::guoZhao::GuoZhaoSecondOrder::type< DESCRIPTOR, MOMENTA >::compute ( CELL & cell,
PARAMETERS & parameters,
FEQ & fEq )
inline

Definition at line 133 of file guoZhaoDynamics.h.

133 {
134 const V epsilon = cell.template getField<descriptors::EPSILON>();
135 V rho, u[DESCRIPTOR::d];
136 MomentaF().computeRhoU(cell, rho, u);
137 const V uSqr = util::normSqr<V,DESCRIPTOR::d>(u);
138 for (int iPop=0; iPop < DESCRIPTOR::q; ++iPop) {
139 fEq[iPop] = guoZhao_equilibrium<DESCRIPTOR>::secondOrder(iPop, rho, u, uSqr, epsilon);
140 }
141 return {rho, util::normSqr<V,DESCRIPTOR::d>(u)};
142 };
typename MOMENTA::template type< DESCRIPTOR > MomentaF
static V secondOrder(int iPop, const RHO &rho, const U &u, const USQR &uSqr, const EPSILON &epsilon) any_platform
Computation of equilibrium distribution, second order in u.

References olb::guoZhao::guoZhao_equilibrium< DESCRIPTOR >::secondOrder().

+ Here is the call graph for this function:

◆ compute() [2/2]

template<typename DESCRIPTOR , typename MOMENTA >
template<typename RHO , typename U >
auto olb::guoZhao::GuoZhaoSecondOrder::type< DESCRIPTOR, MOMENTA >::compute ( int iPop,
const RHO & rho,
const U & u )
inline

Definition at line 127 of file guoZhaoDynamics.h.

127 {
128 assert("GuoZhaoSecondOrder::compute(int, RHO&, U&) should never be called." && false);
129 return RHO();
130 }

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