55 const word& modelType,
212 Info<<
"No finite area options present for area : "
245 <<
" Film velocity magnitude: " <<
velMag <<
endl;
260 auto&
Uw = tUw.ref();
270 for (
const label patchi :
patches)
279 patchValues.
set(patchi, wpp->Uwall());
283 if (patchValues.
size())
291 Uw.primitiveFieldRef() = UsWall() - nHat*(UsWall() & nHat);
328 auto&
Up = tUp.
ref();
338 for (
const label patchi :
patches)
342 patchValues.
set(patchi, -
Uw.snGrad());
347 vsmPtr_->mapToSurface(patchValues,
Up.primitiveFieldRef());
354 Up.primitiveFieldRef() -= nHat*(
Up.primitiveField() & nHat);
369 auto& pfg = tpg.ref();
376 pfg.primitiveFieldRef()
393 auto&
alpha = talpha.ref();
405 const scalar massSource,
406 const vector& momentumSource,
407 const scalar pressureSource,
408 const scalar energySource
411 massSource_.boundaryFieldRef()[patchi][facei] += massSource;
412 pnSource_.boundaryFieldRef()[patchi][facei] += pressureSource;
static tmp< GeometricField< vector, faPatchField, areaMesh > > New(const word &name, IOobjectOption::registerOption regOpt, const Mesh &mesh, const dimensionSet &dims, const word &patchFieldType=faPatchField< vector >::calculatedType())
Internal & ref(const bool updateAccessTime=true)
Same as internalFieldRef().
Boundary & boundaryFieldRef(const bool updateAccessTime=true)
Return a reference to the boundary field.
const Internal & internalField() const noexcept
Return a const-reference to the dimensioned internal field.
const Internal::FieldType & primitiveField() const noexcept
Return a const-reference to the internal field values.
const Boundary & boundaryField() const noexcept
Return const-reference to the boundary field.
bool set(const Key &key, T *ptr)
Assign a new entry, overwrites existing.
label size() const noexcept
The number of elements in table.
@ NO_REGISTER
Do not request registration (bool: false).
@ NO_READ
Nothing to be read.
@ READ_IF_PRESENT
Reading is optional [identical to LAZY_READ].
@ MUST_READ
Reading required.
@ NO_WRITE
Ignore writing from objectRegistry::writeObject().
@ AUTO_WRITE
Automatically write from objectRegistry::writeObject().
A HashTable of pointers to objects of type <T> with a label key.
scalar deltaTValue() const noexcept
Return time step value.
Addressing for all faces on surface of mesh. Can either be read from polyMesh or from triSurface....
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
T get(const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
Find and return a T. FatalIOError if not found, or if the number of tokens is incorrect.
const dictionary & subDict(const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
Find and return a sub-dictionary.
dictionary()
Default construct, a top-level empty dictionary.
T getOrDefault(const word &keyword, const T &deflt, enum keyType::option matchOpt=keyType::REGEX) const
Find and return a T, or return the given default value. FatalIOError if it is found and the number of...
static const dictionary null
An empty dictionary, which is also the parent for all dictionaries.
const edgeScalarField & deltaCoeffs() const
Return reference to difference factors array.
const labelList & whichPolyPatches() const
The polyPatches related to the areaMesh, in sorted order.
const areaVectorField & faceAreaNormals() const
Return face area normals.
Mesh data needed to do the Finite Volume discretisation.
const Type & lookupObject(const word &name, const bool recursive=false) const
Lookup and return const reference to the object of the given Type. Fatal if not found or the wrong ty...
const word & regionName() const
The mesh region name or word::null if polyMesh::defaultRegion.
virtual bool write(const bool writeOnProc=true) const
Write using setting from DB.
areaVectorField Uf_
Film velocity.
word pName_
Name of the pressure field.
scalar addedMassTotal_
Total mass added.
areaScalarField h_
Film height.
virtual void postEvolveRegion()
Post-evolve film.
static autoPtr< liquidFilmBase > New(const fvMesh &mesh, const dictionary &dict)
Return a reference to the selected model using dictionary.
word UName_
Name of the velocity field.
areaScalarField ppf_
Primary region pressure.
virtual void addSources(const label patchi, const label facei, const scalar massSource, const vector &momentumSource, const scalar pressureSource, const scalar energySource=0)
Add sources.
areaScalarField gn_
Normal gravity field.
tmp< areaScalarField > alpha() const
Wet indicator using h0.
label nFilmCorr_
Number of film thickness correctors.
uniformDimensionedVectorField g_
Gravity.
liquidFilmBase(const word &modelType, const fvMesh &mesh, const dictionary &dict)
Construct from type name and mesh and dict.
edgeScalarField phif_
Film momentum flux.
Switch momentumPredictor_
Flag to enable momentum predictor.
Foam::fa::options & faOptions_
faOptions
tmp< areaScalarField > pg() const
Map primary static pressure.
volScalarField pnSource_
Normal pressure by particles.
dimensionedScalar h0_
Smallest film thickness.
tmp< areaVectorField > Uw() const
Wall velocity.
label nOuterCorr_
Number of outer correctors.
virtual void preEvolveRegion()
Pre-evolve film.
tmp< areaVectorField > Up() const
Primary region velocity at film hight. Assume the film to be.
volScalarField massSource_
Mass.
label nCorr_
Number of PISO-like inner correctors.
virtual ~liquidFilmBase()
Destructor.
areaScalarField pf_
Film pressure.
volVectorField momentumSource_
Momentum.
edgeScalarField phi2s_
Film height flux.
dimensionedScalar deltaWet_
Film thickness beyond which face is assumed to be wet.
virtual scalar CourantNumber() const
Courant number evaluation.
tmp< areaVectorField > Us() const
Film surface film velocity.
scalar pRef_
Reference absolute pressure.
virtual void postEvolveRegion()
Post-evolve region.
const dictionary & solution() const
Return the solution dictionary.
word regionName_
Region name.
autoPtr< volSurfaceMapping > vsmPtr_
Volume/surface mapping.
const word & areaName() const noexcept
The finite-area mesh name (extracted from dictionary).
const Time & time() const noexcept
Return the reference to the time database.
virtual void preEvolveRegion()
Pre-evolve region.
const faMesh & regionMesh() const
Return the region mesh database.
const fvMesh & primaryMesh() const noexcept
Return the reference to the primary mesh database.
regionFaModel(const fvMesh &mesh, const word ®ionType, const word &modelName, const dictionary &dict, bool readFields=true)
Construct from mesh and name and dict.
A class for managing temporary objects.
A class for handling words, derived from Foam::string.
#define defineTypeNameAndDebug(Type, DebugSwitch)
Define the typeName and debug information.
const polyBoundaryMesh & patches
Namespace for handling debugging switches.
Namespace for finite-area.
const Foam::word liquidFilmName("liquidFilm")
const dimensionSet dimPressure
label max(const labelHashSet &set, label maxValue=labelMin)
Find the max value in labelHashSet, optionally limited by second argument.
GeometricField< vector, fvPatchField, volMesh > volVectorField
const dimensionSet dimless
Dimensionless.
dimensionedScalar pos0(const dimensionedScalar &ds)
List< label > labelList
A List of labels.
const dimensionSet dimLength(0, 1, 0, 0, 0, 0, 0)
const dimensionSet dimVelocity
messageStream Info
Information stream (stdout output on master, null elsewhere).
Ostream & endl(Ostream &os)
Add newline and flush stream.
GeometricField< vector, faPatchField, areaMesh > areaVectorField
GeometricField< scalar, faePatchField, edgeMesh > edgeScalarField
dimensionedScalar sqrt(const dimensionedScalar &ds)
const Type * isA(const U &obj)
Attempt dynamic_cast to Type.
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
void reduce(T &value, BinaryOp bop, const int tag=UPstream::msgType(), const int communicator=UPstream::worldComm)
Reduce inplace (cf. MPI Allreduce).
Field< vector > vectorField
Specialisation of Field<T> for vector.
static constexpr const zero Zero
Global zero (0).
const dimensionSet dimAcceleration
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
fvPatchField< vector > fvPatchVectorField
dimensioned< vector > dimensionedVector
Dimensioned vector obtained from generic dimensioned type.
const dimensionSet dimMass(1, 0, 0, 0, 0, 0, 0)
Calculate the second temporal derivative.
#define defineRunTimeSelectionTable(baseType, argNames)
Define run-time selection table.