From ea0b6f2948afa16b9cd73bc7bbba70a2464fb34d Mon Sep 17 00:00:00 2001 From: pshriwise Date: Sun, 30 Sep 2018 02:50:56 +0000 Subject: [PATCH] Skipping geometry write, but indicating a DAGMC geometry was used for now. --- openmc/summary.py | 18 +++++++++++------- src/summary.cpp | 12 ++++++++---- 2 files changed, 19 insertions(+), 11 deletions(-) diff --git a/openmc/summary.py b/openmc/summary.py index 10898290a..a54e8ebbf 100644 --- a/openmc/summary.py +++ b/openmc/summary.py @@ -97,13 +97,17 @@ class Summary(object): self._macroscopics = name.decode() def _read_geometry(self): - # Read in and initialize the Materials and Geometry - self._read_materials() - self._read_surfaces() - cell_fills = self._read_cells() - self._read_universes() - self._read_lattices() - self._finalize_geometry(cell_fills) + try: + self._f['geometry'].attrs.get("cad") + return + except: + # Read in and initialize the Materials and Geometry + self._read_materials() + self._read_surfaces() + cell_fills = self._read_cells() + self._read_universes() + self._read_lattices() + self._finalize_geometry(cell_fills) def _read_materials(self): for group in self._f['materials'].values(): diff --git a/src/summary.cpp b/src/summary.cpp index 7a0c4324a..eaedd21dd 100644 --- a/src/summary.cpp +++ b/src/summary.cpp @@ -9,11 +9,15 @@ namespace openmc { extern "C" void write_geometry(hid_t file_id) { -#ifdef DAGMC - if (settings::dagmc) return; -#endif - auto geom_group = create_group(file_id, "geometry"); + +#ifdef DAGMC + if (settings::dagmc) { + write_attribute(geom_group, "cad", 1); + return; + } +#endif + write_attribute(geom_group, "n_cells", cells.size()); write_attribute(geom_group, "n_surfaces", surfaces.size()); write_attribute(geom_group, "n_universes", universes.size());