Skip to content

Reply To: SHEAR_SMAGORINSKY

#7968
Adrian
Keymaster

What I mean is that it doesn’t matter beyond documentation purposes what fields you mention in the descriptor. e.g. the velocity of fixed velocity BCs is commonly stored in the field momenta::FixedVelocityMomentumGeneric::VELOCITY which you have probably never seen mentioned in a descriptor. Nevertheless everything works as intended. Analogously just mentioning a field in a descriptor does nothing on the model level – the field still needs to be actually used.

For your second question: Statements such as “the smagorinsky coefficient is a constant in the OpenLB” don’t really make sense as OpenLB is a framework for implementing LB simulations and offers both an vast library of LB models and tools to create new ones. A particular LES model in OpenLB may use a globally constant Smagorinsky value (e.g. the SmagorinskyBGKdynamics do just that) but other models in OpenLB use heterogeneous Smagorinsky values.

e.g. ExternalSmagorinskyBGKdynamics reads per-cell Smagorinsky values from the collision::LES::Smagorinsky field.


using ExternalSmagorinskyBGK = dynamics::Tuple<
  T, DESCRIPTOR,
  MOMENTA,
  equilibria::SecondOrder,
  collision::ParameterFromCell<collision::LES::Smagorinsky,
                               collision::SmagorinskyEffectiveOmega<collision::BGK>>
>;

The collision modifier collision::ParameterFromCell can be used to transform any tuple-based dynamics with a global parameter into a dynamics that uses a local parameter instead.