Abstract base class for functions that are used to combine interfacial sub-models according to the volume fractions of the phases that they apply to. More...
Public Member Functions | |
TypeName ("blendingMethod") | |
Runtime type information. More... | |
declareRunTimeSelectionTable (autoPtr, blendingMethod, dictionary,(const dictionary &dict, const phaseInterface &interface),(dict, interface)) | |
blendingMethod (const dictionary &dict, const phaseInterface &interface) | |
Construct from a dictionary and an interface. More... | |
virtual | ~blendingMethod () |
Destructor. More... | |
virtual bool | canBeContinuous (const label index) const =0 |
Return whether or not a phase can be considered continuous. More... | |
virtual bool | canSegregate () const =0 |
Return whether or not this interface can segregate. More... | |
tmp< volScalarField > | f1DispersedIn2 (const UPtrList< const volScalarField > &alphas) const |
Return the coefficient for models in which phase 1 is dispersed in. More... | |
tmp< volScalarField > | f2DispersedIn1 (const UPtrList< const volScalarField > &alphas) const |
Return the coefficient for models in which phase 2 is dispersed in. More... | |
tmp< volScalarField > | fDisplaced (const UPtrList< const volScalarField > &alphas) const |
Return the coefficient for when the interface is displaced by a. More... | |
Static Public Member Functions | |
static autoPtr< blendingMethod > | New (const word &modelTypeName, const dictionary &dict, const phaseInterface &interface) |
Protected Member Functions | |
tmp< volScalarField > | constant (const UPtrList< const volScalarField > &alphas, const scalar k) const |
Return a constant field with the given value. More... | |
tmp< volScalarField > | alpha (const UPtrList< const volScalarField > &alphas, const label set, const bool protect) const |
Get the volume fraction of the given set. More... | |
tmp< volScalarField > | parameter (const UPtrList< const volScalarField > &alphas, const label set, const Pair< blendingParameter > ¶meters) const |
Get a blending parameter averaged for the given set. More... | |
tmp< volScalarField > | x (const UPtrList< const volScalarField > &alphas, const label phaseSet, const label systemSet) const |
Return the coordinate of the blending function. More... | |
virtual tmp< volScalarField > | fContinuous (const UPtrList< const volScalarField > &alphas, const label phaseSet, const label systemSet) const =0 |
Evaluate the blending function for sets in which all phases can be. More... | |
virtual tmp< volScalarField > | f (const UPtrList< const volScalarField > &alphas, const label phaseSet, const label systemSet) const |
Evaluate the blending function. Filters out phases that cannot. More... | |
Static Protected Member Functions | |
static blendingParameter | readParameter (const word &name, const dictionary &dict, const Pair< scalar > &bounds, const bool allowNone) |
Read a parameter and check it lies within specified bounds. More... | |
static Pair< blendingParameter > | readParameters (const word &name, const dictionary &dict, const phaseInterface &interface, const Pair< scalar > &bounds, const bool allowNone) |
Read a parameter for each phase in the interface. More... | |
Protected Attributes | |
const phaseInterface | interface_ |
Interface. More... | |
Abstract base class for functions that are used to combine interfacial sub-models according to the volume fractions of the phases that they apply to.
Definition at line 65 of file blendingMethod.H.
blendingMethod | ( | const dictionary & | dict, |
const phaseInterface & | interface | ||
) |
Construct from a dictionary and an interface.
Definition at line 223 of file blendingMethod.C.
|
virtual |
Destructor.
Definition at line 235 of file blendingMethod.C.
|
staticprotected |
Read a parameter and check it lies within specified bounds.
Definition at line 40 of file blendingMethod.C.
References dict, Foam::exit(), Foam::FatalError, FatalErrorInFunction, Foam::FatalIOError, FatalIOErrorInFunction, forAll, token::info(), token::isNumber(), token::isWord(), Foam::name(), token::number(), s(), and token::wordToken().
|
staticprotected |
Read a parameter for each phase in the interface.
Definition at line 84 of file blendingMethod.C.
References dict, IOobject::groupName(), phaseModel::name(), Foam::name(), phaseInterface::phase1(), and phaseInterface::phase2().
|
protected |
Return a constant field with the given value.
Definition at line 106 of file blendingMethod.C.
References Foam::dimless, UPtrList< T >::first(), k, Foam::name(), and GeometricField< Type, PatchField, GeoMesh >::New().
Referenced by continuous::fContinuous(), and segregated::fContinuous().
|
protected |
Get the volume fraction of the given set.
Definition at line 122 of file blendingMethod.C.
References forAllConstIter, Foam::max(), and tmp< T >::ref().
|
protected |
Get a blending parameter averaged for the given set.
Definition at line 146 of file blendingMethod.C.
References alpha(), forAllConstIter, Foam::max(), and tmp< T >::ref().
Referenced by hyperbolic::fContinuous(), and linear::fContinuous().
|
protected |
Return the coordinate of the blending function.
Definition at line 169 of file blendingMethod.C.
References alpha().
Referenced by hyperbolic::fContinuous(), and linear::fContinuous().
|
protectedpure virtual |
Evaluate the blending function for sets in which all phases can be.
continuous
Implemented in segregated, linear, hyperbolic, and continuous.
|
protectedvirtual |
Evaluate the blending function. Filters out phases that cannot.
become continuous from the sets, then calls fContinuous
Definition at line 183 of file blendingMethod.C.
References forAllConstIter.
Referenced by linear::fContinuous().
TypeName | ( | "blendingMethod" | ) |
Runtime type information.
declareRunTimeSelectionTable | ( | autoPtr | , |
blendingMethod | , | ||
dictionary | , | ||
(const dictionary &dict, const phaseInterface &interface) | , | ||
(dict, interface) | |||
) |
|
static |
Definition at line 30 of file blendingMethodNew.C.
References dict, Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, Foam::Info, and phaseInterface::name().
Referenced by BlendedInterfacialModel< ModelType >::BlendedInterfacialModel().
|
pure virtual |
Return whether or not a phase can be considered continuous.
Implemented in segregated, linear, hyperbolic, and continuous.
|
pure virtual |
Return whether or not this interface can segregate.
Implemented in segregated, linear, hyperbolic, and continuous.
Foam::tmp< Foam::volScalarField > f1DispersedIn2 | ( | const UPtrList< const volScalarField > & | alphas | ) | const |
Return the coefficient for models in which phase 1 is dispersed in.
phase 2
Definition at line 241 of file blendingMethod.C.
References f().
Foam::tmp< Foam::volScalarField > f2DispersedIn1 | ( | const UPtrList< const volScalarField > & | alphas | ) | const |
Return the coefficient for models in which phase 2 is dispersed in.
phase 1
Definition at line 250 of file blendingMethod.C.
References f().
Foam::tmp< Foam::volScalarField > fDisplaced | ( | const UPtrList< const volScalarField > & | alphas | ) | const |
Return the coefficient for when the interface is displaced by a.
third phase
Definition at line 259 of file blendingMethod.C.
References f().
|
protected |