Go to the documentation of this file.
44 { volumeModeType::vmAbsolute,
"absolute" },
45 { volumeModeType::vmSpecific,
"specific" },
56 fieldNames_.resize(
count);
60 applied_.resize(
count,
false);
65 fieldNames_[
count] = dEntry.keyword();
70 dEntry.readEntry(injectionRate);
102 if (volumeMode_ == vmAbsolute)
115 const word& modelType,
121 volumeMode_(vmAbsolute),
140 <<
">::addSup for source " << name_ <<
endl;
149 name_ + fieldNames_[fieldi] +
"Su",
150 mesh_.time().timeName(),
160 const scalar tmVal = mesh_.time().timeOutputValue();
168 name_ + fieldNames_[fieldi] +
"Sp",
169 mesh_.time().timeName(),
196 <<
">::addSup for source " << name_ <<
endl;
199 return this->addSup(eqn, fieldi);
208 volumeMode_ = volumeModeTypeNames_.get(
"volumeMode", coeffs_);
209 setFieldData(coeffs_.subDict(
"injectionRateSuSp"));
int debug
Static debugging option.
A keyword and a list of tokens is an 'entry'.
Defines the attributes of an object for which implicit objectRegistry management is supported,...
Enum is a wrapper around a list of names/values that represent particular enumeration (or int) values...
A class for handling words, derived from Foam::string.
Cell-set options abstract base class. Provides a base set of controls, e.g.:
static constexpr const zero Zero
Global zero (0)
const dimensionSet & dimensions() const
virtual bool read(const dictionary &dict)
Read source dictionary.
Ostream & endl(Ostream &os)
Add newline and flush stream.
entry * set(entry *entryPtr)
Assign a new entry, overwriting any existing entry.
const GeometricField< Type, fvPatchField, volMesh > & psi() const
Top level data entry class for use in dictionaries. Provides a mechanism to specify a variable as a c...
tmp< faMatrix< Type > > SuSp(const areaScalarField &sp, const GeometricField< Type, faPatchField, areaMesh > &vf)
A special matrix type and solver, designed for finite volume solutions of scalar equations.
Templated function that returns a constant value.
messageStream Info
Information stream (uses stdout - output is on the master only)
word name(const complex &c)
Return string representation of complex.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Generic dimensioned Type class.
Mesh data needed to do the Finite Volume discretisation.
Calculate the matrix for implicit and explicit sources.
static const Enum< volumeModeType > volumeModeTypeNames_
Word list of volume mode type names.
void setFieldData(const dictionary &dict)
Set the local field data.
unsigned int count(const UList< bool > &bools, const bool val=true)
Count number of 'true' entries.
Traits class for primitives.
virtual void addSup(fvMatrix< Type > &eqn, const label fieldi)
Add explicit contribution to equation.
A special matrix type and solver, designed for finite volume solutions of scalar equations....
const T2 & second() const noexcept
Return second.
A List with indirect addressing.
SemiImplicitSource(const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh)
Construct from components.
A 2-tuple for storing two objects of dissimilar types. The container is similar in purpose to std::pa...
const dimensionSet dimVolume(pow3(dimLength))
const volScalarField & psi
const T1 & first() const noexcept
Return first.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
volumeModeType
Enumeration for volume types.