38 #ifndef phaseInterface_H 39 #define phaseInterface_H 41 #include "phaseModel.H" 50 class phaseInterfaceKey;
96 const word& oldSeparator,
275 template<
class ModelType,
class Derived>
278 if (!isA<Derived>(*
this))
281 <<
"Constructing " << ModelType::typeName
282 <<
" for interface " <<
name()
283 <<
" which is not of the required type " 287 return refCast<const Derived>(*this);
tmp< fvMatrix< Type > > operator*(const volScalarField::Internal &, const fvMatrix< Type > &)
const uniformDimensionedVectorField & g() const
Return gravitational acceleration.
static autoPtr< phaseInterface > New(const phaseSystem &fluid, const word &name)
Select given fluid and name.
const fvMesh & mesh() const
Return the mesh.
const_iterator begin() const
const_iterator set to the beginning of the pair
errorManipArg< error, int > exit(error &err, const int errNo=1)
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
A 2-tuple for storing two objects of different types.
tmp< volScalarField > rho() const
Average density.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
phaseInterface(const phaseModel &phase1, const phaseModel &phase2)
Construct from phases.
Word-pair based class used for keying interface models in hash tables.
const_iterator cend() const
const_iterator set to beyond the end of the pair
static word nameToTypeName(const phaseSystem &fluid, const word &name)
Convert an interface name into a type name. Essentially just.
static word separator()
Return the separator that delimits this interface's name.
virtual word name() const
Name.
const phaseModel & phase1() const
Return phase 1.
static bool addOldSeparatorToSeparator(const word &oldSeparator, const word &separator)
Add a old separator to separator to the table.
autoPtr< phaseInterface > operator()(Istream &is) const
Class to represent an interface between phases. Derivations can further specify the configuration of ...
static bool addHeadSeparator(const word &separator)
Add a head separator to the list.
virtual autoPtr< phaseInterface > clone() const
Clone function.
declareRunTimeSelectionTable(autoPtr, phaseInterface, word,(const phaseSystem &fluid, const word &name),(fluid, name))
iNew(const phaseSystem &fluid)
Class used for construction of PtrLists of phaseInterfaces.
static wordList nameToNameParts(const phaseSystem &fluid, const word &name)
Split an interface name and return all its parts.
Class to represent a system of phases and model interfacial transfers between them.
static Tuple2< const phaseModel &, const phaseModel & > identifyPhases(const phaseSystem &fluid, const word &name, const wordList &separators)
Return references to the phases associated with a given name, and a.
tmp< fvMatrix< Type > > operator==(const fvMatrix< Type > &, const fvMatrix< Type > &)
A class for handling words, derived from string.
static const word null
An empty word.
An STL-conforming hash table.
static word namePartsToName(const phaseSystem &fluid, const wordList &nameParts)
Convert interface name parts to an interface name.
static word oldNamePartsToName(const phaseSystem &fluid, const wordList &oldNameParts)
Convert old-format interface name parts to an interface name. Used.
const phaseModel & phase2() const
Return phase 2.
tmp< volScalarField > magUr() const
Relative velocity magnitude.
const phaseSystem & fluid() const
Return the phase system.
bool contains(const phaseModel &phase) const
Return true if this phaseInterface contains the given phase.
Mesh data needed to do the Finite Volume discretisation.
const Derived & modelCast() const
Cast to derived type for use in a model.
label index(const phaseModel &phase) const
Return the index of the given phase. Generates a FatalError if.
Single incompressible phase derived from the phase-fraction. Used as part of the multiPhaseMixture fo...
phaseSystem::phaseModelList & phases
static const phaseModel & getPhase2(const phaseModel &phase1, const phaseModel &phase2)
Get a reference to phase2 after sorting the phases by index.
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
static word separatorsToTypeName(const wordList &separators)
Convert a list of separators into a type name.
tmp< volScalarField > sigma() const
Surface tension coefficient.
Macros to ease declaration of run-time selection tables.
const_iterator cbegin() const
const_iterator set to the beginning of the pair
A class for managing temporary objects.
bool operator!=(const particle &, const particle &)
virtual ~phaseInterface()
Destructor.
Single incompressible phase derived from the phase-fraction. Used as part of the multiPhaseMixture fo...
TypeName("phaseInterface")
Runtime type information.
const_iterator end() const
const_iterator set to beyond the end of the pair
const phaseModel & otherPhase(const phaseModel &phase) const
Return the other phase relative to the given phase.
static const phaseModel & getPhase1(const phaseModel &phase1, const phaseModel &phase2)
Get a reference to phase1 after sorting the phases by index.
static wordList nameToSeparators(const phaseSystem &fluid, const word &name)
Split an interface name and return its separators.