39 namespace regionModels
41 namespace areaSurfaceFilmModels
88 const word& modelType,
95 thermo_(
dict.subDict(
"thermo")),
228 "cloudDiameterTrans",
240 availableMass_(regionMesh().faces().size(),
Zero),
242 injection_(*this,
dict),
351 Info<<
"\nSurface film: " <<
type() <<
" on patch: ";
355 Info<<
' ' << patchi;
363 <<
indent <<
"min/max(delta) = " 365 <<
indent <<
"coverage = " 367 <<
indent <<
"total mass = " scalar Cp(const scalar p, const scalar T, const scalarField &X) const
Calculate the mixture heat capacity [J/(kg K)].
void mapToSurface(const GeometricBoundaryField< Type, fvPatchField, volMesh > &, Field< Type > &result) const
Map volume boundary fields as area field.
const areaScalarField & rho() const
Access const reference rho.
Ostream & indent(Ostream &os)
Indent stream.
areaScalarField Tf_
Film temperature.
scalar deltaTValue() const noexcept
Return time step value.
volScalarField cloudDiameterTrans_
Parcel diameters originating from film to cloud.
virtual void correct(scalarField &availableMass, volScalarField &massToInject, volScalarField &diameterToInject)
Correct.
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
const areaScalarField & h() const
Access const reference h.
A list of keyword definitions, which are a keyword followed by a number of values (eg...
areaScalarField gn_
Normal gravity field.
areaScalarField mu_
Dynamic viscosity [Pa.s].
const volSurfaceMapping & vsm() const
Return mapping between surface and volume fields.
liquidMixtureProperties thermo_
Liquid thermo.
dimensionedSymmTensor sqr(const dimensionedVector &dv)
constexpr char nl
The newline '\n' character (0x0a)
dimensionedScalar h0_
Smallest numerical thickness.
areaVectorField USp_
Momentum source.
areaScalarField h_
Film hight.
label size() const
Return the number of liquids in the mixture.
const dimensionSet dimViscosity
Ostream & endl(Ostream &os)
Add newline and flush stream.
areaVectorField Uf_
Film velocity.
const DimensionedField< scalar, areaMesh > & S() const
Return face areas.
tmp< DimensionedField< TypeR, GeoMesh > > New(const tmp< DimensionedField< TypeR, GeoMesh >> &tf1, const word &name, const dimensionSet &dimensions, const bool initCopy=false)
Global function forwards to reuseTmpDimensionedField::New.
const Time & time() const
Return the top-level database.
virtual void info()
Provide some feedback.
virtual const volScalarField & cloudDiameterTrans() const
Return the parcel diameters originating from film to cloud.
virtual void info(Ostream &os)
Provide some info.
defineTypeNameAndDebug(kinematicThinFilm, 0)
areaScalarField rho_
Density [kg/m3].
const areaScalarField & mu() const
Access const reference mu.
Macros for easy insertion into run-time selection tables.
volScalarField pnSource_
Normal pressure by particles.
scalar mu(const scalar p, const scalar T, const scalarField &X) const
Calculate the mixture viscosity [Pa s].
volScalarField massSource_
Mass.
#define forAll(list, i)
Loop across all elements in list.
volVectorField momentumSource_
Momentum.
const areaScalarField & Tf() const
Access const reference Tf.
scalar rho(const scalar p, const scalar T, const scalarField &X) const
Calculate the mixture density [kg/m^3].
fileName::Type type(const fileName &name, const bool followLink=true)
Return the file type: DIRECTORY or FILE, normally following symbolic links.
areaScalarField sigma_
Surface tension [m/s2].
Type gSum(const FieldField< Field, Type > &f)
word name(const expressions::valueTypeCode typeCode)
A word representation of a valueTypeCode. Empty for INVALID.
A class for handling words, derived from Foam::string.
const dimensionSet dimTemperature(0, 0, 0, 1, 0, 0, 0)
scalar sigma(const scalar p, const scalar T, const scalarField &X) const
Estimate mixture surface tension [N/m].
tmp< GeometricField< Type, faPatchField, areaMesh > > laplacian(const GeometricField< Type, faPatchField, areaMesh > &vf, const word &name)
virtual void postEvolveRegion()
Post-evolve film.
const fvMesh & primaryMesh() const noexcept
Return the reference to the primary mesh database.
injectionModelList injection_
Cloud injection.
const areaScalarField & sigma() const
Access const reference sigma.
const faMesh & regionMesh() const
Return the region mesh database.
volScalarField cloudMassTrans_
Film mass for transfer to cloud.
MinMax< Type > gMinMax(const FieldField< Field, Type > &f)
const liquidMixtureProperties & thermo() const
Access to thermo.
const dimensionSet dimPressure
areaScalarField Cp_
Film Heat capacity.
virtual void preEvolveRegion()
Pre-evolve film.
scalar Tref_
Reference tempararure.
bool readIfPresent(const word &keyword, T &val, enum keyType::option matchOpt=keyType::REGEX) const
Find an entry if present, and assign to T val. FatalIOError if it is found and the number of tokens i...
virtual const volScalarField & cloudMassTrans() const
Return the film mass available for transfer to cloud.
const areaScalarField & Cp() const
Access const reference Cp.
liquidFilmModel(const word &modelType, const fvMesh &mesh, const dictionary &dict)
Construct from components and dict.
scalar Tref() const
Access to reference temperature.
scalarMinMax gMinMaxMag(const FieldField< Field, Type > &f)
areaScalarField pf_
Film pressure.
const dimensionSet dimEnergy
typeOfMag< Type >::type gSumMag(const FieldField< Field, Type > &f)
const dimensionSet dimDensity
const labelList & primaryPatchIDs() const
List of patch IDs on the primary region coupled to this region.
const Field< Type > & field() const noexcept
Return const-reference to the field values.
virtual void preEvolveRegion()
Pre-evolve film.
virtual void postEvolveRegion()
Post-evolve film.
Internal::FieldType & primitiveFieldRef(const bool updateAccessTime=true)
Return a reference to the internal field values.
areaScalarField pnSp_
Normal pressure by particles.
void relax(const scalar alpha)
Relax field (for steady-state solution).
scalar pRef_
Reference absolute pressure.
const dimensionSet dimLength(0, 1, 0, 0, 0, 0, 0)
scalarField availableMass_
Available mass for transfer via sub-models.
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
Mesh data needed to do the Finite Volume discretisation.
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
const dimensionSet dimTime(0, 0, 1, 0, 0, 0, 0)
void correctThermoFields()
Correct thermo.
Boundary & boundaryFieldRef(const bool updateAccessTime=true)
Return a reference to the boundary field.
messageStream Info
Information stream (stdout output on master, null elsewhere)
const dimensionSet dimMass(1, 0, 0, 0, 0, 0, 0)
tmp< areaScalarField > alpha() const
Wet indicator using h0.
Defines the attributes of an object for which implicit objectRegistry management is supported...
Base class for film turbulence models.
areaScalarField rhoSp_
Mass source.
static constexpr const zero Zero
Global zero (0)
const dimensionSet dimVelocity