diff --git a/ProcessLib/LiquidFlow/CreateLiquidFlowProcess.cpp b/ProcessLib/LiquidFlow/CreateLiquidFlowProcess.cpp index 09dccd17f166dadef61fb5e46ddcd5c302831460..9ee99a2e7559418ac12e5c199406fd702794cac6 100644 --- a/ProcessLib/LiquidFlow/CreateLiquidFlowProcess.cpp +++ b/ProcessLib/LiquidFlow/CreateLiquidFlowProcess.cpp @@ -73,25 +73,32 @@ void checkMPLProperties( MaterialPropertyLib::PropertyType::viscosity, MaterialPropertyLib::PropertyType::density}; - for (auto const& element_id : mesh.getElements() | MeshLib::views::ids) + // Check Constant-type density. + if (is_equation_type_volume) { - auto const& medium = *media_map.getMedium(element_id); - checkRequiredProperties(medium, required_medium_properties); - checkRequiredProperties(fluidPhase(medium), required_liquid_properties); - - if (element_id == 0 && is_equation_type_volume) + for (auto const& element_id : mesh.getElements() | MeshLib::views::ids) { - auto const& fluid_phase = fluidPhase(medium); - if (typeid(fluid_phase[MaterialPropertyLib::PropertyType::density]) - .name() != typeid(MaterialPropertyLib::Constant).name()) + auto const& medium = *media_map.getMedium(element_id); + auto const& fluid_phase_density = + fluidPhase(medium)[MaterialPropertyLib::PropertyType::density]; + if (typeid(fluid_phase_density) != + typeid(MaterialPropertyLib::Constant)) { OGS_FATAL( "Since `equation_balance_type` is set to `volume`,the " - "phase density type must be `Constant`. Note: by default, " + "phase density type must be `Constant`. Note: by " + "default, " "`equation_balance_type` is set to `volume`."); } } } + + for (auto const& element_id : mesh.getElements() | MeshLib::views::ids) + { + auto const& medium = *media_map.getMedium(element_id); + checkRequiredProperties(medium, required_medium_properties); + checkRequiredProperties(fluidPhase(medium), required_liquid_properties); + } DBUG("Media properties verified."); }