77 void constructMeshObjects();
147 const label regionPatchi,
148 const label nbrPatchi,
168 const word& regionType,
177 const word& regionType,
245 inline label
regionPatchID(
const label primaryPatchID)
const;
255 const label regionPatchi
263 const label regionPatchi,
264 const label nbrPatchi,
266 const bool flip =
false
274 const word& fieldName,
275 const label regionPatchi,
276 const bool flip =
false
285 const word& fieldName,
286 const label regionPatchi,
287 const bool flip =
false
294 const label regionPatchi,
302 const label regionPatchi,
307 template<
class Type,
class CombineOp>
310 const label regionPatchi,
316 template<
class Type,
class CombineOp>
319 const label regionPatchi,
Interpolation class dealing with transfer of data between two primitive patches with an arbitrary mes...
Generic templated field type.
IOdictionary is derived from dictionary and IOobject to give the dictionary automatic IO functionalit...
A list of pointers to objects of type <T>, with allocation/deallocation management of the pointers....
A simple wrapper around bool so that it can be read as a word: true/false, on/off,...
Class to control time during OpenFOAM simulations that is also the top-level objectRegistry.
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Mesh data needed to do the Finite Volume discretisation.
List of cloud function objects.
Base class for region models.
tmp< Field< Type > > mapRegionPatchField(const regionModel &nbrRegion, const word &fieldName, const label regionPatchi, const bool flip=false) const
Map patch field from another region model to local patch.
autoPtr< IOdictionary > outputPropertiesPtr_
Dictionary of output properties.
Switch active_
Active flag.
const Time & time_
Reference to the time database.
const word modelName_
Model name.
virtual void postEvolveRegion()
Post-evolve region.
const Time & time() const
Return the reference to the time database.
const dictionary & solution() const
Return the solution dictionary.
Switch infoOutput_
Active information output.
bool isCoupledPatch(const label regionPatchi) const
Return true if patchi on the local region is a coupled.
void toRegion(const label regionPatchi, List< Type > &primaryFieldField) const
Convert a primary region field to the local region.
label nbrCoupledPatchID(const regionModel &nbrRegion, const label regionPatchi) const
Return the coupled patch ID paired with coupled patch.
word regionName_
Region name.
TypeName("regionModel")
Runtime type information.
labelList primaryPatchIDs_
List of patch IDs on the primary region coupled to this region.
virtual const AMIPatchToPatchInterpolation & interRegionAMI(const regionModel &nbrRegion, const label regionPatchi, const label nbrPatchi, const bool flip) const
Create or return a new inter-region AMI object.
const dictionary & coeffs() const
Return the model coefficients dictionary.
const fvMesh & primaryMesh() const
Return the reference to the primary mesh database.
virtual ~regionModel()=default
Destructor.
dictionary coeffs_
Model coefficients dictionary.
const fvMesh & regionMesh() const
Return the region mesh database.
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.
PtrList< PtrList< AMIPatchToPatchInterpolation > > interRegionAMI_
List of AMI objects per coupled region.
virtual void preEvolveRegion()
Pre-evolve region.
virtual void evolve()
Main driver routing to evolve the region - calls other evolves.
const fvMesh & primaryMesh_
Reference to the primary mesh database.
label regionPatchID(const label primaryPatchID) const
Return region ID corresponding to primaryPatchID.
Switch infoOutput() const
Return the information flag.
bool isRegionPatch(const label primaryPatchi) const
Return true if patchi on the primary region is a coupled.
const word & modelName() const
Return the model name.
regionModelFunctionObjectList functions_
Region model function objects.
virtual void info()
Provide some feedback.
wordList interRegionAMINames_
List of region names this region is coupled to.
const IOdictionary & outputProperties() const
Return const access to the output properties dictionary.
const labelList & primaryPatchIDs() const
Return the list of patch IDs on the primary region coupled.
void toPrimary(const label regionPatchi, List< Type > ®ionField) const
Convert a local region field to the primary region.
labelList intCoupledPatchIDs_
List of patch IDs internally coupled with the primary region.
const labelList & intCoupledPatchIDs() const
Return the list of patch IDs internally coupled with the.
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.
Switch active() const
Return the active flag.
virtual bool read()
Read control parameters from dictionary.
virtual void evolveRegion()
Evolve the region.
A class for managing temporary objects.
A class for handling words, derived from Foam::string.
void readFields(const typename GeoFieldType::Mesh &mesh, const IOobjectList &objects, const wordHashSet &selectedFields, LIFOStack< regIOobject * > &storedObjects)
Read the selected GeometricFields of the templated type.
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.