OGS
PhaseTransitionModel.h
Go to the documentation of this file.
1
10#pragma once
11
12#include "Base.h"
13#include "ConstitutiveDensity.h"
14#include "Enthalpy.h"
15#include "FluidDensity.h"
16#include "MassMoleFractions.h"
17#include "PhaseTransitionData.h"
18#include "PureLiquidDensity.h"
20#include "Viscosity.h"
21
22namespace ProcessLib::TH2M
23{
24namespace ConstitutiveRelations
25{
27{
29 std::map<int, std::shared_ptr<MaterialPropertyLib::Medium>> const&
30 media)
31 {
32 DBUG("Create phase transition models...");
33
34 // check for minimum requirement definitions in media object
35 std::array const required_gas_properties = {
37 std::array const required_liquid_properties = {
39
40 for (auto const& m : media)
41 {
42 checkRequiredProperties(m.second->phase("Gas"),
43 required_gas_properties);
44 checkRequiredProperties(m.second->phase("AqueousLiquid"),
45 required_liquid_properties);
46 }
47 }
48
49 virtual ~PhaseTransitionModel() = default;
50
51 virtual void eval(SpaceTimeData const& x_t, MediaData const& media_data,
52 GasPressureData const& p_GR,
53 CapillaryPressureData const& p_cap,
54 TemperatureData const& T_data,
55 PureLiquidDensityData const& rho_W_LR,
56 ViscosityData& viscosity_data,
57 EnthalpyData& enthalpy_data,
58 MassMoleFractionsData& mass_mole_fractions_data,
59 FluidDensityData& fluid_density_data,
60 VapourPartialPressureData& vapour_pressure_data,
61 ConstituentDensityData& constituent_density_data,
62 PhaseTransitionData& cv) const = 0;
63};
64} // namespace ConstitutiveRelations
65} // namespace ProcessLib::TH2M
void DBUG(fmt::format_string< Args... > fmt, Args &&... args)
Definition Logging.h:30
virtual void eval(SpaceTimeData const &x_t, MediaData const &media_data, GasPressureData const &p_GR, CapillaryPressureData const &p_cap, TemperatureData const &T_data, PureLiquidDensityData const &rho_W_LR, ViscosityData &viscosity_data, EnthalpyData &enthalpy_data, MassMoleFractionsData &mass_mole_fractions_data, FluidDensityData &fluid_density_data, VapourPartialPressureData &vapour_pressure_data, ConstituentDensityData &constituent_density_data, PhaseTransitionData &cv) const =0
PhaseTransitionModel(std::map< int, std::shared_ptr< MaterialPropertyLib::Medium > > const &media)