53 Foam::Lagrangian::SaffmanMeiLift::calcL
55 const LagrangianModelRef& model,
56 const LagrangianSubMesh& subMesh
59 using namespace constant::mathematical;
61 const clouds::carried& cCloud = cloud<clouds::carried>();
62 const clouds::spherical& sCloud = cloud<clouds::spherical>();
63 const clouds::coupled& cplCloud = cloud<clouds::coupled>();
64 const clouds::sphericalCoupled& scCloud = cloud<clouds::sphericalCoupled>();
66 tmp<LagrangianSubScalarSubField> td = sCloud.d(model, subMesh);
75 isCloud<clouds::coupledToConstantDensityFluid>()
76 ? v/cloud<clouds::coupledToConstantDensityFluid>().rhoByRhoc
77 : v*cloud<clouds::coupledToFluid>().rhoc(model, subMesh)
93 -mcByMOrMc*3/(
twoPi*
sqrt(Rew + rootVSmall))*Cld*(*curlUc)
98 void Foam::Lagrangian::SaffmanMeiLift::addUSup
101 LagrangianEqn<vector>& eqn
156 const word& fieldName,
157 const word& eqnFieldName
161 fieldName ==
cloud().
U.name()
163 eqnFieldName ==
cloud().
U.name()
176 assertCloud<clouds::coupledToConstantDensityFluid>();
Functions for calculating sources in a Lagrangian equation.
Macros for easy insertion into run-time selection tables.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
static tmp< DimensionedField< Type, GeoMesh, PrimitiveField > > New(const word &name, const GeoMesh &mesh, const dimensionSet &, const PrimitiveField< Type > &)
Return a temporary field constructed from name, mesh,.
const word & name() const
Return name.
This class stores the coefficients of a Lagrangian equation, and facilitates solving that equation an...
Class containing Lagrangian geometry and topology.
Base class for Lagrangian models.
const LagrangianMesh & mesh() const
The mesh.
const word & name() const
The source name.
Lift model of Saffman (1965) as extended by Mei (1992). Applicable to spherical particles.
virtual wordList addSupFields() const
Return the name of the velocity field.
virtual bool addsSupToField(const word &fieldName, const word &eqnFieldName) const
Return true for the velocity or carrier velocity field.
virtual void addSup(const LagrangianSubScalarField &deltaT, const LagrangianSubVectorSubField &U, LagrangianEqn< vector > &eqn) const
Add a source term to the velocity equation.
SaffmanMeiLift(const word &name, const LagrangianMesh &mesh, const dictionary &modelDict, const dictionary &stateDict)
Construct from components.
const CloudDerivedField< tensor > & L
Lift force.
Mix-in for Lagrangian models that refer to a cloud.
Base class for clouds. Provides a basic evolution algorithm, models, and a database for caching deriv...
CloudStateField< vector > U
Velocity.
Base class for clouds which are coupled to a constant density fluid.
Base class for clouds which are coupled to a variable density fluid.
A list of keywords followed by any number of values (e.g. words and numbers) or sub-dictionaries.
static dictionary stateDict(const word &name, const objectRegistry &db)
Construct and return the state dictionary for reading.
A class for managing temporary objects.
A class for handling words, derived from string.
volScalarField alpha(IOobject("alpha", runTime.name(), mesh, IOobject::READ_IF_PRESENT, IOobject::AUTO_WRITE), lambda *max(Ua &U, zeroSensitivity))
defineTypeNameAndDebug(collisionPhaseTransfer, 0)
addToRunTimeSelectionTable(LagrangianModel, collisionPhaseTransfer, dictionary)
tmp< LagrangianEqn< Type > > Sp(const LagrangianSubField< SpType > &Sp, const LagrangianSubSubField< Type > &psi)
Return a source matrix.
const scalar twoPi(2 *pi)
dimensionedScalar pos(const dimensionedScalar &ds)
List< word > wordList
A List of words.
dimensionedScalar exp(const dimensionedScalar &ds)
tmp< DimensionedField< typename outerProduct< Type, Type >::type, GeoMesh, Field >> sqr(const DimensionedField< Type, GeoMesh, PrimitiveField > &df)
LagrangianSubSubField< vector > LagrangianSubVectorSubField
dimensionedScalar neg(const dimensionedScalar &ds)
LagrangianSubSubField< scalar > LagrangianSubScalarSubField
tmp< DimensionedField< scalar, GeoMesh, Field > > mag(const DimensionedField< Type, GeoMesh, PrimitiveField > &df)
LagrangianSubField< tensor > LagrangianSubTensorField
LagrangianSubField< scalar > LagrangianSubScalarField
void sqrt(LagrangianPatchField< scalar > &f, const LagrangianPatchField< scalar > &f1)
LagrangianSubField< vector > LagrangianSubVectorField
scalarField Re(const UList< complex > &cf)