36 #ifndef porosityModel_H
37 #define porosityModel_H
132 const word& modelName,
136 const word& cellZoneName
138 (modelName,
name, mesh,
dict, cellZoneName)
145 const word& modelType,
Generic GeometricField class.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
Base class for other coordinate system specifications.
A list of keyword definitions, which are a keyword followed by any number of values (e....
A special matrix type and solver, designed for finite volume solutions of scalar equations....
Mesh data needed to do the Finite Volume discretisation.
Return pointer to new porosityModel object created on the freestore.
autoPtr< porosityModel > operator()(Istream &is) const
iNew(const fvMesh &mesh, const word &name)
Top level model for porosity models.
virtual void addResistance(fvVectorMatrix &UEqn)
Add resistance.
virtual void calcTransformModelData()=0
Transform the model data wrt mesh changes.
virtual void calcForce(const volVectorField &U, const volScalarField &rho, const volScalarField &mu, vectorField &force) const =0
Calculate the porosity force.
const fvMesh & mesh_
Reference to the mesh database.
const word & zoneName() const
Return const access to the cell zone name.
virtual ~porosityModel()
Destructor.
word zoneName_
Name of cellZone.
virtual bool writeData(Ostream &os) const
Write.
declareRunTimeSelectionTable(autoPtr, porosityModel, mesh,(const word &modelName, const word &name, const fvMesh &mesh, const dictionary &dict, const word &cellZoneName),(modelName, name, mesh, dict, cellZoneName))
Selection table.
TypeName("porosityModel")
Runtime type information.
coordinateSystem coordSys_
Local co-ordinate system.
dictionary coeffs_
Model coefficients dictionary.
virtual void transformModelData()
Transform the model data wrt mesh changes.
static autoPtr< porosityModel > New(const word &name, const fvMesh &mesh, const dictionary &dict, const word &cellZoneName=word::null)
Selector.
const dictionary dict_
Dictionary used for model construction.
virtual void correct(fvVectorMatrix &UEqn) const =0
const dictionary & dict() const
Return dictionary used for model construction.
void adjustNegativeResistance(dimensionedVector &resist)
Adjust negative resistance values to be multiplier of max value.
const word & name() const
Return const access to the porosity model name.
virtual tmp< vectorField > force(const volVectorField &U, const volScalarField &rho, const volScalarField &mu) const
Return the force over the cell zone(s)
virtual bool read()
Inherit read from regIOobject.
label fieldIndex(const label index) const
Return label index.
regIOobject is an abstract class derived from IOobject to handle automatic object registration with t...
virtual bool read()
Read object.
A class for managing temporary objects.
A class for handling words, derived from string.
static const word null
An empty word.
Forward declarations of fvMatrix specialisations.
const dimensionedScalar mu
Atomic mass unit.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
Macros to ease declaration of run-time selection tables.