115 #ifndef externalCoupledMixedFvPatchField_H
116 #define externalCoupledMixedFvPatchField_H
133 class externalCoupledMixedFvPatchField
135 public mixedFvPatchField<Type>
152 label calcFrequency_;
155 bool initByExternal_;
165 List<List<label>> offsets_;
171 List<label> coupledPatchIndices_;
177 void initialise(
const fileName& transferFile);
180 void setMaster(
const labelList& patchIDs);
192 void createLockFile()
const;
195 void removeLockFile()
const;
198 void startWait()
const;
204 void initialiseRead(
IFstream& is)
const;
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
commsTypes
Types of communications.
A list of keyword definitions, which are a keyword followed by any number of values (e....
This boundary condition provides an interface to an external application. Values are transferred as p...
virtual ~externalCoupledMixedFvPatchField()
Destructor.
bool master() const
Return the master flag.
virtual void evaluate(const Pstream::commsTypes commsType=Pstream::commsTypes::blocking)
Evaluate the patch field.
virtual void writeHeader(OFstream &os) const
Write header to transfer file.
virtual void write(Ostream &) const
Write.
static string patchKey
Name of patch key, e.g. '# Patch:' when looking for start of patch data.
static word lockName
Name of lock file.
bool log() const
Return the log flag.
externalCoupledMixedFvPatchField(const fvPatch &, const DimensionedField< Type, volMesh > &, const dictionary &)
Construct from patch, internal field and dictionary.
virtual void writeData(const fileName &transferFile) const
Write data for external source - calls transferData.
void writeGeometry() const
Write the geometry to the comms dir.
virtual void transferData(OFstream &os) const
Transfer data for external source.
TypeName("externalCoupled")
Runtime type information.
virtual void readData(const fileName &transferFile)
Read data from external source.
Abstract base class for field mapping.
A class for handling file names.
tmp< fvPatchField< Type > > clone() const
Disallow clone without setting internal field reference.
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
A class for managing temporary objects.
A class for handling words, derived from string.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.