From eb3f888c899b905429963edfc6fdbd5a75e1e071 Mon Sep 17 00:00:00 2001 From: Paul Romano Date: Wed, 25 May 2016 10:02:27 -0500 Subject: [PATCH] Allow root_universe to be passed to Geometry constructor --- examples/python/basic/build-xml.py | 3 +-- examples/python/boxes/build-xml.py | 3 +-- examples/python/lattice/hexagonal/build-xml.py | 3 +-- examples/python/lattice/nested/build-xml.py | 3 +-- examples/python/lattice/simple/build-xml.py | 3 +-- examples/python/pincell/build-xml.py | 3 +-- examples/python/pincell_multigroup/build-xml.py | 3 +-- examples/python/reflective/build-xml.py | 3 +-- openmc/geometry.py | 9 ++++++++- 9 files changed, 16 insertions(+), 17 deletions(-) diff --git a/examples/python/basic/build-xml.py b/examples/python/basic/build-xml.py index ffff03720..81aecc9f9 100644 --- a/examples/python/basic/build-xml.py +++ b/examples/python/basic/build-xml.py @@ -74,8 +74,7 @@ universe1.add_cells([cell2, cell3]) root.add_cells([cell1, cell4]) # Instantiate a Geometry, register the root Universe, and export to XML -geometry = openmc.Geometry() -geometry.root_universe = root +geometry = openmc.Geometry(root) geometry.export_to_xml() diff --git a/examples/python/boxes/build-xml.py b/examples/python/boxes/build-xml.py index 814f60beb..4be33dcf1 100644 --- a/examples/python/boxes/build-xml.py +++ b/examples/python/boxes/build-xml.py @@ -97,8 +97,7 @@ root = openmc.Universe(universe_id=0, name='root universe') root.add_cells([inner_box, middle_box, outer_box]) # Instantiate a Geometry, register the root Universe, and export to XML -geometry = openmc.Geometry() -geometry.root_universe = root +geometry = openmc.Geometry(root) geometry.export_to_xml() diff --git a/examples/python/lattice/hexagonal/build-xml.py b/examples/python/lattice/hexagonal/build-xml.py index ef3a12847..05cb2cb01 100644 --- a/examples/python/lattice/hexagonal/build-xml.py +++ b/examples/python/lattice/hexagonal/build-xml.py @@ -105,8 +105,7 @@ lattice.outer = univ2 cell1.fill = lattice # Instantiate a Geometry, register the root Universe, and export to XML -geometry = openmc.Geometry() -geometry.root_universe = root +geometry = openmc.Geometry(root) geometry.export_to_xml() diff --git a/examples/python/lattice/nested/build-xml.py b/examples/python/lattice/nested/build-xml.py index a964d882c..03cede9dc 100644 --- a/examples/python/lattice/nested/build-xml.py +++ b/examples/python/lattice/nested/build-xml.py @@ -114,8 +114,7 @@ cell1.fill = lattice2 cell2.fill = lattice1 # Instantiate a Geometry, register the root Universe, and export to XML -geometry = openmc.Geometry() -geometry.root_universe = root +geometry = openmc.Geometry(root) geometry.export_to_xml() diff --git a/examples/python/lattice/simple/build-xml.py b/examples/python/lattice/simple/build-xml.py index 4961b96b8..5a642d308 100644 --- a/examples/python/lattice/simple/build-xml.py +++ b/examples/python/lattice/simple/build-xml.py @@ -105,8 +105,7 @@ lattice.universes = [[univ1, univ2, univ1, univ2], cell1.fill = lattice # Instantiate a Geometry, register the root Universe, and export to XML -geometry = openmc.Geometry() -geometry.root_universe = root +geometry = openmc.Geometry(root) geometry.export_to_xml() diff --git a/examples/python/pincell/build-xml.py b/examples/python/pincell/build-xml.py index a3be3e97e..0afb2527f 100644 --- a/examples/python/pincell/build-xml.py +++ b/examples/python/pincell/build-xml.py @@ -149,8 +149,7 @@ root = openmc.Universe(universe_id=0, name='root universe') root.add_cells([fuel, gap, clad, water]) # Instantiate a Geometry, register the root Universe, and export to XML -geometry = openmc.Geometry() -geometry.root_universe = root +geometry = openmc.Geometry(root) geometry.export_to_xml() diff --git a/examples/python/pincell_multigroup/build-xml.py b/examples/python/pincell_multigroup/build-xml.py index 5ac5b376a..6dbfa336b 100644 --- a/examples/python/pincell_multigroup/build-xml.py +++ b/examples/python/pincell_multigroup/build-xml.py @@ -119,8 +119,7 @@ root = openmc.Universe(universe_id=0, name='root universe') root.add_cells([fuel, moderator]) # Instantiate a Geometry, register the root Universe, and export to XML -geometry = openmc.Geometry() -geometry.root_universe = root +geometry = openmc.Geometry(root) geometry.export_to_xml() diff --git a/examples/python/reflective/build-xml.py b/examples/python/reflective/build-xml.py index 4ecd0351f..949e57c8c 100644 --- a/examples/python/reflective/build-xml.py +++ b/examples/python/reflective/build-xml.py @@ -64,8 +64,7 @@ root = openmc.Universe(universe_id=0, name='root universe') root.add_cell(cell) # Instantiate a Geometry, register the root Universe, and export to XML -geometry = openmc.Geometry() -geometry.root_universe = root +geometry = openmc.Geometry(root) geometry.export_to_xml() diff --git a/openmc/geometry.py b/openmc/geometry.py index 7eddadfc7..4e85929fc 100644 --- a/openmc/geometry.py +++ b/openmc/geometry.py @@ -15,6 +15,11 @@ def reset_auto_ids(): class Geometry(object): """Geometry representing a collection of surfaces, cells, and universes. + Parameters + ---------- + root_universe : openmc.Universe, optional + Root universe which contains all others + Attributes ---------- root_universe : openmc.Universe @@ -22,9 +27,11 @@ class Geometry(object): """ - def __init__(self): + def __init__(self, root_universe=None): self._root_universe = None self._offsets = {} + if root_universe is not None: + self.root_universe = root_universe @property def root_universe(self):