34 namespace kineticTheoryModels
36 namespace frictionalStressModels
60 coeffDict_(
dict.optionalSubDict(typeName +
"Coeffs")),
62 eta_(
"eta",
dimless, coeffDict_),
64 phi_(
"phi",
dimless, coeffDict_),
65 alphaDeltaMin_(
"alphaDeltaMin",
dimless, coeffDict_)
92 Fr_*
pow(
max(
alpha - alphaMinFriction, scalar(0)), eta_)
110 eta_*
pow(
max(
alpha - alphaMinFriction, scalar(0)), eta_ - 1)
112 + p_*
pow(
max(
alpha - alphaMinFriction, scalar(0)), eta_)
136 Foam::typedName<frictionalStressModel>(
"nu"),
151 0.5*pf[celli]*
sin(phi_.value())
170 mag(phase.
U()().boundaryField()[
patchi].snGrad())
187 coeffDict_ <<= dict_.optionalSubDict(typeName +
"Coeffs");
189 Fr_.read(coeffDict_);
190 eta_.read(coeffDict_);
193 phi_.read(coeffDict_);
196 alphaDeltaMin_.read(coeffDict_);
static const Foam::dimensionedScalar D("D", Foam::dimTemperature, 257.14)
#define forAll(list, i)
Loop across all elements in list.
Macros for easy insertion into run-time selection tables.
const Mesh & mesh() const
Return mesh.
Generic GeometricBoundaryField class.
Generic GeometricField class.
const Boundary & boundaryField() const
Return const-reference to the boundary field.
void correctBoundaryConditions()
Correct boundary field.
Boundary & boundaryFieldRef()
Return a reference to the boundary field.
static tmp< GeometricField< Type, PatchField, GeoMesh > > New(const word &name, const Internal &, const PtrList< PatchField< Type >> &, const HashPtrTable< Source > &=HashPtrTable< Source >())
Return a temporary field constructed from name,.
static word group(const word &name)
Return group (extension part of name)
static word groupName(Name name, const word &group)
A templated 1D list of pointers to objects of type <T>, where the size of the array is known and used...
A list of keyword definitions, which are a keyword followed by any number of values (e....
Dimension set for the base types.
const Type & value() const
Return const reference to value.
JohnsonJacksonSchaeffer(const dictionary &dict)
Construct from components.
virtual tmp< volScalarField > frictionalPressure(const phaseModel &phase, const dimensionedScalar &alphaMinFriction, const dimensionedScalar &alphaMax) const
virtual tmp< volScalarField > nu(const phaseModel &phase, const dimensionedScalar &alphaMinFriction, const dimensionedScalar &alphaMax, const volScalarField &pf, const volSymmTensorField &D) const
virtual tmp< volScalarField > frictionalPressurePrime(const phaseModel &phase, const dimensionedScalar &alphaMinFriction, const dimensionedScalar &alphaMax) const
virtual ~JohnsonJacksonSchaeffer()
Destructor.
virtual tmp< volVectorField > U() const =0
Return the velocity.
A class for managing temporary objects.
T & ref() const
Return non-const reference or generate a fatal error.
const fvPatchList & patches
dimensionedScalar alphaMax(viscosity->lookup("alphaMax"))
volScalarField alpha(IOobject("alpha", runTime.name(), mesh, IOobject::READ_IF_PRESENT, IOobject::AUTO_WRITE), lambda *max(Ua &U, zeroSensitivity))
defineTypeNameAndDebug(JohnsonJackson, 0)
addToRunTimeSelectionTable(frictionalStressModel, JohnsonJackson, dictionary)
dimensionedScalar tr(const dimensionedSphericalTensor &dt)
dimensionedSymmTensor sqr(const dimensionedVector &dv)
const dimensionSet dimless
dimensionedScalar sin(const dimensionedScalar &ds)
dimensionedScalar pow(const dimensionedScalar &ds, const dimensionedScalar &expt)
dimensionedScalar sqrt(const dimensionedScalar &ds)
dimensioned< scalar > mag(const dimensioned< Type > &)
Cmpt invariantII(const SymmTensor< Cmpt > &st)
Return the 2nd invariant of a symmetric tensor.
layerAndWeight max(const layerAndWeight &a, const layerAndWeight &b)