OGS
PropertyType.h
Go to the documentation of this file.
1
13#pragma once
14
15#include <array>
16#include <memory>
17#include <string>
18
19namespace MaterialPropertyLib
20{
21class Property;
22}
23
24namespace MaterialPropertyLib
25{
32enum PropertyType : int
33{
117
118static const std::array<std::string, PropertyType::number_of_properties>
119 property_enum_to_string{{"acentric_factor",
120 "binary_interaction_coefficient",
121 "biot_coefficient",
122 "bishops_effective_stress",
123 "brooks_corey_exponent",
124 "bulk_modulus",
125 "capillary_pressure",
126 "critical_density",
127 "critical_pressure",
128 "critical_temperature",
129 "compressibility",
130 "concentration",
131 "decay_rate",
132 "density",
133 "diffusion",
134 "drhodT",
135 "effective_stress",
136 "enthalpy",
137 "entry_pressure",
138 "evaporation_enthalpy",
139 "fredlund_parameters",
140 "heat_capacity",
141 "henry_coefficient",
142 "latent_heat",
143 "longitudinal_dispersivity",
144 "molality",
145 "molar_mass",
146 "molar_volume",
147 "mole_fraction",
148 "molecular_diffusion",
149 "name",
150 "permeability",
151 "phase_change_expansivity",
152 "phase_velocity",
153 "pore_diffusion",
154 "poissons_ratio",
155 "porosity",
156 "reference_density",
157 "reference_temperature",
158 "reference_pressure",
159 "relative_permeability",
160 "relative_permeability_nonwetting_phase",
161 "residual_gas_saturation",
162 "residual_liquid_saturation",
163 "retardation_factor",
164 "saturation",
165 "saturation_density",
166 "saturation_enthalpy",
167 "saturation_micro",
168 "saturation_temperature",
169 "specific_heat_capacity",
170 "specific_latent_heat",
171 "storage",
172 "storage_contribution",
173 "swelling_stress_rate",
174 "temperature",
175 "thermal_conductivity",
176 "thermal_diffusion_enhancement_factor",
177 "thermal_expansivity",
178 "thermal_expansivity_contribution",
179 "thermal_longitudinal_dispersivity",
180 "thermal_osmosis_coefficient",
181 "thermal_transversal_dispersivity",
182 "transport_porosity",
183 "transversal_dispersivity",
184 "vapour_pressure",
185 "viscosity",
186 "volume_fraction",
187 "youngs_modulus"}};
188
191PropertyType convertStringToProperty(std::string const& string);
192
196using PropertyArray =
197 std::array<std::unique_ptr<Property>, PropertyType::number_of_properties>;
198
199} // namespace MaterialPropertyLib
std::array< std::unique_ptr< Property >, PropertyType::number_of_properties > PropertyArray
PropertyType convertStringToProperty(std::string const &string)
static const std::array< std::string, PropertyType::number_of_properties > property_enum_to_string
Definition: PropertyType.h:119
@ molecular_diffusion
ion diffusivity in free water.
Definition: PropertyType.h:66
@ thermal_diffusion_enhancement_factor
Thermal diffusion enhancement factor for water vapor flow.
Definition: PropertyType.h:99
@ saturation_micro
capillary pressure saturation relationship for microstructure.
Definition: PropertyType.h:89
@ relative_permeability_nonwetting_phase
Definition: PropertyType.h:80
@ longitudinal_dispersivity
used to compute the hydrodynamic dispersion tensor.
Definition: PropertyType.h:60
@ concentration
used to specify decay rate of a substance.
Definition: PropertyType.h:46
@ transversal_dispersivity
used to compute the hydrodynamic dispersion tensor.
Definition: PropertyType.h:110
@ retardation_factor
specify retardation factor used in component transport process.
Definition: PropertyType.h:84