49transferModelList::transferModelList
64 massTransferred_(film.intCoupledPatchIDs().size(),
Zero)
73 Info<<
" Selecting film transfer models" <<
endl;
74 if (models.size() > 0)
79 for (
const word& model : models)
109 operator[](i).correct(availableMass, massToTransfer);
120 massTransferred_[i] =
136 operator[](i).correct(availableMass, massToTransfer, energyToTransfer);
148 massTransferred_[i] =
158 scalar transferredMass = 0;
161 pbm.size() -
film().regionMesh().globalData().processorPatches().
size(),
168 transferredMass += im.transferredMassTotal();
169 im.patchTransferredMassTotals(patchTransferredMasses);
172 os <<
indent <<
"transferred mass = " << transferredMass <<
nl;
174 forAll(patchTransferredMasses, patchi)
176 if (
mag(patchTransferredMasses[patchi]) > VSMALL)
179 <<
" = " << patchTransferredMasses[patchi] <<
nl;
202 massTransferred_ = 0.0;
const polyBoundaryMesh & pbm
void correctBoundaryConditions()
Correct boundary field.
const Boundary & boundaryField() const noexcept
Return const-reference to the boundary field.
label size() const noexcept
The number of elements in table.
virtual const fileName & name() const
The name of the stream.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
static void listCombineGather(UList< T > &values, CombineOp cop, const int tag=UPstream::msgType(), const int communicator=UPstream::worldComm)
Forwards to Pstream::listGather with an in-place cop.
A list of pointers to objects of type <T>, with allocation/deallocation management of the pointers....
const transferModel * set(const label i) const
void setSize(const label n)
constexpr PtrList() noexcept
const transferModel & operator[](const label i) const
label size() const noexcept
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
A polyBoundaryMesh is a polyPatch list with registered IO, a reference to the associated polyMesh,...
const polyBoundaryMesh & boundaryMesh() const noexcept
Return boundary mesh.
const fvMesh & regionMesh() const
Return the region mesh database.
const labelList & intCoupledPatchIDs() const noexcept
List of patch IDs internally coupled with the primary region.
Base class for surface film sub-models.
const surfaceFilmRegionModel & film() const
Return const access to the film surface film model.
virtual bool writeTime() const
Flag to indicate when to write a property.
filmSubModelBase(surfaceFilmRegionModel &film)
Construct null.
Base class for surface film models.
virtual void correct(scalarField &availableMass, volScalarField &massToTransfer)
Correct kinematic transfers.
virtual ~transferModelList()
Destructor.
virtual void info(Ostream &os)
Provide some info.
Base class for film transfer models, handling mass transfer between the film and the continuous phase...
virtual void patchTransferredMassTotals(scalarField &patchMasses) const
Accumulate the total mass transferred for the patches into the.
virtual scalar transferredMassTotal() const
Return the total mass transferred.
static autoPtr< transferModel > New(surfaceFilmRegionModel &film, const dictionary &dict, const word &modelType)
Return a reference to the selected injection model.
Type getBaseProperty(const word &entryName, const Type &defaultValue=Type(Zero)) const
Retrieve generic property from the base model.
const dictionary & dict() const
Return const access to the cloud dictionary.
void setBaseProperty(const word &entryName, const Type &value)
Add generic property to the base model.
A class for handling words, derived from Foam::string.
OBJstream os(runTime.globalPath()/outputName)
List< word > wordList
List of word.
HashSet< word, Hash< word > > wordHashSet
A HashSet of words, uses string hasher.
List< label > labelList
A List of labels.
GeometricField< scalar, fvPatchField, volMesh > volScalarField
messageStream Info
Information stream (stdout output on master, null elsewhere).
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
Ostream & endl(Ostream &os)
Add newline and flush stream.
Ostream & indent(Ostream &os)
Indent stream.
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
dimensioned< Type > sum(const DimensionedField< Type, GeoMesh > &f1, const label comm)
static constexpr const zero Zero
Global zero (0).
constexpr char nl
The newline '\n' character (0x0a).
#define forAll(list, i)
Loop across all elements in list.