36 namespace regionModels
38 namespace surfaceFilmModels
55 deltaStable_(coeffDict_.getOrDefault<scalar>(
"deltaStable", 0))
71 Info<<
" applying to patches:" <<
nl;
80 Info<<
" applying to all patches" <<
endl;
90 <<
"No patches selected" 121 scalar dMassPatch = 0;
126 scalar dMass = ddelta*
rho[celli]*magSf[celli];
127 massToInject[celli] += dMass;
128 availableMass[celli] -= dMass;
142 getModelProperty<scalarField>
144 "patchInjectedMasses",
153 setModelProperty<scalarField>
155 "patchInjectedMasses",
171 getModelProperty<scalarField>
173 "patchInjectedMasses",
184 patchMasses[patchi] +=
static void listCombineGather(UList< T > &values, const CombineOp &cop, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm)
Combines List elements.
const polyBoundaryMesh & pbm
void size(const label n)
Older name for setAddressableSize.
Base class for surface film models.
errorManipArg< error, int > exit(error &err, const int errNo=1)
patchInjection(const patchInjection &)=delete
No copy construct.
void resize(const label len)
Adjust allocated size of list.
error FatalError
Error stream (stdout output on all processes), with additional 'FOAM FATAL ERROR' header text and sta...
A list of keyword definitions, which are a keyword followed by a number of values (eg...
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
scalarField patchInjectedMasses_
Injected mass for each patch at which the film is removed.
virtual void patchInjectedMassTotals(scalarField &patchMasses) const
Accumulate the total mass injected for the patches into the.
label max(const labelHashSet &set, label maxValue=labelMin)
Find the max value in labelHashSet, optionally limited by second argument.
const labelList & processorPatches() const noexcept
Return list of processor patch labels.
constexpr char nl
The newline '\n' character (0x0a)
bool empty() const noexcept
True if List is empty (ie, size() is zero)
Ostream & endl(Ostream &os)
Add newline and flush stream.
Remove and inject the mass in the film as it passes over the selected patches.
Smooth ATC in cells next to a set of patches supplied by type.
const dictionary coeffDict_
Coefficients dictionary.
virtual const volScalarField & rho() const =0
Return the film density [kg/m3].
addToRunTimeSelectionTable(surfaceFilmRegionModel, kinematicSingleLayer, mesh)
Macros for easy insertion into run-time selection tables.
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.
#define forAll(list, i)
Loop across all elements in list.
labelList patchIDs_
List of patch IDs at which the film is removed.
fileName::Type type(const fileName &name, const bool followLink=true)
Return the file type: DIRECTORY or FILE, normally following symbolic links.
labelList identity(const label len, label start=0)
Return an identity map of the given length with (map[i] == i), works like std::iota() but returning a...
const polyBoundaryMesh & boundaryMesh() const noexcept
Return boundary mesh.
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
wordList patchNames(nPatches)
virtual const volScalarField & delta() const =0
Return the film thickness [m].
scalar deltaStable_
Stable film thickness - mass only removed if thickness exceeds.
const fvMesh & regionMesh() const
Return the region mesh database.
A List of wordRe with additional matching capabilities.
const globalMeshData & globalData() const
Return parallel info (demand-driven)
A polyBoundaryMesh is a polyPatch list with additional search methods and registered IO...
void addToInjectedMass(const scalar dMass)
Add to injected mass.
bool readIfPresent(const word &keyword, T &val, enum keyType::option matchOpt=keyType::REGEX) const
Find an entry if present, and assign to T val. FatalIOError if it is found and the number of tokens i...
Base class for film injection models, handling mass transfer from the film.
virtual const volScalarField & magSf() const
Return the face area magnitudes / [m2].
messageStream Info
Information stream (stdout output on master, null elsewhere)
A patch is a list of labels that address the faces in the global face list.
defineTypeNameAndDebug(kinematicSingleLayer, 0)
uindirectPrimitivePatch pp(UIndirectList< face >(mesh.faces(), faceLabels), mesh.points())
static constexpr const zero Zero
Global zero (0)