42 interRegionExplicitPorositySource,
51 void Foam::fv::interRegionExplicitPorositySource::readCoeffs()
53 UName_ = coeffs().lookupOrDefault<word>(
"U",
"U");
62 const word& modelType,
84 meshInterp().mapTgtToSrc
91 const word zoneName(name +
":porous");
110 if (filter_[celli] > small)
112 porousCells[i++] = celli;
115 porousCells.setSize(i);
134 <<
"Unable to create porous cellZone " << zoneName
135 <<
": zone already exists" 162 const word& fieldName
166 porosityPtr_->addResistance(porosityEqn);
167 eqn -= filter_*porosityEqn;
virtual wordList addSupFields() const
Return the list of fields for which the fvModel adds source term.
label findZoneID(const word &zoneName) const
Find zone index given a name.
defineTypeNameAndDebug(fixedTemperatureConstraint, 0)
#define forAll(list, i)
Loop across all elements in list.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
static tmp< DimensionedField< Type, GeoMesh > > New(const word &name, const Mesh &mesh, const dimensionSet &)
Return a temporary field constructed from name, mesh.
bool set(const label) const
Is element set.
virtual bool read(const dictionary &dict)
Read dictionary.
const meshCellZones & cellZones() const
Return cell zones.
A list of keyword definitions, which are a keyword followed by any number of values (e...
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
const GeometricField< Type, fvPatchField, volMesh > & psi() const
const dimensionSet dimless
const Time & time() const
Return the top-level database.
const Type & lookupObject(const word &name) const
Lookup and return the object of the given Type.
Macros for easy insertion into run-time selection tables.
Base class for inter-region exchange.
A class for handling words, derived from string.
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
static const word null
An empty word.
interRegionExplicitPorositySource(const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh)
Construct from components.
A special matrix type and solver, designed for finite volume solutions of scalar equations. Face addressing is used to make all matrix assembly and solution loops vectorise.
virtual bool read(const dictionary &dict)
Read dictionary.
errorManip< error > abort(error &err)
void setSize(const label)
Reset size of PtrList. If extending the PtrList, new entries are.
addToRunTimeSelectionTable(fvConstraint, fixedTemperatureConstraint, dictionary)
label size() const
Return the number of elements in the UPtrList.
List< word > wordList
A List of words.
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
Mesh data needed to do the Finite Volume discretisation.
A special matrix type and solver, designed for finite volume solutions of scalar equations.
static autoPtr< porosityModel > New(const word &name, const fvMesh &mesh, const dictionary &dict, const word &cellZoneName=word::null)
Selector.
void clearAddressing()
Clear addressing.
virtual void addSup(const volScalarField &rho, fvMatrix< vector > &eqn, const word &fieldName) const
const dimensionSet & dimensions() const