diff --git a/BEAVRS/beavrs/assemblies.py b/BEAVRS/beavrs/assemblies.py index 01c167d..3c2e06f 100644 --- a/BEAVRS/beavrs/assemblies.py +++ b/BEAVRS/beavrs/assemblies.py @@ -31,34 +31,33 @@ class Assemblies(object): ['fuel', 'fuel', 'fuel', 'fuel', 'fuel', 'fuel', 'fuel', 'fuel', ' fuel', 'fuel', 'fuel', 'fuel', 'fuel', 'fuel', 'fuel', 'fuel', 'fuel'] ] - def __init__(self, pincells, mats, c): + def __init__(self, pincells, mats, constants): """ Creates BEAVRS pincell universes """ self.pins = pincells self.mats = mats - self.c = c - self._add_lattice_surfs() - self._add_assembly_surfs() + self._add_lattice_surfs(constants) + self._add_assembly_surfs(constants) self._add_bpra_layouts() self._add_rcca_layouts() - self._add_all_assembly_combinations() + self._add_all_assembly_combinations(constants) - def _add_lattice_surfs(self): + def _add_lattice_surfs(self,c): """ Adds BEAVRS lattice surfaces """ # Rectangular prism around the edge of the pinlattice self.lattice_surfs = \ - openmc.rectangular_prism(17*self.c.pinPitch, 17*self.c.pinPitch) + openmc.rectangular_prism(17*c.pinPitch, 17*c.pinPitch) - def _add_assembly_surfs(self): + def _add_assembly_surfs(self,c): """ Adds BEAVRS assembly surfaces - these include the assembly pitch""" # Rectangular prism around the edge of the pinlattice self.assem_surfs = \ - openmc.rectangular_prism(self.c.latticePitch, self.c.latticePitch) + openmc.rectangular_prism(c.latticePitch, c.latticePitch) def _add_bpra_layouts(self): @@ -227,7 +226,7 @@ class Assemblies(object): })) - def _add_all_assembly_combinations(self): + def _add_all_assembly_combinations(self,c): """ Adds all BEAVRS assembly layouts Here we make every possible combination of enrichments, control and shutdown @@ -256,8 +255,8 @@ class Assemblies(object): # Make the pin lattice lattice = TemplatedLattice(name=name) lattice.setTemplate(self.pin_lattice_template) - lattice.pitch = [self.c.pinPitch, self.c.pinPitch] - lattice.lower_left = [-17.*self.c.pinPitch/2., -17.*self.c.pinPitch/2.] + lattice.pitch = [c.pinPitch, c.pinPitch] + lattice.lower_left = [-17.*c.pinPitch/2., -17.*c.pinPitch/2.] lattice.setPosition('center', u_c) lattice.setPosition('fuel', self.pins.u_fuel_p[enr]) lattice.updatePositions(gt_spec) diff --git a/BEAVRS/beavrs/baffle.py b/BEAVRS/beavrs/baffle.py index 77c635c..93a6a1f 100644 --- a/BEAVRS/beavrs/baffle.py +++ b/BEAVRS/beavrs/baffle.py @@ -13,16 +13,15 @@ from beavrs.corebuilder import InfinitePinCell class Baffle(object): - def __init__(self, assemblies, mats, c): + def __init__(self, assemblies, mats, constants): """ Creates BEAVRS baffle universes """ self.assem = assemblies self.mats = mats - self.c = c - self._add_baffle_universes() + self._add_baffle_universes(constants) - def _add_baffle_universes(self): + def _add_baffle_universes(self,c): """ Adds BEAVRS baffle universes """ self.dummy = openmc.ZCylinder(name="Dummy filling universe", r=4000.) @@ -30,10 +29,10 @@ class Baffle(object): # North Baffle self.u_baffle_N = openmc.Universe(name='Baffle North') self.s_baffle_N_gap = openmc.YPlane(name='North Baffle Water Gap Surface', - y0=self.c.latticePitch/2-self.c.baffleWaterGap) + y0=c.latticePitch/2-c.baffleWaterGap) self.s_baffle_N = openmc.YPlane(name='North Baffle Surface', - y0=self.c.latticePitch/2 - self.c.baffleWaterGap - - self.c.baffleWidth) + y0=c.latticePitch/2 - c.baffleWaterGap + - c.baffleWidth) self.c_baffle_N1 = openmc.Cell(name='North Baffle Water Gap', fill=self.mats['Borated Water']) self.c_baffle_N1.region = +self.s_baffle_N_gap @@ -67,10 +66,10 @@ class Baffle(object): # North West Corner Baffle self.u_baffle_NW = openmc.Universe(name='Baffle North West Corner') self.s_baffle_W_gap = openmc.XPlane(name='West Baffle Water Gap Surface', - x0=self.c.baffleWaterGap-self.c.latticePitch/2) + x0=c.baffleWaterGap-c.latticePitch/2) self.s_baffle_W = openmc.XPlane(name='West Baffle Surface', - x0=self.c.baffleWaterGap + self.c.baffleWidth - - self.c.latticePitch/2) + x0=c.baffleWaterGap + c.baffleWidth + - c.latticePitch/2) self.c_baffle_C1 = openmc.Cell(name='Corner Baffle Water Gap N', fill=self.mats['Borated Water']) self.c_baffle_C1.region = +self.s_baffle_N_gap diff --git a/BEAVRS/beavrs/builder.py b/BEAVRS/beavrs/builder.py index 5d4a8a1..1cb5d71 100644 --- a/BEAVRS/beavrs/builder.py +++ b/BEAVRS/beavrs/builder.py @@ -5,11 +5,9 @@ the BEAVRS geometry. """ -import warnings +import openmc, warnings import numpy as np -import openmc - from beavrs.constants import Constants from beavrs.materials import openmc_materials from beavrs.pincells import Pincells @@ -25,23 +23,19 @@ warnings.simplefilter('once', DeprecationWarning) class BEAVRS(object): """ Main BEAVRS class""" - def __init__(self, boron_ppm=None, is_symmetric=False, is_2d=False, S=None, SS=None): + def __init__(self, S=None, SS=None, boron_ppm=None, is_symmetric=False, is_2d=False): """ We build the entire geometry in memory in the constructor """ - # TODO: make the control rod bank insertion heights attributes self.c = Constants(S,SS) - if boron_ppm is not None: - self.boron_ppm = boron_ppm - else: - self.boron_ppm = self.c.nominalBoronPPM - + if boron_ppm == None: + boron_ppm = self.c.nominalBoronPPM self.is_symmetric = is_symmetric self.is_2d = is_2d # Setup the materials - self.mats = openmc_materials(self.c, ppm=self.boron_ppm) + self.mats = openmc_materials(self.c, ppm=boron_ppm) self.pincells = Pincells(self.mats, self.c) self.assemblies = Assemblies(self.pincells, self.mats, self.c) @@ -55,7 +49,7 @@ class BEAVRS(object): self.settings_inactive = 5 self.settings_particles = 1000 baffle_flat = 7.5*self.c.latticePitch - if is_2d: + if self.is_2d: self.settings_sourcebox = [-baffle_flat, -baffle_flat, self.c.struct_LowestExtent_2d, baffle_flat, baffle_flat, self.c.struct_HighestExtent_2d] else: @@ -108,9 +102,8 @@ class BEAVRS(object): 'Sn124', 'Sn125', 'Sn126', 'Sr86', 'Sr87', 'Sr88', 'Sr89', 'Sr90', 'Ta181', 'Tb159', 'Tb160', 'Tc99', 'Te122', 'Te123', 'Te124', 'Te125', 'Te126', - 'Te128', 'Te130', 'Te132', 'Th232', 'U233', - 'U234', 'U235', 'U236', 'U238', 'W182', 'W183', - 'W184', 'W186', 'Xe128', 'Xe129', 'Xe130', 'Xe131', + 'Te128', 'Te130', 'Te132', 'Th232', 'U233', 'W182', + 'W183', 'W184', 'W186', 'Xe128', 'Xe129', 'Xe130', 'Xe131', 'Xe132', 'Xe133', 'Xe134', 'Xe135', 'Xe136', 'Y89', 'Y90', 'Y91', 'Zr90', 'Zr91', 'Zr92', 'Zr93', 'Zr94', 'Zr95', 'Zr96'] @@ -120,7 +113,6 @@ class BEAVRS(object): self.depletion_nuclides = nuclides def set_boron_ppm(self, ppm): - self.ppm = ppm self.mats = openmc_materials(ppm=ppm) def write_openmc_geometry(self): @@ -164,7 +156,7 @@ class BEAVRS(object): output = {'tallies': self.settings_output_tallies, 'summary': self.settings_summary} settings_file.output = output - settings_file.confidence_intervals = False + settings_file.confidence_intervals = self.settings_confidence settings_file.seed = np.random.randint(1e14, dtype=np.uint64) return settings_file @@ -185,8 +177,9 @@ class BEAVRS(object): self.common_tallies.export_to_xml() def set_S(self,val): + openmc.reset_auto_ids() - self.c.S = val + self.c.set_S(val) self.pincells = Pincells(self.mats, self.c) self.assemblies = Assemblies(self.pincells, self.mats, self.c) @@ -197,8 +190,9 @@ class BEAVRS(object): self.openmc_geometry = openmc.Geometry(self.main_universe) def set_SS(self,val): + openmc.reset_auto_ids() - self.c.SS = val + self.c.set_SS(val) self.pincells = Pincells(self.mats, self.c) self.assemblies = Assemblies(self.pincells, self.mats, self.c) @@ -212,8 +206,6 @@ class BEAVRS(object): model = openmc.Model(geometry=self.openmc_geometry, materials=self.materials, settings=self.settings, tallies=self.common_tallies, plots=self.plots) - model.settings.seed = np.random.randint(1e14, dtype=np.uint64) - return model def export_xml(self,as_model:bool=False): @@ -263,8 +255,8 @@ class BEAVRS(object): """ lp = self.c.latticePitch self.dd_mesh_dimension = [7, 7, nz] - self.dd_mesh_lower_left = [-10*lp, -10*lp, self.self.c.struct_LowestExtent] - self.dd_mesh_upper_right = [10*lp, 10*lp, self.self.c.struct_HighestExtent] + self.dd_mesh_lower_left = [-10*lp, -10*lp, self.c.struct_LowestExtent] + self.dd_mesh_upper_right = [10*lp, 10*lp, self.c.struct_HighestExtent] self.dd_nodemap = nodemap self.dd_truncate = True diff --git a/BEAVRS/beavrs/constants.py b/BEAVRS/beavrs/constants.py index 163db4b..6ff3657 100644 --- a/BEAVRS/beavrs/constants.py +++ b/BEAVRS/beavrs/constants.py @@ -143,119 +143,110 @@ class Constants(object): neutronShield_NEbot_SWtop = {'a': 1, 'b': math.tan(-math.pi/3 - math.pi/180), 'c': 0, 'd': 0} neutronShield_NEtop_SWbot = {'a': 1, 'b': math.tan(-math.pi/6 + math.pi/180), 'c': 0, 'd': 0} - def __init__(self, S:int=None, SS:int=None) -> None: + def __init__(self, S:int=15, SS:int=0) -> None: + + self.first_thru = True ############## Geometry paramters ############## - self.first_thru = True + self.rcca_bank_steps_withdrawn = {} - self.S = S - self.SS = SS + self.rcca_banks = self.rcca_bank_steps_withdrawn.keys() - @property - def S(self) -> int: - return self._S + ## Keff=1 at approximately S 298 + self.set_S(S,False) + self.set_SS(SS,False) - @S.setter - def S(self,S): - - if isinstance(S,(float,int)): - if S < 0: + self.update_dict() + def set_S(self, _S, print_data=True): + if isinstance(_S,(float,int)): + if _S < 0: print("Cannot have a negative S position. S set to 0") self._S = 0 - elif S > 574: + elif _S > 573: print("Cannot have a S position greater than 573. S set to 573") self._S = 573 else: - self._S = S - elif S == None: - self._S = 0 - print("Value supplied was 'None'. S Value set to default value") + self._S = int(_S) + elif _S == None: + self._S = 15 + print(f"Value supplied was 'None'. S Value set to default value of {self._S}") else: raise ValueError - self._D = max(0,228-self._S) # bite position is bank D at 213 steps withdrawn - self._C = 228 if self._D > 113 else max(0, 228-self._S+113+2) - self._B = 228 if self._C > 113 else max(0, 228-self._S+113*2+4) - self._A = 228 if self._B > 113 else max(0, 228-self._S+113*3+6) - - if not self.first_thru: - self._update_dictionary() + if print_data: print(" RCCA Positions") print(f" A: {self._A:3d} B: {self._B:3d} C: {self._C:3d} D: {self._D:3d}") print(f" SA: {self._SA:3d} SB: {self._SB:3d} SC: {self._SC:3d} SD: {self._SD:3d} SE: {self._SE:3d}") + + if not self.first_thru: + self.update_dict() else: self.first_thru = False @property - def A(self) -> int: - return self._A + def _A(self): + return 228 if self._B > 113 else max(0, 228-self._S+113*3+6) @property - def B(self) -> int: - return self._B + def _B(self): + return 228 if self._C > 113 else max(0, 228-self._S+113*2+4) @property - def C(self) -> int: - return self._C + def _C(self): + return 228 if self._D > 113 else max(0, 228-self._S+113*1+2) @property - def D(self) -> int: - return self._D + def _D(self): + return max(0,228-self._S) - @property - def SS(self) -> int: - return self._SS - - @SS.setter - def SS(self,SS): - - if isinstance(SS,(float,int)): - if SS < 0: + def set_SS(self, _SS, print_data=True): + if isinstance(_SS,(float,int)): + if _SS < 0: print("Cannot have a negative SS position. SS set to 0") self._SS = 0 - elif SS > 228: + elif _SS > 228: print("Cannot have a SS position greater than 228. SS set to 228") self._SS = 228 else: - self._SS = int(SS) - elif SS == None: + self._SS = int(_SS) + elif _SS == None: self._SS = 0 - print("Value supplied was 'None'. SS Value set to default value") + print(f"Value supplied was 'None'. SS Value set to default value of {self._SS}") else: raise ValueError - self._SA = 228-self._SS - self._SB = 228-self._SS - self._SC = 228-self._SS - self._SD = 228-self._SS - self._SE = 228-self._SS + if print_data: + print(" RCCA Positions") + print(f" A: {self._A:3d} B: {self._B:3d} C: {self._C:3d} D: {self._D:3d}") + print(f" SA: {self._SA:3d} SB: {self._SB:3d} SC: {self._SC:3d} SD: {self._SD:3d} SE: {self._SE:3d}") - self._update_dictionary() - print(" RCCA Positions") - print(f" A: {self._A:3d} B: {self._B:3d} C: {self._C:3d} D: {self._D:3d}") - print(f" SA: {self._SA:3d} SB: {self._SB:3d} SC: {self._SC:3d} SD: {self._SD:3d} SE: {self._SE:3d}") + if not self.first_thru: + self.update_dict() + else: + self.first_thru = False @property - def SA(self) -> int: - return self._SA + def _SA(self): + return 228-self._SS @property - def SB(self) -> int: - return self._SB + def _SB(self): + return 228-self._SS @property - def SC(self) -> int: - return self._SC + def _SC(self): + return 228-self._SS @property - def SD(self) -> int: - return self._SD + def _SD(self): + return 228-self._SS @property - def SE(self) -> int: - return self._SE + def _SE(self): + return 228-self._SS - def _update_dictionary(self): + def update_dict(self): + ## Steps withdrawn for each RCCA bank self.rcca_bank_steps_withdrawn = { 'A': self._A, 'B': self._B, @@ -267,8 +258,4 @@ class Constants(object): 'SD': self._SD, 'SE': self._SE, } - - @property - def rcca_banks(self): - self._update_dictionary() - return self.rcca_bank_steps_withdrawn.keys() + self.rcca_banks = self.rcca_bank_steps_withdrawn.keys() diff --git a/BEAVRS/beavrs/core.py b/BEAVRS/beavrs/core.py index 99b5da7..7d20ffb 100644 --- a/BEAVRS/beavrs/core.py +++ b/BEAVRS/beavrs/core.py @@ -56,20 +56,19 @@ class Core(object): 'J___1', 'J___2', 'J___3', 'J___8', 'J___9', 'K__15', 'K__14', 'K__13', 'K__12', 'K__11', 'K__10'] - def __init__(self, pincells, assemblies, baffle, C, is_symmetric=False): + def __init__(self, pincells, assemblies, baffle, constants, is_symmetric=False): """ Creates BEAVRS core lattice universe """ self.pins = pincells self.assem = assemblies self.baffle = baffle - self.c = C self.is_symmetric = is_symmetric self._set_enrichment_positions() self._set_instrument_tube_positions() self._set_bpra_positions() self._set_rcca_positions() - self._make_core_universe() + self._make_core_universe(constants) def _set_enrichment_positions(self): """ Sets the specification for BEAVRS assembly enrichment positions """ @@ -156,13 +155,13 @@ class Core(object): } - def _make_core_universe(self): + def _make_core_universe(self, c): """ Creates the BEAVRS core lattice universe """ lattice = TemplatedLattice(name='Core Lattice') lattice.setTemplate(self.core_lattice_template) - lattice.pitch = [self.c.latticePitch, self.c.latticePitch] - lattice.lower_left = [-19.*self.c.latticePitch/2., -19.*self.c.latticePitch/2.] + lattice.pitch = [c.latticePitch, c.latticePitch] + lattice.lower_left = [-19.*c.latticePitch/2., -19.*c.latticePitch/2.] lattice.updatePositions(self.baffle.universes) lattice.setPosition('dummy', self.pins.u_waterPin) for pos in self.core_positions: diff --git a/BEAVRS/beavrs/corebuilder.py b/BEAVRS/beavrs/corebuilder.py index cf7411f..8a161ff 100644 --- a/BEAVRS/beavrs/corebuilder.py +++ b/BEAVRS/beavrs/corebuilder.py @@ -48,10 +48,6 @@ class TemplatedLattice(openmc.RectLattice): universes.append(r) self.universes = universes - -_created_cells = {} - - class InfinitePinCell(openmc.Universe): """ Class for creating a simple pincell universe infinite in the z direction @@ -203,6 +199,8 @@ class AxialPinCell(openmc.Universe): """ + _created_cells = {} + def __init__(self, *args, **kwargs): """ Create a new AxialPinCell""" @@ -283,8 +281,8 @@ class AxialPinCell(openmc.Universe): new_name = "({0}) wrapped by ({1})".format(self._name, wrapper._name) - if new_name in _created_cells: - return _created_cells[new_name] + if new_name in self._created_cells: + return self._created_cells[new_name] # Finalize the current pincell self.finalize() @@ -307,7 +305,7 @@ class AxialPinCell(openmc.Universe): # Fill the outermost ring with the wrapping universe new_pin.add_last_ring(wrapper) - _created_cells[new_name] = new_pin + self._created_cells[new_name] = new_pin return new_pin diff --git a/BEAVRS/beavrs/materials.py b/BEAVRS/beavrs/materials.py index ca71789..79c7cf6 100644 --- a/BEAVRS/beavrs/materials.py +++ b/BEAVRS/beavrs/materials.py @@ -22,9 +22,9 @@ def openmc_materials(c,ppm): # Initialize openmc material dictionary mats = OrderedDict() -############################################## -# Create materials that use natural abundances -############################################## + ############################################## + # Create materials that use natural abundances + ############################################## # Create air material mats['Air'] = openmc.Material(name='Air') @@ -107,11 +107,11 @@ def openmc_materials(c,ppm): mats['Carbon Steel'].add_element('Al', 0.00025, 'wo') mats['Carbon Steel'].add_element('Fe', 0.96487, 'wo') -############################################## -# Create special materials -############################################## + ############################################## + # Create special materials + ############################################## -########## Enriched UO2 Fuel ################# + ########## Enriched UO2 Fuel ################# # Specify enrichments to be calculated enrs = [0.0161006, 0.0239993, 0.0310221, 0.0319547, 0.0340585] @@ -148,7 +148,7 @@ def openmc_materials(c,ppm): mats[mat_name].add_element('O', a_O, 'ao') mats[mat_name].add_element('U', a_U, 'ao', enrichment=enr*100) -########## Borosilicate Glass ################# + ########## Borosilicate Glass ################# # CASMO weight fractions wO_bsg = 0.5481 @@ -178,7 +178,7 @@ def openmc_materials(c,ppm): mats['Borosilicate Glass'].add_nuclide('B10', aB10_bsg, 'ao') mats['Borosilicate Glass'].add_nuclide('B11', aB11_bsg, 'ao') -########## Borated Water ################# + ########## Borated Water ################# # Density of clean water at 2250 psia T=560F NIST h2o_dens = 0.73986 @@ -215,7 +215,7 @@ def openmc_materials(c,ppm): mats['Borated Water'].add_element('O', aho_Bh2o, 'ao') mats['Borated Water'].add_s_alpha_beta(name='c_H_in_H2O') -########## Nozzle / Support Plate Borated Materials ################# + ########## Nozzle / Support Plate Borated Materials ################# # Calculate volume of water and steel in Nozzle / Support Plate for a # single assembly diff --git a/BEAVRS/beavrs/pincells.py b/BEAVRS/beavrs/pincells.py index 4edfffd..92cc978 100644 --- a/BEAVRS/beavrs/pincells.py +++ b/BEAVRS/beavrs/pincells.py @@ -11,30 +11,30 @@ from beavrs.corebuilder import AxialPinCell class Pincells(object): - def __init__(self, mats, C): + def __init__(self, mats,constants): """ Creates BEAVRS pincell universes """ self.mats = mats - self.c = C + AxialPinCell._created_cells.clear() - self._add_structural_axials() + self._add_structural_axials(constants) self._add_dummy_universe() - self._add_grid_pincells() - self._add_fuel_pincells() - self._add_guide_tube_pincells() - self._add_instrument_tube_pincells() - self._add_bpra_pincells() - self._add_rcca_pincells() + self._add_grid_pincells(constants) + self._add_fuel_pincells(constants) + self._add_guide_tube_pincells(constants) + self._add_instrument_tube_pincells(constants) + self._add_bpra_pincells(constants) + self._add_rcca_pincells(constants) - def _add_structural_axials(self): + def _add_structural_axials(self,c): """ Adds structure axial surfaces common for most pincells """ - self.s_struct_supportPlate_bot = openmc.ZPlane(name='Support plate bottom', z0=self.c.struct_SupportPlate_bot) - self.s_struct_supportPlate_top = openmc.ZPlane(name='Support plate top', z0=self.c.struct_SupportPlate_top) - self.s_struct_lowerNozzle_bot = openmc.ZPlane(name='Lower nozzle bottom', z0=self.c.struct_LowerNozzle_bot) - self.s_struct_lowerNozzle_top = openmc.ZPlane(name='Lower nozzle top', z0=self.c.struct_LowerNozzle_top) - self.s_struct_upperNozzle_bot = openmc.ZPlane(name='Upper nozzle bottom', z0=self.c.struct_UpperNozzle_bot) - self.s_struct_upperNozzle_top = openmc.ZPlane(name='Upper nozzle top', z0=self.c.struct_UpperNozzle_top) + self.s_struct_supportPlate_bot = openmc.ZPlane(name='Support plate bottom', z0=c.struct_SupportPlate_bot) + self.s_struct_supportPlate_top = openmc.ZPlane(name='Support plate top', z0=c.struct_SupportPlate_top) + self.s_struct_lowerNozzle_bot = openmc.ZPlane(name='Lower nozzle bottom', z0=c.struct_LowerNozzle_bot) + self.s_struct_lowerNozzle_top = openmc.ZPlane(name='Lower nozzle top', z0=c.struct_LowerNozzle_top) + self.s_struct_upperNozzle_bot = openmc.ZPlane(name='Upper nozzle bottom', z0=c.struct_UpperNozzle_bot) + self.s_struct_upperNozzle_top = openmc.ZPlane(name='Upper nozzle top', z0=c.struct_UpperNozzle_top) def _add_dummy_universe(self): """ Adds all-water universe for empty lattice positions""" @@ -43,37 +43,37 @@ class Pincells(object): self.c_water = openmc.Cell(name='Water', fill=self.mats['Borated Water']) self.u_waterPin.add_cells([self.c_water]) - def _add_grid_pincells(self): + def _add_grid_pincells(self,c): """ Adds BEAVRS pincellgrid and assembly gridsleeve pincells """ # Rectangular prisms for grid spacers grid_surfs_tb = \ - openmc.rectangular_prism(self.c.rodGridSide_tb, self.c.rodGridSide_tb) + openmc.rectangular_prism(c.rodGridSide_tb, c.rodGridSide_tb) grid_surfs_i = \ - openmc.rectangular_prism(self.c.rodGridSide_i, self.c.rodGridSide_i) + openmc.rectangular_prism(c.rodGridSide_i, c.rodGridSide_i) # Rectangular prisms for lattice grid sleeves grid_surfs_ass = \ - openmc.rectangular_prism(self.c.gridstrapSide, self.c.gridstrapSide) + openmc.rectangular_prism(c.gridstrapSide, c.gridstrapSide) # Grids axial surfaces - self.s_grid1_bot = openmc.ZPlane(name='Bottom of grid 1', z0=self.c.grid1_bot) - self.s_grid1_top = openmc.ZPlane(name='Top of grid 1', z0=self.c.grid1_top) - self.s_grid2_bot = openmc.ZPlane(name='Bottom of grid 2', z0=self.c.grid2_bot) - self.s_grid2_top = openmc.ZPlane(name='Top of grid 2', z0=self.c.grid2_top) - self.s_grid3_bot = openmc.ZPlane(name='Bottom of grid 3', z0=self.c.grid3_bot) - self.s_grid3_top = openmc.ZPlane(name='Top of grid 3', z0=self.c.grid3_top) - self.s_grid4_bot = openmc.ZPlane(name='Bottom of grid 4', z0=self.c.grid4_bot) - self.s_grid4_top = openmc.ZPlane(name='Top of grid 4', z0=self.c.grid4_top) - self.s_grid5_bot = openmc.ZPlane(name='Bottom of grid 5', z0=self.c.grid5_bot) - self.s_grid5_top = openmc.ZPlane(name='Top of grid 5', z0=self.c.grid5_top) - self.s_grid6_bot = openmc.ZPlane(name='Bottom of grid 6', z0=self.c.grid6_bot) - self.s_grid6_top = openmc.ZPlane(name='Top of grid 6', z0=self.c.grid6_top) - self.s_grid7_bot = openmc.ZPlane(name='Bottom of grid 7', z0=self.c.grid7_bot) - self.s_grid7_top = openmc.ZPlane(name='Top of grid 7', z0=self.c.grid7_top) - self.s_grid8_bot = openmc.ZPlane(name='Bottom of grid 8', z0=self.c.grid8_bot) - self.s_grid8_top = openmc.ZPlane(name='Top of grid 8', z0=self.c.grid8_top) + self.s_grid1_bot = openmc.ZPlane(name='Bottom of grid 1', z0=c.grid1_bot) + self.s_grid1_top = openmc.ZPlane(name='Top of grid 1', z0=c.grid1_top) + self.s_grid2_bot = openmc.ZPlane(name='Bottom of grid 2', z0=c.grid2_bot) + self.s_grid2_top = openmc.ZPlane(name='Top of grid 2', z0=c.grid2_top) + self.s_grid3_bot = openmc.ZPlane(name='Bottom of grid 3', z0=c.grid3_bot) + self.s_grid3_top = openmc.ZPlane(name='Top of grid 3', z0=c.grid3_top) + self.s_grid4_bot = openmc.ZPlane(name='Bottom of grid 4', z0=c.grid4_bot) + self.s_grid4_top = openmc.ZPlane(name='Top of grid 4', z0=c.grid4_top) + self.s_grid5_bot = openmc.ZPlane(name='Bottom of grid 5', z0=c.grid5_bot) + self.s_grid5_top = openmc.ZPlane(name='Top of grid 5', z0=c.grid5_top) + self.s_grid6_bot = openmc.ZPlane(name='Bottom of grid 6', z0=c.grid6_bot) + self.s_grid6_top = openmc.ZPlane(name='Top of grid 6', z0=c.grid6_top) + self.s_grid7_bot = openmc.ZPlane(name='Bottom of grid 7', z0=c.grid7_bot) + self.s_grid7_top = openmc.ZPlane(name='Top of grid 7', z0=c.grid7_top) + self.s_grid8_bot = openmc.ZPlane(name='Bottom of grid 8', z0=c.grid8_bot) + self.s_grid8_top = openmc.ZPlane(name='Top of grid 8', z0=c.grid8_top) # Grids pincell universes @@ -147,29 +147,29 @@ class Pincells(object): self.u_gridsleeve.add_last_axial_section(self.mats['Borated Water']) self.u_gridsleeve.finalize() - def _add_fuel_pincells(self): + def _add_fuel_pincells(self,c): """ Adds BEAVRS fuel pincells """ self.enrichments = ['1.6%', '2.4%', '3.1%', '3.2%', '3.4%'] # Fuel radial surfaces - self.s_fuel_pellet_OR = openmc.ZCylinder(name='Fuel pellet OR', r=self.c.pelletOR) - self.s_fuel_clad_IR = openmc.ZCylinder(name='Fuel clad IR', r=self.c.cladIR) - self.s_fuel_clad_OR = openmc.ZCylinder(name='Fuel clad OR', r=self.c.cladOR) - self.s_fuel_plenumSpring_OR = openmc.ZCylinder(name='Fuel rod plenum spring OR', r=self.c.plenumSpringOR) + self.s_fuel_pellet_OR = openmc.ZCylinder(name='Fuel pellet OR', r=c.pelletOR) + self.s_fuel_clad_IR = openmc.ZCylinder(name='Fuel clad IR', r=c.cladIR) + self.s_fuel_clad_OR = openmc.ZCylinder(name='Fuel clad OR', r=c.cladOR) + self.s_fuel_plenumSpring_OR = openmc.ZCylinder(name='Fuel rod plenum spring OR', r=c.plenumSpringOR) # Fuel axial surfaces - self.s_fuel_rod_bot = openmc.ZPlane(name='Fuel rod bottom', z0=self.c.fuel_Rod_bot) + self.s_fuel_rod_bot = openmc.ZPlane(name='Fuel rod bottom', z0=c.fuel_Rod_bot) self.s_fuel_lowerFitting_bot = self.s_fuel_rod_bot - self.s_fuel_lowerFitting_top = openmc.ZPlane(name='Fuel lower fitting top', z0=self.c.fuel_LowerFitting_top) + self.s_fuel_lowerFitting_top = openmc.ZPlane(name='Fuel lower fitting top', z0=c.fuel_LowerFitting_top) self.s_fuel_activeFuel_bot = self.s_fuel_lowerFitting_top - self.s_fuel_activeFuel_top = openmc.ZPlane(name='Fuel active region top', z0=self.c.fuel_ActiveFuel_top) + self.s_fuel_activeFuel_top = openmc.ZPlane(name='Fuel active region top', z0=c.fuel_ActiveFuel_top) self.s_fuel_plenum_bot = self.s_fuel_activeFuel_top - self.s_fuel_plenum_top = openmc.ZPlane(name='Fuel plenum top', z0=self.c.fuel_Plenum_top) + self.s_fuel_plenum_top = openmc.ZPlane(name='Fuel plenum top', z0=c.fuel_Plenum_top) self.s_fuel_upperFitting_bot = self.s_fuel_plenum_top - self.s_fuel_upperFitting_top = openmc.ZPlane(name='Fuel upper fitting top', z0=self.c.fuel_UpperFitting_top) + self.s_fuel_upperFitting_top = openmc.ZPlane(name='Fuel upper fitting top', z0=c.fuel_UpperFitting_top) # Fuel pincell universes @@ -204,22 +204,22 @@ class Pincells(object): self.u_fuel_p[enr] = self.u_fuel_p[enr].add_wrapper(self.u_grids, self.s_fuel_clad_OR) self.u_fuel_p[enr].finalize() - def _add_guide_tube_pincells(self): + def _add_guide_tube_pincells(self,c): """ Adds BEAVRS guide tube pincells """ # GT radial surfaces - self.s_gt_IR = openmc.ZCylinder(name='Guide tube IR', r=self.c.guideTubeIR) - self.s_gt_OR = openmc.ZCylinder(name='Guide tube OR', r=self.c.guideTubeOR) - self.s_gt_dashpot_IR = openmc.ZCylinder(name='Guide tube IR below dashpot', r=self.c.guideTubeDashIR) - self.s_gt_dashpot_OR = openmc.ZCylinder(name='Guide tube OR below dashpot', r=self.c.guideTubeDashOR) + self.s_gt_IR = openmc.ZCylinder(name='Guide tube IR', r=c.guideTubeIR) + self.s_gt_OR = openmc.ZCylinder(name='Guide tube OR', r=c.guideTubeOR) + self.s_gt_dashpot_IR = openmc.ZCylinder(name='Guide tube IR below dashpot', r=c.guideTubeDashIR) + self.s_gt_dashpot_OR = openmc.ZCylinder(name='Guide tube OR below dashpot', r=c.guideTubeDashOR) # GT axial surfaces - self.s_gt_rod_bot = openmc.ZPlane(name='Bottom of GT rod', z0=self.c.gt_Rod_bot) + self.s_gt_rod_bot = openmc.ZPlane(name='Bottom of GT rod', z0=c.gt_Rod_bot) self.s_gt_dashpot_bot = self.s_gt_rod_bot - self.s_gt_dashpot_top = openmc.ZPlane(name='GT Dashpot plane', z0=self.c.gt_Dashpot_top) - self.s_gt_rod_top = openmc.ZPlane(name='Top of GT rod', z0=self.c.gt_Rod_top) + self.s_gt_dashpot_top = openmc.ZPlane(name='GT Dashpot plane', z0=c.gt_Dashpot_top) + self.s_gt_rod_top = openmc.ZPlane(name='Top of GT rod', z0=c.gt_Rod_top) # GT pincell universes @@ -255,13 +255,13 @@ class Pincells(object): self.u_gt_nodashpot = self.u_gt_nodashpot.add_wrapper(self.u_grids, self.s_gt_OR) self.u_gt_nodashpot.finalize() - def _add_instrument_tube_pincells(self): + def _add_instrument_tube_pincells(self,c): """ Adds BEAVRS instrument tube pincells to self object """ # IT radial surfaces - self.s_it_IR = openmc.ZCylinder(name='Instrument tube thimble IR', r=self.c.instrTubeIR) - self.s_it_OR = openmc.ZCylinder(name='Instrument tube thimble OR', r=self.c.instrTubeOR) + self.s_it_IR = openmc.ZCylinder(name='Instrument tube thimble IR', r=c.instrTubeIR) + self.s_it_OR = openmc.ZCylinder(name='Instrument tube thimble OR', r=c.instrTubeOR) # IT pincell universe self.u_it_p = InfinitePinCell(name='Instrument tube thimble') @@ -288,28 +288,28 @@ class Pincells(object): # IT axial stack - empty self.u_it_nt = self.u_gt_nodashpot - def _add_bpra_pincells(self): + def _add_bpra_pincells(self,c): """ Adds BEAVRS BPRA pincells """ # BP radial surfaces - self.s_bp_innerclad_IR = openmc.ZCylinder(name='BPRA rod radius 1', r=self.c.burnabs1) - self.s_bp_innerclad_OR = openmc.ZCylinder(name='BPRA rod radius 2', r=self.c.burnabs2) - self.s_bp_poison_IR = openmc.ZCylinder(name='BPRA rod radius 3', r=self.c.burnabs3) - self.s_bp_poison_OR = openmc.ZCylinder(name='BPRA rod radius 4', r=self.c.burnabs4) - self.s_bp_outerclad_IR = openmc.ZCylinder(name='BPRA rod radius 5', r=self.c.burnabs5) - self.s_bp_outerclad_OR = openmc.ZCylinder(name='BPRA rod radius 6', r=self.c.burnabs6) + self.s_bp_innerclad_IR = openmc.ZCylinder(name='BPRA rod radius 1', r=c.burnabs1) + self.s_bp_innerclad_OR = openmc.ZCylinder(name='BPRA rod radius 2', r=c.burnabs2) + self.s_bp_poison_IR = openmc.ZCylinder(name='BPRA rod radius 3', r=c.burnabs3) + self.s_bp_poison_OR = openmc.ZCylinder(name='BPRA rod radius 4', r=c.burnabs4) + self.s_bp_outerclad_IR = openmc.ZCylinder(name='BPRA rod radius 5', r=c.burnabs5) + self.s_bp_outerclad_OR = openmc.ZCylinder(name='BPRA rod radius 6', r=c.burnabs6) # BP axial surfaces - self.s_bp_rod_bot = openmc.ZPlane(name='Bottom of BPRA rod', z0=self.c.bpra_Rod_bot) + self.s_bp_rod_bot = openmc.ZPlane(name='Bottom of BPRA rod', z0=c.bpra_Rod_bot) self.s_bp_lowerFitting_bot = self.s_bp_rod_bot - self.s_bp_lowerFitting_top = openmc.ZPlane(name='Top of lower fitting in BPRA rod', z0=self.c.bpra_LowerFitting_top) + self.s_bp_lowerFitting_top = openmc.ZPlane(name='Top of lower fitting in BPRA rod', z0=c.bpra_LowerFitting_top) self.s_bp_active_bot = self.s_bp_lowerFitting_top - self.s_bp_active_top = openmc.ZPlane(name='Top of active poison in BPRA rod', z0=self.c.bpra_Active_top) + self.s_bp_active_top = openmc.ZPlane(name='Top of active poison in BPRA rod', z0=c.bpra_Active_top) self.s_bp_plenum_bot = self.s_bp_active_top - self.s_bp_plenum_top = openmc.ZPlane(name='Top of plenum in BPRA rod', z0=self.c.bpra_Plenum_top) - self.s_bp_rod_top = openmc.ZPlane(name='Top of BPRA rod', z0=self.c.bpra_Rod_top) + self.s_bp_plenum_top = openmc.ZPlane(name='Top of plenum in BPRA rod', z0=c.bpra_Plenum_top) + self.s_bp_rod_top = openmc.ZPlane(name='Top of BPRA rod', z0=c.bpra_Rod_top) # BP pincell universes @@ -343,17 +343,17 @@ class Pincells(object): self.u_bp = self.u_bp.add_wrapper(self.u_gt, self.s_bp_outerclad_OR) self.u_bp.finalize() - def _add_rcca_pincells(self): + def _add_rcca_pincells(self,c): """ Adds BEAVRS RCCA pincells """ # RCCA rod radial surfaces - self.s_rcca_clad_IR = openmc.ZCylinder(name='RCCA rod clad IR', r=self.c.rcca_clad_IR) - self.s_rcca_clad_OR = openmc.ZCylinder(name='RCCA rod clad OR', r=self.c.rcca_clad_OR) - self.s_rcca_b4c_OR = openmc.ZCylinder(name='RCCA rod B4C OR', r=self.c.rcca_b4c_OR) - self.s_rcca_aic_OR = openmc.ZCylinder(name='RCCA rod AIC OR', r=self.c.rcca_aic_OR) - self.s_rcca_spacer_OR = openmc.ZCylinder(name='RCCA rod spacer OR', r=self.c.rcca_spacer_OR) - self.s_rcca_spring_OR = openmc.ZCylinder(name='RCCA rod plenum spring OR', r=self.c.rcca_spring_OR) + self.s_rcca_clad_IR = openmc.ZCylinder(name='RCCA rod clad IR', r=c.rcca_clad_IR) + self.s_rcca_clad_OR = openmc.ZCylinder(name='RCCA rod clad OR', r=c.rcca_clad_OR) + self.s_rcca_b4c_OR = openmc.ZCylinder(name='RCCA rod B4C OR', r=c.rcca_b4c_OR) + self.s_rcca_aic_OR = openmc.ZCylinder(name='RCCA rod AIC OR', r=c.rcca_aic_OR) + self.s_rcca_spacer_OR = openmc.ZCylinder(name='RCCA rod spacer OR', r=c.rcca_spacer_OR) + self.s_rcca_spring_OR = openmc.ZCylinder(name='RCCA rod plenum spring OR', r=c.rcca_spring_OR) # RCCA rod axial surfaces @@ -363,14 +363,14 @@ class Pincells(object): self.s_rcca_b4c_top = {} self.s_rcca_spacer_top = {} self.s_rcca_plenum_top = {} - for b in sorted(self.c.rcca_banks): - d = self.c.rcca_bank_steps_withdrawn[b]*self.c.rcca_StepWidth - self.s_rcca_rod_bot[b] = openmc.ZPlane(name='Bottom of RCCA rod bank {0}'.format(b), z0=self.c.rcca_Rod_bot + d) - self.s_rcca_lowerFitting_top[b] = openmc.ZPlane(name='Top of RCCA rod lower fitting bank {0}'.format(b), z0=self.c.rcca_LowerFitting_top + d) - self.s_rcca_aic_top[b] = openmc.ZPlane(name='Top of RCCA rod AIC bank {0}'.format(b), z0=self.c.rcca_AIC_top + d) - self.s_rcca_b4c_top[b] = openmc.ZPlane(name='Top of RCCA rod B4C bank {0}'.format(b), z0=self.c.rcca_B4C_top + d) - self.s_rcca_spacer_top[b] = openmc.ZPlane(name='Top of RCCA rod spacer bank {0}'.format(b), z0=self.c.rcca_Spacer_top + d) - self.s_rcca_plenum_top[b] = openmc.ZPlane(name='Top of RCCA rod plenum bank {0}'.format(b), z0=self.c.rcca_Plenum_top + d) + for b in sorted(c.rcca_banks): + d = c.rcca_bank_steps_withdrawn[b]*c.rcca_StepWidth + self.s_rcca_rod_bot[b] = openmc.ZPlane(name='Bottom of RCCA rod bank {0}'.format(b), z0=c.rcca_Rod_bot + d) + self.s_rcca_lowerFitting_top[b] = openmc.ZPlane(name='Top of RCCA rod lower fitting bank {0}'.format(b), z0=c.rcca_LowerFitting_top + d) + self.s_rcca_aic_top[b] = openmc.ZPlane(name='Top of RCCA rod AIC bank {0}'.format(b), z0=c.rcca_AIC_top + d) + self.s_rcca_b4c_top[b] = openmc.ZPlane(name='Top of RCCA rod B4C bank {0}'.format(b), z0=c.rcca_B4C_top + d) + self.s_rcca_spacer_top[b] = openmc.ZPlane(name='Top of RCCA rod spacer bank {0}'.format(b), z0=c.rcca_Spacer_top + d) + self.s_rcca_plenum_top[b] = openmc.ZPlane(name='Top of RCCA rod plenum bank {0}'.format(b), z0=c.rcca_Plenum_top + d) # RCCA pincell universes @@ -401,7 +401,7 @@ class Pincells(object): # RCCA rod axial stack self.u_rcca = {} - for b in sorted(self.c.rcca_banks): + for b in sorted(c.rcca_banks): self.u_rcca[b] = AxialPinCell(name='RCCA bank {0}'.format(b)) self.u_rcca[b].add_axial_section(self.s_struct_supportPlate_bot, self.mats['Borated Water']) self.u_rcca[b].add_axial_section(self.s_struct_lowerNozzle_top, self.mats['Water SPN']) diff --git a/BEAVRS/beavrs/plots.py b/BEAVRS/beavrs/plots.py index 0779276..48f1618 100644 --- a/BEAVRS/beavrs/plots.py +++ b/BEAVRS/beavrs/plots.py @@ -6,16 +6,15 @@ import openmc class Plots(object): - def __init__(self, mats, c): + def __init__(self, mats, constants): """ Creates BEAVRS plots""" self.mats = mats - self.c = c self.plots = [] self._set_colors() - self._add_plots() + self._add_plots(constants) def _set_colors(self): @@ -37,9 +36,9 @@ class Plots(object): self.mats['Fuel 3.1%']: [ 0, 0, 128], # 3.1: dark blue } - def _add_plots(self): + def _add_plots(self,c): - H = self.c.struct_HighestExtent-self.c.struct_LowestExtent + H = c.struct_HighestExtent-c.struct_LowestExtent res = 1000 # BPRA positions @@ -48,7 +47,7 @@ class Plots(object): plot.color_by = 'material' plot.basis = 'xy' plot.origin = [0, 0, H/2] - plot.width = [self.c.rpvOR*2, self.c.rpvOR*2] + plot.width = [c.rpvOR*2, c.rpvOR*2] plot.pixels = [res, res] plot.mask_components = [self.mats['Borosilicate Glass']] self.plots.append(plot) @@ -58,7 +57,7 @@ class Plots(object): plot.color_by = 'material' plot.basis = 'xy' plot.origin = [0, 0, H/2] - plot.width = [self.c.rpvOR*2, self.c.rpvOR*2] + plot.width = [c.rpvOR*2, c.rpvOR*2] plot.pixels = [res, res] plot.colors = self.colors_mat self.plots.append(plot) @@ -68,7 +67,7 @@ class Plots(object): plot.color_by = 'material' plot.basis = 'xy' plot.origin = [0, 0, H/2] - plot.width = [self.c.rpvOR*2, self.c.rpvOR*2] + plot.width = [c.rpvOR*2, c.rpvOR*2] plot.pixels = [res, res] plot.colors = self.colors_mat self.plots.append(plot) @@ -77,8 +76,8 @@ class Plots(object): plot.filename = 'radial_mats_grid1_center' plot.color_by = 'material' plot.basis = 'xy' - plot.origin = [0, 0, self.c.grid1_bot+(self.c.grid1_top - self.c.grid1_bot)/2] - plot.width = [self.c.rpvOR*2, self.c.rpvOR*2] + plot.origin = [0, 0, c.grid1_bot+(c.grid1_top - c.grid1_bot)/2] + plot.width = [c.rpvOR*2, c.rpvOR*2] plot.pixels = [res, res] plot.colors = self.colors_mat self.plots.append(plot) @@ -87,8 +86,8 @@ class Plots(object): plot.filename = 'radial_mats_grid4_center' plot.color_by = 'material' plot.basis = 'xy' - plot.origin = [0, 0, self.c.grid4_bot+(self.c.grid4_top - self.c.grid4_bot)/2] - plot.width = [self.c.rpvOR*2, self.c.rpvOR*2] + plot.origin = [0, 0, c.grid4_bot+(c.grid4_top - c.grid4_bot)/2] + plot.width = [c.rpvOR*2, c.rpvOR*2] plot.pixels = [res, res] plot.colors = self.colors_mat self.plots.append(plot) @@ -127,7 +126,7 @@ class Plots(object): plot.filename = 'axial_mats_row_8_topzoom3' plot.color_by = 'material' plot.basis = 'xz' - plot.origin = [0, 0, self.c.fuel_Rod_top] + plot.origin = [0, 0, c.fuel_Rod_top] plot.width = [H/8, H/8] plot.pixels = [res, res] plot.colors = self.colors_mat @@ -157,7 +156,7 @@ class Plots(object): plot.filename = 'axial_mats_row_8_botzoom3' plot.color_by = 'material' plot.basis = 'xz' - plot.origin = [0, 0, self.c.fuel_Rod_bot] + plot.origin = [0, 0, c.fuel_Rod_bot] plot.width = [H/8, H/8] plot.pixels = [res, res] plot.colors = self.colors_mat @@ -167,8 +166,8 @@ class Plots(object): plot.filename = 'grid5_mats_H7' plot.color_by = 'material' plot.basis = 'xy' - plot.origin = [0, self.c.latticePitch, self.c.grid5_bot+(self.c.grid5_top-self.c.grid5_bot)/2] - plot.width = [self.c.latticePitch, self.c.latticePitch] + plot.origin = [0, c.latticePitch, c.grid5_bot+(c.grid5_top-c.grid5_bot)/2] + plot.width = [c.latticePitch, c.latticePitch] plot.pixels = [res, res] plot.colors = self.colors_mat self.plots.append(plot) @@ -177,10 +176,10 @@ class Plots(object): plot.filename = 'grid8_mats_J14' plot.color_by = 'material' plot.basis = 'xy' - plot.origin = [-self.c.latticePitch+self.c.latticePitch/3, \ - -6*self.c.latticePitch+self.c.latticePitch/3, \ - self.c.grid8_bot+(self.c.grid8_top-self.c.grid8_bot)/2] - plot.width = [self.c.latticePitch, self.c.latticePitch] + plot.origin = [-c.latticePitch+c.latticePitch/3, \ + -6*c.latticePitch+c.latticePitch/3, \ + c.grid8_bot+(c.grid8_top-c.grid8_bot)/2] + plot.width = [c.latticePitch, c.latticePitch] plot.pixels = [res, res] plot.colors = self.colors_mat self.plots.append(plot) @@ -189,10 +188,10 @@ class Plots(object): plot.filename = 'grid5_mats_J14' plot.color_by = 'material' plot.basis = 'xy' - plot.origin = [-self.c.latticePitch+self.c.latticePitch/3, \ - -6*self.c.latticePitch+self.c.latticePitch/3, \ - self.c.grid5_bot+(self.c.grid5_top-self.c.grid5_bot)/2] - plot.width = [self.c.latticePitch, self.c.latticePitch] + plot.origin = [-c.latticePitch+c.latticePitch/3, \ + -6*c.latticePitch+c.latticePitch/3, \ + c.grid5_bot+(c.grid5_top-c.grid5_bot)/2] + plot.width = [c.latticePitch, c.latticePitch] plot.pixels = [res, res] plot.colors = self.colors_mat self.plots.append(plot) @@ -201,31 +200,31 @@ class Plots(object): plot.filename = 'midplane_mats_J14' plot.color_by = 'material' plot.basis = 'xy' - plot.origin = [-self.c.latticePitch+self.c.latticePitch/3, \ - -6*self.c.latticePitch+self.c.latticePitch/3, H/2] - plot.width = [self.c.latticePitch, self.c.latticePitch] + plot.origin = [-c.latticePitch+c.latticePitch/3, \ + -6*c.latticePitch+c.latticePitch/3, H/2] + plot.width = [c.latticePitch, c.latticePitch] plot.pixels = [res, res] plot.colors = self.colors_mat self.plots.append(plot) - h = 4*(self.c.struct_LowerNozzle_top - self.c.struct_SupportPlate_bot)/self.c.latticePitch + h = 4*(c.struct_LowerNozzle_top - c.struct_SupportPlate_bot)/c.latticePitch plot = openmc.Plot() plot.filename = 'J8_axial_bot' plot.color_by = 'material' plot.basis = 'xz' - plot.origin = [0, self.c.latticePitch, self.c.struct_LowerNozzle_top] - plot.width = [self.c.latticePitch, h] + plot.origin = [0, c.latticePitch, c.struct_LowerNozzle_top] + plot.width = [c.latticePitch, h] plot.pixels = [res, int(res*h)] plot.colors = self.colors_mat self.plots.append(plot) - h = 4*(self.c.struct_UpperNozzle_top - self.c.fuel_Rod_top)/self.c.latticePitch + h = 4*(c.struct_UpperNozzle_top - c.fuel_Rod_top)/c.latticePitch plot = openmc.Plot() plot.filename = 'J8_axial_top' plot.color_by = 'material' plot.basis = 'xz' - plot.origin = [0, self.c.latticePitch, self.c.fuel_Rod_top] - plot.width = [self.c.latticePitch, h] + plot.origin = [0, c.latticePitch, c.fuel_Rod_top] + plot.width = [c.latticePitch, h] plot.pixels = [res, int(res*h)] plot.colors = self.colors_mat self.plots.append(plot) @@ -234,18 +233,18 @@ class Plots(object): plot.filename = 'J8_nozzle' plot.color_by = 'material' plot.basis = 'xy' - plot.origin = [0, self.c.latticePitch, self.c.struct_SupportPlate_bot + 2.0] - plot.width = [self.c.latticePitch, self.c.latticePitch] + plot.origin = [0, c.latticePitch, c.struct_SupportPlate_bot + 2.0] + plot.width = [c.latticePitch, c.latticePitch] plot.pixels = [res, res] plot.colors = self.colors_mat self.plots.append(plot) - h = 2*(self.c.struct_UpperNozzle_top - self.c.fuel_Rod_top) + h = 2*(c.struct_UpperNozzle_top - c.fuel_Rod_top) plot = openmc.Plot() plot.filename = 'H8_axial_top' plot.color_by = 'material' plot.basis = 'xz' - plot.origin = [0, self.c.latticePitch, self.c.fuel_Rod_top] + plot.origin = [0, c.latticePitch, c.fuel_Rod_top] plot.width = [h, h] plot.pixels = [res, res] plot.colors = self.colors_mat diff --git a/BEAVRS/beavrs/univzero.py b/BEAVRS/beavrs/univzero.py index d0f29ae..126aef4 100644 --- a/BEAVRS/beavrs/univzero.py +++ b/BEAVRS/beavrs/univzero.py @@ -8,64 +8,63 @@ import openmc class UniverseZero(openmc.Universe): - def __init__(self, core, mats, C, is_2d=False): + def __init__(self, core, mats, constants, is_2d=False): """ Creates BEAVRS main universe """ super(UniverseZero, self).__init__(name='Main BEAVRS universe', universe_id=0) self.core = core self.mats = mats - self.c = C self.is_2d = is_2d - self._add_outer_rings() - self._add_shield_panels() - self._add_core_barrel() + self._add_outer_rings(constants) + self._add_shield_panels(constants) + self._add_core_barrel(constants) self._create_main_universe() - def _add_outer_rings(self): + def _add_outer_rings(self,c): """ Adds BEAVRS RPV, liner, and downcomer """ # Change z-dimension based on whether 2D or 3D problem if self.is_2d: - self.s_upperBound = openmc.ZPlane(name='Highest Extent', z0=self.c.struct_HighestExtent_2d, boundary_type='reflective') - self.s_lowerBound = openmc.ZPlane(name='Lowest Extent', z0=self.c.struct_LowestExtent_2d, boundary_type='reflective') + self.s_upperBound = openmc.ZPlane(name='Highest Extent', z0=c.struct_HighestExtent_2d, boundary_type='reflective') + self.s_lowerBound = openmc.ZPlane(name='Lowest Extent', z0=c.struct_LowestExtent_2d, boundary_type='reflective') else: - self.s_upperBound = openmc.ZPlane(name='Highest Extent', z0=self.c.struct_HighestExtent, boundary_type='vacuum') - self.s_lowerBound = openmc.ZPlane(name='Lowest Extent', z0=self.c.struct_LowestExtent, boundary_type='vacuum') + self.s_upperBound = openmc.ZPlane(name='Highest Extent', z0=c.struct_HighestExtent, boundary_type='vacuum') + self.s_lowerBound = openmc.ZPlane(name='Lowest Extent', z0=c.struct_LowestExtent, boundary_type='vacuum') # RPV - self.s_RPVOR = openmc.ZCylinder(name='RPV OR', r=self.c.rpvOR, boundary_type='vacuum') - self.s_RPVIR = openmc.ZCylinder(name='RPV IR', r=self.c.rpvIR) + self.s_RPVOR = openmc.ZCylinder(name='RPV OR', r=c.rpvOR, boundary_type='vacuum') + self.s_RPVIR = openmc.ZCylinder(name='RPV IR', r=c.rpvIR) self.c_RPV = openmc.Cell(name="RPV", fill=self.mats['Carbon Steel']) self.c_RPV.region = (-self.s_RPVOR & +self.s_RPVIR & -self.s_upperBound & +self.s_lowerBound) # RPV liner - self.s_linerIR = openmc.ZCylinder(name='RPV Liner IR', r=self.c.linerIR) + self.s_linerIR = openmc.ZCylinder(name='RPV Liner IR', r=c.linerIR) self.c_liner = openmc.Cell(name="RPV Liner", fill=self.mats['SS304']) self.c_liner.region = (-self.s_RPVIR & +self.s_linerIR & -self.s_upperBound & +self.s_lowerBound) # Downcomer - self.s_neutronShieldOR = openmc.ZCylinder(name='Shield Panel OR', r=self.c.neutronShieldOR) + self.s_neutronShieldOR = openmc.ZCylinder(name='Shield Panel OR', r=c.neutronShieldOR) self.c_downcomer = openmc.Cell(name="Downcomer", fill=self.mats['Borated Water']) self.c_downcomer.region = (-self.s_linerIR & +self.s_neutronShieldOR & -self.s_upperBound & +self.s_lowerBound) - def _add_shield_panels(self): + def _add_shield_panels(self,c): """ Adds BEAVRS shield panels """ # Shield panels - self.s_neutronShieldIR = openmc.ZCylinder(name='Shield Panel IR', r=self.c.neutronShieldIR) - self.s_ns_NWbot_SEtop = openmc.Plane(name='Shield Panel NWbot/SEtop', **self.c.neutronShield_NWbot_SEtop) - self.s_ns_NWtop_SEbot = openmc.Plane(name='Shield Panel NWtop/SEbot', **self.c.neutronShield_NWtop_SEbot) - self.s_ns_NEbot_SWtop = openmc.Plane(name='Shield Panel NEbot/SWtop', **self.c.neutronShield_NEbot_SWtop) - self.s_ns_NEtop_SWbot = openmc.Plane(name='Shield Panel NEtop/SWbot', **self.c.neutronShield_NEtop_SWbot) + self.s_neutronShieldIR = openmc.ZCylinder(name='Shield Panel IR', r=c.neutronShieldIR) + self.s_ns_NWbot_SEtop = openmc.Plane(name='Shield Panel NWbot/SEtop', **c.neutronShield_NWbot_SEtop) + self.s_ns_NWtop_SEbot = openmc.Plane(name='Shield Panel NWtop/SEbot', **c.neutronShield_NWtop_SEbot) + self.s_ns_NEbot_SWtop = openmc.Plane(name='Shield Panel NEbot/SWtop', **c.neutronShield_NEbot_SWtop) + self.s_ns_NEtop_SWbot = openmc.Plane(name='Shield Panel NEtop/SWbot', **c.neutronShield_NEtop_SWbot) self.c_shieldPanels = [] @@ -117,19 +116,19 @@ class UniverseZero(openmc.Universe): -self.s_upperBound & +self.s_lowerBound) self.c_shieldPanels.append(self.c_sp_W) - self.s_coreBarrelOR = openmc.ZCylinder(name='Core Barrel OR', r=self.c.coreBarrelOR) + self.s_coreBarrelOR = openmc.ZCylinder(name='Core Barrel OR', r=c.coreBarrelOR) self.c_sp_inner = openmc.Cell(name='Water between barrel and shield', fill=self.mats['Borated Water']) self.c_sp_inner.region = (+self.s_coreBarrelOR & -self.s_neutronShieldIR & -self.s_upperBound & +self.s_lowerBound) self.c_shieldPanels.append(self.c_sp_inner) - def _add_core_barrel(self): + def _add_core_barrel(self,c): """ Adds BEAVRS core barrel and core lattice """ # Core barrel - self.s_coreBarrelIR = openmc.ZCylinder(name='Core Barrel IR', r=self.c.coreBarrelIR) + self.s_coreBarrelIR = openmc.ZCylinder(name='Core Barrel IR', r=c.coreBarrelIR) self.c_coreBarrel = openmc.Cell(name="Core Barrel", fill=self.mats['SS304']) self.c_coreBarrel.region = (-self.s_coreBarrelOR & +self.s_coreBarrelIR & -self.s_upperBound & +self.s_lowerBound) @@ -165,7 +164,7 @@ class UniverseZero(openmc.Universe): self.core_univ.add_cell(self.c_core) # Define boundaries of bounding box - outer_bound = 8.5*self.c.latticePitch + outer_bound = 8.5*c.latticePitch self.s_leftBound = openmc.XPlane(name='Left Box', x0=-outer_bound, boundary_type='vacuum') self.s_rightBound = openmc.XPlane(name='Right Box', x0=outer_bound, boundary_type='vacuum') self.s_backBound = openmc.YPlane(name='Back Box', y0=-outer_bound, boundary_type='vacuum') diff --git a/BEAVRS/extract-assm.ipynb b/BEAVRS/extract-assm.ipynb index 5d4af15..8154ac8 100644 --- a/BEAVRS/extract-assm.ipynb +++ b/BEAVRS/extract-assm.ipynb @@ -45,7 +45,16 @@ "metadata": { "collapsed": true }, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Value supplied was 'None'. S Value set to default value of 15\n", + "Value supplied was 'None'. SS Value set to default value of 0\n" + ] + } + ], "source": [ "# Instantiate a BEAVRS object from the mit-crpg/PWR_benchmarks repository\n", "b = beavrs.builder.BEAVRS()" @@ -105,40 +114,40 @@ "354 Fuel 3.1% enr no instr 6S\n", "339 Fuel 3.1% enr instr no BAs\n", "357 Fuel 3.1% enr instr 6S\n", - "420 Fuel 3.1% enr no instr RCCA SA\n", + "444 Fuel 3.1% enr no instr RCCA SA\n", "408 Fuel 3.1% enr no instr 16\n", - "159 Fuel 1.6% enr instr RCCA B\n", + "153 Fuel 1.6% enr instr RCCA B\n", "414 Fuel 3.1% enr no instr 20\n", - "171 Fuel 1.6% enr instr RCCA C\n", - "156 Fuel 1.6% enr no instr RCCA B\n", + "159 Fuel 1.6% enr instr RCCA C\n", + "150 Fuel 1.6% enr no instr RCCA B\n", "402 Fuel 3.1% enr no instr 15SE\n", "270 Fuel 2.4% enr no instr 16\n", - "192 Fuel 1.6% enr no instr RCCA SD\n", + "186 Fuel 1.6% enr no instr RCCA SD\n", "174 Fuel 1.6% enr no instr RCCA SB\n", "273 Fuel 2.4% enr instr 16\n", - "162 Fuel 1.6% enr no instr RCCA SC\n", + "180 Fuel 1.6% enr no instr RCCA SC\n", "396 Fuel 3.1% enr no instr 15SW\n", - "423 Fuel 3.1% enr instr RCCA SA\n", - "324 Fuel 2.4% enr no instr RCCA D\n", + "447 Fuel 3.1% enr instr RCCA SA\n", + "300 Fuel 2.4% enr no instr RCCA D\n", "60 Fuel 1.6% enr no instr no BAs\n", "240 Fuel 2.4% enr no instr 12\n", - "183 Fuel 1.6% enr instr RCCA SE\n", + "195 Fuel 1.6% enr instr RCCA SE\n", "63 Fuel 1.6% enr instr no BAs\n", - "195 Fuel 1.6% enr instr RCCA SD\n", + "189 Fuel 1.6% enr instr RCCA SD\n", "363 Fuel 3.1% enr instr 6E\n", - "153 Fuel 1.6% enr instr RCCA A\n", - "168 Fuel 1.6% enr no instr RCCA C\n", + "147 Fuel 1.6% enr instr RCCA A\n", + "156 Fuel 1.6% enr no instr RCCA C\n", "366 Fuel 3.1% enr no instr 6W\n", "243 Fuel 2.4% enr instr 12\n", "177 Fuel 1.6% enr instr RCCA SB\n", - "180 Fuel 1.6% enr no instr RCCA SE\n", - "150 Fuel 1.6% enr no instr RCCA A\n", - "186 Fuel 1.6% enr no instr RCCA D\n", + "192 Fuel 1.6% enr no instr RCCA SE\n", + "144 Fuel 1.6% enr no instr RCCA A\n", + "162 Fuel 1.6% enr no instr RCCA D\n", "417 Fuel 3.1% enr instr 20\n", "360 Fuel 3.1% enr no instr 6E\n", - "327 Fuel 2.4% enr instr RCCA D\n", + "303 Fuel 2.4% enr instr RCCA D\n", "393 Fuel 3.1% enr instr 15NE\n", - "165 Fuel 1.6% enr instr RCCA SC\n", + "183 Fuel 1.6% enr instr RCCA SC\n", "384 Fuel 3.1% enr no instr 15NW\n", "348 Fuel 3.1% enr no instr 6N\n", "351 Fuel 3.1% enr instr 6N\n" @@ -240,7 +249,7 @@ "outputs": [], "source": [ "# Create surface objects for our \"root\" cell\"\n", - "lattice_sides = openmc.model.get_rectangular_prism(17*c.pinPitch, 17*c.pinPitch,\n", + "lattice_sides = openmc.model.rectangular_prism(17*c.pinPitch, 17*c.pinPitch,\n", " boundary_type='reflective')\n", "min_z = openmc.ZPlane(z0=c.struct_LowestExtent, boundary_type='vacuum')\n", "max_z = openmc.ZPlane(z0=c.struct_HighestExtent, boundary_type='vacuum')\n", @@ -372,7 +381,7 @@ "settings.particles = 1000\n", "\n", "# Use a bounding box to define the starting source distribution\n", - "lower_left = [-17*c.pinPitch/2, 17*c.pinPitch/2, c.fuel_ActiveFuel_bot]\n", + "lower_left = [-17*c.pinPitch/2, -17*c.pinPitch/2, c.fuel_ActiveFuel_bot]\n", "upper_right = [+17*c.pinPitch/2, +17*c.pinPitch/2, c.fuel_ActiveFuel_top]\n", "settings.source = openmc.source.Source(\n", " openmc.stats.Box(lower_left, upper_right, only_fissionable=True))\n", @@ -456,11 +465,8 @@ } ], "source": [ - "# Convert OpenMC's funky ppm to png\n", - "!convert plot_1.ppm plot.png\n", - "\n", "# Display the plot inline\n", - "Image(filename='plot.png', width=250, height=250)" + "Image(filename='plot_1.png', width=250, height=250)" ] }, { @@ -646,296 +652,291 @@ "name": "stdout", "output_type": "stream", "text": [ - "\n", - " %%%%%%%%%%%%%%%\n", - " %%%%%%%%%%%%%%%%%%%%%%%%\n", - " %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n", - " %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n", - " %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n", - " %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n", - " %%%%%%%%%%%%%%%%%%%%%%%%\n", + " %%%%%%%%%%%%%%%\n", + " %%%%%%%%%%%%%%%%%%%%%%%%\n", + " %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n", + " %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n", + " %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n", + " %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n", " %%%%%%%%%%%%%%%%%%%%%%%%\n", - " ############### %%%%%%%%%%%%%%%%%%%%%%%%\n", - " ################## %%%%%%%%%%%%%%%%%%%%%%%\n", - " ################### %%%%%%%%%%%%%%%%%%%%%%%\n", - " #################### %%%%%%%%%%%%%%%%%%%%%%\n", - " ##################### %%%%%%%%%%%%%%%%%%%%%\n", - " ###################### %%%%%%%%%%%%%%%%%%%%\n", - " ####################### %%%%%%%%%%%%%%%%%%\n", - " ####################### %%%%%%%%%%%%%%%%%\n", - " ###################### %%%%%%%%%%%%%%%%%\n", - " #################### %%%%%%%%%%%%%%%%%\n", - " ################# %%%%%%%%%%%%%%%%%\n", - " ############### %%%%%%%%%%%%%%%%\n", - " ############ %%%%%%%%%%%%%%%\n", - " ######## %%%%%%%%%%%%%%\n", - " %%%%%%%%%%%\n", + " %%%%%%%%%%%%%%%%%%%%%%%%\n", + " ############### %%%%%%%%%%%%%%%%%%%%%%%%\n", + " ################## %%%%%%%%%%%%%%%%%%%%%%%\n", + " ################### %%%%%%%%%%%%%%%%%%%%%%%\n", + " #################### %%%%%%%%%%%%%%%%%%%%%%\n", + " ##################### %%%%%%%%%%%%%%%%%%%%%\n", + " ###################### %%%%%%%%%%%%%%%%%%%%\n", + " ####################### %%%%%%%%%%%%%%%%%%\n", + " ####################### %%%%%%%%%%%%%%%%%\n", + " ###################### %%%%%%%%%%%%%%%%%\n", + " #################### %%%%%%%%%%%%%%%%%\n", + " ################# %%%%%%%%%%%%%%%%%\n", + " ############### %%%%%%%%%%%%%%%%\n", + " ############ %%%%%%%%%%%%%%%\n", + " ######## %%%%%%%%%%%%%%\n", + " %%%%%%%%%%%\n", "\n", - " | The OpenMC Monte Carlo Code\n", - " Copyright | 2011-2018 MIT and OpenMC contributors\n", - " License | http://openmc.readthedocs.io/en/latest/license.html\n", - " Version | 0.10.0\n", - " Git SHA1 | 0cf903cc67af4267a8216535fc2fa6a61f4341a1\n", - " Date/Time | 2018-08-28 17:16:34\n", - " MPI Processes | 2\n", - " OpenMP Threads | 20\n", + " | The OpenMC Monte Carlo Code\n", + " Copyright | 2011-2023 MIT, UChicago Argonne LLC, and contributors\n", + " License | https://docs.openmc.org/en/latest/license.html\n", + " Version | 0.13.3\n", + " Git SHA1 | 50e39a4e20dc9e0f3d7ccf07333f6a5e6c797c8c\n", + " Date/Time | 2023-11-15 23:47:24\n", + " OpenMP Threads | 4\n", "\n", " Reading settings XML file...\n", " Reading cross sections XML file...\n", " Reading materials XML file...\n", " Reading geometry XML file...\n", - " Building neighboring cells lists for each surface...\n", - " Reading O16 from /home/liangjg/nucdata/nndc_hdf5/O16.h5\n", - " Reading O17 from /home/liangjg/nucdata/nndc_hdf5/O17.h5\n", - " Reading N14 from /home/liangjg/nucdata/nndc_hdf5/N14.h5\n", - " Reading N15 from /home/liangjg/nucdata/nndc_hdf5/N15.h5\n", - " Reading Ar36 from /home/liangjg/nucdata/nndc_hdf5/Ar36.h5\n", - " WARNING: Negative value(s) found on probability table for nuclide Ar36 \n", - " at 294K\n", - " Reading Ar38 from /home/liangjg/nucdata/nndc_hdf5/Ar38.h5\n", - " Reading Ar40 from /home/liangjg/nucdata/nndc_hdf5/Ar40.h5\n", - " Reading C0 from /home/liangjg/nucdata/nndc_hdf5/C0.h5\n", - " Reading He3 from /home/liangjg/nucdata/nndc_hdf5/He3.h5\n", - " Reading He4 from /home/liangjg/nucdata/nndc_hdf5/He4.h5\n", - " Reading Si28 from /home/liangjg/nucdata/nndc_hdf5/Si28.h5\n", - " Reading Si29 from /home/liangjg/nucdata/nndc_hdf5/Si29.h5\n", - " Reading Si30 from /home/liangjg/nucdata/nndc_hdf5/Si30.h5\n", - " Reading Cr50 from /home/liangjg/nucdata/nndc_hdf5/Cr50.h5\n", - " Reading Cr52 from /home/liangjg/nucdata/nndc_hdf5/Cr52.h5\n", - " Reading Cr53 from /home/liangjg/nucdata/nndc_hdf5/Cr53.h5\n", - " Reading Cr54 from /home/liangjg/nucdata/nndc_hdf5/Cr54.h5\n", - " Reading Mn55 from /home/liangjg/nucdata/nndc_hdf5/Mn55.h5\n", - " Reading Fe54 from /home/liangjg/nucdata/nndc_hdf5/Fe54.h5\n", - " Reading Fe56 from /home/liangjg/nucdata/nndc_hdf5/Fe56.h5\n", - " Reading Fe57 from /home/liangjg/nucdata/nndc_hdf5/Fe57.h5\n", - " Reading Fe58 from /home/liangjg/nucdata/nndc_hdf5/Fe58.h5\n", - " Reading Ni58 from /home/liangjg/nucdata/nndc_hdf5/Ni58.h5\n", - " Reading Ni60 from /home/liangjg/nucdata/nndc_hdf5/Ni60.h5\n", - " Reading Ni61 from /home/liangjg/nucdata/nndc_hdf5/Ni61.h5\n", - " Reading Ni62 from /home/liangjg/nucdata/nndc_hdf5/Ni62.h5\n", - " Reading Ni64 from /home/liangjg/nucdata/nndc_hdf5/Ni64.h5\n", - " Reading Zr90 from /home/liangjg/nucdata/nndc_hdf5/Zr90.h5\n", - " Reading Zr91 from /home/liangjg/nucdata/nndc_hdf5/Zr91.h5\n", - " Reading Zr92 from /home/liangjg/nucdata/nndc_hdf5/Zr92.h5\n", - " Reading Zr94 from /home/liangjg/nucdata/nndc_hdf5/Zr94.h5\n", - " Reading Zr96 from /home/liangjg/nucdata/nndc_hdf5/Zr96.h5\n", - " Reading Sn112 from /home/liangjg/nucdata/nndc_hdf5/Sn112.h5\n", - " Reading Sn114 from /home/liangjg/nucdata/nndc_hdf5/Sn114.h5\n", - " Reading Sn115 from /home/liangjg/nucdata/nndc_hdf5/Sn115.h5\n", - " Reading Sn116 from /home/liangjg/nucdata/nndc_hdf5/Sn116.h5\n", - " Reading Sn117 from /home/liangjg/nucdata/nndc_hdf5/Sn117.h5\n", - " Reading Sn118 from /home/liangjg/nucdata/nndc_hdf5/Sn118.h5\n", - " Reading Sn119 from /home/liangjg/nucdata/nndc_hdf5/Sn119.h5\n", - " Reading Sn120 from /home/liangjg/nucdata/nndc_hdf5/Sn120.h5\n", - " Reading Sn122 from /home/liangjg/nucdata/nndc_hdf5/Sn122.h5\n", - " Reading Sn124 from /home/liangjg/nucdata/nndc_hdf5/Sn124.h5\n", - " Reading U234 from /home/liangjg/nucdata/nndc_hdf5/U234.h5\n", - " Reading U235 from /home/liangjg/nucdata/nndc_hdf5/U235.h5\n", - " Reading U238 from /home/liangjg/nucdata/nndc_hdf5/U238.h5\n", - " Reading U236 from /home/liangjg/nucdata/nndc_hdf5/U236.h5\n", - " Reading B10 from /home/liangjg/nucdata/nndc_hdf5/B10.h5\n", - " Reading B11 from /home/liangjg/nucdata/nndc_hdf5/B11.h5\n", - " Reading H1 from /home/liangjg/nucdata/nndc_hdf5/H1.h5\n", - " Reading H2 from /home/liangjg/nucdata/nndc_hdf5/H2.h5\n", - " Reading c_H_in_H2O from /home/liangjg/nucdata/nndc_hdf5/c_H_in_H2O.h5\n", - " Maximum neutron transport energy: 2.00000E+07 eV for O17\n", + " Reading O16 from /opt/xdata/endfb-vii.1-hdf5/neutron/O16.h5\n", + " Reading O17 from /opt/xdata/endfb-vii.1-hdf5/neutron/O17.h5\n", + " Reading N14 from /opt/xdata/endfb-vii.1-hdf5/neutron/N14.h5\n", + " Reading N15 from /opt/xdata/endfb-vii.1-hdf5/neutron/N15.h5\n", + " Reading Ar36 from /opt/xdata/endfb-vii.1-hdf5/neutron/Ar36.h5\n", + " WARNING: Negative value(s) found on probability table for nuclide Ar36 at 294K\n", + " Reading Ar38 from /opt/xdata/endfb-vii.1-hdf5/neutron/Ar38.h5\n", + " Reading Ar40 from /opt/xdata/endfb-vii.1-hdf5/neutron/Ar40.h5\n", + " Reading C0 from /opt/xdata/endfb-vii.1-hdf5/neutron/C0.h5\n", + " Reading He3 from /opt/xdata/endfb-vii.1-hdf5/neutron/He3.h5\n", + " Reading He4 from /opt/xdata/endfb-vii.1-hdf5/neutron/He4.h5\n", + " Reading Si28 from /opt/xdata/endfb-vii.1-hdf5/neutron/Si28.h5\n", + " Reading Si29 from /opt/xdata/endfb-vii.1-hdf5/neutron/Si29.h5\n", + " Reading Si30 from /opt/xdata/endfb-vii.1-hdf5/neutron/Si30.h5\n", + " Reading Cr50 from /opt/xdata/endfb-vii.1-hdf5/neutron/Cr50.h5\n", + " Reading Cr52 from /opt/xdata/endfb-vii.1-hdf5/neutron/Cr52.h5\n", + " Reading Cr53 from /opt/xdata/endfb-vii.1-hdf5/neutron/Cr53.h5\n", + " Reading Cr54 from /opt/xdata/endfb-vii.1-hdf5/neutron/Cr54.h5\n", + " Reading Mn55 from /opt/xdata/endfb-vii.1-hdf5/neutron/Mn55.h5\n", + " Reading Fe54 from /opt/xdata/endfb-vii.1-hdf5/neutron/Fe54.h5\n", + " Reading Fe56 from /opt/xdata/endfb-vii.1-hdf5/neutron/Fe56.h5\n", + " Reading Fe57 from /opt/xdata/endfb-vii.1-hdf5/neutron/Fe57.h5\n", + " Reading Fe58 from /opt/xdata/endfb-vii.1-hdf5/neutron/Fe58.h5\n", + " Reading Ni58 from /opt/xdata/endfb-vii.1-hdf5/neutron/Ni58.h5\n", + " Reading Ni60 from /opt/xdata/endfb-vii.1-hdf5/neutron/Ni60.h5\n", + " Reading Ni61 from /opt/xdata/endfb-vii.1-hdf5/neutron/Ni61.h5\n", + " Reading Ni62 from /opt/xdata/endfb-vii.1-hdf5/neutron/Ni62.h5\n", + " Reading Ni64 from /opt/xdata/endfb-vii.1-hdf5/neutron/Ni64.h5\n", + " Reading Zr90 from /opt/xdata/endfb-vii.1-hdf5/neutron/Zr90.h5\n", + " Reading Zr91 from /opt/xdata/endfb-vii.1-hdf5/neutron/Zr91.h5\n", + " Reading Zr92 from /opt/xdata/endfb-vii.1-hdf5/neutron/Zr92.h5\n", + " Reading Zr94 from /opt/xdata/endfb-vii.1-hdf5/neutron/Zr94.h5\n", + " Reading Zr96 from /opt/xdata/endfb-vii.1-hdf5/neutron/Zr96.h5\n", + " Reading Sn112 from /opt/xdata/endfb-vii.1-hdf5/neutron/Sn112.h5\n", + " Reading Sn114 from /opt/xdata/endfb-vii.1-hdf5/neutron/Sn114.h5\n", + " Reading Sn115 from /opt/xdata/endfb-vii.1-hdf5/neutron/Sn115.h5\n", + " Reading Sn116 from /opt/xdata/endfb-vii.1-hdf5/neutron/Sn116.h5\n", + " Reading Sn117 from /opt/xdata/endfb-vii.1-hdf5/neutron/Sn117.h5\n", + " Reading Sn118 from /opt/xdata/endfb-vii.1-hdf5/neutron/Sn118.h5\n", + " Reading Sn119 from /opt/xdata/endfb-vii.1-hdf5/neutron/Sn119.h5\n", + " Reading Sn120 from /opt/xdata/endfb-vii.1-hdf5/neutron/Sn120.h5\n", + " Reading Sn122 from /opt/xdata/endfb-vii.1-hdf5/neutron/Sn122.h5\n", + " Reading Sn124 from /opt/xdata/endfb-vii.1-hdf5/neutron/Sn124.h5\n", + " Reading U234 from /opt/xdata/endfb-vii.1-hdf5/neutron/U234.h5\n", + " Reading U235 from /opt/xdata/endfb-vii.1-hdf5/neutron/U235.h5\n", + " Reading U238 from /opt/xdata/endfb-vii.1-hdf5/neutron/U238.h5\n", + " Reading U236 from /opt/xdata/endfb-vii.1-hdf5/neutron/U236.h5\n", + " Reading B10 from /opt/xdata/endfb-vii.1-hdf5/neutron/B10.h5\n", + " Reading B11 from /opt/xdata/endfb-vii.1-hdf5/neutron/B11.h5\n", + " Reading H1 from /opt/xdata/endfb-vii.1-hdf5/neutron/H1.h5\n", + " Reading H2 from /opt/xdata/endfb-vii.1-hdf5/neutron/H2.h5\n", + " Reading c_H_in_H2O from /opt/xdata/endfb-vii.1-hdf5/neutron/c_H_in_H2O.h5\n", + " Minimum neutron data temperature: 294 K\n", + " Maximum neutron data temperature: 294 K\n", " Reading tallies XML file...\n", + " Preparing distributed cell instances...\n", + " Reading plot XML file...\n", " Writing summary.h5 file...\n", + " Maximum neutron transport energy: 20000000 eV for O17\n", " Initializing source particles...\n", "\n", " ====================> K EIGENVALUE SIMULATION <====================\n", "\n", - " Bat./Gen. k Average k \n", - " ========= ======== ==================== \n", - " 1/1 1.04727 \n", - " 2/1 1.00574 \n", - " 3/1 1.03701 \n", - " 4/1 0.96299 \n", - " 5/1 0.98797 \n", - " 6/1 1.01822 \n", - " 7/1 1.00424 \n", - " 8/1 1.01493 \n", - " 9/1 1.02974 \n", - " 10/1 1.02082 \n", - " 11/1 1.00522 \n", - " 12/1 1.01496 1.01009 +/- 0.00487\n", - " 13/1 1.01189 1.01069 +/- 0.00287\n", - " 14/1 0.98296 1.00376 +/- 0.00723\n", - " 15/1 0.99697 1.00240 +/- 0.00576\n", - " 16/1 0.98099 0.99883 +/- 0.00590\n", - " 17/1 0.99588 0.99841 +/- 0.00501\n", - " 18/1 1.07368 1.00782 +/- 0.01036\n", - " 19/1 0.95227 1.00165 +/- 0.01103\n", - " 20/1 1.05009 1.00649 +/- 0.01099\n", - " 21/1 0.97005 1.00318 +/- 0.01048\n", - " 22/1 0.99242 1.00228 +/- 0.00961\n", - " 23/1 1.05491 1.00633 +/- 0.00972\n", - " 24/1 1.00588 1.00630 +/- 0.00900\n", - " 25/1 1.00227 1.00603 +/- 0.00838\n", - " 26/1 0.96455 1.00344 +/- 0.00826\n", - " 27/1 1.00319 1.00342 +/- 0.00776\n", - " 28/1 0.98811 1.00257 +/- 0.00736\n", - " 29/1 1.00272 1.00258 +/- 0.00696\n", - " 30/1 0.94461 0.99968 +/- 0.00721\n", - " 31/1 1.01218 1.00028 +/- 0.00689\n", - " 32/1 0.96420 0.99864 +/- 0.00677\n", - " 33/1 0.95413 0.99670 +/- 0.00675\n", - " 34/1 0.97799 0.99592 +/- 0.00651\n", - " 35/1 0.93211 0.99337 +/- 0.00675\n", - " 36/1 0.97633 0.99271 +/- 0.00651\n", - " 37/1 1.01195 0.99343 +/- 0.00631\n", - " 38/1 0.99218 0.99338 +/- 0.00608\n", - " 39/1 0.98653 0.99315 +/- 0.00587\n", - " 40/1 1.01873 0.99400 +/- 0.00574\n", - " 41/1 0.97922 0.99352 +/- 0.00557\n", - " 42/1 1.03085 0.99469 +/- 0.00552\n", - " 43/1 0.99989 0.99485 +/- 0.00535\n", - " 44/1 1.02227 0.99565 +/- 0.00525\n", - " 45/1 1.01514 0.99621 +/- 0.00513\n", - " 46/1 1.02156 0.99691 +/- 0.00503\n", - " 47/1 0.98417 0.99657 +/- 0.00491\n", - " 48/1 1.01386 0.99702 +/- 0.00480\n", - " 49/1 0.98720 0.99677 +/- 0.00468\n", - " 50/1 1.01058 0.99712 +/- 0.00458\n", - " 51/1 1.03660 0.99808 +/- 0.00457\n", - " 52/1 1.03603 0.99898 +/- 0.00455\n", - " 53/1 0.97500 0.99843 +/- 0.00447\n", - " 54/1 0.96814 0.99774 +/- 0.00443\n", - " 55/1 1.03349 0.99853 +/- 0.00440\n", - " 56/1 1.02902 0.99920 +/- 0.00435\n", - " 57/1 1.00023 0.99922 +/- 0.00426\n", - " 58/1 1.04574 1.00019 +/- 0.00428\n", - " 59/1 1.00650 1.00031 +/- 0.00419\n", - " 60/1 0.95236 0.99936 +/- 0.00422\n", - " 61/1 1.00056 0.99938 +/- 0.00414\n", - " 62/1 1.02127 0.99980 +/- 0.00408\n", - " 63/1 1.02664 1.00031 +/- 0.00403\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - " 64/1 0.95264 0.99942 +/- 0.00405\n", - " 65/1 0.96039 0.99871 +/- 0.00404\n", - " 66/1 0.94234 0.99771 +/- 0.00409\n", - " 67/1 0.96698 0.99717 +/- 0.00406\n", - " 68/1 1.02077 0.99758 +/- 0.00401\n", - " 69/1 0.95538 0.99686 +/- 0.00400\n", - " 70/1 1.01303 0.99713 +/- 0.00395\n", - " 71/1 1.04854 0.99797 +/- 0.00397\n", - " 72/1 0.96799 0.99749 +/- 0.00394\n", - " 73/1 0.98670 0.99732 +/- 0.00388\n", - " 74/1 1.02970 0.99782 +/- 0.00385\n", - " 75/1 1.05611 0.99872 +/- 0.00389\n", - " 76/1 1.03884 0.99933 +/- 0.00388\n", - " 77/1 0.99652 0.99929 +/- 0.00382\n", - " 78/1 1.00845 0.99942 +/- 0.00377\n", - " 79/1 0.98702 0.99924 +/- 0.00372\n", - " 80/1 1.01777 0.99951 +/- 0.00368\n", - " 81/1 0.95214 0.99884 +/- 0.00368\n", - " 82/1 0.97901 0.99856 +/- 0.00364\n", - " 83/1 1.00053 0.99859 +/- 0.00359\n", - " 84/1 0.98432 0.99840 +/- 0.00355\n", - " 85/1 1.02532 0.99876 +/- 0.00352\n", - " 86/1 0.97881 0.99849 +/- 0.00348\n", - " 87/1 1.05626 0.99924 +/- 0.00352\n", - " 88/1 0.97416 0.99892 +/- 0.00349\n", - " 89/1 1.02970 0.99931 +/- 0.00347\n", - " 90/1 0.94940 0.99869 +/- 0.00348\n", - " 91/1 1.04226 0.99923 +/- 0.00348\n", - " 92/1 0.93224 0.99841 +/- 0.00353\n", - " 93/1 1.08434 0.99944 +/- 0.00364\n", - " 94/1 1.04199 0.99995 +/- 0.00363\n", - " 95/1 0.96237 0.99951 +/- 0.00361\n", - " 96/1 0.97087 0.99918 +/- 0.00359\n", - " 97/1 0.98467 0.99901 +/- 0.00355\n", - " 98/1 0.98140 0.99881 +/- 0.00352\n", - " 99/1 1.03750 0.99924 +/- 0.00350\n", - " 100/1 1.01771 0.99945 +/- 0.00347\n", - " 101/1 0.90719 0.99844 +/- 0.00358\n", - " 102/1 1.03714 0.99886 +/- 0.00356\n", - " 103/1 0.98711 0.99873 +/- 0.00353\n", - " 104/1 1.02851 0.99905 +/- 0.00350\n", - " 105/1 1.02107 0.99928 +/- 0.00347\n", - " 106/1 0.94918 0.99876 +/- 0.00348\n", - " 107/1 1.01392 0.99891 +/- 0.00345\n", - " 108/1 1.00541 0.99898 +/- 0.00341\n", - " 109/1 0.99394 0.99893 +/- 0.00338\n", - " 110/1 0.97911 0.99873 +/- 0.00335\n", - " 111/1 0.97604 0.99851 +/- 0.00332\n", - " 112/1 1.04675 0.99898 +/- 0.00332\n", - " 113/1 0.98951 0.99889 +/- 0.00329\n", - " 114/1 0.97912 0.99870 +/- 0.00327\n", - " 115/1 1.01832 0.99888 +/- 0.00324\n", - " 116/1 0.97432 0.99865 +/- 0.00322\n", - " 117/1 1.00101 0.99867 +/- 0.00319\n", - " 118/1 1.03282 0.99899 +/- 0.00317\n", - " 119/1 1.04951 0.99945 +/- 0.00318\n", - " 120/1 1.04820 0.99990 +/- 0.00318\n", - " 121/1 0.99406 0.99984 +/- 0.00315\n", - " 122/1 0.99501 0.99980 +/- 0.00312\n", - " 123/1 0.96586 0.99950 +/- 0.00311\n", - " 124/1 1.04492 0.99990 +/- 0.00311\n", - " 125/1 0.97320 0.99967 +/- 0.00309\n", - " 126/1 1.07213 1.00029 +/- 0.00313\n", - " 127/1 1.02139 1.00047 +/- 0.00311\n", - " 128/1 1.03427 1.00076 +/- 0.00309\n", - " 129/1 1.00046 1.00076 +/- 0.00307\n", - " 130/1 1.01619 1.00088 +/- 0.00304\n", - " 131/1 0.99970 1.00087 +/- 0.00302\n", - " 132/1 1.01940 1.00103 +/- 0.00300\n", - " 133/1 1.00804 1.00108 +/- 0.00297\n", - " 134/1 1.01311 1.00118 +/- 0.00295\n", - " 135/1 1.04265 1.00151 +/- 0.00295\n", - " 136/1 0.97476 1.00130 +/- 0.00293\n", - " 137/1 1.08206 1.00194 +/- 0.00298\n", - " 138/1 1.02868 1.00214 +/- 0.00296\n", - " 139/1 0.94944 1.00174 +/- 0.00296\n", - " 140/1 1.00981 1.00180 +/- 0.00294\n", - " 141/1 1.05583 1.00221 +/- 0.00295\n", - " 142/1 1.05680 1.00262 +/- 0.00296\n", - " 143/1 1.03337 1.00286 +/- 0.00294\n", - " 144/1 1.05786 1.00327 +/- 0.00295\n", - " 145/1 1.00445 1.00327 +/- 0.00293\n", - " 146/1 0.98187 1.00312 +/- 0.00291\n", - " 147/1 1.03813 1.00337 +/- 0.00290\n", - " 148/1 1.00659 1.00340 +/- 0.00288\n", - " 149/1 0.88902 1.00257 +/- 0.00297\n", - " 150/1 1.07968 1.00312 +/- 0.00300\n", + " Bat./Gen. k Average k\n", + " ========= ======== ====================\n", + " 1/1 0.96733\n", + " 2/1 1.01426\n", + " 3/1 1.00891\n", + " 4/1 0.98251\n", + " 5/1 0.97608\n", + " 6/1 0.98854\n", + " 7/1 0.98650\n", + " 8/1 0.89145\n", + " 9/1 0.99093\n", + " 10/1 1.01713\n", + " 11/1 0.97521\n", + " 12/1 1.00458 0.98990 +/- 0.01468\n", + " 13/1 1.05596 1.01192 +/- 0.02360\n", + " 14/1 1.03992 1.01892 +/- 0.01810\n", + " 15/1 0.99228 1.01359 +/- 0.01500\n", + " 16/1 1.04166 1.01827 +/- 0.01311\n", + " 17/1 1.02397 1.01908 +/- 0.01111\n", + " 18/1 0.93476 1.00854 +/- 0.01427\n", + " 19/1 0.96790 1.00403 +/- 0.01337\n", + " 20/1 1.01333 1.00496 +/- 0.01199\n", + " 21/1 0.99930 1.00444 +/- 0.01086\n", + " 22/1 0.96360 1.00104 +/- 0.01048\n", + " 23/1 1.04452 1.00438 +/- 0.01021\n", + " 24/1 1.00540 1.00446 +/- 0.00945\n", + " 25/1 1.03337 1.00638 +/- 0.00901\n", + " 26/1 0.98441 1.00501 +/- 0.00854\n", + " 27/1 0.97719 1.00337 +/- 0.00818\n", + " 28/1 0.99739 1.00304 +/- 0.00772\n", + " 29/1 0.97195 1.00141 +/- 0.00749\n", + " 30/1 0.97567 1.00012 +/- 0.00722\n", + " 31/1 0.98488 0.99939 +/- 0.00690\n", + " 32/1 0.99132 0.99903 +/- 0.00659\n", + " 33/1 0.97166 0.99784 +/- 0.00641\n", + " 34/1 1.02146 0.99882 +/- 0.00622\n", + " 35/1 1.00964 0.99925 +/- 0.00598\n", + " 36/1 1.00894 0.99963 +/- 0.00576\n", + " 37/1 1.04730 1.00139 +/- 0.00581\n", + " 38/1 1.00749 1.00161 +/- 0.00561\n", + " 39/1 0.97450 1.00067 +/- 0.00549\n", + " 40/1 0.99078 1.00034 +/- 0.00531\n", + " 41/1 0.98638 0.99989 +/- 0.00516\n", + " 42/1 1.05222 1.00153 +/- 0.00526\n", + " 43/1 1.00114 1.00152 +/- 0.00509\n", + " 44/1 1.00369 1.00158 +/- 0.00494\n", + " 45/1 0.98097 1.00099 +/- 0.00483\n", + " 46/1 1.01918 1.00150 +/- 0.00473\n", + " 47/1 1.02984 1.00226 +/- 0.00466\n", + " 48/1 1.00466 1.00233 +/- 0.00454\n", + " 49/1 0.97042 1.00151 +/- 0.00449\n", + " 50/1 0.98406 1.00107 +/- 0.00440\n", + " 51/1 1.02719 1.00171 +/- 0.00434\n", + " 52/1 0.96843 1.00092 +/- 0.00431\n", + " 53/1 0.96103 0.99999 +/- 0.00431\n", + " 54/1 1.08631 1.00195 +/- 0.00464\n", + " 55/1 1.04892 1.00300 +/- 0.00466\n", + " 56/1 1.04540 1.00392 +/- 0.00465\n", + " 57/1 1.02331 1.00433 +/- 0.00457\n", + " 58/1 0.98167 1.00386 +/- 0.00450\n", + " 59/1 0.95736 1.00291 +/- 0.00450\n", + " 60/1 1.08186 1.00449 +/- 0.00469\n", + " 61/1 0.99151 1.00423 +/- 0.00460\n", + " 62/1 1.09483 1.00598 +/- 0.00484\n", + " 63/1 0.96655 1.00523 +/- 0.00480\n", + " 64/1 1.02323 1.00556 +/- 0.00472\n", + " 65/1 0.99552 1.00538 +/- 0.00464\n", + " 66/1 1.03743 1.00595 +/- 0.00459\n", + " 67/1 1.01470 1.00611 +/- 0.00451\n", + " 68/1 1.00330 1.00606 +/- 0.00444\n", + " 69/1 0.99583 1.00589 +/- 0.00436\n", + " 70/1 0.97011 1.00529 +/- 0.00433\n", + " 71/1 1.05257 1.00606 +/- 0.00433\n", + " 72/1 0.95486 1.00524 +/- 0.00434\n", + " 73/1 0.95579 1.00445 +/- 0.00434\n", + " 74/1 1.06181 1.00535 +/- 0.00437\n", + " 75/1 1.01547 1.00551 +/- 0.00430\n", + " 76/1 0.95828 1.00479 +/- 0.00430\n", + " 77/1 1.06930 1.00575 +/- 0.00434\n", + " 78/1 0.98848 1.00550 +/- 0.00428\n", + " 79/1 0.98801 1.00525 +/- 0.00423\n", + " 80/1 1.01087 1.00533 +/- 0.00417\n", + " 81/1 0.94958 1.00454 +/- 0.00418\n", + " 82/1 1.04203 1.00506 +/- 0.00416\n", + " 83/1 0.98562 1.00480 +/- 0.00411\n", + " 84/1 1.01031 1.00487 +/- 0.00405\n", + " 85/1 0.94282 1.00404 +/- 0.00408\n", + " 86/1 1.01565 1.00419 +/- 0.00403\n", + " 87/1 1.06248 1.00495 +/- 0.00405\n", + " 88/1 0.96519 1.00444 +/- 0.00403\n", + " 89/1 0.94915 1.00374 +/- 0.00404\n", + " 90/1 1.00009 1.00370 +/- 0.00399\n", + " 91/1 0.98034 1.00341 +/- 0.00395\n", + " 92/1 1.02393 1.00366 +/- 0.00391\n", + " 93/1 1.01846 1.00384 +/- 0.00387\n", + " 94/1 1.04298 1.00430 +/- 0.00385\n", + " 95/1 0.96884 1.00389 +/- 0.00383\n", + " 96/1 0.98588 1.00368 +/- 0.00379\n", + " 97/1 1.01417 1.00380 +/- 0.00375\n", + " 98/1 1.03141 1.00411 +/- 0.00372\n", + " 99/1 0.99799 1.00404 +/- 0.00367\n", + " 100/1 0.97342 1.00370 +/- 0.00365\n", + " 101/1 1.03521 1.00405 +/- 0.00363\n", + " 102/1 0.99810 1.00398 +/- 0.00359\n", + " 103/1 1.07640 1.00476 +/- 0.00363\n", + " 104/1 0.92379 1.00390 +/- 0.00370\n", + " 105/1 0.98163 1.00367 +/- 0.00366\n", + " 106/1 1.05657 1.00422 +/- 0.00367\n", + " 107/1 1.01114 1.00429 +/- 0.00363\n", + " 108/1 0.98687 1.00411 +/- 0.00360\n", + " 109/1 1.00438 1.00411 +/- 0.00356\n", + " 110/1 1.04605 1.00453 +/- 0.00355\n", + " 111/1 0.95116 1.00400 +/- 0.00355\n", + " 112/1 1.04926 1.00445 +/- 0.00355\n", + " 113/1 1.05672 1.00496 +/- 0.00355\n", + " 114/1 0.98303 1.00474 +/- 0.00352\n", + " 115/1 1.00398 1.00474 +/- 0.00349\n", + " 116/1 1.00943 1.00478 +/- 0.00345\n", + " 117/1 1.01657 1.00489 +/- 0.00342\n", + " 118/1 0.95180 1.00440 +/- 0.00343\n", + " 119/1 0.99597 1.00432 +/- 0.00340\n", + " 120/1 0.95905 1.00391 +/- 0.00339\n", + " 121/1 1.03602 1.00420 +/- 0.00337\n", + " 122/1 0.91355 1.00339 +/- 0.00344\n", + " 123/1 0.98042 1.00319 +/- 0.00341\n", + " 124/1 0.99438 1.00311 +/- 0.00338\n", + " 125/1 1.01523 1.00322 +/- 0.00336\n", + " 126/1 1.02405 1.00340 +/- 0.00333\n", + " 127/1 0.97345 1.00314 +/- 0.00331\n", + " 128/1 0.99830 1.00310 +/- 0.00329\n", + " 129/1 0.98598 1.00296 +/- 0.00326\n", + " 130/1 0.97527 1.00272 +/- 0.00324\n", + " 131/1 0.99513 1.00266 +/- 0.00322\n", + " 132/1 0.95591 1.00228 +/- 0.00321\n", + " 133/1 1.03151 1.00252 +/- 0.00319\n", + " 134/1 1.01308 1.00260 +/- 0.00317\n", + " 135/1 0.99918 1.00257 +/- 0.00314\n", + " 136/1 1.01363 1.00266 +/- 0.00312\n", + " 137/1 0.95709 1.00230 +/- 0.00312\n", + " 138/1 1.01557 1.00241 +/- 0.00309\n", + " 139/1 1.02028 1.00255 +/- 0.00307\n", + " 140/1 1.03371 1.00278 +/- 0.00306\n", + " 141/1 1.00297 1.00279 +/- 0.00304\n", + " 142/1 0.97399 1.00257 +/- 0.00302\n", + " 143/1 0.99265 1.00249 +/- 0.00300\n", + " 144/1 0.96677 1.00223 +/- 0.00299\n", + " 145/1 1.00505 1.00225 +/- 0.00297\n", + " 146/1 1.02356 1.00240 +/- 0.00295\n", + " 147/1 0.96630 1.00214 +/- 0.00294\n", + " 148/1 1.01760 1.00225 +/- 0.00292\n", + " 149/1 0.95798 1.00193 +/- 0.00292\n", + " 150/1 1.06026 1.00235 +/- 0.00292\n", " Creating state point statepoint.150.h5...\n", "\n", " =======================> TIMING STATISTICS <=======================\n", "\n", - " Total time for initialization = 5.9225E+00 seconds\n", - " Reading cross sections = 5.8449E+00 seconds\n", - " Total time in simulation = 9.1378E+00 seconds\n", - " Time in transport only = 5.1191E+00 seconds\n", - " Time in inactive batches = 5.8010E-01 seconds\n", - " Time in active batches = 8.5577E+00 seconds\n", - " Time synchronizing fission bank = 7.0913E-01 seconds\n", - " Sampling source sites = 4.4842E-03 seconds\n", - " SEND/RECV source sites = 2.1190E-03 seconds\n", - " Time accumulating tallies = 3.5552E-03 seconds\n", - " Total time for finalization = 8.4108E-03 seconds\n", - " Total time elapsed = 1.5079E+01 seconds\n", - " Calculation Rate (inactive) = 17238.5 particles/second\n", - " Calculation Rate (active) = 16359.6 particles/second\n", + " Total time for initialization = 3.5188e+00 seconds\n", + " Reading cross sections = 3.4434e+00 seconds\n", + " Total time in simulation = 1.2344e+01 seconds\n", + " Time in transport only = 1.2295e+01 seconds\n", + " Time in inactive batches = 7.6670e-01 seconds\n", + " Time in active batches = 1.1577e+01 seconds\n", + " Time synchronizing fission bank = 1.1731e-02 seconds\n", + " Sampling source sites = 1.0349e-02 seconds\n", + " SEND/RECV source sites = 1.3174e-03 seconds\n", + " Time accumulating tallies = 1.1413e-02 seconds\n", + " Time writing statepoints = 6.7964e-03 seconds\n", + " Total time for finalization = 2.9545e-04 seconds\n", + " Total time elapsed = 1.5878e+01 seconds\n", + " Calculation Rate (inactive) = 13043 particles/second\n", + " Calculation Rate (active) = 12092.8 particles/second\n", "\n", " ============================> RESULTS <============================\n", "\n", - " k-effective (Collision) = 1.00226 +/- 0.00259\n", - " k-effective (Track-length) = 1.00312 +/- 0.00300\n", - " k-effective (Absorption) = 1.00053 +/- 0.00263\n", - " Combined k-effective = 1.00159 +/- 0.00207\n", - " Leakage Fraction = 0.00004 +/- 0.00002\n", + " k-effective (Collision) = 1.00135 +/- 0.00266\n", + " k-effective (Track-length) = 1.00235 +/- 0.00292\n", + " k-effective (Absorption) = 1.00742 +/- 0.00269\n", + " Combined k-effective = 1.00441 +/- 0.00218\n", + " Leakage Fraction = 0.00004 +/- 0.00002\n", "\n" ] } ], "source": [ "# Run OpenMC with 2 MPI processes\n", - "openmc.run(mpi_args=['mpiexec', '-n', '2'])" + "openmc.run()" ] }, { @@ -971,7 +972,7 @@ " \tID =\t1\n", " \tName =\ta really cool tally\n", " \tFilters =\tCellFilter, EnergyFilter\n", - " \tNuclides =\tO16 O17 N14 N15 Ar36 Ar38 Ar40 C0 \n", + " \tNuclides =\tO16 O17 N14 N15 Ar36 Ar38 Ar40 C0\n", " \tScores =\t['scatter', 'absorption']\n", " \tEstimator =\ttracklength}" ] @@ -1189,8 +1190,8 @@ " 2.000000e+01\n", " O16\n", " scatter\n", - " 3.948362e-07\n", - " 1.191775e-08\n", + " 3.883551e-07\n", + " 9.504800e-09\n", " \n", " \n", " 17\n", @@ -1199,8 +1200,8 @@ " 2.000000e+01\n", " O16\n", " absorption\n", - " 9.736374e-12\n", - " 3.962331e-13\n", + " 1.036318e-11\n", + " 3.458754e-13\n", " \n", " \n", " 18\n", @@ -1209,8 +1210,8 @@ " 2.000000e+01\n", " O17\n", " scatter\n", - " 1.452292e-10\n", - " 4.382518e-12\n", + " 1.428327e-10\n", + " 3.495404e-12\n", " \n", " \n", " 19\n", @@ -1219,8 +1220,8 @@ " 2.000000e+01\n", " O17\n", " absorption\n", - " 4.633191e-12\n", - " 1.887265e-13\n", + " 4.932669e-12\n", + " 1.647897e-13\n", " \n", " \n", " 20\n", @@ -1229,8 +1230,8 @@ " 2.000000e+01\n", " N14\n", " scatter\n", - " 3.781661e-06\n", - " 1.142150e-07\n", + " 3.720407e-06\n", + " 9.108040e-08\n", " \n", " \n", " 21\n", @@ -1239,8 +1240,8 @@ " 2.000000e+01\n", " N14\n", " absorption\n", - " 3.615722e-07\n", - " 1.472842e-08\n", + " 3.849441e-07\n", + " 1.286033e-08\n", " \n", " \n", " 22\n", @@ -1249,8 +1250,8 @@ " 2.000000e+01\n", " N15\n", " scatter\n", - " 6.134877e-09\n", - " 1.853786e-10\n", + " 6.040028e-09\n", + " 1.481040e-10\n", " \n", " \n", " 23\n", @@ -1259,8 +1260,8 @@ " 2.000000e+01\n", " N15\n", " absorption\n", - " 1.682306e-14\n", - " 6.843975e-16\n", + " 1.790637e-14\n", + " 5.975234e-16\n", " \n", " \n", " 24\n", @@ -1269,8 +1270,8 @@ " 2.000000e+01\n", " Ar36\n", " scatter\n", - " 1.111606e-09\n", - " 3.347659e-11\n", + " 1.092466e-09\n", + " 2.672008e-11\n", " \n", " \n", " 25\n", @@ -1279,8 +1280,8 @@ " 2.000000e+01\n", " Ar36\n", " absorption\n", - " 3.880679e-11\n", - " 1.613462e-12\n", + " 4.127303e-11\n", + " 1.385564e-12\n", " \n", " \n", " 26\n", @@ -1289,8 +1290,8 @@ " 2.000000e+01\n", " Ar38\n", " scatter\n", - " 2.512751e-11\n", - " 7.566663e-13\n", + " 2.469434e-11\n", + " 6.040052e-13\n", " \n", " \n", " 27\n", @@ -1299,8 +1300,8 @@ " 2.000000e+01\n", " Ar38\n", " absorption\n", - " 1.181439e-12\n", - " 5.081241e-14\n", + " 1.254291e-12\n", + " 4.262034e-14\n", " \n", " \n", " 28\n", @@ -1309,8 +1310,8 @@ " 2.000000e+01\n", " Ar40\n", " scatter\n", - " 2.916933e-09\n", - " 8.783025e-11\n", + " 2.866552e-09\n", + " 7.011203e-11\n", " \n", " \n", " 29\n", @@ -1319,8 +1320,8 @@ " 2.000000e+01\n", " Ar40\n", " absorption\n", - " 1.497806e-09\n", - " 6.103266e-11\n", + " 1.594757e-09\n", + " 5.329713e-11\n", " \n", " \n", " 30\n", @@ -1329,8 +1330,8 @@ " 2.000000e+01\n", " C0\n", " scatter\n", - " 6.291785e-10\n", - " 1.901792e-11\n", + " 6.191605e-10\n", + " 1.516336e-11\n", " \n", " \n", " 31\n", @@ -1339,8 +1340,8 @@ " 2.000000e+01\n", " C0\n", " absorption\n", - " 2.546686e-13\n", - " 1.037323e-14\n", + " 2.711282e-13\n", + " 9.057393e-15\n", " \n", " \n", "\n", @@ -1364,22 +1365,22 @@ "13 145 0.00e+00 6.25e-07 Ar40 absorption 0.00e+00 \n", "14 145 0.00e+00 6.25e-07 C0 scatter 0.00e+00 \n", "15 145 0.00e+00 6.25e-07 C0 absorption 0.00e+00 \n", - "16 145 6.25e-07 2.00e+01 O16 scatter 3.95e-07 \n", - "17 145 6.25e-07 2.00e+01 O16 absorption 9.74e-12 \n", - "18 145 6.25e-07 2.00e+01 O17 scatter 1.45e-10 \n", - "19 145 6.25e-07 2.00e+01 O17 absorption 4.63e-12 \n", - "20 145 6.25e-07 2.00e+01 N14 scatter 3.78e-06 \n", - "21 145 6.25e-07 2.00e+01 N14 absorption 3.62e-07 \n", - "22 145 6.25e-07 2.00e+01 N15 scatter 6.13e-09 \n", - "23 145 6.25e-07 2.00e+01 N15 absorption 1.68e-14 \n", - "24 145 6.25e-07 2.00e+01 Ar36 scatter 1.11e-09 \n", - "25 145 6.25e-07 2.00e+01 Ar36 absorption 3.88e-11 \n", - "26 145 6.25e-07 2.00e+01 Ar38 scatter 2.51e-11 \n", - "27 145 6.25e-07 2.00e+01 Ar38 absorption 1.18e-12 \n", - "28 145 6.25e-07 2.00e+01 Ar40 scatter 2.92e-09 \n", - "29 145 6.25e-07 2.00e+01 Ar40 absorption 1.50e-09 \n", - "30 145 6.25e-07 2.00e+01 C0 scatter 6.29e-10 \n", - "31 145 6.25e-07 2.00e+01 C0 absorption 2.55e-13 \n", + "16 145 6.25e-07 2.00e+01 O16 scatter 3.88e-07 \n", + "17 145 6.25e-07 2.00e+01 O16 absorption 1.04e-11 \n", + "18 145 6.25e-07 2.00e+01 O17 scatter 1.43e-10 \n", + "19 145 6.25e-07 2.00e+01 O17 absorption 4.93e-12 \n", + "20 145 6.25e-07 2.00e+01 N14 scatter 3.72e-06 \n", + "21 145 6.25e-07 2.00e+01 N14 absorption 3.85e-07 \n", + "22 145 6.25e-07 2.00e+01 N15 scatter 6.04e-09 \n", + "23 145 6.25e-07 2.00e+01 N15 absorption 1.79e-14 \n", + "24 145 6.25e-07 2.00e+01 Ar36 scatter 1.09e-09 \n", + "25 145 6.25e-07 2.00e+01 Ar36 absorption 4.13e-11 \n", + "26 145 6.25e-07 2.00e+01 Ar38 scatter 2.47e-11 \n", + "27 145 6.25e-07 2.00e+01 Ar38 absorption 1.25e-12 \n", + "28 145 6.25e-07 2.00e+01 Ar40 scatter 2.87e-09 \n", + "29 145 6.25e-07 2.00e+01 Ar40 absorption 1.59e-09 \n", + "30 145 6.25e-07 2.00e+01 C0 scatter 6.19e-10 \n", + "31 145 6.25e-07 2.00e+01 C0 absorption 2.71e-13 \n", "\n", " std. dev. \n", "0 0.00e+00 \n", @@ -1398,22 +1399,22 @@ "13 0.00e+00 \n", "14 0.00e+00 \n", "15 0.00e+00 \n", - "16 1.19e-08 \n", - "17 3.96e-13 \n", - "18 4.38e-12 \n", - "19 1.89e-13 \n", - "20 1.14e-07 \n", - "21 1.47e-08 \n", - "22 1.85e-10 \n", - "23 6.84e-16 \n", - "24 3.35e-11 \n", - "25 1.61e-12 \n", - "26 7.57e-13 \n", - "27 5.08e-14 \n", - "28 8.78e-11 \n", - "29 6.10e-11 \n", - "30 1.90e-11 \n", - "31 1.04e-14 " + "16 9.50e-09 \n", + "17 3.46e-13 \n", + "18 3.50e-12 \n", + "19 1.65e-13 \n", + "20 9.11e-08 \n", + "21 1.29e-08 \n", + "22 1.48e-10 \n", + "23 5.98e-16 \n", + "24 2.67e-11 \n", + "25 1.39e-12 \n", + "26 6.04e-13 \n", + "27 4.26e-14 \n", + "28 7.01e-11 \n", + "29 5.33e-11 \n", + "30 1.52e-11 \n", + "31 9.06e-15 " ] }, "execution_count": 23, @@ -1451,7 +1452,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.5.5" + "version": "3.11.6" } }, "nbformat": 4, diff --git a/BEAVRS/extract-pin.ipynb b/BEAVRS/extract-pin.ipynb index 369c77d..ced0ac1 100644 --- a/BEAVRS/extract-pin.ipynb +++ b/BEAVRS/extract-pin.ipynb @@ -43,7 +43,16 @@ "cell_type": "code", "execution_count": 2, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Value supplied was 'None'. S Value set to default value of 15\n", + "Value supplied was 'None'. SS Value set to default value of 0\n" + ] + } + ], "source": [ "# Instantiate a BEAVRS object from the mit-crpg/PWR_benchmarks repository\n", "b = beavrs.builder.BEAVRS()" @@ -113,6 +122,7 @@ "Universe\n", "\tID =\t8\n", "\tName =\tFuel rod active region - 1.6% enr\n", + "\tGeom =\tCSG\n", "\tCells =\t[52, 53, 54]" ] }, @@ -142,6 +152,7 @@ "\tRotation =\tNone\n", "\tTemperature =\tNone\n", "\tTranslation =\tNone\n", + "\tVolume =\tNone\n", "), (53, Cell\n", "\tID =\t53\n", "\tName =\tFuel rod active region - 1.6% enr radial 1: Helium\n", @@ -150,6 +161,7 @@ "\tRotation =\tNone\n", "\tTemperature =\tNone\n", "\tTranslation =\tNone\n", + "\tVolume =\tNone\n", "), (54, Cell\n", "\tID =\t54\n", "\tName =\tFuel rod active region - 1.6% enr radial outer: Zircaloy 4\n", @@ -158,6 +170,7 @@ "\tRotation =\tNone\n", "\tTemperature =\tNone\n", "\tTranslation =\tNone\n", + "\tVolume =\tNone\n", ")])\n" ] } @@ -397,11 +410,8 @@ } ], "source": [ - "# Convert OpenMC's funky ppm to png\n", - "!convert plot_1.ppm plot.png\n", - "\n", "# Display the plot inline\n", - "Image(filename='plot.png', width=250, height=250)" + "Image(filename='plot_1.png', width=250, height=250)" ] }, { @@ -511,279 +521,275 @@ "name": "stdout", "output_type": "stream", "text": [ - "\n", - " %%%%%%%%%%%%%%%\n", - " %%%%%%%%%%%%%%%%%%%%%%%%\n", - " %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n", - " %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n", - " %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n", - " %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n", - " %%%%%%%%%%%%%%%%%%%%%%%%\n", + " %%%%%%%%%%%%%%%\n", + " %%%%%%%%%%%%%%%%%%%%%%%%\n", + " %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n", + " %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n", + " %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n", + " %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n", " %%%%%%%%%%%%%%%%%%%%%%%%\n", - " ############### %%%%%%%%%%%%%%%%%%%%%%%%\n", - " ################## %%%%%%%%%%%%%%%%%%%%%%%\n", - " ################### %%%%%%%%%%%%%%%%%%%%%%%\n", - " #################### %%%%%%%%%%%%%%%%%%%%%%\n", - " ##################### %%%%%%%%%%%%%%%%%%%%%\n", - " ###################### %%%%%%%%%%%%%%%%%%%%\n", - " ####################### %%%%%%%%%%%%%%%%%%\n", - " ####################### %%%%%%%%%%%%%%%%%\n", - " ###################### %%%%%%%%%%%%%%%%%\n", - " #################### %%%%%%%%%%%%%%%%%\n", - " ################# %%%%%%%%%%%%%%%%%\n", - " ############### %%%%%%%%%%%%%%%%\n", - " ############ %%%%%%%%%%%%%%%\n", - " ######## %%%%%%%%%%%%%%\n", - " %%%%%%%%%%%\n", + " %%%%%%%%%%%%%%%%%%%%%%%%\n", + " ############### %%%%%%%%%%%%%%%%%%%%%%%%\n", + " ################## %%%%%%%%%%%%%%%%%%%%%%%\n", + " ################### %%%%%%%%%%%%%%%%%%%%%%%\n", + " #################### %%%%%%%%%%%%%%%%%%%%%%\n", + " ##################### %%%%%%%%%%%%%%%%%%%%%\n", + " ###################### %%%%%%%%%%%%%%%%%%%%\n", + " ####################### %%%%%%%%%%%%%%%%%%\n", + " ####################### %%%%%%%%%%%%%%%%%\n", + " ###################### %%%%%%%%%%%%%%%%%\n", + " #################### %%%%%%%%%%%%%%%%%\n", + " ################# %%%%%%%%%%%%%%%%%\n", + " ############### %%%%%%%%%%%%%%%%\n", + " ############ %%%%%%%%%%%%%%%\n", + " ######## %%%%%%%%%%%%%%\n", + " %%%%%%%%%%%\n", "\n", - " | The OpenMC Monte Carlo Code\n", - " Copyright | 2011-2018 MIT and OpenMC contributors\n", - " License | http://openmc.readthedocs.io/en/latest/license.html\n", - " Version | 0.10.0\n", - " Git SHA1 | 0cf903cc67af4267a8216535fc2fa6a61f4341a1\n", - " Date/Time | 2018-08-28 17:13:11\n", - " MPI Processes | 2\n", - " OpenMP Threads | 2\n", + " | The OpenMC Monte Carlo Code\n", + " Copyright | 2011-2023 MIT, UChicago Argonne LLC, and contributors\n", + " License | https://docs.openmc.org/en/latest/license.html\n", + " Version | 0.13.3\n", + " Git SHA1 | 50e39a4e20dc9e0f3d7ccf07333f6a5e6c797c8c\n", + " Date/Time | 2023-11-16 00:00:00\n", + " OpenMP Threads | 4\n", "\n", " Reading settings XML file...\n", " Reading cross sections XML file...\n", " Reading materials XML file...\n", " Reading geometry XML file...\n", - " Building neighboring cells lists for each surface...\n", - " Reading He3 from /home/liangjg/nucdata/nndc_hdf5/He3.h5\n", - " Reading He4 from /home/liangjg/nucdata/nndc_hdf5/He4.h5\n", - " Reading O16 from /home/liangjg/nucdata/nndc_hdf5/O16.h5\n", - " Reading O17 from /home/liangjg/nucdata/nndc_hdf5/O17.h5\n", - " Reading Cr50 from /home/liangjg/nucdata/nndc_hdf5/Cr50.h5\n", - " Reading Cr52 from /home/liangjg/nucdata/nndc_hdf5/Cr52.h5\n", - " Reading Cr53 from /home/liangjg/nucdata/nndc_hdf5/Cr53.h5\n", - " Reading Cr54 from /home/liangjg/nucdata/nndc_hdf5/Cr54.h5\n", - " Reading Fe54 from /home/liangjg/nucdata/nndc_hdf5/Fe54.h5\n", - " Reading Fe56 from /home/liangjg/nucdata/nndc_hdf5/Fe56.h5\n", - " Reading Fe57 from /home/liangjg/nucdata/nndc_hdf5/Fe57.h5\n", - " Reading Fe58 from /home/liangjg/nucdata/nndc_hdf5/Fe58.h5\n", - " Reading Zr90 from /home/liangjg/nucdata/nndc_hdf5/Zr90.h5\n", - " Reading Zr91 from /home/liangjg/nucdata/nndc_hdf5/Zr91.h5\n", - " Reading Zr92 from /home/liangjg/nucdata/nndc_hdf5/Zr92.h5\n", - " Reading Zr94 from /home/liangjg/nucdata/nndc_hdf5/Zr94.h5\n", - " Reading Zr96 from /home/liangjg/nucdata/nndc_hdf5/Zr96.h5\n", - " Reading Sn112 from /home/liangjg/nucdata/nndc_hdf5/Sn112.h5\n", - " Reading Sn114 from /home/liangjg/nucdata/nndc_hdf5/Sn114.h5\n", - " Reading Sn115 from /home/liangjg/nucdata/nndc_hdf5/Sn115.h5\n", - " Reading Sn116 from /home/liangjg/nucdata/nndc_hdf5/Sn116.h5\n", - " Reading Sn117 from /home/liangjg/nucdata/nndc_hdf5/Sn117.h5\n", - " Reading Sn118 from /home/liangjg/nucdata/nndc_hdf5/Sn118.h5\n", - " Reading Sn119 from /home/liangjg/nucdata/nndc_hdf5/Sn119.h5\n", - " Reading Sn120 from /home/liangjg/nucdata/nndc_hdf5/Sn120.h5\n", - " Reading Sn122 from /home/liangjg/nucdata/nndc_hdf5/Sn122.h5\n", - " Reading Sn124 from /home/liangjg/nucdata/nndc_hdf5/Sn124.h5\n", - " Reading U234 from /home/liangjg/nucdata/nndc_hdf5/U234.h5\n", - " Reading U235 from /home/liangjg/nucdata/nndc_hdf5/U235.h5\n", - " Reading U238 from /home/liangjg/nucdata/nndc_hdf5/U238.h5\n", - " Reading U236 from /home/liangjg/nucdata/nndc_hdf5/U236.h5\n", - " Reading B10 from /home/liangjg/nucdata/nndc_hdf5/B10.h5\n", - " Reading B11 from /home/liangjg/nucdata/nndc_hdf5/B11.h5\n", - " Reading H1 from /home/liangjg/nucdata/nndc_hdf5/H1.h5\n", - " Reading H2 from /home/liangjg/nucdata/nndc_hdf5/H2.h5\n", - " Reading c_H_in_H2O from /home/liangjg/nucdata/nndc_hdf5/c_H_in_H2O.h5\n", - " Maximum neutron transport energy: 2.00000E+07 eV for He3\n", + " Reading He3 from /opt/xdata/endfb-vii.1-hdf5/neutron/He3.h5\n", + " Reading He4 from /opt/xdata/endfb-vii.1-hdf5/neutron/He4.h5\n", + " Reading O16 from /opt/xdata/endfb-vii.1-hdf5/neutron/O16.h5\n", + " Reading O17 from /opt/xdata/endfb-vii.1-hdf5/neutron/O17.h5\n", + " Reading Cr50 from /opt/xdata/endfb-vii.1-hdf5/neutron/Cr50.h5\n", + " Reading Cr52 from /opt/xdata/endfb-vii.1-hdf5/neutron/Cr52.h5\n", + " Reading Cr53 from /opt/xdata/endfb-vii.1-hdf5/neutron/Cr53.h5\n", + " Reading Cr54 from /opt/xdata/endfb-vii.1-hdf5/neutron/Cr54.h5\n", + " Reading Fe54 from /opt/xdata/endfb-vii.1-hdf5/neutron/Fe54.h5\n", + " Reading Fe56 from /opt/xdata/endfb-vii.1-hdf5/neutron/Fe56.h5\n", + " Reading Fe57 from /opt/xdata/endfb-vii.1-hdf5/neutron/Fe57.h5\n", + " Reading Fe58 from /opt/xdata/endfb-vii.1-hdf5/neutron/Fe58.h5\n", + " Reading Zr90 from /opt/xdata/endfb-vii.1-hdf5/neutron/Zr90.h5\n", + " Reading Zr91 from /opt/xdata/endfb-vii.1-hdf5/neutron/Zr91.h5\n", + " Reading Zr92 from /opt/xdata/endfb-vii.1-hdf5/neutron/Zr92.h5\n", + " Reading Zr94 from /opt/xdata/endfb-vii.1-hdf5/neutron/Zr94.h5\n", + " Reading Zr96 from /opt/xdata/endfb-vii.1-hdf5/neutron/Zr96.h5\n", + " Reading Sn112 from /opt/xdata/endfb-vii.1-hdf5/neutron/Sn112.h5\n", + " Reading Sn114 from /opt/xdata/endfb-vii.1-hdf5/neutron/Sn114.h5\n", + " Reading Sn115 from /opt/xdata/endfb-vii.1-hdf5/neutron/Sn115.h5\n", + " Reading Sn116 from /opt/xdata/endfb-vii.1-hdf5/neutron/Sn116.h5\n", + " Reading Sn117 from /opt/xdata/endfb-vii.1-hdf5/neutron/Sn117.h5\n", + " Reading Sn118 from /opt/xdata/endfb-vii.1-hdf5/neutron/Sn118.h5\n", + " Reading Sn119 from /opt/xdata/endfb-vii.1-hdf5/neutron/Sn119.h5\n", + " Reading Sn120 from /opt/xdata/endfb-vii.1-hdf5/neutron/Sn120.h5\n", + " Reading Sn122 from /opt/xdata/endfb-vii.1-hdf5/neutron/Sn122.h5\n", + " Reading Sn124 from /opt/xdata/endfb-vii.1-hdf5/neutron/Sn124.h5\n", + " Reading U234 from /opt/xdata/endfb-vii.1-hdf5/neutron/U234.h5\n", + " Reading U235 from /opt/xdata/endfb-vii.1-hdf5/neutron/U235.h5\n", + " Reading U238 from /opt/xdata/endfb-vii.1-hdf5/neutron/U238.h5\n", + " Reading U236 from /opt/xdata/endfb-vii.1-hdf5/neutron/U236.h5\n", + " Reading B10 from /opt/xdata/endfb-vii.1-hdf5/neutron/B10.h5\n", + " Reading B11 from /opt/xdata/endfb-vii.1-hdf5/neutron/B11.h5\n", + " Reading H1 from /opt/xdata/endfb-vii.1-hdf5/neutron/H1.h5\n", + " Reading H2 from /opt/xdata/endfb-vii.1-hdf5/neutron/H2.h5\n", + " Reading c_H_in_H2O from /opt/xdata/endfb-vii.1-hdf5/neutron/c_H_in_H2O.h5\n", + " Minimum neutron data temperature: 294 K\n", + " Maximum neutron data temperature: 294 K\n", " Reading tallies XML file...\n", + " Preparing distributed cell instances...\n", + " Reading plot XML file...\n", " Writing summary.h5 file...\n", + " Maximum neutron transport energy: 20000000 eV for He3\n", " Initializing source particles...\n", "\n", " ====================> K EIGENVALUE SIMULATION <====================\n", "\n", - " Bat./Gen. k Average k \n", - " ========= ======== ==================== \n", - " 1/1 0.97511 \n", - " 2/1 1.04000 \n", - " 3/1 0.94442 \n", - " 4/1 1.02773 \n", - " 5/1 1.04344 \n", - " 6/1 1.01869 \n", - " 7/1 1.00825 \n", - " 8/1 1.03051 \n", - " 9/1 1.00392 \n", - " 10/1 1.02401 \n", - " 11/1 0.98418 \n", - " 12/1 1.04523 1.01470 +/- 0.03053\n", - " 13/1 1.05826 1.02922 +/- 0.02283\n", - " 14/1 1.07555 1.04080 +/- 0.01987\n", - " 15/1 1.11134 1.05491 +/- 0.02088\n", - " 16/1 1.01344 1.04800 +/- 0.01840\n", - " 17/1 1.04992 1.04827 +/- 0.01555\n", - " 18/1 1.02696 1.04561 +/- 0.01373\n", - " 19/1 1.06505 1.04777 +/- 0.01230\n", - " 20/1 1.04642 1.04763 +/- 0.01100\n", - " 21/1 0.93051 1.03699 +/- 0.01457\n", - " 22/1 0.99599 1.03357 +/- 0.01374\n", - " 23/1 0.98503 1.02984 +/- 0.01317\n", - " 24/1 1.00745 1.02824 +/- 0.01230\n", - " 25/1 1.04422 1.02930 +/- 0.01150\n", - " 26/1 1.01579 1.02846 +/- 0.01079\n", - " 27/1 0.99016 1.02621 +/- 0.01038\n", - " 28/1 1.00865 1.02523 +/- 0.00984\n", - " 29/1 0.97084 1.02237 +/- 0.00974\n", - " 30/1 0.99065 1.02078 +/- 0.00937\n", - " 31/1 1.05078 1.02221 +/- 0.00903\n", - " 32/1 1.01389 1.02183 +/- 0.00862\n", - " 33/1 0.98003 1.02001 +/- 0.00843\n", - " 34/1 0.96472 1.01771 +/- 0.00840\n", - " 35/1 1.04002 1.01860 +/- 0.00810\n", - " 36/1 1.09623 1.02159 +/- 0.00834\n", - " 37/1 1.01305 1.02127 +/- 0.00803\n", - " 38/1 1.01213 1.02095 +/- 0.00774\n", - " 39/1 1.04104 1.02164 +/- 0.00750\n", - " 40/1 0.98833 1.02053 +/- 0.00733\n", - " 41/1 1.01505 1.02035 +/- 0.00710\n", - " 42/1 1.03518 1.02081 +/- 0.00689\n", - " 43/1 0.99342 1.01998 +/- 0.00673\n", - " 44/1 1.05292 1.02095 +/- 0.00660\n", - " 45/1 1.02786 1.02115 +/- 0.00641\n", - " 46/1 1.01292 1.02092 +/- 0.00623\n", - " 47/1 1.04893 1.02168 +/- 0.00611\n", - " 48/1 1.02091 1.02166 +/- 0.00594\n", - " 49/1 1.02538 1.02175 +/- 0.00579\n", - " 50/1 1.06304 1.02279 +/- 0.00574\n", - " 51/1 0.95241 1.02107 +/- 0.00585\n", - " 52/1 1.01082 1.02083 +/- 0.00572\n", - " 53/1 0.96167 1.01945 +/- 0.00575\n", - " 54/1 1.08665 1.02098 +/- 0.00582\n", - " 55/1 1.13206 1.02345 +/- 0.00620\n", - " 56/1 1.00262 1.02299 +/- 0.00608\n", - " 57/1 1.02246 1.02298 +/- 0.00595\n", - " 58/1 0.99593 1.02242 +/- 0.00586\n", - " 59/1 0.98706 1.02170 +/- 0.00578\n", - " 60/1 1.00663 1.02140 +/- 0.00567\n", - " 61/1 0.96775 1.02034 +/- 0.00566\n", - " 62/1 1.09874 1.02185 +/- 0.00575\n", - " 63/1 1.01515 1.02172 +/- 0.00564\n", - " 64/1 1.10039 1.02318 +/- 0.00572\n", - " 65/1 0.99549 1.02268 +/- 0.00564\n", - " 66/1 1.06013 1.02335 +/- 0.00558\n", - " 67/1 0.96516 1.02233 +/- 0.00558\n", - " 68/1 1.02089 1.02230 +/- 0.00548\n", - " 69/1 0.97340 1.02147 +/- 0.00545\n", - " 70/1 0.99910 1.02110 +/- 0.00537\n", - " 71/1 1.01906 1.02107 +/- 0.00528\n", - " 72/1 0.98343 1.02046 +/- 0.00523\n", - " 73/1 1.01440 1.02036 +/- 0.00515\n", - " 74/1 1.06536 1.02107 +/- 0.00511\n", - " 75/1 1.05840 1.02164 +/- 0.00507\n", - " 76/1 0.98504 1.02109 +/- 0.00502\n", - " 77/1 1.01406 1.02098 +/- 0.00495\n", - " 78/1 1.01447 1.02089 +/- 0.00487\n", - " 79/1 1.05125 1.02133 +/- 0.00482\n", - " 80/1 1.09150 1.02233 +/- 0.00486\n", - " 81/1 1.05132 1.02274 +/- 0.00481\n", - " 82/1 1.05584 1.02320 +/- 0.00476\n", - " 83/1 1.00987 1.02301 +/- 0.00470\n", - " 84/1 1.03973 1.02324 +/- 0.00464\n", - " 85/1 1.01726 1.02316 +/- 0.00458\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - " 86/1 1.03286 1.02329 +/- 0.00452\n", - " 87/1 1.01847 1.02322 +/- 0.00446\n", - " 88/1 1.02685 1.02327 +/- 0.00441\n", - " 89/1 1.01449 1.02316 +/- 0.00435\n", - " 90/1 1.03687 1.02333 +/- 0.00430\n", - " 91/1 0.89874 1.02179 +/- 0.00452\n", - " 92/1 0.95318 1.02096 +/- 0.00454\n", - " 93/1 1.05213 1.02133 +/- 0.00450\n", - " 94/1 1.05203 1.02170 +/- 0.00446\n", - " 95/1 1.08355 1.02243 +/- 0.00447\n", - " 96/1 0.98955 1.02204 +/- 0.00443\n", - " 97/1 1.05351 1.02240 +/- 0.00439\n", - " 98/1 1.02634 1.02245 +/- 0.00434\n", - " 99/1 1.05826 1.02285 +/- 0.00431\n", - " 100/1 0.97338 1.02230 +/- 0.00430\n", - " 101/1 1.05174 1.02263 +/- 0.00427\n", - " 102/1 0.93970 1.02172 +/- 0.00431\n", - " 103/1 1.02140 1.02172 +/- 0.00427\n", - " 104/1 1.00553 1.02155 +/- 0.00423\n", - " 105/1 1.01433 1.02147 +/- 0.00418\n", - " 106/1 1.06629 1.02194 +/- 0.00416\n", - " 107/1 1.08827 1.02262 +/- 0.00418\n", - " 108/1 1.04702 1.02287 +/- 0.00414\n", - " 109/1 1.04904 1.02314 +/- 0.00411\n", - " 110/1 1.06022 1.02351 +/- 0.00408\n", - " 111/1 1.03590 1.02363 +/- 0.00405\n", - " 112/1 1.09293 1.02431 +/- 0.00406\n", - " 113/1 1.01747 1.02424 +/- 0.00402\n", - " 114/1 1.03208 1.02432 +/- 0.00399\n", - " 115/1 0.97457 1.02384 +/- 0.00398\n", - " 116/1 1.08094 1.02438 +/- 0.00397\n", - " 117/1 1.01130 1.02426 +/- 0.00394\n", - " 118/1 0.98196 1.02387 +/- 0.00392\n", - " 119/1 1.02973 1.02392 +/- 0.00389\n", - " 120/1 1.11169 1.02472 +/- 0.00393\n", - " 121/1 0.99131 1.02442 +/- 0.00391\n", - " 122/1 1.06702 1.02480 +/- 0.00389\n", - " 123/1 1.06903 1.02519 +/- 0.00388\n", - " 124/1 1.08791 1.02574 +/- 0.00388\n", - " 125/1 1.05292 1.02598 +/- 0.00386\n", - " 126/1 1.03611 1.02607 +/- 0.00382\n", - " 127/1 1.03452 1.02614 +/- 0.00379\n", - " 128/1 1.01868 1.02607 +/- 0.00376\n", - " 129/1 1.03727 1.02617 +/- 0.00373\n", - " 130/1 1.05476 1.02641 +/- 0.00371\n", - " 131/1 1.01468 1.02631 +/- 0.00368\n", - " 132/1 1.03989 1.02642 +/- 0.00365\n", - " 133/1 1.02123 1.02638 +/- 0.00362\n", - " 134/1 1.01016 1.02625 +/- 0.00359\n", - " 135/1 0.96283 1.02574 +/- 0.00360\n", - " 136/1 1.00178 1.02555 +/- 0.00357\n", - " 137/1 1.01577 1.02547 +/- 0.00355\n", - " 138/1 1.03909 1.02558 +/- 0.00352\n", - " 139/1 0.96980 1.02515 +/- 0.00352\n", - " 140/1 1.02623 1.02516 +/- 0.00349\n", - " 141/1 1.04033 1.02527 +/- 0.00347\n", - " 142/1 1.03450 1.02534 +/- 0.00344\n", - " 143/1 0.98749 1.02506 +/- 0.00343\n", - " 144/1 0.95794 1.02456 +/- 0.00344\n", - " 145/1 1.05974 1.02482 +/- 0.00342\n", - " 146/1 1.01177 1.02472 +/- 0.00340\n", - " 147/1 1.02459 1.02472 +/- 0.00338\n", - " 148/1 1.00250 1.02456 +/- 0.00335\n", - " 149/1 1.01996 1.02453 +/- 0.00333\n", - " 150/1 1.01685 1.02447 +/- 0.00331\n", + " Bat./Gen. k Average k\n", + " ========= ======== ====================\n", + " 1/1 1.02645\n", + " 2/1 0.99765\n", + " 3/1 1.01443\n", + " 4/1 0.99315\n", + " 5/1 1.00349\n", + " 6/1 1.04760\n", + " 7/1 0.97568\n", + " 8/1 1.01985\n", + " 9/1 1.02142\n", + " 10/1 1.06754\n", + " 11/1 1.00976\n", + " 12/1 1.01636 1.01306 +/- 0.00330\n", + " 13/1 0.99644 1.00752 +/- 0.00586\n", + " 14/1 1.06645 1.02225 +/- 0.01530\n", + " 15/1 0.96294 1.01039 +/- 0.01677\n", + " 16/1 1.01583 1.01130 +/- 0.01372\n", + " 17/1 1.00515 1.01042 +/- 0.01163\n", + " 18/1 1.00582 1.00984 +/- 0.01009\n", + " 19/1 1.04966 1.01427 +/- 0.00994\n", + " 20/1 0.99010 1.01185 +/- 0.00921\n", + " 21/1 1.02895 1.01341 +/- 0.00848\n", + " 22/1 1.03273 1.01502 +/- 0.00790\n", + " 23/1 1.00194 1.01401 +/- 0.00734\n", + " 24/1 1.05051 1.01662 +/- 0.00728\n", + " 25/1 1.06279 1.01970 +/- 0.00744\n", + " 26/1 1.03726 1.02079 +/- 0.00705\n", + " 27/1 1.02463 1.02102 +/- 0.00662\n", + " 28/1 1.03113 1.02158 +/- 0.00627\n", + " 29/1 1.03525 1.02230 +/- 0.00597\n", + " 30/1 1.00092 1.02123 +/- 0.00577\n", + " 31/1 1.06995 1.02355 +/- 0.00596\n", + " 32/1 1.02330 1.02354 +/- 0.00568\n", + " 33/1 1.05108 1.02474 +/- 0.00556\n", + " 34/1 1.03009 1.02496 +/- 0.00533\n", + " 35/1 1.02828 1.02509 +/- 0.00511\n", + " 36/1 1.07762 1.02711 +/- 0.00531\n", + " 37/1 1.01539 1.02668 +/- 0.00513\n", + " 38/1 1.03572 1.02700 +/- 0.00495\n", + " 39/1 1.01042 1.02643 +/- 0.00481\n", + " 40/1 1.03149 1.02660 +/- 0.00465\n", + " 41/1 0.99594 1.02561 +/- 0.00461\n", + " 42/1 1.04728 1.02629 +/- 0.00451\n", + " 43/1 1.05021 1.02701 +/- 0.00443\n", + " 44/1 1.13894 1.03030 +/- 0.00541\n", + " 45/1 1.02891 1.03026 +/- 0.00526\n", + " 46/1 0.95904 1.02829 +/- 0.00548\n", + " 47/1 1.02866 1.02830 +/- 0.00533\n", + " 48/1 1.01773 1.02802 +/- 0.00519\n", + " 49/1 1.00524 1.02743 +/- 0.00509\n", + " 50/1 1.06765 1.02844 +/- 0.00507\n", + " 51/1 1.02869 1.02845 +/- 0.00494\n", + " 52/1 0.98567 1.02743 +/- 0.00493\n", + " 53/1 1.04195 1.02777 +/- 0.00482\n", + " 54/1 0.98990 1.02690 +/- 0.00479\n", + " 55/1 1.05027 1.02742 +/- 0.00471\n", + " 56/1 1.01671 1.02719 +/- 0.00461\n", + " 57/1 1.01896 1.02702 +/- 0.00452\n", + " 58/1 1.02964 1.02707 +/- 0.00442\n", + " 59/1 1.06027 1.02775 +/- 0.00438\n", + " 60/1 0.94151 1.02602 +/- 0.00463\n", + " 61/1 1.04427 1.02638 +/- 0.00455\n", + " 62/1 1.00755 1.02602 +/- 0.00448\n", + " 63/1 1.03042 1.02610 +/- 0.00439\n", + " 64/1 1.06065 1.02674 +/- 0.00436\n", + " 65/1 1.09489 1.02798 +/- 0.00445\n", + " 66/1 0.94093 1.02643 +/- 0.00464\n", + " 67/1 1.02360 1.02638 +/- 0.00456\n", + " 68/1 1.05913 1.02694 +/- 0.00452\n", + " 69/1 1.03014 1.02700 +/- 0.00444\n", + " 70/1 1.06483 1.02763 +/- 0.00441\n", + " 71/1 1.06306 1.02821 +/- 0.00438\n", + " 72/1 0.95143 1.02697 +/- 0.00448\n", + " 73/1 1.02068 1.02687 +/- 0.00441\n", + " 74/1 0.99676 1.02640 +/- 0.00436\n", + " 75/1 1.05533 1.02684 +/- 0.00432\n", + " 76/1 0.97821 1.02611 +/- 0.00432\n", + " 77/1 1.10001 1.02721 +/- 0.00439\n", + " 78/1 1.01191 1.02698 +/- 0.00433\n", + " 79/1 1.07679 1.02771 +/- 0.00433\n", + " 80/1 0.99926 1.02730 +/- 0.00429\n", + " 81/1 1.01963 1.02719 +/- 0.00423\n", + " 82/1 1.03189 1.02726 +/- 0.00417\n", + " 83/1 1.04160 1.02745 +/- 0.00412\n", + " 84/1 1.00441 1.02714 +/- 0.00407\n", + " 85/1 0.97796 1.02649 +/- 0.00407\n", + " 86/1 0.97930 1.02587 +/- 0.00407\n", + " 87/1 1.01974 1.02579 +/- 0.00401\n", + " 88/1 1.07295 1.02639 +/- 0.00401\n", + " 89/1 1.04861 1.02667 +/- 0.00397\n", + " 90/1 1.03532 1.02678 +/- 0.00392\n", + " 91/1 0.97870 1.02619 +/- 0.00391\n", + " 92/1 1.00144 1.02588 +/- 0.00388\n", + " 93/1 1.03796 1.02603 +/- 0.00383\n", + " 94/1 1.00525 1.02578 +/- 0.00380\n", + " 95/1 1.04720 1.02603 +/- 0.00376\n", + " 96/1 1.02944 1.02607 +/- 0.00372\n", + " 97/1 1.07814 1.02667 +/- 0.00372\n", + " 98/1 0.98386 1.02619 +/- 0.00371\n", + " 99/1 0.99942 1.02589 +/- 0.00368\n", + " 100/1 1.06482 1.02632 +/- 0.00367\n", + " 101/1 1.05862 1.02667 +/- 0.00364\n", + " 102/1 1.02241 1.02663 +/- 0.00360\n", + " 103/1 1.03319 1.02670 +/- 0.00356\n", + " 104/1 1.06903 1.02715 +/- 0.00356\n", + " 105/1 1.05246 1.02741 +/- 0.00353\n", + " 106/1 1.00136 1.02714 +/- 0.00350\n", + " 107/1 1.05601 1.02744 +/- 0.00348\n", + " 108/1 0.96755 1.02683 +/- 0.00350\n", + " 109/1 1.06354 1.02720 +/- 0.00348\n", + " 110/1 1.06919 1.02762 +/- 0.00347\n", + " 111/1 1.04993 1.02784 +/- 0.00344\n", + " 112/1 1.08810 1.02843 +/- 0.00346\n", + " 113/1 1.05241 1.02866 +/- 0.00343\n", + " 114/1 0.97746 1.02817 +/- 0.00344\n", + " 115/1 0.98790 1.02779 +/- 0.00343\n", + " 116/1 1.08795 1.02836 +/- 0.00344\n", + " 117/1 1.02201 1.02830 +/- 0.00341\n", + " 118/1 0.97152 1.02777 +/- 0.00342\n", + " 119/1 0.98537 1.02738 +/- 0.00341\n", + " 120/1 1.03938 1.02749 +/- 0.00338\n", + " 121/1 1.02718 1.02749 +/- 0.00335\n", + " 122/1 1.03585 1.02756 +/- 0.00332\n", + " 123/1 1.02970 1.02758 +/- 0.00329\n", + " 124/1 1.05110 1.02779 +/- 0.00327\n", + " 125/1 0.96037 1.02720 +/- 0.00329\n", + " 126/1 0.97982 1.02679 +/- 0.00329\n", + " 127/1 1.06303 1.02710 +/- 0.00327\n", + " 128/1 1.06496 1.02742 +/- 0.00326\n", + " 129/1 1.07217 1.02780 +/- 0.00326\n", + " 130/1 1.06084 1.02808 +/- 0.00324\n", + " 131/1 1.03487 1.02813 +/- 0.00321\n", + " 132/1 0.97656 1.02771 +/- 0.00322\n", + " 133/1 1.00767 1.02755 +/- 0.00319\n", + " 134/1 0.98553 1.02721 +/- 0.00319\n", + " 135/1 1.00056 1.02699 +/- 0.00317\n", + " 136/1 1.04770 1.02716 +/- 0.00315\n", + " 137/1 1.00243 1.02696 +/- 0.00313\n", + " 138/1 1.04823 1.02713 +/- 0.00311\n", + " 139/1 0.96607 1.02666 +/- 0.00312\n", + " 140/1 1.05028 1.02684 +/- 0.00310\n", + " 141/1 1.02018 1.02679 +/- 0.00308\n", + " 142/1 1.05010 1.02696 +/- 0.00306\n", + " 143/1 0.94602 1.02635 +/- 0.00310\n", + " 144/1 0.99193 1.02610 +/- 0.00308\n", + " 145/1 1.08497 1.02653 +/- 0.00309\n", + " 146/1 1.08954 1.02700 +/- 0.00310\n", + " 147/1 1.01307 1.02690 +/- 0.00308\n", + " 148/1 1.05130 1.02707 +/- 0.00307\n", + " 149/1 0.96176 1.02660 +/- 0.00308\n", + " 150/1 1.06671 1.02689 +/- 0.00307\n", " Creating state point statepoint.150.h5...\n", "\n", " =======================> TIMING STATISTICS <=======================\n", "\n", - " Total time for initialization = 1.9973E+00 seconds\n", - " Reading cross sections = 1.9754E+00 seconds\n", - " Total time in simulation = 1.0027E+01 seconds\n", - " Time in transport only = 9.7807E+00 seconds\n", - " Time in inactive batches = 6.3098E-01 seconds\n", - " Time in active batches = 9.3961E+00 seconds\n", - " Time synchronizing fission bank = 2.2006E-01 seconds\n", - " Sampling source sites = 3.6878E-03 seconds\n", - " SEND/RECV source sites = 1.5480E-03 seconds\n", - " Time accumulating tallies = 1.7685E-03 seconds\n", - " Total time for finalization = 1.8645E-03 seconds\n", - " Total time elapsed = 1.2029E+01 seconds\n", - " Calculation Rate (inactive) = 15848.4 particles/second\n", - " Calculation Rate (active) = 14899.7 particles/second\n", + " Total time for initialization = 2.0384e+00 seconds\n", + " Reading cross sections = 2.0227e+00 seconds\n", + " Total time in simulation = 9.1420e+00 seconds\n", + " Time in transport only = 9.0999e+00 seconds\n", + " Time in inactive batches = 5.5386e-01 seconds\n", + " Time in active batches = 8.5882e+00 seconds\n", + " Time synchronizing fission bank = 1.1552e-02 seconds\n", + " Sampling source sites = 1.0190e-02 seconds\n", + " SEND/RECV source sites = 1.2995e-03 seconds\n", + " Time accumulating tallies = 3.2846e-03 seconds\n", + " Time writing statepoints = 7.0253e-03 seconds\n", + " Total time for finalization = 2.1724e-04 seconds\n", + " Total time elapsed = 1.1191e+01 seconds\n", + " Calculation Rate (inactive) = 18055.2 particles/second\n", + " Calculation Rate (active) = 16301.5 particles/second\n", "\n", " ============================> RESULTS <============================\n", "\n", - " k-effective (Collision) = 1.02352 +/- 0.00283\n", - " k-effective (Track-length) = 1.02447 +/- 0.00331\n", - " k-effective (Absorption) = 1.02829 +/- 0.00297\n", - " Combined k-effective = 1.02584 +/- 0.00234\n", - " Leakage Fraction = 0.00000 +/- 0.00000\n", + " k-effective (Collision) = 1.03023 +/- 0.00292\n", + " k-effective (Track-length) = 1.02689 +/- 0.00307\n", + " k-effective (Absorption) = 1.03192 +/- 0.00284\n", + " Combined k-effective = 1.03033 +/- 0.00237\n", + " Leakage Fraction = 0.00000 +/- 0.00000\n", "\n" ] } ], "source": [ "# Run OpenMC with 2 MPI processes\n", - "openmc.run(mpi_args=['mpiexec', '-n', '2'], threads=2)" + "openmc.run()" ] }, { @@ -819,7 +825,7 @@ " \tID =\t1\n", " \tName =\ta really cool tally\n", " \tFilters =\tCellFilter, EnergyFilter\n", - " \tNuclides =\tO16 O17 U234 U235 U238 U236 \n", + " \tNuclides =\tO16 O17 U234 U235 U238 U236\n", " \tScores =\t['scatter', 'absorption']\n", " \tEstimator =\ttracklength}" ] @@ -997,8 +1003,8 @@ " 2.000000e+01\n", " O16\n", " scatter\n", - " 0.671157\n", - " 1.863730e-03\n", + " 0.672540\n", + " 1.885498e-03\n", " \n", " \n", " 13\n", @@ -1008,7 +1014,7 @@ " O16\n", " absorption\n", " 0.000016\n", - " 5.622982e-08\n", + " 5.425475e-08\n", " \n", " \n", " 14\n", @@ -1018,7 +1024,7 @@ " O17\n", " scatter\n", " 0.000247\n", - " 6.854928e-07\n", + " 6.935285e-07\n", " \n", " \n", " 15\n", @@ -1027,8 +1033,8 @@ " 2.000000e+01\n", " O17\n", " absorption\n", - " 0.000007\n", - " 2.678232e-08\n", + " 0.000008\n", + " 2.583810e-08\n", " \n", " \n", " 16\n", @@ -1037,8 +1043,8 @@ " 2.000000e+01\n", " U234\n", " scatter\n", - " 0.000258\n", - " 1.973762e-06\n", + " 0.000259\n", + " 2.090607e-06\n", " \n", " \n", " 17\n", @@ -1047,8 +1053,8 @@ " 2.000000e+01\n", " U234\n", " absorption\n", - " 0.001131\n", - " 1.475416e-05\n", + " 0.001129\n", + " 1.535991e-05\n", " \n", " \n", " 18\n", @@ -1057,8 +1063,8 @@ " 2.000000e+01\n", " U235\n", " scatter\n", - " 0.019520\n", - " 5.572523e-05\n", + " 0.019562\n", + " 5.609057e-05\n", " \n", " \n", " 19\n", @@ -1067,8 +1073,8 @@ " 2.000000e+01\n", " U235\n", " absorption\n", - " 0.435056\n", - " 1.579224e-03\n", + " 0.436195\n", + " 1.511962e-03\n", " \n", " \n", " 20\n", @@ -1077,8 +1083,8 @@ " 2.000000e+01\n", " U238\n", " scatter\n", - " 0.771903\n", - " 2.148910e-03\n", + " 0.773617\n", + " 2.185517e-03\n", " \n", " \n", " 21\n", @@ -1087,8 +1093,8 @@ " 2.000000e+01\n", " U238\n", " absorption\n", - " 0.166052\n", - " 6.761443e-04\n", + " 0.164795\n", + " 7.169391e-04\n", " \n", " \n", " 22\n", @@ -1097,8 +1103,8 @@ " 2.000000e+01\n", " U236\n", " scatter\n", - " 0.000071\n", - " 5.337780e-07\n", + " 0.000070\n", + " 4.220446e-07\n", " \n", " \n", " 23\n", @@ -1107,8 +1113,8 @@ " 2.000000e+01\n", " U236\n", " absorption\n", - " 0.000175\n", - " 5.425349e-06\n", + " 0.000166\n", + " 4.473711e-06\n", " \n", " \n", "\n", @@ -1128,18 +1134,18 @@ "9 52 0.00e+00 6.25e-07 U238 absorption 0.00e+00 \n", "10 52 0.00e+00 6.25e-07 U236 scatter 0.00e+00 \n", "11 52 0.00e+00 6.25e-07 U236 absorption 0.00e+00 \n", - "12 52 6.25e-07 2.00e+01 O16 scatter 6.71e-01 \n", - "13 52 6.25e-07 2.00e+01 O16 absorption 1.57e-05 \n", + "12 52 6.25e-07 2.00e+01 O16 scatter 6.73e-01 \n", + "13 52 6.25e-07 2.00e+01 O16 absorption 1.58e-05 \n", "14 52 6.25e-07 2.00e+01 O17 scatter 2.47e-04 \n", - "15 52 6.25e-07 2.00e+01 O17 absorption 7.48e-06 \n", - "16 52 6.25e-07 2.00e+01 U234 scatter 2.58e-04 \n", + "15 52 6.25e-07 2.00e+01 O17 absorption 7.50e-06 \n", + "16 52 6.25e-07 2.00e+01 U234 scatter 2.59e-04 \n", "17 52 6.25e-07 2.00e+01 U234 absorption 1.13e-03 \n", - "18 52 6.25e-07 2.00e+01 U235 scatter 1.95e-02 \n", - "19 52 6.25e-07 2.00e+01 U235 absorption 4.35e-01 \n", - "20 52 6.25e-07 2.00e+01 U238 scatter 7.72e-01 \n", - "21 52 6.25e-07 2.00e+01 U238 absorption 1.66e-01 \n", - "22 52 6.25e-07 2.00e+01 U236 scatter 7.06e-05 \n", - "23 52 6.25e-07 2.00e+01 U236 absorption 1.75e-04 \n", + "18 52 6.25e-07 2.00e+01 U235 scatter 1.96e-02 \n", + "19 52 6.25e-07 2.00e+01 U235 absorption 4.36e-01 \n", + "20 52 6.25e-07 2.00e+01 U238 scatter 7.74e-01 \n", + "21 52 6.25e-07 2.00e+01 U238 absorption 1.65e-01 \n", + "22 52 6.25e-07 2.00e+01 U236 scatter 6.99e-05 \n", + "23 52 6.25e-07 2.00e+01 U236 absorption 1.66e-04 \n", "\n", " std. dev. \n", "0 0.00e+00 \n", @@ -1154,18 +1160,18 @@ "9 0.00e+00 \n", "10 0.00e+00 \n", "11 0.00e+00 \n", - "12 1.86e-03 \n", - "13 5.62e-08 \n", - "14 6.85e-07 \n", - "15 2.68e-08 \n", - "16 1.97e-06 \n", - "17 1.48e-05 \n", - "18 5.57e-05 \n", - "19 1.58e-03 \n", - "20 2.15e-03 \n", - "21 6.76e-04 \n", - "22 5.34e-07 \n", - "23 5.43e-06 " + "12 1.89e-03 \n", + "13 5.43e-08 \n", + "14 6.94e-07 \n", + "15 2.58e-08 \n", + "16 2.09e-06 \n", + "17 1.54e-05 \n", + "18 5.61e-05 \n", + "19 1.51e-03 \n", + "20 2.19e-03 \n", + "21 7.17e-04 \n", + "22 4.22e-07 \n", + "23 4.47e-06 " ] }, "execution_count": 22, @@ -1203,7 +1209,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.5.5" + "version": "3.11.6" } }, "nbformat": 4, diff --git a/BEAVRS/make_beavrs.py b/BEAVRS/make_beavrs.py index 4d44754..aa23dbc 100755 --- a/BEAVRS/make_beavrs.py +++ b/BEAVRS/make_beavrs.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 -import json, openmc, os, shutil, sys +import json, openmc, os, sys import numpy as np import openmc.deplete from beavrs.builder import BEAVRS @@ -51,7 +51,7 @@ p.add_option('-r', '--run', action='store_true', default=False, if not len(args) == 0: p.print_help() -b = BEAVRS(is_symmetric=options.is_symmetric, is_2d=options.is_2d, S=15) +b = BEAVRS(25, 0, is_symmetric=options.is_symmetric, is_2d=options.is_2d) # b.export_xml() # openmc.calculate_volumes() @@ -104,8 +104,6 @@ elif options.run_deplete: full_power = 3411e6 powers = [full_power if x > 1 else full_power*x for x in time_steps_cum] - print(time_steps) - time_step = 10 power = int(3.411e9) @@ -123,15 +121,13 @@ elif options.run_deplete: openmc.deplete.Results('depletion_results.h5').export_to_materials(len(time_steps)) """ + print(time_steps) + i = 0 for power, time_step in zip(powers, time_steps): print(f'Current loop info: {power} {time_step}') ## setting the transport operator - model = openmc.Model(geometry=b.openmc_geometry, materials=b.materials, - settings=b.settings, tallies=b.common_tallies, plots=b.plots) - - model.geometry.merge_surfaces = True model = b.export_model() operator = openmc.deplete.CoupledOperator(model, chain_file, #diff_burnable_mats=False, normalization_mode='fission-q', @@ -157,8 +153,7 @@ elif options.run_deplete: # Get materials at the end of the last simulation model.materials = results.export_to_materials(len(time_steps)) - -""" + """ elif options.run: b.set_params(batches=350,inactive=50,particles=20000)