mirror of
https://github.com/openmc-dev/openmc.git
synced 2026-07-28 14:15:42 -04:00
Add property for distances in CruciformPrism
This commit is contained in:
parent
95e3f94630
commit
da24021119
2 changed files with 19 additions and 0 deletions
|
|
@ -1137,6 +1137,19 @@ class CruciformPrism(CompositeSurface):
|
|||
def _surface_names(self):
|
||||
return self._surfnames
|
||||
|
||||
@property
|
||||
def distances(self):
|
||||
return self._distances
|
||||
|
||||
@distances.setter
|
||||
def distances(self, values):
|
||||
values = np.array(values, dtype=float)
|
||||
# Check for monotonicity
|
||||
if (values[1:] > values[:-1]).all() or (values[1:] < values[:-1]).all():
|
||||
self._distances = values
|
||||
else:
|
||||
raise ValueError("distances must be monotonic")
|
||||
|
||||
def __neg__(self):
|
||||
n = len(self.distances)
|
||||
regions = []
|
||||
|
|
|
|||
|
|
@ -455,3 +455,9 @@ def test_cruciform_prism(axis):
|
|||
|
||||
# Make sure repr works
|
||||
repr(s)
|
||||
|
||||
# Check that non-monotonic distances fail
|
||||
with pytest.raises(ValueError):
|
||||
openmc.model.CruciformPrism([1.0, 0.5, 2.0, 3.0])
|
||||
with pytest.raises(ValueError):
|
||||
openmc.model.CruciformPrism([3.0, 2.0, 0.5, 1.0])
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue