diff --git a/src/mesh/MeshCellZone.cpp b/src/mesh/MeshCellZone.cpp index 36418e2b510dae6a15d4f30229c5330ff09af2c9..240d8ea4f1be27e879d0455d312f12f67545e7fb 100644 --- a/src/mesh/MeshCellZone.cpp +++ b/src/mesh/MeshCellZone.cpp @@ -26,7 +26,17 @@ getMeshCellZone(const Mesh<Connectivity<Dimension>>& mesh, const IZoneDescriptor } std::ostringstream ost; - ost << "cannot find zone with name " << rang::fgB::red << zone_descriptor << rang::style::reset; + ost << "cannot find zone with name " << rang::fgB::red << zone_descriptor << rang::style::reset << '\n'; + ost << "The mesh contains " << mesh.connectivity().template numberOfRefItemList<ItemType::cell>() << " zones: "; + for (size_t i_ref_cell_list = 0; i_ref_cell_list < mesh.connectivity().template numberOfRefItemList<ItemType::cell>(); + ++i_ref_cell_list) { + const auto& ref_cell_list = mesh.connectivity().template refItemList<ItemType::cell>(i_ref_cell_list); + const RefId& ref = ref_cell_list.refId(); + if (i_ref_cell_list > 0) { + ost << ", "; + } + ost << rang::fgB::yellow << ref << rang::style::reset; + } throw NormalError(ost.str()); }