Thermo parcel surface film model. More...
Public Types | |
enum | interactionType { itAbsorb, itBounce, itSplashBai } |
Public Types inherited from CloudSubModelBase< CloudType > | |
typedef CloudType | cloudType |
Type of cloud this model was instantiated for. More... | |
Public Member Functions | |
interactionType | interactionTypeEnum (const word &it) const |
word | interactionTypeStr (const interactionType &it) const |
TypeName ("thermoSurfaceFilm") | |
Runtime type information. More... | |
ThermoSurfaceFilm (const dictionary &dict, CloudType &owner) | |
Construct from components. More... | |
ThermoSurfaceFilm (const ThermoSurfaceFilm< CloudType > &sfm) | |
Construct copy. More... | |
virtual autoPtr< SurfaceFilmModel< CloudType > > | clone () const |
Construct and return a clone using supplied owner cloud. More... | |
virtual | ~ThermoSurfaceFilm () |
Destructor. More... | |
virtual bool | transferParcel (parcelType &p, const polyPatch &pp, bool &keepParticle) |
Transfer parcel from cloud to surface film. More... | |
virtual void | info (Ostream &os) |
Write surface film info to stream. More... | |
Public Member Functions inherited from SurfaceFilmModel< CloudType > | |
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 | ~SurfaceFilmModel () |
Destructor. More... | |
const dimensionedVector & | g () const |
Return gravitational acceleration constant. More... | |
label | nParcelsTransferred () const |
Return const access to the number of parcels transferred to the. More... | |
label & | nParcelsTransferred () |
Return non-const access to the number of parcels transferred to. More... | |
label | nParcelsInjected () const |
Return const access to the number of parcels injected from the. More... | |
label & | nParcelsInjected () |
Return non-const access to the number of parcels injected from. More... | |
template<class TrackCloudType > | |
void | inject (TrackCloudType &cloud) |
Inject parcels into the cloud. More... | |
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 () |
Destructor. More... | |
const CloudType & | owner () const |
Return const access to the owner cloud. More... | |
virtual bool | writeTime () const |
Flag to indicate when to write a property. More... | |
CloudType & | owner () |
Return non-const access to the owner cloud for manipulation. More... | |
virtual void | write (Ostream &os) const |
Write. 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 () |
Destructor. More... | |
const word & | modelName () const |
Return const access to the name of the sub-model. More... | |
const dictionary & | dict () const |
Return const access to the cloud dictionary. More... | |
const word & | baseName () const |
Return const access to the base name of the sub-model. More... | |
const word & | modelType () const |
Return const access to the sub-model type. More... | |
const dictionary & | coeffDict () const |
Return const access to the coefficients dictionary. More... | |
const dictionary & | properties () 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=pTraits< 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... | |
template<class Type > | |
void | 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=pTraits< 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 Attributes | |
static wordList | interactionTypeNames_ |
Word descriptions of interaction type names. More... | |
Protected Types | |
typedef CloudType::parcelType | parcelType |
Convenience typedef to the cloud's parcel type. More... | |
Protected Types inherited from SurfaceFilmModel< CloudType > | |
typedef CloudType::parcelType | parcelType |
Convenience typedef to the cloud's parcel type. More... | |
Protected Member Functions | |
vector | tangentVector (const vector &v) const |
Return a vector tangential to input vector, v. More... | |
vector | splashDirection (const vector &tanVec1, const vector &tanVec2, const vector &nf) const |
Return splashed parcel direction. More... | |
void | absorbInteraction (regionModels::surfaceFilmModels::surfaceFilmRegionModel &, const parcelType &p, const polyPatch &pp, const label facei, const scalar mass, bool &keepParticle) |
Absorb parcel into film. More... | |
void | bounceInteraction (parcelType &p, const polyPatch &pp, const label facei, bool &keepParticle) const |
Bounce parcel (flip parcel normal velocity) More... | |
void | drySplashInteraction (regionModels::surfaceFilmModels::surfaceFilmRegionModel &, const parcelType &p, const polyPatch &pp, const label facei, bool &keepParticle) |
Parcel interaction with dry surface. More... | |
void | wetSplashInteraction (regionModels::surfaceFilmModels::surfaceFilmRegionModel &, parcelType &p, const polyPatch &pp, const label facei, bool &keepParticle) |
Parcel interaction with wetted surface. More... | |
void | splashInteraction (regionModels::surfaceFilmModels::surfaceFilmRegionModel &, const parcelType &p, const polyPatch &pp, const label facei, const scalar mRatio, const scalar We, const scalar Wec, const scalar sigma, bool &keepParticle) |
Bai parcel splash interaction model. More... | |
virtual void | cacheFilmFields (const label filmPatchi, const label primaryPatchi, const regionModels::surfaceFilmModels::surfaceFilmRegionModel &filmModel) |
Cache the film fields in preparation for injection. 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 | |
Random & | rndGen_ |
Reference to the cloud random number generator. More... | |
const SLGThermo & | thermo_ |
Reference to the cloud thermo package. More... | |
scalarList | TFilmPatch_ |
Film temperature / patch face. More... | |
scalarList | CpFilmPatch_ |
Film specific heat capacity / patch face. More... | |
interactionType | interactionType_ |
Interaction type enumeration. More... | |
scalar | deltaWet_ |
Film thickness beyond which patch is assumed to be wet. More... | |
label | splashParcelType_ |
Splash parcel type label - id assigned to identify parcel for. More... | |
label | parcelsPerSplash_ |
Number of new parcels resulting from splash event. More... | |
scalar | Adry_ |
Dry surface roughness coefficient. More... | |
scalar | Awet_ |
Wet surface roughness coefficient. More... | |
scalar | Cf_ |
Skin friction typically in the range 0.6 < Cf < 0.8. More... | |
label | nParcelsSplashed_ |
Counter for number of new splash parcels. More... | |
Protected Attributes inherited from SurfaceFilmModel< CloudType > | |
const dimensionedVector & | g_ |
Gravitational acceleration constant. More... | |
label | ejectedParcelType_ |
Ejected parcel type label - id assigned to identify parcel for. More... | |
scalarList | massParcelPatch_ |
Parcel mass / patch face. More... | |
scalarList | diameterParcelPatch_ |
Parcel diameter / patch face. More... | |
List< vector > | UFilmPatch_ |
Film velocity / patch face. More... | |
scalarList | rhoFilmPatch_ |
Film density / patch face. More... | |
scalarListList | deltaFilmPatch_ |
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... | |
Protected Attributes inherited from CloudSubModelBase< CloudType > | |
CloudType & | owner_ |
Reference to the cloud. More... | |
Protected Attributes inherited from subModelBase | |
const word | modelName_ |
Name of the sub-model. More... | |
dictionary & | properties_ |
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 | |
Static Public Member Functions inherited from SurfaceFilmModel< CloudType > | |
static autoPtr< SurfaceFilmModel< CloudType > > | New (const dictionary &dict, CloudType &owner) |
Selector. More... | |
Thermo parcel surface film model.
Splash model references:
Bai and Gosman, `Mathematical modelling of wall films formed by impinging sprays', SAE 960626, 1996
Bai et al, `Modelling of gasoline spray impingement', Atom. Sprays, vol 12, pp 1-27, 2002
Definition at line 63 of file ThermoSurfaceFilm.H.
|
protected |
Convenience typedef to the cloud's parcel type.
Definition at line 97 of file ThermoSurfaceFilm.H.
enum interactionType |
Enumerator | |
---|---|
itAbsorb | |
itBounce | |
itSplashBai |
Definition at line 72 of file ThermoSurfaceFilm.H.
ThermoSurfaceFilm | ( | const dictionary & | dict, |
CloudType & | owner | ||
) |
Construct from components.
Definition at line 480 of file ThermoSurfaceFilm.C.
References Foam::endl(), and Foam::Info.
Referenced by ThermoSurfaceFilm< CloudType >::splashInteraction().
ThermoSurfaceFilm | ( | const ThermoSurfaceFilm< CloudType > & | sfm | ) |
Construct copy.
Definition at line 524 of file ThermoSurfaceFilm.C.
|
virtual |
Destructor.
Definition at line 547 of file ThermoSurfaceFilm.C.
References ThermoSurfaceFilm< CloudType >::transferParcel().
Referenced by ThermoSurfaceFilm< CloudType >::clone().
Foam::ThermoSurfaceFilm< CloudType >::interactionType interactionTypeEnum | ( | const word & | it | ) | const |
Definition at line 49 of file ThermoSurfaceFilm.C.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, forAll, and ThermoSurfaceFilm< CloudType >::interactionTypeStr().
Foam::word interactionTypeStr | ( | const interactionType & | it | ) | const |
Definition at line 70 of file ThermoSurfaceFilm.C.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, and ThermoSurfaceFilm< CloudType >::tangentVector().
Referenced by ThermoSurfaceFilm< CloudType >::interactionTypeEnum().
|
protected |
Return a vector tangential to input vector, v.
Definition at line 88 of file ThermoSurfaceFilm.C.
References Foam::mag(), ThermoSurfaceFilm< CloudType >::splashDirection(), and Foam::Zero.
Referenced by ThermoSurfaceFilm< CloudType >::interactionTypeStr().
|
protected |
Return splashed parcel direction.
Definition at line 108 of file ThermoSurfaceFilm.C.
References ThermoSurfaceFilm< CloudType >::absorbInteraction(), Foam::constant::atomic::alpha, Foam::cos(), Foam::mag(), Foam::constant::mathematical::pi(), Foam::sin(), and Foam::constant::mathematical::twoPi().
Referenced by ThermoSurfaceFilm< CloudType >::tangentVector().
|
protected |
Absorb parcel into film.
Definition at line 133 of file ThermoSurfaceFilm.C.
References surfaceFilmRegionModel::addSources(), ThermoSurfaceFilm< CloudType >::bounceInteraction(), Foam::endl(), PrimitivePatch< Face, FaceList, PointField, PointType >::faceNormals(), patchIdentifier::index(), Foam::Info, Foam::mag(), and Urel.
Referenced by ThermoSurfaceFilm< CloudType >::splashDirection().
|
protected |
Bounce parcel (flip parcel normal velocity)
Definition at line 180 of file ThermoSurfaceFilm.C.
References ThermoSurfaceFilm< CloudType >::drySplashInteraction(), Foam::endl(), PrimitivePatch< Face, FaceList, PointField, PointType >::faceNormals(), patchIdentifier::index(), Foam::Info, and Urel.
Referenced by ThermoSurfaceFilm< CloudType >::absorbInteraction().
|
protected |
Parcel interaction with dry surface.
Definition at line 210 of file ThermoSurfaceFilm.C.
References Foam::endl(), PrimitivePatch< Face, FaceList, PointField, PointType >::faceNormals(), patchIdentifier::index(), Foam::Info, Foam::magSqr(), Foam::constant::physicoChemical::mu, liquidProperties::mu(), Foam::pow(), rho, Foam::constant::physicoChemical::sigma, liquidProperties::sigma(), Foam::sqr(), Urel, and ThermoSurfaceFilm< CloudType >::wetSplashInteraction().
Referenced by ThermoSurfaceFilm< CloudType >::bounceInteraction().
|
protected |
Parcel interaction with wetted surface.
Definition at line 266 of file ThermoSurfaceFilm.C.
References Foam::acos(), Foam::endl(), epsilon, PrimitivePatch< Face, FaceList, PointField, PointType >::faceNormals(), patchIdentifier::index(), Foam::Info, Foam::mag(), Foam::magSqr(), Foam::constant::physicoChemical::mu, liquidProperties::mu(), Foam::constant::mathematical::pi(), Foam::pow(), rho, Foam::constant::physicoChemical::sigma, liquidProperties::sigma(), ThermoSurfaceFilm< CloudType >::splashInteraction(), Foam::sqr(), U, and Urel.
Referenced by ThermoSurfaceFilm< CloudType >::drySplashInteraction().
|
protected |
Bai parcel splash interaction model.
Definition at line 343 of file ThermoSurfaceFilm.C.
References GeometricField< Type, PatchField, GeoMesh >::boundaryField(), fvMesh::C(), Foam::cbrt(), fvMesh::Cf(), Foam::meshTools::constrainDirection(), Foam::exp(), PrimitivePatch< Face, FaceList, PointField, PointType >::faceNormals(), forAll, patchIdentifier::index(), Foam::log(), Foam::mag(), Foam::magSqr(), Foam::max(), mesh, UPstream::myProcNo(), Foam::constant::mathematical::pi(), Foam::pow3(), polyMesh::solutionD(), Foam::sqr(), Foam::sqrt(), ThermoSurfaceFilm< CloudType >::ThermoSurfaceFilm(), Urel, and y.
Referenced by ThermoSurfaceFilm< CloudType >::wetSplashInteraction().
|
protectedvirtual |
Cache the film fields in preparation for injection.
Reimplemented from SurfaceFilmModel< CloudType >.
Definition at line 628 of file ThermoSurfaceFilm.C.
References GeometricField< Type, PatchField, GeoMesh >::boundaryField(), SurfaceFilmModel< CloudType >::cacheFilmFields(), surfaceFilmRegionModel::Cp(), ThermoSurfaceFilm< CloudType >::setParcelProperties(), regionModel::toPrimary(), and surfaceFilmRegionModel::Ts().
Referenced by ThermoSurfaceFilm< CloudType >::transferParcel().
|
protectedvirtual |
Set the individual parcel properties.
Reimplemented from SurfaceFilmModel< CloudType >.
Definition at line 651 of file ThermoSurfaceFilm.C.
References SurfaceFilmModel< CloudType >::setParcelProperties().
Referenced by ThermoSurfaceFilm< CloudType >::cacheFilmFields().
TypeName | ( | "thermoSurfaceFilm" | ) |
Runtime type information.
|
inlinevirtual |
Construct and return a clone using supplied owner cloud.
Implements SurfaceFilmModel< CloudType >.
Definition at line 256 of file ThermoSurfaceFilm.H.
References ThermoSurfaceFilm< CloudType >::info(), p, ThermoSurfaceFilm< CloudType >::transferParcel(), and ThermoSurfaceFilm< CloudType >::~ThermoSurfaceFilm().
|
virtual |
Transfer parcel from cloud to surface film.
Returns true if parcel is to be transferred
Implements SurfaceFilmModel< CloudType >.
Definition at line 555 of file ThermoSurfaceFilm.C.
References Foam::abort(), ThermoSurfaceFilm< CloudType >::cacheFilmFields(), Foam::FatalError, FatalErrorInFunction, patchIdentifier::index(), regionModel::isRegionPatch(), patchi, and polyPatch::whichFace().
Referenced by ThermoSurfaceFilm< CloudType >::clone(), and ThermoSurfaceFilm< CloudType >::~ThermoSurfaceFilm().
|
virtual |
Write surface film info to stream.
Reimplemented from SurfaceFilmModel< CloudType >.
Definition at line 665 of file ThermoSurfaceFilm.C.
References Foam::endl(), SurfaceFilmModel< CloudType >::info(), and Foam::returnReduce().
Referenced by ThermoSurfaceFilm< CloudType >::clone().
|
static |
Word descriptions of interaction type names.
Definition at line 80 of file ThermoSurfaceFilm.H.
|
protected |
Reference to the cloud random number generator.
Definition at line 100 of file ThermoSurfaceFilm.H.
|
protected |
Reference to the cloud thermo package.
Definition at line 103 of file ThermoSurfaceFilm.H.
|
protected |
Film temperature / patch face.
Definition at line 109 of file ThermoSurfaceFilm.H.
|
protected |
Film specific heat capacity / patch face.
Definition at line 112 of file ThermoSurfaceFilm.H.
|
protected |
Interaction type enumeration.
Definition at line 118 of file ThermoSurfaceFilm.H.
|
protected |
Film thickness beyond which patch is assumed to be wet.
Definition at line 121 of file ThermoSurfaceFilm.H.
|
protected |
Splash parcel type label - id assigned to identify parcel for.
post-processing. If not specified, defaults to originating cloud type
Definition at line 126 of file ThermoSurfaceFilm.H.
|
protected |
Number of new parcels resulting from splash event.
Definition at line 129 of file ThermoSurfaceFilm.H.
|
protected |
Dry surface roughness coefficient.
= 2630 for dry interaction (ref. Bai)
Definition at line 137 of file ThermoSurfaceFilm.H.
|
protected |
Wet surface roughness coefficient.
= 1320 for wet interaction (ref. Bai)
Definition at line 141 of file ThermoSurfaceFilm.H.
|
protected |
Skin friction typically in the range 0.6 < Cf < 0.8.
Definition at line 145 of file ThermoSurfaceFilm.H.
|
protected |
Counter for number of new splash parcels.
Definition at line 148 of file ThermoSurfaceFilm.H.