Files
Henry Weller d3a237f560 reactingEulerFoam: Multiphase thermal phase change and support for multiple mass transfer mechanisms
- Thermal phase change and wall boiling functionality has been generalized to
  support two- and multi- phase simulations.
- Thermal phase change now also allows purePhaseModel, which simplifies case setup.
- The phaseSystem templates have been restructured in preparation of multiple
  simultaneous mass transfer mechanisms. For example, combination of thermal phase
  and inhomogeneous population balance models.

Patch contributed by VTT Technical Research Centre of Finland Ltd and Institute
of Fluid Dynamics, Helmholtz-Zentrum Dresden - Rossendorf (HZDR).
2017-12-31 19:50:22 +00:00

141 lines
3.5 KiB
C++
Executable File

/*---------------------------------------------------------------------------*\
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2015-2017 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
OpenFOAM is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.
You should have received a copy of the GNU General Public License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Class
Foam::saturationModel
Description
SourceFiles
saturationModel.C
newSaturationModel.C
\*---------------------------------------------------------------------------*/
#ifndef saturationModel_H
#define saturationModel_H
#include "IOdictionary.H"
#include "volFields.H"
#include "dictionary.H"
#include "runTimeSelectionTables.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
/*---------------------------------------------------------------------------*\
Class saturationModel Declaration
\*---------------------------------------------------------------------------*/
class saturationModel
:
public IOdictionary
{
// Private Member Functions
//- Disallow default bitwise copy construct
saturationModel(const saturationModel&);
//- Disallow default bitwise assignment
void operator=(const saturationModel&);
public:
//- Runtime type information
TypeName("saturationModel");
//- Declare runtime construction
declareRunTimeSelectionTable
(
autoPtr,
saturationModel,
dictionary,
(
const dictionary& dict, const objectRegistry& db
),
(dict, db)
);
// Constructors
//- Construct null
saturationModel(const objectRegistry& db);
// Selectors
//- Select null constructed
static autoPtr<saturationModel> New
(
const dictionary& dict,
const objectRegistry& db
);
//- Destructor
virtual ~saturationModel();
// Member Functions
//- Saturation pressure
virtual tmp<volScalarField> pSat
(
const volScalarField& T
) const = 0;
//- Saturation pressure derivetive w.r.t. temperature
virtual tmp<volScalarField> pSatPrime
(
const volScalarField& T
) const = 0;
//- Natural log of the saturation pressure
virtual tmp<volScalarField> lnPSat
(
const volScalarField& T
) const = 0;
//- Saturation temperature
virtual tmp<volScalarField> Tsat
(
const volScalarField& p
) const = 0;
};
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
} // End namespace Foam
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
#endif
// ************************************************************************* //