phaseSystem Class Referenceabstract

Class to represent a system of phases and model interfacial transfers between them. More...

Inheritance diagram for phaseSystem:
[legend]
Collaboration diagram for phaseSystem:
[legend]

Public Types

typedef HashTable< autoPtr< phasePair >, phasePairKey, phasePairKey::hashphasePairTable
 
typedef HashTable< autoPtr< phaseModel > > phaseModelTable
 
typedef HashTable< volScalarField::InternalSuSpTable
 
typedef HashPtrTable< fvVectorMatrixmomentumTransferTable
 
typedef HashPtrTable< fvScalarMatrixheatTransferTable
 
typedef HashPtrTable< fvScalarMatrixmassTransferTable
 
typedef PtrListDictionary< phaseModelphaseModelList
 
typedef UPtrList< phaseModelphaseModelPartialList
 
typedef HashTable< autoPtr< phasePair >, phasePairKey, phasePairKey::hashphasePairTable
 
- Public Types inherited from IOobject
enum  objectState : char { GOOD, BAD }
 Enumeration defining the valid states of an IOobject. More...
 
enum  readOption : char { MUST_READ, MUST_READ_IF_MODIFIED, READ_IF_PRESENT, NO_READ }
 Enumeration defining the read options. More...
 
enum  writeOption : char { AUTO_WRITE = 0, NO_WRITE = 1 }
 Enumeration defining the write options. More...
 
enum  fileCheckTypes : char { timeStamp, timeStampMaster, inotify, inotifyMaster }
 Enumeration defining the file checking options. More...
 
- Public Types inherited from dictionary
typedef Searcher< true > const_searcher
 Searcher with const access. More...
 
typedef Searcher< false > searcher
 Searcher with non-const access. More...
 

Public Member Functions

 TypeName ("phaseSystem")
 Runtime type information. More...
 
 phaseSystem (const fvMesh &mesh)
 Construct from fvMesh. More...
 
virtual ~phaseSystem ()
 Destructor. More...
 
virtual volScalarFieldhe ()
 Return access to the internal energy field [J/Kg]. More...
 
virtual const volScalarFieldhe () const
 Return access to the internal energy field [J/Kg]. More...
 
virtual tmp< volScalarFieldhe (const volScalarField &p, const volScalarField &T) const
 Enthalpy/Internal energy. More...
 
virtual tmp< scalarFieldhe (const scalarField &p, const scalarField &T, const labelList &cells) const
 Enthalpy/Internal energy for cell-set [J/kg]. More...
 
virtual tmp< scalarFieldhe (const scalarField &p, const scalarField &T, const label patchi) const
 Enthalpy/Internal energy for patch [J/kg]. More...
 
virtual tmp< volScalarFieldhc () const
 Chemical enthalpy of the mixture [J/kg]. More...
 
virtual tmp< scalarFieldTHE (const scalarField &h, const scalarField &p, const scalarField &T0, const labelList &cells) const
 Temperature from enthalpy/internal energy for cell-set. More...
 
virtual tmp< scalarFieldTHE (const scalarField &h, const scalarField &p, const scalarField &T0, const label patchi) const
 Temperature from enthalpy/internal energy for patch. More...
 
virtual tmp< volScalarFieldrho () const
 Return the mixture density. More...
 
virtual tmp< scalarFieldrho (const label patchi) const
 Return the mixture density on a patch. More...
 
virtual tmp< volScalarFieldCp () const
 Return Cp of the mixture. More...
 
virtual tmp< scalarFieldCp (const scalarField &p, const scalarField &T, const label patchi) const
 Heat capacity at constant pressure for patch [J/kg/K]. More...
 
virtual tmp< volScalarFieldCv () const
 Return Cv of the mixture. More...
 
virtual tmp< scalarFieldCv (const scalarField &p, const scalarField &T, const label patchI) const
 Heat capacity at constant volume for patch [J/kg/K]. More...
 
virtual tmp< volScalarFieldgamma () const
 Gamma = Cp/Cv []. More...
 
virtual tmp< scalarFieldgamma (const scalarField &p, const scalarField &T, const label patchi) const
 Gamma = Cp/Cv for patch []. More...
 
virtual tmp< volScalarFieldCpv () const
 Heat capacity at constant pressure/volume [J/kg/K]. More...
 
virtual tmp< scalarFieldCpv (const scalarField &p, const scalarField &T, const label patchi) const
 Heat capacity at constant pressure/volume for patch [J/kg/K]. More...
 
virtual tmp< volScalarFieldCpByCpv () const
 Heat capacity ratio []. More...
 
virtual tmp< scalarFieldCpByCpv (const scalarField &p, const scalarField &T, const label patchi) const
 Heat capacity ratio for patch []. More...
 
virtual tmp< volScalarFieldW () const
 Molecular weight [kg/kmol] of the mixture. More...
 
virtual tmp< volScalarFieldkappa () const
 Thermal diffusivity for temperature of mixture [J/m/s/K]. More...
 
virtual tmp< scalarFieldkappa (const label patchi) const
 Thermal diffusivity for temperature. More...
 
virtual tmp< volScalarFieldalphahe () const
 Thermal diffusivity for energy of mixture [kg/m/s]. More...
 
virtual tmp< scalarFieldalphahe (const label patchi) const
 Thermal diffusivity for energy of mixture for patch [kg/m/s]. More...
 
virtual tmp< volScalarFieldkappaEff (const volScalarField &kappat) const
 Effective thermal diffusivity for temperature. More...
 
virtual tmp< scalarFieldkappaEff (const scalarField &alphat, const label patchi) const
 Effective thermal diffusivity for temperature. More...
 
virtual tmp< volScalarFieldalphaEff (const volScalarField &alphat) const
 Effective thermal diffusivity of mixture [kg/m/s]. More...
 
virtual tmp< scalarFieldalphaEff (const scalarField &alphat, const label patchi) const
 Effective thermal diffusivity of mixture for patch [kg/m/s]. More...
 
const dimensionedScalarPrt () const
 Return Prandt number. More...
 
virtual tmp< volScalarFieldmu () const
 Dynamic viscosity of mixture [kg/m/s]. More...
 
virtual tmp< scalarFieldmu (const label patchi) const
 Dynamic viscosity of mixture for patch [kg/m/s]. More...
 
virtual tmp< volScalarFieldnu () const
 Kinematic viscosity of mixture [m^2/s]. More...
 
virtual tmp< scalarFieldnu (const label patchi) const
 Kinematic viscosity of mixture for patch [m^2/s]. More...
 
const surfaceScalarFieldphi () const
 Constant access to the total flux. More...
 
surfaceScalarFieldphi ()
 Access to the total mixture flux. More...
 
const surfaceScalarFieldrhoPhi () const
 Constant access to the mixture mass flux. More...
 
surfaceScalarFieldrhoPhi ()
 Access to the total mixture mass flux. More...
 
tmp< volVectorFieldU () const
 Mixture U. More...
 
tmp< surfaceScalarFieldsurfaceTensionForce () const
 Calculate surface tension of the mixture. More...
 
virtual tmp< volScalarFieldsurfaceTensionCoeff (const phasePairKey &key) const
 Return the surface tension coefficient. More...
 
virtual tmp< volScalarFieldcoeffs (const word &key) const
 Return coefficients (1/rho) More...
 
void addInterfacePorosity (fvVectorMatrix &UEqn)
 Add interface porosity on phasePair. More...
 
virtual tmp< volScalarFielddmdt (const phasePairKey &key) const =0
 Return interfacial source mass rate per phase pair. More...
 
virtual tmp< fvScalarMatrixheatTransfer (const volScalarField &T)=0
 Return the heat transfer matrices. More...
 
virtual tmp< fvScalarMatrixvolTransfer (const volScalarField &p)=0
 Return the volumetric rate transfer matrix. More...
 
virtual void alphaTransfer (SuSpTable &Su, SuSpTable &Sp)=0
 Calculate mass transfer for alpha's. More...
 
virtual void massSpeciesTransfer (const phaseModel &phase, volScalarField::Internal &Su, volScalarField::Internal &Sp, const word speciesName)=0
 Calculate mass transfer for species. More...
 
virtual bool includeVolChange ()=0
 Add volume change in pEq. More...
 
virtual void solve ()=0
 Solve for the phase transport equations. More...
 
virtual void correct ()
 Correct the mixture thermos. More...
 
virtual void correctMassSources (const volScalarField &T)=0
 Correct mass sources. More...
 
virtual word thermoName () const
 Return the name of the thermo physics. More...
 
virtual void correctTurbulence ()
 Correct the turbulence. More...
 
virtual bool read ()
 Read base phaseProperties dictionary. More...
 
const phasePairTabletotalPhasePairs () const
 Constant access the total phase pairs. More...
 
phasePairTabletotalPhasePairs ()
 Non-constant access the total phase pairs. More...
 
const phaseModelTablephases () const
 Constant access the phases. More...
 
phaseModelTablephases ()
 Access the phases. More...
 
template<class modelType >
const modelType & lookupSubModel (const phasePair &key) const
 Access a sub model between a phase pair. More...
 
template<class modelType >
const modelType & lookupSubModel (const phaseModel &from, const phaseModel &to) const
 Access a sub model between two phases. More...
 
virtual bool incompressible () const
 Return true if the equation of state is incompressible for all. More...
 
virtual bool incompressible (const word) const
 Return true if a phase is incompressible. More...
 
virtual bool isochoric () const
 Return true if the equation of state is isochoric for all phasses. More...
 
const fvMeshmesh () const
 Return mesh. More...
 
tmp< surfaceVectorFieldnHatfv (const volScalarField &alpha1, const volScalarField &alpha2) const
 Interface normal surface vector. More...
 
tmp< surfaceScalarFieldnHatf (const volScalarField &alpha1, const volScalarField &alpha2) const
 Interface normal volume vector. More...
 
tmp< volScalarFieldK (const volScalarField &alpha1, const volScalarField &alpha2) const
 Interface curvature. More...
 
tmp< volScalarFieldnearInterface (const volScalarField &alpha1, const volScalarField &alpha2) const
 Near Interface of alpha1 and alpha2. More...
 
tmp< volScalarFieldnearInterface () const
 Near Interface of alpha'n. More...
 
 TypeName ("phaseSystem")
 Runtime type information. More...
 
 phaseSystem (const fvMesh &mesh)
 Construct from fvMesh. More...
 
virtual ~phaseSystem ()
 Destructor. More...
 
const fvMeshmesh () const
 Return the mesh. More...
 
const phaseModelListphases () const
 Return the phase models. More...
 
phaseModelListphases ()
 Access the phase models. More...
 
const phaseModelPartialListmovingPhases () const
 Return the models for phases that are moving. More...
 
phaseModelPartialListmovingPhases ()
 Access the models for phases that are moving. More...
 
const phaseModelPartialListstationaryPhases () const
 Return the models for phases that are stationary. More...
 
phaseModelPartialListstationaryPhases ()
 Access the models for phases that are stationary. More...
 
const phaseModelPartialListanisothermalPhases () const
 Return the models for phases that have variable temperature. More...
 
phaseModelPartialListanisothermalPhases ()
 Access the models for phases that have variable temperature. More...
 
const phaseModelPartialListmultiComponentPhases () const
 Return the models for phases that have multiple species. More...
 
phaseModelPartialListmultiComponentPhases ()
 Access the models for phases that have multiple species. More...
 
const phasePairTablephasePairs () const
 Return the phase pairs. More...
 
const surfaceScalarFieldphi () const
 Return the mixture flux. More...
 
surfaceScalarFieldphi ()
 Access the mixture flux. More...
 
const volScalarFielddpdt () const
 Return the rate of change of the pressure. More...
 
volScalarFielddpdt ()
 Access the rate of change of the pressure. More...
 
const IOMRFZoneListMRF () const
 Return MRF zones. More...
 
fv::optionsfvOptions () const
 Access the fvOptions. More...
 
template<class modelType >
bool foundSubModel (const phasePair &key) const
 Check availability of a sub model for a given phase pair. More...
 
template<class modelType >
const modelType & lookupSubModel (const phasePair &key) const
 Return a sub model between a phase pair. More...
 
template<class modelType >
bool foundSubModel (const phaseModel &dispersed, const phaseModel &continuous) const
 Check availability of a sub model between two phases. More...
 
template<class modelType >
const modelType & lookupSubModel (const phaseModel &dispersed, const phaseModel &continuous) const
 Return a sub model between two phases. More...
 
template<class modelType >
bool foundBlendedSubModel (const phasePair &key) const
 Check availability of a blended sub model for a given phase pair. More...
 
template<class modelType >
const BlendedInterfacialModel< modelType > & lookupBlendedSubModel (const phasePair &key) const
 Return a blended sub model between a phase pair. More...
 
template<class Type , template< class > class PatchField, class GeoMesh >
void fillFields (const word &name, const dimensionSet &dims, PtrList< GeometricField< Type, PatchField, GeoMesh >> &fieldList) const
 Fill up gaps in a phase-indexed list of fields with zeros. More...
 
template<class Type , template< class > class PatchField, class GeoMesh >
void fillFields (const word &name, const dimensionSet &dims, HashPtrTable< GeometricField< Type, PatchField, GeoMesh >> &fieldTable) const
 Fill up gaps in a phase-indexed table of fields with zeros. More...
 
tmp< volScalarFieldrho () const
 Return the mixture density. More...
 
tmp< volVectorFieldU () const
 Return the mixture velocity. More...
 
tmp< volScalarFieldE (const phasePairKey &key) const
 Return the aspect-ratio for a pair. More...
 
tmp< volScalarFieldsigma (const phasePairKey &key) const
 Return the surface tension coefficient for a pair. More...
 
virtual tmp< volScalarFielddmdt (const phasePairKey &key) const
 Return the mass transfer rate for a pair. More...
 
virtual PtrList< volScalarFielddmdts () const
 Return the mass transfer rates for each phase. More...
 
virtual autoPtr< momentumTransferTablemomentumTransfer ()=0
 Return the momentum transfer matrices for the cell-based. More...
 
virtual autoPtr< momentumTransferTablemomentumTransferf ()=0
 Return the momentum transfer matrices for the face-based. More...
 
virtual PtrList< surfaceScalarFieldAFfs () const =0
 Return the implicit force coefficients for the face-based. More...
 
virtual PtrList< surfaceScalarFieldphiFs (const PtrList< volScalarField > &rAUs)=0
 Return the force fluxes for the cell-based algorithm. More...
 
virtual PtrList< surfaceScalarFieldphiFfs (const PtrList< surfaceScalarField > &rAUfs)=0
 Return the force fluxes for the face-based algorithm. More...
 
virtual PtrList< surfaceScalarFieldphiKdPhis (const PtrList< volScalarField > &rAUs) const =0
 Return the force fluxes for the cell-based algorithm. More...
 
virtual PtrList< surfaceScalarFieldphiKdPhifs (const PtrList< surfaceScalarField > &rAUfs) const =0
 Return the force fluxes for the face-based algorithm. More...
 
virtual PtrList< volVectorFieldKdUByAs (const PtrList< volScalarField > &rAUs) const =0
 Return the explicit part of the drag force. More...
 
virtual void partialElimination (const PtrList< volScalarField > &rAUs)=0
 Solve the drag system for the new velocities and fluxes. More...
 
virtual void partialEliminationf (const PtrList< surfaceScalarField > &rAUfs)=0
 Solve the drag system for the new fluxes. More...
 
virtual PtrList< surfaceScalarFieldddtCorrByAs (const PtrList< volScalarField > &rAUs, const bool includeVirtualMass=false) const =0
 Return the flux corrections for the cell-based algorithm. More...
 
virtual const HashPtrTable< surfaceScalarField > & DByAfs () const =0
 Return the phase diffusivities divided by the momentum. More...
 
virtual autoPtr< heatTransferTableheatTransfer () const =0
 Return the heat transfer matrices. More...
 
virtual autoPtr< massTransferTablemassTransfer () const =0
 Return the mass transfer matrices. More...
 
virtual void solve ()
 Solve for the phase fractions. More...
 
virtual void correct ()
 Correct the fluid properties other than those listed below. More...
 
virtual void correctKinematics ()
 Correct the kinematics. More...
 
virtual void correctThermo ()
 Correct the thermodynamics. More...
 
virtual void correctTurbulence ()
 Correct the turbulence. More...
 
virtual void correctEnergyTransport ()
 Correct the energy transport e.g. alphat. More...
 
virtual bool read ()
 Read base phaseProperties dictionary. More...
 
template<class modelType >
const Foam::BlendedInterfacialModel< modelType > & lookupBlendedSubModel (const phasePair &key) const
 
- Public Member Functions inherited from basicThermo
 TypeName ("basicThermo")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, basicThermo, fvMesh,(const fvMesh &mesh, const word &phaseName),(mesh, phaseName))
 Declare run-time constructor selection table. More...
 
 declareRunTimeSelectionTable (autoPtr, basicThermo, fvMeshDictPhase,(const fvMesh &mesh, const word &phaseName, const word &dictName),(mesh, phaseName, dictName))
 Declare run-time constructor selection table for dictionary based. More...
 
 basicThermo (const fvMesh &, const word &phaseName)
 Construct from mesh and phase name. More...
 
 basicThermo (const fvMesh &, const dictionary &, const word &phaseName)
 Construct from mesh, dictionary and phase name. More...
 
 basicThermo (const fvMesh &, const word &phaseName, const word &dictionaryName)
 Construct from mesh, phase name and explicit naming of the. More...
 
virtual ~basicThermo ()
 Destructor. More...
 
word phasePropertyName (const word &name) const
 
void validate (const string &app, const word &) const
 Check that the thermodynamics package is consistent. More...
 
void validate (const string &app, const word &, const word &) const
 Check that the thermodynamics package is consistent. More...
 
void validate (const string &app, const word &, const word &, const word &) const
 Check that the thermodynamics package is consistent. More...
 
void validate (const string &app, const word &, const word &, const word &, const word &) const
 Check that the thermodynamics package is consistent. More...
 
Switch dpdt () const
 Should the dpdt term be included in the enthalpy equation. More...
 
Switch updateT () const
 Should T be updated. More...
 
virtual volScalarFieldp ()
 Pressure [Pa]. More...
 
virtual const volScalarFieldp () const
 Pressure [Pa]. More...
 
virtual const volScalarFieldT () const
 Temperature [K]. More...
 
virtual volScalarFieldT ()
 Temperature [K]. More...
 
virtual const volScalarFieldalpha () const
 Thermal diffusivity for enthalpy of mixture [kg/m/s]. More...
 
virtual const scalarFieldalpha (const label patchi) const
 Thermal diffusivity for enthalpy of mixture for patch [kg/m/s]. More...
 
template<class Thermo >
Foam::autoPtr< Thermo > New (const fvMesh &mesh, const word &phaseName)
 
template<class Thermo >
Foam::autoPtr< Thermo > New (const fvMesh &mesh, const dictionary &dict, const word &phaseName)
 
template<class Thermo >
Foam::autoPtr< Thermo > New (const fvMesh &mesh, const word &phaseName, const word &dictName)
 
- Public Member Functions inherited from IOdictionary
 IOdictionary (const IOobject &)
 Construct given an IOobject. More...
 
 IOdictionary (const IOobject &, const dictionary &)
 Construct given an IOobject and dictionary. More...
 
 IOdictionary (const IOobject &, Istream &)
 Construct given an IOobject and Istream. More...
 
virtual ~IOdictionary ()
 Destructor. More...
 
virtual bool global () const
 Is object global. More...
 
virtual fileName filePath () const
 Return complete path + object name if the file exists. More...
 
- Public Member Functions inherited from baseIOdictionary
 TypeName ("dictionary")
 Declare type-name, virtual type (with debug switch) More...
 
 baseIOdictionary (const baseIOdictionary &)=default
 Copy construct. More...
 
 baseIOdictionary (baseIOdictionary &&)=default
 Move construct. More...
 
virtual ~baseIOdictionary ()=default
 Destructor. More...
 
 baseIOdictionary (const IOobject &)
 Construct given an IOobject. More...
 
 baseIOdictionary (const IOobject &, const dictionary &)
 Construct given an IOobject and dictionary. More...
 
 baseIOdictionary (const IOobject &, Istream &)
 Construct given an IOobject and Istream. More...
 
const wordname () const
 
virtual bool readData (Istream &)
 The readData function required by regIOobject read operation. More...
 
virtual bool writeData (Ostream &) const
 The writeData function required by regIOobject write operation. More...
 
void operator= (const baseIOdictionary &)
 Copy assignment of dictionary entries (leave regIOobject untouched) More...
 
void operator= (const dictionary &rhs)
 Copy assignment of dictionary entries. More...
 
- Public Member Functions inherited from regIOobject
 TypeName ("regIOobject")
 Runtime type information. More...
 
 regIOobject (const IOobject &io, const bool isTime=false)
 
 regIOobject (const regIOobject &rio)
 Copy construct. More...
 
 regIOobject (const regIOobject &rio, bool registerCopy)
 
 regIOobject (const word &newName, const regIOobject &, bool registerCopy)
 
 regIOobject (const IOobject &io, const regIOobject &rio)
 Copy construct with new IO parameters. More...
 
virtual ~regIOobject ()
 Destructor. More...
 
bool checkIn ()
 Add object to registry, if not already registered. More...
 
bool checkOut ()
 Remove all file watches and remove object from registry. More...
 
virtual void addWatch ()
 Add file watch on object (if registered and READ_IF_MODIFIED) More...
 
bool ownedByRegistry () const
 Is this object owned by the registry? More...
 
bool store ()
 
void release (const bool unregister=false)
 Release ownership of this object from its registry. More...
 
label eventNo () const
 Event number at last update. More...
 
label & eventNo ()
 Event number at last update. More...
 
bool upToDate (const regIOobject &) const
 Return true if up-to-date with respect to given object. More...
 
bool upToDate (const regIOobject &, const regIOobject &) const
 Return true if up-to-date with respect to given objects. More...
 
bool upToDate (const regIOobject &, const regIOobject &, const regIOobject &) const
 Return true if up-to-date with respect to given objects. More...
 
bool upToDate (const regIOobject &, const regIOobject &, const regIOobject &, const regIOobject &) const
 Return true if up-to-date with respect to given objects. More...
 
void setUpToDate ()
 Set as up-to-date. More...
 
virtual void rename (const word &newName)
 Rename. More...
 
bool headerOk ()
 Read and check header info. More...
 
IstreamreadStream (const word &, const bool valid=true)
 Return Istream and check object type against that given. More...
 
void close ()
 Close Istream. More...
 
virtual label addWatch (const fileName &)
 Add file watch for fileName on object if not yet watched. More...
 
const labelListwatchIndices () const
 Return file-monitoring handles. More...
 
labelListwatchIndices ()
 Return file-monitoring handles. More...
 
virtual bool modified () const
 
virtual bool readIfModified ()
 Read object if modified (as set by call to modified) More...
 
virtual bool writeObject (IOstreamOption streamOpt, const bool valid) const
 Write using stream options. More...
 
virtual bool write (const bool valid=true) const
 Write using setting from DB. More...
 
void operator= (const IOobject &io)
 Copy assignment. More...
 
virtual bool writeObject (IOstream::streamFormat fmt, IOstream::versionNumber ver, IOstream::compressionType comp, const bool valid) const
 Write using given format, version and compression. More...
 
- Public Member Functions inherited from IOobject
 TypeName ("IOobject")
 Declare type-name, virtual type (with debug switch) More...
 
 IOobject (const IOobject &)=default
 Copy construct. More...
 
virtual ~IOobject ()=default
 Destructor. More...
 
 IOobject (const word &name, const fileName &instance, const objectRegistry &registry, readOption r=NO_READ, writeOption w=NO_WRITE, bool registerObject=true)
 Construct from name, instance, registry, io options. More...
 
 IOobject (const word &name, const fileName &instance, const fileName &local, const objectRegistry &registry, readOption r=NO_READ, writeOption w=NO_WRITE, bool registerObject=true, bool globalObject=false)
 Construct from name, instance, local, registry, io options. More...
 
 IOobject (const fileName &path, const objectRegistry &registry, readOption r=NO_READ, writeOption w=NO_WRITE, bool registerObject=true, bool globalObject=false)
 Construct from path, registry, io options. More...
 
 IOobject (const IOobject &io, const objectRegistry &registry)
 Copy construct, resetting registry. More...
 
 IOobject (const IOobject &io, const word &name)
 Copy construct, resetting name. More...
 
 IOobject (const IOobject &io, readOption, writeOption)
 Copy construct, resetting io options. More...
 
autoPtr< IOobjectclone () const
 Clone. More...
 
autoPtr< IOobjectclone (const objectRegistry &registry) const
 Clone resetting registry. More...
 
const objectRegistrydb () const
 Return the local objectRegistry. More...
 
const Timetime () const
 Return time. More...
 
const wordname () const
 Return name. More...
 
const wordheaderClassName () const
 Return name of the class name read from header. More...
 
wordheaderClassName ()
 Return non-constant access to the class name read from header. More...
 
const stringnote () const
 Return the optional note. More...
 
stringnote ()
 Return non-constant access to the optional note. More...
 
bool registerObject () const
 Should object created with this IOobject be registered? More...
 
boolregisterObject ()
 Should object created with this IOobject be registered? More...
 
bool globalObject () const
 Is object same for all processors? More...
 
boolglobalObject ()
 Is object same for all processors? More...
 
unsigned labelByteSize () const
 The label byte-size, possibly read from the header. More...
 
unsigned scalarByteSize () const
 The scalar byte-size, possibly read from the header. More...
 
bool isHeaderClassName (const word &clsName) const
 Test if headerClassName() equals the given class name. More...
 
template<class Type >
bool isHeaderClassName () const
 Test if headerClassName() equals Type::typeName. More...
 
readOption readOpt () const
 The read option. More...
 
readOptionreadOpt ()
 Non-constant access to the read option. More...
 
writeOption writeOpt () const
 The write option. More...
 
writeOptionwriteOpt ()
 Non-constant access to the write option. More...
 
word group () const
 Return group (extension part of name) More...
 
word member () const
 Return member (name without the extension) More...
 
const fileNamerootPath () const
 
const fileNamecaseName () const
 
const fileNameinstance () const
 
fileNameinstance ()
 
const fileNamelocal () const
 
fileName path () const
 The complete path. More...
 
fileName path (const word &instance, const fileName &local=fileName::null) const
 The complete path with alternative instance and local. More...
 
fileName objectPath () const
 The complete path + object name. More...
 
fileName localFilePath (const word &typeName, const bool search=true) const
 Helper for filePath that searches locally. More...
 
fileName globalFilePath (const word &typeName, const bool search=true) const
 Helper for filePath that searches up if in parallel. More...
 
bool readHeader (Istream &is)
 Read header. More...
 
template<class Type >
bool typeHeaderOk (const bool checkType=true, const bool search=true, const bool verbose=true)
 Read header (uses typeFilePath to find file) and check its info. More...
 
template<class Type >
void warnNoRereading () const
 Helper: warn that type does not support re-reading. More...
 
bool writeHeader (Ostream &os) const
 Write header. More...
 
bool writeHeader (Ostream &os, const word &objectType) const
 Write header. Allow override of type. More...
 
bool good () const
 
bool bad () const
 
InfoProxy< IOobjectinfo () const
 Return info proxy. More...
 
void operator= (const IOobject &io)
 
template<>
bool isHeaderClassName () const
 Specialization for void always returns true (no headerClassName check). More...
 
template<class StringType >
Foam::word groupName (StringType base, const word &group)
 
template<class StringType >
Foam::word scopedName (StringType scope, const word &name)
 
- Public Member Functions inherited from dictionary
 ClassName ("dictionary")
 
 dictionary ()
 Default construct, a top-level empty dictionary. More...
 
 dictionary (const fileName &name)
 Construct top-level empty dictionary with given name. More...
 
 dictionary (const fileName &name, const dictionary &parentDict, Istream &is, bool keepHeader=false)
 
 dictionary (Istream &is)
 
 dictionary (Istream &is, bool keepHeader)
 
 dictionary (const dictionary &parentDict, const dictionary &dict)
 Copy construct given the parent dictionary. More...
 
 dictionary (const dictionary &dict)
 Copy construct top-level dictionary. More...
 
 dictionary (const dictionary *dict)
 Construct top-level dictionary as copy from pointer to dictionary. More...
 
 dictionary (const dictionary &parentDict, dictionary &&dict)
 Move construct for given parent dictionary. More...
 
 dictionary (dictionary &&dict)
 Move construct top-level dictionary. More...
 
autoPtr< dictionaryclone () const
 Construct and return clone. More...
 
virtual ~dictionary ()
 Destructor. More...
 
const fileNamename () const
 The dictionary name. More...
 
fileNamename ()
 The dictionary name for modification (use with caution). More...
 
word dictName () const
 The local dictionary name (final part of scoped name) More...
 
const dictionaryparent () const
 Return the parent dictionary. More...
 
const dictionarytopDict () const
 Return the top of the tree. More...
 
label startLineNumber () const
 Return line number of first token in dictionary. More...
 
label endLineNumber () const
 Return line number of last token in dictionary. More...
 
SHA1Digest digest () const
 Return the SHA1 digest of the dictionary contents. More...
 
tokenList tokens () const
 Return the dictionary as a list of tokens. More...
 
