MRFZoneList Class Reference

List container for MRF zomes. More...

Inheritance diagram for MRFZoneList:
[legend]
Collaboration diagram for MRFZoneList:
[legend]

Public Member Functions

 MRFZoneList (const fvMesh &mesh, const dictionary &dict)
 Constructor. More...
 
 ~MRFZoneList ()=default
 Destructor. More...
 
bool active (const bool warn=false) const
 Return active status. More...
 
void reset (const dictionary &dict)
 Reset the source list. More...
 
const MRFZonegetFromName (const word &name) const
 Return the MRF with a given name. More...
 
void addAcceleration (const volVectorField &U, volVectorField &ddtU) const
 Add the frame acceleration. More...
 
void addAcceleration (fvVectorMatrix &UEqn) const
 Add the frame acceleration contribution to the momentum equation. More...
 
void addAcceleration (const volScalarField &rho, fvVectorMatrix &UEqn) const
 Add the frame acceleration contribution to the momentum equation. More...
 
tmp< volVectorFieldDDt (const volVectorField &U) const
 Return the frame acceleration. More...
 
tmp< volVectorFieldDDt (const volScalarField &rho, const volVectorField &U) const
 Return the frame 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...
 
tmp< surfaceScalarFieldrelative (const tmp< surfaceScalarField > &phi) const
 Return the given absolute flux relative within the MRF region. More...
 
tmp< FieldField< fvsPatchField, scalar > > relative (const tmp< FieldField< fvsPatchField, scalar > > &tphi) const
 Return the given absolute boundary flux relative within. More...
 
tmp< Field< scalar > > relative (const tmp< Field< scalar > > &tphi, const label patchi) const
 Return the given absolute patch flux relative within. 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...
 
tmp< surfaceScalarFieldabsolute (const tmp< surfaceScalarField > &phi) const
 Return 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...
 
void correctBoundaryFlux (const volVectorField &U, surfaceScalarField &phi) const
 Correct the boundary flux for the rotation of the MRF region. More...
 
template<class Type >
tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > zeroFilter (const tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > &tphi) const
 Filter-out the MRF region contribution from the given field. More...
 
void update ()
 Update MRFZone faces if the mesh topology changes. More...
 
bool read (const dictionary &dict)
 Read dictionary. More...
 
bool writeData (Ostream &os) const
 Write data to Ostream. More...
 
template<class Type >
Foam::tmp< Foam::GeometricField< Type, Foam::fvsPatchField, Foam::surfaceMesh > > zeroFilter (const tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > &tphi) const
 
- Public Member Functions inherited from PtrList< MRFZone >
constexpr PtrList () noexcept
 Default construct. More...
 
 PtrList (const label len)
 Construct with specified size, each element initialized to nullptr. More...
 
 PtrList (const PtrList< MRFZone > &list)
 Copy construct using 'clone()' method on each element. More...
 
 PtrList (PtrList< MRFZone > &&list)
 Move construct. More...
 
 PtrList (UList< MRFZone * > &list)
 Take ownership of pointers in the list, set old pointers to null. More...
 
 PtrList (const PtrList< MRFZone > &list, const CloneArg &cloneArgs)
 Copy construct using 'clone()' method on each element. More...
 
 PtrList (PtrList< MRFZone > &list, bool reuse)
 Construct as copy or re-use as specified. More...
 
 PtrList (const SLPtrList< MRFZone > &list)
 Copy construct using 'clone()' on each element of SLPtrList<T> More...
 
 PtrList (Istream &is, const INew &inew)
 Construct from Istream using given Istream constructor class. More...
 
 PtrList (Istream &is)
 Construct from Istream using default Istream constructor class. More...
 
 ~PtrList ()
 Destructor. More...
 
PtrList< MRFZoneclone (Args &&... args) const
 Make a copy by cloning each of the list elements. More...
 
Foam::PtrList< MRFZoneclone (Args &&... args) const
 
const MRFZoneset (const label i) const
 
autoPtr< MRFZoneset (const label i, MRFZone *ptr)
 Set element to given pointer and return old element (can be null) More...
 
autoPtr< MRFZoneset (const label i, autoPtr< MRFZone > &ptr)
 Set element to given autoPtr and return old element. More...
 
autoPtr< MRFZoneset (const label i, autoPtr< MRFZone > &&ptr)
 Set element to given autoPtr and return old element. More...
 
autoPtr< MRFZoneset (const label i, std::unique_ptr< MRFZone > &&ptr)
 Set element to given unique_ptr and return old element. More...
 
