OGS
SpecificHeatCapacityWithLatentHeat.h
Go to the documentation of this file.
1
11
#pragma once
12
13
#include "
MaterialLib/MPL/Property.h
"
14
15
namespace
MaterialPropertyLib
16
{
37
class
SpecificHeatCapacityWithLatentHeat
final :
public
Property
38
{
39
struct
PhaseProperties
40
{
41
Property
const
*
liquid
=
nullptr
;
42
Property
const
*
frozen
=
nullptr
;
43
Property
const
*
porous
=
nullptr
;
44
};
45
46
public
:
47
SpecificHeatCapacityWithLatentHeat
(std::string
name
,
double
const
l);
48
49
void
checkScale
()
const override
;
50
51
// initialize container with pointers to the phases properties
52
void
setProperties
(
53
std::vector<std::unique_ptr<Phase>>
const
& phases)
override
;
54
55
double
effectiveVolumetricHeatCapacity
(
56
VariableArray
const
& variable_array,
57
ParameterLib::SpatialPosition
const
& pos,
58
double
const
t,
59
double
const
dt)
const
;
60
61
PropertyDataType
value
(
VariableArray
const
& variable_array,
62
ParameterLib::SpatialPosition
const
& pos,
63
double
const
t,
64
double
const
dt)
const override
;
65
66
PropertyDataType
dValue
(
VariableArray
const
& variable_array,
67
Variable
const
variable,
68
ParameterLib::SpatialPosition
const
& pos,
69
double
const
t,
70
double
const
dt)
const override
;
71
72
private
:
73
double
const
l_
;
//< specific latent heat of melting
74
76
PhaseProperties
densities_
;
78
PhaseProperties
spec_heat_capacities_
;
79
};
80
}
// namespace MaterialPropertyLib
Property.h
MaterialPropertyLib::Property
Definition
Property.h:51
MaterialPropertyLib::Property::value
virtual PropertyDataType value() const
Definition
Property.cpp:76
MaterialPropertyLib::SpecificHeatCapacityWithLatentHeat
Definition
SpecificHeatCapacityWithLatentHeat.h:38
MaterialPropertyLib::SpecificHeatCapacityWithLatentHeat::setProperties
void setProperties(std::vector< std::unique_ptr< Phase > > const &phases) override
Default implementation:
Definition
SpecificHeatCapacityWithLatentHeat.cpp:35
MaterialPropertyLib::SpecificHeatCapacityWithLatentHeat::spec_heat_capacities_
PhaseProperties spec_heat_capacities_
Pointers to the properties in each phase.
Definition
SpecificHeatCapacityWithLatentHeat.h:78
MaterialPropertyLib::SpecificHeatCapacityWithLatentHeat::densities_
PhaseProperties densities_
Pointers to the properties in each phase.
Definition
SpecificHeatCapacityWithLatentHeat.h:76
MaterialPropertyLib::SpecificHeatCapacityWithLatentHeat::l_
double const l_
Definition
SpecificHeatCapacityWithLatentHeat.h:73
MaterialPropertyLib::SpecificHeatCapacityWithLatentHeat::checkScale
void checkScale() const override
Definition
SpecificHeatCapacityWithLatentHeat.cpp:25
MaterialPropertyLib::SpecificHeatCapacityWithLatentHeat::dValue
PropertyDataType dValue(VariableArray const &variable_array, Variable const variable, ParameterLib::SpatialPosition const &pos, double const t, double const dt) const override
Definition
SpecificHeatCapacityWithLatentHeat.cpp:134
MaterialPropertyLib::SpecificHeatCapacityWithLatentHeat::SpecificHeatCapacityWithLatentHeat
SpecificHeatCapacityWithLatentHeat(std::string name, double const l)
Definition
SpecificHeatCapacityWithLatentHeat.cpp:18
MaterialPropertyLib::SpecificHeatCapacityWithLatentHeat::effectiveVolumetricHeatCapacity
double effectiveVolumetricHeatCapacity(VariableArray const &variable_array, ParameterLib::SpatialPosition const &pos, double const t, double const dt) const
Definition
SpecificHeatCapacityWithLatentHeat.cpp:72
MaterialPropertyLib::VariableArray
Definition
VariableType.h:97
ParameterLib::SpatialPosition
Definition
SpatialPosition.h:27
MaterialPropertyLib
Definition
ChemicalSolverInterface.h:21
MaterialPropertyLib::Variable
Variable
Definition
VariableType.h:30
MaterialPropertyLib::name
@ name
Definition
PropertyType.h:66
MaterialPropertyLib::PropertyDataType
std::variant< double, Eigen::Matrix< double, 2, 1 >, Eigen::Matrix< double, 3, 1 >, Eigen::Matrix< double, 2, 2 >, Eigen::Matrix< double, 3, 3 >, Eigen::Matrix< double, 4, 1 >, Eigen::Matrix< double, 6, 1 >, Eigen::MatrixXd > PropertyDataType
Definition
Property.h:31
MaterialPropertyLib::SpecificHeatCapacityWithLatentHeat::PhaseProperties
Definition
SpecificHeatCapacityWithLatentHeat.h:40
MaterialPropertyLib::SpecificHeatCapacityWithLatentHeat::PhaseProperties::frozen
Property const * frozen
Definition
SpecificHeatCapacityWithLatentHeat.h:42
MaterialPropertyLib::SpecificHeatCapacityWithLatentHeat::PhaseProperties::liquid
Property const * liquid
Definition
SpecificHeatCapacityWithLatentHeat.h:41
MaterialPropertyLib::SpecificHeatCapacityWithLatentHeat::PhaseProperties::porous
Property const * porous
Definition
SpecificHeatCapacityWithLatentHeat.h:43
MaterialLib
MPL
Properties
SpecificHeatCapacityWithLatentHeat.h
Generated by
1.12.0