From 1467db9f746e3f97fc8ea6c37616ccf1d35264f0 Mon Sep 17 00:00:00 2001 From: Adam Parler Date: Thu, 2 Nov 2023 22:49:46 -0700 Subject: [PATCH] Changed how RCAA bank sare setup. Allows for rods to follow each other like they would in real reactor. --- BEAVRS/beavrs/builder.py | 10 ++++++++-- BEAVRS/beavrs/constants.py | 37 ++++++++++++++++++++++++++++--------- 2 files changed, 36 insertions(+), 11 deletions(-) diff --git a/BEAVRS/beavrs/builder.py b/BEAVRS/beavrs/builder.py index d5386b3..923a17e 100644 --- a/BEAVRS/beavrs/builder.py +++ b/BEAVRS/beavrs/builder.py @@ -53,6 +53,7 @@ class BEAVRS(object): self.settings_output_tallies = False self.settings_summary = True self.settings_output_distribmats = False + self.settings_confidence = False self.tally_meshes = [] self.tallies = [] @@ -135,6 +136,7 @@ class BEAVRS(object): settings_file.batches = self.settings_batches settings_file.inactive = self.settings_inactive settings_file.particles = self.settings_particles + settings_file.confidence_intervals = self.settings_confidence if self.settings_volumes: settings_file.volume_calculations = self.settings_volumes if self.dd_mesh_dimension: @@ -155,14 +157,18 @@ class BEAVRS(object): def write_openmc_settings(self): self.settings.export_to_xml() - def write_openmc_tallies(self): + @property + def common_tallies(self): if len(self.tallies) == 0: return tallies_file = openmc.Tallies() for mesh in self.tally_meshes: tallies_file.add_mesh(mesh) for tally in self.tallies: tallies_file.append(tally) - tallies_file.export_to_xml() + return tallies_file + + def write_openmc_tallies(self): + self.common_tallies.export_to_xml() def set_volumes(self, samples=100000): self.settings_volumes = openmc.VolumeCalculation(domains=[self.main_universe], samples=samples, lower_left=(-170, -170, 0), upper_right=(170, 170, 420)) diff --git a/BEAVRS/beavrs/constants.py b/BEAVRS/beavrs/constants.py index 22762e1..4ba8dde 100644 --- a/BEAVRS/beavrs/constants.py +++ b/BEAVRS/beavrs/constants.py @@ -8,17 +8,36 @@ nominalBoronPPM = 975 ############## Geometry paramters ############## +S = 315 +SS = 0 + +# bite position is bank D at 213 steps withdrawn +_D = max(0,228-S) +_C = 228 if _D > 113 else max(0, 228-S+113 +2) +_B = 228 if _C > 113 else max(0, 228-S+113*2+4) +_A = 228 if _B > 113 else max(0, 228-S+113*3+6) + +_SA = 228-SS +_SB = 228-SS +_SC = 228-SS +_SD = 228-SS +_SE = 228-SS + +print(" RCCA Positions") +print(f" A: {_A} B: {_B} C: {_C} D: {_D}") +print(f" SA: {_SA} SB: {_SB} SC: {_SC} SD: {_SD} SE: {_SE}") + ## Steps withdrawn for each RCCA bank rcca_bank_steps_withdrawn = { - 'A': 228, - 'B': 228, - 'C': 228, - 'D': 0, # bite position is bank D at 213 steps withdrawn - 'SA': 228, - 'SB': 228, - 'SC': 228, - 'SD': 228, - 'SE': 228, + 'A': _A, + 'B': _B, + 'C': _C, + 'D': _D, + 'SA': _SA, + 'SB': _SB, + 'SC': _SC, + 'SD': _SD, + 'SE': _SE, } rcca_banks = rcca_bank_steps_withdrawn.keys()