bool found (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
 Search for an entry (const access) with the given keyword. More...
 
entryfindEntry (const word &keyword, enum keyType::option matchOpt=keyType::REGEX)
 Find for an entry (non-const access) with the given keyword. More...
 
const entryfindEntry (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
 Find an entry (const access) with the given keyword. More...
 
const entryfindScoped (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
 Search for a scoped entry (const access) with the given keyword. More...
 
dictionaryfindDict (const word &keyword, enum keyType::option matchOpt=keyType::REGEX)
 Find and return a sub-dictionary pointer if present. More...
 
const dictionaryfindDict (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
 Find and return a sub-dictionary pointer if present. More...
 
const entrylookupEntry (const word &keyword, enum keyType::option matchOpt) const
 Search for an entry (const access) with the given keyword. More...
 
ITstreamlookup (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
 
template<class T >
T get (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
 
template<class T >
T getOrDefault (const word &keyword, const T &deflt, enum keyType::option matchOpt=keyType::REGEX) const
 
template<class T >
T getOrAdd (const word &keyword, const T &deflt, enum keyType::option matchOpt=keyType::REGEX)
 
template<class T >
bool readEntry (const word &keyword, T &val, enum keyType::option matchOpt=keyType::REGEX, bool mandatory=true) const
 
template<class T >
bool readIfPresent (const word &keyword, T &val, enum keyType::option matchOpt=keyType::REGEX) const
 
template<class T , class Predicate >
T getCheck (const word &keyword, const Predicate &pred, enum keyType::option matchOpt=keyType::REGEX) const
 
template<class T , class Predicate >
T getCheckOrDefault (const word &keyword, const T &deflt, const Predicate &pred, enum keyType::option matchOpt=keyType::REGEX) const
 
template<class T , class Predicate >
T getCheckOrAdd (const word &keyword, const T &deflt, const Predicate &pred, enum keyType::option matchOpt=keyType::REGEX)
 
template<class T , class Predicate >
bool readCheck (const word &keyword, T &val, const Predicate &pred, enum keyType::option matchOpt=keyType::REGEX, bool mandatory=true) const
 
template<class T , class Predicate >
bool readCheckIfPresent (const word &keyword, T &val, const Predicate &pred, enum keyType::option matchOpt=keyType::REGEX) const
 
bool isDict (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
 Check if entry is found and is a sub-dictionary. More...
 
const dictionarysubDict (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
 Find and return a sub-dictionary. More...
 
dictionarysubDict (const word &keyword, enum keyType::option matchOpt=keyType::REGEX)
 Find and return a sub-dictionary for manipulation. More...
 
dictionarysubDictOrAdd (const word &keyword, enum keyType::option matchOpt=keyType::REGEX)
 Find and return a sub-dictionary for manipulation. More...
 
dictionary subOrEmptyDict (const word &keyword, enum keyType::option matchOpt=keyType::REGEX, const bool mandatory=false) const
 
const dictionaryoptionalSubDict (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
 Find and return a sub-dictionary, otherwise return this dictionary. More...
 
wordList toc () const
 Return the table of contents. More...
 
wordList sortedToc () const
 Return the sorted table of contents. More...
 
template<class Compare >
wordList sortedToc (const Compare &comp) const
 Return table of contents sorted using the specified comparator. More...
 
List< keyTypekeys (bool patterns=false) const
 Return the list of available keys or patterns. More...
 
bool substituteKeyword (const word &keyword, bool mergeEntry=false)
 Substitute the given keyword (which is prefixed by '$') More...
 
bool substituteScopedKeyword (const word &keyword, bool mergeEntry=false)
 Substitute the given scoped keyword (which is prefixed by '$') More...
 
entryadd (entry *entryPtr, bool mergeEntry=false)
 Add a new entry. More...
 
entryadd (const entry &e, bool mergeEntry=false)
 Add an entry. More...
 
entryadd (const keyType &k, const word &v, bool overwrite=false)
 Add a word entry. More...
 
entryadd (const keyType &k, const string &v, bool overwrite=false)
 Add a string entry. More...
 
entryadd (const keyType &k, const label v, bool overwrite=false)
 Add a label entry. More...
 
entryadd (const keyType &k, const scalar v, bool overwrite=false)
 Add a scalar entry. More...
 
entryadd (const keyType &k, const dictionary &d, bool mergeEntry=false)
 Add a dictionary entry. More...
 
template<class T >
entryadd (const keyType &k, const T &v, bool overwrite=false)
 Add a T entry. More...
 
entryset (entry *entryPtr)
 Assign a new entry, overwriting any existing entry. More...
 
entryset (const entry &e)
 Assign a new entry, overwriting any existing entry. More...
 
entryset (const keyType &k, const dictionary &v)
 Assign a dictionary entry, overwriting any existing entry. More...
 
template<class T >
entryset (const keyType &k, const T &v)
 Assign a T entry, overwriting any existing entry. More...
 
bool remove (const word &keyword)
 Remove an entry specified by keyword. More...
 
bool changeKeyword (const keyType &oldKeyword, const keyType &newKeyword, bool overwrite=false)
 Change the keyword for an entry,. More...
 
bool merge (const dictionary &dict)
 Merge entries from the given dictionary. More...
 
void clear ()
 Clear the dictionary. More...
 
void transfer (dictionary &dict)
 Transfer the contents of the argument and annul the argument. More...
 
void checkITstream (const ITstream &is, const word &keyword) const
 
bool read (Istream &is)
 Read dictionary from Istream. More...
 
bool read (Istream &is, bool keepHeader)
 Read dictionary from Istream, optionally keeping the header. More...
 
void writeEntry (Ostream &os) const
 Write sub-dictionary with its dictName as its header. More...
 
void writeEntry (const keyType &keyword, Ostream &os) const
 Write sub-dictionary with the keyword as its header. More...
 
void writeEntries (Ostream &os, const bool extraNewLine=false) const
 Write dictionary entries. More...
 
void write (Ostream &os, const bool subDict=true) const
 Write dictionary, normally with sub-dictionary formatting. More...
 
const_searcher csearch (const word &keyword, enum keyType::option=keyType::REGEX) const
 Search dictionary for given keyword. More...
 
const_searcher search (const word &keyword, enum keyType::option=keyType::REGEX) const
 Search dictionary for given keyword. More...
 
searcher search (const word &keyword, enum keyType::option=keyType::REGEX)
 Search dictionary for given keyword. More...
 
const_searcher csearchScoped (const word &keyword, enum keyType::option) const
 Search using scoping. More...
 
const_searcher searchScoped (const word &keyword, enum keyType::option) const
 Search using dot or slash scoping. More...
 
searcher searchScoped (const word &keyword, enum keyType::option)
 Search using dot or slash scoping. More...
 
const dictionarycfindScopedDict (const fileName &dictPath) const
 Locate a sub-dictionary using slash-scoping. More...
 
const dictionaryfindScopedDict (const fileName &dictPath) const
 Locate a sub-dictionary using slash-scoping. More...
 
dictionaryfindScopedDict (const fileName &dictPath)
 Locate a sub-dictionary using slash-scoping. More...
 
dictionarymakeScopedDict (const fileName &dictPath)
 Locate existing or create sub-dictionary using slash-scoping. More...
 
const_searcher csearchCompat (const word &keyword, std::initializer_list< std::pair< const char *, int >> compat, enum keyType::option=keyType::REGEX) const
 Search dictionary for given keyword and any compatibility names. More...
 
bool foundCompat (const word &keyword, std::initializer_list< std::pair< const char *, int >> compat, enum keyType::option=keyType::REGEX) const
 Search dictionary for given keyword and any compatibility names. More...
 
const entryfindCompat (const word &keyword, std::initializer_list< std::pair< const char *, int >> compat, enum keyType::option) const
 
const entrylookupEntryCompat (const word &keyword, std::initializer_list< std::pair< const char *, int >> compat, enum keyType::option) const
 
ITstreamlookupCompat (const word &keyword, std::initializer_list< std::pair< const char *, int >> compat, enum keyType::option=keyType::REGEX) const
 
template<class T >
T getCompat (const word &keyword, std::initializer_list< std::pair< const char *, int >> compat, enum keyType::option=keyType::REGEX) const
 
template<class T >
T getOrDefaultCompat (const word &keyword, std::initializer_list< std::pair< const char *, int >> compat, const T &deflt, enum keyType::option=keyType::REGEX) const
 
template<class T >
bool readCompat (const word &keyword, std::initializer_list< std::pair< const char *, int >> compat, T &val, enum keyType::option=keyType::REGEX, bool mandatory=true) const
 
template<class T >
bool readIfPresentCompat (const word &keyword, std::initializer_list< std::pair< const char *, int >> compat, T &val, enum keyType::option=keyType::REGEX) const
 
void operator= (const dictionary &rhs)
 Copy assignment. More...
 
void operator+= (const dictionary &rhs)
 Include entries from the given dictionary. More...
 
void operator|= (const dictionary &rhs)
 Conditionally include entries from the given dictionary. More...
 
void operator<<= (const dictionary &rhs)
 Unconditionally include entries from the given dictionary. More...
 
template<class T >
T lookupOrDefault (const word &keyword, const T &deflt, enum keyType::option matchOpt=keyType::REGEX) const
 
template<class T >
T lookupOrAddDefault (const word &keyword, const T &deflt, enum keyType::option matchOpt=keyType::REGEX)
 
template<class T >
T lookupOrDefaultCompat (const word &keyword, std::initializer_list< std::pair< const char *, int >> compat, const T &deflt, enum keyType::option matchOpt=keyType::REGEX) const
 
ITstreamoperator[] (const word &keyword) const
 Deprecated(2018-07) find and return an entry data stream. More...
 
bool found (const word &keyword, bool recursive, bool patternMatch=true) const
 Deprecated(2018-10) More...
 
entrylookupEntryPtr (const word &keyword, bool recursive, bool patternMatch)
 Deprecated(2018-10) More...
 
const entrylookupEntryPtr (const word &keyword, bool recursive, bool patternMatch) const
 Deprecated(2018-10) More...
 
const entrylookupScopedEntryPtr (const word &keyword, bool recursive, bool patternMatch) const
 Deprecated(2018-10) More...
 
const dictionarysubDictPtr (const word &keyword) const
 Deprecated(2018-10) More...
 
dictionarysubDictPtr (const word &keyword)
 
const entrylookupEntry (const word &keyword, bool recursive, bool patternMatch) const
 Deprecated(2018-10) More...
 
ITstreamlookup (const word &keyword, bool recursive, bool patternMatch=true) const
 Deprecated(2018-10) More...
 
template<class T >
T lookupOrDefault (const word &keyword, const T &deflt, bool recursive, bool patternMatch=true) const
 Deprecated(2018-10) More...
 
template<class T >
T lookupOrAddDefault (const word &keyword, const T &deflt, bool recursive, bool patternMatch=true)
 Deprecated(2018-10) More...
 
template<class T >
bool readIfPresent (const word &keyword, T &val, bool recursive, bool patternMatch=true) const
 Deprecated(2018-10) More...
 
template<class T >
T lookupType (const word &keyword, bool recursive=false, bool patternMatch=true) const
 Deprecated(2018-10) find and return a T. More...
 
bool getBool (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
 Same as get< bool >(const word&, keyType::option) More...
 
label getLabel (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
 Same as get< label >(const word&, keyType::option) More...
 
scalar getScalar (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
 Same as get< scalar >(const word&, keyType::option) More...
 
string getString (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
 Same as get< string >(const word&, keyType::option) More...
 
word getWord (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
 Same as get< word >(const word&, keyType::option) More...
 
fileName getFileName (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
 Same as get< fileName >(const word&, keyType::option) More...
 
template<class Compare >
Foam::wordList sortedToc (const Compare &comp) const
 
template<class T >
Foam::entryadd (const keyType &k, const T &v, bool overwrite)
 
template<class T >
Foam::entryset (const keyType &k, const T &v)
 
- Public Member Functions inherited from ILList< LListBase, T >
 ILList ()=default
 Null construct. More...
 
 ILList (T *item)
 Construct and insert the initial T item pointer. More...
 
 ILList (Istream &is)
 Construct from Istream. More...
 
 ILList (const ILList< LListBase, T > &lst)
 Copy construct using the 'clone()' method for each element. More...
 
 ILList (ILList< LListBase, T > &&lst)
 Move construct. More...
 
template<class CloneArg >
 ILList (const ILList< LListBase, T > &lst, const CloneArg &cloneArg)
 Copy constructor with additional argument for clone 'clone()'. More...
 
template<class INew >
 ILList (Istream &is, const INew &inew)
 Construct from Istream using given Istream constructor class. More...
 
 ~ILList ()
 Destructor. More...
 
bool eraseHead ()
 Remove the head element specified from the list and delete it. More...
 
bool erase (T *item)
 Remove the specified element from the list and delete it. More...
 
void clear ()
 Clear the contents of the list. More...
 
void transfer (ILList< LListBase, T > &lst)
 
void operator= (const ILList< LListBase, T > &lst)
 Copy assignment using the 'clone()' method for each element. More...
 
void operator= (ILList< LListBase, T > &&lst)
 Move assignment. More...
 
- Public Member Functions inherited from compressibleTransportModel
 TypeName ("compressibleTransportModel")
 Runtime type information. More...
 
 compressibleTransportModel ()
 Construct from components. More...
 
virtual ~compressibleTransportModel ()
 Destructor. More...
 

Static Public Attributes

static const word phasePropertiesName
 Default name of the phase properties dictionary. More...
 
static const word propertiesName
 Default name of the phase properties dictionary. More...
 
- Static Public Attributes inherited from basicThermo
static const word dictName
 
- Static Public Attributes inherited from regIOobject
static float fileModificationSkew
 
static int maxFileModificationPolls
 
- Static Public Attributes inherited from IOobject
static const Enum< fileCheckTypesfileCheckTypesNames
 Names for the fileCheckTypes. More...
 
static char scopeSeparator
 Character for scoping object names (':' or '_') More...
 
static fileCheckTypes fileModificationChecking
 Type of file modification checking. More...
 
- Static Public Attributes inherited from dictionary
static int writeOptionalEntries
 Report optional keywords and values if not present in dictionary. More...
 
static const dictionary null
 An empty dictionary, which is also the parent for all dictionaries. More...
 

Protected Types

typedef HashTable< dictionary, phasePairKey, phasePairKey::hashdictTable
 
typedef HashTable< autoPtr< surfaceTensionModel >, phasePairKey, phasePairKey::hashsurfaceTensionModelTable
 
typedef HashTable< autoPtr< porousModel >, phasePairKey, phasePairKey::hashinterfacePorousModelTable
 
typedef HashTable< dictionary, phasePairKey, phasePairKey::hashdictTable
 
typedef HashTable< autoPtr< blendingMethod >, word, word::hashblendingMethodTable
 
typedef HashTable< autoPtr< surfaceTensionModel >, phasePairKey, phasePairKey::hashsurfaceTensionModelTable
 
typedef HashTable< autoPtr< aspectRatioModel >, phasePairKey, phasePairKey::hashaspectRatioModelTable
 

Protected Member Functions

void calcMu ()
 Calculate and return the laminar viscosity. More...
 
HashTable< autoPtr< phaseModel > > generatePhaseModels (const wordList &names) const
 Generate the phases. More...
 
tmp< surfaceScalarFieldgeneratePhi (const HashTable< autoPtr< phaseModel >> &phaseModels) const
 Generate the mixture flux. More...
 
void generatePairs (const dictTable &modelDicts)
 Generate pairs. More...
 
void generatePairsTable ()
 Generate pair table. More...
 
template<class modelType >
void createSubModels (const dictTable &modelDicts, HashTable< autoPtr< modelType >, phasePairKey, phasePairKey::hash > &models)
 Generate pairs and sub-model tables using pair keys. More...
 
template<class modelType >
void createSubModels (const dictTable &modelDicts, const fvMesh &mesh, HashTable< autoPtr< modelType >, phasePairKey, phasePairKey::hash > &models)
 Generate pairs and sub-model tables using mesh. More...
 
template<class modelType >
void generatePairsAndSubModels (const word &modelName, HashTable< autoPtr< modelType >, phasePairKey, phasePairKey::hash > &models)
 Generate pairs and sub-model tables. More...
 
template<class modelType >
void generatePairsAndSubModels (const word &modelName, const fvMesh &mesh, HashTable< autoPtr< modelType >, phasePairKey, phasePairKey::hash > &models)
 Generate pairs and per-phase sub-model tables with mesh ref. More...
 
template<class modelType >
void generatePairsAndSubModels (const word &modelName, HashTable< HashTable< autoPtr< modelType >>, phasePairKey, phasePairKey::hash > &models)
 Generate pairs and per-phase sub-model tables. More...
 
tmp< surfaceScalarFieldcalcPhi (const phaseModelList &phaseModels) const
 Calculate and return the mixture flux. More...
 
void generatePairs (const dictTable &modelDicts)
 Generate pairs. More...
 
template<class modelType >
void createSubModels (const dictTable &modelDicts, HashTable< autoPtr< modelType >, phasePairKey, phasePairKey::hash > &models)
 Generate pairs and sub-model tables. More...
 
template<class modelType >
void generatePairsAndSubModels (const word &modelName, HashTable< autoPtr< modelType >, phasePairKey, phasePairKey::hash > &models)
 Generate pairs and sub-model tables. More...
 
template<class modelType >
void generatePairsAndSubModels (const word &modelName, HashTable< autoPtr< BlendedInterfacialModel< modelType >>, phasePairKey, phasePairKey::hash > &models, const bool correctFixedFluxBCs=true)
 Generate pairs and blended sub-model tables. More...
 
template<class modelType >
void generatePairsAndSubModels (const word &modelName, HashTable< Pair< autoPtr< modelType >>, phasePairKey, phasePairKey::hash > &models, const bool correctFixedFluxBCs=true)
 Generate pairs and two-sided sub-model tables. More...
 
template<class GeoField >
void addField (const phaseModel &phase, const word &fieldName, tmp< GeoField > field, PtrList< GeoField > &fieldList) const
 Add the field to a phase-indexed list, with the given name,. More...
 
template<class GeoField >
void addField (const phaseModel &phase, const word &fieldName, const GeoField &field, PtrList< GeoField > &fieldList) const
 Add the field to a phase-indexed list, with the given name,. More...
 
template<class GeoField >
void addField (const phaseModel &phase, const word &fieldName, tmp< GeoField > field, HashPtrTable< GeoField > &fieldTable) const
 Add the field to a phase-indexed table, with the given name,. More...
 
template<class GeoField >
void addField (const phaseModel &phase, const word &fieldName, const GeoField &field, HashPtrTable< GeoField > &fieldTable) const
 Add the field to a phase-indexed table, with the given name,. More...
 
- Protected Member Functions inherited from basicThermo
 basicThermo (const basicThermo &)
 Construct as copy (not implemented) More...
 
wordList heBoundaryTypes ()
 Return the enthalpy/internal energy field boundary types. More...
 
wordList heBoundaryBaseTypes ()
 Return the enthalpy/internal energy field boundary base types. More...
 
- Protected Member Functions inherited from regIOobject
bool readHeaderOk (const IOstream::streamFormat PstreamFormat, const word &typeName)
 Helper: check readOpt flags and read if necessary. More...
 
IstreamobjectStream ()
 Construct and return an IFstream for the object. More...
 
- Protected Member Functions inherited from IOobject
void setBad (const string &s)
 Set the object state to bad. More...
 

Protected Attributes

const fvMeshmesh_
 Reference to the mesh. More...
 
volScalarField mu_
 Dynamic viscocity. More...
 
wordList phaseNames_
 Phase names. More...
 
surfaceScalarField phi_
 Mixture total volumetric flux. More...
 
surfaceScalarField rhoPhi_
 Mixture total mass flux. More...
 
phaseModelTable phaseModels_
 Phase models. More...
 
phasePairTable phasePairs_
 Phase pairs. More...
 
phasePairTable totalPhasePairs_
 Total ordered phase pairs in the system. More...
 
dimensionedScalar Prt_
 Turbulent Prandt number. More...
 
surfaceTensionModelTable surfaceTensionModels_
 Surface tension models. More...
 
interfacePorousModelTable interfacePorousModelTable_
 Interface porous models. More...
 
phaseModelList phaseModels_
 Phase models. More...
 
phaseModelPartialList movingPhaseModels_
 Moving phase models. More...
 
phaseModelPartialList stationaryPhaseModels_
 Stationary phase models. More...
 
phaseModelPartialList anisothermalPhaseModels_
 Anisothermal phase models. More...
 
phaseModelPartialList multiComponentPhaseModels_
 Multi-component phase models. More...
 
volScalarField dpdt_
 Rate of change of pressure. More...
 
IOMRFZoneList MRF_
 Optional MRF zones. More...
 
blendingMethodTable blendingMethods_
 Blending methods. More...
 
aspectRatioModelTable aspectRatioModels_
 Aspect ratio models. More...
 
- Protected Attributes inherited from basicThermo
const wordphaseName_
 Phase-name. More...
 
volScalarFieldp_
 Pressure [Pa]. More...
 
bool pOwner_
 
volScalarFieldT_
 Temperature [K]. More...
 
bool TOwner_
 
volScalarField alpha_
 Laminar thermal diffusivity [kg/m/s]. More...
 
Switch dpdt_
 Should the dpdt term be included in the enthalpy equation. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from basicThermo
template<class Thermo , class Table >
static Table::iterator lookupThermo (const dictionary &thermoTypeDict, Table *tablePtr, std::initializer_list< const char * > cmptNames, const word &thermoTypeName)
 Generic lookup for thermodynamics package thermoTypeName. More...
 
template<class Thermo , class Table >
static Table::iterator lookupThermo (const dictionary &thermoDict, Table *tablePtr)
 Generic lookup for each of the related thermodynamics packages. More...
 
template<class Thermo >
static autoPtr< Thermo > New (const fvMesh &, const word &phaseName=word::null)
 Generic New for each of the related thermodynamics packages. More...
 
template<class Thermo >
static autoPtr< Thermo > New (const fvMesh &, const dictionary &, const word &phaseName=word::null)
 Generic New for each of the related thermodynamics packages. More...
 
template<class Thermo >
static autoPtr< Thermo > New (const fvMesh &, const word &phaseName, const word &dictName)
 Generic New for each of the related thermodynamics packages. More...
 
static autoPtr< basicThermoNew (const fvMesh &, const word &phaseName=word::null)
 Specialisation of the Generic New for basicThermo. More...
 
static word phasePropertyName (const word &name, const word &phaseName)
 
static const basicThermolookupThermo (const fvPatchScalarField &pf)
 
static wordList splitThermoName (const word &thermoName, const int nCmpt)
 Split name of thermo package into a list of the components names. More...
 
- Static Public Member Functions inherited from regIOobject
template<class Type >
static Type & store (Type *p)
 Transfer pointer ownership to its registry. More...
 
template<class Type >
static Type & store (autoPtr< Type > &ptr)
 Transfer pointer ownership to its registry. More...
 
template<class Type >
static Type & store (autoPtr< Type > &&ptr)
 Transfer pointer ownership to its registry. More...
 
template<class Type >
static Type & store (refPtr< Type > &ptr)
 Transfer pointer ownership to its registry. More...
 
template<class Type >
static Type & store (refPtr< Type > &&ptr)
 Transfer pointer ownership to its registry. More...
 
template<class Type >
static Type & store (tmp< Type > &ptr)
 Transfer pointer ownership to its registry. More...
 
template<class Type >
static Type & store (tmp< Type > &&ptr)
 Transfer pointer ownership to its registry. More...
 
- Static Public Member Functions inherited from IOobject
static bool fileNameComponents (const fileName &path, fileName &instance, fileName &local, word &name)
 Split path into instance, local, name components. More...
 
template<class StringType >
static word groupName (StringType base, const word &group)
 Create dot-delimited name.group string. More...
 
static word group (const word &name)
 Return group (extension part of name) More...
 
static word member (const word &name)
 Return member (name without the extension) More...
 
template<class StringType >
static word scopedName (StringType scope, const word &name)
 Create scope:name or scope_name string. More...
 
static IOobject selectIO (const IOobject &io, const fileName &altFile, const word &ioName="")
 Return the IOobject, but also consider an alternative file name. More...
 
static OstreamwriteBanner (Ostream &os, bool noHint=false)
 Write the standard OpenFOAM file/dictionary banner. More...
 
static OstreamwriteDivider (Ostream &os)
 Write the standard file section divider. More...
 
static OstreamwriteEndDivider (Ostream &os)
 Write the standard end file divider. More...
 
- Static Public Member Functions inherited from dictionary
static autoPtr< dictionaryNew (Istream &is)
 Construct top-level dictionary on freestore from Istream. More...
 
- Public Attributes inherited from dictionary
friend const_searcher
 Declare friendship with the searcher classes. More...
 
friend searcher
 
- Static Protected Member Functions inherited from basicThermo
static volScalarFieldlookupOrConstruct (const fvMesh &mesh, const word &, bool &isOwner)
 Look up or construct field. More...
 
- Static Protected Attributes inherited from regIOobject
static bool masterOnlyReading = false
 To flag master-only reading of objects. More...
 

Detailed Description

Class to represent a system of phases and model interfacial transfers between them.

Source files

Source files

Definition at line 63 of file phaseSystem.H.

Member Typedef Documentation

◆ phasePairTable [1/2]

◆ phaseModelTable

Definition at line 80 of file phaseSystem.H.

◆ SuSpTable

Definition at line 83 of file phaseSystem.H.

◆ dictTable [1/2]

Definition at line 91 of file phaseSystem.H.

◆ surfaceTensionModelTable [1/2]

◆ interfacePorousModelTable

◆ momentumTransferTable

Definition at line 77 of file phaseSystem.H.

◆ heatTransferTable

Definition at line 79 of file phaseSystem.H.

◆ massTransferTable

Definition at line 81 of file phaseSystem.H.

◆ phaseModelList

Definition at line 83 of file phaseSystem.H.

◆ phaseModelPartialList

Definition at line 85 of file phaseSystem.H.

◆ phasePairTable [2/2]

◆ dictTable [2/2]

Definition at line 98 of file phaseSystem.H.

◆ blendingMethodTable

Definition at line 102 of file phaseSystem.H.

◆ surfaceTensionModelTable [2/2]

◆ aspectRatioModelTable

Constructor & Destructor Documentation

◆ phaseSystem() [1/2]

phaseSystem ( const fvMesh mesh)

Construct from fvMesh.

Definition at line 205 of file phaseSystem.C.

References found.

◆ ~phaseSystem() [1/2]

~phaseSystem ( )
virtual

Destructor.

Definition at line 292 of file phaseSystem.C.

◆ phaseSystem() [2/2]

phaseSystem ( const fvMesh mesh)

Construct from fvMesh.

◆ ~phaseSystem() [2/2]

virtual ~phaseSystem ( )
virtual

Destructor.

Member Function Documentation

◆ calcMu()

void calcMu ( )
protected

Calculate and return the laminar viscosity.

Definition at line 58 of file phaseSystem.C.

References phaseSystem::mu(), and phaseSystem::mu_.

Here is the call graph for this function:

◆ generatePhaseModels()

Foam::phaseSystem::phaseModelTable generatePhaseModels ( const wordList names) const
protected

Generate the phases.

Definition at line 65 of file phaseSystem.C.

References HashTable< T, Key, Hash >::insert(), and phaseModel::New().

Here is the call graph for this function:

◆ generatePhi()

Foam::tmp< Foam::surfaceScalarField > generatePhi ( const HashTable< autoPtr< phaseModel >> &  phaseModels) const
protected

Generate the mixture flux.

Definition at line 87 of file phaseSystem.C.

References HashTable< T, Key, Hash >::cbegin(), HashTable< T, Key, Hash >::cend(), Foam::fvc::interpolate(), tmp< T >::New(), and phi.

Here is the call graph for this function:

◆ generatePairs() [1/2]

void generatePairs ( const dictTable modelDicts)
protected

Generate pairs.

Definition at line 108 of file phaseSystem.C.

References forAllConstIters(), phasePairKey::ordered(), and Pair< T >::second().

Here is the call graph for this function:

◆ generatePairsTable()

void generatePairsTable ( )
protected

Generate pair table.

Definition at line 155 of file phaseSystem.C.

References forAllConstIters(), Foam::name(), and Pair< T >::second().

Here is the call graph for this function:

◆ createSubModels() [1/3]

void createSubModels ( const dictTable modelDicts,
HashTable< autoPtr< modelType >, phasePairKey, phasePairKey::hash > &  models 
)
protected

Generate pairs and sub-model tables using pair keys.

Definition at line 32 of file phaseSystemTemplates.H.

References forAllConstIters(), and Foam::New().

Here is the call graph for this function:

◆ createSubModels() [2/3]

void createSubModels ( const dictTable modelDicts,
const fvMesh mesh,
HashTable< autoPtr< modelType >, phasePairKey, phasePairKey::hash > &  models 
)
protected

Generate pairs and sub-model tables using mesh.

Definition at line 61 of file phaseSystemTemplates.H.

References forAllConstIters(), mesh, and Foam::New().

Here is the call graph for this function:

◆ generatePairsAndSubModels() [1/6]

void generatePairsAndSubModels ( const word modelName,
HashTable< autoPtr< modelType >, phasePairKey, phasePairKey::hash > &  models 
)
protected

Generate pairs and sub-model tables.

Definition at line 91 of file phaseSystemTemplates.H.

◆ generatePairsAndSubModels() [2/6]

void generatePairsAndSubModels ( const word modelName,
const fvMesh mesh,
HashTable< autoPtr< modelType >, phasePairKey, phasePairKey::hash > &  models 
)
protected

Generate pairs and per-phase sub-model tables with mesh ref.

Definition at line 111 of file phaseSystemTemplates.H.

References mesh.

◆ generatePairsAndSubModels() [3/6]

void generatePairsAndSubModels ( const word modelName,
HashTable< HashTable< autoPtr< modelType >>, phasePairKey, phasePairKey::hash > &  models 
)
protected

Generate pairs and per-phase sub-model tables.

Definition at line 132 of file phaseSystemTemplates.H.

References forAllConstIters().

Here is the call graph for this function:

◆ TypeName() [1/2]

TypeName ( "phaseSystem"  )

Runtime type information.

◆ he() [1/5]

virtual volScalarField& he ( )
inlinevirtual

Return access to the internal energy field [J/Kg].

Note
this mixture thermo is prepared to work with T

Implements basicThermo.

Definition at line 271 of file phaseSystem.H.

◆ he() [2/5]

virtual const volScalarField& he ( ) const
inlinevirtual

Return access to the internal energy field [J/Kg].

Note
this mixture thermo is prepared to work with T

Implements basicThermo.

Definition at line 279 of file phaseSystem.H.

◆ he() [3/5]

Foam::tmp< Foam::volScalarField > he ( const volScalarField p,
const volScalarField T 
) const
virtual

Enthalpy/Internal energy.

for given pressure and temperature [J/kg]

Implements basicThermo.

Definition at line 299 of file phaseSystem.C.

References NotImplemented.

◆ he() [4/5]

Foam::tmp< Foam::scalarField > he ( const scalarField p,
const scalarField T,
const labelList cells 
) const
virtual

Enthalpy/Internal energy for cell-set [J/kg].

Implements basicThermo.

Definition at line 310 of file phaseSystem.C.

References NotImplemented.

◆ he() [5/5]

Foam::tmp< Foam::scalarField > he ( const scalarField p,
const scalarField T,
const label  patchi 
) const
virtual

Enthalpy/Internal energy for patch [J/kg].

Implements basicThermo.

Definition at line 322 of file phaseSystem.C.

References NotImplemented.

◆ hc()

Foam::tmp< Foam::volScalarField > hc ( ) const
virtual

Chemical enthalpy of the mixture [J/kg].

Implements basicThermo.

Definition at line 333 of file phaseSystem.C.

References tmp< T >::ref().

Here is the call graph for this function:

◆ THE() [1/2]

Foam::tmp< Foam::scalarField > THE ( const scalarField h,
const scalarField p,
const scalarField T0,
const labelList cells 
) const
virtual

Temperature from enthalpy/internal energy for cell-set.

Implements basicThermo.

Definition at line 352 of file phaseSystem.C.

References NotImplemented.

◆ THE() [2/2]

Foam::tmp< Foam::scalarField > THE ( const scalarField h,
const scalarField p,
const scalarField T0,
const label  patchi 
) const
virtual

Temperature from enthalpy/internal energy for patch.

Implements basicThermo.

Definition at line 365 of file phaseSystem.C.

References NotImplemented.

◆ rho() [1/3]

Foam::tmp< Foam::volScalarField > rho ( ) const
virtual

Return the mixture density.

Implements basicThermo.

Reimplemented in twoPhaseSystem.

Definition at line 377 of file phaseSystem.C.

References tmp< T >::ref(), and rho.

Here is the call graph for this function:

◆ rho() [2/3]

Foam::tmp< Foam::scalarField > rho ( const label  patchi) const
virtual

Return the mixture density on a patch.

Implements basicThermo.

Definition at line 395 of file phaseSystem.C.

References tmp< T >::ref(), and rho.

Here is the call graph for this function:

◆ Cp() [1/2]

Foam::tmp< Foam::volScalarField > Cp ( ) const
virtual

Return Cp of the mixture.

Implements basicThermo.

Definition at line 418 of file phaseSystem.C.

References Cp, and tmp< T >::ref().

Here is the call graph for this function:

◆ Cp() [2/2]

Foam::tmp< Foam::scalarField > Cp ( const scalarField p,
const scalarField T,
const label  patchi 
) const
virtual

Heat capacity at constant pressure for patch [J/kg/K].

Implements basicThermo.

Definition at line 437 of file phaseSystem.C.

References Cp, p, tmp< T >::ref(), and Foam::T().

Here is the call graph for this function:

◆ Cv() [1/2]

Foam::tmp< Foam::volScalarField > Cv ( ) const
virtual

Return Cv of the mixture.

Implements basicThermo.

Definition at line 459 of file phaseSystem.C.

References Cv, and tmp< T >::ref().

Here is the call graph for this function:

◆ Cv() [2/2]

Foam::tmp< Foam::scalarField > Cv ( const scalarField p,
const scalarField T,
const label  patchI 
) const
virtual

Heat capacity at constant volume for patch [J/kg/K].

Implements basicThermo.

Definition at line 478 of file phaseSystem.C.

References Cv, p, tmp< T >::ref(), and Foam::T().

Here is the call graph for this function:

◆ gamma() [1/2]

Foam::tmp< Foam::volScalarField > gamma ( ) const
virtual

Gamma = Cp/Cv [].

Implements basicThermo.

Definition at line 500 of file phaseSystem.C.

References Cp, Cv, and tmp< T >::ref().

Here is the call graph for this function:

◆ gamma() [2/2]

Foam::tmp< Foam::scalarField > gamma ( const scalarField p,
const scalarField T,
const label  patchi 
) const
virtual

Gamma = Cp/Cv for patch [].

Implements basicThermo.

Definition at line 525 of file phaseSystem.C.

References gamma.

◆ Cpv() [1/2]

Foam::tmp< Foam::volScalarField > Cpv ( ) const
virtual

Heat capacity at constant pressure/volume [J/kg/K].

Implements basicThermo.

Definition at line 538 of file phaseSystem.C.

References tmp< T >::ref().

Here is the call graph for this function:

◆ Cpv() [2/2]

Foam::tmp< Foam::scalarField > Cpv ( const scalarField p,
const scalarField T,
const label  patchi 
) const
virtual

Heat capacity at constant pressure/volume for patch [J/kg/K].

Implements basicThermo.

Definition at line 557 of file phaseSystem.C.

References p, tmp< T >::ref(), and Foam::T().

Here is the call graph for this function:

◆ CpByCpv() [1/2]

Foam::tmp< Foam::volScalarField > CpByCpv ( ) const
virtual

Heat capacity ratio [].

Implements basicThermo.

Definition at line 579 of file phaseSystem.C.

References tmp< T >::ref().

Here is the call graph for this function:

◆ CpByCpv() [2/2]

Foam::tmp< Foam::scalarField > CpByCpv ( const scalarField p,
const scalarField T,
const label  patchi 
) const
virtual

Heat capacity ratio for patch [].

Implements basicThermo.

Definition at line 598 of file phaseSystem.C.

References p, tmp< T >::ref(), and Foam::T().

Here is the call graph for this function:

◆ W()

Foam::tmp< Foam::volScalarField > W ( ) const
virtual

Molecular weight [kg/kmol] of the mixture.

Implements basicThermo.

Definition at line 625 of file phaseSystem.C.

References NotImplemented.

◆ kappa() [1/2]

Foam::tmp< Foam::volScalarField > kappa ( ) const
virtual

Thermal diffusivity for temperature of mixture [J/m/s/K].

Implements basicThermo.

Definition at line 632 of file phaseSystem.C.

References Foam::constant::electromagnetic::kappa, and tmp< T >::ref().

Here is the call graph for this function:

◆ kappa() [2/2]

Foam::tmp< Foam::scalarField > kappa ( const label  patchi) const
virtual

Thermal diffusivity for temperature.

of mixture for patch [J/m/s/K]

Implements basicThermo.

Definition at line 650 of file phaseSystem.C.

References Foam::constant::electromagnetic::kappa, and tmp< T >::ref().

Here is the call graph for this function:

◆ alphahe() [1/2]

Foam::tmp< Foam::volScalarField > alphahe ( ) const
virtual

Thermal diffusivity for energy of mixture [kg/m/s].

Implements basicThermo.

Definition at line 673 of file phaseSystem.C.

References tmp< T >::ref().

Here is the call graph for this function:

◆ alphahe() [2/2]

Foam::tmp< Foam::scalarField > alphahe ( const label  patchi) const
virtual

Thermal diffusivity for energy of mixture for patch [kg/m/s].

Implements basicThermo.

Definition at line 692 of file phaseSystem.C.

References tmp< T >::ref().

Here is the call graph for this function:

◆ kappaEff() [1/2]

Foam::tmp< Foam::volScalarField > kappaEff ( const volScalarField kappat) const
virtual

Effective thermal diffusivity for temperature.

of mixture [J/m/s/K]

Implements basicThermo.

Definition at line 716 of file phaseSystem.C.

References Foam::constant::electromagnetic::kappa, and kappaEff.

◆ kappaEff() [2/2]

Foam::tmp< Foam::scalarField > kappaEff ( const scalarField alphat,
const label  patchi 
) const
virtual

Effective thermal diffusivity for temperature.

of mixture for patch [J/m/s/K]

Implements basicThermo.

Definition at line 727 of file phaseSystem.C.

References Foam::constant::electromagnetic::kappa.

◆ alphaEff() [1/2]

Foam::tmp< Foam::volScalarField > alphaEff ( const volScalarField alphat) const
virtual

Effective thermal diffusivity of mixture [kg/m/s].

Implements basicThermo.

Definition at line 737 of file phaseSystem.C.

References Foam::constant::atomic::alpha, and tmp< T >::ref().

Here is the call graph for this function:

◆ alphaEff() [2/2]

Foam::tmp< Foam::scalarField > alphaEff ( const scalarField alphat,
const label  patchi 
) const
virtual

Effective thermal diffusivity of mixture for patch [kg/m/s].

Implements basicThermo.

Definition at line 760 of file phaseSystem.C.

References Foam::constant::atomic::alpha, and tmp< T >::ref().

Here is the call graph for this function:

◆ Prt()

const Foam::dimensionedScalar & Prt ( ) const

Return Prandt number.

Definition at line 788 of file phaseSystem.C.

◆ mu() [1/2]

Foam::tmp< Foam::volScalarField > mu ( ) const
virtual

Dynamic viscosity of mixture [kg/m/s].

Implements compressibleTransportModel.

Definition at line 794 of file phaseSystem.C.

References Foam::constant::physicoChemical::mu, and tmp< T >::ref().

Referenced by phaseSystem::calcMu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ mu() [2/2]

Foam::tmp< Foam::scalarField > mu ( const label  patchi) const
virtual

Dynamic viscosity of mixture for patch [kg/m/s].

Implements compressibleTransportModel.

Definition at line 812 of file phaseSystem.C.

References Foam::constant::physicoChemical::mu, and tmp< T >::ref().

Here is the call graph for this function:

◆ nu() [1/2]

Foam::tmp< Foam::volScalarField > nu ( ) const
virtual

Kinematic viscosity of mixture [m^2/s].

Implements compressibleTransportModel.

Definition at line 835 of file phaseSystem.C.

References nu, and tmp< T >::ref().

Here is the call graph for this function:

◆ nu() [2/2]

Foam::tmp< Foam::scalarField > nu ( const label  patchi) const
virtual

Kinematic viscosity of mixture for patch [m^2/s].

Implements compressibleTransportModel.

Definition at line 853 of file phaseSystem.C.

References nu, and tmp< T >::ref().

Here is the call graph for this function:

◆ phi() [1/4]

const Foam::surfaceScalarField & phi ( ) const
inline

Constant access to the total flux.

Definition at line 876 of file phaseSystem.C.

◆ phi() [2/4]

Foam::surfaceScalarField & phi ( )
inline

Access to the total mixture flux.

Definition at line 882 of file phaseSystem.C.

◆ rhoPhi() [1/2]

const Foam::surfaceScalarField & rhoPhi ( ) const

Constant access to the mixture mass flux.

Definition at line 888 of file phaseSystem.C.

◆ rhoPhi() [2/2]

Access to the total mixture mass flux.

Definition at line 894 of file phaseSystem.C.

◆ U() [1/2]

Mixture U.

Definition at line 1036 of file phaseSystem.C.

References Foam::dimVelocity, forAllConstIters(), tmp< T >::New(), and Foam::Zero.

Here is the call graph for this function:

◆ surfaceTensionForce()

Foam::tmp< Foam::surfaceScalarField > surfaceTensionForce ( ) const

Calculate surface tension of the mixture.

Definition at line 986 of file phaseSystem.C.

References alpha1, alpha2, forAllConstIters(), Foam::fvc::interpolate(), Foam::name(), tmp< T >::New(), Foam::fvc::snGrad(), and Foam::Zero.

Here is the call graph for this function:

◆ surfaceTensionCoeff()

Foam::tmp< Foam::volScalarField > surfaceTensionCoeff ( const phasePairKey key) const
virtual

Return the surface tension coefficient.

Definition at line 1062 of file phaseSystem.C.

◆ coeffs()

Foam::tmp< Foam::volScalarField > coeffs ( const word key) const
virtual

Return coefficients (1/rho)

Definition at line 1069 of file phaseSystem.C.

◆ addInterfacePorosity()

void addInterfacePorosity ( fvVectorMatrix UEqn)

Add interface porosity on phasePair.

Definition at line 1077 of file phaseSystem.C.

References forAllConstIters(), phaseModel::name(), Foam::name(), phasei, porousModel::S(), and UEqn.

Here is the call graph for this function:

◆ dmdt() [1/2]

Foam::tmp< Foam::volScalarField > dmdt ( const phasePairKey key) const
pure virtual

Return interfacial source mass rate per phase pair.

Definition at line 338 of file phaseSystem.C.

References Foam::dimDensity, Foam::dimTime, IOobject::groupName(), Foam::name(), and GeometricField< scalar, fvPatchField, volMesh >::New().

Here is the call graph for this function:

◆ heatTransfer() [1/2]

virtual tmp<fvScalarMatrix> heatTransfer ( const volScalarField T)
pure virtual

Return the heat transfer matrices.

◆ volTransfer()

virtual tmp<fvScalarMatrix> volTransfer ( const volScalarField p)
pure virtual

Return the volumetric rate transfer matrix.

◆ alphaTransfer()

virtual void alphaTransfer ( SuSpTable Su,
SuSpTable Sp 
)
pure virtual

Calculate mass transfer for alpha's.

◆ massSpeciesTransfer()

virtual void massSpeciesTransfer ( const phaseModel phase,
volScalarField::Internal Su,
volScalarField::Internal Sp,
const word  speciesName 
)
pure virtual

Calculate mass transfer for species.

◆ includeVolChange()

virtual bool includeVolChange ( )
pure virtual

Add volume change in pEq.

◆ solve() [1/2]

void solve ( )
pure virtual

Solve for the phase transport equations.

Implemented in twoPhaseSystem, and twoPhaseSystem.

Definition at line 359 of file phaseSystem.C.

◆ correct() [1/2]

void correct ( )
virtual

Correct the mixture thermos.

Implements basicThermo.

Reimplemented in twoPhaseSystem.

Definition at line 900 of file phaseSystem.C.

References forAllIters.

◆ correctMassSources()

virtual void correctMassSources ( const volScalarField T)
pure virtual

Correct mass sources.

◆ thermoName()

virtual word thermoName ( ) const
inlinevirtual

Return the name of the thermo physics.

Implements basicThermo.

Definition at line 548 of file phaseSystem.H.

References NotImplemented.

◆ correctTurbulence() [1/2]

void correctTurbulence ( )
virtual

Correct the turbulence.

Note
Each phase could have its own turbulence

Reimplemented in twoPhaseSystem.

Definition at line 911 of file phaseSystem.C.

References forAllIters.

◆ read() [1/2]

bool read ( )
virtual

Read base phaseProperties dictionary.

Reimplemented from basicThermo.

Reimplemented in twoPhaseSystem.

Definition at line 1215 of file phaseSystem.C.

References regIOobject::read().

Here is the call graph for this function:

◆ totalPhasePairs() [1/2]

const Foam::phaseSystem::phasePairTable & totalPhasePairs ( ) const

Constant access the total phase pairs.

Definition at line 933 of file phaseSystem.C.

◆ totalPhasePairs() [2/2]

Foam::phaseSystem::phasePairTable & totalPhasePairs ( )

Non-constant access the total phase pairs.

Definition at line 939 of file phaseSystem.C.

◆ phases() [1/4]

const Foam::phaseSystem::phaseModelList & phases ( ) const
inline

Constant access the phases.

Definition at line 920 of file phaseSystem.C.

Referenced by deposition::dmdt().

Here is the caller graph for this function:

◆ phases() [2/4]

Foam::phaseSystem::phaseModelList & phases ( )
inline

Access the phases.

Definition at line 926 of file phaseSystem.C.

◆ lookupSubModel() [1/4]

const modelType & lookupSubModel ( const phasePair key) const

Access a sub model between a phase pair.

Definition at line 179 of file phaseSystemTemplates.H.

References IOobject::groupName(), objectRegistry::lookupObject(), phaseSystem::mesh(), and phasePair::name().

Referenced by phasePair::sigma().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ lookupSubModel() [2/4]

const modelType & lookupSubModel ( const phaseModel from,
const phaseModel to 
) const

Access a sub model between two phases.

Definition at line 191 of file phaseSystemTemplates.H.

◆ incompressible() [1/2]

bool incompressible ( ) const
virtual

Return true if the equation of state is incompressible for all.

phases

Implements basicThermo.

Definition at line 945 of file phaseSystem.C.

References forAllConstIters(), and thermo.

Here is the call graph for this function:

◆ incompressible() [2/2]

bool incompressible ( const word  phaseName) const
virtual

Return true if a phase is incompressible.

Definition at line 959 of file phaseSystem.C.

◆ isochoric()

bool isochoric ( ) const
virtual

Return true if the equation of state is isochoric for all phasses.

i.e. rho = const

Implements basicThermo.

Definition at line 965 of file phaseSystem.C.

References forAllConstIters(), and thermo.

Here is the call graph for this function:

◆ mesh() [1/2]

const Foam::fvMesh & mesh ( ) const
inline

Return mesh.

Definition at line 979 of file phaseSystem.C.

Referenced by phaseSystem::lookupSubModel().

Here is the caller graph for this function:

◆ nHatfv()

Foam::tmp< Foam::surfaceVectorField > nHatfv ( const volScalarField alpha1,
const volScalarField alpha2 
) const

Interface normal surface vector.

Definition at line 1181 of file phaseSystem.C.

References alpha1, alpha2, Foam::average(), Foam::cbrt(), Foam::constant::electromagnetic::e, Foam::fvc::grad(), Foam::fvc::interpolate(), and Foam::mag().

Here is the call graph for this function:

◆ nHatf()

Foam::tmp< Foam::surfaceScalarField > nHatf ( const volScalarField alpha1,
const volScalarField alpha2 
) const

Interface normal volume vector.

Definition at line 1205 of file phaseSystem.C.

References alpha1, and alpha2.

◆ K()

Foam::tmp< Foam::volScalarField > K ( const volScalarField alpha1,
const volScalarField alpha2 
) const

Interface curvature.

Definition at line 1116 of file phaseSystem.C.

References alpha1, alpha2, Foam::fvc::div(), and tmp< T >::ref().

Here is the call graph for this function:

◆ nearInterface() [1/2]

Foam::tmp< Foam::volScalarField > nearInterface ( const volScalarField alpha1,
const volScalarField alpha2 
) const

Near Interface of alpha1 and alpha2.

Definition at line 1129 of file phaseSystem.C.

References alpha1, alpha2, and Foam::pos().

Here is the call graph for this function:

◆ nearInterface() [2/2]

Foam::tmp< Foam::volScalarField > nearInterface ( ) const

Near Interface of alpha'n.

Definition at line 1142 of file phaseSystem.C.

References alpha1, alpha2, Foam::dimless, forAllConstIters(), tmp< T >::New(), Foam::pos(), and Foam::Zero.

Here is the call graph for this function:

◆ calcPhi()

Foam::tmp< Foam::surfaceScalarField > calcPhi ( const phaseModelList phaseModels) const
protected

Calculate and return the mixture flux.

Definition at line 52 of file phaseSystem.C.

References Foam::fac::interpolate(), Foam::New(), phasei, phi, and tmp< T >::ref().

Here is the call graph for this function:

◆ generatePairs() [2/2]

void generatePairs ( const dictTable modelDicts)
protected

Generate pairs.

◆ createSubModels() [3/3]

void createSubModels ( const dictTable modelDicts,
HashTable< autoPtr< modelType >, phasePairKey, phasePairKey::hash > &  models 
)
protected

Generate pairs and sub-model tables.

◆ generatePairsAndSubModels() [4/6]

void generatePairsAndSubModels ( const word modelName,
HashTable< autoPtr< modelType >, phasePairKey, phasePairKey::hash > &  models 
)
protected

Generate pairs and sub-model tables.

◆ generatePairsAndSubModels() [5/6]

void generatePairsAndSubModels ( const word modelName,
HashTable< autoPtr< BlendedInterfacialModel< modelType >>, phasePairKey, phasePairKey::hash > &  models,
const bool  correctFixedFluxBCs = true 
)
protected

Generate pairs and blended sub-model tables.

Definition at line 83 of file phaseSystemTemplates.C.

References forAllConstIter.

◆ generatePairsAndSubModels() [6/6]

void generatePairsAndSubModels ( const word modelName,
HashTable< Pair< autoPtr< modelType >>, phasePairKey, phasePairKey::hash > &  models,
const bool  correctFixedFluxBCs = true 
)
protected

Generate pairs and two-sided sub-model tables.

Definition at line 164 of file phaseSystemTemplates.C.

References phasePair::contains(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, forAll, forAllIter, IOobject::groupName(), phasePair::index(), phase::name(), and phasei.

Here is the call graph for this function:

◆ addField() [1/4]

void addField ( const phaseModel phase,
const word fieldName,
tmp< GeoField >  field,
PtrList< GeoField > &  fieldList 
) const
protected

Add the field to a phase-indexed list, with the given name,.

constructing if necessary

Definition at line 223 of file phaseSystemTemplates.C.

References field(), IOobject::groupName(), phase::name(), and PtrList< T >::set().

Here is the call graph for this function:

◆ addField() [2/4]

void addField ( const phaseModel phase,
const word fieldName,
const GeoField &  field,
PtrList< GeoField > &  fieldList 
) const
protected

Add the field to a phase-indexed list, with the given name,.

constructing if necessary

Definition at line 251 of file phaseSystemTemplates.C.

References field().

Here is the call graph for this function:

◆ addField() [3/4]

void addField ( const phaseModel phase,
const word fieldName,
tmp< GeoField >  field,
HashPtrTable< GeoField > &  fieldTable 
) const
protected

Add the field to a phase-indexed table, with the given name,.

constructing if necessary

Definition at line 264 of file phaseSystemTemplates.C.

References field(), IOobject::groupName(), phase::name(), and HashPtrTable< T, Key, Hash >::set().

Here is the call graph for this function:

◆ addField() [4/4]

void addField ( const phaseModel phase,
const word fieldName,
const GeoField &  field,
HashPtrTable< GeoField > &  fieldTable 
) const
protected

Add the field to a phase-indexed table, with the given name,.

constructing if necessary

Definition at line 292 of file phaseSystemTemplates.C.

References field().

Here is the call graph for this function:

◆ TypeName() [2/2]

TypeName ( "phaseSystem"  )

Runtime type information.

◆ mesh() [2/2]

const fvMesh& mesh ( ) const
inline

Return the mesh.

◆ phases() [3/4]

const phaseModelList& phases ( ) const
inline

Return the phase models.

◆ phases() [4/4]

phaseModelList& phases ( )
inline

Access the phase models.

◆ movingPhases() [1/2]

const Foam::phaseSystem::phaseModelPartialList & movingPhases ( ) const
inline

Return the models for phases that are moving.

Definition at line 51 of file phaseSystemI.H.

◆ movingPhases() [2/2]

Foam::phaseSystem::phaseModelPartialList & movingPhases ( )
inline

Access the models for phases that are moving.

Definition at line 58 of file phaseSystemI.H.

◆ stationaryPhases() [1/2]

const Foam::phaseSystem::phaseModelPartialList & stationaryPhases ( ) const
inline

Return the models for phases that are stationary.

Definition at line 65 of file phaseSystemI.H.

◆ stationaryPhases() [2/2]

Foam::phaseSystem::phaseModelPartialList & stationaryPhases ( )
inline

Access the models for phases that are stationary.

Definition at line 72 of file phaseSystemI.H.

◆ anisothermalPhases() [1/2]

const Foam::phaseSystem::phaseModelPartialList & anisothermalPhases ( ) const
inline

Return the models for phases that have variable temperature.

Definition at line 79 of file phaseSystemI.H.

◆ anisothermalPhases() [2/2]

Foam::phaseSystem::phaseModelPartialList & anisothermalPhases ( )
inline

Access the models for phases that have variable temperature.

Definition at line 86 of file phaseSystemI.H.

◆ multiComponentPhases() [1/2]

const Foam::phaseSystem::phaseModelPartialList & multiComponentPhases ( ) const
inline

Return the models for phases that have multiple species.

Definition at line 93 of file phaseSystemI.H.

◆ multiComponentPhases() [2/2]

Foam::phaseSystem::phaseModelPartialList & multiComponentPhases ( )
inline

Access the models for phases that have multiple species.

Definition at line 100 of file phaseSystemI.H.

◆ phasePairs()

const Foam::phaseSystem::phasePairTable & phasePairs ( ) const
inline

Return the phase pairs.

Definition at line 107 of file phaseSystemI.H.

◆ phi() [3/4]

const surfaceScalarField& phi ( ) const
inline

Return the mixture flux.

◆ phi() [4/4]

surfaceScalarField& phi ( )
inline

Access the mixture flux.

◆ dpdt() [1/2]

const Foam::volScalarField & dpdt ( ) const
inline

Return the rate of change of the pressure.

Definition at line 125 of file phaseSystemI.H.

◆ dpdt() [2/2]

Foam::volScalarField & dpdt ( )
inline

Access the rate of change of the pressure.

Definition at line 131 of file phaseSystemI.H.

◆ MRF()

const Foam::IOMRFZoneList & MRF ( ) const
inline

Return MRF zones.

Definition at line 137 of file phaseSystemI.H.

◆ fvOptions()

Foam::fv::options & fvOptions ( ) const
inline

Access the fvOptions.

Definition at line 143 of file phaseSystemI.H.

References options::New().

Here is the call graph for this function:

◆ foundSubModel() [1/2]

bool foundSubModel ( const phasePair key) const

Check availability of a sub model for a given phase pair.

Definition at line 378 of file phaseSystemTemplates.C.

References objectRegistry::foundObject(), IOobject::groupName(), mesh, phasePair::name(), Foam::name(), phasePairKey::ordered(), and phasePair::otherName().

Here is the call graph for this function:

◆ lookupSubModel() [3/4]

const modelType& lookupSubModel ( const phasePair key) const

Return a sub model between a phase pair.

◆ foundSubModel() [2/2]

bool foundSubModel ( const phaseModel dispersed,
const phaseModel continuous 
) const

Check availability of a sub model between two phases.

Definition at line 437 of file phaseSystemTemplates.C.

◆ lookupSubModel() [4/4]

const modelType& lookupSubModel ( const phaseModel dispersed,
const phaseModel continuous 
) const

Return a sub model between two phases.

◆ foundBlendedSubModel()

bool foundBlendedSubModel ( const phasePair key) const

Check availability of a blended sub model for a given phase pair.

Definition at line 458 of file phaseSystemTemplates.C.

References objectRegistry::foundObject(), IOobject::groupName(), mesh, phasePair::name(), and phasePair::otherName().

Here is the call graph for this function:

◆ lookupBlendedSubModel() [1/2]

const BlendedInterfacialModel<modelType>& lookupBlendedSubModel ( const phasePair key) const

Return a blended sub model between a phase pair.

Referenced by phaseForces::nonDragForce().

Here is the caller graph for this function:

◆ fillFields() [1/2]

void fillFields ( const word name,
const dimensionSet dims,
PtrList< GeometricField< Type, PatchField, GeoMesh >> &  fieldList 
) const

Fill up gaps in a phase-indexed list of fields with zeros.

Definition at line 307 of file phaseSystemTemplates.C.

References forAll, IOobject::groupName(), phase::name(), Foam::name(), phasei, PtrList< T >::set(), and Foam::Zero.

Here is the call graph for this function:

◆ fillFields() [2/2]

void fillFields ( const word name,
const dimensionSet dims,
HashPtrTable< GeometricField< Type, PatchField, GeoMesh >> &  fieldTable 
) const

Fill up gaps in a phase-indexed table of fields with zeros.

Definition at line 343 of file phaseSystemTemplates.C.

References forAll, IOobject::groupName(), phase::name(), Foam::name(), phasei, HashPtrTable< T, Key, Hash >::set(), and Foam::Zero.

Here is the call graph for this function:

◆ rho() [3/3]

tmp<volScalarField> rho ( ) const
virtual

Return the mixture density.

Implements basicThermo.

Reimplemented in twoPhaseSystem.

◆ U() [2/2]

tmp<volVectorField> U ( ) const

Return the mixture velocity.

◆ E()

Foam::tmp< Foam::volScalarField > E ( const phasePairKey key) const

Return the aspect-ratio for a pair.

Definition at line 300 of file phaseSystem.C.

References Foam::dimless, and GeometricField< scalar, fvPatchField, volMesh >::New().

Referenced by orderedPhasePair::E().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ sigma()

Foam::tmp< Foam::volScalarField > sigma ( const phasePairKey key) const

Return the surface tension coefficient for a pair.

Definition at line 319 of file phaseSystem.C.

References surfaceTensionModel::dimSigma, and GeometricField< scalar, fvPatchField, volMesh >::New().

Referenced by Zuber::CHF(), HuaXu::CHFSubCool(), KocamustafaogullariIshii::dDeparture(), and Jeschar::MHF().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ dmdt() [2/2]

virtual tmp<volScalarField> dmdt ( const phasePairKey key) const
virtual

Return the mass transfer rate for a pair.

◆ dmdts()

Foam::PtrList< Foam::volScalarField > dmdts ( ) const
virtual

Return the mass transfer rates for each phase.

Definition at line 351 of file phaseSystem.C.

◆ momentumTransfer()

virtual autoPtr<momentumTransferTable> momentumTransfer ( )
pure virtual

Return the momentum transfer matrices for the cell-based.

algorithm

◆ momentumTransferf()

virtual autoPtr<momentumTransferTable> momentumTransferf ( )
pure virtual

Return the momentum transfer matrices for the face-based.

algorithm

◆ AFfs()

virtual PtrList<surfaceScalarField> AFfs ( ) const
pure virtual

Return the implicit force coefficients for the face-based.

algorithm

◆ phiFs()

virtual PtrList<surfaceScalarField> phiFs ( const PtrList< volScalarField > &  rAUs)
pure virtual

Return the force fluxes for the cell-based algorithm.

◆ phiFfs()

virtual PtrList<surfaceScalarField> phiFfs ( const PtrList< surfaceScalarField > &  rAUfs)
pure virtual

Return the force fluxes for the face-based algorithm.

◆ phiKdPhis()

virtual PtrList<surfaceScalarField> phiKdPhis ( const PtrList< volScalarField > &  rAUs) const
pure virtual

Return the force fluxes for the cell-based algorithm.

◆ phiKdPhifs()

virtual PtrList<surfaceScalarField> phiKdPhifs ( const PtrList< surfaceScalarField > &  rAUfs) const
pure virtual

Return the force fluxes for the face-based algorithm.

◆ KdUByAs()

virtual PtrList<volVectorField> KdUByAs ( const PtrList< volScalarField > &  rAUs) const
pure virtual

Return the explicit part of the drag force.

◆ partialElimination()

virtual void partialElimination ( const PtrList< volScalarField > &  rAUs)
pure virtual

Solve the drag system for the new velocities and fluxes.

◆ partialEliminationf()

virtual void partialEliminationf ( const PtrList< surfaceScalarField > &  rAUfs)
pure virtual

Solve the drag system for the new fluxes.

◆ ddtCorrByAs()

virtual PtrList<surfaceScalarField> ddtCorrByAs ( const PtrList< volScalarField > &  rAUs,
const bool  includeVirtualMass = false 
) const
pure virtual

Return the flux corrections for the cell-based algorithm.

◆ DByAfs()

virtual const HashPtrTable<surfaceScalarField>& DByAfs ( ) const
pure virtual

Return the phase diffusivities divided by the momentum.

coefficients

◆ heatTransfer() [2/2]

virtual autoPtr<heatTransferTable> heatTransfer ( ) const
pure virtual

Return the heat transfer matrices.

◆ massTransfer()

virtual autoPtr<massTransferTable> massTransfer ( ) const
pure virtual

Return the mass transfer matrices.

◆ solve() [2/2]

virtual void solve ( )
virtual

Solve for the phase fractions.

Reimplemented in twoPhaseSystem, and twoPhaseSystem.

◆ correct() [2/2]

virtual void correct ( )
virtual

Correct the fluid properties other than those listed below.

Implements basicThermo.

Reimplemented in twoPhaseSystem.

◆ correctKinematics()

void correctKinematics ( )
virtual

Correct the kinematics.

Definition at line 372 of file phaseSystem.C.

References Foam::fvc::ddt(), basicThermo::p(), and thermo.

Here is the call graph for this function:

◆ correctThermo()

void correctThermo ( )
virtual

Correct the thermodynamics.

Definition at line 391 of file phaseSystem.C.

◆ correctTurbulence() [2/2]

virtual void correctTurbulence ( )
virtual

Correct the turbulence.

Reimplemented in twoPhaseSystem.

◆ correctEnergyTransport()

void correctEnergyTransport ( )
virtual

Correct the energy transport e.g. alphat.

Definition at line 409 of file phaseSystem.C.

◆ read() [2/2]

virtual bool read ( )
virtual

Read base phaseProperties dictionary.

Reimplemented from basicThermo.

Reimplemented in twoPhaseSystem.

◆ lookupBlendedSubModel() [2/2]

const Foam::BlendedInterfacialModel<modelType>& lookupBlendedSubModel ( const phasePair key) const

Definition at line 491 of file phaseSystemTemplates.C.

References IOobject::groupName(), objectRegistry::lookupObject(), mesh, phasePair::name(), Foam::name(), and phasePair::otherName().

Here is the call graph for this function:

Member Data Documentation

◆ mesh_

const fvMesh & mesh_
protected

Reference to the mesh.

Definition at line 118 of file phaseSystem.H.

◆ mu_

volScalarField mu_
protected

Dynamic viscocity.

Definition at line 121 of file phaseSystem.H.

Referenced by phaseSystem::calcMu().

◆ phaseNames_

wordList phaseNames_
protected

Phase names.

Definition at line 124 of file phaseSystem.H.

◆ phi_

surfaceScalarField phi_
protected

Mixture total volumetric flux.

Total volumetric flux.

Definition at line 127 of file phaseSystem.H.

◆ rhoPhi_

surfaceScalarField rhoPhi_
protected

Mixture total mass flux.

Definition at line 130 of file phaseSystem.H.

◆ phaseModels_ [1/2]

phaseModelTable phaseModels_
protected

Phase models.

Definition at line 133 of file phaseSystem.H.

◆ phasePairs_

phasePairTable phasePairs_
protected

Phase pairs.

Definition at line 136 of file phaseSystem.H.

◆ totalPhasePairs_

phasePairTable totalPhasePairs_
protected

Total ordered phase pairs in the system.

Definition at line 139 of file phaseSystem.H.

◆ Prt_

dimensionedScalar Prt_
protected

Turbulent Prandt number.

Definition at line 142 of file phaseSystem.H.

◆ surfaceTensionModels_

surfaceTensionModelTable surfaceTensionModels_
protected

Surface tension models.

Definition at line 148 of file phaseSystem.H.

◆ interfacePorousModelTable_

interfacePorousModelTable interfacePorousModelTable_
protected

Interface porous models.

Definition at line 151 of file phaseSystem.H.

◆ phasePropertiesName

const Foam::word phasePropertiesName
static

Default name of the phase properties dictionary.

Definition at line 254 of file phaseSystem.H.

◆ phaseModels_ [2/2]

phaseModelList phaseModels_
protected

Phase models.

Definition at line 129 of file phaseSystem.H.

◆ movingPhaseModels_

phaseModelPartialList movingPhaseModels_
protected

Moving phase models.

Definition at line 132 of file phaseSystem.H.

◆ stationaryPhaseModels_

phaseModelPartialList stationaryPhaseModels_
protected

Stationary phase models.

Definition at line 135 of file phaseSystem.H.

◆ anisothermalPhaseModels_

phaseModelPartialList anisothermalPhaseModels_
protected

Anisothermal phase models.

Definition at line 138 of file phaseSystem.H.

◆ multiComponentPhaseModels_

phaseModelPartialList multiComponentPhaseModels_
protected

Multi-component phase models.

Definition at line 141 of file phaseSystem.H.

◆ dpdt_

volScalarField dpdt_
protected

Rate of change of pressure.

Definition at line 150 of file phaseSystem.H.

◆ MRF_

IOMRFZoneList MRF_
protected

Optional MRF zones.

Definition at line 153 of file phaseSystem.H.

◆ blendingMethods_

blendingMethodTable blendingMethods_
protected

Blending methods.

Definition at line 156 of file phaseSystem.H.

◆ aspectRatioModels_

aspectRatioModelTable aspectRatioModels_
protected

Aspect ratio models.

Definition at line 165 of file phaseSystem.H.

◆ propertiesName

const Foam::word propertiesName
static

Default name of the phase properties dictionary.

Definition at line 287 of file phaseSystem.H.


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