33 namespace PDRDragModels
43 Foam::PDRDragModels::basic::basic
45 const dictionary& PDRProperties,
52 PDRDragModel(PDRProperties, turbulence, rho, U, phi),
53 Csu(
"Csu",
dimless, PDRDragModelCoeffs_),
54 Csk(
"Csk",
dimless, PDRDragModelCoeffs_),
61 U_.
mesh().facesInstance(),
74 U_.
mesh().facesInstance(),
94 tmp<volSymmTensorField> tDragDcu
101 U_.mesh().time().constant(),
124 (0.5*rho_)*CR_*
mag(U_) + (Csu*
I)*betav*turbulence_.muEff()*
sqr(Aw_);
133 tmp<volScalarField> tGk
140 U_.mesh().time().constant(),
161 (0.5*rho_)*
mag(U_)*(U_ & CT & U_)
162 + Csk*betav*turbulence_.muEff()*
sqr(Aw_)*
magSqr(U_);
173 PDRDragModelCoeffs_.lookup(
"Csu") >> Csu.value();
174 PDRDragModelCoeffs_.lookup(
"Csk") >> Csk.value();
GeometricField< symmTensor, fvPatchField, volMesh > volSymmTensorField
virtual bool read()
Read object.
dimensionedSymmTensor sqr(const dimensionedVector &dv)
virtual ~basic()
Destructor.
GeometricField< vector, fvPatchField, volMesh > volVectorField
const Type & lookupObject(const word &name) const
Lookup and return the object of the given Type.
virtual tmp< volSymmTensorField > Dcu() const
Return the momentum drag coefficient.
Macros for easy insertion into run-time selection tables.
void writeFields() const
Write fields.
GeometricField< scalar, fvPatchField, volMesh > volScalarField
virtual tmp< volScalarField > Gk() const
Return the momentum drag turbulence generation rate.
static const Identity< scalar > I
dimensioned< scalar > magSqr(const dimensioned< Type > &)
addToRunTimeSelectionTable(ensightPart, ensightPartCells, istream)
Info<< "Reading field U\"<< endl;volVectorField U(IOobject("U", runTime.timeName(), mesh, IOobject::MUST_READ, IOobject::AUTO_WRITE), mesh);volScalarField rho(IOobject("rho", runTime.timeName(), mesh, IOobject::NO_READ, IOobject::AUTO_WRITE), thermo.rho());volVectorField rhoU(IOobject("rhoU", runTime.timeName(), mesh, IOobject::NO_READ, IOobject::NO_WRITE), rho *U);volScalarField rhoE(IOobject("rhoE", runTime.timeName(), mesh, IOobject::NO_READ, IOobject::NO_WRITE), rho *(e+0.5 *magSqr(U)));surfaceScalarField pos(IOobject("pos", runTime.timeName(), mesh), mesh, dimensionedScalar("pos", dimless, 1.0));surfaceScalarField neg(IOobject("neg", runTime.timeName(), mesh), mesh, dimensionedScalar("neg", dimless, -1.0));surfaceScalarField phi("phi", fvc::flux(rhoU));Info<< "Creating turbulence model\"<< endl;autoPtr< compressible::turbulenceModel > turbulence(compressible::turbulenceModel::New(rho, U, phi, thermo))
defineTypeNameAndDebug(combustionModel, 0)
dimensioned< symmTensor > dimensionedSymmTensor
Dimensioned tensor obtained from generic dimensioned type.
RASModel< EddyDiffusivity< turbulenceModel > > RASModel
Internal & ref()
Return a reference to the dimensioned internal field.
dimensionedScalar pow(const dimensionedScalar &ds, const dimensionedScalar &expt)
const dimensionSet dimless(0, 0, 0, 0, 0, 0, 0)
const dimensionSet dimLength(0, 1, 0, 0, 0, 0, 0)
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
const dimensionSet dimTime(0, 0, 1, 0, 0, 0, 0)
dimensioned< scalar > mag(const dimensioned< Type > &)
const dimensionSet dimMass(1, 0, 0, 0, 0, 0, 0)
A class for managing temporary objects.
GeometricField< scalar, fvsPatchField, surfaceMesh > surfaceScalarField
const objectRegistry & db() const
Return the local objectRegistry.