template<template< typename > typename Forced = momenta::Identity>
template<typename DESCRIPTOR, typename MOMENTA, typename EQUILIBRIUM, typename COLLISION>
struct olb::forcing::MCGuo< Forced >::combined_collision< DESCRIPTOR, MOMENTA, EQUILIBRIUM, COLLISION >
Definition at line 130 of file forcing.h.
template<template< typename > typename Forced = momenta::Identity>
template<typename DESCRIPTOR , typename MOMENTA , typename EQUILIBRIUM , typename COLLISION >
template<typename CELL , typename PARAMETERS , typename V = typename CELL::value_t>
| CellStatistic< V > olb::forcing::MCGuo< Forced >::combined_collision< DESCRIPTOR, MOMENTA, EQUILIBRIUM, COLLISION >::apply |
( |
CELL & | cell, |
|
|
PARAMETERS & | parameters ) |
|
inline |
Definition at line 136 of file forcing.h.
136 {
137 V rho, u[DESCRIPTOR::d];
138 MomentaF().computeRhoU(cell, rho, u);
140 const V omega = parameters.template get<descriptors::OMEGA>();
141 const auto force = cell.template getField<descriptors::FORCE>();
144 };
auto normSqr(const ARRAY_LIKE &u) any_platform
Compute norm square of a d-dimensional vector.
typename COLLISION::template type< DESCRIPTOR, Forced< MOMENTA >, EQUILIBRIUM > CollisionO
typename Forced< MOMENTA >::template type< DESCRIPTOR > MomentaF
static void addExternalForce(CELL &cell, const RHO &rho, const U &u, const OMEGA &omega, const FORCE &force) any_platform
Add a force term after BGK collision.
References olb::lbm< DESCRIPTOR >::addExternalForce(), and olb::util::normSqr().