OpenLB 1.8.1
Loading...
Searching...
No Matches
olb::dynamics::CSE< AdvectionDiffusionBoundariesDynamics< T, descriptors::D2Q5< FIELDS... >, dynamics::Tuple< T, descriptors::D2Q5< FIELDS... >, momenta::Tuple< momenta::BulkDensity, momenta::BulkMomentum, momenta::NoStress, momenta::DefineToEq >, equilibria::FirstOrder, collision::AdvectionDiffusionRLB, AdvectionDiffusionExternalVelocityCollision >, momenta::Tuple< momenta::FixedDensity, momenta::FixedVelocityMomentumGeneric, momenta::ZeroStress, momenta::DefineSeparately >, 1, 1 > > Struct Template Reference

#include <6d1f92ba24fe48fb39d7d364f14a33b5fdd59abb93f0ecc3d70ee4aca5cec1c9.cse.h>

+ Collaboration diagram for olb::dynamics::CSE< AdvectionDiffusionBoundariesDynamics< T, descriptors::D2Q5< FIELDS... >, dynamics::Tuple< T, descriptors::D2Q5< FIELDS... >, momenta::Tuple< momenta::BulkDensity, momenta::BulkMomentum, momenta::NoStress, momenta::DefineToEq >, equilibria::FirstOrder, collision::AdvectionDiffusionRLB, AdvectionDiffusionExternalVelocityCollision >, momenta::Tuple< momenta::FixedDensity, momenta::FixedVelocityMomentumGeneric, momenta::ZeroStress, momenta::DefineSeparately >, 1, 1 > >:

Public Member Functions

template<concepts::Cell CELL, concepts::Parameters PARAMETERS, concepts::BaseType V = typename CELL::value_t>
CellStatistic< V > collide (CELL &cell, PARAMETERS &parameters) any_platform
 

Detailed Description

template<typename T, typename... FIELDS>
struct olb::dynamics::CSE< AdvectionDiffusionBoundariesDynamics< T, descriptors::D2Q5< FIELDS... >, dynamics::Tuple< T, descriptors::D2Q5< FIELDS... >, momenta::Tuple< momenta::BulkDensity, momenta::BulkMomentum, momenta::NoStress, momenta::DefineToEq >, equilibria::FirstOrder, collision::AdvectionDiffusionRLB, AdvectionDiffusionExternalVelocityCollision >, momenta::Tuple< momenta::FixedDensity, momenta::FixedVelocityMomentumGeneric, momenta::ZeroStress, momenta::DefineSeparately >, 1, 1 > >

Definition at line 38 of file 6d1f92ba24fe48fb39d7d364f14a33b5fdd59abb93f0ecc3d70ee4aca5cec1c9.cse.h.

Member Function Documentation

◆ collide()

template<typename T , typename... FIELDS>
template<concepts::Cell CELL, concepts::Parameters PARAMETERS, concepts::BaseType V = typename CELL::value_t>
CellStatistic< V > olb::dynamics::CSE< AdvectionDiffusionBoundariesDynamics< T, descriptors::D2Q5< FIELDS... >, dynamics::Tuple< T, descriptors::D2Q5< FIELDS... >, momenta::Tuple< momenta::BulkDensity, momenta::BulkMomentum, momenta::NoStress, momenta::DefineToEq >, equilibria::FirstOrder, collision::AdvectionDiffusionRLB, AdvectionDiffusionExternalVelocityCollision >, momenta::Tuple< momenta::FixedDensity, momenta::FixedVelocityMomentumGeneric, momenta::ZeroStress, momenta::DefineSeparately >, 1, 1 > >::collide ( CELL & cell,
PARAMETERS & parameters )
inline

Definition at line 40 of file 6d1f92ba24fe48fb39d7d364f14a33b5fdd59abb93f0ecc3d70ee4aca5cec1c9.cse.h.

40 {
41auto x10 = parameters.template get<descriptors::OMEGA>();
42auto x5 = cell.template getFieldComponent<descriptors::VELOCITY>(0);
43auto x6 = cell.template getFieldComponent<descriptors::VELOCITY>(1);
44auto x7 = cell.template getFieldComponent<momenta::FixedDensity::RHO>(0);
45auto x8 = x10 + V{-1};
46auto x9 = V{0.5}*cell[1];
47auto x11 = V{0.5}*cell[3];
48auto x12 = V{3}*x5;
49auto x13 = x12 + V{1};
50auto x14 = V{0.0833333333333333}*x7;
51auto x15 = x12 + V{-1};
52auto x16 = x8*(-x11 + x13*x14 + x14*x15 + x9);
53auto x17 = V{0.166666666666667}*x7;
54auto x18 = V{3}*x6;
55auto x19 = x18 + V{-1};
56auto x20 = x18 + V{1};
57auto x21 = V{0.5}*cell[0] + V{1}*cell[4] + x11 - x14*x20 - V{0.5}*x7 + x9 + V{0.5};
58cell[0] = V{0.333333333333333}*x7 + V{-0.333333333333333};
59cell[1] = -x15*x17 - x16 + V{-0.166666666666667};
60cell[2] = -x17*x19 + x8*(-x14*x19 + x21) + V{-0.166666666666667};
61cell[3] = x13*x17 + x16 + V{-0.166666666666667};
62cell[4] = V{0.166666666666667}*x20*x7 - x8*(-x14*x19 + x21) + V{-0.166666666666667};
63return { x7, x5*x5 + x6*x6 };
64}

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