30 #include "phasePair.H" 31 #include "swarmCorrection.H" 32 #include "surfaceInterpolate.H" 49 const phasePair& pair,
50 const bool registerObject
57 IOobject::groupName(typeName, pair.
name()),
71 const dictionary&
dict,
72 const phasePair& pair,
73 const bool registerObject
80 IOobject::groupName(typeName, pair.
name()),
93 dict.subDict(
"swarmCorrection"),
105 const dictionary&
dict,
106 const phasePair& pair
109 const word modelType(
dict.
get<word>(
"type"));
111 Info<<
"Selecting dragModel for " 112 << pair <<
": " << modelType <<
endl;
114 auto* ctorPtr = dictionaryConstructorTable(modelType);
123 *dictionaryConstructorTablePtr_
127 return ctorPtr(
dict, pair,
true);
144 *swarmCorrection_->Cs()
145 *pair_.continuous().rho()
146 *pair_.continuous().nu()
147 /
sqr(pair_.dispersed().d());
153 return max(pair_.dispersed(), pair_.dispersed().residualAlpha())*Ki();
163 pair_.dispersed().residualAlpha()
errorManipArg< error, int > exit(error &err, const int errNo=1)
label max(const labelHashSet &set, label maxValue=labelMin)
Find the max value in labelHashSet, optionally limited by second argument.
dimensionedSymmTensor sqr(const dimensionedVector &dv)
Ostream & endl(Ostream &os)
Add newline and flush stream.
tmp< DimensionedField< TypeR, GeoMesh > > New(const tmp< DimensionedField< TypeR, GeoMesh >> &tf1, const word &name, const dimensionSet &dimensions, const bool initCopy=false)
Global function forwards to reuseTmpDimensionedField::New.
static const dimensionSet dimK
Coefficient dimensions.
T get(const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
Find and return a T. FatalIOError if not found, or if the number of tokens is incorrect.
Dimension set for the base types, which can be used to implement rigorous dimension checking for alge...
word name(const expressions::valueTypeCode typeCode)
A word representation of a valueTypeCode. Empty for expressions::valueTypeCode::INVALID.
bool writeData(Ostream &os) const
Dummy write for regIOobject.
virtual tmp< volScalarField > K() const
Return the drag coefficient K.
dragModel(const phasePair &pair, const bool registerObject)
defineRunTimeSelectionTable(reactionRateFlameArea, dictionary)
OBJstream os(runTime.globalPath()/outputName)
defineTypeNameAndDebug(combustionModel, 0)
static tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > interpolate(const GeometricField< Type, fvPatchField, volMesh > &tvf, const surfaceScalarField &faceFlux, Istream &schemeData)
Interpolate field onto faces using scheme given by Istream.
bool good() const noexcept
True if next operation might succeed.
messageStream Info
Information stream (stdout output on master, null elsewhere)
virtual ~dragModel()
Destructor.
virtual tmp< surfaceScalarField > Kf() const
Return the drag coefficient Kf.
A class for managing temporary objects.
static autoPtr< dragModel > New(const dictionary &dict, const phasePair &pair)
#define FatalIOErrorInLookup(ios, lookupTag, lookupName, lookupTable)
Report an error message using Foam::FatalIOError.
virtual tmp< volScalarField > Ki() const
Return the phase-intensive drag coefficient Ki.
IOerror FatalIOError
Error stream (stdout output on all processes), with additional 'FOAM FATAL IO ERROR' header text and ...