#include <guoZhaoDynamics.h>
|
template<typename RHO , typename U , typename USQR , typename EPSILON , typename V = RHO> |
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.
|
|
template<typename DESCRIPTOR>
struct olb::guoZhao::guoZhao_equilibrium< DESCRIPTOR >
Definition at line 55 of file guoZhaoDynamics.h.
◆ secondOrder()
template<typename DESCRIPTOR >
template<typename RHO , typename U , typename USQR , typename EPSILON , typename V = RHO>
Computation of equilibrium distribution, second order in u.
Definition at line 58 of file guoZhaoDynamics.h.
59 {
60 V c_u{};
61 for (int iD=0; iD < DESCRIPTOR::d; ++iD) {
62 c_u += descriptors::c<DESCRIPTOR>(iPop,iD)*u[iD];
63 }
64 return rho
65 * descriptors::t<V,DESCRIPTOR>(iPop)
66 * ( V{1}
67 + descriptors::invCs2<V,DESCRIPTOR>() * c_u
68 + descriptors::invCs2<V,DESCRIPTOR>() * descriptors::invCs2<V,DESCRIPTOR>() * V{0.5} * c_u * c_u / epsilon
69 - descriptors::invCs2<V,DESCRIPTOR>() * V{0.5} * uSqr / epsilon)
70 - descriptors::t<V,DESCRIPTOR>(iPop);
71 }
The documentation for this struct was generated from the following file: