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... | |
bool | active () const |
Return const access to the MRF active flag. More... | |
vector | Omega () const |
Return the current Omega vector. More... | |
void | updateMesh (const mapPolyMesh &mpm) |
Update the mesh corresponding to given map. 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 | 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 237 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 170 of file MRFZone.H.
References MRFZone::active(), MRFZone::name(), NotImplemented, and MRFZone::Omega().
|
inline |
Return const access to the MRF region name.
Definition at line 26 of file MRFZoneI.H.
Referenced by MRFZone::clone(), and MRFZoneList::read().
|
inline |
Return const access to the MRF active flag.
Definition at line 32 of file MRFZoneI.H.
Referenced by MRFZone::clone().
Foam::vector Omega | ( | ) | const |
Return the current Omega vector.
Definition at line 304 of file MRFZone.C.
References MRFZone::addCoriolis().
Referenced by MRFZone::clone().
|
inline |
Update the mesh corresponding to given map.
Definition at line 189 of file MRFZone.H.
References MRFZone::addCoriolis(), MRFZone::correctBoundaryVelocity(), MRFZone::makeAbsolute(), MRFZone::makeRelative(), MRFZone::operator=(), MRFZone::read(), U, UEqn, MRFZone::update(), MRFZone::writeData(), and MRFZone::zero().
void addCoriolis | ( | const volVectorField & | U, |
volVectorField & | ddtU | ||
) | const |
Add the Coriolis force contribution to the acceleration field.
Definition at line 311 of file MRFZone.C.
References cells, forAll, GeometricField< Type, PatchField, GeoMesh >::primitiveFieldRef(), and U.
Referenced by MRFZone::addCoriolis(), MRFZone::Omega(), and MRFZone::updateMesh().
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 335 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 369 of file MRFZone.C.
References cells, forAll, fvMatrix< Type >::psi(), and fvMatrix< Type >::source().
void makeRelative | ( | volVectorField & | U | ) | const |
Make the given absolute velocity relative within the MRF region.
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 Foam::Zero.
Referenced by MRFZone::makeRelative(), and MRFZone::updateMesh().
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 464 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 480 of file MRFZone.C.
References GeometricField< Type, PatchField, GeoMesh >::boundaryField(), GeometricField< Type, PatchField, GeoMesh >::boundaryFieldRef(), C::C(), cells, forAll, and patchi.
Referenced by MRFZone::makeAbsolute(), and MRFZone::updateMesh().
void makeAbsolute | ( | surfaceScalarField & | phi | ) | const |
Make the given relative flux absolute within the MRF region.
Definition at line 525 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 541 of file MRFZone.C.
References GeometricField< Type, PatchField, GeoMesh >::boundaryFieldRef(), forAll, and patchi.
Referenced by MRFZone::updateMesh().
void zero | ( | GeometricField< Type, fvsPatchField, surfaceMesh > & | phi | ) | const |
Zero the MRF region of the given field.
Definition at line 212 of file MRFZoneTemplates.C.
References GeometricField< Type, PatchField, GeoMesh >::boundaryFieldRef(), forAll, patchi, GeometricField< Type, PatchField, GeoMesh >::primitiveFieldRef(), and Foam::Zero.
Referenced by MRFZone::updateMesh().
void update | ( | ) |
Update MRFZone faces if the mesh topology changes.
Definition at line 603 of file MRFZone.C.
Referenced by MRFZone::updateMesh().
void writeData | ( | Ostream & | os | ) | const |
Write.
Definition at line 571 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::updateMesh().
bool read | ( | const dictionary & | dict | ) |
Read MRF dictionary.
Definition at line 591 of file MRFZone.C.
References dict, and dictionary::lookupOrDefault().
Referenced by MRFZoneList::read(), and MRFZone::updateMesh().
|
delete |
Disallow default bitwise assignment.
Referenced by MRFZone::updateMesh().