OpenLB 1.7
Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | Static Public Attributes | List of all members
olb::LongitudinalMixingReactionCoupling< T > Struct Template Reference

Reaction Coupling for the In-Bulk appraoch of lognitudinalMixing3d example. More...

#include <navierStokesAdvectionDiffusionCoupling.h>

+ Collaboration diagram for olb::LongitudinalMixingReactionCoupling< T >:

Classes

struct  EQUILIBRIUM
 
struct  REACTION_CONSTANT
 

Public Types

using parameters = meta::list<REACTION_CONSTANT, EQUILIBRIUM>
 

Public Member Functions

template<typename CELLS , typename PARAMETERS >
void apply (CELLS &cells, PARAMETERS &parameters) any_platform
 

Static Public Attributes

static constexpr OperatorScope scope = OperatorScope::PerCellWithParameters
 

Detailed Description

template<typename T>
struct olb::LongitudinalMixingReactionCoupling< T >

Reaction Coupling for the In-Bulk appraoch of lognitudinalMixing3d example.

Definition at line 208 of file navierStokesAdvectionDiffusionCoupling.h.

Member Typedef Documentation

◆ parameters

template<typename T >
using olb::LongitudinalMixingReactionCoupling< T >::parameters = meta::list<REACTION_CONSTANT, EQUILIBRIUM>

Definition at line 214 of file navierStokesAdvectionDiffusionCoupling.h.

Member Function Documentation

◆ apply()

template<typename T >
template<typename CELLS , typename PARAMETERS >
void olb::LongitudinalMixingReactionCoupling< T >::apply ( CELLS & cells,
PARAMETERS & parameters )
inline

Definition at line 217 of file navierStokesAdvectionDiffusionCoupling.h.

218 {
219 T forwardConstant = parameters.template get<REACTION_CONSTANT>();
220 T Ceq = parameters.template get<EQUILIBRIUM>();
221
222 auto allow_source = cells.template get<names::Concentration0>().template getField<descriptors::GAMMA>(); //allow source only at surface
223 T concC = cells.template get<names::Concentration0>().computeRho(); //current concentration
224 T source = -forwardConstant*(concC - Ceq); //difference between current Conc and equilibrium concentration determines source
225 cells.template get<names::Concentration0>().template setField<descriptors::SOURCE>(source*allow_source);
226 }
meta::list< REACTION_CONSTANT, EQUILIBRIUM > parameters

Member Data Documentation

◆ scope

template<typename T >
constexpr OperatorScope olb::LongitudinalMixingReactionCoupling< T >::scope = OperatorScope::PerCellWithParameters
staticconstexpr

Definition at line 209 of file navierStokesAdvectionDiffusionCoupling.h.


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