31#include "surfaceInterpolate.H"
53 const bool registerObject
74 <<
"Drag coefficient not defined for the segregated model."
77 return pair_.phase1();
102 mesh.time().timeName(),
110 L.correctBoundaryConditions();
118 pair_.phase1().residualAlpha() + pair_.phase2().residualAlpha()
126 (pair_.phase1().residualAlpha() + pair_.phase2().residualAlpha())/
L
138 max(
alpha1, pair_.phase1().residualAlpha())
143 max(
alpha2, pair_.phase2().residualAlpha())
149 /(limitedAlpha1*
rho1*nu1 + limitedAlpha2*
rho2*nu2)
156 /(magGradI*limitedAlpha1*limitedAlpha2*muI)
CGAL::Exact_predicates_exact_constructions_kernel K
Macros for easy insertion into run-time selection tables.
#define addToRunTimeSelectionTable(baseType, thisType, argNames)
Add to construction table with typeName as the key.
const volScalarField & alpha1
const volScalarField & alpha2
Defines the attributes of an object for which implicit objectRegistry management is supported,...
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Segregated drag model for use in regions with no obvious dispersed phase.
virtual tmp< surfaceScalarField > Kf() const
The drag function Kf used in the face-momentum equations.
virtual tmp< volScalarField > K() const
The drag function used in the momentum equation.
virtual ~segregated()
Destructor.
virtual tmp< volScalarField > CdRe() const
Drag coefficient.
Mesh data needed to do the Finite Volume discretisation.
Description for mass transfer between a pair of phases. The direction of the mass transfer is from th...
A class for managing temporary objects.
This boundary condition applies a zero-gradient condition from the patch internal field onto the patc...
#define defineTypeNameAndDebug(Type, DebugSwitch)
Define the typeName and debug information.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
Calculate the gradient of the given field.
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.
tmp< GeometricField< typename outerProduct< vector, Type >::type, fvPatchField, volMesh > > grad(const GeometricField< Type, fvsPatchField, surfaceMesh > &ssf)
label max(const labelHashSet &set, label maxValue=labelMin)
Find the max value in labelHashSet, optionally limited by second argument.
const dimensionSet dimless
Dimensionless.
dimensionedSymmTensor sqr(const dimensionedVector &dv)
const dimensionSet dimLength(0, 1, 0, 0, 0, 0, 0)
static const Identity< scalar > I
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
dimensionedScalar cbrt(const dimensionedScalar &ds)
errorManipArg< error, int > exit(error &err, const int errNo=1)
dimensionedScalar lambda("lambda", dimTime/sqr(dimLength), laminarTransport)
const vector L(dict.get< vector >("L"))