75 #ifndef Foam_fa_option_H 76 #define Foam_fa_option_H 101 void constructMeshObjects();
172 const word& modelType,
186 const word& modelType,
235 static autoPtr<option>
New 238 const dictionary&
dict,
442 #include "faOptionI.H" Finite area mesh (used for 2-D non-Euclidian finite area method) defined using a patch of faces on a ...
const fvMesh & mesh() const noexcept
Return const access to the mesh database.
wordList fieldNames_
Field names to apply source to - populated by derived models.
A list of keyword definitions, which are a keyword followed by a number of values (eg...
const volSurfaceMapping & vsm() const
Return volSurfaceMapping (demand-driven)
const fvMesh & mesh_
Reference to the mesh database.
virtual void constrain(faMatrix< scalar > &eqn, const label fieldi)
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
const word & regionName() const noexcept
The region name.
void setApplied(const label fieldi)
Set the applied flag to true for field index fieldi.
Base abstract class for handling finite area options (i.e. faOption).
Volume to surface and surface to volume mapping.
dictionary dict_
Top level source dictionary.
bool active() const noexcept
True if source is active.
autoPtr< option > operator()(Istream &is) const
const word modelType_
Model type.
autoPtr< option > clone() const
Return clone.
const word name_
Source name.
A class for handling words, derived from Foam::string.
virtual void addSup(const areaScalarField &h, faMatrix< scalar > &eqn, const label fieldi)
virtual void checkApplied() const
Check that the source has been applied.
virtual void writeFooter(Ostream &) const
Write the source footer information.
const dictionary & coeffs() const noexcept
Return dictionary.
virtual bool read(const dictionary &dict)
Read source dictionary.
virtual ~option()=default
Destructor.
const word & name() const noexcept
Return const access to the source name.
An Ostream is an abstract base class for all output systems (streams, files, token lists...
virtual void correct(areaScalarField &field)
declareRunTimeSelectionTable(autoPtr, option, dictionary,(const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh),(name, modelType, dict, mesh))
bool log
Switch write log to Info.
A Vector of values with scalar precision, where scalar is float/double depending on the compilation f...
Forward declarations of standard faMatrix types/specializations.
static autoPtr< option > New(const word &name, const dictionary &dict, const fvMesh &mesh)
Return a reference to the selected faOption model.
const dimensionedScalar h
Planck constant.
List< word > wordList
List of word.
word regionName_
Region name (finite-area)
void resetApplied()
Resize/reset applied flag list for all fieldNames_ entries.
virtual void writeHeader(Ostream &) const
Write the source header information.
virtual void writeData(Ostream &) const
Write the source properties.
Mesh data needed to do the Finite Volume discretisation.
A special matrix type and solver, designed for finite area solutions of scalar equations. Face addressing is used to make all matrix assembly and solution loops vectorise.
option(const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh)
Construct from components.
virtual label applyToField(const word &fieldName) const
Return index of field name if found in fieldNames list.
virtual bool isActive()
Is the source active?
Pointer management similar to std::unique_ptr, with some additional methods and type checking...
iNew(const fvMesh &mesh, const word &name)
List< bool > applied_
Applied flag list - corresponds to each fieldNames_ entry.
Macros to ease declaration of run-time selection tables.
Tensor of scalars, i.e. Tensor<scalar>.
#define NotImplemented
Issue a FatalErrorIn for a function not currently implemented.
TypeName("option")
Runtime type information.
dictionary coeffs_
Dictionary containing source coefficients.
const faMesh & regionMesh() const
Return the region mesh database (demand-driven)
Forwards and collection of common area field types.