14#include <spdlog/fmt/ranges.h> 
   16#include <range/v3/view/map.hpp> 
   24    return const_cast<Medium*
>(
 
 
   30    std::size_t 
const element_id)
 const 
   32    auto const material_id =
 
   37    if (
auto const it = 
media_.find(material_id); it != 
media_.end())
 
   39        return it->second.get();
 
   48        assert(material_id == 0);
 
   49        ERR(
"No MaterialIDs given in the mesh therefore default material id = " 
   52    auto keys = 
media_ | ranges::views::keys;
 
   56        ERR(
"Single medium for material id {} is defined.",
 
   57            fmt::join(keys, 
", "));
 
   61        ERR(
"Media for material ids {} are defined.", fmt::join(keys, 
", "));
 
   63    OGS_FATAL(
"No medium for material id {} found for element {}.", material_id,
 
 
   68    std::size_t 
const element_id)
 const 
   70    auto const material_id =
 
   75            "There is no medium definition for element {:d} with material " 
   76            "ID {:d}. Please define a medium for each material.",
 
   77            element_id, material_id);
 
 
void ERR(fmt::format_string< Args... > fmt, Args &&... args)
 
Definition of the Mesh class.
 
void checkElementHasMedium(std::size_t const element_id) const
 
MeshLib::PropertyVector< int > const  *const material_ids_
 
Medium * getMedium(std::size_t element_id)
 
std::map< int, std::shared_ptr< Medium > > const  & media_