OGS
CheckMaterialSpatialDistributionMap.h
Go to the documentation of this file.
1 
12 #include "Medium.h"
13 #include "MeshLib/Mesh.h"
15 #include "Phase.h"
16 
17 namespace MaterialPropertyLib
18 {
19 template <typename ContainerMedium,
20  typename ContainerSolid,
21  typename ContainerLiquid>
23  MeshLib::Mesh const& mesh,
25  ContainerMedium const& required_properties_medium,
26  ContainerSolid const& required_properties_solid_phase,
27  ContainerLiquid const& required_properties_liquid_phase)
28 {
29  for (auto const& element : mesh.getElements())
30  {
31  auto const element_id = element->getID();
32 
33  auto const& medium = *media_map.getMedium(element_id);
34  if (!required_properties_medium.empty())
35  {
37  medium, required_properties_medium);
38  }
39  if (!required_properties_liquid_phase.empty())
40  {
42  medium.phase("AqueousLiquid"),
43  required_properties_liquid_phase);
44  }
45  if (!required_properties_solid_phase.empty())
46  {
48  medium.phase("Solid"), required_properties_solid_phase);
49  }
50  }
51 }
52 
53 } // namespace MaterialPropertyLib
Definition of the Element class.
Definition of the Mesh class.
std::vector< Element * > const & getElements() const
Get the element-vector for the mesh.
Definition: Mesh.h:98
void checkMaterialSpatialDistributionMap(MeshLib::Mesh const &mesh, MaterialPropertyLib::MaterialSpatialDistributionMap const &media_map, ContainerMedium const &required_properties_medium, ContainerSolid const &required_properties_solid_phase, ContainerLiquid const &required_properties_liquid_phase)
void checkRequiredProperties(Component const &c, Container const &required_properties)
Definition: Component.h:96