diff --git a/include/openmc/mesh.h b/include/openmc/mesh.h index 6d2c2f0296..0ace6dfea7 100644 --- a/include/openmc/mesh.h +++ b/include/openmc/mesh.h @@ -7,13 +7,13 @@ #include #include "hdf5.h" -#include "pugixml.hpp" #include "xtensor/xtensor.hpp" #include "openmc/memory.h" // for unique_ptr #include "openmc/particle.h" #include "openmc/position.h" #include "openmc/vector.h" +#include "openmc/xml_interface.h" #ifdef DAGMC #include "moab/AdaptiveKDTree.hpp" diff --git a/src/mesh.cpp b/src/mesh.cpp index d849e5d55d..771d6f81f2 100644 --- a/src/mesh.cpp +++ b/src/mesh.cpp @@ -2324,6 +2324,14 @@ const std::string LibMesh::mesh_lib_type = "libmesh"; LibMesh::LibMesh(pugi::xml_node node) : UnstructuredMesh(node) { + std::string& filename = node.get_node_value(node, "filename"); + double length_multiplier = std::stod(node.get_node_value(node, "length_multiplier")); + set_mesh_pointer_from_filename(filename); + set_length_multiplier(length_multiplier); + if (specified_length_multiplier_) { + libMesh::MeshTools::Modification::scale(*m_, length_multiplier_); + } + m_->prepare_for_use(); initialize(); }