50 return std::make_unique<LiquidDensity>(beta, rho0, T0, p0, E);
70 return std::make_unique<LinearTemperatureDependentDensity>(rho0, T0, beta);
79 const auto reference_density =
82 const auto reference_concentration =
85 const auto fluid_density_difference_ratio =
88 return std::make_unique<LinearConcentrationDependentDensity>(
90 reference_concentration,
91 fluid_density_difference_ratio);
93static std::unique_ptr<FluidProperty>
100 const auto reference_density =
103 const auto reference_concentration =
106 const auto fluid_density_concentration_difference_ratio =
109 "fluid_density_concentration_difference_ratio");
110 const auto reference_pressure =
113 const auto fluid_density_pressure_difference_ratio =
116 "fluid_density_pressure_difference_ratio");
117 return std::make_unique<LinearConcentrationAndPressureDependentDensity>(
119 reference_concentration,
120 fluid_density_concentration_difference_ratio,
122 fluid_density_pressure_difference_ratio);
131 if (type ==
"Constant")
135 return std::make_unique<ConstantFluidProperty>(
139 if (type ==
"LiquidDensity")
143 if (type ==
"TemperatureDependent")
147 if (type ==
"ConcentrationDependent")
151 if (type ==
"ConcentrationAndPressureDependent")
155 if (type ==
"IdealGasLaw")
159 return std::make_unique<IdealGasLaw>(
165 "The density type {:s} is unavailable.\n"
166 "The available types are: \n\tConstant, \n\tLiquidDensity, "
167 "\n\tTemperatureDependent, \n\tIdealGasLaw."
168 "\n\tWaterDensityIAPWSIF97Region1\n",
create an instance of a fluid density class.
Declaration of class IdealGasLow for fluid density by the ideal gas law depending on one variable lin...
T peekConfigParameter(std::string const ¶m) const
T getConfigParameter(std::string const ¶m) const
void checkConfigParameter(std::string const ¶m, std::string_view const value) const
static std::unique_ptr< FluidProperty > createLinearConcentrationDependentDensity(BaseLib::ConfigTree const &config)
std::unique_ptr< FluidProperty > createFluidDensityModel(BaseLib::ConfigTree const &config)
static std::unique_ptr< FluidProperty > createLinearConcentrationAndPressureDependentDensity(BaseLib::ConfigTree const &config)
static std::unique_ptr< FluidProperty > createLiquidDensity(BaseLib::ConfigTree const &config)
static std::unique_ptr< FluidProperty > createLinearTemperatureDependentDensity(BaseLib::ConfigTree const &config)