From 89fafb4fdff9fd00ebad6161beef36189308054c Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Wed, 26 Oct 2022 13:20:53 +0000 Subject: [PATCH] Improving missing material error for DAGMC material by ID --- src/dagmc.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/dagmc.cpp b/src/dagmc.cpp index 0e04869fd..b06db792e 100644 --- a/src/dagmc.cpp +++ b/src/dagmc.cpp @@ -486,13 +486,20 @@ void DAGUniverse::legacy_assign_material( // if no material was set using a name, assign by id if (!mat_found_by_name) { + bool found_by_id = true; try { auto id = std::stoi(mat_string); + if (model::material_map.find(id) == model::material_map.end()) + found_by_id = false; c->material_.emplace_back(id); } catch (const std::invalid_argument&) { + found_by_id = false; + } + + // report failure for failed int conversion or missing material + if (!found_by_id) fatal_error(fmt::format( "No material '{}' found for volume (cell) {}", mat_string, c->id_)); - } } if (settings::verbosity >= 10) {