template<template< typename > typename Forced = momenta::Forced>
template<typename DESCRIPTOR, typename MOMENTA, typename EQUILIBRIUM, typename COLLISION>
struct olb::forcing::Guo< Forced >::combined_collision< DESCRIPTOR, MOMENTA, EQUILIBRIUM, COLLISION >
Definition at line 50 of file forcing.h.
template<template< typename > typename Forced = momenta::Forced>
template<typename DESCRIPTOR , typename MOMENTA , typename EQUILIBRIUM , typename COLLISION >
template<typename CELL , typename PARAMETERS , typename V = typename CELL::value_t>
| CellStatistic< V > olb::forcing::Guo< Forced >::combined_collision< DESCRIPTOR, MOMENTA, EQUILIBRIUM, COLLISION >::apply |
( |
CELL & | cell, |
|
|
PARAMETERS & | parameters ) |
|
inline |
Definition at line 60 of file forcing.h.
60 {
61 V rho, u[DESCRIPTOR::d];
62 MomentaF().computeRhoU(cell, rho, u);
63
65 const V omega = parameters.template get<descriptors::OMEGA>();
66 const auto force = cell.template getField<descriptors::FORCE>();
69 };
auto normSqr(const ARRAY_LIKE &u) any_platform
Compute norm square of a d-dimensional vector.
typename Forced< MOMENTA >::template type< DESCRIPTOR > MomentaF
typename COLLISION::template type< DESCRIPTOR, Forced< MOMENTA >, EQUILIBRIUM > CollisionO
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().