SurfaceFilmModel< CloudType > Class Template Referenceabstract

Templated wall surface film model class. More...

Inheritance diagram for SurfaceFilmModel< CloudType >:
Collaboration diagram for SurfaceFilmModel< CloudType >:

Public Member Functions

 TypeName ("surfaceFilmModel")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, SurfaceFilmModel, dictionary,(const dictionary &dict, CloudType &owner),(dict, owner))
 Declare runtime constructor selection table. More...
 
 SurfaceFilmModel (CloudType &owner)
 Construct null from owner. More...
 
 SurfaceFilmModel (const dictionary &dict, CloudType &owner, const word &type)
 Construct from components. More...
 
 SurfaceFilmModel (const SurfaceFilmModel< CloudType > &sfm)
 Construct copy. More...
 
virtual autoPtr< SurfaceFilmModel< CloudType > > clone () const =0
 Construct and return a clone. More...
 
virtual ~SurfaceFilmModel ()=default
 Destructor. More...
 
const dimensionedVectorg () const noexcept
 Return gravitational acceleration constant. More...
 
label nParcelsTransferred () const noexcept
 The number of parcels transferred to the film model. More...
 
label & nParcelsTransferred () noexcept
 Non-const access to number of parcels transferred to the film model. More...
 
label nParcelsInjected () const noexcept
 The number of parcels injected from the film model. More...
 
label & nParcelsInjected () noexcept
 Non-const access to number of parcels injected from the film model. More...
 
scalar totalMassTransferred () const noexcept
 The total mass transferred. More...
 
scalar & totalMassTransferred () noexcept
 Non-const access to the total mass transferred. More...
 
virtual bool transferParcel (parcelType &p, const polyPatch &pp, bool &keepParticle)=0
 Transfer parcel from cloud to surface film. More...
 
template<class TrackCloudType >
void inject (TrackCloudType &cloud)
 Inject parcels into the cloud. More...
 
virtual void info ()
 Write surface film info. More...
 
template<class CloudTrackType >
void injectParticles (const label primaryPatchi, const labelUList &injectorCells, CloudTrackType &cloud)
 
template<class CloudTrackType >
void injectParticles (const UList< labelPair > &patchFaces, CloudTrackType &cloud)
 
- Public Member Functions inherited from CloudSubModelBase< CloudType >
 CloudSubModelBase (CloudType &owner)
 Construct null from owner cloud. More...
 
 CloudSubModelBase (CloudType &owner, const dictionary &dict, const word &baseName, const word &modelType, const word &dictExt="Coeffs")
 Construct from owner cloud without name. More...
 
 CloudSubModelBase (const word &modelName, CloudType &owner, const dictionary &dict, const word &baseName, const word &modelType)
 Construct from owner cloud with name. More...
 
 CloudSubModelBase (const CloudSubModelBase< CloudType > &smb)
 Construct as copy. More...
 
virtual ~CloudSubModelBase ()=default
 Destructor. More...
 
const CloudTypeowner () const
 Return const access to the owner cloud. More...
 
virtual bool writeTime () const
 Flag to indicate when to write a property. More...
 
virtual fileName localPath () const
 Output directory. More...
 
CloudTypeowner ()
 Return non-const access to the owner cloud for manipulation. More...
 
virtual void write (Ostream &os) const
 Write to os. More...
 
- Public Member Functions inherited from subModelBase
 subModelBase (dictionary &properties)
 Construct null. More...
 
 subModelBase (dictionary &properties, const dictionary &dict, const word &baseName, const word &modelType, const word &dictExt="Coeffs")
 Construct from components without name. More...
 
 subModelBase (const word &modelName, dictionary &properties, const dictionary &dict, const word &baseName, const word &modelType)
 Construct from components with name. More...
 
 subModelBase (const subModelBase &smb)
 Construct as copy. More...
 
virtual ~subModelBase ()=default
 Destructor. More...
 
const wordmodelName () const
 Return const access to the name of the sub-model. More...
 
const dictionarydict () const
 Return const access to the cloud dictionary. More...
 
const wordbaseName () const
 Return const access to the base name of the sub-model. More...
 
const wordmodelType () const
 Return const access to the sub-model type. More...
 
const dictionarycoeffDict () const
 Return const access to the coefficients dictionary. More...
 
const dictionaryproperties () const
 Return const access to the properties dictionary. More...
 