autoPtr< MRFZoneset (const label i, const refPtr< MRFZone > &ptr)
 Set element to given refPtr and return old element. More...
 
autoPtr< MRFZoneset (const label i, const tmp< MRFZone > &ptr)
 Set element to given tmp and return old element. More...
 
void clear ()
 Clear the PtrList. Delete allocated entries and set size to zero. More...
 
void resize (const label newLen)
 Adjust size of PtrList. More...
 
void setSize (const label newLen)
 Same as resize() More...
 
void emplace_append (Args &&... args)
 Construct and append an element to the end of the list. More...
 
void append (MRFZone *ptr)
 Append an element to the end of the list. More...
 
void append (autoPtr< MRFZone > &ptr)
 Move append an element to the end of the list. More...
 
void append (autoPtr< MRFZone > &&ptr)
 Move append an element to the end of the list. More...
 
void append (std::unique_ptr< MRFZone > &&ptr)
 Move append an element to the end of the list. More...
 
void append (const refPtr< MRFZone > &ptr)
 Move or clone append a refPtr to the end of the list. More...
 
void append (const tmp< MRFZone > &ptr)
 Move or clone append a tmp to the end of the list. More...
 
void append (PtrList< MRFZone > &&other)
 Move append another list to the end of this list. More...
 
autoPtr< MRFZoneemplace (const label i, Args &&... args)
 Construct and set an element. More...
 
Foam::autoPtr< MRFZoneemplace (const label i, Args &&... args)
 
autoPtr< MRFZonerelease (const label i)
 Release ownership of the pointer at the given position. More...
 
void transfer (PtrList< MRFZone > &list)
 Transfer into this list and annul the argument list. More...
 
void operator= (const PtrList< MRFZone > &list)
 Copy assignment. More...
 
void operator= (PtrList< MRFZone > &&list)
 Move assignment. More...
 
- Public Member Functions inherited from UPtrList< T >
constexpr UPtrList () noexcept
 Default construct. More...
 
 UPtrList (const label len)
 Construct with specified size, each element initialized to nullptr. More...
 
 UPtrList (const UPtrList< T > &list)
 Copy construct (shallow copies addresses) More...
 
 UPtrList (UPtrList< T > &&list)
 Move construct. More...
 
 UPtrList (UPtrList< T > &list, bool reuse)
 Construct as shallow copy or re-use as specified. More...
 
 UPtrList (PtrList< T > &list)
 Shallow copy from PtrList. More...
 
 UPtrList (const UList< T * > &list)
 Construct from UList of pointers (shallow copy) More...
 
 UPtrList (UList< T > &list)
 Construct from UList, taking the address of each list element. More...
 
label size () const noexcept
 The number of elements in the list. More...
 
bool empty () const noexcept
 True if the list is empty (ie, size() is zero) More...
 
Tfirst ()
 Return reference to the first element of the list. More...
 
const Tfirst () const
 Return reference to first element of the list. More...
 
Tlast ()
 Return reference to the last element of the list. More...
 
const Tlast () const
 Return reference to the last element of the list. More...
 
const Ttest (const label i) const
 
Tget (const label i)
 
const Tget (const label i) const
 
const Tset (const label i) const
 
void clear ()
 Set list size to zero. More...
 
void resize (const label newLen)
 Change the size of the list. More...
 
void setSize (const label n)
 Alias for resize() More...
 
label squeezeNull ()
 Squeeze out intermediate nullptr entries in the list of pointers. More...
 
void append (T *ptr)
 Append an element to the end of the list. More...
 
void append (UPtrList< T > &&other)
 Move append another list to the end of this list. More...
 
void swap (UPtrList< T > &list)
 Swap content. More...
 
void transfer (UPtrList< T > &list)
 Transfer contents into this list and annul the argument. More...
 
Tset (const label i, T *ptr)
 
void reorder (const labelUList &oldToNew, const bool check=false)
 
void sortOrder (const labelUList &order, const bool check=false)
 
void checkNonNull () const
 Check and raise FatalError if any nullptr exists in the list. More...
 
const Toperator[] (const label i) const
 Return const reference to the element. More...
 
Toperator[] (const label i)
 Return reference to the element. More...
 
const Toperator() (const label i) const
 Return const pointer to the element - same as get(). More...
 
void operator= (const UPtrList< T > &list)
 Copy assignment (shallow copies addresses) More...
 
void operator= (UPtrList< T > &&list)
 Move assignment. More...
 
T ** begin_ptr () noexcept
 Iterator to begin of raw pointers traversal (use with caution) More...
 
T ** end_ptr () noexcept
 Iterator beyond end of raw pointers traversal (use with caution) More...
 
