26 #include "SchaefferFrictionalStress.H" 33 namespace kineticTheoryModels
35 namespace frictionalStressModels
41 frictionalStressModel,
54 const dictionary&
dict 57 frictionalStressModel(dict),
58 coeffDict_(dict.optionalSubDict(typeName +
"Coeffs")),
59 phi_(
"phi",
dimless, coeffDict_)
77 const phaseModel& phase,
86 *
pow(
Foam::max(alpha - alphaMinFriction, scalar(0)), 10.0);
94 const phaseModel& phase,
103 *
pow(
Foam::max(alpha - alphaMinFriction, scalar(0)), 9.0);
110 const phaseModel& phase,
119 tmp<volScalarField> tnu
126 phase.mesh().time().timeName(),
141 if (alpha[celli] > alphaMinFriction.value())
152 const fvPatchList& patches = phase.mesh().boundary();
159 if (!patches[
patchi].coupled())
173 nuf.correctBoundaryConditions();
183 phi_.
read(coeffDict_);
Cmpt invariantII(const SymmTensor< Cmpt > &st)
Return the 2nd invariant of a symmetric tensor.
GeometricField< symmTensor, fvPatchField, volMesh > volSymmTensorField
virtual tmp< volScalarField > frictionalPressurePrime(const phaseModel &phase, const dimensionedScalar &alphaMinFriction, const dimensionedScalar &alphaMax) const
Schaeffer(const dictionary &dict)
Construct from components.
#define forAll(list, i)
Loop across all elements in list.
dimensioned< Type > max(const dimensioned< Type > &, const dimensioned< Type > &)
dimensionedSymmTensor sqr(const dimensionedVector &dv)
dimensionedScalar sqrt(const dimensionedScalar &ds)
GeometricField< vector, fvPatchField, volMesh > volVectorField
Macros for easy insertion into run-time selection tables.
GeometricField< scalar, fvPatchField, volMesh > volScalarField
void read(const dictionary &)
Update the value of dimensioned<Type>
const dictionary & optionalSubDict(const word &) const
Find and return a sub-dictionary if found.
const Type & value() const
Return const reference to value.
virtual tmp< volScalarField > nu(const phaseModel &phase, const dimensionedScalar &alphaMinFriction, const dimensionedScalar &alphaMax, const volScalarField &pf, const volSymmTensorField &D) const
dimensionedScalar tr(const dimensionedSphericalTensor &dt)
dimensionedScalar sin(const dimensionedScalar &ds)
addToRunTimeSelectionTable(ensightPart, ensightPartCells, istream)
virtual tmp< volScalarField > frictionalPressure(const phaseModel &phase, const dimensionedScalar &alphaMinFriction, const dimensionedScalar &alphaMax) const
defineTypeNameAndDebug(combustionModel, 0)
Internal & ref()
Return a reference to the dimensioned internal field.
dimensionedScalar pow(const dimensionedScalar &ds, const dimensionedScalar &expt)
PtrList< fvPatch > fvPatchList
container classes for fvPatch
virtual ~Schaeffer()
Destructor.
const dimensionSet dimless(0, 0, 0, 0, 0, 0, 0)
const dictionary & dict_
Reference to higher-level dictionary for re-read.
Boundary & boundaryFieldRef()
Return a reference to the boundary field.
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
dimensioned< scalar > mag(const dimensioned< Type > &)
A class for managing temporary objects.