Go to the documentation of this file.
44 interRegionExplicitPorositySource,
90 <<
"Unable to create porous cellZone " << zoneName
91 <<
": zone already exists"
112 Foam::fv::interRegionExplicitPorositySource::interRegionExplicitPorositySource
115 const word& modelType,
121 porosityPtr_(
nullptr),
123 UName_(coeffs_.lookupOrDefault<
word>(
"U",
"U")),
124 muName_(coeffs_.lookupOrDefault<
word>(
"mu",
"thermo:mu"))
128 fieldNames_.setSize(1, UName_);
129 applied_.setSize(1,
false);
163 meshInterp().mapSrcToTgt
172 porosityPtr_->addResistance(nbrEqn);
179 Udiag.setSize(eqn.diag().size(), 0.0);
217 meshInterp().mapSrcToTgt
258 meshInterp().mapSrcToTgt
260 rho.primitiveField(),
262 rhoNbr.primitiveFieldRef()
266 meshInterp().mapSrcToTgt
270 muNbr.primitiveFieldRef()
273 porosityPtr_->addResistance(nbrEqn, rhoNbr, muNbr);
280 Udiag.setSize(eqn.diag().size(), 0.0);
294 coeffs_.readIfPresent(
"U", UName_);
295 coeffs_.readIfPresent(
"mu", muName_);
Defines the attributes of an object for which implicit objectRegistry management is supported,...
word nbrRegionName_
Name of the neighbour region to map.
A class for handling words, derived from Foam::string.
const dimensionedScalar mu
Atomic mass unit.
static constexpr const zero Zero
Global zero.
const dimensionSet dimDensity
const dimensionSet & dimensions() const
static word timeName(const scalar t, const int precision=precision_)
bool firstIter_
First iteration.
const cellZoneMesh & cellZones() const
Return cell zone mesh.
const word name_
Source name.
const GeometricField< Type, fvPatchField, volMesh > & psi() const
const fvMesh & mesh_
Reference to the mesh database.
virtual bool read(const dictionary &dict)
Read dictionary.
dimensioned< vector > dimensionedVector
Dimensioned vector obtained from generic dimensioned type.
A special matrix type and solver, designed for finite volume solutions of scalar equations.
virtual void addSup(fvMatrix< vector > &eqn, const label fieldi)
Vector.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
Base class for inter-region exchange.
word name(const complex &c)
Return string representation of complex.
dictionary coeffs_
Dictionary containing source coefficients.
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
autoPtr< porosityModel > porosityPtr_
Run-time selectable porosity model.
const Type & lookupObject(const word &name, const bool recursive=false) const
const dimensionSet dimViscosity
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Macros for easy insertion into run-time selection tables.
const labelIOList & zoneID
Mesh data needed to do the Finite Volume discretisation.
errorManip< error > abort(error &err)
Internal::FieldType & primitiveFieldRef(const bool updateAccessTime=true)
Return a reference to the internal field.
defineTypeNameAndDebug(option, 0)
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
addToRunTimeSelectionTable(option, fixedTemperatureConstraint, dictionary)
A special matrix type and solver, designed for finite volume solutions of scalar equations....
const Time & time() const
Return the top-level database.
static autoPtr< porosityModel > New(const word &name, const fvMesh &mesh, const dictionary &dict, const word &cellZoneName=word::null)
Selector.
void clearAddressing()
Clear addressing.
void initialise()
Initialise.
virtual bool read(const dictionary &dict)
Read dictionary.
virtual const labelList & faceNeighbour() const
Return face neighbour.