49 namespace regionModels
69 void constructMeshObjects();
141 const label regionPatchi,
142 const label nbrPatchi,
162 const word& regionType,
171 const word& regionType,
249 const label regionPatchi
257 const label regionPatchi,
258 const label nbrPatchi,
260 const bool flip =
false 268 const word& fieldName,
269 const label regionPatchi,
270 const bool flip =
false 279 const word& fieldName,
280 const label regionPatchi,
281 const bool flip =
false 288 const label regionPatchi,
293 template<
class Type,
class CombineOp>
296 const label regionPatchi,
305 const label regionPatchi,
314 const label regionPatchi,
const fvMesh & primaryMesh_
Reference to the primary mesh database.
const word modelName_
Model name.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
wordList interRegionAMINames_
List of region names this region is coupled to.
virtual void evolveRegion()
Evolve the region.
virtual void info()
Provide some feedback.
void readFields(const typename GeoFieldType::Mesh &mesh, const IOobjectList &objects, const HashSet< word > &selectedFields, LIFOStack< regIOobject *> &storedObjects)
Read the selected GeometricFields of the specified type.
A list of keyword definitions, which are a keyword followed by any number of values (e...
bool isRegionPatch(const label primaryPatchi) const
Return true if patchi on the primary region is a coupled.
A simple wrapper around bool so that it can be read as a word: true/false, on/off, yes/no, y/n, t/f, or none/any.
Abstract base class with a fat-interface to all derived classes covering all possible ways in which t...
autoPtr< fvMesh > regionMeshPtr_
Pointer to the region mesh database.
Generic GeometricField class.
const Time & time() const
Return the reference to the time database.
Class to control time during OpenFOAM simulations that is also the top-level objectRegistry.
TypeName("regionModel")
Runtime type information.
autoPtr< IOdictionary > outputPropertiesPtr_
Dictionary of output properties.
IOdictionary is derived from dictionary and IOobject to give the dictionary automatic IO functionalit...
const word & modelName() const
Return the model name.
void toPrimary(const label regionPatchi, List< Type > ®ionField) const
Convert a local region field to the primary region.
const fvMesh & primaryMesh() const
Return the reference to the primary mesh database.
Mesh data needed to do the Finite Volume discretisation.
virtual void preEvolveRegion()
Pre-evolve region.
Pre-declare SubField and related Field type.
A class for handling words, derived from string.
virtual bool read()
Read control parameters from dictionary.
bool isCoupledPatch(const label regionPatchi) const
Return true if patchi on the local region is a coupled.
label nbrCoupledPatchID(const regionModel &nbrRegion, const label regionPatchi) const
Return the coupled patch ID paired with coupled patch.
virtual void postEvolveRegion()
Post-evolve region.
const IOdictionary & outputProperties() const
Return const access to the output properties dictionary.
const dictionary & solution() const
Return the solution dictionary.
label regionPatchID(const label primaryPatchID) const
Return region ID corresponding to primaryPatchID.
tmp< Field< Type > > mapRegionPatchInternalField(const regionModel &nbrRegion, const word &fieldName, const label regionPatchi, const bool flip=false) const
Map patch internal field from another region model to local.
const fvMesh & regionMesh() const
Return the region mesh database.
Switch infoOutput_
Active information output.
const labelList & primaryPatchIDs() const
Return the list of patch IDs on the primary region coupled.
Switch active_
Active flag.
virtual ~regionModel()
Destructor.
PtrList< PtrList< AMIInterpolation > > interRegionAMI_
List of AMI objects per coupled region.
dictionary coeffs_
Model coefficients dictionary.
A templated 1D list of pointers to objects of type <T>, where the size of the array is known and used...
const Time & time_
Reference to the time database.
regionModelFunctionObjectList functions_
Region model function objects.
Mesh data needed to do the Finite Volume discretisation.
virtual void evolve()
Main driver routing to evolve the region - calls other evolves.
tmp< Foam::Field< Type > > mapRegionPatchField(const regionModel &nbrRegion, const label regionPatchi, const label nbrPatchi, const Field< Type > &nbrField, const bool flip=false) const
Map patch field from another region model to local patch.
Interpolation class dealing with transfer of data between two primitive patches with an arbitrary mes...
void toRegion(const label regionPatchi, List< Type > &primaryFieldField) const
Convert a primary region field to the local region.
Base class for region models.
const Switch & infoOutput() const
Return the information flag.
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
labelList intCoupledPatchIDs_
List of patch IDs internally coupled with the primary region.
A class for managing temporary objects.
const labelList & intCoupledPatchIDs() const
Return the list of patch IDs internally coupled with the.
const dictionary & coeffs() const
Return the model coefficients dictionary.
word regionName_
Region name.
labelList primaryPatchIDs_
List of patch IDs on the primary region coupled to this region.
virtual const AMIInterpolation & interRegionAMI(const regionModel &nbrRegion, const label regionPatchi, const label nbrPatchi, const bool flip) const
Create or return a new inter-region AMI object.
const Switch & active() const
Return the active flag.
List of cloud function objects.