iterator begin () noexcept
 Return an iterator to begin of UPtrList traversal. More...
 
iterator end () noexcept
 Return iterator beyond end of UPtrList traversal. More...
 
const_iterator cbegin () const noexcept
 Return const_iterator to begin of UPtrList traversal. More...
 
const_iterator cend () const noexcept
 Return const_iterator beyond end of UPtrList traversal. More...
 
const_iterator begin () const noexcept
 Return const_iterator to begin of UPtrList traversal. More...
 
const_iterator end () const noexcept
 Return const_iterator beyond end of UPtrList traversal. More...
 

Protected Attributes

const fvMeshmesh_
 Reference to the mesh database. More...
 
- Protected Attributes inherited from UPtrList< T >
Detail::PtrListDetail< Tptrs_
 The list of pointers. More...
 

Friends

Ostreamoperator<< (Ostream &os, const MRFZoneList &models)
 Ostream operator. More...
 

Additional Inherited Members

- Public Types inherited from UPtrList< T >
typedef T value_type
 Type of values the list contains. More...
 
typedef Treference
 A non-const reference to the value_type. More...
 
typedef const Tconst_reference
 A const reference to the value_type. More...
 
- Protected Member Functions inherited from PtrList< MRFZone >
void readIstream (Istream &is, const INew &inew)
 Read from Istream using Istream constructor class. More...
 
void free ()
 Delete the allocated entries, but retain the list size. More...
 
- Protected Member Functions inherited from UPtrList< T >
void setAddressableSize (const label n) noexcept
 Adjust addressable size. More...
 
 UPtrList (Detail::PtrListDetail< T > &&ptrs)
 Low-level move construct. More...
 

Detailed Description

List container for MRF zomes.

Source files

Definition at line 58 of file MRFZoneList.H.

Constructor & Destructor Documentation

◆ MRFZoneList()

MRFZoneList ( const fvMesh mesh,
const dictionary dict 
)

Constructor.

Definition at line 35 of file MRFZoneList.C.

References MRFZoneList::active(), dict, and MRFZoneList::reset().

Here is the call graph for this function:

◆ ~MRFZoneList()

~MRFZoneList ( )
default

Destructor.

Member Function Documentation

◆ active()

bool active ( const bool  warn = false) const

Return active status.

Definition at line 52 of file MRFZoneList.C.

References MRFZoneList::active(), Foam::endl(), forAll, and Foam::Info.

Referenced by MRFZoneList::active(), and MRFZoneList::MRFZoneList().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ reset()

void reset ( const dictionary dict)

Reset the source list.

Definition at line 69 of file MRFZoneList.C.

References dict, Foam::endl(), Foam::Info, Foam::name(), and resize().

Referenced by MRFZoneList::MRFZoneList().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getFromName()

const Foam::MRFZone & getFromName ( const word name) const

Return the MRF with a given name.

Definition at line 102 of file MRFZoneList.C.

References List< T >::append(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, and Foam::name().

Here is the call graph for this function:

◆ addAcceleration() [1/3]

void addAcceleration ( const volVectorField U,
volVectorField ddtU 
) const

Add the frame acceleration.

Definition at line 151 of file MRFZoneList.C.

References U.

◆ addAcceleration() [2/3]

void addAcceleration ( fvVectorMatrix UEqn) const

Add the frame acceleration contribution to the momentum equation.

Definition at line 164 of file MRFZoneList.C.

References UEqn.

◆ addAcceleration() [3/3]

void addAcceleration ( const volScalarField rho,
fvVectorMatrix UEqn 
) const

Add the frame acceleration contribution to the momentum equation.

Definition at line 173 of file MRFZoneList.C.

References rho, and UEqn.

◆ DDt() [1/2]

Foam::tmp< Foam::volVectorField > DDt ( const volVectorField U) const

Return the frame acceleration.

Definition at line 186 of file MRFZoneList.C.

References Foam::dimTime, Time::New(), U, and Foam::Zero.

Here is the call graph for this function:

◆ DDt() [2/2]

Foam::tmp< Foam::volVectorField > DDt ( const volScalarField rho,
const volVectorField U 
) const

Return the frame acceleration.

Definition at line 214 of file MRFZoneList.C.

References rho, and U.

◆ makeRelative() [1/3]

void makeRelative ( volVectorField U) const

Make the given absolute velocity relative within the MRF region.

Definition at line 224 of file MRFZoneList.C.

References U.

◆ makeRelative() [2/3]

void makeRelative ( surfaceScalarField phi) const

Make the given absolute flux relative within the MRF region.

Definition at line 233 of file MRFZoneList.C.

References phi.

◆ relative() [1/3]

Foam::tmp< Foam::surfaceScalarField > relative ( const tmp< surfaceScalarField > &  phi) const

Return the given absolute flux relative within the MRF region.

Definition at line 242 of file MRFZoneList.C.

References tmp< T >::clear(), makeRelative(), Foam::name(), Foam::New(), and tmp< T >::ref().

Here is the call graph for this function:

◆ relative() [2/3]

Foam::tmp< Foam::FieldField< Foam::fvsPatchField, Foam::scalar > > relative ( const tmp< FieldField< fvsPatchField, scalar > > &  tphi) const

Return the given absolute boundary flux relative within.

the MRF region

Definition at line 274 of file MRFZoneList.C.

References Foam::New(), and tmp< T >::ref().

Here is the call graph for this function:

◆ relative() [3/3]

Foam::tmp< Foam::Field< Foam::scalar > > relative ( const tmp< Field< scalar > > &  tphi,
const label  patchi 
) const

Return the given absolute patch flux relative within.

the MRF region

Definition at line 300 of file MRFZoneList.C.

References Foam::New(), and tmp< T >::ref().

Here is the call graph for this function:

◆ makeRelative() [3/3]

void makeRelative ( const surfaceScalarField rho,
surfaceScalarField phi 
) const

Make the given absolute mass-flux relative within the MRF region.

Definition at line 326 of file MRFZoneList.C.

References phi, and rho.

◆ makeAbsolute() [1/3]

void makeAbsolute ( volVectorField U) const

Make the given relative velocity absolute within the MRF region.

Definition at line 339 of file MRFZoneList.C.

References U.

◆ makeAbsolute() [2/3]

void makeAbsolute ( surfaceScalarField phi) const

Make the given relative flux absolute within the MRF region.

Definition at line 348 of file MRFZoneList.C.

References phi.

◆ absolute()

Foam::tmp< Foam::surfaceScalarField > absolute ( const tmp< surfaceScalarField > &  phi) const

Return the given relative flux absolute within the MRF region.

Definition at line 357 of file MRFZoneList.C.

References tmp< T >::clear(), Foam::name(), Foam::New(), and tmp< T >::ref().

Here is the call graph for this function:

◆ makeAbsolute() [3/3]

void makeAbsolute ( const surfaceScalarField rho,
surfaceScalarField phi 
) const

Make the given relative mass-flux absolute within the MRF region.

Definition at line 388 of file MRFZoneList.C.

References phi, and rho.

◆ correctBoundaryVelocity()

void correctBoundaryVelocity ( volVectorField U) const

Correct the boundary velocity for the rotation of the MRF region.

Definition at line 401 of file MRFZoneList.C.

References U.

◆ correctBoundaryFlux()

void correctBoundaryFlux ( const volVectorField U,
surfaceScalarField phi 
) const

Correct the boundary flux for the rotation of the MRF region.

Definition at line 410 of file MRFZoneList.C.

References GeometricField< Type, PatchField, GeoMesh >::boundaryFieldRef(), forAll, phi, U, and Uf.

Here is the call graph for this function:

◆ zeroFilter() [1/2]

tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > zeroFilter ( const tmp< GeometricField< Type, fvsPatchField, surfaceMesh > > &  tphi) const

Filter-out the MRF region contribution from the given field.

setting the corresponding values to zero

◆ update()

void update ( )

Update MRFZone faces if the mesh topology changes.

Definition at line 433 of file MRFZoneList.C.

◆ read()

bool read ( const dictionary dict)

Read dictionary.

Definition at line 127 of file MRFZoneList.C.

References dict, and dictionary::subDict().

Here is the call graph for this function:

◆ writeData()

bool writeData ( Ostream os) const

Write data to Ostream.

Definition at line 139 of file MRFZoneList.C.

References IOstream::good(), Foam::nl, os(), and MRFZoneList::writeData().

Referenced by MRFZoneList::writeData().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ zeroFilter() [2/2]

Definition at line 34 of file MRFZoneListTemplates.C.

References forAll, Foam::name(), Foam::New(), UPtrList< T >::operator[](), tmp< T >::ref(), and UPtrList< T >::size().

Here is the call graph for this function:

Friends And Related Function Documentation

◆ operator<<

Ostream & operator<< ( Ostream os,
const MRFZoneList models 
)
friend

Ostream operator.

Member Data Documentation

◆ mesh_

const fvMesh& mesh_
protected

Reference to the mesh database.

Definition at line 76 of file MRFZoneList.H.


The documentation for this class was generated from the following files: