Curvature film separation model. More...
Public Member Functions | |
TypeName ("curvatureSeparation") | |
Runtime type information. More... | |
curvatureSeparation (surfaceFilmRegionModel &film, const dictionary &dict) | |
Construct from surface film model. More... | |
curvatureSeparation (const curvatureSeparation &)=delete | |
Disallow default bitwise copy construction. More... | |
virtual | ~curvatureSeparation () |
Destructor. More... | |
virtual void | correct (scalarField &availableMass, scalarField &massToEject, scalarField &diameterToEject) |
Correct. More... | |
void | operator= (const curvatureSeparation &)=delete |
Disallow default bitwise assignment. More... | |
Public Member Functions inherited from ejectionModel | |
TypeName ("ejectionModel") | |
Runtime type information. More... | |
declareRunTimeSelectionTable (autoPtr, ejectionModel, dictionary,(surfaceFilmRegionModel &film, const dictionary &dict),(film, dict)) | |
ejectionModel (surfaceFilmRegionModel &film) | |
Construct null. More... | |
ejectionModel (const word &modelType, surfaceFilmRegionModel &film, const dictionary &dict) | |
Construct from type name, dictionary and surface film model. More... | |
ejectionModel (const ejectionModel &)=delete | |
Disallow default bitwise copy construction. More... | |
virtual | ~ejectionModel () |
Destructor. More... | |
virtual scalar | ejectedMassTotal () const |
Return the total mass ejected. More... | |
virtual void | patchEjectedMassTotals (scalarField &patchMasses) const |
Accumulate the total mass ejected for the patches into the. More... | |
void | operator= (const ejectionModel &)=delete |
Disallow default bitwise assignment. More... | |
Public Member Functions inherited from filmSubModelBase | |
filmSubModelBase (surfaceFilmRegionModel &film) | |
Construct null. More... | |
filmSubModelBase (surfaceFilmRegionModel &film, const dictionary &dict, const word &baseName, const word &modelType, const word &dictExt="Coeffs") | |
Construct from film film without name. More... | |
filmSubModelBase (const word &modelName, surfaceFilmRegionModel &film, const dictionary &dict, const word &baseName, const word &modelType) | |
Construct from film film with name. More... | |
virtual | ~filmSubModelBase () |
Destructor. More... | |
virtual bool | writeTime () const |
Flag to indicate when to write a property. More... | |
const surfaceFilmRegionModel & | film () const |
Return const access to the film surface film model. More... | |
surfaceFilmRegionModel & | film () |
Return the reference to the film surface film model. More... | |
template<class FilmType > | |
const FilmType & | filmType () const |
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) | |
Copy constructor. 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 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... | |
virtual void | write (Ostream &os) const |
Write. More... | |
void | operator= (const subModelBase &)=delete |
Disallow default bitwise assignment. More... | |
Protected Member Functions | |
tmp< volScalarField > | calcInvR1 (const volVectorField &U) const |
Calculate local (inverse) radius of curvature. More... | |
tmp< scalarField > | calcCosAngle (const surfaceScalarField &phi) const |
Calculate the cosine of the angle between gravity vector and. More... | |
Protected Member Functions inherited from ejectionModel | |
void | addToEjectedMass (const scalar dMass) |
Add to ejected mass. More... | |
void | correct () |
Correct. More... | |
Protected Member Functions inherited from subModelBase | |
bool | inLine () const |
Flag to indicate whether data is/was read in-line. More... | |
Protected Attributes | |
volTensorField | gradNHat_ |
Gradient of surface normals. More... | |
scalar | deltaByR1Min_ |
Minimum gravity driven film thickness (non-dimensionalised delta/R1) More... | |
scalar | deltaStable_ |
Stable film thickness - drips only formed if thickness. More... | |
List< Tuple2< label, scalar > > | definedPatchRadii_ |
List of radii for patches - if patch not defined, radius. More... | |
scalar | magG_ |
Magnitude of gravity vector. More... | |
vector | gHat_ |
Direction of gravity vector. More... | |
Protected Attributes inherited from filmSubModelBase | |
surfaceFilmRegionModel & | filmModel_ |
Reference to the film surface film model. 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 ejectionModel | |
static autoPtr< ejectionModel > | New (surfaceFilmRegionModel &film, const dictionary &dict, const word &mdoelType) |
Return a reference to the selected ejection model. More... | |
Curvature film separation model.
Assesses film curvature via the mesh geometry and calculates a force balance of the form:
F_sum = F_inertial + F_body + F_surface
If F_sum < 0, the film separates. Similarly, if F_sum > 0 the film will remain attached.
Based on description given by Owen and D. J. Ryley. The flow of thin liquid films around corners. International Journal of Multiphase Flow, 11(1):51-62, 1985.
Definition at line 66 of file curvatureSeparation.H.
curvatureSeparation | ( | surfaceFilmRegionModel & | film, |
const dictionary & | dict | ||
) |
Construct from surface film model.
Definition at line 173 of file curvatureSeparation.C.
References List< T >::append(), polyMesh::boundaryMesh(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, Foam::findStrings(), Foam::first(), forAll, forAllReverse, surfaceFilmRegionModel::g(), polyBoundaryMesh::names(), patchi, regionModel::regionMesh(), List< T >::size(), DynamicList< T, SizeInc, SizeMult, SizeDiv >::transfer(), and dimensioned< Type >::value().
Referenced by curvatureSeparation::calcCosAngle().
|
delete |
Disallow default bitwise copy construction.
|
virtual |
Destructor.
Definition at line 231 of file curvatureSeparation.C.
References ejectionModel::correct().
|
protected |
Calculate local (inverse) radius of curvature.
Definition at line 53 of file curvatureSeparation.C.
References polyMesh::boundaryMesh(), curvatureSeparation::calcCosAngle(), Foam::dimVelocity, Foam::e, forAll, Foam::mag(), Foam::max(), mesh, GeometricField< scalar, fvPatchField, volMesh >::New(), patchi, tmp< T >::ref(), Foam::second(), fvMesh::time(), and TimeState::writeTime().
Referenced by curvatureSeparation::correct().
|
protected |
Calculate the cosine of the angle between gravity vector and.
cell out flow direction
Definition at line 100 of file curvatureSeparation.C.
References GeometricField< Type, PatchField, GeoMesh >::boundaryField(), curvatureSeparation::curvatureSeparation(), Foam::dimless, fvPatch::faceCells(), forAll, fvMesh::magSf(), Foam::max(), mesh, Foam::min(), primitiveMesh::nCells(), fvMesh::neighbour(), fvPatch::nf(), IOobject::NO_READ, fvMesh::owner(), fvsPatchField< Type >::patch(), patchi, GeometricField< Type, PatchField, GeoMesh >::primitiveFieldRef(), fvMesh::Sf(), fvMesh::time(), Time::timeName(), and TimeState::writeTime().
Referenced by curvatureSeparation::calcInvR1(), and curvatureSeparation::correct().
TypeName | ( | "curvatureSeparation" | ) |
Runtime type information.
|
virtual |
Correct.
Implements ejectionModel.
Definition at line 238 of file curvatureSeparation.C.
References ejectionModel::addToEjectedMass(), curvatureSeparation::calcCosAngle(), curvatureSeparation::calcInvR1(), ejectionModel::correct(), delta, kinematicSingleLayer::delta(), curvatureSeparation::deltaByR1Min_, curvatureSeparation::deltaStable_, Foam::dimForce, Foam::e, filmSubModelBase::film(), forAll, curvatureSeparation::magG_, Foam::magSqr(), mesh, IOobject::NO_READ, kinematicSingleLayer::phi(), GeometricField< Type, PatchField, GeoMesh >::primitiveFieldRef(), regionModel::regionMesh(), rho, kinematicSingleLayer::rho(), Foam::constant::physicoChemical::sigma, kinematicSingleLayer::sigma(), Foam::sqr(), Foam::sum(), and kinematicSingleLayer::U().
|
delete |
Disallow default bitwise assignment.
|
protected |
Gradient of surface normals.
Definition at line 75 of file curvatureSeparation.H.
|
protected |
Minimum gravity driven film thickness (non-dimensionalised delta/R1)
Definition at line 78 of file curvatureSeparation.H.
Referenced by curvatureSeparation::correct().
|
protected |
Stable film thickness - drips only formed if thickness.
exceeds this threshold value
Definition at line 82 of file curvatureSeparation.H.
Referenced by curvatureSeparation::correct().
List of radii for patches - if patch not defined, radius.
calculated based on mesh geometry
Definition at line 86 of file curvatureSeparation.H.
|
protected |
Magnitude of gravity vector.
Definition at line 89 of file curvatureSeparation.H.
Referenced by curvatureSeparation::correct().
|
protected |
Direction of gravity vector.
Definition at line 92 of file curvatureSeparation.H.