virtual bool defaultCoeffs (const bool printMsg) const
 Returns true if defaultCoeffs is true and outputs on printMsg. More...
 
virtual bool active () const
 Return the model 'active' status - default active = true. More...
 
virtual void cacheFields (const bool store)
 Cache dependent sub-model fields. More...
 
template<class Type >
Type getBaseProperty (const word &entryName, const Type &defaultValue=Type(Zero)) const
 Retrieve generic property from the base model. More...
 
template<class Type >
void getBaseProperty (const word &entryName, Type &value) const
 Retrieve generic property from the base model. More...
 
template<class Type >
void setBaseProperty (const word &entryName, const Type &value)
 Add generic property to the base model. More...
 
bool getModelDict (const word &entryName, dictionary &dict) const
 Retrieve dictionary, return true if set. More...
 
template<class Type >
bool getModelProperty (const word &entryName, Type &value) const
 Retrieve generic property from the sub-model. More...
 
template<class Type >
Type getModelProperty (const word &entryName, const Type &defaultValue=Type(Zero)) const
 Retrieve generic property from the sub-model. More...
 
template<class Type >
void setModelProperty (const word &entryName, const Type &value)
 Add generic property to the sub-model. More...
 

Static Public Member Functions

static autoPtr< SurfaceFilmModel< CloudType > > New (const dictionary &dict, CloudType &owner)
 Selector. More...
 

Protected Types

typedef CloudType::parcelType parcelType
 Convenience typedef to the cloud's parcel type. More...
 
typedef regionModels::areaSurfaceFilmModels::liquidFilmBase areaFilm
 
typedef regionModels::surfaceFilmModels::surfaceFilmRegionModel regionFilm
 

Protected Member Functions

virtual void cacheFilmFields (const label filmPatchi, const label primaryPatchi, const regionFilm &)
 Cache the film fields in preparation for injection. More...
 
virtual void cacheFilmFields (const areaFilm &film)
 Cache the finite area film fields in preparation for injection. More...
 
template<class TrackCloudType >
void injectParticles (const label primaryPatchi, const labelUList &injectorCells, TrackCloudType &cloud)
 Inject particles in cloud. More...
 
template<class TrackCloudType >
void injectParticles (const UList< labelPair > &patchFaces, TrackCloudType &cloud)
 Inject particles in cloud. More...
 
virtual void setParcelProperties (parcelType &p, const label filmFacei) const
 Set the individual parcel properties. More...
 
- Protected Member Functions inherited from subModelBase
bool inLine () const
 Flag to indicate whether data is/was read in-line. More...
 

Protected Attributes

const dimensionedVectorg_
 Gravitational acceleration constant. More...
 
label ejectedParcelType_
 Ejected parcel type label - id assigned to identify parcel for post-processing. If not specified, defaults to originating cloud type. More...
 
scalar injectionOffset_
 Injection offset position. More...
 
scalar minDiameter_
 Minimum diameter particle injection. More...
 
scalarField massParcelPatch_
 Parcel mass / patch face. More...
 
scalarField diameterParcelPatch_
 Parcel diameter / patch face. More...
 
Field< vectorUFilmPatch_
 Film velocity / patch face. More...
 
scalarField rhoFilmPatch_
 Film density / patch face. More...
 
Field< scalarFielddeltaFilmPatch_
 Film height of all film patches / patch face. More...
 
label nParcelsTransferred_
 Number of parcels transferred to the film model. More...
 
label nParcelsInjected_
 Number of parcels injected from the film model. More...
 
scalar totalMassTransferred_
 Total mass transferred to the film. More...
 
- Protected Attributes inherited from CloudSubModelBase< CloudType >
CloudTypeowner_
 Reference to the cloud. More...
 
- Protected Attributes inherited from subModelBase
const word modelName_
 Name of the sub-model. More...
 
dictionaryproperties_
 Reference to properties dictionary e.g. for restart. More...
 
const dictionary dict_
 Copy of dictionary used during construction. More...
 
const word baseName_
 Name of the sub-model base class. More...
 
const word modelType_
 Type of the sub-model. More...
 
const dictionary coeffDict_
 Coefficients dictionary. More...
 

Additional Inherited Members

- Public Types inherited from CloudSubModelBase< CloudType >
typedef CloudType cloudType
 Type of cloud this model was instantiated for. More...
 
- Public Attributes inherited from subModelBase
bool log
 Flag to write log into Info. More...
 

Detailed Description

template<class CloudType>
class Foam::SurfaceFilmModel< CloudType >

Templated wall surface film model class.

Source files

Definition at line 88 of file KinematicCloud.H.

Member Typedef Documentation

◆ parcelType

typedef CloudType::parcelType parcelType
protected

Convenience typedef to the cloud's parcel type.

Definition at line 81 of file SurfaceFilmModel.H.

◆ areaFilm

◆ regionFilm

Constructor & Destructor Documentation

◆ SurfaceFilmModel() [1/3]

Construct null from owner.

Definition at line 32 of file SurfaceFilmModel.C.

◆ SurfaceFilmModel() [2/3]

SurfaceFilmModel ( const dictionary dict,
CloudType owner,
const word type 
)

Construct from components.

Definition at line 52 of file SurfaceFilmModel.C.

◆ SurfaceFilmModel() [3/3]

Construct copy.

Definition at line 85 of file SurfaceFilmModel.C.

◆ ~SurfaceFilmModel()

virtual ~SurfaceFilmModel ( )
virtualdefault

Destructor.

Member Function Documentation

◆ cacheFilmFields() [1/2]

void cacheFilmFields ( const label  filmPatchi,
const label  primaryPatchi,
const regionFilm filmModel 
)
protectedvirtual

Cache the film fields in preparation for injection.

Reimplemented in KinematicSurfaceFilm< CloudType >, and ThermoSurfaceFilm< CloudType >.

Definition at line 324 of file SurfaceFilmModel.C.

Referenced by KinematicSurfaceFilm< CloudType >::cacheFilmFields().

Here is the caller graph for this function:

◆ cacheFilmFields() [2/2]

void cacheFilmFields ( const areaFilm film)
protectedvirtual

Cache the finite area film fields in preparation for injection.

Reimplemented in KinematicSurfaceFilm< CloudType >, and ThermoSurfaceFilm< CloudType >.

Definition at line 351 of file SurfaceFilmModel.C.

◆ injectParticles() [1/4]

void injectParticles ( const label  primaryPatchi,
const labelUList injectorCells,
TrackCloudType &  cloud 
)
protected

Inject particles in cloud.

◆ injectParticles() [2/4]

void injectParticles ( const UList< labelPair > &  patchFaces,
TrackCloudType &  cloud 
)
protected

Inject particles in cloud.

◆ setParcelProperties()

void setParcelProperties ( parcelType p,
const label  filmFacei 
) const
protectedvirtual

Set the individual parcel properties.

Reimplemented in KinematicSurfaceFilm< CloudType >, NoSurfaceFilm< CloudType >, and ThermoSurfaceFilm< CloudType >.

Definition at line 403 of file SurfaceFilmModel.C.

Referenced by KinematicSurfaceFilm< CloudType >::setParcelProperties().

Here is the caller graph for this function:

◆ TypeName()

TypeName ( "surfaceFilmModel"  )

Runtime type information.

◆ declareRunTimeSelectionTable()

declareRunTimeSelectionTable ( autoPtr  ,
SurfaceFilmModel< CloudType ,
dictionary  ,
(const dictionary &dict, CloudType &owner ,
(dict, owner  
)

Declare runtime constructor selection table.

◆ clone()

virtual autoPtr<SurfaceFilmModel<CloudType> > clone ( ) const
pure virtual

◆ New()

Foam::autoPtr< Foam::SurfaceFilmModel< CloudType > > New ( const dictionary dict,
CloudType owner 
)
static

Selector.

Definition at line 29 of file SurfaceFilmModelNew.C.

◆ g()

const Foam::dimensionedVector & g ( ) const
inlinenoexcept

Return gravitational acceleration constant.

Definition at line 26 of file SurfaceFilmModelI.H.

◆ nParcelsTransferred() [1/2]

Foam::label nParcelsTransferred ( ) const
inlinenoexcept

The number of parcels transferred to the film model.

Definition at line 34 of file SurfaceFilmModelI.H.

◆ nParcelsTransferred() [2/2]

Foam::label & nParcelsTransferred ( )
inlinenoexcept

Non-const access to number of parcels transferred to the film model.

Definition at line 41 of file SurfaceFilmModelI.H.

◆ nParcelsInjected() [1/2]

Foam::label nParcelsInjected ( ) const
inlinenoexcept

The number of parcels injected from the film model.

Definition at line 49 of file SurfaceFilmModelI.H.

◆ nParcelsInjected() [2/2]

Foam::label & nParcelsInjected ( )
inlinenoexcept

Non-const access to number of parcels injected from the film model.

Definition at line 57 of file SurfaceFilmModelI.H.

◆ totalMassTransferred() [1/2]

Foam::scalar totalMassTransferred ( ) const
inlinenoexcept

The total mass transferred.

Definition at line 65 of file SurfaceFilmModelI.H.

◆ totalMassTransferred() [2/2]

Foam::scalar & totalMassTransferred ( )
inlinenoexcept

Non-const access to the total mass transferred.

Definition at line 73 of file SurfaceFilmModelI.H.

◆ transferParcel()

virtual bool transferParcel ( parcelType p,
const polyPatch pp,
bool &  keepParticle 
)
pure virtual

Transfer parcel from cloud to surface film.

Returns true if parcel is to be transferred

Implemented in KinematicSurfaceFilm< CloudType >, ThermoSurfaceFilm< CloudType >, and NoSurfaceFilm< CloudType >.

◆ inject()

void inject ( TrackCloudType &  cloud)

Inject parcels into the cloud.

Definition at line 239 of file SurfaceFilmModel.C.

◆ info()

void info ( )
virtual

Write surface film info.

Reimplemented from CloudSubModelBase< CloudType >.

Reimplemented in KinematicSurfaceFilm< CloudType >, and ThermoSurfaceFilm< CloudType >.

Definition at line 432 of file SurfaceFilmModel.C.

Referenced by KinematicSurfaceFilm< CloudType >::info().

Here is the caller graph for this function:

◆ injectParticles() [3/4]

void injectParticles ( const label  primaryPatchi,
const labelUList injectorCells,
CloudTrackType &  cloud 
)

Definition at line 110 of file SurfaceFilmModel.C.

◆ injectParticles() [4/4]

void injectParticles ( const UList< labelPair > &  patchFaces,
CloudTrackType &  cloud 
)

Definition at line 172 of file SurfaceFilmModel.C.

Member Data Documentation

◆ g_

const dimensionedVector& g_
protected

Gravitational acceleration constant.

Definition at line 97 of file SurfaceFilmModel.H.

◆ ejectedParcelType_

label ejectedParcelType_
protected

Ejected parcel type label - id assigned to identify parcel for post-processing. If not specified, defaults to originating cloud type.

Definition at line 104 of file SurfaceFilmModel.H.

◆ injectionOffset_

scalar injectionOffset_
protected

Injection offset position.

Definition at line 109 of file SurfaceFilmModel.H.

◆ minDiameter_

scalar minDiameter_
protected

Minimum diameter particle injection.

Definition at line 114 of file SurfaceFilmModel.H.

◆ massParcelPatch_

scalarField massParcelPatch_
protected

Parcel mass / patch face.

Definition at line 122 of file SurfaceFilmModel.H.

◆ diameterParcelPatch_

scalarField diameterParcelPatch_
protected

Parcel diameter / patch face.

Definition at line 127 of file SurfaceFilmModel.H.

◆ UFilmPatch_

Field<vector> UFilmPatch_
protected

Film velocity / patch face.

Definition at line 132 of file SurfaceFilmModel.H.

◆ rhoFilmPatch_

scalarField rhoFilmPatch_
protected

Film density / patch face.

Definition at line 137 of file SurfaceFilmModel.H.

◆ deltaFilmPatch_

Field<scalarField> deltaFilmPatch_
protected

Film height of all film patches / patch face.

Definition at line 142 of file SurfaceFilmModel.H.

◆ nParcelsTransferred_

label nParcelsTransferred_
protected

Number of parcels transferred to the film model.

Definition at line 150 of file SurfaceFilmModel.H.

◆ nParcelsInjected_

label nParcelsInjected_
protected

Number of parcels injected from the film model.

Definition at line 155 of file SurfaceFilmModel.H.

◆ totalMassTransferred_

scalar totalMassTransferred_
protected

Total mass transferred to the film.

Definition at line 163 of file SurfaceFilmModel.H.


The documentation for this class was generated from the following files: