MRF zone definition based on cell zone and parameters obtained from a control dictionary constructed from the given stream. More...
Public Member Functions | |
ClassName ("MRFZone") | |
MRFZone (const word &name, const fvMesh &mesh, const dictionary &dict, const word &cellZoneName=word::null) | |
Construct from fvMesh. More... | |
MRFZone (const MRFZone &)=delete | |
Disallow default bitwise copy construction. More... | |
autoPtr< MRFZone > | clone () const |
Return clone. More... | |
const word & | name () const |
Return const access to the MRF region name. More... | |
vector | Omega () const |
Return the current Omega vector. More... | |
void | addCoriolis (const volVectorField &U, volVectorField &ddtU) const |
Add the Coriolis force contribution to the acceleration field. More... | |
void | addCoriolis (fvVectorMatrix &UEqn, const bool rhs=false) const |
Add the Coriolis force contribution to the momentum equation. More... | |
void | addCoriolis (const volScalarField &rho, fvVectorMatrix &UEqn, const bool rhs=false) const |
Add the Coriolis force contribution to the momentum equation. More... | |
void | addCentrifugalAcceleration (volVectorField ¢rifugalAcceleration) const |
Add the centrifugal acceleration. More... | |
void | makeRelative (volVectorField &U) const |
Make the given absolute velocity relative within the MRF region. More... | |
void | makeRelative (surfaceScalarField &phi) const |
Make the given absolute flux relative within the MRF region. More... | |
void | makeRelative (FieldField< fvsPatchField, scalar > &phi) const |
Make the given absolute boundary flux relative. More... | |
void | makeRelative (Field< scalar > &phi, const label patchi) const |
Make the given absolute patch flux relative. More... | |
void | makeRelative (const surfaceScalarField &rho, surfaceScalarField &phi) const |
Make the given absolute mass-flux relative within the MRF region. More... | |
void | makeAbsolute (volVectorField &U) const |
Make the given relative velocity absolute within the MRF region. More... | |
void | makeAbsolute (surfaceScalarField &phi) const |
Make the given relative flux absolute within the MRF region. More... | |
void | makeAbsolute (const surfaceScalarField &rho, surfaceScalarField &phi) const |
Make the given relative mass-flux absolute within the MRF region. More... | |
void | correctBoundaryVelocity (volVectorField &U) const |
Correct the boundary velocity for the rotation of the MRF region. More... | |
template<class Type > | |
void | zero (GeometricField< Type, fvsPatchField, surfaceMesh > &phi) const |
Zero the MRF region of the given field. More... | |
void | update () |
Update MRFZone faces if the mesh topology changes. More... | |
void | writeData (Ostream &os) const |
Write. More... | |
bool | read (const dictionary &dict) |
Read MRF dictionary. More... | |
void | operator= (const MRFZone &)=delete |
Disallow default bitwise assignment. More... | |
MRF zone definition based on cell zone and parameters obtained from a control dictionary constructed from the given stream.
The rotation of the MRF region is defined by an origin and axis of rotation and an angular speed.
MRFZone | ( | const word & | name, |
const fvMesh & | mesh, | ||
const dictionary & | dict, | ||
const word & | cellZoneName = word::null |
||
) |
Construct from fvMesh.
Definition at line 244 of file MRFZone.C.
References Foam::exit(), Foam::FatalError, FatalErrorInFunction, forAllConstIter, Foam::mag(), word::null, and Foam::reduce().
ClassName | ( | "MRFZone" | ) |
Return clone.
Definition at line 164 of file MRFZone.H.
References MRFZone::addCentrifugalAcceleration(), MRFZone::addCoriolis(), MRFZone::correctBoundaryVelocity(), MRFZone::makeAbsolute(), MRFZone::makeRelative(), MRFZone::name(), NotImplemented, MRFZone::Omega(), MRFZone::operator=(), MRFZone::read(), U, UEqn, MRFZone::update(), MRFZone::writeData(), and MRFZone::zero().
|
inline |
Return const access to the MRF region name.
Definition at line 26 of file MRFZoneI.H.
Referenced by MRFZone::clone(), and MRFZoneList::read().
Foam::vector Omega | ( | ) | const |
Return the current Omega vector.
Definition at line 303 of file MRFZone.C.
References MRFZone::addCoriolis().
Referenced by MRFZone::clone().
void addCoriolis | ( | const volVectorField & | U, |
volVectorField & | ddtU | ||
) | const |
Add the Coriolis force contribution to the acceleration field.
Definition at line 310 of file MRFZone.C.
References cells, forAll, GeometricField< Type, PatchField, GeoMesh >::primitiveFieldRef(), and U.
Referenced by MRFZone::addCoriolis(), MRFZone::clone(), and MRFZone::Omega().
void addCoriolis | ( | fvVectorMatrix & | UEqn, |
const bool | rhs = false |
||
) | const |
Add the Coriolis force contribution to the momentum equation.
Adds to the lhs of the equation; optionally add to rhs
Definition at line 334 of file MRFZone.C.
References MRFZone::addCoriolis(), cells, forAll, fvMatrix< Type >::psi(), and fvMatrix< Type >::source().
void addCoriolis | ( | const volScalarField & | rho, |
fvVectorMatrix & | UEqn, | ||
const bool | rhs = false |
||
) | const |
Add the Coriolis force contribution to the momentum equation.
Adds to the lhs of the equation; optionally add to rhs
Definition at line 368 of file MRFZone.C.
References MRFZone::addCentrifugalAcceleration(), cells, forAll, fvMatrix< Type >::psi(), and fvMatrix< Type >::source().
void addCentrifugalAcceleration | ( | volVectorField & | centrifugalAcceleration | ) | const |
Add the centrifugal acceleration.
Definition at line 406 of file MRFZone.C.
References GeometricField< Type, PatchField, GeoMesh >::boundaryField(), GeometricField< Type, PatchField, GeoMesh >::boundaryFieldRef(), C::C(), cells, forAll, patchi, and GeometricField< Type, PatchField, GeoMesh >::primitiveFieldRef().
Referenced by MRFZone::addCoriolis(), and MRFZone::clone().
void makeRelative | ( | volVectorField & | U | ) | const |
Make the given absolute velocity relative within the MRF region.
Definition at line 444 of file MRFZone.C.
References GeometricField< Type, PatchField, GeoMesh >::boundaryField(), GeometricField< Type, PatchField, GeoMesh >::boundaryFieldRef(), C::C(), cells, forAll, patchi, and Foam::Zero.
Referenced by MRFZone::clone(), and MRFZone::makeRelative().
void makeRelative | ( | surfaceScalarField & | phi | ) | const |
void makeRelative | ( | FieldField< fvsPatchField, scalar > & | phi | ) | const |
Make the given absolute patch flux relative.
within the MRF region
Definition at line 501 of file MRFZone.C.
References MRFZone::makeRelative().
void makeRelative | ( | const surfaceScalarField & | rho, |
surfaceScalarField & | phi | ||
) | const |
void makeAbsolute | ( | volVectorField & | U | ) | const |
Make the given relative velocity absolute within the MRF region.
Definition at line 517 of file MRFZone.C.
References GeometricField< Type, PatchField, GeoMesh >::boundaryField(), GeometricField< Type, PatchField, GeoMesh >::boundaryFieldRef(), C::C(), cells, forAll, and patchi.
Referenced by MRFZone::clone(), and MRFZone::makeAbsolute().
void makeAbsolute | ( | surfaceScalarField & | phi | ) | const |
Make the given relative flux absolute within the MRF region.
Definition at line 561 of file MRFZone.C.
References MRFZone::makeAbsolute().
void makeAbsolute | ( | const surfaceScalarField & | rho, |
surfaceScalarField & | phi | ||
) | const |
void correctBoundaryVelocity | ( | volVectorField & | U | ) | const |
Correct the boundary velocity for the rotation of the MRF region.
Definition at line 577 of file MRFZone.C.
References GeometricField< Type, PatchField, GeoMesh >::boundaryFieldRef(), forAll, and patchi.
Referenced by MRFZone::clone().
void zero | ( | GeometricField< Type, fvsPatchField, surfaceMesh > & | phi | ) | const |
Zero the MRF region of the given field.
Definition at line 192 of file MRFZoneTemplates.C.
References GeometricField< Type, PatchField, GeoMesh >::boundaryFieldRef(), forAll, patchi, GeometricField< Type, PatchField, GeoMesh >::primitiveFieldRef(), and Foam::Zero.
Referenced by MRFZone::clone().
void update | ( | ) |
Update MRFZone faces if the mesh topology changes.
Definition at line 632 of file MRFZone.C.
Referenced by MRFZone::clone().
void writeData | ( | Ostream & | os | ) | const |
Write.
Definition at line 602 of file MRFZone.C.
References token::BEGIN_BLOCK, Foam::decrIndent(), token::END_BLOCK, Foam::incrIndent(), Foam::nl, Ostream::write(), and Foam::writeEntry().
Referenced by MRFZone::clone().
bool read | ( | const dictionary & | dict | ) |
Read MRF dictionary.
Definition at line 621 of file MRFZone.C.
References dict, and dictionary::lookup().
Referenced by MRFZone::clone(), and MRFZoneList::read().
|
delete |
Disallow default bitwise assignment.
Referenced by MRFZone::clone().