OGS
Enthalpy.h
Go to the documentation of this file.
1
10#pragma once
11
12#include "Base.h"
13#include "Enthalpy.h"
14#include "FluidDensity.h"
15#include "PhaseTransitionData.h"
16#include "Porosity.h"
18#include "Saturation.h"
19#include "SolidDensity.h"
20#include "SolidHeatCapacity.h"
21
22namespace ProcessLib::TH2M
23{
24namespace ConstitutiveRelations
25{
27{
28 double h_G = nan;
29 double h_L = nan;
30
31 static auto reflect()
32 {
33 using Self = FluidEnthalpyData;
34 namespace R = ProcessLib::Reflection;
35
36 return std::tuple{R::makeReflectionData("enthalpy_gas", &Self::h_G),
37 R::makeReflectionData("enthalpy_liquid", &Self::h_L)};
38 }
39};
40
42{
43 double h_S = nan;
44
45 static auto reflect()
46 {
47 using Self = SolidEnthalpyData;
48 namespace R = ProcessLib::Reflection;
49
50 return std::tuple{R::makeReflectionData("enthalpy_solid", &Self::h_S)};
51 }
52};
53
58
65
67{
68 void eval(
69 FluidDensityData const& fluid_density_data,
70 FluidEnthalpyData const& fluid_enthalpy_data,
71 PorosityData const& porosity_data,
72 SaturationData const& S_L_data,
73 SolidDensityData const& solid_density_data,
74 SolidEnthalpyData const& solid_enthalpy_data,
75 EffectiveVolumetricEnthalpy& effective_volumetric_enthalpy_data) const;
76
77 void dEval(FluidDensityData const& fluid_density_data,
78 FluidEnthalpyData const& fluid_enthalpy_data,
79 PhaseTransitionData const& phase_transition_data,
80 PorosityData const& porosity_data,
81 PorosityDerivativeData const& porosity_d_data,
82 SaturationData const& S_L_data,
83 SolidDensityData const& solid_density_data,
84 SolidDensityDerivativeData const& solid_density_d_data,
85 SolidEnthalpyData const& solid_enthalpy_data,
86 SolidHeatCapacityData const& solid_heat_capacity_data,
88 effective_volumetric_enthalpy_d_data) const;
89};
90
92{
93 void eval(SolidHeatCapacityData const& solid_heat_capacity_data,
94 TemperatureData const& T_data,
95 SolidEnthalpyData& solid_enthalpy_data) const;
96};
97} // namespace ConstitutiveRelations
98} // namespace ProcessLib::TH2M
static constexpr double nan
Convenience alias for not a number.
Definition Base.h:80
void dEval(FluidDensityData const &fluid_density_data, FluidEnthalpyData const &fluid_enthalpy_data, PhaseTransitionData const &phase_transition_data, PorosityData const &porosity_data, PorosityDerivativeData const &porosity_d_data, SaturationData const &S_L_data, SolidDensityData const &solid_density_data, SolidDensityDerivativeData const &solid_density_d_data, SolidEnthalpyData const &solid_enthalpy_data, SolidHeatCapacityData const &solid_heat_capacity_data, EffectiveVolumetricEnthalpyDerivatives &effective_volumetric_enthalpy_d_data) const
Definition Enthalpy.cpp:35
void eval(FluidDensityData const &fluid_density_data, FluidEnthalpyData const &fluid_enthalpy_data, PorosityData const &porosity_data, SaturationData const &S_L_data, SolidDensityData const &solid_density_data, SolidEnthalpyData const &solid_enthalpy_data, EffectiveVolumetricEnthalpy &effective_volumetric_enthalpy_data) const
Definition Enthalpy.cpp:16
void eval(SolidHeatCapacityData const &solid_heat_capacity_data, TemperatureData const &T_data, SolidEnthalpyData &solid_enthalpy_data) const
Definition Enthalpy.cpp:92