From ffd0070654bd3bad879ecbbeada9e7ddd54acdde Mon Sep 17 00:00:00 2001 From: "wbinventor@gmail.com" Date: Mon, 21 Dec 2015 14:25:42 -0500 Subject: [PATCH 1/2] Now using id property setters in Python Summary API --- openmc/material.py | 4 ---- openmc/summary.py | 10 +++++----- 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/openmc/material.py b/openmc/material.py index 37ebc8a77f..3818d7154b 100644 --- a/openmc/material.py +++ b/openmc/material.py @@ -194,10 +194,6 @@ class Material(object): def id(self, material_id): global AUTO_MATERIAL_ID, MATERIAL_IDS - # If the Material already has an ID, remove it from global list - if hasattr(self, '_id') and self._id is not None: - MATERIAL_IDS.remove(self._id) - if material_id is None: self._id = AUTO_MATERIAL_ID MATERIAL_IDS.append(AUTO_MATERIAL_ID) diff --git a/openmc/summary.py b/openmc/summary.py index 4b1088e827..bc6551e7cb 100644 --- a/openmc/summary.py +++ b/openmc/summary.py @@ -567,7 +567,7 @@ class Summary(object): """ for index, material in self.materials.items(): - if material._id == material_id: + if material.id == material_id: return material return None @@ -588,7 +588,7 @@ class Summary(object): """ for index, surface in self.surfaces.items(): - if surface._id == surface_id: + if surface.id == surface_id: return surface return None @@ -609,7 +609,7 @@ class Summary(object): """ for index, cell in self.cells.items(): - if cell._id == cell_id: + if cell.id == cell_id: return cell return None @@ -630,7 +630,7 @@ class Summary(object): """ for index, universe in self.universes.items(): - if universe._id == universe_id: + if universe.id == universe_id: return universe return None @@ -651,7 +651,7 @@ class Summary(object): """ for index, lattice in self.lattices.items(): - if lattice._id == lattice_id: + if lattice.id == lattice_id: return lattice return None From 37d4d2e9ed9dfea848c4670f50cabe5596d4b189 Mon Sep 17 00:00:00 2001 From: "wbinventor@gmail.com" Date: Mon, 21 Dec 2015 20:52:12 -0500 Subject: [PATCH 2/2] Eliminated references to MATERIAL_IDS --- openmc/material.py | 15 ++------------- 1 file changed, 2 insertions(+), 13 deletions(-) diff --git a/openmc/material.py b/openmc/material.py index 3818d7154b..542078c7c1 100644 --- a/openmc/material.py +++ b/openmc/material.py @@ -12,17 +12,13 @@ from openmc.checkvalue import check_type, check_value, check_greater_than from openmc.clean_xml import * -# A list of all IDs for all Materials created -MATERIAL_IDS = [] - # A static variable for auto-generated Material IDs AUTO_MATERIAL_ID = 10000 def reset_auto_material_id(): - global AUTO_MATERIAL_ID, MATERIAL_IDS + global AUTO_MATERIAL_ID AUTO_MATERIAL_ID = 10000 - MATERIAL_IDS = [] # Units for density supported by OpenMC @@ -192,22 +188,15 @@ class Material(object): @id.setter def id(self, material_id): - global AUTO_MATERIAL_ID, MATERIAL_IDS if material_id is None: + global AUTO_MATERIAL_ID self._id = AUTO_MATERIAL_ID - MATERIAL_IDS.append(AUTO_MATERIAL_ID) AUTO_MATERIAL_ID += 1 else: check_type('material ID', material_id, Integral) - if material_id in MATERIAL_IDS: - msg = 'Unable to set Material ID to "{0}" since a Material with ' \ - 'this ID was already initialized'.format(material_id) - raise ValueError(msg) check_greater_than('material ID', material_id, 0, equality=True) - self._id = material_id - MATERIAL_IDS.append(material_id) @name.setter def name(self, name):