Class to provide interfacial heat and mass transfer between a number of phases according the interfacial temperature approximated by the saturation temperature. More...
Public Member Functions | |
ThermalPhaseChangePhaseSystem (const fvMesh &) | |
Construct from fvMesh. More... | |
virtual | ~ThermalPhaseChangePhaseSystem () |
Destructor. More... | |
const interfaceSaturationTemperatureModel & | saturation (const phaseInterfaceKey &key) const |
Return the saturation temperature model for an interface. More... | |
virtual tmp< volScalarField > | dmdtf (const phaseInterfaceKey &key) const |
Return the mass transfer rate for an interface. More... | |
virtual PtrList< volScalarField > | dmdts () const |
Return the mass transfer rates for each phase. More... | |
virtual PtrList< volScalarField > | d2mdtdps () const |
Return the mass transfer linearisation coeffs for each phase. More... | |
virtual autoPtr< phaseSystem::momentumTransferTable > | momentumTransfer () |
Return the momentum transfer matrices for the cell-based algorithm. More... | |
virtual autoPtr< phaseSystem::momentumTransferTable > | momentumTransferf () |
Return the momentum transfer matrices for the face-based algorithm. More... | |
virtual autoPtr< phaseSystem::heatTransferTable > | heatTransfer () const |
Return the heat transfer matrices. More... | |
virtual autoPtr< phaseSystem::specieTransferTable > | specieTransfer () const |
Return the specie transfer matrices. More... | |
virtual void | correctContinuityError () |
Store phase dmdts at the during the continuity error update. More... | |
virtual void | correctInterfaceThermo () |
Correct the interface thermodynamics. More... | |
virtual bool | read () |
Read base phaseProperties dictionary. More... | |
Class to provide interfacial heat and mass transfer between a number of phases according the interfacial temperature approximated by the saturation temperature.
Based on the implementation described in:
Peltola, J., Pättikangas, T., Bainbridge, W., Lehnigk, R., Schlegel, F. (2019). On Development and validation of subcooled nucleate boiling models for OpenFOAM Foundation Release. NURETH-18 Conference Proceedings, Portland, Oregon, United States, 2019.
The present implementation includes simplified support for non-volatile components in addition to a single volatile component in order to account compressibility effects when non-volatile gas bubbles of non-volatile gas filled pressure reservoirs are present.
The phase change mass transfer calculation is still only dependent on the interfacial temperature estimate and interfacial heat transfer models. The mass diffusion effects in presence of non-volatile components at the interface are neglected.
Definition at line 74 of file ThermalPhaseChangePhaseSystem.H.
ThermalPhaseChangePhaseSystem | ( | const fvMesh & | mesh | ) |
Construct from fvMesh.
Definition at line 63 of file ThermalPhaseChangePhaseSystem.C.
References IOobject::AUTO_WRITE, Foam::dimDensity, Foam::dimPressure, Foam::dimTime, Foam::exit(), Foam::FatalError, FatalErrorInFunction, forAllConstIter, IOobject::groupName(), HashTable< T, Key, Hash >::insert(), IOobject::NO_READ, and IOobject::READ_IF_PRESENT.
|
virtual |
Destructor.
Definition at line 241 of file ThermalPhaseChangePhaseSystem.C.
const Foam::interfaceSaturationTemperatureModel & saturation | ( | const phaseInterfaceKey & | key | ) | const |
Return the saturation temperature model for an interface.
Definition at line 250 of file ThermalPhaseChangePhaseSystem.C.
|
virtual |
Return the mass transfer rate for an interface.
Definition at line 261 of file ThermalPhaseChangePhaseSystem.C.
References tmp< T >::ref().
|
virtual |
Return the mass transfer rates for each phase.
Definition at line 284 of file ThermalPhaseChangePhaseSystem.C.
|
virtual |
Return the mass transfer linearisation coeffs for each phase.
Definition at line 296 of file ThermalPhaseChangePhaseSystem.C.
References Foam::addField(), forAllConstIter, phaseInterface::phase1(), and phaseInterface::phase2().
|
virtual |
Return the momentum transfer matrices for the cell-based algorithm.
Definition at line 314 of file ThermalPhaseChangePhaseSystem.C.
|
virtual |
Return the momentum transfer matrices for the face-based algorithm.
Definition at line 331 of file ThermalPhaseChangePhaseSystem.C.
|
virtual |
Return the heat transfer matrices.
Definition at line 348 of file ThermalPhaseChangePhaseSystem.C.
References phaseModel::fluidThermo(), forAll, forAllConstIter, basicThermo::he(), phaseModel::index(), HashTable< T, Key, Hash >::insert(), phaseModel::name(), fluidThermo::p(), phaseInterface::phase1(), Foam::fvm::Sp(), and interfaceSaturationTemperatureModel::Tsat().
|
virtual |
Return the specie transfer matrices.
Definition at line 472 of file ThermalPhaseChangePhaseSystem.C.
References forAllConstIter, and HashTable< T, Key, Hash >::insert().
|
virtual |
Store phase dmdts at the during the continuity error update.
Definition at line 528 of file ThermalPhaseChangePhaseSystem.C.
|
virtual |
Correct the interface thermodynamics.
Definition at line 541 of file ThermalPhaseChangePhaseSystem.C.
References DimensionedField< Type, GeoMesh >::average(), GeometricField< Type, PatchField, GeoMesh >::boundaryField(), Foam::fvc::domainIntegrate(), Foam::endl(), fvPatch::faceCells(), phaseModel::fluidThermo(), forAll, forAllConstIter, Foam::gAverage(), Foam::gMax(), Foam::gMin(), IOobject::groupName(), Foam::Info, heatTransferModel::K(), GeometricField< Type, PatchField, GeoMesh >::max(), IOobject::member(), DimensionedField< Type, GeoMesh >::mesh(), phaseModel::name(), IOobject::name(), Foam::neg0(), fluidThermo::p(), fvPatchField< Type >::patch(), patchi, Foam::pos(), GeometricField< Type, PatchField, GeoMesh >::primitiveField(), GeometricField< Type, PatchField, GeoMesh >::primitiveFieldRef(), basicThermo::T(), phaseModel::Y(), and Foam::Zero.
|
virtual |
Read base phaseProperties dictionary.
Definition at line 750 of file ThermalPhaseChangePhaseSystem.C.
References Foam::blockMeshTools::read().