Go to the documentation of this file.
38 #ifndef kinematicSingleLayer_H
39 #define kinematicSingleLayer_H
47 #include "injectionModelList.H"
49 #include "forceList.H"
50 #include "filmTurbulenceModel.H"
56 namespace regionModels
58 namespace surfaceFilmModels
62 class filmThermoModel;
274 const typename Type::cmptType& value
310 const word& modelType,
313 const word& regionType,
336 inline label
nCorr()
const;
418 const scalar massSource,
419 const vector& momentumSource,
420 const scalar pressureSource,
421 const scalar energySource = 0
virtual const volScalarField & T() const
Return the film mean temperature [K].
virtual bool read()
Read control parameters from dictionary.
virtual void correctThermoFields()
Correct the thermo fields.
volScalarField rhoSpPrimary_
Mass [kg/m2/s].
scalar deltaCoLimit_
Film thickness above which Courant number calculation in valid.
virtual ~kinematicSingleLayer()
Destructor.
volVectorField & USp()
Momentum [kg/m/s2].
A simple wrapper around bool so that it can be read as a word: true/false, on/off,...
virtual void transferPrimaryRegionThermoFields()
Transfer thermo fields from the primary region to the film region.
volVectorField Us_
Velocity - surface [m/s].
A class for handling words, derived from Foam::string.
volVectorField USpPrimary_
Momentum [kg/m/s2].
volVectorField USp_
Momentum [kg/m/s2].
const filmTurbulenceModel & turbulence() const
Turbulence.
virtual const volVectorField & Us() const
Return the film surface velocity [m/s].
injectionModelList injection_
Cloud injection.
virtual void preEvolveRegion()
Pre-evolve film hook.
volScalarField primaryMassTrans_
Film mass available for transfer to the primary region.
A class for managing temporary objects.
virtual const volScalarField & Ts() const
Return the film surface temperature [K].
autoPtr< filmTurbulenceModel > turbulence_
Turbulence model.
autoPtr< filmThermoModel > filmThermo_
Film thermo model.
virtual const volVectorField & U() const
Return the film velocity [m/s].
const dimensionedScalar deltaSmall_
Small delta.
virtual void evolveRegion()
Evolve the film equations.
virtual void solveContinuity()
Solve continuity equation.
Base class for film turbulence models.
label nCorr() const
Return the number of PISO correctors.
Kinematic form of single-cell layer surface film model.
volScalarField rho_
Density [kg/m3].
const volScalarField & mu() const
Return const access to the dynamic viscosity [Pa.s].
volScalarField sigma_
Surface tension [m/s2].
volScalarField & rhoSp()
Mass [kg/m2/s].
virtual void continuityCheck()
Continuity check.
transferModelList & transfer()
Transfer.
const volVectorField & UPrimary() const
Velocity [m/s].
scalarField availableMass_
Available mass for transfer via sub-models.
volScalarField pPrimary_
Pressure [Pa].
virtual tmp< volScalarField::Internal > Srho() const
Return total mass source - Eulerian phase only.
const dimensionedScalar & deltaSmall() const
Return small delta.
volScalarField muPrimary_
Viscosity [Pa.s].
const dimensionedVector & g() const
Return the acceleration due to gravity.
A special matrix type and solver, designed for finite volume solutions of scalar equations.
tmp< volScalarField > gNormClipped() const
Return the gravity normal-to-patch component contribution.
const volScalarField & rhoPrimary() const
Density [kg/m3].
injectionModelList & injection()
Injection.
volScalarField cloudDiameterTrans_
Parcel diameters originating from film to cloud.
volScalarField deltaRho_
Film thickness*density (helper field) [kg/m2].
virtual const volScalarField & cloudMassTrans() const
Return the film mass available for transfer to cloud.
scalar addedMassTotal_
Cumulative mass added via sources [kg].
virtual void transferPrimaryRegionSourceFields()
Transfer source fields from the primary region to the film region.
tmp< volScalarField > gNorm() const
Return the gravity normal-to-patch component contribution.
volScalarField delta_
Film thickness [m].
Base class for surface film models.
tmp< volScalarField > deltaMass() const
Return the change in film mass due to sources/sinks.
volVectorField & USpPrimary()
Momentum [kg/m/s2].
const filmThermoModel & filmThermo() const
Film thermo.
virtual const volScalarField & kappa() const
Return the film thermal conductivity [W/m/K].
virtual tmp< volScalarField > pp()
Implicit pressure source coefficient.
virtual const volScalarField & cloudDiameterTrans() const
Return the parcel diameters originating from film to cloud.
tmp< volVectorField > gTan() const
Return the gravity tangential component contributions.
virtual void info()
Provide some feedback.
volVectorField Uw_
Velocity - wall [m/s].
virtual tmp< volScalarField > primaryMassTrans() const
Return mass transfer source - Eulerian phase only.
virtual void resetPrimaryRegionSourceTerms()
Reset source term fields.
const volScalarField & pPrimary() const
Pressure [Pa].
virtual tmp< fvVectorMatrix > solveMomentum(const volScalarField &pu, const volScalarField &pp)
Solve for film velocity.
virtual const surfaceScalarField & phi() const
Return the film flux [kg.m/s].
forceList forces_
List of film forces.
const volScalarField & muPrimary() const
Viscosity [Pa.s].
virtual void correctAlpha()
Correct film coverage field.
Switch momentumPredictor_
Momentum predictor.
virtual const volScalarField & hs() const
Return the film surface enthalpy [J/kg].
volVectorField U_
Velocity - mean [m/s].
label nNonOrthCorr() const
Return the number of non-orthogonal correctors.
Mesh data needed to do the Finite Volume discretisation.
label nCorr_
Number of PISO-like correctors.
tmp< volScalarField > mass() const
Return the current film mass.
virtual tmp< volScalarField > pu()
Explicit pressure source contribution.
volVectorField UPrimary_
Velocity [m/s].
void readFields(const typename GeoFieldType::Mesh &mesh, const IOobjectList &objects, const wordHashSet &selectedFields, LIFOStack< regIOobject * > &storedObjects)
Read the selected GeometricFields of the templated type.
volScalarField pSp_
Pressure [Pa].
scalar cumulativeContErr_
Cumulative continuity error.
surfaceScalarField phi_
Mass flux (includes film thickness) [kg.m/s].
Switch momentumPredictor() const
Return the momentum predictor.
const volScalarField & sigma() const
Return const access to the surface tension [kg/s2].
void constrainFilmField(Type &field, const typename Type::cmptType &value)
Constrain a film region master/slave boundaries of a field to a.
List container for film injection models.
volScalarField & rhoSpPrimary()
Mass [kg/m2/s].
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
virtual void addSources(const label patchi, const label facei, const scalar massSource, const vector &momentumSource, const scalar pressureSource, const scalar energySource=0)
External hook to add sources to the film.
Base class for film thermo models.
volScalarField & pSp()
Pressure [Pa].
volScalarField alpha_
Film coverage indicator, 1 = covered, 0 = uncovered [].
volScalarField pSpPrimary_
Pressure [Pa].
volScalarField mu_
Dynamic viscosity [Pa.s].
label nNonOrthCorr_
Number of non-orthogonal correctors.
virtual const volVectorField & Uw() const
Return the film wall velocity [m/s].
volScalarField rhoPrimary_
Density [kg/m3].
const volScalarField & delta() const
Return const access to the film thickness [m].
virtual void updateSurfaceVelocities()
Update film surface velocities.
const volScalarField & alpha() const
Return the film coverage, 1 = covered, 0 = uncovered [].
A special matrix type and solver, designed for finite volume solutions of scalar equations....
virtual const volScalarField & Cp() const
Return the film specific heat capacity [J/kg/K].
transferModelList transfer_
Transfer with the continuous phase.
virtual tmp< volScalarField::Internal > Sh() const
Return enthalpy source - Eulerian phase only.
virtual const volScalarField & Tw() const
Return the film wall temperature [K].
virtual void postEvolveRegion()
Post-evolve film hook.
virtual const volScalarField & rho() const
Return the film density [kg/m3].
virtual const volScalarField & deltaRho() const
Return the film thickness*density (helper field) [kg/m3].
virtual void updateSubmodels()
Update the film sub-models.
TypeName("kinematicSingleLayer")
Runtime type information.
List container for film sources.
volScalarField rhoSp_
Mass [kg/m2/s].
virtual void solveThickness(const volScalarField &pu, const volScalarField &pp, fvVectorMatrix &UEqn)
Solve coupled velocity-thickness equations.
volScalarField cloudMassTrans_
Film mass available for transfer to cloud.
volScalarField & pSpPrimary()
Pressure [Pa].
label nOuterCorr_
Number of outer correctors.
virtual scalar CourantNumber() const
Courant number evaluation.
label nOuterCorr() const
Return the number of outer correctors.