31#include "swarmCorrection.H"
32#include "surfaceInterpolate.H"
49 const phasePair& pair,
50 const bool registerObject
57 IOobject::groupName(typeName, pair.
name()),
72 const phasePair& pair,
73 const bool registerObject
80 IOobject::groupName(typeName, pair.
name()),
93 dict.subDict(
"swarmCorrection"),
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()
bool good() const noexcept
True if next operation might succeed.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Dimension set for the base types, which can be used to implement rigorous dimension checking for alge...
virtual tmp< surfaceScalarField > Kf() const
Return the drag coefficient Kf.
virtual ~dragModel()
Destructor.
dragModel(const phasePair &pair, const bool registerObject)
static const dimensionSet dimK
Coefficient dimensions.
bool writeData(Ostream &os) const
Dummy write for regIOobject.
virtual tmp< volScalarField > Ki() const
Return the phase-intensive drag coefficient Ki.
static autoPtr< dragModel > New(const dictionary &dict, const phasePair &pair)
virtual tmp< volScalarField > K() const
Return the drag coefficient K.
#define defineTypeNameAndDebug(Type, DebugSwitch)
Define the typeName and debug information.
#define FatalIOErrorInLookup(ios, lookupTag, lookupName, lookupTable)
Report an error message using Foam::FatalIOError.
OBJstream os(runTime.globalPath()/outputName)
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.
label max(const labelHashSet &set, label maxValue=labelMin)
Find the max value in labelHashSet, optionally limited by second argument.
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.
dimensionedSymmTensor sqr(const dimensionedVector &dv)
messageStream Info
Information stream (stdout output on master, null elsewhere).
Ostream & endl(Ostream &os)
Add newline and flush stream.
IOerror FatalIOError
Error stream (stdout output on all processes), with additional 'FOAM FATAL IO ERROR' header text and ...
errorManipArg< error, int > exit(error &err, const int errNo=1)
#define defineRunTimeSelectionTable(baseType, argNames)
Define run-time selection table.