From a9038a679a4c75a115bc20e7b6af96e2009e46e3 Mon Sep 17 00:00:00 2001 From: yardasol Date: Sat, 24 Sep 2022 20:45:25 -0500 Subject: [PATCH 01/62] add notebook and script to generate msbr openmc model --- examples/msbr/model-plotting.ipynb | 984 +++++++++++++++++++++++++++++ examples/msbr/openmc_model.py | 362 +++++++++++ 2 files changed, 1346 insertions(+) create mode 100644 examples/msbr/model-plotting.ipynb create mode 100644 examples/msbr/openmc_model.py diff --git a/examples/msbr/model-plotting.ipynb b/examples/msbr/model-plotting.ipynb new file mode 100644 index 000000000..ec6a7930f --- /dev/null +++ b/examples/msbr/model-plotting.ipynb @@ -0,0 +1,984 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": null, + "id": "bdbd4aaa", + "metadata": {}, + "outputs": [], + "source": [ + "import openmc\n", + "import numpy as np" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "56642afc", + "metadata": {}, + "outputs": [], + "source": [ + "# Create materials\n", + "fuel, moder, hast = mat\n", + "fuel.set_density('g/cm3', density=3.35)\n", + "fuel.add_components({'Li7': 0.0787474673879085,\n", + " 'Be9': 0.0225566879138321,\n", + " 'F19': 0.454003012179284,\n", + " 'Th232': 0.435579130482336,\n", + " 'U233': 0.00911370203663893},\n", + " percent_type='wo')\n", + "fuel.depletable = True\n", + "fuel.volume = 48710000.0\n", + "\n", + "moder = openmc.Material(name='graphite', temperature=900.0)\n", + "moder.set_density('g/cm3', density=1.84)\n", + "moder.add_nuclide('C0', 1.000, percent_type='wo')\n", + "moder.add_s_alpha_beta('c_Graphite')\n", + "\n", + "hast = openmc.Material(name='hastelloyN', temperature=900.0)\n", + "hast.set_density('g/cm3', density=8.671)\n", + "hast.add_components({'Al27': 0.003,\n", + " 'Ni': 0.677,\n", + " 'W': 0.250,\n", + " 'Cr': 0.070},\n", + " percent_type='wo')\n", + "\n", + "mat = openmc.Materials(materials=[fuel, moder, hast])\n", + "mat.export_to_xml()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "5bf1ab77", + "metadata": {}, + "outputs": [], + "source": [ + "colormap = {moder: 'purple',\n", + " hast: 'blue',\n", + " fuel: 'yellow'}" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "3e341197", + "metadata": {}, + "outputs": [], + "source": [ + "def _bound_zone_cells(cells_tuples, levels):\n", + " \"\"\"Helper function that moves Zone IA and Zone IIA cells to the\n", + " appropriate height.\"\"\"\n", + " cell_list = []\n", + " for i, cells in enumerate(cells_tuples):\n", + " lower_bound = levels[i]\n", + " upper_bound = levels[i+1]\n", + " for j, cell in enumerate(cells):\n", + " cell.region = cell.region & +lower_bound & -upper_bound\n", + " cell_list.append(cell)\n", + " return cell_list\n", + "\n", + "def shared_elem_geometry():\n", + " \"\"\"Surfaces and regions shared by Zone IA and Zone IIA elements. \n", + " Specs found in Robertson, 1971 Fig 3.4 (p. 17) and Fig 3.5 (p.18)\"\"\"\n", + "\n", + " elem_bound = openmc.rectangular_prism(5.08*2, 5.08*2) # Pin outer boundary\n", + "\n", + " gr_sq_neg = openmc.rectangular_prism(4.953*2, 4.953*2, corner_radius=0.46) # Graphite square\n", + "\n", + " # params for main pin section for both I-A and II-A\n", + " r_d = 0.66802\n", + " l1 = 4.28498\n", + " l2 = 4.53898\n", + " l3 = 5.62102\n", + " ul = openmc.ZCylinder(-l1, l2, r_d, name='corner_ul')\n", + " br = openmc.ZCylinder(l1, -l2, r_d, name='corner_br')\n", + " lb = openmc.ZCylinder(-l2, -l1, r_d, name='corner_lb')\n", + " ru = openmc.ZCylinder(l2, l1, r_d, name='corner_ru')\n", + " ul_t = openmc.ZCylinder(-l1, -l3, r_d, name='corner_ul_tip')\n", + " br_t = openmc.ZCylinder(l1, l3, r_d, name='corner_br_tip')\n", + " ru_t = openmc.ZCylinder(-l3, l1, r_d, name='corner_ru_tip')\n", + " lb_t = openmc.ZCylinder(l3, -l1, r_d, name='corner_lb_tip')\n", + "\n", + " gr_corners = elem_bound & (-ul | -br | -lb | -ru | \n", + " -ul_t | -br_t | -ru_t | -lb_t)\n", + "\n", + " inter_elem_channel = (~gr_sq_neg & elem_bound &\n", + " +ul & +br & +lb & +ru &\n", + " +ul_t & +ru_t & +ru_t & +lb_t)\n", + " \n", + " gr_round_4 = openmc.ZCylinder(r=2.2225, name='gr_round_4')\n", + "\n", + " \n", + " return elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4\n", + " " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "71b4a322", + "metadata": {}, + "outputs": [], + "source": [ + "def zoneIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4):\n", + " \"\"\"Zone IA element. Specs found in Robertson, 1971 Fig 3.4 (p. 17)\"\"\"\n", + " elem_levels = [0.0, 22.86, 419.10, 438.15, 445.135, 449.58]\n", + " level_bounds = []\n", + " for level in elem_levels:\n", + " level_bounds.append(openmc.ZPlane(z0=level))\n", + " s1 = openmc.ZCylinder(r=4.953, name='ia_gr_round_1')\n", + " s2 = openmc.ZCylinder(r=1.71069, name='ia_fuel_hole')\n", + " \n", + " h = 12.66\n", + " theta = np.arctan(4.953 / h)\n", + " r2 = (1 / np.cos(theta))**2 - 1\n", + " s3 = openmc.ZCone(z0=h + elem_levels[3], r2=r2, name='cone_i')\n", + "\n", + " c1 = openmc.Cell(fill=fuel, region=(-s2), name='ia_fuel_inner_1')\n", + " c2 = openmc.Cell(fill=moder, region=(+s2 & -s1), name='ia_moderator_1')\n", + " c3 = openmc.Cell(fill=fuel, region=(+s1 & elem_bound), name='ia_fuel_outer_1')\n", + " ia1 = (c1, c2, c3)\n", + " \n", + " # I-A main (lower 2)\n", + " c4 = c1.clone(clone_materials=False)\n", + " c4.name = 'ia_fuel_inner_main'\n", + " c5 = openmc.Cell(fill=moder, region=(+s2 &\n", + " gr_sq_neg |\n", + " gr_corners), name='ia_moderator_main')\n", + " c6 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='ia_fuel_outer_main')\n", + " iam = (c4, c5, c6)\n", + " \n", + " # I-A 2 (upper 1)\n", + " c7 = c1.clone(clone_materials=False)\n", + " c7.name = 'ia_fuel_inner_2'\n", + " c8 = c2.clone(clone_materials=False)\n", + " c8.name = 'ia_moderator_2'\n", + " c9 = c3.clone(clone_materials=False)\n", + " c9.name = 'ia_fuel_outer_2'\n", + " ia2 = (c7, c8, c9)\n", + "\n", + " # I-A 3 (upper 2)\n", + " c10 = c1.clone(clone_materials=False)\n", + " c10.name = 'ia_fuel_inner_3'\n", + " c11 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='ia_moderator_3')\n", + " c12 = openmc.Cell(fill=fuel, region=(+s3 & elem_bound), name='ia_fuel_outer_3')\n", + " ia3 = (c10, c11, c12) \n", + " \n", + " # I-A 4 (upper 3)\n", + " c13 = openmc.Cell(fill=hast, region=(-s2), name='ia_hast')\n", + " c14 = openmc.Cell(fill=moder, region=(+s2 & -gr_round_4), name='ia_moderator_4')\n", + " c15 = openmc.Cell(fill=fuel, region=(+gr_round_4 & elem_bound), name='ia_fuel_outer_4')\n", + " ia4 = (c13, c14, c15)\n", + " \n", + " elem_cells = [ia1, iam, ia2, ia3, ia4]\n", + " # universe_id=1\n", + " ia = openmc.Universe(name='zone_ia')\n", + " ia.add_cells(_bound_zone_cells(elem_cells, level_bounds))\n", + " \n", + " return ia\n", + "\n", + "def zoneIIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4):\n", + " \"\"\"Zone IIA element. Specs found in Robertson, 1971 Fig 3.5 (p. 18)\"\"\"\n", + " elem_levels = [0.0, 434.34, 436.88, 439.42, 441.96, 449.58]\n", + " level_bounds = []\n", + " for level in elem_levels:\n", + " level_bounds.append(openmc.ZPlane(z0=level))\n", + " s1 = openmc.ZCylinder(r=3.302, name='iia_fuel_hole_main') # Hole with fuel salt - Fig 3.5, Roberton 1971 (3.27787 - p.47)\n", + " s2 = openmc.ZCylinder(r=0.635, name='iia_fuel_hole_2')\n", + " s3 = openmc.ZCylinder(r=3.65125, name='iia_gr_round_3')\n", + " h = 6.5\n", + " theta = np.arctan(3.65125 / h)\n", + " r2 = (1 / np.cos(theta))**2 - 1\n", + " s4 = openmc.ZCone(z0=h + elem_levels[3], r2=r2, name='cone_ii')\n", + "\n", + " # II-A main (lower 1)\n", + " c1 = openmc.Cell(fill=fuel, region=(-s1), name='iia_fuel_inner_main')\n", + " c2 = openmc.Cell(fill=moder, region=(+s1 & gr_sq_neg | gr_corners), name='iia_moderator_main')\n", + " c3 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='iia_fuel_outer_main')\n", + " c3.name = 'iia_fuel_outer_main'\n", + " iiam = (c1, c2, c3)\n", + "\n", + " # II-A 2 (upper 1)\n", + " c4 = openmc.Cell(fill=fuel, region=(-s2), name='iia_fuel_inner_2')\n", + " c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg | gr_corners), name='iia_moderator_2')\n", + " c6 = c3.clone(clone_materials=False)\n", + " c6.name = 'iia_fuel_outer_2'\n", + " iia2 = (c4, c5, c6)\n", + "\n", + " # II-A 3 (upper 2)\n", + " c7 = c4.clone(clone_materials=False)\n", + " c7.name = 'iia_fuel_inner_3'\n", + " c8 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='iia_moderator_3')\n", + " c9 = openmc.Cell(fill=fuel, region=(+s3 & elem_bound), name='iia_fuel_outer_3')\n", + " iia3 = (c7, c8, c9)\n", + "\n", + " # II-A 4 (upper 3) \n", + " c10 = openmc.Cell(fill=moder, region=(-s4), name='iia_moderator_4')\n", + " c11 = openmc.Cell(fill=fuel, region=(+s4 & elem_bound), name='iia_fuel_outer_4')\n", + " iia4 = (c10, c11)\n", + "\n", + " # II-A 5 (upper 4)\n", + " c12 = openmc.Cell(fill=moder, region=(-gr_round_4), name='iia_moderator_5')\n", + " c13 = openmc.Cell(fill=fuel, region=(+gr_round_4 & elem_bound), name='iia_fuel_outer_5')\n", + " iia5 = (c12, c13)\n", + " \n", + " elem_cells = [iiam, iia2, iia3, iia4, iia5]\n", + " # universe_id=2\n", + " iia = openmc.Universe(name='zone_iia')\n", + " iia.add_cells(_bound_zone_cells(elem_cells, level_bounds))\n", + " return iia\n", + "\n", + "def void_cell(elem_bound):\n", + " c1 = openmc.Cell(region=elem_bound, name='lattice_void')\n", + " #universe_id=5\n", + " v = openmc.Universe(name='lattice_void')\n", + " v.add_cell(c1)\n", + " return v\n", + "\n", + "def graphite_triangles(elem_bound):\n", + " s1 = openmc.Plane(1.0, 1.0, 0.0, 0.0)\n", + " s2 = openmc.Plane(-1.0, 1.0, 0.0, 0.0)\n", + " s3 = openmc.Plane(1.0, -1.0, 0.0, 0.0)\n", + " s4 = openmc.Plane(-1.0, -1.0, 0.0, 0.0)\n", + " \n", + " surfs = [(s4, 'bottom_left'),\n", + " (s1, 'top_right'),\n", + " (s2, 'top_left'),\n", + " (s3, 'bottom_right')]\n", + " univs = []\n", + " for i, (s, name) in enumerate(surfs): \n", + " c1 = openmc.Cell(fill=moder, region=(-s & elem_bound))\n", + " c2 = openmc.Cell(fill=fuel, region=(+s & elem_bound))\n", + " \n", + " # universe_id = 6+i\n", + " gr_tri = openmc.Universe(name=f'{name}_triangle')\n", + " gr_tri.add_cells([c1, c2])\n", + " univs.append(gr_tri)\n", + " \n", + " return univs" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "07136110", + "metadata": {}, + "outputs": [], + "source": [ + "#elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4 = shared_elem_geometry()\n", + "#ia = zoneIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4)\n", + "#iia = zoneIIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4)\n", + "# tres, uno, dos, quatro\n", + "#bl, ur, ul, br = graphite_triangles(elem_bound)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "752c5160", + "metadata": {}, + "outputs": [], + "source": [ + "#ia.plot(width=(20,20),\n", + "# basis='xz',\n", + "# colors=colormap,\n", + "# origin=(0.,0.,440),\n", + "# color_by='material',\n", + "# pixels=(400,400))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ee56bc53", + "metadata": {}, + "outputs": [], + "source": [ + "#iia.plot(width=(20,20),\n", + "# basis='xz',\n", + "# colors=colormap,\n", + "# origin=(0.,0.,440),\n", + "# color_by='material',\n", + "# pixels=(400,400))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "f71ac1b6", + "metadata": {}, + "outputs": [], + "source": [ + "def shared_cr_geometry():\n", + " fuel_hole = openmc.ZCylinder(r=5.08, name='cr_fuel_hole')\n", + " \n", + " elem_bound = openmc.rectangular_prism(7.62*2, 7.62*2) # Pin outer boundary\n", + "\n", + " gr_sq_neg = openmc.rectangular_prism(7.23646*2, 7.23646*2, corner_radius=0.99) # Graphite square\n", + " # params for \n", + " r_d = 1.16\n", + " e_d = 2 * r_d / np.sqrt(3)\n", + " r_dt = 0.8\n", + " r_c = 0.18\n", + " l1 = 5.8801\n", + " l2 = 6.505\n", + " l3 = 8.03646\n", + " ul = openmc.model.hexagonal_prism(origin=(-l1, l2), edge_length=e_d, orientation='x', corner_radius=r_c)\n", + " br = openmc.model.hexagonal_prism(origin=(l1, -l2), edge_length=e_d, orientation='x',corner_radius=r_c)\n", + " lb = openmc.model.hexagonal_prism(origin=(-l2, -l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", + " ru = openmc.model.hexagonal_prism(origin=(l2, l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", + " ul_t = openmc.ZCylinder(-l1, -l3, r_dt, name='corner_ul_tip')\n", + " br_t = openmc.ZCylinder(l1, l3, r_dt, name='corner_br_tip')\n", + " ru_t = openmc.ZCylinder(-l3, l1, r_dt, name='corner_ru_tip')\n", + " lb_t = openmc.ZCylinder(l3, -l1, r_dt, name='corner_lb_tip')\n", + "\n", + " gr_corners = elem_bound & (ul | br | lb | ru | \n", + " -ul_t | -br_t | -ru_t | -lb_t)\n", + "\n", + " inter_elem_channel = (~gr_sq_neg & elem_bound &\n", + " ~ul & ~br & ~lb & ~ru &\n", + " +ul_t & +ru_t & +ru_t & +lb_t)\n", + " \n", + "\n", + "\n", + " return fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel\n", + " " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "d17047bd", + "metadata": {}, + "outputs": [], + "source": [ + "def control_rod(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel):\n", + " s1 = openmc.ZCylinder(r=4.7625, name='control_rod')\n", + "\n", + " c1 = openmc.Cell(fill=moder, region=-s1, name='control_rod')\n", + " c2 = openmc.Cell(fill=fuel, region=(+s1 & -fuel_hole), name='cr_fuel_inner')\n", + " \n", + " moderator_block = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg | gr_corners), name='cr_moderator')\n", + " fuel_outer = openmc.Cell(fill=fuel, region=inter_elem_channel, name='cr_fuel_outer')\n", + " #universe_id=3\n", + " cr = openmc.Universe(name='control_rod')\n", + " cr.add_cells([c1, c2, moderator_block, fuel_outer])\n", + " \n", + " return cr\n", + " \n", + "def control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel):\n", + " c1 = openmc.Cell(fill=fuel, region=(-fuel_hole), name='crc_fuel_inner')\n", + " moderator_block = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg | gr_corners), name='crc_moderator')\n", + " fuel_outer = openmc.Cell(fill=fuel, region=inter_elem_channel, name='crc_fuel_outer')\n", + " # universe_id=4\n", + " crc = openmc.Universe(name='control_rod_channel')\n", + " crc.add_cells([c1, moderator_block, fuel_outer])\n", + " \n", + " return crc" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "cea2d476", + "metadata": {}, + "outputs": [], + "source": [ + "#fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel = shared_cr_geometry() \n", + "\n", + "#cr = control_rod(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel)\n", + "#crc = control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "01b506f1", + "metadata": {}, + "outputs": [], + "source": [ + "#cr.plot(width=(20,20),\n", + "# basis='xy',\n", + "# colors=colormap,\n", + "# origin=(0.,0.,440),\n", + "# color_by='material',\n", + "# pixels=(400,400))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "f2369aa1", + "metadata": {}, + "outputs": [], + "source": [ + "#crc.plot(width=(20,20),\n", + "# basis='xy',\n", + "# colors=colormap,\n", + "# origin=(0.,0.,440),\n", + "# color_by='material',\n", + "# pixels=(400,400))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "7f985e3a", + "metadata": {}, + "outputs": [], + "source": [ + "def shared_root_geometry():\n", + " cr_boundary = openmc.model.rectangular_prism(15.24*2, 15.24*2)\n", + " \n", + " core_base = openmc.ZPlane(z0=0.0, name='core_base')\n", + " core_top = openmc.ZPlane(z0=449.58, name='core_top')\n", + " \n", + " s1 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=208.28, r2=222.71, name='base_octader')\n", + " s2 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=218.44, r2=215.53, name='smaller_octader')\n", + " s3 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=228.60, r2=193.97, name='smallest_octader')\n", + " zone_i_boundary = -s1 | -s2 | -s3\n", + "\n", + " zone_ii_boundary = openmc.ZCylinder(r=256.032, name='iib_boundary')\n", + " annulus_boundary = openmc.ZCylinder(r=261.112, name='annulus_boundary')\n", + " lower_plenum_boundary = openmc.ZPlane(z0=-7.62, name='lower_plenum_boundary')\n", + "\n", + " zone_bounds = (cr_boundary, zone_i_boundary, zone_ii_boundary)\n", + " \n", + " core_bounds = (annulus_boundary, lower_plenum_boundary, core_base, core_top)\n", + " \n", + " radial_reflector_boundary = openmc.ZCylinder(r=338.328, name='radial_reflector_boundary') \n", + " bottom_reflector_boundary = openmc.ZPlane(z0=-76.2, name='bottom_axial_reflector_boundary')\n", + " top_reflector_boundary = openmc.ZPlane(z0=525.78, name='top_axial_reflector_boundary') \n", + " \n", + " reflector_bounds = (radial_reflector_boundary,\n", + " bottom_reflector_boundary,\n", + " top_reflector_boundary)\n", + " \n", + " radial_vessel_boundary = openmc.ZCylinder(r=343.408, name='radial_vessel_wall', boundary_type='vacuum')\n", + " bottom_vessel_boundary = openmc.ZPlane(z0=-81.28, name='bottom_vessel_wall', boundary_type='vacuum')\n", + " top_vessel_boundary = openmc.ZPlane(z0=530.86, name='top_vessel_wall', boundary_type='vacuum')\n", + " \n", + " vessel_bounds = (radial_vessel_boundary,\n", + " bottom_vessel_boundary,\n", + " top_vessel_boundary)\n", + " \n", + " return zone_bounds, core_bounds, reflector_bounds, vessel_bounds\n", + "\n", + "def cr_lattice(cr_boundary, core_base, core_top):\n", + " fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel = shared_cr_geometry() \n", + " elem_bound = openmc.rectangular_prism(7.62*2, 7.62*2) # Pin outer boundary\n", + "\n", + " f = control_rod(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel)\n", + " e = control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel)\n", + " \n", + " cr = openmc.RectLattice()\n", + " cr.pitch = np.array([15.24, 15.24])\n", + " N = 2 / 2\n", + " cr.lower_left = -1 * cr.pitch * N\n", + " cr.universes = [[f, e],\n", + " [e, f]]\n", + " \n", + " c1 = openmc.Cell(fill=cr, region=(+core_base & -core_top & cr_boundary), name='cr_lattice')\n", + " \n", + " return c1\n", + "\n", + "def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top):\n", + " elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4 = shared_elem_geometry()\n", + " l = zoneIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4)\n", + " z = zoneIIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4)\n", + " v = void_cell(elem_bound)\n", + " # tres, uno, dos, quatro\n", + " t, u, d, q = graphite_triangles(elem_bound) \n", + " \n", + " main = openmc.RectLattice()\n", + " main.pitch = np.array([10.16, 10.16])\n", + " N = 45 / 2\n", + " main.lower_left = -1 * main.pitch * N\n", + " main.universes = [[v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, d, z, z, z, z, z, z, z, z, z, u, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, v, v, v, v, v, d, z, z, z, z, l, l, l, l, l, l, l, l, l, z, z, z, z, u, v, v, v, v, v, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, v, v, v, d, z, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, z, u, v, v, v, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v],\n", + " [v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v],\n", + " [v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v],\n", + " [v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v],\n", + " [v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v],\n", + " [v, v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v, v],\n", + " [v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v],\n", + " [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v],\n", + " [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v],\n", + " [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v],\n", + " [d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u],\n", + " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", + " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", + " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", + " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, v, v, v, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", + " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, v, v, v, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", + " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, v, v, v, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", + " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", + " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", + " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", + " [t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q],\n", + " [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v],\n", + " [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v],\n", + " [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v],\n", + " [v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v],\n", + " [v, v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v, v],\n", + " [v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v],\n", + " [v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v],\n", + " [v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v],\n", + " [v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v],\n", + " [v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, v, v, v, t, z, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, z, q, v, v, v, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, v, v, v, v, v, t, z, z, z, z, l, l, l, l, l, l, l, l, l, z, z, z, z, q, v, v, v, v, v, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, t, z, z, z, z, z, z, z, z, z, q, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v]]\n", + " c1 = openmc.Cell(fill=main, region=(+core_base & -core_top & zone_i_boundary & ~cr_boundary), name='main_lattice')\n", + " \n", + " return c1\n", + "\n", + "def zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top):\n", + " # Large elements\n", + " large_angular_width = 3.538\n", + " large_half_w = large_angular_width / 2\n", + " large_positions = np.linspace(0, 315, 8)\n", + " r_outer = 256.032\n", + " r_big1 = 229.6\n", + " r_big2 = 223.6\n", + " rb_1 = (r_big1, r_outer)\n", + " rb_2 = (r_big2, r_outer)\n", + " big_radii = [rb_1, rb_2] * 4\n", + " small_radii = (207.28, r_outer)\n", + " \n", + " hole_coord = 242.679\n", + " hole_region = +openmc.ZCylinder(x0=hole_coord, r=3.0875)\n", + " \n", + " # Small elements\n", + " small_angular_width = 0.96\n", + " adjacent_angular_offset = 0.675 #27/40\n", + " small_elems_per_octant = 25\n", + " \n", + " zone_iib_reg = None\n", + " elem_cells = []\n", + " for i, pos in enumerate(large_positions):\n", + " r1, r2 = big_radii[i]\n", + " t1 = pos - large_half_w\n", + " t2 = pos + large_half_w\n", + " large_elem = openmc.model.CylinderSector(r1, r2, t1, t2)\n", + " elem_hole = hole_region.rotate((0.0, 0.0, pos))\n", + " elem_reg = -large_elem & elem_hole\n", + " # comment/uncomment\n", + " #elem_cells.append(openmc.Cell(fill=moder, region=(elem_reg & \n", + " # ~zone_i_boundary &\n", + " # +core_base & \n", + " # -core_top), name=f'iib_large_element_{pos}'))\n", + " if isinstance(zone_iib_reg, openmc.Region):\n", + " zone_iib_reg = zone_iib_reg | elem_reg\n", + " else:\n", + " zone_iib_reg = elem_reg\n", + " small_start = t2 + adjacent_angular_offset\n", + " r1, r2 = small_radii\n", + " t1 = small_start\n", + " for i in range(0, small_elems_per_octant):\n", + " t2 = t1 + small_angular_width\n", + " elem_reg = -openmc.model.CylinderSector(r1, r2, t1, t2)\n", + " pos = t2 - (small_angular_width / 2)\n", + " # comment/uncomment\n", + " # elem_cells.append(openmc.Cell(fill=moder, region=(elem_reg & \n", + " # ~zone_i_boundary &\n", + " # +core_base & \n", + " # -core_top), name=f'iib_small_element_{pos}'))\n", + " zone_iib_reg = zone_iib_reg | elem_reg\n", + " t1 = t2 + adjacent_angular_offset\n", + " \n", + " # uncomment/comment\n", + " c1 = openmc.Cell(fill=moder, region=(zone_iib_reg &\n", + " ~zone_i_boundary &\n", + " +core_base &\n", + " -core_top), name='iib_moderator')\n", + " c2 = openmc.Cell(fill=fuel, region=(~zone_iib_reg & \n", + " ~zone_i_boundary & \n", + " -zone_ii_boundary & \n", + " +core_base & \n", + " -core_top), name='iib_fuel')\n", + " \n", + " # comment/uncomment\n", + " #universe_id=10\n", + " #iib = openmc.Universe(name='zone_iib')\n", + " #iib.add_cell(c2)\n", + " #iib.add_cell(c1)\n", + " # comment/uncomment\n", + " #iib.add_cells(elem_cells)\n", + " \n", + " # comment/uncomment\n", + " #c3 = openmc.Cell(fill=iib, region=(~zone_i_boundary & \n", + " # -zone_ii_boundary & \n", + " # +core_base & \n", + " # -core_top), name='zone_iib')\n", + " \n", + " #comment/uncomment\n", + " #return c3\n", + "\n", + " # uncomment/comment\n", + " return c1, c2\n", + "\n", + "def annulus(zone_ii_boundary, annulus_boundary, core_base, core_top):\n", + " annulus_reg = +zone_ii_boundary & -annulus_boundary & +core_base & -core_top\n", + " c1 = openmc.Cell(fill=fuel, region=annulus_reg, name='annulus')\n", + " \n", + " return c1\n", + "\n", + "def lower_plenum(core_base, lower_plenum_boundary, annulus_boundary):\n", + " lower_plenum_reg = -core_base & +lower_plenum_boundary & -annulus_boundary \n", + " c1 = openmc.Cell(fill=fuel, region=lower_plenum_reg, name='lower_plenum')\n", + "\n", + " return c1\n", + "\n", + "def reflectors(annulus_boundary, \n", + " radial_reflector_boundary, \n", + " lower_plenum_boundary,\n", + " bottom_reflector_boundary, \n", + " core_top, \n", + " top_reflector_boundary):\n", + " \n", + " radial_reflector_reg = +annulus_boundary & -radial_reflector_boundary & +bottom_reflector_boundary & -top_reflector_boundary\n", + " bottom_reflector_reg = -annulus_boundary & -lower_plenum_boundary & +bottom_reflector_boundary\n", + " top_reflector_reg = -annulus_boundary & +core_top & -top_reflector_boundary\n", + "\n", + " c1 = openmc.Cell(fill=moder, region=radial_reflector_reg, name='radial_reflector')\n", + " c2 = openmc.Cell(fill=moder, region=bottom_reflector_reg, name='bottom_axial_reflector')\n", + " c3 = openmc.Cell(fill=moder, region=top_reflector_reg, name='top_axial_reflector')\n", + " \n", + " return c1, c2, c3\n", + "\n", + "def vessel(radial_reflector_boundary,\n", + " radial_vessel_boundary,\n", + " bottom_vessel_boundary,\n", + " top_vessel_boundary,\n", + " top_reflector_boundary,\n", + " bottom_reflector_boundary):\n", + " radial_vessel_reg = +radial_reflector_boundary & -radial_vessel_boundary & -top_vessel_boundary & +bottom_vessel_boundary\n", + " bottom_vessel_reg = -radial_reflector_boundary & -bottom_reflector_boundary & +bottom_vessel_boundary\n", + " top_vessel_reg = -radial_reflector_boundary & -top_vessel_boundary & +top_reflector_boundary\n", + "\n", + " \n", + " c1 = openmc.Cell(fill=hast, region=radial_vessel_reg, name='radial_vessel_wall')\n", + " c2 = openmc.Cell(fill=hast, region=bottom_vessel_reg, name='bottom_vessel_wall')\n", + " c3 = openmc.Cell(fill=hast, region=top_vessel_reg, name='top_vessel_wall')\n", + " \n", + " return c1, c2, c3" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "cdf61881", + "metadata": {}, + "outputs": [], + "source": [ + "zone_bounds, core_bounds, reflector_bounds, vessel_bounds = shared_root_geometry()\n", + "\n", + "cr_boundary, zone_i_boundary, zone_ii_boundary = zone_bounds\n", + "annulus_boundary, lower_plenum_boundary, core_base, core_top = core_bounds\n", + "radial_reflector_boundary, bottom_reflector_boundary, top_reflector_boundary = reflector_bounds\n", + "radial_vessel_boundary, bottom_vessel_boundary, top_vessel_boundary= vessel_bounds\n", + "\n", + "main = main_lattice(zone_i_boundary, cr_boundary, core_base, core_top)\n", + "cr = cr_lattice(cr_boundary, core_base, core_top)\n", + "iib_m, iib_f = zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top)\n", + "a = annulus(zone_ii_boundary, annulus_boundary, core_base, core_top)\n", + "lp = lower_plenum(core_base, lower_plenum_boundary, annulus_boundary)\n", + "\n", + "rr, rb, rt = reflectors(annulus_boundary, \n", + " radial_reflector_boundary, \n", + " lower_plenum_boundary,\n", + " bottom_reflector_boundary, \n", + " core_top, \n", + " top_reflector_boundary)\n", + "\n", + "vr, vb, vt = vessel(radial_reflector_boundary,\n", + " radial_vessel_boundary,\n", + " bottom_vessel_boundary,\n", + " top_vessel_boundary,\n", + " top_reflector_boundary,\n", + " bottom_reflector_boundary)\n", + "\n", + "testuniverse = openmc.Universe()\n", + "testuniverse.add_cells([cr, main, iib_m, iib_f, lp, a, rr, rb, rt, vr, vb, vt])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "2a283441", + "metadata": { + "scrolled": false + }, + "outputs": [], + "source": [ + "#testuniverse.plot(width=(700,700),\n", + "# basis='xy',\n", + "# colors=colormap,\n", + "# origin=(0.,0.,200),\n", + "# color_by='material',\n", + "# pixels=(1000,1000))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "1fab3df4", + "metadata": {}, + "outputs": [], + "source": [ + "#testuniverse.plot(width=(700,650),\n", + "# basis='xz',\n", + "# colors=colormap,\n", + "# origin=(0.,0.,220),\n", + "# color_by='material',\n", + "# pixels=(1000,1000))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "6b0f4320", + "metadata": {}, + "outputs": [], + "source": [ + "geo = openmc.Geometry()\n", + "geo.root_universe = testuniverse\n", + "geo.remove_redundant_surfaces()\n", + "geo.export_to_xml()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ec266af0", + "metadata": {}, + "outputs": [], + "source": [ + "plots = openmc.Plots()\n", + "\n", + "plot = openmc.Plot(name='detail-zoneIA-IIA-lower1')\n", + "plot.origin=(215, 0, 10.0)\n", + "plot.width=(40, 40)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='detail-zoneIA-main')\n", + "plot.origin=(215, 0, 23.0)\n", + "plot.width=(40, 40)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='detail-zoneIIA-upper1')\n", + "plot.origin=(215, 0, 435)\n", + "plot.width=(40, 40)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='detail-zoneIA-upper1')\n", + "plot.origin=(215, 0, 420)\n", + "plot.width=(40, 40)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='detail-zoneIIA-upper2')\n", + "plot.origin=(215, 0, 437)\n", + "plot.width=(40, 40)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='detail-zoneIA-upper2')\n", + "plot.origin=(215, 0, 439)\n", + "plot.width=(40, 40)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='detail-zoneIIA-upper3')\n", + "plot.origin=(215, 0, 440)\n", + "plot.width=(40, 40)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='detail-zoneIA-upper3')\n", + "plot.origin=(215, 0, 448)\n", + "plot.width=(40, 40)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='detail-zoneIIA-upper4')\n", + "plot.origin=(215, 0, 442)\n", + "plot.width=(40, 40)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='full-zoneIA-IIA-lower1')\n", + "plot.origin=(0.0, 0, 10.0)\n", + "plot.width=(600, 600)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='full-zoneIA-main')\n", + "plot.origin=(0, 0, 23.0)\n", + "plot.width=(600, 600)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='full-zoneIIA-upper1')\n", + "plot.origin=(0, 0, 435)\n", + "plot.width=(600, 600)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='full-zoneIA-upper1')\n", + "plot.origin=(0, 0, 420)\n", + "plot.width=(600, 600)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='full-zoneIIA-upper2')\n", + "plot.origin=(0, 0, 437)\n", + "plot.width=(600, 600)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='full-zoneIA-upper2')\n", + "plot.origin=(0, 0, 439)\n", + "plot.width=(600, 600)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='full-zoneIIA-upper3')\n", + "plot.origin=(0, 0, 440)\n", + "plot.width=(600, 600)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='full-zoneIA-upper3')\n", + "plot.origin=(0, 0, 448)\n", + "plot.width=(600, 600)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='full-zoneIIA-upper4')\n", + "plot.origin=(0, 0, 442)\n", + "plot.width=(600, 600)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='core-xz-detail-upper')\n", + "plot.origin=(215, 0, 440)\n", + "plot.width=(100, 100)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xz'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='full-core-xz')\n", + "plot.origin=(0, 0, 200)\n", + "plot.width=(700, 700)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xz'\n", + "plots.append(plot)\n", + "\n", + "plots.export_to_xml()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "76ec95ac", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python [conda env:openmc-env] *", + "language": "python", + "name": "conda-env-openmc-env-py" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.6" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/examples/msbr/openmc_model.py b/examples/msbr/openmc_model.py new file mode 100644 index 000000000..76ea5675a --- /dev/null +++ b/examples/msbr/openmc_model.py @@ -0,0 +1,362 @@ +import openmc +import numpy as np + +from _core_elements import * +from _control_rods import * +from _root_geometry import * + +# Materials + +fuel = openmc.Material(name='fuel', temperature=900.0) +fuel.set_density('g/cm3', density=3.35) +fuel.add_components({'Li7': 0.0787474673879085, + 'Be9': 0.0225566879138321, + 'F19': 0.454003012179284, + 'Th232': 0.435579130482336, + 'U233': 0.00911370203663893}, + percent_type='wo') +fuel.depletable = True +fuel.volume = 48710000.0 + +moder = openmc.Material(name='graphite', temperature=900.0) +moder.set_density('g/cm3', density=1.84) +moder.add_nuclide('C0', 1.000, percent_type='wo') +moder.add_s_alpha_beta('c_Graphite') + +hast = openmc.Material(name='hastelloyN', temperature=900.0) +hast.set_density('g/cm3', density=8.671) +hast.add_components({'Al27': 0.003, + 'Ni': 0.677, + 'W': 0.250, + 'Cr': 0.070}, + percent_type='wo') + +mat = openmc.Materials(materials=[fuel, moder, hast]) +mat.export_to_xml() + +# Geometry +def cr_lattice(cr_boundary, core_base, core_top): + fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel = shared_cr_geometry() + elem_bound = openmc.rectangular_prism(7.62*2, 7.62*2) # Pin outer boundary + + f = control_rod(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel, moder, fuel) + e = control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel, moder, fuel) + + cr = openmc.RectLattice() + cr.pitch = np.array([15.24, 15.24]) + N = 2 / 2 + cr.lower_left = -1 * cr.pitch * N + cr.universes = [[f, e], + [e, f]] + c1 = openmc.Cell(fill=cr, region=(+core_base & -core_top & cr_boundary), name='cr_lattice') + + return c1 + +def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): + elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4 = shared_elem_geometry() + l = zoneIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4, moder, fuel, hast) + z = zoneIIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4, moder, fuel) + v = void_cell(elem_bound) + # tres, uno, dos, quatro + t, u, d, q = graphite_triangles(elem_bound, moder, fuel) + + main = openmc.RectLattice() + main.pitch = np.array([10.16, 10.16]) + N = 45 / 2 + main.lower_left = -1 * main.pitch * N + main.universes = [[v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, d, z, z, z, z, z, z, z, z, z, u, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, v, v, v, v, v, d, z, z, z, z, l, l, l, l, l, l, l, l, l, z, z, z, z, u, v, v, v, v, v, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, v, v, v, d, z, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, z, u, v, v, v, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v], + [v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v], + [v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v], + [v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v], + [v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v], + [v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v], + [v, v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v, v], + [v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v], + [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v], + [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v], + [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v], + [d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u], + [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], + [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], + [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], + [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, v, v, v, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], + [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, v, v, v, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], + [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, v, v, v, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], + [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], + [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], + [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], + [t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q], + [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v], + [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v], + [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v], + [v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v], + [v, v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v, v], + [v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v], + [v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v], + [v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v], + [v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v], + [v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v], + [v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, v, v, v, t, z, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, z, q, v, v, v, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, v, v, v, v, v, t, z, z, z, z, l, l, l, l, l, l, l, l, l, z, z, z, z, q, v, v, v, v, v, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, t, z, z, z, z, z, z, z, z, z, q, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v]] + c1 = openmc.Cell(fill=main, region=(+core_base & -core_top & zone_i_boundary & ~cr_boundary), name='main_lattice') + return c1 + +zone_bounds, core_bounds, reflector_bounds, vessel_bounds = shared_root_geometry() + +cr_boundary, zone_i_boundary, zone_ii_boundary = zone_bounds +annulus_boundary, lower_plenum_boundary, core_base, core_top = core_bounds +radial_reflector_boundary, bottom_reflector_boundary, top_reflector_boundary = reflector_bounds +radial_vessel_boundary, bottom_vessel_boundary, top_vessel_boundary= vessel_bounds + +main = main_lattice(zone_i_boundary, cr_boundary, core_base, core_top) +cr = cr_lattice(cr_boundary, core_base, core_top) +iib_m, iib_f = zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top, moder, fuel) +a = annulus(zone_ii_boundary, annulus_boundary, core_base, core_top, fuel) +lp = lower_plenum(core_base, lower_plenum_boundary, annulus_boundary, fuel) + +rr, rb, rt = reflectors(annulus_boundary, + radial_reflector_boundary, + lower_plenum_boundary, + bottom_reflector_boundary, + core_top, + top_reflector_boundary, + moder) + +vr, vb, vt = vessel(radial_reflector_boundary, + radial_vessel_boundary, + bottom_vessel_boundary, + top_vessel_boundary, + top_reflector_boundary, + bottom_reflector_boundary, + hast) + +geo = openmc.Geometry() +univ = openmc.Universe() +univ.add_cells([cr, main, iib_m, iib_f, lp, a, rr, rb, rt, vr, vb, vt]) + +geo.root_universe = univ +geo.export_to_xml() + +# Settings +settings = openmc.Settings() +settings.particles = 300 +settings.batches = 400 +settings.inative = 5 +settings.temperature = {'default': 900, 'method': 'interpolation'} + +# Plots +plots_3d = False +detail_pixels = (1000, 1000) +full_pixels = (10000, 10000) + +colormap = {moder: 'purple', + hast: 'blue', + fuel: 'yellow'} +## Slice plots +plots = openmc.Plots() + +plot = openmc.Plot(name='detail-zoneIA-IIA-lower1') +plot.origin=(215, 0, 10.0) +plot.width=(40, 40) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='detail-zoneIA-main') +plot.origin=(215, 0, 23.0) +plot.width=(40, 40) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='detail-zoneIIA-upper1') +plot.origin=(215, 0, 435) +plot.width=(40, 40) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='detail-zoneIA-upper1') +plot.origin=(215, 0, 420) +plot.width=(40, 40) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='detail-zoneIIA-upper2') +plot.origin=(215, 0, 437) +plot.width=(40, 40) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='detail-zoneIA-upper2') +plot.origin=(215, 0, 439) +plot.width=(40, 40) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='detail-zoneIIA-upper3') +plot.origin=(215, 0, 440) +plot.width=(40, 40) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='detail-zoneIA-upper3') +plot.origin=(215, 0, 448) +plot.width=(40, 40) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='detail-zoneIIA-upper4') +plot.origin=(215, 0, 442) +plot.width=(40, 40) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='full-zoneIA-IIA-lower1') +plot.origin=(0.0, 0, 10.0) +plot.width=(600, 600) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='full-zoneIA-main') +plot.origin=(0, 0, 23.0) +plot.width=(600, 600) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='full-zoneIIA-upper1') +plot.origin=(0, 0, 435) +plot.width=(600, 600) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='full-zoneIA-upper1') +plot.origin=(0, 0, 420) +plot.width=(600, 600) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='full-zoneIIA-upper2') +plot.origin=(0, 0, 437) +plot.width=(600, 600) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='full-zoneIA-upper2') +plot.origin=(0, 0, 439) +plot.width=(600, 600) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='full-zoneIIA-upper3') +plot.origin=(0, 0, 440) +plot.width=(600, 600) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='full-zoneIA-upper3') +plot.origin=(0, 0, 448) +plot.width=(600, 600) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='full-zoneIIA-upper4') +plot.origin=(0, 0, 442) +plot.width=(600, 600) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='core-xz-detail-upper') +plot.origin=(215, 0, 440) +plot.width=(100, 100) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xz' +plots.append(plot) + +plot = openmc.Plot(name='full-core-xz') +plot.origin=(0, 0, 200) +plot.width=(700, 700) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xz' +plots.append(plot) + +if plots_3d: + plot = openmc.Plot(name='full-core-3d') + plot.origin=(0,0,220) + plot.type = 'voxel' + plot.color_by='materials' + plot.colors=colormap + plot.width = (700., 700., 650.) + plot.pixels = (10000, 10000, 10000) + +plots = openmc.Plots() +plots.append(plot) +plots.export_to_xml() + +plots.export_to_xml() From 88c3d8d566714ce25f8038e66dd9f52ec15333e6 Mon Sep 17 00:00:00 2001 From: yardasol Date: Mon, 26 Sep 2022 16:22:13 -0500 Subject: [PATCH 02/62] typo fixes in process_j312.bash --- scripts/xsdata/process_j312.bash | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/scripts/xsdata/process_j312.bash b/scripts/xsdata/process_j312.bash index 838b61d27..49f07eee4 100644 --- a/scripts/xsdata/process_j312.bash +++ b/scripts/xsdata/process_j312.bash @@ -14,7 +14,8 @@ LN="https://www.oecd-nea.org/dbforms/data/eva/evatapes/jeff_31/JEFF312/ACE/" SLUG="ACEs_" EXT="K.zip" SLUG1="STL_ACEs.zip" -TEMPS=(900) +TEMPS=(800 900 1000) +BRC=$HOME/.bashrc #Uncomment for a good range of temperatures (will take a long time) #TEMPS=(500 600 800 900 1000 1200 1500) @@ -151,7 +152,7 @@ do fi # Run the xsdirconvert script - perl $XSDIR/xsdirconvert.pl $DATDIR/sss_jeff312.xsdir > $DATADIR/sss_jeff312.xsdata + perl $XSDIR/xsdirconvert.pl $DATADIR/sss_jeff312.xsdir > $DATADIR/sss_jeff312.xsdata # Add seprpent variables to PATH (to be created) echo "export SERPENT_DATA="$DATADIR"" >> $BRC From a7c208f63b20bc95058ce549e7e4e203e05d5913 Mon Sep 17 00:00:00 2001 From: yardasol Date: Mon, 26 Sep 2022 16:26:27 -0500 Subject: [PATCH 03/62] remove redundant surfacs in openmc_model.py --- examples/msbr/openmc_model.py | 1 + 1 file changed, 1 insertion(+) diff --git a/examples/msbr/openmc_model.py b/examples/msbr/openmc_model.py index 76ea5675a..dbd24d83d 100644 --- a/examples/msbr/openmc_model.py +++ b/examples/msbr/openmc_model.py @@ -146,6 +146,7 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): univ.add_cells([cr, main, iib_m, iib_f, lp, a, rr, rb, rt, vr, vb, vt]) geo.root_universe = univ +geo.remove_redundant_surfaces() geo.export_to_xml() # Settings From ebcacc725c88c05ffe8694aa01fab7e8c6252efa Mon Sep 17 00:00:00 2001 From: yardasol Date: Thu, 29 Sep 2022 14:06:45 -0500 Subject: [PATCH 04/62] add missing python files --- examples/msbr/_control_rods.py | 55 ++++++++++ examples/msbr/_core_elements.py | 178 ++++++++++++++++++++++++++++++++ examples/msbr/_root_geometry.py | 131 +++++++++++++++++++++++ 3 files changed, 364 insertions(+) create mode 100644 examples/msbr/_control_rods.py create mode 100644 examples/msbr/_core_elements.py create mode 100644 examples/msbr/_root_geometry.py diff --git a/examples/msbr/_control_rods.py b/examples/msbr/_control_rods.py new file mode 100644 index 000000000..0f9a9fafd --- /dev/null +++ b/examples/msbr/_control_rods.py @@ -0,0 +1,55 @@ +import openmc +import numpy as np + +def shared_cr_geometry(): + fuel_hole = openmc.ZCylinder(r=5.08, name='cr_fuel_hole') + elem_bound = openmc.rectangular_prism(7.62*2, 7.62*2) # Pin outer boundary + + gr_sq_neg = openmc.rectangular_prism(7.23646*2, 7.23646*2, corner_radius=0.99) # Graphite square + # params for + r_d = 1.16 + e_d = 2 * r_d / np.sqrt(3) + r_dt = 0.8 + r_c = 0.18 + l1 = 5.8801 + l2 = 6.505 + l3 = 8.03646 + ul = openmc.model.hexagonal_prism(origin=(-l1, l2), edge_length=e_d, orientation='x', corner_radius=r_c) + br = openmc.model.hexagonal_prism(origin=(l1, -l2), edge_length=e_d, orientation='x',corner_radius=r_c) + lb = openmc.model.hexagonal_prism(origin=(-l2, -l1), edge_length=e_d, orientation='y',corner_radius=r_c) + ru = openmc.model.hexagonal_prism(origin=(l2, l1), edge_length=e_d, orientation='y',corner_radius=r_c) + ul_t = openmc.ZCylinder(-l1, -l3, r_dt, name='corner_ul_tip') + br_t = openmc.ZCylinder(l1, l3, r_dt, name='corner_br_tip') + ru_t = openmc.ZCylinder(-l3, l1, r_dt, name='corner_ru_tip') + lb_t = openmc.ZCylinder(l3, -l1, r_dt, name='corner_lb_tip') + + gr_corners = elem_bound & (ul | br | lb | ru | + -ul_t | -br_t | -ru_t | -lb_t) + + inter_elem_channel = (~gr_sq_neg & elem_bound & + ~ul & ~br & ~lb & ~ru & + +ul_t & +ru_t & +ru_t & +lb_t) + + + return fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel + +def control_rod(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel, fuel, moder): + s1 = openmc.ZCylinder(r=4.7625, name='control_rod') + + c1 = openmc.Cell(fill=moder, region=-s1, name='control_rod') + c2 = openmc.Cell(fill=fuel, region=(+s1 & -fuel_hole), name='cr_fuel_inner') + moderator_block = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg | gr_corners), name='cr_moderator') + fuel_outer = openmc.Cell(fill=fuel, region=inter_elem_channel, name='cr_fuel_outer') + #universe_id=3 + cr = openmc.Universe(name='control_rod') + cr.add_cells([c1, c2, moderator_block, fuel_outer]) + return cr + +def control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel, fuel, moder): + c1 = openmc.Cell(fill=fuel, region=(-fuel_hole), name='crc_fuel_inner') + moderator_block = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg | gr_corners), name='crc_moderator') + fuel_outer = openmc.Cell(fill=fuel, region=inter_elem_channel, name='crc_fuel_outer') + # universe_id=4 + crc = openmc.Universe(name='control_rod_channel') + crc.add_cells([c1, moderator_block, fuel_outer]) + return crc diff --git a/examples/msbr/_core_elements.py b/examples/msbr/_core_elements.py new file mode 100644 index 000000000..e2b276814 --- /dev/null +++ b/examples/msbr/_core_elements.py @@ -0,0 +1,178 @@ +import openmc +import numpy as np + +def _bound_zone_cells(cells_tuples, levels): + """Helper function that moves Zone IA and Zone IIA cells to the + appropriate height.""" + cell_list = [] + for i, cells in enumerate(cells_tuples): + lower_bound = levels[i] + upper_bound = levels[i+1] + for j, cell in enumerate(cells): + cell.region = cell.region & +lower_bound & -upper_bound + cell_list.append(cell) + return cell_list + +def shared_elem_geometry(): + """Surfaces and regions shared by Zone IA and Zone IIA elements. + Specs found in Robertson, 1971 Fig 3.4 (p. 17) and Fig 3.5 (p.18)""" + + elem_bound = openmc.rectangular_prism(5.08*2, 5.08*2) # Pin outer boundary + + gr_sq_neg = openmc.rectangular_prism(4.953*2, 4.953*2, corner_radius=0.46) # Graphite square + + # params for main pin section for both I-A and II-A + r_d = 0.66802 + l1 = 4.28498 + l2 = 4.53898 + l3 = 5.62102 + ul = openmc.ZCylinder(-l1, l2, r_d, name='corner_ul') + br = openmc.ZCylinder(l1, -l2, r_d, name='corner_br') + lb = openmc.ZCylinder(-l2, -l1, r_d, name='corner_lb') + ru = openmc.ZCylinder(l2, l1, r_d, name='corner_ru') + ul_t = openmc.ZCylinder(-l1, -l3, r_d, name='corner_ul_tip') + br_t = openmc.ZCylinder(l1, l3, r_d, name='corner_br_tip') + ru_t = openmc.ZCylinder(-l3, l1, r_d, name='corner_ru_tip') + lb_t = openmc.ZCylinder(l3, -l1, r_d, name='corner_lb_tip') + + gr_corners = elem_bound & (-ul | -br | -lb | -ru | + -ul_t | -br_t | -ru_t | -lb_t) + + inter_elem_channel = (~gr_sq_neg & elem_bound & + +ul & +br & +lb & +ru & + +ul_t & +ru_t & +ru_t & +lb_t) + gr_round_4 = openmc.ZCylinder(r=2.2225, name='gr_round_4') + + return elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4 + +def zoneIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4, moder, fuel, hast): + """Zone IA element. Specs found in Robertson, 1971 Fig 3.4 (p. 17)""" + elem_levels = [0.0, 22.86, 419.10, 438.15, 445.135, 449.58] + level_bounds = [] + for level in elem_levels: + level_bounds.append(openmc.ZPlane(z0=level)) + s1 = openmc.ZCylinder(r=4.953, name='ia_gr_round_1') + s2 = openmc.ZCylinder(r=1.71069, name='ia_fuel_hole') + + h = 12.66 + theta = np.arctan(4.953 / h) + r2 = (1 / np.cos(theta))**2 - 1 + s3 = openmc.ZCone(z0=h + elem_levels[3], r2=r2, name='cone_i') + + c1 = openmc.Cell(fill=fuel, region=(-s2), name='ia_fuel_inner_1') + c2 = openmc.Cell(fill=moder, region=(+s2 & -s1), name='ia_moderator_1') + c3 = openmc.Cell(fill=fuel, region=(+s1 & elem_bound), name='ia_fuel_outer_1') + ia1 = (c1, c2, c3) + + # I-A main (lower 2) + c4 = c1.clone(clone_materials=False) + c4.name = 'ia_fuel_inner_main' + c5 = openmc.Cell(fill=moder, region=(+s2 & + gr_sq_neg | + gr_corners), name='ia_moderator_main') + c6 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='ia_fuel_outer_main') + iam = (c4, c5, c6) + + # I-A 2 (upper 1) + c7 = c1.clone(clone_materials=False) + c7.name = 'ia_fuel_inner_2' + c8 = c2.clone(clone_materials=False) + c8.name = 'ia_moderator_2' + c9 = c3.clone(clone_materials=False) + c9.name = 'ia_fuel_outer_2' + ia2 = (c7, c8, c9) + + # I-A 3 (upper 2) + c10 = c1.clone(clone_materials=False) + c10.name = 'ia_fuel_inner_3' + c11 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='ia_moderator_3') + c12 = openmc.Cell(fill=fuel, region=(+s3 & elem_bound), name='ia_fuel_outer_3') + ia3 = (c10, c11, c12) + + # I-A 4 (upper 3) + c13 = openmc.Cell(fill=hast, region=(-s2), name='ia_hast') + c14 = openmc.Cell(fill=moder, region=(+s2 & -gr_round_4), name='ia_moderator_4') + c15 = openmc.Cell(fill=fuel, region=(+gr_round_4 & elem_bound), name='ia_fuel_outer_4') + ia4 = (c13, c14, c15) + + elem_cells = [ia1, iam, ia2, ia3, ia4] + # universe_id=1 + ia = openmc.Universe(name='zone_ia') + ia.add_cells(_bound_zone_cells(elem_cells, level_bounds)) + return ia + +def zoneIIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4, moder, fuel): + """Zone IIA element. Specs found in Robertson, 1971 Fig 3.5 (p. 18)""" + elem_levels = [0.0, 434.34, 436.88, 439.42, 441.96, 449.58] + level_bounds = [] + for level in elem_levels: + level_bounds.append(openmc.ZPlane(z0=level)) + s1 = openmc.ZCylinder(r=3.302, name='iia_fuel_hole_main') # Hole with fuel salt - Fig 3.5, Roberton 1971 (3.27787 - p.47) + s2 = openmc.ZCylinder(r=0.635, name='iia_fuel_hole_2') + s3 = openmc.ZCylinder(r=3.65125, name='iia_gr_round_3') + h = 6.5 + theta = np.arctan(3.65125 / h) + r2 = (1 / np.cos(theta))**2 - 1 + s4 = openmc.ZCone(z0=h + elem_levels[3], r2=r2, name='cone_ii') + + # II-A main (lower 1) + c1 = openmc.Cell(fill=fuel, region=(-s1), name='iia_fuel_inner_main') + c2 = openmc.Cell(fill=moder, region=(+s1 & gr_sq_neg | gr_corners), name='iia_moderator_main') + c3 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='iia_fuel_outer_main') + c3.name = 'iia_fuel_outer_main' + iiam = (c1, c2, c3) + + # II-A 2 (upper 1) + c4 = openmc.Cell(fill=fuel, region=(-s2), name='iia_fuel_inner_2') + c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg | gr_corners), name='iia_moderator_2') + c6 = c3.clone(clone_materials=False) + c6.name = 'iia_fuel_outer_2' + iia2 = (c4, c5, c6) + + # II-A 3 (upper 2) + c7 = c4.clone(clone_materials=False) + c7.name = 'iia_fuel_inner_3' + c8 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='iia_moderator_3') + c9 = openmc.Cell(fill=fuel, region=(+s3 & elem_bound), name='iia_fuel_outer_3') + iia3 = (c7, c8, c9) + + # II-A 4 (upper 3) + c10 = openmc.Cell(fill=moder, region=(-s4), name='iia_moderator_4') + c11 = openmc.Cell(fill=fuel, region=(+s4 & elem_bound), name='iia_fuel_outer_4') + iia4 = (c10, c11) + + # II-A 5 (upper 4) + c12 = openmc.Cell(fill=moder, region=(-gr_round_4), name='iia_moderator_5') + c13 = openmc.Cell(fill=fuel, region=(+gr_round_4 & elem_bound), name='iia_fuel_outer_5') + iia5 = (c12, c13) + elem_cells = [iiam, iia2, iia3, iia4, iia5] + # universe_id=2 + iia = openmc.Universe(name='zone_iia') + iia.add_cells(_bound_zone_cells(elem_cells, level_bounds)) + return iia + +def void_cell(elem_bound): + c1 = openmc.Cell(region=elem_bound, name='lattice_void') + #universe_id=5 + v = openmc.Universe(name='lattice_void') + v.add_cell(c1) + return v + +def graphite_triangles(elem_bound, moder, fuel): + s1 = openmc.Plane(1.0, 1.0, 0.0, 0.0) + s2 = openmc.Plane(-1.0, 1.0, 0.0, 0.0) + s3 = openmc.Plane(1.0, -1.0, 0.0, 0.0) + s4 = openmc.Plane(-1.0, -1.0, 0.0, 0.0) + surfs = [(s4, 'bottom_left'), + (s1, 'top_right'), + (s2, 'top_left'), + (s3, 'bottom_right')] + univs = [] + for i, (s, name) in enumerate(surfs): + c1 = openmc.Cell(fill=moder, region=(-s & elem_bound)) + c2 = openmc.Cell(fill=fuel, region=(+s & elem_bound)) + # universe_id = 6+i + gr_tri = openmc.Universe(name=f'{name}_triangle') + gr_tri.add_cells([c1, c2]) + univs.append(gr_tri) + return univs diff --git a/examples/msbr/_root_geometry.py b/examples/msbr/_root_geometry.py new file mode 100644 index 000000000..d2cefcd21 --- /dev/null +++ b/examples/msbr/_root_geometry.py @@ -0,0 +1,131 @@ +import openmc +import numpy as np + +def shared_root_geometry(): + cr_boundary = openmc.model.rectangular_prism(15.24*2, 15.24*2) + core_base = openmc.ZPlane(z0=0.0, name='core_base') + core_top = openmc.ZPlane(z0=449.58, name='core_top') + + s1 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=208.28, r2=222.71, name='base_octader') + s2 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=218.44, r2=215.53, name='smaller_octader') + s3 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=228.60, r2=193.97, name='smallest_octader') + zone_i_boundary = -s1 | -s2 | -s3 + + zone_ii_boundary = openmc.ZCylinder(r=256.032, name='iib_boundary') + annulus_boundary = openmc.ZCylinder(r=261.112, name='annulus_boundary') + lower_plenum_boundary = openmc.ZPlane(z0=-7.62, name='lower_plenum_boundary') + + zone_bounds = (cr_boundary, zone_i_boundary, zone_ii_boundary) + core_bounds = (annulus_boundary, lower_plenum_boundary, core_base, core_top) + radial_reflector_boundary = openmc.ZCylinder(r=338.328, name='radial_reflector_boundary') + bottom_reflector_boundary = openmc.ZPlane(z0=-76.2, name='bottom_axial_reflector_boundary') + top_reflector_boundary = openmc.ZPlane(z0=525.78, name='top_axial_reflector_boundary') + reflector_bounds = (radial_reflector_boundary, + bottom_reflector_boundary, + top_reflector_boundary) + + radial_vessel_boundary = openmc.ZCylinder(r=343.408, name='radial_vessel_wall', boundary_type='vacuum') + bottom_vessel_boundary = openmc.ZPlane(z0=-81.28, name='bottom_vessel_wall', boundary_type='vacuum') + top_vessel_boundary = openmc.ZPlane(z0=530.86, name='top_vessel_wall', boundary_type='vacuum') + + vessel_bounds = (radial_vessel_boundary, + bottom_vessel_boundary, + top_vessel_boundary) + + return zone_bounds, core_bounds, reflector_bounds, vessel_bounds + +def zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top, moder, fuel): + # Large elements + large_angular_width = 3.538 + large_half_w = large_angular_width / 2 + large_positions = np.linspace(0, 315, 8) + r_outer = 256.032 + r_big1 = 229.6 + r_big2 = 223.6 + rb_1 = (r_big1, r_outer) + rb_2 = (r_big2, r_outer) + big_radii = [rb_1, rb_2] * 4 + small_radii = (207.28, r_outer) + + hole_coord = 242.679 + hole_region = +openmc.ZCylinder(x0=hole_coord, r=3.0875) + + # Small elements + small_angular_width = 0.96 + adjacent_angular_offset = 0.675 #27/40 + small_elems_per_octant = 25 + + zone_iib_reg = None + elem_cells = [] + for i, pos in enumerate(large_positions): + r1, r2 = big_radii[i] + t1 = pos - large_half_w + t2 = pos + large_half_w + large_elem = openmc.model.CylinderSector(r1, r2, t1, t2) + elem_hole = hole_region.rotate((0.0, 0.0, pos)) + elem_reg = -large_elem & elem_hole + if isinstance(zone_iib_reg, openmc.Region): + zone_iib_reg = zone_iib_reg | elem_reg + else: + zone_iib_reg = elem_reg + small_start = t2 + adjacent_angular_offset + r1, r2 = small_radii + t1 = small_start + for i in range(0, small_elems_per_octant): + t2 = t1 + small_angular_width + elem_reg = -openmc.model.CylinderSector(r1, r2, t1, t2) + pos = t2 - (small_angular_width / 2) + zone_iib_reg = zone_iib_reg | elem_reg + t1 = t2 + adjacent_angular_offset + c1 = openmc.Cell(fill=moder, region=(zone_iib_reg & + ~zone_i_boundary & + +core_base & + -core_top), name='iib_moderator') + c2 = openmc.Cell(fill=fuel, region=(~zone_iib_reg & + ~zone_i_boundary & + -zone_ii_boundary & + +core_base & + -core_top), name='iib_fuel') + return c1, c2 + +def annulus(zone_ii_boundary, annulus_boundary, core_base, core_top, fuel): + annulus_reg = +zone_ii_boundary & -annulus_boundary & +core_base & -core_top + c1 = openmc.Cell(fill=fuel, region=annulus_reg, name='annulus') + return c1 + +def lower_plenum(core_base, lower_plenum_boundary, annulus_boundary, fuel): + lower_plenum_reg = -core_base & +lower_plenum_boundary & -annulus_boundary + c1 = openmc.Cell(fill=fuel, region=lower_plenum_reg, name='lower_plenum') + return c1 + +def reflectors(annulus_boundary, + radial_reflector_boundary, + lower_plenum_boundary, + bottom_reflector_boundary, + core_top, + top_reflector_boundary, + moder): + radial_reflector_reg = +annulus_boundary & -radial_reflector_boundary & +bottom_reflector_boundary & -top_reflector_boundary + bottom_reflector_reg = -annulus_boundary & -lower_plenum_boundary & +bottom_reflector_boundary + top_reflector_reg = -annulus_boundary & +core_top & -top_reflector_boundary + + c1 = openmc.Cell(fill=moder, region=radial_reflector_reg, name='radial_reflector') + c2 = openmc.Cell(fill=moder, region=bottom_reflector_reg, name='bottom_axial_reflector') + c3 = openmc.Cell(fill=moder, region=top_reflector_reg, name='top_axial_reflector') + return c1, c2, c3 + +def vessel(radial_reflector_boundary, + radial_vessel_boundary, + bottom_vessel_boundary, + top_vessel_boundary, + top_reflector_boundary, + bottom_reflector_boundary, + hast): + radial_vessel_reg = +radial_reflector_boundary & -radial_vessel_boundary & -top_vessel_boundary & +bottom_vessel_boundary + bottom_vessel_reg = -radial_reflector_boundary & -bottom_reflector_boundary & +bottom_vessel_boundary + top_vessel_reg = -radial_reflector_boundary & -top_vessel_boundary & +top_reflector_boundary + + c1 = openmc.Cell(fill=hast, region=radial_vessel_reg, name='radial_vessel_wall') + c2 = openmc.Cell(fill=hast, region=bottom_vessel_reg, name='bottom_vessel_wall') + c3 = openmc.Cell(fill=hast, region=top_vessel_reg, name='top_vessel_wall') + return c1, c2, c3 From b6bf5240d2d3cf6199d394ce0ac7cc9dd90d39a4 Mon Sep 17 00:00:00 2001 From: yardasol Date: Thu, 29 Sep 2022 14:26:42 -0500 Subject: [PATCH 05/62] fix plot and settings generation --- examples/msbr/openmc_model.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/examples/msbr/openmc_model.py b/examples/msbr/openmc_model.py index dbd24d83d..21304c86e 100644 --- a/examples/msbr/openmc_model.py +++ b/examples/msbr/openmc_model.py @@ -155,6 +155,7 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): settings.batches = 400 settings.inative = 5 settings.temperature = {'default': 900, 'method': 'interpolation'} +settings.export_to_xml() # Plots plots_3d = False @@ -356,8 +357,6 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): plot.width = (700., 700., 650.) plot.pixels = (10000, 10000, 10000) -plots = openmc.Plots() -plots.append(plot) -plots.export_to_xml() + plots.append(plot) plots.export_to_xml() From dd2a0e17f3bf2c87a831761b80acd654ddff1a6f Mon Sep 17 00:00:00 2001 From: yardasol Date: Tue, 4 Oct 2022 10:05:24 -0500 Subject: [PATCH 06/62] use only 900K in process_j312.bash --- scripts/xsdata/process_j312.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/xsdata/process_j312.bash b/scripts/xsdata/process_j312.bash index 49f07eee4..61828b21a 100644 --- a/scripts/xsdata/process_j312.bash +++ b/scripts/xsdata/process_j312.bash @@ -14,7 +14,7 @@ LN="https://www.oecd-nea.org/dbforms/data/eva/evatapes/jeff_31/JEFF312/ACE/" SLUG="ACEs_" EXT="K.zip" SLUG1="STL_ACEs.zip" -TEMPS=(800 900 1000) +TEMPS=(900) BRC=$HOME/.bashrc #Uncomment for a good range of temperatures (will take a long time) From 46c0d25810231dc2fbdc0e77d5e25352e48942ad Mon Sep 17 00:00:00 2001 From: yardasol Date: Tue, 4 Oct 2022 10:48:49 -0500 Subject: [PATCH 07/62] add additional xsdata scripts; update xsdata readme --- scripts/README.md | 39 ++++++- scripts/xsdata/download_endfb71.bash | 101 ++++++++++++++++++ scripts/xsdata/process_endfb71_to_openmc.bash | 14 +++ 3 files changed, 152 insertions(+), 2 deletions(-) create mode 100644 scripts/xsdata/download_endfb71.bash create mode 100644 scripts/xsdata/process_endfb71_to_openmc.bash diff --git a/scripts/README.md b/scripts/README.md index 5f65875f7..86bcbc1e9 100644 --- a/scripts/README.md +++ b/scripts/README.md @@ -3,8 +3,12 @@ This directory contains various scripts to help you set-up and analyze results of your SaltProc simulations. ### `xsdata` -The script in this directory downloads and processes the JEFF -3.1.2 cross section library -- as well as spontaneous and delayed fission neutron and +The scripts in this directory downloads and processes cross sections data for +use in Serpent and OpenMC + +#### `process_jeff312.bash` +Downloads and processes the JEFF 3.1.2 cross section library -- as well as +spontaneous and delayed fission neutron and decay data -- for running the integration tests on a UNIX-like machine. @@ -23,3 +27,34 @@ XSDIR=[PATH TO XSDIR] bash process_j312.bash Where `XSDIR` is a path to the directory where you want to store the cross section libraries. Running the script without setting `XSDIR` will install the cross section library in the current working directory. + +#### `download_endfb71.bash` +Downloads and processes the endfb7x incident neutron data, and +ENDFB71 thermal scattering data in ACE format-- as well as +spontaneous and delayed fission neutron and +decay data -- for running Serpent models +on a UNIX-like machine. + +To run the script, execute +``` +XSDIR=[PATH TO XSDIR] bash download_endfb71.bash +``` + +Where `XSDIR` is a path to the directory where you want to store the cross +section libraries. Running the script without setting `XSDIR` will install the cross section library in the current working directory. + +#### `process_endfb71_to_openmc.bash` +Processes the endfb71 library created by the previous script into +OpenMC's HDF5 format for cross section data on a UNIX-like machine. + +*You must have installed OpenMC on your machine and have openmc repo on your +machine in order for this script to work* +Information about how to do this can be found [here](https://docs.openmc.org/en/latest/usersguide/install.html). + +To run the script, execute +``` +XSDIR=[PATH TO XSDIR] $OPENMC_ENV=[NAME OF OPENMC CONDA ENVIRONMENT] $OPENMC_DIR=[PATH TO OPENMC REPO] bash download_endfb71.bash +``` + +Where `XSDIR` is a path to the directory where you want to store the cross +section libraries. Running the script without setting `XSDIR` will install the cross section library in the current working directory. diff --git a/scripts/xsdata/download_endfb71.bash b/scripts/xsdata/download_endfb71.bash new file mode 100644 index 000000000..08e31562c --- /dev/null +++ b/scripts/xsdata/download_endfb71.bash @@ -0,0 +1,101 @@ +#! ~/bin/bash + +# Get conda working in non interactive shell +CONDA_PATH=$(conda info | grep -i 'base environment' | awk '{print $4}') +source $CONDA_PATH/etc/profile.d/conda.sh + +################ +### DOWNLOAD ### +################ +# DATADIR is the directory where the xs library is extracted to +# @yardasol reccomends naming the parent directory where the files +# will be extractd to as "jeff312" +if [[ -d "$XSDIR" ]] +then + DATADIR=$XSDIR/endfb71_ace +else + DATADIR=$PWD/endfb71_ace +fi +mkdir -p $DATADIR/acedata + +# ndy, decay, sfy data +LN="https://www.nndc.bnl.gov/endf-b7.1/zips/" +SLUG="ENDF-B-VII.1-" +DATA=("nfy" "decay" "sfy") +EXT=".zip" +for D in ${DATA[@]} +do + if [[ ! -f $DATADIR/$SLUG$D$EXT ]] + then + wget -P $DATADIR $LN$SLUG$D$EXT + fi + mkdir -p $DATADIR/$D + unzip -j $DATADIR/$SLUG$D$EXT -d $DATADIR/$D + touch $DATADIR/endfb71.$D + files=$(ls $DATADIR/$D/*.[Ee][Nn][Dd][Ff]) + for file in $files + do + cat $file >> $DATADIR/endfb71.$D + done +done + +# OpenMC depletion chain +#conda activate openmc-env +#python openmc_make_chain.py -D $DATADIR + +######################### +### SETUP .xsdir FILE ### +######################### +XSDIR_FILE=endfb71.xsdir +ACESLUG=https://www.nndc.bnl.gov/endf-b7.1/aceFiles/ +ACEGZ=ENDF-B-VII.1-tsl.tar.gz +if [[ ! -f $DATADIR/$ACEGZ ]] +then + wget -P $DATADIR $ACESLUG$ACEGZ +fi +tar -xOzf $DATADIR/$ACEGZ xsdir | cat > $DATADIR/$XSDIR_FILE + +# Make regex for DATADIR +DATADIR_REGEX=${DATADIR//\//\\\/} + +# Fix datapath +sed -i "s/datapath/datapath=$DATADIR_REGEX\/acedata/" $DATADIR/$XSDIR_FILE +#echo "datapath=$DATADIR/acedata" > $DATADIR/$XSDIR_FILE + +# Get cutoff line number +echo "Get cutoff" +LN="$(grep -n "directory" $DATADIR/$XSDIR_FILE)" +IFS=':' read -ra arr <<< "$LN" +LN=${arr[0]} + +# Remove unused directory paths +head -n$LN $DATADIR/$XSDIR_FILE | cat > $DATADIR/temp +cat $DATADIR/temp > $DATADIR/$XSDIR_FILE +rm $DATADIR/temp +#echo "directory" >> $DATADIR/$XSDIR_FILE + +# Neutron and thermal scattering data +LN="https://nucleardata.lanl.gov/lib/" +DATA=("endf71x" "ENDF71SaB") +EXT=".tgz" +for D in ${DATA[@]} +do + if [[ ! -f $DATADIR/$D$EXT ]] + then + wget -P $DATADIR $LN$D$EXT + fi + tar -xzf $DATADIR/"$D$EXT" -C $DATADIR --verbose + mv $DATADIR/$D/$D $DATADIR/acedata/. + + cat $DATADIR/$D/xsdir >> $DATADIR/$XSDIR_FILE +done + + +# download cross section dir convert script +if [[ ! -f $XSDIR/xsdirconvert.pl ]] +then + wget -O $XSDIR/xsdirconvert.pl http://montecarlo.vtt.fi/download/xsdirconvert.pl +fi + +# Run the xsdirconvert script +perl $XSDIR/xsdirconvert.pl $DATADIR/$XSDIR_FILE > $DATADIR/endfb71.xsdata diff --git a/scripts/xsdata/process_endfb71_to_openmc.bash b/scripts/xsdata/process_endfb71_to_openmc.bash new file mode 100644 index 000000000..bdd965b55 --- /dev/null +++ b/scripts/xsdata/process_endfb71_to_openmc.bash @@ -0,0 +1,14 @@ +# Get conda working in non interactive shell +CONDA_PATH=$(conda info | grep -i 'base environment' | awk '{print $4}') +source $CONDA_PATH/etc/profile.d/conda.sh + +if [[ -d "$XSDIR" ]] +then + DATADIR=$XSDIR/endfb71_h5 +else + DATADIR=$PWD/endfb71_h5 +fi +mkdir -p $DATADIR + +conda activate $OPENMC_ENV +python $OPENMCDIR/scripts/openmc-ace-to-hdf5 --xsdir $XSDIR/endfb71_ace/endfb71.xsdir -d $DATADIR From 670538fe2e44c6466e96a7ea6f48a2375486be81 Mon Sep 17 00:00:00 2001 From: yardasol Date: Tue, 4 Oct 2022 10:54:45 -0500 Subject: [PATCH 08/62] add endfb71 library compatible msbr example --- .../mats/msbr_saltproc_prepr_comp_endfb71.ini | 1333 +++++++++++++++++ examples/msbr/msbr_endfb71.serpent | 103 ++ scripts/README.md | 10 +- scripts/xsdata/download_endfb71.bash | 16 +- 4 files changed, 1455 insertions(+), 7 deletions(-) create mode 100644 examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71.ini create mode 100644 examples/msbr/msbr_endfb71.serpent diff --git a/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71.ini b/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71.ini new file mode 100644 index 000000000..1d6564c8f --- /dev/null +++ b/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71.ini @@ -0,0 +1,1333 @@ +% Material compositions (after 0.000000 days) + +mat fuel -3.350000000E+00 burn 1 fix 09c 900 vol 4.87100E+07 + 1001.82c -0.00000000000000E+00 + 1002.82c -0.00000000000000E+00 + 1003.82c -0.00000000000000E+00 + 2003.82c -0.00000000000000E+00 + 2004.82c -0.00000000000000E+00 + 20060 -0.00000000000000E+00 + 3006.82c -0.00000000000000E+00 + 3007.82c -7.87474673879085E-02 + 30080 -0.00000000000000E+00 + 30090 -0.00000000000000E+00 + 40080 -0.00000000000000E+00 + 4009.82c -2.25566879138321E-02 + 40100 -0.00000000000000E+00 + 40110 -0.00000000000000E+00 + 5010.82c -0.00000000000000E+00 + 5011.82c -0.00000000000000E+00 + 50120 -0.00000000000000E+00 + 6000.82c -0.00000000000000E+00 + 60130 -0.00000000000000E+00 + 60140 -0.00000000000000E+00 + 60150 -0.00000000000000E+00 + 70130 -0.00000000000000E+00 + 7014.82c -0.00000000000000E+00 + 7015.82c -0.00000000000000E+00 + 70160 -0.00000000000000E+00 + 70170 -0.00000000000000E+00 + 80150 -0.00000000000000E+00 + 8016.82c -0.00000000000000E+00 + 8017.82c -0.00000000000000E+00 + 80180 -0.00000000000000E+00 + 80190 -0.00000000000000E+00 + 90180 -0.00000000000000E+00 + 9019.82c -4.54003012179284E-01 + 90200 -0.00000000000000E+00 + 100200 -0.00000000000000E+00 + 240660 -0.00000000000000E+00 + 240670 -0.00000000000000E+00 + 250660 -0.00000000000000E+00 + 250670 -0.00000000000000E+00 + 250680 -0.00000000000000E+00 + 250690 -0.00000000000000E+00 + 260650 -0.00000000000000E+00 + 260660 -0.00000000000000E+00 + 260670 -0.00000000000000E+00 + 260680 -0.00000000000000E+00 + 260690 -0.00000000000000E+00 + 260700 -0.00000000000000E+00 + 260710 -0.00000000000000E+00 + 260720 -0.00000000000000E+00 + 270650 -0.00000000000000E+00 + 270660 -0.00000000000000E+00 + 270670 -0.00000000000000E+00 + 270680 -0.00000000000000E+00 + 270690 -0.00000000000000E+00 + 270700 -0.00000000000000E+00 + 270710 -0.00000000000000E+00 + 270720 -0.00000000000000E+00 + 270730 -0.00000000000000E+00 + 270740 -0.00000000000000E+00 + 270750 -0.00000000000000E+00 + 280650 -0.00000000000000E+00 + 280660 -0.00000000000000E+00 + 280670 -0.00000000000000E+00 + 280680 -0.00000000000000E+00 + 280690 -0.00000000000000E+00 + 280700 -0.00000000000000E+00 + 280710 -0.00000000000000E+00 + 280720 -0.00000000000000E+00 + 280730 -0.00000000000000E+00 + 280740 -0.00000000000000E+00 + 280750 -0.00000000000000E+00 + 280760 -0.00000000000000E+00 + 280770 -0.00000000000000E+00 + 280780 -0.00000000000000E+00 + 290650 -0.00000000000000E+00 + 290660 -0.00000000000000E+00 + 290670 -0.00000000000000E+00 + 290680 -0.00000000000000E+00 + 290681 -0.00000000000000E+00 + 290690 -0.00000000000000E+00 + 290700 -0.00000000000000E+00 + 290701 -0.00000000000000E+00 + 290710 -0.00000000000000E+00 + 290720 -0.00000000000000E+00 + 290730 -0.00000000000000E+00 + 290740 -0.00000000000000E+00 + 290750 -0.00000000000000E+00 + 290760 -0.00000000000000E+00 + 290770 -0.00000000000000E+00 + 290780 -0.00000000000000E+00 + 290790 -0.00000000000000E+00 + 290800 -0.00000000000000E+00 + 300650 -0.00000000000000E+00 + 300660 -0.00000000000000E+00 + 300670 -0.00000000000000E+00 + 300680 -0.00000000000000E+00 + 300690 -0.00000000000000E+00 + 300691 -0.00000000000000E+00 + 300700 -0.00000000000000E+00 + 300710 -0.00000000000000E+00 + 300711 -0.00000000000000E+00 + 300720 -0.00000000000000E+00 + 300730 -0.00000000000000E+00 + 300740 -0.00000000000000E+00 + 300750 -0.00000000000000E+00 + 300760 -0.00000000000000E+00 + 300770 -0.00000000000000E+00 + 300780 -0.00000000000000E+00 + 300790 -0.00000000000000E+00 + 300800 -0.00000000000000E+00 + 300810 -0.00000000000000E+00 + 300820 -0.00000000000000E+00 + 300830 -0.00000000000000E+00 + 310660 -0.00000000000000E+00 + 310670 -0.00000000000000E+00 + 310680 -0.00000000000000E+00 + 31069.82c -0.00000000000000E+00 + 310700 -0.00000000000000E+00 + 31071.82c -0.00000000000000E+00 + 310720 -0.00000000000000E+00 + 310730 -0.00000000000000E+00 + 310740 -0.00000000000000E+00 + 310741 -0.00000000000000E+00 + 310750 -0.00000000000000E+00 + 310760 -0.00000000000000E+00 + 310770 -0.00000000000000E+00 + 310780 -0.00000000000000E+00 + 310790 -0.00000000000000E+00 + 310800 -0.00000000000000E+00 + 310810 -0.00000000000000E+00 + 310820 -0.00000000000000E+00 + 310830 -0.00000000000000E+00 + 310840 -0.00000000000000E+00 + 310850 -0.00000000000000E+00 + 310860 -0.00000000000000E+00 + 320680 -0.00000000000000E+00 + 320690 -0.00000000000000E+00 + 32070.82c -0.00000000000000E+00 + 320710 -0.00000000000000E+00 + 320711 -0.00000000000000E+00 + 32072.82c -0.00000000000000E+00 + 32073.82c -0.00000000000000E+00 + 320731 -0.00000000000000E+00 + 32074.82c -0.00000000000000E+00 + 320750 -0.00000000000000E+00 + 320751 -0.00000000000000E+00 + 32076.82c -0.00000000000000E+00 + 320770 -0.00000000000000E+00 + 320771 -0.00000000000000E+00 + 320780 -0.00000000000000E+00 + 320790 -0.00000000000000E+00 + 320791 -0.00000000000000E+00 + 320800 -0.00000000000000E+00 + 320810 -0.00000000000000E+00 + 320820 -0.00000000000000E+00 + 320830 -0.00000000000000E+00 + 320840 -0.00000000000000E+00 + 320850 -0.00000000000000E+00 + 320860 -0.00000000000000E+00 + 320870 -0.00000000000000E+00 + 320880 -0.00000000000000E+00 + 320890 -0.00000000000000E+00 + 330710 -0.00000000000000E+00 + 330720 -0.00000000000000E+00 + 330730 -0.00000000000000E+00 + 33074.82c -0.00000000000000E+00 + 33075.82c -0.00000000000000E+00 + 330751 -0.00000000000000E+00 + 330760 -0.00000000000000E+00 + 330770 -0.00000000000000E+00 + 330780 -0.00000000000000E+00 + 330790 -0.00000000000000E+00 + 330800 -0.00000000000000E+00 + 330810 -0.00000000000000E+00 + 330820 -0.00000000000000E+00 + 330821 -0.00000000000000E+00 + 330830 -0.00000000000000E+00 + 330840 -0.00000000000000E+00 + 330850 -0.00000000000000E+00 + 330860 -0.00000000000000E+00 + 330870 -0.00000000000000E+00 + 330880 -0.00000000000000E+00 + 330890 -0.00000000000000E+00 + 330900 -0.00000000000000E+00 + 330910 -0.00000000000000E+00 + 330920 -0.00000000000000E+00 + 340730 -0.00000000000000E+00 + 340731 -0.00000000000000E+00 + 34074.82c -0.00000000000000E+00 + 340750 -0.00000000000000E+00 + 34076.82c -0.00000000000000E+00 + 34077.82c -0.00000000000000E+00 + 340771 -0.00000000000000E+00 + 34078.82c -0.00000000000000E+00 + 34079.82c -0.00000000000000E+00 + 340791 -0.00000000000000E+00 + 34080.82c -0.00000000000000E+00 + 340810 -0.00000000000000E+00 + 340811 -0.00000000000000E+00 + 34082.82c -0.00000000000000E+00 + 340830 -0.00000000000000E+00 + 340831 -0.00000000000000E+00 + 340840 -0.00000000000000E+00 + 340850 -0.00000000000000E+00 + 340860 -0.00000000000000E+00 + 340870 -0.00000000000000E+00 + 340880 -0.00000000000000E+00 + 340890 -0.00000000000000E+00 + 340900 -0.00000000000000E+00 + 340910 -0.00000000000000E+00 + 340920 -0.00000000000000E+00 + 340930 -0.00000000000000E+00 + 340940 -0.00000000000000E+00 + 350750 -0.00000000000000E+00 + 350760 -0.00000000000000E+00 + 350770 -0.00000000000000E+00 + 350771 -0.00000000000000E+00 + 350780 -0.00000000000000E+00 + 35079.82c -0.00000000000000E+00 + 350791 -0.00000000000000E+00 + 350800 -0.00000000000000E+00 + 350801 -0.00000000000000E+00 + 35081.82c -0.00000000000000E+00 + 350820 -0.00000000000000E+00 + 350821 -0.00000000000000E+00 + 350830 -0.00000000000000E+00 + 350840 -0.00000000000000E+00 + 350841 -0.00000000000000E+00 + 350850 -0.00000000000000E+00 + 350860 -0.00000000000000E+00 + 350870 -0.00000000000000E+00 + 350880 -0.00000000000000E+00 + 350890 -0.00000000000000E+00 + 350900 -0.00000000000000E+00 + 350910 -0.00000000000000E+00 + 350920 -0.00000000000000E+00 + 350930 -0.00000000000000E+00 + 350940 -0.00000000000000E+00 + 350950 -0.00000000000000E+00 + 350960 -0.00000000000000E+00 + 350970 -0.00000000000000E+00 + 360770 -0.00000000000000E+00 + 36078.82c -0.00000000000000E+00 + 360790 -0.00000000000000E+00 + 360791 -0.00000000000000E+00 + 36080.82c -0.00000000000000E+00 + 360810 -0.00000000000000E+00 + 360811 -0.00000000000000E+00 + 36082.82c -0.00000000000000E+00 + 36083.82c -0.00000000000000E+00 + 360831 -0.00000000000000E+00 + 36084.82c -0.00000000000000E+00 + 36085.82c -0.00000000000000E+00 + 360851 -0.00000000000000E+00 + 36086.82c -0.00000000000000E+00 + 360870 -0.00000000000000E+00 + 360880 -0.00000000000000E+00 + 360890 -0.00000000000000E+00 + 360900 -0.00000000000000E+00 + 360910 -0.00000000000000E+00 + 360920 -0.00000000000000E+00 + 360930 -0.00000000000000E+00 + 360940 -0.00000000000000E+00 + 360950 -0.00000000000000E+00 + 360960 -0.00000000000000E+00 + 360970 -0.00000000000000E+00 + 360980 -0.00000000000000E+00 + 360990 -0.00000000000000E+00 + 361000 -0.00000000000000E+00 + 370790 -0.00000000000000E+00 + 370810 -0.00000000000000E+00 + 370830 -0.00000000000000E+00 + 370840 -0.00000000000000E+00 + 37085.82c -0.00000000000000E+00 + 37086.82c -0.00000000000000E+00 + 370861 -0.00000000000000E+00 + 37087.82c -0.00000000000000E+00 + 370880 -0.00000000000000E+00 + 370890 -0.00000000000000E+00 + 370900 -0.00000000000000E+00 + 370901 -0.00000000000000E+00 + 370910 -0.00000000000000E+00 + 370920 -0.00000000000000E+00 + 370930 -0.00000000000000E+00 + 370940 -0.00000000000000E+00 + 370950 -0.00000000000000E+00 + 370960 -0.00000000000000E+00 + 370970 -0.00000000000000E+00 + 370980 -0.00000000000000E+00 + 370990 -0.00000000000000E+00 + 371000 -0.00000000000000E+00 + 371010 -0.00000000000000E+00 + 371020 -0.00000000000000E+00 + 380830 -0.00000000000000E+00 + 38084.82c -0.00000000000000E+00 + 380850 -0.00000000000000E+00 + 380851 -0.00000000000000E+00 + 38086.82c -0.00000000000000E+00 + 38087.82c -0.00000000000000E+00 + 380871 -0.00000000000000E+00 + 38088.82c -0.00000000000000E+00 + 38089.82c -0.00000000000000E+00 + 38090.82c -0.00000000000000E+00 + 380910 -0.00000000000000E+00 + 380920 -0.00000000000000E+00 + 380930 -0.00000000000000E+00 + 380940 -0.00000000000000E+00 + 380950 -0.00000000000000E+00 + 380960 -0.00000000000000E+00 + 380970 -0.00000000000000E+00 + 380980 -0.00000000000000E+00 + 380990 -0.00000000000000E+00 + 381000 -0.00000000000000E+00 + 381010 -0.00000000000000E+00 + 381020 -0.00000000000000E+00 + 381030 -0.00000000000000E+00 + 381040 -0.00000000000000E+00 + 381050 -0.00000000000000E+00 + 390850 -0.00000000000000E+00 + 390870 -0.00000000000000E+00 + 390871 -0.00000000000000E+00 + 390880 -0.00000000000000E+00 + 39089.82c -0.00000000000000E+00 + 390891 -0.00000000000000E+00 + 39090.82c -0.00000000000000E+00 + 390901 -0.00000000000000E+00 + 39091.82c -0.00000000000000E+00 + 390911 -0.00000000000000E+00 + 390920 -0.00000000000000E+00 + 390930 -0.00000000000000E+00 + 390931 -0.00000000000000E+00 + 390940 -0.00000000000000E+00 + 390950 -0.00000000000000E+00 + 390960 -0.00000000000000E+00 + 390961 -0.00000000000000E+00 + 390970 -0.00000000000000E+00 + 390980 -0.00000000000000E+00 + 390981 -0.00000000000000E+00 + 390990 -0.00000000000000E+00 + 391000 -0.00000000000000E+00 + 391010 -0.00000000000000E+00 + 391020 -0.00000000000000E+00 + 391030 -0.00000000000000E+00 + 391040 -0.00000000000000E+00 + 391050 -0.00000000000000E+00 + 391060 -0.00000000000000E+00 + 391070 -0.00000000000000E+00 + 391080 -0.00000000000000E+00 + 400870 -0.00000000000000E+00 + 400880 -0.00000000000000E+00 + 400890 -0.00000000000000E+00 + 400891 -0.00000000000000E+00 + 40090.82c -0.00000000000000E+00 + 400901 -0.00000000000000E+00 + 40091.82c -0.00000000000000E+00 + 40092.82c -0.00000000000000E+00 + 40093.82c -0.00000000000000E+00 + 40094.82c -0.00000000000000E+00 + 40095.82c -0.00000000000000E+00 + 40096.82c -0.00000000000000E+00 + 400970 -0.00000000000000E+00 + 400980 -0.00000000000000E+00 + 400990 -0.00000000000000E+00 + 401000 -0.00000000000000E+00 + 401010 -0.00000000000000E+00 + 401020 -0.00000000000000E+00 + 401030 -0.00000000000000E+00 + 401040 -0.00000000000000E+00 + 401050 -0.00000000000000E+00 + 401060 -0.00000000000000E+00 + 401070 -0.00000000000000E+00 + 401080 -0.00000000000000E+00 + 401090 -0.00000000000000E+00 + 401100 -0.00000000000000E+00 + 410890 -0.00000000000000E+00 + 410900 -0.00000000000000E+00 + 410910 -0.00000000000000E+00 + 410911 -0.00000000000000E+00 + 410920 -0.00000000000000E+00 + 41093.82c -0.00000000000000E+00 + 410931 -0.00000000000000E+00 + 41094.82c -0.00000000000000E+00 + 410941 -0.00000000000000E+00 + 41095.82c -0.00000000000000E+00 + 410951 -0.00000000000000E+00 + 410960 -0.00000000000000E+00 + 410970 -0.00000000000000E+00 + 410971 -0.00000000000000E+00 + 410980 -0.00000000000000E+00 + 410981 -0.00000000000000E+00 + 410990 -0.00000000000000E+00 + 410991 -0.00000000000000E+00 + 411000 -0.00000000000000E+00 + 411001 -0.00000000000000E+00 + 411010 -0.00000000000000E+00 + 411020 -0.00000000000000E+00 + 411021 -0.00000000000000E+00 + 411030 -0.00000000000000E+00 + 411040 -0.00000000000000E+00 + 411041 -0.00000000000000E+00 + 411050 -0.00000000000000E+00 + 411060 -0.00000000000000E+00 + 411070 -0.00000000000000E+00 + 411080 -0.00000000000000E+00 + 411090 -0.00000000000000E+00 + 411100 -0.00000000000000E+00 + 411110 -0.00000000000000E+00 + 411120 -0.00000000000000E+00 + 411130 -0.00000000000000E+00 + 420910 -0.00000000000000E+00 + 42092.82c -0.00000000000000E+00 + 420930 -0.00000000000000E+00 + 420931 -0.00000000000000E+00 + 42094.82c -0.00000000000000E+00 + 42095.82c -0.00000000000000E+00 + 42096.82c -0.00000000000000E+00 + 42097.82c -0.00000000000000E+00 + 42098.82c -0.00000000000000E+00 + 42099.82c -0.00000000000000E+00 + 42100.82c -0.00000000000000E+00 + 421010 -0.00000000000000E+00 + 421020 -0.00000000000000E+00 + 421030 -0.00000000000000E+00 + 421040 -0.00000000000000E+00 + 421050 -0.00000000000000E+00 + 421060 -0.00000000000000E+00 + 421070 -0.00000000000000E+00 + 421080 -0.00000000000000E+00 + 421090 -0.00000000000000E+00 + 421100 -0.00000000000000E+00 + 421110 -0.00000000000000E+00 + 421120 -0.00000000000000E+00 + 421130 -0.00000000000000E+00 + 421140 -0.00000000000000E+00 + 421150 -0.00000000000000E+00 + 430950 -0.00000000000000E+00 + 430951 -0.00000000000000E+00 + 430960 -0.00000000000000E+00 + 430970 -0.00000000000000E+00 + 430971 -0.00000000000000E+00 + 430980 -0.00000000000000E+00 + 43099.82c -0.00000000000000E+00 + 430991 -0.00000000000000E+00 + 431000 -0.00000000000000E+00 + 431010 -0.00000000000000E+00 + 431020 -0.00000000000000E+00 + 431021 -0.00000000000000E+00 + 431030 -0.00000000000000E+00 + 431040 -0.00000000000000E+00 + 431050 -0.00000000000000E+00 + 431060 -0.00000000000000E+00 + 431070 -0.00000000000000E+00 + 431080 -0.00000000000000E+00 + 431090 -0.00000000000000E+00 + 431100 -0.00000000000000E+00 + 431110 -0.00000000000000E+00 + 431120 -0.00000000000000E+00 + 431130 -0.00000000000000E+00 + 431140 -0.00000000000000E+00 + 431150 -0.00000000000000E+00 + 431160 -0.00000000000000E+00 + 431170 -0.00000000000000E+00 + 431180 -0.00000000000000E+00 + 440960 -0.00000000000000E+00 + 440970 -0.00000000000000E+00 + 44098.82c -0.00000000000000E+00 + 44099.82c -0.00000000000000E+00 + 44100.82c -0.00000000000000E+00 + 44101.82c -0.00000000000000E+00 + 44102.82c -0.00000000000000E+00 + 44103.82c -0.00000000000000E+00 + 44104.82c -0.00000000000000E+00 + 44105.82c -0.00000000000000E+00 + 44106.82c -0.00000000000000E+00 + 441070 -0.00000000000000E+00 + 441080 -0.00000000000000E+00 + 441090 -0.00000000000000E+00 + 441100 -0.00000000000000E+00 + 441110 -0.00000000000000E+00 + 441120 -0.00000000000000E+00 + 441130 -0.00000000000000E+00 + 441140 -0.00000000000000E+00 + 441150 -0.00000000000000E+00 + 441160 -0.00000000000000E+00 + 441170 -0.00000000000000E+00 + 441180 -0.00000000000000E+00 + 441190 -0.00000000000000E+00 + 441200 -0.00000000000000E+00 + 450990 -0.00000000000000E+00 + 451000 -0.00000000000000E+00 + 451010 -0.00000000000000E+00 + 451011 -0.00000000000000E+00 + 451020 -0.00000000000000E+00 + 451021 -0.00000000000000E+00 + 45103.82c -0.00000000000000E+00 + 451031 -0.00000000000000E+00 + 451040 -0.00000000000000E+00 + 451041 -0.00000000000000E+00 + 45105.82c -0.00000000000000E+00 + 451051 -0.00000000000000E+00 + 451060 -0.00000000000000E+00 + 451061 -0.00000000000000E+00 + 451070 -0.00000000000000E+00 + 451080 -0.00000000000000E+00 + 451081 -0.00000000000000E+00 + 451090 -0.00000000000000E+00 + 451100 -0.00000000000000E+00 + 451101 -0.00000000000000E+00 + 451110 -0.00000000000000E+00 + 451120 -0.00000000000000E+00 + 451130 -0.00000000000000E+00 + 451140 -0.00000000000000E+00 + 451150 -0.00000000000000E+00 + 451160 -0.00000000000000E+00 + 451170 -0.00000000000000E+00 + 451180 -0.00000000000000E+00 + 451190 -0.00000000000000E+00 + 451200 -0.00000000000000E+00 + 451210 -0.00000000000000E+00 + 451220 -0.00000000000000E+00 + 461000 -0.00000000000000E+00 + 461010 -0.00000000000000E+00 + 46102.82c -0.00000000000000E+00 + 461030 -0.00000000000000E+00 + 46104.82c -0.00000000000000E+00 + 46105.82c -0.00000000000000E+00 + 46106.82c -0.00000000000000E+00 + 46107.82c -0.00000000000000E+00 + 461071 -0.00000000000000E+00 + 46108.82c -0.00000000000000E+00 + 461090 -0.00000000000000E+00 + 461091 -0.00000000000000E+00 + 46110.82c -0.00000000000000E+00 + 461110 -0.00000000000000E+00 + 461111 -0.00000000000000E+00 + 461120 -0.00000000000000E+00 + 461130 -0.00000000000000E+00 + 461140 -0.00000000000000E+00 + 461150 -0.00000000000000E+00 + 461160 -0.00000000000000E+00 + 461170 -0.00000000000000E+00 + 461180 -0.00000000000000E+00 + 461190 -0.00000000000000E+00 + 461200 -0.00000000000000E+00 + 461210 -0.00000000000000E+00 + 461220 -0.00000000000000E+00 + 461230 -0.00000000000000E+00 + 461240 -0.00000000000000E+00 + 471030 -0.00000000000000E+00 + 471040 -0.00000000000000E+00 + 471050 -0.00000000000000E+00 + 471051 -0.00000000000000E+00 + 471060 -0.00000000000000E+00 + 471061 -0.00000000000000E+00 + 47107.82c -0.00000000000000E+00 + 471071 -0.00000000000000E+00 + 471080 -0.00000000000000E+00 + 471081 -0.00000000000000E+00 + 47109.82c -0.00000000000000E+00 + 471091 -0.00000000000000E+00 + 471100 -0.00000000000000E+00 + 47510.82c -0.00000000000000E+00 + 47111.82c -0.00000000000000E+00 + 471111 -0.00000000000000E+00 + 471120 -0.00000000000000E+00 + 471130 -0.00000000000000E+00 + 471131 -0.00000000000000E+00 + 471140 -0.00000000000000E+00 + 471150 -0.00000000000000E+00 + 471151 -0.00000000000000E+00 + 471160 -0.00000000000000E+00 + 471161 -0.00000000000000E+00 + 471170 -0.00000000000000E+00 + 471171 -0.00000000000000E+00 + 471180 -0.00000000000000E+00 + 471181 -0.00000000000000E+00 + 471190 -0.00000000000000E+00 + 471200 -0.00000000000000E+00 + 471201 -0.00000000000000E+00 + 471210 -0.00000000000000E+00 + 471220 -0.00000000000000E+00 + 471221 -0.00000000000000E+00 + 471230 -0.00000000000000E+00 + 471240 -0.00000000000000E+00 + 471250 -0.00000000000000E+00 + 471260 -0.00000000000000E+00 + 471270 -0.00000000000000E+00 + 471280 -0.00000000000000E+00 + 471290 -0.00000000000000E+00 + 471300 -0.00000000000000E+00 + 481040 -0.00000000000000E+00 + 481050 -0.00000000000000E+00 + 48106.82c -0.00000000000000E+00 + 481070 -0.00000000000000E+00 + 48108.82c -0.00000000000000E+00 + 481090 -0.00000000000000E+00 + 48110.82c -0.00000000000000E+00 + 48111.82c -0.00000000000000E+00 + 481111 -0.00000000000000E+00 + 48112.82c -0.00000000000000E+00 + 48113.82c -0.00000000000000E+00 + 481131 -0.00000000000000E+00 + 48114.82c -0.00000000000000E+00 + 481150 -0.00000000000000E+00 + 48515.82c -0.00000000000000E+00 + 48116.82c -0.00000000000000E+00 + 481170 -0.00000000000000E+00 + 481171 -0.00000000000000E+00 + 481180 -0.00000000000000E+00 + 481190 -0.00000000000000E+00 + 481191 -0.00000000000000E+00 + 481200 -0.00000000000000E+00 + 481210 -0.00000000000000E+00 + 481211 -0.00000000000000E+00 + 481220 -0.00000000000000E+00 + 481230 -0.00000000000000E+00 + 481231 -0.00000000000000E+00 + 481240 -0.00000000000000E+00 + 481250 -0.00000000000000E+00 + 481260 -0.00000000000000E+00 + 481270 -0.00000000000000E+00 + 481280 -0.00000000000000E+00 + 481290 -0.00000000000000E+00 + 481300 -0.00000000000000E+00 + 481310 -0.00000000000000E+00 + 481320 -0.00000000000000E+00 + 491090 -0.00000000000000E+00 + 491100 -0.00000000000000E+00 + 491101 -0.00000000000000E+00 + 491110 -0.00000000000000E+00 + 491111 -0.00000000000000E+00 + 491120 -0.00000000000000E+00 + 491121 -0.00000000000000E+00 + 49113.82c -0.00000000000000E+00 + 491131 -0.00000000000000E+00 + 491140 -0.00000000000000E+00 + 491141 -0.00000000000000E+00 + 49115.82c -0.00000000000000E+00 + 491151 -0.00000000000000E+00 + 491160 -0.00000000000000E+00 + 491161 -0.00000000000000E+00 + 491170 -0.00000000000000E+00 + 491171 -0.00000000000000E+00 + 491180 -0.00000000000000E+00 + 491181 -0.00000000000000E+00 + 491190 -0.00000000000000E+00 + 491191 -0.00000000000000E+00 + 491200 -0.00000000000000E+00 + 491201 -0.00000000000000E+00 + 491210 -0.00000000000000E+00 + 491211 -0.00000000000000E+00 + 491220 -0.00000000000000E+00 + 491221 -0.00000000000000E+00 + 491230 -0.00000000000000E+00 + 491231 -0.00000000000000E+00 + 491240 -0.00000000000000E+00 + 491241 -0.00000000000000E+00 + 491250 -0.00000000000000E+00 + 491251 -0.00000000000000E+00 + 491260 -0.00000000000000E+00 + 491261 -0.00000000000000E+00 + 491270 -0.00000000000000E+00 + 491271 -0.00000000000000E+00 + 491280 -0.00000000000000E+00 + 491281 -0.00000000000000E+00 + 491290 -0.00000000000000E+00 + 491291 -0.00000000000000E+00 + 491300 -0.00000000000000E+00 + 491310 -0.00000000000000E+00 + 491320 -0.00000000000000E+00 + 491330 -0.00000000000000E+00 + 491340 -0.00000000000000E+00 + 491350 -0.00000000000000E+00 + 501100 -0.00000000000000E+00 + 501110 -0.00000000000000E+00 + 50112.82c -0.00000000000000E+00 + 50113.82c -0.00000000000000E+00 + 501131 -0.00000000000000E+00 + 50114.82c -0.00000000000000E+00 + 50115.82c -0.00000000000000E+00 + 50116.82c -0.00000000000000E+00 + 50117.82c -0.00000000000000E+00 + 501171 -0.00000000000000E+00 + 50118.82c -0.00000000000000E+00 + 50119.82c -0.00000000000000E+00 + 501191 -0.00000000000000E+00 + 50120.82c -0.00000000000000E+00 + 501210 -0.00000000000000E+00 + 501211 -0.00000000000000E+00 + 50122.82c -0.00000000000000E+00 + 50123.82c -0.00000000000000E+00 + 501231 -0.00000000000000E+00 + 50124.82c -0.00000000000000E+00 + 50125.82c -0.00000000000000E+00 + 501251 -0.00000000000000E+00 + 50126.82c -0.00000000000000E+00 + 501270 -0.00000000000000E+00 + 501271 -0.00000000000000E+00 + 501280 -0.00000000000000E+00 + 501281 -0.00000000000000E+00 + 501290 -0.00000000000000E+00 + 501291 -0.00000000000000E+00 + 501300 -0.00000000000000E+00 + 501301 -0.00000000000000E+00 + 501310 -0.00000000000000E+00 + 501311 -0.00000000000000E+00 + 501320 -0.00000000000000E+00 + 501330 -0.00000000000000E+00 + 501340 -0.00000000000000E+00 + 501350 -0.00000000000000E+00 + 501360 -0.00000000000000E+00 + 501370 -0.00000000000000E+00 + 511150 -0.00000000000000E+00 + 511170 -0.00000000000000E+00 + 511180 -0.00000000000000E+00 + 511181 -0.00000000000000E+00 + 511190 -0.00000000000000E+00 + 511200 -0.00000000000000E+00 + 511201 -0.00000000000000E+00 + 51121.82c -0.00000000000000E+00 + 511220 -0.00000000000000E+00 + 511221 -0.00000000000000E+00 + 51123.82c -0.00000000000000E+00 + 51124.82c -0.00000000000000E+00 + 511241 -0.00000000000000E+00 + 51125.82c -0.00000000000000E+00 + 51126.82c -0.00000000000000E+00 + 511261 -0.00000000000000E+00 + 511270 -0.00000000000000E+00 + 511280 -0.00000000000000E+00 + 511281 -0.00000000000000E+00 + 511290 -0.00000000000000E+00 + 511300 -0.00000000000000E+00 + 511301 -0.00000000000000E+00 + 511310 -0.00000000000000E+00 + 511320 -0.00000000000000E+00 + 511321 -0.00000000000000E+00 + 511330 -0.00000000000000E+00 + 511340 -0.00000000000000E+00 + 511341 -0.00000000000000E+00 + 511350 -0.00000000000000E+00 + 511360 -0.00000000000000E+00 + 511370 -0.00000000000000E+00 + 511380 -0.00000000000000E+00 + 511390 -0.00000000000000E+00 + 521180 -0.00000000000000E+00 + 521190 -0.00000000000000E+00 + 52120.82c -0.00000000000000E+00 + 521210 -0.00000000000000E+00 + 521211 -0.00000000000000E+00 + 52122.82c -0.00000000000000E+00 + 52123.82c -0.00000000000000E+00 + 521231 -0.00000000000000E+00 + 52124.82c -0.00000000000000E+00 + 52125.82c -0.00000000000000E+00 + 521251 -0.00000000000000E+00 + 52126.82c -0.00000000000000E+00 + 521270 -0.00000000000000E+00 + 52527.82c -0.00000000000000E+00 + 52128.82c -0.00000000000000E+00 + 521290 -0.00000000000000E+00 + 52529.82c -0.00000000000000E+00 + 52130.82c -0.00000000000000E+00 + 521310 -0.00000000000000E+00 + 521311 -0.00000000000000E+00 + 52132.82c -0.00000000000000E+00 + 521330 -0.00000000000000E+00 + 521331 -0.00000000000000E+00 + 521340 -0.00000000000000E+00 + 521350 -0.00000000000000E+00 + 521360 -0.00000000000000E+00 + 521370 -0.00000000000000E+00 + 521380 -0.00000000000000E+00 + 521390 -0.00000000000000E+00 + 521400 -0.00000000000000E+00 + 521410 -0.00000000000000E+00 + 521420 -0.00000000000000E+00 + 531210 -0.00000000000000E+00 + 531230 -0.00000000000000E+00 + 531240 -0.00000000000000E+00 + 531250 -0.00000000000000E+00 + 531260 -0.00000000000000E+00 + 53127.82c -0.00000000000000E+00 + 531280 -0.00000000000000E+00 + 53129.82c -0.00000000000000E+00 + 53130.82c -0.00000000000000E+00 + 531301 -0.00000000000000E+00 + 53131.82c -0.00000000000000E+00 + 531320 -0.00000000000000E+00 + 531321 -0.00000000000000E+00 + 531330 -0.00000000000000E+00 + 531331 -0.00000000000000E+00 + 531340 -0.00000000000000E+00 + 531341 -0.00000000000000E+00 + 53135.82c -0.00000000000000E+00 + 531360 -0.00000000000000E+00 + 531361 -0.00000000000000E+00 + 531370 -0.00000000000000E+00 + 531380 -0.00000000000000E+00 + 531390 -0.00000000000000E+00 + 531400 -0.00000000000000E+00 + 531410 -0.00000000000000E+00 + 531420 -0.00000000000000E+00 + 531430 -0.00000000000000E+00 + 531440 -0.00000000000000E+00 + 541240 -0.00000000000000E+00 + 541250 -0.00000000000000E+00 + 541251 -0.00000000000000E+00 + 54126.82c -0.00000000000000E+00 + 541270 -0.00000000000000E+00 + 541271 -0.00000000000000E+00 + 54128.82c -0.00000000000000E+00 + 54129.82c -0.00000000000000E+00 + 541291 -0.00000000000000E+00 + 54130.82c -0.00000000000000E+00 + 54131.82c -0.00000000000000E+00 + 541311 -0.00000000000000E+00 + 54132.82c -0.00000000000000E+00 + 54133.82c -0.00000000000000E+00 + 541331 -0.00000000000000E+00 + 54134.82c -0.00000000000000E+00 + 541341 -0.00000000000000E+00 + 54135.82c -0.00000000000000E+00 + 541351 -0.00000000000000E+00 + 54136.82c -0.00000000000000E+00 + 541370 -0.00000000000000E+00 + 541380 -0.00000000000000E+00 + 541390 -0.00000000000000E+00 + 541400 -0.00000000000000E+00 + 541410 -0.00000000000000E+00 + 541420 -0.00000000000000E+00 + 541430 -0.00000000000000E+00 + 541440 -0.00000000000000E+00 + 541450 -0.00000000000000E+00 + 541460 -0.00000000000000E+00 + 541470 -0.00000000000000E+00 + 551270 -0.00000000000000E+00 + 551290 -0.00000000000000E+00 + 551300 -0.00000000000000E+00 + 551310 -0.00000000000000E+00 + 551320 -0.00000000000000E+00 + 55133.82c -0.00000000000000E+00 + 55134.82c -0.00000000000000E+00 + 551341 -0.00000000000000E+00 + 55135.82c -0.00000000000000E+00 + 551351 -0.00000000000000E+00 + 55136.82c -0.00000000000000E+00 + 551361 -0.00000000000000E+00 + 55137.82c -0.00000000000000E+00 + 551380 -0.00000000000000E+00 + 551381 -0.00000000000000E+00 + 551390 -0.00000000000000E+00 + 551400 -0.00000000000000E+00 + 551410 -0.00000000000000E+00 + 551420 -0.00000000000000E+00 + 551430 -0.00000000000000E+00 + 551440 -0.00000000000000E+00 + 551450 -0.00000000000000E+00 + 551460 -0.00000000000000E+00 + 551470 -0.00000000000000E+00 + 551480 -0.00000000000000E+00 + 551490 -0.00000000000000E+00 + 551500 -0.00000000000000E+00 + 551510 -0.00000000000000E+00 + 561290 -0.00000000000000E+00 + 561300 -0.00000000000000E+00 + 561310 -0.00000000000000E+00 + 56132.82c -0.00000000000000E+00 + 56133.82c -0.00000000000000E+00 + 561331 -0.00000000000000E+00 + 56134.82c -0.00000000000000E+00 + 56135.82c -0.00000000000000E+00 + 561351 -0.00000000000000E+00 + 56136.82c -0.00000000000000E+00 + 561361 -0.00000000000000E+00 + 56137.82c -0.00000000000000E+00 + 561371 -0.00000000000000E+00 + 56138.82c -0.00000000000000E+00 + 561390 -0.00000000000000E+00 + 56140.82c -0.00000000000000E+00 + 561410 -0.00000000000000E+00 + 561420 -0.00000000000000E+00 + 561430 -0.00000000000000E+00 + 561440 -0.00000000000000E+00 + 561450 -0.00000000000000E+00 + 561460 -0.00000000000000E+00 + 561470 -0.00000000000000E+00 + 561480 -0.00000000000000E+00 + 561490 -0.00000000000000E+00 + 561500 -0.00000000000000E+00 + 561510 -0.00000000000000E+00 + 561520 -0.00000000000000E+00 + 561530 -0.00000000000000E+00 + 571330 -0.00000000000000E+00 + 571350 -0.00000000000000E+00 + 571360 -0.00000000000000E+00 + 571370 -0.00000000000000E+00 + 57138.82c -0.00000000000000E+00 + 57139.82c -0.00000000000000E+00 + 57140.82c -0.00000000000000E+00 + 571410 -0.00000000000000E+00 + 571420 -0.00000000000000E+00 + 571430 -0.00000000000000E+00 + 571440 -0.00000000000000E+00 + 571450 -0.00000000000000E+00 + 571460 -0.00000000000000E+00 + 571461 -0.00000000000000E+00 + 571470 -0.00000000000000E+00 + 571480 -0.00000000000000E+00 + 571490 -0.00000000000000E+00 + 571500 -0.00000000000000E+00 + 571510 -0.00000000000000E+00 + 571520 -0.00000000000000E+00 + 571530 -0.00000000000000E+00 + 571540 -0.00000000000000E+00 + 571550 -0.00000000000000E+00 + 581350 -0.00000000000000E+00 + 581360 -0.00000000000000E+00 + 581370 -0.00000000000000E+00 + 58138.82c -0.00000000000000E+00 + 58139.82c -0.00000000000000E+00 + 581391 -0.00000000000000E+00 + 58140.82c -0.00000000000000E+00 + 58141.82c -0.00000000000000E+00 + 58142.82c -0.00000000000000E+00 + 58143.82c -0.00000000000000E+00 + 58144.82c -0.00000000000000E+00 + 581450 -0.00000000000000E+00 + 581460 -0.00000000000000E+00 + 581470 -0.00000000000000E+00 + 581480 -0.00000000000000E+00 + 581490 -0.00000000000000E+00 + 581500 -0.00000000000000E+00 + 581510 -0.00000000000000E+00 + 581520 -0.00000000000000E+00 + 581530 -0.00000000000000E+00 + 581540 -0.00000000000000E+00 + 581550 -0.00000000000000E+00 + 581560 -0.00000000000000E+00 + 581570 -0.00000000000000E+00 + 591390 -0.00000000000000E+00 + 591400 -0.00000000000000E+00 + 59141.82c -0.00000000000000E+00 + 59142.82c -0.00000000000000E+00 + 591421 -0.00000000000000E+00 + 59143.82c -0.00000000000000E+00 + 591440 -0.00000000000000E+00 + 591441 -0.00000000000000E+00 + 591450 -0.00000000000000E+00 + 591460 -0.00000000000000E+00 + 591470 -0.00000000000000E+00 + 591480 -0.00000000000000E+00 + 591481 -0.00000000000000E+00 + 591490 -0.00000000000000E+00 + 591500 -0.00000000000000E+00 + 591510 -0.00000000000000E+00 + 591520 -0.00000000000000E+00 + 591530 -0.00000000000000E+00 + 591540 -0.00000000000000E+00 + 591550 -0.00000000000000E+00 + 591560 -0.00000000000000E+00 + 591570 -0.00000000000000E+00 + 591580 -0.00000000000000E+00 + 591590 -0.00000000000000E+00 + 601390 -0.00000000000000E+00 + 601400 -0.00000000000000E+00 + 601410 -0.00000000000000E+00 + 60142.82c -0.00000000000000E+00 + 60143.82c -0.00000000000000E+00 + 60144.82c -0.00000000000000E+00 + 60145.82c -0.00000000000000E+00 + 60146.82c -0.00000000000000E+00 + 60147.82c -0.00000000000000E+00 + 60148.82c -0.00000000000000E+00 + 601490 -0.00000000000000E+00 + 60150.82c -0.00000000000000E+00 + 601510 -0.00000000000000E+00 + 601520 -0.00000000000000E+00 + 601530 -0.00000000000000E+00 + 601540 -0.00000000000000E+00 + 601550 -0.00000000000000E+00 + 601560 -0.00000000000000E+00 + 601570 -0.00000000000000E+00 + 601580 -0.00000000000000E+00 + 601590 -0.00000000000000E+00 + 601600 -0.00000000000000E+00 + 601610 -0.00000000000000E+00 + 611410 -0.00000000000000E+00 + 611420 -0.00000000000000E+00 + 611430 -0.00000000000000E+00 + 611440 -0.00000000000000E+00 + 611450 -0.00000000000000E+00 + 611460 -0.00000000000000E+00 + 61147.82c -0.00000000000000E+00 + 61148.82c -0.00000000000000E+00 + 61548.82c -0.00000000000000E+00 + 61149.82c -0.00000000000000E+00 + 611500 -0.00000000000000E+00 + 61151.82c -0.00000000000000E+00 + 611520 -0.00000000000000E+00 + 611521 -0.00000000000000E+00 + 611530 -0.00000000000000E+00 + 611540 -0.00000000000000E+00 + 611541 -0.00000000000000E+00 + 611550 -0.00000000000000E+00 + 611560 -0.00000000000000E+00 + 611570 -0.00000000000000E+00 + 611580 -0.00000000000000E+00 + 611590 -0.00000000000000E+00 + 611600 -0.00000000000000E+00 + 611610 -0.00000000000000E+00 + 611620 -0.00000000000000E+00 + 611630 -0.00000000000000E+00 + 621420 -0.00000000000000E+00 + 621430 -0.00000000000000E+00 + 62144.82c -0.00000000000000E+00 + 621450 -0.00000000000000E+00 + 621460 -0.00000000000000E+00 + 62147.82c -0.00000000000000E+00 + 62148.82c -0.00000000000000E+00 + 62149.82c -0.00000000000000E+00 + 62150.82c -0.00000000000000E+00 + 62151.82c -0.00000000000000E+00 + 62152.82c -0.00000000000000E+00 + 62153.82c -0.00000000000000E+00 + 62154.82c -0.00000000000000E+00 + 621550 -0.00000000000000E+00 + 621560 -0.00000000000000E+00 + 621570 -0.00000000000000E+00 + 621580 -0.00000000000000E+00 + 621590 -0.00000000000000E+00 + 621600 -0.00000000000000E+00 + 621610 -0.00000000000000E+00 + 621620 -0.00000000000000E+00 + 621630 -0.00000000000000E+00 + 621640 -0.00000000000000E+00 + 621650 -0.00000000000000E+00 + 631470 -0.00000000000000E+00 + 631490 -0.00000000000000E+00 + 631500 -0.00000000000000E+00 + 63151.82c -0.00000000000000E+00 + 63152.82c -0.00000000000000E+00 + 631521 -0.00000000000000E+00 + 63153.82c -0.00000000000000E+00 + 63154.82c -0.00000000000000E+00 + 631541 -0.00000000000000E+00 + 63155.82c -0.00000000000000E+00 + 63156.82c -0.00000000000000E+00 + 63157.82c -0.00000000000000E+00 + 631580 -0.00000000000000E+00 + 631590 -0.00000000000000E+00 + 631600 -0.00000000000000E+00 + 631610 -0.00000000000000E+00 + 631620 -0.00000000000000E+00 + 631630 -0.00000000000000E+00 + 631640 -0.00000000000000E+00 + 631650 -0.00000000000000E+00 + 631660 -0.00000000000000E+00 + 631670 -0.00000000000000E+00 + 641490 -0.00000000000000E+00 + 641500 -0.00000000000000E+00 + 641510 -0.00000000000000E+00 + 64152.82c -0.00000000000000E+00 + 64153.82c -0.00000000000000E+00 + 64154.82c -0.00000000000000E+00 + 64155.82c -0.00000000000000E+00 + 64156.82c -0.00000000000000E+00 + 64157.82c -0.00000000000000E+00 + 64158.82c -0.00000000000000E+00 + 641590 -0.00000000000000E+00 + 64160.82c -0.00000000000000E+00 + 641610 -0.00000000000000E+00 + 641620 -0.00000000000000E+00 + 641630 -0.00000000000000E+00 + 641640 -0.00000000000000E+00 + 641650 -0.00000000000000E+00 + 641660 -0.00000000000000E+00 + 641670 -0.00000000000000E+00 + 641680 -0.00000000000000E+00 + 641690 -0.00000000000000E+00 + 651510 -0.00000000000000E+00 + 651530 -0.00000000000000E+00 + 651540 -0.00000000000000E+00 + 651550 -0.00000000000000E+00 + 651560 -0.00000000000000E+00 + 651561 -0.00000000000000E+00 + 651570 -0.00000000000000E+00 + 651580 -0.00000000000000E+00 + 651581 -0.00000000000000E+00 + 65159.82c -0.00000000000000E+00 + 65160.82c -0.00000000000000E+00 + 651610 -0.00000000000000E+00 + 651620 -0.00000000000000E+00 + 651630 -0.00000000000000E+00 + 651640 -0.00000000000000E+00 + 651650 -0.00000000000000E+00 + 651660 -0.00000000000000E+00 + 651670 -0.00000000000000E+00 + 651680 -0.00000000000000E+00 + 651690 -0.00000000000000E+00 + 651700 -0.00000000000000E+00 + 651710 -0.00000000000000E+00 + 661540 -0.00000000000000E+00 + 661550 -0.00000000000000E+00 + 66156.82c -0.00000000000000E+00 + 661570 -0.00000000000000E+00 + 66158.82c -0.00000000000000E+00 + 661590 -0.00000000000000E+00 + 66160.82c -0.00000000000000E+00 + 66161.82c -0.00000000000000E+00 + 66162.82c -0.00000000000000E+00 + 66163.82c -0.00000000000000E+00 + 66164.82c -0.00000000000000E+00 + 661650 -0.00000000000000E+00 + 661651 -0.00000000000000E+00 + 661660 -0.00000000000000E+00 + 661670 -0.00000000000000E+00 + 661680 -0.00000000000000E+00 + 661690 -0.00000000000000E+00 + 661700 -0.00000000000000E+00 + 661710 -0.00000000000000E+00 + 661720 -0.00000000000000E+00 + 671590 -0.00000000000000E+00 + 671591 -0.00000000000000E+00 + 671600 -0.00000000000000E+00 + 671601 -0.00000000000000E+00 + 671610 -0.00000000000000E+00 + 671611 -0.00000000000000E+00 + 671620 -0.00000000000000E+00 + 671621 -0.00000000000000E+00 + 671630 -0.00000000000000E+00 + 671631 -0.00000000000000E+00 + 671640 -0.00000000000000E+00 + 671641 -0.00000000000000E+00 + 67165.82c -0.00000000000000E+00 + 671660 -0.00000000000000E+00 + 67566.82c -0.00000000000000E+00 + 671670 -0.00000000000000E+00 + 671680 -0.00000000000000E+00 + 671690 -0.00000000000000E+00 + 671700 -0.00000000000000E+00 + 671701 -0.00000000000000E+00 + 671710 -0.00000000000000E+00 + 671720 -0.00000000000000E+00 + 681600 -0.00000000000000E+00 + 681610 -0.00000000000000E+00 + 68162.82c -0.00000000000000E+00 + 681630 -0.00000000000000E+00 + 68164.82c -0.00000000000000E+00 + 681650 -0.00000000000000E+00 + 68166.82c -0.00000000000000E+00 + 68167.82c -0.00000000000000E+00 + 681671 -0.00000000000000E+00 + 68168.82c -0.00000000000000E+00 + 681690 -0.00000000000000E+00 + 68170.82c -0.00000000000000E+00 + 681710 -0.00000000000000E+00 + 681720 -0.00000000000000E+00 + 691650 -0.00000000000000E+00 + 691660 -0.00000000000000E+00 + 691670 -0.00000000000000E+00 + 691680 -0.00000000000000E+00 + 691690 -0.00000000000000E+00 + 691700 -0.00000000000000E+00 + 691710 -0.00000000000000E+00 + 691720 -0.00000000000000E+00 + 701660 -0.00000000000000E+00 + 701670 -0.00000000000000E+00 + 701680 -0.00000000000000E+00 + 701690 -0.00000000000000E+00 + 701691 -0.00000000000000E+00 + 701700 -0.00000000000000E+00 + 701710 -0.00000000000000E+00 + 701720 -0.00000000000000E+00 + 711690 -0.00000000000000E+00 + 711691 -0.00000000000000E+00 + 711710 -0.00000000000000E+00 + 711711 -0.00000000000000E+00 + 711720 -0.00000000000000E+00 + 711721 -0.00000000000000E+00 + 721710 -0.00000000000000E+00 + 721720 -0.00000000000000E+00 + 802060 -0.00000000000000E+00 + 812060 -0.00000000000000E+00 + 812070 -0.00000000000000E+00 + 812080 -0.00000000000000E+00 + 812090 -0.00000000000000E+00 + 812100 -0.00000000000000E+00 + 822060 -0.00000000000000E+00 + 822070 -0.00000000000000E+00 + 822080 -0.00000000000000E+00 + 822090 -0.00000000000000E+00 + 822100 -0.00000000000000E+00 + 822110 -0.00000000000000E+00 + 822120 -0.00000000000000E+00 + 822140 -0.00000000000000E+00 + 832090 -0.00000000000000E+00 + 832100 -0.00000000000000E+00 + 832110 -0.00000000000000E+00 + 832120 -0.00000000000000E+00 + 832130 -0.00000000000000E+00 + 832140 -0.00000000000000E+00 + 842100 -0.00000000000000E+00 + 842110 -0.00000000000000E+00 + 842120 -0.00000000000000E+00 + 842130 -0.00000000000000E+00 + 842140 -0.00000000000000E+00 + 842150 -0.00000000000000E+00 + 842160 -0.00000000000000E+00 + 842180 -0.00000000000000E+00 + 852170 -0.00000000000000E+00 + 852180 -0.00000000000000E+00 + 862160 -0.00000000000000E+00 + 862170 -0.00000000000000E+00 + 862180 -0.00000000000000E+00 + 862190 -0.00000000000000E+00 + 862200 -0.00000000000000E+00 + 862220 -0.00000000000000E+00 + 872210 -0.00000000000000E+00 + 872220 -0.00000000000000E+00 + 872230 -0.00000000000000E+00 + 882200 -0.00000000000000E+00 + 882210 -0.00000000000000E+00 + 882220 -0.00000000000000E+00 + 882230 -0.00000000000000E+00 + 882240 -0.00000000000000E+00 + 882250 -0.00000000000000E+00 + 882260 -0.00000000000000E+00 + 882270 -0.00000000000000E+00 + 882280 -0.00000000000000E+00 + 882290 -0.00000000000000E+00 + 892250 -0.00000000000000E+00 + 892260 -0.00000000000000E+00 + 892270 -0.00000000000000E+00 + 892280 -0.00000000000000E+00 + 892290 -0.00000000000000E+00 + 892300 -0.00000000000000E+00 + 892310 -0.00000000000000E+00 + 892320 -0.00000000000000E+00 + 902240 -0.00000000000000E+00 + 902250 -0.00000000000000E+00 + 902260 -0.00000000000000E+00 + 90227.82c -0.00000000000000E+00 + 90228.82c -0.00000000000000E+00 + 90229.82c -0.00000000000000E+00 + 90230.82c -0.00000000000000E+00 + 902310 -0.00000000000000E+00 + 90232.82c -4.35579130482336E-01 + 90233.82c -0.00000000000000E+00 + 90234.82c -0.00000000000000E+00 + 902350 -0.00000000000000E+00 + 912290 -0.00000000000000E+00 + 912300 -0.00000000000000E+00 + 91231.82c -0.00000000000000E+00 + 91232.82c -0.00000000000000E+00 + 91233.82c -0.00000000000000E+00 + 912340 -0.00000000000000E+00 + 912341 -0.00000000000000E+00 + 912350 -0.00000000000000E+00 + 922300 -0.00000000000000E+00 + 922310 -0.00000000000000E+00 + 92232.82c -0.00000000000000E+00 + 92233.82c -9.11370203663893E-03 + 92234.82c -0.00000000000000E+00 + 92235.82c -0.00000000000000E+00 + 922351 -0.00000000000000E+00 + 92236.82c -0.00000000000000E+00 + 92237.82c -0.00000000000000E+00 + 92238.82c -0.00000000000000E+00 + 92239.82c -0.00000000000000E+00 + 92240.82c -0.00000000000000E+00 + 92241.82c -0.00000000000000E+00 + 922420 -0.00000000000000E+00 + 932330 -0.00000000000000E+00 + 932340 -0.00000000000000E+00 + 93235.82c -0.00000000000000E+00 + 93236.82c -0.00000000000000E+00 + 932361 -0.00000000000000E+00 + 93237.82c -0.00000000000000E+00 + 93238.82c -0.00000000000000E+00 + 93239.82c -0.00000000000000E+00 + 932400 -0.00000000000000E+00 + 932401 -0.00000000000000E+00 + 932410 -0.00000000000000E+00 + 932420 -0.00000000000000E+00 + 942340 -0.00000000000000E+00 + 942350 -0.00000000000000E+00 + 94236.82c -0.00000000000000E+00 + 94237.82c -0.00000000000000E+00 + 942371 -0.00000000000000E+00 + 94238.82c -0.00000000000000E+00 + 94239.82c -0.00000000000000E+00 + 94240.82c -0.00000000000000E+00 + 94241.82c -0.00000000000000E+00 + 94242.82c -0.00000000000000E+00 + 94243.82c -0.00000000000000E+00 + 94244.82c -0.00000000000000E+00 + 942450 -0.00000000000000E+00 + 942460 -0.00000000000000E+00 + 952380 -0.00000000000000E+00 + 952390 -0.00000000000000E+00 + 952400 -0.00000000000000E+00 + 95241.82c -0.00000000000000E+00 + 95242.82c -0.00000000000000E+00 + 95642.82c -0.00000000000000E+00 + 95243.82c -0.00000000000000E+00 + 95244.82c -0.00000000000000E+00 + 95644.82c -0.00000000000000E+00 + 952450 -0.00000000000000E+00 + 952460 -0.00000000000000E+00 + 962380 -0.00000000000000E+00 + 962390 -0.00000000000000E+00 + 96240.82c -0.00000000000000E+00 + 96241.82c -0.00000000000000E+00 + 96242.82c -0.00000000000000E+00 + 96243.82c -0.00000000000000E+00 + 96244.82c -0.00000000000000E+00 + 96245.82c -0.00000000000000E+00 + 96246.82c -0.00000000000000E+00 + 96247.82c -0.00000000000000E+00 + 96248.82c -0.00000000000000E+00 + 96249.82c -0.00000000000000E+00 + 96250.82c -0.00000000000000E+00 + 962510 -0.00000000000000E+00 + 972490 -0.00000000000000E+00 + 972500 -0.00000000000000E+00 + 972510 -0.00000000000000E+00 + 982490 -0.00000000000000E+00 + 982500 -0.00000000000000E+00 + 982510 -0.00000000000000E+00 diff --git a/examples/msbr/msbr_endfb71.serpent b/examples/msbr/msbr_endfb71.serpent new file mode 100644 index 000000000..c24ef28e9 --- /dev/null +++ b/examples/msbr/msbr_endfb71.serpent @@ -0,0 +1,103 @@ +% Include file with burnable material composition on the line below +include "mats/msbr_saltproc_prepr_comp_endfb71.ini" +% Include file with non-burnable material composition on the line below +%include "mats/non_burnable_mats.ini" +% Geometry import will be added by SaltProc on the next line + +% Burnup settings will be added on next line + + + + + +include "geometry/msbr_full.ini" +% --- Moderator graphite: +mat moder -1.84 tmp 900 rgb 68 1 84 moder gr 6000 6000.82c -1.0 %tmp 908 +% --- Hastelloy N +mat hast -8.671 +rgb 127 205 187 +% Natural Ni +%28000.82c -0.677 +28058.82c -0.45492846488214814 +28060.82c -0.18127326881482336 +28061.82c -0.008011341006475749 +28062.82c -0.025961746987204326 +28064.82c -0.006825178309348437 + +% Natural W +%74000.82c -0.250 +74180.82c -0.00029364388293333545 +74182.82c -0.0655676236926255 +74183.82c -0.03560150632186718 +74184.82c -0.07664548021821405 +74186.82c -0.07189174588435995 + +% Natural Cr +%24000.82c -0.070 +24050.82c -0.002921580575502679 +24052.82c -0.05858955364682328 +24053.82c -0.006771510820966751 +24054.82c -0.001717354956707304 + +% Al +13027.82c -0.003 + +% --- Thermal scattering data for graphite: +% endfb71 +%therm gr 900 grph.25t grph.26t % 900K C-nat +$% endfb70 +therm gr 900 grph.15t grph.16t % 900K C-nat + + +set title "MSBR Saltproc long-term, 91% removal, BOL, fresh fuel, ENDF" + +set acelib "endfb71.xsdata" +set declib "endfb71.decay" +set nfylib "endfb71.nfy" +set sfylib "endfb71.sfy" + +% --- Neutron population and criticality cycles: + +set pop 300 400 10 1.0 1 %500 400 60 1.0 1 %30000 400 100 1.0 1 +%set gcu -1 +%set usym 0 3 2 0.0 0.0 0 90 + +% --- Reproducibility off (set value to 1 and define seed to set on): + +%set repro 0 % try speedup +%set shbuf 1 % try speedup + +%set samarium 0 +% --- Reduce unionized energy grid size in order to save some memory +% Use grid thinning with 5e-5 reconstruction tolerance between +% 1e-8 and 15 MeV. + +set egrid 5e-5 1e-10 15.0 + +% --- Cut-offs: + +set fpcut 1E-6 +set stabcut 1E-12 + +% --- Geometry and mesh plots: +%plot 33 3000 3000 150.5 +%trans 10 0 0 0 0 0 45 + +%plot 13 1550 3400 0.0 -155 0 +%plot 13 1000 1000 0 -20 20 135 175 +%plot 13 2000 2000 16.5 + +% --- Depletion parameters +% --- Options for burnup calculation: +set bumode 2 % CRAM method +set pcc 2 % Predictor-corrector calculation off (Linear extrapolation) +%set xscalc 2 % Cross sections from spectrum +%set bunorm 2 +%set opti 3 + +%set power 2.25E+9 dep daytot 60000.0 + +%set rfw 1 restart +set inventory fuel all + +%set printm 1 0.0 diff --git a/scripts/README.md b/scripts/README.md index 86bcbc1e9..51085a4ba 100644 --- a/scripts/README.md +++ b/scripts/README.md @@ -29,11 +29,11 @@ section libraries. Running the script without setting `XSDIR` will install the c #### `download_endfb71.bash` -Downloads and processes the endfb7x incident neutron data, and -ENDFB71 thermal scattering data in ACE format-- as well as -spontaneous and delayed fission neutron and -decay data -- for running Serpent models -on a UNIX-like machine. +Downloads and processes the endfb7x incident neutron data, and ENDFB71 or +ENDFB70 thermal scattering data in ACE format (depending on if the user's Serpent +version supports interpolation of continuous energy thermal scattering cross +sections) -- as well as spontaneous and delayed fission neutron and decay data -- +for running Serpent models on a UNIX-like machine. To run the script, execute ``` diff --git a/scripts/xsdata/download_endfb71.bash b/scripts/xsdata/download_endfb71.bash index 08e31562c..044f11d37 100644 --- a/scripts/xsdata/download_endfb71.bash +++ b/scripts/xsdata/download_endfb71.bash @@ -7,9 +7,15 @@ source $CONDA_PATH/etc/profile.d/conda.sh ################ ### DOWNLOAD ### ################ +# Serpent version 2.32 added support for interpolating continuous energy thermal +# scattering cross sections. If a user has this serpent version, then the script +# will download the ENDF/B-VII.1 thermal scattering data which is continuous in +# energy. Otherwise, the script will download the ENDF/B-VII.0 thermal scattering +# data which is tabulated in energy, but is the same evaluation as the ENDF/B-VII.1 data +SUPPORTS_INTERPOLATE_CONTINUOUS_ENERGY=false # DATADIR is the directory where the xs library is extracted to # @yardasol reccomends naming the parent directory where the files -# will be extractd to as "jeff312" +# will be extractd to as "endfb71_ace" if [[ -d "$XSDIR" ]] then DATADIR=$XSDIR/endfb71_ace @@ -76,7 +82,13 @@ rm $DATADIR/temp # Neutron and thermal scattering data LN="https://nucleardata.lanl.gov/lib/" -DATA=("endf71x" "ENDF71SaB") +if [[ ! $SUPPORTS_INTERPOLATE_CONTINUOUS_ENERGY ]] +then + THERM="endf70sab" +else + THERM="ENDF71SaB" +fi +DATA=("endf71x" "$THERM") EXT=".tgz" for D in ${DATA[@]} do From 3ede9a21c2a93c866c4e0598e35a1bd3595fe97c Mon Sep 17 00:00:00 2001 From: yardasol Date: Tue, 4 Oct 2022 10:54:45 -0500 Subject: [PATCH 09/62] add endfb71 library compatible msbr example --- .../mats/msbr_saltproc_prepr_comp_endfb71.ini | 1333 +++++++++++++++++ examples/msbr/msbr_endfb71.serpent | 103 ++ scripts/README.md | 10 +- scripts/xsdata/download_endfb71.bash | 57 +- scripts/xsdata/process_endfb71_to_openmc.bash | 2 +- 5 files changed, 1478 insertions(+), 27 deletions(-) create mode 100644 examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71.ini create mode 100644 examples/msbr/msbr_endfb71.serpent diff --git a/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71.ini b/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71.ini new file mode 100644 index 000000000..1d6564c8f --- /dev/null +++ b/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71.ini @@ -0,0 +1,1333 @@ +% Material compositions (after 0.000000 days) + +mat fuel -3.350000000E+00 burn 1 fix 09c 900 vol 4.87100E+07 + 1001.82c -0.00000000000000E+00 + 1002.82c -0.00000000000000E+00 + 1003.82c -0.00000000000000E+00 + 2003.82c -0.00000000000000E+00 + 2004.82c -0.00000000000000E+00 + 20060 -0.00000000000000E+00 + 3006.82c -0.00000000000000E+00 + 3007.82c -7.87474673879085E-02 + 30080 -0.00000000000000E+00 + 30090 -0.00000000000000E+00 + 40080 -0.00000000000000E+00 + 4009.82c -2.25566879138321E-02 + 40100 -0.00000000000000E+00 + 40110 -0.00000000000000E+00 + 5010.82c -0.00000000000000E+00 + 5011.82c -0.00000000000000E+00 + 50120 -0.00000000000000E+00 + 6000.82c -0.00000000000000E+00 + 60130 -0.00000000000000E+00 + 60140 -0.00000000000000E+00 + 60150 -0.00000000000000E+00 + 70130 -0.00000000000000E+00 + 7014.82c -0.00000000000000E+00 + 7015.82c -0.00000000000000E+00 + 70160 -0.00000000000000E+00 + 70170 -0.00000000000000E+00 + 80150 -0.00000000000000E+00 + 8016.82c -0.00000000000000E+00 + 8017.82c -0.00000000000000E+00 + 80180 -0.00000000000000E+00 + 80190 -0.00000000000000E+00 + 90180 -0.00000000000000E+00 + 9019.82c -4.54003012179284E-01 + 90200 -0.00000000000000E+00 + 100200 -0.00000000000000E+00 + 240660 -0.00000000000000E+00 + 240670 -0.00000000000000E+00 + 250660 -0.00000000000000E+00 + 250670 -0.00000000000000E+00 + 250680 -0.00000000000000E+00 + 250690 -0.00000000000000E+00 + 260650 -0.00000000000000E+00 + 260660 -0.00000000000000E+00 + 260670 -0.00000000000000E+00 + 260680 -0.00000000000000E+00 + 260690 -0.00000000000000E+00 + 260700 -0.00000000000000E+00 + 260710 -0.00000000000000E+00 + 260720 -0.00000000000000E+00 + 270650 -0.00000000000000E+00 + 270660 -0.00000000000000E+00 + 270670 -0.00000000000000E+00 + 270680 -0.00000000000000E+00 + 270690 -0.00000000000000E+00 + 270700 -0.00000000000000E+00 + 270710 -0.00000000000000E+00 + 270720 -0.00000000000000E+00 + 270730 -0.00000000000000E+00 + 270740 -0.00000000000000E+00 + 270750 -0.00000000000000E+00 + 280650 -0.00000000000000E+00 + 280660 -0.00000000000000E+00 + 280670 -0.00000000000000E+00 + 280680 -0.00000000000000E+00 + 280690 -0.00000000000000E+00 + 280700 -0.00000000000000E+00 + 280710 -0.00000000000000E+00 + 280720 -0.00000000000000E+00 + 280730 -0.00000000000000E+00 + 280740 -0.00000000000000E+00 + 280750 -0.00000000000000E+00 + 280760 -0.00000000000000E+00 + 280770 -0.00000000000000E+00 + 280780 -0.00000000000000E+00 + 290650 -0.00000000000000E+00 + 290660 -0.00000000000000E+00 + 290670 -0.00000000000000E+00 + 290680 -0.00000000000000E+00 + 290681 -0.00000000000000E+00 + 290690 -0.00000000000000E+00 + 290700 -0.00000000000000E+00 + 290701 -0.00000000000000E+00 + 290710 -0.00000000000000E+00 + 290720 -0.00000000000000E+00 + 290730 -0.00000000000000E+00 + 290740 -0.00000000000000E+00 + 290750 -0.00000000000000E+00 + 290760 -0.00000000000000E+00 + 290770 -0.00000000000000E+00 + 290780 -0.00000000000000E+00 + 290790 -0.00000000000000E+00 + 290800 -0.00000000000000E+00 + 300650 -0.00000000000000E+00 + 300660 -0.00000000000000E+00 + 300670 -0.00000000000000E+00 + 300680 -0.00000000000000E+00 + 300690 -0.00000000000000E+00 + 300691 -0.00000000000000E+00 + 300700 -0.00000000000000E+00 + 300710 -0.00000000000000E+00 + 300711 -0.00000000000000E+00 + 300720 -0.00000000000000E+00 + 300730 -0.00000000000000E+00 + 300740 -0.00000000000000E+00 + 300750 -0.00000000000000E+00 + 300760 -0.00000000000000E+00 + 300770 -0.00000000000000E+00 + 300780 -0.00000000000000E+00 + 300790 -0.00000000000000E+00 + 300800 -0.00000000000000E+00 + 300810 -0.00000000000000E+00 + 300820 -0.00000000000000E+00 + 300830 -0.00000000000000E+00 + 310660 -0.00000000000000E+00 + 310670 -0.00000000000000E+00 + 310680 -0.00000000000000E+00 + 31069.82c -0.00000000000000E+00 + 310700 -0.00000000000000E+00 + 31071.82c -0.00000000000000E+00 + 310720 -0.00000000000000E+00 + 310730 -0.00000000000000E+00 + 310740 -0.00000000000000E+00 + 310741 -0.00000000000000E+00 + 310750 -0.00000000000000E+00 + 310760 -0.00000000000000E+00 + 310770 -0.00000000000000E+00 + 310780 -0.00000000000000E+00 + 310790 -0.00000000000000E+00 + 310800 -0.00000000000000E+00 + 310810 -0.00000000000000E+00 + 310820 -0.00000000000000E+00 + 310830 -0.00000000000000E+00 + 310840 -0.00000000000000E+00 + 310850 -0.00000000000000E+00 + 310860 -0.00000000000000E+00 + 320680 -0.00000000000000E+00 + 320690 -0.00000000000000E+00 + 32070.82c -0.00000000000000E+00 + 320710 -0.00000000000000E+00 + 320711 -0.00000000000000E+00 + 32072.82c -0.00000000000000E+00 + 32073.82c -0.00000000000000E+00 + 320731 -0.00000000000000E+00 + 32074.82c -0.00000000000000E+00 + 320750 -0.00000000000000E+00 + 320751 -0.00000000000000E+00 + 32076.82c -0.00000000000000E+00 + 320770 -0.00000000000000E+00 + 320771 -0.00000000000000E+00 + 320780 -0.00000000000000E+00 + 320790 -0.00000000000000E+00 + 320791 -0.00000000000000E+00 + 320800 -0.00000000000000E+00 + 320810 -0.00000000000000E+00 + 320820 -0.00000000000000E+00 + 320830 -0.00000000000000E+00 + 320840 -0.00000000000000E+00 + 320850 -0.00000000000000E+00 + 320860 -0.00000000000000E+00 + 320870 -0.00000000000000E+00 + 320880 -0.00000000000000E+00 + 320890 -0.00000000000000E+00 + 330710 -0.00000000000000E+00 + 330720 -0.00000000000000E+00 + 330730 -0.00000000000000E+00 + 33074.82c -0.00000000000000E+00 + 33075.82c -0.00000000000000E+00 + 330751 -0.00000000000000E+00 + 330760 -0.00000000000000E+00 + 330770 -0.00000000000000E+00 + 330780 -0.00000000000000E+00 + 330790 -0.00000000000000E+00 + 330800 -0.00000000000000E+00 + 330810 -0.00000000000000E+00 + 330820 -0.00000000000000E+00 + 330821 -0.00000000000000E+00 + 330830 -0.00000000000000E+00 + 330840 -0.00000000000000E+00 + 330850 -0.00000000000000E+00 + 330860 -0.00000000000000E+00 + 330870 -0.00000000000000E+00 + 330880 -0.00000000000000E+00 + 330890 -0.00000000000000E+00 + 330900 -0.00000000000000E+00 + 330910 -0.00000000000000E+00 + 330920 -0.00000000000000E+00 + 340730 -0.00000000000000E+00 + 340731 -0.00000000000000E+00 + 34074.82c -0.00000000000000E+00 + 340750 -0.00000000000000E+00 + 34076.82c -0.00000000000000E+00 + 34077.82c -0.00000000000000E+00 + 340771 -0.00000000000000E+00 + 34078.82c -0.00000000000000E+00 + 34079.82c -0.00000000000000E+00 + 340791 -0.00000000000000E+00 + 34080.82c -0.00000000000000E+00 + 340810 -0.00000000000000E+00 + 340811 -0.00000000000000E+00 + 34082.82c -0.00000000000000E+00 + 340830 -0.00000000000000E+00 + 340831 -0.00000000000000E+00 + 340840 -0.00000000000000E+00 + 340850 -0.00000000000000E+00 + 340860 -0.00000000000000E+00 + 340870 -0.00000000000000E+00 + 340880 -0.00000000000000E+00 + 340890 -0.00000000000000E+00 + 340900 -0.00000000000000E+00 + 340910 -0.00000000000000E+00 + 340920 -0.00000000000000E+00 + 340930 -0.00000000000000E+00 + 340940 -0.00000000000000E+00 + 350750 -0.00000000000000E+00 + 350760 -0.00000000000000E+00 + 350770 -0.00000000000000E+00 + 350771 -0.00000000000000E+00 + 350780 -0.00000000000000E+00 + 35079.82c -0.00000000000000E+00 + 350791 -0.00000000000000E+00 + 350800 -0.00000000000000E+00 + 350801 -0.00000000000000E+00 + 35081.82c -0.00000000000000E+00 + 350820 -0.00000000000000E+00 + 350821 -0.00000000000000E+00 + 350830 -0.00000000000000E+00 + 350840 -0.00000000000000E+00 + 350841 -0.00000000000000E+00 + 350850 -0.00000000000000E+00 + 350860 -0.00000000000000E+00 + 350870 -0.00000000000000E+00 + 350880 -0.00000000000000E+00 + 350890 -0.00000000000000E+00 + 350900 -0.00000000000000E+00 + 350910 -0.00000000000000E+00 + 350920 -0.00000000000000E+00 + 350930 -0.00000000000000E+00 + 350940 -0.00000000000000E+00 + 350950 -0.00000000000000E+00 + 350960 -0.00000000000000E+00 + 350970 -0.00000000000000E+00 + 360770 -0.00000000000000E+00 + 36078.82c -0.00000000000000E+00 + 360790 -0.00000000000000E+00 + 360791 -0.00000000000000E+00 + 36080.82c -0.00000000000000E+00 + 360810 -0.00000000000000E+00 + 360811 -0.00000000000000E+00 + 36082.82c -0.00000000000000E+00 + 36083.82c -0.00000000000000E+00 + 360831 -0.00000000000000E+00 + 36084.82c -0.00000000000000E+00 + 36085.82c -0.00000000000000E+00 + 360851 -0.00000000000000E+00 + 36086.82c -0.00000000000000E+00 + 360870 -0.00000000000000E+00 + 360880 -0.00000000000000E+00 + 360890 -0.00000000000000E+00 + 360900 -0.00000000000000E+00 + 360910 -0.00000000000000E+00 + 360920 -0.00000000000000E+00 + 360930 -0.00000000000000E+00 + 360940 -0.00000000000000E+00 + 360950 -0.00000000000000E+00 + 360960 -0.00000000000000E+00 + 360970 -0.00000000000000E+00 + 360980 -0.00000000000000E+00 + 360990 -0.00000000000000E+00 + 361000 -0.00000000000000E+00 + 370790 -0.00000000000000E+00 + 370810 -0.00000000000000E+00 + 370830 -0.00000000000000E+00 + 370840 -0.00000000000000E+00 + 37085.82c -0.00000000000000E+00 + 37086.82c -0.00000000000000E+00 + 370861 -0.00000000000000E+00 + 37087.82c -0.00000000000000E+00 + 370880 -0.00000000000000E+00 + 370890 -0.00000000000000E+00 + 370900 -0.00000000000000E+00 + 370901 -0.00000000000000E+00 + 370910 -0.00000000000000E+00 + 370920 -0.00000000000000E+00 + 370930 -0.00000000000000E+00 + 370940 -0.00000000000000E+00 + 370950 -0.00000000000000E+00 + 370960 -0.00000000000000E+00 + 370970 -0.00000000000000E+00 + 370980 -0.00000000000000E+00 + 370990 -0.00000000000000E+00 + 371000 -0.00000000000000E+00 + 371010 -0.00000000000000E+00 + 371020 -0.00000000000000E+00 + 380830 -0.00000000000000E+00 + 38084.82c -0.00000000000000E+00 + 380850 -0.00000000000000E+00 + 380851 -0.00000000000000E+00 + 38086.82c -0.00000000000000E+00 + 38087.82c -0.00000000000000E+00 + 380871 -0.00000000000000E+00 + 38088.82c -0.00000000000000E+00 + 38089.82c -0.00000000000000E+00 + 38090.82c -0.00000000000000E+00 + 380910 -0.00000000000000E+00 + 380920 -0.00000000000000E+00 + 380930 -0.00000000000000E+00 + 380940 -0.00000000000000E+00 + 380950 -0.00000000000000E+00 + 380960 -0.00000000000000E+00 + 380970 -0.00000000000000E+00 + 380980 -0.00000000000000E+00 + 380990 -0.00000000000000E+00 + 381000 -0.00000000000000E+00 + 381010 -0.00000000000000E+00 + 381020 -0.00000000000000E+00 + 381030 -0.00000000000000E+00 + 381040 -0.00000000000000E+00 + 381050 -0.00000000000000E+00 + 390850 -0.00000000000000E+00 + 390870 -0.00000000000000E+00 + 390871 -0.00000000000000E+00 + 390880 -0.00000000000000E+00 + 39089.82c -0.00000000000000E+00 + 390891 -0.00000000000000E+00 + 39090.82c -0.00000000000000E+00 + 390901 -0.00000000000000E+00 + 39091.82c -0.00000000000000E+00 + 390911 -0.00000000000000E+00 + 390920 -0.00000000000000E+00 + 390930 -0.00000000000000E+00 + 390931 -0.00000000000000E+00 + 390940 -0.00000000000000E+00 + 390950 -0.00000000000000E+00 + 390960 -0.00000000000000E+00 + 390961 -0.00000000000000E+00 + 390970 -0.00000000000000E+00 + 390980 -0.00000000000000E+00 + 390981 -0.00000000000000E+00 + 390990 -0.00000000000000E+00 + 391000 -0.00000000000000E+00 + 391010 -0.00000000000000E+00 + 391020 -0.00000000000000E+00 + 391030 -0.00000000000000E+00 + 391040 -0.00000000000000E+00 + 391050 -0.00000000000000E+00 + 391060 -0.00000000000000E+00 + 391070 -0.00000000000000E+00 + 391080 -0.00000000000000E+00 + 400870 -0.00000000000000E+00 + 400880 -0.00000000000000E+00 + 400890 -0.00000000000000E+00 + 400891 -0.00000000000000E+00 + 40090.82c -0.00000000000000E+00 + 400901 -0.00000000000000E+00 + 40091.82c -0.00000000000000E+00 + 40092.82c -0.00000000000000E+00 + 40093.82c -0.00000000000000E+00 + 40094.82c -0.00000000000000E+00 + 40095.82c -0.00000000000000E+00 + 40096.82c -0.00000000000000E+00 + 400970 -0.00000000000000E+00 + 400980 -0.00000000000000E+00 + 400990 -0.00000000000000E+00 + 401000 -0.00000000000000E+00 + 401010 -0.00000000000000E+00 + 401020 -0.00000000000000E+00 + 401030 -0.00000000000000E+00 + 401040 -0.00000000000000E+00 + 401050 -0.00000000000000E+00 + 401060 -0.00000000000000E+00 + 401070 -0.00000000000000E+00 + 401080 -0.00000000000000E+00 + 401090 -0.00000000000000E+00 + 401100 -0.00000000000000E+00 + 410890 -0.00000000000000E+00 + 410900 -0.00000000000000E+00 + 410910 -0.00000000000000E+00 + 410911 -0.00000000000000E+00 + 410920 -0.00000000000000E+00 + 41093.82c -0.00000000000000E+00 + 410931 -0.00000000000000E+00 + 41094.82c -0.00000000000000E+00 + 410941 -0.00000000000000E+00 + 41095.82c -0.00000000000000E+00 + 410951 -0.00000000000000E+00 + 410960 -0.00000000000000E+00 + 410970 -0.00000000000000E+00 + 410971 -0.00000000000000E+00 + 410980 -0.00000000000000E+00 + 410981 -0.00000000000000E+00 + 410990 -0.00000000000000E+00 + 410991 -0.00000000000000E+00 + 411000 -0.00000000000000E+00 + 411001 -0.00000000000000E+00 + 411010 -0.00000000000000E+00 + 411020 -0.00000000000000E+00 + 411021 -0.00000000000000E+00 + 411030 -0.00000000000000E+00 + 411040 -0.00000000000000E+00 + 411041 -0.00000000000000E+00 + 411050 -0.00000000000000E+00 + 411060 -0.00000000000000E+00 + 411070 -0.00000000000000E+00 + 411080 -0.00000000000000E+00 + 411090 -0.00000000000000E+00 + 411100 -0.00000000000000E+00 + 411110 -0.00000000000000E+00 + 411120 -0.00000000000000E+00 + 411130 -0.00000000000000E+00 + 420910 -0.00000000000000E+00 + 42092.82c -0.00000000000000E+00 + 420930 -0.00000000000000E+00 + 420931 -0.00000000000000E+00 + 42094.82c -0.00000000000000E+00 + 42095.82c -0.00000000000000E+00 + 42096.82c -0.00000000000000E+00 + 42097.82c -0.00000000000000E+00 + 42098.82c -0.00000000000000E+00 + 42099.82c -0.00000000000000E+00 + 42100.82c -0.00000000000000E+00 + 421010 -0.00000000000000E+00 + 421020 -0.00000000000000E+00 + 421030 -0.00000000000000E+00 + 421040 -0.00000000000000E+00 + 421050 -0.00000000000000E+00 + 421060 -0.00000000000000E+00 + 421070 -0.00000000000000E+00 + 421080 -0.00000000000000E+00 + 421090 -0.00000000000000E+00 + 421100 -0.00000000000000E+00 + 421110 -0.00000000000000E+00 + 421120 -0.00000000000000E+00 + 421130 -0.00000000000000E+00 + 421140 -0.00000000000000E+00 + 421150 -0.00000000000000E+00 + 430950 -0.00000000000000E+00 + 430951 -0.00000000000000E+00 + 430960 -0.00000000000000E+00 + 430970 -0.00000000000000E+00 + 430971 -0.00000000000000E+00 + 430980 -0.00000000000000E+00 + 43099.82c -0.00000000000000E+00 + 430991 -0.00000000000000E+00 + 431000 -0.00000000000000E+00 + 431010 -0.00000000000000E+00 + 431020 -0.00000000000000E+00 + 431021 -0.00000000000000E+00 + 431030 -0.00000000000000E+00 + 431040 -0.00000000000000E+00 + 431050 -0.00000000000000E+00 + 431060 -0.00000000000000E+00 + 431070 -0.00000000000000E+00 + 431080 -0.00000000000000E+00 + 431090 -0.00000000000000E+00 + 431100 -0.00000000000000E+00 + 431110 -0.00000000000000E+00 + 431120 -0.00000000000000E+00 + 431130 -0.00000000000000E+00 + 431140 -0.00000000000000E+00 + 431150 -0.00000000000000E+00 + 431160 -0.00000000000000E+00 + 431170 -0.00000000000000E+00 + 431180 -0.00000000000000E+00 + 440960 -0.00000000000000E+00 + 440970 -0.00000000000000E+00 + 44098.82c -0.00000000000000E+00 + 44099.82c -0.00000000000000E+00 + 44100.82c -0.00000000000000E+00 + 44101.82c -0.00000000000000E+00 + 44102.82c -0.00000000000000E+00 + 44103.82c -0.00000000000000E+00 + 44104.82c -0.00000000000000E+00 + 44105.82c -0.00000000000000E+00 + 44106.82c -0.00000000000000E+00 + 441070 -0.00000000000000E+00 + 441080 -0.00000000000000E+00 + 441090 -0.00000000000000E+00 + 441100 -0.00000000000000E+00 + 441110 -0.00000000000000E+00 + 441120 -0.00000000000000E+00 + 441130 -0.00000000000000E+00 + 441140 -0.00000000000000E+00 + 441150 -0.00000000000000E+00 + 441160 -0.00000000000000E+00 + 441170 -0.00000000000000E+00 + 441180 -0.00000000000000E+00 + 441190 -0.00000000000000E+00 + 441200 -0.00000000000000E+00 + 450990 -0.00000000000000E+00 + 451000 -0.00000000000000E+00 + 451010 -0.00000000000000E+00 + 451011 -0.00000000000000E+00 + 451020 -0.00000000000000E+00 + 451021 -0.00000000000000E+00 + 45103.82c -0.00000000000000E+00 + 451031 -0.00000000000000E+00 + 451040 -0.00000000000000E+00 + 451041 -0.00000000000000E+00 + 45105.82c -0.00000000000000E+00 + 451051 -0.00000000000000E+00 + 451060 -0.00000000000000E+00 + 451061 -0.00000000000000E+00 + 451070 -0.00000000000000E+00 + 451080 -0.00000000000000E+00 + 451081 -0.00000000000000E+00 + 451090 -0.00000000000000E+00 + 451100 -0.00000000000000E+00 + 451101 -0.00000000000000E+00 + 451110 -0.00000000000000E+00 + 451120 -0.00000000000000E+00 + 451130 -0.00000000000000E+00 + 451140 -0.00000000000000E+00 + 451150 -0.00000000000000E+00 + 451160 -0.00000000000000E+00 + 451170 -0.00000000000000E+00 + 451180 -0.00000000000000E+00 + 451190 -0.00000000000000E+00 + 451200 -0.00000000000000E+00 + 451210 -0.00000000000000E+00 + 451220 -0.00000000000000E+00 + 461000 -0.00000000000000E+00 + 461010 -0.00000000000000E+00 + 46102.82c -0.00000000000000E+00 + 461030 -0.00000000000000E+00 + 46104.82c -0.00000000000000E+00 + 46105.82c -0.00000000000000E+00 + 46106.82c -0.00000000000000E+00 + 46107.82c -0.00000000000000E+00 + 461071 -0.00000000000000E+00 + 46108.82c -0.00000000000000E+00 + 461090 -0.00000000000000E+00 + 461091 -0.00000000000000E+00 + 46110.82c -0.00000000000000E+00 + 461110 -0.00000000000000E+00 + 461111 -0.00000000000000E+00 + 461120 -0.00000000000000E+00 + 461130 -0.00000000000000E+00 + 461140 -0.00000000000000E+00 + 461150 -0.00000000000000E+00 + 461160 -0.00000000000000E+00 + 461170 -0.00000000000000E+00 + 461180 -0.00000000000000E+00 + 461190 -0.00000000000000E+00 + 461200 -0.00000000000000E+00 + 461210 -0.00000000000000E+00 + 461220 -0.00000000000000E+00 + 461230 -0.00000000000000E+00 + 461240 -0.00000000000000E+00 + 471030 -0.00000000000000E+00 + 471040 -0.00000000000000E+00 + 471050 -0.00000000000000E+00 + 471051 -0.00000000000000E+00 + 471060 -0.00000000000000E+00 + 471061 -0.00000000000000E+00 + 47107.82c -0.00000000000000E+00 + 471071 -0.00000000000000E+00 + 471080 -0.00000000000000E+00 + 471081 -0.00000000000000E+00 + 47109.82c -0.00000000000000E+00 + 471091 -0.00000000000000E+00 + 471100 -0.00000000000000E+00 + 47510.82c -0.00000000000000E+00 + 47111.82c -0.00000000000000E+00 + 471111 -0.00000000000000E+00 + 471120 -0.00000000000000E+00 + 471130 -0.00000000000000E+00 + 471131 -0.00000000000000E+00 + 471140 -0.00000000000000E+00 + 471150 -0.00000000000000E+00 + 471151 -0.00000000000000E+00 + 471160 -0.00000000000000E+00 + 471161 -0.00000000000000E+00 + 471170 -0.00000000000000E+00 + 471171 -0.00000000000000E+00 + 471180 -0.00000000000000E+00 + 471181 -0.00000000000000E+00 + 471190 -0.00000000000000E+00 + 471200 -0.00000000000000E+00 + 471201 -0.00000000000000E+00 + 471210 -0.00000000000000E+00 + 471220 -0.00000000000000E+00 + 471221 -0.00000000000000E+00 + 471230 -0.00000000000000E+00 + 471240 -0.00000000000000E+00 + 471250 -0.00000000000000E+00 + 471260 -0.00000000000000E+00 + 471270 -0.00000000000000E+00 + 471280 -0.00000000000000E+00 + 471290 -0.00000000000000E+00 + 471300 -0.00000000000000E+00 + 481040 -0.00000000000000E+00 + 481050 -0.00000000000000E+00 + 48106.82c -0.00000000000000E+00 + 481070 -0.00000000000000E+00 + 48108.82c -0.00000000000000E+00 + 481090 -0.00000000000000E+00 + 48110.82c -0.00000000000000E+00 + 48111.82c -0.00000000000000E+00 + 481111 -0.00000000000000E+00 + 48112.82c -0.00000000000000E+00 + 48113.82c -0.00000000000000E+00 + 481131 -0.00000000000000E+00 + 48114.82c -0.00000000000000E+00 + 481150 -0.00000000000000E+00 + 48515.82c -0.00000000000000E+00 + 48116.82c -0.00000000000000E+00 + 481170 -0.00000000000000E+00 + 481171 -0.00000000000000E+00 + 481180 -0.00000000000000E+00 + 481190 -0.00000000000000E+00 + 481191 -0.00000000000000E+00 + 481200 -0.00000000000000E+00 + 481210 -0.00000000000000E+00 + 481211 -0.00000000000000E+00 + 481220 -0.00000000000000E+00 + 481230 -0.00000000000000E+00 + 481231 -0.00000000000000E+00 + 481240 -0.00000000000000E+00 + 481250 -0.00000000000000E+00 + 481260 -0.00000000000000E+00 + 481270 -0.00000000000000E+00 + 481280 -0.00000000000000E+00 + 481290 -0.00000000000000E+00 + 481300 -0.00000000000000E+00 + 481310 -0.00000000000000E+00 + 481320 -0.00000000000000E+00 + 491090 -0.00000000000000E+00 + 491100 -0.00000000000000E+00 + 491101 -0.00000000000000E+00 + 491110 -0.00000000000000E+00 + 491111 -0.00000000000000E+00 + 491120 -0.00000000000000E+00 + 491121 -0.00000000000000E+00 + 49113.82c -0.00000000000000E+00 + 491131 -0.00000000000000E+00 + 491140 -0.00000000000000E+00 + 491141 -0.00000000000000E+00 + 49115.82c -0.00000000000000E+00 + 491151 -0.00000000000000E+00 + 491160 -0.00000000000000E+00 + 491161 -0.00000000000000E+00 + 491170 -0.00000000000000E+00 + 491171 -0.00000000000000E+00 + 491180 -0.00000000000000E+00 + 491181 -0.00000000000000E+00 + 491190 -0.00000000000000E+00 + 491191 -0.00000000000000E+00 + 491200 -0.00000000000000E+00 + 491201 -0.00000000000000E+00 + 491210 -0.00000000000000E+00 + 491211 -0.00000000000000E+00 + 491220 -0.00000000000000E+00 + 491221 -0.00000000000000E+00 + 491230 -0.00000000000000E+00 + 491231 -0.00000000000000E+00 + 491240 -0.00000000000000E+00 + 491241 -0.00000000000000E+00 + 491250 -0.00000000000000E+00 + 491251 -0.00000000000000E+00 + 491260 -0.00000000000000E+00 + 491261 -0.00000000000000E+00 + 491270 -0.00000000000000E+00 + 491271 -0.00000000000000E+00 + 491280 -0.00000000000000E+00 + 491281 -0.00000000000000E+00 + 491290 -0.00000000000000E+00 + 491291 -0.00000000000000E+00 + 491300 -0.00000000000000E+00 + 491310 -0.00000000000000E+00 + 491320 -0.00000000000000E+00 + 491330 -0.00000000000000E+00 + 491340 -0.00000000000000E+00 + 491350 -0.00000000000000E+00 + 501100 -0.00000000000000E+00 + 501110 -0.00000000000000E+00 + 50112.82c -0.00000000000000E+00 + 50113.82c -0.00000000000000E+00 + 501131 -0.00000000000000E+00 + 50114.82c -0.00000000000000E+00 + 50115.82c -0.00000000000000E+00 + 50116.82c -0.00000000000000E+00 + 50117.82c -0.00000000000000E+00 + 501171 -0.00000000000000E+00 + 50118.82c -0.00000000000000E+00 + 50119.82c -0.00000000000000E+00 + 501191 -0.00000000000000E+00 + 50120.82c -0.00000000000000E+00 + 501210 -0.00000000000000E+00 + 501211 -0.00000000000000E+00 + 50122.82c -0.00000000000000E+00 + 50123.82c -0.00000000000000E+00 + 501231 -0.00000000000000E+00 + 50124.82c -0.00000000000000E+00 + 50125.82c -0.00000000000000E+00 + 501251 -0.00000000000000E+00 + 50126.82c -0.00000000000000E+00 + 501270 -0.00000000000000E+00 + 501271 -0.00000000000000E+00 + 501280 -0.00000000000000E+00 + 501281 -0.00000000000000E+00 + 501290 -0.00000000000000E+00 + 501291 -0.00000000000000E+00 + 501300 -0.00000000000000E+00 + 501301 -0.00000000000000E+00 + 501310 -0.00000000000000E+00 + 501311 -0.00000000000000E+00 + 501320 -0.00000000000000E+00 + 501330 -0.00000000000000E+00 + 501340 -0.00000000000000E+00 + 501350 -0.00000000000000E+00 + 501360 -0.00000000000000E+00 + 501370 -0.00000000000000E+00 + 511150 -0.00000000000000E+00 + 511170 -0.00000000000000E+00 + 511180 -0.00000000000000E+00 + 511181 -0.00000000000000E+00 + 511190 -0.00000000000000E+00 + 511200 -0.00000000000000E+00 + 511201 -0.00000000000000E+00 + 51121.82c -0.00000000000000E+00 + 511220 -0.00000000000000E+00 + 511221 -0.00000000000000E+00 + 51123.82c -0.00000000000000E+00 + 51124.82c -0.00000000000000E+00 + 511241 -0.00000000000000E+00 + 51125.82c -0.00000000000000E+00 + 51126.82c -0.00000000000000E+00 + 511261 -0.00000000000000E+00 + 511270 -0.00000000000000E+00 + 511280 -0.00000000000000E+00 + 511281 -0.00000000000000E+00 + 511290 -0.00000000000000E+00 + 511300 -0.00000000000000E+00 + 511301 -0.00000000000000E+00 + 511310 -0.00000000000000E+00 + 511320 -0.00000000000000E+00 + 511321 -0.00000000000000E+00 + 511330 -0.00000000000000E+00 + 511340 -0.00000000000000E+00 + 511341 -0.00000000000000E+00 + 511350 -0.00000000000000E+00 + 511360 -0.00000000000000E+00 + 511370 -0.00000000000000E+00 + 511380 -0.00000000000000E+00 + 511390 -0.00000000000000E+00 + 521180 -0.00000000000000E+00 + 521190 -0.00000000000000E+00 + 52120.82c -0.00000000000000E+00 + 521210 -0.00000000000000E+00 + 521211 -0.00000000000000E+00 + 52122.82c -0.00000000000000E+00 + 52123.82c -0.00000000000000E+00 + 521231 -0.00000000000000E+00 + 52124.82c -0.00000000000000E+00 + 52125.82c -0.00000000000000E+00 + 521251 -0.00000000000000E+00 + 52126.82c -0.00000000000000E+00 + 521270 -0.00000000000000E+00 + 52527.82c -0.00000000000000E+00 + 52128.82c -0.00000000000000E+00 + 521290 -0.00000000000000E+00 + 52529.82c -0.00000000000000E+00 + 52130.82c -0.00000000000000E+00 + 521310 -0.00000000000000E+00 + 521311 -0.00000000000000E+00 + 52132.82c -0.00000000000000E+00 + 521330 -0.00000000000000E+00 + 521331 -0.00000000000000E+00 + 521340 -0.00000000000000E+00 + 521350 -0.00000000000000E+00 + 521360 -0.00000000000000E+00 + 521370 -0.00000000000000E+00 + 521380 -0.00000000000000E+00 + 521390 -0.00000000000000E+00 + 521400 -0.00000000000000E+00 + 521410 -0.00000000000000E+00 + 521420 -0.00000000000000E+00 + 531210 -0.00000000000000E+00 + 531230 -0.00000000000000E+00 + 531240 -0.00000000000000E+00 + 531250 -0.00000000000000E+00 + 531260 -0.00000000000000E+00 + 53127.82c -0.00000000000000E+00 + 531280 -0.00000000000000E+00 + 53129.82c -0.00000000000000E+00 + 53130.82c -0.00000000000000E+00 + 531301 -0.00000000000000E+00 + 53131.82c -0.00000000000000E+00 + 531320 -0.00000000000000E+00 + 531321 -0.00000000000000E+00 + 531330 -0.00000000000000E+00 + 531331 -0.00000000000000E+00 + 531340 -0.00000000000000E+00 + 531341 -0.00000000000000E+00 + 53135.82c -0.00000000000000E+00 + 531360 -0.00000000000000E+00 + 531361 -0.00000000000000E+00 + 531370 -0.00000000000000E+00 + 531380 -0.00000000000000E+00 + 531390 -0.00000000000000E+00 + 531400 -0.00000000000000E+00 + 531410 -0.00000000000000E+00 + 531420 -0.00000000000000E+00 + 531430 -0.00000000000000E+00 + 531440 -0.00000000000000E+00 + 541240 -0.00000000000000E+00 + 541250 -0.00000000000000E+00 + 541251 -0.00000000000000E+00 + 54126.82c -0.00000000000000E+00 + 541270 -0.00000000000000E+00 + 541271 -0.00000000000000E+00 + 54128.82c -0.00000000000000E+00 + 54129.82c -0.00000000000000E+00 + 541291 -0.00000000000000E+00 + 54130.82c -0.00000000000000E+00 + 54131.82c -0.00000000000000E+00 + 541311 -0.00000000000000E+00 + 54132.82c -0.00000000000000E+00 + 54133.82c -0.00000000000000E+00 + 541331 -0.00000000000000E+00 + 54134.82c -0.00000000000000E+00 + 541341 -0.00000000000000E+00 + 54135.82c -0.00000000000000E+00 + 541351 -0.00000000000000E+00 + 54136.82c -0.00000000000000E+00 + 541370 -0.00000000000000E+00 + 541380 -0.00000000000000E+00 + 541390 -0.00000000000000E+00 + 541400 -0.00000000000000E+00 + 541410 -0.00000000000000E+00 + 541420 -0.00000000000000E+00 + 541430 -0.00000000000000E+00 + 541440 -0.00000000000000E+00 + 541450 -0.00000000000000E+00 + 541460 -0.00000000000000E+00 + 541470 -0.00000000000000E+00 + 551270 -0.00000000000000E+00 + 551290 -0.00000000000000E+00 + 551300 -0.00000000000000E+00 + 551310 -0.00000000000000E+00 + 551320 -0.00000000000000E+00 + 55133.82c -0.00000000000000E+00 + 55134.82c -0.00000000000000E+00 + 551341 -0.00000000000000E+00 + 55135.82c -0.00000000000000E+00 + 551351 -0.00000000000000E+00 + 55136.82c -0.00000000000000E+00 + 551361 -0.00000000000000E+00 + 55137.82c -0.00000000000000E+00 + 551380 -0.00000000000000E+00 + 551381 -0.00000000000000E+00 + 551390 -0.00000000000000E+00 + 551400 -0.00000000000000E+00 + 551410 -0.00000000000000E+00 + 551420 -0.00000000000000E+00 + 551430 -0.00000000000000E+00 + 551440 -0.00000000000000E+00 + 551450 -0.00000000000000E+00 + 551460 -0.00000000000000E+00 + 551470 -0.00000000000000E+00 + 551480 -0.00000000000000E+00 + 551490 -0.00000000000000E+00 + 551500 -0.00000000000000E+00 + 551510 -0.00000000000000E+00 + 561290 -0.00000000000000E+00 + 561300 -0.00000000000000E+00 + 561310 -0.00000000000000E+00 + 56132.82c -0.00000000000000E+00 + 56133.82c -0.00000000000000E+00 + 561331 -0.00000000000000E+00 + 56134.82c -0.00000000000000E+00 + 56135.82c -0.00000000000000E+00 + 561351 -0.00000000000000E+00 + 56136.82c -0.00000000000000E+00 + 561361 -0.00000000000000E+00 + 56137.82c -0.00000000000000E+00 + 561371 -0.00000000000000E+00 + 56138.82c -0.00000000000000E+00 + 561390 -0.00000000000000E+00 + 56140.82c -0.00000000000000E+00 + 561410 -0.00000000000000E+00 + 561420 -0.00000000000000E+00 + 561430 -0.00000000000000E+00 + 561440 -0.00000000000000E+00 + 561450 -0.00000000000000E+00 + 561460 -0.00000000000000E+00 + 561470 -0.00000000000000E+00 + 561480 -0.00000000000000E+00 + 561490 -0.00000000000000E+00 + 561500 -0.00000000000000E+00 + 561510 -0.00000000000000E+00 + 561520 -0.00000000000000E+00 + 561530 -0.00000000000000E+00 + 571330 -0.00000000000000E+00 + 571350 -0.00000000000000E+00 + 571360 -0.00000000000000E+00 + 571370 -0.00000000000000E+00 + 57138.82c -0.00000000000000E+00 + 57139.82c -0.00000000000000E+00 + 57140.82c -0.00000000000000E+00 + 571410 -0.00000000000000E+00 + 571420 -0.00000000000000E+00 + 571430 -0.00000000000000E+00 + 571440 -0.00000000000000E+00 + 571450 -0.00000000000000E+00 + 571460 -0.00000000000000E+00 + 571461 -0.00000000000000E+00 + 571470 -0.00000000000000E+00 + 571480 -0.00000000000000E+00 + 571490 -0.00000000000000E+00 + 571500 -0.00000000000000E+00 + 571510 -0.00000000000000E+00 + 571520 -0.00000000000000E+00 + 571530 -0.00000000000000E+00 + 571540 -0.00000000000000E+00 + 571550 -0.00000000000000E+00 + 581350 -0.00000000000000E+00 + 581360 -0.00000000000000E+00 + 581370 -0.00000000000000E+00 + 58138.82c -0.00000000000000E+00 + 58139.82c -0.00000000000000E+00 + 581391 -0.00000000000000E+00 + 58140.82c -0.00000000000000E+00 + 58141.82c -0.00000000000000E+00 + 58142.82c -0.00000000000000E+00 + 58143.82c -0.00000000000000E+00 + 58144.82c -0.00000000000000E+00 + 581450 -0.00000000000000E+00 + 581460 -0.00000000000000E+00 + 581470 -0.00000000000000E+00 + 581480 -0.00000000000000E+00 + 581490 -0.00000000000000E+00 + 581500 -0.00000000000000E+00 + 581510 -0.00000000000000E+00 + 581520 -0.00000000000000E+00 + 581530 -0.00000000000000E+00 + 581540 -0.00000000000000E+00 + 581550 -0.00000000000000E+00 + 581560 -0.00000000000000E+00 + 581570 -0.00000000000000E+00 + 591390 -0.00000000000000E+00 + 591400 -0.00000000000000E+00 + 59141.82c -0.00000000000000E+00 + 59142.82c -0.00000000000000E+00 + 591421 -0.00000000000000E+00 + 59143.82c -0.00000000000000E+00 + 591440 -0.00000000000000E+00 + 591441 -0.00000000000000E+00 + 591450 -0.00000000000000E+00 + 591460 -0.00000000000000E+00 + 591470 -0.00000000000000E+00 + 591480 -0.00000000000000E+00 + 591481 -0.00000000000000E+00 + 591490 -0.00000000000000E+00 + 591500 -0.00000000000000E+00 + 591510 -0.00000000000000E+00 + 591520 -0.00000000000000E+00 + 591530 -0.00000000000000E+00 + 591540 -0.00000000000000E+00 + 591550 -0.00000000000000E+00 + 591560 -0.00000000000000E+00 + 591570 -0.00000000000000E+00 + 591580 -0.00000000000000E+00 + 591590 -0.00000000000000E+00 + 601390 -0.00000000000000E+00 + 601400 -0.00000000000000E+00 + 601410 -0.00000000000000E+00 + 60142.82c -0.00000000000000E+00 + 60143.82c -0.00000000000000E+00 + 60144.82c -0.00000000000000E+00 + 60145.82c -0.00000000000000E+00 + 60146.82c -0.00000000000000E+00 + 60147.82c -0.00000000000000E+00 + 60148.82c -0.00000000000000E+00 + 601490 -0.00000000000000E+00 + 60150.82c -0.00000000000000E+00 + 601510 -0.00000000000000E+00 + 601520 -0.00000000000000E+00 + 601530 -0.00000000000000E+00 + 601540 -0.00000000000000E+00 + 601550 -0.00000000000000E+00 + 601560 -0.00000000000000E+00 + 601570 -0.00000000000000E+00 + 601580 -0.00000000000000E+00 + 601590 -0.00000000000000E+00 + 601600 -0.00000000000000E+00 + 601610 -0.00000000000000E+00 + 611410 -0.00000000000000E+00 + 611420 -0.00000000000000E+00 + 611430 -0.00000000000000E+00 + 611440 -0.00000000000000E+00 + 611450 -0.00000000000000E+00 + 611460 -0.00000000000000E+00 + 61147.82c -0.00000000000000E+00 + 61148.82c -0.00000000000000E+00 + 61548.82c -0.00000000000000E+00 + 61149.82c -0.00000000000000E+00 + 611500 -0.00000000000000E+00 + 61151.82c -0.00000000000000E+00 + 611520 -0.00000000000000E+00 + 611521 -0.00000000000000E+00 + 611530 -0.00000000000000E+00 + 611540 -0.00000000000000E+00 + 611541 -0.00000000000000E+00 + 611550 -0.00000000000000E+00 + 611560 -0.00000000000000E+00 + 611570 -0.00000000000000E+00 + 611580 -0.00000000000000E+00 + 611590 -0.00000000000000E+00 + 611600 -0.00000000000000E+00 + 611610 -0.00000000000000E+00 + 611620 -0.00000000000000E+00 + 611630 -0.00000000000000E+00 + 621420 -0.00000000000000E+00 + 621430 -0.00000000000000E+00 + 62144.82c -0.00000000000000E+00 + 621450 -0.00000000000000E+00 + 621460 -0.00000000000000E+00 + 62147.82c -0.00000000000000E+00 + 62148.82c -0.00000000000000E+00 + 62149.82c -0.00000000000000E+00 + 62150.82c -0.00000000000000E+00 + 62151.82c -0.00000000000000E+00 + 62152.82c -0.00000000000000E+00 + 62153.82c -0.00000000000000E+00 + 62154.82c -0.00000000000000E+00 + 621550 -0.00000000000000E+00 + 621560 -0.00000000000000E+00 + 621570 -0.00000000000000E+00 + 621580 -0.00000000000000E+00 + 621590 -0.00000000000000E+00 + 621600 -0.00000000000000E+00 + 621610 -0.00000000000000E+00 + 621620 -0.00000000000000E+00 + 621630 -0.00000000000000E+00 + 621640 -0.00000000000000E+00 + 621650 -0.00000000000000E+00 + 631470 -0.00000000000000E+00 + 631490 -0.00000000000000E+00 + 631500 -0.00000000000000E+00 + 63151.82c -0.00000000000000E+00 + 63152.82c -0.00000000000000E+00 + 631521 -0.00000000000000E+00 + 63153.82c -0.00000000000000E+00 + 63154.82c -0.00000000000000E+00 + 631541 -0.00000000000000E+00 + 63155.82c -0.00000000000000E+00 + 63156.82c -0.00000000000000E+00 + 63157.82c -0.00000000000000E+00 + 631580 -0.00000000000000E+00 + 631590 -0.00000000000000E+00 + 631600 -0.00000000000000E+00 + 631610 -0.00000000000000E+00 + 631620 -0.00000000000000E+00 + 631630 -0.00000000000000E+00 + 631640 -0.00000000000000E+00 + 631650 -0.00000000000000E+00 + 631660 -0.00000000000000E+00 + 631670 -0.00000000000000E+00 + 641490 -0.00000000000000E+00 + 641500 -0.00000000000000E+00 + 641510 -0.00000000000000E+00 + 64152.82c -0.00000000000000E+00 + 64153.82c -0.00000000000000E+00 + 64154.82c -0.00000000000000E+00 + 64155.82c -0.00000000000000E+00 + 64156.82c -0.00000000000000E+00 + 64157.82c -0.00000000000000E+00 + 64158.82c -0.00000000000000E+00 + 641590 -0.00000000000000E+00 + 64160.82c -0.00000000000000E+00 + 641610 -0.00000000000000E+00 + 641620 -0.00000000000000E+00 + 641630 -0.00000000000000E+00 + 641640 -0.00000000000000E+00 + 641650 -0.00000000000000E+00 + 641660 -0.00000000000000E+00 + 641670 -0.00000000000000E+00 + 641680 -0.00000000000000E+00 + 641690 -0.00000000000000E+00 + 651510 -0.00000000000000E+00 + 651530 -0.00000000000000E+00 + 651540 -0.00000000000000E+00 + 651550 -0.00000000000000E+00 + 651560 -0.00000000000000E+00 + 651561 -0.00000000000000E+00 + 651570 -0.00000000000000E+00 + 651580 -0.00000000000000E+00 + 651581 -0.00000000000000E+00 + 65159.82c -0.00000000000000E+00 + 65160.82c -0.00000000000000E+00 + 651610 -0.00000000000000E+00 + 651620 -0.00000000000000E+00 + 651630 -0.00000000000000E+00 + 651640 -0.00000000000000E+00 + 651650 -0.00000000000000E+00 + 651660 -0.00000000000000E+00 + 651670 -0.00000000000000E+00 + 651680 -0.00000000000000E+00 + 651690 -0.00000000000000E+00 + 651700 -0.00000000000000E+00 + 651710 -0.00000000000000E+00 + 661540 -0.00000000000000E+00 + 661550 -0.00000000000000E+00 + 66156.82c -0.00000000000000E+00 + 661570 -0.00000000000000E+00 + 66158.82c -0.00000000000000E+00 + 661590 -0.00000000000000E+00 + 66160.82c -0.00000000000000E+00 + 66161.82c -0.00000000000000E+00 + 66162.82c -0.00000000000000E+00 + 66163.82c -0.00000000000000E+00 + 66164.82c -0.00000000000000E+00 + 661650 -0.00000000000000E+00 + 661651 -0.00000000000000E+00 + 661660 -0.00000000000000E+00 + 661670 -0.00000000000000E+00 + 661680 -0.00000000000000E+00 + 661690 -0.00000000000000E+00 + 661700 -0.00000000000000E+00 + 661710 -0.00000000000000E+00 + 661720 -0.00000000000000E+00 + 671590 -0.00000000000000E+00 + 671591 -0.00000000000000E+00 + 671600 -0.00000000000000E+00 + 671601 -0.00000000000000E+00 + 671610 -0.00000000000000E+00 + 671611 -0.00000000000000E+00 + 671620 -0.00000000000000E+00 + 671621 -0.00000000000000E+00 + 671630 -0.00000000000000E+00 + 671631 -0.00000000000000E+00 + 671640 -0.00000000000000E+00 + 671641 -0.00000000000000E+00 + 67165.82c -0.00000000000000E+00 + 671660 -0.00000000000000E+00 + 67566.82c -0.00000000000000E+00 + 671670 -0.00000000000000E+00 + 671680 -0.00000000000000E+00 + 671690 -0.00000000000000E+00 + 671700 -0.00000000000000E+00 + 671701 -0.00000000000000E+00 + 671710 -0.00000000000000E+00 + 671720 -0.00000000000000E+00 + 681600 -0.00000000000000E+00 + 681610 -0.00000000000000E+00 + 68162.82c -0.00000000000000E+00 + 681630 -0.00000000000000E+00 + 68164.82c -0.00000000000000E+00 + 681650 -0.00000000000000E+00 + 68166.82c -0.00000000000000E+00 + 68167.82c -0.00000000000000E+00 + 681671 -0.00000000000000E+00 + 68168.82c -0.00000000000000E+00 + 681690 -0.00000000000000E+00 + 68170.82c -0.00000000000000E+00 + 681710 -0.00000000000000E+00 + 681720 -0.00000000000000E+00 + 691650 -0.00000000000000E+00 + 691660 -0.00000000000000E+00 + 691670 -0.00000000000000E+00 + 691680 -0.00000000000000E+00 + 691690 -0.00000000000000E+00 + 691700 -0.00000000000000E+00 + 691710 -0.00000000000000E+00 + 691720 -0.00000000000000E+00 + 701660 -0.00000000000000E+00 + 701670 -0.00000000000000E+00 + 701680 -0.00000000000000E+00 + 701690 -0.00000000000000E+00 + 701691 -0.00000000000000E+00 + 701700 -0.00000000000000E+00 + 701710 -0.00000000000000E+00 + 701720 -0.00000000000000E+00 + 711690 -0.00000000000000E+00 + 711691 -0.00000000000000E+00 + 711710 -0.00000000000000E+00 + 711711 -0.00000000000000E+00 + 711720 -0.00000000000000E+00 + 711721 -0.00000000000000E+00 + 721710 -0.00000000000000E+00 + 721720 -0.00000000000000E+00 + 802060 -0.00000000000000E+00 + 812060 -0.00000000000000E+00 + 812070 -0.00000000000000E+00 + 812080 -0.00000000000000E+00 + 812090 -0.00000000000000E+00 + 812100 -0.00000000000000E+00 + 822060 -0.00000000000000E+00 + 822070 -0.00000000000000E+00 + 822080 -0.00000000000000E+00 + 822090 -0.00000000000000E+00 + 822100 -0.00000000000000E+00 + 822110 -0.00000000000000E+00 + 822120 -0.00000000000000E+00 + 822140 -0.00000000000000E+00 + 832090 -0.00000000000000E+00 + 832100 -0.00000000000000E+00 + 832110 -0.00000000000000E+00 + 832120 -0.00000000000000E+00 + 832130 -0.00000000000000E+00 + 832140 -0.00000000000000E+00 + 842100 -0.00000000000000E+00 + 842110 -0.00000000000000E+00 + 842120 -0.00000000000000E+00 + 842130 -0.00000000000000E+00 + 842140 -0.00000000000000E+00 + 842150 -0.00000000000000E+00 + 842160 -0.00000000000000E+00 + 842180 -0.00000000000000E+00 + 852170 -0.00000000000000E+00 + 852180 -0.00000000000000E+00 + 862160 -0.00000000000000E+00 + 862170 -0.00000000000000E+00 + 862180 -0.00000000000000E+00 + 862190 -0.00000000000000E+00 + 862200 -0.00000000000000E+00 + 862220 -0.00000000000000E+00 + 872210 -0.00000000000000E+00 + 872220 -0.00000000000000E+00 + 872230 -0.00000000000000E+00 + 882200 -0.00000000000000E+00 + 882210 -0.00000000000000E+00 + 882220 -0.00000000000000E+00 + 882230 -0.00000000000000E+00 + 882240 -0.00000000000000E+00 + 882250 -0.00000000000000E+00 + 882260 -0.00000000000000E+00 + 882270 -0.00000000000000E+00 + 882280 -0.00000000000000E+00 + 882290 -0.00000000000000E+00 + 892250 -0.00000000000000E+00 + 892260 -0.00000000000000E+00 + 892270 -0.00000000000000E+00 + 892280 -0.00000000000000E+00 + 892290 -0.00000000000000E+00 + 892300 -0.00000000000000E+00 + 892310 -0.00000000000000E+00 + 892320 -0.00000000000000E+00 + 902240 -0.00000000000000E+00 + 902250 -0.00000000000000E+00 + 902260 -0.00000000000000E+00 + 90227.82c -0.00000000000000E+00 + 90228.82c -0.00000000000000E+00 + 90229.82c -0.00000000000000E+00 + 90230.82c -0.00000000000000E+00 + 902310 -0.00000000000000E+00 + 90232.82c -4.35579130482336E-01 + 90233.82c -0.00000000000000E+00 + 90234.82c -0.00000000000000E+00 + 902350 -0.00000000000000E+00 + 912290 -0.00000000000000E+00 + 912300 -0.00000000000000E+00 + 91231.82c -0.00000000000000E+00 + 91232.82c -0.00000000000000E+00 + 91233.82c -0.00000000000000E+00 + 912340 -0.00000000000000E+00 + 912341 -0.00000000000000E+00 + 912350 -0.00000000000000E+00 + 922300 -0.00000000000000E+00 + 922310 -0.00000000000000E+00 + 92232.82c -0.00000000000000E+00 + 92233.82c -9.11370203663893E-03 + 92234.82c -0.00000000000000E+00 + 92235.82c -0.00000000000000E+00 + 922351 -0.00000000000000E+00 + 92236.82c -0.00000000000000E+00 + 92237.82c -0.00000000000000E+00 + 92238.82c -0.00000000000000E+00 + 92239.82c -0.00000000000000E+00 + 92240.82c -0.00000000000000E+00 + 92241.82c -0.00000000000000E+00 + 922420 -0.00000000000000E+00 + 932330 -0.00000000000000E+00 + 932340 -0.00000000000000E+00 + 93235.82c -0.00000000000000E+00 + 93236.82c -0.00000000000000E+00 + 932361 -0.00000000000000E+00 + 93237.82c -0.00000000000000E+00 + 93238.82c -0.00000000000000E+00 + 93239.82c -0.00000000000000E+00 + 932400 -0.00000000000000E+00 + 932401 -0.00000000000000E+00 + 932410 -0.00000000000000E+00 + 932420 -0.00000000000000E+00 + 942340 -0.00000000000000E+00 + 942350 -0.00000000000000E+00 + 94236.82c -0.00000000000000E+00 + 94237.82c -0.00000000000000E+00 + 942371 -0.00000000000000E+00 + 94238.82c -0.00000000000000E+00 + 94239.82c -0.00000000000000E+00 + 94240.82c -0.00000000000000E+00 + 94241.82c -0.00000000000000E+00 + 94242.82c -0.00000000000000E+00 + 94243.82c -0.00000000000000E+00 + 94244.82c -0.00000000000000E+00 + 942450 -0.00000000000000E+00 + 942460 -0.00000000000000E+00 + 952380 -0.00000000000000E+00 + 952390 -0.00000000000000E+00 + 952400 -0.00000000000000E+00 + 95241.82c -0.00000000000000E+00 + 95242.82c -0.00000000000000E+00 + 95642.82c -0.00000000000000E+00 + 95243.82c -0.00000000000000E+00 + 95244.82c -0.00000000000000E+00 + 95644.82c -0.00000000000000E+00 + 952450 -0.00000000000000E+00 + 952460 -0.00000000000000E+00 + 962380 -0.00000000000000E+00 + 962390 -0.00000000000000E+00 + 96240.82c -0.00000000000000E+00 + 96241.82c -0.00000000000000E+00 + 96242.82c -0.00000000000000E+00 + 96243.82c -0.00000000000000E+00 + 96244.82c -0.00000000000000E+00 + 96245.82c -0.00000000000000E+00 + 96246.82c -0.00000000000000E+00 + 96247.82c -0.00000000000000E+00 + 96248.82c -0.00000000000000E+00 + 96249.82c -0.00000000000000E+00 + 96250.82c -0.00000000000000E+00 + 962510 -0.00000000000000E+00 + 972490 -0.00000000000000E+00 + 972500 -0.00000000000000E+00 + 972510 -0.00000000000000E+00 + 982490 -0.00000000000000E+00 + 982500 -0.00000000000000E+00 + 982510 -0.00000000000000E+00 diff --git a/examples/msbr/msbr_endfb71.serpent b/examples/msbr/msbr_endfb71.serpent new file mode 100644 index 000000000..c24ef28e9 --- /dev/null +++ b/examples/msbr/msbr_endfb71.serpent @@ -0,0 +1,103 @@ +% Include file with burnable material composition on the line below +include "mats/msbr_saltproc_prepr_comp_endfb71.ini" +% Include file with non-burnable material composition on the line below +%include "mats/non_burnable_mats.ini" +% Geometry import will be added by SaltProc on the next line + +% Burnup settings will be added on next line + + + + + +include "geometry/msbr_full.ini" +% --- Moderator graphite: +mat moder -1.84 tmp 900 rgb 68 1 84 moder gr 6000 6000.82c -1.0 %tmp 908 +% --- Hastelloy N +mat hast -8.671 +rgb 127 205 187 +% Natural Ni +%28000.82c -0.677 +28058.82c -0.45492846488214814 +28060.82c -0.18127326881482336 +28061.82c -0.008011341006475749 +28062.82c -0.025961746987204326 +28064.82c -0.006825178309348437 + +% Natural W +%74000.82c -0.250 +74180.82c -0.00029364388293333545 +74182.82c -0.0655676236926255 +74183.82c -0.03560150632186718 +74184.82c -0.07664548021821405 +74186.82c -0.07189174588435995 + +% Natural Cr +%24000.82c -0.070 +24050.82c -0.002921580575502679 +24052.82c -0.05858955364682328 +24053.82c -0.006771510820966751 +24054.82c -0.001717354956707304 + +% Al +13027.82c -0.003 + +% --- Thermal scattering data for graphite: +% endfb71 +%therm gr 900 grph.25t grph.26t % 900K C-nat +$% endfb70 +therm gr 900 grph.15t grph.16t % 900K C-nat + + +set title "MSBR Saltproc long-term, 91% removal, BOL, fresh fuel, ENDF" + +set acelib "endfb71.xsdata" +set declib "endfb71.decay" +set nfylib "endfb71.nfy" +set sfylib "endfb71.sfy" + +% --- Neutron population and criticality cycles: + +set pop 300 400 10 1.0 1 %500 400 60 1.0 1 %30000 400 100 1.0 1 +%set gcu -1 +%set usym 0 3 2 0.0 0.0 0 90 + +% --- Reproducibility off (set value to 1 and define seed to set on): + +%set repro 0 % try speedup +%set shbuf 1 % try speedup + +%set samarium 0 +% --- Reduce unionized energy grid size in order to save some memory +% Use grid thinning with 5e-5 reconstruction tolerance between +% 1e-8 and 15 MeV. + +set egrid 5e-5 1e-10 15.0 + +% --- Cut-offs: + +set fpcut 1E-6 +set stabcut 1E-12 + +% --- Geometry and mesh plots: +%plot 33 3000 3000 150.5 +%trans 10 0 0 0 0 0 45 + +%plot 13 1550 3400 0.0 -155 0 +%plot 13 1000 1000 0 -20 20 135 175 +%plot 13 2000 2000 16.5 + +% --- Depletion parameters +% --- Options for burnup calculation: +set bumode 2 % CRAM method +set pcc 2 % Predictor-corrector calculation off (Linear extrapolation) +%set xscalc 2 % Cross sections from spectrum +%set bunorm 2 +%set opti 3 + +%set power 2.25E+9 dep daytot 60000.0 + +%set rfw 1 restart +set inventory fuel all + +%set printm 1 0.0 diff --git a/scripts/README.md b/scripts/README.md index 86bcbc1e9..51085a4ba 100644 --- a/scripts/README.md +++ b/scripts/README.md @@ -29,11 +29,11 @@ section libraries. Running the script without setting `XSDIR` will install the c #### `download_endfb71.bash` -Downloads and processes the endfb7x incident neutron data, and -ENDFB71 thermal scattering data in ACE format-- as well as -spontaneous and delayed fission neutron and -decay data -- for running Serpent models -on a UNIX-like machine. +Downloads and processes the endfb7x incident neutron data, and ENDFB71 or +ENDFB70 thermal scattering data in ACE format (depending on if the user's Serpent +version supports interpolation of continuous energy thermal scattering cross +sections) -- as well as spontaneous and delayed fission neutron and decay data -- +for running Serpent models on a UNIX-like machine. To run the script, execute ``` diff --git a/scripts/xsdata/download_endfb71.bash b/scripts/xsdata/download_endfb71.bash index 08e31562c..8b19d17e2 100644 --- a/scripts/xsdata/download_endfb71.bash +++ b/scripts/xsdata/download_endfb71.bash @@ -1,15 +1,16 @@ #! ~/bin/bash - -# Get conda working in non interactive shell -CONDA_PATH=$(conda info | grep -i 'base environment' | awk '{print $4}') -source $CONDA_PATH/etc/profile.d/conda.sh - ################ ### DOWNLOAD ### ################ +# Serpent version 2.32 added support for interpolating continuous energy thermal +# scattering cross sections. If a user has this serpent version, then the script +# will download the ENDF/B-VII.1 thermal scattering data which is continuous in +# energy. Otherwise, the script will download the ENDF/B-VII.0 thermal scattering +# data which is tabulated in energy, but is the same evaluation as the ENDF/B-VII.1 data +SUPPORTS_INTERPOLATE_CONTINUOUS_ENERGY=false # DATADIR is the directory where the xs library is extracted to # @yardasol reccomends naming the parent directory where the files -# will be extractd to as "jeff312" +# will be extractd to as "endfb71_ace" if [[ -d "$XSDIR" ]] then DATADIR=$XSDIR/endfb71_ace @@ -29,14 +30,20 @@ do then wget -P $DATADIR $LN$SLUG$D$EXT fi - mkdir -p $DATADIR/$D - unzip -j $DATADIR/$SLUG$D$EXT -d $DATADIR/$D - touch $DATADIR/endfb71.$D - files=$(ls $DATADIR/$D/*.[Ee][Nn][Dd][Ff]) - for file in $files - do - cat $file >> $DATADIR/endfb71.$D - done + if [[ ! -d $DATADIR/$D ]] + then + mkdir -p $DATADIR/$D + unzip -j $DATADIR/$SLUG$D$EXT -d $DATADIR/$D + fi + if [[ ! -f $DATADIR/endfb71.$D ]] + then + touch $DATADIR/endfb71.$D + files=$(ls $DATADIR/$D/*.[Ee][Nn][Dd][Ff]) + for file in $files + do + cat $file >> $DATADIR/endfb71.$D + done + fi done # OpenMC depletion chain @@ -59,11 +66,9 @@ tar -xOzf $DATADIR/$ACEGZ xsdir | cat > $DATADIR/$XSDIR_FILE DATADIR_REGEX=${DATADIR//\//\\\/} # Fix datapath -sed -i "s/datapath/datapath=$DATADIR_REGEX\/acedata/" $DATADIR/$XSDIR_FILE -#echo "datapath=$DATADIR/acedata" > $DATADIR/$XSDIR_FILE +sed -i "s/datapath/datapath=$DATADIR_REGEX/" $DATADIR/$XSDIR_FILE # Get cutoff line number -echo "Get cutoff" LN="$(grep -n "directory" $DATADIR/$XSDIR_FILE)" IFS=':' read -ra arr <<< "$LN" LN=${arr[0]} @@ -72,11 +77,16 @@ LN=${arr[0]} head -n$LN $DATADIR/$XSDIR_FILE | cat > $DATADIR/temp cat $DATADIR/temp > $DATADIR/$XSDIR_FILE rm $DATADIR/temp -#echo "directory" >> $DATADIR/$XSDIR_FILE # Neutron and thermal scattering data LN="https://nucleardata.lanl.gov/lib/" -DATA=("endf71x" "ENDF71SaB") +if ! $SUPPORTS_INTERPOLATE_CONTINUOUS_ENERGY +then + THERM="endf70sab" +else + THERM="ENDF71SaB" +fi +DATA=("$THERM" "endf71x") EXT=".tgz" for D in ${DATA[@]} do @@ -84,10 +94,15 @@ do then wget -P $DATADIR $LN$D$EXT fi - tar -xzf $DATADIR/"$D$EXT" -C $DATADIR --verbose - mv $DATADIR/$D/$D $DATADIR/acedata/. + if [[ ! -d $DATADIR/acedata/$D ]] + then + tar -xzf $DATADIR/"$D$EXT" -C $DATADIR --verbose + mv $DATADIR/$D/$D $DATADIR/acedata/. + fi cat $DATADIR/$D/xsdir >> $DATADIR/$XSDIR_FILE + echo "" >> $DATADIR/$XSDIR_FILE + sed -i "s/$D\//acedata\/$D\//" $DATADIR/$XSDIR_FILE done diff --git a/scripts/xsdata/process_endfb71_to_openmc.bash b/scripts/xsdata/process_endfb71_to_openmc.bash index bdd965b55..6426bebdf 100644 --- a/scripts/xsdata/process_endfb71_to_openmc.bash +++ b/scripts/xsdata/process_endfb71_to_openmc.bash @@ -11,4 +11,4 @@ fi mkdir -p $DATADIR conda activate $OPENMC_ENV -python $OPENMCDIR/scripts/openmc-ace-to-hdf5 --xsdir $XSDIR/endfb71_ace/endfb71.xsdir -d $DATADIR +python $OPENMCDIR/scripts/openmc-ace-to-hdf5 -d $DATADIR --xsdir $XSDIR/endfb71_ace/endfb71.xsdir -m mcnp From 7cec6fb0043f8ac133565ed6f5d70b1c4ec93259 Mon Sep 17 00:00:00 2001 From: yardasol Date: Wed, 5 Oct 2022 16:55:35 -0500 Subject: [PATCH 10/62] fix divergent openmc and serpent model --- examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71.ini | 2 +- examples/msbr/msbr_endfb71.serpent | 2 +- examples/msbr/openmc_model.py | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71.ini b/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71.ini index 1d6564c8f..4ae097b36 100644 --- a/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71.ini +++ b/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71.ini @@ -1,6 +1,6 @@ % Material compositions (after 0.000000 days) -mat fuel -3.350000000E+00 burn 1 fix 09c 900 vol 4.87100E+07 +mat fuel -3.350000000E+00 burn 1 fix 82c 900 vol 4.87100E+07 1001.82c -0.00000000000000E+00 1002.82c -0.00000000000000E+00 1003.82c -0.00000000000000E+00 diff --git a/examples/msbr/msbr_endfb71.serpent b/examples/msbr/msbr_endfb71.serpent index c24ef28e9..3b3442b6d 100644 --- a/examples/msbr/msbr_endfb71.serpent +++ b/examples/msbr/msbr_endfb71.serpent @@ -45,7 +45,7 @@ rgb 127 205 187 % --- Thermal scattering data for graphite: % endfb71 %therm gr 900 grph.25t grph.26t % 900K C-nat -$% endfb70 +% endfb70 therm gr 900 grph.15t grph.16t % 900K C-nat diff --git a/examples/msbr/openmc_model.py b/examples/msbr/openmc_model.py index 21304c86e..f0603b9fd 100644 --- a/examples/msbr/openmc_model.py +++ b/examples/msbr/openmc_model.py @@ -7,7 +7,7 @@ # Materials -fuel = openmc.Material(name='fuel', temperature=900.0) +fuel = openmc.Material(name='fuel') fuel.set_density('g/cm3', density=3.35) fuel.add_components({'Li7': 0.0787474673879085, 'Be9': 0.0225566879138321, @@ -18,12 +18,12 @@ fuel.depletable = True fuel.volume = 48710000.0 -moder = openmc.Material(name='graphite', temperature=900.0) +moder = openmc.Material(name='graphite') moder.set_density('g/cm3', density=1.84) moder.add_nuclide('C0', 1.000, percent_type='wo') moder.add_s_alpha_beta('c_Graphite') -hast = openmc.Material(name='hastelloyN', temperature=900.0) +hast = openmc.Material(name='hastelloyN') hast.set_density('g/cm3', density=8.671) hast.add_components({'Al27': 0.003, 'Ni': 0.677, @@ -153,7 +153,7 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): settings = openmc.Settings() settings.particles = 300 settings.batches = 400 -settings.inative = 5 +settings.inactive = 10 settings.temperature = {'default': 900, 'method': 'interpolation'} settings.export_to_xml() From aaae55f0d4fc7edf9d2f3d78534f3d1984eded47 Mon Sep 17 00:00:00 2001 From: yardasol Date: Tue, 18 Oct 2022 14:09:34 -0500 Subject: [PATCH 11/62] reduce region complexities in openmc model --- examples/msbr/_control_rods.py | 75 +- examples/msbr/_core_elements.py | 134 +- examples/msbr/_root_geometry.py | 33 +- examples/msbr/model-plotting.ipynb | 6392 +++++++++++++++++++++++++++- examples/msbr/openmc_model.py | 185 +- 5 files changed, 6593 insertions(+), 226 deletions(-) diff --git a/examples/msbr/_control_rods.py b/examples/msbr/_control_rods.py index 0f9a9fafd..8bb9ade7e 100644 --- a/examples/msbr/_control_rods.py +++ b/examples/msbr/_control_rods.py @@ -4,9 +4,15 @@ def shared_cr_geometry(): fuel_hole = openmc.ZCylinder(r=5.08, name='cr_fuel_hole') elem_bound = openmc.rectangular_prism(7.62*2, 7.62*2) # Pin outer boundary + eb_minx, eb_maxx, eb_miny, eb_maxy = list(elem_bound.get_surfaces().values()) gr_sq_neg = openmc.rectangular_prism(7.23646*2, 7.23646*2, corner_radius=0.99) # Graphite square # params for + (gr_minx, gr_maxx, gr_miny, gr_maxy, + gr_cyl_lb, gr_cyl_minx, gr_cyl_miny, + gr_cyl_ul, gr_cyl_maxy, gr_cyl_br, + gr_cyl_maxx, gr_cyl_ru) = list(gr_sq_neg.get_surfaces().values()) + r_d = 1.16 e_d = 2 * r_d / np.sqrt(3) r_dt = 0.8 @@ -23,33 +29,78 @@ def shared_cr_geometry(): ru_t = openmc.ZCylinder(-l3, l1, r_dt, name='corner_ru_tip') lb_t = openmc.ZCylinder(l3, -l1, r_dt, name='corner_lb_tip') - gr_corners = elem_bound & (ul | br | lb | ru | - -ul_t | -br_t | -ru_t | -lb_t) + gr_ul = ul & -eb_maxy & +gr_maxy + gr_ul_fill = ul & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy + gr_br = br & +eb_miny & -gr_miny + gr_br_fill = br & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny + gr_lb = lb & +eb_minx & -gr_minx + gr_lb_fill = lb & +gr_cyl_lb & +gr_minx & -gr_cyl_minx & -gr_cyl_miny + gr_ru = ru & -eb_maxx & +gr_maxx + gr_ru_fill = ru & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxx & +gr_cyl_maxy + + gr_ul_t = -ul_t & +eb_miny & -gr_miny + gr_br_t = -br_t & -eb_maxy & +gr_maxy + gr_ru_t = -ru_t & +eb_minx & -gr_minx + gr_lb_t = -lb_t & -eb_maxx & +gr_maxx + + gr_corners = (gr_ul, gr_br, gr_lb, gr_ru, gr_ul_fill, gr_br_fill, gr_lb_fill, gr_ru_fill) + gr_t = (gr_ul_t, gr_br_t, gr_ru_t, gr_lb_t) inter_elem_channel = (~gr_sq_neg & elem_bound & ~ul & ~br & ~lb & ~ru & - +ul_t & +ru_t & +ru_t & +lb_t) + +ul_t & +br_t & +ru_t & +lb_t) - return fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel + return fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel -def control_rod(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel, fuel, moder): +def control_rod(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, fuel, moder): s1 = openmc.ZCylinder(r=4.7625, name='control_rod') c1 = openmc.Cell(fill=moder, region=-s1, name='control_rod') c2 = openmc.Cell(fill=fuel, region=(+s1 & -fuel_hole), name='cr_fuel_inner') - moderator_block = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg | gr_corners), name='cr_moderator') - fuel_outer = openmc.Cell(fill=fuel, region=inter_elem_channel, name='cr_fuel_outer') + c3 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg), name='cr_moderator') + c4 = openmc.Cell(fill=fuel, region=inter_elem_channel, name='cr_fuel_outer') + + c3_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='cr_moderator_ul') + c3_br = openmc.Cell(fill=moder, region=gr_corners[1], name='cr_moderator_br') + c3_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='cr_moderator_ru') + c3_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='cr_moderator_lb') + c3_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='cr_moderator_ul_fill') + c3_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='cr_moderator_br_fill') + c3_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='cr_moderator_ru_fill') + c3_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='cr_moderator_lb_fill') + c3_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='cr_moderator_ul_t') + c3_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='cr_moderator_br_t') + c3_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='cr_moderator_ru_t') + c3_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='cr_moderator_lb_t') + + #universe_id=3 cr = openmc.Universe(name='control_rod') - cr.add_cells([c1, c2, moderator_block, fuel_outer]) + cr.add_cells([c1, c2, c3, c4, c3_ul, c3_br, c3_ru, c3_lb, c3_ulf, c3_brf, c3_ruf, c3_lbf, c3_ul_t, c3_br_t, c3_ru_t, c3_lb_t]) + return cr -def control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel, fuel, moder): +def control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, fuel, moder): c1 = openmc.Cell(fill=fuel, region=(-fuel_hole), name='crc_fuel_inner') - moderator_block = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg | gr_corners), name='crc_moderator') - fuel_outer = openmc.Cell(fill=fuel, region=inter_elem_channel, name='crc_fuel_outer') + c2 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg), name='crc_moderator') + c3 = openmc.Cell(fill=fuel, region=inter_elem_channel, name='crc_fuel_outer') + + c2_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='crc_moderator_ul') + c2_br = openmc.Cell(fill=moder, region=gr_corners[1], name='crc_moderator_br') + c2_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='crc_moderator_ru') + c2_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='crc_moderator_lb') + c2_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='crc_moderator_ul_fill') + c2_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='crc_moderator_br_fill') + c2_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='crc_moderator_ru_fill') + c2_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='crc_moderator_lb_fill') + c2_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='crc_moderator_ul_t') + c2_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='crc_moderator_br_t') + c2_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='crc_moderator_ru_t') + c2_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='crc_moderator_lb_t') + # universe_id=4 crc = openmc.Universe(name='control_rod_channel') - crc.add_cells([c1, moderator_block, fuel_outer]) + crc.add_cells([c1, c2, c3, c2_ul, c2_br, c2_ru, c2_lb, c2_ulf, c2_brf, c2_ruf, c2_lbf, c2_ul_t, c2_br_t, c2_ru_t, c2_lb_t]) + return crc diff --git a/examples/msbr/_core_elements.py b/examples/msbr/_core_elements.py index e2b276814..0db560c97 100644 --- a/examples/msbr/_core_elements.py +++ b/examples/msbr/_core_elements.py @@ -5,11 +5,25 @@ def _bound_zone_cells(cells_tuples, levels): """Helper function that moves Zone IA and Zone IIA cells to the appropriate height.""" cell_list = [] + n_levels = len(cells_tuples) for i, cells in enumerate(cells_tuples): - lower_bound = levels[i] - upper_bound = levels[i+1] + if i == 0: + lower_bound = None + upper_bound = levels[i] + elif i == n_levels - 1: + lower_bound = levels[i-1] + upper_bound = None + else: + lower_bound = levels[i-1] + upper_bound = levels[i] + for j, cell in enumerate(cells): - cell.region = cell.region & +lower_bound & -upper_bound + if lower_bound is None: + cell.region = cell.region & -upper_bound + elif upper_bound is None: + cell.region = cell.region & +lower_bound + else: + cell.region = cell.region & +lower_bound & -upper_bound cell_list.append(cell) return cell_list @@ -18,8 +32,13 @@ def shared_elem_geometry(): Specs found in Robertson, 1971 Fig 3.4 (p. 17) and Fig 3.5 (p.18)""" elem_bound = openmc.rectangular_prism(5.08*2, 5.08*2) # Pin outer boundary + eb_minx, eb_maxx, eb_miny, eb_maxy = list(elem_bound.get_surfaces().values()) gr_sq_neg = openmc.rectangular_prism(4.953*2, 4.953*2, corner_radius=0.46) # Graphite square + (gr_minx, gr_maxx, gr_miny, gr_maxy, + gr_cyl_lb, gr_cyl_minx, gr_cyl_miny, + gr_cyl_ul, gr_cyl_maxy, gr_cyl_br, + gr_cyl_maxx, gr_cyl_ru) = list(gr_sq_neg.get_surfaces().values()) # params for main pin section for both I-A and II-A r_d = 0.66802 @@ -35,19 +54,34 @@ def shared_elem_geometry(): ru_t = openmc.ZCylinder(-l3, l1, r_d, name='corner_ru_tip') lb_t = openmc.ZCylinder(l3, -l1, r_d, name='corner_lb_tip') - gr_corners = elem_bound & (-ul | -br | -lb | -ru | - -ul_t | -br_t | -ru_t | -lb_t) + gr_ul = -ul & -eb_maxy & +gr_maxy# | + gr_ul_fill = -ul & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy + gr_br = -br & +eb_miny & -gr_miny# | + gr_br_fill = -br & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny + gr_lb = -lb & +eb_minx & -gr_minx# | + gr_lb_fill = -lb & +gr_cyl_lb & +gr_minx & -gr_cyl_minx & -gr_cyl_miny + gr_ru = -ru & -eb_maxx & +gr_maxx# | + gr_ru_fill = -ru & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxx & +gr_cyl_maxy + + gr_ul_t = -ul_t & +eb_miny & -gr_miny + gr_br_t = -br_t & -eb_maxy & +gr_maxy + gr_ru_t = -ru_t & +eb_minx & -gr_minx + gr_lb_t = -lb_t & -eb_maxx & +gr_maxx + + gr_corners = (gr_ul, gr_br, gr_lb, gr_ru, gr_ul_fill, gr_br_fill, gr_lb_fill, gr_ru_fill) + gr_t = (gr_ul_t, gr_br_t, gr_ru_t, gr_lb_t) inter_elem_channel = (~gr_sq_neg & elem_bound & - +ul & +br & +lb & +ru & - +ul_t & +ru_t & +ru_t & +lb_t) + +ul & +br & +lb & +ru & + +ul_t & +br_t & +ru_t & +lb_t) + gr_round_4 = openmc.ZCylinder(r=2.2225, name='gr_round_4') - return elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4 + return elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4 -def zoneIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4, moder, fuel, hast): +def zoneIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4, moder, fuel, hast): """Zone IA element. Specs found in Robertson, 1971 Fig 3.4 (p. 17)""" - elem_levels = [0.0, 22.86, 419.10, 438.15, 445.135, 449.58] + elem_levels = [22.86, 419.10, 438.15, 445.135] level_bounds = [] for level in elem_levels: level_bounds.append(openmc.ZPlane(z0=level)) @@ -57,7 +91,7 @@ def zoneIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4, mo h = 12.66 theta = np.arctan(4.953 / h) r2 = (1 / np.cos(theta))**2 - 1 - s3 = openmc.ZCone(z0=h + elem_levels[3], r2=r2, name='cone_i') + s3 = openmc.ZCone(z0=h + elem_levels[2], r2=r2, name='cone_i') c1 = openmc.Cell(fill=fuel, region=(-s2), name='ia_fuel_inner_1') c2 = openmc.Cell(fill=moder, region=(+s2 & -s1), name='ia_moderator_1') @@ -65,13 +99,29 @@ def zoneIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4, mo ia1 = (c1, c2, c3) # I-A main (lower 2) + s2 = s2.clone() + gr_sq_neg = gr_sq_neg.clone() c4 = c1.clone(clone_materials=False) c4.name = 'ia_fuel_inner_main' - c5 = openmc.Cell(fill=moder, region=(+s2 & - gr_sq_neg | - gr_corners), name='ia_moderator_main') + c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg), name='ia_moderator_main') c6 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='ia_fuel_outer_main') - iam = (c4, c5, c6) + c5_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='ia_moderator_main_ul') + c5_br = openmc.Cell(fill=moder, region=gr_corners[1], name='ia_moderator_main_br') + c5_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='ia_moderator_main_ru') + c5_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='ia_moderator_main_lb') + c5_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='ia_moderator_main_ul_fill') + c5_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='ia_moderator_main_br_fill') + c5_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='ia_moderator_main_ru_fill') + c5_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='ia_moderator_main_lb_fill') + c5_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='ia_moderator_main_ul_t') + c5_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='ia_moderator_main_br_t') + c5_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='ia_moderator_main_ru_t') + c5_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='ia_moderator_main_lb_t') + + iam = (c4, c5, c6, + c5_ul, c5_br, c5_ru, c5_lb, + c5_ulf, c5_brf, c5_ruf, c5_lbf, + c5_ul_t, c5_br_t, c5_ru_t, c5_lb_t) # I-A 2 (upper 1) c7 = c1.clone(clone_materials=False) @@ -82,7 +132,10 @@ def zoneIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4, mo c9.name = 'ia_fuel_outer_2' ia2 = (c7, c8, c9) - # I-A 3 (upper 2) + # I-A 3 (upper 2)' + s2 = s2.clone() + s3 = s3.clone() + elem_bound = elem_bound.clone() c10 = c1.clone(clone_materials=False) c10.name = 'ia_fuel_inner_3' c11 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='ia_moderator_3') @@ -90,6 +143,8 @@ def zoneIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4, mo ia3 = (c10, c11, c12) # I-A 4 (upper 3) + s2 = s2.clone() + elem_bound = elem_bound.clone() c13 = openmc.Cell(fill=hast, region=(-s2), name='ia_hast') c14 = openmc.Cell(fill=moder, region=(+s2 & -gr_round_4), name='ia_moderator_4') c15 = openmc.Cell(fill=fuel, region=(+gr_round_4 & elem_bound), name='ia_fuel_outer_4') @@ -101,9 +156,9 @@ def zoneIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4, mo ia.add_cells(_bound_zone_cells(elem_cells, level_bounds)) return ia -def zoneIIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4, moder, fuel): +def zoneIIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4, moder, fuel): """Zone IIA element. Specs found in Robertson, 1971 Fig 3.5 (p. 18)""" - elem_levels = [0.0, 434.34, 436.88, 439.42, 441.96, 449.58] + elem_levels = [434.34, 436.88, 439.42, 441.96] level_bounds = [] for level in elem_levels: level_bounds.append(openmc.ZPlane(z0=level)) @@ -113,23 +168,50 @@ def zoneIIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4, m h = 6.5 theta = np.arctan(3.65125 / h) r2 = (1 / np.cos(theta))**2 - 1 - s4 = openmc.ZCone(z0=h + elem_levels[3], r2=r2, name='cone_ii') + s4 = openmc.ZCone(z0=h + elem_levels[2], r2=r2, name='cone_ii') # II-A main (lower 1) c1 = openmc.Cell(fill=fuel, region=(-s1), name='iia_fuel_inner_main') - c2 = openmc.Cell(fill=moder, region=(+s1 & gr_sq_neg | gr_corners), name='iia_moderator_main') + c2 = openmc.Cell(fill=moder, region=(+s1 & gr_sq_neg), name='iia_moderator_main') c3 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='iia_fuel_outer_main') c3.name = 'iia_fuel_outer_main' - iiam = (c1, c2, c3) + c2_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='iia_moderator_main_ul') + c2_br = openmc.Cell(fill=moder, region=gr_corners[1], name='iia_moderator_main_br') + c2_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='iia_moderator_main_ru') + c2_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='iia_moderator_main_lb') + c2_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='iia_moderator_main_ul_fill') + c2_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='iia_moderator_main_br_fill') + c2_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='iia_moderator_main_ru_fill') + c2_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='iia_moderator_main_lb_fill') + c2_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='iia_moderator_main_ul_t') + c2_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='iia_moderator_main_br_t') + c2_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='iia_moderator_main_ru_t') + c2_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='iia_moderator_main_lb_t') + iiam = (c1, c2, c3, c2_ul, c2_br, c2_ru, c2_lb, c2_ulf, c2_brf, c2_ruf, c2_lbf, c2_ul_t, c2_br_t, c2_ru_t, c2_lb_t) # II-A 2 (upper 1) + gr_sq_neg = gr_sq_neg.clone() c4 = openmc.Cell(fill=fuel, region=(-s2), name='iia_fuel_inner_2') - c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg | gr_corners), name='iia_moderator_2') + c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg), name='iia_moderator_2') c6 = c3.clone(clone_materials=False) c6.name = 'iia_fuel_outer_2' - iia2 = (c4, c5, c6) + c5_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='iia_moderator_2_ul') + c5_br = openmc.Cell(fill=moder, region=gr_corners[1], name='iia_moderator_2_br') + c5_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='iia_moderator_2_ru') + c5_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='iia_moderator_2_lb') + c5_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='iia_moderator_2_ul_fill') + c5_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='iia_moderator_2_br_fill') + c5_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='iia_moderator_2_ru_fill') + c5_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='iia_moderator_2_lb_fill') + c5_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='iia_moderator_2_ul_t') + c5_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='iia_moderator_2_br_t') + c5_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='iia_moderator_2_ru_t') + c5_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='iia_moderator_2_lb_t') + iia2 = (c4, c5, c6, c5_ul, c5_br, c5_ru, c5_lb, c5_ulf, c5_brf, c5_ruf, c5_lbf, c5_ul_t, c5_br_t, c5_ru_t, c5_lb_t) # II-A 3 (upper 2) + s2 = s2.clone() + elem_bound = elem_bound.clone() c7 = c4.clone(clone_materials=False) c7.name = 'iia_fuel_inner_3' c8 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='iia_moderator_3') @@ -137,14 +219,17 @@ def zoneIIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4, m iia3 = (c7, c8, c9) # II-A 4 (upper 3) + elem_bound = elem_bound.clone() c10 = openmc.Cell(fill=moder, region=(-s4), name='iia_moderator_4') c11 = openmc.Cell(fill=fuel, region=(+s4 & elem_bound), name='iia_fuel_outer_4') iia4 = (c10, c11) # II-A 5 (upper 4) + elem_bound = elem_bound.clone() c12 = openmc.Cell(fill=moder, region=(-gr_round_4), name='iia_moderator_5') c13 = openmc.Cell(fill=fuel, region=(+gr_round_4 & elem_bound), name='iia_fuel_outer_5') iia5 = (c12, c13) + elem_cells = [iiam, iia2, iia3, iia4, iia5] # universe_id=2 iia = openmc.Universe(name='zone_iia') @@ -152,6 +237,7 @@ def zoneIIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4, m return iia def void_cell(elem_bound): + elem_bound = elem_bound.clone() c1 = openmc.Cell(region=elem_bound, name='lattice_void') #universe_id=5 v = openmc.Universe(name='lattice_void') @@ -169,7 +255,9 @@ def graphite_triangles(elem_bound, moder, fuel): (s3, 'bottom_right')] univs = [] for i, (s, name) in enumerate(surfs): + elem_bound = elem_bound.clone() c1 = openmc.Cell(fill=moder, region=(-s & elem_bound)) + elem_bound = elem_bound.clone() c2 = openmc.Cell(fill=fuel, region=(+s & elem_bound)) # universe_id = 6+i gr_tri = openmc.Universe(name=f'{name}_triangle') diff --git a/examples/msbr/_root_geometry.py b/examples/msbr/_root_geometry.py index d2cefcd21..389b1b1cd 100644 --- a/examples/msbr/_root_geometry.py +++ b/examples/msbr/_root_geometry.py @@ -58,35 +58,48 @@ def zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core zone_iib_reg = None elem_cells = [] for i, pos in enumerate(large_positions): + pos = np.round(pos, 3) r1, r2 = big_radii[i] t1 = pos - large_half_w t2 = pos + large_half_w large_elem = openmc.model.CylinderSector(r1, r2, t1, t2) elem_hole = hole_region.rotate((0.0, 0.0, pos)) - elem_reg = -large_elem & elem_hole + elem_reg = -large_elem if isinstance(zone_iib_reg, openmc.Region): zone_iib_reg = zone_iib_reg | elem_reg else: zone_iib_reg = elem_reg - small_start = t2 + adjacent_angular_offset + + elem_reg = -large_elem & elem_hole + elem_cells.append(openmc.Cell(fill=moder, region=elem_reg, + name=f'iib_large_element_moderator_{pos}')) + elem_cells.append(openmc.Cell(fill=fuel, region=~elem_hole, + name=f'iib_large_element_fuel_hole_{pos}')) + t1 = t2 + adjacent_angular_offset r1, r2 = small_radii - t1 = small_start for i in range(0, small_elems_per_octant): t2 = t1 + small_angular_width - elem_reg = -openmc.model.CylinderSector(r1, r2, t1, t2) + elem_reg = -openmc.model.CylinderSector(small_radii[0], small_radii[1], t1, t2) pos = t2 - (small_angular_width / 2) + pos = np.round(pos, 3) + elem_cells.append(openmc.Cell(fill=moder, region=elem_reg, name=f'iib_small_element_{pos}')) zone_iib_reg = zone_iib_reg | elem_reg t1 = t2 + adjacent_angular_offset - c1 = openmc.Cell(fill=moder, region=(zone_iib_reg & - ~zone_i_boundary & - +core_base & - -core_top), name='iib_moderator') - c2 = openmc.Cell(fill=fuel, region=(~zone_iib_reg & + c1 = openmc.Cell(fill=fuel, region=(~zone_iib_reg & ~zone_i_boundary & -zone_ii_boundary & +core_base & -core_top), name='iib_fuel') - return c1, c2 + + iib = openmc.Universe(name='zone_iib') + iib.add_cells(elem_cells) + iib.add_cell(c1) + + iib = openmc.Cell(fill=iib, region=(~zone_i_boundary & + -zone_ii_boundary & + +core_base & + -core_top), name='zone_iib') + return iib def annulus(zone_ii_boundary, annulus_boundary, core_base, core_top, fuel): annulus_reg = +zone_ii_boundary & -annulus_boundary & +core_base & -core_top diff --git a/examples/msbr/model-plotting.ipynb b/examples/msbr/model-plotting.ipynb index ec6a7930f..991a0d6b4 100644 --- a/examples/msbr/model-plotting.ipynb +++ b/examples/msbr/model-plotting.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "code", - "execution_count": null, + "execution_count": 1, "id": "bdbd4aaa", "metadata": {}, "outputs": [], @@ -13,13 +13,13 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 2, "id": "56642afc", "metadata": {}, "outputs": [], "source": [ "# Create materials\n", - "fuel, moder, hast = mat\n", + "fuel = openmc.Material(name='fuel')\n", "fuel.set_density('g/cm3', density=3.35)\n", "fuel.add_components({'Li7': 0.0787474673879085,\n", " 'Be9': 0.0225566879138321,\n", @@ -49,7 +49,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 3, "id": "5bf1ab77", "metadata": {}, "outputs": [], @@ -61,20 +61,34 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 4, "id": "3e341197", "metadata": {}, "outputs": [], "source": [ - "def _bound_zone_cells(cells_tuples, levels):\n", + " def _bound_zone_cells(cells_tuples, levels):\n", " \"\"\"Helper function that moves Zone IA and Zone IIA cells to the\n", " appropriate height.\"\"\"\n", " cell_list = []\n", + " n_levels = len(cells_tuples)\n", + " print(f'{n_levels}')\n", " for i, cells in enumerate(cells_tuples):\n", - " lower_bound = levels[i]\n", - " upper_bound = levels[i+1]\n", + " if i == 0:\n", + " lower_bound = None\n", + " upper_bound = levels[i]\n", + " elif i == n_levels - 1:\n", + " lower_bound = levels[i-1]\n", + " upper_bound = None\n", + " else:\n", + " lower_bound = levels[i-1]\n", + " upper_bound = levels[i]\n", " for j, cell in enumerate(cells):\n", - " cell.region = cell.region & +lower_bound & -upper_bound\n", + " if lower_bound is None:\n", + " cell.region = cell.region & -upper_bound\n", + " elif upper_bound is None:\n", + " cell.region = cell.region & +lower_bound\n", + " else:\n", + " cell.region = cell.region & +lower_bound & -upper_bound\n", " cell_list.append(cell)\n", " return cell_list\n", "\n", @@ -83,8 +97,13 @@ " Specs found in Robertson, 1971 Fig 3.4 (p. 17) and Fig 3.5 (p.18)\"\"\"\n", "\n", " elem_bound = openmc.rectangular_prism(5.08*2, 5.08*2) # Pin outer boundary\n", + " eb_minx, eb_maxx, eb_miny, eb_maxy = list(elem_bound.get_surfaces().values())\n", "\n", " gr_sq_neg = openmc.rectangular_prism(4.953*2, 4.953*2, corner_radius=0.46) # Graphite square\n", + " (gr_minx, gr_maxx, gr_miny, gr_maxy, \n", + " gr_cyl_lb, gr_cyl_minx, gr_cyl_miny, \n", + " gr_cyl_ul, gr_cyl_maxy, gr_cyl_br, \n", + " gr_cyl_maxx, gr_cyl_ru) = list(gr_sq_neg.get_surfaces().values())\n", "\n", " # params for main pin section for both I-A and II-A\n", " r_d = 0.66802\n", @@ -100,30 +119,47 @@ " ru_t = openmc.ZCylinder(-l3, l1, r_d, name='corner_ru_tip')\n", " lb_t = openmc.ZCylinder(l3, -l1, r_d, name='corner_lb_tip')\n", "\n", - " gr_corners = elem_bound & (-ul | -br | -lb | -ru | \n", - " -ul_t | -br_t | -ru_t | -lb_t)\n", + " #gr_corners = elem_bound & (-ul | -br | -lb | -ru)\n", + " \n", + " gr_ul = -ul & -eb_maxy & +gr_maxy# | \n", + " gr_ul_fill = -ul & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy\n", + " gr_br = -br & +eb_miny & -gr_miny# | \n", + " gr_br_fill = -br & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny \n", + " gr_lb = -lb & +eb_minx & -gr_minx# | \n", + " gr_lb_fill = -lb & +gr_cyl_lb & +gr_minx & -gr_cyl_minx & -gr_cyl_miny \n", + " gr_ru = -ru & -eb_maxx & +gr_maxx# | \n", + " gr_ru_fill = -ru & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxx & +gr_cyl_maxy\n", + "\n", + " \n", + " gr_ul_t = -ul_t & +eb_miny & -gr_miny\n", + " gr_br_t = -br_t & -eb_maxy & +gr_maxy\n", + " gr_ru_t = -ru_t & +eb_minx & -gr_minx\n", + " gr_lb_t = -lb_t & -eb_maxx & +gr_maxx \n", + " \n", + " gr_corners = (gr_ul, gr_br, gr_lb, gr_ru, gr_ul_fill, gr_br_fill, gr_lb_fill, gr_ru_fill)\n", + " gr_t = (gr_ul_t, gr_br_t, gr_ru_t, gr_lb_t)\n", "\n", " inter_elem_channel = (~gr_sq_neg & elem_bound &\n", - " +ul & +br & +lb & +ru &\n", - " +ul_t & +ru_t & +ru_t & +lb_t)\n", + " +ul & +br & +lb & +ru &\n", + " +ul_t & +br_t & +ru_t & +lb_t)\n", " \n", " gr_round_4 = openmc.ZCylinder(r=2.2225, name='gr_round_4')\n", "\n", " \n", - " return elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4\n", + " return elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4\n", " " ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 5, "id": "71b4a322", "metadata": {}, "outputs": [], "source": [ - "def zoneIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4):\n", + "def zoneIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4):\n", " \"\"\"Zone IA element. Specs found in Robertson, 1971 Fig 3.4 (p. 17)\"\"\"\n", - " elem_levels = [0.0, 22.86, 419.10, 438.15, 445.135, 449.58]\n", + " elem_levels = [22.86, 419.10, 438.15, 445.135]\n", " level_bounds = []\n", " for level in elem_levels:\n", " level_bounds.append(openmc.ZPlane(z0=level))\n", @@ -133,7 +169,7 @@ " h = 12.66\n", " theta = np.arctan(4.953 / h)\n", " r2 = (1 / np.cos(theta))**2 - 1\n", - " s3 = openmc.ZCone(z0=h + elem_levels[3], r2=r2, name='cone_i')\n", + " s3 = openmc.ZCone(z0=h + elem_levels[2], r2=r2, name='cone_i')\n", "\n", " c1 = openmc.Cell(fill=fuel, region=(-s2), name='ia_fuel_inner_1')\n", " c2 = openmc.Cell(fill=moder, region=(+s2 & -s1), name='ia_moderator_1')\n", @@ -141,13 +177,26 @@ " ia1 = (c1, c2, c3)\n", " \n", " # I-A main (lower 2)\n", + " s2 = s2.clone()\n", + " gr_sq_neg = gr_sq_neg.clone()\n", " c4 = c1.clone(clone_materials=False)\n", " c4.name = 'ia_fuel_inner_main'\n", - " c5 = openmc.Cell(fill=moder, region=(+s2 &\n", - " gr_sq_neg |\n", - " gr_corners), name='ia_moderator_main')\n", + " c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg), name='ia_moderator_main')\n", " c6 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='ia_fuel_outer_main')\n", - " iam = (c4, c5, c6)\n", + " c5_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='ia_moderator_main_ul')\n", + " c5_br = openmc.Cell(fill=moder, region=gr_corners[1], name='ia_moderator_main_br')\n", + " c5_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='ia_moderator_main_ru')\n", + " c5_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='ia_moderator_main_lb')\n", + " c5_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='ia_moderator_main_ul_fill')\n", + " c5_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='ia_moderator_main_br_fill')\n", + " c5_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='ia_moderator_main_ru_fill')\n", + " c5_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='ia_moderator_main_lb_fill')\n", + " c5_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='ia_moderator_main_ul_t')\n", + " c5_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='ia_moderator_main_br_t')\n", + " c5_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='ia_moderator_main_ru_t')\n", + " c5_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='ia_moderator_main_lb_t')\n", + " \n", + " iam = (c4, c5, c6, c5_ul, c5_br, c5_ru, c5_lb, c5_ulf, c5_brf, c5_ruf, c5_lbf, c5_ul_t, c5_br_t, c5_ru_t, c5_lb_t)\n", " \n", " # I-A 2 (upper 1)\n", " c7 = c1.clone(clone_materials=False)\n", @@ -158,7 +207,10 @@ " c9.name = 'ia_fuel_outer_2'\n", " ia2 = (c7, c8, c9)\n", "\n", - " # I-A 3 (upper 2)\n", + " # I-A 3 (upper 2)'\n", + " s2 = s2.clone()\n", + " s3 = s3.clone()\n", + " elem_bound = elem_bound.clone()\n", " c10 = c1.clone(clone_materials=False)\n", " c10.name = 'ia_fuel_inner_3'\n", " c11 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='ia_moderator_3')\n", @@ -166,6 +218,8 @@ " ia3 = (c10, c11, c12) \n", " \n", " # I-A 4 (upper 3)\n", + " s2 = s2.clone()\n", + " elem_bound = elem_bound.clone()\n", " c13 = openmc.Cell(fill=hast, region=(-s2), name='ia_hast')\n", " c14 = openmc.Cell(fill=moder, region=(+s2 & -gr_round_4), name='ia_moderator_4')\n", " c15 = openmc.Cell(fill=fuel, region=(+gr_round_4 & elem_bound), name='ia_fuel_outer_4')\n", @@ -178,9 +232,9 @@ " \n", " return ia\n", "\n", - "def zoneIIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4):\n", + "def zoneIIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4):\n", " \"\"\"Zone IIA element. Specs found in Robertson, 1971 Fig 3.5 (p. 18)\"\"\"\n", - " elem_levels = [0.0, 434.34, 436.88, 439.42, 441.96, 449.58]\n", + " elem_levels = [434.34, 436.88, 439.42, 441.96]\n", " level_bounds = []\n", " for level in elem_levels:\n", " level_bounds.append(openmc.ZPlane(z0=level))\n", @@ -190,23 +244,50 @@ " h = 6.5\n", " theta = np.arctan(3.65125 / h)\n", " r2 = (1 / np.cos(theta))**2 - 1\n", - " s4 = openmc.ZCone(z0=h + elem_levels[3], r2=r2, name='cone_ii')\n", + " s4 = openmc.ZCone(z0=h + elem_levels[2], r2=r2, name='cone_ii')\n", "\n", " # II-A main (lower 1)\n", " c1 = openmc.Cell(fill=fuel, region=(-s1), name='iia_fuel_inner_main')\n", - " c2 = openmc.Cell(fill=moder, region=(+s1 & gr_sq_neg | gr_corners), name='iia_moderator_main')\n", + " c2 = openmc.Cell(fill=moder, region=(+s1 & gr_sq_neg), name='iia_moderator_main')\n", " c3 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='iia_fuel_outer_main')\n", " c3.name = 'iia_fuel_outer_main'\n", - " iiam = (c1, c2, c3)\n", + " c2_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='iia_moderator_main_ul')\n", + " c2_br = openmc.Cell(fill=moder, region=gr_corners[1], name='iia_moderator_main_br')\n", + " c2_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='iia_moderator_main_ru')\n", + " c2_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='iia_moderator_main_lb')\n", + " c2_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='iia_moderator_main_ul_fill')\n", + " c2_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='iia_moderator_main_br_fill')\n", + " c2_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='iia_moderator_main_ru_fill')\n", + " c2_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='iia_moderator_main_lb_fill')\n", + " c2_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='iia_moderator_main_ul_t')\n", + " c2_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='iia_moderator_main_br_t')\n", + " c2_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='iia_moderator_main_ru_t')\n", + " c2_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='iia_moderator_main_lb_t')\n", + " iiam = (c1, c2, c3, c2_ul, c2_br, c2_ru, c2_lb, c2_ulf, c2_brf, c2_ruf, c2_lbf, c2_ul_t, c2_br_t, c2_ru_t, c2_lb_t)\n", "\n", " # II-A 2 (upper 1)\n", + " gr_sq_neg = gr_sq_neg.clone()\n", " c4 = openmc.Cell(fill=fuel, region=(-s2), name='iia_fuel_inner_2')\n", - " c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg | gr_corners), name='iia_moderator_2')\n", + " c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg), name='iia_moderator_2')\n", " c6 = c3.clone(clone_materials=False)\n", " c6.name = 'iia_fuel_outer_2'\n", - " iia2 = (c4, c5, c6)\n", + " c5_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='iia_moderator_2_ul')\n", + " c5_br = openmc.Cell(fill=moder, region=gr_corners[1], name='iia_moderator_2_br')\n", + " c5_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='iia_moderator_2_ru')\n", + " c5_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='iia_moderator_2_lb')\n", + " c5_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='iia_moderator_2_ul_fill')\n", + " c5_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='iia_moderator_2_br_fill')\n", + " c5_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='iia_moderator_2_ru_fill')\n", + " c5_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='iia_moderator_2_lb_fill')\n", + " c5_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='iia_moderator_2_ul_t')\n", + " c5_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='iia_moderator_2_br_t')\n", + " c5_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='iia_moderator_2_ru_t')\n", + " c5_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='iia_moderator_2_lb_t')\n", + " iia2 = (c4, c5, c6, c5_ul, c5_br, c5_ru, c5_lb, c5_ulf, c5_brf, c5_ruf, c5_lbf, c5_ul_t, c5_br_t, c5_ru_t, c5_lb_t)\n", "\n", " # II-A 3 (upper 2)\n", + " s2 = s2.clone()\n", + " elem_bound = elem_bound.clone()\n", " c7 = c4.clone(clone_materials=False)\n", " c7.name = 'iia_fuel_inner_3'\n", " c8 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='iia_moderator_3')\n", @@ -214,11 +295,13 @@ " iia3 = (c7, c8, c9)\n", "\n", " # II-A 4 (upper 3) \n", + " elem_bound = elem_bound.clone()\n", " c10 = openmc.Cell(fill=moder, region=(-s4), name='iia_moderator_4')\n", " c11 = openmc.Cell(fill=fuel, region=(+s4 & elem_bound), name='iia_fuel_outer_4')\n", " iia4 = (c10, c11)\n", "\n", " # II-A 5 (upper 4)\n", + " elem_bound = elem_bound.clone()\n", " c12 = openmc.Cell(fill=moder, region=(-gr_round_4), name='iia_moderator_5')\n", " c13 = openmc.Cell(fill=fuel, region=(+gr_round_4 & elem_bound), name='iia_fuel_outer_5')\n", " iia5 = (c12, c13)\n", @@ -230,6 +313,7 @@ " return iia\n", "\n", "def void_cell(elem_bound):\n", + " elem_bound = elem_bound.clone()\n", " c1 = openmc.Cell(region=elem_bound, name='lattice_void')\n", " #universe_id=5\n", " v = openmc.Universe(name='lattice_void')\n", @@ -247,8 +331,10 @@ " (s2, 'top_left'),\n", " (s3, 'bottom_right')]\n", " univs = []\n", - " for i, (s, name) in enumerate(surfs): \n", + " for i, (s, name) in enumerate(surfs):\n", + " elem_bound = elem_bound.clone()\n", " c1 = openmc.Cell(fill=moder, region=(-s & elem_bound))\n", + " elem_bound = elem_bound.clone()\n", " c2 = openmc.Cell(fill=fuel, region=(+s & elem_bound))\n", " \n", " # universe_id = 6+i\n", @@ -261,51 +347,393 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 6, "id": "07136110", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "5\n", + "5\n" + ] + } + ], "source": [ - "#elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4 = shared_elem_geometry()\n", - "#ia = zoneIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4)\n", - "#iia = zoneIIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4)\n", + "elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4 = shared_elem_geometry()\n", + "ia = zoneIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4)\n", + "elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4 = shared_elem_geometry()\n", + "iia = zoneIIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4)\n", "# tres, uno, dos, quatro\n", - "#bl, ur, ul, br = graphite_triangles(elem_bound)" + "bl, ur, ul, br = graphite_triangles(elem_bound)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 23, + "id": "16c1aa30", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "OrderedDict([(1,\n", + " Cell\n", + " \tID =\t1\n", + " \tName =\tia_fuel_inner_1\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(-32 -27)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (2,\n", + " Cell\n", + " \tID =\t2\n", + " \tName =\tia_moderator_1\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(32 -31 -27)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (3,\n", + " Cell\n", + " \tID =\t3\n", + " \tName =\tia_fuel_outer_1\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(31 1 -2 3 -4 -27)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (4,\n", + " Cell\n", + " \tID =\t4\n", + " \tName =\tia_fuel_inner_main\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(-47 27 -28)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (5,\n", + " Cell\n", + " \tID =\t5\n", + " \tName =\tia_moderator_main\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(34 35 -36 37 -38 ~((39 -40 -41) | (42 -40 43) | (44 45 -41) | (46 45 43)) 27 -28)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (6,\n", + " Cell\n", + " \tID =\t6\n", + " \tName =\tia_fuel_outer_main\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(~(5 -6 7 -8 ~((10 -14 -16) | (11 -14 17) | (12 15 -16) | (13 15 17))) (1 -2 3 -4) 18 19 20 21 22 23 24 25 27 -28)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (7,\n", + " Cell\n", + " \tID =\t7\n", + " \tName =\tia_moderator_main_ul\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-18 -4 8 27 -28)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (8,\n", + " Cell\n", + " \tID =\t8\n", + " \tName =\tia_moderator_main_br\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-19 3 -7 27 -28)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (9,\n", + " Cell\n", + " \tID =\t9\n", + " \tName =\tia_moderator_main_ru\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-20 1 -5 27 -28)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (10,\n", + " Cell\n", + " \tID =\t10\n", + " \tName =\tia_moderator_main_lb\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-21 -2 6 27 -28)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (11,\n", + " Cell\n", + " \tID =\t11\n", + " \tName =\tia_moderator_main_ul_fill\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-18 11 -8 -14 17 27 -28)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (12,\n", + " Cell\n", + " \tID =\t12\n", + " \tName =\tia_moderator_main_br_fill\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-19 12 7 15 -16 27 -28)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (13,\n", + " Cell\n", + " \tID =\t13\n", + " \tName =\tia_moderator_main_ru_fill\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-20 10 5 -14 -16 27 -28)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (14,\n", + " Cell\n", + " \tID =\t14\n", + " \tName =\tia_moderator_main_lb_fill\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-21 13 -6 15 17 27 -28)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (15,\n", + " Cell\n", + " \tID =\t15\n", + " \tName =\tia_moderator_main_ul_t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-22 3 -7 27 -28)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (16,\n", + " Cell\n", + " \tID =\t16\n", + " \tName =\tia_moderator_main_br_t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-23 -4 8 27 -28)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (17,\n", + " Cell\n", + " \tID =\t17\n", + " \tName =\tia_moderator_main_ru_t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-24 1 -5 27 -28)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (18,\n", + " Cell\n", + " \tID =\t18\n", + " \tName =\tia_moderator_main_lb_t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-25 -2 6 27 -28)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (19,\n", + " Cell\n", + " \tID =\t19\n", + " \tName =\tia_fuel_inner_2\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(-48 28 -29)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (20,\n", + " Cell\n", + " \tID =\t20\n", + " \tName =\tia_moderator_2\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(49 -50 28 -29)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (21,\n", + " Cell\n", + " \tID =\t21\n", + " \tName =\tia_fuel_outer_2\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(51 52 -53 54 -55 28 -29)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (22,\n", + " Cell\n", + " \tID =\t22\n", + " \tName =\tia_fuel_inner_3\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(-62 29 -30)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (23,\n", + " Cell\n", + " \tID =\t23\n", + " \tName =\tia_moderator_3\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(56 -57 29 -30)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (24,\n", + " Cell\n", + " \tID =\t24\n", + " \tName =\tia_fuel_outer_3\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(57 58 -59 60 -61 29 -30)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (25,\n", + " Cell\n", + " \tID =\t25\n", + " \tName =\tia_hast\n", + " \tFill =\tMaterial 3\n", + " \tRegion =\t(-63 30)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (26,\n", + " Cell\n", + " \tID =\t26\n", + " \tName =\tia_moderator_4\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(63 -26 30)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (27,\n", + " Cell\n", + " \tID =\t27\n", + " \tName =\tia_fuel_outer_4\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(26 64 -65 66 -67 30)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone)])" + ] + }, + "execution_count": 23, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "ia.get_all_cells()" + ] + }, + { + "cell_type": "code", + "execution_count": 7, "id": "752c5160", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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uzyQQH0WLlyoefPmeefPnDmj5ORklZSUBPXFDTa3262kpCSVlpa26MPzbIdd2A67sB12cblc6t69u7p06RLU52l0OM+aNUsTJ04M2CYlJaVBjxUfH69PPvnEZ9np06d14cKFWiPq6n0qKyt1+vRpn9FzRUWFBg0a5LeP0+mU0+mstTw6OrpFv0mqdOrUie2wCNthF7bDLtfLdrRpE9w7kRsdzjExMYqJiWmWJ09PT9cLL7ygsrIyJSQkSJI2b94sp9OptLQ0v33S0tIUERGhgoICPfLII5KksrIy7d+/Xy+//HKz1AUAQDgFNfpLSkq0b98+lZSU6NKlS9q3b5/27dunc+fOSZKGDRum22+/XZMmTVJRUZH++Mc/av78+Zo2bZr3L6vjx4+rd+/e+vOf/yzpymj3iSee0NNPP60//vGPKioq0j/+4z/qjjvu0D/8wz8Ec3MAAAiJoF4Q9vzzz+utt97yzvfr10+StHXrVg0ZMkRt27bVxo0bNWPGDP393/+9oqKi9Nhjj2np0qXePhcuXNChQ4f09ddfe5e98sorateunR555BF98803Gjp0qN588021bdu2QXU5nU5lZWX5PdTdkrAddmE77MJ22IXtaJyQ3OcMAAAaju/WBgDAMoQzAACWIZwBALAM4QwAgGWu23C+Hn+usrCwUA6Hw++0a9euOvtlZmbWaj9w4MCQ1FyXlJSUWjU988wzAfsYY5Sdna3ExERFRUVpyJAh+uyzz0JUcW1fffWVnnjiCaWmpioqKko9evRQVlZWve8hG/bHr371K6Wmpqp9+/ZKS0vTn/70p4Dtt23bprS0NLVv31633HKLVqxYEaJK/cvJydH3v/99dezYUbGxsXrwwQd16NChgH3q+v/z+eefh6jq2rKzs2vVEx8fH7CPbftC8v//2eFwaObMmX7b27Ivtm/frjFjxigxMVEOh0PvvPOOz/qmfubk5eXp9ttvl9Pp1O233678/PzGF2euU88//7xZtmyZmTdvnomOjq61/uLFi6Zv374mIyPD7N271xQUFJjExEQza9asgI87ffp0c/PNN5uCggKzd+9ek5GRYe68805z8eLFIG3JVR6Px5SVlflMU6dONSkpKeby5ct19psyZYoZMWKET79Tp04Fvd5AkpOTzeLFi31qOnv2bMA+L730kunYsaPJy8szn376qZkwYYJJ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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], "source": [ - "#ia.plot(width=(20,20),\n", - "# basis='xz',\n", - "# colors=colormap,\n", - "# origin=(0.,0.,440),\n", - "# color_by='material',\n", - "# pixels=(400,400))" + "ia.plot(width=(20,20),\n", + " basis='xy',\n", + " colors=colormap,\n", + " origin=(0.,0.,150),\n", + " color_by='material',\n", + " pixels=(400,400))" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 8, "id": "ee56bc53", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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ombHHnfccVFeXh4jR46MJUuWNDs2l8tFbW1tgxMAAEBKCiruHnrooXjnnXdi4sSJTY4pLy+Pu+++O+bPnx8PPvhgDBw4MEaOHBmPP/54k3Nmz54dJSUl9afKyso2WD0AAED+FGVZluV7ER8aPXp0dO3aNX7xi1+0aN7YsWOjqKgoHn744UYvz+Vykcvl6s/X1tZGZWVl1NTUNHjfHgAAQGurra2NkpKSNu+PvL/n7kNr166NxYsXx4MPPtjiuUOHDo0HHnigycuLi4ujuLh4T5YHAABQ0ArmZZlVVVXRq1evOPPMM1s8d9WqVVFeXt4GqwIAAOgYCuLI3QcffBBVVVUxYcKE6Ny54ZKmT58eGzZsiPvvvz8iIubMmRP9+vWLo48+uv4DWObPnx/z58/Px9IBAAAKQkHE3eLFi2PdunVx0UUX7XDZxo0bY926dfXn6+rqYtq0abFhw4bo1q1bHH300fHII4/EGWec0Z5LBgAAKCgF9YEq7aW93tAIAADQXv1RMO+5AwAAYPeJOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgATkPe5mzpwZRUVFDU5lZWXNzlm2bFkMHjw49t133zj00EPjrrvuaqfVAgAAFKbO+V5ARMTRRx8dixcvrj/fqVOnJseuWbMmzjjjjJg0aVI88MAD8bvf/S4uv/zyOPjgg+MLX/hCeywXElW02zNnFc1svWXsphlZ/tcA0Bby8T22db6nZq1wHUBLFETcde7ceadH6z501113RZ8+fWLOnDkREXHkkUfGM888E7feequ4gzwohLCL+Ns6BB6QohnZzHb7Xuv7KHRseX9ZZkTEK6+8EhUVFdG/f/8YP358vPbaa02OXb58eYwaNarBttGjR8czzzwTW7dubXROLpeL2traBidgzxVK2H2o0NYD0FpmZG37C6y2vn6gfeQ97o4//vi4//7747HHHosf/OAHUV1dHcOHD4+33nqr0fHV1dXRu3fvBtt69+4d27Zti82bNzc6Z/bs2VFSUlJ/qqysbPX7AXubQg2pQl0XQGv4MMJaK8REHaSlKMuygnpB9JYtW2LAgAFx3XXXxdSpU3e4/PDDD49//ud/junTp9dv+93vfhcnnHBCbNy4sdGXd+ZyucjlcvXna2tro7KyMmpqaqJHjx5tc0egw9n199x1hIDyZAXY2+zK9+b2/d5YUE8xIa9qa2ujpKSkzfujIN5z91H7779/HHPMMfHKK680enlZWVlUV1c32LZp06bo3LlzHHTQQY3OKS4ujuLi4lZfK+yNOkLYRXScdQK0p5Z8b/RLMuh4Ci7ucrlcvPTSS3HiiSc2evmwYcPiF7/4RYNtCxcujCFDhkSXLl3aY4mw1xJMAHuPj3/PF3tQ+PL+nrtp06bFsmXLYs2aNfH000/HF7/4xaitrY0JEyZERMT06dPjwgsvrB9/2WWXxdq1a2Pq1Knx0ksvxY9+9KO45557Ytq0afm6CwAAyZtV1H6f2gnsnrwfuXvjjTfiS1/6UmzevDkOPvjgGDp0aDz11FPRt2/fiIjYuHFjrFu3rn58//7949FHH41rrrkmvvvd70ZFRUV8+9vf9mcQoI35gQ5AxP//eeBIHhSegvtAlfbQXm9ohI6l+Q9UEXcANKbpyNvrnmJCk9qrP/L+skyg8Ak7AJriZwQUDnEHAMAeEXhQGMQd0Cw/sAHYFX5eQP6JOwAAWoXAg/wSdwAAtBqBB/kj7gAAaFUCD/JD3AFN8sMZAKDjEHdARAg5AICOTtwBAAAkQNwB9Ry9AwDouMQdAABAAsQd0ICjdwAAHZO4AwAASIC4A3bg6B0AQMcj7gAAABIg7gAAABIg7gAAABIg7oBGed8dAEDHIu4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO6ARs3IZuZ7CQAAtIC4AwAASIC4AwAASIC4AwAASIC4A3bg/XYAAB2PuAMAAEiAuAMAAEiAuAMa8JJMAICOSdwBAAAkQNwB9Ry1AwDouMQdEBHCDgCgoxN3AAAACRB3AAC0Kq8GgfwQdwAAtBphB/kj7gAAaBXCDvJL3AEAsMeEHeSfuAMAYI8IOygM4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACABeY+72bNnx2c+85no3r179OrVKz73uc/F6tWrm52zdOnSKCoq2uH08ssvt9OqAQAACkve427ZsmVxxRVXxFNPPRWLFi2Kbdu2xahRo2LLli07nbt69erYuHFj/emwww5rhxUDAAAUns75XsCvfvWrBuerqqqiV69esXLlyjjppJOandurV6844IAD2nB1AAAAHUPej9x9XE1NTUREHHjggTsde9xxx0V5eXmMHDkylixZ0uS4XC4XtbW1DU4AAAApKai4y7Ispk6dGieccEIMGjSoyXHl5eVx9913x/z58+PBBx+MgQMHxsiRI+Pxxx9vdPzs2bOjpKSk/lRZWdlWdwEAACAvirIsy/K9iA9dccUV8cgjj8QTTzwRhxxySIvmjh07NoqKiuLhhx/e4bJcLhe5XK7+fG1tbVRWVkZNTU306NFjj9cNaSjaYcusopntvwwAOpwZ2cxGthbMU0zIu9ra2igpKWnz/iiYI3dXXnllPPzww7FkyZIWh11ExNChQ+OVV15p9LLi4uLo0aNHgxMAAEBK8v6BKlmWxZVXXhkLFiyIpUuXRv/+/XfrelatWhXl5eWtvDoAAICOIe9xd8UVV8RPfvKT+PnPfx7du3eP6urqiIgoKSmJbt26RUTE9OnTY8OGDXH//fdHRMScOXOiX79+cfTRR0ddXV088MADMX/+/Jg/f37e7gcAAEA+5T3u7rzzzoiIOOWUUxpsr6qqiokTJ0ZExMaNG2PdunX1l9XV1cW0adNiw4YN0a1btzj66KPjkUceiTPOOKO9lg0AAFBQCuoDVdpLe72hEToWH6gCwO7xgSrQvL3uA1UAAADYfeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAeIOAAAgAZ3zvQAAKDQzspm7NW9W0e7NA4DWIO4AIHY/6Jq6DqEHQHsTdwDs1Voj6pq7XpEHQHsRdwDsldoq6pq6HZEHQFvzgSoA7HXaK+zyfZsA7F3EHQB7lXxGlsADoC2JOwD2GoUQV4WwBgDSJO4A2CsUUlQV0loASIe4AyB5hRhThbgmADo2cQdA0go5ogp5bQB0POIOgGR1hHjqCGsEoGMQdwAkqSNFU0daKwCFS9wBAAAkQNwBkJyOeCSsI64ZgMIi7gAAABIg7gBISkc+AtaR1w5A/ok7AACABIg7AACABIg7AJKRwssaU7gPAOSHuAMAAEiAuAMAAEhAQcTd9773vejfv3/su+++MXjw4Pjtb3/b7Phly5bF4MGDY999941DDz007rrrrnZaKQAAQGHKe9zNmzcvpkyZEl//+tdj1apVceKJJ8bpp58e69ata3T8mjVr4owzzogTTzwxVq1aFV/72tfiqquuivnz57fzygEAAApH3uPutttui4svvjguueSSOPLII2POnDlRWVkZd955Z6Pj77rrrujTp0/MmTMnjjzyyLjkkkvioosuiltvvbWdVw4AAFA48hp3dXV1sXLlyhg1alSD7aNGjYonn3yy0TnLly/fYfzo0aPjmWeeia1btzY6J5fLRW1tbYMTAABASvIad5s3b47t27dH7969G2zv3bt3VFdXNzqnurq60fHbtm2LzZs3Nzpn9uzZUVJSUn+qrKxsnTsAAABQIPL+ssyIiKKiogbnsyzbYdvOxje2/UPTp0+Pmpqa+tP69ev3cMUAAACFpXM+b7y0tDQ6deq0w1G6TZs27XB07kNlZWWNju/cuXMcdNBBjc4pLi6O4uLi1lk0AABAAcrrkbuuXbvG4MGDY9GiRQ22L1q0KIYPH97onGHDhu0wfuHChTFkyJDo0qVLm60VAACgkOX9ZZlTp06NH/7wh/GjH/0oXnrppbjmmmti3bp1cdlll0XE315SeeGFF9aPv+yyy2Lt2rUxderUeOmll+JHP/pR3HPPPTFt2rR83QUAAIC8y+vLMiMixo0bF2+99VbccMMNsXHjxhg0aFA8+uij0bdv34iI2LhxY4O/ede/f/949NFH45prronvfve7UVFREd/+9rfjC1/4Qr7uAgAAQN7lPe4iIi6//PK4/PLLG73s3nvv3WHbySefHM8++2wbrwoAAKDjyPvLMgGgtcwqmpnvJeyxFO4DAPkh7gAAABIg7gAAABIg7gBISkd+WWNHXjsA+SfuAAAAEiDuAEhORzwC1hHXDEBhEXcAAAAJEHcAJKkjHQnrSGsFoHCJOwCS1RGiqSOsEYCOQdwBkLRCjqdCXhsAHY+4AyB5hRhRhbgmADo2cQfAXqGQYqqQ1gJAOsQdAHuNQoiqQlgDAGkSdwDsVfIZV8IOgLYk7gDY6+QjsoQdAG2tc74XAAD58GFszchmtsvtAEBbE3cA7NXaKvJEHQDtTdwBQDSMsd0NPUEHQD6JOwD4GJEGQEfkA1UAAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASkLe4e/311+Piiy+O/v37R7du3WLAgAExY8aMqKura3bexIkTo6ioqMFp6NCh7bRqAACAwtQ5Xzf88ssvxwcffBDf//7341Of+lS88MILMWnSpNiyZUvceuutzc4dM2ZMVFVV1Z/v2rVrWy8XAACgoOUt7saMGRNjxoypP3/ooYfG6tWr484779xp3BUXF0dZWVlbLxEAAKDDKKj33NXU1MSBBx6403FLly6NXr16xeGHHx6TJk2KTZs2NTs+l8tFbW1tgxMAAEBKCibu/vznP8d3vvOduOyyy5odd/rpp8ePf/zj+M1vfhPf+ta3YsWKFXHqqadGLpdrcs7s2bOjpKSk/lRZWdnaywcAAMirVo+7mTNn7vCBJx8/PfPMMw3mvPnmmzFmzJg477zz4pJLLmn2+seNGxdnnnlmDBo0KMaOHRu//OUv409/+lM88sgjTc6ZPn161NTU1J/Wr1/fKvcVAACgULT6e+4mT54c48ePb3ZMv3796v/95ptvxogRI2LYsGFx9913t/j2ysvLo2/fvvHKK680Oaa4uDiKi4tbfN0AAAAdRavHXWlpaZSWlu7S2A0bNsSIESNi8ODBUVVVFfvs0/IDiW+99VasX78+ysvLWzwXAAAgFXl7z92bb74Zp5xySlRWVsatt94a//M//xPV1dVRXV3dYNwRRxwRCxYsiIiI9957L6ZNmxbLly+P119/PZYuXRpjx46N0tLS+PznP5+PuwEAAFAQ8vanEBYuXBivvvpqvPrqq3HIIYc0uCzLsvp/r169OmpqaiIiolOnTvH888/H/fffH++8806Ul5fHiBEjYt68edG9e/d2XT8AAEAhyVvcTZw4MSZOnLjTcR8NvW7dusVjjz3WhqsCAADomArmTyEAAACw+8QdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQd0KhZRTPzvQQAAFpA3AE7EHYAAB2PuAMaEHYAAB2TuAPqCTsAgI5L3AERIewAADo6cQcAAJAAcQcAQKvyahDID3EHAECrEXaQP+IOAAAgAeIOAIBW4agd5Je4AwAASIC4AwAASIC4AwBgj3lJJuSfuAMAAEiAuAMAAEiAuAMAAEiAuAMAYI94vx0UBnEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAMAemZHNzPcSgBB3AAAASRB3AAAACRB3AAAACRB3AADsMe+7g/wTdwAAAAkQdwAAtApH7yC/xB0AAEACxB0AAK3G0TvIH3EHAACQAHEHAECrcvQO8kPcAQCw24QcFA5xB0SEH84AAB2duAPqCTwAgI5L3AENCDwAgI5J3AE7EHgA7Ao/L6CwiDugUX5gAwB0LOIOaJLAA6ApfkZA4RF3QLNmZDP9AAcA6ADEHbBLRB4AH/LzAApTXuOuX79+UVRU1OB0/fXXNzsny7KYOXNmVFRURLdu3eKUU06JF198sZ1WDIg8AIDC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b775ZlRWVsajjz4ao0eP3ul6amtro6SkJGpqahq9DQAAgNbSXv3Ruc2ueRcsX748Bg0aVB92ERGjR4+OXC4XK1eujBEjRuwwZ+XKlbF169YYNWpU/baKiooYNGhQPPnkk43GXS6Xi1wuV3++pqYmIv72RQYAAGhLH3ZHWx9Xy2vcVVdXR+/evRts69mzZ3Tt2jWqq6ubnNO1a9fo2bNng+29e/ducs7s2bNj1qxZO2yvrKzczZUDAAC0zFtvvRUlJSVtdv0tjruZM2c2GkoftWLFihgyZMguXV9RUdEO27Isa3R7c5qbM3369Jg6dWr9+XfeeSf69u0b69ata9MvLrumtrY2KisrY/369V4mWwA8HoXF41FYPB6FxeNRWDwehcXjUVhqamqiT58+ceCBB7bp7bQ47iZPnhzjx49vdky/fv126brKysri6aefbrDt7bffjq1bt+5wRO+jc+rq6uLtt99ucPRu06ZNMXz48EbnFBcXR3Fx8Q7bS0pK/GcvID169PB4FBCPR2HxeBQWj0dh8XgUFo9HYfF4FJZ99mnbv0TX4rgrLS2N0tLSVrnxYcOGxY033hgbN26M8vLyiIhYuHBhFBcXx+DBgxudM3jw4OjSpUssWrQozj///IiI2LhxY7zwwgtxyy23tMq6AAAAOpo2Tcd169bFc889F+vWrYvt27fHc889F88991y89957ERExatSoOOqoo+KCCy6IVatWxa9//euYNm1aTJo0qf43DBs2bIgjjjgifv/730fE3462XXzxxXHttdfGr3/961i1alX80z/9UxxzzDHxj//4j215dwAAAApWm36gyr/927/FfffdV3/+uOOOi4iIJUuWxCmnnBKdOnWKRx55JC6//PL47Gc/G926dYsvf/nLceutt9bP2bp1a6xevTr+8pe/1G+7/fbbo3PnznH++efH+++/HyNHjox77703OnXqtEvrKi4ujhkzZjT6Uk3an8ejsHg8CovHo7B4PAqLx6OweDwKi8ejsLTX49Euf+cOAACAttW27+gDAACgXYg7AACABIg7AACABIg7AACABCQbdzfeeGMMHz489ttvvzjggAMaHbNu3boYO3Zs7L///lFaWhpXXXVV1NXVNXu9uVwurrzyyigtLY39998/zj777HjjjTfa4B6ka+nSpVFUVNToacWKFU3Omzhx4g7jhw4d2o4rT1e/fv12+Npef/31zc7JsixmzpwZFRUV0a1btzjllFPixRdfbKcVp+v111+Piy++OPr37x/dunWLAQMGxIwZM3b6vcn+0Xq+973vRf/+/WPfffeNwYMHx29/+9tmxy9btiwGDx4c++67bxx66KFx1113tdNK0zZ79uz4zGc+E927d49evXrF5z73uVi9enWzc5r6+fLyyy+306rTNXPmzB2+rmVlZc3OsW+0ncZ+bhcVFcUVV1zR6Hj7Rut6/PHHY+zYsVFRURFFRUXx0EMPNbh8d58jzZ8/P4466qgoLi6Oo446KhYsWNDitSUbd3V1dXHeeefFV77ylUYv3759e5x55pmxZcuWeOKJJ2Lu3Lkxf/78uPbaa5u93ilTpsSCBQti7ty58cQTT8R7770XZ511Vmzfvr0t7kaShg8fHhs3bmxwuuSSS6Jfv34xZMiQZueOGTOmwbxHH320nVadvhtuuKHB1/Zf//Vfmx1/yy23xG233RZ33HFHrFixIsrKyuK0006Ld999t51WnKaXX345Pvjgg/j+978fL774Ytx+++1x1113xde+9rWdzrV/7Ll58+bFlClT4utf/3qsWrUqTjzxxDj99NNj3bp1jY5fs2ZNnHHGGXHiiSfGqlWr4mtf+1pcddVVMX/+/HZeeXqWLVsWV1xxRTz11FOxaNGi2LZtW4waNSq2bNmy07mrV69usC8cdthh7bDi9B199NENvq7PP/98k2PtG21rxYoVDR6LRYsWRUTEeeed1+w8+0br2LJlSxx77LFxxx13NHr57jxHWr58eYwbNy4uuOCC+MMf/hAXXHBBnH/++fH000+3bHFZ4qqqqrKSkpIdtj/66KPZPvvsk23YsKF+209/+tOsuLg4q6mpafS63nnnnaxLly7Z3Llz67dt2LAh22effbJf/epXrb72vUVdXV3Wq1ev7IYbbmh23IQJE7JzzjmnfRa1l+nbt292++237/L4Dz74ICsrK8tuuumm+m1//etfs5KSkuyuu+5qgxXu3W655Zasf//+zY6xf7SOf/iHf8guu+yyBtuOOOKI7Prrr290/HXXXZcdccQRDbZdeuml2dChQ9tsjXurTZs2ZRGRLVu2rMkxS5YsySIie/vtt9tvYXuJGTNmZMcee+wuj7dvtK+rr746GzBgQPbBBx80erl9o+1ERLZgwYL687v7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yK6//vosIrL58+fn4y4k5dprr82WLl2avfbaa9lTTz2VnXXWWVn37t3tG3m0ffv2rE+fPtlXv/rVHS6zb7Std999t74tIqL+edTatWuzLNu150gXXHBBg09i/t3vfpd16tQpu+mmm7KXXnopu+mmm7LOnTtnTz31VIvWlmzcTZgwIYuIHU5LliypH7N27drszDPPzLp165YdeOCB2eTJk7O//vWv9ZevWbNmhznvv/9+Nnny5OzAAw/MunXrlp111lnZunXr2vGepeNLX/pSNnz48CYvj4isqqoqy7Is+8tf/pKNGjUqO/jgg7MuXbpkffr0ySZMmOBr3wpWrlyZHX/88VlJSUm27777ZgMHDsxmzJiRbdmypcG4jz4eWfa3j/qdMWNGVlZWlhUXF2cnnXRS9vzzz7fz6tNTVVXV6Peuj/8uzv7Rdr773e9mffv2zbp27Zp9+tOfbvDR+xMmTMhOPvnkBuOXLl2aHXfccVnXrl2zfv36ZXfeeWc7rzhNTe0HH/0+9PHH4+abb84GDBiQ7bvvvlnPnj2zE044IXvkkUfaf/EJGjduXFZeXp516dIlq6ioyM4999zsxRdfrL/cvtH+HnvssSwistWrV+9wmX2jbX34pyU+fpowYUKWZbv2HOnkk0+uH/+h//zP/8wGDhyYdenSJTviiCN2K76Lsuz/3t0KAABAh7XX/ikEAACAlIg7AACABIg7AACABIg7AACABIg7AACABIg7AACABIg7AACABIg7AACABIg7AACABIg7AACABIg7AACABIg7AACABPw/wd7sqUycs1EAAAAASUVORK5CYII=\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], "source": [ - "#iia.plot(width=(20,20),\n", - "# basis='xz',\n", - "# colors=colormap,\n", - "# origin=(0.,0.,440),\n", - "# color_by='material',\n", - "# pixels=(400,400))" + "iia.plot(width=(20,20),\n", + " basis='xy',\n", + " colors=colormap,\n", + " origin=(0.,0.,435),\n", + " color_by='material',\n", + " pixels=(800,800))" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 9, "id": "f71ac1b6", "metadata": {}, "outputs": [], @@ -314,9 +742,15 @@ " fuel_hole = openmc.ZCylinder(r=5.08, name='cr_fuel_hole')\n", " \n", " elem_bound = openmc.rectangular_prism(7.62*2, 7.62*2) # Pin outer boundary\n", - "\n", + " eb_minx, eb_maxx, eb_miny, eb_maxy = list(elem_bound.get_surfaces().values())\n", + " \n", " gr_sq_neg = openmc.rectangular_prism(7.23646*2, 7.23646*2, corner_radius=0.99) # Graphite square\n", " # params for \n", + " (gr_minx, gr_maxx, gr_miny, gr_maxy, \n", + " gr_cyl_lb, gr_cyl_minx, gr_cyl_miny, \n", + " gr_cyl_ul, gr_cyl_maxy, gr_cyl_br, \n", + " gr_cyl_maxx, gr_cyl_ru) = list(gr_sq_neg.get_surfaces().values())\n", + " \n", " r_d = 1.16\n", " e_d = 2 * r_d / np.sqrt(3)\n", " r_dt = 0.8\n", @@ -332,98 +766,221 @@ " br_t = openmc.ZCylinder(l1, l3, r_dt, name='corner_br_tip')\n", " ru_t = openmc.ZCylinder(-l3, l1, r_dt, name='corner_ru_tip')\n", " lb_t = openmc.ZCylinder(l3, -l1, r_dt, name='corner_lb_tip')\n", + " \n", + " gr_ul = ul & -eb_maxy & +gr_maxy# | \n", + " gr_ul_fill = ul & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy\n", + " gr_br = br & +eb_miny & -gr_miny# | \n", + " gr_br_fill = br & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny \n", + " gr_lb = lb & +eb_minx & -gr_minx# | \n", + " gr_lb_fill = lb & +gr_cyl_lb & +gr_minx & -gr_cyl_minx & -gr_cyl_miny \n", + " gr_ru = ru & -eb_maxx & +gr_maxx# | \n", + " gr_ru_fill = ru & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxx & +gr_cyl_maxy\n", "\n", - " gr_corners = elem_bound & (ul | br | lb | ru | \n", - " -ul_t | -br_t | -ru_t | -lb_t)\n", + " \n", + " gr_ul_t = -ul_t & +eb_miny & -gr_miny\n", + " gr_br_t = -br_t & -eb_maxy & +gr_maxy\n", + " gr_ru_t = -ru_t & +eb_minx & -gr_minx\n", + " gr_lb_t = -lb_t & -eb_maxx & +gr_maxx \n", + " \n", + " gr_corners = (gr_ul, gr_br, gr_lb, gr_ru, gr_ul_fill, gr_br_fill, gr_lb_fill, gr_ru_fill)\n", + " gr_t = (gr_ul_t, gr_br_t, gr_ru_t, gr_lb_t)\n", "\n", " inter_elem_channel = (~gr_sq_neg & elem_bound &\n", " ~ul & ~br & ~lb & ~ru &\n", - " +ul_t & +ru_t & +ru_t & +lb_t)\n", + " +ul_t & +br_t & +ru_t & +lb_t)\n", " \n", "\n", "\n", - " return fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel\n", + " return fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel\n", " " ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 10, "id": "d17047bd", "metadata": {}, "outputs": [], "source": [ - "def control_rod(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel):\n", + "def control_rod(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel):\n", " s1 = openmc.ZCylinder(r=4.7625, name='control_rod')\n", "\n", " c1 = openmc.Cell(fill=moder, region=-s1, name='control_rod')\n", " c2 = openmc.Cell(fill=fuel, region=(+s1 & -fuel_hole), name='cr_fuel_inner')\n", " \n", - " moderator_block = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg | gr_corners), name='cr_moderator')\n", - " fuel_outer = openmc.Cell(fill=fuel, region=inter_elem_channel, name='cr_fuel_outer')\n", + " c3 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg), name='cr_moderator')\n", + " c4 = openmc.Cell(fill=fuel, region=inter_elem_channel, name='cr_fuel_outer')\n", + " \n", + " c3_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='cr_moderator_ul')\n", + " c3_br = openmc.Cell(fill=moder, region=gr_corners[1], name='cr_moderator_br')\n", + " c3_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='cr_moderator_ru')\n", + " c3_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='cr_moderator_lb')\n", + " c3_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='cr_moderator_ul_fill')\n", + " c3_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='cr_moderator_br_fill')\n", + " c3_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='cr_moderator_ru_fill')\n", + " c3_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='cr_moderator_lb_fill')\n", + " c3_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='cr_moderator_ul_t')\n", + " c3_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='cr_moderator_br_t')\n", + " c3_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='cr_moderator_ru_t')\n", + " c3_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='cr_moderator_lb_t')\n", + "\n", " #universe_id=3\n", " cr = openmc.Universe(name='control_rod')\n", - " cr.add_cells([c1, c2, moderator_block, fuel_outer])\n", + " cr.add_cells([c1, c2, c3, c4, c3_ul, c3_br, c3_ru, c3_lb, c3_ulf, c3_brf, c3_ruf, c3_lbf, c3_ul_t, c3_br_t, c3_ru_t, c3_lb_t])\n", " \n", " return cr\n", " \n", - "def control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel):\n", + "def control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel):\n", " c1 = openmc.Cell(fill=fuel, region=(-fuel_hole), name='crc_fuel_inner')\n", - " moderator_block = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg | gr_corners), name='crc_moderator')\n", - " fuel_outer = openmc.Cell(fill=fuel, region=inter_elem_channel, name='crc_fuel_outer')\n", + " c2 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg), name='crc_moderator')\n", + " c3 = openmc.Cell(fill=fuel, region=inter_elem_channel, name='crc_fuel_outer')\n", + " \n", + " c2_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='crc_moderator_ul')\n", + " c2_br = openmc.Cell(fill=moder, region=gr_corners[1], name='crc_moderator_br')\n", + " c2_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='crc_moderator_ru')\n", + " c2_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='crc_moderator_lb')\n", + " c2_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='crc_moderator_ul_fill')\n", + " c2_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='crc_moderator_br_fill')\n", + " c2_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='crc_moderator_ru_fill')\n", + " c2_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='crc_moderator_lb_fill')\n", + " c2_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='crc_moderator_ul_t')\n", + " c2_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='crc_moderator_br_t')\n", + " c2_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='crc_moderator_ru_t')\n", + " c2_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='crc_moderator_lb_t')\n", + "\n", " # universe_id=4\n", " crc = openmc.Universe(name='control_rod_channel')\n", - " crc.add_cells([c1, moderator_block, fuel_outer])\n", + " crc.add_cells([c1, c2, c3, c2_ul, c2_br, c2_ru, c2_lb, c2_ulf, c2_brf, c2_ruf, c2_lbf, c2_ul_t, c2_br_t, c2_ru_t, c2_lb_t])\n", " \n", " return crc" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 11, + "id": "86a55a55", + "metadata": {}, + "outputs": [], + "source": [ + "fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel = shared_cr_geometry() " + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "861874a9", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Cell\n", + "\tID =\t73\n", + "\tName =\t\n", + "\tFill =\tNone\n", + "\tRegion =\t(-206 207 -208 209 210 -211 ~((212 -218) | (213 -219) | (214 -220) | (215 -221) | (216 -222) | (217 -223)) -192 196)\n", + "\tRotation =\tNone\n", + "\tTranslation =\tNone\n", + "\tVolume =\tNone" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "openmc.Cell(region=gr_corners[0])" + ] + }, + { + "cell_type": "code", + "execution_count": 13, "id": "cea2d476", "metadata": {}, "outputs": [], "source": [ - "#fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel = shared_cr_geometry() \n", - "\n", - "#cr = control_rod(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel)\n", - "#crc = control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel)" + "fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel = shared_cr_geometry() \n", + "cr = control_rod(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel)\n", + "fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel = shared_cr_geometry() \n", + "crc = control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 14, "id": "01b506f1", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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97fcCTNmzND//u//6t133w3arn///urfv7/3en5+vg4cOKDFixfrmmuuifUw/Ro/frz378svv1z5+fnq27evXnnlFZ+fuW3K5m0hNRQN48eP95mVPJeN2yKQSN5zovE+lVDhnIg/VxmKSNarpKREPXr00I033hj242VnZ6t3797au3dv2H2Dac32aTxa+dNPP/Ubzo1HsFZXV3t/wUxqeO4Dba9Ihbsehw8f1qhRo5Sfn68XX3wx7MeL1fbwJz09XW3btm32KT7Y85iVleW3fbt27YJ+kIqHBx98UKtWrdKmTZvUs2fPsPsPGzZMy5cvj8HIItO5c2ddfvnlAf8XbN4WkrR//36tX79eK1euDLuvbdsi0vecQNso3PephArnZP25ynDXyxijkpIS3X333Wrfvn3Yj3fs2DEdOHDA5x8uGlqzfSorKyUp4Jjy8vKUlZWl8vJy7w+o1NfXa+PGjVq0aFFkAw4gnPU4dOiQRo0apcGDB6ukpCSi33iN1fbwp0OHDho8eLDKy8t1yy23eJeXl5frpptu8tsnPz9fb731ls+ydevWaciQIRH9/0WDMUYPPvigysrKVFFRoby8vIjup7KyMi7Pe6g8Ho92796tq6++2u/tNm6LpkpKSpSRkaEJEyaE3de2bRHpe05+fr7Ky8t9ZgfXrVsXfgEX1uFjCWT//v2msrLSzJ8/33zve98zlZWVprKy0nu6TuOpVKNHjzYffPCBWb9+venZs6fPqVQHDx40/fv3N++//7532bRp00zPnj3N+vXrzQcffGCuvfbauJ1K1Wj9+vVGkvnoo4/83t6/f3+zcuVKY4wxX331lXnooYfM5s2bzb59+8yGDRtMfn6+ufDCCx07BWnz5s3mmWeeMZWVlebzzz83b7zxhsnJyTE33nijT7um62FMw2kNaWlpZuXKlebDDz80d9xxh6OnUh06dMh8//vfN9dee605ePCgzykhTdm2PRpPpVq2bJn56KOPzKxZs0znzp3NF198YYwx5pFHHjF33XWXt33j6TuzZ882H330kVm2bJnjp+/85Cc/MWlpaaaiosLnef/mm2+8bc5dj2effdaUlZWZTz75xOzcudM88sgjRpIpLS11YhWMMcY89NBDpqKiwnz++efmvffeMzfccIPp0qVLQm2LRqdPnza9evUyP/vZz5rdZuu2+Oqrr7zZIMn7vtR4WmEo7zl33XWXz5kOf/7zn03btm3Nk08+aXbv3m2efPJJTqVqasqUKUZSs0vT8+72799vJkyYYDp16mS6d+9uZsyYYf7+9797b9+3b1+zPt9++62ZMWOG6d69u+nUqZO54YYbTFVVVRzXzJg77rjDDB8+PODtkkxJSYkxxphvvvnGjBkzxlxwwQWmffv2plevXmbKlClxH3NT27dvN0OHDjVpaWmmY8eOpn///qawsNB8/fXXPu2arocxDac2FBYWmqysLON2u80111xjPvzwwziP/qySkhK//2Pnfua1cXs8//zzpnfv3qZDhw7myiuv9DkFacqUKWbEiBE+7SsqKsygQYNMhw4dTJ8+fcwLL7wQ1/GeK9Dz3vT/5dz1WLRokenbt6/p2LGj6datm7nqqqvM6tWr4z/4JhrPm23fvr3Jyckxt956q9m1a5f39kTYFo3Wrl3rPXf5XLZui8ZTus69TJkyxRgT2nvOiBEjvO0b/dd//Zfp37+/ad++vRkwYEBEHzr4yUgAACyTsqdSAQBgK8IZAADLEM4AAFiGcAYAwDKEMwAAliGcAQCwDOEMAIBlCGcAACxDOAMAYBnCGQAAyxDOAABYhnAGAMAy/x89DcJeVKxAIQAAAABJRU5ErkJggg==\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], "source": [ - "#cr.plot(width=(20,20),\n", - "# basis='xy',\n", - "# colors=colormap,\n", - "# origin=(0.,0.,440),\n", - "# color_by='material',\n", - "# pixels=(400,400))" + "cr.plot(width=(20,20),\n", + " basis='xy',\n", + " colors=colormap,\n", + " origin=(0.,0.,440),\n", + " color_by='material',\n", + " pixels=(400,400))" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 15, "id": "f2369aa1", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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vHnz9IMf/EBDhw4N2i41NVUvvPCCiouLtXbtWmVlZWncuHHaunVrBEfrb8SIEVq5cqXeeustvfjii6qurtaoUaN07NixgO1t3xaS9Nprr+n48ePNFg02botztfc9J9g2auv7lKO/59xW0fhzla3RnvU6dOiQ3nrrLf32t79t8f6nTJni+3vo0KEaPny4Bg4cqPXr1+uWW25p97jP1Zb1mDt3rm/Z9773PfXp00c/+tGPfNV0MOc+zx197gNpz/Y4fPiwJkyYoFtvvVX33ntvs30jtT2a09bnMVD7QMudkJeXpz//+c965513mm2XlZWlrKws3/WcnBxVVlZq6dKluvrqq8M9zIAmTpzo+/vyyy9XTk6OBg0apJdfftnvZ24bs3lbSPVFw8SJE/1mJc9l47YIpj3vOaF4n4qqcI7Gn6tsjfasV1FRkfr166cbbrihzY+XmpqqgQMHav/+/W3u25yObJ+Go5U//fTTgOHccARrdXW17xfMpPrnPtj2aq+2rsfhw4c1duxY5eTk6IUXXmjz44VrewSSmJiozp07N/kU39zzmJKSErB9ly5dmv0gFQkPPPCA1q1bp61bt6p///5t7j9y5EitWrUqDCNrn549e+ryyy8P+r9g87aQpIMHD2rTpk1au3Ztm/vati3a+54TbBu19X0qqsI5Vn+usq3rZYxRUVGR7rrrLnXt2rXNj3fs2DFVVlb6/cOFQke2T3l5uSQFHVNmZqZSUlJUWlrq+wGVuro6bdmyRUuWLGnfgINoy3pUVVVp7Nixys7OVlFRUbt+4zVc2yOQbt26KTs7W6Wlpbr55pt9y0tLS3XjjTcG7JOTk6M33njDb9nGjRs1fPjwdv3/hYIxRg888IBKSkpUVlamzMzMdt1PeXl5RJ731vJ6vdq7d6+uuuqqgLfbuC0aKyoqUlJSkiZNmtTmvrZti/a+5+Tk5Ki0tNRvdnDjxo1tL+DadPhYFDl48KApLy83CxcuNN/5zndMeXm5KS8v952u03Aq1bhx48z7779vNm3aZPr37+93KtWhQ4dMVlaWee+993zLZs6cafr37282bdpk3n//fXPNNddE7FSqBps2bTKSzEcffRTw9qysLLN27VpjjDFfffWVefDBB822bdvMgQMHzObNm01OTo658MILHTsFadu2bebpp5825eXl5vPPPzdr1qwxaWlp5oYbbvBr13g9jKk/rSEhIcGsXbvWfPDBB+b222939FSqqqoq893vftdcc8015tChQ36nhDRm2/ZoOJVqxYoV5qOPPjJz5swxPXv2NF988YUxxpiHH37Y3Hnnnb72DafvzJ0713z00UdmxYoVjp++8+Mf/9gkJCSYsrIyv+f9m2++8bU5dz2eeeYZU1JSYj755BOzZ88e8/DDDxtJpri42IlVMMYY8+CDD5qysjLz+eefm3fffddcf/31plevXlG1LRqcPn3aDBgwwPz0pz9tcput2+Krr77yZYMk3/tSw2mFrXnPufPOO/3OdPjjH/9oOnfubJ544gmzd+9e88QTT3AqVWPTpk0zkppcGp93d/DgQTNp0iTTo0cP07dvX5OXl2f+9re/+W4/cOBAkz7ffvutycvLM3379jU9evQw119/vamoqIjgmhlz++23m1GjRgW9XZIpKioyxhjzzTffmPHjx5sLLrjAdO3a1QwYMMBMmzYt4mNubNeuXWbEiBEmISHBdO/e3WRlZZn8/Hzz9ddf+7VrvB7G1J/akJ+fb1JSUozb7TZXX321+eCDDyI8+rOKiooC/o+d+5nXxu3x3HPPmYEDB5pu3bqZK6+80u8UpGnTppnRo0f7tS8rKzPDhg0z3bp1MxkZGeb555+P6HjPFex5b/z/cu56LFmyxAwaNMh0797d9OnTx/zgBz8w69evj/zgG2k4b7Zr164mLS3N3HLLLebDDz/03R4N26LBW2+95Tt3+Vy2bouGU7rOvUybNs0Y07r3nNGjR/vaN/jv//5vk5WVZbp27WoGDx7crg8d/GQkAACWidtTqQAAsBXhDACAZQhnAAAsQzgDAGAZwhkAAMsQzgAAWIZwBgDAMoQzAACWIZwBALAM4QwAgGUIZwAALEM4AwBgmf8Hdhnn4JghwTEAAAAASUVORK5CYII=\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], "source": [ - "#crc.plot(width=(20,20),\n", - "# basis='xy',\n", - "# colors=colormap,\n", - "# origin=(0.,0.,440),\n", - "# color_by='material',\n", - "# pixels=(400,400))" + "crc.plot(width=(20,20),\n", + " basis='xy',\n", + " colors=colormap,\n", + " origin=(0.,0.,440),\n", + " color_by='material',\n", + " pixels=(400,400))" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 16, "id": "7f985e3a", "metadata": {}, "outputs": [], @@ -466,11 +1023,11 @@ " return zone_bounds, core_bounds, reflector_bounds, vessel_bounds\n", "\n", "def cr_lattice(cr_boundary, core_base, core_top):\n", - " fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel = shared_cr_geometry() \n", + " fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel = shared_cr_geometry() \n", " elem_bound = openmc.rectangular_prism(7.62*2, 7.62*2) # Pin outer boundary\n", "\n", - " f = control_rod(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel)\n", - " e = control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel)\n", + " f = control_rod(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel)\n", + " e = control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel)\n", " \n", " cr = openmc.RectLattice()\n", " cr.pitch = np.array([15.24, 15.24])\n", @@ -484,9 +1041,9 @@ " return c1\n", "\n", "def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top):\n", - " elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4 = shared_elem_geometry()\n", - " l = zoneIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4)\n", - " z = zoneIIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4)\n", + " elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4 = shared_elem_geometry()\n", + " l = zoneIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4)\n", + " z = zoneIIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4)\n", " v = void_cell(elem_bound)\n", " # tres, uno, dos, quatro\n", " t, u, d, q = graphite_triangles(elem_bound) \n", @@ -573,61 +1130,46 @@ " t2 = pos + large_half_w\n", " large_elem = openmc.model.CylinderSector(r1, r2, t1, t2)\n", " elem_hole = hole_region.rotate((0.0, 0.0, pos))\n", - " elem_reg = -large_elem & elem_hole\n", - " # comment/uncomment\n", - " #elem_cells.append(openmc.Cell(fill=moder, region=(elem_reg & \n", - " # ~zone_i_boundary &\n", - " # +core_base & \n", - " # -core_top), name=f'iib_large_element_{pos}'))\n", + " elem_reg = -large_elem\n", " if isinstance(zone_iib_reg, openmc.Region):\n", " zone_iib_reg = zone_iib_reg | elem_reg\n", " else:\n", " zone_iib_reg = elem_reg\n", + " elem_reg = -large_elem & elem_hole\n", + " elem_cells.append(openmc.Cell(fill=moder, region=(elem_reg), name=f'iib_large_element_{pos}'))\n", + " elem_cells.append(openmc.Cell(fill=fuel, region=(~elem_hole),\n", + " name=f'iib_large_element_fuel_hole_{pos}'))\n", + "\n", + " \n", " small_start = t2 + adjacent_angular_offset\n", " r1, r2 = small_radii\n", " t1 = small_start\n", " for i in range(0, small_elems_per_octant):\n", " t2 = t1 + small_angular_width\n", " elem_reg = -openmc.model.CylinderSector(r1, r2, t1, t2)\n", + " elem_cells.append(openmc.Cell(fill=moder, region=elem_reg, name=f'iib_small_element_{pos}'))\n", " pos = t2 - (small_angular_width / 2)\n", - " # comment/uncomment\n", - " # elem_cells.append(openmc.Cell(fill=moder, region=(elem_reg & \n", - " # ~zone_i_boundary &\n", - " # +core_base & \n", - " # -core_top), name=f'iib_small_element_{pos}'))\n", " zone_iib_reg = zone_iib_reg | elem_reg\n", " t1 = t2 + adjacent_angular_offset\n", " \n", - " # uncomment/comment\n", - " c1 = openmc.Cell(fill=moder, region=(zone_iib_reg &\n", - " ~zone_i_boundary &\n", - " +core_base &\n", - " -core_top), name='iib_moderator')\n", - " c2 = openmc.Cell(fill=fuel, region=(~zone_iib_reg & \n", + "\n", + " c1 = openmc.Cell(fill=fuel, region=(~zone_iib_reg & \n", " ~zone_i_boundary & \n", " -zone_ii_boundary & \n", " +core_base & \n", " -core_top), name='iib_fuel')\n", " \n", - " # comment/uncomment\n", " #universe_id=10\n", - " #iib = openmc.Universe(name='zone_iib')\n", - " #iib.add_cell(c2)\n", - " #iib.add_cell(c1)\n", - " # comment/uncomment\n", - " #iib.add_cells(elem_cells)\n", + " iib = openmc.Universe(name='zone_iib')\n", + " iib.add_cells(elem_cells)\n", + " iib.add_cell(c1)\n", " \n", - " # comment/uncomment\n", - " #c3 = openmc.Cell(fill=iib, region=(~zone_i_boundary & \n", - " # -zone_ii_boundary & \n", - " # +core_base & \n", - " # -core_top), name='zone_iib')\n", + " c2 = openmc.Cell(fill=iib, region=(~zone_i_boundary & \n", + " -zone_ii_boundary & \n", + " +core_base & \n", + " -core_top), name='zone_iib')\n", " \n", - " #comment/uncomment\n", - " #return c3\n", - "\n", - " # uncomment/comment\n", - " return c1, c2\n", + " return c2\n", "\n", "def annulus(zone_ii_boundary, annulus_boundary, core_base, core_top):\n", " annulus_reg = +zone_ii_boundary & -annulus_boundary & +core_base & -core_top\n", @@ -678,10 +1220,19 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 17, "id": "cdf61881", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "5\n", + "5\n" + ] + } + ], "source": [ "zone_bounds, core_bounds, reflector_bounds, vessel_bounds = shared_root_geometry()\n", "\n", @@ -692,7 +1243,7 @@ "\n", "main = main_lattice(zone_i_boundary, cr_boundary, core_base, core_top)\n", "cr = cr_lattice(cr_boundary, core_base, core_top)\n", - "iib_m, iib_f = zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top)\n", + "iib = zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top)\n", "a = annulus(zone_ii_boundary, annulus_boundary, core_base, core_top)\n", "lp = lower_plenum(core_base, lower_plenum_boundary, annulus_boundary)\n", "\n", @@ -711,24 +1262,2235 @@ " bottom_reflector_boundary)\n", "\n", "testuniverse = openmc.Universe()\n", - "testuniverse.add_cells([cr, main, iib_m, iib_f, lp, a, rr, rb, rt, vr, vb, vt])" + "testuniverse.add_cells([cr, main, iib, lp, a, rr, rb, rt, vr, vb, vt])" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 21, + "id": "aa09126b", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "OrderedDict([(211,\n", + " Cell\n", + " \tID =\t211\n", + " \tName =\tiib_large_element_0.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-776 775 -777 778 779)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (212,\n", + " Cell\n", + " \tID =\t212\n", + " \tName =\tiib_large_element_fuel_hole_0.0\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t-779\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (213,\n", + " Cell\n", + " \tID =\t213\n", + " \tName =\tiib_small_element_0.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-781 780 -782 783)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (214,\n", + " Cell\n", + " \tID =\t214\n", + " \tName =\tiib_small_element_2.924\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-785 784 -786 787)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (215,\n", + " Cell\n", + " \tID =\t215\n", + " \tName =\tiib_small_element_4.558999999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-789 788 -790 791)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (216,\n", + " Cell\n", + " \tID =\t216\n", + " \tName =\tiib_small_element_6.193999999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-793 792 -794 795)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (217,\n", + " Cell\n", + " \tID =\t217\n", + " \tName =\tiib_small_element_7.828999999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-797 796 -798 799)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (218,\n", + " Cell\n", + " \tID =\t218\n", + " \tName =\tiib_small_element_9.463999999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-801 800 -802 803)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (219,\n", + " Cell\n", + " \tID =\t219\n", + " \tName =\tiib_small_element_11.099\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-805 804 -806 807)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (220,\n", + " Cell\n", + " \tID =\t220\n", + " \tName =\tiib_small_element_12.734000000000002\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-809 808 -810 811)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (221,\n", + " Cell\n", + " \tID =\t221\n", + " \tName =\tiib_small_element_14.369000000000003\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-813 812 -814 815)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (222,\n", + " Cell\n", + " \tID =\t222\n", + " \tName =\tiib_small_element_16.004000000000005\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-817 816 -818 819)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (223,\n", + " Cell\n", + " \tID =\t223\n", + " \tName =\tiib_small_element_17.639000000000006\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-821 820 -822 823)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (224,\n", + " Cell\n", + " \tID =\t224\n", + " \tName =\tiib_small_element_19.274000000000008\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-825 824 -826 827)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (225,\n", + " Cell\n", + " \tID =\t225\n", + " \tName =\tiib_small_element_20.90900000000001\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-829 828 -830 831)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (226,\n", + " Cell\n", + " \tID =\t226\n", + " \tName =\tiib_small_element_22.54400000000001\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-833 832 -834 835)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (227,\n", + " Cell\n", + " \tID =\t227\n", + " \tName =\tiib_small_element_24.179000000000013\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-837 836 -838 839)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (228,\n", + " Cell\n", + " \tID =\t228\n", + " \tName =\tiib_small_element_25.814000000000014\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-841 840 -842 843)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (229,\n", + " Cell\n", + " \tID =\t229\n", + " \tName =\tiib_small_element_27.449000000000016\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-845 844 -846 847)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (230,\n", + " Cell\n", + " \tID =\t230\n", + " \tName =\tiib_small_element_29.084000000000017\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-849 848 -850 851)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (231,\n", + " Cell\n", + " \tID =\t231\n", + " \tName =\tiib_small_element_30.71900000000002\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-853 852 -854 855)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (232,\n", + " Cell\n", + " \tID =\t232\n", + " \tName =\tiib_small_element_32.35400000000002\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-857 856 -858 859)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (233,\n", + " Cell\n", + " \tID =\t233\n", + " \tName =\tiib_small_element_33.98900000000002\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-861 860 -862 863)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (234,\n", + " Cell\n", + " \tID =\t234\n", + " \tName =\tiib_small_element_35.62400000000002\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-865 864 -866 867)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (235,\n", + " Cell\n", + " \tID =\t235\n", + " \tName =\tiib_small_element_37.259000000000015\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-869 868 -870 871)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (236,\n", + " Cell\n", + " \tID =\t236\n", + " \tName =\tiib_small_element_38.89400000000001\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-873 872 -874 875)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (237,\n", + " Cell\n", + " \tID =\t237\n", + " \tName =\tiib_small_element_40.52900000000001\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-877 876 -878 879)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (238,\n", + " Cell\n", + " \tID =\t238\n", + " \tName =\tiib_large_element_45.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-881 880 -882 883 884)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (239,\n", + " Cell\n", + " \tID =\t239\n", + " \tName =\tiib_large_element_fuel_hole_45.0\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t-884\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (240,\n", + " Cell\n", + " \tID =\t240\n", + " \tName =\tiib_small_element_45.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-886 885 -887 888)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (241,\n", + " Cell\n", + " \tID =\t241\n", + " \tName =\tiib_small_element_47.924\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-890 889 -891 892)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (242,\n", + " Cell\n", + " \tID =\t242\n", + " \tName =\tiib_small_element_49.559\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-894 893 -895 896)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (243,\n", + " Cell\n", + " \tID =\t243\n", + " \tName =\tiib_small_element_51.193999999999996\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-898 897 -899 900)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (244,\n", + " Cell\n", + " \tID =\t244\n", + " \tName =\tiib_small_element_52.82899999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-902 901 -903 904)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (245,\n", + " Cell\n", + " \tID =\t245\n", + " \tName =\tiib_small_element_54.46399999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-906 905 -907 908)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (246,\n", + " Cell\n", + " \tID =\t246\n", + " \tName =\tiib_small_element_56.09899999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-910 909 -911 912)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (247,\n", + " Cell\n", + " \tID =\t247\n", + " \tName =\tiib_small_element_57.73399999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-914 913 -915 916)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (248,\n", + " Cell\n", + " \tID =\t248\n", + " \tName =\tiib_small_element_59.368999999999986\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-918 917 -919 920)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (249,\n", + " Cell\n", + " \tID =\t249\n", + " \tName =\tiib_small_element_61.003999999999984\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-922 921 -923 924)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (250,\n", + " Cell\n", + " \tID =\t250\n", + " \tName =\tiib_small_element_62.63899999999998\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-926 925 -927 928)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (251,\n", + " Cell\n", + " \tID =\t251\n", + " \tName =\tiib_small_element_64.27399999999997\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-930 929 -931 932)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (252,\n", + " Cell\n", + " \tID =\t252\n", + " \tName =\tiib_small_element_65.90899999999996\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-934 933 -935 936)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (253,\n", + " Cell\n", + " \tID =\t253\n", + " \tName =\tiib_small_element_67.54399999999995\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-938 937 -939 940)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (254,\n", + " Cell\n", + " \tID =\t254\n", + " \tName =\tiib_small_element_69.17899999999995\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-942 941 -943 944)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (255,\n", + " Cell\n", + " \tID =\t255\n", + " \tName =\tiib_small_element_70.81399999999994\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-946 945 -947 948)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (256,\n", + " Cell\n", + " \tID =\t256\n", + " \tName =\tiib_small_element_72.44899999999993\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-950 949 -951 952)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (257,\n", + " Cell\n", + " \tID =\t257\n", + " \tName =\tiib_small_element_74.08399999999992\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-954 953 -955 956)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (258,\n", + " Cell\n", + " \tID =\t258\n", + " \tName =\tiib_small_element_75.71899999999991\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-958 957 -959 960)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (259,\n", + " Cell\n", + " \tID =\t259\n", + " \tName =\tiib_small_element_77.3539999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-962 961 -963 964)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (260,\n", + " Cell\n", + " \tID =\t260\n", + " \tName =\tiib_small_element_78.98899999999989\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-966 965 -967 968)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (261,\n", + " Cell\n", + " \tID =\t261\n", + " \tName =\tiib_small_element_80.62399999999988\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-970 969 -971 972)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (262,\n", + " Cell\n", + " \tID =\t262\n", + " \tName =\tiib_small_element_82.25899999999987\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-974 973 -975 976)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (263,\n", + " Cell\n", + " \tID =\t263\n", + " \tName =\tiib_small_element_83.89399999999986\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-978 977 -979 980)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (264,\n", + " Cell\n", + " \tID =\t264\n", + " \tName =\tiib_small_element_85.52899999999985\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-982 981 -983 984)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (265,\n", + " Cell\n", + " \tID =\t265\n", + " \tName =\tiib_large_element_90.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-986 985 -987 988 989)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (266,\n", + " Cell\n", + " \tID =\t266\n", + " \tName =\tiib_large_element_fuel_hole_90.0\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t-989\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (267,\n", + " Cell\n", + " \tID =\t267\n", + " \tName =\tiib_small_element_90.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-991 990 -992 993)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (268,\n", + " Cell\n", + " \tID =\t268\n", + " \tName =\tiib_small_element_92.92399999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-995 994 -996 997)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (269,\n", + " Cell\n", + " \tID =\t269\n", + " \tName =\tiib_small_element_94.55899999999998\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-999 998 -1000 1001)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (270,\n", + " Cell\n", + " \tID =\t270\n", + " \tName =\tiib_small_element_96.19399999999997\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1003 1002 -1004 1005)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (271,\n", + " Cell\n", + " \tID =\t271\n", + " \tName =\tiib_small_element_97.82899999999997\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1007 1006 -1008 1009)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (272,\n", + " Cell\n", + " \tID =\t272\n", + " \tName =\tiib_small_element_99.46399999999996\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1011 1010 -1012 1013)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (273,\n", + " Cell\n", + " \tID =\t273\n", + " \tName =\tiib_small_element_101.09899999999995\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1015 1014 -1016 1017)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (274,\n", + " Cell\n", + " \tID =\t274\n", + " \tName =\tiib_small_element_102.73399999999994\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1019 1018 -1020 1021)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (275,\n", + " Cell\n", + " \tID =\t275\n", + " \tName =\tiib_small_element_104.36899999999993\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1023 1022 -1024 1025)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (276,\n", + " Cell\n", + " \tID =\t276\n", + " \tName =\tiib_small_element_106.00399999999992\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1027 1026 -1028 1029)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (277,\n", + " Cell\n", + " \tID =\t277\n", + " \tName =\tiib_small_element_107.63899999999991\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1031 1030 -1032 1033)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (278,\n", + " Cell\n", + " \tID =\t278\n", + " \tName =\tiib_small_element_109.2739999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1035 1034 -1036 1037)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (279,\n", + " Cell\n", + " \tID =\t279\n", + " \tName =\tiib_small_element_110.90899999999989\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1039 1038 -1040 1041)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (280,\n", + " Cell\n", + " \tID =\t280\n", + " \tName =\tiib_small_element_112.54399999999988\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1043 1042 -1044 1045)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (281,\n", + " Cell\n", + " \tID =\t281\n", + " \tName =\tiib_small_element_114.17899999999987\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1047 1046 -1048 1049)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (282,\n", + " Cell\n", + " \tID =\t282\n", + " \tName =\tiib_small_element_115.81399999999987\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1051 1050 -1052 1053)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (283,\n", + " Cell\n", + " \tID =\t283\n", + " \tName =\tiib_small_element_117.44899999999986\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1055 1054 -1056 1057)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (284,\n", + " Cell\n", + " \tID =\t284\n", + " \tName =\tiib_small_element_119.08399999999985\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1059 1058 -1060 1061)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (285,\n", + " Cell\n", + " \tID =\t285\n", + " \tName =\tiib_small_element_120.71899999999984\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1063 1062 -1064 1065)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (286,\n", + " Cell\n", + " \tID =\t286\n", + " \tName =\tiib_small_element_122.35399999999983\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1067 1066 -1068 1069)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (287,\n", + " Cell\n", + " \tID =\t287\n", + " \tName =\tiib_small_element_123.98899999999982\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1071 1070 -1072 1073)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (288,\n", + " Cell\n", + " \tID =\t288\n", + " \tName =\tiib_small_element_125.62399999999981\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1075 1074 -1076 1077)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (289,\n", + " Cell\n", + " \tID =\t289\n", + " \tName =\tiib_small_element_127.2589999999998\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1079 1078 -1080 1081)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (290,\n", + " Cell\n", + " \tID =\t290\n", + " \tName =\tiib_small_element_128.89399999999983\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1083 1082 -1084 1085)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (291,\n", + " Cell\n", + " \tID =\t291\n", + " \tName =\tiib_small_element_130.52899999999985\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1087 1086 -1088 1089)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (292,\n", + " Cell\n", + " \tID =\t292\n", + " \tName =\tiib_large_element_135.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1091 1090 -1092 1093 1094)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (293,\n", + " Cell\n", + " \tID =\t293\n", + " \tName =\tiib_large_element_fuel_hole_135.0\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t-1094\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (294,\n", + " Cell\n", + " \tID =\t294\n", + " \tName =\tiib_small_element_135.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1096 1095 -1097 1098)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (295,\n", + " Cell\n", + " \tID =\t295\n", + " \tName =\tiib_small_element_137.92400000000004\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1100 1099 -1101 1102)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (296,\n", + " Cell\n", + " \tID =\t296\n", + " \tName =\tiib_small_element_139.55900000000005\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1104 1103 -1105 1106)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (297,\n", + " Cell\n", + " \tID =\t297\n", + " \tName =\tiib_small_element_141.19400000000007\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1108 1107 -1109 1110)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (298,\n", + " Cell\n", + " \tID =\t298\n", + " \tName =\tiib_small_element_142.8290000000001\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1112 1111 -1113 1114)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (299,\n", + " Cell\n", + " \tID =\t299\n", + " \tName =\tiib_small_element_144.4640000000001\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1116 1115 -1117 1118)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (300,\n", + " Cell\n", + " \tID =\t300\n", + " \tName =\tiib_small_element_146.09900000000013\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1120 1119 -1121 1122)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (301,\n", + " Cell\n", + " \tID =\t301\n", + " \tName =\tiib_small_element_147.73400000000015\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1124 1123 -1125 1126)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (302,\n", + " Cell\n", + " \tID =\t302\n", + " \tName =\tiib_small_element_149.36900000000017\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1128 1127 -1129 1130)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (303,\n", + " Cell\n", + " \tID =\t303\n", + " \tName =\tiib_small_element_151.0040000000002\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1132 1131 -1133 1134)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (304,\n", + " Cell\n", + " \tID =\t304\n", + " \tName =\tiib_small_element_152.6390000000002\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1136 1135 -1137 1138)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (305,\n", + " Cell\n", + " \tID =\t305\n", + " \tName =\tiib_small_element_154.27400000000023\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1140 1139 -1141 1142)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (306,\n", + " Cell\n", + " \tID =\t306\n", + " \tName =\tiib_small_element_155.90900000000025\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1144 1143 -1145 1146)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (307,\n", + " Cell\n", + " \tID =\t307\n", + " \tName =\tiib_small_element_157.54400000000027\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1148 1147 -1149 1150)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (308,\n", + " Cell\n", + " \tID =\t308\n", + " \tName =\tiib_small_element_159.1790000000003\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1152 1151 -1153 1154)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (309,\n", + " Cell\n", + " \tID =\t309\n", + " \tName =\tiib_small_element_160.8140000000003\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1156 1155 -1157 1158)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (310,\n", + " Cell\n", + " \tID =\t310\n", + " \tName =\tiib_small_element_162.44900000000032\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1160 1159 -1161 1162)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (311,\n", + " Cell\n", + " \tID =\t311\n", + " \tName =\tiib_small_element_164.08400000000034\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1164 1163 -1165 1166)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (312,\n", + " Cell\n", + " \tID =\t312\n", + " \tName =\tiib_small_element_165.71900000000036\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1168 1167 -1169 1170)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (313,\n", + " Cell\n", + " \tID =\t313\n", + " \tName =\tiib_small_element_167.35400000000038\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1172 1171 -1173 1174)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (314,\n", + " Cell\n", + " \tID =\t314\n", + " \tName =\tiib_small_element_168.9890000000004\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1176 1175 -1177 1178)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (315,\n", + " Cell\n", + " \tID =\t315\n", + " \tName =\tiib_small_element_170.62400000000042\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1180 1179 -1181 1182)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (316,\n", + " Cell\n", + " \tID =\t316\n", + " \tName =\tiib_small_element_172.25900000000044\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1184 1183 -1185 1186)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (317,\n", + " Cell\n", + " \tID =\t317\n", + " \tName =\tiib_small_element_173.89400000000046\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1188 1187 -1189 1190)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (318,\n", + " Cell\n", + " \tID =\t318\n", + " \tName =\tiib_small_element_175.52900000000048\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1192 1191 -1193 1194)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (319,\n", + " Cell\n", + " \tID =\t319\n", + " \tName =\tiib_large_element_180.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1196 1195 -1197 1198 1199)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (320,\n", + " Cell\n", + " \tID =\t320\n", + " \tName =\tiib_large_element_fuel_hole_180.0\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t-1199\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (321,\n", + " Cell\n", + " \tID =\t321\n", + " \tName =\tiib_small_element_180.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1201 1200 -1202 1203)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (322,\n", + " Cell\n", + " \tID =\t322\n", + " \tName =\tiib_small_element_182.92400000000004\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1205 1204 -1206 1207)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (323,\n", + " Cell\n", + " \tID =\t323\n", + " \tName =\tiib_small_element_184.55900000000005\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1209 1208 -1210 1211)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (324,\n", + " Cell\n", + " \tID =\t324\n", + " \tName =\tiib_small_element_186.19400000000007\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1213 1212 -1214 1215)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (325,\n", + " Cell\n", + " \tID =\t325\n", + " \tName =\tiib_small_element_187.8290000000001\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1217 1216 -1218 1219)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (326,\n", + " Cell\n", + " \tID =\t326\n", + " \tName =\tiib_small_element_189.4640000000001\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1221 1220 -1222 1223)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (327,\n", + " Cell\n", + " \tID =\t327\n", + " \tName =\tiib_small_element_191.09900000000013\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1225 1224 -1226 1227)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (328,\n", + " Cell\n", + " \tID =\t328\n", + " \tName =\tiib_small_element_192.73400000000015\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1229 1228 -1230 1231)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (329,\n", + " Cell\n", + " \tID =\t329\n", + " \tName =\tiib_small_element_194.36900000000017\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1233 1232 -1234 1235)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (330,\n", + " Cell\n", + " \tID =\t330\n", + " \tName =\tiib_small_element_196.0040000000002\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1237 1236 -1238 1239)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (331,\n", + " Cell\n", + " \tID =\t331\n", + " \tName =\tiib_small_element_197.6390000000002\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1241 1240 -1242 1243)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (332,\n", + " Cell\n", + " \tID =\t332\n", + " \tName =\tiib_small_element_199.27400000000023\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1245 1244 -1246 1247)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (333,\n", + " Cell\n", + " \tID =\t333\n", + " \tName =\tiib_small_element_200.90900000000025\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1249 1248 -1250 1251)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (334,\n", + " Cell\n", + " \tID =\t334\n", + " \tName =\tiib_small_element_202.54400000000027\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1253 1252 -1254 1255)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (335,\n", + " Cell\n", + " \tID =\t335\n", + " \tName =\tiib_small_element_204.1790000000003\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1257 1256 -1258 1259)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (336,\n", + " Cell\n", + " \tID =\t336\n", + " \tName =\tiib_small_element_205.8140000000003\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1261 1260 -1262 1263)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (337,\n", + " Cell\n", + " \tID =\t337\n", + " \tName =\tiib_small_element_207.44900000000032\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1265 1264 -1266 1267)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (338,\n", + " Cell\n", + " \tID =\t338\n", + " \tName =\tiib_small_element_209.08400000000034\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1269 1268 -1270 1271)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (339,\n", + " Cell\n", + " \tID =\t339\n", + " \tName =\tiib_small_element_210.71900000000036\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1273 1272 -1274 1275)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (340,\n", + " Cell\n", + " \tID =\t340\n", + " \tName =\tiib_small_element_212.35400000000038\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1277 1276 -1278 1279)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (341,\n", + " Cell\n", + " \tID =\t341\n", + " \tName =\tiib_small_element_213.9890000000004\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1281 1280 -1282 1283)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (342,\n", + " Cell\n", + " \tID =\t342\n", + " \tName =\tiib_small_element_215.62400000000042\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1285 1284 -1286 1287)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (343,\n", + " Cell\n", + " \tID =\t343\n", + " \tName =\tiib_small_element_217.25900000000044\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1289 1288 -1290 1291)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (344,\n", + " Cell\n", + " \tID =\t344\n", + " \tName =\tiib_small_element_218.89400000000046\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1293 1292 -1294 1295)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (345,\n", + " Cell\n", + " \tID =\t345\n", + " \tName =\tiib_small_element_220.52900000000048\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1297 1296 -1298 1299)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (346,\n", + " Cell\n", + " \tID =\t346\n", + " \tName =\tiib_large_element_225.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1301 1300 -1302 1303 1304)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (347,\n", + " Cell\n", + " \tID =\t347\n", + " \tName =\tiib_large_element_fuel_hole_225.0\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t-1304\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (348,\n", + " Cell\n", + " \tID =\t348\n", + " \tName =\tiib_small_element_225.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1306 1305 -1307 1308)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (349,\n", + " Cell\n", + " \tID =\t349\n", + " \tName =\tiib_small_element_227.92400000000004\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1310 1309 -1311 1312)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (350,\n", + " Cell\n", + " \tID =\t350\n", + " \tName =\tiib_small_element_229.55900000000005\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1314 1313 -1315 1316)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (351,\n", + " Cell\n", + " \tID =\t351\n", + " \tName =\tiib_small_element_231.19400000000007\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1318 1317 -1319 1320)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (352,\n", + " Cell\n", + " \tID =\t352\n", + " \tName =\tiib_small_element_232.8290000000001\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1322 1321 -1323 1324)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (353,\n", + " Cell\n", + " \tID =\t353\n", + " \tName =\tiib_small_element_234.4640000000001\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1326 1325 -1327 1328)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (354,\n", + " Cell\n", + " \tID =\t354\n", + " \tName =\tiib_small_element_236.09900000000013\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1330 1329 -1331 1332)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (355,\n", + " Cell\n", + " \tID =\t355\n", + " \tName =\tiib_small_element_237.73400000000015\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1334 1333 -1335 1336)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (356,\n", + " Cell\n", + " \tID =\t356\n", + " \tName =\tiib_small_element_239.36900000000017\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1338 1337 -1339 1340)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (357,\n", + " Cell\n", + " \tID =\t357\n", + " \tName =\tiib_small_element_241.0040000000002\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1342 1341 -1343 1344)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (358,\n", + " Cell\n", + " \tID =\t358\n", + " \tName =\tiib_small_element_242.6390000000002\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1346 1345 -1347 1348)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (359,\n", + " Cell\n", + " \tID =\t359\n", + " \tName =\tiib_small_element_244.27400000000023\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1350 1349 -1351 1352)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (360,\n", + " Cell\n", + " \tID =\t360\n", + " \tName =\tiib_small_element_245.90900000000025\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1354 1353 -1355 1356)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (361,\n", + " Cell\n", + " \tID =\t361\n", + " \tName =\tiib_small_element_247.54400000000027\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1358 1357 -1359 1360)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (362,\n", + " Cell\n", + " \tID =\t362\n", + " \tName =\tiib_small_element_249.1790000000003\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1362 1361 -1363 1364)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (363,\n", + " Cell\n", + " \tID =\t363\n", + " \tName =\tiib_small_element_250.8140000000003\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1366 1365 -1367 1368)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (364,\n", + " Cell\n", + " \tID =\t364\n", + " \tName =\tiib_small_element_252.44900000000032\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1370 1369 -1371 1372)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (365,\n", + " Cell\n", + " \tID =\t365\n", + " \tName =\tiib_small_element_254.08400000000034\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1374 1373 -1375 1376)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (366,\n", + " Cell\n", + " \tID =\t366\n", + " \tName =\tiib_small_element_255.71900000000036\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1378 1377 -1379 1380)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (367,\n", + " Cell\n", + " \tID =\t367\n", + " \tName =\tiib_small_element_257.3540000000003\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1382 1381 -1383 1384)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (368,\n", + " Cell\n", + " \tID =\t368\n", + " \tName =\tiib_small_element_258.9890000000003\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1386 1385 -1387 1388)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (369,\n", + " Cell\n", + " \tID =\t369\n", + " \tName =\tiib_small_element_260.6240000000003\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1390 1389 -1391 1392)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (370,\n", + " Cell\n", + " \tID =\t370\n", + " \tName =\tiib_small_element_262.2590000000003\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1394 1393 -1395 1396)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (371,\n", + " Cell\n", + " \tID =\t371\n", + " \tName =\tiib_small_element_263.8940000000003\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1398 1397 -1399 1400)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (372,\n", + " Cell\n", + " \tID =\t372\n", + " \tName =\tiib_small_element_265.5290000000003\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1402 1401 -1403 1404)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (373,\n", + " Cell\n", + " \tID =\t373\n", + " \tName =\tiib_large_element_270.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1406 1405 -1407 1408 1409)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (374,\n", + " Cell\n", + " \tID =\t374\n", + " \tName =\tiib_large_element_fuel_hole_270.0\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t-1409\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (375,\n", + " Cell\n", + " \tID =\t375\n", + " \tName =\tiib_small_element_270.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1411 1410 -1412 1413)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (376,\n", + " Cell\n", + " \tID =\t376\n", + " \tName =\tiib_small_element_272.924\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1415 1414 -1416 1417)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (377,\n", + " Cell\n", + " \tID =\t377\n", + " \tName =\tiib_small_element_274.55899999999997\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1419 1418 -1420 1421)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (378,\n", + " Cell\n", + " \tID =\t378\n", + " \tName =\tiib_small_element_276.19399999999996\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1423 1422 -1424 1425)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (379,\n", + " Cell\n", + " \tID =\t379\n", + " \tName =\tiib_small_element_277.82899999999995\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1427 1426 -1428 1429)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (380,\n", + " Cell\n", + " \tID =\t380\n", + " \tName =\tiib_small_element_279.46399999999994\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1431 1430 -1432 1433)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (381,\n", + " Cell\n", + " \tID =\t381\n", + " \tName =\tiib_small_element_281.09899999999993\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1435 1434 -1436 1437)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (382,\n", + " Cell\n", + " \tID =\t382\n", + " \tName =\tiib_small_element_282.7339999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1439 1438 -1440 1441)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (383,\n", + " Cell\n", + " \tID =\t383\n", + " \tName =\tiib_small_element_284.3689999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1443 1442 -1444 1445)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (384,\n", + " Cell\n", + " \tID =\t384\n", + " \tName =\tiib_small_element_286.0039999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1447 1446 -1448 1449)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (385,\n", + " Cell\n", + " \tID =\t385\n", + " \tName =\tiib_small_element_287.6389999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1451 1450 -1452 1453)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (386,\n", + " Cell\n", + " \tID =\t386\n", + " \tName =\tiib_small_element_289.2739999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1455 1454 -1456 1457)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (387,\n", + " Cell\n", + " \tID =\t387\n", + " \tName =\tiib_small_element_290.9089999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1459 1458 -1460 1461)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (388,\n", + " Cell\n", + " \tID =\t388\n", + " \tName =\tiib_small_element_292.54399999999987\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1463 1462 -1464 1465)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (389,\n", + " Cell\n", + " \tID =\t389\n", + " \tName =\tiib_small_element_294.17899999999986\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1467 1466 -1468 1469)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (390,\n", + " Cell\n", + " \tID =\t390\n", + " \tName =\tiib_small_element_295.81399999999985\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1471 1470 -1472 1473)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (391,\n", + " Cell\n", + " \tID =\t391\n", + " \tName =\tiib_small_element_297.44899999999984\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1475 1474 -1476 1477)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (392,\n", + " Cell\n", + " \tID =\t392\n", + " \tName =\tiib_small_element_299.08399999999983\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1479 1478 -1480 1481)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (393,\n", + " Cell\n", + " \tID =\t393\n", + " \tName =\tiib_small_element_300.7189999999998\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1483 1482 -1484 1485)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (394,\n", + " Cell\n", + " \tID =\t394\n", + " \tName =\tiib_small_element_302.3539999999998\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1487 1486 -1488 1489)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (395,\n", + " Cell\n", + " \tID =\t395\n", + " \tName =\tiib_small_element_303.9889999999998\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1491 1490 -1492 1493)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (396,\n", + " Cell\n", + " \tID =\t396\n", + " \tName =\tiib_small_element_305.6239999999998\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1495 1494 -1496 1497)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (397,\n", + " Cell\n", + " \tID =\t397\n", + " \tName =\tiib_small_element_307.2589999999998\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1499 1498 -1500 1501)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (398,\n", + " Cell\n", + " \tID =\t398\n", + " \tName =\tiib_small_element_308.8939999999998\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1503 1502 -1504 1505)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (399,\n", + " Cell\n", + " \tID =\t399\n", + " \tName =\tiib_small_element_310.52899999999977\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1507 1506 -1508 1509)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (400,\n", + " Cell\n", + " \tID =\t400\n", + " \tName =\tiib_large_element_315.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1511 1510 -1512 1513 1514)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (401,\n", + " Cell\n", + " \tID =\t401\n", + " \tName =\tiib_large_element_fuel_hole_315.0\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t-1514\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (402,\n", + " Cell\n", + " \tID =\t402\n", + " \tName =\tiib_small_element_315.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1516 1515 -1517 1518)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (403,\n", + " Cell\n", + " \tID =\t403\n", + " \tName =\tiib_small_element_317.924\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1520 1519 -1521 1522)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (404,\n", + " Cell\n", + " \tID =\t404\n", + " \tName =\tiib_small_element_319.55899999999997\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1524 1523 -1525 1526)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (405,\n", + " Cell\n", + " \tID =\t405\n", + " \tName =\tiib_small_element_321.19399999999996\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1528 1527 -1529 1530)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (406,\n", + " Cell\n", + " \tID =\t406\n", + " \tName =\tiib_small_element_322.82899999999995\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1532 1531 -1533 1534)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (407,\n", + " Cell\n", + " \tID =\t407\n", + " \tName =\tiib_small_element_324.46399999999994\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1536 1535 -1537 1538)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (408,\n", + " Cell\n", + " \tID =\t408\n", + " \tName =\tiib_small_element_326.09899999999993\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1540 1539 -1541 1542)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (409,\n", + " Cell\n", + " \tID =\t409\n", + " \tName =\tiib_small_element_327.7339999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1544 1543 -1545 1546)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (410,\n", + " Cell\n", + " \tID =\t410\n", + " \tName =\tiib_small_element_329.3689999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1548 1547 -1549 1550)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (411,\n", + " Cell\n", + " \tID =\t411\n", + " \tName =\tiib_small_element_331.0039999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1552 1551 -1553 1554)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (412,\n", + " Cell\n", + " \tID =\t412\n", + " \tName =\tiib_small_element_332.6389999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1556 1555 -1557 1558)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (413,\n", + " Cell\n", + " \tID =\t413\n", + " \tName =\tiib_small_element_334.2739999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1560 1559 -1561 1562)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (414,\n", + " Cell\n", + " \tID =\t414\n", + " \tName =\tiib_small_element_335.9089999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1564 1563 -1565 1566)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (415,\n", + " Cell\n", + " \tID =\t415\n", + " \tName =\tiib_small_element_337.54399999999987\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1568 1567 -1569 1570)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (416,\n", + " Cell\n", + " \tID =\t416\n", + " \tName =\tiib_small_element_339.17899999999986\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1572 1571 -1573 1574)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (417,\n", + " Cell\n", + " \tID =\t417\n", + " \tName =\tiib_small_element_340.81399999999985\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1576 1575 -1577 1578)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (418,\n", + " Cell\n", + " \tID =\t418\n", + " \tName =\tiib_small_element_342.44899999999984\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1580 1579 -1581 1582)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (419,\n", + " Cell\n", + " \tID =\t419\n", + " \tName =\tiib_small_element_344.08399999999983\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1584 1583 -1585 1586)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (420,\n", + " Cell\n", + " \tID =\t420\n", + " \tName =\tiib_small_element_345.7189999999998\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1588 1587 -1589 1590)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (421,\n", + " Cell\n", + " \tID =\t421\n", + " \tName =\tiib_small_element_347.3539999999998\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1592 1591 -1593 1594)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (422,\n", + " Cell\n", + " \tID =\t422\n", + " \tName =\tiib_small_element_348.9889999999998\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1596 1595 -1597 1598)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (423,\n", + " Cell\n", + " \tID =\t423\n", + " \tName =\tiib_small_element_350.6239999999998\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1600 1599 -1601 1602)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (424,\n", + " Cell\n", + " \tID =\t424\n", + " \tName =\tiib_small_element_352.2589999999998\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1604 1603 -1605 1606)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (425,\n", + " Cell\n", + " \tID =\t425\n", + " \tName =\tiib_small_element_353.8939999999998\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1608 1607 -1609 1610)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (426,\n", + " Cell\n", + " \tID =\t426\n", + " \tName =\tiib_small_element_355.52899999999977\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1612 1611 -1613 1614)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (427,\n", + " Cell\n", + " \tID =\t427\n", + " \tName =\tiib_fuel\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(~((-776 775 -777 778) | (-781 780 -782 783) | (-785 784 -786 787) | (-789 788 -790 791) | (-793 792 -794 795) | (-797 796 -798 799) | (-801 800 -802 803) | (-805 804 -806 807) | (-809 808 -810 811) | (-813 812 -814 815) | (-817 816 -818 819) | (-821 820 -822 823) | (-825 824 -826 827) | (-829 828 -830 831) | (-833 832 -834 835) | (-837 836 -838 839) | (-841 840 -842 843) | (-845 844 -846 847) | (-849 848 -850 851) | (-853 852 -854 855) | (-857 856 -858 859) | (-861 860 -862 863) | (-865 864 -866 867) | (-869 868 -870 871) | (-873 872 -874 875) | (-877 876 -878 879) | (-881 880 -882 883) | (-886 885 -887 888) | (-890 889 -891 892) | (-894 893 -895 896) | (-898 897 -899 900) | (-902 901 -903 904) | (-906 905 -907 908) | (-910 909 -911 912) | (-914 913 -915 916) | (-918 917 -919 920) | (-922 921 -923 924) | (-926 925 -927 928) | (-930 929 -931 932) | (-934 933 -935 936) | (-938 937 -939 940) | (-942 941 -943 944) | (-946 945 -947 948) | (-950 949 -951 952) | (-954 953 -955 956) | (-958 957 -959 960) | (-962 961 -963 964) | (-966 965 -967 968) | (-970 969 -971 972) | (-974 973 -975 976) | (-978 977 -979 980) | (-982 981 -983 984) | (-986 985 -987 988) | (-991 990 -992 993) | (-995 994 -996 997) | (-999 998 -1000 1001) | (-1003 1002 -1004 1005) | (-1007 1006 -1008 1009) | (-1011 1010 -1012 1013) | (-1015 1014 -1016 1017) | (-1019 1018 -1020 1021) | (-1023 1022 -1024 1025) | (-1027 1026 -1028 1029) | (-1031 1030 -1032 1033) | (-1035 1034 -1036 1037) | (-1039 1038 -1040 1041) | (-1043 1042 -1044 1045) | (-1047 1046 -1048 1049) | (-1051 1050 -1052 1053) | (-1055 1054 -1056 1057) | (-1059 1058 -1060 1061) | (-1063 1062 -1064 1065) | (-1067 1066 -1068 1069) | (-1071 1070 -1072 1073) | (-1075 1074 -1076 1077) | (-1079 1078 -1080 1081) | (-1083 1082 -1084 1085) | (-1087 1086 -1088 1089) | (-1091 1090 -1092 1093) | (-1096 1095 -1097 1098) | (-1100 1099 -1101 1102) | (-1104 1103 -1105 1106) | (-1108 1107 -1109 1110) | (-1112 1111 -1113 1114) | (-1116 1115 -1117 1118) | (-1120 1119 -1121 1122) | (-1124 1123 -1125 1126) | (-1128 1127 -1129 1130) | (-1132 1131 -1133 1134) | (-1136 1135 -1137 1138) | (-1140 1139 -1141 1142) | (-1144 1143 -1145 1146) | (-1148 1147 -1149 1150) | (-1152 1151 -1153 1154) | (-1156 1155 -1157 1158) | (-1160 1159 -1161 1162) | (-1164 1163 -1165 1166) | (-1168 1167 -1169 1170) | (-1172 1171 -1173 1174) | (-1176 1175 -1177 1178) | (-1180 1179 -1181 1182) | (-1184 1183 -1185 1186) | (-1188 1187 -1189 1190) | (-1192 1191 -1193 1194) | (-1196 1195 -1197 1198) | (-1201 1200 -1202 1203) | (-1205 1204 -1206 1207) | (-1209 1208 -1210 1211) | (-1213 1212 -1214 1215) | (-1217 1216 -1218 1219) | (-1221 1220 -1222 1223) | (-1225 1224 -1226 1227) | (-1229 1228 -1230 1231) | (-1233 1232 -1234 1235) | (-1237 1236 -1238 1239) | (-1241 1240 -1242 1243) | (-1245 1244 -1246 1247) | (-1249 1248 -1250 1251) | (-1253 1252 -1254 1255) | (-1257 1256 -1258 1259) | (-1261 1260 -1262 1263) | (-1265 1264 -1266 1267) | (-1269 1268 -1270 1271) | (-1273 1272 -1274 1275) | (-1277 1276 -1278 1279) | (-1281 1280 -1282 1283) | (-1285 1284 -1286 1287) | (-1289 1288 -1290 1291) | (-1293 1292 -1294 1295) | (-1297 1296 -1298 1299) | (-1301 1300 -1302 1303) | (-1306 1305 -1307 1308) | (-1310 1309 -1311 1312) | (-1314 1313 -1315 1316) | (-1318 1317 -1319 1320) | (-1322 1321 -1323 1324) | (-1326 1325 -1327 1328) | (-1330 1329 -1331 1332) | (-1334 1333 -1335 1336) | (-1338 1337 -1339 1340) | (-1342 1341 -1343 1344) | (-1346 1345 -1347 1348) | (-1350 1349 -1351 1352) | (-1354 1353 -1355 1356) | (-1358 1357 -1359 1360) | (-1362 1361 -1363 1364) | (-1366 1365 -1367 1368) | (-1370 1369 -1371 1372) | (-1374 1373 -1375 1376) | (-1378 1377 -1379 1380) | (-1382 1381 -1383 1384) | (-1386 1385 -1387 1388) | (-1390 1389 -1391 1392) | (-1394 1393 -1395 1396) | (-1398 1397 -1399 1400) | (-1402 1401 -1403 1404) | (-1406 1405 -1407 1408) | (-1411 1410 -1412 1413) | (-1415 1414 -1416 1417) | (-1419 1418 -1420 1421) | (-1423 1422 -1424 1425) | (-1427 1426 -1428 1429) | (-1431 1430 -1432 1433) | (-1435 1434 -1436 1437) | (-1439 1438 -1440 1441) | (-1443 1442 -1444 1445) | (-1447 1446 -1448 1449) | (-1451 1450 -1452 1453) | (-1455 1454 -1456 1457) | (-1459 1458 -1460 1461) | (-1463 1462 -1464 1465) | (-1467 1466 -1468 1469) | (-1471 1470 -1472 1473) | (-1475 1474 -1476 1477) | (-1479 1478 -1480 1481) | (-1483 1482 -1484 1485) | (-1487 1486 -1488 1489) | (-1491 1490 -1492 1493) | (-1495 1494 -1496 1497) | (-1499 1498 -1500 1501) | (-1503 1502 -1504 1505) | (-1507 1506 -1508 1509) | (-1511 1510 -1512 1513) | (-1516 1515 -1517 1518) | (-1520 1519 -1521 1522) | (-1524 1523 -1525 1526) | (-1528 1527 -1529 1530) | (-1532 1531 -1533 1534) | (-1536 1535 -1537 1538) | (-1540 1539 -1541 1542) | (-1544 1543 -1545 1546) | (-1548 1547 -1549 1550) | (-1552 1551 -1553 1554) | (-1556 1555 -1557 1558) | (-1560 1559 -1561 1562) | (-1564 1563 -1565 1566) | (-1568 1567 -1569 1570) | (-1572 1571 -1573 1574) | (-1576 1575 -1577 1578) | (-1580 1579 -1581 1582) | (-1584 1583 -1585 1586) | (-1588 1587 -1589 1590) | (-1592 1591 -1593 1594) | (-1596 1595 -1597 1598) | (-1600 1599 -1601 1602) | (-1604 1603 -1605 1606) | (-1608 1607 -1609 1610) | (-1612 1611 -1613 1614)) ~((-477 478 -479 480 481 482 -483 -484) | (-485 486 -487 488 489 490 -491 -492) | (-493 494 -495 496 497 498 -499 -500)) -501 475 -476)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone)])" + ] + }, + "execution_count": 21, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "ia.fill.get_all_cells()" + ] + }, + { + "cell_type": "code", + "execution_count": 18, "id": "2a283441", "metadata": { "scrolled": false }, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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7aBCRORFL3qRHDx4UG677TY5++yz5fOf/7yceeaZsrGxseM1l112mdxzzz1y6qmnHrbfgwcPysGDB7f/ezabhf1GevAIU3SJ8VQP39WebYMXAACA2riOh2xCi+XXm7J99CmwKucpICKJw4oDBw7I7t27d/zdiSeeKMccc4wcOHBg+zXPfOYzd7xmsc2BAwfWhhVXXHHFdlcHEJtJd4Xpflxo7V/jwra6D5vvyXXbVmqubktNalKTmtSkpmZNm21bqdm3v7592IYKoUIL0/0AubBes2Jzc1NGo1Hvn1tvvdV4f+umcczn8x1/v/qaxeKaXVNALrvsMplOp9t/7rvvPuPjia3kOUQII9R6FL7712B6EdX8BKDWml3tqNT0R01qUrONmq7nsFZq+milpq3QjyW1efQp2lD6vaZ1Z8VFF10kr371q3tfs9oJ0WXPnj3yxS9+ccffPfTQQ/LYY49td0/s2bNnu8ti4cEHHxQROawrY2FjY2PHtBEgtqHuiq5tXMSYTgKUJsVglDZb1CLFND+mFqIlpmtI+KwTZtttwfsPObLurNi1a5c861nP6v1z7LHHGu3r9NNPl7vuukseeOCB7b+7/vrrZWNjQ0477bTt19x00007Hmd6/fXXy969e41DkdRynwuEdHwS8BI6KVaZHofm8VKTmjXX1JTLeaIGpf/75fw7T01q5lRTg8k4zbXTwnT/aFMJ96hBH1167733yh133CH33nuvPP7443LHHXfIHXfcId/85jdFROTcc8+VZz/72fKa17xGbr/9dvnMZz4jb33rW+UXf/EXZTwei4jIBRdcIBsbG3LhhRfKXXfdJdddd528613vqupJIKW358CNTyeFyUrOthcn7fmby8fhsr/l7Wy2pWbeNW23pWbdNW23LaXm8uupSc0Sz9XUtLO6D5dwwSa0oJMPJmq4xxzN5+EylQsvvFA++tGPHvb3f/7nfy5nnXWWiDwRaLzxjW+Uz372s3LcccfJBRdcIFdeeeWOaRx33nmnvOlNb5K/+qu/khNPPFFe//rXy6/+6q8ahxWz2Uwmk4lMp9PtECS2oUPdFBYErZHm46F8n+xhut/lffTV1ErpW2k3piY1gZK18j6jJjX79tVlaOykMT4zqe26L65ndRoKK1J2Vpjenwd9Gsg111wj11xzTe9rnvGMZ8gf/dEf9b7mOc95jtx0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AIB0mPIBQAthBYDquHZZiBBaAADggpACgLaga1acd9558oxnPEOOPfZYOemkk+Q1r3mN3H///Ttec++998rLX/5yOf7442XXrl3ylre8RQ4dOrTjNXfeeaeceeaZctxxx8nTn/50ecc73iFzzmoABviuZ8GaFgAA9PO5XrIuBYA+QTsrzj77bLn88svlpJNOkq997Wvy1re+VX76p39aPve5z4mIyOOPPy4vfelL5Xu+53vk5ptvlq9//evy2te+VubzuVx99dUiIjKbzeScc86Rs88+W2655Rb527/9W7nwwgvl+OOPl0svvTTk4QOoBJ0WAADoopMCQGijecQWhT/8wz+U888/Xw4ePChHH320/Omf/qm87GUvk/vuu0/27t0rIiLXXnutXHjhhfLggw/KeDyWD33oQ3LZZZfJP/zDP8jGxoaIiLz73e+Wq6++Wr761a/KyODuYzabyWQykel0KuPxOOj3CCBvLoHFMkILAEDLfLsOCSoAmN6fR3t06Te+8Q35+Mc/LmeccYYcffTRIiLy+c9/Xvbt27cdVIiIvOhFL5KDBw/Kbbfdtv2aM888czuoWLzm/vvvl3vuuWdtrYMHD8psNtvxBwBE/FtOmRoCAGiVbzcFQQUAG8HDire97W1y/PHHy9Oe9jS599575Q/+4A+2v3bgwAHZvXv3jtefeOKJcswxx8iBAwc6X7P478VrVl1xxRUymUy2/5xyyima3xKACrCeBQAAZliXAkAK1mHF5uamjEaj3j+33nrr9ut/+Zd/WW6//Xa5/vrr5cgjj5Sf//mf37E45rppHPP5fMffr75msX3XFJDLLrtMptPp9p/77rvP9tsE0AhCCwAA1iOkAJCS9QKbF110kbz61a/ufc0zn/nM7f+/a9cu2bVrl/zgD/6g/PAP/7Cccsop8oUvfEFOP/102bNnj3zxi1/cse1DDz0kjz322Hb3xJ49ew7roHjwwQdFRA7ruFjY2NjYMW0EAIawCCcAAE9g8UwAObAOKxbhg4tFR8TBgwdFROT000+Xd77znfLAAw/ISSedJCIi119/vWxsbMhpp522/ZrLL79cDh06JMccc8z2a/bu3bsjFAEADfO5+yKchBYAgJKxeCaAnAR7Gshf/dVfyV/91V/JT/zET8iJJ54of//3fy+/+qu/Kg888IDcfffdsrGxIY8//rj86I/+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lDPOOEOe8pSnyHd/93evfQ2/NzD1wQ9+UE499VQ59thj5bTTTpO//Mu/TH1ISOymm26Sl7/85bJ3714ZjUby+7//+zu+Pp/PZXNzU/bu3SvHHXecnHXWWXL33XfveM3BgwflzW9+s+zatUuOP/54Oe+88+SrX/1qxO8CsV1xxRXyYz/2Y3LCCSfI937v98r5558vX/7yl3e8ht8drPOhD31IfuRHfkTG47GMx2M5/fTT5U//9E+3v87vjT7CioacffbZ8j/+x/+QL3/5y/LJT35S/u7v/k5++qd/evvrjz/+uLz0pS+VRx55RG6++Wa59tpr5ZOf/KRceuml26+ZzWZyzjnnyN69e+WWW26Rq6++Wq688kq56qqrUnxLiOBv/uZv5Dvf+Y58+MMflrvvvlve9773yW/+5m/K5Zdfvv0afnewzqFDh+RVr3qVvOENb1j7dX5vYOp3f/d35eKLL5a3v/3tcvvtt8u///f/Xl7ykpfIvffem/rQkNAjjzwiz33uc+UDH/jA2q+/5z3vkauuuko+8IEPyC233CJ79uyRc845Rx5++OHt11x88cVy3XXXybXXXis333yzfPOb35SXvexl8vjjj8f6NhDZjTfeKG9605vkC1/4gtxwww3yz//8z3LuuefKI488sv0afnewzsknnyzvfve75dZbb5Vbb71VfvInf1Je8YpXbAcS/N4EMEez/uAP/mA+Go3mhw4dms/n8/mf/MmfzI844oj51772te3X/M7v/M58Y2NjPp1O5/P5fP7BD35wPplM5o8++uj2a6644or53r1759/5znfifgNI5j3vec/81FNP3f5vfnfQ5yMf+ch8Mpkc9vf83sDUv/t3/27++te/fsffPetZz5r/p//0nxIdEXIjIvPrrrtu+7+/853vzPfs2TN/97vfvf13jz766Hwymcx/8zd/cz6fz+f/9E//ND/66KPn11577fZrvva1r82POOKI+ac//elox460HnzwwbmIzG+88cb5fM7vDuyceOKJ8//23/4bvzeB0FnRqG984xvy8Y9/XM444ww5+uijRUTk85//vOzbt0/27t27/boXvehFcvDgQbntttu2X3PmmWfKxsbGjtfcf//9cs8990T9HpDOdDqVpz71qdv/ze8OXPB7AxOHDh2S2267Tc4999wdf3/uuefK5z73uURHhdx95Stf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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], "source": [ - "#testuniverse.plot(width=(700,700),\n", - "# basis='xy',\n", - "# colors=colormap,\n", - "# origin=(0.,0.,200),\n", - "# color_by='material',\n", - "# pixels=(1000,1000))" + "testuniverse.plot(width=(700,700),\n", + " basis='xy',\n", + " colors=colormap,\n", + " origin=(0.,0.,200),\n", + " color_by='material',\n", + " pixels=(1000,1000))" ] }, { @@ -748,7 +3510,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 21, "id": "6b0f4320", "metadata": {}, "outputs": [], @@ -756,7 +3518,3351 @@ "geo = openmc.Geometry()\n", "geo.root_universe = testuniverse\n", "geo.remove_redundant_surfaces()\n", - "geo.export_to_xml()" + "#geo.export_to_xml()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "48d744d2", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 22, + "id": "524f65b6", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "OrderedDict([(541,\n", + " Cell\n", + " \tID =\t541\n", + " \tName =\tcr_lattice\n", + " \tFill =\t32\n", + " \tRegion =\t(1525 -1526 1521 -1522 1523 -1524)\n", + " \tRotation =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (509,\n", + " Cell\n", + " \tID =\t509\n", + " \tName =\tmain_lattice\n", + " \tFill =\t29\n", + " \tRegion =\t(1525 -1526 ((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)) ~(1521 -1522 1523 -1524))\n", + " \tRotation =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (759,\n", + " Cell\n", + " \tID =\t759\n", + " \tName =\tzone_iib\n", + " \tFill =\t33\n", + " \tRegion =\t(~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)) -1551 1525 -1526)\n", + " \tRotation =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (761,\n", + " Cell\n", + " \tID =\t761\n", + " \tName =\tlower_plenum\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(-1525 1553 -1552)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (760,\n", + " Cell\n", + " \tID =\t760\n", + " \tName =\tannulus\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(1551 -1552 1525 -1526)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (762,\n", + " Cell\n", + " \tID =\t762\n", + " \tName =\tradial_reflector\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(1552 -1554 1555 -1556)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (763,\n", + " Cell\n", + " \tID =\t763\n", + " \tName =\tbottom_axial_reflector\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1552 -1553 1555)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (764,\n", + " Cell\n", + " \tID =\t764\n", + " \tName =\ttop_axial_reflector\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1552 1526 -1556)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (765,\n", + " Cell\n", + " \tID =\t765\n", + " \tName =\tradial_vessel_wall\n", + " \tFill =\tMaterial 3\n", + " \tRegion =\t(1554 -1557 -1559 1558)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (766,\n", + " Cell\n", + " \tID =\t766\n", + " \tName =\tbottom_vessel_wall\n", + " \tFill =\tMaterial 3\n", + " \tRegion =\t(-1554 -1555 1558)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (767,\n", + " Cell\n", + " \tID =\t767\n", + " \tName =\ttop_vessel_wall\n", + " \tFill =\tMaterial 3\n", + " \tRegion =\t(-1554 -1559 1556)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (510,\n", + " Cell\n", + " \tID =\t510\n", + " \tName =\tcontrol_rod\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t-1823\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (511,\n", + " Cell\n", + " \tID =\t511\n", + " \tName =\tcr_fuel_inner\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(1823 -1725)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (512,\n", + " Cell\n", + " \tID =\t512\n", + " \tName =\tcr_moderator\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(1725 1730 -1731 1732 -1733 ~((1735 -1739 -1741) | (1736 -1739 1742) | (1737 1740 -1741) | (1738 1740 1742)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (513,\n", + " Cell\n", + " \tID =\t513\n", + " \tName =\tcr_fuel_outer\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(~(1730 -1731 1732 -1733 ~((1735 -1739 -1741) | (1736 -1739 1742) | (1737 1740 -1741) | (1738 1740 1742))) (1726 -1727 1728 -1729) ~(-1743 1744 -1745 1746 1747 -1748 ~((1749 -1755) | (1750 -1756) | (1751 -1757) | (1752 -1758) | (1753 -1759) | (1754 -1760))) ~(-1761 1762 -1763 1764 1765 -1766 ~((1767 -1773) | (1768 -1774) | (1769 -1775) | (1770 -1776) | (1771 -1777) | (1772 -1778))) ~(-1779 1780 -1781 -1782 1783 1784 ~((1785 -1791) | (1786 -1792) | (1787 -1793) | (1788 -1794) | (1789 -1795) | (1790 -1796))) ~(-1797 1798 -1799 -1800 1801 1802 ~((1803 -1809) | (1804 -1810) | (1805 -1811) | (1806 -1812) | (1807 -1813) | (1808 -1814))) 1815 1816 1817 1818)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (514,\n", + " Cell\n", + " \tID =\t514\n", + " \tName =\tcr_moderator_ul\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1743 1744 -1745 1746 1747 -1748 ~((1749 -1755) | (1750 -1756) | (1751 -1757) | (1752 -1758) | (1753 -1759) | (1754 -1760)) -1729 1733)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (515,\n", + " Cell\n", + " \tID =\t515\n", + " \tName =\tcr_moderator_br\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1761 1762 -1763 1764 1765 -1766 ~((1767 -1773) | (1768 -1774) | (1769 -1775) | (1770 -1776) | (1771 -1777) | (1772 -1778)) 1728 -1732)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (516,\n", + " Cell\n", + " \tID =\t516\n", + " \tName =\tcr_moderator_ru\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1779 1780 -1781 -1782 1783 1784 ~((1785 -1791) | (1786 -1792) | (1787 -1793) | (1788 -1794) | (1789 -1795) | (1790 -1796)) 1726 -1730)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (517,\n", + " Cell\n", + " \tID =\t517\n", + " \tName =\tcr_moderator_lb\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1797 1798 -1799 -1800 1801 1802 ~((1803 -1809) | (1804 -1810) | (1805 -1811) | (1806 -1812) | (1807 -1813) | (1808 -1814)) -1727 1731)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (518,\n", + " Cell\n", + " \tID =\t518\n", + " \tName =\tcr_moderator_ul_fill\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1743 1744 -1745 1746 1747 -1748 ~((1749 -1755) | (1750 -1756) | (1751 -1757) | (1752 -1758) | (1753 -1759) | (1754 -1760)) 1736 -1733 -1739 1742)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (519,\n", + " Cell\n", + " \tID =\t519\n", + " \tName =\tcr_moderator_br_fill\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1761 1762 -1763 1764 1765 -1766 ~((1767 -1773) | (1768 -1774) | (1769 -1775) | (1770 -1776) | (1771 -1777) | (1772 -1778)) 1737 1732 1740 -1741)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (520,\n", + " Cell\n", + " \tID =\t520\n", + " \tName =\tcr_moderator_ru_fill\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1779 1780 -1781 -1782 1783 1784 ~((1785 -1791) | (1786 -1792) | (1787 -1793) | (1788 -1794) | (1789 -1795) | (1790 -1796)) 1735 1730 -1739 -1741)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (521,\n", + " Cell\n", + " \tID =\t521\n", + " \tName =\tcr_moderator_lb_fill\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1797 1798 -1799 -1800 1801 1802 ~((1803 -1809) | (1804 -1810) | (1805 -1811) | (1806 -1812) | (1807 -1813) | (1808 -1814)) 1738 -1731 1740 1742)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (522,\n", + " Cell\n", + " \tID =\t522\n", + " \tName =\tcr_moderator_ul_t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1815 1728 -1732)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (523,\n", + " Cell\n", + " \tID =\t523\n", + " \tName =\tcr_moderator_br_t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1816 -1729 1733)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (524,\n", + " Cell\n", + " \tID =\t524\n", + " \tName =\tcr_moderator_ru_t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1817 1726 -1730)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (525,\n", + " Cell\n", + " \tID =\t525\n", + " \tName =\tcr_moderator_lb_t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1818 -1727 1731)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (526,\n", + " Cell\n", + " \tID =\t526\n", + " \tName =\tcrc_fuel_inner\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t-1725\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (527,\n", + " Cell\n", + " \tID =\t527\n", + " \tName =\tcrc_moderator\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(1725 1730 -1731 1732 -1733 ~((1735 -1739 -1741) | (1736 -1739 1742) | (1737 1740 -1741) | (1738 1740 1742)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (528,\n", + " Cell\n", + " \tID =\t528\n", + " \tName =\tcrc_fuel_outer\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(~(1730 -1731 1732 -1733 ~((1735 -1739 -1741) | (1736 -1739 1742) | (1737 1740 -1741) | (1738 1740 1742))) (1726 -1727 1728 -1729) ~(-1743 1744 -1745 1746 1747 -1748 ~((1749 -1755) | (1750 -1756) | (1751 -1757) | (1752 -1758) | (1753 -1759) | (1754 -1760))) ~(-1761 1762 -1763 1764 1765 -1766 ~((1767 -1773) | (1768 -1774) | (1769 -1775) | (1770 -1776) | (1771 -1777) | (1772 -1778))) ~(-1779 1780 -1781 -1782 1783 1784 ~((1785 -1791) | (1786 -1792) | (1787 -1793) | (1788 -1794) | (1789 -1795) | (1790 -1796))) ~(-1797 1798 -1799 -1800 1801 1802 ~((1803 -1809) | (1804 -1810) | (1805 -1811) | (1806 -1812) | (1807 -1813) | (1808 -1814))) 1815 1816 1817 1818)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (529,\n", + " Cell\n", + " \tID =\t529\n", + " \tName =\tcrc_moderator_ul\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1743 1744 -1745 1746 1747 -1748 ~((1749 -1755) | (1750 -1756) | (1751 -1757) | (1752 -1758) | (1753 -1759) | (1754 -1760)) -1729 1733)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (530,\n", + " Cell\n", + " \tID =\t530\n", + " \tName =\tcrc_moderator_br\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1761 1762 -1763 1764 1765 -1766 ~((1767 -1773) | (1768 -1774) | (1769 -1775) | (1770 -1776) | (1771 -1777) | (1772 -1778)) 1728 -1732)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (531,\n", + " Cell\n", + " \tID =\t531\n", + " \tName =\tcrc_moderator_ru\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1779 1780 -1781 -1782 1783 1784 ~((1785 -1791) | (1786 -1792) | (1787 -1793) | (1788 -1794) | (1789 -1795) | (1790 -1796)) 1726 -1730)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (532,\n", + " Cell\n", + " \tID =\t532\n", + " \tName =\tcrc_moderator_lb\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1797 1798 -1799 -1800 1801 1802 ~((1803 -1809) | (1804 -1810) | (1805 -1811) | (1806 -1812) | (1807 -1813) | (1808 -1814)) -1727 1731)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (533,\n", + " Cell\n", + " \tID =\t533\n", + " \tName =\tcrc_moderator_ul_fill\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1743 1744 -1745 1746 1747 -1748 ~((1749 -1755) | (1750 -1756) | (1751 -1757) | (1752 -1758) | (1753 -1759) | (1754 -1760)) 1736 -1733 -1739 1742)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (534,\n", + " Cell\n", + " \tID =\t534\n", + " \tName =\tcrc_moderator_br_fill\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1761 1762 -1763 1764 1765 -1766 ~((1767 -1773) | (1768 -1774) | (1769 -1775) | (1770 -1776) | (1771 -1777) | (1772 -1778)) 1737 1732 1740 -1741)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (535,\n", + " Cell\n", + " \tID =\t535\n", + " \tName =\tcrc_moderator_ru_fill\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1779 1780 -1781 -1782 1783 1784 ~((1785 -1791) | (1786 -1792) | (1787 -1793) | (1788 -1794) | (1789 -1795) | (1790 -1796)) 1735 1730 -1739 -1741)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (536,\n", + " Cell\n", + " \tID =\t536\n", + " \tName =\tcrc_moderator_lb_fill\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1797 1798 -1799 -1800 1801 1802 ~((1803 -1809) | (1804 -1810) | (1805 -1811) | (1806 -1812) | (1807 -1813) | (1808 -1814)) 1738 -1731 1740 1742)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (537,\n", + " Cell\n", + " \tID =\t537\n", + " \tName =\tcrc_moderator_ul_t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1815 1728 -1732)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (538,\n", + " Cell\n", + " \tID =\t538\n", + " \tName =\tcrc_moderator_br_t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1816 -1729 1733)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (539,\n", + " Cell\n", + " \tID =\t539\n", + " \tName =\tcrc_moderator_ru_t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1817 1726 -1730)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (540,\n", + " Cell\n", + " \tID =\t540\n", + " \tName =\tcrc_moderator_lb_t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1818 -1727 1731)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (500,\n", + " Cell\n", + " \tID =\t500\n", + " \tName =\tlattice_void\n", + " \tFill =\tNone\n", + " \tRegion =\t(1685 -1686 1687 -1688)\n", + " \tRotation =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (505,\n", + " Cell\n", + " \tID =\t505\n", + " \tName =\t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1690 1685 -1686 1687 -1688)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (506,\n", + " Cell\n", + " \tID =\t506\n", + " \tName =\t\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(1690 1685 -1686 1687 -1688)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (463,\n", + " Cell\n", + " \tID =\t463\n", + " \tName =\tiia_fuel_inner_main\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(-1631 -1627)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (464,\n", + " Cell\n", + " \tID =\t464\n", + " \tName =\tiia_moderator_main\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(1631 1564 -1565 1566 -1567 ~((1569 -1573 -1575) | (1570 -1573 1576) | (1571 1574 -1575) | (1572 1574 1576)) -1627)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (465,\n", + " Cell\n", + " \tID =\t465\n", + " \tName =\tiia_fuel_outer_main\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(~(1564 -1565 1566 -1567 ~((1569 -1573 -1575) | (1570 -1573 1576) | (1571 1574 -1575) | (1572 1574 1576))) (1685 -1686 1687 -1688) 1577 1578 1579 1580 1581 1582 1583 1584 -1627)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (466,\n", + " Cell\n", + " \tID =\t466\n", + " \tName =\tiia_moderator_main_ul\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1577 -1688 1567 -1627)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (467,\n", + " Cell\n", + " \tID =\t467\n", + " \tName =\tiia_moderator_main_br\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1578 1687 -1566 -1627)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (468,\n", + " Cell\n", + " \tID =\t468\n", + " \tName =\tiia_moderator_main_ru\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1579 1685 -1564 -1627)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (469,\n", + " Cell\n", + " \tID =\t469\n", + " \tName =\tiia_moderator_main_lb\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1580 -1686 1565 -1627)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (470,\n", + " Cell\n", + " \tID =\t470\n", + " \tName =\tiia_moderator_main_ul_fill\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1577 1570 -1567 -1573 1576 -1627)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (471,\n", + " Cell\n", + " \tID =\t471\n", + " \tName =\tiia_moderator_main_br_fill\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1578 1571 1566 1574 -1575 -1627)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (472,\n", + " Cell\n", + " \tID =\t472\n", + " \tName =\tiia_moderator_main_ru_fill\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1579 1569 1564 -1573 -1575 -1627)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (473,\n", + " Cell\n", + " \tID =\t473\n", + " \tName =\tiia_moderator_main_lb_fill\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1580 1572 -1565 1574 1576 -1627)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (474,\n", + " Cell\n", + " \tID =\t474\n", + " \tName =\tiia_moderator_main_ul_t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1581 1687 -1566 -1627)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (475,\n", + " Cell\n", + " \tID =\t475\n", + " \tName =\tiia_moderator_main_br_t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1582 -1688 1567 -1627)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (476,\n", + " Cell\n", + " \tID =\t476\n", + " \tName =\tiia_moderator_main_ru_t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1583 1685 -1564 -1627)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (477,\n", + " Cell\n", + " \tID =\t477\n", + " \tName =\tiia_moderator_main_lb_t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1584 -1686 1565 -1627)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (478,\n", + " Cell\n", + " \tID =\t478\n", + " \tName =\tiia_fuel_inner_2\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(-1632 1627 -1628)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (479,\n", + " Cell\n", + " \tID =\t479\n", + " \tName =\tiia_moderator_2\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(1632 1564 -1565 1566 -1567 ~((1569 -1573 -1575) | (1570 -1573 1576) | (1571 1574 -1575) | (1572 1574 1576)) 1627 -1628)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (480,\n", + " Cell\n", + " \tID =\t480\n", + " \tName =\tiia_fuel_outer_2\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(~(1564 -1565 1566 -1567 ~((1569 -1573 -1575) | (1570 -1573 1576) | (1571 1574 -1575) | (1572 1574 1576))) (1685 -1686 1687 -1688) 1577 1578 1579 1580 1581 1582 1583 1584 1627 -1628)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (481,\n", + " Cell\n", + " \tID =\t481\n", + " \tName =\tiia_moderator_2_ul\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1577 -1688 1567 1627 -1628)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (482,\n", + " Cell\n", + " \tID =\t482\n", + " \tName =\tiia_moderator_2_br\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1578 1687 -1566 1627 -1628)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (483,\n", + " Cell\n", + " \tID =\t483\n", + " \tName =\tiia_moderator_2_ru\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1579 1685 -1564 1627 -1628)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (484,\n", + " Cell\n", + " \tID =\t484\n", + " \tName =\tiia_moderator_2_lb\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1580 -1686 1565 1627 -1628)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (485,\n", + " Cell\n", + " \tID =\t485\n", + " \tName =\tiia_moderator_2_ul_fill\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1577 1570 -1567 -1573 1576 1627 -1628)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (486,\n", + " Cell\n", + " \tID =\t486\n", + " \tName =\tiia_moderator_2_br_fill\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1578 1571 1566 1574 -1575 1627 -1628)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (487,\n", + " Cell\n", + " \tID =\t487\n", + " \tName =\tiia_moderator_2_ru_fill\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1579 1569 1564 -1573 -1575 1627 -1628)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (488,\n", + " Cell\n", + " \tID =\t488\n", + " \tName =\tiia_moderator_2_lb_fill\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1580 1572 -1565 1574 1576 1627 -1628)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (489,\n", + " Cell\n", + " \tID =\t489\n", + " \tName =\tiia_moderator_2_ul_t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1581 1687 -1566 1627 -1628)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (490,\n", + " Cell\n", + " \tID =\t490\n", + " \tName =\tiia_moderator_2_br_t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1582 -1688 1567 1627 -1628)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (491,\n", + " Cell\n", + " \tID =\t491\n", + " \tName =\tiia_moderator_2_ru_t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1583 1685 -1564 1627 -1628)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (492,\n", + " Cell\n", + " \tID =\t492\n", + " \tName =\tiia_moderator_2_lb_t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1584 -1686 1565 1627 -1628)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (493,\n", + " Cell\n", + " \tID =\t493\n", + " \tName =\tiia_fuel_inner_3\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(-1632 1628 -1629)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (494,\n", + " Cell\n", + " \tID =\t494\n", + " \tName =\tiia_moderator_3\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(1632 -1633 1628 -1629)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (495,\n", + " Cell\n", + " \tID =\t495\n", + " \tName =\tiia_fuel_outer_3\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(1633 1685 -1686 1687 -1688 1628 -1629)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (496,\n", + " Cell\n", + " \tID =\t496\n", + " \tName =\tiia_moderator_4\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1634 1629 -1630)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (497,\n", + " Cell\n", + " \tID =\t497\n", + " \tName =\tiia_fuel_outer_4\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(1634 1685 -1686 1687 -1688 1629 -1630)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (498,\n", + " Cell\n", + " \tID =\t498\n", + " \tName =\tiia_moderator_5\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1585 1630)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (499,\n", + " Cell\n", + " \tID =\t499\n", + " \tName =\tiia_fuel_outer_5\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(1585 1685 -1686 1687 -1688 1630)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (503,\n", + " Cell\n", + " \tID =\t503\n", + " \tName =\t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1689 1685 -1686 1687 -1688)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (504,\n", + " Cell\n", + " \tID =\t504\n", + " \tName =\t\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(1689 1685 -1686 1687 -1688)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (436,\n", + " Cell\n", + " \tID =\t436\n", + " \tName =\tia_fuel_inner_1\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(-1591 -1586)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (437,\n", + " Cell\n", + " \tID =\t437\n", + " \tName =\tia_moderator_1\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(1591 -1590 -1586)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (438,\n", + " Cell\n", + " \tID =\t438\n", + " \tName =\tia_fuel_outer_1\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(1590 1685 -1686 1687 -1688 -1586)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (439,\n", + " Cell\n", + " \tID =\t439\n", + " \tName =\tia_fuel_inner_main\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(-1591 1586 -1587)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (440,\n", + " Cell\n", + " \tID =\t440\n", + " \tName =\tia_moderator_main\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(1591 1564 -1565 1566 -1567 ~((1569 -1573 -1575) | (1570 -1573 1576) | (1571 1574 -1575) | (1572 1574 1576)) 1586 -1587)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (441,\n", + " Cell\n", + " \tID =\t441\n", + " \tName =\tia_fuel_outer_main\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(~(1564 -1565 1566 -1567 ~((1569 -1573 -1575) | (1570 -1573 1576) | (1571 1574 -1575) | (1572 1574 1576))) (1685 -1686 1687 -1688) 1577 1578 1579 1580 1581 1582 1583 1584 1586 -1587)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (442,\n", + " Cell\n", + " \tID =\t442\n", + " \tName =\tia_moderator_main_ul\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1577 -1688 1567 1586 -1587)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (443,\n", + " Cell\n", + " \tID =\t443\n", + " \tName =\tia_moderator_main_br\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1578 1687 -1566 1586 -1587)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (444,\n", + " Cell\n", + " \tID =\t444\n", + " \tName =\tia_moderator_main_ru\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1579 1685 -1564 1586 -1587)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (445,\n", + " Cell\n", + " \tID =\t445\n", + " \tName =\tia_moderator_main_lb\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1580 -1686 1565 1586 -1587)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (446,\n", + " Cell\n", + " \tID =\t446\n", + " \tName =\tia_moderator_main_ul_fill\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1577 1570 -1567 -1573 1576 1586 -1587)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (447,\n", + " Cell\n", + " \tID =\t447\n", + " \tName =\tia_moderator_main_br_fill\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1578 1571 1566 1574 -1575 1586 -1587)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (448,\n", + " Cell\n", + " \tID =\t448\n", + " \tName =\tia_moderator_main_ru_fill\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1579 1569 1564 -1573 -1575 1586 -1587)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (449,\n", + " Cell\n", + " \tID =\t449\n", + " \tName =\tia_moderator_main_lb_fill\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1580 1572 -1565 1574 1576 1586 -1587)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (450,\n", + " Cell\n", + " \tID =\t450\n", + " \tName =\tia_moderator_main_ul_t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1581 1687 -1566 1586 -1587)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (451,\n", + " Cell\n", + " \tID =\t451\n", + " \tName =\tia_moderator_main_br_t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1582 -1688 1567 1586 -1587)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (452,\n", + " Cell\n", + " \tID =\t452\n", + " \tName =\tia_moderator_main_ru_t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1583 1685 -1564 1586 -1587)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (453,\n", + " Cell\n", + " \tID =\t453\n", + " \tName =\tia_moderator_main_lb_t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1584 -1686 1565 1586 -1587)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (454,\n", + " Cell\n", + " \tID =\t454\n", + " \tName =\tia_fuel_inner_2\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(-1591 1587 -1588)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (455,\n", + " Cell\n", + " \tID =\t455\n", + " \tName =\tia_moderator_2\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(1591 -1590 1587 -1588)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (456,\n", + " Cell\n", + " \tID =\t456\n", + " \tName =\tia_fuel_outer_2\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(1590 1685 -1686 1687 -1688 1587 -1588)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (457,\n", + " Cell\n", + " \tID =\t457\n", + " \tName =\tia_fuel_inner_3\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(-1591 1588 -1589)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (458,\n", + " Cell\n", + " \tID =\t458\n", + " \tName =\tia_moderator_3\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(1591 -1616 1588 -1589)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (459,\n", + " Cell\n", + " \tID =\t459\n", + " \tName =\tia_fuel_outer_3\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(1616 1685 -1686 1687 -1688 1588 -1589)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (460,\n", + " Cell\n", + " \tID =\t460\n", + " \tName =\tia_hast\n", + " \tFill =\tMaterial 3\n", + " \tRegion =\t(-1591 1589)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (461,\n", + " Cell\n", + " \tID =\t461\n", + " \tName =\tia_moderator_4\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(1591 -1585 1589)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (462,\n", + " Cell\n", + " \tID =\t462\n", + " \tName =\tia_fuel_outer_4\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(1585 1685 -1686 1687 -1688 1589)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (501,\n", + " Cell\n", + " \tID =\t501\n", + " \tName =\t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1692 1685 -1686 1687 -1688)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (502,\n", + " Cell\n", + " \tID =\t502\n", + " \tName =\t\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(1692 1685 -1686 1687 -1688)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (507,\n", + " Cell\n", + " \tID =\t507\n", + " \tName =\t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1691 1685 -1686 1687 -1688)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (508,\n", + " Cell\n", + " \tID =\t508\n", + " \tName =\t\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(1691 1685 -1686 1687 -1688)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (542,\n", + " Cell\n", + " \tID =\t542\n", + " \tName =\tiib_large_element_0.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1825 -1827 1828 1829)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (543,\n", + " Cell\n", + " \tID =\t543\n", + " \tName =\tiib_large_element_fuel_hole_0.0\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t-1829\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (544,\n", + " Cell\n", + " \tID =\t544\n", + " \tName =\tiib_small_element_0.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1832 1833 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (545,\n", + " Cell\n", + " \tID =\t545\n", + " \tName =\tiib_small_element_2.924\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1836 1837 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (546,\n", + " Cell\n", + " \tID =\t546\n", + " \tName =\tiib_small_element_4.558999999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1840 1841 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (547,\n", + " Cell\n", + " \tID =\t547\n", + " \tName =\tiib_small_element_6.193999999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1844 1845 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (548,\n", + " Cell\n", + " \tID =\t548\n", + " \tName =\tiib_small_element_7.828999999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1848 1849 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (549,\n", + " Cell\n", + " \tID =\t549\n", + " \tName =\tiib_small_element_9.463999999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1852 1853 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (550,\n", + " Cell\n", + " \tID =\t550\n", + " \tName =\tiib_small_element_11.099\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1856 1857 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (551,\n", + " Cell\n", + " \tID =\t551\n", + " \tName =\tiib_small_element_12.734000000000002\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1860 1861 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (552,\n", + " Cell\n", + " \tID =\t552\n", + " \tName =\tiib_small_element_14.369000000000003\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1864 1865 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (553,\n", + " Cell\n", + " \tID =\t553\n", + " \tName =\tiib_small_element_16.004000000000005\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1868 1869 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (554,\n", + " Cell\n", + " \tID =\t554\n", + " \tName =\tiib_small_element_17.639000000000006\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1872 1873 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (555,\n", + " Cell\n", + " \tID =\t555\n", + " \tName =\tiib_small_element_19.274000000000008\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1876 1877 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (556,\n", + " Cell\n", + " \tID =\t556\n", + " \tName =\tiib_small_element_20.90900000000001\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1880 1881 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (557,\n", + " Cell\n", + " \tID =\t557\n", + " \tName =\tiib_small_element_22.54400000000001\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1884 1885 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (558,\n", + " Cell\n", + " \tID =\t558\n", + " \tName =\tiib_small_element_24.179000000000013\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1888 1889 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (559,\n", + " Cell\n", + " \tID =\t559\n", + " \tName =\tiib_small_element_25.814000000000014\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1892 1893 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (560,\n", + " Cell\n", + " \tID =\t560\n", + " \tName =\tiib_small_element_27.449000000000016\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1896 1897 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (561,\n", + " Cell\n", + " \tID =\t561\n", + " \tName =\tiib_small_element_29.084000000000017\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1900 1901 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (562,\n", + " Cell\n", + " \tID =\t562\n", + " \tName =\tiib_small_element_30.71900000000002\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1904 1905 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (563,\n", + " Cell\n", + " \tID =\t563\n", + " \tName =\tiib_small_element_32.35400000000002\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1908 1909 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (564,\n", + " Cell\n", + " \tID =\t564\n", + " \tName =\tiib_small_element_33.98900000000002\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1912 1913 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (565,\n", + " Cell\n", + " \tID =\t565\n", + " \tName =\tiib_small_element_35.62400000000002\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1916 1917 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (566,\n", + " Cell\n", + " \tID =\t566\n", + " \tName =\tiib_small_element_37.259000000000015\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1920 1921 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (567,\n", + " Cell\n", + " \tID =\t567\n", + " \tName =\tiib_small_element_38.89400000000001\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1924 1925 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (568,\n", + " Cell\n", + " \tID =\t568\n", + " \tName =\tiib_small_element_40.52900000000001\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1928 1929 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (569,\n", + " Cell\n", + " \tID =\t569\n", + " \tName =\tiib_large_element_45.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1930 -1932 1933 1934)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (570,\n", + " Cell\n", + " \tID =\t570\n", + " \tName =\tiib_large_element_fuel_hole_45.0\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t-1934\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (571,\n", + " Cell\n", + " \tID =\t571\n", + " \tName =\tiib_small_element_45.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1937 1938 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (572,\n", + " Cell\n", + " \tID =\t572\n", + " \tName =\tiib_small_element_47.924\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1941 1942 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (573,\n", + " Cell\n", + " \tID =\t573\n", + " \tName =\tiib_small_element_49.559\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1945 1946 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (574,\n", + " Cell\n", + " \tID =\t574\n", + " \tName =\tiib_small_element_51.193999999999996\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1949 1950 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (575,\n", + " Cell\n", + " \tID =\t575\n", + " \tName =\tiib_small_element_52.82899999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1953 1954 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (576,\n", + " Cell\n", + " \tID =\t576\n", + " \tName =\tiib_small_element_54.46399999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1957 1958 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (577,\n", + " Cell\n", + " \tID =\t577\n", + " \tName =\tiib_small_element_56.09899999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1961 1962 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (578,\n", + " Cell\n", + " \tID =\t578\n", + " \tName =\tiib_small_element_57.73399999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1965 1966 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (579,\n", + " Cell\n", + " \tID =\t579\n", + " \tName =\tiib_small_element_59.368999999999986\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1969 1970 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (580,\n", + " Cell\n", + " \tID =\t580\n", + " \tName =\tiib_small_element_61.003999999999984\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1973 1974 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (581,\n", + " Cell\n", + " \tID =\t581\n", + " \tName =\tiib_small_element_62.63899999999998\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1977 1978 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (582,\n", + " Cell\n", + " \tID =\t582\n", + " \tName =\tiib_small_element_64.27399999999997\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1981 1982 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (583,\n", + " Cell\n", + " \tID =\t583\n", + " \tName =\tiib_small_element_65.90899999999996\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1985 1986 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (584,\n", + " Cell\n", + " \tID =\t584\n", + " \tName =\tiib_small_element_67.54399999999995\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1989 1990 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (585,\n", + " Cell\n", + " \tID =\t585\n", + " \tName =\tiib_small_element_69.17899999999995\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1993 1994 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (586,\n", + " Cell\n", + " \tID =\t586\n", + " \tName =\tiib_small_element_70.81399999999994\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -1997 1998 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (587,\n", + " Cell\n", + " \tID =\t587\n", + " \tName =\tiib_small_element_72.44899999999993\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2001 2002 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (588,\n", + " Cell\n", + " \tID =\t588\n", + " \tName =\tiib_small_element_74.08399999999992\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2005 2006 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (589,\n", + " Cell\n", + " \tID =\t589\n", + " \tName =\tiib_small_element_75.71899999999991\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2009 2010 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (590,\n", + " Cell\n", + " \tID =\t590\n", + " \tName =\tiib_small_element_77.3539999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2013 2014 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (591,\n", + " Cell\n", + " \tID =\t591\n", + " \tName =\tiib_small_element_78.98899999999989\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2017 2018 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (592,\n", + " Cell\n", + " \tID =\t592\n", + " \tName =\tiib_small_element_80.62399999999988\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2021 2022 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (593,\n", + " Cell\n", + " \tID =\t593\n", + " \tName =\tiib_small_element_82.25899999999987\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2025 2026 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (594,\n", + " Cell\n", + " \tID =\t594\n", + " \tName =\tiib_small_element_83.89399999999986\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2029 2030 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (595,\n", + " Cell\n", + " \tID =\t595\n", + " \tName =\tiib_small_element_85.52899999999985\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2033 2034 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (596,\n", + " Cell\n", + " \tID =\t596\n", + " \tName =\tiib_large_element_90.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1825 -2037 2038 2039)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (597,\n", + " Cell\n", + " \tID =\t597\n", + " \tName =\tiib_large_element_fuel_hole_90.0\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t-2039\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (598,\n", + " Cell\n", + " \tID =\t598\n", + " \tName =\tiib_small_element_90.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2042 2043 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (599,\n", + " Cell\n", + " \tID =\t599\n", + " \tName =\tiib_small_element_92.92399999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2046 2047 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (600,\n", + " Cell\n", + " \tID =\t600\n", + " \tName =\tiib_small_element_94.55899999999998\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2050 2051 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (601,\n", + " Cell\n", + " \tID =\t601\n", + " \tName =\tiib_small_element_96.19399999999997\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2054 2055 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (602,\n", + " Cell\n", + " \tID =\t602\n", + " \tName =\tiib_small_element_97.82899999999997\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2058 2059 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (603,\n", + " Cell\n", + " \tID =\t603\n", + " \tName =\tiib_small_element_99.46399999999996\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2062 2063 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (604,\n", + " Cell\n", + " \tID =\t604\n", + " \tName =\tiib_small_element_101.09899999999995\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2066 2067 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (605,\n", + " Cell\n", + " \tID =\t605\n", + " \tName =\tiib_small_element_102.73399999999994\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2070 2071 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (606,\n", + " Cell\n", + " \tID =\t606\n", + " \tName =\tiib_small_element_104.36899999999993\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2074 2075 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (607,\n", + " Cell\n", + " \tID =\t607\n", + " \tName =\tiib_small_element_106.00399999999992\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2078 2079 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (608,\n", + " Cell\n", + " \tID =\t608\n", + " \tName =\tiib_small_element_107.63899999999991\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2082 2083 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (609,\n", + " Cell\n", + " \tID =\t609\n", + " \tName =\tiib_small_element_109.2739999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2086 2087 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (610,\n", + " Cell\n", + " \tID =\t610\n", + " \tName =\tiib_small_element_110.90899999999989\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2090 2091 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (611,\n", + " Cell\n", + " \tID =\t611\n", + " \tName =\tiib_small_element_112.54399999999988\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2094 2095 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (612,\n", + " Cell\n", + " \tID =\t612\n", + " \tName =\tiib_small_element_114.17899999999987\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2098 2099 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (613,\n", + " Cell\n", + " \tID =\t613\n", + " \tName =\tiib_small_element_115.81399999999987\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2102 2103 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (614,\n", + " Cell\n", + " \tID =\t614\n", + " \tName =\tiib_small_element_117.44899999999986\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2106 2107 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (615,\n", + " Cell\n", + " \tID =\t615\n", + " \tName =\tiib_small_element_119.08399999999985\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2110 2111 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (616,\n", + " Cell\n", + " \tID =\t616\n", + " \tName =\tiib_small_element_120.71899999999984\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2114 2115 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (617,\n", + " Cell\n", + " \tID =\t617\n", + " \tName =\tiib_small_element_122.35399999999983\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2118 2119 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (618,\n", + " Cell\n", + " \tID =\t618\n", + " \tName =\tiib_small_element_123.98899999999982\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2122 2123 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (619,\n", + " Cell\n", + " \tID =\t619\n", + " \tName =\tiib_small_element_125.62399999999981\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2126 2127 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (620,\n", + " Cell\n", + " \tID =\t620\n", + " \tName =\tiib_small_element_127.2589999999998\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2130 2131 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (621,\n", + " Cell\n", + " \tID =\t621\n", + " \tName =\tiib_small_element_128.89399999999983\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2134 2135 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (622,\n", + " Cell\n", + " \tID =\t622\n", + " \tName =\tiib_small_element_130.52899999999985\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2138 2139 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (623,\n", + " Cell\n", + " \tID =\t623\n", + " \tName =\tiib_large_element_135.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1930 -2142 2143 2144)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (624,\n", + " Cell\n", + " \tID =\t624\n", + " \tName =\tiib_large_element_fuel_hole_135.0\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t-2144\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (625,\n", + " Cell\n", + " \tID =\t625\n", + " \tName =\tiib_small_element_135.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2147 2148 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (626,\n", + " Cell\n", + " \tID =\t626\n", + " \tName =\tiib_small_element_137.92400000000004\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2151 2152 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (627,\n", + " Cell\n", + " \tID =\t627\n", + " \tName =\tiib_small_element_139.55900000000005\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2155 2156 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (628,\n", + " Cell\n", + " \tID =\t628\n", + " \tName =\tiib_small_element_141.19400000000007\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2159 2160 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (629,\n", + " Cell\n", + " \tID =\t629\n", + " \tName =\tiib_small_element_142.8290000000001\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2163 2164 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (630,\n", + " Cell\n", + " \tID =\t630\n", + " \tName =\tiib_small_element_144.4640000000001\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2167 2168 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (631,\n", + " Cell\n", + " \tID =\t631\n", + " \tName =\tiib_small_element_146.09900000000013\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2171 2172 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (632,\n", + " Cell\n", + " \tID =\t632\n", + " \tName =\tiib_small_element_147.73400000000015\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2175 2176 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (633,\n", + " Cell\n", + " \tID =\t633\n", + " \tName =\tiib_small_element_149.36900000000017\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2179 2180 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (634,\n", + " Cell\n", + " \tID =\t634\n", + " \tName =\tiib_small_element_151.0040000000002\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2183 2184 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (635,\n", + " Cell\n", + " \tID =\t635\n", + " \tName =\tiib_small_element_152.6390000000002\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2187 2188 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (636,\n", + " Cell\n", + " \tID =\t636\n", + " \tName =\tiib_small_element_154.27400000000023\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2191 2192 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (637,\n", + " Cell\n", + " \tID =\t637\n", + " \tName =\tiib_small_element_155.90900000000025\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2195 2196 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (638,\n", + " Cell\n", + " \tID =\t638\n", + " \tName =\tiib_small_element_157.54400000000027\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2199 2200 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (639,\n", + " Cell\n", + " \tID =\t639\n", + " \tName =\tiib_small_element_159.1790000000003\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2203 2204 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (640,\n", + " Cell\n", + " \tID =\t640\n", + " \tName =\tiib_small_element_160.8140000000003\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2207 2208 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (641,\n", + " Cell\n", + " \tID =\t641\n", + " \tName =\tiib_small_element_162.44900000000032\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2211 2212 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (642,\n", + " Cell\n", + " \tID =\t642\n", + " \tName =\tiib_small_element_164.08400000000034\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2215 2216 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (643,\n", + " Cell\n", + " \tID =\t643\n", + " \tName =\tiib_small_element_165.71900000000036\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2219 2220 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (644,\n", + " Cell\n", + " \tID =\t644\n", + " \tName =\tiib_small_element_167.35400000000038\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2223 2224 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (645,\n", + " Cell\n", + " \tID =\t645\n", + " \tName =\tiib_small_element_168.9890000000004\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2227 2228 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (646,\n", + " Cell\n", + " \tID =\t646\n", + " \tName =\tiib_small_element_170.62400000000042\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2231 2232 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (647,\n", + " Cell\n", + " \tID =\t647\n", + " \tName =\tiib_small_element_172.25900000000044\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2235 2236 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (648,\n", + " Cell\n", + " \tID =\t648\n", + " \tName =\tiib_small_element_173.89400000000046\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2239 2240 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (649,\n", + " Cell\n", + " \tID =\t649\n", + " \tName =\tiib_small_element_175.52900000000048\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2243 2244 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (650,\n", + " Cell\n", + " \tID =\t650\n", + " \tName =\tiib_large_element_180.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1825 -2247 2248 2249)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (651,\n", + " Cell\n", + " \tID =\t651\n", + " \tName =\tiib_large_element_fuel_hole_180.0\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t-2249\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (652,\n", + " Cell\n", + " \tID =\t652\n", + " \tName =\tiib_small_element_180.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2252 2253 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (653,\n", + " Cell\n", + " \tID =\t653\n", + " \tName =\tiib_small_element_182.92400000000004\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2256 2257 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (654,\n", + " Cell\n", + " \tID =\t654\n", + " \tName =\tiib_small_element_184.55900000000005\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2260 2261 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (655,\n", + " Cell\n", + " \tID =\t655\n", + " \tName =\tiib_small_element_186.19400000000007\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2264 2265 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (656,\n", + " Cell\n", + " \tID =\t656\n", + " \tName =\tiib_small_element_187.8290000000001\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2268 2269 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (657,\n", + " Cell\n", + " \tID =\t657\n", + " \tName =\tiib_small_element_189.4640000000001\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2272 2273 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (658,\n", + " Cell\n", + " \tID =\t658\n", + " \tName =\tiib_small_element_191.09900000000013\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2276 2277 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (659,\n", + " Cell\n", + " \tID =\t659\n", + " \tName =\tiib_small_element_192.73400000000015\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2280 2281 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (660,\n", + " Cell\n", + " \tID =\t660\n", + " \tName =\tiib_small_element_194.36900000000017\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2284 2285 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (661,\n", + " Cell\n", + " \tID =\t661\n", + " \tName =\tiib_small_element_196.0040000000002\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2288 2289 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (662,\n", + " Cell\n", + " \tID =\t662\n", + " \tName =\tiib_small_element_197.6390000000002\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2292 2293 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (663,\n", + " Cell\n", + " \tID =\t663\n", + " \tName =\tiib_small_element_199.27400000000023\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2296 2297 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (664,\n", + " Cell\n", + " \tID =\t664\n", + " \tName =\tiib_small_element_200.90900000000025\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2300 2301 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (665,\n", + " Cell\n", + " \tID =\t665\n", + " \tName =\tiib_small_element_202.54400000000027\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2304 2305 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (666,\n", + " Cell\n", + " \tID =\t666\n", + " \tName =\tiib_small_element_204.1790000000003\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2308 2309 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (667,\n", + " Cell\n", + " \tID =\t667\n", + " \tName =\tiib_small_element_205.8140000000003\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2312 2313 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (668,\n", + " Cell\n", + " \tID =\t668\n", + " \tName =\tiib_small_element_207.44900000000032\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2316 2317 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (669,\n", + " Cell\n", + " \tID =\t669\n", + " \tName =\tiib_small_element_209.08400000000034\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2320 2321 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (670,\n", + " Cell\n", + " \tID =\t670\n", + " \tName =\tiib_small_element_210.71900000000036\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2324 2325 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (671,\n", + " Cell\n", + " \tID =\t671\n", + " \tName =\tiib_small_element_212.35400000000038\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2328 2329 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (672,\n", + " Cell\n", + " \tID =\t672\n", + " \tName =\tiib_small_element_213.9890000000004\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2332 2333 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (673,\n", + " Cell\n", + " \tID =\t673\n", + " \tName =\tiib_small_element_215.62400000000042\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2336 2337 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (674,\n", + " Cell\n", + " \tID =\t674\n", + " \tName =\tiib_small_element_217.25900000000044\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2340 2341 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (675,\n", + " Cell\n", + " \tID =\t675\n", + " \tName =\tiib_small_element_218.89400000000046\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2344 2345 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (676,\n", + " Cell\n", + " \tID =\t676\n", + " \tName =\tiib_small_element_220.52900000000048\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2348 2349 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (677,\n", + " Cell\n", + " \tID =\t677\n", + " \tName =\tiib_large_element_225.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1930 -2352 2353 2354)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (678,\n", + " Cell\n", + " \tID =\t678\n", + " \tName =\tiib_large_element_fuel_hole_225.0\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t-2354\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (679,\n", + " Cell\n", + " \tID =\t679\n", + " \tName =\tiib_small_element_225.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2357 2358 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (680,\n", + " Cell\n", + " \tID =\t680\n", + " \tName =\tiib_small_element_227.92400000000004\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2361 2362 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (681,\n", + " Cell\n", + " \tID =\t681\n", + " \tName =\tiib_small_element_229.55900000000005\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2365 2366 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (682,\n", + " Cell\n", + " \tID =\t682\n", + " \tName =\tiib_small_element_231.19400000000007\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2369 2370 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (683,\n", + " Cell\n", + " \tID =\t683\n", + " \tName =\tiib_small_element_232.8290000000001\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2373 2374 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (684,\n", + " Cell\n", + " \tID =\t684\n", + " \tName =\tiib_small_element_234.4640000000001\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2377 2378 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (685,\n", + " Cell\n", + " \tID =\t685\n", + " \tName =\tiib_small_element_236.09900000000013\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2381 2382 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (686,\n", + " Cell\n", + " \tID =\t686\n", + " \tName =\tiib_small_element_237.73400000000015\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2385 2386 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (687,\n", + " Cell\n", + " \tID =\t687\n", + " \tName =\tiib_small_element_239.36900000000017\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2389 2390 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (688,\n", + " Cell\n", + " \tID =\t688\n", + " \tName =\tiib_small_element_241.0040000000002\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2393 2394 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (689,\n", + " Cell\n", + " \tID =\t689\n", + " \tName =\tiib_small_element_242.6390000000002\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2397 2398 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (690,\n", + " Cell\n", + " \tID =\t690\n", + " \tName =\tiib_small_element_244.27400000000023\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2401 2402 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (691,\n", + " Cell\n", + " \tID =\t691\n", + " \tName =\tiib_small_element_245.90900000000025\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2405 2406 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (692,\n", + " Cell\n", + " \tID =\t692\n", + " \tName =\tiib_small_element_247.54400000000027\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2409 2410 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (693,\n", + " Cell\n", + " \tID =\t693\n", + " \tName =\tiib_small_element_249.1790000000003\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2413 2414 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (694,\n", + " Cell\n", + " \tID =\t694\n", + " \tName =\tiib_small_element_250.8140000000003\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2417 2418 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (695,\n", + " Cell\n", + " \tID =\t695\n", + " \tName =\tiib_small_element_252.44900000000032\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2421 2422 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (696,\n", + " Cell\n", + " \tID =\t696\n", + " \tName =\tiib_small_element_254.08400000000034\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2425 2426 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (697,\n", + " Cell\n", + " \tID =\t697\n", + " \tName =\tiib_small_element_255.71900000000036\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2429 2430 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (698,\n", + " Cell\n", + " \tID =\t698\n", + " \tName =\tiib_small_element_257.3540000000003\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2433 2434 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (699,\n", + " Cell\n", + " \tID =\t699\n", + " \tName =\tiib_small_element_258.9890000000003\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2437 2438 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (700,\n", + " Cell\n", + " \tID =\t700\n", + " \tName =\tiib_small_element_260.6240000000003\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2441 2442 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (701,\n", + " Cell\n", + " \tID =\t701\n", + " \tName =\tiib_small_element_262.2590000000003\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2445 2446 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (702,\n", + " Cell\n", + " \tID =\t702\n", + " \tName =\tiib_small_element_263.8940000000003\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2449 2450 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (703,\n", + " Cell\n", + " \tID =\t703\n", + " \tName =\tiib_small_element_265.5290000000003\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2453 2454 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (704,\n", + " Cell\n", + " \tID =\t704\n", + " \tName =\tiib_large_element_270.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1825 -2457 2458 2459)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (705,\n", + " Cell\n", + " \tID =\t705\n", + " \tName =\tiib_large_element_fuel_hole_270.0\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t-2459\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (706,\n", + " Cell\n", + " \tID =\t706\n", + " \tName =\tiib_small_element_270.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2462 2463 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (707,\n", + " Cell\n", + " \tID =\t707\n", + " \tName =\tiib_small_element_272.924\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2466 2467 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (708,\n", + " Cell\n", + " \tID =\t708\n", + " \tName =\tiib_small_element_274.55899999999997\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2470 2471 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (709,\n", + " Cell\n", + " \tID =\t709\n", + " \tName =\tiib_small_element_276.19399999999996\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2474 2475 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (710,\n", + " Cell\n", + " \tID =\t710\n", + " \tName =\tiib_small_element_277.82899999999995\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2478 2479 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (711,\n", + " Cell\n", + " \tID =\t711\n", + " \tName =\tiib_small_element_279.46399999999994\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2482 2483 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (712,\n", + " Cell\n", + " \tID =\t712\n", + " \tName =\tiib_small_element_281.09899999999993\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2486 2487 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (713,\n", + " Cell\n", + " \tID =\t713\n", + " \tName =\tiib_small_element_282.7339999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2490 2491 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (714,\n", + " Cell\n", + " \tID =\t714\n", + " \tName =\tiib_small_element_284.3689999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2494 2495 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (715,\n", + " Cell\n", + " \tID =\t715\n", + " \tName =\tiib_small_element_286.0039999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2498 2499 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (716,\n", + " Cell\n", + " \tID =\t716\n", + " \tName =\tiib_small_element_287.6389999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2502 2503 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (717,\n", + " Cell\n", + " \tID =\t717\n", + " \tName =\tiib_small_element_289.2739999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2506 2507 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (718,\n", + " Cell\n", + " \tID =\t718\n", + " \tName =\tiib_small_element_290.9089999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2510 2511 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (719,\n", + " Cell\n", + " \tID =\t719\n", + " \tName =\tiib_small_element_292.54399999999987\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2514 2515 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (720,\n", + " Cell\n", + " \tID =\t720\n", + " \tName =\tiib_small_element_294.17899999999986\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2518 2519 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (721,\n", + " Cell\n", + " \tID =\t721\n", + " \tName =\tiib_small_element_295.81399999999985\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2522 2523 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (722,\n", + " Cell\n", + " \tID =\t722\n", + " \tName =\tiib_small_element_297.44899999999984\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2526 2527 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (723,\n", + " Cell\n", + " \tID =\t723\n", + " \tName =\tiib_small_element_299.08399999999983\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2530 2531 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (724,\n", + " Cell\n", + " \tID =\t724\n", + " \tName =\tiib_small_element_300.7189999999998\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2534 2535 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (725,\n", + " Cell\n", + " \tID =\t725\n", + " \tName =\tiib_small_element_302.3539999999998\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2538 2539 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (726,\n", + " Cell\n", + " \tID =\t726\n", + " \tName =\tiib_small_element_303.9889999999998\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2542 2543 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (727,\n", + " Cell\n", + " \tID =\t727\n", + " \tName =\tiib_small_element_305.6239999999998\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2546 2547 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (728,\n", + " Cell\n", + " \tID =\t728\n", + " \tName =\tiib_small_element_307.2589999999998\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2550 2551 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (729,\n", + " Cell\n", + " \tID =\t729\n", + " \tName =\tiib_small_element_308.8939999999998\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2554 2555 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (730,\n", + " Cell\n", + " \tID =\t730\n", + " \tName =\tiib_small_element_310.52899999999977\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2558 2559 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (731,\n", + " Cell\n", + " \tID =\t731\n", + " \tName =\tiib_large_element_315.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1930 -2562 2563 2564)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (732,\n", + " Cell\n", + " \tID =\t732\n", + " \tName =\tiib_large_element_fuel_hole_315.0\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t-2564\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (733,\n", + " Cell\n", + " \tID =\t733\n", + " \tName =\tiib_small_element_315.0\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2567 2568 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (734,\n", + " Cell\n", + " \tID =\t734\n", + " \tName =\tiib_small_element_317.924\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2571 2572 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (735,\n", + " Cell\n", + " \tID =\t735\n", + " \tName =\tiib_small_element_319.55899999999997\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2575 2576 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (736,\n", + " Cell\n", + " \tID =\t736\n", + " \tName =\tiib_small_element_321.19399999999996\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2579 2580 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (737,\n", + " Cell\n", + " \tID =\t737\n", + " \tName =\tiib_small_element_322.82899999999995\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2583 2584 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (738,\n", + " Cell\n", + " \tID =\t738\n", + " \tName =\tiib_small_element_324.46399999999994\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2587 2588 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (739,\n", + " Cell\n", + " \tID =\t739\n", + " \tName =\tiib_small_element_326.09899999999993\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2591 2592 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (740,\n", + " Cell\n", + " \tID =\t740\n", + " \tName =\tiib_small_element_327.7339999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2595 2596 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (741,\n", + " Cell\n", + " \tID =\t741\n", + " \tName =\tiib_small_element_329.3689999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2599 2600 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (742,\n", + " Cell\n", + " \tID =\t742\n", + " \tName =\tiib_small_element_331.0039999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2603 2604 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (743,\n", + " Cell\n", + " \tID =\t743\n", + " \tName =\tiib_small_element_332.6389999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2607 2608 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (744,\n", + " Cell\n", + " \tID =\t744\n", + " \tName =\tiib_small_element_334.2739999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2611 2612 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (745,\n", + " Cell\n", + " \tID =\t745\n", + " \tName =\tiib_small_element_335.9089999999999\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2615 2616 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (746,\n", + " Cell\n", + " \tID =\t746\n", + " \tName =\tiib_small_element_337.54399999999987\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2619 2620 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (747,\n", + " Cell\n", + " \tID =\t747\n", + " \tName =\tiib_small_element_339.17899999999986\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2623 2624 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (748,\n", + " Cell\n", + " \tID =\t748\n", + " \tName =\tiib_small_element_340.81399999999985\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2627 2628 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (749,\n", + " Cell\n", + " \tID =\t749\n", + " \tName =\tiib_small_element_342.44899999999984\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2631 2632 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (750,\n", + " Cell\n", + " \tID =\t750\n", + " \tName =\tiib_small_element_344.08399999999983\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2635 2636 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (751,\n", + " Cell\n", + " \tID =\t751\n", + " \tName =\tiib_small_element_345.7189999999998\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2639 2640 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (752,\n", + " Cell\n", + " \tID =\t752\n", + " \tName =\tiib_small_element_347.3539999999998\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2643 2644 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (753,\n", + " Cell\n", + " \tID =\t753\n", + " \tName =\tiib_small_element_348.9889999999998\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2647 2648 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (754,\n", + " Cell\n", + " \tID =\t754\n", + " \tName =\tiib_small_element_350.6239999999998\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2651 2652 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (755,\n", + " Cell\n", + " \tID =\t755\n", + " \tName =\tiib_small_element_352.2589999999998\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2655 2656 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (756,\n", + " Cell\n", + " \tID =\t756\n", + " \tName =\tiib_small_element_353.8939999999998\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2659 2660 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (757,\n", + " Cell\n", + " \tID =\t757\n", + " \tName =\tiib_small_element_355.52899999999977\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-1551 1830 -2663 2664 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (758,\n", + " Cell\n", + " \tID =\t758\n", + " \tName =\tiib_fuel\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(~((-1551 1825 -1827 1828) | (-1551 1830 -1832 1833) | (-1551 1830 -1836 1837) | (-1551 1830 -1840 1841) | (-1551 1830 -1844 1845) | (-1551 1830 -1848 1849) | (-1551 1830 -1852 1853) | (-1551 1830 -1856 1857) | (-1551 1830 -1860 1861) | (-1551 1830 -1864 1865) | (-1551 1830 -1868 1869) | (-1551 1830 -1872 1873) | (-1551 1830 -1876 1877) | (-1551 1830 -1880 1881) | (-1551 1830 -1884 1885) | (-1551 1830 -1888 1889) | (-1551 1830 -1892 1893) | (-1551 1830 -1896 1897) | (-1551 1830 -1900 1901) | (-1551 1830 -1904 1905) | (-1551 1830 -1908 1909) | (-1551 1830 -1912 1913) | (-1551 1830 -1916 1917) | (-1551 1830 -1920 1921) | (-1551 1830 -1924 1925) | (-1551 1830 -1928 1929) | (-1551 1930 -1932 1933) | (-1551 1830 -1937 1938) | (-1551 1830 -1941 1942) | (-1551 1830 -1945 1946) | (-1551 1830 -1949 1950) | (-1551 1830 -1953 1954) | (-1551 1830 -1957 1958) | (-1551 1830 -1961 1962) | (-1551 1830 -1965 1966) | (-1551 1830 -1969 1970) | (-1551 1830 -1973 1974) | (-1551 1830 -1977 1978) | (-1551 1830 -1981 1982) | (-1551 1830 -1985 1986) | (-1551 1830 -1989 1990) | (-1551 1830 -1993 1994) | (-1551 1830 -1997 1998) | (-1551 1830 -2001 2002) | (-1551 1830 -2005 2006) | (-1551 1830 -2009 2010) | (-1551 1830 -2013 2014) | (-1551 1830 -2017 2018) | (-1551 1830 -2021 2022) | (-1551 1830 -2025 2026) | (-1551 1830 -2029 2030) | (-1551 1830 -2033 2034) | (-1551 1825 -2037 2038) | (-1551 1830 -2042 2043) | (-1551 1830 -2046 2047) | (-1551 1830 -2050 2051) | (-1551 1830 -2054 2055) | (-1551 1830 -2058 2059) | (-1551 1830 -2062 2063) | (-1551 1830 -2066 2067) | (-1551 1830 -2070 2071) | (-1551 1830 -2074 2075) | (-1551 1830 -2078 2079) | (-1551 1830 -2082 2083) | (-1551 1830 -2086 2087) | (-1551 1830 -2090 2091) | (-1551 1830 -2094 2095) | (-1551 1830 -2098 2099) | (-1551 1830 -2102 2103) | (-1551 1830 -2106 2107) | (-1551 1830 -2110 2111) | (-1551 1830 -2114 2115) | (-1551 1830 -2118 2119) | (-1551 1830 -2122 2123) | (-1551 1830 -2126 2127) | (-1551 1830 -2130 2131) | (-1551 1830 -2134 2135) | (-1551 1830 -2138 2139) | (-1551 1930 -2142 2143) | (-1551 1830 -2147 2148) | (-1551 1830 -2151 2152) | (-1551 1830 -2155 2156) | (-1551 1830 -2159 2160) | (-1551 1830 -2163 2164) | (-1551 1830 -2167 2168) | (-1551 1830 -2171 2172) | (-1551 1830 -2175 2176) | (-1551 1830 -2179 2180) | (-1551 1830 -2183 2184) | (-1551 1830 -2187 2188) | (-1551 1830 -2191 2192) | (-1551 1830 -2195 2196) | (-1551 1830 -2199 2200) | (-1551 1830 -2203 2204) | (-1551 1830 -2207 2208) | (-1551 1830 -2211 2212) | (-1551 1830 -2215 2216) | (-1551 1830 -2219 2220) | (-1551 1830 -2223 2224) | (-1551 1830 -2227 2228) | (-1551 1830 -2231 2232) | (-1551 1830 -2235 2236) | (-1551 1830 -2239 2240) | (-1551 1830 -2243 2244) | (-1551 1825 -2247 2248) | (-1551 1830 -2252 2253) | (-1551 1830 -2256 2257) | (-1551 1830 -2260 2261) | (-1551 1830 -2264 2265) | (-1551 1830 -2268 2269) | (-1551 1830 -2272 2273) | (-1551 1830 -2276 2277) | (-1551 1830 -2280 2281) | (-1551 1830 -2284 2285) | (-1551 1830 -2288 2289) | (-1551 1830 -2292 2293) | (-1551 1830 -2296 2297) | (-1551 1830 -2300 2301) | (-1551 1830 -2304 2305) | (-1551 1830 -2308 2309) | (-1551 1830 -2312 2313) | (-1551 1830 -2316 2317) | (-1551 1830 -2320 2321) | (-1551 1830 -2324 2325) | (-1551 1830 -2328 2329) | (-1551 1830 -2332 2333) | (-1551 1830 -2336 2337) | (-1551 1830 -2340 2341) | (-1551 1830 -2344 2345) | (-1551 1830 -2348 2349) | (-1551 1930 -2352 2353) | (-1551 1830 -2357 2358) | (-1551 1830 -2361 2362) | (-1551 1830 -2365 2366) | (-1551 1830 -2369 2370) | (-1551 1830 -2373 2374) | (-1551 1830 -2377 2378) | (-1551 1830 -2381 2382) | (-1551 1830 -2385 2386) | (-1551 1830 -2389 2390) | (-1551 1830 -2393 2394) | (-1551 1830 -2397 2398) | (-1551 1830 -2401 2402) | (-1551 1830 -2405 2406) | (-1551 1830 -2409 2410) | (-1551 1830 -2413 2414) | (-1551 1830 -2417 2418) | (-1551 1830 -2421 2422) | (-1551 1830 -2425 2426) | (-1551 1830 -2429 2430) | (-1551 1830 -2433 2434) | (-1551 1830 -2437 2438) | (-1551 1830 -2441 2442) | (-1551 1830 -2445 2446) | (-1551 1830 -2449 2450) | (-1551 1830 -2453 2454) | (-1551 1825 -2457 2458) | (-1551 1830 -2462 2463) | (-1551 1830 -2466 2467) | (-1551 1830 -2470 2471) | (-1551 1830 -2474 2475) | (-1551 1830 -2478 2479) | (-1551 1830 -2482 2483) | (-1551 1830 -2486 2487) | (-1551 1830 -2490 2491) | (-1551 1830 -2494 2495) | (-1551 1830 -2498 2499) | (-1551 1830 -2502 2503) | (-1551 1830 -2506 2507) | (-1551 1830 -2510 2511) | (-1551 1830 -2514 2515) | (-1551 1830 -2518 2519) | (-1551 1830 -2522 2523) | (-1551 1830 -2526 2527) | (-1551 1830 -2530 2531) | (-1551 1830 -2534 2535) | (-1551 1830 -2538 2539) | (-1551 1830 -2542 2543) | (-1551 1830 -2546 2547) | (-1551 1830 -2550 2551) | (-1551 1830 -2554 2555) | (-1551 1830 -2558 2559) | (-1551 1930 -2562 2563) | (-1551 1830 -2567 2568) | (-1551 1830 -2571 2572) | (-1551 1830 -2575 2576) | (-1551 1830 -2579 2580) | (-1551 1830 -2583 2584) | (-1551 1830 -2587 2588) | (-1551 1830 -2591 2592) | (-1551 1830 -2595 2596) | (-1551 1830 -2599 2600) | (-1551 1830 -2603 2604) | (-1551 1830 -2607 2608) | (-1551 1830 -2611 2612) | (-1551 1830 -2615 2616) | (-1551 1830 -2619 2620) | (-1551 1830 -2623 2624) | (-1551 1830 -2627 2628) | (-1551 1830 -2631 2632) | (-1551 1830 -2635 2636) | (-1551 1830 -2639 2640) | (-1551 1830 -2643 2644) | (-1551 1830 -2647 2648) | (-1551 1830 -2651 2652) | (-1551 1830 -2655 2656) | (-1551 1830 -2659 2660) | (-1551 1830 -2663 2664)) ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)) -1551 1525 -1526)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone)])" + ] + }, + "execution_count": 22, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "geo.get_all_cells()" ] }, { diff --git a/examples/msbr/openmc_model.py b/examples/msbr/openmc_model.py index f0603b9fd..436138fe8 100644 --- a/examples/msbr/openmc_model.py +++ b/examples/msbr/openmc_model.py @@ -1,5 +1,6 @@ import openmc import numpy as np +from openmc.deplete import CoupledOperator, PredictorIntegrator, CELIIntegrator from _core_elements import * from _control_rods import * @@ -7,7 +8,8 @@ # Materials -fuel = openmc.Material(name='fuel') +T = 900 +fuel = openmc.Material(name='fuel', temperature=T) fuel.set_density('g/cm3', density=3.35) fuel.add_components({'Li7': 0.0787474673879085, 'Be9': 0.0225566879138321, @@ -18,12 +20,12 @@ fuel.depletable = True fuel.volume = 48710000.0 -moder = openmc.Material(name='graphite') +moder = openmc.Material(name='graphite', temperature=T) moder.set_density('g/cm3', density=1.84) moder.add_nuclide('C0', 1.000, percent_type='wo') moder.add_s_alpha_beta('c_Graphite') -hast = openmc.Material(name='hastelloyN') +hast = openmc.Material(name='hastelloyN', temperature=T) hast.set_density('g/cm3', density=8.671) hast.add_components({'Al27': 0.003, 'Ni': 0.677, @@ -36,26 +38,26 @@ # Geometry def cr_lattice(cr_boundary, core_base, core_top): - fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel = shared_cr_geometry() - elem_bound = openmc.rectangular_prism(7.62*2, 7.62*2) # Pin outer boundary - - f = control_rod(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel, moder, fuel) - e = control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel, moder, fuel) + fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel = shared_cr_geometry() + f = control_rod(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, fuel, moder) + fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel = shared_cr_geometry() + e = control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, fuel, moder) cr = openmc.RectLattice() cr.pitch = np.array([15.24, 15.24]) N = 2 / 2 cr.lower_left = -1 * cr.pitch * N - cr.universes = [[f, e], - [e, f]] + cr.universes = [[e, f], + [f, e]] c1 = openmc.Cell(fill=cr, region=(+core_base & -core_top & cr_boundary), name='cr_lattice') return c1 def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): - elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4 = shared_elem_geometry() - l = zoneIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4, moder, fuel, hast) - z = zoneIIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4, moder, fuel) + elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4 = shared_elem_geometry() + l = zoneIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4, moder, fuel, hast) + elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4 = shared_elem_geometry() + z = zoneIIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4, moder, fuel) v = void_cell(elem_bound) # tres, uno, dos, quatro t, u, d, q = graphite_triangles(elem_bound, moder, fuel) @@ -121,7 +123,7 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): main = main_lattice(zone_i_boundary, cr_boundary, core_base, core_top) cr = cr_lattice(cr_boundary, core_base, core_top) -iib_m, iib_f = zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top, moder, fuel) +iib = zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top, moder, fuel) a = annulus(zone_ii_boundary, annulus_boundary, core_base, core_top, fuel) lp = lower_plenum(core_base, lower_plenum_boundary, annulus_boundary, fuel) @@ -143,7 +145,7 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): geo = openmc.Geometry() univ = openmc.Universe() -univ.add_cells([cr, main, iib_m, iib_f, lp, a, rr, rb, rt, vr, vb, vt]) +univ.add_cells([cr, main, iib, lp, a, rr, rb, rt, vr, vb, vt]) geo.root_universe = univ geo.remove_redundant_surfaces() @@ -151,10 +153,12 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): # Settings settings = openmc.Settings() -settings.particles = 300 -settings.batches = 400 -settings.inactive = 10 -settings.temperature = {'default': 900, 'method': 'interpolation'} +settings.particles = 10000 +settings.batches = 150 +settings.inactive = 25 +settings.generations_per_batch = 1 +settings.temperature = {'default': 900, 'method': 'interpolation', 'range': (800, 1000)} +#settings.temperature = {'default': 600, 'method': 'nearest'} settings.export_to_xml() # Plots @@ -168,6 +172,42 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): ## Slice plots plots = openmc.Plots() +plot = openmc.Plot(name='serpent-plot-1_full-zoneIA-main') +plot.origin=(0, 0, 150.5) +plot.width=(600, 600) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='serpent-plot-2') +plot.origin=(0, -77.5, 200) +plot.width=(155, 700) +plot.pixels=(1550, 3400) +plot.color_by='material' +plot.colors=colormap +plot.basis='yz' +plots.append(plot) + +plot = openmc.Plot(name='serpent-plot-3') +plot.origin=(0, 0, 155) +plot.width=(40, 40) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='yz' +plots.append(plot) + +plot = openmc.Plot(name='serpent-plot-4') +plot.origin=(16.5, 0, 200) +plot.width=(700, 700) +plot.pixels=(2000, 2000) +plot.color_by='material' +plot.colors=colormap +plot.basis='yz' +plots.append(plot) + plot = openmc.Plot(name='detail-zoneIA-IIA-lower1') plot.origin=(215, 0, 10.0) plot.width=(40, 40) @@ -258,15 +298,6 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): plot.basis='xy' plots.append(plot) -plot = openmc.Plot(name='full-zoneIA-main') -plot.origin=(0, 0, 23.0) -plot.width=(600, 600) -plot.pixels=full_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - plot = openmc.Plot(name='full-zoneIIA-upper1') plot.origin=(0, 0, 435) plot.width=(600, 600) @@ -348,15 +379,93 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): plot.basis='xz' plots.append(plot) -if plots_3d: - plot = openmc.Plot(name='full-core-3d') - plot.origin=(0,0,220) - plot.type = 'voxel' - plot.color_by='materials' - plot.colors=colormap - plot.width = (700., 700., 650.) - plot.pixels = (10000, 10000, 10000) +plots.export_to_xml() - plots.append(plot) +DEPLETE = False +if DEPLETE: + fiss_q = { + "Am243": 212952778.98135212, + "Cm246": 220179493.9541502, + "U239": 196182721.4907133, + "Np239": 198519429.0542043, + "Th233": 185840570.73897627, + "Cf251": 223166396.6983342, + "Am242": 215146730.16368726, + "Cm245": 214624022.18345505, + "Cf254": 230600814.3619568, + "Am241": 211216798.63643932, + "Th232": 197108389.42449385, + "Cm240": 219583368.40646642, + "Th231": 186918512.14598972, + "Bk246": 224446497.874413, + "Cm247": 218956599.9139631, + "U238": 206851381.70909396, + "Bk250": 225432928.78068554, + "U230": 198841127.68309468, + "Cf249": 221434495.10716867, + "U234": 200632850.9958874, + "Cm250": 219425761.1783332, + "Th229": 192235847.44789958, + "Cm241": 219075406.6897822, + "Pu237": 210593272.23024797, + "Am240": 215272544.02927735, + "Cm249": 218622037.52325428, + "Ac226": 183632605.3770991, + "Cf250": 229685291.02082983, + "Th228": 189488754.50737157, + "Cf248": 229015120.40511796, + "Ac227": 183458264.80025893, + "Pu241": 211237715.32232296, + "Pu240": 208612566.66049656, + "Cf252": 230239896.94703457, + "U231": 197643438.24939737, + "Cm242": 212786491.32857716, + "Bk245": 225023484.65451327, + "Np235": 199435370.72904894, + "Pu243": 207499380.63776916, + "Pu239": 208018532.78140113, + "Am242_m1": 215145370.5791048, + "Pu236": 208679081.72160652, + "Bk249": 224740691.06136644, + "Np236": 198952718.20228392, + "Np234": 200175925.99275926, + "U237": 196429642.96756968, + "Cf253": 231148831.53210822, + "U236": 203404311.87546986, + "Es254": 232527659.46555784, + "Ac225": 183891658.531768, + "Cm243": 213375296.0362017, + "Bk248": 224456537.88363716, + "Cm244": 217926766.88448203, + "Pu242": 212072186.50565082, + "U241": 198266755.4887299, + "Np237": 205370480.34853214, + "Th234": 186385345.82281572, + "Pa231": 194099942.4938497, + "Pa230": 194744699.33621296, + "Pa233": 194162901.71835947, + "U240": 207137940.30569986, + "U233": 199796183.56054175, + "Pu246": 208860847.72193536, + "Pa232": 193654730.8348164, + "U232": 193044277.35730234, + "Am244_m1": 213894761.9301219, + "Pu244": 208427244.82356748, + "Np238": 208699370.90691367, + "Bk247": 224883761.19281054, + "Am244": 213894761.9301219, + "Pa229": 194955644.11334947, + "Cm248": 221723145.3723629, + "Fm255": 238051756.2074275, + "Cf246": 229074942.12674516, + "Th230": 188666101.25156796, + "Pu238": 209540012.5125772, + "U235": 202270000.0, + "Th227": 190640950.14927194 + } + model = openmc.Model.from_xml() + op = CoupledOperator(model, chain_file='chain_endfb71_pwr.xml', fission_q=fiss_q) + timesteps = [3] * 12 + integrator = PredictorIntegrator(op, timesteps, timestep_units='d', power=2.25e9) + integrator.integrate() -plots.export_to_xml() From 90f3142d3a6bc38c51ff5ad0320764451d9a5bc5 Mon Sep 17 00:00:00 2001 From: yardasol Date: Tue, 18 Oct 2022 16:45:56 -0500 Subject: [PATCH 12/62] fix merge conflict --- examples/msbr/_root_geometry.py | 88 +- examples/msbr/model-plotting.ipynb | 6004 +--------------------------- 2 files changed, 151 insertions(+), 5941 deletions(-) diff --git a/examples/msbr/_root_geometry.py b/examples/msbr/_root_geometry.py index 389b1b1cd..e2f81e2d2 100644 --- a/examples/msbr/_root_geometry.py +++ b/examples/msbr/_root_geometry.py @@ -47,59 +47,73 @@ def zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core big_radii = [rb_1, rb_2] * 4 small_radii = (207.28, r_outer) - hole_coord = 242.679 - hole_region = +openmc.ZCylinder(x0=hole_coord, r=3.0875) + r_hole = 3.0875 + hole_args = ({'x0': 242.679, 'y0': 0.0, 'r': r_hole}, + {'x0': 171.60, 'y0': 171.60, 'r': r_hole}, + {'x0': 0.0, 'y0': 242.679, 'r': r_hole}, + {'x0': -171.60, 'y0': 171.60, 'r': r_hole}, + {'x0': -242.679, 'y0': 0.0, 'r': r_hole}, + {'x0': -171.60, 'y0': -171.60, 'r': r_hole}, + {'x0': 0.0, 'y0': -242.697, 'r': r_hole}, + {'x0': 171.60, 'y0': -171.60, 'r': r_hole}) # Small elements small_angular_width = 0.96 adjacent_angular_offset = 0.675 #27/40 small_elems_per_octant = 25 - zone_iib_reg = None elem_cells = [] for i, pos in enumerate(large_positions): pos = np.round(pos, 3) - r1, r2 = big_radii[i] - t1 = pos - large_half_w - t2 = pos + large_half_w - large_elem = openmc.model.CylinderSector(r1, r2, t1, t2) - elem_hole = hole_region.rotate((0.0, 0.0, pos)) - elem_reg = -large_elem - if isinstance(zone_iib_reg, openmc.Region): - zone_iib_reg = zone_iib_reg | elem_reg - else: - zone_iib_reg = elem_reg - - elem_reg = -large_elem & elem_hole - elem_cells.append(openmc.Cell(fill=moder, region=elem_reg, - name=f'iib_large_element_moderator_{pos}')) - elem_cells.append(openmc.Cell(fill=fuel, region=~elem_hole, + r1_big, r2_big = big_radii[i] + t1_big = pos - large_half_w + t2_big = pos + large_half_w + s1 = openmc.model.CylinderSector(r1_big, r2_big, t1_big, t2_big) + s2 = openmc.ZCylinder(**hole_args[i]) + elem_cells.append(openmc.Cell(fill=moder, region=(-s1 & +s2), name=f'iib_large_element_{pos}')) + elem_cells.append(openmc.Cell(fill=fuel, region=(-s2), name=f'iib_large_element_fuel_hole_{pos}')) - t1 = t2 + adjacent_angular_offset - r1, r2 = small_radii + t1_small = t2_big + adjacent_angular_offset + r1_small, r2_small = small_radii + + # Inter element fuel channel + s3 = openmc.model.CylinderSector(r1_small, r2_small, t2_big, t1_small) + cpos = t2_big + (adjacent_angular_offset / 2) + cpos = np.round(cpos, 3) + elem_cells.append(openmc.Cell(fill=fuel, region=-s3, + name=f'inter_element_fuel_channel_{cpos}')) + + t4a = t1_big - adjacent_angular_offset + s4 = openmc.model.CylinderSector(r1_small, r1_big, t4a, t1_small) + elem_cells.append(openmc.Cell(fill=fuel, region=-s4, + name=f'inter_element_fuel_channel_{pos}')) + for i in range(0, small_elems_per_octant): - t2 = t1 + small_angular_width - elem_reg = -openmc.model.CylinderSector(small_radii[0], small_radii[1], t1, t2) - pos = t2 - (small_angular_width / 2) + t2_small = t1_small + small_angular_width + + # reflector element + s5 = openmc.model.CylinderSector(r1_small, r2_small, t1_small, t2_small) + pos = t2_small - (small_angular_width / 2) pos = np.round(pos, 3) - elem_cells.append(openmc.Cell(fill=moder, region=elem_reg, name=f'iib_small_element_{pos}')) - zone_iib_reg = zone_iib_reg | elem_reg - t1 = t2 + adjacent_angular_offset - c1 = openmc.Cell(fill=fuel, region=(~zone_iib_reg & - ~zone_i_boundary & - -zone_ii_boundary & - +core_base & - -core_top), name='iib_fuel') + elem_cells.append(openmc.Cell(fill=moder, region=-s5, name=f'iib_small_element_{pos}')) + t1_small = t2_small + adjacent_angular_offset + + # inter-element fuel channel + s6 = openmc.model.CylinderSector(r1_small, r2_small, t2_small, t1_small) + cpos = t2_small + (adjacent_angular_offset/2) + cpos = np.round(cpos, 3) + elem_cells.append(openmc.Cell(fill=fuel, region=-s6, + name=f'inter_element_fuel_channel_{cpos}')) + #universe_id=10 iib = openmc.Universe(name='zone_iib') iib.add_cells(elem_cells) - iib.add_cell(c1) - iib = openmc.Cell(fill=iib, region=(~zone_i_boundary & - -zone_ii_boundary & - +core_base & - -core_top), name='zone_iib') - return iib + c1 = openmc.Cell(fill=iib, region=(~zone_i_boundary & + -zone_ii_boundary & + +core_base & + -core_top), name='zone_iib') + return c1 def annulus(zone_ii_boundary, annulus_boundary, core_base, core_top, fuel): annulus_reg = +zone_ii_boundary & -annulus_boundary & +core_base & -core_top diff --git a/examples/msbr/model-plotting.ipynb b/examples/msbr/model-plotting.ipynb index 991a0d6b4..6995cc1f4 100644 --- a/examples/msbr/model-plotting.ipynb +++ b/examples/msbr/model-plotting.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "code", - "execution_count": 1, + "execution_count": null, "id": "bdbd4aaa", "metadata": {}, "outputs": [], @@ -61,7 +61,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 7, "id": "3e341197", "metadata": {}, "outputs": [], @@ -71,7 +71,6 @@ " appropriate height.\"\"\"\n", " cell_list = []\n", " n_levels = len(cells_tuples)\n", - " print(f'{n_levels}')\n", " for i, cells in enumerate(cells_tuples):\n", " if i == 0:\n", " lower_bound = None\n", @@ -152,7 +151,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 8, "id": "71b4a322", "metadata": {}, "outputs": [], @@ -347,19 +346,10 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 9, "id": "07136110", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "5\n", - "5\n" - ] - } - ], + "outputs": [], "source": [ "elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4 = shared_elem_geometry()\n", "ia = zoneIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4)\n", @@ -371,307 +361,17 @@ }, { "cell_type": "code", - "execution_count": 23, - "id": "16c1aa30", - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "OrderedDict([(1,\n", - " Cell\n", - " \tID =\t1\n", - " \tName =\tia_fuel_inner_1\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(-32 -27)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (2,\n", - " Cell\n", - " \tID =\t2\n", - " \tName =\tia_moderator_1\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(32 -31 -27)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (3,\n", - " Cell\n", - " \tID =\t3\n", - " \tName =\tia_fuel_outer_1\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(31 1 -2 3 -4 -27)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (4,\n", - " Cell\n", - " \tID =\t4\n", - " \tName =\tia_fuel_inner_main\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(-47 27 -28)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (5,\n", - " Cell\n", - " \tID =\t5\n", - " \tName =\tia_moderator_main\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(34 35 -36 37 -38 ~((39 -40 -41) | (42 -40 43) | (44 45 -41) | (46 45 43)) 27 -28)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (6,\n", - " Cell\n", - " \tID =\t6\n", - " \tName =\tia_fuel_outer_main\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(~(5 -6 7 -8 ~((10 -14 -16) | (11 -14 17) | (12 15 -16) | (13 15 17))) (1 -2 3 -4) 18 19 20 21 22 23 24 25 27 -28)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (7,\n", - " Cell\n", - " \tID =\t7\n", - " \tName =\tia_moderator_main_ul\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-18 -4 8 27 -28)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (8,\n", - " Cell\n", - " \tID =\t8\n", - " \tName =\tia_moderator_main_br\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-19 3 -7 27 -28)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (9,\n", - " Cell\n", - " \tID =\t9\n", - " \tName =\tia_moderator_main_ru\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-20 1 -5 27 -28)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (10,\n", - " Cell\n", - " \tID =\t10\n", - " \tName =\tia_moderator_main_lb\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-21 -2 6 27 -28)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (11,\n", - " Cell\n", - " \tID =\t11\n", - " \tName =\tia_moderator_main_ul_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-18 11 -8 -14 17 27 -28)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (12,\n", - " Cell\n", - " \tID =\t12\n", - " \tName =\tia_moderator_main_br_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-19 12 7 15 -16 27 -28)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (13,\n", - " Cell\n", - " \tID =\t13\n", - " \tName =\tia_moderator_main_ru_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-20 10 5 -14 -16 27 -28)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (14,\n", - " Cell\n", - " \tID =\t14\n", - " \tName =\tia_moderator_main_lb_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-21 13 -6 15 17 27 -28)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (15,\n", - " Cell\n", - " \tID =\t15\n", - " \tName =\tia_moderator_main_ul_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-22 3 -7 27 -28)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (16,\n", - " Cell\n", - " \tID =\t16\n", - " \tName =\tia_moderator_main_br_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-23 -4 8 27 -28)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (17,\n", - " Cell\n", - " \tID =\t17\n", - " \tName =\tia_moderator_main_ru_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-24 1 -5 27 -28)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (18,\n", - " Cell\n", - " \tID =\t18\n", - " \tName =\tia_moderator_main_lb_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-25 -2 6 27 -28)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (19,\n", - " Cell\n", - " \tID =\t19\n", - " \tName =\tia_fuel_inner_2\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(-48 28 -29)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (20,\n", - " Cell\n", - " \tID =\t20\n", - " \tName =\tia_moderator_2\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(49 -50 28 -29)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (21,\n", - " Cell\n", - " \tID =\t21\n", - " \tName =\tia_fuel_outer_2\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(51 52 -53 54 -55 28 -29)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (22,\n", - " Cell\n", - " \tID =\t22\n", - " \tName =\tia_fuel_inner_3\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(-62 29 -30)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (23,\n", - " Cell\n", - " \tID =\t23\n", - " \tName =\tia_moderator_3\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(56 -57 29 -30)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (24,\n", - " Cell\n", - " \tID =\t24\n", - " \tName =\tia_fuel_outer_3\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(57 58 -59 60 -61 29 -30)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (25,\n", - " Cell\n", - " \tID =\t25\n", - " \tName =\tia_hast\n", - " \tFill =\tMaterial 3\n", - " \tRegion =\t(-63 30)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (26,\n", - " Cell\n", - " \tID =\t26\n", - " \tName =\tia_moderator_4\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(63 -26 30)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (27,\n", - " Cell\n", - " \tID =\t27\n", - " \tName =\tia_fuel_outer_4\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(26 64 -65 66 -67 30)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone)])" - ] - }, - "execution_count": 23, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "ia.get_all_cells()" - ] - }, - { - "cell_type": "code", - "execution_count": 7, + "execution_count": 10, "id": "752c5160", "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 7, + "execution_count": 10, "metadata": {}, "output_type": "execute_result" }, @@ -697,17 +397,17 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 11, "id": "ee56bc53", "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 8, + "execution_count": 11, "metadata": {}, "output_type": "execute_result" }, @@ -733,7 +433,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 12, "id": "f71ac1b6", "metadata": {}, "outputs": [], @@ -797,7 +497,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 13, "id": "d17047bd", "metadata": {}, "outputs": [], @@ -857,7 +557,7 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 14, "id": "86a55a55", "metadata": {}, "outputs": [], @@ -867,35 +567,7 @@ }, { "cell_type": "code", - "execution_count": 12, - "id": "861874a9", - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "Cell\n", - "\tID =\t73\n", - "\tName =\t\n", - "\tFill =\tNone\n", - "\tRegion =\t(-206 207 -208 209 210 -211 ~((212 -218) | (213 -219) | (214 -220) | (215 -221) | (216 -222) | (217 -223)) -192 196)\n", - "\tRotation =\tNone\n", - "\tTranslation =\tNone\n", - "\tVolume =\tNone" - ] - }, - "execution_count": 12, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "openmc.Cell(region=gr_corners[0])" - ] - }, - { - "cell_type": "code", - "execution_count": 13, + "execution_count": 15, "id": "cea2d476", "metadata": {}, "outputs": [], @@ -908,17 +580,17 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": 16, "id": "01b506f1", "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 14, + "execution_count": 16, "metadata": {}, "output_type": "execute_result" }, @@ -944,17 +616,17 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": 17, "id": "f2369aa1", "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 15, + "execution_count": 17, "metadata": {}, "output_type": "execute_result" }, @@ -980,7 +652,7 @@ }, { "cell_type": "code", - "execution_count": 16, + "execution_count": 18, "id": "7f985e3a", "metadata": {}, "outputs": [], @@ -1114,62 +786,75 @@ " big_radii = [rb_1, rb_2] * 4\n", " small_radii = (207.28, r_outer)\n", " \n", - " hole_coord = 242.679\n", - " hole_region = +openmc.ZCylinder(x0=hole_coord, r=3.0875)\n", + " r_hole = 3.0875\n", + " hole_args = ({'x0': 242.679, 'y0': 0.0, 'r': r_hole},\n", + " {'x0': 171.60, 'y0': 171.60, 'r': r_hole},\n", + " {'x0': 0.0, 'y0': 242.679, 'r': r_hole},\n", + " {'x0': -171.60, 'y0': 171.60, 'r': r_hole},\n", + " {'x0': -242.679, 'y0': 0.0, 'r': r_hole},\n", + " {'x0': -171.60, 'y0': -171.60, 'r': r_hole},\n", + " {'x0': 0.0, 'y0': -242.697, 'r': r_hole},\n", + " {'x0': 171.60, 'y0': -171.60, 'r': r_hole})\n", " \n", " # Small elements\n", " small_angular_width = 0.96\n", " adjacent_angular_offset = 0.675 #27/40\n", " small_elems_per_octant = 25\n", " \n", - " zone_iib_reg = None\n", " elem_cells = []\n", " for i, pos in enumerate(large_positions):\n", - " r1, r2 = big_radii[i]\n", - " t1 = pos - large_half_w\n", - " t2 = pos + large_half_w\n", - " large_elem = openmc.model.CylinderSector(r1, r2, t1, t2)\n", - " elem_hole = hole_region.rotate((0.0, 0.0, pos))\n", - " elem_reg = -large_elem\n", - " if isinstance(zone_iib_reg, openmc.Region):\n", - " zone_iib_reg = zone_iib_reg | elem_reg\n", - " else:\n", - " zone_iib_reg = elem_reg\n", - " elem_reg = -large_elem & elem_hole\n", - " elem_cells.append(openmc.Cell(fill=moder, region=(elem_reg), name=f'iib_large_element_{pos}'))\n", - " elem_cells.append(openmc.Cell(fill=fuel, region=(~elem_hole),\n", + " pos = np.round(pos, 3)\n", + " r1_big, r2_big = big_radii[i]\n", + " t1_big = pos - large_half_w\n", + " t2_big = pos + large_half_w\n", + " s1 = openmc.model.CylinderSector(r1_big, r2_big, t1_big, t2_big)\n", + " s2 = openmc.ZCylinder(**hole_args[i])\n", + " elem_cells.append(openmc.Cell(fill=moder, region=(-s1 & +s2), name=f'iib_large_element_{pos}'))\n", + " elem_cells.append(openmc.Cell(fill=fuel, region=(-s2),\n", " name=f'iib_large_element_fuel_hole_{pos}'))\n", - "\n", + " t1_small = t2_big + adjacent_angular_offset\n", + " r1_small, r2_small = small_radii\n", " \n", - " small_start = t2 + adjacent_angular_offset\n", - " r1, r2 = small_radii\n", - " t1 = small_start\n", - " for i in range(0, small_elems_per_octant):\n", - " t2 = t1 + small_angular_width\n", - " elem_reg = -openmc.model.CylinderSector(r1, r2, t1, t2)\n", - " elem_cells.append(openmc.Cell(fill=moder, region=elem_reg, name=f'iib_small_element_{pos}'))\n", - " pos = t2 - (small_angular_width / 2)\n", - " zone_iib_reg = zone_iib_reg | elem_reg\n", - " t1 = t2 + adjacent_angular_offset\n", + " # Inter element fuel channel\n", + " s3 = openmc.model.CylinderSector(r1_small, r2_small, t2_big, t1_small)\n", + " cpos = t2_big + (adjacent_angular_offset / 2)\n", + " cpos = np.round(cpos, 3)\n", + " elem_cells.append(openmc.Cell(fill=fuel, region=-s3,\n", + " name=f'inter_element_fuel_channel_{cpos}'))\n", + " \n", + " t4a = t1_big - adjacent_angular_offset\n", + " s4 = openmc.model.CylinderSector(r1_small, r1_big, t4a, t1_small)\n", + " elem_cells.append(openmc.Cell(fill=fuel, region=-s4,\n", + " name=f'inter_element_fuel_channel_{pos}'))\n", " \n", + " for i in range(0, small_elems_per_octant):\n", + " t2_small = t1_small + small_angular_width\n", + " \n", + " # reflector element\n", + " s5 = openmc.model.CylinderSector(r1_small, r2_small, t1_small, t2_small)\n", + " pos = t2_small - (small_angular_width / 2)\n", + " pos = np.round(pos, 3)\n", + " elem_cells.append(openmc.Cell(fill=moder, region=-s5, name=f'iib_small_element_{pos}'))\n", + " t1_small = t2_small + adjacent_angular_offset\n", + " \n", + " # inter-element fuel channel\n", + " s6 = openmc.model.CylinderSector(r1_small, r2_small, t2_small, t1_small)\n", + " cpos = t2_small + (adjacent_angular_offset/2)\n", + " cpos = np.round(cpos, 3)\n", + " elem_cells.append(openmc.Cell(fill=fuel, region=-s6,\n", + " name=f'inter_element_fuel_channel_{cpos}'))\n", + " \n", "\n", - " c1 = openmc.Cell(fill=fuel, region=(~zone_iib_reg & \n", - " ~zone_i_boundary & \n", - " -zone_ii_boundary & \n", - " +core_base & \n", - " -core_top), name='iib_fuel')\n", - " \n", " #universe_id=10\n", " iib = openmc.Universe(name='zone_iib')\n", " iib.add_cells(elem_cells)\n", - " iib.add_cell(c1)\n", " \n", - " c2 = openmc.Cell(fill=iib, region=(~zone_i_boundary & \n", + " c1 = openmc.Cell(fill=iib, region=(~zone_i_boundary & \n", " -zone_ii_boundary & \n", " +core_base & \n", " -core_top), name='zone_iib')\n", " \n", - " return c2\n", + " return c1\n", "\n", "def annulus(zone_ii_boundary, annulus_boundary, core_base, core_top):\n", " annulus_reg = +zone_ii_boundary & -annulus_boundary & +core_base & -core_top\n", @@ -1220,19 +905,10 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": 19, "id": "cdf61881", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "5\n", - "5\n" - ] - } - ], + "outputs": [], "source": [ "zone_bounds, core_bounds, reflector_bounds, vessel_bounds = shared_root_geometry()\n", "\n", @@ -1267,2197 +943,43 @@ }, { "cell_type": "code", - "execution_count": 21, - "id": "aa09126b", + "execution_count": 20, + "id": "3b888598", "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "OrderedDict([(211,\n", - " Cell\n", - " \tID =\t211\n", - " \tName =\tiib_large_element_0.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-776 775 -777 778 779)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (212,\n", - " Cell\n", - " \tID =\t212\n", - " \tName =\tiib_large_element_fuel_hole_0.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-779\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (213,\n", - " Cell\n", - " \tID =\t213\n", - " \tName =\tiib_small_element_0.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-781 780 -782 783)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (214,\n", - " Cell\n", - " \tID =\t214\n", - " \tName =\tiib_small_element_2.924\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-785 784 -786 787)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (215,\n", - " Cell\n", - " \tID =\t215\n", - " \tName =\tiib_small_element_4.558999999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-789 788 -790 791)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (216,\n", - " Cell\n", - " \tID =\t216\n", - " \tName =\tiib_small_element_6.193999999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-793 792 -794 795)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (217,\n", - " Cell\n", - " \tID =\t217\n", - " \tName =\tiib_small_element_7.828999999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-797 796 -798 799)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (218,\n", - " Cell\n", - " \tID =\t218\n", - " \tName =\tiib_small_element_9.463999999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-801 800 -802 803)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (219,\n", - " Cell\n", - " \tID =\t219\n", - " \tName =\tiib_small_element_11.099\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-805 804 -806 807)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (220,\n", - " Cell\n", - " \tID =\t220\n", - " \tName =\tiib_small_element_12.734000000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-809 808 -810 811)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (221,\n", - " Cell\n", - " \tID =\t221\n", - " \tName =\tiib_small_element_14.369000000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-813 812 -814 815)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (222,\n", - " Cell\n", - " \tID =\t222\n", - " \tName =\tiib_small_element_16.004000000000005\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-817 816 -818 819)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (223,\n", - " Cell\n", - " \tID =\t223\n", - " \tName =\tiib_small_element_17.639000000000006\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-821 820 -822 823)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (224,\n", - " Cell\n", - " \tID =\t224\n", - " \tName =\tiib_small_element_19.274000000000008\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-825 824 -826 827)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (225,\n", - " Cell\n", - " \tID =\t225\n", - " \tName =\tiib_small_element_20.90900000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-829 828 -830 831)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (226,\n", - " Cell\n", - " \tID =\t226\n", - " \tName =\tiib_small_element_22.54400000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-833 832 -834 835)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (227,\n", - " Cell\n", - " \tID =\t227\n", - " \tName =\tiib_small_element_24.179000000000013\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-837 836 -838 839)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (228,\n", - " Cell\n", - " \tID =\t228\n", - " \tName =\tiib_small_element_25.814000000000014\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-841 840 -842 843)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (229,\n", - " Cell\n", - " \tID =\t229\n", - " \tName =\tiib_small_element_27.449000000000016\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-845 844 -846 847)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (230,\n", - " Cell\n", - " \tID =\t230\n", - " \tName =\tiib_small_element_29.084000000000017\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-849 848 -850 851)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (231,\n", - " Cell\n", - " \tID =\t231\n", - " \tName =\tiib_small_element_30.71900000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-853 852 -854 855)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (232,\n", - " Cell\n", - " \tID =\t232\n", - " \tName =\tiib_small_element_32.35400000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-857 856 -858 859)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (233,\n", - " Cell\n", - " \tID =\t233\n", - " \tName =\tiib_small_element_33.98900000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-861 860 -862 863)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (234,\n", - " Cell\n", - " \tID =\t234\n", - " \tName =\tiib_small_element_35.62400000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-865 864 -866 867)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (235,\n", - " Cell\n", - " \tID =\t235\n", - " \tName =\tiib_small_element_37.259000000000015\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-869 868 -870 871)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (236,\n", - " Cell\n", - " \tID =\t236\n", - " \tName =\tiib_small_element_38.89400000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-873 872 -874 875)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (237,\n", - " Cell\n", - " \tID =\t237\n", - " \tName =\tiib_small_element_40.52900000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-877 876 -878 879)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (238,\n", - " Cell\n", - " \tID =\t238\n", - " \tName =\tiib_large_element_45.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-881 880 -882 883 884)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (239,\n", - " Cell\n", - " \tID =\t239\n", - " \tName =\tiib_large_element_fuel_hole_45.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-884\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (240,\n", - " Cell\n", - " \tID =\t240\n", - " \tName =\tiib_small_element_45.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-886 885 -887 888)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (241,\n", - " Cell\n", - " \tID =\t241\n", - " \tName =\tiib_small_element_47.924\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-890 889 -891 892)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (242,\n", - " Cell\n", - " \tID =\t242\n", - " \tName =\tiib_small_element_49.559\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-894 893 -895 896)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (243,\n", - " Cell\n", - " \tID =\t243\n", - " \tName =\tiib_small_element_51.193999999999996\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-898 897 -899 900)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (244,\n", - " Cell\n", - " \tID =\t244\n", - " \tName =\tiib_small_element_52.82899999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-902 901 -903 904)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (245,\n", - " Cell\n", - " \tID =\t245\n", - " \tName =\tiib_small_element_54.46399999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-906 905 -907 908)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (246,\n", - " Cell\n", - " \tID =\t246\n", - " \tName =\tiib_small_element_56.09899999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-910 909 -911 912)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (247,\n", - " Cell\n", - " \tID =\t247\n", - " \tName =\tiib_small_element_57.73399999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-914 913 -915 916)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (248,\n", - " Cell\n", - " \tID =\t248\n", - " \tName =\tiib_small_element_59.368999999999986\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-918 917 -919 920)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (249,\n", - " Cell\n", - " \tID =\t249\n", - " \tName =\tiib_small_element_61.003999999999984\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-922 921 -923 924)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (250,\n", - " Cell\n", - " \tID =\t250\n", - " \tName =\tiib_small_element_62.63899999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-926 925 -927 928)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (251,\n", - " Cell\n", - " \tID =\t251\n", - " \tName =\tiib_small_element_64.27399999999997\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-930 929 -931 932)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (252,\n", - " Cell\n", - " \tID =\t252\n", - " \tName =\tiib_small_element_65.90899999999996\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-934 933 -935 936)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (253,\n", - " Cell\n", - " \tID =\t253\n", - " \tName =\tiib_small_element_67.54399999999995\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-938 937 -939 940)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (254,\n", - " Cell\n", - " \tID =\t254\n", - " \tName =\tiib_small_element_69.17899999999995\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-942 941 -943 944)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (255,\n", - " Cell\n", - " \tID =\t255\n", - " \tName =\tiib_small_element_70.81399999999994\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-946 945 -947 948)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (256,\n", - " Cell\n", - " \tID =\t256\n", - " \tName =\tiib_small_element_72.44899999999993\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-950 949 -951 952)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (257,\n", - " Cell\n", - " \tID =\t257\n", - " \tName =\tiib_small_element_74.08399999999992\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-954 953 -955 956)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (258,\n", - " Cell\n", - " \tID =\t258\n", - " \tName =\tiib_small_element_75.71899999999991\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-958 957 -959 960)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (259,\n", - " Cell\n", - " \tID =\t259\n", - " \tName =\tiib_small_element_77.3539999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-962 961 -963 964)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (260,\n", - " Cell\n", - " \tID =\t260\n", - " \tName =\tiib_small_element_78.98899999999989\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-966 965 -967 968)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (261,\n", - " Cell\n", - " \tID =\t261\n", - " \tName =\tiib_small_element_80.62399999999988\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-970 969 -971 972)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (262,\n", - " Cell\n", - " \tID =\t262\n", - " \tName =\tiib_small_element_82.25899999999987\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-974 973 -975 976)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (263,\n", - " Cell\n", - " \tID =\t263\n", - " \tName =\tiib_small_element_83.89399999999986\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-978 977 -979 980)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (264,\n", - " Cell\n", - " \tID =\t264\n", - " \tName =\tiib_small_element_85.52899999999985\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-982 981 -983 984)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (265,\n", - " Cell\n", - " \tID =\t265\n", - " \tName =\tiib_large_element_90.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-986 985 -987 988 989)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (266,\n", - " Cell\n", - " \tID =\t266\n", - " \tName =\tiib_large_element_fuel_hole_90.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-989\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (267,\n", - " Cell\n", - " \tID =\t267\n", - " \tName =\tiib_small_element_90.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-991 990 -992 993)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (268,\n", - " Cell\n", - " \tID =\t268\n", - " \tName =\tiib_small_element_92.92399999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-995 994 -996 997)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (269,\n", - " Cell\n", - " \tID =\t269\n", - " \tName =\tiib_small_element_94.55899999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-999 998 -1000 1001)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (270,\n", - " Cell\n", - " \tID =\t270\n", - " \tName =\tiib_small_element_96.19399999999997\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1003 1002 -1004 1005)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (271,\n", - " Cell\n", - " \tID =\t271\n", - " \tName =\tiib_small_element_97.82899999999997\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1007 1006 -1008 1009)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (272,\n", - " Cell\n", - " \tID =\t272\n", - " \tName =\tiib_small_element_99.46399999999996\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1011 1010 -1012 1013)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (273,\n", - " Cell\n", - " \tID =\t273\n", - " \tName =\tiib_small_element_101.09899999999995\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1015 1014 -1016 1017)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (274,\n", - " Cell\n", - " \tID =\t274\n", - " \tName =\tiib_small_element_102.73399999999994\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1019 1018 -1020 1021)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (275,\n", - " Cell\n", - " \tID =\t275\n", - " \tName =\tiib_small_element_104.36899999999993\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1023 1022 -1024 1025)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (276,\n", - " Cell\n", - " \tID =\t276\n", - " \tName =\tiib_small_element_106.00399999999992\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1027 1026 -1028 1029)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (277,\n", - " Cell\n", - " \tID =\t277\n", - " \tName =\tiib_small_element_107.63899999999991\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1031 1030 -1032 1033)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (278,\n", - " Cell\n", - " \tID =\t278\n", - " \tName =\tiib_small_element_109.2739999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1035 1034 -1036 1037)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (279,\n", - " Cell\n", - " \tID =\t279\n", - " \tName =\tiib_small_element_110.90899999999989\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1039 1038 -1040 1041)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (280,\n", - " Cell\n", - " \tID =\t280\n", - " \tName =\tiib_small_element_112.54399999999988\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1043 1042 -1044 1045)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (281,\n", - " Cell\n", - " \tID =\t281\n", - " \tName =\tiib_small_element_114.17899999999987\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1047 1046 -1048 1049)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (282,\n", - " Cell\n", - " \tID =\t282\n", - " \tName =\tiib_small_element_115.81399999999987\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1051 1050 -1052 1053)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (283,\n", - " Cell\n", - " \tID =\t283\n", - " \tName =\tiib_small_element_117.44899999999986\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1055 1054 -1056 1057)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (284,\n", - " Cell\n", - " \tID =\t284\n", - " \tName =\tiib_small_element_119.08399999999985\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1059 1058 -1060 1061)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (285,\n", - " Cell\n", - " \tID =\t285\n", - " \tName =\tiib_small_element_120.71899999999984\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1063 1062 -1064 1065)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (286,\n", - " Cell\n", - " \tID =\t286\n", - " \tName =\tiib_small_element_122.35399999999983\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1067 1066 -1068 1069)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (287,\n", - " Cell\n", - " \tID =\t287\n", - " \tName =\tiib_small_element_123.98899999999982\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1071 1070 -1072 1073)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (288,\n", - " Cell\n", - " \tID =\t288\n", - " \tName =\tiib_small_element_125.62399999999981\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1075 1074 -1076 1077)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (289,\n", - " Cell\n", - " \tID =\t289\n", - " \tName =\tiib_small_element_127.2589999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1079 1078 -1080 1081)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (290,\n", - " Cell\n", - " \tID =\t290\n", - " \tName =\tiib_small_element_128.89399999999983\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1083 1082 -1084 1085)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (291,\n", - " Cell\n", - " \tID =\t291\n", - " \tName =\tiib_small_element_130.52899999999985\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1087 1086 -1088 1089)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (292,\n", - " Cell\n", - " \tID =\t292\n", - " \tName =\tiib_large_element_135.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1091 1090 -1092 1093 1094)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (293,\n", - " Cell\n", - " \tID =\t293\n", - " \tName =\tiib_large_element_fuel_hole_135.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-1094\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (294,\n", - " Cell\n", - " \tID =\t294\n", - " \tName =\tiib_small_element_135.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1096 1095 -1097 1098)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (295,\n", - " Cell\n", - " \tID =\t295\n", - " \tName =\tiib_small_element_137.92400000000004\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1100 1099 -1101 1102)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (296,\n", - " Cell\n", - " \tID =\t296\n", - " \tName =\tiib_small_element_139.55900000000005\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1104 1103 -1105 1106)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (297,\n", - " Cell\n", - " \tID =\t297\n", - " \tName =\tiib_small_element_141.19400000000007\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1108 1107 -1109 1110)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (298,\n", - " Cell\n", - " \tID =\t298\n", - " \tName =\tiib_small_element_142.8290000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1112 1111 -1113 1114)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (299,\n", - " Cell\n", - " \tID =\t299\n", - " \tName =\tiib_small_element_144.4640000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1116 1115 -1117 1118)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (300,\n", - " Cell\n", - " \tID =\t300\n", - " \tName =\tiib_small_element_146.09900000000013\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1120 1119 -1121 1122)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (301,\n", - " Cell\n", - " \tID =\t301\n", - " \tName =\tiib_small_element_147.73400000000015\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1124 1123 -1125 1126)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (302,\n", - " Cell\n", - " \tID =\t302\n", - " \tName =\tiib_small_element_149.36900000000017\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1128 1127 -1129 1130)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (303,\n", - " Cell\n", - " \tID =\t303\n", - " \tName =\tiib_small_element_151.0040000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1132 1131 -1133 1134)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (304,\n", - " Cell\n", - " \tID =\t304\n", - " \tName =\tiib_small_element_152.6390000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1136 1135 -1137 1138)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (305,\n", - " Cell\n", - " \tID =\t305\n", - " \tName =\tiib_small_element_154.27400000000023\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1140 1139 -1141 1142)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (306,\n", - " Cell\n", - " \tID =\t306\n", - " \tName =\tiib_small_element_155.90900000000025\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1144 1143 -1145 1146)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (307,\n", - " Cell\n", - " \tID =\t307\n", - " \tName =\tiib_small_element_157.54400000000027\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1148 1147 -1149 1150)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (308,\n", - " Cell\n", - " \tID =\t308\n", - " \tName =\tiib_small_element_159.1790000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1152 1151 -1153 1154)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (309,\n", - " Cell\n", - " \tID =\t309\n", - " \tName =\tiib_small_element_160.8140000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1156 1155 -1157 1158)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (310,\n", - " Cell\n", - " \tID =\t310\n", - " \tName =\tiib_small_element_162.44900000000032\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1160 1159 -1161 1162)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (311,\n", - " Cell\n", - " \tID =\t311\n", - " \tName =\tiib_small_element_164.08400000000034\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1164 1163 -1165 1166)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (312,\n", - " Cell\n", - " \tID =\t312\n", - " \tName =\tiib_small_element_165.71900000000036\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1168 1167 -1169 1170)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (313,\n", - " Cell\n", - " \tID =\t313\n", - " \tName =\tiib_small_element_167.35400000000038\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1172 1171 -1173 1174)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (314,\n", - " Cell\n", - " \tID =\t314\n", - " \tName =\tiib_small_element_168.9890000000004\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1176 1175 -1177 1178)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (315,\n", - " Cell\n", - " \tID =\t315\n", - " \tName =\tiib_small_element_170.62400000000042\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1180 1179 -1181 1182)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (316,\n", - " Cell\n", - " \tID =\t316\n", - " \tName =\tiib_small_element_172.25900000000044\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1184 1183 -1185 1186)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (317,\n", - " Cell\n", - " \tID =\t317\n", - " \tName =\tiib_small_element_173.89400000000046\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1188 1187 -1189 1190)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (318,\n", - " Cell\n", - " \tID =\t318\n", - " \tName =\tiib_small_element_175.52900000000048\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1192 1191 -1193 1194)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (319,\n", - " Cell\n", - " \tID =\t319\n", - " \tName =\tiib_large_element_180.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1196 1195 -1197 1198 1199)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (320,\n", - " Cell\n", - " \tID =\t320\n", - " \tName =\tiib_large_element_fuel_hole_180.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-1199\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (321,\n", - " Cell\n", - " \tID =\t321\n", - " \tName =\tiib_small_element_180.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1201 1200 -1202 1203)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (322,\n", - " Cell\n", - " \tID =\t322\n", - " \tName =\tiib_small_element_182.92400000000004\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1205 1204 -1206 1207)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (323,\n", - " Cell\n", - " \tID =\t323\n", - " \tName =\tiib_small_element_184.55900000000005\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1209 1208 -1210 1211)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (324,\n", - " Cell\n", - " \tID =\t324\n", - " \tName =\tiib_small_element_186.19400000000007\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1213 1212 -1214 1215)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (325,\n", - " Cell\n", - " \tID =\t325\n", - " \tName =\tiib_small_element_187.8290000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1217 1216 -1218 1219)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (326,\n", - " Cell\n", - " \tID =\t326\n", - " \tName =\tiib_small_element_189.4640000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1221 1220 -1222 1223)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (327,\n", - " Cell\n", - " \tID =\t327\n", - " \tName =\tiib_small_element_191.09900000000013\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1225 1224 -1226 1227)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (328,\n", - " Cell\n", - " \tID =\t328\n", - " \tName =\tiib_small_element_192.73400000000015\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1229 1228 -1230 1231)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (329,\n", - " Cell\n", - " \tID =\t329\n", - " \tName =\tiib_small_element_194.36900000000017\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1233 1232 -1234 1235)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (330,\n", - " Cell\n", - " \tID =\t330\n", - " \tName =\tiib_small_element_196.0040000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1237 1236 -1238 1239)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (331,\n", - " Cell\n", - " \tID =\t331\n", - " \tName =\tiib_small_element_197.6390000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1241 1240 -1242 1243)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (332,\n", - " Cell\n", - " \tID =\t332\n", - " \tName =\tiib_small_element_199.27400000000023\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1245 1244 -1246 1247)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (333,\n", - " Cell\n", - " \tID =\t333\n", - " \tName =\tiib_small_element_200.90900000000025\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1249 1248 -1250 1251)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (334,\n", - " Cell\n", - " \tID =\t334\n", - " \tName =\tiib_small_element_202.54400000000027\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1253 1252 -1254 1255)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (335,\n", - " Cell\n", - " \tID =\t335\n", - " \tName =\tiib_small_element_204.1790000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1257 1256 -1258 1259)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (336,\n", - " Cell\n", - " \tID =\t336\n", - " \tName =\tiib_small_element_205.8140000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1261 1260 -1262 1263)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (337,\n", - " Cell\n", - " \tID =\t337\n", - " \tName =\tiib_small_element_207.44900000000032\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1265 1264 -1266 1267)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (338,\n", - " Cell\n", - " \tID =\t338\n", - " \tName =\tiib_small_element_209.08400000000034\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1269 1268 -1270 1271)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (339,\n", - " Cell\n", - " \tID =\t339\n", - " \tName =\tiib_small_element_210.71900000000036\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1273 1272 -1274 1275)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (340,\n", - " Cell\n", - " \tID =\t340\n", - " \tName =\tiib_small_element_212.35400000000038\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1277 1276 -1278 1279)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (341,\n", - " Cell\n", - " \tID =\t341\n", - " \tName =\tiib_small_element_213.9890000000004\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1281 1280 -1282 1283)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (342,\n", - " Cell\n", - " \tID =\t342\n", - " \tName =\tiib_small_element_215.62400000000042\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1285 1284 -1286 1287)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (343,\n", - " Cell\n", - " \tID =\t343\n", - " \tName =\tiib_small_element_217.25900000000044\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1289 1288 -1290 1291)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (344,\n", - " Cell\n", - " \tID =\t344\n", - " \tName =\tiib_small_element_218.89400000000046\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1293 1292 -1294 1295)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (345,\n", - " Cell\n", - " \tID =\t345\n", - " \tName =\tiib_small_element_220.52900000000048\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1297 1296 -1298 1299)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (346,\n", - " Cell\n", - " \tID =\t346\n", - " \tName =\tiib_large_element_225.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1301 1300 -1302 1303 1304)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (347,\n", - " Cell\n", - " \tID =\t347\n", - " \tName =\tiib_large_element_fuel_hole_225.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-1304\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (348,\n", - " Cell\n", - " \tID =\t348\n", - " \tName =\tiib_small_element_225.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1306 1305 -1307 1308)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (349,\n", - " Cell\n", - " \tID =\t349\n", - " \tName =\tiib_small_element_227.92400000000004\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1310 1309 -1311 1312)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (350,\n", - " Cell\n", - " \tID =\t350\n", - " \tName =\tiib_small_element_229.55900000000005\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1314 1313 -1315 1316)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (351,\n", - " Cell\n", - " \tID =\t351\n", - " \tName =\tiib_small_element_231.19400000000007\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1318 1317 -1319 1320)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (352,\n", - " Cell\n", - " \tID =\t352\n", - " \tName =\tiib_small_element_232.8290000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1322 1321 -1323 1324)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (353,\n", - " Cell\n", - " \tID =\t353\n", - " \tName =\tiib_small_element_234.4640000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1326 1325 -1327 1328)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (354,\n", - " Cell\n", - " \tID =\t354\n", - " \tName =\tiib_small_element_236.09900000000013\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1330 1329 -1331 1332)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (355,\n", - " Cell\n", - " \tID =\t355\n", - " \tName =\tiib_small_element_237.73400000000015\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1334 1333 -1335 1336)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (356,\n", - " Cell\n", - " \tID =\t356\n", - " \tName =\tiib_small_element_239.36900000000017\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1338 1337 -1339 1340)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (357,\n", - " Cell\n", - " \tID =\t357\n", - " \tName =\tiib_small_element_241.0040000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1342 1341 -1343 1344)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (358,\n", - " Cell\n", - " \tID =\t358\n", - " \tName =\tiib_small_element_242.6390000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1346 1345 -1347 1348)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (359,\n", - " Cell\n", - " \tID =\t359\n", - " \tName =\tiib_small_element_244.27400000000023\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1350 1349 -1351 1352)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (360,\n", - " Cell\n", - " \tID =\t360\n", - " \tName =\tiib_small_element_245.90900000000025\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1354 1353 -1355 1356)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (361,\n", - " Cell\n", - " \tID =\t361\n", - " \tName =\tiib_small_element_247.54400000000027\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1358 1357 -1359 1360)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (362,\n", - " Cell\n", - " \tID =\t362\n", - " \tName =\tiib_small_element_249.1790000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1362 1361 -1363 1364)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (363,\n", - " Cell\n", - " \tID =\t363\n", - " \tName =\tiib_small_element_250.8140000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1366 1365 -1367 1368)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (364,\n", - " Cell\n", - " \tID =\t364\n", - " \tName =\tiib_small_element_252.44900000000032\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1370 1369 -1371 1372)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (365,\n", - " Cell\n", - " \tID =\t365\n", - " \tName =\tiib_small_element_254.08400000000034\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1374 1373 -1375 1376)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (366,\n", - " Cell\n", - " \tID =\t366\n", - " \tName =\tiib_small_element_255.71900000000036\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1378 1377 -1379 1380)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (367,\n", - " Cell\n", - " \tID =\t367\n", - " \tName =\tiib_small_element_257.3540000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1382 1381 -1383 1384)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (368,\n", - " Cell\n", - " \tID =\t368\n", - " \tName =\tiib_small_element_258.9890000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1386 1385 -1387 1388)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (369,\n", - " Cell\n", - " \tID =\t369\n", - " \tName =\tiib_small_element_260.6240000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1390 1389 -1391 1392)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (370,\n", - " Cell\n", - " \tID =\t370\n", - " \tName =\tiib_small_element_262.2590000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1394 1393 -1395 1396)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (371,\n", - " Cell\n", - " \tID =\t371\n", - " \tName =\tiib_small_element_263.8940000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1398 1397 -1399 1400)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (372,\n", - " Cell\n", - " \tID =\t372\n", - " \tName =\tiib_small_element_265.5290000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1402 1401 -1403 1404)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (373,\n", - " Cell\n", - " \tID =\t373\n", - " \tName =\tiib_large_element_270.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1406 1405 -1407 1408 1409)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (374,\n", - " Cell\n", - " \tID =\t374\n", - " \tName =\tiib_large_element_fuel_hole_270.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-1409\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (375,\n", - " Cell\n", - " \tID =\t375\n", - " \tName =\tiib_small_element_270.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1411 1410 -1412 1413)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (376,\n", - " Cell\n", - " \tID =\t376\n", - " \tName =\tiib_small_element_272.924\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1415 1414 -1416 1417)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (377,\n", - " Cell\n", - " \tID =\t377\n", - " \tName =\tiib_small_element_274.55899999999997\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1419 1418 -1420 1421)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (378,\n", - " Cell\n", - " \tID =\t378\n", - " \tName =\tiib_small_element_276.19399999999996\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1423 1422 -1424 1425)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (379,\n", - " Cell\n", - " \tID =\t379\n", - " \tName =\tiib_small_element_277.82899999999995\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1427 1426 -1428 1429)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (380,\n", - " Cell\n", - " \tID =\t380\n", - " \tName =\tiib_small_element_279.46399999999994\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1431 1430 -1432 1433)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (381,\n", - " Cell\n", - " \tID =\t381\n", - " \tName =\tiib_small_element_281.09899999999993\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1435 1434 -1436 1437)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (382,\n", - " Cell\n", - " \tID =\t382\n", - " \tName =\tiib_small_element_282.7339999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1439 1438 -1440 1441)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (383,\n", - " Cell\n", - " \tID =\t383\n", - " \tName =\tiib_small_element_284.3689999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1443 1442 -1444 1445)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (384,\n", - " Cell\n", - " \tID =\t384\n", - " \tName =\tiib_small_element_286.0039999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1447 1446 -1448 1449)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (385,\n", - " Cell\n", - " \tID =\t385\n", - " \tName =\tiib_small_element_287.6389999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1451 1450 -1452 1453)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (386,\n", - " Cell\n", - " \tID =\t386\n", - " \tName =\tiib_small_element_289.2739999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1455 1454 -1456 1457)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (387,\n", - " Cell\n", - " \tID =\t387\n", - " \tName =\tiib_small_element_290.9089999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1459 1458 -1460 1461)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (388,\n", - " Cell\n", - " \tID =\t388\n", - " \tName =\tiib_small_element_292.54399999999987\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1463 1462 -1464 1465)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (389,\n", - " Cell\n", - " \tID =\t389\n", - " \tName =\tiib_small_element_294.17899999999986\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1467 1466 -1468 1469)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (390,\n", - " Cell\n", - " \tID =\t390\n", - " \tName =\tiib_small_element_295.81399999999985\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1471 1470 -1472 1473)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (391,\n", - " Cell\n", - " \tID =\t391\n", - " \tName =\tiib_small_element_297.44899999999984\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1475 1474 -1476 1477)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (392,\n", - " Cell\n", - " \tID =\t392\n", - " \tName =\tiib_small_element_299.08399999999983\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1479 1478 -1480 1481)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (393,\n", - " Cell\n", - " \tID =\t393\n", - " \tName =\tiib_small_element_300.7189999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1483 1482 -1484 1485)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (394,\n", - " Cell\n", - " \tID =\t394\n", - " \tName =\tiib_small_element_302.3539999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1487 1486 -1488 1489)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (395,\n", - " Cell\n", - " \tID =\t395\n", - " \tName =\tiib_small_element_303.9889999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1491 1490 -1492 1493)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (396,\n", - " Cell\n", - " \tID =\t396\n", - " \tName =\tiib_small_element_305.6239999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1495 1494 -1496 1497)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (397,\n", - " Cell\n", - " \tID =\t397\n", - " \tName =\tiib_small_element_307.2589999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1499 1498 -1500 1501)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (398,\n", - " Cell\n", - " \tID =\t398\n", - " \tName =\tiib_small_element_308.8939999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1503 1502 -1504 1505)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (399,\n", - " Cell\n", - " \tID =\t399\n", - " \tName =\tiib_small_element_310.52899999999977\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1507 1506 -1508 1509)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (400,\n", - " Cell\n", - " \tID =\t400\n", - " \tName =\tiib_large_element_315.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1511 1510 -1512 1513 1514)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (401,\n", - " Cell\n", - " \tID =\t401\n", - " \tName =\tiib_large_element_fuel_hole_315.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-1514\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (402,\n", - " Cell\n", - " \tID =\t402\n", - " \tName =\tiib_small_element_315.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1516 1515 -1517 1518)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (403,\n", - " Cell\n", - " \tID =\t403\n", - " \tName =\tiib_small_element_317.924\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1520 1519 -1521 1522)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (404,\n", - " Cell\n", - " \tID =\t404\n", - " \tName =\tiib_small_element_319.55899999999997\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1524 1523 -1525 1526)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (405,\n", - " Cell\n", - " \tID =\t405\n", - " \tName =\tiib_small_element_321.19399999999996\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1528 1527 -1529 1530)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (406,\n", - " Cell\n", - " \tID =\t406\n", - " \tName =\tiib_small_element_322.82899999999995\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1532 1531 -1533 1534)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (407,\n", - " Cell\n", - " \tID =\t407\n", - " \tName =\tiib_small_element_324.46399999999994\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1536 1535 -1537 1538)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (408,\n", - " Cell\n", - " \tID =\t408\n", - " \tName =\tiib_small_element_326.09899999999993\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1540 1539 -1541 1542)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (409,\n", - " Cell\n", - " \tID =\t409\n", - " \tName =\tiib_small_element_327.7339999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1544 1543 -1545 1546)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (410,\n", - " Cell\n", - " \tID =\t410\n", - " \tName =\tiib_small_element_329.3689999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1548 1547 -1549 1550)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (411,\n", - " Cell\n", - " \tID =\t411\n", - " \tName =\tiib_small_element_331.0039999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1552 1551 -1553 1554)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (412,\n", - " Cell\n", - " \tID =\t412\n", - " \tName =\tiib_small_element_332.6389999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1556 1555 -1557 1558)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (413,\n", - " Cell\n", - " \tID =\t413\n", - " \tName =\tiib_small_element_334.2739999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1560 1559 -1561 1562)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (414,\n", - " Cell\n", - " \tID =\t414\n", - " \tName =\tiib_small_element_335.9089999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1564 1563 -1565 1566)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (415,\n", - " Cell\n", - " \tID =\t415\n", - " \tName =\tiib_small_element_337.54399999999987\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1568 1567 -1569 1570)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (416,\n", - " Cell\n", - " \tID =\t416\n", - " \tName =\tiib_small_element_339.17899999999986\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1572 1571 -1573 1574)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (417,\n", - " Cell\n", - " \tID =\t417\n", - " \tName =\tiib_small_element_340.81399999999985\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1576 1575 -1577 1578)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (418,\n", - " Cell\n", - " \tID =\t418\n", - " \tName =\tiib_small_element_342.44899999999984\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1580 1579 -1581 1582)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (419,\n", - " Cell\n", - " \tID =\t419\n", - " \tName =\tiib_small_element_344.08399999999983\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1584 1583 -1585 1586)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (420,\n", - " Cell\n", - " \tID =\t420\n", - " \tName =\tiib_small_element_345.7189999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1588 1587 -1589 1590)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (421,\n", - " Cell\n", - " \tID =\t421\n", - " \tName =\tiib_small_element_347.3539999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1592 1591 -1593 1594)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (422,\n", - " Cell\n", - " \tID =\t422\n", - " \tName =\tiib_small_element_348.9889999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1596 1595 -1597 1598)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (423,\n", - " Cell\n", - " \tID =\t423\n", - " \tName =\tiib_small_element_350.6239999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1600 1599 -1601 1602)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (424,\n", - " Cell\n", - " \tID =\t424\n", - " \tName =\tiib_small_element_352.2589999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1604 1603 -1605 1606)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (425,\n", - " Cell\n", - " \tID =\t425\n", - " \tName =\tiib_small_element_353.8939999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1608 1607 -1609 1610)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (426,\n", - " Cell\n", - " \tID =\t426\n", - " \tName =\tiib_small_element_355.52899999999977\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1612 1611 -1613 1614)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (427,\n", - " Cell\n", - " \tID =\t427\n", - " \tName =\tiib_fuel\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(~((-776 775 -777 778) | (-781 780 -782 783) | (-785 784 -786 787) | (-789 788 -790 791) | (-793 792 -794 795) | (-797 796 -798 799) | (-801 800 -802 803) | (-805 804 -806 807) | (-809 808 -810 811) | (-813 812 -814 815) | (-817 816 -818 819) | (-821 820 -822 823) | (-825 824 -826 827) | (-829 828 -830 831) | (-833 832 -834 835) | (-837 836 -838 839) | (-841 840 -842 843) | (-845 844 -846 847) | (-849 848 -850 851) | (-853 852 -854 855) | (-857 856 -858 859) | (-861 860 -862 863) | (-865 864 -866 867) | (-869 868 -870 871) | (-873 872 -874 875) | (-877 876 -878 879) | (-881 880 -882 883) | (-886 885 -887 888) | (-890 889 -891 892) | (-894 893 -895 896) | (-898 897 -899 900) | (-902 901 -903 904) | (-906 905 -907 908) | (-910 909 -911 912) | (-914 913 -915 916) | (-918 917 -919 920) | (-922 921 -923 924) | (-926 925 -927 928) | (-930 929 -931 932) | (-934 933 -935 936) | (-938 937 -939 940) | (-942 941 -943 944) | (-946 945 -947 948) | (-950 949 -951 952) | (-954 953 -955 956) | (-958 957 -959 960) | (-962 961 -963 964) | (-966 965 -967 968) | (-970 969 -971 972) | (-974 973 -975 976) | (-978 977 -979 980) | (-982 981 -983 984) | (-986 985 -987 988) | (-991 990 -992 993) | (-995 994 -996 997) | (-999 998 -1000 1001) | (-1003 1002 -1004 1005) | (-1007 1006 -1008 1009) | (-1011 1010 -1012 1013) | (-1015 1014 -1016 1017) | (-1019 1018 -1020 1021) | (-1023 1022 -1024 1025) | (-1027 1026 -1028 1029) | (-1031 1030 -1032 1033) | (-1035 1034 -1036 1037) | (-1039 1038 -1040 1041) | (-1043 1042 -1044 1045) | (-1047 1046 -1048 1049) | (-1051 1050 -1052 1053) | (-1055 1054 -1056 1057) | (-1059 1058 -1060 1061) | (-1063 1062 -1064 1065) | (-1067 1066 -1068 1069) | (-1071 1070 -1072 1073) | (-1075 1074 -1076 1077) | (-1079 1078 -1080 1081) | (-1083 1082 -1084 1085) | (-1087 1086 -1088 1089) | (-1091 1090 -1092 1093) | (-1096 1095 -1097 1098) | (-1100 1099 -1101 1102) | (-1104 1103 -1105 1106) | (-1108 1107 -1109 1110) | (-1112 1111 -1113 1114) | (-1116 1115 -1117 1118) | (-1120 1119 -1121 1122) | (-1124 1123 -1125 1126) | (-1128 1127 -1129 1130) | (-1132 1131 -1133 1134) | (-1136 1135 -1137 1138) | (-1140 1139 -1141 1142) | (-1144 1143 -1145 1146) | (-1148 1147 -1149 1150) | (-1152 1151 -1153 1154) | (-1156 1155 -1157 1158) | (-1160 1159 -1161 1162) | (-1164 1163 -1165 1166) | (-1168 1167 -1169 1170) | (-1172 1171 -1173 1174) | (-1176 1175 -1177 1178) | (-1180 1179 -1181 1182) | (-1184 1183 -1185 1186) | (-1188 1187 -1189 1190) | (-1192 1191 -1193 1194) | (-1196 1195 -1197 1198) | (-1201 1200 -1202 1203) | (-1205 1204 -1206 1207) | (-1209 1208 -1210 1211) | (-1213 1212 -1214 1215) | (-1217 1216 -1218 1219) | (-1221 1220 -1222 1223) | (-1225 1224 -1226 1227) | (-1229 1228 -1230 1231) | (-1233 1232 -1234 1235) | (-1237 1236 -1238 1239) | (-1241 1240 -1242 1243) | (-1245 1244 -1246 1247) | (-1249 1248 -1250 1251) | (-1253 1252 -1254 1255) | (-1257 1256 -1258 1259) | (-1261 1260 -1262 1263) | (-1265 1264 -1266 1267) | (-1269 1268 -1270 1271) | (-1273 1272 -1274 1275) | (-1277 1276 -1278 1279) | (-1281 1280 -1282 1283) | (-1285 1284 -1286 1287) | (-1289 1288 -1290 1291) | (-1293 1292 -1294 1295) | (-1297 1296 -1298 1299) | (-1301 1300 -1302 1303) | (-1306 1305 -1307 1308) | (-1310 1309 -1311 1312) | (-1314 1313 -1315 1316) | (-1318 1317 -1319 1320) | (-1322 1321 -1323 1324) | (-1326 1325 -1327 1328) | (-1330 1329 -1331 1332) | (-1334 1333 -1335 1336) | (-1338 1337 -1339 1340) | (-1342 1341 -1343 1344) | (-1346 1345 -1347 1348) | (-1350 1349 -1351 1352) | (-1354 1353 -1355 1356) | (-1358 1357 -1359 1360) | (-1362 1361 -1363 1364) | (-1366 1365 -1367 1368) | (-1370 1369 -1371 1372) | (-1374 1373 -1375 1376) | (-1378 1377 -1379 1380) | (-1382 1381 -1383 1384) | (-1386 1385 -1387 1388) | (-1390 1389 -1391 1392) | (-1394 1393 -1395 1396) | (-1398 1397 -1399 1400) | (-1402 1401 -1403 1404) | (-1406 1405 -1407 1408) | (-1411 1410 -1412 1413) | (-1415 1414 -1416 1417) | (-1419 1418 -1420 1421) | (-1423 1422 -1424 1425) | (-1427 1426 -1428 1429) | (-1431 1430 -1432 1433) | (-1435 1434 -1436 1437) | (-1439 1438 -1440 1441) | (-1443 1442 -1444 1445) | (-1447 1446 -1448 1449) | (-1451 1450 -1452 1453) | (-1455 1454 -1456 1457) | (-1459 1458 -1460 1461) | (-1463 1462 -1464 1465) | (-1467 1466 -1468 1469) | (-1471 1470 -1472 1473) | (-1475 1474 -1476 1477) | (-1479 1478 -1480 1481) | (-1483 1482 -1484 1485) | (-1487 1486 -1488 1489) | (-1491 1490 -1492 1493) | (-1495 1494 -1496 1497) | (-1499 1498 -1500 1501) | (-1503 1502 -1504 1505) | (-1507 1506 -1508 1509) | (-1511 1510 -1512 1513) | (-1516 1515 -1517 1518) | (-1520 1519 -1521 1522) | (-1524 1523 -1525 1526) | (-1528 1527 -1529 1530) | (-1532 1531 -1533 1534) | (-1536 1535 -1537 1538) | (-1540 1539 -1541 1542) | (-1544 1543 -1545 1546) | (-1548 1547 -1549 1550) | (-1552 1551 -1553 1554) | (-1556 1555 -1557 1558) | (-1560 1559 -1561 1562) | (-1564 1563 -1565 1566) | (-1568 1567 -1569 1570) | (-1572 1571 -1573 1574) | (-1576 1575 -1577 1578) | (-1580 1579 -1581 1582) | (-1584 1583 -1585 1586) | (-1588 1587 -1589 1590) | (-1592 1591 -1593 1594) | (-1596 1595 -1597 1598) | (-1600 1599 -1601 1602) | (-1604 1603 -1605 1606) | (-1608 1607 -1609 1610) | (-1612 1611 -1613 1614)) ~((-477 478 -479 480 481 482 -483 -484) | (-485 486 -487 488 489 490 -491 -492) | (-493 494 -495 496 497 498 -499 -500)) -501 475 -476)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone)])" + "" ] }, - "execution_count": 21, + "execution_count": 20, "metadata": {}, "output_type": "execute_result" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABCsAAAQTCAYAAABN4qORAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/NK7nSAAAACXBIWXMAAA9hAAAPYQGoP6dpAACV9klEQVR4nO3df7AmV10n/s9NSCYhZMaEwUzGDJLll+IgK8G1ArpJ+BG0+JV1FTW1SFZ0DRCsbIKyCbXOXOoLQYhBKwjCrgWWCNEqyIIrsIkGE1kEQwxLAiu7IpCEZMwKcSYEmIHwfP+43nv7ee7zo3/36X5er6opyL3dp/veeab79LvP+ZyV0Wg0CgAAAIBEHNX1CQAAAABkCSsAAACApAgrAAAAgKQIKwAAAICkCCsAAACApAgrAAAAgKQIKwAAAICkPKTrE2jDd77znbj77rvjxBNPjJWVla5PBwAAAJbSaDSK+++/P3bv3h1HHTV7/MRShBV333137Nmzp+vTAAAAACLizjvvjNNOO23m95cirDjxxBMjYu2XsX379o7PBgAAAJbToUOHYs+ePRvP6bMsRVixPvVj+/btwgoAAADo2KISDQpsAgAAAEkRVgAAAABJEVYAAAAASRFWAAAAAEkRVgAAAABJEVYAAAAASRFWAAAAAEkRVgAAAABJEVYAAAAASRFWAAAAAEkRVgAAAABJEVYAAAAASRFWAAAAAEkRVgAAAABJEVYAAAAASRFWAAAAAEkRVgAAAABJEVYAAAAASRFWAAAAAEkRVgAAAABJEVYAAAAASRFWAAAAAEkRVgAAAABJEVYAAAAASRFWAAAAAEkRVgAAAABJEVYAAAAASRFWAAAAAEkRVgAAAABJEVYAAAAASRFWAAAAAEkRVgAAAABJEVYAAAAASRFWAAAAAEkRVgAAAABJEVYAAAAASRFWAAAAAEkRVgAAAABJEVYAAAAASRFWAAAAAEkRVgAAAABJEVYAAAAASRFWAAAAAEkRVgAAAABJEVYAAAAASRFWAAAAAEkRVgAAAABJEVYAAAAASRFWAAAAAEkRVgAAAABJEVYAAAAASRFWAAAAAEkRVgAAAABJEVYAAAAASRFWAAAAAEkRVgAAAABJEVYAAAAASRFWAAAAAEkRVgAAAABJEVYAAAAASRFWAAAAAEkRVgAAAABJEVYAAAAASRFWAAAAAEkRVgAAAABJaTSseOtb3xo/+IM/GNu3b4/t27fHmWeeGR/60Ic2vj8ajWL//v2xe/fuOP744+Pss8+Oz3zmM2NtHD58OF7xilfEzp0744QTTojnP//5cddddzV52gAAAECHGg0rTjvttHj9618fn/zkJ+OTn/xkPP3pT48XvOAFG4HEG97whrjqqqvizW9+c9x8882xa9eueNaznhX333//RhsXX3xxXHvttXHNNdfERz/60fja174Wz33uc+PBBx9s8tQBAACAjqyMRqNRmwc8+eST441vfGP8wi/8QuzevTsuvvjieNWrXhURa6MoTjnllPiN3/iN+OVf/uU4ePBgPOIRj4g/+IM/iJ/5mZ+JiIi777479uzZEx/84Afj2c9+dq5jHjp0KHbs2BEHDx6M7du3N/azAQAAALPlfT5vrWbFgw8+GNdcc0088MADceaZZ8YXvvCFOHDgQJx77rkb22zbti3OOuus+NjHPhYREbfcckt861vfGttm9+7dsXfv3o1tpjl8+HAcOnRo7A8AAADQD42HFbfddls87GEPi23btsWFF14Y1157bTzhCU+IAwcORETEKaecMrb9KaecsvG9AwcOxLHHHhsnnXTSzG2mueKKK2LHjh0bf/bs2VPzTwUAAAA0pfGw4vGPf3x86lOfio9//OPx0pe+NF784hfHZz/72Y3vr6ysjG0/Go22fG3Som0uu+yyOHjw4MafO++8s9oPAQAAALSm8bDi2GOPjcc85jHxlKc8Ja644op40pOeFL/9278du3btiojYMkLi3nvv3RhtsWvXrjhy5Ejcd999M7eZZtu2bRsrkKz/AQAAAPqhtZoV60ajURw+fDhOP/302LVrV1x//fUb3zty5EjceOON8dSnPjUiIs4444w45phjxra555574vbbb9/YBgAAABiWhzTZ+OWXXx4/8RM/EXv27In7778/rrnmmviLv/iL+PCHPxwrKytx8cUXx+te97p47GMfG4997GPjda97XTz0oQ+N888/PyIiduzYES95yUvi0ksvjYc//OFx8sknxytf+cp44hOfGM985jObPHUAAACgI42GFf/wD/8QL3rRi+Kee+6JHTt2xA/+4A/Ghz/84XjWs54VERG/9mu/Ft/4xjfiZS97Wdx3333xIz/yI3HdddfFiSeeuNHGm970pnjIQx4SL3zhC+Mb3/hG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K1/5Srz4xS+On/zJn4yrr7564wd53OMeF+ecc068+tWvjv/zf/5PXHDBBbFv37649NJLc52HsIJUzAsr2pin2K+QYp2wAgCYZevLS6HF/GMIK+haEmHFune+851x8cUXbwkrPvShD8Vzn/vcuPPOO2P37t0REXHNNdfEBRdcEPfee29s37493vrWt8Zll10W//AP/xDbtm2LiIjXv/71cfXVV8ddd92Va3SFsIKUFK1WPb5v/m2LHiO9kCJLYAEATKpvafi+hRZ52588hqCCFPQirPj1X//1eP/73x//63/9r42v3XfffXHyySfHDTfcEOecc078/M//fBw8eDDe//73b2xz6623xpOf/OT4+7//+zj99NO3HO/w4cNx+PDhjf8+dOhQ7NmzR1hBEtbDiu7X1i7ffnshxVpbbqwAwKS8fao6+yVF28vbZpl2i7a/xgsgupc3rHhIi+e0xYEDB+KUU04Z+9pJJ50Uxx57bBw4cGBjm0c96lFj26zvc+DAgalhxRVXXBGrq+VXXoAmrT14Lx4RlFohpjxtN/UGY3VlVWABAGzIjlRd7zPM6lusfz1PP2VRW0Xby9tmmXaLti+ooG8KhxX79+9fGATcfPPN8ZSnPCVXe9OmcYxGo7GvT26zPhhk1hSQyy67LC655JKN/14fWQF9IKSY/n2BBQAQMbsGmNBic/tioy0gTYXDiosuuih+9md/du42kyMhZtm1a1d84hOfGPvafffdF9/61rc2Rk/s2rVrY5TFunvvvTciYsuojHXbtm3bqG8BfTH0kGJRe1WmuwAArMsTWtQZMJQNLepud9oxhBb0WeGwYufOnbFz585aDn7mmWfGa1/72rjnnnvi1FNPjYiI6667LrZt2xZnnHHGxjaXX355HDlyZGM50+uuuy52796dOxSB9IwiYqX1okp1td1dSLEShjACwDJbiX2j6qMjmhgVUSZcaKrdre0bnUr/NFpg84477oivfvWr8YEPfCDe+MY3xl/+5V9GRMRjHvOYeNjDHraxdOkpp5wSb3zjG+OrX/1qXHDBBXHeeedtLF168ODBePzjHx9Pf/rT4/LLL4//+3//b1xwwQXx67/+65YupdfmLWM6T1dFM8u0W1foMd6OsAIAltf4NPByfYmtmiia2VR/rEzbwgpSksRqIBdccEH8/u///pavf+QjH4mzzz47ItYC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+cg47rjj4tRTT40XvehFcffdd49tc8cdd8Tznve8OOGEE2Lnzp3xK7/yK3HkyJGxbW677bY466yz4vjjj4/v+Z7vide85jUxGo2aPHUAAACgI42GFeecc0788R//cXzuc5+L9773vfH5z38+fuqnfmrj+w8++GA85znPiQceeCA++tGPxjXXXBPvfe9749JLL93Y5tChQ/GsZz0rdu/eHTfffHNcffXVceWVV8ZVV13V5KkDAAAAHVkZtThE4QMf+ECcd955cfjw4TjmmGPiQx/6UDz3uc+NO++8M3bv3h0REddcc01ccMEFce+998b27dvjrW99a1x22WXxD//wD7Ft27aIiHj9618fV199ddx1112xsrKy8LiHDh2KHTt2xMGDB2P79u2N/owAAADAdHmfz1urWfHVr341/vAP/zCe+tSnxjHHHBMREX/1V38Ve/fu3QgqIiKe/exnx+HDh+OWW27Z2Oass87aCCrWt7n77rvji1/84tRjHT58OA4dOjT2BwAAAOiHxsOKV73qVXHCCSfEwx/+8Ljjjjvi/e9//8b3Dhw4EKeccsrY9ieddFIce+yxceDAgZnbrP/3+jaTrrjiitixY8fGnz179tT5IwEAAAANKhxW7N+/P1ZWVub++eQnP7mx/a/+6q/GrbfeGtddd10cffTR8fM///NjxTGnTeMYjUZjX5/cZn3/WVNALrvssjh48ODGnzvvvLPojwkAAAB05CFFd7joooviZ3/2Z+du86hHPWrj/+/cuTN27twZj3vc4+L7v//7Y8+ePfHxj388zjzzzNi1a1d84hOfGNv3vvvui29961sboyd27dq1ZQTFvffeGxGxZcTFum3bto1NGwEAAAD6o3BYsR4+lLE+IuLw4cMREXHmmWfGa1/72rjnnnvi1FNPjYiI6667LrZt2xZnnHHGxjaXX355HDlyJI499tiNbXbv3j0WigAAAADD0FjNir/+67+ON7/5zfGpT30qvvSlL8VHPvKROP/88+PRj350nHnmmRERce6558YTnvCEeNGLXhS33npr/Pmf/3m88pWvjF/6pV/aqAp6/vnnx7Zt2+KCCy6I22+/Pa699tp43eteF5dcckmulUAAAACAfmksrDj++OPjfe97XzzjGc+Ixz/+8fELv/ALsXfv3rjxxhs3pmgcffTR8ad/+qdx3HHHxdOe9rR44QtfGOedd15ceeWVG+3s2LEjrr/++rjrrrviKU95SrzsZS+LSy65JC655JKmTh0AAADo0MooW+1yoPKu4woAAAA0J+/zeeNLlwIAAAAUIawAAAAAkiKsAAAAAJIirAAAAACSIqwAAAAAkiKsAAAAAJIirAAAAACSIqwAAAAAkiKsAAAAAJIirAAAAACSIqwAAAAAkiKsAAAAAJIirAAAAACSIqwAAAAAkiKsAAAAAJIirAAAAACSIqwAAAAAkiKsAAAAAJIirAAAAACSIqwAAAAAkiKsAAAAAJIirAAAAACSIqwAAAAAkiKsAAAAAJIirAAAAACSIqwAAAAAkiKsAAAAAJIirAAAAACSIqwAAAAAkiKsAAAAAJIirAAAAACSIqwAAAAAkiKsAAAAAJIirAAAAACSIqwAAAAAkiKsAAAAAJIirAAAAACSIqwAAAAAkiKsAAAAAJIirAAAAACSIqwAAAAAkiKsAAAAAJIirAAAAACSIqwAAAAAkiKsAAAAAJIirAAAAACSIqwAAAAAkiKsAAAAAJIirAAAAACSIqwAAAAAkiKsAAAAAJIirAAAAACSIqwAAAAAkiKsAAAAAJIirAAAAACSIqwAAAAAkiKsAAAAAJIirAAAAACSIqwAAAAAkiKsAAAAAJIirAAAAACSIqwAAAAAkiKsAAAAAJLykK5PoA2j0SgiIg4dOtTxmQAAAMDyWn8uX39On2Upwor7778/IiL27NnT8ZkAAAAA999/f+zYsWPm91dGi+KMAfjOd74Td999d5x44omxsrLS9ekk5dChQ7Fnz5648847Y/v27V2fDj3is0NZPjuU5bNDWT47lOWzQ1k+O7ONRqO4//77Y/fu3XHUUbMrUyzFyIqjjjoqTjvttK5PI2nbt2/3j4hSfHYoy2eHsnx2KMtnh7J8dijLZ2e6eSMq1imwCQAAACRFWAEAAAAkRVix5LZt2xb79u2Lbdu2dX0q9IzPDmX57FCWzw5l+exQls8OZfnsVLcUBTYBAACA/jCyAgAAAEiKsAIAAABIirACAAAASIqwAgAAAEiKsAIAAABIirBiiTz/+c+PRz7ykXHcccfFqaeeGi960Yvi7rvvHtvmjjvuiOc973lxwgknxM6dO+NXfuVX4siRI2Pb3HbbbXHWWWfF8ccfH9/zPd8Tr3nNa8KiMsP1xS9+MV7ykpfE6aefHscff3w8+tGPjn379m35XPjsMOm1r31tPPWpT42HPvSh8V3f9V1Tt/G5Ia+3vOUtcfrpp8dxxx0XZ5xxRvzlX/5l16dEx2666aZ43vOeF7t3746VlZX4b//tv419fzQaxf79+2P37t1x/PHHx9lnnx2f+cxnxrY5fPhwvOIVr4idO3fGCSecEM9//vPjrrvuavGnoG1XXHFF/PAP/3CceOKJ8d3f/d1x3nnnxec+97mxbXx2mOatb31r/OAP/mBs3749tm/fHmeeeWZ86EMf2vi+z039hBVL5Jxzzok//uM/js997nPx3ve+Nz7/+c/HT/3UT218/8EHH4znPOc58cADD8RHP/rRuOaaa+K9731vXHrppRvbHDp0KJ71rGfF7t274+abb46rr746rrzyyrjqqqu6+JFowd/+7d/Gd77znXjb294Wn/nMZ+JNb3pT/O7v/m5cfvnlG9v47DDNkSNH4qd/+qfjpS996dTv+9yQ1x/90R/FxRdfHK9+9avj1ltvjR/7sR+Ln/iJn4g77rij61OjQw888EA86UlPije/+c1Tv/+GN7whrrrqqnjzm98cN998c+zatSue9axnxf3337+xzcUXXxzXXnttXHPNNfHRj340vva1r8Vzn/vcePDBB9v6MWjZjTfeGC9/+cvj4x//eFx//fXx7W9/O84999x44IEHNrbx2WGa0047LV7/+tfHJz/5yfjkJz8ZT3/60+MFL3jBRiDhc9OAEUvr/e9//2hlZWV05MiR0Wg0Gn3wgx8cHXXUUaMvf/nLG9u85z3vGW3btm108ODB0Wg0Gr3lLW8Z7dixY/TNb35zY5srrrhitHv37tF3vvOddn8AOvOGN7xhdPrpp2/8t88O87zjHe8Y7dixY8vXfW7I61/9q381uvDCC8e+9n3f932j//Sf/lNHZ0RqImJ07bXXbvz3d77zndGuXbtGr3/96ze+9s1vfnO0Y8eO0e/+7u+ORqPR6J/+6Z9GxxxzzOiaa67Z2ObLX/7y6Kijjhp9+MMfbu3c6da99947iojRjTfeOBqNfHYo5qSTThr91//6X31uGmJkxZL66le/Gn/4h38YT33qU+OYY46JiIi/+qu/ir1798bu3bs3tnv2s58dhw8fjltuuWVjm7POOiu2bds2ts3dd98dX/ziF1v9GejOwYMH4+STT974b58dyvC5IY8jR47ELbfcEueee+7Y188999z42Mc+1tFZkbovfOELceDAgbHPzbZt2+Kss87a+Nzccsst8a1vfWtsm927d8fevXt9tpbIwYMHIyI2+jU+O+Tx4IMPxjXXXBMPPPBAnHnmmT43DRFWLJlXvepVccIJJ8TDH/7wuOOOO+L973//xvcOHDgQp5xyytj2J510Uhx77LFx4MCBmdus//f6Ngzb5z//+bj66qvjwgsv3Piazw5l+NyQxz/+4z/Ggw8+OPVz4DPALOufjXmfmwMHDsSxxx4bJ5100sxtGLbRaBSXXHJJ/OiP/mjs3bs3Inx2mO+2226Lhz3sYbFt27a48MIL49prr40nPOEJPjcNEVb03P79+2NlZWXun09+8pMb2//qr/5q3HrrrXHdddfF0UcfHT//8z8/VqhuZWVlyzFGo9HY1ye3Wd9/2r6kq+hnJyLi7rvvjh//8R+Pn/7pn45f/MVfHPuez85yKPO5mcfnhrymfQ58BlikzOfGZ2t5XHTRRfHpT3863vOe92z5ns8O0zz+8Y+PT33qU/Hxj388XvrSl8aLX/zi+OxnP7vxfZ+bej2k6xOgmosuuih+9md/du42j3rUozb+/86dO2Pnzp3xuMc9Lr7/+78/9uzZEx//+MfjzDPPjF27dsUnPvGJsX3vu++++Na3vrWREu7atWtL8nfvvfdGxNYkkbQV/ezcfffdcc4558SZZ54Zb3/728e289lZHkU/N/P43JDHzp074+ijj576OfAZYJZdu3ZFxNqbzFNPPXXj69nPza5du+LIkSNx3333jb3pvPfee+OpT31quydM617xilfEBz7wgbjpppvitNNO2/i6zw7zHHvssfGYxzwmIiKe8pSnxM033xy//du/Ha961asiwuembkZW9NzOnTvj+77v++b+Oe6446buu/528vDhwxERceaZZ8btt98e99xzz8Y21113XWzbti3OOOOMjW1uuummsaUFr7vuuti9e3fuBxTSUOSz8+UvfznOPvvsePKTnxzveMc74qijxi8dPjvLo8o1Z5LPDXkce+yxccYZZ8T1118/9vXrr79e546ZTj/99Ni1a9fY5+bIkSNx4403bnxuzjjjjDjmmGPGtrnnnnvi9ttv99kasNFoFBdddFG8733vixtuuCFOP/30se/77FDEaDSKw4cP+9w0pe2KnnTjE5/4xOjqq68e3XrrraMvfvGLoxtuuGH0oz/6o6NHP/rRG1X2v/3tb4/27t07esYznjH6m7/5m9Gf/dmfjU477bTRRRddtNHOP/3TP41OOeWU0c/93M+NbrvtttH73ve+0fbt20dXXnllVz8aDfvyl788esxjHjN6+tOfPrrrrrtG99xzz8afdT47TPOlL31pdOutt45WV1dHD3vYw0a33nrr6NZbbx3df//9o9HI54b8rrnmmtExxxwz+r3f+73RZz/72dHFF188OuGEE0Zf/OIXuz41OnT//fdvXFciYnTVVVeNbr311tGXvvSl0Wg0Gr3+9a8f7dixY/S+971vdNttt41+7ud+bnTqqaeODh06tNHGhRdeODrttNNGf/Znfzb6m7/5m9HTn/700ZOe9KTRt7/97a5+LBr20pe+dLRjx47RX/zFX4z1ab7+9a9vbOOzwzSXXXbZ6Kabbhp94QtfGH36058eXX755aOjjjpqdN11141GI5+bJggrlsSnP/3p0TnnnDM6+eSTR9u2bRs96lGPGl144YWju+66a2y7L33pS6PnPOc5o+OPP3508sknjy666KKxJQPX2/qxH/ux0bZt20a7du0a7d+/3xKCA/aOd7xjFBFT/2T57DDpxS9+8dTPzUc+8pGNbXxuyOt3fud3Rt/7vd87OvbYY0dPfvKTN5YZZHl95CMfmXqNefGLXzwajdaWoNy3b99o165do23bto3+9b/+16PbbrttrI1vfOMbo4suumh08sknj44//vjRc5/73NEdd9zRwU9DW2b1ad7xjndsbOOzwzS/8Au/sHEfesQjHjF6xjOesRFUjEY+N01YGY0y1RUBAAAAOqZmBQAAAJAUYQUAAACQFGEFAAAAkBRhBQAAAJAUYQUAAACQFGEFAAAAkBRhBQAAAJAUYQUAAACQFGEFAAAAkBRhBQAAAJAUYQUAAACQlP8fO+VJHJEhjfUAAAAASUVORK5CYII=\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" } ], "source": [ - "ia.fill.get_all_cells()" + "iib.fill.plot(width=(700,700),\n", + " basis='xy',\n", + " colors=colormap,\n", + " origin=(0.,0.,200),\n", + " color_by='material',\n", + " pixels=(1000,1000))" ] }, { "cell_type": "code", - "execution_count": 18, + "execution_count": 21, "id": "2a283441", "metadata": { "scrolled": false @@ -3466,16 +988,16 @@ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 18, + "execution_count": 21, "metadata": {}, "output_type": "execute_result" }, { "data": { - "image/png": "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7aBCRORFL3qRHDx4UG677TY5++yz5fOf/7yceeaZsrGxseM1l112mdxzzz1y6qmnHrbfgwcPysGDB7f/ezabhf1GevAIU3SJ8VQP39WebYMXAACA2riOh2xCi+XXm7J99CmwKucpICKJw4oDBw7I7t27d/zdiSeeKMccc4wcOHBg+zXPfOYzd7xmsc2BAwfWhhVXXHHFdlcHEJtJd4Xpflxo7V/jwra6D5vvyXXbVmqubktNalKTmtSkpmZNm21bqdm3v7592IYKoUIL0/0AubBes2Jzc1NGo1Hvn1tvvdV4f+umcczn8x1/v/qaxeKaXVNALrvsMplOp9t/7rvvPuPjia3kOUQII9R6FL7712B6EdX8BKDWml3tqNT0R01qUrONmq7nsFZq+milpq3QjyW1efQp2lD6vaZ1Z8VFF10kr371q3tfs9oJ0WXPnj3yxS9+ccffPfTQQ/LYY49td0/s2bNnu8ti4cEHHxQROawrY2FjY2PHtBEgtqHuiq5tXMSYTgKUJsVglDZb1CLFND+mFqIlpmtI+KwTZtttwfsPObLurNi1a5c861nP6v1z7LHHGu3r9NNPl7vuukseeOCB7b+7/vrrZWNjQ0477bTt19x00007Hmd6/fXXy969e41DkdRynwuEdHwS8BI6KVaZHofm8VKTmjXX1JTLeaIGpf/75fw7T01q5lRTg8k4zbXTwnT/aFMJ96hBH1167733yh133CH33nuvPP7443LHHXfIHXfcId/85jdFROTcc8+VZz/72fKa17xGbr/9dvnMZz4jb33rW+UXf/EXZTwei4jIBRdcIBsbG3LhhRfKXXfdJdddd528613vqupJIKW358CNTyeFyUrOthcn7fmby8fhsr/l7Wy2pWbeNW23pWbdNW23LaXm8uupSc0Sz9XUtLO6D5dwwSa0oJMPJmq4xxzN5+EylQsvvFA++tGPHvb3f/7nfy5nnXWWiDwRaLzxjW+Uz372s3LcccfJBRdcIFdeeeWOaRx33nmnvOlNb5K/+qu/khNPPFFe//rXy6/+6q8ahxWz2Uwmk4lMp9PtECS2oUPdFBYErZHm46F8n+xhut/lffTV1ErpW2k3piY1gZK18j6jJjX79tVlaOykMT4zqe26L65ndRoKK1J2Vpjenwd9Gsg111wj11xzTe9rnvGMZ8gf/dEf9b7mOc95jtx0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AIB0mPIBQAthBYDquHZZiBBaAADggpACgLaga1acd9558oxnPEOOPfZYOemkk+Q1r3mN3H///Ttec++998rLX/5yOf7442XXrl3ylre8RQ4dOrTjNXfeeaeceeaZctxxx8nTn/50ecc73iFzzmoABviuZ8GaFgAA9PO5XrIuBYA+QTsrzj77bLn88svlpJNOkq997Wvy1re+VX76p39aPve5z4mIyOOPPy4vfelL5Xu+53vk5ptvlq9//evy2te+VubzuVx99dUiIjKbzeScc86Rs88+W2655Rb527/9W7nwwgvl+OOPl0svvTTk4QOoBJ0WAADoopMCQGijecQWhT/8wz+U888/Xw4ePChHH320/Omf/qm87GUvk/vuu0/27t0rIiLXXnutXHjhhfLggw/KeDyWD33oQ3LZZZfJP/zDP8jGxoaIiLz73e+Wq6++Wr761a/KyODuYzabyWQykel0KuPxOOj3CCBvLoHFMkILAEDLfLsOCSoAmN6fR3t06Te+8Q35+Mc/LmeccYYcffTRIiLy+c9/Xvbt27cdVIiIvOhFL5KDBw/Kbbfdtv2aM888czuoWLzm/vvvl3vuuWdtrYMHD8psNtvxBwBE/FtOmRoCAGiVbzcFQQUAG8HDire97W1y/PHHy9Oe9jS599575Q/+4A+2v3bgwAHZvXv3jtefeOKJcswxx8iBAwc6X7P478VrVl1xxRUymUy2/5xyyima3xKACrCeBQAAZliXAkAK1mHF5uamjEaj3j+33nrr9ut/+Zd/WW6//Xa5/vrr5cgjj5Sf//mf37E45rppHPP5fMffr75msX3XFJDLLrtMptPp9p/77rvP9tsE0AhCCwAA1iOkAJCS9QKbF110kbz61a/ufc0zn/nM7f+/a9cu2bVrl/zgD/6g/PAP/7Cccsop8oUvfEFOP/102bNnj3zxi1/cse1DDz0kjz322Hb3xJ49ew7roHjwwQdFRA7ruFjY2NjYMW0EAIawCCcAAE9g8UwAObAOKxbhg4tFR8TBgwdFROT000+Xd77znfLAAw/ISSedJCIi119/vWxsbMhpp522/ZrLL79cDh06JMccc8z2a/bu3bsjFAEADfO5+yKchBYAgJKxeCaAnAR7Gshf/dVfyV/91V/JT/zET8iJJ54of//3fy+/+qu/Kg888IDcfffdsrGxIY8//rj86I/+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lDPOOEOe8pSnyHd/93evfQ2/NzD1wQ9+UE499VQ59thj5bTTTpO//Mu/TH1ISOymm26Sl7/85bJ3714ZjUby+7//+zu+Pp/PZXNzU/bu3SvHHXecnHXWWXL33XfveM3BgwflzW9+s+zatUuOP/54Oe+88+SrX/1qxO8CsV1xxRXyYz/2Y3LCCSfI937v98r5558vX/7yl3e8ht8drPOhD31IfuRHfkTG47GMx2M5/fTT5U//9E+3v87vjT7CioacffbZ8j/+x/+QL3/5y/LJT35S/u7v/k5++qd/evvrjz/+uLz0pS+VRx55RG6++Wa59tpr5ZOf/KRceuml26+ZzWZyzjnnyN69e+WWW26Rq6++Wq688kq56qqrUnxLiOBv/uZv5Dvf+Y58+MMflrvvvlve9773yW/+5m/K5Zdfvv0afnewzqFDh+RVr3qVvOENb1j7dX5vYOp3f/d35eKLL5a3v/3tcvvtt8u///f/Xl7ykpfIvffem/rQkNAjjzwiz33uc+UDH/jA2q+/5z3vkauuuko+8IEPyC233CJ79uyRc845Rx5++OHt11x88cVy3XXXybXXXis333yzfPOb35SXvexl8vjjj8f6NhDZjTfeKG9605vkC1/4gtxwww3yz//8z3LuuefKI488sv0afnewzsknnyzvfve75dZbb5Vbb71VfvInf1Je8YpXbAcS/N4EMEez/uAP/mA+Go3mhw4dms/n8/mf/MmfzI844oj51772te3X/M7v/M58Y2NjPp1O5/P5fP7BD35wPplM5o8++uj2a6644or53r1759/5znfifgNI5j3vec/81FNP3f5vfnfQ5yMf+ch8Mpkc9vf83sDUv/t3/27++te/fsffPetZz5r/p//0nxIdEXIjIvPrrrtu+7+/853vzPfs2TN/97vfvf13jz766Hwymcx/8zd/cz6fz+f/9E//ND/66KPn11577fZrvva1r82POOKI+ac//elox460HnzwwbmIzG+88cb5fM7vDuyceOKJ8//23/4bvzeB0FnRqG984xvy8Y9/XM444ww5+uijRUTk85//vOzbt0/27t27/boXvehFcvDgQbntttu2X3PmmWfKxsbGjtfcf//9cs8990T9HpDOdDqVpz71qdv/ze8OXPB7AxOHDh2S2267Tc4999wdf3/uuefK5z73uURHhdx95Stf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\n", + "image/png": "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+7uXvobfG5j64Ac/KGeffbaceuqpcs4558hf/uVfpj4kJHbbbbfJy1/+ctm1a5cMBgP5/d///S1fn06nsr6+Lrt27ZJt27bJ+eefL/fff/+W1xw+fFje/OY3y/bt2+W0006Tiy++WL761a9G/C4Q2zXXXCM/9mM/Jqeffrp87/d+r1xyySXy5S9/ectr+N3BMh/60IfkR37kR2Q4HMpwOJS9e/fKn/7pn25+nd8bfYQVDbngggvkf/yP/yFf/vKX5ZOf/KT83d/9nfz0T//05tePHj0qL33pS+Wxxx6T22+/XW688Ub55Cc/KVdeeeXmayaTiVx44YWya9cuueOOO+T666+Xa6+9Vq677roU3xIi+Ju/+Rv5zne+Ix/+8Ifl/vvvl/e9733ym7/5m3L11VdvvobfHSxz5MgRedWrXiVveMMbln6d3xuY+t3f/V25/PLL5e1vf7vcfffd8u///b+Xl7zkJfLggw+mPjQk9Nhjj8lzn/tc+cAHPrD06+95z3vkuuuukw984ANyxx13yM6dO+XCCy+URx99dPM1l19+udx0001y4403yu233y7f/OY35WUve5kcPXo01reByG699VZ505veJF/4whfklltukX/+53+Wiy66SB577LHN1/C7g2XOOussefe73y133nmn3HnnnfKTP/mT8opXvGIzkOD3JoApmvUHf/AH08FgMD1y5Mh0Op1O/+RP/mR6wgknTL/2ta9tvuZ3fud3pmtra9PxeDydTqfTD37wg9PRaDR9/PHHN19zzTXXTHft2jX9zne+E/cbQDLvec97pmefffbmf/O7gy4f+chHpqPR6Li/5/cGpv7dv/t309e//vVb/u5Zz3rW9D/9p/+U6IiQGxGZ3nTTTZv//Z3vfGe6c+fO6bvf/e7Nv3v88ceno9Fo+pu/+ZvT6XQ6/ad/+qfpySefPL3xxhs3X/O1r31tesIJJ0w//elPRzt2pHXo0KGpiExvvfXW6XTK7w7snHHGGdP/9t/+G783gdBZ0ahvfOMb8vGPf1zOPfdcOfnkk0VE5POf/7zs2bNHdu3atfm6F73oRXL48GG56667Nl9z3nnnydra2pbXHDhwQB544IGo3wPSGY/H8tSnPnXzv/ndgQt+b2DiyJEjctddd8lFF1205e8vuugi+dznPpfoqJC7r3zlK3Lw4MEtvzdra2ty3nnnbf7e3HXXXfLEE09sec2uXbtkz549/G41ZDwei4hsjmv43YGJo0ePyo033iiPPfaY7N27l9+bQAgrGvO2t71NTjvtNHna054mDz74oPzBH/zB5tcOHjwoO3bs2PL6M844Q0455RQ5ePDgytfM/nv2GtTt7/7u7+T666+X17/+9Zt/x+8OXPB7AxP/+I//KEePHl36e8DvAFaZ/W50/d4cPHhQTjnlFDnjjDNWvgZ1m06ncsUVV8hP/MRPyJ49e0SE3x10u/fee+W7vuu7ZG1tTV7/+tfLTTfdJM9+9rP5vQmEsKJw6+vrMhgMOv/ceeedm6//5V/+Zbn77rvl5ptvlhNPPFF+/ud/fstCdYPB4Lga0+l0y98vvma2/bJtkS/b3x0RkQMHDsiLX/xiedWrXiW/8Au/sOVr/O60weX3pgu/NzC17PeA3wH0cfm94XerHZdddpn89V//tfzO7/zOcV/jdwfL/NAP/ZDcc8898oUvfEHe8IY3yGtf+1r50pe+tPl1fm90nZT6AODnsssuk1e/+tWdr3nmM5+5+f+3b98u27dvlx/8wR+UH/7hH5bdu3fLF77wBdm7d6/s3LlTvvjFL27Z9pFHHpEnnnhiMyXcuXPnccnfoUOHROT4JBF5s/3dOXDggFxwwQWyd+9e+a3f+q0tr+N3px22vzdd+L2Bie3bt8uJJ5649PeA3wGssnPnThE59knmmWeeufn38783O3fulCNHjsgjjzyy5ZPOQ4cOybnnnhv3gBHdm9/8ZvnDP/xDue222+Sss87a/Ht+d9DllFNOke///u8XEZHnP//5cscdd8hv/MZvyNve9jYR4fdGG50Vhdu+fbs861nP6vxz6qmnLt129unk4cOHRURk7969ct9998nDDz/8/7d3xy6pvXEcx58r6EGKBCGyEEpqDAJdK0rH+gechCaDM7TWUm0N0RKN4drkH6Ci5dbiAY3WNBTXSCgK4fMbftzDPRcvdLl0PdzeLziL58uDD3x4fPwOz+PWlEolY1mWSaVSbk29XvdcLVgqlczc3NyH/6DAH34nO71ez2xsbJhkMmkKhYIJBLxLB9n5Ov5kzfkZucFHhEIhk0qlTLlc9nxeLpfZ3OGXEomEicVinty8v7+bm5sbNzepVMoEg0FPTb/fN3d3d2TrHybJ2LZtisWiqVarJpFIeN6THfwOSebt7Y3cfJa/faInxuP29lbn5+dyHEftdlvValWrq6taXFx0T9kfDodaXl5WJpNRo9FQpVJRPB6XbdvuOE9PT5qZmVE2m1Wr1VKxWNTU1JROT0/HNTV8sl6vp6WlJaXTaXW7XfX7fff5juxglE6nI8dxdHx8rMnJSTmOI8dxNBgMJJEbfNzV1ZWCwaAuLy91f3+vvb09TUxMqN1uj/urYYwGg4G7rhhjdHZ2Jsdx1Ol0JEknJyeKRCIqFotqtVrKZrOanZ3V8/OzO0Y+n1c8HlelUlGj0VA6ndbKyoqGw+G4poVPtru7q0gkouvra8+e5uXlxa0hOxhlf39f9XpdDw8PajabOjg4UCAQUKlUkkRuPgPNii+i2Wxqc3NT0WhUlmVpYWFB+Xxe3W7XU9fpdLS1taVwOKxoNCrbtj1XBn4fa21tTZZlKRaL6ejoiCsE/2GFQkHGmJHPj8gOfpbL5UbmplaruTXkBh91cXGh+fl5hUIhJZNJ95pBfF21Wm3kGpPL5ST9fwXl4eGhYrGYLMvS+vq6Wq2WZ4zX11fZtq1oNKpwOKzt7W09Pj6OYTb4W361pykUCm4N2cEoOzs77u/Q9PS0MpmM26iQyM1n+Cb9cLoiAAAAAADAmHFmBQAAAAAA8BWaFQAAAAAAwFdoVgAAAAAAAF+hWQEAAAAAAHyFZgUAAAAAAPAVmhUAAAAAAMBXaFYAAAAAAABfoVkBAAAAAAB8hWYFAAAAAADwFZoVAAAAAADAV2hWAAAAAAAAX/kPqyEXE0vKjvcAAAAASUVORK5CYII=\n", "text/plain": [ "
" ] @@ -3510,7 +1032,7 @@ }, { "cell_type": "code", - "execution_count": 21, + "execution_count": null, "id": "6b0f4320", "metadata": {}, "outputs": [], @@ -3531,3336 +1053,10 @@ }, { "cell_type": "code", - "execution_count": 22, + "execution_count": null, "id": "524f65b6", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "OrderedDict([(541,\n", - " Cell\n", - " \tID =\t541\n", - " \tName =\tcr_lattice\n", - " \tFill =\t32\n", - " \tRegion =\t(1525 -1526 1521 -1522 1523 -1524)\n", - " \tRotation =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (509,\n", - " Cell\n", - " \tID =\t509\n", - " \tName =\tmain_lattice\n", - " \tFill =\t29\n", - " \tRegion =\t(1525 -1526 ((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)) ~(1521 -1522 1523 -1524))\n", - " \tRotation =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (759,\n", - " Cell\n", - " \tID =\t759\n", - " \tName =\tzone_iib\n", - " \tFill =\t33\n", - " \tRegion =\t(~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)) -1551 1525 -1526)\n", - " \tRotation =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (761,\n", - " Cell\n", - " \tID =\t761\n", - " \tName =\tlower_plenum\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(-1525 1553 -1552)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (760,\n", - " Cell\n", - " \tID =\t760\n", - " \tName =\tannulus\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(1551 -1552 1525 -1526)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (762,\n", - " Cell\n", - " \tID =\t762\n", - " \tName =\tradial_reflector\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(1552 -1554 1555 -1556)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (763,\n", - " Cell\n", - " \tID =\t763\n", - " \tName =\tbottom_axial_reflector\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1552 -1553 1555)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (764,\n", - " Cell\n", - " \tID =\t764\n", - " \tName =\ttop_axial_reflector\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1552 1526 -1556)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (765,\n", - " Cell\n", - " \tID =\t765\n", - " \tName =\tradial_vessel_wall\n", - " \tFill =\tMaterial 3\n", - " \tRegion =\t(1554 -1557 -1559 1558)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (766,\n", - " Cell\n", - " \tID =\t766\n", - " \tName =\tbottom_vessel_wall\n", - " \tFill =\tMaterial 3\n", - " \tRegion =\t(-1554 -1555 1558)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (767,\n", - " Cell\n", - " \tID =\t767\n", - " \tName =\ttop_vessel_wall\n", - " \tFill =\tMaterial 3\n", - " \tRegion =\t(-1554 -1559 1556)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (510,\n", - " Cell\n", - " \tID =\t510\n", - " \tName =\tcontrol_rod\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t-1823\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (511,\n", - " Cell\n", - " \tID =\t511\n", - " \tName =\tcr_fuel_inner\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(1823 -1725)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (512,\n", - " Cell\n", - " \tID =\t512\n", - " \tName =\tcr_moderator\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(1725 1730 -1731 1732 -1733 ~((1735 -1739 -1741) | (1736 -1739 1742) | (1737 1740 -1741) | (1738 1740 1742)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (513,\n", - " Cell\n", - " \tID =\t513\n", - " \tName =\tcr_fuel_outer\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(~(1730 -1731 1732 -1733 ~((1735 -1739 -1741) | (1736 -1739 1742) | (1737 1740 -1741) | (1738 1740 1742))) (1726 -1727 1728 -1729) ~(-1743 1744 -1745 1746 1747 -1748 ~((1749 -1755) | (1750 -1756) | (1751 -1757) | (1752 -1758) | (1753 -1759) | (1754 -1760))) ~(-1761 1762 -1763 1764 1765 -1766 ~((1767 -1773) | (1768 -1774) | (1769 -1775) | (1770 -1776) | (1771 -1777) | (1772 -1778))) ~(-1779 1780 -1781 -1782 1783 1784 ~((1785 -1791) | (1786 -1792) | (1787 -1793) | (1788 -1794) | (1789 -1795) | (1790 -1796))) ~(-1797 1798 -1799 -1800 1801 1802 ~((1803 -1809) | (1804 -1810) | (1805 -1811) | (1806 -1812) | (1807 -1813) | (1808 -1814))) 1815 1816 1817 1818)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (514,\n", - " Cell\n", - " \tID =\t514\n", - " \tName =\tcr_moderator_ul\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1743 1744 -1745 1746 1747 -1748 ~((1749 -1755) | (1750 -1756) | (1751 -1757) | (1752 -1758) | (1753 -1759) | (1754 -1760)) -1729 1733)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (515,\n", - " Cell\n", - " \tID =\t515\n", - " \tName =\tcr_moderator_br\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1761 1762 -1763 1764 1765 -1766 ~((1767 -1773) | (1768 -1774) | (1769 -1775) | (1770 -1776) | (1771 -1777) | (1772 -1778)) 1728 -1732)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (516,\n", - " Cell\n", - " \tID =\t516\n", - " \tName =\tcr_moderator_ru\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1779 1780 -1781 -1782 1783 1784 ~((1785 -1791) | (1786 -1792) | (1787 -1793) | (1788 -1794) | (1789 -1795) | (1790 -1796)) 1726 -1730)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (517,\n", - " Cell\n", - " \tID =\t517\n", - " \tName =\tcr_moderator_lb\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1797 1798 -1799 -1800 1801 1802 ~((1803 -1809) | (1804 -1810) | (1805 -1811) | (1806 -1812) | (1807 -1813) | (1808 -1814)) -1727 1731)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (518,\n", - " Cell\n", - " \tID =\t518\n", - " \tName =\tcr_moderator_ul_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1743 1744 -1745 1746 1747 -1748 ~((1749 -1755) | (1750 -1756) | (1751 -1757) | (1752 -1758) | (1753 -1759) | (1754 -1760)) 1736 -1733 -1739 1742)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (519,\n", - " Cell\n", - " \tID =\t519\n", - " \tName =\tcr_moderator_br_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1761 1762 -1763 1764 1765 -1766 ~((1767 -1773) | (1768 -1774) | (1769 -1775) | (1770 -1776) | (1771 -1777) | (1772 -1778)) 1737 1732 1740 -1741)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (520,\n", - " Cell\n", - " \tID =\t520\n", - " \tName =\tcr_moderator_ru_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1779 1780 -1781 -1782 1783 1784 ~((1785 -1791) | (1786 -1792) | (1787 -1793) | (1788 -1794) | (1789 -1795) | (1790 -1796)) 1735 1730 -1739 -1741)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (521,\n", - " Cell\n", - " \tID =\t521\n", - " \tName =\tcr_moderator_lb_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1797 1798 -1799 -1800 1801 1802 ~((1803 -1809) | (1804 -1810) | (1805 -1811) | (1806 -1812) | (1807 -1813) | (1808 -1814)) 1738 -1731 1740 1742)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (522,\n", - " Cell\n", - " \tID =\t522\n", - " \tName =\tcr_moderator_ul_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1815 1728 -1732)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (523,\n", - " Cell\n", - " \tID =\t523\n", - " \tName =\tcr_moderator_br_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1816 -1729 1733)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (524,\n", - " Cell\n", - " \tID =\t524\n", - " \tName =\tcr_moderator_ru_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1817 1726 -1730)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (525,\n", - " Cell\n", - " \tID =\t525\n", - " \tName =\tcr_moderator_lb_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1818 -1727 1731)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (526,\n", - " Cell\n", - " \tID =\t526\n", - " \tName =\tcrc_fuel_inner\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-1725\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (527,\n", - " Cell\n", - " \tID =\t527\n", - " \tName =\tcrc_moderator\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(1725 1730 -1731 1732 -1733 ~((1735 -1739 -1741) | (1736 -1739 1742) | (1737 1740 -1741) | (1738 1740 1742)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (528,\n", - " Cell\n", - " \tID =\t528\n", - " \tName =\tcrc_fuel_outer\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(~(1730 -1731 1732 -1733 ~((1735 -1739 -1741) | (1736 -1739 1742) | (1737 1740 -1741) | (1738 1740 1742))) (1726 -1727 1728 -1729) ~(-1743 1744 -1745 1746 1747 -1748 ~((1749 -1755) | (1750 -1756) | (1751 -1757) | (1752 -1758) | (1753 -1759) | (1754 -1760))) ~(-1761 1762 -1763 1764 1765 -1766 ~((1767 -1773) | (1768 -1774) | (1769 -1775) | (1770 -1776) | (1771 -1777) | (1772 -1778))) ~(-1779 1780 -1781 -1782 1783 1784 ~((1785 -1791) | (1786 -1792) | (1787 -1793) | (1788 -1794) | (1789 -1795) | (1790 -1796))) ~(-1797 1798 -1799 -1800 1801 1802 ~((1803 -1809) | (1804 -1810) | (1805 -1811) | (1806 -1812) | (1807 -1813) | (1808 -1814))) 1815 1816 1817 1818)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (529,\n", - " Cell\n", - " \tID =\t529\n", - " \tName =\tcrc_moderator_ul\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1743 1744 -1745 1746 1747 -1748 ~((1749 -1755) | (1750 -1756) | (1751 -1757) | (1752 -1758) | (1753 -1759) | (1754 -1760)) -1729 1733)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (530,\n", - " Cell\n", - " \tID =\t530\n", - " \tName =\tcrc_moderator_br\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1761 1762 -1763 1764 1765 -1766 ~((1767 -1773) | (1768 -1774) | (1769 -1775) | (1770 -1776) | (1771 -1777) | (1772 -1778)) 1728 -1732)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (531,\n", - " Cell\n", - " \tID =\t531\n", - " \tName =\tcrc_moderator_ru\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1779 1780 -1781 -1782 1783 1784 ~((1785 -1791) | (1786 -1792) | (1787 -1793) | (1788 -1794) | (1789 -1795) | (1790 -1796)) 1726 -1730)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (532,\n", - " Cell\n", - " \tID =\t532\n", - " \tName =\tcrc_moderator_lb\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1797 1798 -1799 -1800 1801 1802 ~((1803 -1809) | (1804 -1810) | (1805 -1811) | (1806 -1812) | (1807 -1813) | (1808 -1814)) -1727 1731)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (533,\n", - " Cell\n", - " \tID =\t533\n", - " \tName =\tcrc_moderator_ul_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1743 1744 -1745 1746 1747 -1748 ~((1749 -1755) | (1750 -1756) | (1751 -1757) | (1752 -1758) | (1753 -1759) | (1754 -1760)) 1736 -1733 -1739 1742)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (534,\n", - " Cell\n", - " \tID =\t534\n", - " \tName =\tcrc_moderator_br_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1761 1762 -1763 1764 1765 -1766 ~((1767 -1773) | (1768 -1774) | (1769 -1775) | (1770 -1776) | (1771 -1777) | (1772 -1778)) 1737 1732 1740 -1741)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (535,\n", - " Cell\n", - " \tID =\t535\n", - " \tName =\tcrc_moderator_ru_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1779 1780 -1781 -1782 1783 1784 ~((1785 -1791) | (1786 -1792) | (1787 -1793) | (1788 -1794) | (1789 -1795) | (1790 -1796)) 1735 1730 -1739 -1741)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (536,\n", - " Cell\n", - " \tID =\t536\n", - " \tName =\tcrc_moderator_lb_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1797 1798 -1799 -1800 1801 1802 ~((1803 -1809) | (1804 -1810) | (1805 -1811) | (1806 -1812) | (1807 -1813) | (1808 -1814)) 1738 -1731 1740 1742)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (537,\n", - " Cell\n", - " \tID =\t537\n", - " \tName =\tcrc_moderator_ul_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1815 1728 -1732)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (538,\n", - " Cell\n", - " \tID =\t538\n", - " \tName =\tcrc_moderator_br_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1816 -1729 1733)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (539,\n", - " Cell\n", - " \tID =\t539\n", - " \tName =\tcrc_moderator_ru_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1817 1726 -1730)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (540,\n", - " Cell\n", - " \tID =\t540\n", - " \tName =\tcrc_moderator_lb_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1818 -1727 1731)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (500,\n", - " Cell\n", - " \tID =\t500\n", - " \tName =\tlattice_void\n", - " \tFill =\tNone\n", - " \tRegion =\t(1685 -1686 1687 -1688)\n", - " \tRotation =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (505,\n", - " Cell\n", - " \tID =\t505\n", - " \tName =\t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1690 1685 -1686 1687 -1688)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (506,\n", - " Cell\n", - " \tID =\t506\n", - " \tName =\t\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(1690 1685 -1686 1687 -1688)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (463,\n", - " Cell\n", - " \tID =\t463\n", - " \tName =\tiia_fuel_inner_main\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(-1631 -1627)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (464,\n", - " Cell\n", - " \tID =\t464\n", - " \tName =\tiia_moderator_main\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(1631 1564 -1565 1566 -1567 ~((1569 -1573 -1575) | (1570 -1573 1576) | (1571 1574 -1575) | (1572 1574 1576)) -1627)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (465,\n", - " Cell\n", - " \tID =\t465\n", - " \tName =\tiia_fuel_outer_main\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(~(1564 -1565 1566 -1567 ~((1569 -1573 -1575) | (1570 -1573 1576) | (1571 1574 -1575) | (1572 1574 1576))) (1685 -1686 1687 -1688) 1577 1578 1579 1580 1581 1582 1583 1584 -1627)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (466,\n", - " Cell\n", - " \tID =\t466\n", - " \tName =\tiia_moderator_main_ul\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1577 -1688 1567 -1627)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (467,\n", - " Cell\n", - " \tID =\t467\n", - " \tName =\tiia_moderator_main_br\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1578 1687 -1566 -1627)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (468,\n", - " Cell\n", - " \tID =\t468\n", - " \tName =\tiia_moderator_main_ru\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1579 1685 -1564 -1627)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (469,\n", - " Cell\n", - " \tID =\t469\n", - " \tName =\tiia_moderator_main_lb\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1580 -1686 1565 -1627)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (470,\n", - " Cell\n", - " \tID =\t470\n", - " \tName =\tiia_moderator_main_ul_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1577 1570 -1567 -1573 1576 -1627)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (471,\n", - " Cell\n", - " \tID =\t471\n", - " \tName =\tiia_moderator_main_br_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1578 1571 1566 1574 -1575 -1627)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (472,\n", - " Cell\n", - " \tID =\t472\n", - " \tName =\tiia_moderator_main_ru_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1579 1569 1564 -1573 -1575 -1627)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (473,\n", - " Cell\n", - " \tID =\t473\n", - " \tName =\tiia_moderator_main_lb_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1580 1572 -1565 1574 1576 -1627)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (474,\n", - " Cell\n", - " \tID =\t474\n", - " \tName =\tiia_moderator_main_ul_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1581 1687 -1566 -1627)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (475,\n", - " Cell\n", - " \tID =\t475\n", - " \tName =\tiia_moderator_main_br_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1582 -1688 1567 -1627)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (476,\n", - " Cell\n", - " \tID =\t476\n", - " \tName =\tiia_moderator_main_ru_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1583 1685 -1564 -1627)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (477,\n", - " Cell\n", - " \tID =\t477\n", - " \tName =\tiia_moderator_main_lb_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1584 -1686 1565 -1627)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (478,\n", - " Cell\n", - " \tID =\t478\n", - " \tName =\tiia_fuel_inner_2\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(-1632 1627 -1628)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (479,\n", - " Cell\n", - " \tID =\t479\n", - " \tName =\tiia_moderator_2\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(1632 1564 -1565 1566 -1567 ~((1569 -1573 -1575) | (1570 -1573 1576) | (1571 1574 -1575) | (1572 1574 1576)) 1627 -1628)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (480,\n", - " Cell\n", - " \tID =\t480\n", - " \tName =\tiia_fuel_outer_2\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(~(1564 -1565 1566 -1567 ~((1569 -1573 -1575) | (1570 -1573 1576) | (1571 1574 -1575) | (1572 1574 1576))) (1685 -1686 1687 -1688) 1577 1578 1579 1580 1581 1582 1583 1584 1627 -1628)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (481,\n", - " Cell\n", - " \tID =\t481\n", - " \tName =\tiia_moderator_2_ul\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1577 -1688 1567 1627 -1628)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (482,\n", - " Cell\n", - " \tID =\t482\n", - " \tName =\tiia_moderator_2_br\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1578 1687 -1566 1627 -1628)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (483,\n", - " Cell\n", - " \tID =\t483\n", - " \tName =\tiia_moderator_2_ru\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1579 1685 -1564 1627 -1628)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (484,\n", - " Cell\n", - " \tID =\t484\n", - " \tName =\tiia_moderator_2_lb\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1580 -1686 1565 1627 -1628)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (485,\n", - " Cell\n", - " \tID =\t485\n", - " \tName =\tiia_moderator_2_ul_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1577 1570 -1567 -1573 1576 1627 -1628)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (486,\n", - " Cell\n", - " \tID =\t486\n", - " \tName =\tiia_moderator_2_br_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1578 1571 1566 1574 -1575 1627 -1628)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (487,\n", - " Cell\n", - " \tID =\t487\n", - " \tName =\tiia_moderator_2_ru_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1579 1569 1564 -1573 -1575 1627 -1628)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (488,\n", - " Cell\n", - " \tID =\t488\n", - " \tName =\tiia_moderator_2_lb_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1580 1572 -1565 1574 1576 1627 -1628)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (489,\n", - " Cell\n", - " \tID =\t489\n", - " \tName =\tiia_moderator_2_ul_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1581 1687 -1566 1627 -1628)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (490,\n", - " Cell\n", - " \tID =\t490\n", - " \tName =\tiia_moderator_2_br_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1582 -1688 1567 1627 -1628)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (491,\n", - " Cell\n", - " \tID =\t491\n", - " \tName =\tiia_moderator_2_ru_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1583 1685 -1564 1627 -1628)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (492,\n", - " Cell\n", - " \tID =\t492\n", - " \tName =\tiia_moderator_2_lb_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1584 -1686 1565 1627 -1628)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (493,\n", - " Cell\n", - " \tID =\t493\n", - " \tName =\tiia_fuel_inner_3\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(-1632 1628 -1629)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (494,\n", - " Cell\n", - " \tID =\t494\n", - " \tName =\tiia_moderator_3\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(1632 -1633 1628 -1629)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (495,\n", - " Cell\n", - " \tID =\t495\n", - " \tName =\tiia_fuel_outer_3\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(1633 1685 -1686 1687 -1688 1628 -1629)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (496,\n", - " Cell\n", - " \tID =\t496\n", - " \tName =\tiia_moderator_4\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1634 1629 -1630)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (497,\n", - " Cell\n", - " \tID =\t497\n", - " \tName =\tiia_fuel_outer_4\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(1634 1685 -1686 1687 -1688 1629 -1630)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (498,\n", - " Cell\n", - " \tID =\t498\n", - " \tName =\tiia_moderator_5\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1585 1630)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (499,\n", - " Cell\n", - " \tID =\t499\n", - " \tName =\tiia_fuel_outer_5\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(1585 1685 -1686 1687 -1688 1630)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (503,\n", - " Cell\n", - " \tID =\t503\n", - " \tName =\t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1689 1685 -1686 1687 -1688)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (504,\n", - " Cell\n", - " \tID =\t504\n", - " \tName =\t\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(1689 1685 -1686 1687 -1688)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (436,\n", - " Cell\n", - " \tID =\t436\n", - " \tName =\tia_fuel_inner_1\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(-1591 -1586)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (437,\n", - " Cell\n", - " \tID =\t437\n", - " \tName =\tia_moderator_1\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(1591 -1590 -1586)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (438,\n", - " Cell\n", - " \tID =\t438\n", - " \tName =\tia_fuel_outer_1\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(1590 1685 -1686 1687 -1688 -1586)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (439,\n", - " Cell\n", - " \tID =\t439\n", - " \tName =\tia_fuel_inner_main\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(-1591 1586 -1587)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (440,\n", - " Cell\n", - " \tID =\t440\n", - " \tName =\tia_moderator_main\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(1591 1564 -1565 1566 -1567 ~((1569 -1573 -1575) | (1570 -1573 1576) | (1571 1574 -1575) | (1572 1574 1576)) 1586 -1587)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (441,\n", - " Cell\n", - " \tID =\t441\n", - " \tName =\tia_fuel_outer_main\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(~(1564 -1565 1566 -1567 ~((1569 -1573 -1575) | (1570 -1573 1576) | (1571 1574 -1575) | (1572 1574 1576))) (1685 -1686 1687 -1688) 1577 1578 1579 1580 1581 1582 1583 1584 1586 -1587)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (442,\n", - " Cell\n", - " \tID =\t442\n", - " \tName =\tia_moderator_main_ul\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1577 -1688 1567 1586 -1587)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (443,\n", - " Cell\n", - " \tID =\t443\n", - " \tName =\tia_moderator_main_br\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1578 1687 -1566 1586 -1587)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (444,\n", - " Cell\n", - " \tID =\t444\n", - " \tName =\tia_moderator_main_ru\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1579 1685 -1564 1586 -1587)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (445,\n", - " Cell\n", - " \tID =\t445\n", - " \tName =\tia_moderator_main_lb\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1580 -1686 1565 1586 -1587)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (446,\n", - " Cell\n", - " \tID =\t446\n", - " \tName =\tia_moderator_main_ul_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1577 1570 -1567 -1573 1576 1586 -1587)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (447,\n", - " Cell\n", - " \tID =\t447\n", - " \tName =\tia_moderator_main_br_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1578 1571 1566 1574 -1575 1586 -1587)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (448,\n", - " Cell\n", - " \tID =\t448\n", - " \tName =\tia_moderator_main_ru_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1579 1569 1564 -1573 -1575 1586 -1587)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (449,\n", - " Cell\n", - " \tID =\t449\n", - " \tName =\tia_moderator_main_lb_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1580 1572 -1565 1574 1576 1586 -1587)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (450,\n", - " Cell\n", - " \tID =\t450\n", - " \tName =\tia_moderator_main_ul_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1581 1687 -1566 1586 -1587)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (451,\n", - " Cell\n", - " \tID =\t451\n", - " \tName =\tia_moderator_main_br_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1582 -1688 1567 1586 -1587)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (452,\n", - " Cell\n", - " \tID =\t452\n", - " \tName =\tia_moderator_main_ru_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1583 1685 -1564 1586 -1587)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (453,\n", - " Cell\n", - " \tID =\t453\n", - " \tName =\tia_moderator_main_lb_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1584 -1686 1565 1586 -1587)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (454,\n", - " Cell\n", - " \tID =\t454\n", - " \tName =\tia_fuel_inner_2\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(-1591 1587 -1588)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (455,\n", - " Cell\n", - " \tID =\t455\n", - " \tName =\tia_moderator_2\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(1591 -1590 1587 -1588)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (456,\n", - " Cell\n", - " \tID =\t456\n", - " \tName =\tia_fuel_outer_2\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(1590 1685 -1686 1687 -1688 1587 -1588)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (457,\n", - " Cell\n", - " \tID =\t457\n", - " \tName =\tia_fuel_inner_3\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(-1591 1588 -1589)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (458,\n", - " Cell\n", - " \tID =\t458\n", - " \tName =\tia_moderator_3\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(1591 -1616 1588 -1589)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (459,\n", - " Cell\n", - " \tID =\t459\n", - " \tName =\tia_fuel_outer_3\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(1616 1685 -1686 1687 -1688 1588 -1589)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (460,\n", - " Cell\n", - " \tID =\t460\n", - " \tName =\tia_hast\n", - " \tFill =\tMaterial 3\n", - " \tRegion =\t(-1591 1589)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (461,\n", - " Cell\n", - " \tID =\t461\n", - " \tName =\tia_moderator_4\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(1591 -1585 1589)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (462,\n", - " Cell\n", - " \tID =\t462\n", - " \tName =\tia_fuel_outer_4\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(1585 1685 -1686 1687 -1688 1589)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (501,\n", - " Cell\n", - " \tID =\t501\n", - " \tName =\t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1692 1685 -1686 1687 -1688)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (502,\n", - " Cell\n", - " \tID =\t502\n", - " \tName =\t\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(1692 1685 -1686 1687 -1688)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (507,\n", - " Cell\n", - " \tID =\t507\n", - " \tName =\t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1691 1685 -1686 1687 -1688)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (508,\n", - " Cell\n", - " \tID =\t508\n", - " \tName =\t\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(1691 1685 -1686 1687 -1688)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (542,\n", - " Cell\n", - " \tID =\t542\n", - " \tName =\tiib_large_element_0.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1825 -1827 1828 1829)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (543,\n", - " Cell\n", - " \tID =\t543\n", - " \tName =\tiib_large_element_fuel_hole_0.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-1829\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (544,\n", - " Cell\n", - " \tID =\t544\n", - " \tName =\tiib_small_element_0.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1832 1833 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (545,\n", - " Cell\n", - " \tID =\t545\n", - " \tName =\tiib_small_element_2.924\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1836 1837 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (546,\n", - " Cell\n", - " \tID =\t546\n", - " \tName =\tiib_small_element_4.558999999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1840 1841 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (547,\n", - " Cell\n", - " \tID =\t547\n", - " \tName =\tiib_small_element_6.193999999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1844 1845 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (548,\n", - " Cell\n", - " \tID =\t548\n", - " \tName =\tiib_small_element_7.828999999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1848 1849 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (549,\n", - " Cell\n", - " \tID =\t549\n", - " \tName =\tiib_small_element_9.463999999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1852 1853 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (550,\n", - " Cell\n", - " \tID =\t550\n", - " \tName =\tiib_small_element_11.099\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1856 1857 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (551,\n", - " Cell\n", - " \tID =\t551\n", - " \tName =\tiib_small_element_12.734000000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1860 1861 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (552,\n", - " Cell\n", - " \tID =\t552\n", - " \tName =\tiib_small_element_14.369000000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1864 1865 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (553,\n", - " Cell\n", - " \tID =\t553\n", - " \tName =\tiib_small_element_16.004000000000005\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1868 1869 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (554,\n", - " Cell\n", - " \tID =\t554\n", - " \tName =\tiib_small_element_17.639000000000006\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1872 1873 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (555,\n", - " Cell\n", - " \tID =\t555\n", - " \tName =\tiib_small_element_19.274000000000008\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1876 1877 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (556,\n", - " Cell\n", - " \tID =\t556\n", - " \tName =\tiib_small_element_20.90900000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1880 1881 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (557,\n", - " Cell\n", - " \tID =\t557\n", - " \tName =\tiib_small_element_22.54400000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1884 1885 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (558,\n", - " Cell\n", - " \tID =\t558\n", - " \tName =\tiib_small_element_24.179000000000013\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1888 1889 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (559,\n", - " Cell\n", - " \tID =\t559\n", - " \tName =\tiib_small_element_25.814000000000014\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1892 1893 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (560,\n", - " Cell\n", - " \tID =\t560\n", - " \tName =\tiib_small_element_27.449000000000016\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1896 1897 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (561,\n", - " Cell\n", - " \tID =\t561\n", - " \tName =\tiib_small_element_29.084000000000017\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1900 1901 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (562,\n", - " Cell\n", - " \tID =\t562\n", - " \tName =\tiib_small_element_30.71900000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1904 1905 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (563,\n", - " Cell\n", - " \tID =\t563\n", - " \tName =\tiib_small_element_32.35400000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1908 1909 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (564,\n", - " Cell\n", - " \tID =\t564\n", - " \tName =\tiib_small_element_33.98900000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1912 1913 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (565,\n", - " Cell\n", - " \tID =\t565\n", - " \tName =\tiib_small_element_35.62400000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1916 1917 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (566,\n", - " Cell\n", - " \tID =\t566\n", - " \tName =\tiib_small_element_37.259000000000015\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1920 1921 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (567,\n", - " Cell\n", - " \tID =\t567\n", - " \tName =\tiib_small_element_38.89400000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1924 1925 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (568,\n", - " Cell\n", - " \tID =\t568\n", - " \tName =\tiib_small_element_40.52900000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1928 1929 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (569,\n", - " Cell\n", - " \tID =\t569\n", - " \tName =\tiib_large_element_45.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1930 -1932 1933 1934)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (570,\n", - " Cell\n", - " \tID =\t570\n", - " \tName =\tiib_large_element_fuel_hole_45.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-1934\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (571,\n", - " Cell\n", - " \tID =\t571\n", - " \tName =\tiib_small_element_45.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1937 1938 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (572,\n", - " Cell\n", - " \tID =\t572\n", - " \tName =\tiib_small_element_47.924\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1941 1942 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (573,\n", - " Cell\n", - " \tID =\t573\n", - " \tName =\tiib_small_element_49.559\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1945 1946 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (574,\n", - " Cell\n", - " \tID =\t574\n", - " \tName =\tiib_small_element_51.193999999999996\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1949 1950 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (575,\n", - " Cell\n", - " \tID =\t575\n", - " \tName =\tiib_small_element_52.82899999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1953 1954 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (576,\n", - " Cell\n", - " \tID =\t576\n", - " \tName =\tiib_small_element_54.46399999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1957 1958 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (577,\n", - " Cell\n", - " \tID =\t577\n", - " \tName =\tiib_small_element_56.09899999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1961 1962 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (578,\n", - " Cell\n", - " \tID =\t578\n", - " \tName =\tiib_small_element_57.73399999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1965 1966 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (579,\n", - " Cell\n", - " \tID =\t579\n", - " \tName =\tiib_small_element_59.368999999999986\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1969 1970 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (580,\n", - " Cell\n", - " \tID =\t580\n", - " \tName =\tiib_small_element_61.003999999999984\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1973 1974 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (581,\n", - " Cell\n", - " \tID =\t581\n", - " \tName =\tiib_small_element_62.63899999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1977 1978 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (582,\n", - " Cell\n", - " \tID =\t582\n", - " \tName =\tiib_small_element_64.27399999999997\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1981 1982 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (583,\n", - " Cell\n", - " \tID =\t583\n", - " \tName =\tiib_small_element_65.90899999999996\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1985 1986 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (584,\n", - " Cell\n", - " \tID =\t584\n", - " \tName =\tiib_small_element_67.54399999999995\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1989 1990 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (585,\n", - " Cell\n", - " \tID =\t585\n", - " \tName =\tiib_small_element_69.17899999999995\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1993 1994 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (586,\n", - " Cell\n", - " \tID =\t586\n", - " \tName =\tiib_small_element_70.81399999999994\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1997 1998 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (587,\n", - " Cell\n", - " \tID =\t587\n", - " \tName =\tiib_small_element_72.44899999999993\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2001 2002 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (588,\n", - " Cell\n", - " \tID =\t588\n", - " \tName =\tiib_small_element_74.08399999999992\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2005 2006 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (589,\n", - " Cell\n", - " \tID =\t589\n", - " \tName =\tiib_small_element_75.71899999999991\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2009 2010 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (590,\n", - " Cell\n", - " \tID =\t590\n", - " \tName =\tiib_small_element_77.3539999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2013 2014 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (591,\n", - " Cell\n", - " \tID =\t591\n", - " \tName =\tiib_small_element_78.98899999999989\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2017 2018 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (592,\n", - " Cell\n", - " \tID =\t592\n", - " \tName =\tiib_small_element_80.62399999999988\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2021 2022 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (593,\n", - " Cell\n", - " \tID =\t593\n", - " \tName =\tiib_small_element_82.25899999999987\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2025 2026 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (594,\n", - " Cell\n", - " \tID =\t594\n", - " \tName =\tiib_small_element_83.89399999999986\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2029 2030 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (595,\n", - " Cell\n", - " \tID =\t595\n", - " \tName =\tiib_small_element_85.52899999999985\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2033 2034 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (596,\n", - " Cell\n", - " \tID =\t596\n", - " \tName =\tiib_large_element_90.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1825 -2037 2038 2039)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (597,\n", - " Cell\n", - " \tID =\t597\n", - " \tName =\tiib_large_element_fuel_hole_90.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-2039\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (598,\n", - " Cell\n", - " \tID =\t598\n", - " \tName =\tiib_small_element_90.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2042 2043 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (599,\n", - " Cell\n", - " \tID =\t599\n", - " \tName =\tiib_small_element_92.92399999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2046 2047 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (600,\n", - " Cell\n", - " \tID =\t600\n", - " \tName =\tiib_small_element_94.55899999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2050 2051 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (601,\n", - " Cell\n", - " \tID =\t601\n", - " \tName =\tiib_small_element_96.19399999999997\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2054 2055 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (602,\n", - " Cell\n", - " \tID =\t602\n", - " \tName =\tiib_small_element_97.82899999999997\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2058 2059 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (603,\n", - " Cell\n", - " \tID =\t603\n", - " \tName =\tiib_small_element_99.46399999999996\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2062 2063 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (604,\n", - " Cell\n", - " \tID =\t604\n", - " \tName =\tiib_small_element_101.09899999999995\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2066 2067 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (605,\n", - " Cell\n", - " \tID =\t605\n", - " \tName =\tiib_small_element_102.73399999999994\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2070 2071 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (606,\n", - " Cell\n", - " \tID =\t606\n", - " \tName =\tiib_small_element_104.36899999999993\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2074 2075 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (607,\n", - " Cell\n", - " \tID =\t607\n", - " \tName =\tiib_small_element_106.00399999999992\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2078 2079 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (608,\n", - " Cell\n", - " \tID =\t608\n", - " \tName =\tiib_small_element_107.63899999999991\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2082 2083 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (609,\n", - " Cell\n", - " \tID =\t609\n", - " \tName =\tiib_small_element_109.2739999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2086 2087 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (610,\n", - " Cell\n", - " \tID =\t610\n", - " \tName =\tiib_small_element_110.90899999999989\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2090 2091 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (611,\n", - " Cell\n", - " \tID =\t611\n", - " \tName =\tiib_small_element_112.54399999999988\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2094 2095 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (612,\n", - " Cell\n", - " \tID =\t612\n", - " \tName =\tiib_small_element_114.17899999999987\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2098 2099 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (613,\n", - " Cell\n", - " \tID =\t613\n", - " \tName =\tiib_small_element_115.81399999999987\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2102 2103 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (614,\n", - " Cell\n", - " \tID =\t614\n", - " \tName =\tiib_small_element_117.44899999999986\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2106 2107 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (615,\n", - " Cell\n", - " \tID =\t615\n", - " \tName =\tiib_small_element_119.08399999999985\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2110 2111 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (616,\n", - " Cell\n", - " \tID =\t616\n", - " \tName =\tiib_small_element_120.71899999999984\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2114 2115 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (617,\n", - " Cell\n", - " \tID =\t617\n", - " \tName =\tiib_small_element_122.35399999999983\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2118 2119 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (618,\n", - " Cell\n", - " \tID =\t618\n", - " \tName =\tiib_small_element_123.98899999999982\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2122 2123 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (619,\n", - " Cell\n", - " \tID =\t619\n", - " \tName =\tiib_small_element_125.62399999999981\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2126 2127 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (620,\n", - " Cell\n", - " \tID =\t620\n", - " \tName =\tiib_small_element_127.2589999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2130 2131 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (621,\n", - " Cell\n", - " \tID =\t621\n", - " \tName =\tiib_small_element_128.89399999999983\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2134 2135 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (622,\n", - " Cell\n", - " \tID =\t622\n", - " \tName =\tiib_small_element_130.52899999999985\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2138 2139 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (623,\n", - " Cell\n", - " \tID =\t623\n", - " \tName =\tiib_large_element_135.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1930 -2142 2143 2144)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (624,\n", - " Cell\n", - " \tID =\t624\n", - " \tName =\tiib_large_element_fuel_hole_135.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-2144\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (625,\n", - " Cell\n", - " \tID =\t625\n", - " \tName =\tiib_small_element_135.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2147 2148 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (626,\n", - " Cell\n", - " \tID =\t626\n", - " \tName =\tiib_small_element_137.92400000000004\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2151 2152 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (627,\n", - " Cell\n", - " \tID =\t627\n", - " \tName =\tiib_small_element_139.55900000000005\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2155 2156 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (628,\n", - " Cell\n", - " \tID =\t628\n", - " \tName =\tiib_small_element_141.19400000000007\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2159 2160 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (629,\n", - " Cell\n", - " \tID =\t629\n", - " \tName =\tiib_small_element_142.8290000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2163 2164 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (630,\n", - " Cell\n", - " \tID =\t630\n", - " \tName =\tiib_small_element_144.4640000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2167 2168 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (631,\n", - " Cell\n", - " \tID =\t631\n", - " \tName =\tiib_small_element_146.09900000000013\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2171 2172 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (632,\n", - " Cell\n", - " \tID =\t632\n", - " \tName =\tiib_small_element_147.73400000000015\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2175 2176 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (633,\n", - " Cell\n", - " \tID =\t633\n", - " \tName =\tiib_small_element_149.36900000000017\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2179 2180 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (634,\n", - " Cell\n", - " \tID =\t634\n", - " \tName =\tiib_small_element_151.0040000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2183 2184 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (635,\n", - " Cell\n", - " \tID =\t635\n", - " \tName =\tiib_small_element_152.6390000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2187 2188 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (636,\n", - " Cell\n", - " \tID =\t636\n", - " \tName =\tiib_small_element_154.27400000000023\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2191 2192 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (637,\n", - " Cell\n", - " \tID =\t637\n", - " \tName =\tiib_small_element_155.90900000000025\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2195 2196 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (638,\n", - " Cell\n", - " \tID =\t638\n", - " \tName =\tiib_small_element_157.54400000000027\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2199 2200 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (639,\n", - " Cell\n", - " \tID =\t639\n", - " \tName =\tiib_small_element_159.1790000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2203 2204 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (640,\n", - " Cell\n", - " \tID =\t640\n", - " \tName =\tiib_small_element_160.8140000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2207 2208 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (641,\n", - " Cell\n", - " \tID =\t641\n", - " \tName =\tiib_small_element_162.44900000000032\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2211 2212 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (642,\n", - " Cell\n", - " \tID =\t642\n", - " \tName =\tiib_small_element_164.08400000000034\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2215 2216 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (643,\n", - " Cell\n", - " \tID =\t643\n", - " \tName =\tiib_small_element_165.71900000000036\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2219 2220 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (644,\n", - " Cell\n", - " \tID =\t644\n", - " \tName =\tiib_small_element_167.35400000000038\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2223 2224 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (645,\n", - " Cell\n", - " \tID =\t645\n", - " \tName =\tiib_small_element_168.9890000000004\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2227 2228 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (646,\n", - " Cell\n", - " \tID =\t646\n", - " \tName =\tiib_small_element_170.62400000000042\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2231 2232 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (647,\n", - " Cell\n", - " \tID =\t647\n", - " \tName =\tiib_small_element_172.25900000000044\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2235 2236 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (648,\n", - " Cell\n", - " \tID =\t648\n", - " \tName =\tiib_small_element_173.89400000000046\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2239 2240 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (649,\n", - " Cell\n", - " \tID =\t649\n", - " \tName =\tiib_small_element_175.52900000000048\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2243 2244 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (650,\n", - " Cell\n", - " \tID =\t650\n", - " \tName =\tiib_large_element_180.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1825 -2247 2248 2249)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (651,\n", - " Cell\n", - " \tID =\t651\n", - " \tName =\tiib_large_element_fuel_hole_180.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-2249\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (652,\n", - " Cell\n", - " \tID =\t652\n", - " \tName =\tiib_small_element_180.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2252 2253 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (653,\n", - " Cell\n", - " \tID =\t653\n", - " \tName =\tiib_small_element_182.92400000000004\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2256 2257 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (654,\n", - " Cell\n", - " \tID =\t654\n", - " \tName =\tiib_small_element_184.55900000000005\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2260 2261 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (655,\n", - " Cell\n", - " \tID =\t655\n", - " \tName =\tiib_small_element_186.19400000000007\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2264 2265 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (656,\n", - " Cell\n", - " \tID =\t656\n", - " \tName =\tiib_small_element_187.8290000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2268 2269 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (657,\n", - " Cell\n", - " \tID =\t657\n", - " \tName =\tiib_small_element_189.4640000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2272 2273 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (658,\n", - " Cell\n", - " \tID =\t658\n", - " \tName =\tiib_small_element_191.09900000000013\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2276 2277 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (659,\n", - " Cell\n", - " \tID =\t659\n", - " \tName =\tiib_small_element_192.73400000000015\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2280 2281 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (660,\n", - " Cell\n", - " \tID =\t660\n", - " \tName =\tiib_small_element_194.36900000000017\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2284 2285 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (661,\n", - " Cell\n", - " \tID =\t661\n", - " \tName =\tiib_small_element_196.0040000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2288 2289 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (662,\n", - " Cell\n", - " \tID =\t662\n", - " \tName =\tiib_small_element_197.6390000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2292 2293 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (663,\n", - " Cell\n", - " \tID =\t663\n", - " \tName =\tiib_small_element_199.27400000000023\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2296 2297 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (664,\n", - " Cell\n", - " \tID =\t664\n", - " \tName =\tiib_small_element_200.90900000000025\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2300 2301 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (665,\n", - " Cell\n", - " \tID =\t665\n", - " \tName =\tiib_small_element_202.54400000000027\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2304 2305 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (666,\n", - " Cell\n", - " \tID =\t666\n", - " \tName =\tiib_small_element_204.1790000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2308 2309 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (667,\n", - " Cell\n", - " \tID =\t667\n", - " \tName =\tiib_small_element_205.8140000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2312 2313 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (668,\n", - " Cell\n", - " \tID =\t668\n", - " \tName =\tiib_small_element_207.44900000000032\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2316 2317 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (669,\n", - " Cell\n", - " \tID =\t669\n", - " \tName =\tiib_small_element_209.08400000000034\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2320 2321 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (670,\n", - " Cell\n", - " \tID =\t670\n", - " \tName =\tiib_small_element_210.71900000000036\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2324 2325 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (671,\n", - " Cell\n", - " \tID =\t671\n", - " \tName =\tiib_small_element_212.35400000000038\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2328 2329 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (672,\n", - " Cell\n", - " \tID =\t672\n", - " \tName =\tiib_small_element_213.9890000000004\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2332 2333 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (673,\n", - " Cell\n", - " \tID =\t673\n", - " \tName =\tiib_small_element_215.62400000000042\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2336 2337 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (674,\n", - " Cell\n", - " \tID =\t674\n", - " \tName =\tiib_small_element_217.25900000000044\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2340 2341 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (675,\n", - " Cell\n", - " \tID =\t675\n", - " \tName =\tiib_small_element_218.89400000000046\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2344 2345 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (676,\n", - " Cell\n", - " \tID =\t676\n", - " \tName =\tiib_small_element_220.52900000000048\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2348 2349 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (677,\n", - " Cell\n", - " \tID =\t677\n", - " \tName =\tiib_large_element_225.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1930 -2352 2353 2354)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (678,\n", - " Cell\n", - " \tID =\t678\n", - " \tName =\tiib_large_element_fuel_hole_225.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-2354\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (679,\n", - " Cell\n", - " \tID =\t679\n", - " \tName =\tiib_small_element_225.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2357 2358 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (680,\n", - " Cell\n", - " \tID =\t680\n", - " \tName =\tiib_small_element_227.92400000000004\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2361 2362 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (681,\n", - " Cell\n", - " \tID =\t681\n", - " \tName =\tiib_small_element_229.55900000000005\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2365 2366 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (682,\n", - " Cell\n", - " \tID =\t682\n", - " \tName =\tiib_small_element_231.19400000000007\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2369 2370 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (683,\n", - " Cell\n", - " \tID =\t683\n", - " \tName =\tiib_small_element_232.8290000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2373 2374 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (684,\n", - " Cell\n", - " \tID =\t684\n", - " \tName =\tiib_small_element_234.4640000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2377 2378 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (685,\n", - " Cell\n", - " \tID =\t685\n", - " \tName =\tiib_small_element_236.09900000000013\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2381 2382 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (686,\n", - " Cell\n", - " \tID =\t686\n", - " \tName =\tiib_small_element_237.73400000000015\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2385 2386 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (687,\n", - " Cell\n", - " \tID =\t687\n", - " \tName =\tiib_small_element_239.36900000000017\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2389 2390 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (688,\n", - " Cell\n", - " \tID =\t688\n", - " \tName =\tiib_small_element_241.0040000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2393 2394 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (689,\n", - " Cell\n", - " \tID =\t689\n", - " \tName =\tiib_small_element_242.6390000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2397 2398 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (690,\n", - " Cell\n", - " \tID =\t690\n", - " \tName =\tiib_small_element_244.27400000000023\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2401 2402 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (691,\n", - " Cell\n", - " \tID =\t691\n", - " \tName =\tiib_small_element_245.90900000000025\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2405 2406 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (692,\n", - " Cell\n", - " \tID =\t692\n", - " \tName =\tiib_small_element_247.54400000000027\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2409 2410 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (693,\n", - " Cell\n", - " \tID =\t693\n", - " \tName =\tiib_small_element_249.1790000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2413 2414 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (694,\n", - " Cell\n", - " \tID =\t694\n", - " \tName =\tiib_small_element_250.8140000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2417 2418 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (695,\n", - " Cell\n", - " \tID =\t695\n", - " \tName =\tiib_small_element_252.44900000000032\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2421 2422 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (696,\n", - " Cell\n", - " \tID =\t696\n", - " \tName =\tiib_small_element_254.08400000000034\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2425 2426 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (697,\n", - " Cell\n", - " \tID =\t697\n", - " \tName =\tiib_small_element_255.71900000000036\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2429 2430 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (698,\n", - " Cell\n", - " \tID =\t698\n", - " \tName =\tiib_small_element_257.3540000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2433 2434 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (699,\n", - " Cell\n", - " \tID =\t699\n", - " \tName =\tiib_small_element_258.9890000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2437 2438 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (700,\n", - " Cell\n", - " \tID =\t700\n", - " \tName =\tiib_small_element_260.6240000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2441 2442 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (701,\n", - " Cell\n", - " \tID =\t701\n", - " \tName =\tiib_small_element_262.2590000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2445 2446 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (702,\n", - " Cell\n", - " \tID =\t702\n", - " \tName =\tiib_small_element_263.8940000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2449 2450 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (703,\n", - " Cell\n", - " \tID =\t703\n", - " \tName =\tiib_small_element_265.5290000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2453 2454 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (704,\n", - " Cell\n", - " \tID =\t704\n", - " \tName =\tiib_large_element_270.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1825 -2457 2458 2459)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (705,\n", - " Cell\n", - " \tID =\t705\n", - " \tName =\tiib_large_element_fuel_hole_270.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-2459\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (706,\n", - " Cell\n", - " \tID =\t706\n", - " \tName =\tiib_small_element_270.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2462 2463 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (707,\n", - " Cell\n", - " \tID =\t707\n", - " \tName =\tiib_small_element_272.924\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2466 2467 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (708,\n", - " Cell\n", - " \tID =\t708\n", - " \tName =\tiib_small_element_274.55899999999997\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2470 2471 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (709,\n", - " Cell\n", - " \tID =\t709\n", - " \tName =\tiib_small_element_276.19399999999996\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2474 2475 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (710,\n", - " Cell\n", - " \tID =\t710\n", - " \tName =\tiib_small_element_277.82899999999995\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2478 2479 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (711,\n", - " Cell\n", - " \tID =\t711\n", - " \tName =\tiib_small_element_279.46399999999994\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2482 2483 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (712,\n", - " Cell\n", - " \tID =\t712\n", - " \tName =\tiib_small_element_281.09899999999993\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2486 2487 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (713,\n", - " Cell\n", - " \tID =\t713\n", - " \tName =\tiib_small_element_282.7339999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2490 2491 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (714,\n", - " Cell\n", - " \tID =\t714\n", - " \tName =\tiib_small_element_284.3689999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2494 2495 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (715,\n", - " Cell\n", - " \tID =\t715\n", - " \tName =\tiib_small_element_286.0039999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2498 2499 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (716,\n", - " Cell\n", - " \tID =\t716\n", - " \tName =\tiib_small_element_287.6389999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2502 2503 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (717,\n", - " Cell\n", - " \tID =\t717\n", - " \tName =\tiib_small_element_289.2739999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2506 2507 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (718,\n", - " Cell\n", - " \tID =\t718\n", - " \tName =\tiib_small_element_290.9089999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2510 2511 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (719,\n", - " Cell\n", - " \tID =\t719\n", - " \tName =\tiib_small_element_292.54399999999987\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2514 2515 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (720,\n", - " Cell\n", - " \tID =\t720\n", - " \tName =\tiib_small_element_294.17899999999986\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2518 2519 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (721,\n", - " Cell\n", - " \tID =\t721\n", - " \tName =\tiib_small_element_295.81399999999985\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2522 2523 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (722,\n", - " Cell\n", - " \tID =\t722\n", - " \tName =\tiib_small_element_297.44899999999984\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2526 2527 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (723,\n", - " Cell\n", - " \tID =\t723\n", - " \tName =\tiib_small_element_299.08399999999983\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2530 2531 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (724,\n", - " Cell\n", - " \tID =\t724\n", - " \tName =\tiib_small_element_300.7189999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2534 2535 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (725,\n", - " Cell\n", - " \tID =\t725\n", - " \tName =\tiib_small_element_302.3539999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2538 2539 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (726,\n", - " Cell\n", - " \tID =\t726\n", - " \tName =\tiib_small_element_303.9889999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2542 2543 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (727,\n", - " Cell\n", - " \tID =\t727\n", - " \tName =\tiib_small_element_305.6239999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2546 2547 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (728,\n", - " Cell\n", - " \tID =\t728\n", - " \tName =\tiib_small_element_307.2589999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2550 2551 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (729,\n", - " Cell\n", - " \tID =\t729\n", - " \tName =\tiib_small_element_308.8939999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2554 2555 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (730,\n", - " Cell\n", - " \tID =\t730\n", - " \tName =\tiib_small_element_310.52899999999977\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2558 2559 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (731,\n", - " Cell\n", - " \tID =\t731\n", - " \tName =\tiib_large_element_315.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1930 -2562 2563 2564)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (732,\n", - " Cell\n", - " \tID =\t732\n", - " \tName =\tiib_large_element_fuel_hole_315.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-2564\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (733,\n", - " Cell\n", - " \tID =\t733\n", - " \tName =\tiib_small_element_315.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2567 2568 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (734,\n", - " Cell\n", - " \tID =\t734\n", - " \tName =\tiib_small_element_317.924\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2571 2572 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (735,\n", - " Cell\n", - " \tID =\t735\n", - " \tName =\tiib_small_element_319.55899999999997\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2575 2576 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (736,\n", - " Cell\n", - " \tID =\t736\n", - " \tName =\tiib_small_element_321.19399999999996\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2579 2580 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (737,\n", - " Cell\n", - " \tID =\t737\n", - " \tName =\tiib_small_element_322.82899999999995\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2583 2584 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (738,\n", - " Cell\n", - " \tID =\t738\n", - " \tName =\tiib_small_element_324.46399999999994\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2587 2588 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (739,\n", - " Cell\n", - " \tID =\t739\n", - " \tName =\tiib_small_element_326.09899999999993\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2591 2592 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (740,\n", - " Cell\n", - " \tID =\t740\n", - " \tName =\tiib_small_element_327.7339999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2595 2596 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (741,\n", - " Cell\n", - " \tID =\t741\n", - " \tName =\tiib_small_element_329.3689999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2599 2600 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (742,\n", - " Cell\n", - " \tID =\t742\n", - " \tName =\tiib_small_element_331.0039999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2603 2604 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (743,\n", - " Cell\n", - " \tID =\t743\n", - " \tName =\tiib_small_element_332.6389999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2607 2608 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (744,\n", - " Cell\n", - " \tID =\t744\n", - " \tName =\tiib_small_element_334.2739999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2611 2612 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (745,\n", - " Cell\n", - " \tID =\t745\n", - " \tName =\tiib_small_element_335.9089999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2615 2616 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (746,\n", - " Cell\n", - " \tID =\t746\n", - " \tName =\tiib_small_element_337.54399999999987\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2619 2620 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (747,\n", - " Cell\n", - " \tID =\t747\n", - " \tName =\tiib_small_element_339.17899999999986\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2623 2624 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (748,\n", - " Cell\n", - " \tID =\t748\n", - " \tName =\tiib_small_element_340.81399999999985\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2627 2628 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (749,\n", - " Cell\n", - " \tID =\t749\n", - " \tName =\tiib_small_element_342.44899999999984\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2631 2632 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (750,\n", - " Cell\n", - " \tID =\t750\n", - " \tName =\tiib_small_element_344.08399999999983\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2635 2636 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (751,\n", - " Cell\n", - " \tID =\t751\n", - " \tName =\tiib_small_element_345.7189999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2639 2640 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (752,\n", - " Cell\n", - " \tID =\t752\n", - " \tName =\tiib_small_element_347.3539999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2643 2644 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (753,\n", - " Cell\n", - " \tID =\t753\n", - " \tName =\tiib_small_element_348.9889999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2647 2648 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (754,\n", - " Cell\n", - " \tID =\t754\n", - " \tName =\tiib_small_element_350.6239999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2651 2652 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (755,\n", - " Cell\n", - " \tID =\t755\n", - " \tName =\tiib_small_element_352.2589999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2655 2656 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (756,\n", - " Cell\n", - " \tID =\t756\n", - " \tName =\tiib_small_element_353.8939999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2659 2660 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (757,\n", - " Cell\n", - " \tID =\t757\n", - " \tName =\tiib_small_element_355.52899999999977\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2663 2664 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (758,\n", - " Cell\n", - " \tID =\t758\n", - " \tName =\tiib_fuel\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(~((-1551 1825 -1827 1828) | (-1551 1830 -1832 1833) | (-1551 1830 -1836 1837) | (-1551 1830 -1840 1841) | (-1551 1830 -1844 1845) | (-1551 1830 -1848 1849) | (-1551 1830 -1852 1853) | (-1551 1830 -1856 1857) | (-1551 1830 -1860 1861) | (-1551 1830 -1864 1865) | (-1551 1830 -1868 1869) | (-1551 1830 -1872 1873) | (-1551 1830 -1876 1877) | (-1551 1830 -1880 1881) | (-1551 1830 -1884 1885) | (-1551 1830 -1888 1889) | (-1551 1830 -1892 1893) | (-1551 1830 -1896 1897) | (-1551 1830 -1900 1901) | (-1551 1830 -1904 1905) | (-1551 1830 -1908 1909) | (-1551 1830 -1912 1913) | (-1551 1830 -1916 1917) | (-1551 1830 -1920 1921) | (-1551 1830 -1924 1925) | (-1551 1830 -1928 1929) | (-1551 1930 -1932 1933) | (-1551 1830 -1937 1938) | (-1551 1830 -1941 1942) | (-1551 1830 -1945 1946) | (-1551 1830 -1949 1950) | (-1551 1830 -1953 1954) | (-1551 1830 -1957 1958) | (-1551 1830 -1961 1962) | (-1551 1830 -1965 1966) | (-1551 1830 -1969 1970) | (-1551 1830 -1973 1974) | (-1551 1830 -1977 1978) | (-1551 1830 -1981 1982) | (-1551 1830 -1985 1986) | (-1551 1830 -1989 1990) | (-1551 1830 -1993 1994) | (-1551 1830 -1997 1998) | (-1551 1830 -2001 2002) | (-1551 1830 -2005 2006) | (-1551 1830 -2009 2010) | (-1551 1830 -2013 2014) | (-1551 1830 -2017 2018) | (-1551 1830 -2021 2022) | (-1551 1830 -2025 2026) | (-1551 1830 -2029 2030) | (-1551 1830 -2033 2034) | (-1551 1825 -2037 2038) | (-1551 1830 -2042 2043) | (-1551 1830 -2046 2047) | (-1551 1830 -2050 2051) | (-1551 1830 -2054 2055) | (-1551 1830 -2058 2059) | (-1551 1830 -2062 2063) | (-1551 1830 -2066 2067) | (-1551 1830 -2070 2071) | (-1551 1830 -2074 2075) | (-1551 1830 -2078 2079) | (-1551 1830 -2082 2083) | (-1551 1830 -2086 2087) | (-1551 1830 -2090 2091) | (-1551 1830 -2094 2095) | (-1551 1830 -2098 2099) | (-1551 1830 -2102 2103) | (-1551 1830 -2106 2107) | (-1551 1830 -2110 2111) | (-1551 1830 -2114 2115) | (-1551 1830 -2118 2119) | (-1551 1830 -2122 2123) | (-1551 1830 -2126 2127) | (-1551 1830 -2130 2131) | (-1551 1830 -2134 2135) | (-1551 1830 -2138 2139) | (-1551 1930 -2142 2143) | (-1551 1830 -2147 2148) | (-1551 1830 -2151 2152) | (-1551 1830 -2155 2156) | (-1551 1830 -2159 2160) | (-1551 1830 -2163 2164) | (-1551 1830 -2167 2168) | (-1551 1830 -2171 2172) | (-1551 1830 -2175 2176) | (-1551 1830 -2179 2180) | (-1551 1830 -2183 2184) | (-1551 1830 -2187 2188) | (-1551 1830 -2191 2192) | (-1551 1830 -2195 2196) | (-1551 1830 -2199 2200) | (-1551 1830 -2203 2204) | (-1551 1830 -2207 2208) | (-1551 1830 -2211 2212) | (-1551 1830 -2215 2216) | (-1551 1830 -2219 2220) | (-1551 1830 -2223 2224) | (-1551 1830 -2227 2228) | (-1551 1830 -2231 2232) | (-1551 1830 -2235 2236) | (-1551 1830 -2239 2240) | (-1551 1830 -2243 2244) | (-1551 1825 -2247 2248) | (-1551 1830 -2252 2253) | (-1551 1830 -2256 2257) | (-1551 1830 -2260 2261) | (-1551 1830 -2264 2265) | (-1551 1830 -2268 2269) | (-1551 1830 -2272 2273) | (-1551 1830 -2276 2277) | (-1551 1830 -2280 2281) | (-1551 1830 -2284 2285) | (-1551 1830 -2288 2289) | (-1551 1830 -2292 2293) | (-1551 1830 -2296 2297) | (-1551 1830 -2300 2301) | (-1551 1830 -2304 2305) | (-1551 1830 -2308 2309) | (-1551 1830 -2312 2313) | (-1551 1830 -2316 2317) | (-1551 1830 -2320 2321) | (-1551 1830 -2324 2325) | (-1551 1830 -2328 2329) | (-1551 1830 -2332 2333) | (-1551 1830 -2336 2337) | (-1551 1830 -2340 2341) | (-1551 1830 -2344 2345) | (-1551 1830 -2348 2349) | (-1551 1930 -2352 2353) | (-1551 1830 -2357 2358) | (-1551 1830 -2361 2362) | (-1551 1830 -2365 2366) | (-1551 1830 -2369 2370) | (-1551 1830 -2373 2374) | (-1551 1830 -2377 2378) | (-1551 1830 -2381 2382) | (-1551 1830 -2385 2386) | (-1551 1830 -2389 2390) | (-1551 1830 -2393 2394) | (-1551 1830 -2397 2398) | (-1551 1830 -2401 2402) | (-1551 1830 -2405 2406) | (-1551 1830 -2409 2410) | (-1551 1830 -2413 2414) | (-1551 1830 -2417 2418) | (-1551 1830 -2421 2422) | (-1551 1830 -2425 2426) | (-1551 1830 -2429 2430) | (-1551 1830 -2433 2434) | (-1551 1830 -2437 2438) | (-1551 1830 -2441 2442) | (-1551 1830 -2445 2446) | (-1551 1830 -2449 2450) | (-1551 1830 -2453 2454) | (-1551 1825 -2457 2458) | (-1551 1830 -2462 2463) | (-1551 1830 -2466 2467) | (-1551 1830 -2470 2471) | (-1551 1830 -2474 2475) | (-1551 1830 -2478 2479) | (-1551 1830 -2482 2483) | (-1551 1830 -2486 2487) | (-1551 1830 -2490 2491) | (-1551 1830 -2494 2495) | (-1551 1830 -2498 2499) | (-1551 1830 -2502 2503) | (-1551 1830 -2506 2507) | (-1551 1830 -2510 2511) | (-1551 1830 -2514 2515) | (-1551 1830 -2518 2519) | (-1551 1830 -2522 2523) | (-1551 1830 -2526 2527) | (-1551 1830 -2530 2531) | (-1551 1830 -2534 2535) | (-1551 1830 -2538 2539) | (-1551 1830 -2542 2543) | (-1551 1830 -2546 2547) | (-1551 1830 -2550 2551) | (-1551 1830 -2554 2555) | (-1551 1830 -2558 2559) | (-1551 1930 -2562 2563) | (-1551 1830 -2567 2568) | (-1551 1830 -2571 2572) | (-1551 1830 -2575 2576) | (-1551 1830 -2579 2580) | (-1551 1830 -2583 2584) | (-1551 1830 -2587 2588) | (-1551 1830 -2591 2592) | (-1551 1830 -2595 2596) | (-1551 1830 -2599 2600) | (-1551 1830 -2603 2604) | (-1551 1830 -2607 2608) | (-1551 1830 -2611 2612) | (-1551 1830 -2615 2616) | (-1551 1830 -2619 2620) | (-1551 1830 -2623 2624) | (-1551 1830 -2627 2628) | (-1551 1830 -2631 2632) | (-1551 1830 -2635 2636) | (-1551 1830 -2639 2640) | (-1551 1830 -2643 2644) | (-1551 1830 -2647 2648) | (-1551 1830 -2651 2652) | (-1551 1830 -2655 2656) | (-1551 1830 -2659 2660) | (-1551 1830 -2663 2664)) ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)) -1551 1525 -1526)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone)])" - ] - }, - "execution_count": 22, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "geo.get_all_cells()" ] From af462651b29e8400a1e9fb5ea718f9bdddd0d4c1 Mon Sep 17 00:00:00 2001 From: yardasol Date: Tue, 18 Oct 2022 16:45:56 -0500 Subject: [PATCH 13/62] fix merge conflict --- examples/msbr/_root_geometry.py | 88 +- examples/msbr/model-plotting.ipynb | 7314 +++++----------------------- 2 files changed, 1290 insertions(+), 6112 deletions(-) diff --git a/examples/msbr/_root_geometry.py b/examples/msbr/_root_geometry.py index 389b1b1cd..e2f81e2d2 100644 --- a/examples/msbr/_root_geometry.py +++ b/examples/msbr/_root_geometry.py @@ -47,59 +47,73 @@ def zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core big_radii = [rb_1, rb_2] * 4 small_radii = (207.28, r_outer) - hole_coord = 242.679 - hole_region = +openmc.ZCylinder(x0=hole_coord, r=3.0875) + r_hole = 3.0875 + hole_args = ({'x0': 242.679, 'y0': 0.0, 'r': r_hole}, + {'x0': 171.60, 'y0': 171.60, 'r': r_hole}, + {'x0': 0.0, 'y0': 242.679, 'r': r_hole}, + {'x0': -171.60, 'y0': 171.60, 'r': r_hole}, + {'x0': -242.679, 'y0': 0.0, 'r': r_hole}, + {'x0': -171.60, 'y0': -171.60, 'r': r_hole}, + {'x0': 0.0, 'y0': -242.697, 'r': r_hole}, + {'x0': 171.60, 'y0': -171.60, 'r': r_hole}) # Small elements small_angular_width = 0.96 adjacent_angular_offset = 0.675 #27/40 small_elems_per_octant = 25 - zone_iib_reg = None elem_cells = [] for i, pos in enumerate(large_positions): pos = np.round(pos, 3) - r1, r2 = big_radii[i] - t1 = pos - large_half_w - t2 = pos + large_half_w - large_elem = openmc.model.CylinderSector(r1, r2, t1, t2) - elem_hole = hole_region.rotate((0.0, 0.0, pos)) - elem_reg = -large_elem - if isinstance(zone_iib_reg, openmc.Region): - zone_iib_reg = zone_iib_reg | elem_reg - else: - zone_iib_reg = elem_reg - - elem_reg = -large_elem & elem_hole - elem_cells.append(openmc.Cell(fill=moder, region=elem_reg, - name=f'iib_large_element_moderator_{pos}')) - elem_cells.append(openmc.Cell(fill=fuel, region=~elem_hole, + r1_big, r2_big = big_radii[i] + t1_big = pos - large_half_w + t2_big = pos + large_half_w + s1 = openmc.model.CylinderSector(r1_big, r2_big, t1_big, t2_big) + s2 = openmc.ZCylinder(**hole_args[i]) + elem_cells.append(openmc.Cell(fill=moder, region=(-s1 & +s2), name=f'iib_large_element_{pos}')) + elem_cells.append(openmc.Cell(fill=fuel, region=(-s2), name=f'iib_large_element_fuel_hole_{pos}')) - t1 = t2 + adjacent_angular_offset - r1, r2 = small_radii + t1_small = t2_big + adjacent_angular_offset + r1_small, r2_small = small_radii + + # Inter element fuel channel + s3 = openmc.model.CylinderSector(r1_small, r2_small, t2_big, t1_small) + cpos = t2_big + (adjacent_angular_offset / 2) + cpos = np.round(cpos, 3) + elem_cells.append(openmc.Cell(fill=fuel, region=-s3, + name=f'inter_element_fuel_channel_{cpos}')) + + t4a = t1_big - adjacent_angular_offset + s4 = openmc.model.CylinderSector(r1_small, r1_big, t4a, t1_small) + elem_cells.append(openmc.Cell(fill=fuel, region=-s4, + name=f'inter_element_fuel_channel_{pos}')) + for i in range(0, small_elems_per_octant): - t2 = t1 + small_angular_width - elem_reg = -openmc.model.CylinderSector(small_radii[0], small_radii[1], t1, t2) - pos = t2 - (small_angular_width / 2) + t2_small = t1_small + small_angular_width + + # reflector element + s5 = openmc.model.CylinderSector(r1_small, r2_small, t1_small, t2_small) + pos = t2_small - (small_angular_width / 2) pos = np.round(pos, 3) - elem_cells.append(openmc.Cell(fill=moder, region=elem_reg, name=f'iib_small_element_{pos}')) - zone_iib_reg = zone_iib_reg | elem_reg - t1 = t2 + adjacent_angular_offset - c1 = openmc.Cell(fill=fuel, region=(~zone_iib_reg & - ~zone_i_boundary & - -zone_ii_boundary & - +core_base & - -core_top), name='iib_fuel') + elem_cells.append(openmc.Cell(fill=moder, region=-s5, name=f'iib_small_element_{pos}')) + t1_small = t2_small + adjacent_angular_offset + + # inter-element fuel channel + s6 = openmc.model.CylinderSector(r1_small, r2_small, t2_small, t1_small) + cpos = t2_small + (adjacent_angular_offset/2) + cpos = np.round(cpos, 3) + elem_cells.append(openmc.Cell(fill=fuel, region=-s6, + name=f'inter_element_fuel_channel_{cpos}')) + #universe_id=10 iib = openmc.Universe(name='zone_iib') iib.add_cells(elem_cells) - iib.add_cell(c1) - iib = openmc.Cell(fill=iib, region=(~zone_i_boundary & - -zone_ii_boundary & - +core_base & - -core_top), name='zone_iib') - return iib + c1 = openmc.Cell(fill=iib, region=(~zone_i_boundary & + -zone_ii_boundary & + +core_base & + -core_top), name='zone_iib') + return c1 def annulus(zone_ii_boundary, annulus_boundary, core_base, core_top, fuel): annulus_reg = +zone_ii_boundary & -annulus_boundary & +core_base & -core_top diff --git a/examples/msbr/model-plotting.ipynb b/examples/msbr/model-plotting.ipynb index 991a0d6b4..76bd3239b 100644 --- a/examples/msbr/model-plotting.ipynb +++ b/examples/msbr/model-plotting.ipynb @@ -71,7 +71,6 @@ " appropriate height.\"\"\"\n", " cell_list = []\n", " n_levels = len(cells_tuples)\n", - " print(f'{n_levels}')\n", " for i, cells in enumerate(cells_tuples):\n", " if i == 0:\n", " lower_bound = None\n", @@ -104,6 +103,23 @@ " gr_cyl_lb, gr_cyl_minx, gr_cyl_miny, \n", " gr_cyl_ul, gr_cyl_maxy, gr_cyl_br, \n", " gr_cyl_maxx, gr_cyl_ru) = list(gr_sq_neg.get_surfaces().values())\n", + " \n", + " # slabs that line up with rounded edges\n", + " slab_u = -gr_maxy & +gr_cyl_maxy & -gr_cyl_maxx & +gr_cyl_minx\n", + " slab_l = +gr_minx & -gr_cyl_minx & -gr_cyl_maxy & +gr_cyl_miny\n", + " slab_b = +gr_miny & -gr_cyl_miny & -gr_cyl_maxx & +gr_cyl_minx\n", + " slab_r = -gr_maxx & +gr_cyl_maxx & -gr_cyl_maxy & +gr_cyl_miny\n", + " slabs = (slab_u, slab_l, slab_b, slab_r)\n", + " \n", + " # the rounded edges themselves\n", + " quarter_ul = -gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy\n", + " quarter_br = -gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny\n", + " quarter_lb = -gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny\n", + " quarter_ru = -gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy\n", + " quarters = (quarter_ul, quarter_br, quarter_lb, quarter_ru)\n", + " \n", + " # remaining square\n", + " gr_sq = +gr_cyl_minx & -gr_cyl_maxx & +gr_cyl_miny & -gr_cyl_maxy\n", "\n", " # params for main pin section for both I-A and II-A\n", " r_d = 0.66802\n", @@ -118,8 +134,6 @@ " br_t = openmc.ZCylinder(l1, l3, r_d, name='corner_br_tip')\n", " ru_t = openmc.ZCylinder(-l3, l1, r_d, name='corner_ru_tip')\n", " lb_t = openmc.ZCylinder(l3, -l1, r_d, name='corner_lb_tip')\n", - "\n", - " #gr_corners = elem_bound & (-ul | -br | -lb | -ru)\n", " \n", " gr_ul = -ul & -eb_maxy & +gr_maxy# | \n", " gr_ul_fill = -ul & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy\n", @@ -130,7 +144,6 @@ " gr_ru = -ru & -eb_maxx & +gr_maxx# | \n", " gr_ru_fill = -ru & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxx & +gr_cyl_maxy\n", "\n", - " \n", " gr_ul_t = -ul_t & +eb_miny & -gr_miny\n", " gr_br_t = -br_t & -eb_maxy & +gr_maxy\n", " gr_ru_t = -ru_t & +eb_minx & -gr_minx\n", @@ -138,15 +151,26 @@ " \n", " gr_corners = (gr_ul, gr_br, gr_lb, gr_ru, gr_ul_fill, gr_br_fill, gr_lb_fill, gr_ru_fill)\n", " gr_t = (gr_ul_t, gr_br_t, gr_ru_t, gr_lb_t)\n", - "\n", - " inter_elem_channel = (~gr_sq_neg & elem_bound &\n", - " +ul & +br & +lb & +ru &\n", - " +ul_t & +br_t & +ru_t & +lb_t)\n", + " \n", + " iec_1 = +gr_cyl_miny & -gr_cyl_maxy & +gr_cyl_maxx & -eb_maxx & +lb_t & +ru & +gr_cyl_ru\n", + " iec_2 = (+gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy) & +ru & +br_t & -eb_maxx & -eb_maxy\n", + " iec_3 = +gr_cyl_minx & -gr_cyl_maxx & +gr_cyl_maxy & -eb_maxy & +br_t & +ul & +gr_cyl_ul\n", + " iec_4 = (+gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy) & +ul & +ru_t & +eb_minx & -eb_maxy\n", + " iec_5 = +gr_cyl_miny & -gr_cyl_maxy & -gr_cyl_minx & +eb_minx & +ru_t & +lb & +gr_cyl_lb\n", + " iec_6 = (+gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny) & +lb & +ul_t & +eb_minx & +eb_miny\n", + " iec_7 = +gr_cyl_minx & -gr_cyl_maxx & -gr_cyl_miny & +eb_miny & +ul_t & +br & +gr_cyl_br\n", + " iec_8 = (+gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny) & +br & +lb_t & -eb_maxx & +eb_miny\n", + " \n", + " inter_elem_channel = (iec_1, iec_2, iec_3, iec_4, iec_5, iec_6, iec_7, iec_8)\n", + " #inter_elem_channel = (~gr_sq_neg & elem_bound &\n", + " # +ul & +br & +lb & +ru &\n", + " # +ul_t & +br_t & +ru_t & +lb_t)\n", + " \n", " \n", " gr_round_4 = openmc.ZCylinder(r=2.2225, name='gr_round_4')\n", "\n", " \n", - " return elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4\n", + " return elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4\n", " " ] }, @@ -157,7 +181,7 @@ "metadata": {}, "outputs": [], "source": [ - "def zoneIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4):\n", + "def zoneIA(elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4):\n", " \"\"\"Zone IA element. Specs found in Robertson, 1971 Fig 3.4 (p. 17)\"\"\"\n", " elem_levels = [22.86, 419.10, 438.15, 445.135]\n", " level_bounds = []\n", @@ -178,25 +202,52 @@ " \n", " # I-A main (lower 2)\n", " s2 = s2.clone()\n", - " gr_sq_neg = gr_sq_neg.clone()\n", " c4 = c1.clone(clone_materials=False)\n", " c4.name = 'ia_fuel_inner_main'\n", - " c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg), name='ia_moderator_main')\n", - " c6 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='ia_fuel_outer_main')\n", + " c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq), name='ia_moderator_main')\n", + " #c6 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='ia_fuel_outer_main')\n", + "\n", + " c5_slab_u = openmc.Cell(fill=moder, region=slabs[0], name='ia_moderator_main_slab_u')\n", + " c5_slab_l = openmc.Cell(fill=moder, region=slabs[1], name='ia_moderator_main_slab_l')\n", + " c5_slab_b = openmc.Cell(fill=moder, region=slabs[2], name='ia_moderator_main_slab_b')\n", + " c5_slab_r = openmc.Cell(fill=moder, region=slabs[3], name='ia_moderator_main_slab_r')\n", + " \n", + " c5_quarter_u = openmc.Cell(fill=moder, region=quarters[0], name='ia_moderator_main_quarter_u')\n", + " c5_quarter_l = openmc.Cell(fill=moder, region=quarters[1], name='ia_moderator_main_quarter_l')\n", + " c5_quarter_b = openmc.Cell(fill=moder, region=quarters[2], name='ia_moderator_main_quarter_b')\n", + " c5_quarter_r = openmc.Cell(fill=moder, region=quarters[3], name='ia_moderator_main_quarter_r')\n", + " \n", " c5_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='ia_moderator_main_ul')\n", " c5_br = openmc.Cell(fill=moder, region=gr_corners[1], name='ia_moderator_main_br')\n", " c5_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='ia_moderator_main_ru')\n", " c5_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='ia_moderator_main_lb')\n", + " \n", " c5_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='ia_moderator_main_ul_fill')\n", " c5_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='ia_moderator_main_br_fill')\n", " c5_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='ia_moderator_main_ru_fill')\n", " c5_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='ia_moderator_main_lb_fill')\n", + " \n", " c5_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='ia_moderator_main_ul_t')\n", " c5_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='ia_moderator_main_br_t')\n", " c5_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='ia_moderator_main_ru_t')\n", " c5_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='ia_moderator_main_lb_t')\n", " \n", - " iam = (c4, c5, c6, c5_ul, c5_br, c5_ru, c5_lb, c5_ulf, c5_brf, c5_ruf, c5_lbf, c5_ul_t, c5_br_t, c5_ru_t, c5_lb_t)\n", + " c61 = openmc.Cell(fill=fuel, region=(inter_elem_channel[0]), name='ia_fuel_outer_main_1')\n", + " c62 = openmc.Cell(fill=fuel, region=(inter_elem_channel[1]), name='ia_fuel_outer_main_2')\n", + " c63 = openmc.Cell(fill=fuel, region=(inter_elem_channel[2]), name='ia_fuel_outer_main_3')\n", + " c64 = openmc.Cell(fill=fuel, region=(inter_elem_channel[3]), name='ia_fuel_outer_main_4')\n", + " c65 = openmc.Cell(fill=fuel, region=(inter_elem_channel[4]), name='ia_fuel_outer_main_5')\n", + " c66 = openmc.Cell(fill=fuel, region=(inter_elem_channel[5]), name='ia_fuel_outer_main_6')\n", + " c67 = openmc.Cell(fill=fuel, region=(inter_elem_channel[6]), name='ia_fuel_outer_main_7')\n", + " c68 = openmc.Cell(fill=fuel, region=(inter_elem_channel[7]), name='ia_fuel_outer_main_8')\n", + "\n", + " iam = (c4, c5,# c6, \n", + " c5_slab_u, c5_slab_l, c5_slab_b, c5_slab_r,\n", + " c5_quarter_u, c5_quarter_l, c5_quarter_b, c5_quarter_r,\n", + " c5_ul, c5_br, c5_ru, c5_lb, \n", + " c5_ulf, c5_brf, c5_ruf, c5_lbf, \n", + " c5_ul_t, c5_br_t, c5_ru_t, c5_lb_t,\n", + " c61, c62, c63, c64, c65, c66, c67, c68)\n", " \n", " # I-A 2 (upper 1)\n", " c7 = c1.clone(clone_materials=False)\n", @@ -232,7 +283,7 @@ " \n", " return ia\n", "\n", - "def zoneIIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4):\n", + "def zoneIIA(elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4):\n", " \"\"\"Zone IIA element. Specs found in Robertson, 1971 Fig 3.5 (p. 18)\"\"\"\n", " elem_levels = [434.34, 436.88, 439.42, 441.96]\n", " level_bounds = []\n", @@ -248,42 +299,124 @@ "\n", " # II-A main (lower 1)\n", " c1 = openmc.Cell(fill=fuel, region=(-s1), name='iia_fuel_inner_main')\n", - " c2 = openmc.Cell(fill=moder, region=(+s1 & gr_sq_neg), name='iia_moderator_main')\n", - " c3 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='iia_fuel_outer_main')\n", - " c3.name = 'iia_fuel_outer_main'\n", + " c2 = openmc.Cell(fill=moder, region=(+s1 & gr_sq), name='iia_moderator_main')\n", + " \n", + " c2_slab_u = openmc.Cell(fill=moder, region=slabs[0], name='iia_moderator_main_slab_u')\n", + " c2_slab_l = openmc.Cell(fill=moder, region=slabs[1], name='iia_moderator_main_slab_l')\n", + " c2_slab_b = openmc.Cell(fill=moder, region=slabs[2], name='iia_moderator_main_slab_b')\n", + " c2_slab_r = openmc.Cell(fill=moder, region=slabs[3], name='iia_moderator_main_slab_r')\n", + " \n", + " c2_quarter_u = openmc.Cell(fill=moder, region=quarters[0], name='iia_moderator_main_quarter_u')\n", + " c2_quarter_l = openmc.Cell(fill=moder, region=quarters[1], name='iia_moderator_main_quarter_l')\n", + " c2_quarter_b = openmc.Cell(fill=moder, region=quarters[2], name='iia_moderator_main_quarter_b')\n", + " c2_quarter_r = openmc.Cell(fill=moder, region=quarters[3], name='iia_moderator_main_quarter_r')\n", + " \n", " c2_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='iia_moderator_main_ul')\n", " c2_br = openmc.Cell(fill=moder, region=gr_corners[1], name='iia_moderator_main_br')\n", " c2_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='iia_moderator_main_ru')\n", " c2_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='iia_moderator_main_lb')\n", + " \n", " c2_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='iia_moderator_main_ul_fill')\n", " c2_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='iia_moderator_main_br_fill')\n", " c2_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='iia_moderator_main_ru_fill')\n", " c2_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='iia_moderator_main_lb_fill')\n", + " \n", + " # repeat section tips\n", " c2_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='iia_moderator_main_ul_t')\n", " c2_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='iia_moderator_main_br_t')\n", " c2_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='iia_moderator_main_ru_t')\n", " c2_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='iia_moderator_main_lb_t')\n", - " iiam = (c1, c2, c3, c2_ul, c2_br, c2_ru, c2_lb, c2_ulf, c2_brf, c2_ruf, c2_lbf, c2_ul_t, c2_br_t, c2_ru_t, c2_lb_t)\n", + " \n", + " #c3 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='iia_fuel_outer_main')\n", + " # interelement fuel channel\n", + " c31 = openmc.Cell(fill=fuel, region=(inter_elem_channel[0]), name='iia_fuel_outer_main_1')\n", + " c32 = openmc.Cell(fill=fuel, region=(inter_elem_channel[1]), name='iia_fuel_outer_main_2')\n", + " c33 = openmc.Cell(fill=fuel, region=(inter_elem_channel[2]), name='iia_fuel_outer_main_3')\n", + " c34 = openmc.Cell(fill=fuel, region=(inter_elem_channel[3]), name='iia_fuel_outer_main_4')\n", + " c35 = openmc.Cell(fill=fuel, region=(inter_elem_channel[4]), name='iia_fuel_outer_main_5')\n", + " c36 = openmc.Cell(fill=fuel, region=(inter_elem_channel[5]), name='iia_fuel_outer_main_3')\n", + " c37 = openmc.Cell(fill=fuel, region=(inter_elem_channel[6]), name='iia_fuel_outer_main_7')\n", + " c38 = openmc.Cell(fill=fuel, region=(inter_elem_channel[7]), name='iia_fuel_outer_main_8')\n", + "\n", + " iiam = (c1, c2, #c3,\n", + " c2_slab_u, c2_slab_l, c2_slab_b, c2_slab_r,\n", + " c2_quarter_u, c2_quarter_l, c2_quarter_b, c2_quarter_r,\n", + " c2_ul, c2_br, c2_ru, c2_lb, \n", + " c2_ulf, c2_brf, c2_ruf, c2_lbf, \n", + " c2_ul_t, c2_br_t, c2_ru_t, c2_lb_t,\n", + " c31, c32, c33, c34, c35, c36, c37, c38)\n", "\n", " # II-A 2 (upper 1)\n", - " gr_sq_neg = gr_sq_neg.clone()\n", + " #gr_sq_neg = gr_sq_neg.clone()\n", + " gr_sq = gr_sq.clone()\n", " c4 = openmc.Cell(fill=fuel, region=(-s2), name='iia_fuel_inner_2')\n", - " c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg), name='iia_moderator_2')\n", - " c6 = c3.clone(clone_materials=False)\n", - " c6.name = 'iia_fuel_outer_2'\n", - " c5_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='iia_moderator_2_ul')\n", - " c5_br = openmc.Cell(fill=moder, region=gr_corners[1], name='iia_moderator_2_br')\n", - " c5_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='iia_moderator_2_ru')\n", - " c5_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='iia_moderator_2_lb')\n", - " c5_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='iia_moderator_2_ul_fill')\n", - " c5_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='iia_moderator_2_br_fill')\n", - " c5_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='iia_moderator_2_ru_fill')\n", - " c5_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='iia_moderator_2_lb_fill')\n", - " c5_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='iia_moderator_2_ul_t')\n", - " c5_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='iia_moderator_2_br_t')\n", - " c5_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='iia_moderator_2_ru_t')\n", - " c5_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='iia_moderator_2_lb_t')\n", - " iia2 = (c4, c5, c6, c5_ul, c5_br, c5_ru, c5_lb, c5_ulf, c5_brf, c5_ruf, c5_lbf, c5_ul_t, c5_br_t, c5_ru_t, c5_lb_t)\n", + " c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq), name='iia_moderator_2')\n", + " c5_slab_u = c2_slab_u.clone(clone_materials=False)\n", + " c5_slab_u.name = 'iia_moderator_2_slab_u'\n", + " c5_slab_l = c2_slab_l.clone(clone_materials=False)\n", + " c5_slab_l.name = 'iia_moderator_2_slab_l'\n", + " c5_slab_b = c2_slab_b.clone(clone_materials=False)\n", + " c5_slab_b.name = 'iia_moderator_2_slab_b'\n", + " c5_slab_r = c2_slab_r.clone(clone_materials=False)\n", + " c5_slab_r.name = 'iia_moderator_2_slab_r'\n", + " \n", + " c5_quarter_u = c2_quarter_u.clone(clone_materials=False)\n", + " c5_quarter_u.name = 'iia_moderator_2_quarter_u'\n", + " c5_quarter_l = c2_quarter_l.clone(clone_materials=False)\n", + " c5_quarter_l.name = 'iia_moderator_2_quarter_l'\n", + " c5_quarter_b = c2_quarter_b.clone(clone_materials=False)\n", + " c5_quarter_b.name = 'iia_moderator_2_quarter_b'\n", + " c5_quarter_r = c2_quarter_r.clone(clone_materials=False)\n", + " c5_quarter_r.name = 'iia_moderator_2_quarter_r'\n", + " \n", + " c5_ul = c2_ul.clone(clone_materials=False)\n", + " c5_ul.name = 'iia_moderator_2_ul'\n", + " c5_br = c2_br.clone(clone_materials=False)\n", + " c5_br.name = 'iia_moderator_2_br'\n", + " c5_ru = c2_ru.clone(clone_materials=False)\n", + " c5_ru.name = 'iia_moderator_2_ru'\n", + " c5_lb = c2_lb.clone(clone_materials=False)\n", + " c5_lb.name = 'iia_moderator_2_lb'\n", + " c5_ulf = c2_ulf.clone(clone_materials=False)\n", + " c5_ulf.name = 'iia_moderator_2_ulf'\n", + " c5_brf = c2_brf.clone(clone_materials=False)\n", + " c5_brf.name = 'iia_moderator_2_brf'\n", + " c5_ruf = c2_ruf.clone(clone_materials=False)\n", + " c5_ruf.name = 'iia_moderator_2_ruf'\n", + " c5_lbf = c2_lbf.clone(clone_materials=False)\n", + " c5_lbf.name = 'iia_moderator_2_lbf'\n", + " c5_ul_t = c2_ul_t.clone(clone_materials=False)\n", + " c5_ul_t.name = 'iia_moderator_2_ul_t'\n", + " c5_br_t = c2_br_t.clone(clone_materials=False)\n", + " c5_br_t.name = 'iia_moderator_2_br_t'\n", + " c5_ru_t = c2_ru_t.clone(clone_materials=False)\n", + " c5_ru_t.name = 'iia_moderator_2_ru_t'\n", + " c5_lb_t = c2_lb_t.clone(clone_materials=False)\n", + " c5_lb_t.name = 'iia_moderator_2_lb_t' \n", + " \n", + " c61 = c31.clone(clone_materials=False)\n", + " c61.name = 'iia_fuel_outer_2_1'\n", + " c62 = c32.clone(clone_materials=False)\n", + " c62.name = 'iia_fuel_outer_2_2'\n", + " c63 = c33.clone(clone_materials=False)\n", + " c63.name = 'iia_fuel_outer_2_3'\n", + " c64 = c34.clone(clone_materials=False)\n", + " c64.name = 'iia_fuel_outer_2_4'\n", + " c65 = c35.clone(clone_materials=False)\n", + " c65.name = 'iia_fuel_outer_2_5'\n", + " c66 = c36.clone(clone_materials=False)\n", + " c66.name = 'iia_fuel_outer_2_6'\n", + " c67 = c37.clone(clone_materials=False)\n", + " c67.name = 'iia_fuel_outer_2_7'\n", + " c68 = c38.clone(clone_materials=False)\n", + " c68.name = 'iia_fuel_outer_2_8'\n", + " iia2 = (c4, c5, #c6,\n", + " c5_slab_u, c5_slab_l, c5_slab_b, c5_slab_r,\n", + " c5_quarter_u, c5_quarter_l, c5_quarter_b, c5_quarter_r,\n", + " c5_ul, c5_br, c5_ru, c5_lb,\n", + " c5_ulf, c5_brf, c5_ruf, c5_lbf, \n", + " c5_ul_t, c5_br_t, c5_ru_t, c5_lb_t,\n", + " c61, c62, c63, c64, c65, c66, c67, c68)\n", "\n", " # II-A 3 (upper 2)\n", " s2 = s2.clone()\n", @@ -350,336 +483,37 @@ "execution_count": 6, "id": "07136110", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "5\n", - "5\n" - ] - } - ], + "outputs": [], "source": [ - "elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4 = shared_elem_geometry()\n", - "ia = zoneIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4)\n", - "elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4 = shared_elem_geometry()\n", - "iia = zoneIIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4)\n", + "elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4 = shared_elem_geometry()\n", + "ia = zoneIA(elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4)\n", + "elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4 = shared_elem_geometry()\n", + "iia = zoneIIA(elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4)\n", "# tres, uno, dos, quatro\n", "bl, ur, ul, br = graphite_triangles(elem_bound)" ] }, { "cell_type": "code", - "execution_count": 23, - "id": "16c1aa30", - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "OrderedDict([(1,\n", - " Cell\n", - " \tID =\t1\n", - " \tName =\tia_fuel_inner_1\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(-32 -27)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (2,\n", - " Cell\n", - " \tID =\t2\n", - " \tName =\tia_moderator_1\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(32 -31 -27)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (3,\n", - " Cell\n", - " \tID =\t3\n", - " \tName =\tia_fuel_outer_1\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(31 1 -2 3 -4 -27)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (4,\n", - " Cell\n", - " \tID =\t4\n", - " \tName =\tia_fuel_inner_main\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(-47 27 -28)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (5,\n", - " Cell\n", - " \tID =\t5\n", - " \tName =\tia_moderator_main\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(34 35 -36 37 -38 ~((39 -40 -41) | (42 -40 43) | (44 45 -41) | (46 45 43)) 27 -28)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (6,\n", - " Cell\n", - " \tID =\t6\n", - " \tName =\tia_fuel_outer_main\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(~(5 -6 7 -8 ~((10 -14 -16) | (11 -14 17) | (12 15 -16) | (13 15 17))) (1 -2 3 -4) 18 19 20 21 22 23 24 25 27 -28)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (7,\n", - " Cell\n", - " \tID =\t7\n", - " \tName =\tia_moderator_main_ul\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-18 -4 8 27 -28)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (8,\n", - " Cell\n", - " \tID =\t8\n", - " \tName =\tia_moderator_main_br\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-19 3 -7 27 -28)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (9,\n", - " Cell\n", - " \tID =\t9\n", - " \tName =\tia_moderator_main_ru\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-20 1 -5 27 -28)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (10,\n", - " Cell\n", - " \tID =\t10\n", - " \tName =\tia_moderator_main_lb\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-21 -2 6 27 -28)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (11,\n", - " Cell\n", - " \tID =\t11\n", - " \tName =\tia_moderator_main_ul_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-18 11 -8 -14 17 27 -28)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (12,\n", - " Cell\n", - " \tID =\t12\n", - " \tName =\tia_moderator_main_br_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-19 12 7 15 -16 27 -28)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (13,\n", - " Cell\n", - " \tID =\t13\n", - " \tName =\tia_moderator_main_ru_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-20 10 5 -14 -16 27 -28)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (14,\n", - " Cell\n", - " \tID =\t14\n", - " \tName =\tia_moderator_main_lb_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-21 13 -6 15 17 27 -28)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (15,\n", - " Cell\n", - " \tID =\t15\n", - " \tName =\tia_moderator_main_ul_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-22 3 -7 27 -28)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (16,\n", - " Cell\n", - " \tID =\t16\n", - " \tName =\tia_moderator_main_br_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-23 -4 8 27 -28)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (17,\n", - " Cell\n", - " \tID =\t17\n", - " \tName =\tia_moderator_main_ru_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-24 1 -5 27 -28)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (18,\n", - " Cell\n", - " \tID =\t18\n", - " \tName =\tia_moderator_main_lb_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-25 -2 6 27 -28)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (19,\n", - " Cell\n", - " \tID =\t19\n", - " \tName =\tia_fuel_inner_2\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(-48 28 -29)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (20,\n", - " Cell\n", - " \tID =\t20\n", - " \tName =\tia_moderator_2\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(49 -50 28 -29)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (21,\n", - " Cell\n", - " \tID =\t21\n", - " \tName =\tia_fuel_outer_2\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(51 52 -53 54 -55 28 -29)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (22,\n", - " Cell\n", - " \tID =\t22\n", - " \tName =\tia_fuel_inner_3\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(-62 29 -30)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (23,\n", - " Cell\n", - " \tID =\t23\n", - " \tName =\tia_moderator_3\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(56 -57 29 -30)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (24,\n", - " Cell\n", - " \tID =\t24\n", - " \tName =\tia_fuel_outer_3\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(57 58 -59 60 -61 29 -30)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (25,\n", - " Cell\n", - " \tID =\t25\n", - " \tName =\tia_hast\n", - " \tFill =\tMaterial 3\n", - " \tRegion =\t(-63 30)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (26,\n", - " Cell\n", - " \tID =\t26\n", - " \tName =\tia_moderator_4\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(63 -26 30)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (27,\n", - " Cell\n", - " \tID =\t27\n", - " \tName =\tia_fuel_outer_4\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(26 64 -65 66 -67 30)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone)])" - ] - }, - "execution_count": 23, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "ia.get_all_cells()" - ] - }, - { - "cell_type": "code", - "execution_count": 7, + "execution_count": 19, "id": "752c5160", "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 7, + "execution_count": 19, "metadata": {}, "output_type": "execute_result" }, { "data": { - "image/png": "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uzyQQH0WLlyoefPmeefPnDmj5ORklZSUBPXFDTa3262kpCSVlpa26MPzbIdd2A67sB12cblc6t69u7p06RLU52l0OM+aNUsTJ04M2CYlJaVBjxUfH69PPvnEZ9np06d14cKFWiPq6n0qKyt1+vRpn9FzRUWFBg0a5LeP0+mU0+mstTw6OrpFv0mqdOrUie2wCNthF7bDLtfLdrRpE9w7kRsdzjExMYqJiWmWJ09PT9cLL7ygsrIyJSQkSJI2b94sp9OptLQ0v33S0tIUERGhgoICPfLII5KksrIy7d+/Xy+//HKz1AUAQDgFNfpLSkq0b98+lZSU6NKlS9q3b5/27dunc+fOSZKGDRum22+/XZMmTVJRUZH++Mc/av78+Zo2bZr3L6vjx4+rd+/e+vOf/yzpymj3iSee0NNPP60//vGPKioq0j/+4z/qjjvu0D/8wz8Ec3MAAAiJoF4Q9vzzz+utt97yzvfr10+StHXrVg0ZMkRt27bVxo0bNWPGDP393/+9oqKi9Nhjj2np0qXePhcuXNChQ4f09ddfe5e98sorateunR555BF98803Gjp0qN588021bdu2QXU5nU5lZWX5PdTdkrAddmE77MJ22IXtaJyQ3OcMAAAaju/WBgDAMoQzAACWIZwBALAM4QwAgGWu23C+Hn+usrCwUA6Hw++0a9euOvtlZmbWaj9w4MCQ1FyXlJSUWjU988wzAfsYY5Sdna3ExERFRUVpyJAh+uyzz0JUcW1fffWVnnjiCaWmpioqKko9evRQVlZWve8hG/bHr371K6Wmpqp9+/ZKS0vTn/70p4Dtt23bprS0NLVv31633HKLVqxYEaJK/cvJydH3v/99dezYUbGxsXrwwQd16NChgH3q+v/z+eefh6jq2rKzs2vVEx8fH7CPbftC8v//2eFwaObMmX7b27Ivtm/frjFjxigxMVEOh0PvvPOOz/qmfubk5eXp9ttvl9Pp1O233678/PzGF2euU88//7xZtmyZmTdvnomOjq61/uLFi6Zv374mIyPD7N271xQUFJjExEQza9asgI87ffp0c/PNN5uCggKzd+9ek5GRYe68805z8eLFIG3JVR6Px5SVlflMU6dONSkpKeby5ct19psyZYoZMWKET79Tp04Fvd5AkpOTzeLFi31qOnv2bMA+L730kunYsaPJy8szn376qZkwYYJJ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\n", + "image/png": "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og4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhRxR1S5cujby8vJg3b17jsssvvzzy8vKa3MaNG9e4/p/+6Z/iuuuui1GjRsUxxxwTw4cPj+uvvz727dvX5mMtXry42XFLS0uP5PQBAACSV9DRHTds2BDLli2L0047rdm6c845Jx588MHG+/369Wv8865du2LXrl3x05/+NE499dTYtm1bXHvttbFr1654/PHH23zM0aNHx7PPPtt4Pz8/v6OnDwAAkBM6FHX79++PmTNnxvLly+PWW29ttr6oqKjVUbTKysp44oknGu+feOKJcdttt8Vf/uVfxqeffhoFBa2fUkFBgdE5AACAL+nQ9MvZs2fHtGnTYtKkSS2uX7duXZxwwglx0kknxdVXXx21tbVtHm/fvn0xcODANoMuImLLli0xbNiwGDlyZFxyySXx1ltvtbl9Q0ND1NfXN7kBAADkknZH3apVq2Ljxo2xdOnSFtdPnTo1Hn300fjHf/zH+NnPfhYbNmyIs88+OxoaGlrcfu/evfG3f/u3cc0117T5uGeeeWY88sgjsWbNmli+fHns2bMnJkyYEHv37m11n6VLl0ZJSUnjrby8/PCfKAAAQALaNf1yx44dMXfu3HjmmWeif//+LW4zY8aMxj9XVlbG2LFjo6KiIp566qm44IILmmxbX18f06ZNi1NPPTUWLVrU5mNPnTq18c9jxoyJ8ePHx4knnhgPP/xwzJ8/v8V9Fi5c2GRdfX29sAMAAHJKu6KupqYmamtro6qqqnHZwYMH4/nnn4/77rsvGhoamn14SVlZWVRUVMSWLVuaLP/ggw/inHPOiWOPPTZWr14dhYWF7Trx4uLiGDNmTLPjfllRUVEUFRW167gAAAApaVfUVVdXx+bNm5ssu+KKK+Lkk0+Om266qcVPo9y7d2/s2LEjysrKGpfV19fHlClToqioKH7961+3OurXloaGhnjzzTdj4sSJ7d4XAAAgV7Qr6gYMGBCVlZVNlhUXF8fgwYOjsrIy9u/fH4sXL44LL7wwysrK4p133ombb745hgwZEtOnT4+Iz0foJk+eHB999FGsXLmyyQeYHH/88Y1hWF1dHdOnT485c+ZERMQNN9wQ5513XgwfPjxqa2vj1ltvjfr6+rjsssuO+IsAAACQqg7/nrqW5Ofnx+bNm+ORRx6J999/P8rKyuKss86Kxx57LAYMGBARn0/hfOWVVyIi4hvf+EaT/d9+++0YMWJERERs3bo16urqGtft3LkzLr300qirq4vjjz8+xo0bFy+//HJUVFR05lMAAABIyhFH3bp16xr/fPTRR8eaNWva3P673/1uZFl2yOO+8847Te6vWrWqI6cHAACQ0zr0e+oAAADoHUQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwo4o6pYuXRp5eXkxb968xmWXX3555OXlNbmNGzeuyX4NDQ1x3XXXxZAhQ6K4uDjOP//82Llz5yEf7/7774+RI0dG//79o6qqKl544YUjOX0AAIDkdTjqNmzYEMuWLYvTTjut2bpzzjkndu/e3Xh7+umnm6yfN29erF69OlatWhUvvvhi7N+/P84999w4ePBgq4/32GOPxbx58+LHP/5xbNq0KSZOnBhTp06N7du3d/QpAAAAJK9DUbd///6YOXNmLF++PAYNGtRsfVFRUZSWljbejjvuuMZ1+/btixUrVsTPfvazmDRpUpx++umxcuXK2Lx5czz77LOtPuadd94ZV155ZVx11VVxyimnxN133x3l5eXxwAMPdOQpAAAA5IQORd3s2bNj2rRpMWnSpBbXr1u3Lk444YQ46aST4uqrr47a2trGdTU1NfHJJ5/E5MmTG5cNGzYsKisr46WXXmrxeAcOHIiampom+0RETJ48udV9Ij6f5llfX9/kBgAAkEsK2rvDqlWrYuPGjbFhw4YW10+dOjUuuuiiqKioiLfffjv+5m/+Js4+++yoqamJoqKi2LNnT/Tr16/ZCN/QoUNjz549LR6zrq4uDh48GEOHDj3sfSI+/5m/W265pZ3PEAAAIB3tirodO3bE3Llz45lnnon+/fu3uM2MGTMa/1xZWRljx46NioqKeOqpp+KCCy5o9dhZlkVeXl6bj//V9YfaZ+HChTF//vzG+/X19VFeXt7mYwAAAKSkXVFXU1MTtbW1UVVV1bjs4MGD8fzzz8d9990XDQ0NkZ+f32SfsrKyqKioiC1btkRERGlpaRw4cCDee++9JqN1tbW1MWHChBYfd8iQIZGfn99sVK62trbZ6N2XFRUVRVFRUXueIgAAQFLa9TN11dXVsXnz5nj11Vcbb2PHjo2ZM2fGq6++2izoIiL27t0bO3bsiLKysoiIqKqqisLCwli7dm3jNrt3747XXnut1ajr169fVFVVNdknImLt2rWt7gMAANAXtGukbsCAAVFZWdlkWXFxcQwePDgqKytj//79sXjx4rjwwgujrKws3nnnnbj55ptjyJAhMX369IiIKCkpiSuvvDIWLFgQgwcPjuOOOy5uuOGGGDNmTJMPXqmuro7p06fHnDlzIiJi/vz5MWvWrBg7dmyMHz8+li1bFtu3b49rr732SL8GAAAAyWr3B6W0JT8/PzZv3hyPPPJIvP/++1FWVhZnnXVWPPbYYzFgwIDG7e66664oKCiIiy++OD7++OOorq6Ohx56qMlI39atW6Ourq7x/owZM2Lv3r2xZMmS2L17d1RWVsbTTz8dFRUVnfkUAAAAkpKXZVnW0yfRXerr66OkpCT27dsXAwcO7OnTgV4giw7+ZhN6kSyLWHLU4s49ZkTcEos69ZjkkiwWx5JOP+aizCdW54Y+89YSDqm7+sO7OQAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgIQdUdQtXbo08vLyYt68eS2uv+aaayIvLy/uvvvuxmXvvPNO5OXltXj75S9/2epjLV68uNn2paWlR3L6AAAAySvo6I4bNmyIZcuWxWmnndbi+ieffDJeeeWVGDZsWJPl5eXlsXv37ibLli1bFj/5yU9i6tSpbT7m6NGj49lnn228n5+f38GzBwAAyA0dGqnbv39/zJw5M5YvXx6DBg1qtv7dd9+NOXPmxKOPPhqFhYVN1uXn50dpaWmT2+rVq2PGjBlx7LHHtvm4BQUFTfY7/vjjO3L6AAAAOaNDUTd79uyYNm1aTJo0qdm6zz77LGbNmhU33nhjjB49+pDHqqmpiVdffTWuvPLKQ267ZcuWGDZsWIwcOTIuueSSeOutt9rcvqGhIerr65vcAAAAckm7o27VqlWxcePGWLp0aYvr77jjjigoKIjrr7/+sI63YsWKOOWUU2LChAltbnfmmWfGI488EmvWrInly5fHnj17YsKECbF3795W91m6dGmUlJQ03srLyw/rnAAAAFLRrqjbsWNHzJ07N1auXBn9+/dvtr6mpibuueeeeOihhyIvL++Qx/v444/j7//+7w9rlG7q1Klx4YUXxpgxY2LSpEnx1FNPRUTEww8/3Oo+CxcujH379jXeduzYccjHAQAASEm7oq6mpiZqa2ujqqoqCgoKoqCgINavXx/33ntvFBQUxLp166K2tjaGDx/euH7btm2xYMGCGDFiRLPjPf744/HRRx/FD37wg3afeHFxcYwZMya2bNnS6jZFRUUxcODAJjcAAIBc0q5Pv6yuro7Nmzc3WXbFFVfEySefHDfddFOUlZXFlClTmqyfMmVKzJo1K6644opmx1uxYkWcf/75HfrAk4aGhnjzzTdj4sSJ7d4XAAAgV7Qr6gYMGBCVlZVNlhUXF8fgwYMblw8ePLjJ+sLCwigtLY1Ro0Y1Wf7HP/4xnn/++Xj66adbfKzq6uqYPn16zJkzJyIibrjhhjjvvPNi+PDhUVtbG7feemvU19fHZZdd1p6nAAAAkFM6/HvqjtTf/d3fxde+9rWYPHlyi+u3bt0adXV1jfd37twZl156adTV1cXxxx8f48aNi5dffjkqKiq665QBAAB6nbwsy7KePonuUl9fHyUlJbFv3z4/XwcREZFFB3+zCb1IlkUsOWpx5x4zIm6JRZ16THJJFotjSacfc1F2Sycfk57RZ95awiF1V394NwcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJAwUQcAAJCwgp4+AQB6q6ynTwAAOAyiDoBm8iKLLDOZg5ZlWcSSoxZ3yXHz8jr9sAA574j+xV66dGnk5eXFvHnzWlx/zTXXRF5eXtx9991Nln/3u9+NvLy8JrdLLrnkkI93//33x8iRI6N///5RVVUVL7zwwpGcPkDyuurNNXS/vFhy1KKePgmAJHU46jZs2BDLli2L0047rcX1Tz75ZLzyyisxbNiwFtdfffXVsXv37sbbL37xizYf77HHHot58+bFj3/849i0aVNMnDgxpk6dGtu3b+/oUwAAAEheh6Ju//79MXPmzFi+fHkMGjSo2fp333035syZE48++mgUFha2eIxjjjkmSktLG28lJSVtPuadd94ZV155ZVx11VVxyimnxN133x3l5eXxwAMPdOQpAAC9UOZHOQHarUNRN3v27Jg2bVpMmjSp2brPPvssZs2aFTfeeGOMHj261WM8+uijMWTIkBg9enTccMMN8cEHH7S67YEDB6KmpiYmT57cZPnkyZPjpZdeanW/hoaGqK+vb3IDyBWmXpJ7TMEE6Ih2f1DKqlWrYuPGjbFhw4YW199xxx1RUFAQ119/favHmDlzZowcOTJKS0vjtddei4ULF8Zvf/vbWLt2bYvb19XVxcGDB2Po0KFNlg8dOjT27NnT6uMsXbo0brnllsN4VgBAb+EDUwDap11Rt2PHjpg7d24888wz0b9//2bra2pq4p577omNGzdGXhvfja+++urGP1dWVsY3v/nNGDt2bGzcuDHOOOOMVvf76jGzLGvzcRYuXBjz589vvF9fXx/l5eWtbg+QCqN05K7PR+sWZf5TFuBwtWv6ZU1NTdTW1kZVVVUUFBREQUFBrF+/Pu69994oKCiIdevWRW1tbQwfPrxx/bZt22LBggUxYsSIVo97xhlnRGFhYWzZsqXF9UOGDIn8/Pxmo3K1tbXNRu++rKioKAYOHNjkBgAAkEvaNVJXXV0dmzdvbrLsiiuuiJNPPjluuummKCsriylTpjRZP2XKlJg1a1ZcccUVrR739ddfj08++STKyspaXN+vX7+oqqqKtWvXxvTp0xuXr127Nr7//e+35ykAAAkwBRPg8LUr6gYMGBCVlZVNlhUXF8fgwYMblw8ePLjJ+sLCwigtLY1Ro0ZFRMTWrVvj0Ucfje9973sxZMiQeOONN2LBggVx+umnx7e//e3G/aqrq2P69OkxZ86ciIiYP39+zJo1K8aOHRvjx4+PZcuWxfbt2+Paa69t/7MGSJipl+Q+UzAB2qPdH5RypPr16xf/8A//EPfcc0/s378/ysvLY9q0abFo0aLIz89v3G7r1q1RV1fXeH/GjBmxd+/eWLJkSezevTsqKyvj6aefjoqKiu5+CgAAAL3GEUfdunXr2lz/zjvvNLlfXl4e69evP+Rxv7pfRMQPf/jD+OEPf9iOswMAUmUKJsDh6dDvqQOgZ5h6Sd/hd9YBHC5RBwD0WlnW02cA0PuJOoBEGKWj7zFaB3A4RB0AAEDCRB0A0KuZggnQNlEHkABTL+m7TMEEOBRRBwD0ekbrAFon6gB6OaN0YLQOoC2iDgAAIGGiDgBIgimYAC0TdQC9mKmX8AVTMAFaI+oAgGQYrQNoTtQB9FJG6eCrjNYBtETUAQAAJEzUAQBJMQUToClRB9ALmXoJrTEFE+CrRB0AkByjdQD/QtQB9DJG6eBQjNYBfJmoAwAASJioAwCSZAomwOdEHUAvYuolHC5TMAG+IOoAAAASJuoAgGSZggkg6gB6DVMvob1MwQSIEHUAQOKM1gF9nagD6AWM0kFHGa0DEHUAAAAJE3UAQPJMwQT6MlEH0MNMvYQjZQom0LeJOgAgJxitA/oqUQfQg4zSQWcxWgf0XaIOAAAgYaIOAMgZpmACfZGoA+ghpl5CZzMFE+ibRB0AkFOM1gF9jagD6AFG6aCrGK0D+h5RBwAAkDBRBwDkHFMwgb5E1AF0M1MvoauZggn0LaIOAMhJRuuAvkLUAXQjo3TQXYzWAX2HqAMAAEiYqAMAcpYpmEBfIOoAuompl9DdTMEE+gZRBwAAkDBRBwDkNFMwgVwn6gC6gamX0FNMwQRyn6gDAHKe0Togl4k6gC5mlA56mtE6ILeJOgAAgISJOgCgTzAFE8hVog6gC5l6Cb2FKZhA7hJ1AECfYbQOyEWiDqCLGKWD3sZoHZCbRB0AAEDCRB0A0KeYggnkGlEH0AVMvYTeyhRMIPeIOgCgzzFaB+QSUQfQyYzSQW9ntA7ILaIOAAAgYaIOAOiTTMEEcoWoA+hEpl5CKkzBBHKHqAMA+iyjdUAuEHUAncQoHaTGaB2QG0QdAABAwkQdANCnmYIJpE7UAXQCUy8hVaZgAukTdQAAAAkTdQBAn2cKJpAyUQdwhEy9hNSZggmkTdQBAITROiBdog7gCBilg1xhtA5Il6gDAABImKgDAPj/TMEEUiTqADrI1EvINaZgAmkSdQAAX2K0DkiNqAPoAKN0kKuM1gHpEXUAAAAJE3UAAF9hCiaQElEH0E6mXkKuMwUTSIuoAwBogdE6IBWiDqAdjNJBX2G0DkiHqAMAAEiYqAMAaIUpmEAKRB3AYTL1EvoaUzCBNIg6AIA2GK0DejtRB3AYjNJBX2W0Duj9RB0AAEDCRB0AwCGYggn0ZkcUdUuXLo28vLyYN29ei+uvueaayMvLi7vvvrtx2T/90z/FddddF6NGjYpjjjkmhg8fHtdff33s27evzcdavHhx5OXlNbmVlpYeyekDHBZTL6GvMwUT6N0KOrrjhg0bYtmyZXHaaae1uP7JJ5+MV155JYYNG9Zk+a5du2LXrl3x05/+NE499dTYtm1bXHvttbFr1654/PHH23zM0aNHx7PPPtt4Pz8/v6OnDwAAkBM6FHX79++PmTNnxvLly+PWW29ttv7dd9+NOXPmxJo1a2LatGlN1lVWVsYTTzzReP/EE0+M2267Lf7yL/8yPv300ygoaP2UCgoKjM4BAD0iyyLy8nr6LACa69D0y9mzZ8e0adNi0qRJzdZ99tlnMWvWrLjxxhtj9OjRh3W8ffv2xcCBA9sMuoiILVu2xLBhw2LkyJFxySWXxFtvvdXm9g0NDVFfX9/kBtAepl4CnzMFE+i92h11q1atio0bN8bSpUtbXH/HHXdEQUFBXH/99Yd1vL1798bf/u3fxjXXXNPmdmeeeWY88sgjsWbNmli+fHns2bMnJkyYEHv37m11n6VLl0ZJSUnjrby8/LDOCQCgJT4wBeiN2hV1O3bsiLlz58bKlSujf//+zdbX1NTEPffcEw899FDkHcb8hPr6+pg2bVqceuqpsWhR2//7NXXq1LjwwgtjzJgxMWnSpHjqqaciIuLhhx9udZ+FCxfGvn37Gm87duw45DkBfMEoHdCU0Tqgd2pX1NXU1ERtbW1UVVVFQUFBFBQUxPr16+Pee++NgoKCWLduXdTW1sbw4cMb12/bti0WLFgQI0aMaHKsDz74IM4555w49thjY/Xq1VFYWNiuEy8uLo4xY8bEli1bWt2mqKgoBg4c2OQGAACQS9r1QSnV1dWxefPmJsuuuOKKOPnkk+Omm26KsrKymDJlSpP1U6ZMiVmzZsUVV1zRuKy+vj6mTJkSRUVF8etf/7rFUb9DaWhoiDfffDMmTpzY7n0BADrKB6YAvU27om7AgAFRWVnZZFlxcXEMHjy4cfngwYObrC8sLIzS0tIYNWpURHw+Qjd58uT46KOPYuXKlU0+wOT4449v/DUF1dXVMX369JgzZ05ERNxwww1x3nnnxfDhw6O2tjZuvfXWqK+vj8suu6wDTxugbaZeAi37fArmouyWnj4RgEYd/j11HVVTUxOvvPJKRER84xvfaLLu7bffbpymuXXr1qirq2tct3Pnzrj00kujrq4ujj/++Bg3bly8/PLLUVFR0W3nDgAQYbQO6F3ysqzvfI5TfX19lJSUNP4KBSCLDv5mk5xmlC4iIjMSQatcIxGukbb0mbeWcEjd1R/ezQEAACRM1AEAdEDfmesE9HaiDuBLTCsDDo/fWQf0HqIOAKCDjNYBvYGoA/j/jNIB7WO0DugdRB0AAEDCRB0AwBEwBRPoaaIOIEy9BDrKFEyg54k6AIAjZLQO6EmiDujzjNIBR8ZoHdCzRB0AAEDCRB0AQCcwBRPoKaIO6NNMvQQ6hymYQM8RdQAAAAkTdQAAncQUTKAniDqgzzL1EuhcpmACPUPUAQB0IqN1QHcTdUCfZJQO6BpG64DuJ+oAAAASJuoAADqZKZhAdxJ1QJ9j6iXQtUzBBLqXqAMA6AJG64DuIuqAPsUoHdA9jNYB3UfUAQAAJEzUAQB0EVMwge4g6oA+w9RLoHuZggl0D1EHANCFjNYBXU3UAX2CUTqgZxitA7qeqAMAAEiYqAMA6GKmYAJdSdQBOc/US6BnmYIJdC1RBwAAkDBRBwDQDUzBBLqKqANymqmXQO9gCibQdUQdAEA3MVoHdAVRB+Qso3RA72K0Dugaog4AACBhog4AoBuZggl0NlEH5CRTL4HeyRRMoPOJOgCAbma0DuhMog7IOUbpgN7NaB3QuUQdAABAwkQdAEAPMAUT6CyiDsgppl4CaTAFE+g8og4AoIcYrQM6g6gDcoZROiAtRuuAziHqAAAAEibqAAB6kCmYwJESdUBOMPUSSJMpmMCRE3UAAD3MaB1wJEQdkDyjdEDajNYBR0bUAQAAJEzUAQD0AqZgAh0l6oCkmXoJ5AZTMIGOE3UAAAAJE3UAAL2EKZhAR4g6IFmmXgK5xRRMoGNEHQBAL2K0DmgvUQckySgdkJuM1gHtJ+oAAAASJuoAAHoZUzCB9hB1QHJMvQRymymYQPuIOgCAXshoHXC4RB2QFKN0QN9gtA44fKIOAAAgYaIOAKCXMgUTOByiDkiGqZdA32IKJnB4RB0AQC9mtA44FFEHJMEoHdA3Ga0DDk3UAQAAJEzUAQD0cqZgAm0RdUCvZ+ol0LeZggm0TdQBACTAaB3QGlEH9GpG6QAijNYBbRF1AAAACRN1AACJMAUTaImoA3otUy8BvswUTKBlog4AACBhog4AICGmYAJfJeqAXsnUS4CWmIIJNCfqAAASY7QO+DJRB/Q6RukA2mK0DmhK1AEAACRM1AEAJMgUTOALog7oVUy9BDgcpmAC/0LUAQAkymgdECHqgF7EKB1AexitAz4n6gAAABIm6gAAEmYKJnBEUbd06dLIy8uLefPmtbj+mmuuiby8vLj77rubLG9oaIjrrrsuhgwZEsXFxXH++efHzp07D/l4999/f4wcOTL69+8fVVVV8cILLxzJ6QO9iKmXAB1hCiZwBFG3YcOGWLZsWZx22mktrn/yySfjlVdeiWHDhjVbN2/evFi9enWsWrUqXnzxxdi/f3+ce+65cfDgwVYf77HHHot58+bFj3/849i0aVNMnDgxpk6dGtu3b+/oUwAAyAlG66Bv61DU7d+/P2bOnBnLly+PQYMGNVv/7rvvxpw5c+LRRx+NwsLCJuv27dsXK1asiJ/97GcxadKkOP3002PlypWxefPmePbZZ1t9zDvvvDOuvPLKuOqqq+KUU06Ju+++O8rLy+OBBx7oyFMAehGjdABHwmgd9HUdirrZs2fHtGnTYtKkSc3WffbZZzFr1qy48cYbY/To0c3W19TUxCeffBKTJ09uXDZs2LCorKyMl156qcXHO3DgQNTU1DTZJyJi8uTJre4T8fk0z/r6+iY3AACAXFLQ3h1WrVoVGzdujA0bNrS4/o477oiCgoK4/vrrW1y/Z8+e6NevX7MRvqFDh8aePXta3Keuri4OHjwYQ4cOPex9Ij7/mb9bbrmlracDAJATsiwiL6+nzwLoCe0aqduxY0fMnTs3Vq5cGf3792+2vqamJu6555546KGHIq+d31WyLDvkPl9df6h9Fi5cGPv27Wu87dixo13nBHQ9Uy8BOoMpmNCXtSvqampqora2NqqqqqKgoCAKCgpi/fr1ce+990ZBQUGsW7cuamtrY/jw4Y3rt23bFgsWLIgRI0ZERERpaWkcOHAg3nvvvSbHrq2tbTYS94UhQ4ZEfn5+s1G5tvaJiCgqKoqBAwc2uQEA5CofmAJ9U7uirrq6OjZv3hyvvvpq423s2LExc+bMePXVV+Pyyy+P3/3ud03WDxs2LG688cZYs2ZNRERUVVVFYWFhrF27tvG4u3fvjtdeey0mTJjQ4uP269cvqqqqmuwTEbF27dpW9wF6P6N0AJ3JaB30Ve36mboBAwZEZWVlk2XFxcUxePDgxuWDBw9usr6wsDBKS0tj1KhRERFRUlISV155ZSxYsCAGDx4cxx13XNxwww0xZsyYJh+8Ul1dHdOnT485c+ZERMT8+fNj1qxZMXbs2Bg/fnwsW7Ystm/fHtdee237nzUAAECOaPcHpXSGu+66KwoKCuLiiy+Ojz/+OKqrq+Ohhx6K/Pz8xm22bt0adXV1jfdnzJgRe/fujSVLlsTu3bujsrIynn766aioqOiJpwAA0Cv5wBToe/KyrO/Mvq6vr4+SkpLYt2+fn6+DiIjIooO/2eTIH9nUy14ui0WZTw+mZa7f3q6nr98+89YSDqm7+qNn3s0BAADQKUQdAECO6TvzsIAIUQf0AFO3ALqST8GEvkbUAQDkIKN10HeIOqBbGaUD6A5G66AvEXUAAAAJE3UAADnKFEzoG0Qd0G1MvQToTqZgQl8h6gAAcpjROsh9og7oFkbpAHqC0TroC0QdAABAwkQdAECOMwUTcpuoA7qcqZcAPckUTMh1og4AoA8wWge5S9QBXcooHUBvYLQOcpmoAwAASJioAwDoI0zBhNwk6oAuY+olQG9iCibkKlEHANCHGK2D3CPqgC5hlA6gNzJaB7lI1AEAACRM1AEA9DGmYEJuEXVApzP1EqA3MwUTco2oAwAASJioAwDog0zBhNwh6oBOZeolQApMwYRcIuoAAPooo3WQG0Qd0GmM0gGkxGgd5ApRBwAAkDBRBwDQh5mCCekTdUCnMPUSIEWmYEIuEHUAAH2c0TpIm6gDjphROoCUGa2D1Ik6AACAhIk6AABMwYSEiTrgiJh6CZALTMGElIk6AAAiwmgdpErUAR1mlA4glxitg1SJOgAAgISJOgAAGpmCCekRdUCHmHoJkItMwYQUiToAAJowWgdpEXVAuxmlA8hlRusgNaIOAAAgYaIOAIBmTMGEdIg6oF1MvQToC0zBhJSIOgAAgISJOgAAWmQKJqRB1AGHzdRLgL7EFExIhagDAKBVRuug9xN1wGExSgfQFxmtgxSIOgAAgISJOgAA2mQKJvRuog44JFMvAfoyUzChtxN1AAAcktE66L1EHdAmo3QAGK2D3k3UAQAAJEzUAQBwWEzBhN5J1AGtMvUSgH9hCib0VqIOAIDDZrQOeh9RB7TIKB0AzRmtg95I1AEAACRM1AEA0C6mYELvIuqAZky9BKB1pmBCbyPqAABoN6N10HuIOqAJo3QAHJrROuhNRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCjijqli5dGnl5eTFv3rzGZYsXL46TTz45iouLY9CgQTFp0qR45ZVXGte/8847kZeX1+Ltl7/8ZauPtXjx4mbbl5aWHsnpAwAAJK/DUbdhw4ZYtmxZnHbaaU2Wn3TSSXHffffF5s2b48UXX4wRI0bE5MmT4//+3/8bERHl5eWxe/fuJrdbbrkliouLY+rUqW0+5ujRo5vst3nz5o6ePgAAQE4o6MhO+/fvj5kzZ8by5cvj1ltvbbLu3//7f9/k/p133hkrVqyI3/3ud1FdXR35+fnNRthWr14dM2bMiGOPPbbtky0oMDoHAADwJR0aqZs9e3ZMmzYtJk2a1OZ2Bw4ciGXLlkVJSUl861vfanGbmpqaePXVV+PKK6885ONu2bIlhg0bFiNHjoxLLrkk3nrrrTa3b2hoiPr6+iY3AACAXNLuqFu1alVs3Lgxli5d2uo2/+N//I849thjo3///nHXXXfF2rVrY8iQIS1uu2LFijjllFNiwoQJbT7umWeeGY888kisWbMmli9fHnv27IkJEybE3r17W91n6dKlUVJS0ngrLy8/vCcJAACQiHZF3Y4dO2Lu3LmxcuXK6N+/f6vbnXXWWfHqq6/GSy+9FOecc05cfPHFUVtb22y7jz/+OP7+7//+sEbppk6dGhdeeGGMGTMmJk2aFE899VRERDz88MOt7rNw4cLYt29f423Hjh2H8SwBAADS0a6oq6mpidra2qiqqoqCgoIoKCiI9evXx7333hsFBQVx8ODBiIgoLi6Ob3zjGzFu3LhYsWJFFBQUxIoVK5od7/HHH4+PPvoofvCDH7T7xIuLi2PMmDGxZcuWVrcpKiqKgQMHNrkBAADkknZ9UEp1dXWzT5y84oor4uSTT46bbrop8vPzW9wvy7JoaGhotnzFihVx/vnnx/HHH9+e04iIz39e7s0334yJEye2e18AAIBc0a6oGzBgQFRWVjZZVlxcHIMHD47Kysr48MMP47bbbovzzz8/ysrKYu/evXH//ffHzp0746KLLmqy3x//+Md4/vnn4+mnn27xsaqrq2P69OkxZ86ciIi44YYb4rzzzovhw4dHbW1t3HrrrVFfXx+XXXZZe54CAABATunQrzRoTX5+fvz+97+Phx9+OOrq6mLw4MHxZ3/2Z/HCCy/E6NGjm2z7d3/3d/G1r30tJk+e3OKxtm7dGnV1dY33d+7cGZdeemnU1dXF8ccfH+PGjYuXX345KioqOvMpAAAAJCUvy7Ksp0+iu9TX10dJSUns27fPz9dBRERk8dUfrc2yiCVHLe6Jk6FXyWJRdktPnwS9lO8TfK617xN95q0lHFJ39UeHfk8dAAAAvYOoAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASFhBT59Ad8qyLCIi6uvre/hMoLfImi/JIv45/rkHzoXexrdKWuP7BF9o+fuEbx7whS+644sO6Sp5WVc/Qi/y1ltvxYknntjTpwEAAPQhW7dujT/90z/tsuP3qZG64447LiIitm/fHiUlJT18NtTX10d5eXns2LEjBg4c2NOn0+d5PXoXr0fv4vXoXbwevYvXo3fxevQu+/bti+HDhzd2SFfpU1F31FGf/whhSUmJv+S9yMCBA70evYjXo3fxevQuXo/exevRu3g9ehevR+/yRYd02fG79OgAAAB0KVEHAACQsD4VdUVFRbFo0aIoKirq6VMhvB69jdejd/F69C5ej97F69G7eD16F69H79Jdr0ef+vRLAACAXNOnRuoAAAByjagDAABImKgDAABImKgDAABImKgDAABIWE5F3W233RYTJkyIY445Jv7kT/6kxW22b98e5513XhQXF8eQIUPi+uuvjwMHDrR53IaGhrjuuutiyJAhUVxcHOeff37s3LmzC55B7lq3bl3k5eW1eNuwYUOr+11++eXNth83blw3nnnuGjFiRLOv7Y9+9KM298myLBYvXhzDhg2Lo48+Or773e/G66+/3k1nnLveeeeduPLKK2PkyJFx9NFHx4knnhiLFi065Pcm10fnuf/++2PkyJHRv3//qKqqihdeeKHN7devXx9VVVXRv3//+NM//dP4+c9/3k1nmvuWLl0af/ZnfxYDBgyIE044If7tv/238Yc//KHNfVr7N+b3v/99N5117lq8eHGzr2tpaWmb+7g+uk5L/3bn5eXF7NmzW9zetdG5nn/++TjvvPNi2LBhkZeXF08++WST9R19n/TEE0/EqaeeGkVFRXHqqafG6tWr231uORV1Bw4ciIsuuij+6q/+qsX1Bw8ejGnTpsWHH34YL774YqxatSqeeOKJWLBgQZvHnTdvXqxevTpWrVoVL774Yuzfvz/OPffcOHjwYFc8jZw0YcKE2L17d5PbVVddFSNGjIixY8e2ue8555zTZL+nn366m8469y1ZsqTJ1/Y//af/1Ob2P/nJT+LOO++M++67LzZs2BClpaXxb/7Nv4kPPvigm844N/3+97+Pzz77LH7xi1/E66+/HnfddVf8/Oc/j5tvvvmQ+7o+jtxjjz0W8+bNix//+MexadOmmDhxYkydOjW2b9/e4vZvv/12fO9734uJEyfGpk2b4uabb47rr78+nnjiiW4+89y0fv36mD17drz88suxdu3a+PTTT2Py5Mnx4YcfHnLfP/zhD02uh29+85vdcMa5b/To0U2+rps3b251W9dH19qwYUOT12Lt2rUREXHRRRe1uZ9ro3N8+OGH8a1vfSvuu+++Ftd35H3Sb37zm5gxY0bMmjUrfvvb38asWbPi4osvjldeeaV9J5floAcffDArKSlptvzpp5/OjjrqqOzdd99tXPZf/+t/zYqKirJ9+/a1eKz3338/KywszFatWtW47N13382OOuqo7H/+z//Z6efeVxw4cCA74YQTsiVLlrS53WWXXZZ9//vf756T6mMqKiqyu+6667C3/+yzz7LS0tLs9ttvb1z2z//8z1lJSUn285//vAvOsG/7yU9+ko0cObLNbVwfneNf/+t/nV177bVNlp188snZj370oxa3/4//8T9mJ598cpNl11xzTTZu3LguO8e+rLa2NouIbP369a1u89xzz2URkb333nvdd2J9xKJFi7Jvfetbh72966N7zZ07NzvxxBOzzz77rMX1ro2uExHZ6tWrG+939H3SxRdfnJ1zzjlN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\n", "text/plain": [ - "
" + "
" ] }, "metadata": {}, @@ -688,26 +522,26 @@ ], "source": [ "ia.plot(width=(20,20),\n", - " basis='xy',\n", + " basis='xz',\n", " colors=colormap,\n", - " origin=(0.,0.,150),\n", + " origin=(0.,0., 446),\n", " color_by='material',\n", - " pixels=(400,400))" + " pixels=(800,800))" ] }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 10, "id": "ee56bc53", "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 8, + "execution_count": 10, "metadata": {}, "output_type": "execute_result" }, @@ -733,7 +567,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 7, "id": "f71ac1b6", "metadata": {}, "outputs": [], @@ -751,6 +585,23 @@ " gr_cyl_ul, gr_cyl_maxy, gr_cyl_br, \n", " gr_cyl_maxx, gr_cyl_ru) = list(gr_sq_neg.get_surfaces().values())\n", " \n", + " # slabs that line up with rounded edges\n", + " slab_u = -gr_maxy & +gr_cyl_maxy & -gr_cyl_maxx & +gr_cyl_minx\n", + " slab_l = +gr_minx & -gr_cyl_minx & -gr_cyl_maxy & +gr_cyl_miny\n", + " slab_b = +gr_miny & -gr_cyl_miny & -gr_cyl_maxx & +gr_cyl_minx\n", + " slab_r = -gr_maxx & +gr_cyl_maxx & -gr_cyl_maxy & +gr_cyl_miny\n", + " slabs = (slab_u, slab_l, slab_b, slab_r)\n", + " \n", + " # the rounded edges themselves\n", + " quarter_ul = -gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy\n", + " quarter_br = -gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny\n", + " quarter_lb = -gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny\n", + " quarter_ru = -gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy\n", + " quarters = (quarter_ul, quarter_br, quarter_lb, quarter_ru)\n", + " \n", + " # remaining square\n", + " gr_sq = +gr_cyl_minx & -gr_cyl_maxx & +gr_cyl_miny & -gr_cyl_maxy\n", + " \n", " r_d = 1.16\n", " e_d = 2 * r_d / np.sqrt(3)\n", " r_dt = 0.8\n", @@ -759,7 +610,21 @@ " l2 = 6.505\n", " l3 = 8.03646\n", " ul = openmc.model.hexagonal_prism(origin=(-l1, l2), edge_length=e_d, orientation='x', corner_radius=r_c)\n", + " (ul_u, ul_b, ul_ur, ul_br, ul_bl, ul_ul,\n", + " ul_cyl_bl_in, ul_cyl_bl_out, \n", + " ul_cyl_ul_in, ul_cyl_ul_out,\n", + " ul_cyl_br_in, ul_cyl_br_out,\n", + " ul_cyl_ur_in, ul_cyl_ur_out,\n", + " ul_cyl_l_in, ul_cyl_l_out,\n", + " ul_cyl_r_in, ul_yl_r_out)= list(ul.get_surfaces().values())\n", " br = openmc.model.hexagonal_prism(origin=(l1, -l2), edge_length=e_d, orientation='x',corner_radius=r_c)\n", + " (br_u, br_b, br_ur, br_br, br_bl, br_ul,\n", + " br_cyl_bl_in, br_cyl_bl_out, \n", + " br_cyl_ul_in, br_cyl_ul_out,\n", + " br_cyl_br_in, br_cyl_br_out,\n", + " br_cyl_ur_in, br_cyl_ur_out,\n", + " br_cyl_l_in, br_cyl_l_out,\n", + " br_cyl_r_in, br_yl_r_out)= list(br.get_surfaces().values())\n", " lb = openmc.model.hexagonal_prism(origin=(-l2, -l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", " ru = openmc.model.hexagonal_prism(origin=(l2, l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", " ul_t = openmc.ZCylinder(-l1, -l3, r_dt, name='corner_ul_tip')\n", @@ -768,9 +633,9 @@ " lb_t = openmc.ZCylinder(l3, -l1, r_dt, name='corner_lb_tip')\n", " \n", " gr_ul = ul & -eb_maxy & +gr_maxy# | \n", - " gr_ul_fill = ul & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy\n", + " gr_ul_fill = -ul_ul & +ul_cyl_l_out & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy\n", " gr_br = br & +eb_miny & -gr_miny# | \n", - " gr_br_fill = br & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny \n", + " gr_br_fill = +br_br & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny \n", " gr_lb = lb & +eb_minx & -gr_minx# | \n", " gr_lb_fill = lb & +gr_cyl_lb & +gr_minx & -gr_cyl_minx & -gr_cyl_miny \n", " gr_ru = ru & -eb_maxx & +gr_maxx# | \n", @@ -784,185 +649,559 @@ " \n", " gr_corners = (gr_ul, gr_br, gr_lb, gr_ru, gr_ul_fill, gr_br_fill, gr_lb_fill, gr_ru_fill)\n", " gr_t = (gr_ul_t, gr_br_t, gr_ru_t, gr_lb_t)\n", - "\n", - " inter_elem_channel = (~gr_sq_neg & elem_bound &\n", - " ~ul & ~br & ~lb & ~ru &\n", - " +ul_t & +br_t & +ru_t & +lb_t)\n", + " \n", + " iec_1 = +gr_cyl_miny & -gr_cyl_maxy & +gr_cyl_maxx & -eb_maxx & +lb_t & ~ru & +gr_cyl_ru\n", + " iec_2 = (+gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy) & ~ru & +br_t & -eb_maxx & -eb_maxy\n", + " iec_3 = +gr_cyl_minx & -gr_cyl_maxx & +gr_cyl_maxy & -eb_maxy & +br_t & ~ul & +gr_cyl_ul\n", + " iec_4 = (+gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy) & ~ul & +ru_t & +eb_minx & -eb_maxy\n", + " iec_5 = +gr_cyl_miny & -gr_cyl_maxy & -gr_cyl_minx & +eb_minx & +ru_t & ~lb & +gr_cyl_lb\n", + " iec_6 = (+gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny) & ~lb & +ul_t & +eb_minx & +eb_miny\n", + " iec_7 = +gr_cyl_minx & -gr_cyl_maxx & -gr_cyl_miny & +eb_miny & +ul_t & ~br & +gr_cyl_br\n", + " iec_8 = (+gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny) & ~br & +lb_t & -eb_maxx & +eb_miny\n", + "\n", + " inter_elem_channel = (iec_1, iec_2, iec_3, iec_4, iec_5, iec_6, iec_7, iec_8)\n", + " #inter_elem_channel = (~gr_sq_neg & elem_bound &\n", + " # ~ul & ~br & ~lb & ~ru &\n", + " # +ul_t & +br_t & +ru_t & +lb_t)\n", " \n", "\n", - "\n", - " return fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel\n", + " return fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel\n", " " ] }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 8, "id": "d17047bd", "metadata": {}, "outputs": [], "source": [ - "def control_rod(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel):\n", + "def control_rod(fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel):\n", " s1 = openmc.ZCylinder(r=4.7625, name='control_rod')\n", "\n", " c1 = openmc.Cell(fill=moder, region=-s1, name='control_rod')\n", " c2 = openmc.Cell(fill=fuel, region=(+s1 & -fuel_hole), name='cr_fuel_inner')\n", " \n", - " c3 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg), name='cr_moderator')\n", - " c4 = openmc.Cell(fill=fuel, region=inter_elem_channel, name='cr_fuel_outer')\n", + " c3 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq), name='cr_moderator')\n", + " \n", + " c3_slab_u = openmc.Cell(fill=moder, region=slabs[0], name='cr_moderator_slab_u')\n", + " c3_slab_l = openmc.Cell(fill=moder, region=slabs[1], name='cr_moderator_slab_l')\n", + " c3_slab_b = openmc.Cell(fill=moder, region=slabs[2], name='cr_moderator_slab_b')\n", + " c3_slab_r = openmc.Cell(fill=moder, region=slabs[3], name='cr_moderator_slab_r')\n", + " \n", + " c3_quarter_u = openmc.Cell(fill=moder, region=quarters[0], name='cr_moderator_quarter_u')\n", + " c3_quarter_l = openmc.Cell(fill=moder, region=quarters[1], name='cr_moderator_quarter_l')\n", + " c3_quarter_b = openmc.Cell(fill=moder, region=quarters[2], name='cr_moderator_quarter_b')\n", + " c3_quarter_r = openmc.Cell(fill=moder, region=quarters[3], name='cr_moderator_quarter_r')\n", " \n", " c3_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='cr_moderator_ul')\n", " c3_br = openmc.Cell(fill=moder, region=gr_corners[1], name='cr_moderator_br')\n", " c3_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='cr_moderator_ru')\n", " c3_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='cr_moderator_lb')\n", + " \n", " c3_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='cr_moderator_ul_fill')\n", " c3_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='cr_moderator_br_fill')\n", " c3_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='cr_moderator_ru_fill')\n", " c3_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='cr_moderator_lb_fill')\n", + " \n", " c3_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='cr_moderator_ul_t')\n", " c3_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='cr_moderator_br_t')\n", " c3_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='cr_moderator_ru_t')\n", " c3_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='cr_moderator_lb_t')\n", + " \n", + " #c4 = openmc.Cell(fill=fuel, region=inter_elem_channel, name='cr_fuel_outer')\n", + " c41 = openmc.Cell(fill=fuel, region=(inter_elem_channel[0]), name='cr_fuel_outer_1')\n", + " c42 = openmc.Cell(fill=fuel, region=(inter_elem_channel[1]), name='cr_fuel_outer_2')\n", + " c43 = openmc.Cell(fill=fuel, region=(inter_elem_channel[2]), name='cr_fuel_outer_3')\n", + " c44 = openmc.Cell(fill=fuel, region=(inter_elem_channel[3]), name='cr_fuel_outer_4')\n", + " c45 = openmc.Cell(fill=fuel, region=(inter_elem_channel[4]), name='cr_fuel_outer_5')\n", + " c46 = openmc.Cell(fill=fuel, region=(inter_elem_channel[5]), name='cr_fuel_outer_6')\n", + " c47 = openmc.Cell(fill=fuel, region=(inter_elem_channel[6]), name='cr_fuel_outer_7')\n", + " c48 = openmc.Cell(fill=fuel, region=(inter_elem_channel[7]), name='cr_fuel_outer_8')\n", + "\n", "\n", " #universe_id=3\n", " cr = openmc.Universe(name='control_rod')\n", - " cr.add_cells([c1, c2, c3, c4, c3_ul, c3_br, c3_ru, c3_lb, c3_ulf, c3_brf, c3_ruf, c3_lbf, c3_ul_t, c3_br_t, c3_ru_t, c3_lb_t])\n", + " cr.add_cells([c1, c2, c3, #c4,\n", + " c3_slab_u, c3_slab_l, c3_slab_b, c3_slab_r,\n", + " c3_quarter_u, c3_quarter_l, c3_quarter_b, c3_quarter_r,\n", + " c3_ul, c3_br, c3_ru, c3_lb, \n", + " c3_ulf, c3_brf, c3_ruf, c3_lbf, \n", + " c3_ul_t, c3_br_t, c3_ru_t, c3_lb_t,\n", + " c41, c42, c43, c44, c45, c46, c47, c48])\n", " \n", " return cr\n", " \n", - "def control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel):\n", + "def control_rod_channel(fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel):\n", " c1 = openmc.Cell(fill=fuel, region=(-fuel_hole), name='crc_fuel_inner')\n", - " c2 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg), name='crc_moderator')\n", - " c3 = openmc.Cell(fill=fuel, region=inter_elem_channel, name='crc_fuel_outer')\n", + " c2 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq), name='crc_moderator')\n", + " \n", + " c2_slab_u = openmc.Cell(fill=moder, region=slabs[0], name='crc_moderator_slab_u')\n", + " c2_slab_l = openmc.Cell(fill=moder, region=slabs[1], name='crc_moderator_slab_l')\n", + " c2_slab_b = openmc.Cell(fill=moder, region=slabs[2], name='crc_moderator_slab_b')\n", + " c2_slab_r = openmc.Cell(fill=moder, region=slabs[3], name='crc_moderator_slab_r')\n", + " \n", + " c2_quarter_u = openmc.Cell(fill=moder, region=quarters[0], name='crc_moderator_quarter_u')\n", + " c2_quarter_l = openmc.Cell(fill=moder, region=quarters[1], name='crc_moderator_quarter_l')\n", + " c2_quarter_b = openmc.Cell(fill=moder, region=quarters[2], name='crc_moderator_quarter_b')\n", + " c2_quarter_r = openmc.Cell(fill=moder, region=quarters[3], name='crc_moderator_quarter_r')\n", " \n", " c2_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='crc_moderator_ul')\n", " c2_br = openmc.Cell(fill=moder, region=gr_corners[1], name='crc_moderator_br')\n", " c2_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='crc_moderator_ru')\n", " c2_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='crc_moderator_lb')\n", + " \n", " c2_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='crc_moderator_ul_fill')\n", " c2_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='crc_moderator_br_fill')\n", " c2_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='crc_moderator_ru_fill')\n", " c2_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='crc_moderator_lb_fill')\n", + " \n", " c2_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='crc_moderator_ul_t')\n", " c2_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='crc_moderator_br_t')\n", " c2_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='crc_moderator_ru_t')\n", " c2_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='crc_moderator_lb_t')\n", + " \n", + " #c3 = openmc.Cell(fill=fuel, region=inter_elem_channel, name='crc_fuel_outer')\n", + " c31 = openmc.Cell(fill=fuel, region=(inter_elem_channel[0]), name='crc_fuel_outer_1')\n", + " c32 = openmc.Cell(fill=fuel, region=(inter_elem_channel[1]), name='crc_fuel_outer_2')\n", + " c33 = openmc.Cell(fill=fuel, region=(inter_elem_channel[2]), name='crc_fuel_outer_3')\n", + " c34 = openmc.Cell(fill=fuel, region=(inter_elem_channel[3]), name='crc_fuel_outer_4')\n", + " c35 = openmc.Cell(fill=fuel, region=(inter_elem_channel[4]), name='crc_fuel_outer_5')\n", + " c36 = openmc.Cell(fill=fuel, region=(inter_elem_channel[5]), name='crc_fuel_outer_3')\n", + " c37 = openmc.Cell(fill=fuel, region=(inter_elem_channel[6]), name='crc_fuel_outer_7')\n", + " c38 = openmc.Cell(fill=fuel, region=(inter_elem_channel[7]), name='crc_fuel_outer_8')\n", + "\n", + " \n", + "\n", "\n", " # universe_id=4\n", " crc = openmc.Universe(name='control_rod_channel')\n", - " crc.add_cells([c1, c2, c3, c2_ul, c2_br, c2_ru, c2_lb, c2_ulf, c2_brf, c2_ruf, c2_lbf, c2_ul_t, c2_br_t, c2_ru_t, c2_lb_t])\n", + " crc.add_cells([c1, c2, #c3, \n", + " c2_slab_u, c2_slab_l, c2_slab_b, c2_slab_r,\n", + " c2_quarter_u, c2_quarter_l, c2_quarter_b, c2_quarter_r,\n", + " c2_ul, c2_br, c2_ru, c2_lb, \n", + " c2_ulf, c2_brf, c2_ruf, c2_lbf, \n", + " c2_ul_t, c2_br_t, c2_ru_t, c2_lb_t,\n", + " c31, c32, c33, c34, c35, c36, c37, c38])\n", " \n", " return crc" ] }, { "cell_type": "code", - "execution_count": 11, - "id": "86a55a55", + "execution_count": 9, + "id": "cea2d476", "metadata": {}, "outputs": [], "source": [ - "fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel = shared_cr_geometry() " + "fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel = shared_cr_geometry() \n", + "cr = control_rod(fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel)\n", + "fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel = shared_cr_geometry() \n", + "crc = control_rod_channel(fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel)" ] }, { "cell_type": "code", - "execution_count": 12, - "id": "861874a9", + "execution_count": 10, + "id": "aa83205f", "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "Cell\n", - "\tID =\t73\n", - "\tName =\t\n", - "\tFill =\tNone\n", - "\tRegion =\t(-206 207 -208 209 210 -211 ~((212 -218) | (213 -219) | (214 -220) | (215 -221) | (216 -222) | (217 -223)) -192 196)\n", - "\tRotation =\tNone\n", - "\tTranslation =\tNone\n", - "\tVolume =\tNone" + "" ] }, - "execution_count": 12, + "execution_count": 10, "metadata": {}, "output_type": "execute_result" + }, + { + "data": { + "image/png": "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TpfTtLW1dYq/1tbWGDt2rLNllk3lnS0zlTjyJgtAqaXyHtpb+X+vdbbMcijV2TIHF/oG58+fHxdccEGP00yYMKHTz8uXL4/DDz88zj777D7fX2NjY4wfPz62bNnS7TS1tbVRW1vb59uGiLTelJbUNFXAmw4AKVmcVc/fYvUeS7kVPO7q6+ujvr6+19NnWRbLly+Piy66KIYMGdLn+3vzzTdj+/bt0djY2Od54UCq5c0IAIqpmgIPyqns37l77LHHYuvWrXHZZZd1+ftjjz02Vq1aFRER7777blx33XWxYcOGeOWVV2LdunUxd+7cqK+vjy9+8YulXGyoWN5cAaDwjNqRBwUfueurZcuWxYwZM+LjH/94l7/fvHlztLS0RETEoEGD4tlnn41777033n777WhsbIyZM2fG/fffH8OHDy/lYjMglXOs9+LKWdQ+WlzuBQCgyqT7nrqH91bKr+AnVKkEpfpCIwAAQKn6o+yHZQIAADBw4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACABRY27G2+8MWbMmBGHHHJIfOxjH+tymm3btsXcuXPj0EMPjfr6+vj6178e7e3tPd5uW1tbXH311VFfXx+HHnponH322fHaa68V4REAAABUhqLGXXt7e5x77rnxta99rcvf7969O84888x477334oknnogVK1bEypUr49prr+3xdhcsWBCrVq2KFStWxBNPPBHvvvtunHXWWbF79+5iPAwAAIDcq8myLCv2ndx9992xYMGCePvttztd/9Of/jTOOuus2L59e4wZMyYiIlasWBGXXHJJ7Nq1K0aMGLHfbbW0tMQRRxwR//2///c4//zzIyLi9ddfj7Fjx8YjjzwSs2fPPuDytLa2Rl1dXbS0tHR5HwAAAIVSqv4YXLRb7oUNGzbElClTOsIuImL27NnR1tYWzzzzTMycOXO/eZ555pl4//33Y9asWR3XjRkzJqZMmRJPPvlkl3HX1tYWbW1tHT+3tLRExEf/yQAAAMW0pzuKPa5W1rhrbm6O0aNHd7pu5MiRMXTo0Ghubu52nqFDh8bIkSM7XT969Ohu51m6dGksWbJkv+vHjh3bzyUHAADomzfffDPq6uqKdvt9jrumpqYuQ2lvGzdujBNPPLFXt1dTU7PfdVmWdXl9T3qaZ9GiRbFw4cKOn99+++0YP358bNu2raj/ufROa2trjB07NrZv3+4w2RzwfOSL5yNfPB/54vnIF89Hvng+8qWlpSXGjRsXhx12WFHvp89xN3/+/Ljgggt6nGbChAm9uq2Ghob4+c9/3um6t956K95///39RvT2nqe9vT3eeuutTqN3u3btihkzZnQ5T21tbdTW1u53fV1dnRd7jowYMcLzkSOej3zxfOSL5yNfPB/54vnIF89Hvhx0UHH/El2f466+vj7q6+sLcufTp0+PG2+8MXbu3BmNjY0REbF69eqora2NqVOndjnP1KlTY8iQIbFmzZo477zzIiJi586d8dxzz8Utt9xSkOUCAACoNEVNx23btsUvf/nL2LZtW+zevTt++ctfxi9/+ct49913IyJi1qxZcdxxx8WFF14YmzZtir/7u7+L6667LubNm9fxCcOOHTvi2GOPjX/8x3+MiI9G2y677LK49tpr4+/+7u9i06ZN8Z/+03+K448/Pv7jf/yPxXw4AAAAuVXUE6r81//6X+Oee+7p+PmEE06IiIi1a9fGqaeeGoMGDYqHH344rrzyyvgP/+E/xLBhw+IrX/lK3HrrrR3zvP/++7F58+b49a9/3XHd97///Rg8eHCcd9558Zvf/CZOP/30uPvuu2PQoEG9Wq7a2tpYvHhxl4dqUnqej3zxfOSL5yNfPB/54vnIF89Hvng+8qVUz0dJ/s4dAAAAxVXcb/QBAABQEuIOAAAgAeIOAAAgAeIOAAAgAcnG3Y033hgzZsyIQw45JD72sY91Oc22bdti7ty5ceihh0Z9fX18/etfj/b29h5vt62tLa6++uqor6+PQw89NM4+++x47bXXivAI0rVu3bqoqanp8rJx48Zu57vkkkv2m37atGklXPJ0TZgwYb//2xtuuKHHebIsi6amphgzZkwMGzYsTj311Hj++edLtMTpeuWVV+Kyyy6LiRMnxrBhw2LSpEmxePHiA26brB+F82d/9mcxceLEOPjgg2Pq1Knx93//9z1Ov379+pg6dWocfPDBcdRRR8Wdd95ZoiVN29KlS+MP/uAPYvjw4TFq1Kj4whe+EJs3b+5xnu7eX1588cUSLXW6mpqa9vt/bWho6HEe60bxdPW+XVNTE1dddVWX01s3Cuvxxx+PuXPnxpgxY6KmpiYefPDBTr/v7z7SypUr47jjjova2to47rjjYtWqVX1etmTjrr29Pc4999z42te+1uXvd+/eHWeeeWa899578cQTT8SKFSti5cqVce211/Z4uwsWLIhVq1bFihUr4oknnoh33303zjrrrNi9e3cxHkaSZsyYETt37ux0ufzyy2PChAlx4okn9jjvnDlzOs33yCOPlGip0/ftb3+70//tH//xH/c4/S233BK33XZb3HHHHbFx48ZoaGiIz372s/HOO++UaInT9OKLL8aHH34Yf/7nfx7PP/98fP/7348777wzvvnNbx5wXuvHwN1///2xYMGC+Na3vhWbNm2Kk08+Oc4444zYtm1bl9Nv3bo1Pve5z8XJJ58cmzZtim9+85vx9a9/PVauXFniJU/P+vXr46qrroqnnnoq1qxZEx988EHMmjUr3nvvvQPOu3nz5k7rwtFHH12CJU7fJz7xiU7/r88++2y301o3imvjxo2dnos1a9ZERMS5557b43zWjcJ477334lOf+lTccccdXf6+P/tIGzZsiPPPPz8uvPDC+Kd/+qe48MIL47zzzouf//znfVu4LHHLly/P6urq9rv+kUceyQ466KBsx44dHdf9+Mc/zmpra7OWlpYub+vtt9/OhgwZkq1YsaLjuh07dmQHHXRQ9rd/+7cFX/Zq0d7eno0aNSr79re/3eN0F198cfb5z3++NAtVZcaPH599//vf7/X0H374YdbQ0JB997vf7bjuX//1X7O6urrszjvvLMISVrdbbrklmzhxYo/TWD8K49//+3+fXXHFFZ2uO/bYY7Mbbrihy+mvv/767Nhjj+103Ve/+tVs2rRpRVvGarVr164sIrL169d3O83atWuziMjeeuut0i1YlVi8eHH2qU99qtfTWzdK6xvf+EY2adKk7MMPP+zy99aN4omIbNWqVR0/93cf6bzzzsvmzJnT6brZs2dnF1xwQZ+WJ9mRuwPZsGFDTJkyJcaMGdNx3ezZs6OtrS2eeeaZLud55pln4v33349Zs2Z1XDdmzJiYMmVKPPnkk0Vf5lQ99NBD8cYbb8Qll1xywGnXrVsXo0aNimOOOSbmzZsXu3btKv4CVombb745Dj/88Ph3/+7fxY033tjjYYBbt26N5ubmTutCbW1tnHLKKdaFImhpaYnDDjvsgNNZPwamvb09nnnmmU6v64iIWbNmdfu63rBhw37Tz549O55++ul4//33i7as1ailpSUiolfrwgknnBCNjY1x+umnx9q1a4u9aFVjy5YtMWbMmJg4cWJccMEF8fLLL3c7rXWjdNrb2+O+++6LSy+9NGpqanqc1rpRfP3dR+punenrflXVxl1zc3OMHj2603UjR46MoUOHRnNzc7fzDB06NEaOHNnp+tGjR3c7Dwe2bNmymD17dowdO7bH6c4444z40Y9+FI899lh873vfi40bN8Zpp50WbW1tJVrSdH3jG9+IFStWxNq1a2P+/Plx++23x5VXXtnt9Hte7/uuQ9aFwvuXf/mX+NM//dO44oorepzO+jFwb7zxRuzevbtPr+uu3ktGjx4dH3zwQbzxxhtFW9Zqk2VZLFy4MD796U/HlClTup2usbEx7rrrrli5cmU88MADMXny5Dj99NPj8ccfL+HSpumkk06Ke++9N372s5/Ff/tv/y2am5tjxowZ8eabb3Y5vXWjdB588MF4++23e/yQ3LpROv3dR+punenrftXgPk1dZk1NTbFkyZIep9m4ceMBv7e1R1efbmRZdsBPPQoxT4r68/y89tpr8bOf/Sz++q//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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" } ], "source": [ - "openmc.Cell(region=gr_corners[0])" - ] - }, + "cr.plot(width=(20,20),\n", + " basis='xy',\n", + " colors=colormap,\n", + " origin=(0.,0.,440),\n", + " color_by='material',\n", + " pixels=(800,800))" + ] + }, { "cell_type": "code", - "execution_count": 13, - "id": "cea2d476", + "execution_count": null, + "id": "37a3fa2a", "metadata": {}, "outputs": [], "source": [ - "fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel = shared_cr_geometry() \n", - "cr = control_rod(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel)\n", - "fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel = shared_cr_geometry() \n", - "crc = control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel)" + "crc.plot(width=(20,20),\n", + " basis='xy',\n", + " colors=colormap,\n", + " origin=(0.,0.,440),\n", + " color_by='material',\n", + " pixels=(400,400))" ] }, { "cell_type": "code", - "execution_count": 14, - "id": "01b506f1", + "execution_count": 10, + "id": "ff53e9bb", "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "OrderedDict([(118,\n", + " Cell\n", + " \tID =\t118\n", + " \tName =\tcontrol_rod\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t-366\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (119,\n", + " Cell\n", + " \tID =\t119\n", + " \tName =\tcr_fuel_inner\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(366 -272)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (120,\n", + " Cell\n", + " \tID =\t120\n", + " \tName =\tcr_moderator\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(272 286 -287 288 -289)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (121,\n", + " Cell\n", + " \tID =\t121\n", + " \tName =\tcr_moderator_slab_u\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-280 289 -287 286)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (122,\n", + " Cell\n", + " \tID =\t122\n", + " \tName =\tcr_moderator_slab_l\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(277 -286 -289 288)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (123,\n", + " Cell\n", + " \tID =\t123\n", + " \tName =\tcr_moderator_slab_b\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(279 -288 -287 286)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (124,\n", + " Cell\n", + " \tID =\t124\n", + " \tName =\tcr_moderator_slab_r\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-278 287 -289 288)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (125,\n", + " Cell\n", + " \tID =\t125\n", + " \tName =\tcr_moderator_quarter_u\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-283 -286 289)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (126,\n", + " Cell\n", + " \tID =\t126\n", + " \tName =\tcr_moderator_quarter_l\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-284 287 -288)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (127,\n", + " Cell\n", + " \tID =\t127\n", + " \tName =\tcr_moderator_quarter_b\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-282 -286 -288)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (128,\n", + " Cell\n", + " \tID =\t128\n", + " \tName =\tcr_moderator_quarter_r\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-285 287 289)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (129,\n", + " Cell\n", + " \tID =\t129\n", + " \tName =\tcr_moderator_ul\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-290 291 -292 293 294 -295 ~((296 -302) | (297 -303) | (298 -304) | (299 -305) | (300 -306) | (301 -307)) -276 280)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (130,\n", + " Cell\n", + " \tID =\t130\n", + " \tName =\tcr_moderator_br\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-308 309 -310 311 312 -313 ~((314 -320) | (315 -321) | (316 -322) | (317 -323) | (318 -324) | (319 -325)) 275 -279)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (131,\n", + " Cell\n", + " \tID =\t131\n", + " \tName =\tcr_moderator_ru\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-326 327 -328 -329 330 331 ~((332 -338) | (333 -339) | (334 -340) | (335 -341) | (336 -342) | (337 -343)) 273 -277)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (132,\n", + " Cell\n", + " \tID =\t132\n", + " \tName =\tcr_moderator_lb\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-344 345 -346 -347 348 349 ~((350 -356) | (351 -357) | (352 -358) | (353 -359) | (354 -360) | (355 -361)) -274 278)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (133,\n", + " Cell\n", + " \tID =\t133\n", + " \tName =\tcr_moderator_ul_fill\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-295 283 -280 -286 289)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (134,\n", + " Cell\n", + " \tID =\t134\n", + " \tName =\tcr_moderator_br_fill\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(311 284 279 287 -288)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (135,\n", + " Cell\n", + " \tID =\t135\n", + " \tName =\tcr_moderator_ru_fill\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-326 327 -328 -329 330 331 ~((332 -338) | (333 -339) | (334 -340) | (335 -341) | (336 -342) | (337 -343)) 282 277 -286 -288)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (136,\n", + " Cell\n", + " \tID =\t136\n", + " \tName =\tcr_moderator_lb_fill\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-344 345 -346 -347 348 349 ~((350 -356) | (351 -357) | (352 -358) | (353 -359) | (354 -360) | (355 -361)) 285 -278 287 289)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (137,\n", + " Cell\n", + " \tID =\t137\n", + " \tName =\tcr_moderator_ul_t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-362 275 -279)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (138,\n", + " Cell\n", + " \tID =\t138\n", + " \tName =\tcr_moderator_br_t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-363 -276 280)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (139,\n", + " Cell\n", + " \tID =\t139\n", + " \tName =\tcr_moderator_ru_t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-364 273 -277)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (140,\n", + " Cell\n", + " \tID =\t140\n", + " \tName =\tcr_moderator_lb_t\n", + " \tFill =\tMaterial 2\n", + " \tRegion =\t(-365 -274 278)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (141,\n", + " Cell\n", + " \tID =\t141\n", + " \tName =\tcr_fuel_outer_1\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(288 -289 287 -274 365 ~(-344 345 -346 -347 348 349 ~((350 -356) | (351 -357) | (352 -358) | (353 -359) | (354 -360) | (355 -361))) 285)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (142,\n", + " Cell\n", + " \tID =\t142\n", + " \tName =\tcr_fuel_outer_2\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(285 287 289 ~(-344 345 -346 -347 348 349 ~((350 -356) | (351 -357) | (352 -358) | (353 -359) | (354 -360) | (355 -361))) 363 -274 -276)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (143,\n", + " Cell\n", + " \tID =\t143\n", + " \tName =\tcr_fuel_outer_3\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(286 -287 289 -276 363 ~(-290 291 -292 293 294 -295 ~((296 -302) | (297 -303) | (298 -304) | (299 -305) | (300 -306) | (301 -307))) 283)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (144,\n", + " Cell\n", + " \tID =\t144\n", + " \tName =\tcr_fuel_outer_4\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(283 -286 289 ~(-290 291 -292 293 294 -295 ~((296 -302) | (297 -303) | (298 -304) | (299 -305) | (300 -306) | (301 -307))) 364 273 -276)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (145,\n", + " Cell\n", + " \tID =\t145\n", + " \tName =\tcr_fuel_outer_5\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(288 -289 -286 273 364 ~(-326 327 -328 -329 330 331 ~((332 -338) | (333 -339) | (334 -340) | (335 -341) | (336 -342) | (337 -343))) 282)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (146,\n", + " Cell\n", + " \tID =\t146\n", + " \tName =\tcr_fuel_outer_6\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(282 -286 -288 ~(-326 327 -328 -329 330 331 ~((332 -338) | (333 -339) | (334 -340) | (335 -341) | (336 -342) | (337 -343))) 362 273 275)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (147,\n", + " Cell\n", + " \tID =\t147\n", + " \tName =\tcr_fuel_outer_7\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(286 -287 -288 275 362 ~(-308 309 -310 311 312 -313 ~((314 -320) | (315 -321) | (316 -322) | (317 -323) | (318 -324) | (319 -325))) 284)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone),\n", + " (148,\n", + " Cell\n", + " \tID =\t148\n", + " \tName =\tcr_fuel_outer_8\n", + " \tFill =\tMaterial 1\n", + " \tRegion =\t(284 287 -288 ~(-308 309 -310 311 312 -313 ~((314 -320) | (315 -321) | (316 -322) | (317 -323) | (318 -324) | (319 -325))) 365 -274 275)\n", + " \tRotation =\tNone\n", + " \tTemperature =\tNone\n", + " \tTranslation =\tNone\n", + " \tVolume =\tNone)])" ] }, - "execution_count": 14, + "execution_count": 10, "metadata": {}, "output_type": "execute_result" - }, - { - "data": { - "image/png": "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97fcCTNmzND//u//6t133w3arn///urfv7/3en5+vg4cOKDFixfrmmuuifUw/Ro/frz378svv1z5+fnq27evXnnlFZ+fuW3K5m0hNRQN48eP95mVPJeN2yKQSN5zovE+lVDhnIg/VxmKSNarpKREPXr00I033hj242VnZ6t3797au3dv2H2Dac32aTxa+dNPP/Ubzo1HsFZXV3t/wUxqeO4Dba9Ihbsehw8f1qhRo5Sfn68XX3wx7MeL1fbwJz09XW3btm32KT7Y85iVleW3fbt27YJ+kIqHBx98UKtWrdKmTZvUs2fPsPsPGzZMy5cvj8HIItO5c2ddfvnlAf8XbN4WkrR//36tX79eK1euDLuvbdsi0vecQNso3PephArnZP25ynDXyxijkpIS3X333Wrfvn3Yj3fs2DEdOHDA5x8uGlqzfSorKyUp4Jjy8vKUlZWl8vJy7w+o1NfXa+PGjVq0aFFkAw4gnPU4dOiQRo0apcGDB6ukpCSi33iN1fbwp0OHDho8eLDKy8t1yy23eJeXl5frpptu8tsnPz9fb731ls+ydevWaciQIRH9/0WDMUYPPvigysrKVFFRoby8vIjup7KyMi7Pe6g8Ho92796tq6++2u/tNm6LpkpKSpSRkaEJEyaE3de2bRHpe05+fr7Ky8t9ZgfXrVsXfgEX1uFjCWT//v2msrLSzJ8/33zve98zlZWVprKy0nu6TuOpVKNHjzYffPCBWb9+venZs6fPqVQHDx40/fv3N++//7532bRp00zPnj3N+vXrzQcffGCuvfbauJ1K1Wj9+vVGkvnoo4/83t6/f3+zcuVKY4wxX331lXnooYfM5s2bzb59+8yGDRtMfn6+ufDCCx07BWnz5s3mmWeeMZWVlebzzz83b7zxhsnJyTE33nijT7um62FMw2kNaWlpZuXKlebDDz80d9xxh6OnUh06dMh8//vfN9dee605ePCgzykhTdm2PRpPpVq2bJn56KOPzKxZs0znzp3NF198YYwx5pFHHjF33XWXt33j6TuzZ882H330kVm2bJnjp+/85Cc/MWlpaaaiosLnef/mm2+8bc5dj2effdaUlZWZTz75xOzcudM88sgjRpIpLS11YhWMMcY89NBDpqKiwnz++efmvffeMzfccIPp0qVLQm2LRqdPnza9evUyP/vZz5rdZuu2+Oqrr7zZIMn7vtR4WmEo7zl33XWXz5kOf/7zn03btm3Nk08+aXbv3m2efPJJTqVqasqUKUZSs0vT8+72799vJkyYYDp16mS6d+9uZsyYYf7+9797b9+3b1+zPt9++62ZMWOG6d69u+nUqZO54YYbTFVVVRzXzJg77rjDDB8+PODtkkxJSYkxxphvvvnGjBkzxlxwwQWmffv2plevXmbKlClxH3NT27dvN0OHDjVpaWmmY8eOpn///qawsNB8/fXXPu2arocxDac2FBYWmqysLON2u80111xjPvzwwziP/qySkhK//2Pnfua1cXs8//zzpnfv3qZDhw7myiuv9DkFacqUKWbEiBE+7SsqKsygQYNMhw4dTJ8+fcwLL7wQ1/GeK9Dz3vT/5dz1WLRokenbt6/p2LGj6datm7nqqqvM6tWr4z/4JhrPm23fvr3Jyckxt956q9m1a5f39kTYFo3Wrl3rPXf5XLZui8ZTus69TJkyxRgT2nvOiBEjvO0b/dd//Zfp37+/ad++vRkwYEBEHzr4yUgAACyTsqdSAQBgK8IZAADLEM4AAFiGcAYAwDKEMwAAliGcAQCwDOEMAIBlCGcAACxDOAMAYBnCGQAAyxDOAABYhnAGAMAy/x89DcJeVKxAIQAAAABJRU5ErkJggg==\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" } ], "source": [ - "cr.plot(width=(20,20),\n", - " basis='xy',\n", - " colors=colormap,\n", - " origin=(0.,0.,440),\n", - " color_by='material',\n", - " pixels=(400,400))" + "cr.cells" ] }, { "cell_type": "code", - "execution_count": 15, - "id": "f2369aa1", + "execution_count": 10, + "id": "0e965d29", "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 15, + "execution_count": 10, "metadata": {}, "output_type": "execute_result" }, { "data": { - "image/png": "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vHnz9IMf/EBDhw4N2i41NVUvvPCCiouLtXbtWmVlZWncuHHaunVrBEfrb8SIEVq5cqXeeustvfjii6qurtaoUaN07NixgO1t3xaS9Nprr+n48ePNFg02botztfc9J9g2auv7lKO/59xW0fhzla3RnvU6dOiQ3nrrLf32t79t8f6nTJni+3vo0KEaPny4Bg4cqPXr1+uWW25p97jP1Zb1mDt3rm/Z9773PfXp00c/+tGPfNV0MOc+zx197gNpz/Y4fPiwJkyYoFtvvVX33ntvs30jtT2a09bnMVD7QMudkJeXpz//+c965513mm2XlZWlrKws3/WcnBxVVlZq6dKluvrqq8M9zIAmTpzo+/vyyy9XTk6OBg0apJdfftnvZ24bs3lbSPVFw8SJE/1mJc9l47YIpj3vOaF4n4qqcI7Gn6tsjfasV1FRkfr166cbbrihzY+XmpqqgQMHav/+/W3u25yObJ+Go5U//fTTgOHccARrdXW17xfMpPrnPtj2aq+2rsfhw4c1duxY5eTk6IUXXmjz44VrewSSmJiozp07N/kU39zzmJKSErB9ly5dmv0gFQkPPPCA1q1bp61bt6p///5t7j9y5EitWrUqDCNrn549e+ryyy8P+r9g87aQpIMHD2rTpk1au3Ztm/vati3a+54TbBu19X0qqsI5Vn+usq3rZYxRUVGR7rrrLnXt2rXNj3fs2DFVVlb6/cOFQke2T3l5uSQFHVNmZqZSUlJUWlrq+wGVuro6bdmyRUuWLGnfgINoy3pUVVVp7Nixys7OVlFRUbt+4zVc2yOQbt26KTs7W6Wlpbr55pt9y0tLS3XjjTcG7JOTk6M33njDb9nGjRs1fPjwdv3/hYIxRg888IBKSkpUVlamzMzMdt1PeXl5RJ731vJ6vdq7d6+uuuqqgLfbuC0aKyoqUlJSkiZNmtTmvrZti/a+5+Tk5Ki0tNRvdnDjxo1tL+DadPhYFDl48KApLy83CxcuNN/5zndMeXm5KS8v952u03Aq1bhx48z7779vNm3aZPr37+93KtWhQ4dMVlaWee+993zLZs6cafr37282bdpk3n//fXPNNddE7FSqBps2bTKSzEcffRTw9qysLLN27VpjjDFfffWVefDBB822bdvMgQMHzObNm01OTo658MILHTsFadu2bebpp5825eXl5vPPPzdr1qwxaWlp5oYbbvBr13g9jKk/rSEhIcGsXbvWfPDBB+b222939FSqqqoq893vftdcc8015tChQ36nhDRm2/ZoOJVqxYoV5qOPPjJz5swxPXv2NF988YUxxpiHH37Y3Hnnnb72DafvzJ0713z00UdmxYoVjp++8+Mf/9gkJCSYsrIyv+f9m2++8bU5dz2eeeYZU1JSYj755BOzZ88e8/DDDxtJpri42IlVMMYY8+CDD5qysjLz+eefm3fffddcf/31plevXlG1LRqcPn3aDBgwwPz0pz9tcput2+Krr77yZYMk3/tSw2mFrXnPufPOO/3OdPjjH/9oOnfubJ544gmzd+9e88QTT3AqVWPTpk0zkppcGp93d/DgQTNp0iTTo0cP07dvX5OXl2f+9re/+W4/cOBAkz7ffvutycvLM3379jU9evQw119/vamoqIjgmhlz++23m1GjRgW9XZIpKioyxhjzzTffmPHjx5sLLrjAdO3a1QwYMMBMmzYt4mNubNeuXWbEiBEmISHBdO/e3WRlZZn8/Hzz9ddf+7VrvB7G1J/akJ+fb1JSUozb7TZXX321+eCDDyI8+rOKiooC/o+d+5nXxu3x3HPPmYEDB5pu3bqZK6+80u8UpGnTppnRo0f7tS8rKzPDhg0z3bp1MxkZGeb555+P6HjPFex5b/z/cu56LFmyxAwaNMh0797d9OnTx/zgBz8w69evj/zgG2k4b7Zr164mLS3N3HLLLebDDz/03R4N26LBW2+95Tt3+Vy2bouGU7rOvUybNs0Y07r3nNGjR/vaN/jv//5vk5WVZbp27WoGDx7crg8d/GQkAACWidtTqQAAsBXhDACAZQhnAAAsQzgDAGAZwhkAAMsQzgAAWIZwBgDAMoQzAACWIZwBALAM4QwAgGUIZwAALEM4AwBgmf8Hdhnn4JghwTEAAAAASUVORK5CYII=\n", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAA3cAAANRCAYAAABAxkU9AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/NK7nSAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA5e0lEQVR4nO3de3DV5Z348U/kEtFCRCIkqQhILVax1kKXy1YRWbmoWLX10s4qTNUpVVRAxkovCzijqGPVaW21tjTVtS12F7F0tBWogLWiRYpdtcpiRUBMhoXVRNEmiN/fH/2RNZIEAknOyZPXa+bMeL7n+Z7znJx88bzznEtBlmVZAAAA0K4dlOsJAAAAcODEHQAAQALEHQAAQALEHQAAQALEHQAAQALEHQAAQALEHQAAQALEHQAAQALEHQAAQALEHQAAQAJaNe6eeOKJmDhxYpSVlUVBQUE8/PDD9S7PsizmzJkTZWVl0a1btzj11FPjxRdf3Ov1Lly4MI477rgoLCyM4447LhYtWtRK9wAAAKB9aNW427FjR5x44olx1113NXj5rbfeGrfffnvcddddsXr16igpKYnTTz893n777Uavc9WqVXHhhRfGxRdfHH/5y1/i4osvjgsuuCCeeeaZ1robAAAAea8gy7KsTW6ooCAWLVoU55xzTkT8Y9WurKwspk2bFt/4xjciIqKmpib69OkTt9xyS3zta19r8HouvPDCqK6ujt/+9rd128aPHx89e/aMX/7yl61+PwAAAPJR51zd8IYNG6KysjLGjh1bt62wsDBGjRoVTz31VKNxt2rVqpg+fXq9bePGjYs777yz0duqqamJmpqauvMffPBB/O///m/06tUrCgoKDuyOAAAANCHLsnj77bejrKwsDjqo9V48mbO4q6ysjIiIPn361Nvep0+f2LhxY5P7NbTP7utryLx582Lu3LkHMFsAAIADs3nz5jjyyCNb7fpzFne7fXTlLMuyva6mNXefWbNmxYwZM+rOV1VVxVFHHRWbN2+OHj167MesAQAA9k11dXX07ds3unfv3qq3k7O4KykpiYh/rMSVlpbWbd+6deseK3Mf3e+jq3R726ewsDAKCwv32N6jRw9xBwAAtInWfktYzr7nbsCAAVFSUhJLly6t21ZbWxsrV66MkSNHNrrfiBEj6u0TEbFkyZIm9wEAAEhdq67cvfPOO/HKK6/Und+wYUM899xzcfjhh8dRRx0V06ZNi5tuuimOOeaYOOaYY+Kmm26KQw45JL7yla/U7XPJJZfExz/+8Zg3b15ERFxzzTVxyimnxC233BJf+MIX4te//nUsW7Ysnnzyyda8KwAAAHmtVePu2WefjdGjR9ed3/2+t0mTJsXPfvazuO666+K9996LK664It58880YNmxYLFmypN5rUTdt2lTvE2VGjhwZCxYsiG9/+9vxne98JwYOHBgPPvhgDBs2rDXvCgAAQF5rs++5yyfV1dVRVFQUVVVV3nMHAAC0qrbqj5y95w4AAICWI+4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAAS0DnXE4B8Nbdgbq6n0KpmZ7NzPQUAAFpQzlfu+vfvHwUFBXucrrzyygbHr1ixosHxL7/8chvPnJSlHnYAAKQn5yt3q1evjl27dtWdf+GFF+L000+P888/v8n91q1bFz169Kg7f8QRR7TaHCFFcwvmWr0DAEhIzuPuo1F28803x8CBA2PUqFFN7te7d+847LDD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iVFQUBCLFy/e47KampqoqampO19dXR19+/aNqqqq6NGjxwHPGwAAoDHV1dVRVFTU6v2RNyt3V111VSxevDiWL1/e7LCLiBg+fHisX7++wcsKCwujR48e9U4AAAApyfkHqmRZFldddVUsWrQoVqxYEQMGDNiv61m7dm2Ulpa28OwAAADah5zH3ZVXXhm/+MUv4te//nV07949KisrIyKiqKgounXrFhERs2bNii1btsT9998fERF33nln9O/fP44//viora2NBx54IBYuXBgLFy7M2f0AAADIpZzH3d133x0REaeeemq97eXl5TF58uSIiKioqIhNmzbVXVZbWxszZ86MLVu2RLdu3eL444+PRx55JM4444y2mjYAAEBeyasPVGkrbfWGRgAAgA73gSoAAADsP3EHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQgLyIux/+8IcxYMCAOPjgg2PIkCHxhz/8ocnxK1eujCFDhsTBBx8cRx99dNxzzz1tNFMAAID8lPO4e/DBB2PatGnxrW99K9auXRsnn3xyTJgwITZt2tTg+A0bNsQZZ5wRJ598cqxduza++c1vxtVXXx0LFy5s45kDAADkj4Isy7JcTmDYsGHx2c9+Nu6+++66bZ/61KfinHPOiXnz5u0x/hvf+EYsXrw4XnrppbptU6ZMib/85S+xatWqfbrN6urqKCoqiqqqqujRo8eB3wkAAIBGtFV/5HTlrra2NtasWRNjx46tt33s2LHx1FNPNbjPqlWr9hg/bty4ePbZZ2Pnzp0N7lNTUxPV1dX1TgAAACnJadxt27Ytdu3aFX369Km3vU+fPlFZWdngPpWVlQ2Of//992Pbtm0N7jNv3rwoKiqqO/Xt27dl7gAAAECeyPl77iIiCgoK6p3PsmyPbXsb39D23WbNmhVVVVV1p82bNx/gjAEAAPJL51zeeHFxcXTq1GmPVbqtW7fusTq3W0lJSYPjO3fuHL169Wpwn8LCwigsLGyZSQMAAOShnK7cde3aNYYMGRJLly6tt33p0qUxcuTIBvcZMWLEHuOXLFkSQ4cOjS5durTaXAEAAPJZzl+WOWPGjPjJT34SP/3pT+Oll16K6dOnx6ZNm2LKlCkR8Y+XVF5yySV146dMmRIbN26MGTNmxEsvvRQ//elPY/78+TFz5sxc3QUAAICcy+nLMiMiLrzwwti+fXvccMMNUVFREYMHD45HH300+vXrFxERFRUV9b7zbsCAAfHoo4/G9OnT4wc/+EGUlZXF9773vfjiF7+Yq7sAAACQczn/nrtc8D13AABAW+kQ33MHAABAyxB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACchZ3L322mtx6aWXxoABA6Jbt24xcODAmD17dtTW1ja53+TJk6OgoKDeafjw4W00awAAgPzUOVc3/PLLL8cHH3wQP/rRj+ITn/hEvPDCC3H55ZfHjh074rbbbmty3/Hjx0d5eXnd+a5du7b2dAEAAPJazuJu/PjxMX78+LrzRx99dKxbty7uvvvuvcZdYWFhlJSUtPYUAQAA2o28es9dVVVVHH744Xsdt2LFiujdu3d88pOfjMsvvzy2bt3a5Piampqorq6udwIAAEhJ3sTd3/72t/j+978fU6ZMaXLchAkT4uc//3k8/vjj8d3vfjdWr14dp512WtTU1DS6z7x586KoqKju1Ldv35aePgAAQE4VZFmWteQVzpkzJ+bOndvkmNWrV8fQoUPrzr/xxhsxatSoGDVqVPzkJz9p1u1VVFREv379YsGCBXHeeec1OKampqZe/FVXV0ffvn2jqqoqevTo0azbAwAAaI7q6uooKipq9f5o8ffcTZ06NS666KImx/Tv37/uv994440YPXp0jBgxIu69995m315paWn069cv1q9f3+iYwsLCKCwsbPZ1AwAAtBctHnfFxcVRXFy8T2O3bNkSo0ePjiFDhkR5eXkcdFDzXyW6ffv22Lx5c5SWljZ7XwAAgFTk7D13b7zxRpx66qnRt2/fuO222+J//ud/orKyMiorK+uNO/bYY2PRokUREfHOO+/EzJkzY9WqVfHaa6/FihUrYuLEiVFcXBznnntuLu4GAABAXsjZVyEsWbIkXnnllXjllVfiyCOPrHfZh98GuG7duqiqqoqIiE6dOsXzzz8f999/f7z11ltRWloao0ePjgcffDC6d+/epvMHAADIJy3+gSrtQVu9oREAAKCt+iNvvgoBAACA/SfuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEiDuAAAAEpDTuOvfv38UFBTUO11//fVN7pNlWcyZMyfKysqiW7duceqpp8aLL77YRjMGAADITzlfubvhhhuioqKi7vTtb3+7yfG33npr3H777XHXXXfF6tWro6SkJE4//fR4++2322jGAAAA+Sfncde9e/coKSmpO33sYx9rdGyWZXHnnXfGt771rTjvvPNi8ODBcd9998W7774bv/jFL9pw1gAAAPkl53F3yy23RK9eveIzn/lM3HjjjVFbW9vo2A0bNkRlZWWMHTu2blthYWGMGjUqnnrqqUb3q6mpierq6non2p+5BXNjbsHcXE8DAADyUudc3vg111wTn/3sZ6Nnz57xpz/9KWbNmhUbNmyIn/zkJw2Or6ysjIiIPn361Nvep0+f2LhxY6O3M2/evJg7VxS0V4IOAAD2rsVX7ubMmbPHh6R89PTss89GRMT06dNj1KhR8elPfzouu+yyuOeee2L+/Pmxffv2Jm+joKCg3vksy/bY9mGzZs2KqqqqutPmzZsP/I7S6qzUAQDAvmvxlbupU6fGRRdd1OSY/v37N7h9+PDhERHxyiuvRK9evfa4vKSkJCL+sYJXWlpat33r1q17rOZ9WGFhYRQWFu5t6uQRUQcAAM3T4nFXXFwcxcXF+7Xv2rVrIyLqhduHDRgwIEpKSmLp0qVx0kknRUREbW1trFy5Mm655Zb9mzB5RdQBAMD+ydl77latWhVPP/10jB49OoqKimL16tUxffr0OPvss+Ooo46qG3fsscfGvHnz4txzz42CgoKYNm1a3HTTTXHMMcfEMcccEzfddFMccsgh8ZWvfCVXd4UWIOoAAODA5CzuCgsL48EHH4y5c+dGTU1N9OvXLy6//PK47rrr6o1bt25dVFVV1Z2/7rrr4r333osrrrgi3nzzzRg2bFgsWbIkunfv3tZ3gRYg6gAAoGUUZFmW5XoSba26ujqKioqiqqoqevTokevpdFj7G3azs9ktPBMAAGg9bdUfOf0qBDomq3UAANDycv4l5gAAABw4cQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJAAcQcAAJCAzrmeAAAAsG/mFszdY9vsbHYOZkI+snIHAACQAHEHAADtlFU7PkzcAQAAJEDcAQBAO2TVjo8SdwAA0M4IOxoi7gAAABIg7gAAoB2xakdjxB0AAEACxB3tTkNf3gkAkLq5BXOt2tEkcQcAAJAAcQcAAO2AVTv2RtzRLnlpJgAA1CfuaHP+6gQAAC1P3JETs7PZIg8AAFqQuCOnDiTwvDQTAAD+j7gj56ziAQDAgRN35I39iTyrdwAA8A/ijrxjJQ8AAJpP3JG39jXwrN4BAIC4I89ZxQMAgH0j7mgX9hZ5Vu8AAOjoxB3tSlORJ/AAAOjIxB3tkpdqAgBAfeKOdquhVTyrdwAAdFTijnbvo5En8AAA6IjEHcn4cOQJPAAAOhpxR3IEHgDQnnjOQksRdyRp9yqefywBgHw2t2CuD4qjxYg7kuYfSwAgX/kjNC1N3AEAQBvbHXb+EE1LEncAANCGhB2tpXOuJwAAAB2Bl2HS2qzcAQBAK/to2Fm1ozVYuQMAgFZitY62JO4AAKCFNRV1Vu1oLeIOAABaiJU6ckncAQDAAWhO0Fm1ozWJOwAAaKb9WaETdrQ2cQcAwAHzckTIPV+FAAAArcyqHW1B3AEAcMDEC+SeuAMAgFYkfGkr4g4AgBYhYiC3xB0AALQSwUtbEncAALQYMfN//CxoazmLuxUrVkRBQUGDp9WrVze63+TJk/cYP3z48DacOQAATRE1kBs5+567kSNHRkVFRb1t3/nOd2LZsmUxdOjQJvcdP358lJeX153v2rVrq8wRAAD2h8AlF3IWd127do2SkpK68zt37ozFixfH1KlTo6CgoMl9CwsL6+0LAEB+mZ3N9sXm0Mby5j13ixcvjm3btsXkyZP3OnbFihXRu3fv+OQnPxmXX355bN26tcnxNTU1UV1dXe8EAACtwaoduZI3cTd//vwYN25c9O3bt8lxEyZMiJ///Ofx+OOPx3e/+91YvXp1nHbaaVFTU9PoPvPmzYuioqK6095uAwCAAydyoG0VZFmWteQVzpkzJ+bObXoJfvXq1fXeV/f6669Hv3794le/+lV88YtfbNbtVVRURL9+/WLBggVx3nnnNTimpqamXvxVV1dH3759o6qqKnr06NGs2wMAYN91tJdmCloaUl1dHUVFRa3eHy3+nrupU6fGRRdd1OSY/v371ztfXl4evXr1irPPPrvZt1daWhr9+vWL9evXNzqmsLAwCgsLm33dAAAcmI703jthR661eNwVFxdHcXHxPo/PsizKy8vjkksuiS5dujT79rZv3x6bN2+O0tLSZu8LAEDr60iBB7mU8/fcPf7447Fhw4a49NJLG7z82GOPjUWLFkVExDvvvBMzZ86MVatWxWuvvRYrVqyIiRMnRnFxcZx77rltOW0AAKhj1Y58kLOvQtht/vz5MXLkyPjUpz7V4OXr1q2LqqqqiIjo1KlTPP/883H//ffHW2+9FaWlpTF69Oh48MEHo3v37m05bQAAmkH8QOtr8Q9UaQ/a6g2NAAAAbdUfOX9ZJgAAAAdO3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACSgVePuxhtvjJEjR8YhhxwShx12WINjNm3aFBMnToxDDz00iouL4+qrr47a2tomr7empiauuuqqKC4ujkMPPTTOPvvseP3111vhHgAAALQPrRp3tbW1cf7558fXv/71Bi/ftWtXnHnmmbFjx4548sknY8GCBbFw4cK49tprm7zeadOmxaJFi2LBggXx5JNPxjvvvBNnnXVW7Nq1qzXuBgAAQN4ryLIsa+0b+dnPfhbTpk2Lt956q9723/72t3HWWWfF5s2bo6ysLCIiFixYEJMnT46tW7dGjx499riuqqqqOOKII+Lf//3f48ILL4yIiDfeeCP69u0bjz76aIwbN26v86muro6ioqKoqqpq8DYAAABaSlv1R+dWu+Z9sGrVqhg8eHBd2EVEjBs3LmpqamLNmjUxevToPfZZs2ZN7Ny5M8aOHVu3raysLAYPHhxPPfVUg3FXU1MTNTU1deerqqoi4h8/ZAAAgNa0uztae10tp3FXWVkZffr0qbetZ8+e0bVr16isrGx0n65du0bPnj3rbe/Tp0+j+8ybNy/mzp27x/a+ffvu58wBAACaZ/v27VFUVNRq19/suJszZ06DofRhq1evjqFDh+7T9RUUFOyxLcuyBrc3pal9Zs2aFTNmzKg7/9Zbb0W/fv1i06ZNrfrDZd9UV1dH3759Y/PmzV4mmwc8HvnF45FfPB75xeORXzwe+cXjkV+qqqriqKOOisMPP7xVb6fZcTd16tS46KKLmhzTv3//fbqukpKSeOaZZ+pte/PNN2Pnzp17rOh9eJ/a2tp48803663ebd26NUaOHNngPoWFhVFYWLjH9qKiIr/seaRHjx4ejzzi8cgvHo/84vHILx6P/OLxyC8ej/xy0EGt+010zY674uLiKC4ubpEbHzFiRNx4441RUVERpaWlERGxZMmSKCwsjCFDhjS4z5AhQ6JLly6xdOnSuOCCCyIioqKiIl544YW49dZbW2ReAAAA7U2rpuOmTZviueeei02bNsWuXbviueeei+eeey7eeeediIgYO3ZsHHfccXHxxRfH2rVr4/e//33MnDkzLr/88rq/MGzZsiWOPfbY+NOf/hQR/1htu/TSS+Paa6+N3//+97F27dr413/91zjhhBPiX/7lX1rz7gAAAOStVv1AlX/7t3+L++67r+78SSedFBERy5cvj1NPPTU6deoUjzzySFxxxRXxz//8z9GtW7f4yle+ErfddlvdPjt37ox169bFu+++W7ftjjvuiM6dO8cFF1wQ7733XowZMyZ+9rOfRadOnfZpXoWFhTF79uwGX6pJ2/N45BePR37xeOQXj0d+8XjkF49HfvF45Je2ejza5HvuAAAAaF2t+44+AAAA2oS4AwAASIC4AwAASIC4AwAASECycXfjjTfGyJEj45BDDonDDjuswTGbNm2KiRMnxqGHHhrFxcVx9dVXR21tbZPXW1NTE1dddVUUFxfHoYceGmeffXa8/vrrrXAP0rVixYooKCho8LR69epG95s8efIe44cPH96GM09X//799/jZXn/99U3uk2VZzJkzJ8rKyqJbt25x6qmnxosvvthGM07Xa6+9FpdeemkMGDAgunXrFgMHDozZs2fv9d8mx0fL+eEPfxgDBgyIgw8+OIYMGRJ/+MMfmhy/cuXKGDJkSBx88MFx9NFHxz333NNGM03bvHnz4nOf+1x07949evfuHeecc06sW7euyX0a+//Lyy+/3EazTtecOXP2+LmWlJQ0uY9jo/U09P/tgoKCuPLKKxsc79hoWU888URMnDgxysrKoqCgIB5++OF6l+/vc6SFCxfGcccdF4WFhXHcccfFokWLmj23ZOOutrY2zj///Pj617/e4OW7du2KM888M3bs2BFPPvlkLFiwIBYuXBjXXnttk9c7bdq0WLRoUSxYsCCefPLJeOedd+Kss86KXbt2tcbdSNLIkSOjoqKi3umyyy6L/v37x9ChQ5vcd/z48fX2e/TRR9to1um74YYb6v1sv/3tbzc5/tZbb43bb7897rrrrli9enWUlJTE6aefHm+//XYbzThNL7/8cnzwwQfxox/9KF588cW444474p577olvfvObe93X8XHgHnzwwZg2bVp861vfirVr18bJJ58cEyZMiE2bNjU4fsOGDXHGGWfEySefHGvXro1vfvObcfXVV8fChQvbeObpWblyZVx55ZXx9NNPx9KlS+P999+PsWPHxo4dO/a677p16+odC8ccc0wbzDh9xx9/fL2f6/PPP9/oWMdG61q9enW9x2Lp0qUREXH++ec3uZ9jo2Xs2LEjTjzxxLjrrrsavHx/niOtWrUqLrzwwrj44ovjL3/5S1x88cVxwQUXxDPPPNO8yWWJKy8vz4qKivbY/uijj2YHHXRQtmXLlrptv/zlL7PCwsKsqqqqwet66623si5dumQLFiyo27Zly5bsoIMOyn73u9+1+Nw7itra2qx3797ZDTfc0OS4SZMmZV/4whfaZlIdTL9+/bI77rhjn8d/8MEHWUlJSXbzzTfXbfv73/+eFRUVZffcc08rzLBju/XWW7MBAwY0Ocbx0TL+6Z/+KZsyZUq9bccee2x2/fXXNzj+uuuuy4499th62772ta9lw4cPb7U5dlRbt27NIiJbuXJlo2OWL1+eRUT25ptvtt3EOojZs2dnJ5544j6Pd2y0rWuuuSYbOHBg9sEHHzR4uWOj9UREtmjRorrz+/sc6YILLsjGjx9fb9u4ceOyiy66qFnzSXblbm9WrVoVgwcPjrKysrpt48aNi5qamlizZk2D+6xZsyZ27twZY8eOrdtWVlYWgwcPjqeeeqrV55yqxYsXx7Zt22Ly5Ml7HbtixYro3bt3fPKTn4zLL788tm7d2voT7CBuueWW6NWrV3zmM5+JG2+8scmXAW7YsCEqKyvrHQuFhYUxatQox0IrqKqqisMPP3yv4xwfB6a2tjbWrFlT7/c6ImLs2LGN/l6vWrVqj/Hjxo2LZ599Nnbu3Nlqc+2IqqqqIiL26Vg46aSTorS0NMaMGRPLly9v7al1GOvXr4+ysrIYMGBAXHTRRfHqq682Otax0XZqa2vjgQceiK9+9atRUFDQ5FjHRuvb3+dIjR0zzX1e1WHjrrKyMvr06VNvW8+ePaNr165RWVnZ6D5du3aNnj171tvep0+fRvdh7+bPnx/jxo2Lvn37NjluwoQJ8fOf/zwef/zx+O53vxurV6+O0047LWpqatpopum65pprYsGCBbF8+fKYOnVq3HnnnXHFFVc0On737/tHjyHHQsv729/+Ft///vdjypQpTY5zfBy4bdu2xa5du5r1e93Q/0v69OkT77//fmzbtq3V5trRZFkWM2bMiM9//vMxePDgRseVlpbGvffeGwsXLoyHHnooBg0aFGPGjIknnniiDWebpmHDhsX9998fjz32WPz4xz+OysrKGDlyZGzfvr3B8Y6NtvPwww/HW2+91eQfyR0bbWd/nyM1dsw093lV52aNzrE5c+bE3LlzmxyzevXqvb5va7eG/rqRZdle/+rREvukaH8en9dffz0ee+yx+NWvfrXX67/wwgvr/nvw4MExdOjQ6NevXzzyyCNx3nnn7f/EE9Wcx2P69Ol12z796U9Hz54940tf+lLdal5jPvp771ho3P4cH2+88UaMHz8+zj///Ljsssua3Nfx0XKa+3vd0PiGtrP/pk6dGv/1X/8VTz75ZJPjBg0aFIMGDao7P2LEiNi8eXPcdtttccopp7T2NJM2YcKEuv8+4YQTYsSIETFw4MC47777YsaMGQ3u49hoG/Pnz48JEybUezXaRzk22t7+PEdqiedV7Srupk6dGhdddFGTY/r3779P11VSUrLHGxTffPPN2Llz5x7V/OF9amtr480336y3erd169YYOXLkPt1uyvbn8SkvL49evXrF2Wef3ezbKy0tjX79+sX69eubvW9HcCDHy+5PWXzllVcajLvdn5BWWVkZpaWlddu3bt3a6PHT0TX38XjjjTdi9OjRMWLEiLj33nubfXuOj+YrLi6OTp067fFX0qZ+r0tKShoc37lz5yb/MMK+u+qqq2Lx4sXxxBNPxJFHHtns/YcPHx4PPPBAK8ysYzv00EPjhBNOaPTfGMdG29i4cWMsW7YsHnrooWbv69hoHfv7HKmxY6a5z6vaVdwVFxdHcXFxi1zXiBEj4sYbb4yKioq6H/ySJUuisLAwhgwZ0uA+Q4YMiS5dusTSpUvjggsuiIiIioqKeOGFF+LWW29tkXm1Z819fLIsi/Ly8rjkkkuiS5cuzb697du3x+bNm+sdOPyfAzle1q5dGxHR6M92wIABUVJSEkuXLo2TTjopIv7xmv+VK1fGLbfcsn8TTlxzHo8tW7bE6NGjY8iQIVFeXh4HHdT8V9A7Ppqva9euMWTIkFi6dGmce+65dduXLl0aX/jCFxrcZ8SIEfGb3/ym3rYlS5bE0KFD9+vfNf5PlmVx1VVXxaJFi2LFihUxYMCA/bqetWvXOg5aQU1NTbz00ktx8sknN3i5Y6NtlJeXR+/evePMM89s9r6Ojdaxv8+RRowYEUuXLq33aqolS5Y0fwGpWR+/0o5s3LgxW7t2bTZ37tzsYx/7WLZ27dps7dq12dtvv51lWZa9//772eDBg7MxY8Zkf/7zn7Nly5ZlRx55ZDZ16tS663j99dezQYMGZc8880zdtilTpmRHHnlktmzZsuzPf/5zdtppp2Unnnhi9v7777f5fWzvli1blkVE9te//rXBywcNGpQ99NBDWZZl2dtvv51de+212VNPPZVt2LAhW758eTZixIjs4x//eFZdXd2W007OU089ld1+++3Z2rVrs1dffTV78MEHs7Kysuzss8+uN+7Dj0eWZdnNN9+cFRUVZQ899FD2/PPPZ1/+8pez0tJSj8cB2rJlS/aJT3wiO+2007LXX389q6ioqDt9mOOjdSxYsCDr0qVLNn/+/Oyvf/1rNm3atOzQQw/NXnvttSzLsuz666/PLr744rrxr776anbIIYdk06dPz/76179m8+fPz7p06ZL953/+Z67uQjK+/vWvZ0VFRdmKFSvqHQfvvvtu3ZiPPh533HFHtmjRouy///u/sxdeeCG7/vrrs4jIFi5cmIu7kJRrr702W7FiRfbqq69mTz/9dHbWWWdl3bt3d2zk0K5du7Kjjjoq+8Y3vrHHZY6N1vX222/XtUVE1D2P2rhxY5Zl+/Yc6eKLL673Scx//OMfs06dOmU333xz9tJLL2U333xz1rlz5+zpp59u1tySjbtJkyZlEbHHafny5XVjNm7cmJ155plZt27dssMPPzybOnVq9ve//73u8g0bNuyxz3vvvZdNnTo1O/zww7Nu3bplZ511VrZp06Y2vGfp+PKXv5yNHDmy0csjIisvL8+yLMvefffdbOzYsdkRRxyRdenSJTvqqKOySZMm+dm3gDVr1mTDhg3LioqKsoMPPjgbNGhQNnv27GzHjh31xn348ciyf3zU7+zZs7OSkpKssLAwO+WUU7Lnn3++jWefnvLy8gb/7fro3+IcH63nBz/4QdavX7+sa9eu2Wc/+9l6H70/adKkbNSoUfXGr1ixIjvppJOyrl27Zv3798/uvvvuNp5xmho7Dj7879BHH49bbrklGzhwYHbwwQdnPXv2zD7/+c9njzzySNtPPkEXXnhhVlpamnXp0iUrKyvLzjvvvOzFF1+su9yx0fYee+yxLCKydevW7XGZY6N17f5qiY+eJk2alGXZvj1HGjVqVN343f7jP/4jGzRoUNalS5fs2GOP3a/4Lsiy///uVgAAANqtDvtVCAAAACkRdwAAAAkQdwAAAAkQdwAAAAkQdwAAAAkQdwAAAAkQdwAAAAkQdwAAAAkQdwAAAAkQdwAAAAkQdwAAAAkQdwAAAAn4f8c73UiuG3PyAAAAAElFTkSuQmCC\n", "text/plain": [ - "
" + "
" ] }, "metadata": {}, @@ -970,33 +1209,476 @@ } ], "source": [ - "crc.plot(width=(20,20),\n", + "c1 = cr.cells[129]\n", + "c2 = cr.cells[130]\n", + "c3 = cr.cells[131]\n", + "c4 = cr.cells[132]\n", + "c5 = cr.cells[133]\n", + "c6 = cr.cells[134]\n", + "c7 = cr.cells[135]\n", + "c8 = cr.cells[136]\n", + "ttt = openmc.Universe(cells=[])\n", + "ttt = openmc.Universe(cells=[c1, c2, c3, c4, c5, c6, c7, c8])\n", + "ttt.plot(width=(20,20),\n", " basis='xy',\n", " colors=colormap,\n", " origin=(0.,0.,440),\n", " color_by='material',\n", - " pixels=(400,400))" + " pixels=(800,800))" ] }, { "cell_type": "code", - "execution_count": 16, - "id": "7f985e3a", + "execution_count": 258, + "id": "cd37f04d", "metadata": {}, - "outputs": [], + "outputs": [ + { + "ename": "KeyError", + "evalue": "250", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mKeyError\u001b[0m Traceback (most recent call last)", + "Cell \u001b[0;32mIn [258], line 1\u001b[0m\n\u001b[0;32m----> 1\u001b[0m c5 \u001b[38;5;241m=\u001b[39m \u001b[43mcr\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mcells\u001b[49m\u001b[43m[\u001b[49m\u001b[38;5;241;43m250\u001b[39;49m\u001b[43m]\u001b[49m\n\u001b[1;32m 2\u001b[0m c6 \u001b[38;5;241m=\u001b[39m cr\u001b[38;5;241m.\u001b[39mcells[\u001b[38;5;241m251\u001b[39m]\n\u001b[1;32m 3\u001b[0m c7 \u001b[38;5;241m=\u001b[39m cr\u001b[38;5;241m.\u001b[39mcells[\u001b[38;5;241m252\u001b[39m]\n", + "\u001b[0;31mKeyError\u001b[0m: 250" + ] + } + ], "source": [ - "def shared_root_geometry():\n", - " cr_boundary = openmc.model.rectangular_prism(15.24*2, 15.24*2)\n", - " \n", - " core_base = openmc.ZPlane(z0=0.0, name='core_base')\n", - " core_top = openmc.ZPlane(z0=449.58, name='core_top')\n", - " \n", - " s1 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=208.28, r2=222.71, name='base_octader')\n", - " s2 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=218.44, r2=215.53, name='smaller_octader')\n", - " s3 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=228.60, r2=193.97, name='smallest_octader')\n", - " zone_i_boundary = -s1 | -s2 | -s3\n", - "\n", - " zone_ii_boundary = openmc.ZCylinder(r=256.032, name='iib_boundary')\n", + "c5 = cr.cells[250]\n", + "c6 = cr.cells[251]\n", + "c7 = cr.cells[252]\n", + "c8 = cr.cells[253]\n", + "ttt = openmc.Universe(cells=[c5, c6, c7, c8])\n", + "ttt.plot(width=(20,20),\n", + " basis='xy',\n", + " colors=colormap,\n", + " origin=(0.,0.,440),\n", + " color_by='material',\n", + " pixels=(800,800))" + ] + }, + { + "cell_type": "code", + "execution_count": 248, + "id": "e7721c7b", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Cell\n", + "\tID =\t250\n", + "\tName =\tcr_moderator_ul_fill\n", + "\tFill =\tMaterial 2\n", + "\tRegion =\t(-1031 1032 -1033 1034 1035 -1036 ~((1037 -1043) | (1038 -1044) | (1039 -1045) | (1040 -1046) | (1041 -1047) | (1042 -1048)) 1024 -1021 -1027 1030)\n", + "\tRotation =\tNone\n", + "\tTemperature =\tNone\n", + "\tTranslation =\tNone\n", + "\tVolume =\tNone" + ] + }, + "execution_count": 248, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "c5" + ] + }, + { + "cell_type": "markdown", + "id": "2f5fd590", + "metadata": {}, + "source": [ + "## Figuring out how to decomplexify CR geometry (WIP)" + ] + }, + { + "cell_type": "code", + "execution_count": 89, + "id": "6f168514", + "metadata": {}, + "outputs": [], + "source": [ + "r_d = 1.16\n", + "r_dt = 0.8\n", + "e_d = 2 * r_d / np.sqrt(3)\n", + "r_c = 0.18\n", + "l1 = 5.8801\n", + "l2 = 6.505\n", + "l3 = 8.03646\n", + "ul = openmc.model.hexagonal_prism(origin=(-l1, l2), edge_length=e_d, orientation='x', corner_radius=r_c)\n", + "br = openmc.model.hexagonal_prism(origin=(l1, -l2), edge_length=e_d, orientation='x',corner_radius=r_c)\n", + "lb = openmc.model.hexagonal_prism(origin=(-l2, -l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", + "ru = openmc.model.hexagonal_prism(origin=(l2, l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", + "gr_sq_neg = openmc.rectangular_prism(7.23646*2, 7.23646*2, corner_radius=0.99) # Graphite square\n", + "\n", + "ul_t = openmc.ZCylinder(-l1, -l3, r_dt, name='corner_ul_tip')\n", + "br_t = openmc.ZCylinder(l1, l3, r_dt, name='corner_br_tip')\n", + "ru_t = openmc.ZCylinder(-l3, l1, r_dt, name='corner_ru_tip')\n", + "lb_t = openmc.ZCylinder(l3, -l1, r_dt, name='corner_lb_tip')\n", + "c1 = openmc.Cell(fill=moder, region=ul)\n", + "c2 = openmc.Cell(fill=moder, region=br)\n", + "c3 = openmc.Cell(fill=moder, region=lb)\n", + "c4 = openmc.Cell(fill=moder, region=ru)\n", + "c5 = openmc.Cell(fill=hast, region=gr_sq_neg)\n", + "c6 = openmc.Cell(fill=fuel, region=-ul_t)\n", + "c7 = openmc.Cell(fill=fuel, region=-br_t)\n", + "c8 = openmc.Cell(fill=fuel, region=-ru_t)\n", + "c9 = openmc.Cell(fill=fuel, region=-lb_t)\n", + "\n", + "\n", + "tu = openmc.Universe(cells=[c1, c2, c3, c4, c5, c6, c7, c8, c9])" + ] + }, + { + "cell_type": "code", + "execution_count": 95, + "id": "88170730", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "OrderedDict([(1448,\n", + " Surface\n", + " \tID =\t1448\n", + " \tName =\t\n", + " \tType =\ty-plane\n", + " \tBoundary =\ttransmission\n", + " \tCoefficients \n", + " y0 =\t7.665),\n", + " (1449,\n", + " Surface\n", + " \tID =\t1449\n", + " \tName =\t\n", + " \tType =\ty-plane\n", + " \tBoundary =\ttransmission\n", + " \tCoefficients \n", + " y0 =\t5.345),\n", + " (1450,\n", + " Surface\n", + " \tID =\t1450\n", + " \tName =\t\n", + " \tType =\tplane\n", + " \tBoundary =\ttransmission\n", + " \tCoefficients \n", + " a =\t1.7320508075688772\n", + " b =\t1.0\n", + " c =\t0.0\n", + " d =\t-1.3596319535857537),\n", + " (1451,\n", + " Surface\n", + " \tID =\t1451\n", + " \tName =\t\n", + " \tType =\tplane\n", + " \tBoundary =\ttransmission\n", + " \tCoefficients \n", + " a =\t-1.7320508075688772\n", + " b =\t1.0\n", + " c =\t0.0\n", + " d =\t14.369631953585753),\n", + " (1452,\n", + " Surface\n", + " \tID =\t1452\n", + " \tName =\t\n", + " \tType =\tplane\n", + " \tBoundary =\ttransmission\n", + " \tCoefficients \n", + " a =\t1.7320508075688772\n", + " b =\t1.0\n", + " c =\t0.0\n", + " d =\t-5.999631953585754),\n", + " (1453,\n", + " Surface\n", + " \tID =\t1453\n", + " \tName =\t\n", + " \tType =\tplane\n", + " \tBoundary =\ttransmission\n", + " \tCoefficients \n", + " a =\t-1.7320508075688772\n", + " b =\t1.0\n", + " c =\t0.0\n", + " d =\t19.009631953585753),\n", + " (1454,\n", + " Surface\n", + " \tID =\t1454\n", + " \tName =\tx min y min in\n", + " \tType =\tz-cylinder\n", + " \tBoundary =\ttransmission\n", + " \tCoefficients \n", + " x0 =\t-6.445903263805833\n", + " y0 =\t5.525\n", + " r =\t0.18),\n", + " (1460,\n", + " Surface\n", + " \tID =\t1460\n", + " \tName =\tx min y min out\n", + " \tType =\tz-cylinder\n", + " \tBoundary =\ttransmission\n", + " \tCoefficients \n", + " x0 =\t-6.549826312259966\n", + " y0 =\t5.345\n", + " r =\t0.10392304845413264),\n", + " (1455,\n", + " Surface\n", + " \tID =\t1455\n", + " \tName =\tx min y max in\n", + " \tType =\tz-cylinder\n", + " \tBoundary =\ttransmission\n", + " \tCoefficients \n", + " x0 =\t-5.314296736194167\n", + " y0 =\t5.525\n", + " r =\t0.18),\n", + " (1461,\n", + " Surface\n", + " \tID =\t1461\n", + " \tName =\tx min y max out\n", + " \tType =\tz-cylinder\n", + " \tBoundary =\ttransmission\n", + " \tCoefficients \n", + " x0 =\t-5.2103736877400335\n", + " y0 =\t5.345\n", + " r =\t0.10392304845413264),\n", + " (1456,\n", + " Surface\n", + " \tID =\t1456\n", + " \tName =\tx max y min in\n", + " \tType =\tz-cylinder\n", + " \tBoundary =\ttransmission\n", + " \tCoefficients \n", + " x0 =\t-6.445903263805833\n", + " y0 =\t7.484999999999999\n", + " r =\t0.18),\n", + " (1462,\n", + " Surface\n", + " \tID =\t1462\n", + " \tName =\tx max y min out\n", + " \tType =\tz-cylinder\n", + " \tBoundary =\ttransmission\n", + " \tCoefficients \n", + " x0 =\t-6.549826312259966\n", + " y0 =\t7.665\n", + " r =\t0.10392304845413264),\n", + " (1457,\n", + " Surface\n", + " \tID =\t1457\n", + " \tName =\tx max y max in\n", + " \tType =\tz-cylinder\n", + " \tBoundary =\ttransmission\n", + " \tCoefficients \n", + " x0 =\t-5.314296736194167\n", + " y0 =\t7.484999999999999\n", + " r =\t0.18),\n", + " (1463,\n", + " Surface\n", + " \tID =\t1463\n", + " \tName =\tx max y max out\n", + " \tType =\tz-cylinder\n", + " \tBoundary =\ttransmission\n", + " \tCoefficients \n", + " x0 =\t-5.2103736877400335\n", + " y0 =\t7.665\n", + " r =\t0.10392304845413264),\n", + " (1458,\n", + " Surface\n", + " \tID =\t1458\n", + " \tName =\tx min in\n", + " \tType =\tz-cylinder\n", + " \tBoundary =\ttransmission\n", + " \tCoefficients \n", + " x0 =\t-7.011706527611667\n", + " y0 =\t6.505\n", + " r =\t0.18),\n", + " (1464,\n", + " Surface\n", + " \tID =\t1464\n", + " \tName =\tx min out\n", + " \tType =\tz-cylinder\n", + " \tBoundary =\ttransmission\n", + " \tCoefficients \n", + " x0 =\t-7.219552624519931\n", + " y0 =\t6.505\n", + " r =\t0.10392304845413264),\n", + " (1459,\n", + " Surface\n", + " \tID =\t1459\n", + " \tName =\tx max in\n", + " \tType =\tz-cylinder\n", + " \tBoundary =\ttransmission\n", + " \tCoefficients \n", + " x0 =\t-4.748493472388333\n", + " y0 =\t6.505\n", + " r =\t0.18),\n", + " (1465,\n", + " Surface\n", + " \tID =\t1465\n", + " \tName =\tx max out\n", + " \tType =\tz-cylinder\n", + " \tBoundary =\ttransmission\n", + " \tCoefficients \n", + " x0 =\t-4.540647375480068\n", + " y0 =\t6.505\n", + " r =\t0.10392304845413264)])" + ] + }, + "execution_count": 95, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "c1.region.get_surfaces()" + ] + }, + { + "cell_type": "code", + "execution_count": 96, + "id": "67a1317a", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Cell\n", + "\tID =\t340\n", + "\tName =\t\n", + "\tFill =\tMaterial 2\n", + "\tRegion =\t(-1448 1449 -1450 1451 1452 -1453 ~((1454 -1460) | (1455 -1461) | (1456 -1462) | (1457 -1463) | (1458 -1464) | (1459 -1465)))\n", + "\tRotation =\tNone\n", + "\tTemperature =\tNone\n", + "\tTranslation =\tNone\n", + "\tVolume =\tNone" + ] + }, + "execution_count": 96, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "ul = openmc.model.hexagonal_prism(origin=(-l1, l2), edge_length=e_d, orientation='x', corner_radius=r_c)\n", + "# for x oriented\n", + "(ul_u, ul_b, ul_ur, ul_br, ul_bl, ul_ul,\n", + " ul_cyl_bl_in, ul_cyl_bl_out, \n", + " ul_cyl_ul_in, ul_cyl_ul_out,\n", + " ul_cyl_br_in, ul_cyl_br_out,\n", + " ul_cyl_ur_in, ul_cyl_ur_out,\n", + " ul_cyl_l_in, ul_cyl_l_out,\n", + " ul_cyl_r_in, ul_yl_r_out)= list(ul.get_surfaces().values())" + ] + }, + { + "cell_type": "code", + "execution_count": 229, + "id": "2f268e09", + "metadata": {}, + "outputs": [], + "source": [ + "t = openmc.Region.from_expression('(-1448 1449 -1450 1451 1452 -1453 ~((1454 -1460) | (1455 -1461) | (1456 -1462) | (1457 -1463) | (1458 -1464) | (1459 -1465)))', c1.region.get_surfaces())\n", + "t = openmc.Region.from_expression('(-1448 1449 -1450 1451 1452 -1453 ((-1454 | 1460) (-1455 | 1461) (-1456 | 1462) (-1457 | 1463) (-1458 | 1464) (-1459 | 1465)))', c1.region.get_surfaces())\n", + "t = openmc.Region.from_expression('(-1448 -1450 -1453)', c1.region.get_surfaces())\n", + "\n", + "#t = openmc.Region.from_expression('((-1454 | -1455 | -1456 | -1457 | -1458 | -1459) | 1460 1461 1462 1463 1464 1465)', c1.region.get_surfaces())\n", + "#t = openmc.Region.from_expression('(-1448 1449 -1450 1451 1452 -1453 (-1454 | -1455 | -1456 | -1457 | -1458 | -1459 | 1460 1461 1462 1463 1464 1465))', c1.region.get_surfaces())\n" + ] + }, + { + "cell_type": "code", + "execution_count": 233, + "id": "0e6ee5dc", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 233, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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fhAVFRXxve99Ly644IJ83QUAAIC8y/v33OWD77kDAKA98j137VOH+J47AAAAWoe4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASEDe4u7VV1+Nyy67LAYOHBjdu3ePI488MmbNmhV1dXXN7jdp0qQoKipqcBo2bFgbzRoAAKAwdc7XDb/00kvx/vvvx49+9KP4xCc+Ec8//3xcccUVsWPHjrj11lub3Xfs2LFRWVlZf75r1665ni4AAEBBy1vcjR07NsaOHVt//ogjjoi1a9fGXXfdtce4Ky4ujrKyslxPEQAAoN0oqPfcVVdXxyGHHLLHccuXL48+ffrE0UcfHVdccUVs3bq12fG1tbVRU1PT4AQAAJCSgom7v/3tb/H9738/Jk+e3Oy4cePGxc9//vN47LHH4rvf/W6sWrUqTj/99KitrW1yn7lz50ZJSUn9qV+/fq09fQAAgLwqyrIsa80rnD17dsyZM6fZMatWrYqhQ4fWn3/99ddj5MiRMXLkyPjJT37SotvbsmVL9O/fP+bPnx/nn39+o2Nqa2sbxF9NTU3069cvZsSM6BbdWnR7AACQL7OyWfmeAvugpqYmSkpKorq6Onr27Jmz22n199xNmTIlJkyY0OyYAQMG1P/366+/HqeddloMHz487rnnnhbfXnl5efTv3z/WrVvX5Jji4uIoLi5u8XUDAAC0F60ed6WlpVFaWrpXYzdv3hynnXZaDBkyJCorK+OAA1r+KtHt27fHpk2bory8vMX7AgAApCJv77l7/fXX49RTT41+/frFrbfeGv/zP/8TVVVVUVVV1WDcMcccEwsXLoyIiLfffjumT58eK1eujFdffTWWL18e48ePj9LS0vjCF76Qj7sBAABQEPL2VQiLFy+Ol19+OV5++eU47LDDGlz24bcBrl27NqqrqyMiolOnTvHcc8/FfffdF2+++WaUl5fHaaedFg888ED06NGjTecPAABQSFr9A1Xagw/e0OgDVQAAaE98oEr71FYfqFIwX4UAAADAvhN3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACchr3A0YMCCKiooanGbMmNHsPlmWxezZs6OioiK6d+8ep556arzwwgttNGMAAIDClPeVu29/+9uxZcuW+tO3vvWtZsffcsstcdttt8Wdd94Zq1atirKysjjjjDPirbfeaqMZAwAAFJ68x12PHj2irKys/vSxj32sybFZlsUdd9wR3/zmN+P888+PwYMHx7333hvvvPNO/OIXv2jDWQMAABSWvMfdzTffHL17945Pf/rTceONN0ZdXV2TY9evXx9VVVUxevTo+m3FxcUxcuTIePLJJ5vcr7a2NmpqahqcAAAAUtI5nzd+7bXXxmc+85no1atX/OlPf4qZM2fG+vXr4yc/+Umj46uqqiIiom/fvg229+3bNzZs2NDk7cydOzfmzJnTehMHAAAoMK2+cjd79uzdPiTlo6dnnnkmIiKuu+66GDlyZHzqU5+Kyy+/PO6+++6YN29ebN++vdnbKCoqanA+y7Ldtn3YzJkzo7q6uv60adOm/b+jAAAABaTVV+6mTJkSEyZMaHbMgAEDGt0+bNiwiIh4+eWXo3fv3rtdXlZWFhH/WMErLy+v375169bdVvM+rLi4OIqLi/c0dQAAgHar1eOutLQ0SktL92nfNWvWREQ0CLcPGzhwYJSVlcWSJUvixBNPjIiIurq6WLFiRdx88837NmEAAIAE5O0DVVauXBm33357PPvss7F+/fr41a9+FV/96lfjnHPOicMPP7x+3DHHHBMLFy6MiH+8HHPq1Knxne98JxYuXBjPP/98TJo0KQ488MD48pe/nK+7AgAAkHd5+0CV4uLieOCBB2LOnDlRW1sb/fv3jyuuuCJuuOGGBuPWrl0b1dXV9edvuOGGePfdd+PKK6+MN954I0466aRYvHhx9OjRo63vAgAAQMEoyrIsy/ck2lpNTU2UlJTEjJgR3aJbvqcDAAB7ZVY2K99TYB980B/V1dXRs2fPnN1O3r/nDgAAgP0n7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg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vDFGjBgRBx54YBx88MGNjtm4cWOMHz8+DjrooCgtLY1rrrkm6urqmr3e2trauPrqq6O0tDQOOuigOOecc+K1117LwT0AAKA5Ag8KR07jrq6uLi688ML42te+1ujlu3btirPOOit27NgRTzzxRMyfPz8WLFgQ119/fbPXO3Xq1Fi4cGHMnz8/nnjiiXj77bfj7LPPjl27duXibgAAABS8oizLslzfyM9+9rOYOnVqvPnmmw22//a3v42zzz47Nm3aFBUVFRERMX/+/Jg0aVJs3bo1evbsudt1VVdXx6GHHhr//u//HhdffHFERLz++uvRr1+/eOSRR2LMmDF7nE9NTU2UlJTEjJgR3aLb/t9BAIAOblY2K99TgIL1QX9UV1c32jitpXPOrnkvrFy5MgYPHlwfdhERY8aMidra2li9enWcdtppu+2zevXq2LlzZ4wePbp+W0VFRQwePDiefPLJRuOutrY2amtr689XV1f/Y3vU7jYWAICWq6mpyfcUoGB9cHzkel0tr3FXVVUVffv2bbCtV69e0bVr16iqqmpyn65du0avXr0abO/bt2+T+8ydOzfmzNn99eC3x+37OHMAAD7sppKb8j0FKHjbt2+PkpKSnF1/i+Nu9uzZjYbSh61atSqGDh26V9dXVFS027Ysyxrd3pzm9pk5c2ZMmzat/vybb74Z/fv3j40bN+b0h8veqampiX79+sWmTZtyukzN3vF4FBaPR2HxeBQWj0dh8XgUFo9HYamuro7DDz88DjnkkJzeTovjbsqUKTFhwoRmxwwYMGCvrqusrCyefvrpBtveeOON2Llz524reh/ep66uLt54440Gq3dbt26NESNGNLpPcXFxFBcX77a9pKTEP/YC0rNnT49HAfF4FBaPR2HxeBQWj0dh8XgUFo9HYTnggNx+E12L4660tDRKS0tb5caHDx8eN954Y2zZsiXKy8sjImLx4sVRXFwcQ4YMaXSfIUOGRJcuXWLJkiVx0UUXRUTEli1b4vnnn49bbrmlVeYFAADQ3uQ0HTdu3BjPPvtsbNy4MXbt2hXPPvtsPPvss/H2229HRMTo0aPj2GOPjUsuuSTWrFkTv//972P69OlxxRVX1P+FYfPmzXHMMcfEn/70p4j4x2rbZZddFtdff338/ve/jzVr1sS//Mu/xPHHHx+f//znc3l3AAAAClZOP1Dl3/7t3+Lee++tP3/iiSdGRMSyZcvi1FNPjU6dOsXDDz8cV155ZfzzP/9zdO/ePb785S/HrbfeWr/Pzp07Y+3atfHOO+/Ub7v99tujc+fOcdFFF8W7774bo0aNip/97GfRqVOnvZpXcXFxzJo1q9GXatL2PB6FxeNRWDwehcXjUVg8HoXF41FYPB6Fpa0ejzb5njsAAAByK7fv6AMAAKBNiDsAAIAEiDsAAIAEiDsAAIAEJBt3N954Y4wYMSIOPPDAOPjggxsds3Hjxhg/fnwcdNBBUVpaGtdcc03U1dU1e721tbVx9dVXR2lpaRx00EFxzjnnxGuvvZaDe5Cu5cuXR1FRUaOnVatWNbnfpEmTdhs/bNiwNpx5ugYMGLDbz3bGjBnN7pNlWcyePTsqKiqie/fuceqpp8YLL7zQRjNO16uvvhqXXXZZDBw4MLp37x5HHnlkzJo1a4+/mxwfreeHP/xhDBw4MLp16xZDhgyJP/zhD82OX7FiRQwZMiS6desWRxxxRNx9991tNNO0zZ07Nz772c9Gjx49ok+fPnHeeefF2rVrm92nqf+/vPTSS20063TNnj17t59rWVlZs/s4NnKnsf9vFxUVxVVXXdXoeMdG63r88cdj/PjxUVFREUVFRfHQQw81uHxfnyMtWLAgjj322CguLo5jjz02Fi5c2OK5JRt3dXV1ceGFF8bXvva1Ri/ftWtXnHXWWbFjx4544oknYv78+bFgwYK4/vrrm73eqVOnxsKFC2P+/PnxxBNPxNtvvx1nn3127Nq1Kxd3I0kjRoyILVu2NDhdfvnlMWDAgBg6dGiz+44dO7bBfo888kgbzTp93/72txv8bL/1rW81O/6WW26J2267Le68885YtWpVlJWVxRlnnBFvvfVWG804TS+99FK8//778aMf/SheeOGFuP322+Puu++Ob3zjG3vc1/Gx/x544IGYOnVqfPOb34w1a9bEySefHOPGjYuNGzc2On79+vVx5plnxsknnxxr1qyJb3zjG3HNNdfEggUL2njm6VmxYkVcddVV8dRTT8WSJUvivffei9GjR8eOHTv2uO/atWsbHAtHHXVUG8w4fccdd1yDn+tzzz3X5FjHRm6tWrWqwWOxZMmSiIi48MILm93PsdE6duzYESeccELceeedjV6+L8+RVq5cGRdffHFccskl8Ze//CUuueSSuOiii+Lpp59u2eSyxFVWVmYlJSW7bX/kkUeyAw44INu8eXP9tl/+8pdZcXFxVl1d3eh1vfnmm1mXLl2y+fPn12/bvHlzdsABB2S/+93vWn3uHUVdXV3Wp0+f7Nvf/naz4yZOnJide+65bTOpDqZ///7Z7bffvtfj33///aysrCy76aab6rf9/e9/z0pKSrK77747BzPs2G655ZZs4MCBzY5xfLSOf/qnf8omT57cYNsxxxyTzZgxo9HxN9xwQ3bMMcc02PbVr341GzZsWM7m2FFt3bo1i4hsxYoVTY5ZtmxZFhHZG2+80XYT6yBmzZqVnXDCCXs93rHRtq699trsyCOPzN5///1GL3ds5E5EZAsXLqw/v6/PkS666KJs7NixDbaNGTMmmzBhQovmk+zK3Z6sXLkyBg8eHBUVFfXbxowZE7W1tbF69epG91m9enXs3LkzRo8eXb+toqIiBg8eHE8++WTO55yqRYsWxbZt22LSpEl7HLt8+fLo06dPHH300XHFFVfE1q1bcz/BDuLmm2+O3r17x6c//em48cYbm30Z4Pr166OqqqrBsVBcXBwjR450LORAdXV1HHLIIXsc5/jYP3V1dbF69eoG/64jIkaPHt3kv+uVK1fuNn7MmDHxzDPPxM6dO3M2146ouro6ImKvjoUTTzwxysvLY9SoUbFs2bJcT63DWLduXVRUVMTAgQNjwoQJ8corrzQ51rHRdurq6uL++++Pr3zlK1FUVNTsWMdG7u3rc6SmjpmWPq/qsHFXVVUVffv2bbCtV69e0bVr16iqqmpyn65du0avXr0abO/bt2+T+7Bn8+bNizFjxkS/fv2aHTdu3Lj4+c9/Ho899lh897vfjVWrVsXpp58etbW1bTTTdF177bUxf/78WLZsWUyZMiXuuOOOuPLKK5sc/8G/948eQ46F1ve3v/0tvv/978fkyZObHef42H/btm2LXbt2tejfdWP/L+nbt2+89957sW3btpzNtaPJsiymTZsWn/vc52Lw4MFNjisvL4977rknFixYEA8++GAMGjQoRo0aFY8//ngbzjZNJ510Utx3333x6KOPxo9//OOoqqqKESNGxPbt2xsd79hoOw899FC8+eabzf6R3LHRdvb1OVJTx0xLn1d1btHoPJs9e3bMmTOn2TGrVq3a4/u2PtDYXzeyLNvjXz1aY58U7cvj89prr8Wjjz4av/rVr/Z4/RdffHH9fw8ePDiGDh0a/fv3j4cffjjOP//8fZ94olryeFx33XX12z71qU9Fr1694otf/GL9al5TPvrv3rHQtH05Pl5//fUYO3ZsXHjhhXH55Zc3u6/jo/W09N91Y+Mb286+mzJlSvzXf/1XPPHEE82OGzRoUAwaNKj+/PDhw2PTpk1x6623ximnnJLraSZt3Lhx9f99/PHHx/Dhw+PII4+Me++9N6ZNm9boPo6NtjFv3rwYN25cg1ejfZRjo+3ty3Ok1nhe1a7ibsqUKTFhwoRmxwwYMGCvrqusrGy3Nyi+8cYbsXPnzt2q+cP71NXVxRtvvNFg9W7r1q0xYsSIvbrdlO3L41NZWRm9e/eOc845p8W3V15eHv37949169a1eN+OYH+Olw8+ZfHll19uNO4++IS0qqqqKC8vr9++devWJo+fjq6lj8frr78ep512WgwfPjzuueeeFt+e46PlSktLo1OnTrv9lbS5f9dlZWWNju/cuXOzfxhh71199dWxaNGiePzxx+Owww5r8f7Dhg2L+++/Pwcz69gOOuigOP7445v8HePYaBsbNmyIpUuXxoMPPtjifR0bubGvz5GaOmZa+ryqXcVdaWlplJaWtsp1DR8+PG688cbYsmVL/Q9+8eLFUVxcHEOGDGl0nyFDhkSXLl1iyZIlcdFFF0VExJYtW+L555+PW265pVXm1Z619PHJsiwqKyvj0ksvjS5durT49rZv3x6bNm1qcODwf/bneFmzZk1ERJM/24EDB0ZZWVksWbIkTjzxxIj4x2v+V6xYETfffPO+TThxLXk8Nm/eHKeddloMGTIkKisr44ADWv4KesdHy3Xt2jWGDBkSS5YsiS984Qv125csWRLnnntuo/sMHz48fvOb3zTYtnjx4hg6dOg+/V7j/2RZFldffXUsXLgwli9fHgMHDtyn61mzZo3jIAdqa2vjxRdfjJNPPrnRyx0bbaOysjL69OkTZ511Vov3dWzkxr4+Rxo+fHgsWbKkwaupFi9e3PIFpBZ9/Eo7smHDhmzNmjXZnDlzso997GPZmjVrsjVr1mRvvfVWlmVZ9t5772WDBw/ORo0alf35z3/Oli5dmh122GHZlClT6q/jtddeywYNGpQ9/fTT9dsmT56cHXbYYdnSpUuzP//5z9npp5+enXDCCdl7773X5vexvVu6dGkWEdlf//rXRi8fNGhQ9uCDD2ZZlmVvvfVWdv3112dPPvlktn79+mzZsmXZ8OHDs49//ONZTU1NW047OU8++WR22223ZWvWrMleeeWV7IEHHsgqKiqyc845p8G4Dz8eWZZlN910U1ZSUpI9+OCD2XPPPZd96UtfysrLyz0e+2nz5s3ZJz7xiez000/PXnvttWzLli31pw9zfOTG/Pnzsy5dumTz5s3L/vrXv2ZTp07NDjrooOzVV1/NsizLZsyYkV1yySX141955ZXswAMPzK677rrsr3/9azZv3rysS5cu2X/+53/m6y4k42tf+1pWUlKSLV++vMFx8M4779SP+ejjcfvtt2cLFy7M/vu//zt7/vnnsxkzZmQRkS1YsCAfdyEp119/fbZ8+fLslVdeyZ566qns7LPPznr06OHYyKNdu3Zlhx9+ePb1r399t8scG7n11ltv1bdFRNQ/j9qwYUOWZXv3HOmSSy5p8EnMf/zjH7NOnTplN910U/biiy9mN910U9a5c+fsqaeeatHcko27iRMnZhGx22nZsmX1YzZs2JCdddZZWffu3bNDDjkkmzJlSvb3v/+9/vL169fvts+7776bTZkyJTvkkEOy7t27Z2effXa2cePGNrxn6fjSl76UjRgxosnLIyKrrKzMsizL3nnnnWz06NHZoYcemnXp0iU7/PDDs4kTJ/rZt4LVq1dnJ510UlZSUpJ169YtGzRoUDZr1qxsx44dDcZ9+PHIsn981O+sWbOysrKyrLi4ODvllFOy5557ro1nn57KyspGf3d99G9xjo/c+cEPfpD1798/69q1a/aZz3ymwUfvT5w4MRs5cmSD8cuXL89OPPHErGvXrtmAAQOyu+66q41nnKamjoMP/x766ONx8803Z0ceeWTWrVu3rFevXtnnPve57OGHH277ySfo4osvzsrLy7MuXbpkFRUV2fnnn5+98MIL9Zc7Ntreo48+mkVEtnbt2t0uc2zk1gdfLfHR08SJE7Ms27vnSCNHjqwf/4H/+I//yAYNGpR16dIlO+aYY/Ypvouy7P+/uxUAAIB2q8N+FQIAAEBKxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEAC/h+Hgvg1IGi2RgAAAABJRU5ErkJggg==\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "tt = openmc.Cell(fill=moder, region=t | gr_sq_neg)\n", + "ttt = openmc.Universe(cells=[tt])\n", + "ttt.plot(width=(20,20),\n", + " basis='xy',\n", + " colors=colormap,\n", + " origin=(0.,0.,440),\n", + " color_by='material',\n", + " pixels=(800,800))" + ] + }, + { + "cell_type": "code", + "execution_count": 163, + "id": "2b22c009", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 163, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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8bhbvXp1XH311fH444/H8uXL45133onp06fH22+/vc9t169fH1u3bu06ve997yvDiAEAAPJnSKUH8NOf/rTb+UWLFsWoUaPiySefjI985CN9bjtq1Kg49NBDSzg6AACA6lDxmbs9tbW1RUTE4Ycfvs91TzzxxGhqaoozzjgjVq5c2et6HR0d0d7e3u0EAACQklzFXZZlMWfOnPjwhz8cEydO7HW9pqamuPvuu2PJkiXxwAMPxIQJE+KMM86IRx55pMf1FyxYEPX19V2nlpaWUu0CAABARRSyLMsqPYhdrr766njooYfi0UcfjaOOOqpf25533nlRKBTiwQcf3Ouyjo6O6Ojo6Drf3t4eLS0t0dbWFiNHjhz0uCmvQqHSIwAAqIz8vHKnP9rb26O+vr7k/ZGbmbtrrrkmHnzwwVi5cmW/wy4iYsqUKfHCCy/0eFldXV2MHDmy2wkAACAlFf9AlSzL4pprromlS5fGqlWrYty4cQO6nnXr1kVTU1ORRwcAAFAdKh53V199dfzt3/5t/MM//EOMGDEiWltbIyKivr4+hg8fHhERN954Y2zZsiXuvffeiIi44447YuzYsXH88cdHZ2dn3HfffbFkyZJYsmRJxfYDAACgkioed9/73vciIuLUU0/ttnzRokUxc+bMiIjYunVrbNq0qeuyzs7OuP7662PLli0xfPjwOP744+Ohhx6Ks88+u1zDBgAAyJVcfaBKuZTrDY2Uhg9UAQBqVe29ck9DzX2gCgAAAAMn7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABKQi7j7q7/6qxg3blwcdNBBMWnSpPiXf/mXPtdfvXp1TJo0KQ466KA45phj4q677irTSAEAAPKp4nF3//33x+zZs+PrX/96rFu3Lk4++eQ466yzYtOmTT2uv2HDhjj77LPj5JNPjnXr1sXXvva1+NKXvhRLliwp88gBAADyo5BlWVbJAZx00knxoQ99KL73ve91LfvABz4QH//4x2PBggV7rf/Vr341HnzwwXjuuee6ll155ZXxq1/9KtasWbNft9ne3h719fXR1tYWI0eOHPxOUFaFQqVHAABQGZV95c5Alas/Kjpz19nZGU8++WRMnz692/Lp06fHY4891uM2a9as2Wv9GTNmxC9+8YvYsWNHj9t0dHREe3t7txMAAEBKKhp327dvj507d8bo0aO7LR89enS0trb2uE1ra2uP67/zzjuxffv2HrdZsGBB1NfXd51aWlqKswMAAAA5UfH33EVEFPY4zi7Lsr2W7Wv9npbvcuONN0ZbW1vXafPmzYMcMQAAQL4MqeSNNzQ0xIEHHrjXLN22bdv2mp3bpbGxscf1hwwZEkcccUSP29TV1UVdXV1xBg0AAJBDFZ25GzZsWEyaNCmWL1/ebfny5ctj2rRpPW4zderUvdZftmxZTJ48OYYOHVqysQIAAORZxQ/LnDNnTnz/+9+PH/zgB/Hcc8/FtddeG5s2bYorr7wyIt47pPKyyy7rWv/KK6+MjRs3xpw5c+K5556LH/zgB7Fw4cK4/vrrK7ULAAAAFVfRwzIjIi6++OJ47bXX4pvf/GZs3bo1Jk6cGA8//HCMGTMmIiK2bt3a7Tvvxo0bFw8//HBce+218d3vfjeam5vjL/7iL+KTn/xkpXYBAACg4ir+PXeV4HvuqpvvuQMAalXtvXJPQ018zx0AAADFIe4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASULG4e/nll+Nzn/tcjBs3LoYPHx7jx4+PuXPnRmdnZ5/bzZw5MwqFQrfTlClTyjRqAACAfBpSqRt+/vnn4913342//uu/jj/4gz+IZ555Jq644op4++2347bbbutz2zPPPDMWLVrUdX7YsGGlHi4AAECuVSzuzjzzzDjzzDO7zh9zzDGxfv36+N73vrfPuKurq4vGxsZSDxEAAKBq5Oo9d21tbXH44Yfvc71Vq1bFqFGj4v3vf39cccUVsW3btj7X7+joiPb29m4nAACAlOQm7v793/89/vIv/zKuvPLKPtc766yz4kc/+lH8/Oc/j29/+9uxdu3aOP3006Ojo6PXbRYsWBD19fVdp5aWlmIPHwAAoKIKWZZlxbzCefPmxfz58/tcZ+3atTF58uSu86+++mqccsopccopp8T3v//9ft3e1q1bY8yYMbF48eK44IILelyno6OjW/y1t7dHS0tLtLW1xciRI/t1e1ReoVDpEQAAVEZxX7lTLu3t7VFfX1/y/ij6e+5mzZoVl1xySZ/rjB07tuvfr776apx22mkxderUuPvuu/t9e01NTTFmzJh44YUXel2nrq4u6urq+n3dAAAA1aLocdfQ0BANDQ37te6WLVvitNNOi0mTJsWiRYvigAP6f5Toa6+9Fps3b46mpqZ+bwsAAJCKir3n7tVXX41TTz01Wlpa4rbbbov/+I//iNbW1mhtbe223rHHHhtLly6NiIi33norrr/++lizZk28/PLLsWrVqjjvvPOioaEhPvGJT1RiNwAAAHKhYl+FsGzZsnjxxRfjxRdfjKOOOqrbZbu/DXD9+vXR1tYWEREHHnhgPP3003HvvffGG2+8EU1NTXHaaafF/fffHyNGjCjr+AEAAPKk6B+oUg3K9YZGSsMHqgAAtar2XrmnoVz9kZuvQgAAAGDgxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEAChlR6AJBX82J+L8vnlnkkAACwb+IO9tBb1O15ucgDACBPxB38t31FXW/rizwAAPLAe+6oefNifr/Dbs/tAQCg0sQdNa1YYTbYQAQAgMFyWCY1qVQh5lBNAAAqxcwdNaVcM2xm8QAAKDczd9SESsSWWTwAAMrJzB3Jq/QsmvfjAQBQDmbuSFbegspMHgAApWTmjuTk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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "tu.plot(width=(20,20),\n", + " basis='xy',\n", + " colors=colormap,\n", + " origin=(0.,0.,440),\n", + " color_by='material',\n", + " pixels=(800,800))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "7f985e3a", + "metadata": {}, + "outputs": [], + "source": [ + "def shared_root_geometry():\n", + " cr_boundary = openmc.model.rectangular_prism(15.24*2, 15.24*2)\n", + " \n", + " core_base = openmc.ZPlane(z0=0.0, name='core_base')\n", + " core_top = openmc.ZPlane(z0=449.58, name='core_top')\n", + " \n", + " s1 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=208.28, r2=222.71, name='base_octader')\n", + " s2 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=218.44, r2=215.53, name='smaller_octader')\n", + " s3 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=228.60, r2=193.97, name='smallest_octader')\n", + " zone_i_boundary = -s1 | -s2 | -s3\n", + "\n", + " zone_ii_boundary = openmc.ZCylinder(r=256.032, name='iib_boundary')\n", " annulus_boundary = openmc.ZCylinder(r=261.112, name='annulus_boundary')\n", " lower_plenum_boundary = openmc.ZPlane(z0=-7.62, name='lower_plenum_boundary')\n", "\n", @@ -1114,62 +1796,75 @@ " big_radii = [rb_1, rb_2] * 4\n", " small_radii = (207.28, r_outer)\n", " \n", - " hole_coord = 242.679\n", - " hole_region = +openmc.ZCylinder(x0=hole_coord, r=3.0875)\n", + " r_hole = 3.0875\n", + " hole_args = ({'x0': 242.679, 'y0': 0.0, 'r': r_hole},\n", + " {'x0': 171.60, 'y0': 171.60, 'r': r_hole},\n", + " {'x0': 0.0, 'y0': 242.679, 'r': r_hole},\n", + " {'x0': -171.60, 'y0': 171.60, 'r': r_hole},\n", + " {'x0': -242.679, 'y0': 0.0, 'r': r_hole},\n", + " {'x0': -171.60, 'y0': -171.60, 'r': r_hole},\n", + " {'x0': 0.0, 'y0': -242.697, 'r': r_hole},\n", + " {'x0': 171.60, 'y0': -171.60, 'r': r_hole})\n", " \n", " # Small elements\n", " small_angular_width = 0.96\n", " adjacent_angular_offset = 0.675 #27/40\n", " small_elems_per_octant = 25\n", " \n", - " zone_iib_reg = None\n", " elem_cells = []\n", " for i, pos in enumerate(large_positions):\n", - " r1, r2 = big_radii[i]\n", - " t1 = pos - large_half_w\n", - " t2 = pos + large_half_w\n", - " large_elem = openmc.model.CylinderSector(r1, r2, t1, t2)\n", - " elem_hole = hole_region.rotate((0.0, 0.0, pos))\n", - " elem_reg = -large_elem\n", - " if isinstance(zone_iib_reg, openmc.Region):\n", - " zone_iib_reg = zone_iib_reg | elem_reg\n", - " else:\n", - " zone_iib_reg = elem_reg\n", - " elem_reg = -large_elem & elem_hole\n", - " elem_cells.append(openmc.Cell(fill=moder, region=(elem_reg), name=f'iib_large_element_{pos}'))\n", - " elem_cells.append(openmc.Cell(fill=fuel, region=(~elem_hole),\n", + " pos = np.round(pos, 3)\n", + " r1_big, r2_big = big_radii[i]\n", + " t1_big = pos - large_half_w\n", + " t2_big = pos + large_half_w\n", + " s1 = openmc.model.CylinderSector(r1_big, r2_big, t1_big, t2_big)\n", + " s2 = openmc.ZCylinder(**hole_args[i])\n", + " elem_cells.append(openmc.Cell(fill=moder, region=(-s1 & +s2), name=f'iib_large_element_{pos}'))\n", + " elem_cells.append(openmc.Cell(fill=fuel, region=(-s2),\n", " name=f'iib_large_element_fuel_hole_{pos}'))\n", - "\n", + " t1_small = t2_big + adjacent_angular_offset\n", + " r1_small, r2_small = small_radii\n", " \n", - " small_start = t2 + adjacent_angular_offset\n", - " r1, r2 = small_radii\n", - " t1 = small_start\n", - " for i in range(0, small_elems_per_octant):\n", - " t2 = t1 + small_angular_width\n", - " elem_reg = -openmc.model.CylinderSector(r1, r2, t1, t2)\n", - " elem_cells.append(openmc.Cell(fill=moder, region=elem_reg, name=f'iib_small_element_{pos}'))\n", - " pos = t2 - (small_angular_width / 2)\n", - " zone_iib_reg = zone_iib_reg | elem_reg\n", - " t1 = t2 + adjacent_angular_offset\n", + " # Inter element fuel channel\n", + " s3 = openmc.model.CylinderSector(r1_small, r2_small, t2_big, t1_small)\n", + " cpos = t2_big + (adjacent_angular_offset / 2)\n", + " cpos = np.round(cpos, 3)\n", + " elem_cells.append(openmc.Cell(fill=fuel, region=-s3,\n", + " name=f'inter_element_fuel_channel_{cpos}'))\n", " \n", + " t4a = t1_big - adjacent_angular_offset\n", + " s4 = openmc.model.CylinderSector(r1_small, r1_big, t4a, t1_small)\n", + " elem_cells.append(openmc.Cell(fill=fuel, region=-s4,\n", + " name=f'inter_element_fuel_channel_{pos}'))\n", + " \n", + " for i in range(0, small_elems_per_octant):\n", + " t2_small = t1_small + small_angular_width\n", + " \n", + " # reflector element\n", + " s5 = openmc.model.CylinderSector(r1_small, r2_small, t1_small, t2_small)\n", + " pos = t2_small - (small_angular_width / 2)\n", + " pos = np.round(pos, 3)\n", + " elem_cells.append(openmc.Cell(fill=moder, region=-s5, name=f'iib_small_element_{pos}'))\n", + " t1_small = t2_small + adjacent_angular_offset\n", + " \n", + " # inter-element fuel channel\n", + " s6 = openmc.model.CylinderSector(r1_small, r2_small, t2_small, t1_small)\n", + " cpos = t2_small + (adjacent_angular_offset/2)\n", + " cpos = np.round(cpos, 3)\n", + " elem_cells.append(openmc.Cell(fill=fuel, region=-s6,\n", + " name=f'inter_element_fuel_channel_{cpos}'))\n", + " \n", "\n", - " c1 = openmc.Cell(fill=fuel, region=(~zone_iib_reg & \n", - " ~zone_i_boundary & \n", - " -zone_ii_boundary & \n", - " +core_base & \n", - " -core_top), name='iib_fuel')\n", - " \n", " #universe_id=10\n", " iib = openmc.Universe(name='zone_iib')\n", " iib.add_cells(elem_cells)\n", - " iib.add_cell(c1)\n", " \n", - " c2 = openmc.Cell(fill=iib, region=(~zone_i_boundary & \n", + " c1 = openmc.Cell(fill=iib, region=(~zone_i_boundary & \n", " -zone_ii_boundary & \n", " +core_base & \n", " -core_top), name='zone_iib')\n", " \n", - " return c2\n", + " return c1\n", "\n", "def annulus(zone_ii_boundary, annulus_boundary, core_base, core_top):\n", " annulus_reg = +zone_ii_boundary & -annulus_boundary & +core_base & -core_top\n", @@ -1220,19 +1915,10 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": null, "id": "cdf61881", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "5\n", - "5\n" - ] - } - ], + "outputs": [], "source": [ "zone_bounds, core_bounds, reflector_bounds, vessel_bounds = shared_root_geometry()\n", "\n", @@ -1267,5600 +1953,78 @@ }, { "cell_type": "code", - "execution_count": 21, - "id": "aa09126b", + "execution_count": null, + "id": "3b888598", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "OrderedDict([(211,\n", - " Cell\n", - " \tID =\t211\n", - " \tName =\tiib_large_element_0.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-776 775 -777 778 779)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (212,\n", - " Cell\n", - " \tID =\t212\n", - " \tName =\tiib_large_element_fuel_hole_0.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-779\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (213,\n", - " Cell\n", - " \tID =\t213\n", - " \tName =\tiib_small_element_0.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-781 780 -782 783)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (214,\n", - " Cell\n", - " \tID =\t214\n", - " \tName =\tiib_small_element_2.924\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-785 784 -786 787)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (215,\n", - " Cell\n", - " \tID =\t215\n", - " \tName =\tiib_small_element_4.558999999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-789 788 -790 791)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (216,\n", - " Cell\n", - " \tID =\t216\n", - " \tName =\tiib_small_element_6.193999999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-793 792 -794 795)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (217,\n", - " Cell\n", - " \tID =\t217\n", - " \tName =\tiib_small_element_7.828999999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-797 796 -798 799)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (218,\n", - " Cell\n", - " \tID =\t218\n", - " \tName =\tiib_small_element_9.463999999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-801 800 -802 803)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (219,\n", - " Cell\n", - " \tID =\t219\n", - " \tName =\tiib_small_element_11.099\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-805 804 -806 807)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (220,\n", - " Cell\n", - " \tID =\t220\n", - " \tName =\tiib_small_element_12.734000000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-809 808 -810 811)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (221,\n", - " Cell\n", - " \tID =\t221\n", - " \tName =\tiib_small_element_14.369000000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-813 812 -814 815)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (222,\n", - " Cell\n", - " \tID =\t222\n", - " \tName =\tiib_small_element_16.004000000000005\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-817 816 -818 819)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (223,\n", - " Cell\n", - " \tID =\t223\n", - " \tName =\tiib_small_element_17.639000000000006\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-821 820 -822 823)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (224,\n", - " Cell\n", - " \tID =\t224\n", - " \tName =\tiib_small_element_19.274000000000008\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-825 824 -826 827)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (225,\n", - " Cell\n", - " \tID =\t225\n", - " \tName =\tiib_small_element_20.90900000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-829 828 -830 831)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (226,\n", - " Cell\n", - " \tID =\t226\n", - " \tName =\tiib_small_element_22.54400000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-833 832 -834 835)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (227,\n", - " Cell\n", - " \tID =\t227\n", - " \tName =\tiib_small_element_24.179000000000013\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-837 836 -838 839)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (228,\n", - " Cell\n", - " \tID =\t228\n", - " \tName =\tiib_small_element_25.814000000000014\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-841 840 -842 843)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (229,\n", - " Cell\n", - " \tID =\t229\n", - " \tName =\tiib_small_element_27.449000000000016\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-845 844 -846 847)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (230,\n", - " Cell\n", - " \tID =\t230\n", - " \tName =\tiib_small_element_29.084000000000017\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-849 848 -850 851)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (231,\n", - " Cell\n", - " \tID =\t231\n", - " \tName =\tiib_small_element_30.71900000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-853 852 -854 855)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (232,\n", - " Cell\n", - " \tID =\t232\n", - " \tName =\tiib_small_element_32.35400000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-857 856 -858 859)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (233,\n", - " Cell\n", - " \tID =\t233\n", - " \tName =\tiib_small_element_33.98900000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-861 860 -862 863)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (234,\n", - " Cell\n", - " \tID =\t234\n", - " \tName =\tiib_small_element_35.62400000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-865 864 -866 867)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (235,\n", - " Cell\n", - " \tID =\t235\n", - " \tName =\tiib_small_element_37.259000000000015\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-869 868 -870 871)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (236,\n", - " Cell\n", - " \tID =\t236\n", - " \tName =\tiib_small_element_38.89400000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-873 872 -874 875)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (237,\n", - " Cell\n", - " \tID =\t237\n", - " \tName =\tiib_small_element_40.52900000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-877 876 -878 879)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (238,\n", - " Cell\n", - " \tID =\t238\n", - " \tName =\tiib_large_element_45.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-881 880 -882 883 884)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (239,\n", - " Cell\n", - " \tID =\t239\n", - " \tName =\tiib_large_element_fuel_hole_45.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-884\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (240,\n", - " Cell\n", - " \tID =\t240\n", - " \tName =\tiib_small_element_45.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-886 885 -887 888)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (241,\n", - " Cell\n", - " \tID =\t241\n", - " \tName =\tiib_small_element_47.924\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-890 889 -891 892)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (242,\n", - " Cell\n", - " \tID =\t242\n", - " \tName =\tiib_small_element_49.559\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-894 893 -895 896)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (243,\n", - " Cell\n", - " \tID =\t243\n", - " \tName =\tiib_small_element_51.193999999999996\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-898 897 -899 900)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (244,\n", - " Cell\n", - " \tID =\t244\n", - " \tName =\tiib_small_element_52.82899999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-902 901 -903 904)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (245,\n", - " Cell\n", - " \tID =\t245\n", - " \tName =\tiib_small_element_54.46399999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-906 905 -907 908)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (246,\n", - " Cell\n", - " \tID =\t246\n", - " \tName =\tiib_small_element_56.09899999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-910 909 -911 912)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (247,\n", - " Cell\n", - " \tID =\t247\n", - " \tName =\tiib_small_element_57.73399999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-914 913 -915 916)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (248,\n", - " Cell\n", - " \tID =\t248\n", - " \tName =\tiib_small_element_59.368999999999986\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-918 917 -919 920)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (249,\n", - " Cell\n", - " \tID =\t249\n", - " \tName =\tiib_small_element_61.003999999999984\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-922 921 -923 924)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (250,\n", - " Cell\n", - " \tID =\t250\n", - " \tName =\tiib_small_element_62.63899999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-926 925 -927 928)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (251,\n", - " Cell\n", - " \tID =\t251\n", - " \tName =\tiib_small_element_64.27399999999997\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-930 929 -931 932)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (252,\n", - " Cell\n", - " \tID =\t252\n", - " \tName =\tiib_small_element_65.90899999999996\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-934 933 -935 936)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (253,\n", - " Cell\n", - " \tID =\t253\n", - " \tName =\tiib_small_element_67.54399999999995\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-938 937 -939 940)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (254,\n", - " Cell\n", - " \tID =\t254\n", - " \tName =\tiib_small_element_69.17899999999995\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-942 941 -943 944)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (255,\n", - " Cell\n", - " \tID =\t255\n", - " \tName =\tiib_small_element_70.81399999999994\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-946 945 -947 948)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (256,\n", - " Cell\n", - " \tID =\t256\n", - " \tName =\tiib_small_element_72.44899999999993\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-950 949 -951 952)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (257,\n", - " Cell\n", - " \tID =\t257\n", - " \tName =\tiib_small_element_74.08399999999992\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-954 953 -955 956)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (258,\n", - " Cell\n", - " \tID =\t258\n", - " \tName =\tiib_small_element_75.71899999999991\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-958 957 -959 960)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (259,\n", - " Cell\n", - " \tID =\t259\n", - " \tName =\tiib_small_element_77.3539999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-962 961 -963 964)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (260,\n", - " Cell\n", - " \tID =\t260\n", - " \tName =\tiib_small_element_78.98899999999989\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-966 965 -967 968)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (261,\n", - " Cell\n", - " \tID =\t261\n", - " \tName =\tiib_small_element_80.62399999999988\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-970 969 -971 972)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (262,\n", - " Cell\n", - " \tID =\t262\n", - " \tName =\tiib_small_element_82.25899999999987\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-974 973 -975 976)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (263,\n", - " Cell\n", - " \tID =\t263\n", - " \tName =\tiib_small_element_83.89399999999986\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-978 977 -979 980)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (264,\n", - " Cell\n", - " \tID =\t264\n", - " \tName =\tiib_small_element_85.52899999999985\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-982 981 -983 984)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (265,\n", - " Cell\n", - " \tID =\t265\n", - " \tName =\tiib_large_element_90.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-986 985 -987 988 989)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (266,\n", - " Cell\n", - " \tID =\t266\n", - " \tName =\tiib_large_element_fuel_hole_90.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-989\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (267,\n", - " Cell\n", - " \tID =\t267\n", - " \tName =\tiib_small_element_90.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-991 990 -992 993)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (268,\n", - " Cell\n", - " \tID =\t268\n", - " \tName =\tiib_small_element_92.92399999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-995 994 -996 997)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (269,\n", - " Cell\n", - " \tID =\t269\n", - " \tName =\tiib_small_element_94.55899999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-999 998 -1000 1001)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (270,\n", - " Cell\n", - " \tID =\t270\n", - " \tName =\tiib_small_element_96.19399999999997\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1003 1002 -1004 1005)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (271,\n", - " Cell\n", - " \tID =\t271\n", - " \tName =\tiib_small_element_97.82899999999997\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1007 1006 -1008 1009)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (272,\n", - " Cell\n", - " \tID =\t272\n", - " \tName =\tiib_small_element_99.46399999999996\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1011 1010 -1012 1013)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (273,\n", - " Cell\n", - " \tID =\t273\n", - " \tName =\tiib_small_element_101.09899999999995\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1015 1014 -1016 1017)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (274,\n", - " Cell\n", - " \tID =\t274\n", - " \tName =\tiib_small_element_102.73399999999994\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1019 1018 -1020 1021)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (275,\n", - " Cell\n", - " \tID =\t275\n", - " \tName =\tiib_small_element_104.36899999999993\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1023 1022 -1024 1025)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (276,\n", - " Cell\n", - " \tID =\t276\n", - " \tName =\tiib_small_element_106.00399999999992\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1027 1026 -1028 1029)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (277,\n", - " Cell\n", - " \tID =\t277\n", - " \tName =\tiib_small_element_107.63899999999991\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1031 1030 -1032 1033)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (278,\n", - " Cell\n", - " \tID =\t278\n", - " \tName =\tiib_small_element_109.2739999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1035 1034 -1036 1037)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (279,\n", - " Cell\n", - " \tID =\t279\n", - " \tName =\tiib_small_element_110.90899999999989\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1039 1038 -1040 1041)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (280,\n", - " Cell\n", - " \tID =\t280\n", - " \tName =\tiib_small_element_112.54399999999988\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1043 1042 -1044 1045)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (281,\n", - " Cell\n", - " \tID =\t281\n", - " \tName =\tiib_small_element_114.17899999999987\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1047 1046 -1048 1049)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (282,\n", - " Cell\n", - " \tID =\t282\n", - " \tName =\tiib_small_element_115.81399999999987\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1051 1050 -1052 1053)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (283,\n", - " Cell\n", - " \tID =\t283\n", - " \tName =\tiib_small_element_117.44899999999986\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1055 1054 -1056 1057)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (284,\n", - " Cell\n", - " \tID =\t284\n", - " \tName =\tiib_small_element_119.08399999999985\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1059 1058 -1060 1061)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (285,\n", - " Cell\n", - " \tID =\t285\n", - " \tName =\tiib_small_element_120.71899999999984\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1063 1062 -1064 1065)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (286,\n", - " Cell\n", - " \tID =\t286\n", - " \tName =\tiib_small_element_122.35399999999983\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1067 1066 -1068 1069)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (287,\n", - " Cell\n", - " \tID =\t287\n", - " \tName =\tiib_small_element_123.98899999999982\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1071 1070 -1072 1073)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (288,\n", - " Cell\n", - " \tID =\t288\n", - " \tName =\tiib_small_element_125.62399999999981\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1075 1074 -1076 1077)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (289,\n", - " Cell\n", - " \tID =\t289\n", - " \tName =\tiib_small_element_127.2589999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1079 1078 -1080 1081)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (290,\n", - " Cell\n", - " \tID =\t290\n", - " \tName =\tiib_small_element_128.89399999999983\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1083 1082 -1084 1085)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (291,\n", - " Cell\n", - " \tID =\t291\n", - " \tName =\tiib_small_element_130.52899999999985\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1087 1086 -1088 1089)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (292,\n", - " Cell\n", - " \tID =\t292\n", - " \tName =\tiib_large_element_135.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1091 1090 -1092 1093 1094)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (293,\n", - " Cell\n", - " \tID =\t293\n", - " \tName =\tiib_large_element_fuel_hole_135.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-1094\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (294,\n", - " Cell\n", - " \tID =\t294\n", - " \tName =\tiib_small_element_135.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1096 1095 -1097 1098)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (295,\n", - " Cell\n", - " \tID =\t295\n", - " \tName =\tiib_small_element_137.92400000000004\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1100 1099 -1101 1102)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (296,\n", - " Cell\n", - " \tID =\t296\n", - " \tName =\tiib_small_element_139.55900000000005\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1104 1103 -1105 1106)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (297,\n", - " Cell\n", - " \tID =\t297\n", - " \tName =\tiib_small_element_141.19400000000007\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1108 1107 -1109 1110)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (298,\n", - " Cell\n", - " \tID =\t298\n", - " \tName =\tiib_small_element_142.8290000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1112 1111 -1113 1114)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (299,\n", - " Cell\n", - " \tID =\t299\n", - " \tName =\tiib_small_element_144.4640000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1116 1115 -1117 1118)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (300,\n", - " Cell\n", - " \tID =\t300\n", - " \tName =\tiib_small_element_146.09900000000013\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1120 1119 -1121 1122)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (301,\n", - " Cell\n", - " \tID =\t301\n", - " \tName =\tiib_small_element_147.73400000000015\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1124 1123 -1125 1126)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (302,\n", - " Cell\n", - " \tID =\t302\n", - " \tName =\tiib_small_element_149.36900000000017\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1128 1127 -1129 1130)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (303,\n", - " Cell\n", - " \tID =\t303\n", - " \tName =\tiib_small_element_151.0040000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1132 1131 -1133 1134)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (304,\n", - " Cell\n", - " \tID =\t304\n", - " \tName =\tiib_small_element_152.6390000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1136 1135 -1137 1138)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (305,\n", - " Cell\n", - " \tID =\t305\n", - " \tName =\tiib_small_element_154.27400000000023\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1140 1139 -1141 1142)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (306,\n", - " Cell\n", - " \tID =\t306\n", - " \tName =\tiib_small_element_155.90900000000025\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1144 1143 -1145 1146)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (307,\n", - " Cell\n", - " \tID =\t307\n", - " \tName =\tiib_small_element_157.54400000000027\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1148 1147 -1149 1150)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (308,\n", - " Cell\n", - " \tID =\t308\n", - " \tName =\tiib_small_element_159.1790000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1152 1151 -1153 1154)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (309,\n", - " Cell\n", - " \tID =\t309\n", - " \tName =\tiib_small_element_160.8140000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1156 1155 -1157 1158)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (310,\n", - " Cell\n", - " \tID =\t310\n", - " \tName =\tiib_small_element_162.44900000000032\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1160 1159 -1161 1162)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (311,\n", - " Cell\n", - " \tID =\t311\n", - " \tName =\tiib_small_element_164.08400000000034\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1164 1163 -1165 1166)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (312,\n", - " Cell\n", - " \tID =\t312\n", - " \tName =\tiib_small_element_165.71900000000036\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1168 1167 -1169 1170)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (313,\n", - " Cell\n", - " \tID =\t313\n", - " \tName =\tiib_small_element_167.35400000000038\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1172 1171 -1173 1174)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (314,\n", - " Cell\n", - " \tID =\t314\n", - " \tName =\tiib_small_element_168.9890000000004\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1176 1175 -1177 1178)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (315,\n", - " Cell\n", - " \tID =\t315\n", - " \tName =\tiib_small_element_170.62400000000042\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1180 1179 -1181 1182)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (316,\n", - " Cell\n", - " \tID =\t316\n", - " \tName =\tiib_small_element_172.25900000000044\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1184 1183 -1185 1186)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (317,\n", - " Cell\n", - " \tID =\t317\n", - " \tName =\tiib_small_element_173.89400000000046\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1188 1187 -1189 1190)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (318,\n", - " Cell\n", - " \tID =\t318\n", - " \tName =\tiib_small_element_175.52900000000048\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1192 1191 -1193 1194)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (319,\n", - " Cell\n", - " \tID =\t319\n", - " \tName =\tiib_large_element_180.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1196 1195 -1197 1198 1199)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (320,\n", - " Cell\n", - " \tID =\t320\n", - " \tName =\tiib_large_element_fuel_hole_180.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-1199\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (321,\n", - " Cell\n", - " \tID =\t321\n", - " \tName =\tiib_small_element_180.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1201 1200 -1202 1203)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (322,\n", - " Cell\n", - " \tID =\t322\n", - " \tName =\tiib_small_element_182.92400000000004\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1205 1204 -1206 1207)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (323,\n", - " Cell\n", - " \tID =\t323\n", - " \tName =\tiib_small_element_184.55900000000005\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1209 1208 -1210 1211)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (324,\n", - " Cell\n", - " \tID =\t324\n", - " \tName =\tiib_small_element_186.19400000000007\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1213 1212 -1214 1215)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (325,\n", - " Cell\n", - " \tID =\t325\n", - " \tName =\tiib_small_element_187.8290000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1217 1216 -1218 1219)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (326,\n", - " Cell\n", - " \tID =\t326\n", - " \tName =\tiib_small_element_189.4640000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1221 1220 -1222 1223)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (327,\n", - " Cell\n", - " \tID =\t327\n", - " \tName =\tiib_small_element_191.09900000000013\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1225 1224 -1226 1227)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (328,\n", - " Cell\n", - " \tID =\t328\n", - " \tName =\tiib_small_element_192.73400000000015\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1229 1228 -1230 1231)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (329,\n", - " Cell\n", - " \tID =\t329\n", - " \tName =\tiib_small_element_194.36900000000017\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1233 1232 -1234 1235)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (330,\n", - " Cell\n", - " \tID =\t330\n", - " \tName =\tiib_small_element_196.0040000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1237 1236 -1238 1239)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (331,\n", - " Cell\n", - " \tID =\t331\n", - " \tName =\tiib_small_element_197.6390000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1241 1240 -1242 1243)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (332,\n", - " Cell\n", - " \tID =\t332\n", - " \tName =\tiib_small_element_199.27400000000023\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1245 1244 -1246 1247)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (333,\n", - " Cell\n", - " \tID =\t333\n", - " \tName =\tiib_small_element_200.90900000000025\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1249 1248 -1250 1251)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (334,\n", - " Cell\n", - " \tID =\t334\n", - " \tName =\tiib_small_element_202.54400000000027\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1253 1252 -1254 1255)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (335,\n", - " Cell\n", - " \tID =\t335\n", - " \tName =\tiib_small_element_204.1790000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1257 1256 -1258 1259)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (336,\n", - " Cell\n", - " \tID =\t336\n", - " \tName =\tiib_small_element_205.8140000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1261 1260 -1262 1263)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (337,\n", - " Cell\n", - " \tID =\t337\n", - " \tName =\tiib_small_element_207.44900000000032\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1265 1264 -1266 1267)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (338,\n", - " Cell\n", - " \tID =\t338\n", - " \tName =\tiib_small_element_209.08400000000034\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1269 1268 -1270 1271)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (339,\n", - " Cell\n", - " \tID =\t339\n", - " \tName =\tiib_small_element_210.71900000000036\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1273 1272 -1274 1275)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (340,\n", - " Cell\n", - " \tID =\t340\n", - " \tName =\tiib_small_element_212.35400000000038\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1277 1276 -1278 1279)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (341,\n", - " Cell\n", - " \tID =\t341\n", - " \tName =\tiib_small_element_213.9890000000004\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1281 1280 -1282 1283)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (342,\n", - " Cell\n", - " \tID =\t342\n", - " \tName =\tiib_small_element_215.62400000000042\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1285 1284 -1286 1287)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (343,\n", - " Cell\n", - " \tID =\t343\n", - " \tName =\tiib_small_element_217.25900000000044\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1289 1288 -1290 1291)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (344,\n", - " Cell\n", - " \tID =\t344\n", - " \tName =\tiib_small_element_218.89400000000046\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1293 1292 -1294 1295)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (345,\n", - " Cell\n", - " \tID =\t345\n", - " \tName =\tiib_small_element_220.52900000000048\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1297 1296 -1298 1299)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (346,\n", - " Cell\n", - " \tID =\t346\n", - " \tName =\tiib_large_element_225.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1301 1300 -1302 1303 1304)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (347,\n", - " Cell\n", - " \tID =\t347\n", - " \tName =\tiib_large_element_fuel_hole_225.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-1304\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (348,\n", - " Cell\n", - " \tID =\t348\n", - " \tName =\tiib_small_element_225.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1306 1305 -1307 1308)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (349,\n", - " Cell\n", - " \tID =\t349\n", - " \tName =\tiib_small_element_227.92400000000004\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1310 1309 -1311 1312)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (350,\n", - " Cell\n", - " \tID =\t350\n", - " \tName =\tiib_small_element_229.55900000000005\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1314 1313 -1315 1316)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (351,\n", - " Cell\n", - " \tID =\t351\n", - " \tName =\tiib_small_element_231.19400000000007\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1318 1317 -1319 1320)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (352,\n", - " Cell\n", - " \tID =\t352\n", - " \tName =\tiib_small_element_232.8290000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1322 1321 -1323 1324)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (353,\n", - " Cell\n", - " \tID =\t353\n", - " \tName =\tiib_small_element_234.4640000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1326 1325 -1327 1328)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (354,\n", - " Cell\n", - " \tID =\t354\n", - " \tName =\tiib_small_element_236.09900000000013\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1330 1329 -1331 1332)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (355,\n", - " Cell\n", - " \tID =\t355\n", - " \tName =\tiib_small_element_237.73400000000015\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1334 1333 -1335 1336)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (356,\n", - " Cell\n", - " \tID =\t356\n", - " \tName =\tiib_small_element_239.36900000000017\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1338 1337 -1339 1340)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (357,\n", - " Cell\n", - " \tID =\t357\n", - " \tName =\tiib_small_element_241.0040000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1342 1341 -1343 1344)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (358,\n", - " Cell\n", - " \tID =\t358\n", - " \tName =\tiib_small_element_242.6390000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1346 1345 -1347 1348)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (359,\n", - " Cell\n", - " \tID =\t359\n", - " \tName =\tiib_small_element_244.27400000000023\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1350 1349 -1351 1352)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (360,\n", - " Cell\n", - " \tID =\t360\n", - " \tName =\tiib_small_element_245.90900000000025\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1354 1353 -1355 1356)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (361,\n", - " Cell\n", - " \tID =\t361\n", - " \tName =\tiib_small_element_247.54400000000027\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1358 1357 -1359 1360)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (362,\n", - " Cell\n", - " \tID =\t362\n", - " \tName =\tiib_small_element_249.1790000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1362 1361 -1363 1364)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (363,\n", - " Cell\n", - " \tID =\t363\n", - " \tName =\tiib_small_element_250.8140000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1366 1365 -1367 1368)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (364,\n", - " Cell\n", - " \tID =\t364\n", - " \tName =\tiib_small_element_252.44900000000032\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1370 1369 -1371 1372)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (365,\n", - " Cell\n", - " \tID =\t365\n", - " \tName =\tiib_small_element_254.08400000000034\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1374 1373 -1375 1376)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (366,\n", - " Cell\n", - " \tID =\t366\n", - " \tName =\tiib_small_element_255.71900000000036\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1378 1377 -1379 1380)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (367,\n", - " Cell\n", - " \tID =\t367\n", - " \tName =\tiib_small_element_257.3540000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1382 1381 -1383 1384)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (368,\n", - " Cell\n", - " \tID =\t368\n", - " \tName =\tiib_small_element_258.9890000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1386 1385 -1387 1388)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (369,\n", - " Cell\n", - " \tID =\t369\n", - " \tName =\tiib_small_element_260.6240000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1390 1389 -1391 1392)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (370,\n", - " Cell\n", - " \tID =\t370\n", - " \tName =\tiib_small_element_262.2590000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1394 1393 -1395 1396)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (371,\n", - " Cell\n", - " \tID =\t371\n", - " \tName =\tiib_small_element_263.8940000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1398 1397 -1399 1400)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (372,\n", - " Cell\n", - " \tID =\t372\n", - " \tName =\tiib_small_element_265.5290000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1402 1401 -1403 1404)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (373,\n", - " Cell\n", - " \tID =\t373\n", - " \tName =\tiib_large_element_270.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1406 1405 -1407 1408 1409)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (374,\n", - " Cell\n", - " \tID =\t374\n", - " \tName =\tiib_large_element_fuel_hole_270.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-1409\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (375,\n", - " Cell\n", - " \tID =\t375\n", - " \tName =\tiib_small_element_270.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1411 1410 -1412 1413)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (376,\n", - " Cell\n", - " \tID =\t376\n", - " \tName =\tiib_small_element_272.924\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1415 1414 -1416 1417)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (377,\n", - " Cell\n", - " \tID =\t377\n", - " \tName =\tiib_small_element_274.55899999999997\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1419 1418 -1420 1421)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (378,\n", - " Cell\n", - " \tID =\t378\n", - " \tName =\tiib_small_element_276.19399999999996\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1423 1422 -1424 1425)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (379,\n", - " Cell\n", - " \tID =\t379\n", - " \tName =\tiib_small_element_277.82899999999995\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1427 1426 -1428 1429)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (380,\n", - " Cell\n", - " \tID =\t380\n", - " \tName =\tiib_small_element_279.46399999999994\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1431 1430 -1432 1433)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (381,\n", - " Cell\n", - " \tID =\t381\n", - " \tName =\tiib_small_element_281.09899999999993\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1435 1434 -1436 1437)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (382,\n", - " Cell\n", - " \tID =\t382\n", - " \tName =\tiib_small_element_282.7339999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1439 1438 -1440 1441)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (383,\n", - " Cell\n", - " \tID =\t383\n", - " \tName =\tiib_small_element_284.3689999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1443 1442 -1444 1445)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (384,\n", - " Cell\n", - " \tID =\t384\n", - " \tName =\tiib_small_element_286.0039999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1447 1446 -1448 1449)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (385,\n", - " Cell\n", - " \tID =\t385\n", - " \tName =\tiib_small_element_287.6389999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1451 1450 -1452 1453)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (386,\n", - " Cell\n", - " \tID =\t386\n", - " \tName =\tiib_small_element_289.2739999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1455 1454 -1456 1457)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (387,\n", - " Cell\n", - " \tID =\t387\n", - " \tName =\tiib_small_element_290.9089999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1459 1458 -1460 1461)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (388,\n", - " Cell\n", - " \tID =\t388\n", - " \tName =\tiib_small_element_292.54399999999987\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1463 1462 -1464 1465)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (389,\n", - " Cell\n", - " \tID =\t389\n", - " \tName =\tiib_small_element_294.17899999999986\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1467 1466 -1468 1469)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (390,\n", - " Cell\n", - " \tID =\t390\n", - " \tName =\tiib_small_element_295.81399999999985\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1471 1470 -1472 1473)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (391,\n", - " Cell\n", - " \tID =\t391\n", - " \tName =\tiib_small_element_297.44899999999984\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1475 1474 -1476 1477)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (392,\n", - " Cell\n", - " \tID =\t392\n", - " \tName =\tiib_small_element_299.08399999999983\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1479 1478 -1480 1481)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (393,\n", - " Cell\n", - " \tID =\t393\n", - " \tName =\tiib_small_element_300.7189999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1483 1482 -1484 1485)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (394,\n", - " Cell\n", - " \tID =\t394\n", - " \tName =\tiib_small_element_302.3539999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1487 1486 -1488 1489)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (395,\n", - " Cell\n", - " \tID =\t395\n", - " \tName =\tiib_small_element_303.9889999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1491 1490 -1492 1493)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (396,\n", - " Cell\n", - " \tID =\t396\n", - " \tName =\tiib_small_element_305.6239999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1495 1494 -1496 1497)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (397,\n", - " Cell\n", - " \tID =\t397\n", - " \tName =\tiib_small_element_307.2589999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1499 1498 -1500 1501)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (398,\n", - " Cell\n", - " \tID =\t398\n", - " \tName =\tiib_small_element_308.8939999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1503 1502 -1504 1505)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (399,\n", - " Cell\n", - " \tID =\t399\n", - " \tName =\tiib_small_element_310.52899999999977\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1507 1506 -1508 1509)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (400,\n", - " Cell\n", - " \tID =\t400\n", - " \tName =\tiib_large_element_315.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1511 1510 -1512 1513 1514)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (401,\n", - " Cell\n", - " \tID =\t401\n", - " \tName =\tiib_large_element_fuel_hole_315.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-1514\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (402,\n", - " Cell\n", - " \tID =\t402\n", - " \tName =\tiib_small_element_315.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1516 1515 -1517 1518)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (403,\n", - " Cell\n", - " \tID =\t403\n", - " \tName =\tiib_small_element_317.924\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1520 1519 -1521 1522)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (404,\n", - " Cell\n", - " \tID =\t404\n", - " \tName =\tiib_small_element_319.55899999999997\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1524 1523 -1525 1526)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (405,\n", - " Cell\n", - " \tID =\t405\n", - " \tName =\tiib_small_element_321.19399999999996\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1528 1527 -1529 1530)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (406,\n", - " Cell\n", - " \tID =\t406\n", - " \tName =\tiib_small_element_322.82899999999995\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1532 1531 -1533 1534)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (407,\n", - " Cell\n", - " \tID =\t407\n", - " \tName =\tiib_small_element_324.46399999999994\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1536 1535 -1537 1538)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (408,\n", - " Cell\n", - " \tID =\t408\n", - " \tName =\tiib_small_element_326.09899999999993\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1540 1539 -1541 1542)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (409,\n", - " Cell\n", - " \tID =\t409\n", - " \tName =\tiib_small_element_327.7339999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1544 1543 -1545 1546)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (410,\n", - " Cell\n", - " \tID =\t410\n", - " \tName =\tiib_small_element_329.3689999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1548 1547 -1549 1550)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (411,\n", - " Cell\n", - " \tID =\t411\n", - " \tName =\tiib_small_element_331.0039999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1552 1551 -1553 1554)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (412,\n", - " Cell\n", - " \tID =\t412\n", - " \tName =\tiib_small_element_332.6389999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1556 1555 -1557 1558)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (413,\n", - " Cell\n", - " \tID =\t413\n", - " \tName =\tiib_small_element_334.2739999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1560 1559 -1561 1562)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (414,\n", - " Cell\n", - " \tID =\t414\n", - " \tName =\tiib_small_element_335.9089999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1564 1563 -1565 1566)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (415,\n", - " Cell\n", - " \tID =\t415\n", - " \tName =\tiib_small_element_337.54399999999987\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1568 1567 -1569 1570)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (416,\n", - " Cell\n", - " \tID =\t416\n", - " \tName =\tiib_small_element_339.17899999999986\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1572 1571 -1573 1574)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (417,\n", - " Cell\n", - " \tID =\t417\n", - " \tName =\tiib_small_element_340.81399999999985\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1576 1575 -1577 1578)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (418,\n", - " Cell\n", - " \tID =\t418\n", - " \tName =\tiib_small_element_342.44899999999984\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1580 1579 -1581 1582)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (419,\n", - " Cell\n", - " \tID =\t419\n", - " \tName =\tiib_small_element_344.08399999999983\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1584 1583 -1585 1586)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (420,\n", - " Cell\n", - " \tID =\t420\n", - " \tName =\tiib_small_element_345.7189999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1588 1587 -1589 1590)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (421,\n", - " Cell\n", - " \tID =\t421\n", - " \tName =\tiib_small_element_347.3539999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1592 1591 -1593 1594)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (422,\n", - " Cell\n", - " \tID =\t422\n", - " \tName =\tiib_small_element_348.9889999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1596 1595 -1597 1598)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (423,\n", - " Cell\n", - " \tID =\t423\n", - " \tName =\tiib_small_element_350.6239999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1600 1599 -1601 1602)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (424,\n", - " Cell\n", - " \tID =\t424\n", - " \tName =\tiib_small_element_352.2589999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1604 1603 -1605 1606)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (425,\n", - " Cell\n", - " \tID =\t425\n", - " \tName =\tiib_small_element_353.8939999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1608 1607 -1609 1610)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (426,\n", - " Cell\n", - " \tID =\t426\n", - " \tName =\tiib_small_element_355.52899999999977\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1612 1611 -1613 1614)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (427,\n", - " Cell\n", - " \tID =\t427\n", - " \tName =\tiib_fuel\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(~((-776 775 -777 778) | (-781 780 -782 783) | (-785 784 -786 787) | (-789 788 -790 791) | (-793 792 -794 795) | (-797 796 -798 799) | (-801 800 -802 803) | (-805 804 -806 807) | (-809 808 -810 811) | (-813 812 -814 815) | (-817 816 -818 819) | (-821 820 -822 823) | (-825 824 -826 827) | (-829 828 -830 831) | (-833 832 -834 835) | (-837 836 -838 839) | (-841 840 -842 843) | (-845 844 -846 847) | (-849 848 -850 851) | (-853 852 -854 855) | (-857 856 -858 859) | (-861 860 -862 863) | (-865 864 -866 867) | (-869 868 -870 871) | (-873 872 -874 875) | (-877 876 -878 879) | (-881 880 -882 883) | (-886 885 -887 888) | (-890 889 -891 892) | (-894 893 -895 896) | (-898 897 -899 900) | (-902 901 -903 904) | (-906 905 -907 908) | (-910 909 -911 912) | (-914 913 -915 916) | (-918 917 -919 920) | (-922 921 -923 924) | (-926 925 -927 928) | (-930 929 -931 932) | (-934 933 -935 936) | (-938 937 -939 940) | (-942 941 -943 944) | (-946 945 -947 948) | (-950 949 -951 952) | (-954 953 -955 956) | (-958 957 -959 960) | (-962 961 -963 964) | (-966 965 -967 968) | (-970 969 -971 972) | (-974 973 -975 976) | (-978 977 -979 980) | (-982 981 -983 984) | (-986 985 -987 988) | (-991 990 -992 993) | (-995 994 -996 997) | (-999 998 -1000 1001) | (-1003 1002 -1004 1005) | (-1007 1006 -1008 1009) | (-1011 1010 -1012 1013) | (-1015 1014 -1016 1017) | (-1019 1018 -1020 1021) | (-1023 1022 -1024 1025) | (-1027 1026 -1028 1029) | (-1031 1030 -1032 1033) | (-1035 1034 -1036 1037) | (-1039 1038 -1040 1041) | (-1043 1042 -1044 1045) | (-1047 1046 -1048 1049) | (-1051 1050 -1052 1053) | (-1055 1054 -1056 1057) | (-1059 1058 -1060 1061) | (-1063 1062 -1064 1065) | (-1067 1066 -1068 1069) | (-1071 1070 -1072 1073) | (-1075 1074 -1076 1077) | (-1079 1078 -1080 1081) | (-1083 1082 -1084 1085) | (-1087 1086 -1088 1089) | (-1091 1090 -1092 1093) | (-1096 1095 -1097 1098) | (-1100 1099 -1101 1102) | (-1104 1103 -1105 1106) | (-1108 1107 -1109 1110) | (-1112 1111 -1113 1114) | (-1116 1115 -1117 1118) | (-1120 1119 -1121 1122) | (-1124 1123 -1125 1126) | (-1128 1127 -1129 1130) | (-1132 1131 -1133 1134) | (-1136 1135 -1137 1138) | (-1140 1139 -1141 1142) | (-1144 1143 -1145 1146) | (-1148 1147 -1149 1150) | (-1152 1151 -1153 1154) | (-1156 1155 -1157 1158) | (-1160 1159 -1161 1162) | (-1164 1163 -1165 1166) | (-1168 1167 -1169 1170) | (-1172 1171 -1173 1174) | (-1176 1175 -1177 1178) | (-1180 1179 -1181 1182) | (-1184 1183 -1185 1186) | (-1188 1187 -1189 1190) | (-1192 1191 -1193 1194) | (-1196 1195 -1197 1198) | (-1201 1200 -1202 1203) | (-1205 1204 -1206 1207) | (-1209 1208 -1210 1211) | (-1213 1212 -1214 1215) | (-1217 1216 -1218 1219) | (-1221 1220 -1222 1223) | (-1225 1224 -1226 1227) | (-1229 1228 -1230 1231) | (-1233 1232 -1234 1235) | (-1237 1236 -1238 1239) | (-1241 1240 -1242 1243) | (-1245 1244 -1246 1247) | (-1249 1248 -1250 1251) | (-1253 1252 -1254 1255) | (-1257 1256 -1258 1259) | (-1261 1260 -1262 1263) | (-1265 1264 -1266 1267) | (-1269 1268 -1270 1271) | (-1273 1272 -1274 1275) | (-1277 1276 -1278 1279) | (-1281 1280 -1282 1283) | (-1285 1284 -1286 1287) | (-1289 1288 -1290 1291) | (-1293 1292 -1294 1295) | (-1297 1296 -1298 1299) | (-1301 1300 -1302 1303) | (-1306 1305 -1307 1308) | (-1310 1309 -1311 1312) | (-1314 1313 -1315 1316) | (-1318 1317 -1319 1320) | (-1322 1321 -1323 1324) | (-1326 1325 -1327 1328) | (-1330 1329 -1331 1332) | (-1334 1333 -1335 1336) | (-1338 1337 -1339 1340) | (-1342 1341 -1343 1344) | (-1346 1345 -1347 1348) | (-1350 1349 -1351 1352) | (-1354 1353 -1355 1356) | (-1358 1357 -1359 1360) | (-1362 1361 -1363 1364) | (-1366 1365 -1367 1368) | (-1370 1369 -1371 1372) | (-1374 1373 -1375 1376) | (-1378 1377 -1379 1380) | (-1382 1381 -1383 1384) | (-1386 1385 -1387 1388) | (-1390 1389 -1391 1392) | (-1394 1393 -1395 1396) | (-1398 1397 -1399 1400) | (-1402 1401 -1403 1404) | (-1406 1405 -1407 1408) | (-1411 1410 -1412 1413) | (-1415 1414 -1416 1417) | (-1419 1418 -1420 1421) | (-1423 1422 -1424 1425) | (-1427 1426 -1428 1429) | (-1431 1430 -1432 1433) | (-1435 1434 -1436 1437) | (-1439 1438 -1440 1441) | (-1443 1442 -1444 1445) | (-1447 1446 -1448 1449) | (-1451 1450 -1452 1453) | (-1455 1454 -1456 1457) | (-1459 1458 -1460 1461) | (-1463 1462 -1464 1465) | (-1467 1466 -1468 1469) | (-1471 1470 -1472 1473) | (-1475 1474 -1476 1477) | (-1479 1478 -1480 1481) | (-1483 1482 -1484 1485) | (-1487 1486 -1488 1489) | (-1491 1490 -1492 1493) | (-1495 1494 -1496 1497) | (-1499 1498 -1500 1501) | (-1503 1502 -1504 1505) | (-1507 1506 -1508 1509) | (-1511 1510 -1512 1513) | (-1516 1515 -1517 1518) | (-1520 1519 -1521 1522) | (-1524 1523 -1525 1526) | (-1528 1527 -1529 1530) | (-1532 1531 -1533 1534) | (-1536 1535 -1537 1538) | (-1540 1539 -1541 1542) | (-1544 1543 -1545 1546) | (-1548 1547 -1549 1550) | (-1552 1551 -1553 1554) | (-1556 1555 -1557 1558) | (-1560 1559 -1561 1562) | (-1564 1563 -1565 1566) | (-1568 1567 -1569 1570) | (-1572 1571 -1573 1574) | (-1576 1575 -1577 1578) | (-1580 1579 -1581 1582) | (-1584 1583 -1585 1586) | (-1588 1587 -1589 1590) | (-1592 1591 -1593 1594) | (-1596 1595 -1597 1598) | (-1600 1599 -1601 1602) | (-1604 1603 -1605 1606) | (-1608 1607 -1609 1610) | (-1612 1611 -1613 1614)) ~((-477 478 -479 480 481 482 -483 -484) | (-485 486 -487 488 489 490 -491 -492) | (-493 494 -495 496 497 498 -499 -500)) -501 475 -476)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone)])" - ] - }, - "execution_count": 21, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "ia.fill.get_all_cells()" - ] - }, - { - "cell_type": "code", - "execution_count": 18, - "id": "2a283441", - "metadata": { - "scrolled": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 18, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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7aBCRORFL3qRHDx4UG677TY5++yz5fOf/7yceeaZsrGxseM1l112mdxzzz1y6qmnHrbfgwcPysGDB7f/ezabhf1GevAIU3SJ8VQP39WebYMXAACA2riOh2xCi+XXm7J99CmwKucpICKJw4oDBw7I7t27d/zdiSeeKMccc4wcOHBg+zXPfOYzd7xmsc2BAwfWhhVXXHHFdlcHEJtJd4Xpflxo7V/jwra6D5vvyXXbVmqubktNalKTmtSkpmZNm21bqdm3v7592IYKoUIL0/0AubBes2Jzc1NGo1Hvn1tvvdV4f+umcczn8x1/v/qaxeKaXVNALrvsMplOp9t/7rvvPuPjia3kOUQII9R6FL7712B6EdX8BKDWml3tqNT0R01qUrONmq7nsFZq+milpq3QjyW1efQp2lD6vaZ1Z8VFF10kr371q3tfs9oJ0WXPnj3yxS9+ccffPfTQQ/LYY49td0/s2bNnu8ti4cEHHxQROawrY2FjY2PHtBEgtqHuiq5tXMSYTgKUJsVglDZb1CLFND+mFqIlpmtI+KwTZtttwfsPObLurNi1a5c861nP6v1z7LHHGu3r9NNPl7vuukseeOCB7b+7/vrrZWNjQ0477bTt19x00007Hmd6/fXXy969e41DkdRynwuEdHwS8BI6KVaZHofm8VKTmjXX1JTLeaIGpf/75fw7T01q5lRTg8k4zbXTwnT/aFMJ96hBH1167733yh133CH33nuvPP7443LHHXfIHXfcId/85jdFROTcc8+VZz/72fKa17xGbr/9dvnMZz4jb33rW+UXf/EXZTwei4jIBRdcIBsbG3LhhRfKXXfdJdddd528613vqupJIKW358CNTyeFyUrOthcn7fmby8fhsr/l7Wy2pWbeNW23pWbdNW23LaXm8uupSc0Sz9XUtLO6D5dwwSa0oJMPJmq4xxzN5+EylQsvvFA++tGPHvb3f/7nfy5nnXWWiDwRaLzxjW+Uz372s3LcccfJBRdcIFdeeeWOaRx33nmnvOlNb5K/+qu/khNPPFFe//rXy6/+6q8ahxWz2Uwmk4lMp9PtECS2oUPdFBYErZHm46F8n+xhut/lffTV1ErpW2k3piY1gZK18j6jJjX79tVlaOykMT4zqe26L65ndRoKK1J2Vpjenwd9Gsg111wj11xzTe9rnvGMZ8gf/dEf9b7mOc95jtx0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AIB0mPIBQAthBYDquHZZiBBaAADggpACgLaga1acd9558oxnPEOOPfZYOemkk+Q1r3mN3H///Ttec++998rLX/5yOf7442XXrl3ylre8RQ4dOrTjNXfeeaeceeaZctxxx8nTn/50ecc73iFzzmoABviuZ8GaFgAA9PO5XrIuBYA+QTsrzj77bLn88svlpJNOkq997Wvy1re+VX76p39aPve5z4mIyOOPPy4vfelL5Xu+53vk5ptvlq9//evy2te+VubzuVx99dUiIjKbzeScc86Rs88+W2655Rb527/9W7nwwgvl+OOPl0svvTTk4QOoBJ0WAADoopMCQGijecQWhT/8wz+U888/Xw4ePChHH320/Omf/qm87GUvk/vuu0/27t0rIiLXXnutXHjhhfLggw/KeDyWD33oQ3LZZZfJP/zDP8jGxoaIiLz73e+Wq6++Wr761a/KyODuYzabyWQykel0KuPxOOj3CCBvLoHFMkILAEDLfLsOCSoAmN6fR3t06Te+8Q35+Mc/LmeccYYcffTRIiLy+c9/Xvbt27cdVIiIvOhFL5KDBw/Kbbfdtv2aM888czuoWLzm/vvvl3vuuWdtrYMHD8psNtvxBwBE/FtOmRoCAGiVbzcFQQUAG8HDire97W1y/PHHy9Oe9jS599575Q/+4A+2v3bgwAHZvXv3jtefeOKJcswxx8iBAwc6X7P478VrVl1xxRUymUy2/5xyyima3xKACrCeBQAAZliXAkAK1mHF5uamjEaj3j+33nrr9ut/+Zd/WW6//Xa5/vrr5cgjj5Sf//mf37E45rppHPP5fMffr75msX3XFJDLLrtMptPp9p/77rvP9tsE0AhCCwAA1iOkAJCS9QKbF110kbz61a/ufc0zn/nM7f+/a9cu2bVrl/zgD/6g/PAP/7Cccsop8oUvfEFOP/102bNnj3zxi1/cse1DDz0kjz322Hb3xJ49ew7roHjwwQdFRA7ruFjY2NjYMW0EAIawCCcAAE9g8UwAObAOKxbhg4tFR8TBgwdFROT000+Xd77znfLAAw/ISSedJCIi119/vWxsbMhpp522/ZrLL79cDh06JMccc8z2a/bu3bsjFAEADfO5+yKchBYAgJKxeCaAnAR7Gshf/dVfyV/91V/JT/zET8iJJ54of//3fy+/+qu/Kg888IDcfffdsrGxIY8//rj86I/+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lDPOOEOe8pSnyHd/93evfQ2/NzD1wQ9+UE499VQ59thj5bTTTpO//Mu/TH1ISOymm26Sl7/85bJ3714ZjUby+7//+zu+Pp/PZXNzU/bu3SvHHXecnHXWWXL33XfveM3BgwflzW9+s+zatUuOP/54Oe+88+SrX/1qxO8CsV1xxRXyYz/2Y3LCCSfI937v98r5558vX/7yl3e8ht8drPOhD31IfuRHfkTG47GMx2M5/fTT5U//9E+3v87vjT7CioacffbZ8j/+x/+QL3/5y/LJT35S/u7v/k5++qd/evvrjz/+uLz0pS+VRx55RG6++Wa59tpr5ZOf/KRceuml26+ZzWZyzjnnyN69e+WWW26Rq6++Wq688kq56qqrUnxLiOBv/uZv5Dvf+Y58+MMflrvvvlve9773yW/+5m/K5Zdfvv0afnewzqFDh+RVr3qVvOENb1j7dX5vYOp3f/d35eKLL5a3v/3tcvvtt8u///f/Xl7ykpfIvffem/rQkNAjjzwiz33uc+UDH/jA2q+/5z3vkauuuko+8IEPyC233CJ79uyRc845Rx5++OHt11x88cVy3XXXybXXXis333yzfPOb35SXvexl8vjjj8f6NhDZjTfeKG9605vkC1/4gtxwww3yz//8z3LuuefKI488sv0afnewzsknnyzvfve75dZbb5Vbb71VfvInf1Je8YpXbAcS/N4EMEez/uAP/mA+Go3mhw4dms/n8/mf/MmfzI844oj51772te3X/M7v/M58Y2NjPp1O5/P5fP7BD35wPplM5o8++uj2a6644or53r1759/5znfifgNI5j3vec/81FNP3f5vfnfQ5yMf+ch8Mpkc9vf83sDUv/t3/27++te/fsffPetZz5r/p//0nxIdEXIjIvPrrrtu+7+/853vzPfs2TN/97vfvf13jz766Hwymcx/8zd/cz6fz+f/9E//ND/66KPn11577fZrvva1r82POOKI+ac//elox460HnzwwbmIzG+88cb5fM7vDuyceOKJ8//23/4bvzeB0FnRqG984xvy8Y9/XM444ww5+uijRUTk85//vOzbt0/27t27/boXvehFcvDgQbntttu2X3PmmWfKxsbGjtfcf//9cs8990T9HpDOdDqVpz71qdv/ze8OXPB7AxOHDh2S2267Tc4999wdf3/uuefK5z73uURHhdx95Stf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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "testuniverse.plot(width=(700,700),\n", - " basis='xy',\n", - " colors=colormap,\n", - " origin=(0.,0.,200),\n", - " color_by='material',\n", - " pixels=(1000,1000))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "1fab3df4", - "metadata": {}, - "outputs": [], - "source": [ - "#testuniverse.plot(width=(700,650),\n", - "# basis='xz',\n", - "# colors=colormap,\n", - "# origin=(0.,0.,220),\n", - "# color_by='material',\n", - "# pixels=(1000,1000))" - ] - }, - { - "cell_type": "code", - "execution_count": 21, - "id": "6b0f4320", - "metadata": {}, - "outputs": [], - "source": [ - "geo = openmc.Geometry()\n", - "geo.root_universe = testuniverse\n", - "geo.remove_redundant_surfaces()\n", - "#geo.export_to_xml()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "48d744d2", - "metadata": {}, - "outputs": [], - "source": [] - }, - { - "cell_type": "code", - "execution_count": 22, - "id": "524f65b6", - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "OrderedDict([(541,\n", - " Cell\n", - " \tID =\t541\n", - " \tName =\tcr_lattice\n", - " \tFill =\t32\n", - " \tRegion =\t(1525 -1526 1521 -1522 1523 -1524)\n", - " \tRotation =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (509,\n", - " Cell\n", - " \tID =\t509\n", - " \tName =\tmain_lattice\n", - " \tFill =\t29\n", - " \tRegion =\t(1525 -1526 ((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)) ~(1521 -1522 1523 -1524))\n", - " \tRotation =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (759,\n", - " Cell\n", - " \tID =\t759\n", - " \tName =\tzone_iib\n", - " \tFill =\t33\n", - " \tRegion =\t(~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)) -1551 1525 -1526)\n", - " \tRotation =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (761,\n", - " Cell\n", - " \tID =\t761\n", - " \tName =\tlower_plenum\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(-1525 1553 -1552)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (760,\n", - " Cell\n", - " \tID =\t760\n", - " \tName =\tannulus\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(1551 -1552 1525 -1526)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (762,\n", - " Cell\n", - " \tID =\t762\n", - " \tName =\tradial_reflector\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(1552 -1554 1555 -1556)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (763,\n", - " Cell\n", - " \tID =\t763\n", - " \tName =\tbottom_axial_reflector\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1552 -1553 1555)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (764,\n", - " Cell\n", - " \tID =\t764\n", - " \tName =\ttop_axial_reflector\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1552 1526 -1556)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (765,\n", - " Cell\n", - " \tID =\t765\n", - " \tName =\tradial_vessel_wall\n", - " \tFill =\tMaterial 3\n", - " \tRegion =\t(1554 -1557 -1559 1558)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (766,\n", - " Cell\n", - " \tID =\t766\n", - " \tName =\tbottom_vessel_wall\n", - " \tFill =\tMaterial 3\n", - " \tRegion =\t(-1554 -1555 1558)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (767,\n", - " Cell\n", - " \tID =\t767\n", - " \tName =\ttop_vessel_wall\n", - " \tFill =\tMaterial 3\n", - " \tRegion =\t(-1554 -1559 1556)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (510,\n", - " Cell\n", - " \tID =\t510\n", - " \tName =\tcontrol_rod\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t-1823\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (511,\n", - " Cell\n", - " \tID =\t511\n", - " \tName =\tcr_fuel_inner\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(1823 -1725)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (512,\n", - " Cell\n", - " \tID =\t512\n", - " \tName =\tcr_moderator\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(1725 1730 -1731 1732 -1733 ~((1735 -1739 -1741) | (1736 -1739 1742) | (1737 1740 -1741) | (1738 1740 1742)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (513,\n", - " Cell\n", - " \tID =\t513\n", - " \tName =\tcr_fuel_outer\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(~(1730 -1731 1732 -1733 ~((1735 -1739 -1741) | (1736 -1739 1742) | (1737 1740 -1741) | (1738 1740 1742))) (1726 -1727 1728 -1729) ~(-1743 1744 -1745 1746 1747 -1748 ~((1749 -1755) | (1750 -1756) | (1751 -1757) | (1752 -1758) | (1753 -1759) | (1754 -1760))) ~(-1761 1762 -1763 1764 1765 -1766 ~((1767 -1773) | (1768 -1774) | (1769 -1775) | (1770 -1776) | (1771 -1777) | (1772 -1778))) ~(-1779 1780 -1781 -1782 1783 1784 ~((1785 -1791) | (1786 -1792) | (1787 -1793) | (1788 -1794) | (1789 -1795) | (1790 -1796))) ~(-1797 1798 -1799 -1800 1801 1802 ~((1803 -1809) | (1804 -1810) | (1805 -1811) | (1806 -1812) | (1807 -1813) | (1808 -1814))) 1815 1816 1817 1818)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (514,\n", - " Cell\n", - " \tID =\t514\n", - " \tName =\tcr_moderator_ul\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1743 1744 -1745 1746 1747 -1748 ~((1749 -1755) | (1750 -1756) | (1751 -1757) | (1752 -1758) | (1753 -1759) | (1754 -1760)) -1729 1733)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (515,\n", - " Cell\n", - " \tID =\t515\n", - " \tName =\tcr_moderator_br\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1761 1762 -1763 1764 1765 -1766 ~((1767 -1773) | (1768 -1774) | (1769 -1775) | (1770 -1776) | (1771 -1777) | (1772 -1778)) 1728 -1732)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (516,\n", - " Cell\n", - " \tID =\t516\n", - " \tName =\tcr_moderator_ru\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1779 1780 -1781 -1782 1783 1784 ~((1785 -1791) | (1786 -1792) | (1787 -1793) | (1788 -1794) | (1789 -1795) | (1790 -1796)) 1726 -1730)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (517,\n", - " Cell\n", - " \tID =\t517\n", - " \tName =\tcr_moderator_lb\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1797 1798 -1799 -1800 1801 1802 ~((1803 -1809) | (1804 -1810) | (1805 -1811) | (1806 -1812) | (1807 -1813) | (1808 -1814)) -1727 1731)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (518,\n", - " Cell\n", - " \tID =\t518\n", - " \tName =\tcr_moderator_ul_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1743 1744 -1745 1746 1747 -1748 ~((1749 -1755) | (1750 -1756) | (1751 -1757) | (1752 -1758) | (1753 -1759) | (1754 -1760)) 1736 -1733 -1739 1742)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (519,\n", - " Cell\n", - " \tID =\t519\n", - " \tName =\tcr_moderator_br_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1761 1762 -1763 1764 1765 -1766 ~((1767 -1773) | (1768 -1774) | (1769 -1775) | (1770 -1776) | (1771 -1777) | (1772 -1778)) 1737 1732 1740 -1741)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (520,\n", - " Cell\n", - " \tID =\t520\n", - " \tName =\tcr_moderator_ru_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1779 1780 -1781 -1782 1783 1784 ~((1785 -1791) | (1786 -1792) | (1787 -1793) | (1788 -1794) | (1789 -1795) | (1790 -1796)) 1735 1730 -1739 -1741)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (521,\n", - " Cell\n", - " \tID =\t521\n", - " \tName =\tcr_moderator_lb_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1797 1798 -1799 -1800 1801 1802 ~((1803 -1809) | (1804 -1810) | (1805 -1811) | (1806 -1812) | (1807 -1813) | (1808 -1814)) 1738 -1731 1740 1742)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (522,\n", - " Cell\n", - " \tID =\t522\n", - " \tName =\tcr_moderator_ul_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1815 1728 -1732)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (523,\n", - " Cell\n", - " \tID =\t523\n", - " \tName =\tcr_moderator_br_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1816 -1729 1733)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (524,\n", - " Cell\n", - " \tID =\t524\n", - " \tName =\tcr_moderator_ru_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1817 1726 -1730)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (525,\n", - " Cell\n", - " \tID =\t525\n", - " \tName =\tcr_moderator_lb_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1818 -1727 1731)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (526,\n", - " Cell\n", - " \tID =\t526\n", - " \tName =\tcrc_fuel_inner\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-1725\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (527,\n", - " Cell\n", - " \tID =\t527\n", - " \tName =\tcrc_moderator\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(1725 1730 -1731 1732 -1733 ~((1735 -1739 -1741) | (1736 -1739 1742) | (1737 1740 -1741) | (1738 1740 1742)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (528,\n", - " Cell\n", - " \tID =\t528\n", - " \tName =\tcrc_fuel_outer\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(~(1730 -1731 1732 -1733 ~((1735 -1739 -1741) | (1736 -1739 1742) | (1737 1740 -1741) | (1738 1740 1742))) (1726 -1727 1728 -1729) ~(-1743 1744 -1745 1746 1747 -1748 ~((1749 -1755) | (1750 -1756) | (1751 -1757) | (1752 -1758) | (1753 -1759) | (1754 -1760))) ~(-1761 1762 -1763 1764 1765 -1766 ~((1767 -1773) | (1768 -1774) | (1769 -1775) | (1770 -1776) | (1771 -1777) | (1772 -1778))) ~(-1779 1780 -1781 -1782 1783 1784 ~((1785 -1791) | (1786 -1792) | (1787 -1793) | (1788 -1794) | (1789 -1795) | (1790 -1796))) ~(-1797 1798 -1799 -1800 1801 1802 ~((1803 -1809) | (1804 -1810) | (1805 -1811) | (1806 -1812) | (1807 -1813) | (1808 -1814))) 1815 1816 1817 1818)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (529,\n", - " Cell\n", - " \tID =\t529\n", - " \tName =\tcrc_moderator_ul\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1743 1744 -1745 1746 1747 -1748 ~((1749 -1755) | (1750 -1756) | (1751 -1757) | (1752 -1758) | (1753 -1759) | (1754 -1760)) -1729 1733)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (530,\n", - " Cell\n", - " \tID =\t530\n", - " \tName =\tcrc_moderator_br\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1761 1762 -1763 1764 1765 -1766 ~((1767 -1773) | (1768 -1774) | (1769 -1775) | (1770 -1776) | (1771 -1777) | (1772 -1778)) 1728 -1732)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (531,\n", - " Cell\n", - " \tID =\t531\n", - " \tName =\tcrc_moderator_ru\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1779 1780 -1781 -1782 1783 1784 ~((1785 -1791) | (1786 -1792) | (1787 -1793) | (1788 -1794) | (1789 -1795) | (1790 -1796)) 1726 -1730)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (532,\n", - " Cell\n", - " \tID =\t532\n", - " \tName =\tcrc_moderator_lb\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1797 1798 -1799 -1800 1801 1802 ~((1803 -1809) | (1804 -1810) | (1805 -1811) | (1806 -1812) | (1807 -1813) | (1808 -1814)) -1727 1731)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (533,\n", - " Cell\n", - " \tID =\t533\n", - " \tName =\tcrc_moderator_ul_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1743 1744 -1745 1746 1747 -1748 ~((1749 -1755) | (1750 -1756) | (1751 -1757) | (1752 -1758) | (1753 -1759) | (1754 -1760)) 1736 -1733 -1739 1742)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (534,\n", - " Cell\n", - " \tID =\t534\n", - " \tName =\tcrc_moderator_br_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1761 1762 -1763 1764 1765 -1766 ~((1767 -1773) | (1768 -1774) | (1769 -1775) | (1770 -1776) | (1771 -1777) | (1772 -1778)) 1737 1732 1740 -1741)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (535,\n", - " Cell\n", - " \tID =\t535\n", - " \tName =\tcrc_moderator_ru_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1779 1780 -1781 -1782 1783 1784 ~((1785 -1791) | (1786 -1792) | (1787 -1793) | (1788 -1794) | (1789 -1795) | (1790 -1796)) 1735 1730 -1739 -1741)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (536,\n", - " Cell\n", - " \tID =\t536\n", - " \tName =\tcrc_moderator_lb_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1797 1798 -1799 -1800 1801 1802 ~((1803 -1809) | (1804 -1810) | (1805 -1811) | (1806 -1812) | (1807 -1813) | (1808 -1814)) 1738 -1731 1740 1742)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (537,\n", - " Cell\n", - " \tID =\t537\n", - " \tName =\tcrc_moderator_ul_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1815 1728 -1732)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (538,\n", - " Cell\n", - " \tID =\t538\n", - " \tName =\tcrc_moderator_br_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1816 -1729 1733)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (539,\n", - " Cell\n", - " \tID =\t539\n", - " \tName =\tcrc_moderator_ru_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1817 1726 -1730)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (540,\n", - " Cell\n", - " \tID =\t540\n", - " \tName =\tcrc_moderator_lb_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1818 -1727 1731)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (500,\n", - " Cell\n", - " \tID =\t500\n", - " \tName =\tlattice_void\n", - " \tFill =\tNone\n", - " \tRegion =\t(1685 -1686 1687 -1688)\n", - " \tRotation =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (505,\n", - " Cell\n", - " \tID =\t505\n", - " \tName =\t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1690 1685 -1686 1687 -1688)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (506,\n", - " Cell\n", - " \tID =\t506\n", - " \tName =\t\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(1690 1685 -1686 1687 -1688)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (463,\n", - " Cell\n", - " \tID =\t463\n", - " \tName =\tiia_fuel_inner_main\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(-1631 -1627)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (464,\n", - " Cell\n", - " \tID =\t464\n", - " \tName =\tiia_moderator_main\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(1631 1564 -1565 1566 -1567 ~((1569 -1573 -1575) | (1570 -1573 1576) | (1571 1574 -1575) | (1572 1574 1576)) -1627)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (465,\n", - " Cell\n", - " \tID =\t465\n", - " \tName =\tiia_fuel_outer_main\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(~(1564 -1565 1566 -1567 ~((1569 -1573 -1575) | (1570 -1573 1576) | (1571 1574 -1575) | (1572 1574 1576))) (1685 -1686 1687 -1688) 1577 1578 1579 1580 1581 1582 1583 1584 -1627)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (466,\n", - " Cell\n", - " \tID =\t466\n", - " \tName =\tiia_moderator_main_ul\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1577 -1688 1567 -1627)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (467,\n", - " Cell\n", - " \tID =\t467\n", - " \tName =\tiia_moderator_main_br\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1578 1687 -1566 -1627)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (468,\n", - " Cell\n", - " \tID =\t468\n", - " \tName =\tiia_moderator_main_ru\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1579 1685 -1564 -1627)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (469,\n", - " Cell\n", - " \tID =\t469\n", - " \tName =\tiia_moderator_main_lb\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1580 -1686 1565 -1627)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (470,\n", - " Cell\n", - " \tID =\t470\n", - " \tName =\tiia_moderator_main_ul_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1577 1570 -1567 -1573 1576 -1627)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (471,\n", - " Cell\n", - " \tID =\t471\n", - " \tName =\tiia_moderator_main_br_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1578 1571 1566 1574 -1575 -1627)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (472,\n", - " Cell\n", - " \tID =\t472\n", - " \tName =\tiia_moderator_main_ru_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1579 1569 1564 -1573 -1575 -1627)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (473,\n", - " Cell\n", - " \tID =\t473\n", - " \tName =\tiia_moderator_main_lb_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1580 1572 -1565 1574 1576 -1627)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (474,\n", - " Cell\n", - " \tID =\t474\n", - " \tName =\tiia_moderator_main_ul_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1581 1687 -1566 -1627)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (475,\n", - " Cell\n", - " \tID =\t475\n", - " \tName =\tiia_moderator_main_br_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1582 -1688 1567 -1627)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (476,\n", - " Cell\n", - " \tID =\t476\n", - " \tName =\tiia_moderator_main_ru_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1583 1685 -1564 -1627)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (477,\n", - " Cell\n", - " \tID =\t477\n", - " \tName =\tiia_moderator_main_lb_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1584 -1686 1565 -1627)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (478,\n", - " Cell\n", - " \tID =\t478\n", - " \tName =\tiia_fuel_inner_2\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(-1632 1627 -1628)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (479,\n", - " Cell\n", - " \tID =\t479\n", - " \tName =\tiia_moderator_2\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(1632 1564 -1565 1566 -1567 ~((1569 -1573 -1575) | (1570 -1573 1576) | (1571 1574 -1575) | (1572 1574 1576)) 1627 -1628)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (480,\n", - " Cell\n", - " \tID =\t480\n", - " \tName =\tiia_fuel_outer_2\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(~(1564 -1565 1566 -1567 ~((1569 -1573 -1575) | (1570 -1573 1576) | (1571 1574 -1575) | (1572 1574 1576))) (1685 -1686 1687 -1688) 1577 1578 1579 1580 1581 1582 1583 1584 1627 -1628)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (481,\n", - " Cell\n", - " \tID =\t481\n", - " \tName =\tiia_moderator_2_ul\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1577 -1688 1567 1627 -1628)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (482,\n", - " Cell\n", - " \tID =\t482\n", - " \tName =\tiia_moderator_2_br\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1578 1687 -1566 1627 -1628)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (483,\n", - " Cell\n", - " \tID =\t483\n", - " \tName =\tiia_moderator_2_ru\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1579 1685 -1564 1627 -1628)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (484,\n", - " Cell\n", - " \tID =\t484\n", - " \tName =\tiia_moderator_2_lb\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1580 -1686 1565 1627 -1628)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (485,\n", - " Cell\n", - " \tID =\t485\n", - " \tName =\tiia_moderator_2_ul_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1577 1570 -1567 -1573 1576 1627 -1628)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (486,\n", - " Cell\n", - " \tID =\t486\n", - " \tName =\tiia_moderator_2_br_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1578 1571 1566 1574 -1575 1627 -1628)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (487,\n", - " Cell\n", - " \tID =\t487\n", - " \tName =\tiia_moderator_2_ru_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1579 1569 1564 -1573 -1575 1627 -1628)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (488,\n", - " Cell\n", - " \tID =\t488\n", - " \tName =\tiia_moderator_2_lb_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1580 1572 -1565 1574 1576 1627 -1628)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (489,\n", - " Cell\n", - " \tID =\t489\n", - " \tName =\tiia_moderator_2_ul_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1581 1687 -1566 1627 -1628)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (490,\n", - " Cell\n", - " \tID =\t490\n", - " \tName =\tiia_moderator_2_br_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1582 -1688 1567 1627 -1628)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (491,\n", - " Cell\n", - " \tID =\t491\n", - " \tName =\tiia_moderator_2_ru_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1583 1685 -1564 1627 -1628)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (492,\n", - " Cell\n", - " \tID =\t492\n", - " \tName =\tiia_moderator_2_lb_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1584 -1686 1565 1627 -1628)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (493,\n", - " Cell\n", - " \tID =\t493\n", - " \tName =\tiia_fuel_inner_3\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(-1632 1628 -1629)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (494,\n", - " Cell\n", - " \tID =\t494\n", - " \tName =\tiia_moderator_3\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(1632 -1633 1628 -1629)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (495,\n", - " Cell\n", - " \tID =\t495\n", - " \tName =\tiia_fuel_outer_3\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(1633 1685 -1686 1687 -1688 1628 -1629)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (496,\n", - " Cell\n", - " \tID =\t496\n", - " \tName =\tiia_moderator_4\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1634 1629 -1630)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (497,\n", - " Cell\n", - " \tID =\t497\n", - " \tName =\tiia_fuel_outer_4\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(1634 1685 -1686 1687 -1688 1629 -1630)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (498,\n", - " Cell\n", - " \tID =\t498\n", - " \tName =\tiia_moderator_5\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1585 1630)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (499,\n", - " Cell\n", - " \tID =\t499\n", - " \tName =\tiia_fuel_outer_5\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(1585 1685 -1686 1687 -1688 1630)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (503,\n", - " Cell\n", - " \tID =\t503\n", - " \tName =\t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1689 1685 -1686 1687 -1688)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (504,\n", - " Cell\n", - " \tID =\t504\n", - " \tName =\t\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(1689 1685 -1686 1687 -1688)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (436,\n", - " Cell\n", - " \tID =\t436\n", - " \tName =\tia_fuel_inner_1\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(-1591 -1586)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (437,\n", - " Cell\n", - " \tID =\t437\n", - " \tName =\tia_moderator_1\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(1591 -1590 -1586)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (438,\n", - " Cell\n", - " \tID =\t438\n", - " \tName =\tia_fuel_outer_1\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(1590 1685 -1686 1687 -1688 -1586)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (439,\n", - " Cell\n", - " \tID =\t439\n", - " \tName =\tia_fuel_inner_main\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(-1591 1586 -1587)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (440,\n", - " Cell\n", - " \tID =\t440\n", - " \tName =\tia_moderator_main\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(1591 1564 -1565 1566 -1567 ~((1569 -1573 -1575) | (1570 -1573 1576) | (1571 1574 -1575) | (1572 1574 1576)) 1586 -1587)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (441,\n", - " Cell\n", - " \tID =\t441\n", - " \tName =\tia_fuel_outer_main\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(~(1564 -1565 1566 -1567 ~((1569 -1573 -1575) | (1570 -1573 1576) | (1571 1574 -1575) | (1572 1574 1576))) (1685 -1686 1687 -1688) 1577 1578 1579 1580 1581 1582 1583 1584 1586 -1587)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (442,\n", - " Cell\n", - " \tID =\t442\n", - " \tName =\tia_moderator_main_ul\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1577 -1688 1567 1586 -1587)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (443,\n", - " Cell\n", - " \tID =\t443\n", - " \tName =\tia_moderator_main_br\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1578 1687 -1566 1586 -1587)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (444,\n", - " Cell\n", - " \tID =\t444\n", - " \tName =\tia_moderator_main_ru\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1579 1685 -1564 1586 -1587)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (445,\n", - " Cell\n", - " \tID =\t445\n", - " \tName =\tia_moderator_main_lb\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1580 -1686 1565 1586 -1587)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (446,\n", - " Cell\n", - " \tID =\t446\n", - " \tName =\tia_moderator_main_ul_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1577 1570 -1567 -1573 1576 1586 -1587)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (447,\n", - " Cell\n", - " \tID =\t447\n", - " \tName =\tia_moderator_main_br_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1578 1571 1566 1574 -1575 1586 -1587)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (448,\n", - " Cell\n", - " \tID =\t448\n", - " \tName =\tia_moderator_main_ru_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1579 1569 1564 -1573 -1575 1586 -1587)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (449,\n", - " Cell\n", - " \tID =\t449\n", - " \tName =\tia_moderator_main_lb_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1580 1572 -1565 1574 1576 1586 -1587)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (450,\n", - " Cell\n", - " \tID =\t450\n", - " \tName =\tia_moderator_main_ul_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1581 1687 -1566 1586 -1587)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (451,\n", - " Cell\n", - " \tID =\t451\n", - " \tName =\tia_moderator_main_br_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1582 -1688 1567 1586 -1587)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (452,\n", - " Cell\n", - " \tID =\t452\n", - " \tName =\tia_moderator_main_ru_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1583 1685 -1564 1586 -1587)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (453,\n", - " Cell\n", - " \tID =\t453\n", - " \tName =\tia_moderator_main_lb_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1584 -1686 1565 1586 -1587)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (454,\n", - " Cell\n", - " \tID =\t454\n", - " \tName =\tia_fuel_inner_2\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(-1591 1587 -1588)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (455,\n", - " Cell\n", - " \tID =\t455\n", - " \tName =\tia_moderator_2\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(1591 -1590 1587 -1588)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (456,\n", - " Cell\n", - " \tID =\t456\n", - " \tName =\tia_fuel_outer_2\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(1590 1685 -1686 1687 -1688 1587 -1588)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (457,\n", - " Cell\n", - " \tID =\t457\n", - " \tName =\tia_fuel_inner_3\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(-1591 1588 -1589)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (458,\n", - " Cell\n", - " \tID =\t458\n", - " \tName =\tia_moderator_3\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(1591 -1616 1588 -1589)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (459,\n", - " Cell\n", - " \tID =\t459\n", - " \tName =\tia_fuel_outer_3\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(1616 1685 -1686 1687 -1688 1588 -1589)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (460,\n", - " Cell\n", - " \tID =\t460\n", - " \tName =\tia_hast\n", - " \tFill =\tMaterial 3\n", - " \tRegion =\t(-1591 1589)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (461,\n", - " Cell\n", - " \tID =\t461\n", - " \tName =\tia_moderator_4\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(1591 -1585 1589)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (462,\n", - " Cell\n", - " \tID =\t462\n", - " \tName =\tia_fuel_outer_4\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(1585 1685 -1686 1687 -1688 1589)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (501,\n", - " Cell\n", - " \tID =\t501\n", - " \tName =\t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1692 1685 -1686 1687 -1688)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (502,\n", - " Cell\n", - " \tID =\t502\n", - " \tName =\t\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(1692 1685 -1686 1687 -1688)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (507,\n", - " Cell\n", - " \tID =\t507\n", - " \tName =\t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1691 1685 -1686 1687 -1688)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (508,\n", - " Cell\n", - " \tID =\t508\n", - " \tName =\t\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(1691 1685 -1686 1687 -1688)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (542,\n", - " Cell\n", - " \tID =\t542\n", - " \tName =\tiib_large_element_0.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1825 -1827 1828 1829)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (543,\n", - " Cell\n", - " \tID =\t543\n", - " \tName =\tiib_large_element_fuel_hole_0.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-1829\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (544,\n", - " Cell\n", - " \tID =\t544\n", - " \tName =\tiib_small_element_0.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1832 1833 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (545,\n", - " Cell\n", - " \tID =\t545\n", - " \tName =\tiib_small_element_2.924\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1836 1837 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (546,\n", - " Cell\n", - " \tID =\t546\n", - " \tName =\tiib_small_element_4.558999999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1840 1841 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (547,\n", - " Cell\n", - " \tID =\t547\n", - " \tName =\tiib_small_element_6.193999999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1844 1845 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (548,\n", - " Cell\n", - " \tID =\t548\n", - " \tName =\tiib_small_element_7.828999999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1848 1849 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (549,\n", - " Cell\n", - " \tID =\t549\n", - " \tName =\tiib_small_element_9.463999999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1852 1853 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (550,\n", - " Cell\n", - " \tID =\t550\n", - " \tName =\tiib_small_element_11.099\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1856 1857 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (551,\n", - " Cell\n", - " \tID =\t551\n", - " \tName =\tiib_small_element_12.734000000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1860 1861 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (552,\n", - " Cell\n", - " \tID =\t552\n", - " \tName =\tiib_small_element_14.369000000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1864 1865 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (553,\n", - " Cell\n", - " \tID =\t553\n", - " \tName =\tiib_small_element_16.004000000000005\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1868 1869 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (554,\n", - " Cell\n", - " \tID =\t554\n", - " \tName =\tiib_small_element_17.639000000000006\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1872 1873 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (555,\n", - " Cell\n", - " \tID =\t555\n", - " \tName =\tiib_small_element_19.274000000000008\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1876 1877 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (556,\n", - " Cell\n", - " \tID =\t556\n", - " \tName =\tiib_small_element_20.90900000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1880 1881 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (557,\n", - " Cell\n", - " \tID =\t557\n", - " \tName =\tiib_small_element_22.54400000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1884 1885 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (558,\n", - " Cell\n", - " \tID =\t558\n", - " \tName =\tiib_small_element_24.179000000000013\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1888 1889 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (559,\n", - " Cell\n", - " \tID =\t559\n", - " \tName =\tiib_small_element_25.814000000000014\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1892 1893 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (560,\n", - " Cell\n", - " \tID =\t560\n", - " \tName =\tiib_small_element_27.449000000000016\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1896 1897 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (561,\n", - " Cell\n", - " \tID =\t561\n", - " \tName =\tiib_small_element_29.084000000000017\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1900 1901 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (562,\n", - " Cell\n", - " \tID =\t562\n", - " \tName =\tiib_small_element_30.71900000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1904 1905 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (563,\n", - " Cell\n", - " \tID =\t563\n", - " \tName =\tiib_small_element_32.35400000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1908 1909 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (564,\n", - " Cell\n", - " \tID =\t564\n", - " \tName =\tiib_small_element_33.98900000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1912 1913 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (565,\n", - " Cell\n", - " \tID =\t565\n", - " \tName =\tiib_small_element_35.62400000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1916 1917 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (566,\n", - " Cell\n", - " \tID =\t566\n", - " \tName =\tiib_small_element_37.259000000000015\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1920 1921 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (567,\n", - " Cell\n", - " \tID =\t567\n", - " \tName =\tiib_small_element_38.89400000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1924 1925 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (568,\n", - " Cell\n", - " \tID =\t568\n", - " \tName =\tiib_small_element_40.52900000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1928 1929 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (569,\n", - " Cell\n", - " \tID =\t569\n", - " \tName =\tiib_large_element_45.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1930 -1932 1933 1934)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (570,\n", - " Cell\n", - " \tID =\t570\n", - " \tName =\tiib_large_element_fuel_hole_45.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-1934\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (571,\n", - " Cell\n", - " \tID =\t571\n", - " \tName =\tiib_small_element_45.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1937 1938 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (572,\n", - " Cell\n", - " \tID =\t572\n", - " \tName =\tiib_small_element_47.924\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1941 1942 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (573,\n", - " Cell\n", - " \tID =\t573\n", - " \tName =\tiib_small_element_49.559\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1945 1946 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (574,\n", - " Cell\n", - " \tID =\t574\n", - " \tName =\tiib_small_element_51.193999999999996\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1949 1950 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (575,\n", - " Cell\n", - " \tID =\t575\n", - " \tName =\tiib_small_element_52.82899999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1953 1954 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (576,\n", - " Cell\n", - " \tID =\t576\n", - " \tName =\tiib_small_element_54.46399999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1957 1958 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (577,\n", - " Cell\n", - " \tID =\t577\n", - " \tName =\tiib_small_element_56.09899999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1961 1962 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (578,\n", - " Cell\n", - " \tID =\t578\n", - " \tName =\tiib_small_element_57.73399999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1965 1966 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (579,\n", - " Cell\n", - " \tID =\t579\n", - " \tName =\tiib_small_element_59.368999999999986\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1969 1970 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (580,\n", - " Cell\n", - " \tID =\t580\n", - " \tName =\tiib_small_element_61.003999999999984\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1973 1974 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (581,\n", - " Cell\n", - " \tID =\t581\n", - " \tName =\tiib_small_element_62.63899999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1977 1978 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (582,\n", - " Cell\n", - " \tID =\t582\n", - " \tName =\tiib_small_element_64.27399999999997\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1981 1982 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (583,\n", - " Cell\n", - " \tID =\t583\n", - " \tName =\tiib_small_element_65.90899999999996\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1985 1986 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (584,\n", - " Cell\n", - " \tID =\t584\n", - " \tName =\tiib_small_element_67.54399999999995\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1989 1990 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (585,\n", - " Cell\n", - " \tID =\t585\n", - " \tName =\tiib_small_element_69.17899999999995\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1993 1994 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (586,\n", - " Cell\n", - " \tID =\t586\n", - " \tName =\tiib_small_element_70.81399999999994\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -1997 1998 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (587,\n", - " Cell\n", - " \tID =\t587\n", - " \tName =\tiib_small_element_72.44899999999993\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2001 2002 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (588,\n", - " Cell\n", - " \tID =\t588\n", - " \tName =\tiib_small_element_74.08399999999992\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2005 2006 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (589,\n", - " Cell\n", - " \tID =\t589\n", - " \tName =\tiib_small_element_75.71899999999991\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2009 2010 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (590,\n", - " Cell\n", - " \tID =\t590\n", - " \tName =\tiib_small_element_77.3539999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2013 2014 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (591,\n", - " Cell\n", - " \tID =\t591\n", - " \tName =\tiib_small_element_78.98899999999989\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2017 2018 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (592,\n", - " Cell\n", - " \tID =\t592\n", - " \tName =\tiib_small_element_80.62399999999988\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2021 2022 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (593,\n", - " Cell\n", - " \tID =\t593\n", - " \tName =\tiib_small_element_82.25899999999987\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2025 2026 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (594,\n", - " Cell\n", - " \tID =\t594\n", - " \tName =\tiib_small_element_83.89399999999986\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2029 2030 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (595,\n", - " Cell\n", - " \tID =\t595\n", - " \tName =\tiib_small_element_85.52899999999985\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2033 2034 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (596,\n", - " Cell\n", - " \tID =\t596\n", - " \tName =\tiib_large_element_90.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1825 -2037 2038 2039)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (597,\n", - " Cell\n", - " \tID =\t597\n", - " \tName =\tiib_large_element_fuel_hole_90.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-2039\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (598,\n", - " Cell\n", - " \tID =\t598\n", - " \tName =\tiib_small_element_90.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2042 2043 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (599,\n", - " Cell\n", - " \tID =\t599\n", - " \tName =\tiib_small_element_92.92399999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2046 2047 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (600,\n", - " Cell\n", - " \tID =\t600\n", - " \tName =\tiib_small_element_94.55899999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2050 2051 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (601,\n", - " Cell\n", - " \tID =\t601\n", - " \tName =\tiib_small_element_96.19399999999997\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2054 2055 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (602,\n", - " Cell\n", - " \tID =\t602\n", - " \tName =\tiib_small_element_97.82899999999997\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2058 2059 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (603,\n", - " Cell\n", - " \tID =\t603\n", - " \tName =\tiib_small_element_99.46399999999996\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2062 2063 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (604,\n", - " Cell\n", - " \tID =\t604\n", - " \tName =\tiib_small_element_101.09899999999995\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2066 2067 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (605,\n", - " Cell\n", - " \tID =\t605\n", - " \tName =\tiib_small_element_102.73399999999994\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2070 2071 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (606,\n", - " Cell\n", - " \tID =\t606\n", - " \tName =\tiib_small_element_104.36899999999993\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2074 2075 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (607,\n", - " Cell\n", - " \tID =\t607\n", - " \tName =\tiib_small_element_106.00399999999992\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2078 2079 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (608,\n", - " Cell\n", - " \tID =\t608\n", - " \tName =\tiib_small_element_107.63899999999991\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2082 2083 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (609,\n", - " Cell\n", - " \tID =\t609\n", - " \tName =\tiib_small_element_109.2739999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2086 2087 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (610,\n", - " Cell\n", - " \tID =\t610\n", - " \tName =\tiib_small_element_110.90899999999989\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2090 2091 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (611,\n", - " Cell\n", - " \tID =\t611\n", - " \tName =\tiib_small_element_112.54399999999988\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2094 2095 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (612,\n", - " Cell\n", - " \tID =\t612\n", - " \tName =\tiib_small_element_114.17899999999987\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2098 2099 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (613,\n", - " Cell\n", - " \tID =\t613\n", - " \tName =\tiib_small_element_115.81399999999987\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2102 2103 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (614,\n", - " Cell\n", - " \tID =\t614\n", - " \tName =\tiib_small_element_117.44899999999986\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2106 2107 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (615,\n", - " Cell\n", - " \tID =\t615\n", - " \tName =\tiib_small_element_119.08399999999985\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2110 2111 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (616,\n", - " Cell\n", - " \tID =\t616\n", - " \tName =\tiib_small_element_120.71899999999984\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2114 2115 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (617,\n", - " Cell\n", - " \tID =\t617\n", - " \tName =\tiib_small_element_122.35399999999983\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2118 2119 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (618,\n", - " Cell\n", - " \tID =\t618\n", - " \tName =\tiib_small_element_123.98899999999982\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2122 2123 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (619,\n", - " Cell\n", - " \tID =\t619\n", - " \tName =\tiib_small_element_125.62399999999981\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2126 2127 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (620,\n", - " Cell\n", - " \tID =\t620\n", - " \tName =\tiib_small_element_127.2589999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2130 2131 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (621,\n", - " Cell\n", - " \tID =\t621\n", - " \tName =\tiib_small_element_128.89399999999983\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2134 2135 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (622,\n", - " Cell\n", - " \tID =\t622\n", - " \tName =\tiib_small_element_130.52899999999985\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2138 2139 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (623,\n", - " Cell\n", - " \tID =\t623\n", - " \tName =\tiib_large_element_135.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1930 -2142 2143 2144)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (624,\n", - " Cell\n", - " \tID =\t624\n", - " \tName =\tiib_large_element_fuel_hole_135.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-2144\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (625,\n", - " Cell\n", - " \tID =\t625\n", - " \tName =\tiib_small_element_135.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2147 2148 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (626,\n", - " Cell\n", - " \tID =\t626\n", - " \tName =\tiib_small_element_137.92400000000004\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2151 2152 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (627,\n", - " Cell\n", - " \tID =\t627\n", - " \tName =\tiib_small_element_139.55900000000005\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2155 2156 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (628,\n", - " Cell\n", - " \tID =\t628\n", - " \tName =\tiib_small_element_141.19400000000007\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2159 2160 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (629,\n", - " Cell\n", - " \tID =\t629\n", - " \tName =\tiib_small_element_142.8290000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2163 2164 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (630,\n", - " Cell\n", - " \tID =\t630\n", - " \tName =\tiib_small_element_144.4640000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2167 2168 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (631,\n", - " Cell\n", - " \tID =\t631\n", - " \tName =\tiib_small_element_146.09900000000013\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2171 2172 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (632,\n", - " Cell\n", - " \tID =\t632\n", - " \tName =\tiib_small_element_147.73400000000015\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2175 2176 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (633,\n", - " Cell\n", - " \tID =\t633\n", - " \tName =\tiib_small_element_149.36900000000017\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2179 2180 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (634,\n", - " Cell\n", - " \tID =\t634\n", - " \tName =\tiib_small_element_151.0040000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2183 2184 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (635,\n", - " Cell\n", - " \tID =\t635\n", - " \tName =\tiib_small_element_152.6390000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2187 2188 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (636,\n", - " Cell\n", - " \tID =\t636\n", - " \tName =\tiib_small_element_154.27400000000023\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2191 2192 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (637,\n", - " Cell\n", - " \tID =\t637\n", - " \tName =\tiib_small_element_155.90900000000025\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2195 2196 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (638,\n", - " Cell\n", - " \tID =\t638\n", - " \tName =\tiib_small_element_157.54400000000027\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2199 2200 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (639,\n", - " Cell\n", - " \tID =\t639\n", - " \tName =\tiib_small_element_159.1790000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2203 2204 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (640,\n", - " Cell\n", - " \tID =\t640\n", - " \tName =\tiib_small_element_160.8140000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2207 2208 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (641,\n", - " Cell\n", - " \tID =\t641\n", - " \tName =\tiib_small_element_162.44900000000032\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2211 2212 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (642,\n", - " Cell\n", - " \tID =\t642\n", - " \tName =\tiib_small_element_164.08400000000034\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2215 2216 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (643,\n", - " Cell\n", - " \tID =\t643\n", - " \tName =\tiib_small_element_165.71900000000036\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2219 2220 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (644,\n", - " Cell\n", - " \tID =\t644\n", - " \tName =\tiib_small_element_167.35400000000038\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2223 2224 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (645,\n", - " Cell\n", - " \tID =\t645\n", - " \tName =\tiib_small_element_168.9890000000004\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2227 2228 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (646,\n", - " Cell\n", - " \tID =\t646\n", - " \tName =\tiib_small_element_170.62400000000042\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2231 2232 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (647,\n", - " Cell\n", - " \tID =\t647\n", - " \tName =\tiib_small_element_172.25900000000044\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2235 2236 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (648,\n", - " Cell\n", - " \tID =\t648\n", - " \tName =\tiib_small_element_173.89400000000046\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2239 2240 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (649,\n", - " Cell\n", - " \tID =\t649\n", - " \tName =\tiib_small_element_175.52900000000048\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2243 2244 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (650,\n", - " Cell\n", - " \tID =\t650\n", - " \tName =\tiib_large_element_180.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1825 -2247 2248 2249)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (651,\n", - " Cell\n", - " \tID =\t651\n", - " \tName =\tiib_large_element_fuel_hole_180.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-2249\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (652,\n", - " Cell\n", - " \tID =\t652\n", - " \tName =\tiib_small_element_180.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2252 2253 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (653,\n", - " Cell\n", - " \tID =\t653\n", - " \tName =\tiib_small_element_182.92400000000004\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2256 2257 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (654,\n", - " Cell\n", - " \tID =\t654\n", - " \tName =\tiib_small_element_184.55900000000005\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2260 2261 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (655,\n", - " Cell\n", - " \tID =\t655\n", - " \tName =\tiib_small_element_186.19400000000007\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2264 2265 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (656,\n", - " Cell\n", - " \tID =\t656\n", - " \tName =\tiib_small_element_187.8290000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2268 2269 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (657,\n", - " Cell\n", - " \tID =\t657\n", - " \tName =\tiib_small_element_189.4640000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2272 2273 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (658,\n", - " Cell\n", - " \tID =\t658\n", - " \tName =\tiib_small_element_191.09900000000013\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2276 2277 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (659,\n", - " Cell\n", - " \tID =\t659\n", - " \tName =\tiib_small_element_192.73400000000015\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2280 2281 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (660,\n", - " Cell\n", - " \tID =\t660\n", - " \tName =\tiib_small_element_194.36900000000017\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2284 2285 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (661,\n", - " Cell\n", - " \tID =\t661\n", - " \tName =\tiib_small_element_196.0040000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2288 2289 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (662,\n", - " Cell\n", - " \tID =\t662\n", - " \tName =\tiib_small_element_197.6390000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2292 2293 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (663,\n", - " Cell\n", - " \tID =\t663\n", - " \tName =\tiib_small_element_199.27400000000023\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2296 2297 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (664,\n", - " Cell\n", - " \tID =\t664\n", - " \tName =\tiib_small_element_200.90900000000025\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2300 2301 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (665,\n", - " Cell\n", - " \tID =\t665\n", - " \tName =\tiib_small_element_202.54400000000027\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2304 2305 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (666,\n", - " Cell\n", - " \tID =\t666\n", - " \tName =\tiib_small_element_204.1790000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2308 2309 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (667,\n", - " Cell\n", - " \tID =\t667\n", - " \tName =\tiib_small_element_205.8140000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2312 2313 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (668,\n", - " Cell\n", - " \tID =\t668\n", - " \tName =\tiib_small_element_207.44900000000032\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2316 2317 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (669,\n", - " Cell\n", - " \tID =\t669\n", - " \tName =\tiib_small_element_209.08400000000034\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2320 2321 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (670,\n", - " Cell\n", - " \tID =\t670\n", - " \tName =\tiib_small_element_210.71900000000036\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2324 2325 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (671,\n", - " Cell\n", - " \tID =\t671\n", - " \tName =\tiib_small_element_212.35400000000038\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2328 2329 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (672,\n", - " Cell\n", - " \tID =\t672\n", - " \tName =\tiib_small_element_213.9890000000004\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2332 2333 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (673,\n", - " Cell\n", - " \tID =\t673\n", - " \tName =\tiib_small_element_215.62400000000042\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2336 2337 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (674,\n", - " Cell\n", - " \tID =\t674\n", - " \tName =\tiib_small_element_217.25900000000044\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2340 2341 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (675,\n", - " Cell\n", - " \tID =\t675\n", - " \tName =\tiib_small_element_218.89400000000046\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2344 2345 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (676,\n", - " Cell\n", - " \tID =\t676\n", - " \tName =\tiib_small_element_220.52900000000048\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2348 2349 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (677,\n", - " Cell\n", - " \tID =\t677\n", - " \tName =\tiib_large_element_225.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1930 -2352 2353 2354)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (678,\n", - " Cell\n", - " \tID =\t678\n", - " \tName =\tiib_large_element_fuel_hole_225.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-2354\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (679,\n", - " Cell\n", - " \tID =\t679\n", - " \tName =\tiib_small_element_225.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2357 2358 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (680,\n", - " Cell\n", - " \tID =\t680\n", - " \tName =\tiib_small_element_227.92400000000004\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2361 2362 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (681,\n", - " Cell\n", - " \tID =\t681\n", - " \tName =\tiib_small_element_229.55900000000005\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2365 2366 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (682,\n", - " Cell\n", - " \tID =\t682\n", - " \tName =\tiib_small_element_231.19400000000007\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2369 2370 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (683,\n", - " Cell\n", - " \tID =\t683\n", - " \tName =\tiib_small_element_232.8290000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2373 2374 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (684,\n", - " Cell\n", - " \tID =\t684\n", - " \tName =\tiib_small_element_234.4640000000001\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2377 2378 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (685,\n", - " Cell\n", - " \tID =\t685\n", - " \tName =\tiib_small_element_236.09900000000013\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2381 2382 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (686,\n", - " Cell\n", - " \tID =\t686\n", - " \tName =\tiib_small_element_237.73400000000015\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2385 2386 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (687,\n", - " Cell\n", - " \tID =\t687\n", - " \tName =\tiib_small_element_239.36900000000017\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2389 2390 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (688,\n", - " Cell\n", - " \tID =\t688\n", - " \tName =\tiib_small_element_241.0040000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2393 2394 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (689,\n", - " Cell\n", - " \tID =\t689\n", - " \tName =\tiib_small_element_242.6390000000002\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2397 2398 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (690,\n", - " Cell\n", - " \tID =\t690\n", - " \tName =\tiib_small_element_244.27400000000023\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2401 2402 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (691,\n", - " Cell\n", - " \tID =\t691\n", - " \tName =\tiib_small_element_245.90900000000025\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2405 2406 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (692,\n", - " Cell\n", - " \tID =\t692\n", - " \tName =\tiib_small_element_247.54400000000027\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2409 2410 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (693,\n", - " Cell\n", - " \tID =\t693\n", - " \tName =\tiib_small_element_249.1790000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2413 2414 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (694,\n", - " Cell\n", - " \tID =\t694\n", - " \tName =\tiib_small_element_250.8140000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2417 2418 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (695,\n", - " Cell\n", - " \tID =\t695\n", - " \tName =\tiib_small_element_252.44900000000032\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2421 2422 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (696,\n", - " Cell\n", - " \tID =\t696\n", - " \tName =\tiib_small_element_254.08400000000034\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2425 2426 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (697,\n", - " Cell\n", - " \tID =\t697\n", - " \tName =\tiib_small_element_255.71900000000036\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2429 2430 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (698,\n", - " Cell\n", - " \tID =\t698\n", - " \tName =\tiib_small_element_257.3540000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2433 2434 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (699,\n", - " Cell\n", - " \tID =\t699\n", - " \tName =\tiib_small_element_258.9890000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2437 2438 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (700,\n", - " Cell\n", - " \tID =\t700\n", - " \tName =\tiib_small_element_260.6240000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2441 2442 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (701,\n", - " Cell\n", - " \tID =\t701\n", - " \tName =\tiib_small_element_262.2590000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2445 2446 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (702,\n", - " Cell\n", - " \tID =\t702\n", - " \tName =\tiib_small_element_263.8940000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2449 2450 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (703,\n", - " Cell\n", - " \tID =\t703\n", - " \tName =\tiib_small_element_265.5290000000003\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2453 2454 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (704,\n", - " Cell\n", - " \tID =\t704\n", - " \tName =\tiib_large_element_270.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1825 -2457 2458 2459)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (705,\n", - " Cell\n", - " \tID =\t705\n", - " \tName =\tiib_large_element_fuel_hole_270.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-2459\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (706,\n", - " Cell\n", - " \tID =\t706\n", - " \tName =\tiib_small_element_270.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2462 2463 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (707,\n", - " Cell\n", - " \tID =\t707\n", - " \tName =\tiib_small_element_272.924\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2466 2467 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (708,\n", - " Cell\n", - " \tID =\t708\n", - " \tName =\tiib_small_element_274.55899999999997\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2470 2471 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (709,\n", - " Cell\n", - " \tID =\t709\n", - " \tName =\tiib_small_element_276.19399999999996\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2474 2475 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (710,\n", - " Cell\n", - " \tID =\t710\n", - " \tName =\tiib_small_element_277.82899999999995\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2478 2479 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (711,\n", - " Cell\n", - " \tID =\t711\n", - " \tName =\tiib_small_element_279.46399999999994\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2482 2483 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (712,\n", - " Cell\n", - " \tID =\t712\n", - " \tName =\tiib_small_element_281.09899999999993\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2486 2487 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (713,\n", - " Cell\n", - " \tID =\t713\n", - " \tName =\tiib_small_element_282.7339999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2490 2491 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (714,\n", - " Cell\n", - " \tID =\t714\n", - " \tName =\tiib_small_element_284.3689999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2494 2495 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (715,\n", - " Cell\n", - " \tID =\t715\n", - " \tName =\tiib_small_element_286.0039999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2498 2499 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (716,\n", - " Cell\n", - " \tID =\t716\n", - " \tName =\tiib_small_element_287.6389999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2502 2503 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (717,\n", - " Cell\n", - " \tID =\t717\n", - " \tName =\tiib_small_element_289.2739999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2506 2507 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (718,\n", - " Cell\n", - " \tID =\t718\n", - " \tName =\tiib_small_element_290.9089999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2510 2511 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (719,\n", - " Cell\n", - " \tID =\t719\n", - " \tName =\tiib_small_element_292.54399999999987\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2514 2515 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (720,\n", - " Cell\n", - " \tID =\t720\n", - " \tName =\tiib_small_element_294.17899999999986\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2518 2519 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (721,\n", - " Cell\n", - " \tID =\t721\n", - " \tName =\tiib_small_element_295.81399999999985\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2522 2523 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (722,\n", - " Cell\n", - " \tID =\t722\n", - " \tName =\tiib_small_element_297.44899999999984\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2526 2527 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (723,\n", - " Cell\n", - " \tID =\t723\n", - " \tName =\tiib_small_element_299.08399999999983\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2530 2531 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (724,\n", - " Cell\n", - " \tID =\t724\n", - " \tName =\tiib_small_element_300.7189999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2534 2535 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (725,\n", - " Cell\n", - " \tID =\t725\n", - " \tName =\tiib_small_element_302.3539999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2538 2539 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (726,\n", - " Cell\n", - " \tID =\t726\n", - " \tName =\tiib_small_element_303.9889999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2542 2543 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (727,\n", - " Cell\n", - " \tID =\t727\n", - " \tName =\tiib_small_element_305.6239999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2546 2547 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (728,\n", - " Cell\n", - " \tID =\t728\n", - " \tName =\tiib_small_element_307.2589999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2550 2551 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (729,\n", - " Cell\n", - " \tID =\t729\n", - " \tName =\tiib_small_element_308.8939999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2554 2555 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (730,\n", - " Cell\n", - " \tID =\t730\n", - " \tName =\tiib_small_element_310.52899999999977\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2558 2559 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (731,\n", - " Cell\n", - " \tID =\t731\n", - " \tName =\tiib_large_element_315.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1930 -2562 2563 2564)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (732,\n", - " Cell\n", - " \tID =\t732\n", - " \tName =\tiib_large_element_fuel_hole_315.0\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t-2564\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (733,\n", - " Cell\n", - " \tID =\t733\n", - " \tName =\tiib_small_element_315.0\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2567 2568 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (734,\n", - " Cell\n", - " \tID =\t734\n", - " \tName =\tiib_small_element_317.924\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2571 2572 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (735,\n", - " Cell\n", - " \tID =\t735\n", - " \tName =\tiib_small_element_319.55899999999997\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2575 2576 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (736,\n", - " Cell\n", - " \tID =\t736\n", - " \tName =\tiib_small_element_321.19399999999996\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2579 2580 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (737,\n", - " Cell\n", - " \tID =\t737\n", - " \tName =\tiib_small_element_322.82899999999995\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2583 2584 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (738,\n", - " Cell\n", - " \tID =\t738\n", - " \tName =\tiib_small_element_324.46399999999994\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2587 2588 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (739,\n", - " Cell\n", - " \tID =\t739\n", - " \tName =\tiib_small_element_326.09899999999993\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2591 2592 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (740,\n", - " Cell\n", - " \tID =\t740\n", - " \tName =\tiib_small_element_327.7339999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2595 2596 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (741,\n", - " Cell\n", - " \tID =\t741\n", - " \tName =\tiib_small_element_329.3689999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2599 2600 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (742,\n", - " Cell\n", - " \tID =\t742\n", - " \tName =\tiib_small_element_331.0039999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2603 2604 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (743,\n", - " Cell\n", - " \tID =\t743\n", - " \tName =\tiib_small_element_332.6389999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2607 2608 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (744,\n", - " Cell\n", - " \tID =\t744\n", - " \tName =\tiib_small_element_334.2739999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2611 2612 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (745,\n", - " Cell\n", - " \tID =\t745\n", - " \tName =\tiib_small_element_335.9089999999999\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2615 2616 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (746,\n", - " Cell\n", - " \tID =\t746\n", - " \tName =\tiib_small_element_337.54399999999987\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2619 2620 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (747,\n", - " Cell\n", - " \tID =\t747\n", - " \tName =\tiib_small_element_339.17899999999986\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2623 2624 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (748,\n", - " Cell\n", - " \tID =\t748\n", - " \tName =\tiib_small_element_340.81399999999985\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2627 2628 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (749,\n", - " Cell\n", - " \tID =\t749\n", - " \tName =\tiib_small_element_342.44899999999984\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2631 2632 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (750,\n", - " Cell\n", - " \tID =\t750\n", - " \tName =\tiib_small_element_344.08399999999983\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2635 2636 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (751,\n", - " Cell\n", - " \tID =\t751\n", - " \tName =\tiib_small_element_345.7189999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2639 2640 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (752,\n", - " Cell\n", - " \tID =\t752\n", - " \tName =\tiib_small_element_347.3539999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2643 2644 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (753,\n", - " Cell\n", - " \tID =\t753\n", - " \tName =\tiib_small_element_348.9889999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2647 2648 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (754,\n", - " Cell\n", - " \tID =\t754\n", - " \tName =\tiib_small_element_350.6239999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2651 2652 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (755,\n", - " Cell\n", - " \tID =\t755\n", - " \tName =\tiib_small_element_352.2589999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2655 2656 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (756,\n", - " Cell\n", - " \tID =\t756\n", - " \tName =\tiib_small_element_353.8939999999998\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2659 2660 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (757,\n", - " Cell\n", - " \tID =\t757\n", - " \tName =\tiib_small_element_355.52899999999977\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-1551 1830 -2663 2664 ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)))\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (758,\n", - " Cell\n", - " \tID =\t758\n", - " \tName =\tiib_fuel\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(~((-1551 1825 -1827 1828) | (-1551 1830 -1832 1833) | (-1551 1830 -1836 1837) | (-1551 1830 -1840 1841) | (-1551 1830 -1844 1845) | (-1551 1830 -1848 1849) | (-1551 1830 -1852 1853) | (-1551 1830 -1856 1857) | (-1551 1830 -1860 1861) | (-1551 1830 -1864 1865) | (-1551 1830 -1868 1869) | (-1551 1830 -1872 1873) | (-1551 1830 -1876 1877) | (-1551 1830 -1880 1881) | (-1551 1830 -1884 1885) | (-1551 1830 -1888 1889) | (-1551 1830 -1892 1893) | (-1551 1830 -1896 1897) | (-1551 1830 -1900 1901) | (-1551 1830 -1904 1905) | (-1551 1830 -1908 1909) | (-1551 1830 -1912 1913) | (-1551 1830 -1916 1917) | (-1551 1830 -1920 1921) | (-1551 1830 -1924 1925) | (-1551 1830 -1928 1929) | (-1551 1930 -1932 1933) | (-1551 1830 -1937 1938) | (-1551 1830 -1941 1942) | (-1551 1830 -1945 1946) | (-1551 1830 -1949 1950) | (-1551 1830 -1953 1954) | (-1551 1830 -1957 1958) | (-1551 1830 -1961 1962) | (-1551 1830 -1965 1966) | (-1551 1830 -1969 1970) | (-1551 1830 -1973 1974) | (-1551 1830 -1977 1978) | (-1551 1830 -1981 1982) | (-1551 1830 -1985 1986) | (-1551 1830 -1989 1990) | (-1551 1830 -1993 1994) | (-1551 1830 -1997 1998) | (-1551 1830 -2001 2002) | (-1551 1830 -2005 2006) | (-1551 1830 -2009 2010) | (-1551 1830 -2013 2014) | (-1551 1830 -2017 2018) | (-1551 1830 -2021 2022) | (-1551 1830 -2025 2026) | (-1551 1830 -2029 2030) | (-1551 1830 -2033 2034) | (-1551 1825 -2037 2038) | (-1551 1830 -2042 2043) | (-1551 1830 -2046 2047) | (-1551 1830 -2050 2051) | (-1551 1830 -2054 2055) | (-1551 1830 -2058 2059) | (-1551 1830 -2062 2063) | (-1551 1830 -2066 2067) | (-1551 1830 -2070 2071) | (-1551 1830 -2074 2075) | (-1551 1830 -2078 2079) | (-1551 1830 -2082 2083) | (-1551 1830 -2086 2087) | (-1551 1830 -2090 2091) | (-1551 1830 -2094 2095) | (-1551 1830 -2098 2099) | (-1551 1830 -2102 2103) | (-1551 1830 -2106 2107) | (-1551 1830 -2110 2111) | (-1551 1830 -2114 2115) | (-1551 1830 -2118 2119) | (-1551 1830 -2122 2123) | (-1551 1830 -2126 2127) | (-1551 1830 -2130 2131) | (-1551 1830 -2134 2135) | (-1551 1830 -2138 2139) | (-1551 1930 -2142 2143) | (-1551 1830 -2147 2148) | (-1551 1830 -2151 2152) | (-1551 1830 -2155 2156) | (-1551 1830 -2159 2160) | (-1551 1830 -2163 2164) | (-1551 1830 -2167 2168) | (-1551 1830 -2171 2172) | (-1551 1830 -2175 2176) | (-1551 1830 -2179 2180) | (-1551 1830 -2183 2184) | (-1551 1830 -2187 2188) | (-1551 1830 -2191 2192) | (-1551 1830 -2195 2196) | (-1551 1830 -2199 2200) | (-1551 1830 -2203 2204) | (-1551 1830 -2207 2208) | (-1551 1830 -2211 2212) | (-1551 1830 -2215 2216) | (-1551 1830 -2219 2220) | (-1551 1830 -2223 2224) | (-1551 1830 -2227 2228) | (-1551 1830 -2231 2232) | (-1551 1830 -2235 2236) | (-1551 1830 -2239 2240) | (-1551 1830 -2243 2244) | (-1551 1825 -2247 2248) | (-1551 1830 -2252 2253) | (-1551 1830 -2256 2257) | (-1551 1830 -2260 2261) | (-1551 1830 -2264 2265) | (-1551 1830 -2268 2269) | (-1551 1830 -2272 2273) | (-1551 1830 -2276 2277) | (-1551 1830 -2280 2281) | (-1551 1830 -2284 2285) | (-1551 1830 -2288 2289) | (-1551 1830 -2292 2293) | (-1551 1830 -2296 2297) | (-1551 1830 -2300 2301) | (-1551 1830 -2304 2305) | (-1551 1830 -2308 2309) | (-1551 1830 -2312 2313) | (-1551 1830 -2316 2317) | (-1551 1830 -2320 2321) | (-1551 1830 -2324 2325) | (-1551 1830 -2328 2329) | (-1551 1830 -2332 2333) | (-1551 1830 -2336 2337) | (-1551 1830 -2340 2341) | (-1551 1830 -2344 2345) | (-1551 1830 -2348 2349) | (-1551 1930 -2352 2353) | (-1551 1830 -2357 2358) | (-1551 1830 -2361 2362) | (-1551 1830 -2365 2366) | (-1551 1830 -2369 2370) | (-1551 1830 -2373 2374) | (-1551 1830 -2377 2378) | (-1551 1830 -2381 2382) | (-1551 1830 -2385 2386) | (-1551 1830 -2389 2390) | (-1551 1830 -2393 2394) | (-1551 1830 -2397 2398) | (-1551 1830 -2401 2402) | (-1551 1830 -2405 2406) | (-1551 1830 -2409 2410) | (-1551 1830 -2413 2414) | (-1551 1830 -2417 2418) | (-1551 1830 -2421 2422) | (-1551 1830 -2425 2426) | (-1551 1830 -2429 2430) | (-1551 1830 -2433 2434) | (-1551 1830 -2437 2438) | (-1551 1830 -2441 2442) | (-1551 1830 -2445 2446) | (-1551 1830 -2449 2450) | (-1551 1830 -2453 2454) | (-1551 1825 -2457 2458) | (-1551 1830 -2462 2463) | (-1551 1830 -2466 2467) | (-1551 1830 -2470 2471) | (-1551 1830 -2474 2475) | (-1551 1830 -2478 2479) | (-1551 1830 -2482 2483) | (-1551 1830 -2486 2487) | (-1551 1830 -2490 2491) | (-1551 1830 -2494 2495) | (-1551 1830 -2498 2499) | (-1551 1830 -2502 2503) | (-1551 1830 -2506 2507) | (-1551 1830 -2510 2511) | (-1551 1830 -2514 2515) | (-1551 1830 -2518 2519) | (-1551 1830 -2522 2523) | (-1551 1830 -2526 2527) | (-1551 1830 -2530 2531) | (-1551 1830 -2534 2535) | (-1551 1830 -2538 2539) | (-1551 1830 -2542 2543) | (-1551 1830 -2546 2547) | (-1551 1830 -2550 2551) | (-1551 1830 -2554 2555) | (-1551 1830 -2558 2559) | (-1551 1930 -2562 2563) | (-1551 1830 -2567 2568) | (-1551 1830 -2571 2572) | (-1551 1830 -2575 2576) | (-1551 1830 -2579 2580) | (-1551 1830 -2583 2584) | (-1551 1830 -2587 2588) | (-1551 1830 -2591 2592) | (-1551 1830 -2595 2596) | (-1551 1830 -2599 2600) | (-1551 1830 -2603 2604) | (-1551 1830 -2607 2608) | (-1551 1830 -2611 2612) | (-1551 1830 -2615 2616) | (-1551 1830 -2619 2620) | (-1551 1830 -2623 2624) | (-1551 1830 -2627 2628) | (-1551 1830 -2631 2632) | (-1551 1830 -2635 2636) | (-1551 1830 -2639 2640) | (-1551 1830 -2643 2644) | (-1551 1830 -2647 2648) | (-1551 1830 -2651 2652) | (-1551 1830 -2655 2656) | (-1551 1830 -2659 2660) | (-1551 1830 -2663 2664)) ~((-1527 1528 -1529 1530 1531 1532 -1533 -1534) | (-1535 1536 -1537 1538 1539 1540 -1541 -1542) | (-1543 1544 -1545 1546 1547 1548 -1549 -1550)) -1551 1525 -1526)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone)])" - ] - }, - "execution_count": 22, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], + "source": [ + "iib.fill.plot(width=(700,700),\n", + " basis='xy',\n", + " colors=colormap,\n", + " origin=(0.,0.,200),\n", + " color_by='material',\n", + " pixels=(1000,1000))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "2a283441", + "metadata": { + "scrolled": false + }, + "outputs": [], + "source": [ + "testuniverse.plot(width=(700,700),\n", + " basis='xy',\n", + " colors=colormap,\n", + " origin=(0.,0.,200),\n", + " color_by='material',\n", + " pixels=(1000,1000))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "1fab3df4", + "metadata": {}, + "outputs": [], + "source": [ + "#testuniverse.plot(width=(700,650),\n", + "# basis='xz',\n", + "# colors=colormap,\n", + "# origin=(0.,0.,220),\n", + "# color_by='material',\n", + "# pixels=(1000,1000))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "6b0f4320", + "metadata": {}, + "outputs": [], + "source": [ + "geo = openmc.Geometry()\n", + "geo.root_universe = testuniverse\n", + "geo.remove_redundant_surfaces()\n", + "#geo.export_to_xml()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "48d744d2", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "524f65b6", + "metadata": {}, + "outputs": [], "source": [ "geo.get_all_cells()" ] From b19866447be2e11d42063d3274b4d5a298da3b72 Mon Sep 17 00:00:00 2001 From: yardasol Date: Wed, 19 Oct 2022 17:37:41 -0500 Subject: [PATCH 14/62] optimize model (notebook only for now) --- examples/msbr/model-plotting.ipynb | 1556 ++++++++++++++-------------- 1 file changed, 780 insertions(+), 776 deletions(-) diff --git a/examples/msbr/model-plotting.ipynb b/examples/msbr/model-plotting.ipynb index 4a3b7439a..ccb460ed2 100644 --- a/examples/msbr/model-plotting.ipynb +++ b/examples/msbr/model-plotting.ipynb @@ -13,7 +13,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": null, "id": "56642afc", "metadata": {}, "outputs": [], @@ -49,7 +49,7 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": null, "id": "5bf1ab77", "metadata": {}, "outputs": [], @@ -61,7 +61,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": null, "id": "3e341197", "metadata": {}, "outputs": [], @@ -152,13 +152,13 @@ " gr_corners = (gr_ul, gr_br, gr_lb, gr_ru, gr_ul_fill, gr_br_fill, gr_lb_fill, gr_ru_fill)\n", " gr_t = (gr_ul_t, gr_br_t, gr_ru_t, gr_lb_t)\n", " \n", - " iec_1 = +gr_cyl_miny & -gr_cyl_maxy & +gr_cyl_maxx & -eb_maxx & +lb_t & +ru & +gr_cyl_ru\n", + " iec_1 = +gr_cyl_miny & -gr_cyl_maxy & +gr_maxx & -eb_maxx & +lb_t & +ru & +gr_cyl_ru\n", " iec_2 = (+gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy) & +ru & +br_t & -eb_maxx & -eb_maxy\n", - " iec_3 = +gr_cyl_minx & -gr_cyl_maxx & +gr_cyl_maxy & -eb_maxy & +br_t & +ul & +gr_cyl_ul\n", + " iec_3 = +gr_cyl_minx & -gr_cyl_maxx & +gr_maxy & -eb_maxy & +br_t & +ul & +gr_cyl_ul\n", " iec_4 = (+gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy) & +ul & +ru_t & +eb_minx & -eb_maxy\n", - " iec_5 = +gr_cyl_miny & -gr_cyl_maxy & -gr_cyl_minx & +eb_minx & +ru_t & +lb & +gr_cyl_lb\n", + " iec_5 = +gr_cyl_miny & -gr_cyl_maxy & -gr_minx & +eb_minx & +ru_t & +lb & +gr_cyl_lb\n", " iec_6 = (+gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny) & +lb & +ul_t & +eb_minx & +eb_miny\n", - " iec_7 = +gr_cyl_minx & -gr_cyl_maxx & -gr_cyl_miny & +eb_miny & +ul_t & +br & +gr_cyl_br\n", + " iec_7 = +gr_cyl_minx & -gr_cyl_maxx & -gr_miny & +eb_miny & +ul_t & +br & +gr_cyl_br\n", " iec_8 = (+gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny) & +br & +lb_t & -eb_maxx & +eb_miny\n", " \n", " inter_elem_channel = (iec_1, iec_2, iec_3, iec_4, iec_5, iec_6, iec_7, iec_8)\n", @@ -176,7 +176,7 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": null, "id": "71b4a322", "metadata": {}, "outputs": [], @@ -480,7 +480,182 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": null, + "id": "1dc06889", + "metadata": {}, + "outputs": [], + "source": [ + "elem_bound = openmc.rectangular_prism(5.08*2, 5.08*2) # Pin outer boundary\n", + "eb_minx, eb_maxx, eb_miny, eb_maxy = list(elem_bound.get_surfaces().values())\n", + "\n", + "gr_sq_neg = openmc.rectangular_prism(4.953*2, 4.953*2, corner_radius=0.46) # Graphite square\n", + "(gr_minx, gr_maxx, gr_miny, gr_maxy, \n", + "gr_cyl_lb, gr_cyl_minx, gr_cyl_miny, \n", + "gr_cyl_ul, gr_cyl_maxy, gr_cyl_br, \n", + "gr_cyl_maxx, gr_cyl_ru) = list(gr_sq_neg.get_surfaces().values())\n", + "\n", + "# slabs that line up with rounded edges\n", + "slab_u = -gr_maxy & +gr_cyl_maxy & -gr_cyl_maxx & +gr_cyl_minx\n", + "slab_l = +gr_minx & -gr_cyl_minx & -gr_cyl_maxy & +gr_cyl_miny\n", + "slab_b = +gr_miny & -gr_cyl_miny & -gr_cyl_maxx & +gr_cyl_minx\n", + "slab_r = -gr_maxx & +gr_cyl_maxx & -gr_cyl_maxy & +gr_cyl_miny\n", + "slabs = (slab_u, slab_l, slab_b, slab_r)\n", + "\n", + "# the rounded edges themselves\n", + "quarter_ul = -gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy\n", + "quarter_br = -gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny\n", + "quarter_lb = -gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny\n", + "quarter_ru = -gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy\n", + "quarters = (quarter_ul, quarter_br, quarter_lb, quarter_ru)\n", + "\n", + "# remaining square\n", + "gr_sq = +gr_cyl_minx & -gr_cyl_maxx & +gr_cyl_miny & -gr_cyl_maxy\n", + "\n", + "# params for main pin section for both I-A and II-A\n", + "r_d = 0.66802\n", + "l1 = 4.28498\n", + "l2 = 4.53898\n", + "l3 = 5.62102\n", + "ul = openmc.ZCylinder(-l1, l2, r_d, name='corner_ul')\n", + "br = openmc.ZCylinder(l1, -l2, r_d, name='corner_br')\n", + "lb = openmc.ZCylinder(-l2, -l1, r_d, name='corner_lb')\n", + "ru = openmc.ZCylinder(l2, l1, r_d, name='corner_ru')\n", + "ul_t = openmc.ZCylinder(-l1, -l3, r_d, name='corner_ul_tip')\n", + "br_t = openmc.ZCylinder(l1, l3, r_d, name='corner_br_tip')\n", + "ru_t = openmc.ZCylinder(-l3, l1, r_d, name='corner_ru_tip')\n", + "lb_t = openmc.ZCylinder(l3, -l1, r_d, name='corner_lb_tip')\n", + "\n", + "gr_ul = -ul & -eb_maxy & +gr_maxy# | \n", + "gr_ul_fill = -ul & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy\n", + "gr_br = -br & +eb_miny & -gr_miny# | \n", + "gr_br_fill = -br & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny \n", + "gr_lb = -lb & +eb_minx & -gr_minx# | \n", + "gr_lb_fill = -lb & +gr_cyl_lb & +gr_minx & -gr_cyl_minx & -gr_cyl_miny \n", + "gr_ru = -ru & -eb_maxx & +gr_maxx# | \n", + "gr_ru_fill = -ru & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxx & +gr_cyl_maxy\n", + "\n", + "gr_ul_t = -ul_t & +eb_miny & -gr_miny\n", + "gr_br_t = -br_t & -eb_maxy & +gr_maxy\n", + "gr_ru_t = -ru_t & +eb_minx & -gr_minx\n", + "gr_lb_t = -lb_t & -eb_maxx & +gr_maxx \n", + "\n", + "gr_corners = (gr_ul, gr_br, gr_lb, gr_ru, gr_ul_fill, gr_br_fill, gr_lb_fill, gr_ru_fill)\n", + "gr_t = (gr_ul_t, gr_br_t, gr_ru_t, gr_lb_t)\n", + "\n", + "iec_1 = +gr_cyl_miny & -gr_cyl_maxy & +gr_maxx & -eb_maxx & +lb_t & +ru & +gr_cyl_ru\n", + "iec_2 = (+gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy) & +ru & +br_t & -eb_maxx & -eb_maxy\n", + "iec_3 = +gr_cyl_minx & -gr_cyl_maxx & +gr_maxy & -eb_maxy & +br_t & +ul & +gr_cyl_ul\n", + "iec_4 = (+gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy) & +ul & +ru_t & +eb_minx & -eb_maxy\n", + "iec_5 = +gr_cyl_miny & -gr_cyl_maxy & -gr_minx & +eb_minx & +ru_t & +lb & +gr_cyl_lb\n", + "iec_6 = (+gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny) & +lb & +ul_t & +eb_minx & +eb_miny\n", + "iec_7 = +gr_cyl_minx & -gr_cyl_maxx & -gr_miny & +eb_miny & +ul_t & +br & +gr_cyl_br\n", + "iec_8 = (+gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny) & +br & +lb_t & -eb_maxx & +eb_miny\n", + "\n", + "inter_elem_channel = (iec_1, iec_2, iec_3, iec_4, iec_5, iec_6, iec_7, iec_8)\n", + "#inter_elem_channel = (~gr_sq_neg & elem_bound &\n", + "# +ul & +br & +lb & +ru &\n", + "# +ul_t & +br_t & +ru_t & +lb_t)\n", + "\n", + "\n", + "gr_round_4 = openmc.ZCylinder(r=2.2225, name='gr_round_4')\n", + "\n", + "\"\"\"Zone IA element. Specs found in Robertson, 1971 Fig 3.4 (p. 17)\"\"\"\n", + "elem_levels = [22.86, 419.10, 438.15, 445.135]\n", + "level_bounds = []\n", + "for level in elem_levels:\n", + " level_bounds.append(openmc.ZPlane(z0=level))\n", + "s1 = openmc.ZCylinder(r=4.953, name='ia_gr_round_1')\n", + "s2 = openmc.ZCylinder(r=1.71069, name='ia_fuel_hole')\n", + "\n", + "h = 12.66\n", + "theta = np.arctan(4.953 / h)\n", + "r2 = (1 / np.cos(theta))**2 - 1\n", + "s3 = openmc.ZCone(z0=h + elem_levels[2], r2=r2, name='cone_i')\n", + "\n", + "c1 = openmc.Cell(fill=fuel, region=(-s2), name='ia_fuel_inner_1')\n", + "c2 = openmc.Cell(fill=moder, region=(+s2 & -s1), name='ia_moderator_1')\n", + "c3 = openmc.Cell(fill=fuel, region=(+s1 & elem_bound), name='ia_fuel_outer_1')\n", + "ia1 = (c1, c2, c3)\n", + "\n", + "# I-A main (lower 2)\n", + "s2 = s2.clone()\n", + "c4 = c1.clone(clone_materials=False)\n", + "c4.name = 'ia_fuel_inner_main'\n", + "c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq), name='ia_moderator_main')\n", + "#c6 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='ia_fuel_outer_main')\n", + "\n", + "c5_slab_u = openmc.Cell(fill=moder, region=slabs[0], name='ia_moderator_main_slab_u')\n", + "c5_slab_l = openmc.Cell(fill=moder, region=slabs[1], name='ia_moderator_main_slab_l')\n", + "c5_slab_b = openmc.Cell(fill=moder, region=slabs[2], name='ia_moderator_main_slab_b')\n", + "c5_slab_r = openmc.Cell(fill=moder, region=slabs[3], name='ia_moderator_main_slab_r')\n", + "\n", + "c5_quarter_u = openmc.Cell(fill=moder, region=quarters[0], name='ia_moderator_main_quarter_u')\n", + "c5_quarter_l = openmc.Cell(fill=moder, region=quarters[1], name='ia_moderator_main_quarter_l')\n", + "c5_quarter_b = openmc.Cell(fill=moder, region=quarters[2], name='ia_moderator_main_quarter_b')\n", + "c5_quarter_r = openmc.Cell(fill=moder, region=quarters[3], name='ia_moderator_main_quarter_r')\n", + "\n", + "c5_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='ia_moderator_main_ul')\n", + "c5_br = openmc.Cell(fill=moder, region=gr_corners[1], name='ia_moderator_main_br')\n", + "c5_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='ia_moderator_main_ru')\n", + "c5_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='ia_moderator_main_lb')\n", + "\n", + "c5_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='ia_moderator_main_ul_fill')\n", + "c5_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='ia_moderator_main_br_fill')\n", + "c5_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='ia_moderator_main_ru_fill')\n", + "c5_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='ia_moderator_main_lb_fill')\n", + "\n", + "c5_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='ia_moderator_main_ul_t')\n", + "c5_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='ia_moderator_main_br_t')\n", + "c5_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='ia_moderator_main_ru_t')\n", + "c5_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='ia_moderator_main_lb_t')\n", + "\n", + "c61 = openmc.Cell(fill=fuel, region=(inter_elem_channel[0]), name='ia_fuel_outer_main_1')\n", + "c62 = openmc.Cell(fill=fuel, region=(inter_elem_channel[1]), name='ia_fuel_outer_main_2')\n", + "c63 = openmc.Cell(fill=fuel, region=(inter_elem_channel[2]), name='ia_fuel_outer_main_3')\n", + "c64 = openmc.Cell(fill=fuel, region=(inter_elem_channel[3]), name='ia_fuel_outer_main_4')\n", + "c65 = openmc.Cell(fill=fuel, region=(inter_elem_channel[4]), name='ia_fuel_outer_main_5')\n", + "c66 = openmc.Cell(fill=fuel, region=(inter_elem_channel[5]), name='ia_fuel_outer_main_6')\n", + "c67 = openmc.Cell(fill=fuel, region=(inter_elem_channel[6]), name='ia_fuel_outer_main_7')\n", + "c68 = openmc.Cell(fill=fuel, region=(inter_elem_channel[7]), name='ia_fuel_outer_main_8')\n", + "\n", + "iam = (#c4, c5,# c6, \n", + " #c5_slab_u, c5_slab_l, c5_slab_b, c5_slab_r,\n", + " #c5_quarter_u, c5_quarter_l, c5_quarter_b, c5_quarter_r,\n", + " c5_ul, c5_br, c5_ru, c5_lb, \n", + " c5_ulf, c5_brf, c5_ruf, c5_lbf, \n", + " #c5_ul_t, c5_br_t, c5_ru_t, c5_lb_t,\n", + " c61, c62, c63, c64, c65, c66, c67, c68)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "62c7dfbb", + "metadata": {}, + "outputs": [], + "source": [ + "u = openmc.Universe()\n", + "u.add_cells(iam)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "9681e5c6", + "metadata": {}, + "outputs": [], + "source": [ + "u.plot(width=(20,20),\n", + " basis='xy',\n", + " colors=colormap,\n", + " origin=(0.,0., 446),\n", + " #color_by='material',\n", + " pixels=(2000,2000))" + ] + }, + { + "cell_type": "code", + "execution_count": null, "id": "07136110", "metadata": {}, "outputs": [], @@ -495,31 +670,10 @@ }, { "cell_type": "code", - "execution_count": 19, + "execution_count": null, "id": "752c5160", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 19, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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og4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhog4AACBhRxR1S5cujby8vJg3b17jsssvvzzy8vKa3MaNG9e4/p/+6Z/iuuuui1GjRsUxxxwTw4cPj+uvvz727dvX5mMtXry42XFLS0uP5PQBAACSV9DRHTds2BDLli2L0047rdm6c845Jx588MHG+/369Wv8865du2LXrl3x05/+NE499dTYtm1bXHvttbFr1654/PHH23zM0aNHx7PPPtt4Pz8/v6OnDwAAkBM6FHX79++PmTNnxvLly+PWW29ttr6oqKjVUbTKysp44oknGu+feOKJcdttt8Vf/uVfxqeffhoFBa2fUkFBgdE5AACAL+nQ9MvZs2fHtGnTYtKkSS2uX7duXZxwwglx0kknxdVXXx21tbVtHm/fvn0xcODANoMuImLLli0xbNiwGDlyZFxyySXx1ltvtbl9Q0ND1NfXN7kBAADkknZH3apVq2Ljxo2xdOnSFtdPnTo1Hn300fjHf/zH+NnPfhYbNmyIs88+OxoaGlrcfu/evfG3f/u3cc0117T5uGeeeWY88sgjsWbNmli+fHns2bMnJkyYEHv37m11n6VLl0ZJSUnjrby8/PCfKAAAQALaNf1yx44dMXfu3HjmmWeif//+LW4zY8aMxj9XVlbG2LFjo6KiIp566qm44IILmmxbX18f06ZNi1NPPTUWLVrU5mNPnTq18c9jxoyJ8ePHx4knnhgPP/xwzJ8/v8V9Fi5c2GRdfX29sAMAAHJKu6KupqYmamtro6qqqnHZwYMH4/nnn4/77rsvGhoamn14SVlZWVRUVMSWLVuaLP/ggw/inHPOiWOPPTZWr14dhYWF7Trx4uLiGDNmTLPjfllRUVEUFRW167gAAAApaVfUVVdXx+bNm5ssu+KKK+Lkk0+Om266qcVPo9y7d2/s2LEjysrKGpfV19fHlClToqioKH7961+3OurXloaGhnjzzTdj4sSJ7d4XAAAgV7Qr6gYMGBCVlZVNlhUXF8fgwYOjsrIy9u/fH4sXL44LL7wwysrK4p133ombb745hgwZEtOnT4+Iz0foJk+eHB999FGsXLmyyQeYHH/88Y1hWF1dHdOnT485c+ZERMQNN9wQ5513XgwfPjxqa2vj1ltvjfr6+rjsssuO+IsAAACQqg7/nrqW5Ofnx+bNm+ORRx6J999/P8rKyuKss86Kxx57LAYMGBARn0/hfOWVVyIi4hvf+EaT/d9+++0YMWJERERs3bo16urqGtft3LkzLr300qirq4vjjz8+xo0bFy+//HJUVFR05lMAAABIyhFH3bp16xr/fPTRR8eaNWva3P673/1uZFl2yOO+8847Te6vWrWqI6cHAACQ0zr0e+oAAADoHUQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwkQdAABAwo4o6pYuXRp5eXkxb968xmWXX3555OXlNbmNGzeuyX4NDQ1x3XXXxZAhQ6K4uDjOP//82Llz5yEf7/7774+RI0dG//79o6qqKl544YUjOX0AAIDkdTjqNmzYEMuWLYvTTjut2bpzzjkndu/e3Xh7+umnm6yfN29erF69OlatWhUvvvhi7N+/P84999w4ePBgq4/32GOPxbx58+LHP/5xbNq0KSZOnBhTp06N7du3d/QpAAAAJK9DUbd///6YOXNmLF++PAYNGtRsfVFRUZSWljbejjvuuMZ1+/btixUrVsTPfvazmDRpUpx++umxcuXK2Lx5czz77LOtPuadd94ZV155ZVx11VVxyimnxN133x3l5eXxwAMPdOQpAAAA5IQORd3s2bNj2rRpMWnSpBbXr1u3Lk444YQ46aST4uqrr47a2trGdTU1NfHJJ5/E5MmTG5cNGzYsKisr46WXXmrxeAcOHIiampom+0RETJ48udV9Ij6f5llfX9/kBgAAkEsK2rvDqlWrYuPGjbFhw4YW10+dOjUuuuiiqKioiLfffjv+5m/+Js4+++yoqamJoqKi2LNnT/Tr16/ZCN/QoUNjz549LR6zrq4uDh48GEOHDj3sfSI+/5m/W265pZ3PEAAAIB3tirodO3bE3Llz45lnnon+/fu3uM2MGTMa/1xZWRljx46NioqKeOqpp+KCCy5o9dhZlkVeXl6bj//V9YfaZ+HChTF//vzG+/X19VFeXt7mYwAAAKSkXVFXU1MTtbW1UVVV1bjs4MGD8fzzz8d9990XDQ0NkZ+f32SfsrKyqKioiC1btkRERGlpaRw4cCDee++9JqN1tbW1MWHChBYfd8iQIZGfn99sVK62trbZ6N2XFRUVRVFRUXueIgAAQFLa9TN11dXVsXnz5nj11Vcbb2PHjo2ZM2fGq6++2izoIiL27t0bO3bsiLKysoiIqKqqisLCwli7dm3jNrt3747XXnut1ajr169fVFVVNdknImLt2rWt7gMAANAXtGukbsCAAVFZWdlkWXFxcQwePDgqKytj//79sXjx4rjwwgujrKws3nnnnbj55ptjyJAhMX369IiIKCkpiSuvvDIWLFgQgwcPjuOOOy5uuOGGGDNmTJMPXqmuro7p06fHnDlzIiJi/vz5MWvWrBg7dmyMHz8+li1bFtu3b49rr732SL8GAAAAyWr3B6W0JT8/PzZv3hyPPPJIvP/++1FWVhZnnXVWPPbYYzFgwIDG7e66664oKCiIiy++OD7++OOorq6Ohx56qMlI39atW6Ourq7x/owZM2Lv3r2xZMmS2L17d1RWVsbTTz8dFRUVnfkUAAAAkpKXZVnW0yfRXerr66OkpCT27dsXAwcO7OnTgV4giw7+ZhN6kSyLWHLU4s49ZkTcEos69ZjkkiwWx5JOP+aizCdW54Y+89YSDqm7+sO7OQAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJ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4MHxZ3/2Z/HCCy/E6NGjm2z7d3/3d/G1r30tJk+e3OKxtm7dGnV1dY33d+7cGZdeemnU1dXF8ccfH+PGjYuXX345KioqOvMpAAAAJCUvy7Ksp0+iu9TX10dJSUns27fPz9dBRERk8dUfrc2yiCVHLe6Jk6FXyWJRdktPnwS9lO8TfK617xN95q0lHFJ39UeHfk8dAAAAvYOoAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASJioAwAASFhBT59Ad8qyLCIi6uvre/hMoLfImi/JIv45/rkHzoXexrdKWuP7BF9o+fuEbx7whS+644sO6Sp5WVc/Qi/y1ltvxYknntjTpwEAAPQhW7dujT/90z/tsuP3qZG64447LiIitm/fHiUlJT18NtTX10d5eXns2LEjBg4c2NOn0+d5PXoXr0fv4vXoXbwevYvXo3fxevQu+/bti+HDhzd2SFfpU1F31FGf/whhSUmJv+S9yMCBA70evYjXo3fxevQuXo/exevRu3g9ehevR+/yRYd02fG79OgAAAB0KVEHAACQsD4VdUVFRbFo0aIoKirq6VMhvB69jdejd/F69C5ej97F69G7eD16F69H79Jdr0ef+vRLAACAXNOnRuoAAAByjagDAABImKgDAABImKgDAABImKgDAABIWE5F3W233RYTJkyIY445Jv7kT/6kxW22b98e5513XhQXF8eQIUPi+uuvjwMHDrR53IaGhrjuuutiyJAhUVxcHOeff37s3LmzC55B7lq3bl3k5eW1eNuwYUOr+11++eXNth83blw3nnnuGjFiRLOv7Y9+9KM298myLBYvXhzDhg2Lo48+Or773e/G66+/3k1nnLveeeeduPLKK2PkyJFx9NFHx4knnhiLFi065Pcm10fnuf/++2PkyJHRv3//qKqqihdeeKHN7devXx9VVVXRv3//+NM//dP4+c9/3k1nmvuWLl0af/ZnfxYDBgyIE044If7tv/238Yc//KHNfVr7N+b3v/99N5117lq8eHGzr2tpaWmb+7g+uk5L/3bn5eXF7NmzW9zetdG5nn/++TjvvPNi2LBhkZeXF08++WST9R19n/TEE0/EqaeeGkVFRXHqqafG6tWr231uORV1Bw4ciIsuuij+6q/+qsX1Bw8ejGnTpsWHH34YL774YqxatSqeeOKJWLBgQZvHnTdvXqxevTpWrVoVL774Yuzfvz/OPffcOHjwYFc8jZw0YcKE2L17d5PbVVddFSNGjIixY8e2ue8555zTZL+nn366m8469y1ZsqTJ1/Y//af/1Ob2P/nJT+LOO++M++67LzZs2BClpaXxb/7Nv4kPPvigm844N/3+97+Pzz77LH7xi1/E66+/HnfddVf8/Oc/j5tvvvmQ+7o+jtxjjz0W8+bNix//+MexadOmmDhxYkydOjW2b9/e4vZvv/12fO9734uJEyfGpk2b4uabb47rr78+nnjiiW4+89y0fv36mD17drz88suxdu3a+PTTT2Py5Mnx4YcfHnLfP/zhD02uh29+85vdcMa5b/To0U2+rps3b251W9dH19qwYUOT12Lt2rUREXHRRRe1uZ9ro3N8+OGH8a1vfSvuu+++Ftd35H3Sb37zm5gxY0bMmjUrfvvb38asWbPi4osvjldeeaV9J5floAcffDArKSlptvzpp5/OjjrqqOzdd99tXPZf/+t/zYqKirJ9+/a1eKz3338/KywszFatWtW47N13382OOuqo7H/+z//Z6efeVxw4cCA74YQTsiVLlrS53WWXXZZ9//vf756T6mMqKiqyu+6667C3/+yzz7LS0tLs9ttvb1z2z//8z1lJSUn285//vAvOsG/7yU9+ko0cObLNbVwfneNf/+t/nV177bVNlp188snZj370oxa3/4//8T9mJ598cpNl11xzTTZu3LguO8e+rLa2NouIbP369a1u89xzz2URkb333nvdd2J9xKJFi7Jvfetbh72966N7zZ07NzvxxBOzzz77rMX1ro2uExHZ6tWrG+939H3SxRdfnJ1zzjlNlk2ZMiW75JJL2nU+OTVSdyi/+c1vorKyMoYNG9a4bMqUKdHQ0BA1NTUt7lNTUxOffPJJTJ48uXHZsGHDorKyMl566aUuP+dc9etf/zrq6uri8ssvP+S269atixNOOCFOOumkuPrqq6O2trbrT7CPuOOOO2Lw4MHxr/7Vv4rbbrutzel+b7/9duzZs6fJtVBUVBTf+c53XAtdYN++fXHccccdcjvXx5E5cOBA1NTUNPl7HRExefLkVv9e/+Y3v2m2/ZQpU+J//+//HZ988kmXnWtftW/fvoiIw7oeTj/99CgrK4vq6up47rnnuvrU+owtW7bEsGHDYuTIkXHJJZfEW2+91eq2ro/uc+DAgVi5cmX8h//wHyIvL6/NbV0bXa+j75Nau2ba+96qT0Xdnj17YujQoU2WDRo0KPr16xd79uxpdZ9+/frFoEGDmiwfOnRoq/twaCtWrIgpU6ZEeXl5m9tNnTo1Hn300fjHf/zH+NnPfhYbNmyIs88+OxoaGrrpTHPX3LlzY9WqVfHcc8/FnDlz4u67744f/vCHrW7/xd/3r15DroXOt3Xr1vjP//k/x7XXXtvmdq6PI1dXVxcHDx5s19/rlv4tGTp0aHz66adRV1fXZefaF2VZFvPnz48///M/j8rKyla3Kysri2XLlsUTTzwRv/rVr2LUqFFRXV0dzz//fDeebW4688wz45FHHok1a9bE8uXLY8+ePTFhwoTYu3dvi9u7PrrPk08+Ge+//36b/0Hu2ug+HX2f1No10973VgXt2roHLF68OG655ZY2t9mwYcMhfy7rCy39T0aWZYf8H47O2CcXdeT12blzZ6xZsyb+23/7b4c8/owZMxr/XFlZGWPHjo2Kiop46qmn4oILLuj4ieeo9rwef/3Xf9247LTTTotBgwbFv/t3/65x9K41X/1771poXUeuj127dsU555wTF110UVx11VVt7uv66Dzt/Xvd0vYtLefIzJkzJ373u9/Fiy++2OZ2o0aNilGjRjXeHz9+fOzYsSN++tOfxl/8xV909WnmtKlTpzb+ecyYMTF+/Pg48cQT4+GHH4758+e3uI/ro3usWLEipk6d2mQG2le5NrpfR94ndcZ7q14fdXPmzIlLLrmkzW1GjBhxWMcqLS1t9kOH7733XnzyySfNCvnL+xw4cCDee++9JqN1tbW1MWHChMN63FzWkdfnwQcfjMGDB8f555/f7scrKyuLioqK2LJlS7v37QuO5Hr54lMT//jHP7YYdV982tmePXuirKyscXltbW2r109f197XY9euXXHWWWfF+PHjY9myZe1+PNdH+w0ZMiTy8/Ob/Y9oW3+vS0tLW9y+oKCgzf8QoX2uu+66+PWvfx3PP/98fP3rX2/3/uPGjYuVK1d2wZn1bcXFxTFmzJhWv8+4PrrHtm3b4tlnn41f/epX7d7XtdE1Ovo+qbVrpr3vrXp91A0ZMiSGDBnSKccaP3583HbbbbF79+7GL/YzzzwTRUVFUVVV1eI+VVVVUVhYGGvXro2LL744IiJ2794dr732WvzkJz/plPNKWXtfnyzL4sEHH4wf/OAHUVhY2O7H27t3b+zYsaPJxcK/OJLrZdOmTRERrX5tR44cGaWlpbF27do4/fTTI+Lz+fzr16+PO+64o2MnnOPa83q8++67cdZZZ0VVVVU8+OCDcdRR7Z8d7/pov379+kVVVVWsXbs2pk+f3rh87dq18f3vf7/FfcaPHx///b//9ybLnnnmmRg7dmyHvq/RVJZlcd1118Xq1atj3bp1MXLkyA4dZ9OmTa6FLtDQ0BBvvvlmTJw4scX1ro/u8eCDD8YJJ5wQ06ZNa/e+ro2u0dH3SePHj4+1a9c2mUH1zDPPtH/wqF0fq9LLbdu2Ldu0aVN2yy23ZMcee2y2adOmbNOmTdkHH3yQZVmWffrpp1llZWVWXV2dbdy4MXv22Wezr3/969mcOXMaj7Fz585s1KhR2SuvvNK47Nprr82+/vWvZ88++2y2cePG7Oyzz86+9a1vZZ9++mm3P8fUPfvss1lEZG+88UaL60eNGpX96le/yrIsyz744INswYIF2UsvvZS9/fbb2XPPPZeNHz8++9rXvpbV19d352nnnJdeeim78847s02bNmVvvfVW9thjj2XDhg3Lzj///Cbbffn1yLIsu/3227OSkpLsV7/6VbZ58+bs0ksvzcrKyrweR+jdd9/NvvGNb2Rnn312tnPnzmz37t2Nty9zfXSNVatWZYWFhdmKFSuyN954I5s3b15WXFycvfPOO1mWZdmPfvSjbNasWY3bv/XWW9kxxxyT/fVf/3X2xhtvZCtWrMgKCwuzxx9/vKeeQk75q7/6q6ykpCRbt25dk2vho48+atzmq6/JXXfdla1evTr7P//n/2SvvfZa9qMf/SiLiOyJJ57oiaeQUxYsWJCtW7cue+utt7KXX345O/fcc7MBAwa4PnrQwYMHs+HDh2c33XRTs3Wuja71wQcfNPZFRDS+l9q2bVuWZYf3PmnWrFlNPl35f/2v/5Xl5+dnt99+e/bmm29mt99+e1ZQUJC9/PLL7Tq3nIq6yy67LIuIZrfnnnuucZtt27Zl06ZNy44++ujsuOOOy+bMmZP98z//c+P6t99+u9k+H3/8cTZnzpzsuOOOy44++ujs3HPPzbZv396Nzyx3XHrppdmECRNaXR8R2YMPPphlWZZ99NFH2eTJk7Pjjz8+KywszIYPH55ddtllvvadoKamJjvzzDOzkpKSrH///tmoUaOyRYsWZR9++GGT7b78emTZ5x/Xu2jRoqy0tDQrKirK/uIv/iLbvHlzN5997nnwwQdb/N711f93c310nf/yX/5LVlFRkfXr1y8744wzmnx8/mWXXZZ95zvfabL9unXrstNPPz3r169fNmLEiOyBBx7o5jPOXa1dC1/+XvTV1+SOO+7ITjzxxKx///7ZoEGDsj//8z/Pnnrqqe4/+Rw0Y8aMrKysLCssLMyGDRuWXXDBBdnrr7/euN710f3WrFmTRUT2hz/8odk610bX+uJXRHz1dtlll2VZdnjvk77zne80bv+FX/7yl9moUaOywsLC7OSTT+5QdOdl2f//6VUAAACS06d+pQEAAECuEXUAAAAJE3UAAAAJE3UAAAAJE3UAAAAJE3UAAAAJE3UAAAAJE3UAAAAJE3UAAAAJE3UAAAAJE3UAAAAJ+3/I1JqJnGIRVQAAAABJRU5ErkJggg==\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "ia.plot(width=(20,20),\n", " basis='xz',\n", @@ -531,31 +685,10 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": null, "id": "ee56bc53", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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ombHHnfccVFeXh4jR46MJUuWNDs2l8tFbW1tgxMAAEBKCiruHnrooXjnnXdi4sSJTY4pLy+Pu+++O+bPnx8PPvhgDBw4MEaOHBmPP/54k3Nmz54dJSUl9afKyso2WD0AAED+FGVZluV7ER8aPXp0dO3aNX7xi1+0aN7YsWOjqKgoHn744UYvz+Vykcvl6s/X1tZGZWVl1NTUNHjfHgAAQGurra2NkpKSNu+PvL/n7kNr166NxYsXx4MPPtjiuUOHDo0HHnigycuLi4ujuLh4T5YHAABQ0ArmZZlVVVXRq1evOPPMM1s8d9WqVVFeXt4GqwIAAOgYCuLI3QcffBBVVVUxYcKE6Ny54ZKmT58eGzZsiPvvvz8iIubMmRP9+vWLo48+uv4DWObPnx/z58/Px9IBAAAKQkHE3eLFi2PdunVx0UUX7XDZxo0bY926dfXn6+rqYtq0abFhw4bo1q1bHH300fHII4/EGWec0Z5LBgAAKCgF9YEq7aW93tAIAADQXv1RMO+5AwAAYPeJOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgASIOwAAgATkPe5mzpwZRUVFDU5lZWXNzlm2bFkMHjw49t133zj00EPjrrvuaqfVAgAAFKbO+V5ARMTRRx8dixcvrj/fqVOnJseuWbMmzjjjjJg0aVI88MAD8bvf/S4uv/zyOPjgg+MLX/hCeywXElW02zNnFc1svWXsphlZ/tcA0Bby8T22db6nZq1wHUBLFETcde7ceadH6z501113RZ8+fWLOnDkREXHkkUfGM888E7feequ4gzwohLCL+Ns6BB6QohnZzHb7Xuv7KHRseX9ZZkTEK6+8EhUVFdG/f/8YP358vPbaa02OXb58eYwaNarBttGjR8czzzwTW7dubXROLpeL2traBidgzxVK2H2o0NYD0FpmZG37C6y2vn6gfeQ97o4//vi4//7747HHHosf/OAHUV1dHcOHD4+33nqr0fHV1dXRu3fvBtt69+4d27Zti82bNzc6Z/bs2VFSUlJ/qqysbPX7AXubQg2pQl0XQGv4MMJaK8REHaSlKMuygnpB9JYtW2LAgAFx3XXXxdSpU3e4/PDDD49//ud/junTp9dv+93vfhcnnHBCbNy4sdGXd+ZyucjlcvXna2tro7KyMmpqaqJHjx5tc0egw9n199x1hIDyZAXY2+zK9+b2/d5YUE8xIa9qa2ujpKSkzfujIN5z91H7779/HHPMMfHKK680enlZWVlUV1c32LZp06bo3LlzHHTQQY3OKS4ujuLi4lZfK+yNOkLYRXScdQK0p5Z8b/RLMuh4Ci7ucrlcvPTSS3HiiSc2evmwYcPiF7/4RYNtCxcujCFDhkSXLl3aY4mw1xJMAHuPj3/PF3tQ+PL+nrtp06bFsmXLYs2aNfH000/HF7/4xaitrY0JEyZERMT06dPjwgsvrB9/2WWXxdq1a2Pq1Knx0ksvxY9+9KO45557Ytq0afm6CwAAyZtV1H6f2gnsnrwfuXvjjTfiS1/6UmzevDkOPvjgGDp0aDz11FPRt2/fiIjYuHFjrFu3rn58//7949FHH41rrrkmvvvd70ZFRUV8+9vf9mcQoI35gQ5AxP//eeBIHhSegvtAlfbQXm9ohI6l+Q9UEXcANKbpyNvrnmJCk9qrP/L+skyg8Ak7AJriZwQUDnEHAMAeEXhQGMQd0Cw/sAHYFX5eQP6JOwAAWoXAg/wSdwAAtBqBB/kj7gAAaFUCD/JD3AFN8sMZAKDjEHdARAg5AICOTtwBAAAkQNwB9Ry9AwDouMQdAABAAsQd0ICjdwAAHZO4AwAASIC4A3bg6B0AQMcj7gAAABIg7gAAABIg7gAAABIg7oBGed8dAEDHIu4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO6ARs3IZuZ7CQAAtIC4AwAASIC4AwAASIC4AwAASIC4A3bg/XYAAB2PuAMAAEiAuAMAAEiAuAMa8JJMAICOSdwBAAAkQNwB9Ry1AwDouMQdEBHCDgCgoxN3AAAACRB3AAC0Kq8GgfwQdwAAtBphB/kj7gAAaBXCDvJL3AEAsMeEHeSfuAMAYI8IOygM4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACABeY+72bNnx2c+85no3r179OrVKz73uc/F6tWrm52zdOnSKCoq2uH08ssvt9OqAQAACkve427ZsmVxxRVXxFNPPRWLFi2Kbdu2xahRo2LLli07nbt69erYuHFj/emwww5rhxUDAAAUns75XsCvfvWrBuerqqqiV69esXLlyjjppJOandurV6844IAD2nB1AAAAHUPej9x9XE1NTUREHHjggTsde9xxx0V5eXmMHDkylixZ0uS4XC4XtbW1DU4AAAApKai4y7Ispk6dGieccEIMGjSoyXHl5eVx9913x/z58+PBBx+MgQMHxsiRI+Pxxx9vdPzs2bOjpKSk/lRZWdlWdwEAACAvirIsy/K9iA9dccUV8cgjj8QTTzwRhxxySIvmjh07NoqKiuLhhx/e4bJcLhe5XK7+fG1tbVRWVkZNTU306NFjj9cNaSjaYcus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HQDtTdwBQDSMsd0NPUEHQD6JOwD4GJEGQEfkA1UAAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASkLe4e/311+Piiy+O/v37R7du3WLAgAExY8aMqKura3bexIkTo6ioqMFp6NCh7bRqAACAwtQ5Xzf88ssvxwcffBDf//7341Of+lS88MILMWnSpNiyZUvceuutzc4dM2ZMVFVV1Z/v2rVrWy8XAACgoOUt7saMGRNjxoypP3/ooYfG6tWr484779xp3BUXF0dZWVlbLxEAAKDDKKj33NXU1MSBBx6403FLly6NXr16xeGHHx6TJk2KTZs2NTs+l8tFbW1tgxMAAEBKCibu/vznP8d3vvOduOyyy5odd/rpp8ePf/zj+M1vfhPf+ta3YsWKFXHqqadGLpdrcs7s2bOjpKSk/lRZWdnaywcAAMirVo+7mTNn7vCBJx8/PfPMMw3mvPnmmzFmzJg477zz4pJLLmn2+seNGxdnnnlmDBo0KMaOHRu//OUv409/+lM88sgjTc6ZPn161NTU1J/Wr1/fKvcVAACgULT6e+4mT54c48ePb3ZMv3796v/95ptvxogRI2LYsGFx9913t/j2ysvLo2/fvvHKK680Oaa4uDiKi4tbfN0AAAAdRavHXWlpaZSWlu7S2A0bNsSIESNi8ODBUVVVFfvs0/IDiW+99VasX78+ysvLWzwXAAAgFXl7z92bb74Zp5xySlRWVsatt94a//M//xPV1dVRXV3dYNwRRxwRCxYsiIiI9957L6ZNmxbLly+P119/PZYuXRpjx46N0tLS+PznP5+PuwEAAFAQ8vanEBYuXBivvvpqvPrqq3HIIYc0uCzLsvp/r169OmpqaiIiolOnTvH888/H/fffH++8806Ul5fHiBEjYt68edG9e/d2XT8AAEAhyVvcTZw4MSZOnLjTcR8NvW7dusVjjz3WhqsCAADomArmTyEAAACw+8QdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQdAABAAsQd0KhZRTPzvQQAAFpA3AE7EHYAAB2PuAMaEHYAAB2TuAPqCTsAgI5L3AERIewAADo6cQcAAJAAcQcAQKvyahDID3EHAECrEXaQP+IOAAAgAeIOAIBW4agd5Je4AwAASIC4AwAASIC4AwBgj3lJJuSfuAMAAEiAuAMAAEiAuAMAAEiAuAMAYI94vx0UBnEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAMAemZHNzPcSgBB3AAAASRB3AAAACRB3AAAACRB3AADsMe+7g/wTdwAAAAkQdwAAtApH7yC/xB0AAEACxB0AAK3G0TvIH3EHAACQAHEHAECrcvQO8kPcAQCw24QcFA5xB0SEH84AAB2duAPqCTwAgI5L3AENCDwAgI5J3AE7EHgA7Ao/L6CwiDugUX5gAwB0LOIOaJLAA6ApfkZA4RF3QLNmZDP9AAcA6ADEHbBLRB4AH/LzAApTXuOuX79+UVRU1OB0/fXXNzsny7KYOXNmVFRURLdu3eKUU06JF198sZ1WDIg8AIDC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b775ZlRWVsajjz4ao0eP3ul6amtro6SkJGpqahq9DQAAgNbSXv3Ruc2ueRcsX748Bg0aVB92ERGjR4+OXC4XK1eujBEjRuwwZ+XKlbF169YYNWpU/baKiooYNGhQPPnkk43GXS6Xi1wuV3++pqYmIv72RQYAAGhLH3ZHWx9Xy2vcVVdXR+/evRts69mzZ3Tt2jWqq6ubnNO1a9fo2bNng+29e/ducs7s2bNj1qxZO2yvrKzczZUDAAC0zFtvvRUlJSVtdv0tjruZM2c2GkoftWLFihgyZMguXV9RUdEO27Isa3R7c5qbM3369Jg6dWr9+XfeeSf69u0b69ata9MvLrumtrY2KisrY/369V4mWwA8HoXF41FYPB6FxeNRWDwehcXjUVhqamqiT58+ceCBB7bp7bQ47iZPnhzjx49vdky/fv126brKysri6aefbrDt7bffjq1bt+5wRO+jc+rq6uLtt99ucPRu06ZNMXz48EbnFBcXR3Fx8Q7bS0pK/GcvID169PB4FBCPR2HxeBQWj0dh8XgUFo9HYfF4FJZ99mnbv0TX4rgrLS2N0tLSVrnxYcOGxY033hgbN26M8vLyiIhYuHBhFBcXx+DBgxudM3jw4OjSpUssWrQozj///IiI2LhxY7zwwgtxyy23tMq6AAAAOpo2Tcd169bFc889F+vWrYvt27fHc889F88991y89957ERExatSoOOqoo+KCCy6IVatWxa9//euYNm1aTJo0qf43DBs2bIgjjjgifv/730fE3462XXzxxXHttdfGr3/961i1alX80z/9UxxzzDHxj//4j215dwAAAApWm36gyr/927/FfffdV3/+uOOOi4iIJUuWxCmnnBKdOnWKRx55JC6//PL47Gc/G926dYsvf/nLceutt9bP2bp1a6xevTr+8pe/1G+7/fbbo3PnznH++efH+++/HyNHjox77703OnXqtEvrKi4ujhkzZjT6Uk3an8ejsHg8CovHo7B4PAqLx6OweDwKi8ejsLTX49Euf+cOAACAttW27+gDAACgXYg7AACABIg7AACABIg7AACABCQbdzfeeGMMHz489ttvvzjggAMaHbNu3boYO3Zs7L///lFaWhpXXXVV1NXVNXu9uVwurrzyyigtLY39998/zj777HjjjTfa4B6ka+nSpVFUVNToacWKFU3Omzhx4g7jhw4d2o4rT1e/fv12+Npef/31zc7JsixmzpwZFRUV0a1btzjllFPixRdfbKcVp+v111+Piy++OPr37x/dunWLAQMGxIwZM3b6vcn+0Xq+973vRf/+/WPfffeNwYMHx29/+9tmxy9btiwGDx4c++67bxx66KFx1113tdNK0zZ79uz4zGc+E927d49evXrF5z73uVi9enWzc5r6+fLyyy+306rTNXPmzB2+rmVlZc3OsW+0ncZ+bhcVFcUVV1zR6Hj7Rut6/PHHY+zYsVFRURFFRUXx0EMPNbh8d58jzZ8/P4466qgoLi6Oo446KhYsWNDitSUbd3V1dXHeeefFV77ylUYv3759e5x55pmxZcuWeOKJJ2Lu3Lkxf/78uPbaa5u93ilTpsSCBQti7ty58cQTT8R7770XZ511Vmzfvr0t7kaShg8fHhs3bmxwuuSSS6Jfv34xZMiQZueOGTOmwbxHH320nVadvhtuuKHB1/Zf//Vfmx1/yy23xG233RZ33HFHrFixIsrKyuK0006Ld999t51WnKaXX345Pvjgg/j+978fL774Ytx+++1x1113xde+9rWdzrV/7Ll58+bFlClT4utf/3qsWrUqTjzxxDj99NNj3bp1jY5fs2ZNnHHGGXHiiSfGqlWr4mtf+1pcddVVMX/+/HZeeXqWLVsWV1xxRTz11FOxaNGi2LZtW4waNSq2bNmy07mrV69usC8cdthh7bDi9B199NENvq7PP/98k2PtG21rxYoVDR6LRYsWRUTEeeed1+w8+0br2LJlSxx77LFxxx13NHr57jxHWr58eYwbNy4uuOCC+MMf/hAXXHBBnH/++fH000+3bHFZ4qqqqrKSkpIdtj/66KPZPvvsk23YsKF+209/+tOsuLg4q6mpafS63nnnnaxLly7Z3Llz67dt2LAh22effbJf/epXrb72vUVdXV3Wq1ev7IYbbmh23IQJE7JzzjmnfRa1l+nbt292++237/L4Dz74ICsrK8tuuumm+m1//etfs5KSkuyuu+5qgxXu3W655Zasf//+zY6xf7SOf/iHf8guu+yyBtuOOOKI7Prrr290/HXXXZcdccQRDbZdeuml2dChQ9tsjXurTZs2ZRGRLVu2rMkxS5YsySIie/vtt9tvYXuJGTNmZMcee+wuj7dvtK+rr746GzBgQPbBBx80erl9o+1ERLZgwYL687v7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yK6//vosIrL58+fn4y4k5dprr82WLl2avfbaa9lTTz2VnXXWWVn37t3tG3m0ffv2rE+fPtlXv/rVHS6zb7Std999t74tIqL+edTatWuzLNu150gXXHBBg09i/t3vfpd16tQpu+mmm7KXXnopu+mmm7LOnTtnTz31VIvWlmzcTZgwIYuIHU5LliypH7N27drszDPPzLp165YdeOCB2eTJk7O//vWv9ZevWbNmhznvv/9+Nnny5OzAAw/MunXrlp111lnZunXr2vGepeNLX/pSNnz48CYvj4isqqoqy7Is+8tf/pKNGjUqO/jgg7MuXbpkffr0ySZMmOBr3wpWrlyZHX/88VlJSUm27777ZgMHDsxmzJiRbdmypcG4jz4eWfa3j/qdMWNGVlZWlhUXF2cnnXRS9vzzz7fz6tNTVVXV6Peuj/8uzv7Rdr773e9mffv2zbp27Zp9+tOfbvDR+xMmTMhOPvnkBuOXLl2aHXfccVnXrl2zfv36ZXfeeWc7rzhNTe0HH/0+9PHH4+abb84GDBiQ7bvvvlnPnj2zE044IXvkkUfaf/EJGjduXFZeXp516dIlq6ioyM4999zsxRdfrL/cvtH+HnvssSwistWrV+9wmX2jbX34pyU+fpowYUKWZbv2HOnkk0+uH/+h//zP/8wGDhyYdenSJTviiCN2K76Lsuz/3t0KAABAh7XX/ikEAACAlIg7AACABIg7AACABIg7AACABIg7AACABIg7AACABIg7AACABIg7AACABIg7AACABIg7AACABIg7AACABIg7AACABPw/wd7sqUycs1EAAAAASUVORK5CYII=\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "iia.plot(width=(20,20),\n", " basis='xy',\n", @@ -567,7 +700,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": null, "id": "f71ac1b6", "metadata": {}, "outputs": [], @@ -616,7 +749,7 @@ " ul_cyl_br_in, ul_cyl_br_out,\n", " ul_cyl_ur_in, ul_cyl_ur_out,\n", " ul_cyl_l_in, ul_cyl_l_out,\n", - " ul_cyl_r_in, ul_yl_r_out)= list(ul.get_surfaces().values())\n", + " ul_cyl_r_in, ul_cyl_r_out)= list(ul.get_surfaces().values())\n", " br = openmc.model.hexagonal_prism(origin=(l1, -l2), edge_length=e_d, orientation='x',corner_radius=r_c)\n", " (br_u, br_b, br_ur, br_br, br_bl, br_ul,\n", " br_cyl_bl_in, br_cyl_bl_out, \n", @@ -624,24 +757,38 @@ " br_cyl_br_in, br_cyl_br_out,\n", " br_cyl_ur_in, br_cyl_ur_out,\n", " br_cyl_l_in, br_cyl_l_out,\n", - " br_cyl_r_in, br_yl_r_out)= list(br.get_surfaces().values())\n", + " br_cyl_r_in, br_cyl_r_out)= list(br.get_surfaces().values())\n", " lb = openmc.model.hexagonal_prism(origin=(-l2, -l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", + " (lb_r, lb_l, lb_ur, lb_ul, lb_br, lb_bl,\n", + " lb_cyl_lb_in, lb_cyl_lb_out, \n", + " lb_cyl_lu_in, lb_cyl_lu_out,\n", + " lb_cyl_rb_in, lb_cyl_rb_out,\n", + " lb_cyl_ru_in, lb_cyl_ru_out,\n", + " lb_cyl_b_in, lb_cyl_b_out,\n", + " lb_cyl_u_in, lb_cyl_u_out)= list(lb.get_surfaces().values())\n", " ru = openmc.model.hexagonal_prism(origin=(l2, l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", + " (ru_r, ru_l, ru_ur, ru_ul, ru_br, ru_bl,\n", + " ru_cyl_lb_in, ru_cyl_lb_out, \n", + " ru_cyl_lu_in, ru_cyl_lu_out,\n", + " ru_cyl_rb_in, ru_cyl_rb_out,\n", + " ru_cyl_ru_in, ru_cyl_ru_out,\n", + " ru_cyl_b_in, ru_cyl_b_out,\n", + " ru_cyl_u_in, ru_cyl_u_out)= list(ru.get_surfaces().values())\n", " ul_t = openmc.ZCylinder(-l1, -l3, r_dt, name='corner_ul_tip')\n", " br_t = openmc.ZCylinder(l1, l3, r_dt, name='corner_br_tip')\n", " ru_t = openmc.ZCylinder(-l3, l1, r_dt, name='corner_ru_tip')\n", " lb_t = openmc.ZCylinder(l3, -l1, r_dt, name='corner_lb_tip')\n", " \n", - " gr_ul = ul & -eb_maxy & +gr_maxy# | \n", - " gr_ul_fill = -ul_ul & +ul_cyl_l_out & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy\n", - " gr_br = br & +eb_miny & -gr_miny# | \n", - " gr_br_fill = +br_br & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny \n", - " gr_lb = lb & +eb_minx & -gr_minx# | \n", - " gr_lb_fill = lb & +gr_cyl_lb & +gr_minx & -gr_cyl_minx & -gr_cyl_miny \n", - " gr_ru = ru & -eb_maxx & +gr_maxx# | \n", - " gr_ru_fill = ru & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxx & +gr_cyl_maxy\n", + " gr_ul = -ul_ul & -ul_ur & -eb_maxy & +gr_maxy\n", + " gr_ul_fill = -ul_ul & +ul_bl & +ul_cyl_l_out & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy\n", + " gr_br = +br_br & +br_bl & +eb_miny & -gr_miny\n", + " gr_br_fill = +br_br & -br_ur & +br_cyl_r_out & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny\n", + " gr_lb = +lb_bl & -lb_ul & +eb_minx & -gr_minx\n", + " gr_lb_fill = +lb_bl & +lb_br & +lb_cyl_b_out & +gr_cyl_lb & +gr_minx & -gr_cyl_miny & -gr_cyl_minx\n", + " gr_ru = +ru_br & -ru_ur & -eb_maxx & +gr_maxx\n", + " gr_ru_fill = -ru_ur & -ru_ul & +ru_cyl_u_out & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxy & +gr_cyl_maxx\n", + "\n", "\n", - " \n", " gr_ul_t = -ul_t & +eb_miny & -gr_miny\n", " gr_br_t = -br_t & -eb_maxy & +gr_maxy\n", " gr_ru_t = -ru_t & +eb_minx & -gr_minx\n", @@ -650,14 +797,16 @@ " gr_corners = (gr_ul, gr_br, gr_lb, gr_ru, gr_ul_fill, gr_br_fill, gr_lb_fill, gr_ru_fill)\n", " gr_t = (gr_ul_t, gr_br_t, gr_ru_t, gr_lb_t)\n", " \n", - " iec_1 = +gr_cyl_miny & -gr_cyl_maxy & +gr_cyl_maxx & -eb_maxx & +lb_t & ~ru & +gr_cyl_ru\n", - " iec_2 = (+gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy) & ~ru & +br_t & -eb_maxx & -eb_maxy\n", - " iec_3 = +gr_cyl_minx & -gr_cyl_maxx & +gr_cyl_maxy & -eb_maxy & +br_t & ~ul & +gr_cyl_ul\n", - " iec_4 = (+gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy) & ~ul & +ru_t & +eb_minx & -eb_maxy\n", - " iec_5 = +gr_cyl_miny & -gr_cyl_maxy & -gr_cyl_minx & +eb_minx & +ru_t & ~lb & +gr_cyl_lb\n", - " iec_6 = (+gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny) & ~lb & +ul_t & +eb_minx & +eb_miny\n", - " iec_7 = +gr_cyl_minx & -gr_cyl_maxx & -gr_cyl_miny & +eb_miny & +ul_t & ~br & +gr_cyl_br\n", - " iec_8 = (+gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny) & ~br & +lb_t & -eb_maxx & +eb_miny\n", + " # need to decomplexify even #s\n", + " iec_1 = +gr_cyl_miny & +gr_maxx & -eb_maxx & +lb_t & -ru_br\n", + " iec_2 = +gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy & (+ru_ur | +ru_ul | (+ru_cyl_u_in & -ru_cyl_u_out)) & +br_t & -eb_maxx & -eb_maxy\n", + " iec_3 = -gr_cyl_maxx & +gr_maxy & -eb_maxy & +br_t & +ul_ur\n", + " iec_4 = +gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy & (+ul_ul | -ul_bl | (+ul_cyl_l_in & -ul_cyl_l_out)) & +ru_t & +eb_minx & -eb_maxy\n", + " iec_5 = -gr_cyl_maxy & -gr_minx & +eb_minx & +ru_t & +lb_ul\n", + " iec_6 = +gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny & (-lb_bl | -lb_br | (+lb_cyl_b_in & -lb_cyl_b_out)) & +ul_t & +eb_minx & +eb_miny\n", + " iec_7 = +gr_cyl_minx & -gr_miny & +eb_miny & +ul_t & -br_bl\n", + " iec_8 = +gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny & (-br_br | +br_ur | (+br_cyl_r_in & -br_cyl_r_out)) & +lb_t & -eb_maxx & +eb_miny\n", + "\n", "\n", " inter_elem_channel = (iec_1, iec_2, iec_3, iec_4, iec_5, iec_6, iec_7, iec_8)\n", " #inter_elem_channel = (~gr_sq_neg & elem_bound &\n", @@ -671,7 +820,167 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": null, + "id": "b41ea3c3", + "metadata": {}, + "outputs": [], + "source": [ + "elem_bound = openmc.rectangular_prism(7.62*2, 7.62*2) # Pin outer boundary\n", + "eb_minx, eb_maxx, eb_miny, eb_maxy = list(elem_bound.get_surfaces().values())\n", + "\n", + "gr_sq_neg = openmc.rectangular_prism(7.23646*2, 7.23646*2, corner_radius=0.99) # Graphite\n", + " \n", + "(gr_minx, gr_maxx, gr_miny, gr_maxy, \n", + "gr_cyl_lb, gr_cyl_minx, gr_cyl_miny, \n", + "gr_cyl_ul, gr_cyl_maxy, gr_cyl_br, \n", + "gr_cyl_maxx, gr_cyl_ru) = list(gr_sq_neg.get_surfaces().values())\n", + "\n", + "# the rounded edges themselves\n", + "quarter_ul = -gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy\n", + "quarter_br = -gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny\n", + "quarter_lb = -gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny\n", + "quarter_ru = -gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy\n", + "quarters = (quarter_ul, quarter_br, quarter_lb, quarter_ru)\n", + "\n", + "# remaining square\n", + "gr_sq = +gr_cyl_minx & -gr_cyl_maxx & +gr_cyl_miny & -gr_cyl_maxy\n", + "\n", + "r_d = 1.16\n", + "e_d = 2 * r_d / np.sqrt(3)\n", + "r_dt = 0.8\n", + "r_c = 0.18\n", + "l1 = 5.8801\n", + "l2 = 6.505\n", + "l3 = 8.03646\n", + "ul = openmc.model.hexagonal_prism(origin=(-l1, l2), edge_length=e_d, orientation='x', corner_radius=r_c)\n", + "(ul_u, ul_b, ul_ur, ul_br, ul_bl, ul_ul,\n", + " ul_cyl_bl_in, ul_cyl_bl_out, \n", + " ul_cyl_ul_in, ul_cyl_ul_out,\n", + " ul_cyl_br_in, ul_cyl_br_out,\n", + " ul_cyl_ur_in, ul_cyl_ur_out,\n", + " ul_cyl_l_in, ul_cyl_l_out,\n", + " ul_cyl_r_in, ul_cyl_r_out)= list(ul.get_surfaces().values())\n", + "br = openmc.model.hexagonal_prism(origin=(l1, -l2), edge_length=e_d, orientation='x',corner_radius=r_c)\n", + "(br_u, br_b, br_ur, br_br, br_bl, br_ul,\n", + " br_cyl_bl_in, br_cyl_bl_out, \n", + " br_cyl_ul_in, br_cyl_ul_out,\n", + " br_cyl_br_in, br_cyl_br_out,\n", + " br_cyl_ur_in, br_cyl_ur_out,\n", + " br_cyl_l_in, br_cyl_l_out,\n", + " br_cyl_r_in, br_cyl_r_out)= list(br.get_surfaces().values())\n", + "lb = openmc.model.hexagonal_prism(origin=(-l2, -l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", + "(lb_r, lb_l, lb_ur, lb_ul, lb_br, lb_bl,\n", + " lb_cyl_lb_in, lb_cyl_lb_out, \n", + " lb_cyl_lu_in, lb_cyl_lu_out,\n", + " lb_cyl_rb_in, lb_cyl_rb_out,\n", + " lb_cyl_ru_in, lb_cyl_ru_out,\n", + " lb_cyl_b_in, lb_cyl_b_out,\n", + " lb_cyl_u_in, lb_cyl_u_out)= list(lb.get_surfaces().values())\n", + "ru = openmc.model.hexagonal_prism(origin=(l2, l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", + "(ru_r, ru_l, ru_ur, ru_ul, ru_br, ru_bl,\n", + " ru_cyl_lb_in, ru_cyl_lb_out, \n", + " ru_cyl_lu_in, ru_cyl_lu_out,\n", + " ru_cyl_rb_in, ru_cyl_rb_out,\n", + " ru_cyl_ru_in, ru_cyl_ru_out,\n", + " ru_cyl_b_in, ru_cyl_b_out,\n", + " ru_cyl_u_in, ru_cyl_u_out)= list(ru.get_surfaces().values())\n", + "ul_t = openmc.ZCylinder(-l1, -l3, r_dt, name='corner_ul_tip')\n", + "br_t = openmc.ZCylinder(l1, l3, r_dt, name='corner_br_tip')\n", + "ru_t = openmc.ZCylinder(-l3, l1, r_dt, name='corner_ru_tip')\n", + "lb_t = openmc.ZCylinder(l3, -l1, r_dt, name='corner_lb_tip')\n", + "\n", + "gr_ul = -ul_ul & -ul_ur & -eb_maxy & +gr_maxy\n", + "gr_ul_fill = -ul_ul & +ul_bl & +ul_cyl_l_out & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy\n", + "gr_br = +br_br & +br_bl & +eb_miny & -gr_miny\n", + "gr_br_fill = +br_br & -br_ur & +br_cyl_r_out & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny\n", + "gr_lb = +lb_bl & -lb_ul & +eb_minx & -gr_minx\n", + "gr_lb_fill = +lb_bl & +lb_br & +lb_cyl_b_out & +gr_cyl_lb & +gr_minx & -gr_cyl_miny & -gr_cyl_minx\n", + "gr_ru = +ru_br & -ru_ur & -eb_maxx & +gr_maxx\n", + "gr_ru_fill = -ru_ur & -ru_ul & +ru_cyl_u_out & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxy & +gr_cyl_maxx\n", + "\n", + "\n", + "gr_ul_t = -ul_t & +eb_miny & -gr_miny\n", + "gr_br_t = -br_t & -eb_maxy & +gr_maxy\n", + "gr_ru_t = -ru_t & +eb_minx & -gr_minx\n", + "gr_lb_t = -lb_t & -eb_maxx & +gr_maxx \n", + "\n", + "gr_corners = (gr_ul, gr_br, gr_lb, gr_ru, gr_ul_fill, gr_br_fill, gr_lb_fill, gr_ru_fill)\n", + "gr_t = (gr_ul_t, gr_br_t, gr_ru_t, gr_lb_t)\n", + "\n", + "# need to decomplexify even #s\n", + "iec_1 = +gr_cyl_miny & +gr_maxx & -eb_maxx & +lb_t & -ru_br\n", + "iec_2 = +gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy & (+ru_ur | +ru_ul | (+ru_cyl_u_in & -ru_cyl_u_out)) & +br_t & -eb_maxx & -eb_maxy\n", + "iec_3 = -gr_cyl_maxx & +gr_maxy & -eb_maxy & +br_t & +ul_ur\n", + "iec_4 = +gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy & (+ul_ul | -ul_bl | (+ul_cyl_l_in & -ul_cyl_l_out)) & +ru_t & +eb_minx & -eb_maxy\n", + "iec_5 = -gr_cyl_maxy & -gr_minx & +eb_minx & +ru_t & +lb_ul\n", + "iec_6 = +gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny & (-lb_bl | -lb_br | (+lb_cyl_b_in & -lb_cyl_b_out)) & +ul_t & +eb_minx & +eb_miny\n", + "iec_7 = +gr_cyl_minx & -gr_miny & +eb_miny & +ul_t & -br_bl\n", + "iec_8 = +gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny & (-br_br | +br_ur | (+br_cyl_r_in & -br_cyl_r_out)) & +lb_t & -eb_maxx & +eb_miny\n", + "\n", + "inter_elem_channel = (iec_1, iec_2, iec_3, iec_4, iec_5, iec_6, iec_7, iec_8)\n", + "#inter_elem_channel = (~gr_sq_neg & elem_bound &\n", + "\n", + "c3 = openmc.Cell(fill=moder, region=(gr_sq), name='cr_moderator')\n", + "\n", + "c3_quarter_u = openmc.Cell(fill=moder, region=quarters[0], name='cr_moderator_quarter_u')\n", + "c3_quarter_l = openmc.Cell(fill=moder, region=quarters[1], name='cr_moderator_quarter_l')\n", + "c3_quarter_b = openmc.Cell(fill=moder, region=quarters[2], name='cr_moderator_quarter_b')\n", + "c3_quarter_r = openmc.Cell(fill=moder, region=quarters[3], name='cr_moderator_quarter_r')\n", + "\n", + "c3_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='cr_moderator_ul')\n", + "c3_br = openmc.Cell(fill=moder, region=gr_corners[1], name='cr_moderator_br')\n", + "c3_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='cr_moderator_ru')\n", + "c3_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='cr_moderator_lb')\n", + "\n", + "c3_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='cr_moderator_ul_fill')\n", + "c3_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='cr_moderator_br_fill')\n", + "c3_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='cr_moderator_ru_fill')\n", + "c3_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='cr_moderator_lb_fill')\n", + "\n", + "c3_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='cr_moderator_ul_t')\n", + "c3_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='cr_moderator_br_t')\n", + "c3_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='cr_moderator_ru_t')\n", + "c3_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='cr_moderator_lb_t')\n", + "\n", + "#c4 = openmc.Cell(fill=fuel, region=inter_elem_channel, name='cr_fuel_outer')\n", + "c41 = openmc.Cell(fill=fuel, region=(inter_elem_channel[0]), name='cr_fuel_outer_1')\n", + "c42 = openmc.Cell(fill=fuel, region=(inter_elem_channel[1]), name='cr_fuel_outer_2')\n", + "c43 = openmc.Cell(fill=fuel, region=(inter_elem_channel[2]), name='cr_fuel_outer_3')\n", + "c44 = openmc.Cell(fill=fuel, region=(inter_elem_channel[3]), name='cr_fuel_outer_4')\n", + "c45 = openmc.Cell(fill=fuel, region=(inter_elem_channel[4]), name='cr_fuel_outer_5')\n", + "c46 = openmc.Cell(fill=fuel, region=(inter_elem_channel[5]), name='cr_fuel_outer_6')\n", + "c47 = openmc.Cell(fill=fuel, region=(inter_elem_channel[6]), name='cr_fuel_outer_7')\n", + "c48 = openmc.Cell(fill=fuel, region=(inter_elem_channel[7]), name='cr_fuel_outer_8')\n", + "\n", + "\n", + "#universe_id=3\n", + "cr = openmc.Universe(name='control_rod')\n", + "cr.add_cells([#c3, #c4,\n", + " #c3_quarter_u, c3_quarter_l, c3_quarter_b, c3_quarter_r,\n", + " c3_ul, c3_br, c3_ru, c3_lb, \n", + " #c3_ulf, c3_brf, c3_ruf, c3_lbf, \n", + " c3_ul_t, c3_br_t, c3_ru_t, c3_lb_t,\n", + " c41, c42, c43, c44, c45, c46, c47, c48])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "b0dbf19f", + "metadata": {}, + "outputs": [], + "source": [ + "cr.plot(width=(20,20),\n", + " basis='xy',\n", + " colors=colormap,\n", + " origin=(0.,0.,440),\n", + " #color_by='material',\n", + " pixels=(2000,2000))" + ] + }, + { + "cell_type": "code", + "execution_count": null, "id": "d17047bd", "metadata": {}, "outputs": [], @@ -789,7 +1098,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": null, "id": "cea2d476", "metadata": {}, "outputs": [], @@ -802,38 +1111,42 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": null, + "id": "35f02392", + "metadata": {}, + "outputs": [], + "source": [ + "cr.cells" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "cb7abdf0", + "metadata": {}, + "outputs": [], + "source": [ + "openmc.Universe(cells=[cr.cells[6724]]).plot(width=(20,20),\n", + " basis='xy',\n", + " colors=colormap,\n", + " origin=(0.,0.,440),\n", + " color_by='material',\n", + " pixels=(1000,1000))" + ] + }, + { + "cell_type": "code", + "execution_count": null, "id": "aa83205f", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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TpfTtLW1dYq/1tbWGDt2rLNllk3lnS0zlTjyJgtAqaXyHtpb+X+vdbbMcijV2TIHF/oG58+fHxdccEGP00yYMKHTz8uXL4/DDz88zj777D7fX2NjY4wfPz62bNnS7TS1tbVRW1vb59uGiLTelJbUNFXAmw4AKVmcVc/fYvUeS7kVPO7q6+ujvr6+19NnWRbLly+Piy66KIYMGdLn+3vzzTdj+/bt0djY2Od54UCq5c0IAIqpmgIPyqns37l77LHHYuvWrXHZZZd1+ftjjz02Vq1aFRER7777blx33XWxYcOGeOWVV2LdunUxd+7cqK+vjy9+8YulXGyoWN5cAaDwjNqRBwUfueurZcuWxYwZM+LjH/94l7/fvHlztLS0RETEoEGD4tlnn41777033n777WhsbIyZM2fG/fffH8OHDy/lYjMglXOs9+LKWdQ+WlzuBQCgyqT7nrqH91bKr+AnVKkEpfpCIwAAQKn6o+yHZQIAADBw4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACAB4g4AACABRY27G2+8MWbMmBGHHHJIfOxjH+tymm3btsXcuXPj0EMPjfr6+vj6178e7e3tPd5uW1tbXH311VFfXx+HHnponH322fHaa68V4REAAABUhqLGXXt7e5x77rnxta99rcvf7969O84888x477334oknnogVK1bEypUr49prr+3xdhcsWBCrVq2KFStWxBNPPBHvvvtunHXWWbF79+5iPAwAAIDcq8myLCv2ndx9992xYMGCePvttztd/9Of/jTOOuus2L59e4wZMyYiIlasWBGXXHJJ7Nq1K0aMGLHfbbW0tMQRRxwR//2///c4//zzIyLi9ddfj7Fjx8YjjzwSs2fPPuDytLa2Rl1dXbS0tHR5HwAAAIVSqv4YXLRb7oUNGzbElClTOsIuImL27NnR1tYWzzzzTMycOXO/eZ555pl4//33Y9asWR3XjRkzJqZMmRJPPvlkl3HX1tYWbW1tHT+3tLRExEf/yQAAAMW0pzuKPa5W1rhrbm6O0aNHd7pu5MiRMXTo0Ghubu52nqFDh8bIkSM7XT969Ohu51m6dGksWbJkv+vHjh3bzyUHAADomzfffDPq6uqKdvt9jrumpqYuQ2lvGzdujBNPPLFXt1dTU7PfdVmWdXl9T3qaZ9GiRbFw4cKOn99+++0YP358bNu2raj/ufROa2trjB07NrZv3+4w2RzwfOSL5yNfPB/54vnIF89Hvng+8qWlpSXGjRsXhx12WFHvp89xN3/+/Ljgggt6nGbChAm9uq2Ghob4+c9/3um6t956K95///39RvT2nqe9vT3eeuutTqN3u3btihkzZnQ5T21tbdTW1u53fV1dnRd7jowYMcLzkSOej3zxfOSL5yNfPB/54vnIF89Hvhx0UHH/El2f466+vj7q6+sLcufTp0+PG2+8MXbu3BmNjY0REbF69eqora2NqVOndjnP1KlTY8iQIbFmzZo477zzIiJi586d8dxzz8Utt9xSkOUCAACoNEVNx23btsUvf/nL2LZtW+zevTt++ctfxi9/+ct49913IyJi1qxZcdxxx8WFF14YmzZtir/7u7+L6667LubNm9fxCcOOHTvi2GOPjX/8x3+MiI9G2y677LK49tpr4+/+7u9i06ZN8Z/+03+K448/Pv7jf/yPxXw4AAAAuVXUE6r81//6X+Oee+7p+PmEE06IiIi1a9fGqaeeGoMGDYqHH344rrzyyvgP/+E/xLBhw+IrX/lK3HrrrR3zvP/++7F58+b49a9/3XHd97///Rg8eHCcd9558Zvf/CZOP/30uPvuu2PQoEG9Wq7a2tpYvHhxl4dqUnqej3zxfOSL5yNfPB/54vnIF89Hvng+8qVUz0dJ/s4dAAAAxVXcb/QBAABQEuIOAAAgAeIOAAAgAeIOAAAgAcnG3Y033hgzZsyIQw45JD72sY91Oc22bdti7ty5ceihh0Z9fX18/etfj/b29h5vt62tLa6++uqor6+PQw89NM4+++x47bXXivAI0rVu3bqoqanp8rJx48Zu57vkkkv2m37atGklXPJ0TZgwYb//2xtuuKHHebIsi6amphgzZkwMGzYsTj311Hj++edLtMTpeuWVV+Kyyy6LiRMnxrBhw2LSpEmxePHiA26brB+F82d/9mcxceLEOPjgg2Pq1Knx93//9z1Ov379+pg6dWocfPDBcdRRR8Wdd95ZoiVN29KlS+MP/uAPYvjw4TFq1Kj4whe+EJs3b+5xnu7eX1588cUSLXW6mpqa9vt/bWho6HEe60bxdPW+XVNTE1dddVWX01s3Cuvxxx+PuXPnxpgxY6KmpiYefPDBTr/v7z7SypUr47jjjova2to47rjjYtWqVX1etmTjrr29Pc4999z42te+1uXvd+/eHWeeeWa899578cQTT8SKFSti5cqVce211/Z4uwsWLIhVq1bFihUr4oknnoh33303zjrrrNi9e3cxHkaSZsyYETt37ux0ufzyy2PChAlx4okn9jjvnDlzOs33yCOPlGip0/ftb3+70//tH//xH/c4/S233BK33XZb3HHHHbFx48ZoaGiIz372s/HOO++UaInT9OKLL8aHH34Yf/7nfx7PP/98fP/7348777wzvvnNbx5wXuvHwN1///2xYMGC+Na3vhWbNm2Kk08+Oc4444zYtm1bl9Nv3bo1Pve5z8XJJ58cmzZtim9+85vx9a9/PVauXFniJU/P+vXr46qrroqnnnoq1qxZEx988EHMmjUr3nvvvQPOu3nz5k7rwtFHH12CJU7fJz7xiU7/r88++2y301o3imvjxo2dnos1a9ZERMS5557b43zWjcJ477334lOf+lTccccdXf6+P/tIGzZsiPPPPz8uvPDC+Kd/+qe48MIL47zzzouf//znfVu4LHHLly/P6urq9rv+kUceyQ466KBsx44dHdf9+Mc/zmpra7OWlpYub+vtt9/OhgwZkq1YsaLjuh07dmQHHXRQ9rd/+7cFX/Zq0d7eno0aNSr79re/3eN0F198cfb5z3++NAtVZcaPH599//vf7/X0H374YdbQ0JB997vf7bjuX//1X7O6urrszjvvLMISVrdbbrklmzhxYo/TWD8K49//+3+fXXHFFZ2uO/bYY7Mbbrihy+mvv/767Nhjj+103Ve/+tVs2rRpRVvGarVr164sIrL169d3O83atWuziMjeeuut0i1YlVi8eHH2qU99qtfTWzdK6xvf+EY2adKk7MMPP+zy99aN4omIbNWqVR0/93cf6bzzzsvmzJnT6brZs2dnF1xwQZ+WJ9mRuwPZsGFDTJkyJcaMGdNx3ezZs6OtrS2eeeaZLud55pln4v33349Zs2Z1XDdmzJiYMmVKPPnkk0Vf5lQ99NBD8cYbb8Qll1xywGnXrVsXo0aNimOOOSbmzZsXu3btKv4CVombb745Dj/88Ph3/+7fxY033tjjYYBbt26N5ubmTutCbW1tnHLKKdaFImhpaYnDDjvsgNNZPwamvb09nnnmmU6v64iIWbNmdfu63rBhw37Tz549O55++ul4//33i7as1ailpSUiolfrwgknnBCNjY1x+umnx9q1a4u9aFVjy5YtMWbMmJg4cWJccMEF8fLLL3c7rXWjdNrb2+O+++6LSy+9NGpqanqc1rpRfP3dR+punenrflXVxl1zc3OMHj2603UjR46MoUOHRnNzc7fzDB06NEaOHNnp+tGjR3c7Dwe2bNmymD17dowdO7bH6c4444z40Y9+FI899lh873vfi40bN8Zpp50WbW1tJVrSdH3jG9+IFStWxNq1a2P+/Plx++23x5VXXtnt9Hte7/uuQ9aFwvuXf/mX+NM//dO44oorepzO+jFwb7zxRuzevbtPr+uu3ktGjx4dH3zwQbzxxhtFW9Zqk2VZLFy4MD796U/HlClTup2usbEx7rrrrli5cmU88MADMXny5Dj99NPj8ccfL+HSpumkk06Ke++9N372s5/Ff/tv/y2am5tjxowZ8eabb3Y5vXWjdB588MF4++23e/yQ3LpROv3dR+punenrftXgPk1dZk1NTbFkyZIep9m4ceMBv7e1R1efbmRZdsBPPQoxT4r68/y89tpr8bOf/Sz++q//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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "cr.plot(width=(20,20),\n", " basis='xy',\n", " colors=colormap,\n", " origin=(0.,0.,440),\n", - " color_by='material',\n", - " pixels=(800,800))" + " #color_by='material',\n", + " pixels=(2000,2000))" ] }, { @@ -853,361 +1166,20 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": null, "id": "ff53e9bb", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "OrderedDict([(118,\n", - " Cell\n", - " \tID =\t118\n", - " \tName =\tcontrol_rod\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t-366\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (119,\n", - " Cell\n", - " \tID =\t119\n", - " \tName =\tcr_fuel_inner\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(366 -272)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (120,\n", - " Cell\n", - " \tID =\t120\n", - " \tName =\tcr_moderator\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(272 286 -287 288 -289)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (121,\n", - " Cell\n", - " \tID =\t121\n", - " \tName =\tcr_moderator_slab_u\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-280 289 -287 286)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (122,\n", - " Cell\n", - " \tID =\t122\n", - " \tName =\tcr_moderator_slab_l\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(277 -286 -289 288)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (123,\n", - " Cell\n", - " \tID =\t123\n", - " \tName =\tcr_moderator_slab_b\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(279 -288 -287 286)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (124,\n", - " Cell\n", - " \tID =\t124\n", - " \tName =\tcr_moderator_slab_r\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-278 287 -289 288)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (125,\n", - " Cell\n", - " \tID =\t125\n", - " \tName =\tcr_moderator_quarter_u\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-283 -286 289)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (126,\n", - " Cell\n", - " \tID =\t126\n", - " \tName =\tcr_moderator_quarter_l\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-284 287 -288)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (127,\n", - " Cell\n", - " \tID =\t127\n", - " \tName =\tcr_moderator_quarter_b\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-282 -286 -288)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (128,\n", - " Cell\n", - " \tID =\t128\n", - " \tName =\tcr_moderator_quarter_r\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-285 287 289)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (129,\n", - " Cell\n", - " \tID =\t129\n", - " \tName =\tcr_moderator_ul\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-290 291 -292 293 294 -295 ~((296 -302) | (297 -303) | (298 -304) | (299 -305) | (300 -306) | (301 -307)) -276 280)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (130,\n", - " Cell\n", - " \tID =\t130\n", - " \tName =\tcr_moderator_br\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-308 309 -310 311 312 -313 ~((314 -320) | (315 -321) | (316 -322) | (317 -323) | (318 -324) | (319 -325)) 275 -279)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (131,\n", - " Cell\n", - " \tID =\t131\n", - " \tName =\tcr_moderator_ru\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-326 327 -328 -329 330 331 ~((332 -338) | (333 -339) | (334 -340) | (335 -341) | (336 -342) | (337 -343)) 273 -277)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (132,\n", - " Cell\n", - " \tID =\t132\n", - " \tName =\tcr_moderator_lb\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-344 345 -346 -347 348 349 ~((350 -356) | (351 -357) | (352 -358) | (353 -359) | (354 -360) | (355 -361)) -274 278)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (133,\n", - " Cell\n", - " \tID =\t133\n", - " \tName =\tcr_moderator_ul_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-295 283 -280 -286 289)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (134,\n", - " Cell\n", - " \tID =\t134\n", - " \tName =\tcr_moderator_br_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(311 284 279 287 -288)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (135,\n", - " Cell\n", - " \tID =\t135\n", - " \tName =\tcr_moderator_ru_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-326 327 -328 -329 330 331 ~((332 -338) | (333 -339) | (334 -340) | (335 -341) | (336 -342) | (337 -343)) 282 277 -286 -288)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (136,\n", - " Cell\n", - " \tID =\t136\n", - " \tName =\tcr_moderator_lb_fill\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-344 345 -346 -347 348 349 ~((350 -356) | (351 -357) | (352 -358) | (353 -359) | (354 -360) | (355 -361)) 285 -278 287 289)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (137,\n", - " Cell\n", - " \tID =\t137\n", - " \tName =\tcr_moderator_ul_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-362 275 -279)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (138,\n", - " Cell\n", - " \tID =\t138\n", - " \tName =\tcr_moderator_br_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-363 -276 280)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (139,\n", - " Cell\n", - " \tID =\t139\n", - " \tName =\tcr_moderator_ru_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-364 273 -277)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (140,\n", - " Cell\n", - " \tID =\t140\n", - " \tName =\tcr_moderator_lb_t\n", - " \tFill =\tMaterial 2\n", - " \tRegion =\t(-365 -274 278)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (141,\n", - " Cell\n", - " \tID =\t141\n", - " \tName =\tcr_fuel_outer_1\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(288 -289 287 -274 365 ~(-344 345 -346 -347 348 349 ~((350 -356) | (351 -357) | (352 -358) | (353 -359) | (354 -360) | (355 -361))) 285)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (142,\n", - " Cell\n", - " \tID =\t142\n", - " \tName =\tcr_fuel_outer_2\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(285 287 289 ~(-344 345 -346 -347 348 349 ~((350 -356) | (351 -357) | (352 -358) | (353 -359) | (354 -360) | (355 -361))) 363 -274 -276)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (143,\n", - " Cell\n", - " \tID =\t143\n", - " \tName =\tcr_fuel_outer_3\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(286 -287 289 -276 363 ~(-290 291 -292 293 294 -295 ~((296 -302) | (297 -303) | (298 -304) | (299 -305) | (300 -306) | (301 -307))) 283)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (144,\n", - " Cell\n", - " \tID =\t144\n", - " \tName =\tcr_fuel_outer_4\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(283 -286 289 ~(-290 291 -292 293 294 -295 ~((296 -302) | (297 -303) | (298 -304) | (299 -305) | (300 -306) | (301 -307))) 364 273 -276)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (145,\n", - " Cell\n", - " \tID =\t145\n", - " \tName =\tcr_fuel_outer_5\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(288 -289 -286 273 364 ~(-326 327 -328 -329 330 331 ~((332 -338) | (333 -339) | (334 -340) | (335 -341) | (336 -342) | (337 -343))) 282)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (146,\n", - " Cell\n", - " \tID =\t146\n", - " \tName =\tcr_fuel_outer_6\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(282 -286 -288 ~(-326 327 -328 -329 330 331 ~((332 -338) | (333 -339) | (334 -340) | (335 -341) | (336 -342) | (337 -343))) 362 273 275)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (147,\n", - " Cell\n", - " \tID =\t147\n", - " \tName =\tcr_fuel_outer_7\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(286 -287 -288 275 362 ~(-308 309 -310 311 312 -313 ~((314 -320) | (315 -321) | (316 -322) | (317 -323) | (318 -324) | (319 -325))) 284)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone),\n", - " (148,\n", - " Cell\n", - " \tID =\t148\n", - " \tName =\tcr_fuel_outer_8\n", - " \tFill =\tMaterial 1\n", - " \tRegion =\t(284 287 -288 ~(-308 309 -310 311 312 -313 ~((314 -320) | (315 -321) | (316 -322) | (317 -323) | (318 -324) | (319 -325))) 365 -274 275)\n", - " \tRotation =\tNone\n", - " \tTemperature =\tNone\n", - " \tTranslation =\tNone\n", - " \tVolume =\tNone)])" - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "cr.cells" ] }, { "cell_type": "code", - "execution_count": 10, + "execution_count": null, "id": "0e965d29", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAA3cAAANRCAYAAABAxkU9AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/NK7nSAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA5e0lEQVR4nO3de3DV5Z348U/kEtFCRCIkqQhILVax1kKXy1YRWbmoWLX10s4qTNUpVVRAxkovCzijqGPVaW21tjTVtS12F7F0tBWogLWiRYpdtcpiRUBMhoXVRNEmiN/fH/2RNZIEAknOyZPXa+bMeL7n+Z7znJx88bzznEtBlmVZAAAA0K4dlOsJAAAAcODEHQAAQALEHQAAQALEHQAAQALEHQAAQALEHQAAQALEHQAAQALEHQAAQALEHQAAQALEHQAAQAJaNe6eeOKJmDhxYpSVlUVBQUE8/PDD9S7PsizmzJkTZWVl0a1btzj11FPjxRdf3Ov1Lly4MI477rgoLCyM4447LhYtWtRK9wAAAKB9aNW427FjR5x44olx1113NXj5rbfeGrfffnvcddddsXr16igpKYnTTz893n777Uavc9WqVXHhhRfGxRdfHH/5y1/i4osvjgsuuCCeeeaZ1robAAAAea8gy7KsTW6ooCAWLVoU55xzTkT8Y9WurKwspk2bFt/4xjciIqKmpib69OkTt9xyS3zta19r8HouvPDCqK6ujt/+9rd128aPHx89e/aMX/7yl61+PwAAAPJR51zd8IYNG6KysjLGjh1bt62wsDBGjRoVTz31VKNxt2rVqpg+fXq9bePGjYs777yz0duqqamJmpqauvMffPBB/O///m/06tUrCgoKDuyOAAAANCHLsnj77bejrKwsDjqo9V48mbO4q6ysjIiIPn361Nvep0+f2LhxY5P7NbTP7utryLx582Lu3LkHMFsAAIADs3nz5jjyyCNb7fpzFne7fXTlLMuyva6mNXefWbNmxYwZM+rOV1VVxVFHHRWbN2+OHj167MesAQAA9k11dXX07ds3unfv3qq3k7O4KykpiYh/rMSVlpbWbd+6deseK3Mf3e+jq3R726ewsDAKCwv32N6jRw9xBwAAtInWfktYzr7nbsCAAVFSUhJLly6t21ZbWxsrV66MkSNHNrrfiBEj6u0TEbFkyZIm9wEAAEhdq67cvfPOO/HKK6/Und+wYUM899xzcfjhh8dRRx0V06ZNi5tuuimOOeaYOOaYY+Kmm26KQw45JL7yla/U7XPJJZfExz/+8Zg3b15ERFxzzTVxyimnxC233BJf+MIX4te//nUsW7Ysnnzyyda8KwAAAHmtVePu2WefjdGjR9ed3/2+t0mTJsXPfvazuO666+K9996LK664It58880YNmxYLFmypN5rUTdt2lTvE2VGjhwZCxYsiG9/+9vxne98JwYOHBgPPvhgDBs2rDXvCgAAQF5rs++5yyfV1dVRVFQUVVVV3nMHAAC0qrbqj5y95w4AAICWI+4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAAS0DnXE4B8Nbdgbq6n0KpmZ7NzPQUAAFpQzlfu+vfvHwUFBXucrrzyygbHr1ixosHxL7/8chvPnJSlHnYAAKQn5yt3q1evjl27dtWdf+GFF+L000+P888/v8n91q1bFz169Kg7f8QRR7TaHCFFcwvmWr0DAEhIzuPuo1F28803x8CBA2PUqFFN7te7d+847LDD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iVFQUBCLFy/e47KampqoqampO19dXR19+/aNqqqq6NGjxwHPGwAAoDHV1dVRVFTU6v2RNyt3V111VSxevDiWL1/e7LCLiBg+fHisX7++wcsKCwujR48e9U4AAAApyfkHqmRZFldddVUsWrQoVqxYEQMGDNiv61m7dm2Ulpa28OwAAADah5zH3ZVXXhm/+MUv4te//nV07949KisrIyKiqKgounXrFhERs2bNii1btsT9998fERF33nln9O/fP44//viora2NBx54IBYuXBgLFy7M2f0AAADIpZzH3d133x0REaeeemq97eXl5TF58uSIiKioqIhNmzbVXVZbWxszZ86MLVu2RLdu3eL444+PRx55JM4444y2mjYAAEBeyasPVGkrbfWGRgAAgA73gSoAAADsP3EHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQAHEHAACQgLyIux/+8IcxYMCAOPjgg2PIkCHxhz/8ocnxK1eujCFDhsTBBx8cRx99dNxzzz1tNFMAAID8lPO4e/DBB2PatGnxrW99K9auXRsnn3xyTJgwITZt2tTg+A0bNsQZZ5wRJ598cqxduza++c1vxtVXXx0LFy5s45kDAADkj4Isy7JcTmDYsGHx2c9+Nu6+++66bZ/61KfinHPOiXnz5u0x/hvf+EYsXrw4XnrppbptU6ZMib/85S+xatWqfbrN6urqKCoqiqqqqujRo8eB3wkAAIBGtFV/5HTlrra2NtasWRNjx46tt33s2LHx1FNPNbjPqlWr9hg/bty4ePbZZ2Pnzp0N7lNTUxPV1dX1TgAAACnJadxt27Ytdu3aFX369Km3vU+fPlFZWdngPpWVlQ2Of//992Pbtm0N7jNv3rwoKiqqO/Xt27dl7gAAAECeyPl77iIiCgoK6p3PsmyPbXsb39D23WbNmhVVVVV1p82bNx/gjAEAAPJL51zeeHFxcXTq1GmPVbqtW7fusTq3W0lJSYPjO3fuHL169Wpwn8LCwigsLGyZSQMAAOShnK7cde3aNYYMGRJLly6tt33p0qUxcuTIBvcZMWLEHuOXLFkSQ4cOjS5durTaXAEAAPJZzl+WOWPGjPjJT34SP/3pT+Oll16K6dOnx6ZNm2LKlCkR8Y+XVF5yySV146dMmRIbN26MGTNmxEsvvRQ//elPY/78+TFz5sxc3QUAAICcy+nLMiMiLrzwwti+fXvccMMNUVFREYMHD45HH300+vXrFxERFRUV9b7zbsCAAfHoo4/G9OnT4wc/+EGUlZXF9773vfjiF7+Yq7sAAACQczn/nrtc8D13AABAW+kQ33MHAABAyxB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACchZ3L322mtx6aWXxoABA6Jbt24xcODAmD17dtTW1ja53+TJk6OgoKDeafjw4W00awAAgPzUOVc3/PLLL8cHH3wQP/rRj+ITn/hEvPDCC3H55ZfHjh074rbbbmty3/Hjx0d5eXnd+a5du7b2dAEAAPJazuJu/PjxMX78+LrzRx99dKxbty7uvvvuvcZdYWFhlJSUtPYUAQAA2o28es9dVVVVHH744Xsdt2LFiujdu3d88pOfjMsvvzy2bt3a5Piampqorq6udwIAAEhJ3sTd3/72t/j+978fU6ZMaXLchAkT4uc//3k8/vjj8d3vfjdWr14dp512WtTU1DS6z7x586KoqKju1Ldv35aePgAAQE4VZFmWteQVzpkzJ+bOndvkmNWrV8fQoUPrzr/xxhsxatSoGDVqVPzkJz9p1u1VVFREv379YsGCBXHeeec1OKampqZe/FVXV0ffvn2jqqoqevTo0azbAwAAaI7q6uooKipq9f5o8ffcTZ06NS666KImx/Tv37/uv994440YPXp0jBgxIu69995m315paWn069cv1q9f3+iYwsLCKCwsbPZ1AwAAtBctHnfFxcVRXFy8T2O3bNkSo0ePjiFDhkR5eXkcdFDzXyW6ffv22Lx5c5SWljZ7XwAAgFTk7D13b7zxRpx66qnRt2/fuO222+J//ud/orKyMiorK+uNO/bYY2PRokUREfHOO+/EzJkzY9WqVfHaa6/FihUrYuLEiVFcXBznnntuLu4GAABAXsjZVyEsWbIkXnnllXjllVfiyCOPrHfZh98GuG7duqiqqoqIiE6dOsXzzz8f999/f7z11ltRWloao0ePjgcffDC6d+/epvMHAADIJy3+gSrtQVu9oREAAKCt+iNvvgoBAACA/SfuAAAAEiDuAAAAEiDu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3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACRA3AEAACSgVePuxhtvjJEjR8YhhxwShx12WINjNm3aFBMnToxDDz00iouL4+qrr47a2tomr7empiauuuqqKC4ujkMPPTTOPvvseP3111vhHgAAALQPrRp3tbW1cf7558fXv/71Bi/ftWtXnHnmmbFjx4548sknY8GCBbFw4cK49tprm7zeadOmxaJFi2LBggXx5JNPxjvvvBNnnXVW7Nq1qzXuBgAAQN4ryLIsa+0b+dnPfhbTpk2Lt956q9723/72t3HWWWfF5s2bo6ysLCIiFixYEJMnT46tW7dGjx499riuqqqqOOKII+Lf//3f48ILL4yIiDfeeCP69u0bjz76aIwbN26v86muro6ioqKoqqpq8DYAAABaSlv1R+dWu+Z9sGrVqhg8eHBd2EVEjBs3LmpqamLNmjUxevToPfZZs2ZN7Ny5M8aOHVu3raysLAYPHhxPPfVUg3FXU1MTNTU1deerqqoi4h8/ZAAAgNa0uztae10tp3FXWVkZffr0qbetZ8+e0bVr16isrGx0n65du0bPnj3rbe/Tp0+j+8ybNy/mzp27x/a+ffvu58wBAACaZ/v27VFUVNRq19/suJszZ06DofRhq1evjqFDh+7T9RUUFOyxLcuyBrc3pal9Zs2aFTNmzKg7/9Zbb0W/fv1i06ZNrfrDZd9UV1dH3759Y/PmzV4mmwc8HvnF45FfPB75xeORXzwe+cXjkV+qqqriqKOOisMPP7xVb6fZcTd16tS46KKLmhzTv3//fbqukpKSeOaZZ+pte/PNN2Pnzp17rOh9eJ/a2tp48803663ebd26NUaOHNngPoWFhVFYWLjH9qKiIr/seaRHjx4ejzzi8cgvHo/84vHILx6P/OLxyC8ej/xy0EGt+010zY674uLiKC4ubpEbHzFiRNx4441RUVERpaWlERGxZMmSKCwsjCFDhjS4z5AhQ6JLly6xdOnSuOCCCyIioqKiIl544YW49dZbW2ReAAAA7U2rpuOmTZviueeei02bNsWuXbviueeei+eeey7eeeediIgYO3ZsHHfccXHxxRfH2rVr4/e//33MnDkzLr/88rq/MGzZsiWOPfbY+NOf/hQR/1htu/TSS+Paa6+N3//+97F27dr413/91zjhhBPiX/7lX1rz7gAAAOStVv1AlX/7t3+L++67r+78SSedFBERy5cvj1NPPTU6deoUjzzySFxxxRXxz//8z9GtW7f4yle+ErfddlvdPjt37ox169bFu+++W7ftjjvuiM6dO8cFF1wQ7733XowZMyZ+9rOfRadOnfZpXoWFhTF79uwGX6pJ2/N45BePR37xeOQXj0d+8XjkF49HfvF45Je2ejza5HvuAAAAaF2t+44+AAAA2oS4AwAASIC4AwAASIC4AwAASECycXfjjTfGyJEj45BDDonDDjuswTGbNm2KiRMnxqGHHhrFxcVx9dVXR21tbZPXW1NTE1dddVUUFxfHoYceGmeffXa8/vrrrXAP0rVixYooKCho8LR69epG95s8efIe44cPH96GM09X//799/jZXn/99U3uk2VZzJkzJ8rKyqJbt25x6qmnxosvvthGM07Xa6+9FpdeemkMGDAgunXrFgMHDozZs2fv9d8mx0fL+eEPfxgDBgyIgw8+OIYMGRJ/+MMfmhy/cuXKGDJkSBx88MFx9NFHxz333NNGM03bvHnz4nOf+1x07949evfuHeecc06sW7euyX0a+//Lyy+/3EazTtecOXP2+LmWlJQ0uY9jo/U09P/tgoKCuPLKKxsc79hoWU888URMnDgxysrKoqCgIB5++OF6l+/vc6SFCxfGcccdF4WFhXHcccfFokWLmj23ZOOutrY2zj///Pj617/e4OW7du2KM888M3bs2BFPPvlkLFiwIBYuXBjXXnttk9c7bdq0WLRoUSxYsCCefPLJeOedd+Kss86KXbt2tcbdSNLIkSOjoqKi3umyyy6L/v37x9ChQ5vcd/z48fX2e/TRR9to1um74YYb6v1sv/3tbzc5/tZbb43bb7897rrrrli9enWUlJTE6aefHm+//XYbzThNL7/8cnzwwQfxox/9KF588cW444474p577olvfvObe93X8XHgHnzwwZg2bVp861vfirVr18bJJ58cEyZMiE2bNjU4fsOGDXHGGWfEySefHGvXro1vfvObcfXVV8fChQvbeObpWblyZVx55ZXx9NNPx9KlS+P999+PsWPHxo4dO/a677p16+odC8ccc0wbzDh9xx9/fL2f6/PPP9/oWMdG61q9enW9x2Lp0qUREXH++ec3uZ9jo2Xs2LEjTjzxxLjrrrsavHx/niOtWrUqLrzwwrj44ovjL3/5S1x88cVxwQUXxDPPPNO8yWWJKy8vz4qKivbY/uijj2YHHXRQtmXLlrptv/zlL7PCwsKsqqqqwet66623si5dumQLFiyo27Zly5bsoIMOyn73u9+1+Nw7itra2qx3797ZDTfc0OS4SZMmZV/4whfaZlIdTL9+/bI77rhjn8d/8MEHWUlJSXbzzTfXbfv73/+eFRUVZffcc08rzLBju/XWW7MBAwY0Ocbx0TL+6Z/+KZsyZUq9bccee2x2/fXXNzj+uuuuy4499th62772ta9lw4cPb7U5dlRbt27NIiJbuXJlo2OWL1+eRUT25ptvtt3EOojZs2dnJ5544j6Pd2y0rWuuuSYbOHBg9sEHHzR4uWOj9UREtmjRorrz+/sc6YILLsjGjx9fb9u4ceOyiy66qFnzSXblbm9WrVoVgwcPjrKysrpt48aNi5qamlizZk2D+6xZsyZ27twZY8eOrdtWVlYWgwcPjqeeeqrV55yqxYsXx7Zt22Ly5Ml7HbtixYro3bt3fPKTn4zLL788tm7d2voT7CBuueWW6NWrV3zmM5+JG2+8scmXAW7YsCEqKyvrHQuFhYUxatQox0IrqKqqisMPP3yv4xwfB6a2tjbWrFlT7/c6ImLs2LGN/l6vWrVqj/Hjxo2LZ599Nnbu3Nlqc+2IqqqqIiL26Vg46aSTorS0NMaMGRPLly9v7al1GOvXr4+ysrIYMGBAXHTRRfHqq682Otax0XZqa2vjgQceiK9+9atRUFDQ5FjHRuvb3+dIjR0zzX1e1WHjrrKyMvr06VNvW8+ePaNr165RWVnZ6D5du3aNnj171tvep0+fRvdh7+bPnx/jxo2Lvn37NjluwoQJ8fOf/zwef/zx+O53vxurV6+O0047LWpqatpopum65pprYsGCBbF8+fKYOnVq3HnnnXHFFVc0On737/tHjyHHQsv729/+Ft///vdjypQpTY5zfBy4bdu2xa5du5r1e93Q/0v69OkT77//fmzbtq3V5trRZFkWM2bMiM9//vMxePDgRseVlpbGvffeGwsXLoyHHnooBg0aFGPGjIknnniiDWebpmHDhsX9998fjz32WPz4xz+OysrKGDlyZGzfvr3B8Y6NtvPwww/HW2+91eQfyR0bbWd/nyM1dsw093lV52aNzrE5c+bE3LlzmxyzevXqvb5va7eG/rqRZdle/+rREvukaH8en9dffz0ee+yx+NWvfrXX67/wwgvr/nvw4MExdOjQ6NevXzzyyCNx3nnn7f/EE9Wcx2P69Ol12z796U9Hz54940tf+lLdal5jPvp771ho3P4cH2+88UaMHz8+zj///Ljsssua3Nfx0XKa+3vd0PiGtrP/pk6dGv/1X/8VTz75ZJPjBg0aFIMGDao7P2LEiNi8eXPcdtttccopp7T2NJM2YcKEuv8+4YQTYsSIETFw4MC47777YsaMGQ3u49hoG/Pnz48JEybUezXaRzk22t7+PEdqiedV7Srupk6dGhdddFGTY/r3779P11VSUrLHGxTffPPN2Llz5x7V/OF9amtr480336y3erd169YYOXLkPt1uyvbn8SkvL49evXrF2Wef3ezbKy0tjX79+sX69eubvW9HcCDHy+5PWXzllVcajLvdn5BWWVkZpaWlddu3bt3a6PHT0TX38XjjjTdi9OjRMWLEiLj33nubfXuOj+YrLi6OTp067fFX0qZ+r0tKShoc37lz5yb/MMK+u+qqq2Lx4sXxxBNPxJFHHtns/YcPHx4PPPBAK8ysYzv00EPjhBNOaPTfGMdG29i4cWMsW7YsHnrooWbv69hoHfv7HKmxY6a5z6vaVdwVFxdHcXFxi1zXiBEj4sYbb4yKioq6H/ySJUuisLAwhgwZ0uA+Q4YMiS5dusTSpUvjggsuiIiIioqKeOGFF+LWW29tkXm1Z819fLIsi/Ly8rjkkkuiS5cuzb697du3x+bNm+sdOPyfAzle1q5dGxHR6M92wIABUVJSEkuXLo2TTjopIv7xmv+VK1fGLbfcsn8TTlxzHo8tW7bE6NGjY8iQIVFeXh4HHdT8V9A7Ppqva9euMWTIkFi6dGmce+65dduXLl0aX/jCFxrcZ8SIEfGb3/ym3rYlS5bE0KFD9+vfNf5PlmVx1VVXxaJFi2LFihUxYMCA/bqetWvXOg5aQU1NTbz00ktx8sknN3i5Y6NtlJeXR+/evePMM89s9r6Ojdaxv8+RRowYEUuXLq33aqolS5Y0fwGpWR+/0o5s3LgxW7t2bTZ37tzsYx/7WLZ27dps7dq12dtvv51lWZa9//772eDBg7MxY8Zkf/7zn7Nly5ZlRx55ZDZ16tS663j99dezQYMGZc8880zdtilTpmRHHnlktmzZsuzPf/5zdtppp2Unnnhi9v7777f5fWzvli1blkVE9te//rXBywcNGpQ99NBDWZZl2dtvv51de+212VNPPZVt2LAhW758eTZixIjs4x//eFZdXd2W007OU089ld1+++3Z2rVrs1dffTV78MEHs7Kysuzss8+uN+7Dj0eWZdnNN9+cFRUVZQ899FD2/PPPZ1/+8pez0tJSj8cB2rJlS/aJT3wiO+2007LXX389q6ioqDt9mOOjdSxYsCDr0qVLNn/+/Oyvf/1rNm3atOzQQw/NXnvttSzLsuz666/PLr744rrxr776anbIIYdk06dPz/76179m8+fPz7p06ZL953/+Z67uQjK+/vWvZ0VFRdmKFSvqHQfvvvtu3ZiPPh533HFHtmjRouy///u/sxdeeCG7/vrrs4jIFi5cmIu7kJRrr702W7FiRfbqq69mTz/9dHbWWWdl3bt3d2zk0K5du7Kjjjoq+8Y3vrHHZY6N1vX222/XtUVE1D2P2rhxY5Zl+/Yc6eKLL673Scx//OMfs06dOmU333xz9tJLL2U333xz1rlz5+zpp59u1tySjbtJkyZlEbHHafny5XVjNm7cmJ155plZt27dssMPPzybOnVq9ve//73u8g0bNuyxz3vvvZdNnTo1O/zww7Nu3bplZ511VrZp06Y2vGfp+PKXv5yNHDmy0csjIisvL8+yLMvefffdbOzYsdkRRxyRdenSJTvqqKOySZMm+dm3gDVr1mTDhg3LioqKsoMPPjgbNGhQNnv27GzHjh31xn348ciyf3zU7+zZs7OSkpKssLAwO+WUU7Lnn3++jWefnvLy8gb/7fro3+IcH63nBz/4QdavX7+sa9eu2Wc/+9l6H70/adKkbNSoUfXGr1ixIjvppJOyrl27Zv3798/uvvvuNp5xmho7Dj7879BHH49bbrklGzhwYHbwwQdnPXv2zD7/+c9njzzySNtPPkEXXnhhVlpamnXp0iUrKyvLzjvvvOzFF1+su9yx0fYee+yxLCKydevW7XGZY6N17f5qiY+eJk2alGXZvj1HGjVqVN343f7jP/4jGzRoUNalS5fs2GOP3a/4Lsiy///uVgAAANqtDvtVCAAAACkRdwAAAAkQdwAAAAkQdwAAAAkQdwAAAAkQdwAAAAkQdwAAAAkQdwAAAAkQdwAAAAkQdwAAAAkQdwAAAAkQdwAAAAn4f8c73UiuG3PyAAAAAElFTkSuQmCC\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "c1 = cr.cells[129]\n", "c2 = cr.cells[130]\n", @@ -1229,22 +1201,10 @@ }, { "cell_type": "code", - "execution_count": 258, + "execution_count": null, "id": "cd37f04d", "metadata": {}, - "outputs": [ - { - "ename": "KeyError", - "evalue": "250", - "output_type": "error", - "traceback": [ - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[0;31mKeyError\u001b[0m Traceback (most recent call last)", - "Cell \u001b[0;32mIn [258], line 1\u001b[0m\n\u001b[0;32m----> 1\u001b[0m c5 \u001b[38;5;241m=\u001b[39m \u001b[43mcr\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mcells\u001b[49m\u001b[43m[\u001b[49m\u001b[38;5;241;43m250\u001b[39;49m\u001b[43m]\u001b[49m\n\u001b[1;32m 2\u001b[0m c6 \u001b[38;5;241m=\u001b[39m cr\u001b[38;5;241m.\u001b[39mcells[\u001b[38;5;241m251\u001b[39m]\n\u001b[1;32m 3\u001b[0m c7 \u001b[38;5;241m=\u001b[39m cr\u001b[38;5;241m.\u001b[39mcells[\u001b[38;5;241m252\u001b[39m]\n", - "\u001b[0;31mKeyError\u001b[0m: 250" - ] - } - ], + "outputs": [], "source": [ "c5 = cr.cells[250]\n", "c6 = cr.cells[251]\n", @@ -1261,29 +1221,10 @@ }, { "cell_type": "code", - "execution_count": 248, + "execution_count": null, "id": "e7721c7b", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "Cell\n", - "\tID =\t250\n", - "\tName =\tcr_moderator_ul_fill\n", - "\tFill =\tMaterial 2\n", - "\tRegion =\t(-1031 1032 -1033 1034 1035 -1036 ~((1037 -1043) | (1038 -1044) | (1039 -1045) | (1040 -1046) | (1041 -1047) | (1042 -1048)) 1024 -1021 -1027 1030)\n", - "\tRotation =\tNone\n", - "\tTemperature =\tNone\n", - "\tTranslation =\tNone\n", - "\tVolume =\tNone" - ] - }, - "execution_count": 248, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "c5" ] @@ -1298,7 +1239,7 @@ }, { "cell_type": "code", - "execution_count": 89, + "execution_count": null, "id": "6f168514", "metadata": {}, "outputs": [], @@ -1315,6 +1256,7 @@ "lb = openmc.model.hexagonal_prism(origin=(-l2, -l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", "ru = openmc.model.hexagonal_prism(origin=(l2, l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", "gr_sq_neg = openmc.rectangular_prism(7.23646*2, 7.23646*2, corner_radius=0.99) # Graphite square\n", + "elem_bound = openmc.rectangular_prism(7.62*2, 7.62*2) # Pin outer boundary\n", "\n", "ul_t = openmc.ZCylinder(-l1, -l3, r_dt, name='corner_ul_tip')\n", "br_t = openmc.ZCylinder(l1, l3, r_dt, name='corner_br_tip')\n", @@ -1329,236 +1271,25 @@ "c7 = openmc.Cell(fill=fuel, region=-br_t)\n", "c8 = openmc.Cell(fill=fuel, region=-ru_t)\n", "c9 = openmc.Cell(fill=fuel, region=-lb_t)\n", + "c10 = openmc.Cell(fill=moder, region=elem_bound)\n", "\n", - "\n", - "tu = openmc.Universe(cells=[c1, c2, c3, c4, c5, c6, c7, c8, c9])" + "tu = openmc.Universe(cells=[c1, c2, c3, c4, c5, c6, c7, c8, c9, c10])" ] }, { "cell_type": "code", - "execution_count": 95, - "id": "88170730", + "execution_count": null, + "id": "557bcb8f", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "OrderedDict([(1448,\n", - " Surface\n", - " \tID =\t1448\n", - " \tName =\t\n", - " \tType =\ty-plane\n", - " \tBoundary =\ttransmission\n", - " \tCoefficients \n", - " y0 =\t7.665),\n", - " (1449,\n", - " Surface\n", - " \tID =\t1449\n", - " \tName =\t\n", - " \tType =\ty-plane\n", - " \tBoundary =\ttransmission\n", - " \tCoefficients \n", - " y0 =\t5.345),\n", - " (1450,\n", - " Surface\n", - " \tID =\t1450\n", - " \tName =\t\n", - " \tType =\tplane\n", - " \tBoundary =\ttransmission\n", - " \tCoefficients \n", - " a =\t1.7320508075688772\n", - " b =\t1.0\n", - " c =\t0.0\n", - " d =\t-1.3596319535857537),\n", - " (1451,\n", - " Surface\n", - " \tID =\t1451\n", - " \tName =\t\n", - " \tType =\tplane\n", - " \tBoundary =\ttransmission\n", - " \tCoefficients \n", - " a =\t-1.7320508075688772\n", - " b =\t1.0\n", - " c =\t0.0\n", - " d =\t14.369631953585753),\n", - " (1452,\n", - " Surface\n", - " \tID =\t1452\n", - " \tName =\t\n", - " \tType =\tplane\n", - " \tBoundary =\ttransmission\n", - " \tCoefficients \n", - " a =\t1.7320508075688772\n", - " b =\t1.0\n", - " c =\t0.0\n", - " d =\t-5.999631953585754),\n", - " (1453,\n", - " Surface\n", - " \tID =\t1453\n", - " \tName =\t\n", - " \tType =\tplane\n", - " \tBoundary =\ttransmission\n", - " \tCoefficients \n", - " a =\t-1.7320508075688772\n", - " b =\t1.0\n", - " c =\t0.0\n", - " d =\t19.009631953585753),\n", - " (1454,\n", - " Surface\n", - " \tID =\t1454\n", - " \tName =\tx min y min in\n", - " \tType =\tz-cylinder\n", - " \tBoundary =\ttransmission\n", - " \tCoefficients \n", - " x0 =\t-6.445903263805833\n", - " y0 =\t5.525\n", - " r =\t0.18),\n", - " (1460,\n", - " Surface\n", - " \tID =\t1460\n", - " \tName =\tx min y min out\n", - " \tType =\tz-cylinder\n", - " \tBoundary =\ttransmission\n", - " \tCoefficients \n", - " x0 =\t-6.549826312259966\n", - " y0 =\t5.345\n", - " r =\t0.10392304845413264),\n", - " (1455,\n", - " Surface\n", - " \tID =\t1455\n", - " \tName =\tx min y max in\n", - " \tType =\tz-cylinder\n", - " \tBoundary =\ttransmission\n", - " \tCoefficients \n", - " x0 =\t-5.314296736194167\n", - " y0 =\t5.525\n", - " r =\t0.18),\n", - " (1461,\n", - " Surface\n", - " \tID =\t1461\n", - " \tName =\tx min y max out\n", - " \tType =\tz-cylinder\n", - " \tBoundary =\ttransmission\n", - " \tCoefficients \n", - " x0 =\t-5.2103736877400335\n", - " y0 =\t5.345\n", - " r =\t0.10392304845413264),\n", - " (1456,\n", - " Surface\n", - " \tID =\t1456\n", - " \tName =\tx max y min in\n", - " \tType =\tz-cylinder\n", - " \tBoundary =\ttransmission\n", - " \tCoefficients \n", - " x0 =\t-6.445903263805833\n", - " y0 =\t7.484999999999999\n", - " r =\t0.18),\n", - " (1462,\n", - " Surface\n", - " \tID =\t1462\n", - " \tName =\tx max y min out\n", - " \tType =\tz-cylinder\n", - " \tBoundary =\ttransmission\n", - " \tCoefficients \n", - " x0 =\t-6.549826312259966\n", - " y0 =\t7.665\n", - " r =\t0.10392304845413264),\n", - " (1457,\n", - " Surface\n", - " \tID =\t1457\n", - " \tName =\tx max y max in\n", - " \tType =\tz-cylinder\n", - " \tBoundary =\ttransmission\n", - " \tCoefficients \n", - " x0 =\t-5.314296736194167\n", - " y0 =\t7.484999999999999\n", - " r =\t0.18),\n", - " (1463,\n", - " Surface\n", - " \tID =\t1463\n", - " \tName =\tx max y max out\n", - " \tType =\tz-cylinder\n", - " \tBoundary =\ttransmission\n", - " \tCoefficients \n", - " x0 =\t-5.2103736877400335\n", - " y0 =\t7.665\n", - " r =\t0.10392304845413264),\n", - " (1458,\n", - " Surface\n", - " \tID =\t1458\n", - " \tName =\tx min in\n", - " \tType =\tz-cylinder\n", - " \tBoundary =\ttransmission\n", - " \tCoefficients \n", - " x0 =\t-7.011706527611667\n", - " y0 =\t6.505\n", - " r =\t0.18),\n", - " (1464,\n", - " Surface\n", - " \tID =\t1464\n", - " \tName =\tx min out\n", - " \tType =\tz-cylinder\n", - " \tBoundary =\ttransmission\n", - " \tCoefficients \n", - " x0 =\t-7.219552624519931\n", - " y0 =\t6.505\n", - " r =\t0.10392304845413264),\n", - " (1459,\n", - " Surface\n", - " \tID =\t1459\n", - " \tName =\tx max in\n", - " \tType =\tz-cylinder\n", - " \tBoundary =\ttransmission\n", - " \tCoefficients \n", - " x0 =\t-4.748493472388333\n", - " y0 =\t6.505\n", - " r =\t0.18),\n", - " (1465,\n", - " Surface\n", - " \tID =\t1465\n", - " \tName =\tx max out\n", - " \tType =\tz-cylinder\n", - " \tBoundary =\ttransmission\n", - " \tCoefficients \n", - " x0 =\t-4.540647375480068\n", - " y0 =\t6.505\n", - " r =\t0.10392304845413264)])" - ] - }, - "execution_count": 95, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "c1.region.get_surfaces()" - ] + "outputs": [], + "source": [] }, { "cell_type": "code", - "execution_count": 96, + "execution_count": null, "id": "67a1317a", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "Cell\n", - "\tID =\t340\n", - "\tName =\t\n", - "\tFill =\tMaterial 2\n", - "\tRegion =\t(-1448 1449 -1450 1451 1452 -1453 ~((1454 -1460) | (1455 -1461) | (1456 -1462) | (1457 -1463) | (1458 -1464) | (1459 -1465)))\n", - "\tRotation =\tNone\n", - "\tTemperature =\tNone\n", - "\tTranslation =\tNone\n", - "\tVolume =\tNone" - ] - }, - "execution_count": 96, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "ul = openmc.model.hexagonal_prism(origin=(-l1, l2), edge_length=e_d, orientation='x', corner_radius=r_c)\n", "# for x oriented\n", @@ -1573,14 +1304,50 @@ }, { "cell_type": "code", - "execution_count": 229, + "execution_count": null, + "id": "b07e3b36", + "metadata": {}, + "outputs": [], + "source": [ + "c3" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "690e90ee", + "metadata": {}, + "outputs": [], + "source": [ + "(lb_r, lb_l, lb_ur, lb_ul, lb_br, lb_bl,\n", + " lb_cyl_lb_in, lb_cyl_lb_out, \n", + " lb_cyl_lu_in, lb_cyl_lu_out,\n", + " lb_cyl_rb_in, lb_cyl_rb_out,\n", + " lb_cyl_ru_in, lb_cyl_ru_out,\n", + " lb_cyl_b_in, lb_cyl_b_out,\n", + " lb_cyl_u_in, lb_yl_u_out)= list(lb.get_surfaces().values())" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "9ea0eaec", + "metadata": {}, + "outputs": [], + "source": [ + "lb.get_surfaces()" + ] + }, + { + "cell_type": "code", + "execution_count": null, "id": "2f268e09", "metadata": {}, "outputs": [], "source": [ - "t = openmc.Region.from_expression('(-1448 1449 -1450 1451 1452 -1453 ~((1454 -1460) | (1455 -1461) | (1456 -1462) | (1457 -1463) | (1458 -1464) | (1459 -1465)))', c1.region.get_surfaces())\n", - "t = openmc.Region.from_expression('(-1448 1449 -1450 1451 1452 -1453 ((-1454 | 1460) (-1455 | 1461) (-1456 | 1462) (-1457 | 1463) (-1458 | 1464) (-1459 | 1465)))', c1.region.get_surfaces())\n", - "t = openmc.Region.from_expression('(-1448 -1450 -1453)', c1.region.get_surfaces())\n", + "#t = openmc.Region.from_expression('(-1448 1449 -1450 1451 1452 -1453 ~((1454 -1460) | (1455 -1461) | (1456 -1462) | (1457 -1463) | (1458 -1464) | (1459 -1465)))', c1.region.get_surfaces())\n", + "#t = openmc.Region.from_expression('(-1448 1449 -1450 1451 1452 -1453 ((-1454 | 1460) (-1455 | 1461) (-1456 | 1462) (-1457 | 1463) (-1458 | 1464) (-1459 | 1465)))', c1.region.get_surfaces())\n", + "t = openmc.Region.from_expression('(-772 773 -774 -775 776 777 (778 -784))', c3.region.get_surfaces())\n", "\n", "#t = openmc.Region.from_expression('((-1454 | -1455 | -1456 | -1457 | -1458 | -1459) | 1460 1461 1462 1463 1464 1465)', c1.region.get_surfaces())\n", "#t = openmc.Region.from_expression('(-1448 1449 -1450 1451 1452 -1453 (-1454 | -1455 | -1456 | -1457 | -1458 | -1459 | 1460 1461 1462 1463 1464 1465))', c1.region.get_surfaces())\n" @@ -1588,33 +1355,12 @@ }, { "cell_type": "code", - "execution_count": 233, + "execution_count": null, "id": "0e6ee5dc", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 233, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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fhAVFRXxve99Ly644IJ83QUAAIC8y/v33OWD77kDAKA98j137VOH+J47AAAAWoe4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASIC4AwAASEDe4u7VV1+Nyy67LAYOHBjdu3ePI488MmbNmhV1dXXN7jdp0qQoKipqcBo2bFgbzRoAAKAwdc7XDb/00kvx/vvvx49+9KP4xCc+Ec8//3xcccUVsWPHjrj11lub3Xfs2LFRWVlZf75r1665ni4AAEBBy1vcjR07NsaOHVt//ogjjoi1a9fGXXfdtce4Ky4ujrKyslxPEQAAoN0oqPfcVVdXxyGHHLLHccuXL48+ffrE0UcfHVdccUVs3bq12fG1tbVRU1PT4AQAAJCSgom7v/3tb/H9738/Jk+e3Oy4cePGxc9//vN47LHH4rvf/W6sWrUqTj/99KitrW1yn7lz50ZJSUn9qV+/fq09fQAAgLwqyrIsa80rnD17dsyZM6fZMatWrYqhQ4fWn3/99ddj5MiRMXLkyPjJT37SotvbsmVL9O/fP+bPnx/nn39+o2Nqa2sbxF9NTU3069cvZsSM6BbdWnR7AACQL7OyWfmeAvugpqYmSkpKorq6Onr27Jmz22n199xNmTIlJkyY0OyYAQMG1P/366+/HqeddloMHz487rnnnhbfXnl5efTv3z/WrVvX5Jji4uIoLi5u8XUDAAC0F60ed6WlpVFaWrpXYzdv3hynnXZaDBkyJCorK+OAA1r+KtHt27fHpk2bory8vMX7AgAApCJv77l7/fXX49RTT41+/frFrbfeGv/zP/8TVVVVUVVV1WDcMcccEwsXLoyIiLfffjumT58eK1eujFdffTWWL18e48ePj9LS0vjCF76Qj7sBAABQEPL2VQiLFy+Ol19+OV5++eU47LDDGlz24bcBrl27NqqrqyMiolOnTvHcc8/FfffdF2+++WaUl5fHaaedFg888ED06NGjTecPAABQSFr9A1Xagw/e0OgDVQAAaE98oEr71FYfqFIwX4UAAADAvhN3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACRB3AAAACchr3A0YMCCKiooanGbMmNHsPlmWxezZs6OioiK6d+8ep556arzwwgttNGMAAIDClPeVu29/+9uxZcuW+tO3vvWtZsffcsstcdttt8Wdd94Zq1atirKysjjjjDPirbfeaqMZAwAAFJ68x12PHj2irKys/vSxj32sybFZlsUdd9wR3/zmN+P888+PwYMHx7333hvvvPNO/OIXv2jDWQMAABSWvMfdzTffHL17945Pf/rTceONN0ZdXV2TY9evXx9VVVUxevTo+m3FxcUxcuTIePLJJ5vcr7a2NmpqahqcAAAAUtI5nzd+7bXXxmc+85no1atX/OlPf4qZM2fG+vXr4yc/+Umj46uqqiIiom/fvg229+3bNzZs2NDk7cydOzfmzJnTehMHAAAoMK2+cjd79uzdPiTlo6dnnnkmIiKuu+66GDlyZHzqU5+Kyy+/PO6+++6YN29ebN++vdnbKCoqanA+y7Ldtn3YzJkzo7q6uv60adOm/b+jAAAABaTVV+6mTJkSEyZMaHbMgAEDGt0+bNiwiIh4+eWXo3fv3rtdXlZWFhH/WMErLy+v375169bdVvM+rLi4OIqLi/c0dQAAgHar1eOutLQ0SktL92nfNWvWREQ0CLcPGzhwYJSVlcWSJUvixBNPjIiIurq6WLFiRdx88837NmEAAIAE5O0DVVauXBm33357PPvss7F+/fr41a9+FV/96lfjnHPOicMPP7x+3DHHHBMLFy6MiH+8HHPq1Knxne98JxYuXBjPP/98TJo0KQ488MD48pe/nK+7AgAAkHd5+0CV4uLieOCBB2LOnDlRW1sb/fv3jyuuuCJuuOGGBuPWrl0b1dXV9edvuOGGePfdd+PKK6+MN954I0466aRYvHhx9OjRo63vAgAAQMEoyrIsy/ck2lpNTU2UlJTEjJgR3aJbvqcDAAB7ZVY2K99TYB980B/V1dXRs2fPnN1O3r/nDgAAgP0n7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg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vDFGjBgRBx54YBx88MGNjtm4cWOMHz8+DjrooCgtLY1rrrkm6urqmr3e2trauPrqq6O0tDQOOuigOOecc+K1117LwT0AAKA5Ag8KR07jrq6uLi688ML42te+1ujlu3btirPOOit27NgRTzzxRMyfPz8WLFgQ119/fbPXO3Xq1Fi4cGHMnz8/nnjiiXj77bfj7LPPjl27duXibgAAABS8oizLslzfyM9+9rOYOnVqvPnmmw22//a3v42zzz47Nm3aFBUVFRERMX/+/Jg0aVJs3bo1evbsudt1VVdXx6GHHhr//u//HhdffHFERLz++uvRr1+/eOSRR2LMmDF7nE9NTU2UlJTEjJgR3aLb/t9BAIAOblY2K99TgIL1QX9UV1c32jitpXPOrnkvrFy5MgYPHlwfdhERY8aMidra2li9enWcdtppu+2zevXq2LlzZ4wePbp+W0VFRQwePDiefPLJRuOutrY2amtr689XV1f/Y3vU7jYWAICWq6mpyfcUoGB9cHzkel0tr3FXVVUVffv2bbCtV69e0bVr16iqqmpyn65du0avXr0abO/bt2+T+8ydOzfmzNn99eC3x+37OHMAAD7sppKb8j0FKHjbt2+PkpKSnF1/i+Nu9uzZjYbSh61atSqGDh26V9dXVFS027Ysyxrd3pzm9pk5c2ZMmzat/vybb74Z/fv3j40bN+b0h8veqampiX79+sWmTZtyukzN3vF4FBaPR2HxeBQWj0dh8XgUFo9HYamuro7DDz88DjnkkJzeTovjbsqUKTFhwoRmxwwYMGCvrqusrCyefvrpBtveeOON2Llz524reh/ep66uLt54440Gq3dbt26NESNGNLpPcXFxFBcX77a9pKTEP/YC0rNnT49HAfF4FBaPR2HxeBQWj0dh8XgUFo9HYTnggNx+E12L4660tDRKS0tb5caHDx8eN954Y2zZsiXKy8sjImLx4sVRXFwcQ4YMaXSfIUOGRJcuXWLJkiVx0UUXRUTEli1b4vnnn49bbrmlVeYFAADQ3uQ0HTdu3BjPPvtsbNy4MXbt2hXPPvtsPPvss/H2229HRMTo0aPj2GOPjUsuuSTWrFkTv//972P69OlxxRVX1P+FYfPmzXHMMcfEn/70p4j4x2rbZZddFtdff338/ve/jzVr1sS//Mu/xPHHHx+f//znc3l3AAAAClZOP1Dl3/7t3+Lee++tP3/iiSdGRMSyZcvi1FNPjU6dOsXDDz8cV155ZfzzP/9zdO/ePb785S/HrbfeWr/Pzp07Y+3atfHOO+/Ub7v99tujc+fOcdFFF8W7774bo0aNip/97GfRqVOnvZpXcXFxzJo1q9GXatL2PB6FxeNRWDwehcXjUVg8HoXF41FYPB6Fpa0ejzb5njsAAAByK7fv6AMAAKBNiDsAAIAEiDsAAIAEiDsAAIAEJBt3N954Y4wYMSIOPPDAOPjggxsds3Hjxhg/fnwcdNBBUVpaGtdcc03U1dU1e721tbVx9dVXR2lpaRx00EFxzjnnxGuvvZaDe5Cu5cuXR1FRUaOnVatWNbnfpEmTdhs/bNiwNpx5ugYMGLDbz3bGjBnN7pNlWcyePTsqKiqie/fuceqpp8YLL7zQRjNO16uvvhqXXXZZDBw4MLp37x5HHnlkzJo1a4+/mxwfreeHP/xhDBw4MLp16xZDhgyJP/zhD82OX7FiRQwZMiS6desWRxxxRNx9991tNNO0zZ07Nz772c9Gjx49ok+fPnHeeefF2rVrm92nqf+/vPTSS20063TNnj17t59rWVlZs/s4NnKnsf9vFxUVxVVXXdXoeMdG63r88cdj/PjxUVFREUVFRfHQQw81uHxfnyMtWLAgjj322CguLo5jjz02Fi5c2OK5JRt3dXV1ceGFF8bXvva1Ri/ftWtXnHXWWbFjx4544oknYv78+bFgwYK4/vrrm73eqVOnxsKFC2P+/PnxxBNPxNtvvx1nn3127Nq1Kxd3I0kjRoyILVu2NDhdfvnlMWDAgBg6dGiz+44dO7bBfo888kgbzTp93/72txv8bL/1rW81O/6WW26J2267Le68885YtWpVlJWVxRlnnBFvvfVWG804TS+99FK8//778aMf/SheeOGFuP322+Puu++Ob3zjG3vc1/Gx/x544IGYOnVqfPOb34w1a9bEySefHOPGjYuNGzc2On79+vVx5plnxsknnxxr1qyJb3zjG3HNNdfEggUL2njm6VmxYkVcddVV8dRTT8WSJUvivffei9GjR8eOHTv2uO/atWsbHAtHHXVUG8w4fccdd1yDn+tzzz3X5FjHRm6tWrWqwWOxZMmSiIi48MILm93PsdE6duzYESeccELceeedjV6+L8+RVq5cGRdffHFccskl8Ze//CUuueSSuOiii+Lpp59u2eSyxFVWVmYlJSW7bX/kkUeyAw44INu8eXP9tl/+8pdZcXFxVl1d3eh1vfnmm1mXLl2y+fPn12/bvHlzdsABB2S/+93vWn3uHUVdXV3Wp0+f7Nvf/naz4yZOnJide+65bTOpDqZ///7Z7bffvtfj33///aysrCy76aab6rf9/e9/z0pKSrK77747BzPs2G655ZZs4MCBzY5xfLSOf/qnf8omT57cYNsxxxyTzZgxo9HxN9xwQ3bMMcc02PbVr341GzZsWM7m2FFt3bo1i4hsxYoVTY5ZtmxZFhHZG2+80XYT6yBmzZqVnXDCCXs93rHRtq699trsyCOPzN5///1GL3ds5E5EZAsXLqw/v6/PkS666KJs7NixDbaNGTMmmzBhQovmk+zK3Z6sXLkyBg8eHBUVFfXbxowZE7W1tbF69epG91m9enXs3LkzRo8eXb+toqIiBg8eHE8++WTO55yqRYsWxbZt22LSpEl7HLt8+fLo06dPHH300XHFFVfE1q1bcz/BDuLmm2+O3r17x6c//em48cYbm30Z4Pr166OqqqrBsVBcXBwjR450LORAdXV1HHLIIXsc5/jYP3V1dbF69eoG/64jIkaPHt3kv+uVK1fuNn7MmDHxzDPPxM6dO3M2146ouro6ImKvjoUTTzwxysvLY9SoUbFs2bJcT63DWLduXVRUVMTAgQNjwoQJ8corrzQ51rHRdurq6uL++++Pr3zlK1FUVNTsWMdG7u3rc6SmjpmWPq/qsHFXVVUVffv2bbCtV69e0bVr16iqqmpyn65du0avXr0abO/bt2+T+7Bn8+bNizFjxkS/fv2aHTdu3Lj4+c9/Ho899lh897vfjVWrVsXpp58etbW1bTTTdF177bUxf/78WLZsWUyZMiXuuOOOuPLKK5sc/8G/948eQ46F1ve3v/0tvv/978fkyZObHef42H/btm2LXbt2tejfdWP/L+nbt2+89957sW3btpzNtaPJsiymTZsWn/vc52Lw4MFNjisvL4977rknFixYEA8++GAMGjQoRo0aFY8//ngbzjZNJ510Utx3333x6KOPxo9//OOoqqqKESNGxPbt2xsd79hoOw899FC8+eabzf6R3LHRdvb1OVJTx0xLn1d1btHoPJs9e3bMmTOn2TGrVq3a4/u2PtDYXzeyLNvjXz1aY58U7cvj89prr8Wjjz4av/rVr/Z4/RdffHH9fw8ePDiGDh0a/fv3j4cffjjOP//8fZ94olryeFx33XX12z71qU9Fr1694otf/GL9al5TPvrv3rHQtH05Pl5//fUYO3ZsXHjhhXH55Zc3u6/jo/W09N91Y+Mb286+mzJlSvzXf/1XPPHEE82OGzRoUAwaNKj+/PDhw2PTpk1x6623ximnnJLraSZt3Lhx9f99/PHHx/Dhw+PII4+Me++9N6ZNm9boPo6NtjFv3rwYN25cg1ejfZRjo+3ty3Ok1nhe1a7ibsqUKTFhwoRmxwwYMGCvrqusrGy3Nyi+8cYbsXPnzt2q+cP71NXVxRtvvNFg9W7r1q0xYsSIvbrdlO3L41NZWRm9e/eOc845p8W3V15eHv37949169a1eN+OYH+Olw8+ZfHll19uNO4++IS0qqqqKC8vr9++devWJo+fjq6lj8frr78ep512WgwfPjzuueeeFt+e46PlSktLo1OnTrv9lbS5f9dlZWWNju/cuXOzfxhh71199dWxaNGiePzxx+Owww5r8f7Dhg2L+++/Pwcz69gOOuigOP7445v8HePYaBsbNmyIpUuXxoMPPtjifR0bubGvz5GaOmZa+ryqXcVdaWlplJaWtsp1DR8+PG688cbYsmVL/Q9+8eLFUVxcHEOGDGl0nyFDhkSXLl1iyZIlcdFFF0VExJYtW+L555+PW265pVXm1Z619PHJsiwqKyvj0ksvjS5durT49rZv3x6bNm1qcODwf/bneFmzZk1ERJM/24EDB0ZZWVksWbIkTjzxxIj4x2v+V6xYETfffPO+TThxLXk8Nm/eHKeddloMGTIkKisr44ADWv4KesdHy3Xt2jWGDBkSS5YsiS984Qv125csWRLnnntuo/sMHz48fvOb3zTYtnjx4hg6dOg+/V7j/2RZFldffXUsXLgwli9fHgMHDtyn61mzZo3jIAdqa2vjxRdfjJNPPrnRyx0bbaOysjL69OkTZ511Vov3dWzkxr4+Rxo+fHgsWbKkwaupFi9e3PIFpBZ9/Eo7smHDhmzNmjXZnDlzso997GPZmjVrsjVr1mRvvfVWlmVZ9t5772WDBw/ORo0alf35z3/Oli5dmh122GHZlClT6q/jtddeywYNGpQ9/fTT9dsmT56cHXbYYdnSpUuzP//5z9npp5+enXDCCdl7773X5vexvVu6dGkWEdlf//rXRi8fNGhQ9uCDD2ZZlmVvvfVWdv3112dPPvlktn79+mzZsmXZ8OHDs49//ONZTU1NW047OU8++WR22223ZWvWrMleeeWV7IEHHsgqKiqyc845p8G4Dz8eWZZlN910U1ZSUpI9+OCD2XPPPZd96UtfysrLyz0e+2nz5s3ZJz7xiez000/PXnvttWzLli31pw9zfOTG/Pnzsy5dumTz5s3L/vrXv2ZTp07NDjrooOzVV1/NsizLZsyYkV1yySX141955ZXswAMPzK677rrsr3/9azZv3rysS5cu2X/+53/m6y4k42tf+1pWUlKSLV++vMFx8M4779SP+ejjcfvtt2cLFy7M/vu//zt7/vnnsxkzZmQRkS1YsCAfdyEp119/fbZ8+fLslVdeyZ566qns7LPPznr06OHYyKNdu3Zlhx9+ePb1r399t8scG7n11ltv1bdFRNQ/j9qwYUOWZXv3HOmSSy5p8EnMf/zjH7NOnTplN910U/biiy9mN910U9a5c+fsqaeeatHcko27iRMnZhGx22nZsmX1YzZs2JCdddZZWffu3bNDDjkkmzJlSvb3v/+9/vL169fvts+7776bTZkyJTvkkEOy7t27Z2effXa2cePGNrxn6fjSl76UjRgxosnLIyKrrKzMsizL3nnnnWz06NHZoYcemnXp0iU7/PDDs4kTJ/rZt4LVq1dnJ510UlZSUpJ169YtGzRoUDZr1qxsx44dDcZ9+PHIsn981O+sWbOysrKyrLi4ODvllFOy5557ro1nn57KyspGf3d99G9xjo/c+cEPfpD1798/69q1a/aZz3ymwUfvT5w4MRs5cmSD8cuXL89OPPHErGvXrtmAAQOyu+66q41nnKamjoMP/x766ONx8803Z0ceeWTWrVu3rFevXtnnPve57OGHH277ySfo4osvzsrLy7MuXbpkFRUV2fnnn5+98MIL9Zc7Ntreo48+mkVEtnbt2t0uc2zk1gdfLfHR08SJE7Ms27vnSCNHjqwf/4H/+I//yAYNGpR16dIlO+aYY/Ypvouy7P+/uxUAAIB2q8N+FQIAAEBKxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEAC/h+Hgvg1IGi2RgAAAABJRU5ErkJggg==\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ - "tt = openmc.Cell(fill=moder, region=t | gr_sq_neg)\n", + "tt = openmc.Cell(fill=moder, region=t)\n", "ttt = openmc.Universe(cells=[tt])\n", "ttt.plot(width=(20,20),\n", " basis='xy',\n", @@ -1626,40 +1372,160 @@ }, { "cell_type": "code", - "execution_count": 163, + "execution_count": null, "id": "2b22c009", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 163, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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8bhbvXp1XH311fH444/H8uXL45133onp06fH22+/vc9t169fH1u3bu06ve997yvDiAEAAPJnSKUH8NOf/rTb+UWLFsWoUaPiySefjI985CN9bjtq1Kg49NBDSzg6AACA6lDxmbs9tbW1RUTE4Ycfvs91TzzxxGhqaoozzjgjVq5c2et6HR0d0d7e3u0EAACQklzFXZZlMWfOnPjwhz8cEydO7HW9pqamuPvuu2PJkiXxwAMPxIQJE+KMM86IRx55pMf1FyxYEPX19V2nlpaWUu0CAABARRSyLMsqPYhdrr766njooYfi0UcfjaOOOqpf25533nlRKBTiwQcf3Ouyjo6O6Ojo6Drf3t4eLS0t0dbWFiNHjhz0uCmvQqHSIwAAqIz8vHKnP9rb26O+vr7k/ZGbmbtrrrkmHnzwwVi5cmW/wy4iYsqUKfHCCy/0eFldXV2MHDmy2wkAACAlFf9AlSzL4pprromlS5fGqlWrYty4cQO6nnXr1kVTU1ORRwcAAFAdKh53V199dfzt3/5t/MM//EOMGDEiWltbIyKivr4+hg8fHhERN954Y2zZsiXuvffeiIi44447YuzYsXH88cdHZ2dn3HfffbFkyZJYsmRJxfYDAACgkioed9/73vciIuLUU0/ttnzRokUxc+bMiIjYunVrbNq0qeuyzs7OuP7662PLli0xfPjwOP744+Ohhx6Ks88+u1zDBgAAyJVcfaBKuZTrDY2Uhg9UAQBqVe29ck9DzX2gCgAAAAMn7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABIg7gAAABKQi7j7q7/6qxg3blwcdNBBMWnSpPiXf/mXPtdfvXp1TJo0KQ466KA45phj4q677irTSAEAAPKp4nF3//33x+zZs+PrX/96rFu3Lk4++eQ466yzYtOmTT2uv2HDhjj77LPj5JNPjnXr1sXXvva1+NKXvhRLliwp88gBAADyo5BlWVbJAZx00knxoQ99KL73ve91LfvABz4QH//4x2PBggV7rf/Vr341HnzwwXjuuee6ll155ZXxq1/9KtasWbNft9ne3h719fXR1tYWI0eOHPxOUFaFQqVHAABQGZV95c5Alas/Kjpz19nZGU8++WRMnz692/Lp06fHY4891uM2a9as2Wv9GTNmxC9+8YvYsWNHj9t0dHREe3t7txMAAEBKKhp327dvj507d8bo0aO7LR89enS0trb2uE1ra2uP67/zzjuxffv2HrdZsGBB1NfXd51aWlqKswMAAAA5UfH33EVEFPY4zi7Lsr2W7Wv9npbvcuONN0ZbW1vXafPmzYMcMQAAQL4MqeSNNzQ0xIEHHrjXLN22bdv2mp3bpbGxscf1hwwZEkcccUSP29TV1UVdXV1xBg0AAJBDFZ25GzZsWEyaNCmWL1/ebfny5ctj2rRpPW4zderUvdZftmxZTJ48OYYOHVqysQIAAORZxQ/LnDNnTnz/+9+PH/zgB/Hcc8/FtddeG5s2bYorr7wyIt47pPKyyy7rWv/KK6+MjRs3xpw5c+K5556LH/zgB7Fw4cK4/vrrK7ULAAAAFVfRwzIjIi6++OJ47bXX4pvf/GZs3bo1Jk6cGA8//HCMGTMmIiK2bt3a7Tvvxo0bFw8//HBce+218d3vfjeam5vjL/7iL+KTn/xkpXYBAACg4ir+PXeV4HvuqpvvuQMAalXtvXJPQ018zx0AAADFIe4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASIO4AAAASULG4e/nll+Nzn/tcjBs3LoYPHx7jx4+PuXPnRmdnZ5/bzZw5MwqFQrfTlClTyjRqAACAfBpSqRt+/vnn4913342//uu/jj/4gz+IZ555Jq644op4++2347bbbutz2zPPPDMWLVrUdX7YsGGlHi4AAECuVSzuzjzzzDjzzDO7zh9zzDGxfv36+N73vrfPuKurq4vGxsZSDxEAAKBq5Oo9d21tbXH44Yfvc71Vq1bFqFGj4v3vf39cccUVsW3btj7X7+joiPb29m4nAACAlOQm7v793/89/vIv/zKuvPLKPtc766yz4kc/+lH8/Oc/j29/+9uxdu3aOP3006Ojo6PXbRYsWBD19fVdp5aWlmIPHwAAoKIKWZZlxbzCefPmxfz58/tcZ+3atTF58uSu86+++mqccsopccopp8T3v//9ft3e1q1bY8yYMbF48eK44IILelyno6OjW/y1t7dHS0tLtLW1xciRI/t1e1ReoVDpEQAAVEZxX7lTLu3t7VFfX1/y/ij6e+5mzZoVl1xySZ/rjB07tuvfr776apx22mkxderUuPvuu/t9e01NTTFmzJh44YUXel2nrq4u6urq+n3dAAAA1aLocdfQ0BANDQ37te6WLVvitNNOi0mTJsWiRYvigAP6f5Toa6+9Fps3b46mpqZ+bwsAAJCKir3n7tVXX41TTz01Wlpa4rbbbov/+I//iNbW1mhtbe223rHHHhtLly6NiIi33norrr/++lizZk28/PLLsWrVqjjvvPOioaEhPvGJT1RiNwAAAHKhYl+FsGzZsnjxxRfjxRdfjKOOOqrbZbu/DXD9+vXR1tYWEREHHnhgPP3003HvvffGG2+8EU1NTXHaaafF/fffHyNGjCjr+AEAAPKk6B+oUg3K9YZGSsMHqgAAtar2XrmnoVz9kZuvQgAAAGDgxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEACxB0AAEAChlR6AJBX82J+L8vnlnkkAACwb+IO9tBb1O15ucgDACBPxB38t31FXW/rizwAAPLAe+6oefNifr/Dbs/tAQCg0sQdNa1YYTbYQAQAgMFyWCY1qVQh5lBNAAAqxcwdNaVcM2xm8QAAKDczd9SESsSWWTwAAMrJzB3Jq/QsmvfjAQBQDmbuSFbegspMHgAApWTmjuTk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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "tu.plot(width=(20,20),\n", " basis='xy',\n", " colors=colormap,\n", " origin=(0.,0.,440),\n", - " color_by='material',\n", + " #color_by='material',\n", " pixels=(800,800))" ] }, + { + "cell_type": "code", + "execution_count": null, + "id": "4cb184e6", + "metadata": {}, + "outputs": [], + "source": [ + "s1 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=208.28, r2=222.71, name='base_octader')\n", + "s2 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=218.44, r2=215.53, name='smaller_octader')\n", + "s3 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=228.60, r2=193.97, name='smallest_octader')\n", + "oct1 = list((-s1).get_surfaces().values())\n", + "oct2 = list((-s2).get_surfaces().values())\n", + "oct3 = list((-s3).get_surfaces().values())\n", + "octas = (oct1, oct2, oct3)\n", + "oct1_maxy, oct1_miny, oct1_maxx, oct1_minx, oct1_ur, oct1_br, oct1_bl, oct1_ul = octas[0]\n", + "oct2_maxy, oct2_miny, oct2_maxx, oct2_minx, oct2_ur, oct2_br, oct2_bl, oct2_ul = octas[1]\n", + "oct3_maxy, oct3_miny, oct3_maxx, oct3_minx, oct3_ur, oct3_br, oct3_bl, oct3_ul = octas[2]\n", + "\n", + "cr_boundary = openmc.model.rectangular_prism(15.24*2, 15.24*2)\n", + "\n", + "cb_minx, cb_maxx, cb_miny, cb_maxy = list(cr_boundary.get_surfaces().values())\n", + "\n", + "#c1 = openmc.Cell(fill=moder, region=+s3 & -s2)\n", + "c1_ur = openmc.Cell(fill=moder, region=(-oct3_ur & +oct2_ur & -oct2_maxx & -oct2_maxy))\n", + "c1_ul = openmc.Cell(fill=moder, region=(+oct3_ul & -oct2_ul & +oct2_minx & -oct2_maxy))\n", + "c1_bl = openmc.Cell(fill=moder, region=(+oct3_bl & -oct2_bl & +oct2_minx & +oct2_miny))\n", + "c1_br = openmc.Cell(fill=moder, region=(-oct3_br & +oct2_br & -oct2_maxx & +oct2_miny))\n", + "c1 = [c1_ur, c1_ul, c1_bl, c1_br]\n", + "\n", + "#c2 = openmc.Cell(fill=moder, region=-s3)\n", + "c2_r = openmc.Cell(fill=moder, region=(+cb_maxx & +cb_miny & -cb_maxy & -oct3_maxx))\n", + "c2_ur = openmc.Cell(fill=moder, region=(+cb_maxx & +cb_maxy & -oct3_maxx & -oct3_maxy & +oct3_ur))\n", + "c2_u = openmc.Cell(fill=moder, region=(+cb_maxy & +cb_minx & -cb_maxx & -oct3_maxy))\n", + "c2_ul = openmc.Cell(fill=moder, region=(-cb_minx & +cb_maxy & +oct3_minx & -oct3_maxy & -oct3_ul))\n", + "c2_l = openmc.Cell(fill=moder, region=(-cb_minx & +cb_miny & -cb_maxy & +oct3_minx))\n", + "c2_bl = openmc.Cell(fill=moder, region=(-cb_minx & -cb_miny & +oct3_minx & +oct3_miny & -oct3_bl))\n", + "c2_b = openmc.Cell(fill=moder, region=(-cb_miny & +cb_minx & -cb_maxx & +oct3_miny))\n", + "c2_br = openmc.Cell(fill=moder, region=(+cb_maxx & -cb_miny & -oct3_maxx & +oct3_miny & +oct3_br))\n", + "\n", + "\n", + "c2 = [c2_r, c2_ur, c2_u, c2_ul, c2_l, c2_bl, c2_b, c2_br]\n", + "\n", + "#c3 = openmc.Cell(fill=moder, region=-s1 & +s2)\n", + "c3_ur = openmc.Cell(fill=moder, region=(-oct2_ur & +oct1_ur & -oct1_maxx & -oct1_maxy))\n", + "c3_ul = openmc.Cell(fill=moder, region=(+oct2_ul & -oct1_ul & +oct1_minx & -oct1_maxy))\n", + "c3_bl = openmc.Cell(fill=moder, region=(+oct2_bl & -oct1_bl & +oct1_minx & +oct1_miny))\n", + "c3_br = openmc.Cell(fill=moder, region=(-oct2_br & +oct1_br & -oct1_maxx & +oct1_miny))\n", + "c3 = [c3_ur, c3_ul, c3_bl, c3_br]\n", + "\n", + "u = openmc.Universe()\n", + "#u.add_cells(c1)\n", + "#u.add_cells(c2)\n", + "u.add_cells(c3)\n", + "\n", + "u.plot(width=(700,700),\n", + " basis='xy',\n", + " #colors={c1: 'red', c2:'blue', c3:'green'},\n", + " origin=(0.,0.,200),\n", + " #color_by='material',\n", + " pixels=(1000,1000))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ce941880", + "metadata": {}, + "outputs": [], + "source": [ + "s1 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=208.28, r2=222.71, name='base_octader')\n", + "s2 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=218.44, r2=215.53, name='smaller_octader')\n", + "s3 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=228.60, r2=193.97, name='smallest_octader')\n", + "oct1 = list((-s1).get_surfaces().values())\n", + "oct2 = list((-s2).get_surfaces().values())\n", + "oct3 = list((-s3).get_surfaces().values())\n", + "octas = (oct1, oct2, oct3)\n", + "oct1_maxy, oct1_miny, oct1_maxx, oct1_minx, oct1_ur, oct1_br, oct1_bl, oct1_ul = octas[0]\n", + "oct2_maxy, oct2_miny, oct2_maxx, oct2_minx, oct2_ur, oct2_br, oct2_bl, oct2_ul = octas[1]\n", + "oct3_maxy, oct3_miny, oct3_maxx, oct3_minx, oct3_ur, oct3_br, oct3_bl, oct3_ul = octas[2]\n", + "\n", + "zone_ii_boundary = openmc.ZCylinder(r=256.032, name='iib_boundary')\n", + "\n", + "cr_boundary = openmc.model.rectangular_prism(15.24*2, 15.24*2)\n", + "cb_minx, cb_maxx, cb_miny, cb_maxy = list(cr_boundary.get_surfaces().values())\n", + "\n", + "\n", + "rr = openmc.Cell(fill=moder, region=(+oct3_maxx & +cb_miny & -cb_maxy & -zone_ii_boundary))\n", + "uu = openmc.Cell(fill=moder, region=(+oct3_maxy & +cb_minx & -cb_maxx & -zone_ii_boundary))\n", + "ll = openmc.Cell(fill=moder, region=(-oct3_minx & +cb_miny & -cb_maxy & -zone_ii_boundary))\n", + "bb = openmc.Cell(fill=moder, region=(-oct3_miny & +cb_minx & -cb_maxx & -zone_ii_boundary))\n", + "\n", + "#c1 = openmc.Cell(fill=moder, region=((+s3 & +s2 & +s1) & -zone_ii_boundary))\n", + "ur = openmc.Cell(fill=moder, region=((-oct1_ur | +oct1_maxx | +oct1_maxy) &\n", + " (-oct2_ur | +oct2_maxx | +oct2_maxy) &\n", + " (-oct3_ur | +oct3_maxx | +oct3_maxy) & -zone_ii_boundary\n", + " & +cb_maxx & +cb_maxy))\n", + "ul = openmc.Cell(fill=moder, region=((+oct1_ul | -oct1_minx | +oct1_maxy) &\n", + " (+oct2_ul | -oct2_minx | +oct2_maxy) &\n", + " (+oct3_ul | -oct3_minx | +oct3_maxy) & -zone_ii_boundary\n", + " & -cb_minx & +cb_maxy))\n", + "bl = openmc.Cell(fill=moder, region=((+oct1_bl | -oct1_minx | -oct1_miny) &\n", + " (+oct2_bl | -oct2_minx | -oct2_miny) &\n", + " (+oct3_bl | -oct3_minx | -oct3_miny) & -zone_ii_boundary\n", + " & -cb_minx & -cb_miny))\n", + "br = openmc.Cell(fill=moder, region=((-oct1_br | +oct1_maxx | -oct1_miny) &\n", + " (-oct2_br | +oct2_maxx | -oct2_miny) &\n", + " (-oct3_br | +oct3_maxx | -oct3_miny) & -zone_ii_boundary\n", + " & +cb_maxx & -cb_miny))\n", + "#c3_ul = openmc.Cell(fill=moder, region=(+oct2_ul & -oct1_ul & +oct1_minx & -oct1_maxy))\n", + "#c3_bl = openmc.Cell(fill=moder, region=(+oct2_bl & -oct1_bl & +oct1_minx & +oct1_miny))\n", + "#c3_br = openmc.Cell(fill=moder, region=(-oct2_br & +oct1_br & -oct1_maxx & +oct1_miny))\n", + "#c1_ur = openmc.Cell(fill=moder, region=(-oct3_ur & +oct1_maxx & +oct1_maxy & -zone_ii_boundary))\n", + "#c1 = [c1_ur]\n", + "#c2 = openmc.Cell(fill=moder, region=+s1 & -zone_ii_boundary)\n", + "\n", + "\n", + "#c2 = [c2_r, c2_ur, c2_u, c2_ul, c2_l, c2_bl, c2_b, c2_br]\n", + "\n", + "#c3 = openmc.Cell(fill=moder, region=-s1 & +s2)\n", + "\n", + "u = openmc.Universe()\n", + "#u.add_cells(c1)\n", + "u.add_cells([ur, ul, bl, br, ll, rr, bb, uu])\n", + "#u.add_cells(c3)\n", + "\n", + "u.plot(width=(700,700),\n", + " basis='xy',\n", + " #colors={c1: 'red', c2:'blue', c3:'green'},\n", + " origin=(0.,0.,200),\n", + " #color_by='material',\n", + " pixels=(1000,1000))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "7f439005", + "metadata": {}, + "outputs": [], + "source": [] + }, { "cell_type": "code", "execution_count": null, @@ -1676,13 +1542,19 @@ " s1 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=208.28, r2=222.71, name='base_octader')\n", " s2 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=218.44, r2=215.53, name='smaller_octader')\n", " s3 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=228.60, r2=193.97, name='smallest_octader')\n", - " zone_i_boundary = -s1 | -s2 | -s3\n", + " \n", + " oct1 = list((-s1).get_surfaces().values())\n", + " oct2 = list((-s2).get_surfaces().values())\n", + " oct3 = list((-s3).get_surfaces().values())\n", + " zone_i_octas = (oct1, oct2, oct3)\n", + " \n", + " zone_i_boundary = (s1, s2, s3)\n", "\n", " zone_ii_boundary = openmc.ZCylinder(r=256.032, name='iib_boundary')\n", " annulus_boundary = openmc.ZCylinder(r=261.112, name='annulus_boundary')\n", " lower_plenum_boundary = openmc.ZPlane(z0=-7.62, name='lower_plenum_boundary')\n", "\n", - " zone_bounds = (cr_boundary, zone_i_boundary, zone_ii_boundary)\n", + " zone_bounds = (cr_boundary, zone_i_boundary, zone_i_octas, zone_ii_boundary)\n", " \n", " core_bounds = (annulus_boundary, lower_plenum_boundary, core_base, core_top)\n", " \n", @@ -1705,11 +1577,10 @@ " return zone_bounds, core_bounds, reflector_bounds, vessel_bounds\n", "\n", "def cr_lattice(cr_boundary, core_base, core_top):\n", - " fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel = shared_cr_geometry() \n", - " elem_bound = openmc.rectangular_prism(7.62*2, 7.62*2) # Pin outer boundary\n", - "\n", - " f = control_rod(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel)\n", - " e = control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel)\n", + " fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel = shared_cr_geometry() \n", + " f = control_rod(fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel)\n", + " fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel = shared_cr_geometry() \n", + " e = control_rod_channel(fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel)\n", " \n", " cr = openmc.RectLattice()\n", " cr.pitch = np.array([15.24, 15.24])\n", @@ -1722,10 +1593,11 @@ " \n", " return c1\n", "\n", - "def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top):\n", - " elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4 = shared_elem_geometry()\n", - " l = zoneIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4)\n", - " z = zoneIIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4)\n", + "def main_lattice(zone_i_octas, cr_boundary, core_base, core_top):\n", + " elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4 = shared_elem_geometry()\n", + " l = zoneIA(elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4)\n", + " elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4 = shared_elem_geometry()\n", + " z = zoneIIA(elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4)\n", " v = void_cell(elem_bound)\n", " # tres, uno, dos, quatro\n", " t, u, d, q = graphite_triangles(elem_bound) \n", @@ -1779,11 +1651,69 @@ " [v, v, v, v, v, v, v, v, v, v, v, t, z, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, z, q, v, v, v, v, v, v, v, v, v, v, v],\n", " [v, v, v, v, v, v, v, v, v, v, v, v, v, t, z, z, z, z, l, l, l, l, l, l, l, l, l, z, z, z, z, q, v, v, v, v, v, v, v, v, v, v, v, v, v],\n", " [v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, t, z, z, z, z, z, z, z, z, z, q, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v]]\n", - " c1 = openmc.Cell(fill=main, region=(+core_base & -core_top & zone_i_boundary & ~cr_boundary), name='main_lattice')\n", " \n", - " return c1\n", + " oct1_maxy, oct1_miny, oct1_maxx, oct1_minx, oct1_ur, oct1_br, oct1_bl, oct1_ul = zone_i_octas[0]\n", + " oct2_maxy, oct2_miny, oct2_maxx, oct2_minx, oct2_ur, oct2_br, oct2_bl, oct2_ul = zone_i_octas[1]\n", + " oct3_maxy, oct3_miny, oct3_maxx, oct3_minx, oct3_ur, oct3_br, oct3_bl, oct3_ul = zone_i_octas[2]\n", + " cb_minx, cb_maxx, cb_miny, cb_maxy = list(cr_boundary.get_surfaces().values())\n", + " \n", + " #c1 = openmc.Cell(fill=moder, region=+s3 & -s2)\n", + " c1_ur = openmc.Cell(fill=main, region=(-oct3_ur & +oct2_ur & -oct2_maxx & -oct2_maxy),\n", + " name='smaller_octader_ur')\n", + " c1_ul = openmc.Cell(fill=main, region=(+oct3_ul & -oct2_ul & +oct2_minx & -oct2_maxy),\n", + " name='smaller_octader_ul')\n", + " c1_bl = openmc.Cell(fill=main, region=(+oct3_bl & -oct2_bl & +oct2_minx & +oct2_miny),\n", + " name='smaller_octader_bl')\n", + " c1_br = openmc.Cell(fill=main, region=(-oct3_br & +oct2_br & -oct2_maxx & +oct2_miny),\n", + " name='smaller_octader_br')\n", + " c1 = [c1_ur, c1_ul, c1_bl, c1_br]\n", + "\n", + " #c2 = openmc.Cell(fill=moder, region=-s3)\n", + " c2_r = openmc.Cell(fill=main, region=(+cb_maxx & +cb_miny & -cb_maxy & -oct3_maxx),\n", + " name='smallest_octader_r')\n", + " c2_ur = openmc.Cell(fill=main, region=(+cb_maxx & +cb_maxy & -oct3_maxx & -oct3_maxy & +oct3_ur),\n", + " name='smallest_octader_ur')\n", + " c2_u = openmc.Cell(fill=main, region=(+cb_maxy & +cb_minx & -cb_maxx & -oct3_maxy),\n", + " name='smallest_octader_u')\n", + " c2_ul = openmc.Cell(fill=main, region=(-cb_minx & +cb_maxy & +oct3_minx & -oct3_maxy & -oct3_ul),\n", + " name='smallest_octader_ul')\n", + " c2_l = openmc.Cell(fill=main, region=(-cb_minx & +cb_miny & -cb_maxy & +oct3_minx),\n", + " name='smallest_octader_l')\n", + " c2_bl = openmc.Cell(fill=main, region=(-cb_minx & -cb_miny & +oct3_minx & +oct3_miny & -oct3_bl),\n", + " name='smallest_octader_bl')\n", + " c2_b = openmc.Cell(fill=main, region=(-cb_miny & +cb_minx & -cb_maxx & +oct3_miny),\n", + " name='smallest_octader_b')\n", + " c2_br = openmc.Cell(fill=main, region=(+cb_maxx & -cb_miny & -oct3_maxx & +oct3_miny & +oct3_br),\n", + " name='smallest_octader_br')\n", + " c2 = [c2_r, c2_ur, c2_u, c2_ul, c2_l, c2_bl, c2_b, c2_br]\n", + "\n", + " #c3 = openmc.Cell(fill=moder, region=-s1 & +s2)\n", + " c3_ur = openmc.Cell(fill=main, region=(-oct2_ur & +oct1_ur & -oct1_maxx & -oct1_maxy),\n", + " name='base_octader_ur')\n", + " c3_ul = openmc.Cell(fill=main, region=(+oct2_ul & -oct1_ul & +oct1_minx & -oct1_maxy),\n", + " name='base_octader_ul')\n", + " c3_bl = openmc.Cell(fill=main, region=(+oct2_bl & -oct1_bl & +oct1_minx & +oct1_miny),\n", + " name='base_octader_bl')\n", + " c3_br = openmc.Cell(fill=main, region=(-oct2_br & +oct1_br & -oct1_maxx & +oct1_miny),\n", + " name='base_octader_br')\n", + " c3 = [c3_ur, c3_ul, c3_bl, c3_br]\n", + " for cells in (c1, c2, c3):\n", + " for cell in cells:\n", + " cell.region = cell.region & +core_base & -core_top \n", + "\n", + " #c1 = openmc.Cell(fill=main, region=(+core_base & -core_top & \n", + " # +zone_i_boundary[2] & -zone_i_boundary[1] & \n", + " # ~cr_boundary), name='main_lattice')\n", + " #c2 = openmc.Cell(fill=main, region=(+core_base & -core_top & \n", + " # -zone_i_boundary[2] & \n", + " # ~cr_boundary), name='main_lattice')\n", + " #c3 = openmc.Cell(fill=main, region=(+core_base & -core_top & \n", + " # -zone_i_boundary[0] & +zone_i_boundary[1] & +zone_i_boundary[2] &\n", + " # ~cr_boundary), name='main_lattice')\n", + " \n", + " return c1, c2, c3\n", "\n", - "def zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top):\n", + "def zoneIIB(zone_i_octas, zone_i_boundary, cr_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top):\n", " # Large elements\n", " large_angular_width = 3.538\n", " large_half_w = large_angular_width / 2\n", @@ -1859,12 +1789,50 @@ " iib = openmc.Universe(name='zone_iib')\n", " iib.add_cells(elem_cells)\n", " \n", - " c1 = openmc.Cell(fill=iib, region=(~zone_i_boundary & \n", + " oct1_maxy, oct1_miny, oct1_maxx, oct1_minx, oct1_ur, oct1_br, oct1_bl, oct1_ul = zone_i_octas[0]\n", + " oct2_maxy, oct2_miny, oct2_maxx, oct2_minx, oct2_ur, oct2_br, oct2_bl, oct2_ul = zone_i_octas[1]\n", + " oct3_maxy, oct3_miny, oct3_maxx, oct3_minx, oct3_ur, oct3_br, oct3_bl, oct3_ul = zone_i_octas[2]\n", + " cb_minx, cb_maxx, cb_miny, cb_maxy = list(cr_boundary.get_surfaces().values())\n", + " \n", + " \n", + " c1_r = openmc.Cell(fill=iib, region=(+oct3_maxx & +cb_miny & -cb_maxy & -zone_ii_boundary),\n", + " name='zone_ii_b_r')\n", + " c1_ur = openmc.Cell(fill=iib, region=((-oct1_ur | +oct1_maxx | +oct1_maxy) &\n", + " (-oct2_ur | +oct2_maxx | +oct2_maxy) &\n", + " (-oct3_ur | +oct3_maxx | +oct3_maxy) & -zone_ii_boundary\n", + " & +cb_maxx & +cb_maxy),\n", + " name='zone_ii_b_ur')\n", + " c1_u = openmc.Cell(fill=iib, region=(+oct3_maxy & +cb_minx & -cb_maxx & -zone_ii_boundary),\n", + " name='zone_ii_b_u')\n", + " c1_ul = openmc.Cell(fill=iib, region=((+oct1_ul | -oct1_minx | +oct1_maxy) &\n", + " (+oct2_ul | -oct2_minx | +oct2_maxy) &\n", + " (+oct3_ul | -oct3_minx | +oct3_maxy) & -zone_ii_boundary\n", + " & -cb_minx & +cb_maxy),\n", + " name='zone_ii_b_ul')\n", + " c1_l = openmc.Cell(fill=iib, region=(-oct3_minx & +cb_miny & -cb_maxy & -zone_ii_boundary),\n", + " name='zone_ii_b_l')\n", + " c1_bl = openmc.Cell(fill=iib, region=((+oct1_bl | -oct1_minx | -oct1_miny) &\n", + " (+oct2_bl | -oct2_minx | -oct2_miny) &\n", + " (+oct3_bl | -oct3_minx | -oct3_miny) & -zone_ii_boundary\n", + " & -cb_minx & -cb_miny),\n", + " name='zone_ii_b_bl')\n", + " c1_b = openmc.Cell(fill=iib, region=(-oct3_miny & +cb_minx & -cb_maxx & -zone_ii_boundary),\n", + " name='zone_ii_b_b')\n", + " c1_br = openmc.Cell(fill=iib, region=((-oct1_br | +oct1_maxx | -oct1_miny) &\n", + " (-oct2_br | +oct2_maxx | -oct2_miny) &\n", + " (-oct3_br | +oct3_maxx | -oct3_miny) & -zone_ii_boundary\n", + " & +cb_maxx & -cb_miny),\n", + " name='zone_ii_b_br')\n", + " c1 = openmc.Cell(fill=iib, region=(+zone_i_boundary[0] & +zone_i_boundary[1] & +zone_i_boundary[2] & \n", " -zone_ii_boundary & \n", " +core_base & \n", " -core_top), name='zone_iib')\n", - " \n", - " return c1\n", + " #c1 = [c1_r, c1_ur, c1_u, c1_ul, c1_l, c1_bl, c1_b, c1_br]\n", + " #for c in c1:\n", + " # c.region = c.region & +core_base & -core_top\n", + "\n", + " \n", + " return [c1]\n", "\n", "def annulus(zone_ii_boundary, annulus_boundary, core_base, core_top):\n", " annulus_reg = +zone_ii_boundary & -annulus_boundary & +core_base & -core_top\n", @@ -1913,6 +1881,36 @@ " return c1, c2, c3" ] }, + { + "cell_type": "code", + "execution_count": null, + "id": "5d440e6d", + "metadata": {}, + "outputs": [], + "source": [ + "t = -zone_i_boundary[0]" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "2a3a1651", + "metadata": {}, + "outputs": [], + "source": [ + "zone_i_boundary[0].bottom" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "93fdcaf0", + "metadata": {}, + "outputs": [], + "source": [ + "maxy, miny, maxx, minx, ur, br, bl, ul = list(t.get_surfaces().values())" + ] + }, { "cell_type": "code", "execution_count": null, @@ -1922,14 +1920,14 @@ "source": [ "zone_bounds, core_bounds, reflector_bounds, vessel_bounds = shared_root_geometry()\n", "\n", - "cr_boundary, zone_i_boundary, zone_ii_boundary = zone_bounds\n", + "cr_boundary, zone_i_boundary, zone_i_octas, zone_ii_boundary = zone_bounds\n", "annulus_boundary, lower_plenum_boundary, core_base, core_top = core_bounds\n", "radial_reflector_boundary, bottom_reflector_boundary, top_reflector_boundary = reflector_bounds\n", "radial_vessel_boundary, bottom_vessel_boundary, top_vessel_boundary= vessel_bounds\n", "\n", - "main = main_lattice(zone_i_boundary, cr_boundary, core_base, core_top)\n", + "main1, main2, main3 = main_lattice(zone_i_octas, cr_boundary, core_base, core_top)\n", "cr = cr_lattice(cr_boundary, core_base, core_top)\n", - "iib = zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top)\n", + "iib = zoneIIB(zone_i_octas, zone_i_boundary, cr_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top)\n", "a = annulus(zone_ii_boundary, annulus_boundary, core_base, core_top)\n", "lp = lower_plenum(core_base, lower_plenum_boundary, annulus_boundary)\n", "\n", @@ -1948,7 +1946,11 @@ " bottom_reflector_boundary)\n", "\n", "testuniverse = openmc.Universe()\n", - "testuniverse.add_cells([cr, main, iib, lp, a, rr, rb, rt, vr, vb, vt])" + "testuniverse.add_cells([cr, lp, a, rr, rb, rt, vr, vb, vt])\n", + "testuniverse.add_cells(main1)\n", + "testuniverse.add_cells(main2)\n", + "testuniverse.add_cells(main3)\n", + "testuniverse.add_cells(iib)\n" ] }, { @@ -2017,7 +2019,9 @@ "id": "48d744d2", "metadata": {}, "outputs": [], - "source": [] + "source": [ + "geo.export_to_xml()" + ] }, { "cell_type": "code", From 375a10080413b47556ec4ed75c6dfa2859143d9c Mon Sep 17 00:00:00 2001 From: yardasol Date: Thu, 20 Oct 2022 13:36:49 -0500 Subject: [PATCH 15/62] Revert "reduce region complexities in openmc model" This reverts commit aaae55f0d4fc7edf9d2f3d78534f3d1984eded47. --- examples/msbr/_control_rods.py | 75 +- examples/msbr/_core_elements.py | 134 +-- examples/msbr/_root_geometry.py | 77 +- examples/msbr/model-plotting.ipynb | 1492 +++------------------------- examples/msbr/openmc_model.py | 185 +--- 5 files changed, 259 insertions(+), 1704 deletions(-) diff --git a/examples/msbr/_control_rods.py b/examples/msbr/_control_rods.py index 8bb9ade7e..0f9a9fafd 100644 --- a/examples/msbr/_control_rods.py +++ b/examples/msbr/_control_rods.py @@ -4,15 +4,9 @@ def shared_cr_geometry(): fuel_hole = openmc.ZCylinder(r=5.08, name='cr_fuel_hole') elem_bound = openmc.rectangular_prism(7.62*2, 7.62*2) # Pin outer boundary - eb_minx, eb_maxx, eb_miny, eb_maxy = list(elem_bound.get_surfaces().values()) gr_sq_neg = openmc.rectangular_prism(7.23646*2, 7.23646*2, corner_radius=0.99) # Graphite square # params for - (gr_minx, gr_maxx, gr_miny, gr_maxy, - gr_cyl_lb, gr_cyl_minx, gr_cyl_miny, - gr_cyl_ul, gr_cyl_maxy, gr_cyl_br, - gr_cyl_maxx, gr_cyl_ru) = list(gr_sq_neg.get_surfaces().values()) - r_d = 1.16 e_d = 2 * r_d / np.sqrt(3) r_dt = 0.8 @@ -29,78 +23,33 @@ def shared_cr_geometry(): ru_t = openmc.ZCylinder(-l3, l1, r_dt, name='corner_ru_tip') lb_t = openmc.ZCylinder(l3, -l1, r_dt, name='corner_lb_tip') - gr_ul = ul & -eb_maxy & +gr_maxy - gr_ul_fill = ul & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy - gr_br = br & +eb_miny & -gr_miny - gr_br_fill = br & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny - gr_lb = lb & +eb_minx & -gr_minx - gr_lb_fill = lb & +gr_cyl_lb & +gr_minx & -gr_cyl_minx & -gr_cyl_miny - gr_ru = ru & -eb_maxx & +gr_maxx - gr_ru_fill = ru & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxx & +gr_cyl_maxy - - gr_ul_t = -ul_t & +eb_miny & -gr_miny - gr_br_t = -br_t & -eb_maxy & +gr_maxy - gr_ru_t = -ru_t & +eb_minx & -gr_minx - gr_lb_t = -lb_t & -eb_maxx & +gr_maxx - - gr_corners = (gr_ul, gr_br, gr_lb, gr_ru, gr_ul_fill, gr_br_fill, gr_lb_fill, gr_ru_fill) - gr_t = (gr_ul_t, gr_br_t, gr_ru_t, gr_lb_t) + gr_corners = elem_bound & (ul | br | lb | ru | + -ul_t | -br_t | -ru_t | -lb_t) inter_elem_channel = (~gr_sq_neg & elem_bound & ~ul & ~br & ~lb & ~ru & - +ul_t & +br_t & +ru_t & +lb_t) + +ul_t & +ru_t & +ru_t & +lb_t) - return fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel + return fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel -def control_rod(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, fuel, moder): +def control_rod(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel, fuel, moder): s1 = openmc.ZCylinder(r=4.7625, name='control_rod') c1 = openmc.Cell(fill=moder, region=-s1, name='control_rod') c2 = openmc.Cell(fill=fuel, region=(+s1 & -fuel_hole), name='cr_fuel_inner') - c3 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg), name='cr_moderator') - c4 = openmc.Cell(fill=fuel, region=inter_elem_channel, name='cr_fuel_outer') - - c3_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='cr_moderator_ul') - c3_br = openmc.Cell(fill=moder, region=gr_corners[1], name='cr_moderator_br') - c3_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='cr_moderator_ru') - c3_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='cr_moderator_lb') - c3_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='cr_moderator_ul_fill') - c3_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='cr_moderator_br_fill') - c3_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='cr_moderator_ru_fill') - c3_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='cr_moderator_lb_fill') - c3_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='cr_moderator_ul_t') - c3_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='cr_moderator_br_t') - c3_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='cr_moderator_ru_t') - c3_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='cr_moderator_lb_t') - - + moderator_block = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg | gr_corners), name='cr_moderator') + fuel_outer = openmc.Cell(fill=fuel, region=inter_elem_channel, name='cr_fuel_outer') #universe_id=3 cr = openmc.Universe(name='control_rod') - cr.add_cells([c1, c2, c3, c4, c3_ul, c3_br, c3_ru, c3_lb, c3_ulf, c3_brf, c3_ruf, c3_lbf, c3_ul_t, c3_br_t, c3_ru_t, c3_lb_t]) - + cr.add_cells([c1, c2, moderator_block, fuel_outer]) return cr -def control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, fuel, moder): +def control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel, fuel, moder): c1 = openmc.Cell(fill=fuel, region=(-fuel_hole), name='crc_fuel_inner') - c2 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg), name='crc_moderator') - c3 = openmc.Cell(fill=fuel, region=inter_elem_channel, name='crc_fuel_outer') - - c2_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='crc_moderator_ul') - c2_br = openmc.Cell(fill=moder, region=gr_corners[1], name='crc_moderator_br') - c2_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='crc_moderator_ru') - c2_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='crc_moderator_lb') - c2_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='crc_moderator_ul_fill') - c2_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='crc_moderator_br_fill') - c2_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='crc_moderator_ru_fill') - c2_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='crc_moderator_lb_fill') - c2_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='crc_moderator_ul_t') - c2_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='crc_moderator_br_t') - c2_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='crc_moderator_ru_t') - c2_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='crc_moderator_lb_t') - + moderator_block = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg | gr_corners), name='crc_moderator') + fuel_outer = openmc.Cell(fill=fuel, region=inter_elem_channel, name='crc_fuel_outer') # universe_id=4 crc = openmc.Universe(name='control_rod_channel') - crc.add_cells([c1, c2, c3, c2_ul, c2_br, c2_ru, c2_lb, c2_ulf, c2_brf, c2_ruf, c2_lbf, c2_ul_t, c2_br_t, c2_ru_t, c2_lb_t]) - + crc.add_cells([c1, moderator_block, fuel_outer]) return crc diff --git a/examples/msbr/_core_elements.py b/examples/msbr/_core_elements.py index 0db560c97..e2b276814 100644 --- a/examples/msbr/_core_elements.py +++ b/examples/msbr/_core_elements.py @@ -5,25 +5,11 @@ def _bound_zone_cells(cells_tuples, levels): """Helper function that moves Zone IA and Zone IIA cells to the appropriate height.""" cell_list = [] - n_levels = len(cells_tuples) for i, cells in enumerate(cells_tuples): - if i == 0: - lower_bound = None - upper_bound = levels[i] - elif i == n_levels - 1: - lower_bound = levels[i-1] - upper_bound = None - else: - lower_bound = levels[i-1] - upper_bound = levels[i] - + lower_bound = levels[i] + upper_bound = levels[i+1] for j, cell in enumerate(cells): - if lower_bound is None: - cell.region = cell.region & -upper_bound - elif upper_bound is None: - cell.region = cell.region & +lower_bound - else: - cell.region = cell.region & +lower_bound & -upper_bound + cell.region = cell.region & +lower_bound & -upper_bound cell_list.append(cell) return cell_list @@ -32,13 +18,8 @@ def shared_elem_geometry(): Specs found in Robertson, 1971 Fig 3.4 (p. 17) and Fig 3.5 (p.18)""" elem_bound = openmc.rectangular_prism(5.08*2, 5.08*2) # Pin outer boundary - eb_minx, eb_maxx, eb_miny, eb_maxy = list(elem_bound.get_surfaces().values()) gr_sq_neg = openmc.rectangular_prism(4.953*2, 4.953*2, corner_radius=0.46) # Graphite square - (gr_minx, gr_maxx, gr_miny, gr_maxy, - gr_cyl_lb, gr_cyl_minx, gr_cyl_miny, - gr_cyl_ul, gr_cyl_maxy, gr_cyl_br, - gr_cyl_maxx, gr_cyl_ru) = list(gr_sq_neg.get_surfaces().values()) # params for main pin section for both I-A and II-A r_d = 0.66802 @@ -54,34 +35,19 @@ def shared_elem_geometry(): ru_t = openmc.ZCylinder(-l3, l1, r_d, name='corner_ru_tip') lb_t = openmc.ZCylinder(l3, -l1, r_d, name='corner_lb_tip') - gr_ul = -ul & -eb_maxy & +gr_maxy# | - gr_ul_fill = -ul & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy - gr_br = -br & +eb_miny & -gr_miny# | - gr_br_fill = -br & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny - gr_lb = -lb & +eb_minx & -gr_minx# | - gr_lb_fill = -lb & +gr_cyl_lb & +gr_minx & -gr_cyl_minx & -gr_cyl_miny - gr_ru = -ru & -eb_maxx & +gr_maxx# | - gr_ru_fill = -ru & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxx & +gr_cyl_maxy - - gr_ul_t = -ul_t & +eb_miny & -gr_miny - gr_br_t = -br_t & -eb_maxy & +gr_maxy - gr_ru_t = -ru_t & +eb_minx & -gr_minx - gr_lb_t = -lb_t & -eb_maxx & +gr_maxx - - gr_corners = (gr_ul, gr_br, gr_lb, gr_ru, gr_ul_fill, gr_br_fill, gr_lb_fill, gr_ru_fill) - gr_t = (gr_ul_t, gr_br_t, gr_ru_t, gr_lb_t) + gr_corners = elem_bound & (-ul | -br | -lb | -ru | + -ul_t | -br_t | -ru_t | -lb_t) inter_elem_channel = (~gr_sq_neg & elem_bound & - +ul & +br & +lb & +ru & - +ul_t & +br_t & +ru_t & +lb_t) - + +ul & +br & +lb & +ru & + +ul_t & +ru_t & +ru_t & +lb_t) gr_round_4 = openmc.ZCylinder(r=2.2225, name='gr_round_4') - return elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4 + return elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4 -def zoneIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4, moder, fuel, hast): +def zoneIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4, moder, fuel, hast): """Zone IA element. Specs found in Robertson, 1971 Fig 3.4 (p. 17)""" - elem_levels = [22.86, 419.10, 438.15, 445.135] + elem_levels = [0.0, 22.86, 419.10, 438.15, 445.135, 449.58] level_bounds = [] for level in elem_levels: level_bounds.append(openmc.ZPlane(z0=level)) @@ -91,7 +57,7 @@ def zoneIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round h = 12.66 theta = np.arctan(4.953 / h) r2 = (1 / np.cos(theta))**2 - 1 - s3 = openmc.ZCone(z0=h + elem_levels[2], r2=r2, name='cone_i') + s3 = openmc.ZCone(z0=h + elem_levels[3], r2=r2, name='cone_i') c1 = openmc.Cell(fill=fuel, region=(-s2), name='ia_fuel_inner_1') c2 = openmc.Cell(fill=moder, region=(+s2 & -s1), name='ia_moderator_1') @@ -99,29 +65,13 @@ def zoneIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round ia1 = (c1, c2, c3) # I-A main (lower 2) - s2 = s2.clone() - gr_sq_neg = gr_sq_neg.clone() c4 = c1.clone(clone_materials=False) c4.name = 'ia_fuel_inner_main' - c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg), name='ia_moderator_main') + c5 = openmc.Cell(fill=moder, region=(+s2 & + gr_sq_neg | + gr_corners), name='ia_moderator_main') c6 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='ia_fuel_outer_main') - c5_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='ia_moderator_main_ul') - c5_br = openmc.Cell(fill=moder, region=gr_corners[1], name='ia_moderator_main_br') - c5_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='ia_moderator_main_ru') - c5_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='ia_moderator_main_lb') - c5_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='ia_moderator_main_ul_fill') - c5_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='ia_moderator_main_br_fill') - c5_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='ia_moderator_main_ru_fill') - c5_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='ia_moderator_main_lb_fill') - c5_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='ia_moderator_main_ul_t') - c5_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='ia_moderator_main_br_t') - c5_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='ia_moderator_main_ru_t') - c5_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='ia_moderator_main_lb_t') - - iam = (c4, c5, c6, - c5_ul, c5_br, c5_ru, c5_lb, - c5_ulf, c5_brf, c5_ruf, c5_lbf, - c5_ul_t, c5_br_t, c5_ru_t, c5_lb_t) + iam = (c4, c5, c6) # I-A 2 (upper 1) c7 = c1.clone(clone_materials=False) @@ -132,10 +82,7 @@ def zoneIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round c9.name = 'ia_fuel_outer_2' ia2 = (c7, c8, c9) - # I-A 3 (upper 2)' - s2 = s2.clone() - s3 = s3.clone() - elem_bound = elem_bound.clone() + # I-A 3 (upper 2) c10 = c1.clone(clone_materials=False) c10.name = 'ia_fuel_inner_3' c11 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='ia_moderator_3') @@ -143,8 +90,6 @@ def zoneIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round ia3 = (c10, c11, c12) # I-A 4 (upper 3) - s2 = s2.clone() - elem_bound = elem_bound.clone() c13 = openmc.Cell(fill=hast, region=(-s2), name='ia_hast') c14 = openmc.Cell(fill=moder, region=(+s2 & -gr_round_4), name='ia_moderator_4') c15 = openmc.Cell(fill=fuel, region=(+gr_round_4 & elem_bound), name='ia_fuel_outer_4') @@ -156,9 +101,9 @@ def zoneIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round ia.add_cells(_bound_zone_cells(elem_cells, level_bounds)) return ia -def zoneIIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4, moder, fuel): +def zoneIIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4, moder, fuel): """Zone IIA element. Specs found in Robertson, 1971 Fig 3.5 (p. 18)""" - elem_levels = [434.34, 436.88, 439.42, 441.96] + elem_levels = [0.0, 434.34, 436.88, 439.42, 441.96, 449.58] level_bounds = [] for level in elem_levels: level_bounds.append(openmc.ZPlane(z0=level)) @@ -168,50 +113,23 @@ def zoneIIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_roun h = 6.5 theta = np.arctan(3.65125 / h) r2 = (1 / np.cos(theta))**2 - 1 - s4 = openmc.ZCone(z0=h + elem_levels[2], r2=r2, name='cone_ii') + s4 = openmc.ZCone(z0=h + elem_levels[3], r2=r2, name='cone_ii') # II-A main (lower 1) c1 = openmc.Cell(fill=fuel, region=(-s1), name='iia_fuel_inner_main') - c2 = openmc.Cell(fill=moder, region=(+s1 & gr_sq_neg), name='iia_moderator_main') + c2 = openmc.Cell(fill=moder, region=(+s1 & gr_sq_neg | gr_corners), name='iia_moderator_main') c3 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='iia_fuel_outer_main') c3.name = 'iia_fuel_outer_main' - c2_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='iia_moderator_main_ul') - c2_br = openmc.Cell(fill=moder, region=gr_corners[1], name='iia_moderator_main_br') - c2_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='iia_moderator_main_ru') - c2_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='iia_moderator_main_lb') - c2_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='iia_moderator_main_ul_fill') - c2_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='iia_moderator_main_br_fill') - c2_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='iia_moderator_main_ru_fill') - c2_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='iia_moderator_main_lb_fill') - c2_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='iia_moderator_main_ul_t') - c2_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='iia_moderator_main_br_t') - c2_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='iia_moderator_main_ru_t') - c2_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='iia_moderator_main_lb_t') - iiam = (c1, c2, c3, c2_ul, c2_br, c2_ru, c2_lb, c2_ulf, c2_brf, c2_ruf, c2_lbf, c2_ul_t, c2_br_t, c2_ru_t, c2_lb_t) + iiam = (c1, c2, c3) # II-A 2 (upper 1) - gr_sq_neg = gr_sq_neg.clone() c4 = openmc.Cell(fill=fuel, region=(-s2), name='iia_fuel_inner_2') - c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg), name='iia_moderator_2') + c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg | gr_corners), name='iia_moderator_2') c6 = c3.clone(clone_materials=False) c6.name = 'iia_fuel_outer_2' - c5_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='iia_moderator_2_ul') - c5_br = openmc.Cell(fill=moder, region=gr_corners[1], name='iia_moderator_2_br') - c5_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='iia_moderator_2_ru') - c5_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='iia_moderator_2_lb') - c5_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='iia_moderator_2_ul_fill') - c5_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='iia_moderator_2_br_fill') - c5_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='iia_moderator_2_ru_fill') - c5_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='iia_moderator_2_lb_fill') - c5_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='iia_moderator_2_ul_t') - c5_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='iia_moderator_2_br_t') - c5_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='iia_moderator_2_ru_t') - c5_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='iia_moderator_2_lb_t') - iia2 = (c4, c5, c6, c5_ul, c5_br, c5_ru, c5_lb, c5_ulf, c5_brf, c5_ruf, c5_lbf, c5_ul_t, c5_br_t, c5_ru_t, c5_lb_t) + iia2 = (c4, c5, c6) # II-A 3 (upper 2) - s2 = s2.clone() - elem_bound = elem_bound.clone() c7 = c4.clone(clone_materials=False) c7.name = 'iia_fuel_inner_3' c8 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='iia_moderator_3') @@ -219,17 +137,14 @@ def zoneIIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_roun iia3 = (c7, c8, c9) # II-A 4 (upper 3) - elem_bound = elem_bound.clone() c10 = openmc.Cell(fill=moder, region=(-s4), name='iia_moderator_4') c11 = openmc.Cell(fill=fuel, region=(+s4 & elem_bound), name='iia_fuel_outer_4') iia4 = (c10, c11) # II-A 5 (upper 4) - elem_bound = elem_bound.clone() c12 = openmc.Cell(fill=moder, region=(-gr_round_4), name='iia_moderator_5') c13 = openmc.Cell(fill=fuel, region=(+gr_round_4 & elem_bound), name='iia_fuel_outer_5') iia5 = (c12, c13) - elem_cells = [iiam, iia2, iia3, iia4, iia5] # universe_id=2 iia = openmc.Universe(name='zone_iia') @@ -237,7 +152,6 @@ def zoneIIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_roun return iia def void_cell(elem_bound): - elem_bound = elem_bound.clone() c1 = openmc.Cell(region=elem_bound, name='lattice_void') #universe_id=5 v = openmc.Universe(name='lattice_void') @@ -255,9 +169,7 @@ def graphite_triangles(elem_bound, moder, fuel): (s3, 'bottom_right')] univs = [] for i, (s, name) in enumerate(surfs): - elem_bound = elem_bound.clone() c1 = openmc.Cell(fill=moder, region=(-s & elem_bound)) - elem_bound = elem_bound.clone() c2 = openmc.Cell(fill=fuel, region=(+s & elem_bound)) # universe_id = 6+i gr_tri = openmc.Universe(name=f'{name}_triangle') diff --git a/examples/msbr/_root_geometry.py b/examples/msbr/_root_geometry.py index e2f81e2d2..2b14dcc88 100644 --- a/examples/msbr/_root_geometry.py +++ b/examples/msbr/_root_geometry.py @@ -64,56 +64,35 @@ def zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core elem_cells = [] for i, pos in enumerate(large_positions): - pos = np.round(pos, 3) - r1_big, r2_big = big_radii[i] - t1_big = pos - large_half_w - t2_big = pos + large_half_w - s1 = openmc.model.CylinderSector(r1_big, r2_big, t1_big, t2_big) - s2 = openmc.ZCylinder(**hole_args[i]) - elem_cells.append(openmc.Cell(fill=moder, region=(-s1 & +s2), name=f'iib_large_element_{pos}')) - elem_cells.append(openmc.Cell(fill=fuel, region=(-s2), - name=f'iib_large_element_fuel_hole_{pos}')) - t1_small = t2_big + adjacent_angular_offset - r1_small, r2_small = small_radii - - # Inter element fuel channel - s3 = openmc.model.CylinderSector(r1_small, r2_small, t2_big, t1_small) - cpos = t2_big + (adjacent_angular_offset / 2) - cpos = np.round(cpos, 3) - elem_cells.append(openmc.Cell(fill=fuel, region=-s3, - name=f'inter_element_fuel_channel_{cpos}')) - - t4a = t1_big - adjacent_angular_offset - s4 = openmc.model.CylinderSector(r1_small, r1_big, t4a, t1_small) - elem_cells.append(openmc.Cell(fill=fuel, region=-s4, - name=f'inter_element_fuel_channel_{pos}')) - + r1, r2 = big_radii[i] + t1 = pos - large_half_w + t2 = pos + large_half_w + large_elem = openmc.model.CylinderSector(r1, r2, t1, t2) + elem_hole = hole_region.rotate((0.0, 0.0, pos)) + elem_reg = -large_elem & elem_hole + if isinstance(zone_iib_reg, openmc.Region): + zone_iib_reg = zone_iib_reg | elem_reg + else: + zone_iib_reg = elem_reg + small_start = t2 + adjacent_angular_offset + r1, r2 = small_radii + t1 = small_start for i in range(0, small_elems_per_octant): - t2_small = t1_small + small_angular_width - - # reflector element - s5 = openmc.model.CylinderSector(r1_small, r2_small, t1_small, t2_small) - pos = t2_small - (small_angular_width / 2) - pos = np.round(pos, 3) - elem_cells.append(openmc.Cell(fill=moder, region=-s5, name=f'iib_small_element_{pos}')) - t1_small = t2_small + adjacent_angular_offset - - # inter-element fuel channel - s6 = openmc.model.CylinderSector(r1_small, r2_small, t2_small, t1_small) - cpos = t2_small + (adjacent_angular_offset/2) - cpos = np.round(cpos, 3) - elem_cells.append(openmc.Cell(fill=fuel, region=-s6, - name=f'inter_element_fuel_channel_{cpos}')) - - #universe_id=10 - iib = openmc.Universe(name='zone_iib') - iib.add_cells(elem_cells) - - c1 = openmc.Cell(fill=iib, region=(~zone_i_boundary & - -zone_ii_boundary & - +core_base & - -core_top), name='zone_iib') - return c1 + t2 = t1 + small_angular_width + elem_reg = -openmc.model.CylinderSector(r1, r2, t1, t2) + pos = t2 - (small_angular_width / 2) + zone_iib_reg = zone_iib_reg | elem_reg + t1 = t2 + adjacent_angular_offset + c1 = openmc.Cell(fill=moder, region=(zone_iib_reg & + ~zone_i_boundary & + +core_base & + -core_top), name='iib_moderator') + c2 = openmc.Cell(fill=fuel, region=(~zone_iib_reg & + ~zone_i_boundary & + -zone_ii_boundary & + +core_base & + -core_top), name='iib_fuel') + return c1, c2 def annulus(zone_ii_boundary, annulus_boundary, core_base, core_top, fuel): annulus_reg = +zone_ii_boundary & -annulus_boundary & +core_base & -core_top diff --git a/examples/msbr/model-plotting.ipynb b/examples/msbr/model-plotting.ipynb index ccb460ed2..dc9a5c970 100644 --- a/examples/msbr/model-plotting.ipynb +++ b/examples/msbr/model-plotting.ipynb @@ -19,7 +19,7 @@ "outputs": [], "source": [ "# Create materials\n", - "fuel = openmc.Material(name='fuel')\n", + "fuel, moder, hast = mat\n", "fuel.set_density('g/cm3', density=3.35)\n", "fuel.add_components({'Li7': 0.0787474673879085,\n", " 'Be9': 0.0225566879138321,\n", @@ -66,28 +66,15 @@ "metadata": {}, "outputs": [], "source": [ - " def _bound_zone_cells(cells_tuples, levels):\n", + "def _bound_zone_cells(cells_tuples, levels):\n", " \"\"\"Helper function that moves Zone IA and Zone IIA cells to the\n", " appropriate height.\"\"\"\n", " cell_list = []\n", - " n_levels = len(cells_tuples)\n", " for i, cells in enumerate(cells_tuples):\n", - " if i == 0:\n", - " lower_bound = None\n", - " upper_bound = levels[i]\n", - " elif i == n_levels - 1:\n", - " lower_bound = levels[i-1]\n", - " upper_bound = None\n", - " else:\n", - " lower_bound = levels[i-1]\n", - " upper_bound = levels[i]\n", + " lower_bound = levels[i]\n", + " upper_bound = levels[i+1]\n", " for j, cell in enumerate(cells):\n", - " if lower_bound is None:\n", - " cell.region = cell.region & -upper_bound\n", - " elif upper_bound is None:\n", - " cell.region = cell.region & +lower_bound\n", - " else:\n", - " cell.region = cell.region & +lower_bound & -upper_bound\n", + " cell.region = cell.region & +lower_bound & -upper_bound\n", " cell_list.append(cell)\n", " return cell_list\n", "\n", @@ -96,30 +83,8 @@ " Specs found in Robertson, 1971 Fig 3.4 (p. 17) and Fig 3.5 (p.18)\"\"\"\n", "\n", " elem_bound = openmc.rectangular_prism(5.08*2, 5.08*2) # Pin outer boundary\n", - " eb_minx, eb_maxx, eb_miny, eb_maxy = list(elem_bound.get_surfaces().values())\n", "\n", " gr_sq_neg = openmc.rectangular_prism(4.953*2, 4.953*2, corner_radius=0.46) # Graphite square\n", - " (gr_minx, gr_maxx, gr_miny, gr_maxy, \n", - " gr_cyl_lb, gr_cyl_minx, gr_cyl_miny, \n", - " gr_cyl_ul, gr_cyl_maxy, gr_cyl_br, \n", - " gr_cyl_maxx, gr_cyl_ru) = list(gr_sq_neg.get_surfaces().values())\n", - " \n", - " # slabs that line up with rounded edges\n", - " slab_u = -gr_maxy & +gr_cyl_maxy & -gr_cyl_maxx & +gr_cyl_minx\n", - " slab_l = +gr_minx & -gr_cyl_minx & -gr_cyl_maxy & +gr_cyl_miny\n", - " slab_b = +gr_miny & -gr_cyl_miny & -gr_cyl_maxx & +gr_cyl_minx\n", - " slab_r = -gr_maxx & +gr_cyl_maxx & -gr_cyl_maxy & +gr_cyl_miny\n", - " slabs = (slab_u, slab_l, slab_b, slab_r)\n", - " \n", - " # the rounded edges themselves\n", - " quarter_ul = -gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy\n", - " quarter_br = -gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny\n", - " quarter_lb = -gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny\n", - " quarter_ru = -gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy\n", - " quarters = (quarter_ul, quarter_br, quarter_lb, quarter_ru)\n", - " \n", - " # remaining square\n", - " gr_sq = +gr_cyl_minx & -gr_cyl_maxx & +gr_cyl_miny & -gr_cyl_maxy\n", "\n", " # params for main pin section for both I-A and II-A\n", " r_d = 0.66802\n", @@ -134,43 +99,18 @@ " br_t = openmc.ZCylinder(l1, l3, r_d, name='corner_br_tip')\n", " ru_t = openmc.ZCylinder(-l3, l1, r_d, name='corner_ru_tip')\n", " lb_t = openmc.ZCylinder(l3, -l1, r_d, name='corner_lb_tip')\n", - " \n", - " gr_ul = -ul & -eb_maxy & +gr_maxy# | \n", - " gr_ul_fill = -ul & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy\n", - " gr_br = -br & +eb_miny & -gr_miny# | \n", - " gr_br_fill = -br & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny \n", - " gr_lb = -lb & +eb_minx & -gr_minx# | \n", - " gr_lb_fill = -lb & +gr_cyl_lb & +gr_minx & -gr_cyl_minx & -gr_cyl_miny \n", - " gr_ru = -ru & -eb_maxx & +gr_maxx# | \n", - " gr_ru_fill = -ru & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxx & +gr_cyl_maxy\n", - "\n", - " gr_ul_t = -ul_t & +eb_miny & -gr_miny\n", - " gr_br_t = -br_t & -eb_maxy & +gr_maxy\n", - " gr_ru_t = -ru_t & +eb_minx & -gr_minx\n", - " gr_lb_t = -lb_t & -eb_maxx & +gr_maxx \n", - " \n", - " gr_corners = (gr_ul, gr_br, gr_lb, gr_ru, gr_ul_fill, gr_br_fill, gr_lb_fill, gr_ru_fill)\n", - " gr_t = (gr_ul_t, gr_br_t, gr_ru_t, gr_lb_t)\n", - " \n", - " iec_1 = +gr_cyl_miny & -gr_cyl_maxy & +gr_maxx & -eb_maxx & +lb_t & +ru & +gr_cyl_ru\n", - " iec_2 = (+gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy) & +ru & +br_t & -eb_maxx & -eb_maxy\n", - " iec_3 = +gr_cyl_minx & -gr_cyl_maxx & +gr_maxy & -eb_maxy & +br_t & +ul & +gr_cyl_ul\n", - " iec_4 = (+gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy) & +ul & +ru_t & +eb_minx & -eb_maxy\n", - " iec_5 = +gr_cyl_miny & -gr_cyl_maxy & -gr_minx & +eb_minx & +ru_t & +lb & +gr_cyl_lb\n", - " iec_6 = (+gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny) & +lb & +ul_t & +eb_minx & +eb_miny\n", - " iec_7 = +gr_cyl_minx & -gr_cyl_maxx & -gr_miny & +eb_miny & +ul_t & +br & +gr_cyl_br\n", - " iec_8 = (+gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny) & +br & +lb_t & -eb_maxx & +eb_miny\n", - " \n", - " inter_elem_channel = (iec_1, iec_2, iec_3, iec_4, iec_5, iec_6, iec_7, iec_8)\n", - " #inter_elem_channel = (~gr_sq_neg & elem_bound &\n", - " # +ul & +br & +lb & +ru &\n", - " # +ul_t & +br_t & +ru_t & +lb_t)\n", - " \n", + "\n", + " gr_corners = elem_bound & (-ul | -br | -lb | -ru | \n", + " -ul_t | -br_t | -ru_t | -lb_t)\n", + "\n", + " inter_elem_channel = (~gr_sq_neg & elem_bound &\n", + " +ul & +br & +lb & +ru &\n", + " +ul_t & +ru_t & +ru_t & +lb_t)\n", " \n", " gr_round_4 = openmc.ZCylinder(r=2.2225, name='gr_round_4')\n", "\n", " \n", - " return elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4\n", + " return elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4\n", " " ] }, @@ -181,9 +121,9 @@ "metadata": {}, "outputs": [], "source": [ - "def zoneIA(elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4):\n", + "def zoneIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4):\n", " \"\"\"Zone IA element. Specs found in Robertson, 1971 Fig 3.4 (p. 17)\"\"\"\n", - " elem_levels = [22.86, 419.10, 438.15, 445.135]\n", + " elem_levels = [0.0, 22.86, 419.10, 438.15, 445.135, 449.58]\n", " level_bounds = []\n", " for level in elem_levels:\n", " level_bounds.append(openmc.ZPlane(z0=level))\n", @@ -193,7 +133,7 @@ " h = 12.66\n", " theta = np.arctan(4.953 / h)\n", " r2 = (1 / np.cos(theta))**2 - 1\n", - " s3 = openmc.ZCone(z0=h + elem_levels[2], r2=r2, name='cone_i')\n", + " s3 = openmc.ZCone(z0=h + elem_levels[3], r2=r2, name='cone_i')\n", "\n", " c1 = openmc.Cell(fill=fuel, region=(-s2), name='ia_fuel_inner_1')\n", " c2 = openmc.Cell(fill=moder, region=(+s2 & -s1), name='ia_moderator_1')\n", @@ -201,53 +141,13 @@ " ia1 = (c1, c2, c3)\n", " \n", " # I-A main (lower 2)\n", - " s2 = s2.clone()\n", " c4 = c1.clone(clone_materials=False)\n", " c4.name = 'ia_fuel_inner_main'\n", - " c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq), name='ia_moderator_main')\n", - " #c6 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='ia_fuel_outer_main')\n", - "\n", - " c5_slab_u = openmc.Cell(fill=moder, region=slabs[0], name='ia_moderator_main_slab_u')\n", - " c5_slab_l = openmc.Cell(fill=moder, region=slabs[1], name='ia_moderator_main_slab_l')\n", - " c5_slab_b = openmc.Cell(fill=moder, region=slabs[2], name='ia_moderator_main_slab_b')\n", - " c5_slab_r = openmc.Cell(fill=moder, region=slabs[3], name='ia_moderator_main_slab_r')\n", - " \n", - " c5_quarter_u = openmc.Cell(fill=moder, region=quarters[0], name='ia_moderator_main_quarter_u')\n", - " c5_quarter_l = openmc.Cell(fill=moder, region=quarters[1], name='ia_moderator_main_quarter_l')\n", - " c5_quarter_b = openmc.Cell(fill=moder, region=quarters[2], name='ia_moderator_main_quarter_b')\n", - " c5_quarter_r = openmc.Cell(fill=moder, region=quarters[3], name='ia_moderator_main_quarter_r')\n", - " \n", - " c5_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='ia_moderator_main_ul')\n", - " c5_br = openmc.Cell(fill=moder, region=gr_corners[1], name='ia_moderator_main_br')\n", - " c5_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='ia_moderator_main_ru')\n", - " c5_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='ia_moderator_main_lb')\n", - " \n", - " c5_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='ia_moderator_main_ul_fill')\n", - " c5_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='ia_moderator_main_br_fill')\n", - " c5_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='ia_moderator_main_ru_fill')\n", - " c5_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='ia_moderator_main_lb_fill')\n", - " \n", - " c5_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='ia_moderator_main_ul_t')\n", - " c5_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='ia_moderator_main_br_t')\n", - " c5_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='ia_moderator_main_ru_t')\n", - " c5_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='ia_moderator_main_lb_t')\n", - " \n", - " c61 = openmc.Cell(fill=fuel, region=(inter_elem_channel[0]), name='ia_fuel_outer_main_1')\n", - " c62 = openmc.Cell(fill=fuel, region=(inter_elem_channel[1]), name='ia_fuel_outer_main_2')\n", - " c63 = openmc.Cell(fill=fuel, region=(inter_elem_channel[2]), name='ia_fuel_outer_main_3')\n", - " c64 = openmc.Cell(fill=fuel, region=(inter_elem_channel[3]), name='ia_fuel_outer_main_4')\n", - " c65 = openmc.Cell(fill=fuel, region=(inter_elem_channel[4]), name='ia_fuel_outer_main_5')\n", - " c66 = openmc.Cell(fill=fuel, region=(inter_elem_channel[5]), name='ia_fuel_outer_main_6')\n", - " c67 = openmc.Cell(fill=fuel, region=(inter_elem_channel[6]), name='ia_fuel_outer_main_7')\n", - " c68 = openmc.Cell(fill=fuel, region=(inter_elem_channel[7]), name='ia_fuel_outer_main_8')\n", - "\n", - " iam = (c4, c5,# c6, \n", - " c5_slab_u, c5_slab_l, c5_slab_b, c5_slab_r,\n", - " c5_quarter_u, c5_quarter_l, c5_quarter_b, c5_quarter_r,\n", - " c5_ul, c5_br, c5_ru, c5_lb, \n", - " c5_ulf, c5_brf, c5_ruf, c5_lbf, \n", - " c5_ul_t, c5_br_t, c5_ru_t, c5_lb_t,\n", - " c61, c62, c63, c64, c65, c66, c67, c68)\n", + " c5 = openmc.Cell(fill=moder, region=(+s2 &\n", + " gr_sq_neg |\n", + " gr_corners), name='ia_moderator_main')\n", + " c6 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='ia_fuel_outer_main')\n", + " iam = (c4, c5, c6)\n", " \n", " # I-A 2 (upper 1)\n", " c7 = c1.clone(clone_materials=False)\n", @@ -258,10 +158,7 @@ " c9.name = 'ia_fuel_outer_2'\n", " ia2 = (c7, c8, c9)\n", "\n", - " # I-A 3 (upper 2)'\n", - " s2 = s2.clone()\n", - " s3 = s3.clone()\n", - " elem_bound = elem_bound.clone()\n", + " # I-A 3 (upper 2)\n", " c10 = c1.clone(clone_materials=False)\n", " c10.name = 'ia_fuel_inner_3'\n", " c11 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='ia_moderator_3')\n", @@ -269,8 +166,6 @@ " ia3 = (c10, c11, c12) \n", " \n", " # I-A 4 (upper 3)\n", - " s2 = s2.clone()\n", - " elem_bound = elem_bound.clone()\n", " c13 = openmc.Cell(fill=hast, region=(-s2), name='ia_hast')\n", " c14 = openmc.Cell(fill=moder, region=(+s2 & -gr_round_4), name='ia_moderator_4')\n", " c15 = openmc.Cell(fill=fuel, region=(+gr_round_4 & elem_bound), name='ia_fuel_outer_4')\n", @@ -283,9 +178,9 @@ " \n", " return ia\n", "\n", - "def zoneIIA(elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4):\n", + "def zoneIIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4):\n", " \"\"\"Zone IIA element. Specs found in Robertson, 1971 Fig 3.5 (p. 18)\"\"\"\n", - " elem_levels = [434.34, 436.88, 439.42, 441.96]\n", + " elem_levels = [0.0, 434.34, 436.88, 439.42, 441.96, 449.58]\n", " level_bounds = []\n", " for level in elem_levels:\n", " level_bounds.append(openmc.ZPlane(z0=level))\n", @@ -295,132 +190,23 @@ " h = 6.5\n", " theta = np.arctan(3.65125 / h)\n", " r2 = (1 / np.cos(theta))**2 - 1\n", - " s4 = openmc.ZCone(z0=h + elem_levels[2], r2=r2, name='cone_ii')\n", + " s4 = openmc.ZCone(z0=h + elem_levels[3], r2=r2, name='cone_ii')\n", "\n", " # II-A main (lower 1)\n", " c1 = openmc.Cell(fill=fuel, region=(-s1), name='iia_fuel_inner_main')\n", - " c2 = openmc.Cell(fill=moder, region=(+s1 & gr_sq), name='iia_moderator_main')\n", - " \n", - " c2_slab_u = openmc.Cell(fill=moder, region=slabs[0], name='iia_moderator_main_slab_u')\n", - " c2_slab_l = openmc.Cell(fill=moder, region=slabs[1], name='iia_moderator_main_slab_l')\n", - " c2_slab_b = openmc.Cell(fill=moder, region=slabs[2], name='iia_moderator_main_slab_b')\n", - " c2_slab_r = openmc.Cell(fill=moder, region=slabs[3], name='iia_moderator_main_slab_r')\n", - " \n", - " c2_quarter_u = openmc.Cell(fill=moder, region=quarters[0], name='iia_moderator_main_quarter_u')\n", - " c2_quarter_l = openmc.Cell(fill=moder, region=quarters[1], name='iia_moderator_main_quarter_l')\n", - " c2_quarter_b = openmc.Cell(fill=moder, region=quarters[2], name='iia_moderator_main_quarter_b')\n", - " c2_quarter_r = openmc.Cell(fill=moder, region=quarters[3], name='iia_moderator_main_quarter_r')\n", - " \n", - " c2_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='iia_moderator_main_ul')\n", - " c2_br = openmc.Cell(fill=moder, region=gr_corners[1], name='iia_moderator_main_br')\n", - " c2_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='iia_moderator_main_ru')\n", - " c2_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='iia_moderator_main_lb')\n", - " \n", - " c2_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='iia_moderator_main_ul_fill')\n", - " c2_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='iia_moderator_main_br_fill')\n", - " c2_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='iia_moderator_main_ru_fill')\n", - " c2_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='iia_moderator_main_lb_fill')\n", - " \n", - " # repeat section tips\n", - " c2_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='iia_moderator_main_ul_t')\n", - " c2_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='iia_moderator_main_br_t')\n", - " c2_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='iia_moderator_main_ru_t')\n", - " c2_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='iia_moderator_main_lb_t')\n", - " \n", - " #c3 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='iia_fuel_outer_main')\n", - " # interelement fuel channel\n", - " c31 = openmc.Cell(fill=fuel, region=(inter_elem_channel[0]), name='iia_fuel_outer_main_1')\n", - " c32 = openmc.Cell(fill=fuel, region=(inter_elem_channel[1]), name='iia_fuel_outer_main_2')\n", - " c33 = openmc.Cell(fill=fuel, region=(inter_elem_channel[2]), name='iia_fuel_outer_main_3')\n", - " c34 = openmc.Cell(fill=fuel, region=(inter_elem_channel[3]), name='iia_fuel_outer_main_4')\n", - " c35 = openmc.Cell(fill=fuel, region=(inter_elem_channel[4]), name='iia_fuel_outer_main_5')\n", - " c36 = openmc.Cell(fill=fuel, region=(inter_elem_channel[5]), name='iia_fuel_outer_main_3')\n", - " c37 = openmc.Cell(fill=fuel, region=(inter_elem_channel[6]), name='iia_fuel_outer_main_7')\n", - " c38 = openmc.Cell(fill=fuel, region=(inter_elem_channel[7]), name='iia_fuel_outer_main_8')\n", - "\n", - " iiam = (c1, c2, #c3,\n", - " c2_slab_u, c2_slab_l, c2_slab_b, c2_slab_r,\n", - " c2_quarter_u, c2_quarter_l, c2_quarter_b, c2_quarter_r,\n", - " c2_ul, c2_br, c2_ru, c2_lb, \n", - " c2_ulf, c2_brf, c2_ruf, c2_lbf, \n", - " c2_ul_t, c2_br_t, c2_ru_t, c2_lb_t,\n", - " c31, c32, c33, c34, c35, c36, c37, c38)\n", + " c2 = openmc.Cell(fill=moder, region=(+s1 & gr_sq_neg | gr_corners), name='iia_moderator_main')\n", + " c3 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='iia_fuel_outer_main')\n", + " c3.name = 'iia_fuel_outer_main'\n", + " iiam = (c1, c2, c3)\n", "\n", " # II-A 2 (upper 1)\n", - " #gr_sq_neg = gr_sq_neg.clone()\n", - " gr_sq = gr_sq.clone()\n", " c4 = openmc.Cell(fill=fuel, region=(-s2), name='iia_fuel_inner_2')\n", - " c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq), name='iia_moderator_2')\n", - " c5_slab_u = c2_slab_u.clone(clone_materials=False)\n", - " c5_slab_u.name = 'iia_moderator_2_slab_u'\n", - " c5_slab_l = c2_slab_l.clone(clone_materials=False)\n", - " c5_slab_l.name = 'iia_moderator_2_slab_l'\n", - " c5_slab_b = c2_slab_b.clone(clone_materials=False)\n", - " c5_slab_b.name = 'iia_moderator_2_slab_b'\n", - " c5_slab_r = c2_slab_r.clone(clone_materials=False)\n", - " c5_slab_r.name = 'iia_moderator_2_slab_r'\n", - " \n", - " c5_quarter_u = c2_quarter_u.clone(clone_materials=False)\n", - " c5_quarter_u.name = 'iia_moderator_2_quarter_u'\n", - " c5_quarter_l = c2_quarter_l.clone(clone_materials=False)\n", - " c5_quarter_l.name = 'iia_moderator_2_quarter_l'\n", - " c5_quarter_b = c2_quarter_b.clone(clone_materials=False)\n", - " c5_quarter_b.name = 'iia_moderator_2_quarter_b'\n", - " c5_quarter_r = c2_quarter_r.clone(clone_materials=False)\n", - " c5_quarter_r.name = 'iia_moderator_2_quarter_r'\n", - " \n", - " c5_ul = c2_ul.clone(clone_materials=False)\n", - " c5_ul.name = 'iia_moderator_2_ul'\n", - " c5_br = c2_br.clone(clone_materials=False)\n", - " c5_br.name = 'iia_moderator_2_br'\n", - " c5_ru = c2_ru.clone(clone_materials=False)\n", - " c5_ru.name = 'iia_moderator_2_ru'\n", - " c5_lb = c2_lb.clone(clone_materials=False)\n", - " c5_lb.name = 'iia_moderator_2_lb'\n", - " c5_ulf = c2_ulf.clone(clone_materials=False)\n", - " c5_ulf.name = 'iia_moderator_2_ulf'\n", - " c5_brf = c2_brf.clone(clone_materials=False)\n", - " c5_brf.name = 'iia_moderator_2_brf'\n", - " c5_ruf = c2_ruf.clone(clone_materials=False)\n", - " c5_ruf.name = 'iia_moderator_2_ruf'\n", - " c5_lbf = c2_lbf.clone(clone_materials=False)\n", - " c5_lbf.name = 'iia_moderator_2_lbf'\n", - " c5_ul_t = c2_ul_t.clone(clone_materials=False)\n", - " c5_ul_t.name = 'iia_moderator_2_ul_t'\n", - " c5_br_t = c2_br_t.clone(clone_materials=False)\n", - " c5_br_t.name = 'iia_moderator_2_br_t'\n", - " c5_ru_t = c2_ru_t.clone(clone_materials=False)\n", - " c5_ru_t.name = 'iia_moderator_2_ru_t'\n", - " c5_lb_t = c2_lb_t.clone(clone_materials=False)\n", - " c5_lb_t.name = 'iia_moderator_2_lb_t' \n", - " \n", - " c61 = c31.clone(clone_materials=False)\n", - " c61.name = 'iia_fuel_outer_2_1'\n", - " c62 = c32.clone(clone_materials=False)\n", - " c62.name = 'iia_fuel_outer_2_2'\n", - " c63 = c33.clone(clone_materials=False)\n", - " c63.name = 'iia_fuel_outer_2_3'\n", - " c64 = c34.clone(clone_materials=False)\n", - " c64.name = 'iia_fuel_outer_2_4'\n", - " c65 = c35.clone(clone_materials=False)\n", - " c65.name = 'iia_fuel_outer_2_5'\n", - " c66 = c36.clone(clone_materials=False)\n", - " c66.name = 'iia_fuel_outer_2_6'\n", - " c67 = c37.clone(clone_materials=False)\n", - " c67.name = 'iia_fuel_outer_2_7'\n", - " c68 = c38.clone(clone_materials=False)\n", - " c68.name = 'iia_fuel_outer_2_8'\n", - " iia2 = (c4, c5, #c6,\n", - " c5_slab_u, c5_slab_l, c5_slab_b, c5_slab_r,\n", - " c5_quarter_u, c5_quarter_l, c5_quarter_b, c5_quarter_r,\n", - " c5_ul, c5_br, c5_ru, c5_lb,\n", - " c5_ulf, c5_brf, c5_ruf, c5_lbf, \n", - " c5_ul_t, c5_br_t, c5_ru_t, c5_lb_t,\n", - " c61, c62, c63, c64, c65, c66, c67, c68)\n", + " c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg | gr_corners), name='iia_moderator_2')\n", + " c6 = c3.clone(clone_materials=False)\n", + " c6.name = 'iia_fuel_outer_2'\n", + " iia2 = (c4, c5, c6)\n", "\n", " # II-A 3 (upper 2)\n", - " s2 = s2.clone()\n", - " elem_bound = elem_bound.clone()\n", " c7 = c4.clone(clone_materials=False)\n", " c7.name = 'iia_fuel_inner_3'\n", " c8 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='iia_moderator_3')\n", @@ -428,13 +214,11 @@ " iia3 = (c7, c8, c9)\n", "\n", " # II-A 4 (upper 3) \n", - " elem_bound = elem_bound.clone()\n", " c10 = openmc.Cell(fill=moder, region=(-s4), name='iia_moderator_4')\n", " c11 = openmc.Cell(fill=fuel, region=(+s4 & elem_bound), name='iia_fuel_outer_4')\n", " iia4 = (c10, c11)\n", "\n", " # II-A 5 (upper 4)\n", - " elem_bound = elem_bound.clone()\n", " c12 = openmc.Cell(fill=moder, region=(-gr_round_4), name='iia_moderator_5')\n", " c13 = openmc.Cell(fill=fuel, region=(+gr_round_4 & elem_bound), name='iia_fuel_outer_5')\n", " iia5 = (c12, c13)\n", @@ -446,7 +230,6 @@ " return iia\n", "\n", "def void_cell(elem_bound):\n", - " elem_bound = elem_bound.clone()\n", " c1 = openmc.Cell(region=elem_bound, name='lattice_void')\n", " #universe_id=5\n", " v = openmc.Universe(name='lattice_void')\n", @@ -464,10 +247,8 @@ " (s2, 'top_left'),\n", " (s3, 'bottom_right')]\n", " univs = []\n", - " for i, (s, name) in enumerate(surfs):\n", - " elem_bound = elem_bound.clone()\n", + " for i, (s, name) in enumerate(surfs): \n", " c1 = openmc.Cell(fill=moder, region=(-s & elem_bound))\n", - " elem_bound = elem_bound.clone()\n", " c2 = openmc.Cell(fill=fuel, region=(+s & elem_bound))\n", " \n", " # universe_id = 6+i\n", @@ -478,181 +259,6 @@ " return univs" ] }, - { - "cell_type": "code", - "execution_count": null, - "id": "1dc06889", - "metadata": {}, - "outputs": [], - "source": [ - "elem_bound = openmc.rectangular_prism(5.08*2, 5.08*2) # Pin outer boundary\n", - "eb_minx, eb_maxx, eb_miny, eb_maxy = list(elem_bound.get_surfaces().values())\n", - "\n", - "gr_sq_neg = openmc.rectangular_prism(4.953*2, 4.953*2, corner_radius=0.46) # Graphite square\n", - "(gr_minx, gr_maxx, gr_miny, gr_maxy, \n", - "gr_cyl_lb, gr_cyl_minx, gr_cyl_miny, \n", - "gr_cyl_ul, gr_cyl_maxy, gr_cyl_br, \n", - "gr_cyl_maxx, gr_cyl_ru) = list(gr_sq_neg.get_surfaces().values())\n", - "\n", - "# slabs that line up with rounded edges\n", - "slab_u = -gr_maxy & +gr_cyl_maxy & -gr_cyl_maxx & +gr_cyl_minx\n", - "slab_l = +gr_minx & -gr_cyl_minx & -gr_cyl_maxy & +gr_cyl_miny\n", - "slab_b = +gr_miny & -gr_cyl_miny & -gr_cyl_maxx & +gr_cyl_minx\n", - "slab_r = -gr_maxx & +gr_cyl_maxx & -gr_cyl_maxy & +gr_cyl_miny\n", - "slabs = (slab_u, slab_l, slab_b, slab_r)\n", - "\n", - "# the rounded edges themselves\n", - "quarter_ul = -gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy\n", - "quarter_br = -gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny\n", - "quarter_lb = -gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny\n", - "quarter_ru = -gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy\n", - "quarters = (quarter_ul, quarter_br, quarter_lb, quarter_ru)\n", - "\n", - "# remaining square\n", - "gr_sq = +gr_cyl_minx & -gr_cyl_maxx & +gr_cyl_miny & -gr_cyl_maxy\n", - "\n", - "# params for main pin section for both I-A and II-A\n", - "r_d = 0.66802\n", - "l1 = 4.28498\n", - "l2 = 4.53898\n", - "l3 = 5.62102\n", - "ul = openmc.ZCylinder(-l1, l2, r_d, name='corner_ul')\n", - "br = openmc.ZCylinder(l1, -l2, r_d, name='corner_br')\n", - "lb = openmc.ZCylinder(-l2, -l1, r_d, name='corner_lb')\n", - "ru = openmc.ZCylinder(l2, l1, r_d, name='corner_ru')\n", - "ul_t = openmc.ZCylinder(-l1, -l3, r_d, name='corner_ul_tip')\n", - "br_t = openmc.ZCylinder(l1, l3, r_d, name='corner_br_tip')\n", - "ru_t = openmc.ZCylinder(-l3, l1, r_d, name='corner_ru_tip')\n", - "lb_t = openmc.ZCylinder(l3, -l1, r_d, name='corner_lb_tip')\n", - "\n", - "gr_ul = -ul & -eb_maxy & +gr_maxy# | \n", - "gr_ul_fill = -ul & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy\n", - "gr_br = -br & +eb_miny & -gr_miny# | \n", - "gr_br_fill = -br & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny \n", - "gr_lb = -lb & +eb_minx & -gr_minx# | \n", - "gr_lb_fill = -lb & +gr_cyl_lb & +gr_minx & -gr_cyl_minx & -gr_cyl_miny \n", - "gr_ru = -ru & -eb_maxx & +gr_maxx# | \n", - "gr_ru_fill = -ru & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxx & +gr_cyl_maxy\n", - "\n", - "gr_ul_t = -ul_t & +eb_miny & -gr_miny\n", - "gr_br_t = -br_t & -eb_maxy & +gr_maxy\n", - "gr_ru_t = -ru_t & +eb_minx & -gr_minx\n", - "gr_lb_t = -lb_t & -eb_maxx & +gr_maxx \n", - "\n", - "gr_corners = (gr_ul, gr_br, gr_lb, gr_ru, gr_ul_fill, gr_br_fill, gr_lb_fill, gr_ru_fill)\n", - "gr_t = (gr_ul_t, gr_br_t, gr_ru_t, gr_lb_t)\n", - "\n", - "iec_1 = +gr_cyl_miny & -gr_cyl_maxy & +gr_maxx & -eb_maxx & +lb_t & +ru & +gr_cyl_ru\n", - "iec_2 = (+gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy) & +ru & +br_t & -eb_maxx & -eb_maxy\n", - "iec_3 = +gr_cyl_minx & -gr_cyl_maxx & +gr_maxy & -eb_maxy & +br_t & +ul & +gr_cyl_ul\n", - "iec_4 = (+gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy) & +ul & +ru_t & +eb_minx & -eb_maxy\n", - "iec_5 = +gr_cyl_miny & -gr_cyl_maxy & -gr_minx & +eb_minx & +ru_t & +lb & +gr_cyl_lb\n", - "iec_6 = (+gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny) & +lb & +ul_t & +eb_minx & +eb_miny\n", - "iec_7 = +gr_cyl_minx & -gr_cyl_maxx & -gr_miny & +eb_miny & +ul_t & +br & +gr_cyl_br\n", - "iec_8 = (+gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny) & +br & +lb_t & -eb_maxx & +eb_miny\n", - "\n", - "inter_elem_channel = (iec_1, iec_2, iec_3, iec_4, iec_5, iec_6, iec_7, iec_8)\n", - "#inter_elem_channel = (~gr_sq_neg & elem_bound &\n", - "# +ul & +br & +lb & +ru &\n", - "# +ul_t & +br_t & +ru_t & +lb_t)\n", - "\n", - "\n", - "gr_round_4 = openmc.ZCylinder(r=2.2225, name='gr_round_4')\n", - "\n", - "\"\"\"Zone IA element. Specs found in Robertson, 1971 Fig 3.4 (p. 17)\"\"\"\n", - "elem_levels = [22.86, 419.10, 438.15, 445.135]\n", - "level_bounds = []\n", - "for level in elem_levels:\n", - " level_bounds.append(openmc.ZPlane(z0=level))\n", - "s1 = openmc.ZCylinder(r=4.953, name='ia_gr_round_1')\n", - "s2 = openmc.ZCylinder(r=1.71069, name='ia_fuel_hole')\n", - "\n", - "h = 12.66\n", - "theta = np.arctan(4.953 / h)\n", - "r2 = (1 / np.cos(theta))**2 - 1\n", - "s3 = openmc.ZCone(z0=h + elem_levels[2], r2=r2, name='cone_i')\n", - "\n", - "c1 = openmc.Cell(fill=fuel, region=(-s2), name='ia_fuel_inner_1')\n", - "c2 = openmc.Cell(fill=moder, region=(+s2 & -s1), name='ia_moderator_1')\n", - "c3 = openmc.Cell(fill=fuel, region=(+s1 & elem_bound), name='ia_fuel_outer_1')\n", - "ia1 = (c1, c2, c3)\n", - "\n", - "# I-A main (lower 2)\n", - "s2 = s2.clone()\n", - "c4 = c1.clone(clone_materials=False)\n", - "c4.name = 'ia_fuel_inner_main'\n", - "c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq), name='ia_moderator_main')\n", - "#c6 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='ia_fuel_outer_main')\n", - "\n", - "c5_slab_u = openmc.Cell(fill=moder, region=slabs[0], name='ia_moderator_main_slab_u')\n", - "c5_slab_l = openmc.Cell(fill=moder, region=slabs[1], name='ia_moderator_main_slab_l')\n", - "c5_slab_b = openmc.Cell(fill=moder, region=slabs[2], name='ia_moderator_main_slab_b')\n", - "c5_slab_r = openmc.Cell(fill=moder, region=slabs[3], name='ia_moderator_main_slab_r')\n", - "\n", - "c5_quarter_u = openmc.Cell(fill=moder, region=quarters[0], name='ia_moderator_main_quarter_u')\n", - "c5_quarter_l = openmc.Cell(fill=moder, region=quarters[1], name='ia_moderator_main_quarter_l')\n", - "c5_quarter_b = openmc.Cell(fill=moder, region=quarters[2], name='ia_moderator_main_quarter_b')\n", - "c5_quarter_r = openmc.Cell(fill=moder, region=quarters[3], name='ia_moderator_main_quarter_r')\n", - "\n", - "c5_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='ia_moderator_main_ul')\n", - "c5_br = openmc.Cell(fill=moder, region=gr_corners[1], name='ia_moderator_main_br')\n", - "c5_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='ia_moderator_main_ru')\n", - "c5_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='ia_moderator_main_lb')\n", - "\n", - "c5_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='ia_moderator_main_ul_fill')\n", - "c5_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='ia_moderator_main_br_fill')\n", - "c5_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='ia_moderator_main_ru_fill')\n", - "c5_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='ia_moderator_main_lb_fill')\n", - "\n", - "c5_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='ia_moderator_main_ul_t')\n", - "c5_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='ia_moderator_main_br_t')\n", - "c5_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='ia_moderator_main_ru_t')\n", - "c5_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='ia_moderator_main_lb_t')\n", - "\n", - "c61 = openmc.Cell(fill=fuel, region=(inter_elem_channel[0]), name='ia_fuel_outer_main_1')\n", - "c62 = openmc.Cell(fill=fuel, region=(inter_elem_channel[1]), name='ia_fuel_outer_main_2')\n", - "c63 = openmc.Cell(fill=fuel, region=(inter_elem_channel[2]), name='ia_fuel_outer_main_3')\n", - "c64 = openmc.Cell(fill=fuel, region=(inter_elem_channel[3]), name='ia_fuel_outer_main_4')\n", - "c65 = openmc.Cell(fill=fuel, region=(inter_elem_channel[4]), name='ia_fuel_outer_main_5')\n", - "c66 = openmc.Cell(fill=fuel, region=(inter_elem_channel[5]), name='ia_fuel_outer_main_6')\n", - "c67 = openmc.Cell(fill=fuel, region=(inter_elem_channel[6]), name='ia_fuel_outer_main_7')\n", - "c68 = openmc.Cell(fill=fuel, region=(inter_elem_channel[7]), name='ia_fuel_outer_main_8')\n", - "\n", - "iam = (#c4, c5,# c6, \n", - " #c5_slab_u, c5_slab_l, c5_slab_b, c5_slab_r,\n", - " #c5_quarter_u, c5_quarter_l, c5_quarter_b, c5_quarter_r,\n", - " c5_ul, c5_br, c5_ru, c5_lb, \n", - " c5_ulf, c5_brf, c5_ruf, c5_lbf, \n", - " #c5_ul_t, c5_br_t, c5_ru_t, c5_lb_t,\n", - " c61, c62, c63, c64, c65, c66, c67, c68)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "62c7dfbb", - "metadata": {}, - "outputs": [], - "source": [ - "u = openmc.Universe()\n", - "u.add_cells(iam)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "9681e5c6", - "metadata": {}, - "outputs": [], - "source": [ - "u.plot(width=(20,20),\n", - " basis='xy',\n", - " colors=colormap,\n", - " origin=(0.,0., 446),\n", - " #color_by='material',\n", - " pixels=(2000,2000))" - ] - }, { "cell_type": "code", "execution_count": null, @@ -660,12 +266,11 @@ "metadata": {}, "outputs": [], "source": [ - "elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4 = shared_elem_geometry()\n", - "ia = zoneIA(elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4)\n", - "elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4 = shared_elem_geometry()\n", - "iia = zoneIIA(elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4)\n", + "#elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4 = shared_elem_geometry()\n", + "#ia = zoneIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4)\n", + "#iia = zoneIIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4)\n", "# tres, uno, dos, quatro\n", - "bl, ur, ul, br = graphite_triangles(elem_bound)" + "#bl, ur, ul, br = graphite_triangles(elem_bound)" ] }, { @@ -675,12 +280,12 @@ "metadata": {}, "outputs": [], "source": [ - "ia.plot(width=(20,20),\n", - " basis='xz',\n", - " colors=colormap,\n", - " origin=(0.,0., 446),\n", - " color_by='material',\n", - " pixels=(800,800))" + "#ia.plot(width=(20,20),\n", + "# basis='xz',\n", + "# colors=colormap,\n", + "# origin=(0.,0.,440),\n", + "# color_by='material',\n", + "# pixels=(400,400))" ] }, { @@ -690,12 +295,12 @@ "metadata": {}, "outputs": [], "source": [ - "iia.plot(width=(20,20),\n", - " basis='xy',\n", - " colors=colormap,\n", - " origin=(0.,0.,435),\n", - " color_by='material',\n", - " pixels=(800,800))" + "#iia.plot(width=(20,20),\n", + "# basis='xz',\n", + "# colors=colormap,\n", + "# origin=(0.,0.,440),\n", + "# color_by='material',\n", + "# pixels=(400,400))" ] }, { @@ -709,32 +314,9 @@ " fuel_hole = openmc.ZCylinder(r=5.08, name='cr_fuel_hole')\n", " \n", " elem_bound = openmc.rectangular_prism(7.62*2, 7.62*2) # Pin outer boundary\n", - " eb_minx, eb_maxx, eb_miny, eb_maxy = list(elem_bound.get_surfaces().values())\n", - " \n", + "\n", " gr_sq_neg = openmc.rectangular_prism(7.23646*2, 7.23646*2, corner_radius=0.99) # Graphite square\n", " # params for \n", - " (gr_minx, gr_maxx, gr_miny, gr_maxy, \n", - " gr_cyl_lb, gr_cyl_minx, gr_cyl_miny, \n", - " gr_cyl_ul, gr_cyl_maxy, gr_cyl_br, \n", - " gr_cyl_maxx, gr_cyl_ru) = list(gr_sq_neg.get_surfaces().values())\n", - " \n", - " # slabs that line up with rounded edges\n", - " slab_u = -gr_maxy & +gr_cyl_maxy & -gr_cyl_maxx & +gr_cyl_minx\n", - " slab_l = +gr_minx & -gr_cyl_minx & -gr_cyl_maxy & +gr_cyl_miny\n", - " slab_b = +gr_miny & -gr_cyl_miny & -gr_cyl_maxx & +gr_cyl_minx\n", - " slab_r = -gr_maxx & +gr_cyl_maxx & -gr_cyl_maxy & +gr_cyl_miny\n", - " slabs = (slab_u, slab_l, slab_b, slab_r)\n", - " \n", - " # the rounded edges themselves\n", - " quarter_ul = -gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy\n", - " quarter_br = -gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny\n", - " quarter_lb = -gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny\n", - " quarter_ru = -gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy\n", - " quarters = (quarter_ul, quarter_br, quarter_lb, quarter_ru)\n", - " \n", - " # remaining square\n", - " gr_sq = +gr_cyl_minx & -gr_cyl_maxx & +gr_cyl_miny & -gr_cyl_maxy\n", - " \n", " r_d = 1.16\n", " e_d = 2 * r_d / np.sqrt(3)\n", " r_dt = 0.8\n", @@ -778,204 +360,18 @@ " br_t = openmc.ZCylinder(l1, l3, r_dt, name='corner_br_tip')\n", " ru_t = openmc.ZCylinder(-l3, l1, r_dt, name='corner_ru_tip')\n", " lb_t = openmc.ZCylinder(l3, -l1, r_dt, name='corner_lb_tip')\n", - " \n", - " gr_ul = -ul_ul & -ul_ur & -eb_maxy & +gr_maxy\n", - " gr_ul_fill = -ul_ul & +ul_bl & +ul_cyl_l_out & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy\n", - " gr_br = +br_br & +br_bl & +eb_miny & -gr_miny\n", - " gr_br_fill = +br_br & -br_ur & +br_cyl_r_out & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny\n", - " gr_lb = +lb_bl & -lb_ul & +eb_minx & -gr_minx\n", - " gr_lb_fill = +lb_bl & +lb_br & +lb_cyl_b_out & +gr_cyl_lb & +gr_minx & -gr_cyl_miny & -gr_cyl_minx\n", - " gr_ru = +ru_br & -ru_ur & -eb_maxx & +gr_maxx\n", - " gr_ru_fill = -ru_ur & -ru_ul & +ru_cyl_u_out & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxy & +gr_cyl_maxx\n", - "\n", - "\n", - " gr_ul_t = -ul_t & +eb_miny & -gr_miny\n", - " gr_br_t = -br_t & -eb_maxy & +gr_maxy\n", - " gr_ru_t = -ru_t & +eb_minx & -gr_minx\n", - " gr_lb_t = -lb_t & -eb_maxx & +gr_maxx \n", - " \n", - " gr_corners = (gr_ul, gr_br, gr_lb, gr_ru, gr_ul_fill, gr_br_fill, gr_lb_fill, gr_ru_fill)\n", - " gr_t = (gr_ul_t, gr_br_t, gr_ru_t, gr_lb_t)\n", - " \n", - " # need to decomplexify even #s\n", - " iec_1 = +gr_cyl_miny & +gr_maxx & -eb_maxx & +lb_t & -ru_br\n", - " iec_2 = +gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy & (+ru_ur | +ru_ul | (+ru_cyl_u_in & -ru_cyl_u_out)) & +br_t & -eb_maxx & -eb_maxy\n", - " iec_3 = -gr_cyl_maxx & +gr_maxy & -eb_maxy & +br_t & +ul_ur\n", - " iec_4 = +gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy & (+ul_ul | -ul_bl | (+ul_cyl_l_in & -ul_cyl_l_out)) & +ru_t & +eb_minx & -eb_maxy\n", - " iec_5 = -gr_cyl_maxy & -gr_minx & +eb_minx & +ru_t & +lb_ul\n", - " iec_6 = +gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny & (-lb_bl | -lb_br | (+lb_cyl_b_in & -lb_cyl_b_out)) & +ul_t & +eb_minx & +eb_miny\n", - " iec_7 = +gr_cyl_minx & -gr_miny & +eb_miny & +ul_t & -br_bl\n", - " iec_8 = +gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny & (-br_br | +br_ur | (+br_cyl_r_in & -br_cyl_r_out)) & +lb_t & -eb_maxx & +eb_miny\n", - "\n", - "\n", - " inter_elem_channel = (iec_1, iec_2, iec_3, iec_4, iec_5, iec_6, iec_7, iec_8)\n", - " #inter_elem_channel = (~gr_sq_neg & elem_bound &\n", - " # ~ul & ~br & ~lb & ~ru &\n", - " # +ul_t & +br_t & +ru_t & +lb_t)\n", - " \n", "\n", - " return fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel\n", - " " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "b41ea3c3", - "metadata": {}, - "outputs": [], - "source": [ - "elem_bound = openmc.rectangular_prism(7.62*2, 7.62*2) # Pin outer boundary\n", - "eb_minx, eb_maxx, eb_miny, eb_maxy = list(elem_bound.get_surfaces().values())\n", + " gr_corners = elem_bound & (ul | br | lb | ru | \n", + " -ul_t | -br_t | -ru_t | -lb_t)\n", "\n", - "gr_sq_neg = openmc.rectangular_prism(7.23646*2, 7.23646*2, corner_radius=0.99) # Graphite\n", + " inter_elem_channel = (~gr_sq_neg & elem_bound &\n", + " ~ul & ~br & ~lb & ~ru &\n", + " +ul_t & +ru_t & +ru_t & +lb_t)\n", " \n", - "(gr_minx, gr_maxx, gr_miny, gr_maxy, \n", - "gr_cyl_lb, gr_cyl_minx, gr_cyl_miny, \n", - "gr_cyl_ul, gr_cyl_maxy, gr_cyl_br, \n", - "gr_cyl_maxx, gr_cyl_ru) = list(gr_sq_neg.get_surfaces().values())\n", - "\n", - "# the rounded edges themselves\n", - "quarter_ul = -gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy\n", - "quarter_br = -gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny\n", - "quarter_lb = -gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny\n", - "quarter_ru = -gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy\n", - "quarters = (quarter_ul, quarter_br, quarter_lb, quarter_ru)\n", - "\n", - "# remaining square\n", - "gr_sq = +gr_cyl_minx & -gr_cyl_maxx & +gr_cyl_miny & -gr_cyl_maxy\n", - "\n", - "r_d = 1.16\n", - "e_d = 2 * r_d / np.sqrt(3)\n", - "r_dt = 0.8\n", - "r_c = 0.18\n", - "l1 = 5.8801\n", - "l2 = 6.505\n", - "l3 = 8.03646\n", - "ul = openmc.model.hexagonal_prism(origin=(-l1, l2), edge_length=e_d, orientation='x', corner_radius=r_c)\n", - "(ul_u, ul_b, ul_ur, ul_br, ul_bl, ul_ul,\n", - " ul_cyl_bl_in, ul_cyl_bl_out, \n", - " ul_cyl_ul_in, ul_cyl_ul_out,\n", - " ul_cyl_br_in, ul_cyl_br_out,\n", - " ul_cyl_ur_in, ul_cyl_ur_out,\n", - " ul_cyl_l_in, ul_cyl_l_out,\n", - " ul_cyl_r_in, ul_cyl_r_out)= list(ul.get_surfaces().values())\n", - "br = openmc.model.hexagonal_prism(origin=(l1, -l2), edge_length=e_d, orientation='x',corner_radius=r_c)\n", - "(br_u, br_b, br_ur, br_br, br_bl, br_ul,\n", - " br_cyl_bl_in, br_cyl_bl_out, \n", - " br_cyl_ul_in, br_cyl_ul_out,\n", - " br_cyl_br_in, br_cyl_br_out,\n", - " br_cyl_ur_in, br_cyl_ur_out,\n", - " br_cyl_l_in, br_cyl_l_out,\n", - " br_cyl_r_in, br_cyl_r_out)= list(br.get_surfaces().values())\n", - "lb = openmc.model.hexagonal_prism(origin=(-l2, -l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", - "(lb_r, lb_l, lb_ur, lb_ul, lb_br, lb_bl,\n", - " lb_cyl_lb_in, lb_cyl_lb_out, \n", - " lb_cyl_lu_in, lb_cyl_lu_out,\n", - " lb_cyl_rb_in, lb_cyl_rb_out,\n", - " lb_cyl_ru_in, lb_cyl_ru_out,\n", - " lb_cyl_b_in, lb_cyl_b_out,\n", - " lb_cyl_u_in, lb_cyl_u_out)= list(lb.get_surfaces().values())\n", - "ru = openmc.model.hexagonal_prism(origin=(l2, l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", - "(ru_r, ru_l, ru_ur, ru_ul, ru_br, ru_bl,\n", - " ru_cyl_lb_in, ru_cyl_lb_out, \n", - " ru_cyl_lu_in, ru_cyl_lu_out,\n", - " ru_cyl_rb_in, ru_cyl_rb_out,\n", - " ru_cyl_ru_in, ru_cyl_ru_out,\n", - " ru_cyl_b_in, ru_cyl_b_out,\n", - " ru_cyl_u_in, ru_cyl_u_out)= list(ru.get_surfaces().values())\n", - "ul_t = openmc.ZCylinder(-l1, -l3, r_dt, name='corner_ul_tip')\n", - "br_t = openmc.ZCylinder(l1, l3, r_dt, name='corner_br_tip')\n", - "ru_t = openmc.ZCylinder(-l3, l1, r_dt, name='corner_ru_tip')\n", - "lb_t = openmc.ZCylinder(l3, -l1, r_dt, name='corner_lb_tip')\n", - "\n", - "gr_ul = -ul_ul & -ul_ur & -eb_maxy & +gr_maxy\n", - "gr_ul_fill = -ul_ul & +ul_bl & +ul_cyl_l_out & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy\n", - "gr_br = +br_br & +br_bl & +eb_miny & -gr_miny\n", - "gr_br_fill = +br_br & -br_ur & +br_cyl_r_out & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny\n", - "gr_lb = +lb_bl & -lb_ul & +eb_minx & -gr_minx\n", - "gr_lb_fill = +lb_bl & +lb_br & +lb_cyl_b_out & +gr_cyl_lb & +gr_minx & -gr_cyl_miny & -gr_cyl_minx\n", - "gr_ru = +ru_br & -ru_ur & -eb_maxx & +gr_maxx\n", - "gr_ru_fill = -ru_ur & -ru_ul & +ru_cyl_u_out & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxy & +gr_cyl_maxx\n", - "\n", - "\n", - "gr_ul_t = -ul_t & +eb_miny & -gr_miny\n", - "gr_br_t = -br_t & -eb_maxy & +gr_maxy\n", - "gr_ru_t = -ru_t & +eb_minx & -gr_minx\n", - "gr_lb_t = -lb_t & -eb_maxx & +gr_maxx \n", - "\n", - "gr_corners = (gr_ul, gr_br, gr_lb, gr_ru, gr_ul_fill, gr_br_fill, gr_lb_fill, gr_ru_fill)\n", - "gr_t = (gr_ul_t, gr_br_t, gr_ru_t, gr_lb_t)\n", - "\n", - "# need to decomplexify even #s\n", - "iec_1 = +gr_cyl_miny & +gr_maxx & -eb_maxx & +lb_t & -ru_br\n", - "iec_2 = +gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy & (+ru_ur | +ru_ul | (+ru_cyl_u_in & -ru_cyl_u_out)) & +br_t & -eb_maxx & -eb_maxy\n", - "iec_3 = -gr_cyl_maxx & +gr_maxy & -eb_maxy & +br_t & +ul_ur\n", - "iec_4 = +gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy & (+ul_ul | -ul_bl | (+ul_cyl_l_in & -ul_cyl_l_out)) & +ru_t & +eb_minx & -eb_maxy\n", - "iec_5 = -gr_cyl_maxy & -gr_minx & +eb_minx & +ru_t & +lb_ul\n", - "iec_6 = +gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny & (-lb_bl | -lb_br | (+lb_cyl_b_in & -lb_cyl_b_out)) & +ul_t & +eb_minx & +eb_miny\n", - "iec_7 = +gr_cyl_minx & -gr_miny & +eb_miny & +ul_t & -br_bl\n", - "iec_8 = +gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny & (-br_br | +br_ur | (+br_cyl_r_in & -br_cyl_r_out)) & +lb_t & -eb_maxx & +eb_miny\n", - "\n", - "inter_elem_channel = (iec_1, iec_2, iec_3, iec_4, iec_5, iec_6, iec_7, iec_8)\n", - "#inter_elem_channel = (~gr_sq_neg & elem_bound &\n", - "\n", - "c3 = openmc.Cell(fill=moder, region=(gr_sq), name='cr_moderator')\n", - "\n", - "c3_quarter_u = openmc.Cell(fill=moder, region=quarters[0], name='cr_moderator_quarter_u')\n", - "c3_quarter_l = openmc.Cell(fill=moder, region=quarters[1], name='cr_moderator_quarter_l')\n", - "c3_quarter_b = openmc.Cell(fill=moder, region=quarters[2], name='cr_moderator_quarter_b')\n", - "c3_quarter_r = openmc.Cell(fill=moder, region=quarters[3], name='cr_moderator_quarter_r')\n", - "\n", - "c3_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='cr_moderator_ul')\n", - "c3_br = openmc.Cell(fill=moder, region=gr_corners[1], name='cr_moderator_br')\n", - "c3_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='cr_moderator_ru')\n", - "c3_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='cr_moderator_lb')\n", - "\n", - "c3_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='cr_moderator_ul_fill')\n", - "c3_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='cr_moderator_br_fill')\n", - "c3_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='cr_moderator_ru_fill')\n", - "c3_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='cr_moderator_lb_fill')\n", - "\n", - "c3_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='cr_moderator_ul_t')\n", - "c3_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='cr_moderator_br_t')\n", - "c3_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='cr_moderator_ru_t')\n", - "c3_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='cr_moderator_lb_t')\n", - "\n", - "#c4 = openmc.Cell(fill=fuel, region=inter_elem_channel, name='cr_fuel_outer')\n", - "c41 = openmc.Cell(fill=fuel, region=(inter_elem_channel[0]), name='cr_fuel_outer_1')\n", - "c42 = openmc.Cell(fill=fuel, region=(inter_elem_channel[1]), name='cr_fuel_outer_2')\n", - "c43 = openmc.Cell(fill=fuel, region=(inter_elem_channel[2]), name='cr_fuel_outer_3')\n", - "c44 = openmc.Cell(fill=fuel, region=(inter_elem_channel[3]), name='cr_fuel_outer_4')\n", - "c45 = openmc.Cell(fill=fuel, region=(inter_elem_channel[4]), name='cr_fuel_outer_5')\n", - "c46 = openmc.Cell(fill=fuel, region=(inter_elem_channel[5]), name='cr_fuel_outer_6')\n", - "c47 = openmc.Cell(fill=fuel, region=(inter_elem_channel[6]), name='cr_fuel_outer_7')\n", - "c48 = openmc.Cell(fill=fuel, region=(inter_elem_channel[7]), name='cr_fuel_outer_8')\n", - "\n", - "\n", - "#universe_id=3\n", - "cr = openmc.Universe(name='control_rod')\n", - "cr.add_cells([#c3, #c4,\n", - " #c3_quarter_u, c3_quarter_l, c3_quarter_b, c3_quarter_r,\n", - " c3_ul, c3_br, c3_ru, c3_lb, \n", - " #c3_ulf, c3_brf, c3_ruf, c3_lbf, \n", - " c3_ul_t, c3_br_t, c3_ru_t, c3_lb_t,\n", - " c41, c42, c43, c44, c45, c46, c47, c48])" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "b0dbf19f", - "metadata": {}, - "outputs": [], - "source": [ - "cr.plot(width=(20,20),\n", - " basis='xy',\n", - " colors=colormap,\n", - " origin=(0.,0.,440),\n", - " #color_by='material',\n", - " pixels=(2000,2000))" + "\n", + "\n", + " return fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel\n", + " " ] }, { @@ -985,113 +381,27 @@ "metadata": {}, "outputs": [], "source": [ - "def control_rod(fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel):\n", + "def control_rod(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel):\n", " s1 = openmc.ZCylinder(r=4.7625, name='control_rod')\n", "\n", " c1 = openmc.Cell(fill=moder, region=-s1, name='control_rod')\n", " c2 = openmc.Cell(fill=fuel, region=(+s1 & -fuel_hole), name='cr_fuel_inner')\n", " \n", - " c3 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq), name='cr_moderator')\n", - " \n", - " c3_slab_u = openmc.Cell(fill=moder, region=slabs[0], name='cr_moderator_slab_u')\n", - " c3_slab_l = openmc.Cell(fill=moder, region=slabs[1], name='cr_moderator_slab_l')\n", - " c3_slab_b = openmc.Cell(fill=moder, region=slabs[2], name='cr_moderator_slab_b')\n", - " c3_slab_r = openmc.Cell(fill=moder, region=slabs[3], name='cr_moderator_slab_r')\n", - " \n", - " c3_quarter_u = openmc.Cell(fill=moder, region=quarters[0], name='cr_moderator_quarter_u')\n", - " c3_quarter_l = openmc.Cell(fill=moder, region=quarters[1], name='cr_moderator_quarter_l')\n", - " c3_quarter_b = openmc.Cell(fill=moder, region=quarters[2], name='cr_moderator_quarter_b')\n", - " c3_quarter_r = openmc.Cell(fill=moder, region=quarters[3], name='cr_moderator_quarter_r')\n", - " \n", - " c3_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='cr_moderator_ul')\n", - " c3_br = openmc.Cell(fill=moder, region=gr_corners[1], name='cr_moderator_br')\n", - " c3_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='cr_moderator_ru')\n", - " c3_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='cr_moderator_lb')\n", - " \n", - " c3_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='cr_moderator_ul_fill')\n", - " c3_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='cr_moderator_br_fill')\n", - " c3_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='cr_moderator_ru_fill')\n", - " c3_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='cr_moderator_lb_fill')\n", - " \n", - " c3_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='cr_moderator_ul_t')\n", - " c3_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='cr_moderator_br_t')\n", - " c3_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='cr_moderator_ru_t')\n", - " c3_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='cr_moderator_lb_t')\n", - " \n", - " #c4 = openmc.Cell(fill=fuel, region=inter_elem_channel, name='cr_fuel_outer')\n", - " c41 = openmc.Cell(fill=fuel, region=(inter_elem_channel[0]), name='cr_fuel_outer_1')\n", - " c42 = openmc.Cell(fill=fuel, region=(inter_elem_channel[1]), name='cr_fuel_outer_2')\n", - " c43 = openmc.Cell(fill=fuel, region=(inter_elem_channel[2]), name='cr_fuel_outer_3')\n", - " c44 = openmc.Cell(fill=fuel, region=(inter_elem_channel[3]), name='cr_fuel_outer_4')\n", - " c45 = openmc.Cell(fill=fuel, region=(inter_elem_channel[4]), name='cr_fuel_outer_5')\n", - " c46 = openmc.Cell(fill=fuel, region=(inter_elem_channel[5]), name='cr_fuel_outer_6')\n", - " c47 = openmc.Cell(fill=fuel, region=(inter_elem_channel[6]), name='cr_fuel_outer_7')\n", - " c48 = openmc.Cell(fill=fuel, region=(inter_elem_channel[7]), name='cr_fuel_outer_8')\n", - "\n", - "\n", + " moderator_block = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg | gr_corners), name='cr_moderator')\n", + " fuel_outer = openmc.Cell(fill=fuel, region=inter_elem_channel, name='cr_fuel_outer')\n", " #universe_id=3\n", " cr = openmc.Universe(name='control_rod')\n", - " cr.add_cells([c1, c2, c3, #c4,\n", - " c3_slab_u, c3_slab_l, c3_slab_b, c3_slab_r,\n", - " c3_quarter_u, c3_quarter_l, c3_quarter_b, c3_quarter_r,\n", - " c3_ul, c3_br, c3_ru, c3_lb, \n", - " c3_ulf, c3_brf, c3_ruf, c3_lbf, \n", - " c3_ul_t, c3_br_t, c3_ru_t, c3_lb_t,\n", - " c41, c42, c43, c44, c45, c46, c47, c48])\n", + " cr.add_cells([c1, c2, moderator_block, fuel_outer])\n", " \n", " return cr\n", " \n", - "def control_rod_channel(fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel):\n", + "def control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel):\n", " c1 = openmc.Cell(fill=fuel, region=(-fuel_hole), name='crc_fuel_inner')\n", - " c2 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq), name='crc_moderator')\n", - " \n", - " c2_slab_u = openmc.Cell(fill=moder, region=slabs[0], name='crc_moderator_slab_u')\n", - " c2_slab_l = openmc.Cell(fill=moder, region=slabs[1], name='crc_moderator_slab_l')\n", - " c2_slab_b = openmc.Cell(fill=moder, region=slabs[2], name='crc_moderator_slab_b')\n", - " c2_slab_r = openmc.Cell(fill=moder, region=slabs[3], name='crc_moderator_slab_r')\n", - " \n", - " c2_quarter_u = openmc.Cell(fill=moder, region=quarters[0], name='crc_moderator_quarter_u')\n", - " c2_quarter_l = openmc.Cell(fill=moder, region=quarters[1], name='crc_moderator_quarter_l')\n", - " c2_quarter_b = openmc.Cell(fill=moder, region=quarters[2], name='crc_moderator_quarter_b')\n", - " c2_quarter_r = openmc.Cell(fill=moder, region=quarters[3], name='crc_moderator_quarter_r')\n", - " \n", - " c2_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='crc_moderator_ul')\n", - " c2_br = openmc.Cell(fill=moder, region=gr_corners[1], name='crc_moderator_br')\n", - " c2_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='crc_moderator_ru')\n", - " c2_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='crc_moderator_lb')\n", - " \n", - " c2_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='crc_moderator_ul_fill')\n", - " c2_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='crc_moderator_br_fill')\n", - " c2_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='crc_moderator_ru_fill')\n", - " c2_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='crc_moderator_lb_fill')\n", - " \n", - " c2_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='crc_moderator_ul_t')\n", - " c2_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='crc_moderator_br_t')\n", - " c2_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='crc_moderator_ru_t')\n", - " c2_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='crc_moderator_lb_t')\n", - " \n", - " #c3 = openmc.Cell(fill=fuel, region=inter_elem_channel, name='crc_fuel_outer')\n", - " c31 = openmc.Cell(fill=fuel, region=(inter_elem_channel[0]), name='crc_fuel_outer_1')\n", - " c32 = openmc.Cell(fill=fuel, region=(inter_elem_channel[1]), name='crc_fuel_outer_2')\n", - " c33 = openmc.Cell(fill=fuel, region=(inter_elem_channel[2]), name='crc_fuel_outer_3')\n", - " c34 = openmc.Cell(fill=fuel, region=(inter_elem_channel[3]), name='crc_fuel_outer_4')\n", - " c35 = openmc.Cell(fill=fuel, region=(inter_elem_channel[4]), name='crc_fuel_outer_5')\n", - " c36 = openmc.Cell(fill=fuel, region=(inter_elem_channel[5]), name='crc_fuel_outer_3')\n", - " c37 = openmc.Cell(fill=fuel, region=(inter_elem_channel[6]), name='crc_fuel_outer_7')\n", - " c38 = openmc.Cell(fill=fuel, region=(inter_elem_channel[7]), name='crc_fuel_outer_8')\n", - "\n", - " \n", - "\n", - "\n", + " moderator_block = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg | gr_corners), name='crc_moderator')\n", + " fuel_outer = openmc.Cell(fill=fuel, region=inter_elem_channel, name='crc_fuel_outer')\n", " # universe_id=4\n", " crc = openmc.Universe(name='control_rod_channel')\n", - " crc.add_cells([c1, c2, #c3, \n", - " c2_slab_u, c2_slab_l, c2_slab_b, c2_slab_r,\n", - " c2_quarter_u, c2_quarter_l, c2_quarter_b, c2_quarter_r,\n", - " c2_ul, c2_br, c2_ru, c2_lb, \n", - " c2_ulf, c2_brf, c2_ruf, c2_lbf, \n", - " c2_ul_t, c2_br_t, c2_ru_t, c2_lb_t,\n", - " c31, c32, c33, c34, c35, c36, c37, c38])\n", + " crc.add_cells([c1, moderator_block, fuel_outer])\n", " \n", " return crc" ] @@ -1103,429 +413,42 @@ "metadata": {}, "outputs": [], "source": [ - "fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel = shared_cr_geometry() \n", - "cr = control_rod(fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel)\n", - "fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel = shared_cr_geometry() \n", - "crc = control_rod_channel(fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "35f02392", - "metadata": {}, - "outputs": [], - "source": [ - "cr.cells" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "cb7abdf0", - "metadata": {}, - "outputs": [], - "source": [ - "openmc.Universe(cells=[cr.cells[6724]]).plot(width=(20,20),\n", - " basis='xy',\n", - " colors=colormap,\n", - " origin=(0.,0.,440),\n", - " color_by='material',\n", - " pixels=(1000,1000))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "aa83205f", - "metadata": {}, - "outputs": [], - "source": [ - "cr.plot(width=(20,20),\n", - " basis='xy',\n", - " colors=colormap,\n", - " origin=(0.,0.,440),\n", - " #color_by='material',\n", - " pixels=(2000,2000))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "37a3fa2a", - "metadata": {}, - "outputs": [], - "source": [ - "crc.plot(width=(20,20),\n", - " basis='xy',\n", - " colors=colormap,\n", - " origin=(0.,0.,440),\n", - " color_by='material',\n", - " pixels=(400,400))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "ff53e9bb", - "metadata": {}, - "outputs": [], - "source": [ - "cr.cells" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "0e965d29", - "metadata": {}, - "outputs": [], - "source": [ - "c1 = cr.cells[129]\n", - "c2 = cr.cells[130]\n", - "c3 = cr.cells[131]\n", - "c4 = cr.cells[132]\n", - "c5 = cr.cells[133]\n", - "c6 = cr.cells[134]\n", - "c7 = cr.cells[135]\n", - "c8 = cr.cells[136]\n", - "ttt = openmc.Universe(cells=[])\n", - "ttt = openmc.Universe(cells=[c1, c2, c3, c4, c5, c6, c7, c8])\n", - "ttt.plot(width=(20,20),\n", - " basis='xy',\n", - " colors=colormap,\n", - " origin=(0.,0.,440),\n", - " color_by='material',\n", - " pixels=(800,800))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "cd37f04d", - "metadata": {}, - "outputs": [], - "source": [ - "c5 = cr.cells[250]\n", - "c6 = cr.cells[251]\n", - "c7 = cr.cells[252]\n", - "c8 = cr.cells[253]\n", - "ttt = openmc.Universe(cells=[c5, c6, c7, c8])\n", - "ttt.plot(width=(20,20),\n", - " basis='xy',\n", - " colors=colormap,\n", - " origin=(0.,0.,440),\n", - " color_by='material',\n", - " pixels=(800,800))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "e7721c7b", - "metadata": {}, - "outputs": [], - "source": [ - "c5" - ] - }, - { - "cell_type": "markdown", - "id": "2f5fd590", - "metadata": {}, - "source": [ - "## Figuring out how to decomplexify CR geometry (WIP)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "6f168514", - "metadata": {}, - "outputs": [], - "source": [ - "r_d = 1.16\n", - "r_dt = 0.8\n", - "e_d = 2 * r_d / np.sqrt(3)\n", - "r_c = 0.18\n", - "l1 = 5.8801\n", - "l2 = 6.505\n", - "l3 = 8.03646\n", - "ul = openmc.model.hexagonal_prism(origin=(-l1, l2), edge_length=e_d, orientation='x', corner_radius=r_c)\n", - "br = openmc.model.hexagonal_prism(origin=(l1, -l2), edge_length=e_d, orientation='x',corner_radius=r_c)\n", - "lb = openmc.model.hexagonal_prism(origin=(-l2, -l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", - "ru = openmc.model.hexagonal_prism(origin=(l2, l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", - "gr_sq_neg = openmc.rectangular_prism(7.23646*2, 7.23646*2, corner_radius=0.99) # Graphite square\n", - "elem_bound = openmc.rectangular_prism(7.62*2, 7.62*2) # Pin outer boundary\n", - "\n", - "ul_t = openmc.ZCylinder(-l1, -l3, r_dt, name='corner_ul_tip')\n", - "br_t = openmc.ZCylinder(l1, l3, r_dt, name='corner_br_tip')\n", - "ru_t = openmc.ZCylinder(-l3, l1, r_dt, name='corner_ru_tip')\n", - "lb_t = openmc.ZCylinder(l3, -l1, r_dt, name='corner_lb_tip')\n", - "c1 = openmc.Cell(fill=moder, region=ul)\n", - "c2 = openmc.Cell(fill=moder, region=br)\n", - "c3 = openmc.Cell(fill=moder, region=lb)\n", - "c4 = openmc.Cell(fill=moder, region=ru)\n", - "c5 = openmc.Cell(fill=hast, region=gr_sq_neg)\n", - "c6 = openmc.Cell(fill=fuel, region=-ul_t)\n", - "c7 = openmc.Cell(fill=fuel, region=-br_t)\n", - "c8 = openmc.Cell(fill=fuel, region=-ru_t)\n", - "c9 = openmc.Cell(fill=fuel, region=-lb_t)\n", - "c10 = openmc.Cell(fill=moder, region=elem_bound)\n", - "\n", - "tu = openmc.Universe(cells=[c1, c2, c3, c4, c5, c6, c7, c8, c9, c10])" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "557bcb8f", - "metadata": {}, - "outputs": [], - "source": [] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "67a1317a", - "metadata": {}, - "outputs": [], - "source": [ - "ul = openmc.model.hexagonal_prism(origin=(-l1, l2), edge_length=e_d, orientation='x', corner_radius=r_c)\n", - "# for x oriented\n", - "(ul_u, ul_b, ul_ur, ul_br, ul_bl, ul_ul,\n", - " ul_cyl_bl_in, ul_cyl_bl_out, \n", - " ul_cyl_ul_in, ul_cyl_ul_out,\n", - " ul_cyl_br_in, ul_cyl_br_out,\n", - " ul_cyl_ur_in, ul_cyl_ur_out,\n", - " ul_cyl_l_in, ul_cyl_l_out,\n", - " ul_cyl_r_in, ul_yl_r_out)= list(ul.get_surfaces().values())" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "b07e3b36", - "metadata": {}, - "outputs": [], - "source": [ - "c3" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "690e90ee", - "metadata": {}, - "outputs": [], - "source": [ - "(lb_r, lb_l, lb_ur, lb_ul, lb_br, lb_bl,\n", - " lb_cyl_lb_in, lb_cyl_lb_out, \n", - " lb_cyl_lu_in, lb_cyl_lu_out,\n", - " lb_cyl_rb_in, lb_cyl_rb_out,\n", - " lb_cyl_ru_in, lb_cyl_ru_out,\n", - " lb_cyl_b_in, lb_cyl_b_out,\n", - " lb_cyl_u_in, lb_yl_u_out)= list(lb.get_surfaces().values())" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "9ea0eaec", - "metadata": {}, - "outputs": [], - "source": [ - "lb.get_surfaces()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "2f268e09", - "metadata": {}, - "outputs": [], - "source": [ - "#t = openmc.Region.from_expression('(-1448 1449 -1450 1451 1452 -1453 ~((1454 -1460) | (1455 -1461) | (1456 -1462) | (1457 -1463) | (1458 -1464) | (1459 -1465)))', c1.region.get_surfaces())\n", - "#t = openmc.Region.from_expression('(-1448 1449 -1450 1451 1452 -1453 ((-1454 | 1460) (-1455 | 1461) (-1456 | 1462) (-1457 | 1463) (-1458 | 1464) (-1459 | 1465)))', c1.region.get_surfaces())\n", - "t = openmc.Region.from_expression('(-772 773 -774 -775 776 777 (778 -784))', c3.region.get_surfaces())\n", + "#fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel = shared_cr_geometry() \n", "\n", - "#t = openmc.Region.from_expression('((-1454 | -1455 | -1456 | -1457 | -1458 | -1459) | 1460 1461 1462 1463 1464 1465)', c1.region.get_surfaces())\n", - "#t = openmc.Region.from_expression('(-1448 1449 -1450 1451 1452 -1453 (-1454 | -1455 | -1456 | -1457 | -1458 | -1459 | 1460 1461 1462 1463 1464 1465))', c1.region.get_surfaces())\n" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "0e6ee5dc", - "metadata": {}, - "outputs": [], - "source": [ - "tt = openmc.Cell(fill=moder, region=t)\n", - "ttt = openmc.Universe(cells=[tt])\n", - "ttt.plot(width=(20,20),\n", - " basis='xy',\n", - " colors=colormap,\n", - " origin=(0.,0.,440),\n", - " color_by='material',\n", - " pixels=(800,800))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "2b22c009", - "metadata": {}, - "outputs": [], - "source": [ - "tu.plot(width=(20,20),\n", - " basis='xy',\n", - " colors=colormap,\n", - " origin=(0.,0.,440),\n", - " #color_by='material',\n", - " pixels=(800,800))" + "#cr = control_rod(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel)\n", + "#crc = control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel)" ] }, { "cell_type": "code", "execution_count": null, - "id": "4cb184e6", + "id": "01b506f1", "metadata": {}, "outputs": [], "source": [ - "s1 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=208.28, r2=222.71, name='base_octader')\n", - "s2 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=218.44, r2=215.53, name='smaller_octader')\n", - "s3 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=228.60, r2=193.97, name='smallest_octader')\n", - "oct1 = list((-s1).get_surfaces().values())\n", - "oct2 = list((-s2).get_surfaces().values())\n", - "oct3 = list((-s3).get_surfaces().values())\n", - "octas = (oct1, oct2, oct3)\n", - "oct1_maxy, oct1_miny, oct1_maxx, oct1_minx, oct1_ur, oct1_br, oct1_bl, oct1_ul = octas[0]\n", - "oct2_maxy, oct2_miny, oct2_maxx, oct2_minx, oct2_ur, oct2_br, oct2_bl, oct2_ul = octas[1]\n", - "oct3_maxy, oct3_miny, oct3_maxx, oct3_minx, oct3_ur, oct3_br, oct3_bl, oct3_ul = octas[2]\n", - "\n", - "cr_boundary = openmc.model.rectangular_prism(15.24*2, 15.24*2)\n", - "\n", - "cb_minx, cb_maxx, cb_miny, cb_maxy = list(cr_boundary.get_surfaces().values())\n", - "\n", - "#c1 = openmc.Cell(fill=moder, region=+s3 & -s2)\n", - "c1_ur = openmc.Cell(fill=moder, region=(-oct3_ur & +oct2_ur & -oct2_maxx & -oct2_maxy))\n", - "c1_ul = openmc.Cell(fill=moder, region=(+oct3_ul & -oct2_ul & +oct2_minx & -oct2_maxy))\n", - "c1_bl = openmc.Cell(fill=moder, region=(+oct3_bl & -oct2_bl & +oct2_minx & +oct2_miny))\n", - "c1_br = openmc.Cell(fill=moder, region=(-oct3_br & +oct2_br & -oct2_maxx & +oct2_miny))\n", - "c1 = [c1_ur, c1_ul, c1_bl, c1_br]\n", - "\n", - "#c2 = openmc.Cell(fill=moder, region=-s3)\n", - "c2_r = openmc.Cell(fill=moder, region=(+cb_maxx & +cb_miny & -cb_maxy & -oct3_maxx))\n", - "c2_ur = openmc.Cell(fill=moder, region=(+cb_maxx & +cb_maxy & -oct3_maxx & -oct3_maxy & +oct3_ur))\n", - "c2_u = openmc.Cell(fill=moder, region=(+cb_maxy & +cb_minx & -cb_maxx & -oct3_maxy))\n", - "c2_ul = openmc.Cell(fill=moder, region=(-cb_minx & +cb_maxy & +oct3_minx & -oct3_maxy & -oct3_ul))\n", - "c2_l = openmc.Cell(fill=moder, region=(-cb_minx & +cb_miny & -cb_maxy & +oct3_minx))\n", - "c2_bl = openmc.Cell(fill=moder, region=(-cb_minx & -cb_miny & +oct3_minx & +oct3_miny & -oct3_bl))\n", - "c2_b = openmc.Cell(fill=moder, region=(-cb_miny & +cb_minx & -cb_maxx & +oct3_miny))\n", - "c2_br = openmc.Cell(fill=moder, region=(+cb_maxx & -cb_miny & -oct3_maxx & +oct3_miny & +oct3_br))\n", - "\n", - "\n", - "c2 = [c2_r, c2_ur, c2_u, c2_ul, c2_l, c2_bl, c2_b, c2_br]\n", - "\n", - "#c3 = openmc.Cell(fill=moder, region=-s1 & +s2)\n", - "c3_ur = openmc.Cell(fill=moder, region=(-oct2_ur & +oct1_ur & -oct1_maxx & -oct1_maxy))\n", - "c3_ul = openmc.Cell(fill=moder, region=(+oct2_ul & -oct1_ul & +oct1_minx & -oct1_maxy))\n", - "c3_bl = openmc.Cell(fill=moder, region=(+oct2_bl & -oct1_bl & +oct1_minx & +oct1_miny))\n", - "c3_br = openmc.Cell(fill=moder, region=(-oct2_br & +oct1_br & -oct1_maxx & +oct1_miny))\n", - "c3 = [c3_ur, c3_ul, c3_bl, c3_br]\n", - "\n", - "u = openmc.Universe()\n", - "#u.add_cells(c1)\n", - "#u.add_cells(c2)\n", - "u.add_cells(c3)\n", - "\n", - "u.plot(width=(700,700),\n", - " basis='xy',\n", - " #colors={c1: 'red', c2:'blue', c3:'green'},\n", - " origin=(0.,0.,200),\n", - " #color_by='material',\n", - " pixels=(1000,1000))" + "#cr.plot(width=(20,20),\n", + "# basis='xy',\n", + "# colors=colormap,\n", + "# origin=(0.,0.,440),\n", + "# color_by='material',\n", + "# pixels=(400,400))" ] }, { "cell_type": "code", "execution_count": null, - "id": "ce941880", + "id": "f2369aa1", "metadata": {}, "outputs": [], "source": [ - "s1 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=208.28, r2=222.71, name='base_octader')\n", - "s2 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=218.44, r2=215.53, name='smaller_octader')\n", - "s3 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=228.60, r2=193.97, name='smallest_octader')\n", - "oct1 = list((-s1).get_surfaces().values())\n", - "oct2 = list((-s2).get_surfaces().values())\n", - "oct3 = list((-s3).get_surfaces().values())\n", - "octas = (oct1, oct2, oct3)\n", - "oct1_maxy, oct1_miny, oct1_maxx, oct1_minx, oct1_ur, oct1_br, oct1_bl, oct1_ul = octas[0]\n", - "oct2_maxy, oct2_miny, oct2_maxx, oct2_minx, oct2_ur, oct2_br, oct2_bl, oct2_ul = octas[1]\n", - "oct3_maxy, oct3_miny, oct3_maxx, oct3_minx, oct3_ur, oct3_br, oct3_bl, oct3_ul = octas[2]\n", - "\n", - "zone_ii_boundary = openmc.ZCylinder(r=256.032, name='iib_boundary')\n", - "\n", - "cr_boundary = openmc.model.rectangular_prism(15.24*2, 15.24*2)\n", - "cb_minx, cb_maxx, cb_miny, cb_maxy = list(cr_boundary.get_surfaces().values())\n", - "\n", - "\n", - "rr = openmc.Cell(fill=moder, region=(+oct3_maxx & +cb_miny & -cb_maxy & -zone_ii_boundary))\n", - "uu = openmc.Cell(fill=moder, region=(+oct3_maxy & +cb_minx & -cb_maxx & -zone_ii_boundary))\n", - "ll = openmc.Cell(fill=moder, region=(-oct3_minx & +cb_miny & -cb_maxy & -zone_ii_boundary))\n", - "bb = openmc.Cell(fill=moder, region=(-oct3_miny & +cb_minx & -cb_maxx & -zone_ii_boundary))\n", - "\n", - "#c1 = openmc.Cell(fill=moder, region=((+s3 & +s2 & +s1) & -zone_ii_boundary))\n", - "ur = openmc.Cell(fill=moder, region=((-oct1_ur | +oct1_maxx | +oct1_maxy) &\n", - " (-oct2_ur | +oct2_maxx | +oct2_maxy) &\n", - " (-oct3_ur | +oct3_maxx | +oct3_maxy) & -zone_ii_boundary\n", - " & +cb_maxx & +cb_maxy))\n", - "ul = openmc.Cell(fill=moder, region=((+oct1_ul | -oct1_minx | +oct1_maxy) &\n", - " (+oct2_ul | -oct2_minx | +oct2_maxy) &\n", - " (+oct3_ul | -oct3_minx | +oct3_maxy) & -zone_ii_boundary\n", - " & -cb_minx & +cb_maxy))\n", - "bl = openmc.Cell(fill=moder, region=((+oct1_bl | -oct1_minx | -oct1_miny) &\n", - " (+oct2_bl | -oct2_minx | -oct2_miny) &\n", - " (+oct3_bl | -oct3_minx | -oct3_miny) & -zone_ii_boundary\n", - " & -cb_minx & -cb_miny))\n", - "br = openmc.Cell(fill=moder, region=((-oct1_br | +oct1_maxx | -oct1_miny) &\n", - " (-oct2_br | +oct2_maxx | -oct2_miny) &\n", - " (-oct3_br | +oct3_maxx | -oct3_miny) & -zone_ii_boundary\n", - " & +cb_maxx & -cb_miny))\n", - "#c3_ul = openmc.Cell(fill=moder, region=(+oct2_ul & -oct1_ul & +oct1_minx & -oct1_maxy))\n", - "#c3_bl = openmc.Cell(fill=moder, region=(+oct2_bl & -oct1_bl & +oct1_minx & +oct1_miny))\n", - "#c3_br = openmc.Cell(fill=moder, region=(-oct2_br & +oct1_br & -oct1_maxx & +oct1_miny))\n", - "#c1_ur = openmc.Cell(fill=moder, region=(-oct3_ur & +oct1_maxx & +oct1_maxy & -zone_ii_boundary))\n", - "#c1 = [c1_ur]\n", - "#c2 = openmc.Cell(fill=moder, region=+s1 & -zone_ii_boundary)\n", - "\n", - "\n", - "#c2 = [c2_r, c2_ur, c2_u, c2_ul, c2_l, c2_bl, c2_b, c2_br]\n", - "\n", - "#c3 = openmc.Cell(fill=moder, region=-s1 & +s2)\n", - "\n", - "u = openmc.Universe()\n", - "#u.add_cells(c1)\n", - "u.add_cells([ur, ul, bl, br, ll, rr, bb, uu])\n", - "#u.add_cells(c3)\n", - "\n", - "u.plot(width=(700,700),\n", - " basis='xy',\n", - " #colors={c1: 'red', c2:'blue', c3:'green'},\n", - " origin=(0.,0.,200),\n", - " #color_by='material',\n", - " pixels=(1000,1000))" + "#crc.plot(width=(20,20),\n", + "# basis='xy',\n", + "# colors=colormap,\n", + "# origin=(0.,0.,440),\n", + "# color_by='material',\n", + "# pixels=(400,400))" ] }, - { - "cell_type": "code", - "execution_count": null, - "id": "7f439005", - "metadata": {}, - "outputs": [], - "source": [] - }, { "cell_type": "code", "execution_count": null, @@ -1577,10 +500,11 @@ " return zone_bounds, core_bounds, reflector_bounds, vessel_bounds\n", "\n", "def cr_lattice(cr_boundary, core_base, core_top):\n", - " fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel = shared_cr_geometry() \n", - " f = control_rod(fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel)\n", - " fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel = shared_cr_geometry() \n", - " e = control_rod_channel(fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel)\n", + " fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel = shared_cr_geometry() \n", + " elem_bound = openmc.rectangular_prism(7.62*2, 7.62*2) # Pin outer boundary\n", + "\n", + " f = control_rod(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel)\n", + " e = control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel)\n", " \n", " cr = openmc.RectLattice()\n", " cr.pitch = np.array([15.24, 15.24])\n", @@ -1593,11 +517,10 @@ " \n", " return c1\n", "\n", - "def main_lattice(zone_i_octas, cr_boundary, core_base, core_top):\n", - " elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4 = shared_elem_geometry()\n", - " l = zoneIA(elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4)\n", - " elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4 = shared_elem_geometry()\n", - " z = zoneIIA(elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4)\n", + "def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top):\n", + " elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4 = shared_elem_geometry()\n", + " l = zoneIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4)\n", + " z = zoneIIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4)\n", " v = void_cell(elem_bound)\n", " # tres, uno, dos, quatro\n", " t, u, d, q = graphite_triangles(elem_bound) \n", @@ -1743,96 +666,66 @@ " \n", " elem_cells = []\n", " for i, pos in enumerate(large_positions):\n", - " pos = np.round(pos, 3)\n", - " r1_big, r2_big = big_radii[i]\n", - " t1_big = pos - large_half_w\n", - " t2_big = pos + large_half_w\n", - " s1 = openmc.model.CylinderSector(r1_big, r2_big, t1_big, t2_big)\n", - " s2 = openmc.ZCylinder(**hole_args[i])\n", - " elem_cells.append(openmc.Cell(fill=moder, region=(-s1 & +s2), name=f'iib_large_element_{pos}'))\n", - " elem_cells.append(openmc.Cell(fill=fuel, region=(-s2),\n", - " name=f'iib_large_element_fuel_hole_{pos}'))\n", - " t1_small = t2_big + adjacent_angular_offset\n", - " r1_small, r2_small = small_radii\n", - " \n", - " # Inter element fuel channel\n", - " s3 = openmc.model.CylinderSector(r1_small, r2_small, t2_big, t1_small)\n", - " cpos = t2_big + (adjacent_angular_offset / 2)\n", - " cpos = np.round(cpos, 3)\n", - " elem_cells.append(openmc.Cell(fill=fuel, region=-s3,\n", - " name=f'inter_element_fuel_channel_{cpos}'))\n", - " \n", - " t4a = t1_big - adjacent_angular_offset\n", - " s4 = openmc.model.CylinderSector(r1_small, r1_big, t4a, t1_small)\n", - " elem_cells.append(openmc.Cell(fill=fuel, region=-s4,\n", - " name=f'inter_element_fuel_channel_{pos}'))\n", - " \n", + " r1, r2 = big_radii[i]\n", + " t1 = pos - large_half_w\n", + " t2 = pos + large_half_w\n", + " large_elem = openmc.model.CylinderSector(r1, r2, t1, t2)\n", + " elem_hole = hole_region.rotate((0.0, 0.0, pos))\n", + " elem_reg = -large_elem & elem_hole\n", + " # comment/uncomment\n", + " #elem_cells.append(openmc.Cell(fill=moder, region=(elem_reg & \n", + " # ~zone_i_boundary &\n", + " # +core_base & \n", + " # -core_top), name=f'iib_large_element_{pos}'))\n", + " if isinstance(zone_iib_reg, openmc.Region):\n", + " zone_iib_reg = zone_iib_reg | elem_reg\n", + " else:\n", + " zone_iib_reg = elem_reg\n", + " small_start = t2 + adjacent_angular_offset\n", + " r1, r2 = small_radii\n", + " t1 = small_start\n", " for i in range(0, small_elems_per_octant):\n", - " t2_small = t1_small + small_angular_width\n", - " \n", - " # reflector element\n", - " s5 = openmc.model.CylinderSector(r1_small, r2_small, t1_small, t2_small)\n", - " pos = t2_small - (small_angular_width / 2)\n", - " pos = np.round(pos, 3)\n", - " elem_cells.append(openmc.Cell(fill=moder, region=-s5, name=f'iib_small_element_{pos}'))\n", - " t1_small = t2_small + adjacent_angular_offset\n", - " \n", - " # inter-element fuel channel\n", - " s6 = openmc.model.CylinderSector(r1_small, r2_small, t2_small, t1_small)\n", - " cpos = t2_small + (adjacent_angular_offset/2)\n", - " cpos = np.round(cpos, 3)\n", - " elem_cells.append(openmc.Cell(fill=fuel, region=-s6,\n", - " name=f'inter_element_fuel_channel_{cpos}'))\n", - " \n", - "\n", + " t2 = t1 + small_angular_width\n", + " elem_reg = -openmc.model.CylinderSector(r1, r2, t1, t2)\n", + " pos = t2 - (small_angular_width / 2)\n", + " # comment/uncomment\n", + " # elem_cells.append(openmc.Cell(fill=moder, region=(elem_reg & \n", + " # ~zone_i_boundary &\n", + " # +core_base & \n", + " # -core_top), name=f'iib_small_element_{pos}'))\n", + " zone_iib_reg = zone_iib_reg | elem_reg\n", + " t1 = t2 + adjacent_angular_offset\n", + " \n", + " # uncomment/comment\n", + " c1 = openmc.Cell(fill=moder, region=(zone_iib_reg &\n", + " ~zone_i_boundary &\n", + " +core_base &\n", + " -core_top), name='iib_moderator')\n", + " c2 = openmc.Cell(fill=fuel, region=(~zone_iib_reg & \n", + " ~zone_i_boundary & \n", + " -zone_ii_boundary & \n", + " +core_base & \n", + " -core_top), name='iib_fuel')\n", + " \n", + " # comment/uncomment\n", " #universe_id=10\n", - " iib = openmc.Universe(name='zone_iib')\n", - " iib.add_cells(elem_cells)\n", - " \n", - " oct1_maxy, oct1_miny, oct1_maxx, oct1_minx, oct1_ur, oct1_br, oct1_bl, oct1_ul = zone_i_octas[0]\n", - " oct2_maxy, oct2_miny, oct2_maxx, oct2_minx, oct2_ur, oct2_br, oct2_bl, oct2_ul = zone_i_octas[1]\n", - " oct3_maxy, oct3_miny, oct3_maxx, oct3_minx, oct3_ur, oct3_br, oct3_bl, oct3_ul = zone_i_octas[2]\n", - " cb_minx, cb_maxx, cb_miny, cb_maxy = list(cr_boundary.get_surfaces().values())\n", + " #iib = openmc.Universe(name='zone_iib')\n", + " #iib.add_cell(c2)\n", + " #iib.add_cell(c1)\n", + " # comment/uncomment\n", + " #iib.add_cells(elem_cells)\n", " \n", + " # comment/uncomment\n", + " #c3 = openmc.Cell(fill=iib, region=(~zone_i_boundary & \n", + " # -zone_ii_boundary & \n", + " # +core_base & \n", + " # -core_top), name='zone_iib')\n", " \n", - " c1_r = openmc.Cell(fill=iib, region=(+oct3_maxx & +cb_miny & -cb_maxy & -zone_ii_boundary),\n", - " name='zone_ii_b_r')\n", - " c1_ur = openmc.Cell(fill=iib, region=((-oct1_ur | +oct1_maxx | +oct1_maxy) &\n", - " (-oct2_ur | +oct2_maxx | +oct2_maxy) &\n", - " (-oct3_ur | +oct3_maxx | +oct3_maxy) & -zone_ii_boundary\n", - " & +cb_maxx & +cb_maxy),\n", - " name='zone_ii_b_ur')\n", - " c1_u = openmc.Cell(fill=iib, region=(+oct3_maxy & +cb_minx & -cb_maxx & -zone_ii_boundary),\n", - " name='zone_ii_b_u')\n", - " c1_ul = openmc.Cell(fill=iib, region=((+oct1_ul | -oct1_minx | +oct1_maxy) &\n", - " (+oct2_ul | -oct2_minx | +oct2_maxy) &\n", - " (+oct3_ul | -oct3_minx | +oct3_maxy) & -zone_ii_boundary\n", - " & -cb_minx & +cb_maxy),\n", - " name='zone_ii_b_ul')\n", - " c1_l = openmc.Cell(fill=iib, region=(-oct3_minx & +cb_miny & -cb_maxy & -zone_ii_boundary),\n", - " name='zone_ii_b_l')\n", - " c1_bl = openmc.Cell(fill=iib, region=((+oct1_bl | -oct1_minx | -oct1_miny) &\n", - " (+oct2_bl | -oct2_minx | -oct2_miny) &\n", - " (+oct3_bl | -oct3_minx | -oct3_miny) & -zone_ii_boundary\n", - " & -cb_minx & -cb_miny),\n", - " name='zone_ii_b_bl')\n", - " c1_b = openmc.Cell(fill=iib, region=(-oct3_miny & +cb_minx & -cb_maxx & -zone_ii_boundary),\n", - " name='zone_ii_b_b')\n", - " c1_br = openmc.Cell(fill=iib, region=((-oct1_br | +oct1_maxx | -oct1_miny) &\n", - " (-oct2_br | +oct2_maxx | -oct2_miny) &\n", - " (-oct3_br | +oct3_maxx | -oct3_miny) & -zone_ii_boundary\n", - " & +cb_maxx & -cb_miny),\n", - " name='zone_ii_b_br')\n", - " c1 = openmc.Cell(fill=iib, region=(+zone_i_boundary[0] & +zone_i_boundary[1] & +zone_i_boundary[2] & \n", - " -zone_ii_boundary & \n", - " +core_base & \n", - " -core_top), name='zone_iib')\n", - " #c1 = [c1_r, c1_ur, c1_u, c1_ul, c1_l, c1_bl, c1_b, c1_br]\n", - " #for c in c1:\n", - " # c.region = c.region & +core_base & -core_top\n", - "\n", - " \n", - " return [c1]\n", + " #comment/uncomment\n", + " #return c3\n", + "\n", + " # uncomment/comment\n", + " return c1, c2\n", "\n", "def annulus(zone_ii_boundary, annulus_boundary, core_base, core_top):\n", " annulus_reg = +zone_ii_boundary & -annulus_boundary & +core_base & -core_top\n", @@ -1881,36 +774,6 @@ " return c1, c2, c3" ] }, - { - "cell_type": "code", - "execution_count": null, - "id": "5d440e6d", - "metadata": {}, - "outputs": [], - "source": [ - "t = -zone_i_boundary[0]" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "2a3a1651", - "metadata": {}, - "outputs": [], - "source": [ - "zone_i_boundary[0].bottom" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "93fdcaf0", - "metadata": {}, - "outputs": [], - "source": [ - "maxy, miny, maxx, minx, ur, br, bl, ul = list(t.get_surfaces().values())" - ] - }, { "cell_type": "code", "execution_count": null, @@ -1927,7 +790,7 @@ "\n", "main1, main2, main3 = main_lattice(zone_i_octas, cr_boundary, core_base, core_top)\n", "cr = cr_lattice(cr_boundary, core_base, core_top)\n", - "iib = zoneIIB(zone_i_octas, zone_i_boundary, cr_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top)\n", + "iib_m, iib_f = zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top)\n", "a = annulus(zone_ii_boundary, annulus_boundary, core_base, core_top)\n", "lp = lower_plenum(core_base, lower_plenum_boundary, annulus_boundary)\n", "\n", @@ -1946,26 +809,7 @@ " bottom_reflector_boundary)\n", "\n", "testuniverse = openmc.Universe()\n", - "testuniverse.add_cells([cr, lp, a, rr, rb, rt, vr, vb, vt])\n", - "testuniverse.add_cells(main1)\n", - "testuniverse.add_cells(main2)\n", - "testuniverse.add_cells(main3)\n", - "testuniverse.add_cells(iib)\n" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "3b888598", - "metadata": {}, - "outputs": [], - "source": [ - "iib.fill.plot(width=(700,700),\n", - " basis='xy',\n", - " colors=colormap,\n", - " origin=(0.,0.,200),\n", - " color_by='material',\n", - " pixels=(1000,1000))" + "testuniverse.add_cells([cr, main, iib_m, iib_f, lp, a, rr, rb, rt, vr, vb, vt])" ] }, { @@ -1977,12 +821,12 @@ }, "outputs": [], "source": [ - "testuniverse.plot(width=(700,700),\n", - " basis='xy',\n", - " colors=colormap,\n", - " origin=(0.,0.,200),\n", - " color_by='material',\n", - " pixels=(1000,1000))" + "#testuniverse.plot(width=(700,700),\n", + "# basis='xy',\n", + "# colors=colormap,\n", + "# origin=(0.,0.,200),\n", + "# color_by='material',\n", + "# pixels=(1000,1000))" ] }, { @@ -2010,29 +854,9 @@ "geo = openmc.Geometry()\n", "geo.root_universe = testuniverse\n", "geo.remove_redundant_surfaces()\n", - "#geo.export_to_xml()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "48d744d2", - "metadata": {}, - "outputs": [], - "source": [ "geo.export_to_xml()" ] }, - { - "cell_type": "code", - "execution_count": null, - "id": "524f65b6", - "metadata": {}, - "outputs": [], - "source": [ - "geo.get_all_cells()" - ] - }, { "cell_type": "code", "execution_count": null, diff --git a/examples/msbr/openmc_model.py b/examples/msbr/openmc_model.py index 436138fe8..f0603b9fd 100644 --- a/examples/msbr/openmc_model.py +++ b/examples/msbr/openmc_model.py @@ -1,6 +1,5 @@ import openmc import numpy as np -from openmc.deplete import CoupledOperator, PredictorIntegrator, CELIIntegrator from _core_elements import * from _control_rods import * @@ -8,8 +7,7 @@ # Materials -T = 900 -fuel = openmc.Material(name='fuel', temperature=T) +fuel = openmc.Material(name='fuel') fuel.set_density('g/cm3', density=3.35) fuel.add_components({'Li7': 0.0787474673879085, 'Be9': 0.0225566879138321, @@ -20,12 +18,12 @@ fuel.depletable = True fuel.volume = 48710000.0 -moder = openmc.Material(name='graphite', temperature=T) +moder = openmc.Material(name='graphite') moder.set_density('g/cm3', density=1.84) moder.add_nuclide('C0', 1.000, percent_type='wo') moder.add_s_alpha_beta('c_Graphite') -hast = openmc.Material(name='hastelloyN', temperature=T) +hast = openmc.Material(name='hastelloyN') hast.set_density('g/cm3', density=8.671) hast.add_components({'Al27': 0.003, 'Ni': 0.677, @@ -38,26 +36,26 @@ # Geometry def cr_lattice(cr_boundary, core_base, core_top): - fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel = shared_cr_geometry() - f = control_rod(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, fuel, moder) - fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel = shared_cr_geometry() - e = control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, fuel, moder) + fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel = shared_cr_geometry() + elem_bound = openmc.rectangular_prism(7.62*2, 7.62*2) # Pin outer boundary + + f = control_rod(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel, moder, fuel) + e = control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel, moder, fuel) cr = openmc.RectLattice() cr.pitch = np.array([15.24, 15.24]) N = 2 / 2 cr.lower_left = -1 * cr.pitch * N - cr.universes = [[e, f], - [f, e]] + cr.universes = [[f, e], + [e, f]] c1 = openmc.Cell(fill=cr, region=(+core_base & -core_top & cr_boundary), name='cr_lattice') return c1 def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): - elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4 = shared_elem_geometry() - l = zoneIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4, moder, fuel, hast) - elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4 = shared_elem_geometry() - z = zoneIIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4, moder, fuel) + elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4 = shared_elem_geometry() + l = zoneIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4, moder, fuel, hast) + z = zoneIIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4, moder, fuel) v = void_cell(elem_bound) # tres, uno, dos, quatro t, u, d, q = graphite_triangles(elem_bound, moder, fuel) @@ -123,7 +121,7 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): main = main_lattice(zone_i_boundary, cr_boundary, core_base, core_top) cr = cr_lattice(cr_boundary, core_base, core_top) -iib = zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top, moder, fuel) +iib_m, iib_f = zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top, moder, fuel) a = annulus(zone_ii_boundary, annulus_boundary, core_base, core_top, fuel) lp = lower_plenum(core_base, lower_plenum_boundary, annulus_boundary, fuel) @@ -145,7 +143,7 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): geo = openmc.Geometry() univ = openmc.Universe() -univ.add_cells([cr, main, iib, lp, a, rr, rb, rt, vr, vb, vt]) +univ.add_cells([cr, main, iib_m, iib_f, lp, a, rr, rb, rt, vr, vb, vt]) geo.root_universe = univ geo.remove_redundant_surfaces() @@ -153,12 +151,10 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): # Settings settings = openmc.Settings() -settings.particles = 10000 -settings.batches = 150 -settings.inactive = 25 -settings.generations_per_batch = 1 -settings.temperature = {'default': 900, 'method': 'interpolation', 'range': (800, 1000)} -#settings.temperature = {'default': 600, 'method': 'nearest'} +settings.particles = 300 +settings.batches = 400 +settings.inactive = 10 +settings.temperature = {'default': 900, 'method': 'interpolation'} settings.export_to_xml() # Plots @@ -172,42 +168,6 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): ## Slice plots plots = openmc.Plots() -plot = openmc.Plot(name='serpent-plot-1_full-zoneIA-main') -plot.origin=(0, 0, 150.5) -plot.width=(600, 600) -plot.pixels=full_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='serpent-plot-2') -plot.origin=(0, -77.5, 200) -plot.width=(155, 700) -plot.pixels=(1550, 3400) -plot.color_by='material' -plot.colors=colormap -plot.basis='yz' -plots.append(plot) - -plot = openmc.Plot(name='serpent-plot-3') -plot.origin=(0, 0, 155) -plot.width=(40, 40) -plot.pixels=detail_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='yz' -plots.append(plot) - -plot = openmc.Plot(name='serpent-plot-4') -plot.origin=(16.5, 0, 200) -plot.width=(700, 700) -plot.pixels=(2000, 2000) -plot.color_by='material' -plot.colors=colormap -plot.basis='yz' -plots.append(plot) - plot = openmc.Plot(name='detail-zoneIA-IIA-lower1') plot.origin=(215, 0, 10.0) plot.width=(40, 40) @@ -298,6 +258,15 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): plot.basis='xy' plots.append(plot) +plot = openmc.Plot(name='full-zoneIA-main') +plot.origin=(0, 0, 23.0) +plot.width=(600, 600) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + plot = openmc.Plot(name='full-zoneIIA-upper1') plot.origin=(0, 0, 435) plot.width=(600, 600) @@ -379,93 +348,15 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): plot.basis='xz' plots.append(plot) -plots.export_to_xml() +if plots_3d: + plot = openmc.Plot(name='full-core-3d') + plot.origin=(0,0,220) + plot.type = 'voxel' + plot.color_by='materials' + plot.colors=colormap + plot.width = (700., 700., 650.) + plot.pixels = (10000, 10000, 10000) -DEPLETE = False -if DEPLETE: - fiss_q = { - "Am243": 212952778.98135212, - "Cm246": 220179493.9541502, - "U239": 196182721.4907133, - "Np239": 198519429.0542043, - "Th233": 185840570.73897627, - "Cf251": 223166396.6983342, - "Am242": 215146730.16368726, - "Cm245": 214624022.18345505, - "Cf254": 230600814.3619568, - "Am241": 211216798.63643932, - "Th232": 197108389.42449385, - "Cm240": 219583368.40646642, - "Th231": 186918512.14598972, - "Bk246": 224446497.874413, - "Cm247": 218956599.9139631, - "U238": 206851381.70909396, - "Bk250": 225432928.78068554, - "U230": 198841127.68309468, - "Cf249": 221434495.10716867, - "U234": 200632850.9958874, - "Cm250": 219425761.1783332, - "Th229": 192235847.44789958, - "Cm241": 219075406.6897822, - "Pu237": 210593272.23024797, - "Am240": 215272544.02927735, - "Cm249": 218622037.52325428, - "Ac226": 183632605.3770991, - "Cf250": 229685291.02082983, - "Th228": 189488754.50737157, - "Cf248": 229015120.40511796, - "Ac227": 183458264.80025893, - "Pu241": 211237715.32232296, - "Pu240": 208612566.66049656, - "Cf252": 230239896.94703457, - "U231": 197643438.24939737, - "Cm242": 212786491.32857716, - "Bk245": 225023484.65451327, - "Np235": 199435370.72904894, - "Pu243": 207499380.63776916, - "Pu239": 208018532.78140113, - "Am242_m1": 215145370.5791048, - "Pu236": 208679081.72160652, - "Bk249": 224740691.06136644, - "Np236": 198952718.20228392, - "Np234": 200175925.99275926, - "U237": 196429642.96756968, - "Cf253": 231148831.53210822, - "U236": 203404311.87546986, - "Es254": 232527659.46555784, - "Ac225": 183891658.531768, - "Cm243": 213375296.0362017, - "Bk248": 224456537.88363716, - "Cm244": 217926766.88448203, - "Pu242": 212072186.50565082, - "U241": 198266755.4887299, - "Np237": 205370480.34853214, - "Th234": 186385345.82281572, - "Pa231": 194099942.4938497, - "Pa230": 194744699.33621296, - "Pa233": 194162901.71835947, - "U240": 207137940.30569986, - "U233": 199796183.56054175, - "Pu246": 208860847.72193536, - "Pa232": 193654730.8348164, - "U232": 193044277.35730234, - "Am244_m1": 213894761.9301219, - "Pu244": 208427244.82356748, - "Np238": 208699370.90691367, - "Bk247": 224883761.19281054, - "Am244": 213894761.9301219, - "Pa229": 194955644.11334947, - "Cm248": 221723145.3723629, - "Fm255": 238051756.2074275, - "Cf246": 229074942.12674516, - "Th230": 188666101.25156796, - "Pu238": 209540012.5125772, - "U235": 202270000.0, - "Th227": 190640950.14927194 - } - model = openmc.Model.from_xml() - op = CoupledOperator(model, chain_file='chain_endfb71_pwr.xml', fission_q=fiss_q) - timesteps = [3] * 12 - integrator = PredictorIntegrator(op, timesteps, timestep_units='d', power=2.25e9) - integrator.integrate() + plots.append(plot) +plots.export_to_xml() From 4cf717e0298337599f2aebe31c61f5862b0a7cb1 Mon Sep 17 00:00:00 2001 From: yardasol Date: Thu, 20 Oct 2022 13:58:27 -0500 Subject: [PATCH 16/62] add optimized model alongside serpent-idential model --- examples/msbr/_control_rods_optimized.py | 106 + examples/msbr/_core_elements_optimized.py | 266 +++ examples/msbr/_root_geometry.py | 62 +- examples/msbr/_root_geometry_optimized.py | 158 ++ examples/msbr/model-plotting-optimized.ipynb | 2258 ++++++++++++++++++ examples/msbr/openmc_model.py | 10 +- examples/msbr/openmc_model_optimized.py | 471 ++++ 7 files changed, 3300 insertions(+), 31 deletions(-) create mode 100644 examples/msbr/_control_rods_optimized.py create mode 100644 examples/msbr/_core_elements_optimized.py create mode 100644 examples/msbr/_root_geometry_optimized.py create mode 100644 examples/msbr/model-plotting-optimized.ipynb create mode 100644 examples/msbr/openmc_model_optimized.py diff --git a/examples/msbr/_control_rods_optimized.py b/examples/msbr/_control_rods_optimized.py new file mode 100644 index 000000000..8bb9ade7e --- /dev/null +++ b/examples/msbr/_control_rods_optimized.py @@ -0,0 +1,106 @@ +import openmc +import numpy as np + +def shared_cr_geometry(): + fuel_hole = openmc.ZCylinder(r=5.08, name='cr_fuel_hole') + elem_bound = openmc.rectangular_prism(7.62*2, 7.62*2) # Pin outer boundary + eb_minx, eb_maxx, eb_miny, eb_maxy = list(elem_bound.get_surfaces().values()) + + gr_sq_neg = openmc.rectangular_prism(7.23646*2, 7.23646*2, corner_radius=0.99) # Graphite square + # params for + (gr_minx, gr_maxx, gr_miny, gr_maxy, + gr_cyl_lb, gr_cyl_minx, gr_cyl_miny, + gr_cyl_ul, gr_cyl_maxy, gr_cyl_br, + gr_cyl_maxx, gr_cyl_ru) = list(gr_sq_neg.get_surfaces().values()) + + r_d = 1.16 + e_d = 2 * r_d / np.sqrt(3) + r_dt = 0.8 + r_c = 0.18 + l1 = 5.8801 + l2 = 6.505 + l3 = 8.03646 + ul = openmc.model.hexagonal_prism(origin=(-l1, l2), edge_length=e_d, orientation='x', corner_radius=r_c) + br = openmc.model.hexagonal_prism(origin=(l1, -l2), edge_length=e_d, orientation='x',corner_radius=r_c) + lb = openmc.model.hexagonal_prism(origin=(-l2, -l1), edge_length=e_d, orientation='y',corner_radius=r_c) + ru = openmc.model.hexagonal_prism(origin=(l2, l1), edge_length=e_d, orientation='y',corner_radius=r_c) + ul_t = openmc.ZCylinder(-l1, -l3, r_dt, name='corner_ul_tip') + br_t = openmc.ZCylinder(l1, l3, r_dt, name='corner_br_tip') + ru_t = openmc.ZCylinder(-l3, l1, r_dt, name='corner_ru_tip') + lb_t = openmc.ZCylinder(l3, -l1, r_dt, name='corner_lb_tip') + + gr_ul = ul & -eb_maxy & +gr_maxy + gr_ul_fill = ul & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy + gr_br = br & +eb_miny & -gr_miny + gr_br_fill = br & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny + gr_lb = lb & +eb_minx & -gr_minx + gr_lb_fill = lb & +gr_cyl_lb & +gr_minx & -gr_cyl_minx & -gr_cyl_miny + gr_ru = ru & -eb_maxx & +gr_maxx + gr_ru_fill = ru & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxx & +gr_cyl_maxy + + gr_ul_t = -ul_t & +eb_miny & -gr_miny + gr_br_t = -br_t & -eb_maxy & +gr_maxy + gr_ru_t = -ru_t & +eb_minx & -gr_minx + gr_lb_t = -lb_t & -eb_maxx & +gr_maxx + + gr_corners = (gr_ul, gr_br, gr_lb, gr_ru, gr_ul_fill, gr_br_fill, gr_lb_fill, gr_ru_fill) + gr_t = (gr_ul_t, gr_br_t, gr_ru_t, gr_lb_t) + + inter_elem_channel = (~gr_sq_neg & elem_bound & + ~ul & ~br & ~lb & ~ru & + +ul_t & +br_t & +ru_t & +lb_t) + + + return fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel + +def control_rod(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, fuel, moder): + s1 = openmc.ZCylinder(r=4.7625, name='control_rod') + + c1 = openmc.Cell(fill=moder, region=-s1, name='control_rod') + c2 = openmc.Cell(fill=fuel, region=(+s1 & -fuel_hole), name='cr_fuel_inner') + c3 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg), name='cr_moderator') + c4 = openmc.Cell(fill=fuel, region=inter_elem_channel, name='cr_fuel_outer') + + c3_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='cr_moderator_ul') + c3_br = openmc.Cell(fill=moder, region=gr_corners[1], name='cr_moderator_br') + c3_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='cr_moderator_ru') + c3_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='cr_moderator_lb') + c3_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='cr_moderator_ul_fill') + c3_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='cr_moderator_br_fill') + c3_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='cr_moderator_ru_fill') + c3_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='cr_moderator_lb_fill') + c3_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='cr_moderator_ul_t') + c3_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='cr_moderator_br_t') + c3_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='cr_moderator_ru_t') + c3_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='cr_moderator_lb_t') + + + #universe_id=3 + cr = openmc.Universe(name='control_rod') + cr.add_cells([c1, c2, c3, c4, c3_ul, c3_br, c3_ru, c3_lb, c3_ulf, c3_brf, c3_ruf, c3_lbf, c3_ul_t, c3_br_t, c3_ru_t, c3_lb_t]) + + return cr + +def control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, fuel, moder): + c1 = openmc.Cell(fill=fuel, region=(-fuel_hole), name='crc_fuel_inner') + c2 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg), name='crc_moderator') + c3 = openmc.Cell(fill=fuel, region=inter_elem_channel, name='crc_fuel_outer') + + c2_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='crc_moderator_ul') + c2_br = openmc.Cell(fill=moder, region=gr_corners[1], name='crc_moderator_br') + c2_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='crc_moderator_ru') + c2_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='crc_moderator_lb') + c2_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='crc_moderator_ul_fill') + c2_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='crc_moderator_br_fill') + c2_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='crc_moderator_ru_fill') + c2_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='crc_moderator_lb_fill') + c2_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='crc_moderator_ul_t') + c2_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='crc_moderator_br_t') + c2_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='crc_moderator_ru_t') + c2_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='crc_moderator_lb_t') + + # universe_id=4 + crc = openmc.Universe(name='control_rod_channel') + crc.add_cells([c1, c2, c3, c2_ul, c2_br, c2_ru, c2_lb, c2_ulf, c2_brf, c2_ruf, c2_lbf, c2_ul_t, c2_br_t, c2_ru_t, c2_lb_t]) + + return crc diff --git a/examples/msbr/_core_elements_optimized.py b/examples/msbr/_core_elements_optimized.py new file mode 100644 index 000000000..0db560c97 --- /dev/null +++ b/examples/msbr/_core_elements_optimized.py @@ -0,0 +1,266 @@ +import openmc +import numpy as np + +def _bound_zone_cells(cells_tuples, levels): + """Helper function that moves Zone IA and Zone IIA cells to the + appropriate height.""" + cell_list = [] + n_levels = len(cells_tuples) + for i, cells in enumerate(cells_tuples): + if i == 0: + lower_bound = None + upper_bound = levels[i] + elif i == n_levels - 1: + lower_bound = levels[i-1] + upper_bound = None + else: + lower_bound = levels[i-1] + upper_bound = levels[i] + + for j, cell in enumerate(cells): + if lower_bound is None: + cell.region = cell.region & -upper_bound + elif upper_bound is None: + cell.region = cell.region & +lower_bound + else: + cell.region = cell.region & +lower_bound & -upper_bound + cell_list.append(cell) + return cell_list + +def shared_elem_geometry(): + """Surfaces and regions shared by Zone IA and Zone IIA elements. + Specs found in Robertson, 1971 Fig 3.4 (p. 17) and Fig 3.5 (p.18)""" + + elem_bound = openmc.rectangular_prism(5.08*2, 5.08*2) # Pin outer boundary + eb_minx, eb_maxx, eb_miny, eb_maxy = list(elem_bound.get_surfaces().values()) + + gr_sq_neg = openmc.rectangular_prism(4.953*2, 4.953*2, corner_radius=0.46) # Graphite square + (gr_minx, gr_maxx, gr_miny, gr_maxy, + gr_cyl_lb, gr_cyl_minx, gr_cyl_miny, + gr_cyl_ul, gr_cyl_maxy, gr_cyl_br, + gr_cyl_maxx, gr_cyl_ru) = list(gr_sq_neg.get_surfaces().values()) + + # params for main pin section for both I-A and II-A + r_d = 0.66802 + l1 = 4.28498 + l2 = 4.53898 + l3 = 5.62102 + ul = openmc.ZCylinder(-l1, l2, r_d, name='corner_ul') + br = openmc.ZCylinder(l1, -l2, r_d, name='corner_br') + lb = openmc.ZCylinder(-l2, -l1, r_d, name='corner_lb') + ru = openmc.ZCylinder(l2, l1, r_d, name='corner_ru') + ul_t = openmc.ZCylinder(-l1, -l3, r_d, name='corner_ul_tip') + br_t = openmc.ZCylinder(l1, l3, r_d, name='corner_br_tip') + ru_t = openmc.ZCylinder(-l3, l1, r_d, name='corner_ru_tip') + lb_t = openmc.ZCylinder(l3, -l1, r_d, name='corner_lb_tip') + + gr_ul = -ul & -eb_maxy & +gr_maxy# | + gr_ul_fill = -ul & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy + gr_br = -br & +eb_miny & -gr_miny# | + gr_br_fill = -br & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny + gr_lb = -lb & +eb_minx & -gr_minx# | + gr_lb_fill = -lb & +gr_cyl_lb & +gr_minx & -gr_cyl_minx & -gr_cyl_miny + gr_ru = -ru & -eb_maxx & +gr_maxx# | + gr_ru_fill = -ru & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxx & +gr_cyl_maxy + + gr_ul_t = -ul_t & +eb_miny & -gr_miny + gr_br_t = -br_t & -eb_maxy & +gr_maxy + gr_ru_t = -ru_t & +eb_minx & -gr_minx + gr_lb_t = -lb_t & -eb_maxx & +gr_maxx + + gr_corners = (gr_ul, gr_br, gr_lb, gr_ru, gr_ul_fill, gr_br_fill, gr_lb_fill, gr_ru_fill) + gr_t = (gr_ul_t, gr_br_t, gr_ru_t, gr_lb_t) + + inter_elem_channel = (~gr_sq_neg & elem_bound & + +ul & +br & +lb & +ru & + +ul_t & +br_t & +ru_t & +lb_t) + + gr_round_4 = openmc.ZCylinder(r=2.2225, name='gr_round_4') + + return elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4 + +def zoneIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4, moder, fuel, hast): + """Zone IA element. Specs found in Robertson, 1971 Fig 3.4 (p. 17)""" + elem_levels = [22.86, 419.10, 438.15, 445.135] + level_bounds = [] + for level in elem_levels: + level_bounds.append(openmc.ZPlane(z0=level)) + s1 = openmc.ZCylinder(r=4.953, name='ia_gr_round_1') + s2 = openmc.ZCylinder(r=1.71069, name='ia_fuel_hole') + + h = 12.66 + theta = np.arctan(4.953 / h) + r2 = (1 / np.cos(theta))**2 - 1 + s3 = openmc.ZCone(z0=h + elem_levels[2], r2=r2, name='cone_i') + + c1 = openmc.Cell(fill=fuel, region=(-s2), name='ia_fuel_inner_1') + c2 = openmc.Cell(fill=moder, region=(+s2 & -s1), name='ia_moderator_1') + c3 = openmc.Cell(fill=fuel, region=(+s1 & elem_bound), name='ia_fuel_outer_1') + ia1 = (c1, c2, c3) + + # I-A main (lower 2) + s2 = s2.clone() + gr_sq_neg = gr_sq_neg.clone() + c4 = c1.clone(clone_materials=False) + c4.name = 'ia_fuel_inner_main' + c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg), name='ia_moderator_main') + c6 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='ia_fuel_outer_main') + c5_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='ia_moderator_main_ul') + c5_br = openmc.Cell(fill=moder, region=gr_corners[1], name='ia_moderator_main_br') + c5_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='ia_moderator_main_ru') + c5_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='ia_moderator_main_lb') + c5_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='ia_moderator_main_ul_fill') + c5_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='ia_moderator_main_br_fill') + c5_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='ia_moderator_main_ru_fill') + c5_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='ia_moderator_main_lb_fill') + c5_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='ia_moderator_main_ul_t') + c5_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='ia_moderator_main_br_t') + c5_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='ia_moderator_main_ru_t') + c5_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='ia_moderator_main_lb_t') + + iam = (c4, c5, c6, + c5_ul, c5_br, c5_ru, c5_lb, + c5_ulf, c5_brf, c5_ruf, c5_lbf, + c5_ul_t, c5_br_t, c5_ru_t, c5_lb_t) + + # I-A 2 (upper 1) + c7 = c1.clone(clone_materials=False) + c7.name = 'ia_fuel_inner_2' + c8 = c2.clone(clone_materials=False) + c8.name = 'ia_moderator_2' + c9 = c3.clone(clone_materials=False) + c9.name = 'ia_fuel_outer_2' + ia2 = (c7, c8, c9) + + # I-A 3 (upper 2)' + s2 = s2.clone() + s3 = s3.clone() + elem_bound = elem_bound.clone() + c10 = c1.clone(clone_materials=False) + c10.name = 'ia_fuel_inner_3' + c11 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='ia_moderator_3') + c12 = openmc.Cell(fill=fuel, region=(+s3 & elem_bound), name='ia_fuel_outer_3') + ia3 = (c10, c11, c12) + + # I-A 4 (upper 3) + s2 = s2.clone() + elem_bound = elem_bound.clone() + c13 = openmc.Cell(fill=hast, region=(-s2), name='ia_hast') + c14 = openmc.Cell(fill=moder, region=(+s2 & -gr_round_4), name='ia_moderator_4') + c15 = openmc.Cell(fill=fuel, region=(+gr_round_4 & elem_bound), name='ia_fuel_outer_4') + ia4 = (c13, c14, c15) + + elem_cells = [ia1, iam, ia2, ia3, ia4] + # universe_id=1 + ia = openmc.Universe(name='zone_ia') + ia.add_cells(_bound_zone_cells(elem_cells, level_bounds)) + return ia + +def zoneIIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4, moder, fuel): + """Zone IIA element. Specs found in Robertson, 1971 Fig 3.5 (p. 18)""" + elem_levels = [434.34, 436.88, 439.42, 441.96] + level_bounds = [] + for level in elem_levels: + level_bounds.append(openmc.ZPlane(z0=level)) + s1 = openmc.ZCylinder(r=3.302, name='iia_fuel_hole_main') # Hole with fuel salt - Fig 3.5, Roberton 1971 (3.27787 - p.47) + s2 = openmc.ZCylinder(r=0.635, name='iia_fuel_hole_2') + s3 = openmc.ZCylinder(r=3.65125, name='iia_gr_round_3') + h = 6.5 + theta = np.arctan(3.65125 / h) + r2 = (1 / np.cos(theta))**2 - 1 + s4 = openmc.ZCone(z0=h + elem_levels[2], r2=r2, name='cone_ii') + + # II-A main (lower 1) + c1 = openmc.Cell(fill=fuel, region=(-s1), name='iia_fuel_inner_main') + c2 = openmc.Cell(fill=moder, region=(+s1 & gr_sq_neg), name='iia_moderator_main') + c3 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='iia_fuel_outer_main') + c3.name = 'iia_fuel_outer_main' + c2_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='iia_moderator_main_ul') + c2_br = openmc.Cell(fill=moder, region=gr_corners[1], name='iia_moderator_main_br') + c2_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='iia_moderator_main_ru') + c2_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='iia_moderator_main_lb') + c2_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='iia_moderator_main_ul_fill') + c2_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='iia_moderator_main_br_fill') + c2_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='iia_moderator_main_ru_fill') + c2_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='iia_moderator_main_lb_fill') + c2_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='iia_moderator_main_ul_t') + c2_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='iia_moderator_main_br_t') + c2_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='iia_moderator_main_ru_t') + c2_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='iia_moderator_main_lb_t') + iiam = (c1, c2, c3, c2_ul, c2_br, c2_ru, c2_lb, c2_ulf, c2_brf, c2_ruf, c2_lbf, c2_ul_t, c2_br_t, c2_ru_t, c2_lb_t) + + # II-A 2 (upper 1) + gr_sq_neg = gr_sq_neg.clone() + c4 = openmc.Cell(fill=fuel, region=(-s2), name='iia_fuel_inner_2') + c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg), name='iia_moderator_2') + c6 = c3.clone(clone_materials=False) + c6.name = 'iia_fuel_outer_2' + c5_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='iia_moderator_2_ul') + c5_br = openmc.Cell(fill=moder, region=gr_corners[1], name='iia_moderator_2_br') + c5_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='iia_moderator_2_ru') + c5_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='iia_moderator_2_lb') + c5_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='iia_moderator_2_ul_fill') + c5_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='iia_moderator_2_br_fill') + c5_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='iia_moderator_2_ru_fill') + c5_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='iia_moderator_2_lb_fill') + c5_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='iia_moderator_2_ul_t') + c5_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='iia_moderator_2_br_t') + c5_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='iia_moderator_2_ru_t') + c5_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='iia_moderator_2_lb_t') + iia2 = (c4, c5, c6, c5_ul, c5_br, c5_ru, c5_lb, c5_ulf, c5_brf, c5_ruf, c5_lbf, c5_ul_t, c5_br_t, c5_ru_t, c5_lb_t) + + # II-A 3 (upper 2) + s2 = s2.clone() + elem_bound = elem_bound.clone() + c7 = c4.clone(clone_materials=False) + c7.name = 'iia_fuel_inner_3' + c8 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='iia_moderator_3') + c9 = openmc.Cell(fill=fuel, region=(+s3 & elem_bound), name='iia_fuel_outer_3') + iia3 = (c7, c8, c9) + + # II-A 4 (upper 3) + elem_bound = elem_bound.clone() + c10 = openmc.Cell(fill=moder, region=(-s4), name='iia_moderator_4') + c11 = openmc.Cell(fill=fuel, region=(+s4 & elem_bound), name='iia_fuel_outer_4') + iia4 = (c10, c11) + + # II-A 5 (upper 4) + elem_bound = elem_bound.clone() + c12 = openmc.Cell(fill=moder, region=(-gr_round_4), name='iia_moderator_5') + c13 = openmc.Cell(fill=fuel, region=(+gr_round_4 & elem_bound), name='iia_fuel_outer_5') + iia5 = (c12, c13) + + elem_cells = [iiam, iia2, iia3, iia4, iia5] + # universe_id=2 + iia = openmc.Universe(name='zone_iia') + iia.add_cells(_bound_zone_cells(elem_cells, level_bounds)) + return iia + +def void_cell(elem_bound): + elem_bound = elem_bound.clone() + c1 = openmc.Cell(region=elem_bound, name='lattice_void') + #universe_id=5 + v = openmc.Universe(name='lattice_void') + v.add_cell(c1) + return v + +def graphite_triangles(elem_bound, moder, fuel): + s1 = openmc.Plane(1.0, 1.0, 0.0, 0.0) + s2 = openmc.Plane(-1.0, 1.0, 0.0, 0.0) + s3 = openmc.Plane(1.0, -1.0, 0.0, 0.0) + s4 = openmc.Plane(-1.0, -1.0, 0.0, 0.0) + surfs = [(s4, 'bottom_left'), + (s1, 'top_right'), + (s2, 'top_left'), + (s3, 'bottom_right')] + univs = [] + for i, (s, name) in enumerate(surfs): + elem_bound = elem_bound.clone() + c1 = openmc.Cell(fill=moder, region=(-s & elem_bound)) + elem_bound = elem_bound.clone() + c2 = openmc.Cell(fill=fuel, region=(+s & elem_bound)) + # universe_id = 6+i + gr_tri = openmc.Universe(name=f'{name}_triangle') + gr_tri.add_cells([c1, c2]) + univs.append(gr_tri) + return univs diff --git a/examples/msbr/_root_geometry.py b/examples/msbr/_root_geometry.py index 2b14dcc88..b858dce18 100644 --- a/examples/msbr/_root_geometry.py +++ b/examples/msbr/_root_geometry.py @@ -63,36 +63,46 @@ def zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core small_elems_per_octant = 25 elem_cells = [] + zone_iib_reg = None for i, pos in enumerate(large_positions): - r1, r2 = big_radii[i] - t1 = pos - large_half_w - t2 = pos + large_half_w - large_elem = openmc.model.CylinderSector(r1, r2, t1, t2) - elem_hole = hole_region.rotate((0.0, 0.0, pos)) - elem_reg = -large_elem & elem_hole + pos = np.round(pos, 3) + r1_big, r2_big = big_radii[i] + t1_big = pos - large_half_w + t2_big = pos + large_half_w + s1 = openmc.model.CylinderSector(r1_big, r2_big, t1_big, t2_big, name=f'iib_large_element_{pos}') + s2 = openmc.ZCylinder(**hole_args[i]) if isinstance(zone_iib_reg, openmc.Region): - zone_iib_reg = zone_iib_reg | elem_reg + zone_iib_reg = zone_iib_reg & +s1 else: - zone_iib_reg = elem_reg - small_start = t2 + adjacent_angular_offset - r1, r2 = small_radii - t1 = small_start + zone_iib_reg = +s1 + + elem_cells.append(openmc.Cell(fill=moder, region=(-s1 & +s2), name=f'iib_large_element_{pos}')) + elem_cells.append(openmc.Cell(fill=fuel, region=(-s2), + name=f'iib_large_element_fuel_hole_{pos}')) + t1_small = t2_big + adjacent_angular_offset + r1_small, r2_small = small_radii + for i in range(0, small_elems_per_octant): - t2 = t1 + small_angular_width - elem_reg = -openmc.model.CylinderSector(r1, r2, t1, t2) - pos = t2 - (small_angular_width / 2) - zone_iib_reg = zone_iib_reg | elem_reg - t1 = t2 + adjacent_angular_offset - c1 = openmc.Cell(fill=moder, region=(zone_iib_reg & - ~zone_i_boundary & - +core_base & - -core_top), name='iib_moderator') - c2 = openmc.Cell(fill=fuel, region=(~zone_iib_reg & - ~zone_i_boundary & - -zone_ii_boundary & - +core_base & - -core_top), name='iib_fuel') - return c1, c2 + t2_small = t1_small + small_angular_width + + # reflector element + s5 = openmc.model.CylinderSector(r1_small, r2_small, t1_small, t2_small) + pos = t2_small - (small_angular_width / 2) + pos = np.round(pos, 3) + elem_cells.append(openmc.Cell(fill=moder, region=-s5, name=f'iib_small_element_{pos}')) + zone_iib_reg = zone_iib_reg & +s5 + t1_small = t2_small + adjacent_angular_offset + + #universe_id=10 + iib = openmc.Universe(name='zone_iib') + iib.add_cells(elem_cells) + iib.add_cell(openmc.Cell(fill=fuel, region=zone_iib_reg, name='zone_iib_fuel')) + + c1 = openmc.Cell(fill=iib, region=(~zone_i_boundary & + -zone_ii_boundary & + +core_base & + -core_top), name='zone_iib') + return c1 def annulus(zone_ii_boundary, annulus_boundary, core_base, core_top, fuel): annulus_reg = +zone_ii_boundary & -annulus_boundary & +core_base & -core_top diff --git a/examples/msbr/_root_geometry_optimized.py b/examples/msbr/_root_geometry_optimized.py new file mode 100644 index 000000000..e2f81e2d2 --- /dev/null +++ b/examples/msbr/_root_geometry_optimized.py @@ -0,0 +1,158 @@ +import openmc +import numpy as np + +def shared_root_geometry(): + cr_boundary = openmc.model.rectangular_prism(15.24*2, 15.24*2) + core_base = openmc.ZPlane(z0=0.0, name='core_base') + core_top = openmc.ZPlane(z0=449.58, name='core_top') + + s1 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=208.28, r2=222.71, name='base_octader') + s2 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=218.44, r2=215.53, name='smaller_octader') + s3 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=228.60, r2=193.97, name='smallest_octader') + zone_i_boundary = -s1 | -s2 | -s3 + + zone_ii_boundary = openmc.ZCylinder(r=256.032, name='iib_boundary') + annulus_boundary = openmc.ZCylinder(r=261.112, name='annulus_boundary') + lower_plenum_boundary = openmc.ZPlane(z0=-7.62, name='lower_plenum_boundary') + + zone_bounds = (cr_boundary, zone_i_boundary, zone_ii_boundary) + core_bounds = (annulus_boundary, lower_plenum_boundary, core_base, core_top) + radial_reflector_boundary = openmc.ZCylinder(r=338.328, name='radial_reflector_boundary') + bottom_reflector_boundary = openmc.ZPlane(z0=-76.2, name='bottom_axial_reflector_boundary') + top_reflector_boundary = openmc.ZPlane(z0=525.78, name='top_axial_reflector_boundary') + reflector_bounds = (radial_reflector_boundary, + bottom_reflector_boundary, + top_reflector_boundary) + + radial_vessel_boundary = openmc.ZCylinder(r=343.408, name='radial_vessel_wall', boundary_type='vacuum') + bottom_vessel_boundary = openmc.ZPlane(z0=-81.28, name='bottom_vessel_wall', boundary_type='vacuum') + top_vessel_boundary = openmc.ZPlane(z0=530.86, name='top_vessel_wall', boundary_type='vacuum') + + vessel_bounds = (radial_vessel_boundary, + bottom_vessel_boundary, + top_vessel_boundary) + + return zone_bounds, core_bounds, reflector_bounds, vessel_bounds + +def zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top, moder, fuel): + # Large elements + large_angular_width = 3.538 + large_half_w = large_angular_width / 2 + large_positions = np.linspace(0, 315, 8) + r_outer = 256.032 + r_big1 = 229.6 + r_big2 = 223.6 + rb_1 = (r_big1, r_outer) + rb_2 = (r_big2, r_outer) + big_radii = [rb_1, rb_2] * 4 + small_radii = (207.28, r_outer) + + r_hole = 3.0875 + hole_args = ({'x0': 242.679, 'y0': 0.0, 'r': r_hole}, + {'x0': 171.60, 'y0': 171.60, 'r': r_hole}, + {'x0': 0.0, 'y0': 242.679, 'r': r_hole}, + {'x0': -171.60, 'y0': 171.60, 'r': r_hole}, + {'x0': -242.679, 'y0': 0.0, 'r': r_hole}, + {'x0': -171.60, 'y0': -171.60, 'r': r_hole}, + {'x0': 0.0, 'y0': -242.697, 'r': r_hole}, + {'x0': 171.60, 'y0': -171.60, 'r': r_hole}) + + # Small elements + small_angular_width = 0.96 + adjacent_angular_offset = 0.675 #27/40 + small_elems_per_octant = 25 + + elem_cells = [] + for i, pos in enumerate(large_positions): + pos = np.round(pos, 3) + r1_big, r2_big = big_radii[i] + t1_big = pos - large_half_w + t2_big = pos + large_half_w + s1 = openmc.model.CylinderSector(r1_big, r2_big, t1_big, t2_big) + s2 = openmc.ZCylinder(**hole_args[i]) + elem_cells.append(openmc.Cell(fill=moder, region=(-s1 & +s2), name=f'iib_large_element_{pos}')) + elem_cells.append(openmc.Cell(fill=fuel, region=(-s2), + name=f'iib_large_element_fuel_hole_{pos}')) + t1_small = t2_big + adjacent_angular_offset + r1_small, r2_small = small_radii + + # Inter element fuel channel + s3 = openmc.model.CylinderSector(r1_small, r2_small, t2_big, t1_small) + cpos = t2_big + (adjacent_angular_offset / 2) + cpos = np.round(cpos, 3) + elem_cells.append(openmc.Cell(fill=fuel, region=-s3, + name=f'inter_element_fuel_channel_{cpos}')) + + t4a = t1_big - adjacent_angular_offset + s4 = openmc.model.CylinderSector(r1_small, r1_big, t4a, t1_small) + elem_cells.append(openmc.Cell(fill=fuel, region=-s4, + name=f'inter_element_fuel_channel_{pos}')) + + for i in range(0, small_elems_per_octant): + t2_small = t1_small + small_angular_width + + # reflector element + s5 = openmc.model.CylinderSector(r1_small, r2_small, t1_small, t2_small) + pos = t2_small - (small_angular_width / 2) + pos = np.round(pos, 3) + elem_cells.append(openmc.Cell(fill=moder, region=-s5, name=f'iib_small_element_{pos}')) + t1_small = t2_small + adjacent_angular_offset + + # inter-element fuel channel + s6 = openmc.model.CylinderSector(r1_small, r2_small, t2_small, t1_small) + cpos = t2_small + (adjacent_angular_offset/2) + cpos = np.round(cpos, 3) + elem_cells.append(openmc.Cell(fill=fuel, region=-s6, + name=f'inter_element_fuel_channel_{cpos}')) + + #universe_id=10 + iib = openmc.Universe(name='zone_iib') + iib.add_cells(elem_cells) + + c1 = openmc.Cell(fill=iib, region=(~zone_i_boundary & + -zone_ii_boundary & + +core_base & + -core_top), name='zone_iib') + return c1 + +def annulus(zone_ii_boundary, annulus_boundary, core_base, core_top, fuel): + annulus_reg = +zone_ii_boundary & -annulus_boundary & +core_base & -core_top + c1 = openmc.Cell(fill=fuel, region=annulus_reg, name='annulus') + return c1 + +def lower_plenum(core_base, lower_plenum_boundary, annulus_boundary, fuel): + lower_plenum_reg = -core_base & +lower_plenum_boundary & -annulus_boundary + c1 = openmc.Cell(fill=fuel, region=lower_plenum_reg, name='lower_plenum') + return c1 + +def reflectors(annulus_boundary, + radial_reflector_boundary, + lower_plenum_boundary, + bottom_reflector_boundary, + core_top, + top_reflector_boundary, + moder): + radial_reflector_reg = +annulus_boundary & -radial_reflector_boundary & +bottom_reflector_boundary & -top_reflector_boundary + bottom_reflector_reg = -annulus_boundary & -lower_plenum_boundary & +bottom_reflector_boundary + top_reflector_reg = -annulus_boundary & +core_top & -top_reflector_boundary + + c1 = openmc.Cell(fill=moder, region=radial_reflector_reg, name='radial_reflector') + c2 = openmc.Cell(fill=moder, region=bottom_reflector_reg, name='bottom_axial_reflector') + c3 = openmc.Cell(fill=moder, region=top_reflector_reg, name='top_axial_reflector') + return c1, c2, c3 + +def vessel(radial_reflector_boundary, + radial_vessel_boundary, + bottom_vessel_boundary, + top_vessel_boundary, + top_reflector_boundary, + bottom_reflector_boundary, + hast): + radial_vessel_reg = +radial_reflector_boundary & -radial_vessel_boundary & -top_vessel_boundary & +bottom_vessel_boundary + bottom_vessel_reg = -radial_reflector_boundary & -bottom_reflector_boundary & +bottom_vessel_boundary + top_vessel_reg = -radial_reflector_boundary & -top_vessel_boundary & +top_reflector_boundary + + c1 = openmc.Cell(fill=hast, region=radial_vessel_reg, name='radial_vessel_wall') + c2 = openmc.Cell(fill=hast, region=bottom_vessel_reg, name='bottom_vessel_wall') + c3 = openmc.Cell(fill=hast, region=top_vessel_reg, name='top_vessel_wall') + return c1, c2, c3 diff --git a/examples/msbr/model-plotting-optimized.ipynb b/examples/msbr/model-plotting-optimized.ipynb new file mode 100644 index 000000000..018e1b3e8 --- /dev/null +++ b/examples/msbr/model-plotting-optimized.ipynb @@ -0,0 +1,2258 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": null, + "id": "bdbd4aaa", + "metadata": {}, + "outputs": [], + "source": [ + "import openmc\n", + "import numpy as np" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "56642afc", + "metadata": {}, + "outputs": [], + "source": [ + "# Create materials\n", + "fuel = openmc.Material(name='fuel')\n", + "fuel.set_density('g/cm3', density=3.35)\n", + "fuel.add_components({'Li7': 0.0787474673879085,\n", + " 'Be9': 0.0225566879138321,\n", + " 'F19': 0.454003012179284,\n", + " 'Th232': 0.435579130482336,\n", + " 'U233': 0.00911370203663893},\n", + " percent_type='wo')\n", + "fuel.depletable = True\n", + "fuel.volume = 48710000.0\n", + "\n", + "moder = openmc.Material(name='graphite', temperature=900.0)\n", + "moder.set_density('g/cm3', density=1.84)\n", + "moder.add_nuclide('C0', 1.000, percent_type='wo')\n", + "moder.add_s_alpha_beta('c_Graphite')\n", + "\n", + "hast = openmc.Material(name='hastelloyN', temperature=900.0)\n", + "hast.set_density('g/cm3', density=8.671)\n", + "hast.add_components({'Al27': 0.003,\n", + " 'Ni': 0.677,\n", + " 'W': 0.250,\n", + " 'Cr': 0.070},\n", + " percent_type='wo')\n", + "\n", + "mat = openmc.Materials(materials=[fuel, moder, hast])\n", + "mat.export_to_xml()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "5bf1ab77", + "metadata": {}, + "outputs": [], + "source": [ + "colormap = {moder: 'purple',\n", + " hast: 'blue',\n", + " fuel: 'yellow'}" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "3e341197", + "metadata": {}, + "outputs": [], + "source": [ + " def _bound_zone_cells(cells_tuples, levels):\n", + " \"\"\"Helper function that moves Zone IA and Zone IIA cells to the\n", + " appropriate height.\"\"\"\n", + " cell_list = []\n", + " n_levels = len(cells_tuples)\n", + " for i, cells in enumerate(cells_tuples):\n", + " if i == 0:\n", + " lower_bound = None\n", + " upper_bound = levels[i]\n", + " elif i == n_levels - 1:\n", + " lower_bound = levels[i-1]\n", + " upper_bound = None\n", + " else:\n", + " lower_bound = levels[i-1]\n", + " upper_bound = levels[i]\n", + " for j, cell in enumerate(cells):\n", + " if lower_bound is None:\n", + " cell.region = cell.region & -upper_bound\n", + " elif upper_bound is None:\n", + " cell.region = cell.region & +lower_bound\n", + " else:\n", + " cell.region = cell.region & +lower_bound & -upper_bound\n", + " cell_list.append(cell)\n", + " return cell_list\n", + "\n", + "def shared_elem_geometry():\n", + " \"\"\"Surfaces and regions shared by Zone IA and Zone IIA elements. \n", + " Specs found in Robertson, 1971 Fig 3.4 (p. 17) and Fig 3.5 (p.18)\"\"\"\n", + "\n", + " elem_bound = openmc.rectangular_prism(5.08*2, 5.08*2) # Pin outer boundary\n", + " eb_minx, eb_maxx, eb_miny, eb_maxy = list(elem_bound.get_surfaces().values())\n", + "\n", + " gr_sq_neg = openmc.rectangular_prism(4.953*2, 4.953*2, corner_radius=0.46) # Graphite square\n", + " (gr_minx, gr_maxx, gr_miny, gr_maxy, \n", + " gr_cyl_lb, gr_cyl_minx, gr_cyl_miny, \n", + " gr_cyl_ul, gr_cyl_maxy, gr_cyl_br, \n", + " gr_cyl_maxx, gr_cyl_ru) = list(gr_sq_neg.get_surfaces().values())\n", + " \n", + " # slabs that line up with rounded edges\n", + " slab_u = -gr_maxy & +gr_cyl_maxy & -gr_cyl_maxx & +gr_cyl_minx\n", + " slab_l = +gr_minx & -gr_cyl_minx & -gr_cyl_maxy & +gr_cyl_miny\n", + " slab_b = +gr_miny & -gr_cyl_miny & -gr_cyl_maxx & +gr_cyl_minx\n", + " slab_r = -gr_maxx & +gr_cyl_maxx & -gr_cyl_maxy & +gr_cyl_miny\n", + " slabs = (slab_u, slab_l, slab_b, slab_r)\n", + " \n", + " # the rounded edges themselves\n", + " quarter_ul = -gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy\n", + " quarter_br = -gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny\n", + " quarter_lb = -gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny\n", + " quarter_ru = -gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy\n", + " quarters = (quarter_ul, quarter_br, quarter_lb, quarter_ru)\n", + " \n", + " # remaining square\n", + " gr_sq = +gr_cyl_minx & -gr_cyl_maxx & +gr_cyl_miny & -gr_cyl_maxy\n", + "\n", + " # params for main pin section for both I-A and II-A\n", + " r_d = 0.66802\n", + " l1 = 4.28498\n", + " l2 = 4.53898\n", + " l3 = 5.62102\n", + " ul = openmc.ZCylinder(-l1, l2, r_d, name='corner_ul')\n", + " br = openmc.ZCylinder(l1, -l2, r_d, name='corner_br')\n", + " lb = openmc.ZCylinder(-l2, -l1, r_d, name='corner_lb')\n", + " ru = openmc.ZCylinder(l2, l1, r_d, name='corner_ru')\n", + " ul_t = openmc.ZCylinder(-l1, -l3, r_d, name='corner_ul_tip')\n", + " br_t = openmc.ZCylinder(l1, l3, r_d, name='corner_br_tip')\n", + " ru_t = openmc.ZCylinder(-l3, l1, r_d, name='corner_ru_tip')\n", + " lb_t = openmc.ZCylinder(l3, -l1, r_d, name='corner_lb_tip')\n", + " \n", + " gr_ul = -ul & -eb_maxy & +gr_maxy# | \n", + " gr_ul_fill = -ul & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy\n", + " gr_br = -br & +eb_miny & -gr_miny# | \n", + " gr_br_fill = -br & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny \n", + " gr_lb = -lb & +eb_minx & -gr_minx# | \n", + " gr_lb_fill = -lb & +gr_cyl_lb & +gr_minx & -gr_cyl_minx & -gr_cyl_miny \n", + " gr_ru = -ru & -eb_maxx & +gr_maxx# | \n", + " gr_ru_fill = -ru & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxx & +gr_cyl_maxy\n", + "\n", + " gr_ul_t = -ul_t & +eb_miny & -gr_miny\n", + " gr_br_t = -br_t & -eb_maxy & +gr_maxy\n", + " gr_ru_t = -ru_t & +eb_minx & -gr_minx\n", + " gr_lb_t = -lb_t & -eb_maxx & +gr_maxx \n", + " \n", + " gr_corners = (gr_ul, gr_br, gr_lb, gr_ru, gr_ul_fill, gr_br_fill, gr_lb_fill, gr_ru_fill)\n", + " gr_t = (gr_ul_t, gr_br_t, gr_ru_t, gr_lb_t)\n", + " \n", + " iec_1 = +gr_cyl_miny & -gr_cyl_maxy & +gr_maxx & -eb_maxx & +lb_t & +ru & +gr_cyl_ru\n", + " iec_2 = (+gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy) & +ru & +br_t & -eb_maxx & -eb_maxy\n", + " iec_3 = +gr_cyl_minx & -gr_cyl_maxx & +gr_maxy & -eb_maxy & +br_t & +ul & +gr_cyl_ul\n", + " iec_4 = (+gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy) & +ul & +ru_t & +eb_minx & -eb_maxy\n", + " iec_5 = +gr_cyl_miny & -gr_cyl_maxy & -gr_minx & +eb_minx & +ru_t & +lb & +gr_cyl_lb\n", + " iec_6 = (+gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny) & +lb & +ul_t & +eb_minx & +eb_miny\n", + " iec_7 = +gr_cyl_minx & -gr_cyl_maxx & -gr_miny & +eb_miny & +ul_t & +br & +gr_cyl_br\n", + " iec_8 = (+gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny) & +br & +lb_t & -eb_maxx & +eb_miny\n", + " \n", + " inter_elem_channel = (iec_1, iec_2, iec_3, iec_4, iec_5, iec_6, iec_7, iec_8)\n", + " #inter_elem_channel = (~gr_sq_neg & elem_bound &\n", + " # +ul & +br & +lb & +ru &\n", + " # +ul_t & +br_t & +ru_t & +lb_t)\n", + " \n", + " \n", + " gr_round_4 = openmc.ZCylinder(r=2.2225, name='gr_round_4')\n", + "\n", + " \n", + " return elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4\n", + " " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "71b4a322", + "metadata": {}, + "outputs": [], + "source": [ + "def zoneIA(elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4):\n", + " \"\"\"Zone IA element. Specs found in Robertson, 1971 Fig 3.4 (p. 17)\"\"\"\n", + " elem_levels = [22.86, 419.10, 438.15, 445.135]\n", + " level_bounds = []\n", + " for level in elem_levels:\n", + " level_bounds.append(openmc.ZPlane(z0=level))\n", + " s1 = openmc.ZCylinder(r=4.953, name='ia_gr_round_1')\n", + " s2 = openmc.ZCylinder(r=1.71069, name='ia_fuel_hole')\n", + " \n", + " h = 12.66\n", + " theta = np.arctan(4.953 / h)\n", + " r2 = (1 / np.cos(theta))**2 - 1\n", + " s3 = openmc.ZCone(z0=h + elem_levels[2], r2=r2, name='cone_i')\n", + "\n", + " c1 = openmc.Cell(fill=fuel, region=(-s2), name='ia_fuel_inner_1')\n", + " c2 = openmc.Cell(fill=moder, region=(+s2 & -s1), name='ia_moderator_1')\n", + " c3 = openmc.Cell(fill=fuel, region=(+s1 & elem_bound), name='ia_fuel_outer_1')\n", + " ia1 = (c1, c2, c3)\n", + " \n", + " # I-A main (lower 2)\n", + " s2 = s2.clone()\n", + " c4 = c1.clone(clone_materials=False)\n", + " c4.name = 'ia_fuel_inner_main'\n", + " c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq), name='ia_moderator_main')\n", + " #c6 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='ia_fuel_outer_main')\n", + "\n", + " c5_slab_u = openmc.Cell(fill=moder, region=slabs[0], name='ia_moderator_main_slab_u')\n", + " c5_slab_l = openmc.Cell(fill=moder, region=slabs[1], name='ia_moderator_main_slab_l')\n", + " c5_slab_b = openmc.Cell(fill=moder, region=slabs[2], name='ia_moderator_main_slab_b')\n", + " c5_slab_r = openmc.Cell(fill=moder, region=slabs[3], name='ia_moderator_main_slab_r')\n", + " \n", + " c5_quarter_u = openmc.Cell(fill=moder, region=quarters[0], name='ia_moderator_main_quarter_u')\n", + " c5_quarter_l = openmc.Cell(fill=moder, region=quarters[1], name='ia_moderator_main_quarter_l')\n", + " c5_quarter_b = openmc.Cell(fill=moder, region=quarters[2], name='ia_moderator_main_quarter_b')\n", + " c5_quarter_r = openmc.Cell(fill=moder, region=quarters[3], name='ia_moderator_main_quarter_r')\n", + " \n", + " c5_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='ia_moderator_main_ul')\n", + " c5_br = openmc.Cell(fill=moder, region=gr_corners[1], name='ia_moderator_main_br')\n", + " c5_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='ia_moderator_main_ru')\n", + " c5_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='ia_moderator_main_lb')\n", + " \n", + " c5_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='ia_moderator_main_ul_fill')\n", + " c5_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='ia_moderator_main_br_fill')\n", + " c5_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='ia_moderator_main_ru_fill')\n", + " c5_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='ia_moderator_main_lb_fill')\n", + " \n", + " c5_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='ia_moderator_main_ul_t')\n", + " c5_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='ia_moderator_main_br_t')\n", + " c5_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='ia_moderator_main_ru_t')\n", + " c5_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='ia_moderator_main_lb_t')\n", + " \n", + " c61 = openmc.Cell(fill=fuel, region=(inter_elem_channel[0]), name='ia_fuel_outer_main_1')\n", + " c62 = openmc.Cell(fill=fuel, region=(inter_elem_channel[1]), name='ia_fuel_outer_main_2')\n", + " c63 = openmc.Cell(fill=fuel, region=(inter_elem_channel[2]), name='ia_fuel_outer_main_3')\n", + " c64 = openmc.Cell(fill=fuel, region=(inter_elem_channel[3]), name='ia_fuel_outer_main_4')\n", + " c65 = openmc.Cell(fill=fuel, region=(inter_elem_channel[4]), name='ia_fuel_outer_main_5')\n", + " c66 = openmc.Cell(fill=fuel, region=(inter_elem_channel[5]), name='ia_fuel_outer_main_6')\n", + " c67 = openmc.Cell(fill=fuel, region=(inter_elem_channel[6]), name='ia_fuel_outer_main_7')\n", + " c68 = openmc.Cell(fill=fuel, region=(inter_elem_channel[7]), name='ia_fuel_outer_main_8')\n", + "\n", + " iam = (c4, c5,# c6, \n", + " c5_slab_u, c5_slab_l, c5_slab_b, c5_slab_r,\n", + " c5_quarter_u, c5_quarter_l, c5_quarter_b, c5_quarter_r,\n", + " c5_ul, c5_br, c5_ru, c5_lb, \n", + " c5_ulf, c5_brf, c5_ruf, c5_lbf, \n", + " c5_ul_t, c5_br_t, c5_ru_t, c5_lb_t,\n", + " c61, c62, c63, c64, c65, c66, c67, c68)\n", + " \n", + " # I-A 2 (upper 1)\n", + " c7 = c1.clone(clone_materials=False)\n", + " c7.name = 'ia_fuel_inner_2'\n", + " c8 = c2.clone(clone_materials=False)\n", + " c8.name = 'ia_moderator_2'\n", + " c9 = c3.clone(clone_materials=False)\n", + " c9.name = 'ia_fuel_outer_2'\n", + " ia2 = (c7, c8, c9)\n", + "\n", + " # I-A 3 (upper 2)'\n", + " s2 = s2.clone()\n", + " s3 = s3.clone()\n", + " elem_bound = elem_bound.clone()\n", + " c10 = c1.clone(clone_materials=False)\n", + " c10.name = 'ia_fuel_inner_3'\n", + " c11 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='ia_moderator_3')\n", + " c12 = openmc.Cell(fill=fuel, region=(+s3 & elem_bound), name='ia_fuel_outer_3')\n", + " ia3 = (c10, c11, c12) \n", + " \n", + " # I-A 4 (upper 3)\n", + " s2 = s2.clone()\n", + " elem_bound = elem_bound.clone()\n", + " c13 = openmc.Cell(fill=hast, region=(-s2), name='ia_hast')\n", + " c14 = openmc.Cell(fill=moder, region=(+s2 & -gr_round_4), name='ia_moderator_4')\n", + " c15 = openmc.Cell(fill=fuel, region=(+gr_round_4 & elem_bound), name='ia_fuel_outer_4')\n", + " ia4 = (c13, c14, c15)\n", + " \n", + " elem_cells = [ia1, iam, ia2, ia3, ia4]\n", + " # universe_id=1\n", + " ia = openmc.Universe(name='zone_ia')\n", + " ia.add_cells(_bound_zone_cells(elem_cells, level_bounds))\n", + " \n", + " return ia\n", + "\n", + "def zoneIIA(elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4):\n", + " \"\"\"Zone IIA element. Specs found in Robertson, 1971 Fig 3.5 (p. 18)\"\"\"\n", + " elem_levels = [434.34, 436.88, 439.42, 441.96]\n", + " level_bounds = []\n", + " for level in elem_levels:\n", + " level_bounds.append(openmc.ZPlane(z0=level))\n", + " s1 = openmc.ZCylinder(r=3.302, name='iia_fuel_hole_main') # Hole with fuel salt - Fig 3.5, Roberton 1971 (3.27787 - p.47)\n", + " s2 = openmc.ZCylinder(r=0.635, name='iia_fuel_hole_2')\n", + " s3 = openmc.ZCylinder(r=3.65125, name='iia_gr_round_3')\n", + " h = 6.5\n", + " theta = np.arctan(3.65125 / h)\n", + " r2 = (1 / np.cos(theta))**2 - 1\n", + " s4 = openmc.ZCone(z0=h + elem_levels[2], r2=r2, name='cone_ii')\n", + "\n", + " # II-A main (lower 1)\n", + " c1 = openmc.Cell(fill=fuel, region=(-s1), name='iia_fuel_inner_main')\n", + " c2 = openmc.Cell(fill=moder, region=(+s1 & gr_sq), name='iia_moderator_main')\n", + " \n", + " c2_slab_u = openmc.Cell(fill=moder, region=slabs[0], name='iia_moderator_main_slab_u')\n", + " c2_slab_l = openmc.Cell(fill=moder, region=slabs[1], name='iia_moderator_main_slab_l')\n", + " c2_slab_b = openmc.Cell(fill=moder, region=slabs[2], name='iia_moderator_main_slab_b')\n", + " c2_slab_r = openmc.Cell(fill=moder, region=slabs[3], name='iia_moderator_main_slab_r')\n", + " \n", + " c2_quarter_u = openmc.Cell(fill=moder, region=quarters[0], name='iia_moderator_main_quarter_u')\n", + " c2_quarter_l = openmc.Cell(fill=moder, region=quarters[1], name='iia_moderator_main_quarter_l')\n", + " c2_quarter_b = openmc.Cell(fill=moder, region=quarters[2], name='iia_moderator_main_quarter_b')\n", + " c2_quarter_r = openmc.Cell(fill=moder, region=quarters[3], name='iia_moderator_main_quarter_r')\n", + " \n", + " c2_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='iia_moderator_main_ul')\n", + " c2_br = openmc.Cell(fill=moder, region=gr_corners[1], name='iia_moderator_main_br')\n", + " c2_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='iia_moderator_main_ru')\n", + " c2_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='iia_moderator_main_lb')\n", + " \n", + " c2_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='iia_moderator_main_ul_fill')\n", + " c2_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='iia_moderator_main_br_fill')\n", + " c2_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='iia_moderator_main_ru_fill')\n", + " c2_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='iia_moderator_main_lb_fill')\n", + " \n", + " # repeat section tips\n", + " c2_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='iia_moderator_main_ul_t')\n", + " c2_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='iia_moderator_main_br_t')\n", + " c2_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='iia_moderator_main_ru_t')\n", + " c2_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='iia_moderator_main_lb_t')\n", + " \n", + " #c3 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='iia_fuel_outer_main')\n", + " # interelement fuel channel\n", + " c31 = openmc.Cell(fill=fuel, region=(inter_elem_channel[0]), name='iia_fuel_outer_main_1')\n", + " c32 = openmc.Cell(fill=fuel, region=(inter_elem_channel[1]), name='iia_fuel_outer_main_2')\n", + " c33 = openmc.Cell(fill=fuel, region=(inter_elem_channel[2]), name='iia_fuel_outer_main_3')\n", + " c34 = openmc.Cell(fill=fuel, region=(inter_elem_channel[3]), name='iia_fuel_outer_main_4')\n", + " c35 = openmc.Cell(fill=fuel, region=(inter_elem_channel[4]), name='iia_fuel_outer_main_5')\n", + " c36 = openmc.Cell(fill=fuel, region=(inter_elem_channel[5]), name='iia_fuel_outer_main_3')\n", + " c37 = openmc.Cell(fill=fuel, region=(inter_elem_channel[6]), name='iia_fuel_outer_main_7')\n", + " c38 = openmc.Cell(fill=fuel, region=(inter_elem_channel[7]), name='iia_fuel_outer_main_8')\n", + "\n", + " iiam = (c1, c2, #c3,\n", + " c2_slab_u, c2_slab_l, c2_slab_b, c2_slab_r,\n", + " c2_quarter_u, c2_quarter_l, c2_quarter_b, c2_quarter_r,\n", + " c2_ul, c2_br, c2_ru, c2_lb, \n", + " c2_ulf, c2_brf, c2_ruf, c2_lbf, \n", + " c2_ul_t, c2_br_t, c2_ru_t, c2_lb_t,\n", + " c31, c32, c33, c34, c35, c36, c37, c38)\n", + "\n", + " # II-A 2 (upper 1)\n", + " #gr_sq_neg = gr_sq_neg.clone()\n", + " gr_sq = gr_sq.clone()\n", + " c4 = openmc.Cell(fill=fuel, region=(-s2), name='iia_fuel_inner_2')\n", + " c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq), name='iia_moderator_2')\n", + " c5_slab_u = c2_slab_u.clone(clone_materials=False)\n", + " c5_slab_u.name = 'iia_moderator_2_slab_u'\n", + " c5_slab_l = c2_slab_l.clone(clone_materials=False)\n", + " c5_slab_l.name = 'iia_moderator_2_slab_l'\n", + " c5_slab_b = c2_slab_b.clone(clone_materials=False)\n", + " c5_slab_b.name = 'iia_moderator_2_slab_b'\n", + " c5_slab_r = c2_slab_r.clone(clone_materials=False)\n", + " c5_slab_r.name = 'iia_moderator_2_slab_r'\n", + " \n", + " c5_quarter_u = c2_quarter_u.clone(clone_materials=False)\n", + " c5_quarter_u.name = 'iia_moderator_2_quarter_u'\n", + " c5_quarter_l = c2_quarter_l.clone(clone_materials=False)\n", + " c5_quarter_l.name = 'iia_moderator_2_quarter_l'\n", + " c5_quarter_b = c2_quarter_b.clone(clone_materials=False)\n", + " c5_quarter_b.name = 'iia_moderator_2_quarter_b'\n", + " c5_quarter_r = c2_quarter_r.clone(clone_materials=False)\n", + " c5_quarter_r.name = 'iia_moderator_2_quarter_r'\n", + " \n", + " c5_ul = c2_ul.clone(clone_materials=False)\n", + " c5_ul.name = 'iia_moderator_2_ul'\n", + " c5_br = c2_br.clone(clone_materials=False)\n", + " c5_br.name = 'iia_moderator_2_br'\n", + " c5_ru = c2_ru.clone(clone_materials=False)\n", + " c5_ru.name = 'iia_moderator_2_ru'\n", + " c5_lb = c2_lb.clone(clone_materials=False)\n", + " c5_lb.name = 'iia_moderator_2_lb'\n", + " c5_ulf = c2_ulf.clone(clone_materials=False)\n", + " c5_ulf.name = 'iia_moderator_2_ulf'\n", + " c5_brf = c2_brf.clone(clone_materials=False)\n", + " c5_brf.name = 'iia_moderator_2_brf'\n", + " c5_ruf = c2_ruf.clone(clone_materials=False)\n", + " c5_ruf.name = 'iia_moderator_2_ruf'\n", + " c5_lbf = c2_lbf.clone(clone_materials=False)\n", + " c5_lbf.name = 'iia_moderator_2_lbf'\n", + " c5_ul_t = c2_ul_t.clone(clone_materials=False)\n", + " c5_ul_t.name = 'iia_moderator_2_ul_t'\n", + " c5_br_t = c2_br_t.clone(clone_materials=False)\n", + " c5_br_t.name = 'iia_moderator_2_br_t'\n", + " c5_ru_t = c2_ru_t.clone(clone_materials=False)\n", + " c5_ru_t.name = 'iia_moderator_2_ru_t'\n", + " c5_lb_t = c2_lb_t.clone(clone_materials=False)\n", + " c5_lb_t.name = 'iia_moderator_2_lb_t' \n", + " \n", + " c61 = c31.clone(clone_materials=False)\n", + " c61.name = 'iia_fuel_outer_2_1'\n", + " c62 = c32.clone(clone_materials=False)\n", + " c62.name = 'iia_fuel_outer_2_2'\n", + " c63 = c33.clone(clone_materials=False)\n", + " c63.name = 'iia_fuel_outer_2_3'\n", + " c64 = c34.clone(clone_materials=False)\n", + " c64.name = 'iia_fuel_outer_2_4'\n", + " c65 = c35.clone(clone_materials=False)\n", + " c65.name = 'iia_fuel_outer_2_5'\n", + " c66 = c36.clone(clone_materials=False)\n", + " c66.name = 'iia_fuel_outer_2_6'\n", + " c67 = c37.clone(clone_materials=False)\n", + " c67.name = 'iia_fuel_outer_2_7'\n", + " c68 = c38.clone(clone_materials=False)\n", + " c68.name = 'iia_fuel_outer_2_8'\n", + " iia2 = (c4, c5, #c6,\n", + " c5_slab_u, c5_slab_l, c5_slab_b, c5_slab_r,\n", + " c5_quarter_u, c5_quarter_l, c5_quarter_b, c5_quarter_r,\n", + " c5_ul, c5_br, c5_ru, c5_lb,\n", + " c5_ulf, c5_brf, c5_ruf, c5_lbf, \n", + " c5_ul_t, c5_br_t, c5_ru_t, c5_lb_t,\n", + " c61, c62, c63, c64, c65, c66, c67, c68)\n", + "\n", + " # II-A 3 (upper 2)\n", + " s2 = s2.clone()\n", + " elem_bound = elem_bound.clone()\n", + " c7 = c4.clone(clone_materials=False)\n", + " c7.name = 'iia_fuel_inner_3'\n", + " c8 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='iia_moderator_3')\n", + " c9 = openmc.Cell(fill=fuel, region=(+s3 & elem_bound), name='iia_fuel_outer_3')\n", + " iia3 = (c7, c8, c9)\n", + "\n", + " # II-A 4 (upper 3) \n", + " elem_bound = elem_bound.clone()\n", + " c10 = openmc.Cell(fill=moder, region=(-s4), name='iia_moderator_4')\n", + " c11 = openmc.Cell(fill=fuel, region=(+s4 & elem_bound), name='iia_fuel_outer_4')\n", + " iia4 = (c10, c11)\n", + "\n", + " # II-A 5 (upper 4)\n", + " elem_bound = elem_bound.clone()\n", + " c12 = openmc.Cell(fill=moder, region=(-gr_round_4), name='iia_moderator_5')\n", + " c13 = openmc.Cell(fill=fuel, region=(+gr_round_4 & elem_bound), name='iia_fuel_outer_5')\n", + " iia5 = (c12, c13)\n", + " \n", + " elem_cells = [iiam, iia2, iia3, iia4, iia5]\n", + " # universe_id=2\n", + " iia = openmc.Universe(name='zone_iia')\n", + " iia.add_cells(_bound_zone_cells(elem_cells, level_bounds))\n", + " return iia\n", + "\n", + "def void_cell(elem_bound):\n", + " elem_bound = elem_bound.clone()\n", + " c1 = openmc.Cell(region=elem_bound, name='lattice_void')\n", + " #universe_id=5\n", + " v = openmc.Universe(name='lattice_void')\n", + " v.add_cell(c1)\n", + " return v\n", + "\n", + "def graphite_triangles(elem_bound):\n", + " s1 = openmc.Plane(1.0, 1.0, 0.0, 0.0)\n", + " s2 = openmc.Plane(-1.0, 1.0, 0.0, 0.0)\n", + " s3 = openmc.Plane(1.0, -1.0, 0.0, 0.0)\n", + " s4 = openmc.Plane(-1.0, -1.0, 0.0, 0.0)\n", + " \n", + " surfs = [(s4, 'bottom_left'),\n", + " (s1, 'top_right'),\n", + " (s2, 'top_left'),\n", + " (s3, 'bottom_right')]\n", + " univs = []\n", + " for i, (s, name) in enumerate(surfs):\n", + " elem_bound = elem_bound.clone()\n", + " c1 = openmc.Cell(fill=moder, region=(-s & elem_bound))\n", + " elem_bound = elem_bound.clone()\n", + " c2 = openmc.Cell(fill=fuel, region=(+s & elem_bound))\n", + " \n", + " # universe_id = 6+i\n", + " gr_tri = openmc.Universe(name=f'{name}_triangle')\n", + " gr_tri.add_cells([c1, c2])\n", + " univs.append(gr_tri)\n", + " \n", + " return univs" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "1dc06889", + "metadata": {}, + "outputs": [], + "source": [ + "elem_bound = openmc.rectangular_prism(5.08*2, 5.08*2) # Pin outer boundary\n", + "eb_minx, eb_maxx, eb_miny, eb_maxy = list(elem_bound.get_surfaces().values())\n", + "\n", + "gr_sq_neg = openmc.rectangular_prism(4.953*2, 4.953*2, corner_radius=0.46) # Graphite square\n", + "(gr_minx, gr_maxx, gr_miny, gr_maxy, \n", + "gr_cyl_lb, gr_cyl_minx, gr_cyl_miny, \n", + "gr_cyl_ul, gr_cyl_maxy, gr_cyl_br, \n", + "gr_cyl_maxx, gr_cyl_ru) = list(gr_sq_neg.get_surfaces().values())\n", + "\n", + "# slabs that line up with rounded edges\n", + "slab_u = -gr_maxy & +gr_cyl_maxy & -gr_cyl_maxx & +gr_cyl_minx\n", + "slab_l = +gr_minx & -gr_cyl_minx & -gr_cyl_maxy & +gr_cyl_miny\n", + "slab_b = +gr_miny & -gr_cyl_miny & -gr_cyl_maxx & +gr_cyl_minx\n", + "slab_r = -gr_maxx & +gr_cyl_maxx & -gr_cyl_maxy & +gr_cyl_miny\n", + "slabs = (slab_u, slab_l, slab_b, slab_r)\n", + "\n", + "# the rounded edges themselves\n", + "quarter_ul = -gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy\n", + "quarter_br = -gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny\n", + "quarter_lb = -gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny\n", + "quarter_ru = -gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy\n", + "quarters = (quarter_ul, quarter_br, quarter_lb, quarter_ru)\n", + "\n", + "# remaining square\n", + "gr_sq = +gr_cyl_minx & -gr_cyl_maxx & +gr_cyl_miny & -gr_cyl_maxy\n", + "\n", + "# params for main pin section for both I-A and II-A\n", + "r_d = 0.66802\n", + "l1 = 4.28498\n", + "l2 = 4.53898\n", + "l3 = 5.62102\n", + "ul = openmc.ZCylinder(-l1, l2, r_d, name='corner_ul')\n", + "br = openmc.ZCylinder(l1, -l2, r_d, name='corner_br')\n", + "lb = openmc.ZCylinder(-l2, -l1, r_d, name='corner_lb')\n", + "ru = openmc.ZCylinder(l2, l1, r_d, name='corner_ru')\n", + "ul_t = openmc.ZCylinder(-l1, -l3, r_d, name='corner_ul_tip')\n", + "br_t = openmc.ZCylinder(l1, l3, r_d, name='corner_br_tip')\n", + "ru_t = openmc.ZCylinder(-l3, l1, r_d, name='corner_ru_tip')\n", + "lb_t = openmc.ZCylinder(l3, -l1, r_d, name='corner_lb_tip')\n", + "\n", + "gr_ul = -ul & -eb_maxy & +gr_maxy# | \n", + "gr_ul_fill = -ul & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy\n", + "gr_br = -br & +eb_miny & -gr_miny# | \n", + "gr_br_fill = -br & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny \n", + "gr_lb = -lb & +eb_minx & -gr_minx# | \n", + "gr_lb_fill = -lb & +gr_cyl_lb & +gr_minx & -gr_cyl_minx & -gr_cyl_miny \n", + "gr_ru = -ru & -eb_maxx & +gr_maxx# | \n", + "gr_ru_fill = -ru & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxx & +gr_cyl_maxy\n", + "\n", + "gr_ul_t = -ul_t & +eb_miny & -gr_miny\n", + "gr_br_t = -br_t & -eb_maxy & +gr_maxy\n", + "gr_ru_t = -ru_t & +eb_minx & -gr_minx\n", + "gr_lb_t = -lb_t & -eb_maxx & +gr_maxx \n", + "\n", + "gr_corners = (gr_ul, gr_br, gr_lb, gr_ru, gr_ul_fill, gr_br_fill, gr_lb_fill, gr_ru_fill)\n", + "gr_t = (gr_ul_t, gr_br_t, gr_ru_t, gr_lb_t)\n", + "\n", + "iec_1 = +gr_cyl_miny & -gr_cyl_maxy & +gr_maxx & -eb_maxx & +lb_t & +ru & +gr_cyl_ru\n", + "iec_2 = (+gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy) & +ru & +br_t & -eb_maxx & -eb_maxy\n", + "iec_3 = +gr_cyl_minx & -gr_cyl_maxx & +gr_maxy & -eb_maxy & +br_t & +ul & +gr_cyl_ul\n", + "iec_4 = (+gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy) & +ul & +ru_t & +eb_minx & -eb_maxy\n", + "iec_5 = +gr_cyl_miny & -gr_cyl_maxy & -gr_minx & +eb_minx & +ru_t & +lb & +gr_cyl_lb\n", + "iec_6 = (+gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny) & +lb & +ul_t & +eb_minx & +eb_miny\n", + "iec_7 = +gr_cyl_minx & -gr_cyl_maxx & -gr_miny & +eb_miny & +ul_t & +br & +gr_cyl_br\n", + "iec_8 = (+gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny) & +br & +lb_t & -eb_maxx & +eb_miny\n", + "\n", + "inter_elem_channel = (iec_1, iec_2, iec_3, iec_4, iec_5, iec_6, iec_7, iec_8)\n", + "#inter_elem_channel = (~gr_sq_neg & elem_bound &\n", + "# +ul & +br & +lb & +ru &\n", + "# +ul_t & +br_t & +ru_t & +lb_t)\n", + "\n", + "\n", + "gr_round_4 = openmc.ZCylinder(r=2.2225, name='gr_round_4')\n", + "\n", + "\"\"\"Zone IA element. Specs found in Robertson, 1971 Fig 3.4 (p. 17)\"\"\"\n", + "elem_levels = [22.86, 419.10, 438.15, 445.135]\n", + "level_bounds = []\n", + "for level in elem_levels:\n", + " level_bounds.append(openmc.ZPlane(z0=level))\n", + "s1 = openmc.ZCylinder(r=4.953, name='ia_gr_round_1')\n", + "s2 = openmc.ZCylinder(r=1.71069, name='ia_fuel_hole')\n", + "\n", + "h = 12.66\n", + "theta = np.arctan(4.953 / h)\n", + "r2 = (1 / np.cos(theta))**2 - 1\n", + "s3 = openmc.ZCone(z0=h + elem_levels[2], r2=r2, name='cone_i')\n", + "\n", + "c1 = openmc.Cell(fill=fuel, region=(-s2), name='ia_fuel_inner_1')\n", + "c2 = openmc.Cell(fill=moder, region=(+s2 & -s1), name='ia_moderator_1')\n", + "c3 = openmc.Cell(fill=fuel, region=(+s1 & elem_bound), name='ia_fuel_outer_1')\n", + "ia1 = (c1, c2, c3)\n", + "\n", + "# I-A main (lower 2)\n", + "s2 = s2.clone()\n", + "c4 = c1.clone(clone_materials=False)\n", + "c4.name = 'ia_fuel_inner_main'\n", + "c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq), name='ia_moderator_main')\n", + "#c6 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='ia_fuel_outer_main')\n", + "\n", + "c5_slab_u = openmc.Cell(fill=moder, region=slabs[0], name='ia_moderator_main_slab_u')\n", + "c5_slab_l = openmc.Cell(fill=moder, region=slabs[1], name='ia_moderator_main_slab_l')\n", + "c5_slab_b = openmc.Cell(fill=moder, region=slabs[2], name='ia_moderator_main_slab_b')\n", + "c5_slab_r = openmc.Cell(fill=moder, region=slabs[3], name='ia_moderator_main_slab_r')\n", + "\n", + "c5_quarter_u = openmc.Cell(fill=moder, region=quarters[0], name='ia_moderator_main_quarter_u')\n", + "c5_quarter_l = openmc.Cell(fill=moder, region=quarters[1], name='ia_moderator_main_quarter_l')\n", + "c5_quarter_b = openmc.Cell(fill=moder, region=quarters[2], name='ia_moderator_main_quarter_b')\n", + "c5_quarter_r = openmc.Cell(fill=moder, region=quarters[3], name='ia_moderator_main_quarter_r')\n", + "\n", + "c5_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='ia_moderator_main_ul')\n", + "c5_br = openmc.Cell(fill=moder, region=gr_corners[1], name='ia_moderator_main_br')\n", + "c5_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='ia_moderator_main_ru')\n", + "c5_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='ia_moderator_main_lb')\n", + "\n", + "c5_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='ia_moderator_main_ul_fill')\n", + "c5_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='ia_moderator_main_br_fill')\n", + "c5_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='ia_moderator_main_ru_fill')\n", + "c5_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='ia_moderator_main_lb_fill')\n", + "\n", + "c5_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='ia_moderator_main_ul_t')\n", + "c5_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='ia_moderator_main_br_t')\n", + "c5_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='ia_moderator_main_ru_t')\n", + "c5_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='ia_moderator_main_lb_t')\n", + "\n", + "c61 = openmc.Cell(fill=fuel, region=(inter_elem_channel[0]), name='ia_fuel_outer_main_1')\n", + "c62 = openmc.Cell(fill=fuel, region=(inter_elem_channel[1]), name='ia_fuel_outer_main_2')\n", + "c63 = openmc.Cell(fill=fuel, region=(inter_elem_channel[2]), name='ia_fuel_outer_main_3')\n", + "c64 = openmc.Cell(fill=fuel, region=(inter_elem_channel[3]), name='ia_fuel_outer_main_4')\n", + "c65 = openmc.Cell(fill=fuel, region=(inter_elem_channel[4]), name='ia_fuel_outer_main_5')\n", + "c66 = openmc.Cell(fill=fuel, region=(inter_elem_channel[5]), name='ia_fuel_outer_main_6')\n", + "c67 = openmc.Cell(fill=fuel, region=(inter_elem_channel[6]), name='ia_fuel_outer_main_7')\n", + "c68 = openmc.Cell(fill=fuel, region=(inter_elem_channel[7]), name='ia_fuel_outer_main_8')\n", + "\n", + "iam = (#c4, c5,# c6, \n", + " #c5_slab_u, c5_slab_l, c5_slab_b, c5_slab_r,\n", + " #c5_quarter_u, c5_quarter_l, c5_quarter_b, c5_quarter_r,\n", + " c5_ul, c5_br, c5_ru, c5_lb, \n", + " c5_ulf, c5_brf, c5_ruf, c5_lbf, \n", + " #c5_ul_t, c5_br_t, c5_ru_t, c5_lb_t,\n", + " c61, c62, c63, c64, c65, c66, c67, c68)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "62c7dfbb", + "metadata": {}, + "outputs": [], + "source": [ + "u = openmc.Universe()\n", + "u.add_cells(iam)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "9681e5c6", + "metadata": {}, + "outputs": [], + "source": [ + "u.plot(width=(20,20),\n", + " basis='xy',\n", + " colors=colormap,\n", + " origin=(0.,0., 446),\n", + " #color_by='material',\n", + " pixels=(2000,2000))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "07136110", + "metadata": {}, + "outputs": [], + "source": [ + "elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4 = shared_elem_geometry()\n", + "ia = zoneIA(elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4)\n", + "elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4 = shared_elem_geometry()\n", + "iia = zoneIIA(elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4)\n", + "# tres, uno, dos, quatro\n", + "bl, ur, ul, br = graphite_triangles(elem_bound)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "752c5160", + "metadata": {}, + "outputs": [], + "source": [ + "ia.plot(width=(20,20),\n", + " basis='xz',\n", + " colors=colormap,\n", + " origin=(0.,0., 446),\n", + " color_by='material',\n", + " pixels=(800,800))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ee56bc53", + "metadata": {}, + "outputs": [], + "source": [ + "iia.plot(width=(20,20),\n", + " basis='xy',\n", + " colors=colormap,\n", + " origin=(0.,0.,435),\n", + " color_by='material',\n", + " pixels=(800,800))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "f71ac1b6", + "metadata": {}, + "outputs": [], + "source": [ + "def shared_cr_geometry():\n", + " fuel_hole = openmc.ZCylinder(r=5.08, name='cr_fuel_hole')\n", + " \n", + " elem_bound = openmc.rectangular_prism(7.62*2, 7.62*2) # Pin outer boundary\n", + " eb_minx, eb_maxx, eb_miny, eb_maxy = list(elem_bound.get_surfaces().values())\n", + " \n", + " gr_sq_neg = openmc.rectangular_prism(7.23646*2, 7.23646*2, corner_radius=0.99) # Graphite square\n", + " # params for \n", + " (gr_minx, gr_maxx, gr_miny, gr_maxy, \n", + " gr_cyl_lb, gr_cyl_minx, gr_cyl_miny, \n", + " gr_cyl_ul, gr_cyl_maxy, gr_cyl_br, \n", + " gr_cyl_maxx, gr_cyl_ru) = list(gr_sq_neg.get_surfaces().values())\n", + " \n", + " # slabs that line up with rounded edges\n", + " slab_u = -gr_maxy & +gr_cyl_maxy & -gr_cyl_maxx & +gr_cyl_minx\n", + " slab_l = +gr_minx & -gr_cyl_minx & -gr_cyl_maxy & +gr_cyl_miny\n", + " slab_b = +gr_miny & -gr_cyl_miny & -gr_cyl_maxx & +gr_cyl_minx\n", + " slab_r = -gr_maxx & +gr_cyl_maxx & -gr_cyl_maxy & +gr_cyl_miny\n", + " slabs = (slab_u, slab_l, slab_b, slab_r)\n", + " \n", + " # the rounded edges themselves\n", + " quarter_ul = -gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy\n", + " quarter_br = -gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny\n", + " quarter_lb = -gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny\n", + " quarter_ru = -gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy\n", + " quarters = (quarter_ul, quarter_br, quarter_lb, quarter_ru)\n", + " \n", + " # remaining square\n", + " gr_sq = +gr_cyl_minx & -gr_cyl_maxx & +gr_cyl_miny & -gr_cyl_maxy\n", + " \n", + " r_d = 1.16\n", + " e_d = 2 * r_d / np.sqrt(3)\n", + " r_dt = 0.8\n", + " r_c = 0.18\n", + " l1 = 5.8801\n", + " l2 = 6.505\n", + " l3 = 8.03646\n", + " ul = openmc.model.hexagonal_prism(origin=(-l1, l2), edge_length=e_d, orientation='x', corner_radius=r_c)\n", + " (ul_u, ul_b, ul_ur, ul_br, ul_bl, ul_ul,\n", + " ul_cyl_bl_in, ul_cyl_bl_out, \n", + " ul_cyl_ul_in, ul_cyl_ul_out,\n", + " ul_cyl_br_in, ul_cyl_br_out,\n", + " ul_cyl_ur_in, ul_cyl_ur_out,\n", + " ul_cyl_l_in, ul_cyl_l_out,\n", + " ul_cyl_r_in, ul_cyl_r_out)= list(ul.get_surfaces().values())\n", + " br = openmc.model.hexagonal_prism(origin=(l1, -l2), edge_length=e_d, orientation='x',corner_radius=r_c)\n", + " (br_u, br_b, br_ur, br_br, br_bl, br_ul,\n", + " br_cyl_bl_in, br_cyl_bl_out, \n", + " br_cyl_ul_in, br_cyl_ul_out,\n", + " br_cyl_br_in, br_cyl_br_out,\n", + " br_cyl_ur_in, br_cyl_ur_out,\n", + " br_cyl_l_in, br_cyl_l_out,\n", + " br_cyl_r_in, br_cyl_r_out)= list(br.get_surfaces().values())\n", + " lb = openmc.model.hexagonal_prism(origin=(-l2, -l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", + " (lb_r, lb_l, lb_ur, lb_ul, lb_br, lb_bl,\n", + " lb_cyl_lb_in, lb_cyl_lb_out, \n", + " lb_cyl_lu_in, lb_cyl_lu_out,\n", + " lb_cyl_rb_in, lb_cyl_rb_out,\n", + " lb_cyl_ru_in, lb_cyl_ru_out,\n", + " lb_cyl_b_in, lb_cyl_b_out,\n", + " lb_cyl_u_in, lb_cyl_u_out)= list(lb.get_surfaces().values())\n", + " ru = openmc.model.hexagonal_prism(origin=(l2, l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", + " (ru_r, ru_l, ru_ur, ru_ul, ru_br, ru_bl,\n", + " ru_cyl_lb_in, ru_cyl_lb_out, \n", + " ru_cyl_lu_in, ru_cyl_lu_out,\n", + " ru_cyl_rb_in, ru_cyl_rb_out,\n", + " ru_cyl_ru_in, ru_cyl_ru_out,\n", + " ru_cyl_b_in, ru_cyl_b_out,\n", + " ru_cyl_u_in, ru_cyl_u_out)= list(ru.get_surfaces().values())\n", + " ul_t = openmc.ZCylinder(-l1, -l3, r_dt, name='corner_ul_tip')\n", + " br_t = openmc.ZCylinder(l1, l3, r_dt, name='corner_br_tip')\n", + " ru_t = openmc.ZCylinder(-l3, l1, r_dt, name='corner_ru_tip')\n", + " lb_t = openmc.ZCylinder(l3, -l1, r_dt, name='corner_lb_tip')\n", + " \n", + " gr_ul = -ul_ul & -ul_ur & -eb_maxy & +gr_maxy\n", + " gr_ul_fill = -ul_ul & +ul_bl & +ul_cyl_l_out & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy\n", + " gr_br = +br_br & +br_bl & +eb_miny & -gr_miny\n", + " gr_br_fill = +br_br & -br_ur & +br_cyl_r_out & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny\n", + " gr_lb = +lb_bl & -lb_ul & +eb_minx & -gr_minx\n", + " gr_lb_fill = +lb_bl & +lb_br & +lb_cyl_b_out & +gr_cyl_lb & +gr_minx & -gr_cyl_miny & -gr_cyl_minx\n", + " gr_ru = +ru_br & -ru_ur & -eb_maxx & +gr_maxx\n", + " gr_ru_fill = -ru_ur & -ru_ul & +ru_cyl_u_out & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxy & +gr_cyl_maxx\n", + "\n", + "\n", + " gr_ul_t = -ul_t & +eb_miny & -gr_miny\n", + " gr_br_t = -br_t & -eb_maxy & +gr_maxy\n", + " gr_ru_t = -ru_t & +eb_minx & -gr_minx\n", + " gr_lb_t = -lb_t & -eb_maxx & +gr_maxx \n", + " \n", + " gr_corners = (gr_ul, gr_br, gr_lb, gr_ru, gr_ul_fill, gr_br_fill, gr_lb_fill, gr_ru_fill)\n", + " gr_t = (gr_ul_t, gr_br_t, gr_ru_t, gr_lb_t)\n", + " \n", + " # need to decomplexify even #s\n", + " iec_1 = +gr_cyl_miny & +gr_maxx & -eb_maxx & +lb_t & -ru_br\n", + " iec_2 = +gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy & (+ru_ur | +ru_ul | (+ru_cyl_u_in & -ru_cyl_u_out)) & +br_t & -eb_maxx & -eb_maxy\n", + " iec_3 = -gr_cyl_maxx & +gr_maxy & -eb_maxy & +br_t & +ul_ur\n", + " iec_4 = +gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy & (+ul_ul | -ul_bl | (+ul_cyl_l_in & -ul_cyl_l_out)) & +ru_t & +eb_minx & -eb_maxy\n", + " iec_5 = -gr_cyl_maxy & -gr_minx & +eb_minx & +ru_t & +lb_ul\n", + " iec_6 = +gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny & (-lb_bl | -lb_br | (+lb_cyl_b_in & -lb_cyl_b_out)) & +ul_t & +eb_minx & +eb_miny\n", + " iec_7 = +gr_cyl_minx & -gr_miny & +eb_miny & +ul_t & -br_bl\n", + " iec_8 = +gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny & (-br_br | +br_ur | (+br_cyl_r_in & -br_cyl_r_out)) & +lb_t & -eb_maxx & +eb_miny\n", + "\n", + "\n", + " inter_elem_channel = (iec_1, iec_2, iec_3, iec_4, iec_5, iec_6, iec_7, iec_8)\n", + " #inter_elem_channel = (~gr_sq_neg & elem_bound &\n", + " # ~ul & ~br & ~lb & ~ru &\n", + " # +ul_t & +br_t & +ru_t & +lb_t)\n", + " \n", + "\n", + " return fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel\n", + " " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "b41ea3c3", + "metadata": {}, + "outputs": [], + "source": [ + "elem_bound = openmc.rectangular_prism(7.62*2, 7.62*2) # Pin outer boundary\n", + "eb_minx, eb_maxx, eb_miny, eb_maxy = list(elem_bound.get_surfaces().values())\n", + "\n", + "gr_sq_neg = openmc.rectangular_prism(7.23646*2, 7.23646*2, corner_radius=0.99) # Graphite\n", + " \n", + "(gr_minx, gr_maxx, gr_miny, gr_maxy, \n", + "gr_cyl_lb, gr_cyl_minx, gr_cyl_miny, \n", + "gr_cyl_ul, gr_cyl_maxy, gr_cyl_br, \n", + "gr_cyl_maxx, gr_cyl_ru) = list(gr_sq_neg.get_surfaces().values())\n", + "\n", + "# the rounded edges themselves\n", + "quarter_ul = -gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy\n", + "quarter_br = -gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny\n", + "quarter_lb = -gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny\n", + "quarter_ru = -gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy\n", + "quarters = (quarter_ul, quarter_br, quarter_lb, quarter_ru)\n", + "\n", + "# remaining square\n", + "gr_sq = +gr_cyl_minx & -gr_cyl_maxx & +gr_cyl_miny & -gr_cyl_maxy\n", + "\n", + "r_d = 1.16\n", + "e_d = 2 * r_d / np.sqrt(3)\n", + "r_dt = 0.8\n", + "r_c = 0.18\n", + "l1 = 5.8801\n", + "l2 = 6.505\n", + "l3 = 8.03646\n", + "ul = openmc.model.hexagonal_prism(origin=(-l1, l2), edge_length=e_d, orientation='x', corner_radius=r_c)\n", + "(ul_u, ul_b, ul_ur, ul_br, ul_bl, ul_ul,\n", + " ul_cyl_bl_in, ul_cyl_bl_out, \n", + " ul_cyl_ul_in, ul_cyl_ul_out,\n", + " ul_cyl_br_in, ul_cyl_br_out,\n", + " ul_cyl_ur_in, ul_cyl_ur_out,\n", + " ul_cyl_l_in, ul_cyl_l_out,\n", + " ul_cyl_r_in, ul_cyl_r_out)= list(ul.get_surfaces().values())\n", + "br = openmc.model.hexagonal_prism(origin=(l1, -l2), edge_length=e_d, orientation='x',corner_radius=r_c)\n", + "(br_u, br_b, br_ur, br_br, br_bl, br_ul,\n", + " br_cyl_bl_in, br_cyl_bl_out, \n", + " br_cyl_ul_in, br_cyl_ul_out,\n", + " br_cyl_br_in, br_cyl_br_out,\n", + " br_cyl_ur_in, br_cyl_ur_out,\n", + " br_cyl_l_in, br_cyl_l_out,\n", + " br_cyl_r_in, br_cyl_r_out)= list(br.get_surfaces().values())\n", + "lb = openmc.model.hexagonal_prism(origin=(-l2, -l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", + "(lb_r, lb_l, lb_ur, lb_ul, lb_br, lb_bl,\n", + " lb_cyl_lb_in, lb_cyl_lb_out, \n", + " lb_cyl_lu_in, lb_cyl_lu_out,\n", + " lb_cyl_rb_in, lb_cyl_rb_out,\n", + " lb_cyl_ru_in, lb_cyl_ru_out,\n", + " lb_cyl_b_in, lb_cyl_b_out,\n", + " lb_cyl_u_in, lb_cyl_u_out)= list(lb.get_surfaces().values())\n", + "ru = openmc.model.hexagonal_prism(origin=(l2, l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", + "(ru_r, ru_l, ru_ur, ru_ul, ru_br, ru_bl,\n", + " ru_cyl_lb_in, ru_cyl_lb_out, \n", + " ru_cyl_lu_in, ru_cyl_lu_out,\n", + " ru_cyl_rb_in, ru_cyl_rb_out,\n", + " ru_cyl_ru_in, ru_cyl_ru_out,\n", + " ru_cyl_b_in, ru_cyl_b_out,\n", + " ru_cyl_u_in, ru_cyl_u_out)= list(ru.get_surfaces().values())\n", + "ul_t = openmc.ZCylinder(-l1, -l3, r_dt, name='corner_ul_tip')\n", + "br_t = openmc.ZCylinder(l1, l3, r_dt, name='corner_br_tip')\n", + "ru_t = openmc.ZCylinder(-l3, l1, r_dt, name='corner_ru_tip')\n", + "lb_t = openmc.ZCylinder(l3, -l1, r_dt, name='corner_lb_tip')\n", + "\n", + "gr_ul = -ul_ul & -ul_ur & -eb_maxy & +gr_maxy\n", + "gr_ul_fill = -ul_ul & +ul_bl & +ul_cyl_l_out & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy\n", + "gr_br = +br_br & +br_bl & +eb_miny & -gr_miny\n", + "gr_br_fill = +br_br & -br_ur & +br_cyl_r_out & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny\n", + "gr_lb = +lb_bl & -lb_ul & +eb_minx & -gr_minx\n", + "gr_lb_fill = +lb_bl & +lb_br & +lb_cyl_b_out & +gr_cyl_lb & +gr_minx & -gr_cyl_miny & -gr_cyl_minx\n", + "gr_ru = +ru_br & -ru_ur & -eb_maxx & +gr_maxx\n", + "gr_ru_fill = -ru_ur & -ru_ul & +ru_cyl_u_out & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxy & +gr_cyl_maxx\n", + "\n", + "\n", + "gr_ul_t = -ul_t & +eb_miny & -gr_miny\n", + "gr_br_t = -br_t & -eb_maxy & +gr_maxy\n", + "gr_ru_t = -ru_t & +eb_minx & -gr_minx\n", + "gr_lb_t = -lb_t & -eb_maxx & +gr_maxx \n", + "\n", + "gr_corners = (gr_ul, gr_br, gr_lb, gr_ru, gr_ul_fill, gr_br_fill, gr_lb_fill, gr_ru_fill)\n", + "gr_t = (gr_ul_t, gr_br_t, gr_ru_t, gr_lb_t)\n", + "\n", + "# need to decomplexify even #s\n", + "iec_1 = +gr_cyl_miny & +gr_maxx & -eb_maxx & +lb_t & -ru_br\n", + "iec_2 = +gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy & ~ru & +br_t & -eb_maxx & -eb_maxy\n", + "iec_3 = -gr_cyl_maxx & +gr_maxy & -eb_maxy & +br_t & +ul_ur\n", + "iec_4 = +gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy & ~ul & +ru_t & +eb_minx & -eb_maxy\n", + "iec_5 = -gr_cyl_maxy & -gr_minx & +eb_minx & +ru_t & +lb_ul\n", + "iec_6 = +gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny & ~lb & +ul_t & +eb_minx & +eb_miny\n", + "iec_7 = +gr_cyl_minx & -gr_miny & +eb_miny & +ul_t & -br_bl\n", + "iec_8 = +gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny & ~br & +lb_t & -eb_maxx & +eb_miny\n", + "\n", + "inter_elem_channel = (iec_1, iec_2, iec_3, iec_4, iec_5, iec_6, iec_7, iec_8)\n", + "#inter_elem_channel = (~gr_sq_neg & elem_bound &\n", + "\n", + "c3 = openmc.Cell(fill=moder, region=(gr_sq), name='cr_moderator')\n", + "\n", + "c3_quarter_u = openmc.Cell(fill=moder, region=quarters[0], name='cr_moderator_quarter_u')\n", + "c3_quarter_l = openmc.Cell(fill=moder, region=quarters[1], name='cr_moderator_quarter_l')\n", + "c3_quarter_b = openmc.Cell(fill=moder, region=quarters[2], name='cr_moderator_quarter_b')\n", + "c3_quarter_r = openmc.Cell(fill=moder, region=quarters[3], name='cr_moderator_quarter_r')\n", + "\n", + "c3_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='cr_moderator_ul')\n", + "c3_br = openmc.Cell(fill=moder, region=gr_corners[1], name='cr_moderator_br')\n", + "c3_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='cr_moderator_ru')\n", + "c3_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='cr_moderator_lb')\n", + "\n", + "c3_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='cr_moderator_ul_fill')\n", + "c3_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='cr_moderator_br_fill')\n", + "c3_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='cr_moderator_ru_fill')\n", + "c3_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='cr_moderator_lb_fill')\n", + "\n", + "c3_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='cr_moderator_ul_t')\n", + "c3_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='cr_moderator_br_t')\n", + "c3_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='cr_moderator_ru_t')\n", + "c3_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='cr_moderator_lb_t')\n", + "\n", + "#c4 = openmc.Cell(fill=fuel, region=inter_elem_channel, name='cr_fuel_outer')\n", + "c41 = openmc.Cell(fill=fuel, region=(inter_elem_channel[0]), name='cr_fuel_outer_1')\n", + "c42 = openmc.Cell(fill=fuel, region=(inter_elem_channel[1]), name='cr_fuel_outer_2')\n", + "c43 = openmc.Cell(fill=fuel, region=(inter_elem_channel[2]), name='cr_fuel_outer_3')\n", + "c44 = openmc.Cell(fill=fuel, region=(inter_elem_channel[3]), name='cr_fuel_outer_4')\n", + "c45 = openmc.Cell(fill=fuel, region=(inter_elem_channel[4]), name='cr_fuel_outer_5')\n", + "c46 = openmc.Cell(fill=fuel, region=(inter_elem_channel[5]), name='cr_fuel_outer_6')\n", + "c47 = openmc.Cell(fill=fuel, region=(inter_elem_channel[6]), name='cr_fuel_outer_7')\n", + "c48 = openmc.Cell(fill=fuel, region=(inter_elem_channel[7]), name='cr_fuel_outer_8')\n", + "\n", + "\n", + "#universe_id=3\n", + "cr = openmc.Universe(name='control_rod')\n", + "cr.add_cells([#c3, #c4,\n", + " #c3_quarter_u, c3_quarter_l, c3_quarter_b, c3_quarter_r,\n", + " c3_ul, c3_br, c3_ru, c3_lb, \n", + " #c3_ulf, c3_brf, c3_ruf, c3_lbf, \n", + " c3_ul_t, c3_br_t, c3_ru_t, c3_lb_t,\n", + " c41, c42, c43, c44, c45, c46, c47, c48])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "b0dbf19f", + "metadata": {}, + "outputs": [], + "source": [ + "cr.plot(width=(20,20),\n", + " basis='xy',\n", + " colors=colormap,\n", + " origin=(0.,0.,440),\n", + " #color_by='material',\n", + " pixels=(2000,2000))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "d17047bd", + "metadata": {}, + "outputs": [], + "source": [ + "def control_rod(fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel):\n", + " s1 = openmc.ZCylinder(r=4.7625, name='control_rod')\n", + "\n", + " c1 = openmc.Cell(fill=moder, region=-s1, name='control_rod')\n", + " c2 = openmc.Cell(fill=fuel, region=(+s1 & -fuel_hole), name='cr_fuel_inner')\n", + " \n", + " c3 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq), name='cr_moderator')\n", + " \n", + " c3_slab_u = openmc.Cell(fill=moder, region=slabs[0], name='cr_moderator_slab_u')\n", + " c3_slab_l = openmc.Cell(fill=moder, region=slabs[1], name='cr_moderator_slab_l')\n", + " c3_slab_b = openmc.Cell(fill=moder, region=slabs[2], name='cr_moderator_slab_b')\n", + " c3_slab_r = openmc.Cell(fill=moder, region=slabs[3], name='cr_moderator_slab_r')\n", + " \n", + " c3_quarter_u = openmc.Cell(fill=moder, region=quarters[0], name='cr_moderator_quarter_u')\n", + " c3_quarter_l = openmc.Cell(fill=moder, region=quarters[1], name='cr_moderator_quarter_l')\n", + " c3_quarter_b = openmc.Cell(fill=moder, region=quarters[2], name='cr_moderator_quarter_b')\n", + " c3_quarter_r = openmc.Cell(fill=moder, region=quarters[3], name='cr_moderator_quarter_r')\n", + " \n", + " c3_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='cr_moderator_ul')\n", + " c3_br = openmc.Cell(fill=moder, region=gr_corners[1], name='cr_moderator_br')\n", + " c3_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='cr_moderator_ru')\n", + " c3_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='cr_moderator_lb')\n", + " \n", + " c3_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='cr_moderator_ul_fill')\n", + " c3_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='cr_moderator_br_fill')\n", + " c3_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='cr_moderator_ru_fill')\n", + " c3_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='cr_moderator_lb_fill')\n", + " \n", + " c3_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='cr_moderator_ul_t')\n", + " c3_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='cr_moderator_br_t')\n", + " c3_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='cr_moderator_ru_t')\n", + " c3_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='cr_moderator_lb_t')\n", + " \n", + " #c4 = openmc.Cell(fill=fuel, region=inter_elem_channel, name='cr_fuel_outer')\n", + " c41 = openmc.Cell(fill=fuel, region=(inter_elem_channel[0]), name='cr_fuel_outer_1')\n", + " c42 = openmc.Cell(fill=fuel, region=(inter_elem_channel[1]), name='cr_fuel_outer_2')\n", + " c43 = openmc.Cell(fill=fuel, region=(inter_elem_channel[2]), name='cr_fuel_outer_3')\n", + " c44 = openmc.Cell(fill=fuel, region=(inter_elem_channel[3]), name='cr_fuel_outer_4')\n", + " c45 = openmc.Cell(fill=fuel, region=(inter_elem_channel[4]), name='cr_fuel_outer_5')\n", + " c46 = openmc.Cell(fill=fuel, region=(inter_elem_channel[5]), name='cr_fuel_outer_6')\n", + " c47 = openmc.Cell(fill=fuel, region=(inter_elem_channel[6]), name='cr_fuel_outer_7')\n", + " c48 = openmc.Cell(fill=fuel, region=(inter_elem_channel[7]), name='cr_fuel_outer_8')\n", + "\n", + "\n", + " #universe_id=3\n", + " cr = openmc.Universe(name='control_rod')\n", + " cr.add_cells([c1, c2, c3, #c4,\n", + " c3_slab_u, c3_slab_l, c3_slab_b, c3_slab_r,\n", + " c3_quarter_u, c3_quarter_l, c3_quarter_b, c3_quarter_r,\n", + " c3_ul, c3_br, c3_ru, c3_lb, \n", + " c3_ulf, c3_brf, c3_ruf, c3_lbf, \n", + " c3_ul_t, c3_br_t, c3_ru_t, c3_lb_t,\n", + " c41, c42, c43, c44, c45, c46, c47, c48])\n", + " \n", + " return cr\n", + " \n", + "def control_rod_channel(fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel):\n", + " c1 = openmc.Cell(fill=fuel, region=(-fuel_hole), name='crc_fuel_inner')\n", + " c2 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq), name='crc_moderator')\n", + " \n", + " c2_slab_u = openmc.Cell(fill=moder, region=slabs[0], name='crc_moderator_slab_u')\n", + " c2_slab_l = openmc.Cell(fill=moder, region=slabs[1], name='crc_moderator_slab_l')\n", + " c2_slab_b = openmc.Cell(fill=moder, region=slabs[2], name='crc_moderator_slab_b')\n", + " c2_slab_r = openmc.Cell(fill=moder, region=slabs[3], name='crc_moderator_slab_r')\n", + " \n", + " c2_quarter_u = openmc.Cell(fill=moder, region=quarters[0], name='crc_moderator_quarter_u')\n", + " c2_quarter_l = openmc.Cell(fill=moder, region=quarters[1], name='crc_moderator_quarter_l')\n", + " c2_quarter_b = openmc.Cell(fill=moder, region=quarters[2], name='crc_moderator_quarter_b')\n", + " c2_quarter_r = openmc.Cell(fill=moder, region=quarters[3], name='crc_moderator_quarter_r')\n", + " \n", + " c2_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='crc_moderator_ul')\n", + " c2_br = openmc.Cell(fill=moder, region=gr_corners[1], name='crc_moderator_br')\n", + " c2_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='crc_moderator_ru')\n", + " c2_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='crc_moderator_lb')\n", + " \n", + " c2_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='crc_moderator_ul_fill')\n", + " c2_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='crc_moderator_br_fill')\n", + " c2_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='crc_moderator_ru_fill')\n", + " c2_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='crc_moderator_lb_fill')\n", + " \n", + " c2_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='crc_moderator_ul_t')\n", + " c2_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='crc_moderator_br_t')\n", + " c2_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='crc_moderator_ru_t')\n", + " c2_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='crc_moderator_lb_t')\n", + " \n", + " #c3 = openmc.Cell(fill=fuel, region=inter_elem_channel, name='crc_fuel_outer')\n", + " c31 = openmc.Cell(fill=fuel, region=(inter_elem_channel[0]), name='crc_fuel_outer_1')\n", + " c32 = openmc.Cell(fill=fuel, region=(inter_elem_channel[1]), name='crc_fuel_outer_2')\n", + " c33 = openmc.Cell(fill=fuel, region=(inter_elem_channel[2]), name='crc_fuel_outer_3')\n", + " c34 = openmc.Cell(fill=fuel, region=(inter_elem_channel[3]), name='crc_fuel_outer_4')\n", + " c35 = openmc.Cell(fill=fuel, region=(inter_elem_channel[4]), name='crc_fuel_outer_5')\n", + " c36 = openmc.Cell(fill=fuel, region=(inter_elem_channel[5]), name='crc_fuel_outer_3')\n", + " c37 = openmc.Cell(fill=fuel, region=(inter_elem_channel[6]), name='crc_fuel_outer_7')\n", + " c38 = openmc.Cell(fill=fuel, region=(inter_elem_channel[7]), name='crc_fuel_outer_8')\n", + "\n", + " \n", + "\n", + "\n", + " # universe_id=4\n", + " crc = openmc.Universe(name='control_rod_channel')\n", + " crc.add_cells([c1, c2, #c3, \n", + " c2_slab_u, c2_slab_l, c2_slab_b, c2_slab_r,\n", + " c2_quarter_u, c2_quarter_l, c2_quarter_b, c2_quarter_r,\n", + " c2_ul, c2_br, c2_ru, c2_lb, \n", + " c2_ulf, c2_brf, c2_ruf, c2_lbf, \n", + " c2_ul_t, c2_br_t, c2_ru_t, c2_lb_t,\n", + " c31, c32, c33, c34, c35, c36, c37, c38])\n", + " \n", + " return crc" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "cea2d476", + "metadata": {}, + "outputs": [], + "source": [ + "fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel = shared_cr_geometry() \n", + "cr = control_rod(fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel)\n", + "fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel = shared_cr_geometry() \n", + "crc = control_rod_channel(fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "35f02392", + "metadata": {}, + "outputs": [], + "source": [ + "cr.cells" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "cb7abdf0", + "metadata": {}, + "outputs": [], + "source": [ + "openmc.Universe(cells=[cr.cells[6724]]).plot(width=(20,20),\n", + " basis='xy',\n", + " colors=colormap,\n", + " origin=(0.,0.,440),\n", + " color_by='material',\n", + " pixels=(1000,1000))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "aa83205f", + "metadata": {}, + "outputs": [], + "source": [ + "cr.plot(width=(20,20),\n", + " basis='xy',\n", + " colors=colormap,\n", + " origin=(0.,0.,440),\n", + " #color_by='material',\n", + " pixels=(2000,2000))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "37a3fa2a", + "metadata": {}, + "outputs": [], + "source": [ + "crc.plot(width=(20,20),\n", + " basis='xy',\n", + " colors=colormap,\n", + " origin=(0.,0.,440),\n", + " color_by='material',\n", + " pixels=(400,400))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ff53e9bb", + "metadata": {}, + "outputs": [], + "source": [ + "cr.cells" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "0e965d29", + "metadata": {}, + "outputs": [], + "source": [ + "c1 = cr.cells[129]\n", + "c2 = cr.cells[130]\n", + "c3 = cr.cells[131]\n", + "c4 = cr.cells[132]\n", + "c5 = cr.cells[133]\n", + "c6 = cr.cells[134]\n", + "c7 = cr.cells[135]\n", + "c8 = cr.cells[136]\n", + "ttt = openmc.Universe(cells=[])\n", + "ttt = openmc.Universe(cells=[c1, c2, c3, c4, c5, c6, c7, c8])\n", + "ttt.plot(width=(20,20),\n", + " basis='xy',\n", + " colors=colormap,\n", + " origin=(0.,0.,440),\n", + " color_by='material',\n", + " pixels=(800,800))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "cd37f04d", + "metadata": {}, + "outputs": [], + "source": [ + "c5 = cr.cells[250]\n", + "c6 = cr.cells[251]\n", + "c7 = cr.cells[252]\n", + "c8 = cr.cells[253]\n", + "ttt = openmc.Universe(cells=[c5, c6, c7, c8])\n", + "ttt.plot(width=(20,20),\n", + " basis='xy',\n", + " colors=colormap,\n", + " origin=(0.,0.,440),\n", + " color_by='material',\n", + " pixels=(800,800))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "e7721c7b", + "metadata": {}, + "outputs": [], + "source": [ + "c5" + ] + }, + { + "cell_type": "markdown", + "id": "2f5fd590", + "metadata": {}, + "source": [ + "## Figuring out how to decomplexify CR geometry (WIP)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "6f168514", + "metadata": {}, + "outputs": [], + "source": [ + "r_d = 1.16\n", + "r_dt = 0.8\n", + "e_d = 2 * r_d / np.sqrt(3)\n", + "r_c = 0.18\n", + "l1 = 5.8801\n", + "l2 = 6.505\n", + "l3 = 8.03646\n", + "ul = openmc.model.hexagonal_prism(origin=(-l1, l2), edge_length=e_d, orientation='x', corner_radius=r_c)\n", + "br = openmc.model.hexagonal_prism(origin=(l1, -l2), edge_length=e_d, orientation='x',corner_radius=r_c)\n", + "lb = openmc.model.hexagonal_prism(origin=(-l2, -l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", + "ru = openmc.model.hexagonal_prism(origin=(l2, l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", + "gr_sq_neg = openmc.rectangular_prism(7.23646*2, 7.23646*2, corner_radius=0.99) # Graphite square\n", + "elem_bound = openmc.rectangular_prism(7.62*2, 7.62*2) # Pin outer boundary\n", + "\n", + "ul_t = openmc.ZCylinder(-l1, -l3, r_dt, name='corner_ul_tip')\n", + "br_t = openmc.ZCylinder(l1, l3, r_dt, name='corner_br_tip')\n", + "ru_t = openmc.ZCylinder(-l3, l1, r_dt, name='corner_ru_tip')\n", + "lb_t = openmc.ZCylinder(l3, -l1, r_dt, name='corner_lb_tip')\n", + "c1 = openmc.Cell(fill=moder, region=ul)\n", + "c2 = openmc.Cell(fill=moder, region=br)\n", + "c3 = openmc.Cell(fill=moder, region=lb)\n", + "c4 = openmc.Cell(fill=moder, region=ru)\n", + "c5 = openmc.Cell(fill=hast, region=gr_sq_neg)\n", + "c6 = openmc.Cell(fill=fuel, region=-ul_t)\n", + "c7 = openmc.Cell(fill=fuel, region=-br_t)\n", + "c8 = openmc.Cell(fill=fuel, region=-ru_t)\n", + "c9 = openmc.Cell(fill=fuel, region=-lb_t)\n", + "c10 = openmc.Cell(fill=moder, region=elem_bound)\n", + "\n", + "tu = openmc.Universe(cells=[c1, c2, c3, c4, c5, c6, c7, c8, c9, c10])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "557bcb8f", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "67a1317a", + "metadata": {}, + "outputs": [], + "source": [ + "ul = openmc.model.hexagonal_prism(origin=(-l1, l2), edge_length=e_d, orientation='x', corner_radius=r_c)\n", + "# for x oriented\n", + "(ul_u, ul_b, ul_ur, ul_br, ul_bl, ul_ul,\n", + " ul_cyl_bl_in, ul_cyl_bl_out, \n", + " ul_cyl_ul_in, ul_cyl_ul_out,\n", + " ul_cyl_br_in, ul_cyl_br_out,\n", + " ul_cyl_ur_in, ul_cyl_ur_out,\n", + " ul_cyl_l_in, ul_cyl_l_out,\n", + " ul_cyl_r_in, ul_yl_r_out)= list(ul.get_surfaces().values())" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "b07e3b36", + "metadata": {}, + "outputs": [], + "source": [ + "c3" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "690e90ee", + "metadata": {}, + "outputs": [], + "source": [ + "(lb_r, lb_l, lb_ur, lb_ul, lb_br, lb_bl,\n", + " lb_cyl_lb_in, lb_cyl_lb_out, \n", + " lb_cyl_lu_in, lb_cyl_lu_out,\n", + " lb_cyl_rb_in, lb_cyl_rb_out,\n", + " lb_cyl_ru_in, lb_cyl_ru_out,\n", + " lb_cyl_b_in, lb_cyl_b_out,\n", + " lb_cyl_u_in, lb_yl_u_out)= list(lb.get_surfaces().values())" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "9ea0eaec", + "metadata": {}, + "outputs": [], + "source": [ + "lb.get_surfaces()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "2f268e09", + "metadata": {}, + "outputs": [], + "source": [ + "#t = openmc.Region.from_expression('(-1448 1449 -1450 1451 1452 -1453 ~((1454 -1460) | (1455 -1461) | (1456 -1462) | (1457 -1463) | (1458 -1464) | (1459 -1465)))', c1.region.get_surfaces())\n", + "#t = openmc.Region.from_expression('(-1448 1449 -1450 1451 1452 -1453 ((-1454 | 1460) (-1455 | 1461) (-1456 | 1462) (-1457 | 1463) (-1458 | 1464) (-1459 | 1465)))', c1.region.get_surfaces())\n", + "t = openmc.Region.from_expression('(-772 773 -774 -775 776 777 (778 -784))', c3.region.get_surfaces())\n", + "\n", + "#t = openmc.Region.from_expression('((-1454 | -1455 | -1456 | -1457 | -1458 | -1459) | 1460 1461 1462 1463 1464 1465)', c1.region.get_surfaces())\n", + "#t = openmc.Region.from_expression('(-1448 1449 -1450 1451 1452 -1453 (-1454 | -1455 | -1456 | -1457 | -1458 | -1459 | 1460 1461 1462 1463 1464 1465))', c1.region.get_surfaces())\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "0e6ee5dc", + "metadata": {}, + "outputs": [], + "source": [ + "tt = openmc.Cell(fill=moder, region=t)\n", + "ttt = openmc.Universe(cells=[tt])\n", + "ttt.plot(width=(20,20),\n", + " basis='xy',\n", + " colors=colormap,\n", + " origin=(0.,0.,440),\n", + " color_by='material',\n", + " pixels=(800,800))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "2b22c009", + "metadata": {}, + "outputs": [], + "source": [ + "tu.plot(width=(20,20),\n", + " basis='xy',\n", + " colors=colormap,\n", + " origin=(0.,0.,440),\n", + " #color_by='material',\n", + " pixels=(800,800))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "4cb184e6", + "metadata": {}, + "outputs": [], + "source": [ + "s1 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=208.28, r2=222.71, name='base_octader')\n", + "s2 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=218.44, r2=215.53, name='smaller_octader')\n", + "s3 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=228.60, r2=193.97, name='smallest_octader')\n", + "oct1 = list((-s1).get_surfaces().values())\n", + "oct2 = list((-s2).get_surfaces().values())\n", + "oct3 = list((-s3).get_surfaces().values())\n", + "octas = (oct1, oct2, oct3)\n", + "oct1_maxy, oct1_miny, oct1_maxx, oct1_minx, oct1_ur, oct1_br, oct1_bl, oct1_ul = octas[0]\n", + "oct2_maxy, oct2_miny, oct2_maxx, oct2_minx, oct2_ur, oct2_br, oct2_bl, oct2_ul = octas[1]\n", + "oct3_maxy, oct3_miny, oct3_maxx, oct3_minx, oct3_ur, oct3_br, oct3_bl, oct3_ul = octas[2]\n", + "\n", + "cr_boundary = openmc.model.rectangular_prism(15.24*2, 15.24*2)\n", + "\n", + "cb_minx, cb_maxx, cb_miny, cb_maxy = list(cr_boundary.get_surfaces().values())\n", + "\n", + "#c1 = openmc.Cell(fill=moder, region=+s3 & -s2)\n", + "c1_ur = openmc.Cell(fill=moder, region=(-oct3_ur & +oct2_ur & -oct2_maxx & -oct2_maxy))\n", + "c1_ul = openmc.Cell(fill=moder, region=(+oct3_ul & -oct2_ul & +oct2_minx & -oct2_maxy))\n", + "c1_bl = openmc.Cell(fill=moder, region=(+oct3_bl & -oct2_bl & +oct2_minx & +oct2_miny))\n", + "c1_br = openmc.Cell(fill=moder, region=(-oct3_br & +oct2_br & -oct2_maxx & +oct2_miny))\n", + "c1 = [c1_ur, c1_ul, c1_bl, c1_br]\n", + "\n", + "#c2 = openmc.Cell(fill=moder, region=-s3)\n", + "c2_r = openmc.Cell(fill=moder, region=(+cb_maxx & +cb_miny & -cb_maxy & -oct3_maxx))\n", + "c2_ur = openmc.Cell(fill=moder, region=(+cb_maxx & +cb_maxy & -oct3_maxx & -oct3_maxy & +oct3_ur))\n", + "c2_u = openmc.Cell(fill=moder, region=(+cb_maxy & +cb_minx & -cb_maxx & -oct3_maxy))\n", + "c2_ul = openmc.Cell(fill=moder, region=(-cb_minx & +cb_maxy & +oct3_minx & -oct3_maxy & -oct3_ul))\n", + "c2_l = openmc.Cell(fill=moder, region=(-cb_minx & +cb_miny & -cb_maxy & +oct3_minx))\n", + "c2_bl = openmc.Cell(fill=moder, region=(-cb_minx & -cb_miny & +oct3_minx & +oct3_miny & -oct3_bl))\n", + "c2_b = openmc.Cell(fill=moder, region=(-cb_miny & +cb_minx & -cb_maxx & +oct3_miny))\n", + "c2_br = openmc.Cell(fill=moder, region=(+cb_maxx & -cb_miny & -oct3_maxx & +oct3_miny & +oct3_br))\n", + "\n", + "\n", + "c2 = [c2_r, c2_ur, c2_u, c2_ul, c2_l, c2_bl, c2_b, c2_br]\n", + "\n", + "#c3 = openmc.Cell(fill=moder, region=-s1 & +s2)\n", + "c3_ur = openmc.Cell(fill=moder, region=(-oct2_ur & +oct1_ur & -oct1_maxx & -oct1_maxy))\n", + "c3_ul = openmc.Cell(fill=moder, region=(+oct2_ul & -oct1_ul & +oct1_minx & -oct1_maxy))\n", + "c3_bl = openmc.Cell(fill=moder, region=(+oct2_bl & -oct1_bl & +oct1_minx & +oct1_miny))\n", + "c3_br = openmc.Cell(fill=moder, region=(-oct2_br & +oct1_br & -oct1_maxx & +oct1_miny))\n", + "c3 = [c3_ur, c3_ul, c3_bl, c3_br]\n", + "\n", + "u = openmc.Universe()\n", + "#u.add_cells(c1)\n", + "#u.add_cells(c2)\n", + "u.add_cells(c3)\n", + "\n", + "u.plot(width=(700,700),\n", + " basis='xy',\n", + " #colors={c1: 'red', c2:'blue', c3:'green'},\n", + " origin=(0.,0.,200),\n", + " #color_by='material',\n", + " pixels=(1000,1000))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ce941880", + "metadata": {}, + "outputs": [], + "source": [ + "s1 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=208.28, r2=222.71, name='base_octader')\n", + "s2 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=218.44, r2=215.53, name='smaller_octader')\n", + "s3 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=228.60, r2=193.97, name='smallest_octader')\n", + "oct1 = list((-s1).get_surfaces().values())\n", + "oct2 = list((-s2).get_surfaces().values())\n", + "oct3 = list((-s3).get_surfaces().values())\n", + "octas = (oct1, oct2, oct3)\n", + "oct1_maxy, oct1_miny, oct1_maxx, oct1_minx, oct1_ur, oct1_br, oct1_bl, oct1_ul = octas[0]\n", + "oct2_maxy, oct2_miny, oct2_maxx, oct2_minx, oct2_ur, oct2_br, oct2_bl, oct2_ul = octas[1]\n", + "oct3_maxy, oct3_miny, oct3_maxx, oct3_minx, oct3_ur, oct3_br, oct3_bl, oct3_ul = octas[2]\n", + "\n", + "zone_ii_boundary = openmc.ZCylinder(r=256.032, name='iib_boundary')\n", + "\n", + "cr_boundary = openmc.model.rectangular_prism(15.24*2, 15.24*2)\n", + "cb_minx, cb_maxx, cb_miny, cb_maxy = list(cr_boundary.get_surfaces().values())\n", + "\n", + "\n", + "rr = openmc.Cell(fill=moder, region=(+oct3_maxx & +cb_miny & -cb_maxy & -zone_ii_boundary))\n", + "uu = openmc.Cell(fill=moder, region=(+oct3_maxy & +cb_minx & -cb_maxx & -zone_ii_boundary))\n", + "ll = openmc.Cell(fill=moder, region=(-oct3_minx & +cb_miny & -cb_maxy & -zone_ii_boundary))\n", + "bb = openmc.Cell(fill=moder, region=(-oct3_miny & +cb_minx & -cb_maxx & -zone_ii_boundary))\n", + "\n", + "#c1 = openmc.Cell(fill=moder, region=((+s3 & +s2 & +s1) & -zone_ii_boundary))\n", + "ur = openmc.Cell(fill=moder, region=((-oct1_ur | +oct1_maxx | +oct1_maxy) &\n", + " (-oct2_ur | +oct2_maxx | +oct2_maxy) &\n", + " (-oct3_ur | +oct3_maxx | +oct3_maxy) & -zone_ii_boundary\n", + " & +cb_maxx & +cb_maxy))\n", + "ul = openmc.Cell(fill=moder, region=((+oct1_ul | -oct1_minx | +oct1_maxy) &\n", + " (+oct2_ul | -oct2_minx | +oct2_maxy) &\n", + " (+oct3_ul | -oct3_minx | +oct3_maxy) & -zone_ii_boundary\n", + " & -cb_minx & +cb_maxy))\n", + "bl = openmc.Cell(fill=moder, region=((+oct1_bl | -oct1_minx | -oct1_miny) &\n", + " (+oct2_bl | -oct2_minx | -oct2_miny) &\n", + " (+oct3_bl | -oct3_minx | -oct3_miny) & -zone_ii_boundary\n", + " & -cb_minx & -cb_miny))\n", + "br = openmc.Cell(fill=moder, region=((-oct1_br | +oct1_maxx | -oct1_miny) &\n", + " (-oct2_br | +oct2_maxx | -oct2_miny) &\n", + " (-oct3_br | +oct3_maxx | -oct3_miny) & -zone_ii_boundary\n", + " & +cb_maxx & -cb_miny))\n", + "#c3_ul = openmc.Cell(fill=moder, region=(+oct2_ul & -oct1_ul & +oct1_minx & -oct1_maxy))\n", + "#c3_bl = openmc.Cell(fill=moder, region=(+oct2_bl & -oct1_bl & +oct1_minx & +oct1_miny))\n", + "#c3_br = openmc.Cell(fill=moder, region=(-oct2_br & +oct1_br & -oct1_maxx & +oct1_miny))\n", + "#c1_ur = openmc.Cell(fill=moder, region=(-oct3_ur & +oct1_maxx & +oct1_maxy & -zone_ii_boundary))\n", + "#c1 = [c1_ur]\n", + "#c2 = openmc.Cell(fill=moder, region=+s1 & -zone_ii_boundary)\n", + "\n", + "\n", + "#c2 = [c2_r, c2_ur, c2_u, c2_ul, c2_l, c2_bl, c2_b, c2_br]\n", + "\n", + "#c3 = openmc.Cell(fill=moder, region=-s1 & +s2)\n", + "\n", + "u = openmc.Universe()\n", + "#u.add_cells(c1)\n", + "u.add_cells([ur, ul, bl, br, ll, rr, bb, uu])\n", + "#u.add_cells(c3)\n", + "\n", + "u.plot(width=(700,700),\n", + " basis='xy',\n", + " #colors={c1: 'red', c2:'blue', c3:'green'},\n", + " origin=(0.,0.,200),\n", + " #color_by='material',\n", + " pixels=(1000,1000))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "7f439005", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "7f985e3a", + "metadata": {}, + "outputs": [], + "source": [ + "def shared_root_geometry():\n", + " cr_boundary = openmc.model.rectangular_prism(15.24*2, 15.24*2)\n", + " \n", + " core_base = openmc.ZPlane(z0=0.0, name='core_base')\n", + " core_top = openmc.ZPlane(z0=449.58, name='core_top')\n", + " \n", + " s1 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=208.28, r2=222.71, name='base_octader')\n", + " s2 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=218.44, r2=215.53, name='smaller_octader')\n", + " s3 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=228.60, r2=193.97, name='smallest_octader')\n", + " \n", + " oct1 = list((-s1).get_surfaces().values())\n", + " oct2 = list((-s2).get_surfaces().values())\n", + " oct3 = list((-s3).get_surfaces().values())\n", + " zone_i_octas = (oct1, oct2, oct3)\n", + " \n", + " zone_i_boundary = (s1, s2, s3)\n", + "\n", + " zone_ii_boundary = openmc.ZCylinder(r=256.032, name='iib_boundary')\n", + " annulus_boundary = openmc.ZCylinder(r=261.112, name='annulus_boundary')\n", + " lower_plenum_boundary = openmc.ZPlane(z0=-7.62, name='lower_plenum_boundary')\n", + "\n", + " zone_bounds = (cr_boundary, zone_i_boundary, zone_i_octas, zone_ii_boundary)\n", + " \n", + " core_bounds = (annulus_boundary, lower_plenum_boundary, core_base, core_top)\n", + " \n", + " radial_reflector_boundary = openmc.ZCylinder(r=338.328, name='radial_reflector_boundary') \n", + " bottom_reflector_boundary = openmc.ZPlane(z0=-76.2, name='bottom_axial_reflector_boundary')\n", + " top_reflector_boundary = openmc.ZPlane(z0=525.78, name='top_axial_reflector_boundary') \n", + " \n", + " reflector_bounds = (radial_reflector_boundary,\n", + " bottom_reflector_boundary,\n", + " top_reflector_boundary)\n", + " \n", + " radial_vessel_boundary = openmc.ZCylinder(r=343.408, name='radial_vessel_wall', boundary_type='vacuum')\n", + " bottom_vessel_boundary = openmc.ZPlane(z0=-81.28, name='bottom_vessel_wall', boundary_type='vacuum')\n", + " top_vessel_boundary = openmc.ZPlane(z0=530.86, name='top_vessel_wall', boundary_type='vacuum')\n", + " \n", + " vessel_bounds = (radial_vessel_boundary,\n", + " bottom_vessel_boundary,\n", + " top_vessel_boundary)\n", + " \n", + " return zone_bounds, core_bounds, reflector_bounds, vessel_bounds\n", + "\n", + "def cr_lattice(cr_boundary, core_base, core_top):\n", + " fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel = shared_cr_geometry() \n", + " f = control_rod(fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel)\n", + " fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel = shared_cr_geometry() \n", + " e = control_rod_channel(fuel_hole, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel)\n", + " \n", + " cr = openmc.RectLattice()\n", + " cr.pitch = np.array([15.24, 15.24])\n", + " N = 2 / 2\n", + " cr.lower_left = -1 * cr.pitch * N\n", + " cr.universes = [[f, e],\n", + " [e, f]]\n", + " \n", + " c1 = openmc.Cell(fill=cr, region=(+core_base & -core_top & cr_boundary), name='cr_lattice')\n", + " \n", + " return c1\n", + "\n", + "def main_lattice(zone_i_boundary, zone_i_octas, cr_boundary, core_base, core_top):\n", + " elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4 = shared_elem_geometry()\n", + " l = zoneIA(elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4)\n", + " elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4 = shared_elem_geometry()\n", + " z = zoneIIA(elem_bound, gr_sq, slabs, quarters, gr_corners, gr_t, inter_elem_channel, gr_round_4)\n", + " v = void_cell(elem_bound)\n", + " # tres, uno, dos, quatro\n", + " t, u, d, q = graphite_triangles(elem_bound) \n", + " \n", + " main = openmc.RectLattice()\n", + " main.pitch = np.array([10.16, 10.16])\n", + " N = 45 / 2\n", + " main.lower_left = -1 * main.pitch * N\n", + " main.universes = [[v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, d, z, z, z, z, z, z, z, z, z, u, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, v, v, v, v, v, d, z, z, z, z, l, l, l, l, l, l, l, l, l, z, z, z, z, u, v, v, v, v, v, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, v, v, v, d, z, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, z, u, v, v, v, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v],\n", + " [v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v],\n", + " [v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v],\n", + " [v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v],\n", + " [v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v],\n", + " [v, v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v, v],\n", + " [v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v],\n", + " [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v],\n", + " [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v],\n", + " [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v],\n", + " [d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u],\n", + " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", + " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", + " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", + " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, v, v, v, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", + " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, v, v, v, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", + " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, v, v, v, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", + " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", + " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", + " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", + " [t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q],\n", + " [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v],\n", + " [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v],\n", + " [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v],\n", + " [v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v],\n", + " [v, v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v, v],\n", + " [v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v],\n", + " [v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v],\n", + " [v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v],\n", + " [v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v],\n", + " [v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, v, v, v, t, z, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, z, q, v, v, v, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, v, v, v, v, v, t, z, z, z, z, l, l, l, l, l, l, l, l, l, z, z, z, z, q, v, v, v, v, v, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, t, z, z, z, z, z, z, z, z, z, q, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v]]\n", + " \n", + " oct1_maxy, oct1_miny, oct1_maxx, oct1_minx, oct1_ur, oct1_br, oct1_bl, oct1_ul = zone_i_octas[0]\n", + " oct2_maxy, oct2_miny, oct2_maxx, oct2_minx, oct2_ur, oct2_br, oct2_bl, oct2_ul = zone_i_octas[1]\n", + " oct3_maxy, oct3_miny, oct3_maxx, oct3_minx, oct3_ur, oct3_br, oct3_bl, oct3_ul = zone_i_octas[2]\n", + " cb_minx, cb_maxx, cb_miny, cb_maxy = list(cr_boundary.get_surfaces().values())\n", + " \n", + " #c1 = openmc.Cell(fill=moder, region=+s3 & -s2)\n", + " c1_ur = openmc.Cell(fill=main, region=(-oct3_ur & +oct2_ur & -oct2_maxx & -oct2_maxy),\n", + " name='smaller_octader_ur')\n", + " c1_ul = openmc.Cell(fill=main, region=(+oct3_ul & -oct2_ul & +oct2_minx & -oct2_maxy),\n", + " name='smaller_octader_ul')\n", + " c1_bl = openmc.Cell(fill=main, region=(+oct3_bl & -oct2_bl & +oct2_minx & +oct2_miny),\n", + " name='smaller_octader_bl')\n", + " c1_br = openmc.Cell(fill=main, region=(-oct3_br & +oct2_br & -oct2_maxx & +oct2_miny),\n", + " name='smaller_octader_br')\n", + " c1 = [c1_ur, c1_ul, c1_bl, c1_br]\n", + "\n", + " #c2 = openmc.Cell(fill=moder, region=-s3)\n", + " c2_r = openmc.Cell(fill=main, region=(+cb_maxx & +cb_miny & -cb_maxy & -oct3_maxx),\n", + " name='smallest_octader_r')\n", + " c2_ur = openmc.Cell(fill=main, region=(+cb_maxx & +cb_maxy & -oct3_maxx & -oct3_maxy & +oct3_ur),\n", + " name='smallest_octader_ur')\n", + " c2_u = openmc.Cell(fill=main, region=(+cb_maxy & +cb_minx & -cb_maxx & -oct3_maxy),\n", + " name='smallest_octader_u')\n", + " c2_ul = openmc.Cell(fill=main, region=(-cb_minx & +cb_maxy & +oct3_minx & -oct3_maxy & -oct3_ul),\n", + " name='smallest_octader_ul')\n", + " c2_l = openmc.Cell(fill=main, region=(-cb_minx & +cb_miny & -cb_maxy & +oct3_minx),\n", + " name='smallest_octader_l')\n", + " c2_bl = openmc.Cell(fill=main, region=(-cb_minx & -cb_miny & +oct3_minx & +oct3_miny & -oct3_bl),\n", + " name='smallest_octader_bl')\n", + " c2_b = openmc.Cell(fill=main, region=(-cb_miny & +cb_minx & -cb_maxx & +oct3_miny),\n", + " name='smallest_octader_b')\n", + " c2_br = openmc.Cell(fill=main, region=(+cb_maxx & -cb_miny & -oct3_maxx & +oct3_miny & +oct3_br),\n", + " name='smallest_octader_br')\n", + " c2 = [c2_r, c2_ur, c2_u, c2_ul, c2_l, c2_bl, c2_b, c2_br]\n", + "\n", + " #c3 = openmc.Cell(fill=moder, region=-s1 & +s2)\n", + " c3_ur = openmc.Cell(fill=main, region=(-oct2_ur & +oct1_ur & -oct1_maxx & -oct1_maxy),\n", + " name='base_octader_ur')\n", + " c3_ul = openmc.Cell(fill=main, region=(+oct2_ul & -oct1_ul & +oct1_minx & -oct1_maxy),\n", + " name='base_octader_ul')\n", + " c3_bl = openmc.Cell(fill=main, region=(+oct2_bl & -oct1_bl & +oct1_minx & +oct1_miny),\n", + " name='base_octader_bl')\n", + " c3_br = openmc.Cell(fill=main, region=(-oct2_br & +oct1_br & -oct1_maxx & +oct1_miny),\n", + " name='base_octader_br')\n", + " c3 = [c3_ur, c3_ul, c3_bl, c3_br]\n", + " for cells in (c1, c2, c3):\n", + " for cell in cells:\n", + " cell.region = cell.region & +core_base & -core_top \n", + "\n", + " #c1 = openmc.Cell(fill=main, region=(+core_base & -core_top & \n", + " # +zone_i_boundary[2] & -zone_i_boundary[1] & \n", + " # ~cr_boundary), name='main_lattice')\n", + " #c2 = openmc.Cell(fill=main, region=(+core_base & -core_top & \n", + " # -zone_i_boundary[2] & \n", + " # ~cr_boundary), name='main_lattice')\n", + " #c3 = openmc.Cell(fill=main, region=(+core_base & -core_top & \n", + " # -zone_i_boundary[0] & +zone_i_boundary[1] & +zone_i_boundary[2] &\n", + " # ~cr_boundary), name='main_lattice')\n", + " main = c1 + c2 + c3\n", + " #main = [c1] + [c2] + [c3]\n", + " return main\n", + "\n", + "def zoneIIB(zone_i_boundary, zone_i_octas, cr_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top):\n", + " # Large elements\n", + " large_angular_width = 3.538\n", + " large_half_w = large_angular_width / 2\n", + " large_positions = np.linspace(0, 315, 8)\n", + " r_outer = 256.032\n", + " r_big1 = 229.6\n", + " r_big2 = 223.6\n", + " rb_1 = (r_big1, r_outer)\n", + " rb_2 = (r_big2, r_outer)\n", + " big_radii = [rb_1, rb_2] * 4\n", + " small_radii = (207.28, r_outer)\n", + " \n", + " r_hole = 3.0875\n", + " hole_args = ({'x0': 242.679, 'y0': 0.0, 'r': r_hole},\n", + " {'x0': 171.60, 'y0': 171.60, 'r': r_hole},\n", + " {'x0': 0.0, 'y0': 242.679, 'r': r_hole},\n", + " {'x0': -171.60, 'y0': 171.60, 'r': r_hole},\n", + " {'x0': -242.679, 'y0': 0.0, 'r': r_hole},\n", + " {'x0': -171.60, 'y0': -171.60, 'r': r_hole},\n", + " {'x0': 0.0, 'y0': -242.697, 'r': r_hole},\n", + " {'x0': 171.60, 'y0': -171.60, 'r': r_hole})\n", + " \n", + " # Small elements\n", + " small_angular_width = 0.96\n", + " adjacent_angular_offset = 0.675 #27/40\n", + " small_elems_per_octant = 25\n", + " \n", + " elem_cells = []\n", + " for i, pos in enumerate(large_positions):\n", + " pos = np.round(pos, 3)\n", + " r1_big, r2_big = big_radii[i]\n", + " t1_big = pos - large_half_w\n", + " t2_big = pos + large_half_w\n", + " s1 = openmc.model.CylinderSector(r1_big, r2_big, t1_big, t2_big)\n", + " s2 = openmc.ZCylinder(**hole_args[i])\n", + " elem_cells.append(openmc.Cell(fill=moder, region=(-s1 & +s2), name=f'iib_large_element_{pos}'))\n", + " elem_cells.append(openmc.Cell(fill=fuel, region=(-s2),\n", + " name=f'iib_large_element_fuel_hole_{pos}'))\n", + " t1_small = t2_big + adjacent_angular_offset\n", + " r1_small, r2_small = small_radii\n", + " \n", + " # Inter element fuel channel\n", + " s3 = openmc.model.CylinderSector(r1_small, r2_small, t2_big, t1_small)\n", + " cpos = t2_big + (adjacent_angular_offset / 2)\n", + " cpos = np.round(cpos, 3)\n", + " elem_cells.append(openmc.Cell(fill=fuel, region=-s3,\n", + " name=f'inter_element_fuel_channel_{cpos}'))\n", + " \n", + " t4a = t1_big - adjacent_angular_offset\n", + " s4 = openmc.model.CylinderSector(r1_small, r1_big, t4a, t1_small)\n", + " elem_cells.append(openmc.Cell(fill=fuel, region=-s4,\n", + " name=f'inter_element_fuel_channel_{pos}'))\n", + " \n", + " for i in range(0, small_elems_per_octant):\n", + " t2_small = t1_small + small_angular_width\n", + " \n", + " # reflector element\n", + " s5 = openmc.model.CylinderSector(r1_small, r2_small, t1_small, t2_small)\n", + " pos = t2_small - (small_angular_width / 2)\n", + " pos = np.round(pos, 3)\n", + " elem_cells.append(openmc.Cell(fill=moder, region=-s5, name=f'iib_small_element_{pos}'))\n", + " t1_small = t2_small + adjacent_angular_offset\n", + " \n", + " # inter-element fuel channel\n", + " s6 = openmc.model.CylinderSector(r1_small, r2_small, t2_small, t1_small)\n", + " cpos = t2_small + (adjacent_angular_offset/2)\n", + " cpos = np.round(cpos, 3)\n", + " elem_cells.append(openmc.Cell(fill=fuel, region=-s6,\n", + " name=f'inter_element_fuel_channel_{cpos}'))\n", + " \n", + "\n", + " #universe_id=10\n", + " iib = openmc.Universe(name='zone_iib')\n", + " iib.add_cells(elem_cells)\n", + " \n", + " oct1_maxy, oct1_miny, oct1_maxx, oct1_minx, oct1_ur, oct1_br, oct1_bl, oct1_ul = zone_i_octas[0]\n", + " oct2_maxy, oct2_miny, oct2_maxx, oct2_minx, oct2_ur, oct2_br, oct2_bl, oct2_ul = zone_i_octas[1]\n", + " oct3_maxy, oct3_miny, oct3_maxx, oct3_minx, oct3_ur, oct3_br, oct3_bl, oct3_ul = zone_i_octas[2]\n", + " cb_minx, cb_maxx, cb_miny, cb_maxy = list(cr_boundary.get_surfaces().values())\n", + " \n", + " \n", + " c1_r = openmc.Cell(fill=iib, region=(+oct3_maxx & +cb_miny & -cb_maxy & -zone_ii_boundary),\n", + " name='zone_ii_b_r')\n", + " c1_ur = openmc.Cell(fill=iib, region=((-oct1_ur | +oct1_maxx | +oct1_maxy) &\n", + " (-oct2_ur | +oct2_maxx | +oct2_maxy) &\n", + " (-oct3_ur | +oct3_maxx | +oct3_maxy) & -zone_ii_boundary\n", + " & +cb_maxx & +cb_maxy),\n", + " name='zone_ii_b_ur')\n", + " c1_u = openmc.Cell(fill=iib, region=(+oct3_maxy & +cb_minx & -cb_maxx & -zone_ii_boundary),\n", + " name='zone_ii_b_u')\n", + " c1_ul = openmc.Cell(fill=iib, region=((+oct1_ul | -oct1_minx | +oct1_maxy) &\n", + " (+oct2_ul | -oct2_minx | +oct2_maxy) &\n", + " (+oct3_ul | -oct3_minx | +oct3_maxy) & -zone_ii_boundary\n", + " & -cb_minx & +cb_maxy),\n", + " name='zone_ii_b_ul')\n", + " c1_l = openmc.Cell(fill=iib, region=(-oct3_minx & +cb_miny & -cb_maxy & -zone_ii_boundary),\n", + " name='zone_ii_b_l')\n", + " c1_bl = openmc.Cell(fill=iib, region=((+oct1_bl | -oct1_minx | -oct1_miny) &\n", + " (+oct2_bl | -oct2_minx | -oct2_miny) &\n", + " (+oct3_bl | -oct3_minx | -oct3_miny) & -zone_ii_boundary\n", + " & -cb_minx & -cb_miny),\n", + " name='zone_ii_b_bl')\n", + " c1_b = openmc.Cell(fill=iib, region=(-oct3_miny & +cb_minx & -cb_maxx & -zone_ii_boundary),\n", + " name='zone_ii_b_b')\n", + " c1_br = openmc.Cell(fill=iib, region=((-oct1_br | +oct1_maxx | -oct1_miny) &\n", + " (-oct2_br | +oct2_maxx | -oct2_miny) &\n", + " (-oct3_br | +oct3_maxx | -oct3_miny) & -zone_ii_boundary\n", + " & +cb_maxx & -cb_miny),\n", + " name='zone_ii_b_br')\n", + " c1 = openmc.Cell(fill=iib, region=(+zone_i_boundary[0] & +zone_i_boundary[1] & +zone_i_boundary[2] & \n", + " -zone_ii_boundary & \n", + " +core_base & \n", + " -core_top), name='zone_iib')\n", + " #c1 = [c1_r, c1_ur, c1_u, c1_ul, c1_l, c1_bl, c1_b, c1_br]\n", + " #for c in c1:\n", + " # c.region = c.region & +core_base & -core_top\n", + "\n", + " \n", + " return [c1]\n", + "\n", + "def annulus(zone_ii_boundary, annulus_boundary, core_base, core_top):\n", + " annulus_reg = +zone_ii_boundary & -annulus_boundary & +core_base & -core_top\n", + " c1 = openmc.Cell(fill=fuel, region=annulus_reg, name='annulus')\n", + " \n", + " return c1\n", + "\n", + "def lower_plenum(core_base, lower_plenum_boundary, annulus_boundary):\n", + " lower_plenum_reg = -core_base & +lower_plenum_boundary & -annulus_boundary \n", + " c1 = openmc.Cell(fill=fuel, region=lower_plenum_reg, name='lower_plenum')\n", + "\n", + " return c1\n", + "\n", + "def reflectors(annulus_boundary, \n", + " radial_reflector_boundary, \n", + " lower_plenum_boundary,\n", + " bottom_reflector_boundary, \n", + " core_top, \n", + " top_reflector_boundary):\n", + " \n", + " radial_reflector_reg = +annulus_boundary & -radial_reflector_boundary & +bottom_reflector_boundary & -top_reflector_boundary\n", + " bottom_reflector_reg = -annulus_boundary & -lower_plenum_boundary & +bottom_reflector_boundary\n", + " top_reflector_reg = -annulus_boundary & +core_top & -top_reflector_boundary\n", + "\n", + " c1 = openmc.Cell(fill=moder, region=radial_reflector_reg, name='radial_reflector')\n", + " c2 = openmc.Cell(fill=moder, region=bottom_reflector_reg, name='bottom_axial_reflector')\n", + " c3 = openmc.Cell(fill=moder, region=top_reflector_reg, name='top_axial_reflector')\n", + " \n", + " return c1, c2, c3\n", + "\n", + "def vessel(radial_reflector_boundary,\n", + " radial_vessel_boundary,\n", + " bottom_vessel_boundary,\n", + " top_vessel_boundary,\n", + " top_reflector_boundary,\n", + " bottom_reflector_boundary):\n", + " radial_vessel_reg = +radial_reflector_boundary & -radial_vessel_boundary & -top_vessel_boundary & +bottom_vessel_boundary\n", + " bottom_vessel_reg = -radial_reflector_boundary & -bottom_reflector_boundary & +bottom_vessel_boundary\n", + " top_vessel_reg = -radial_reflector_boundary & -top_vessel_boundary & +top_reflector_boundary\n", + "\n", + " \n", + " c1 = openmc.Cell(fill=hast, region=radial_vessel_reg, name='radial_vessel_wall')\n", + " c2 = openmc.Cell(fill=hast, region=bottom_vessel_reg, name='bottom_vessel_wall')\n", + " c3 = openmc.Cell(fill=hast, region=top_vessel_reg, name='top_vessel_wall')\n", + " \n", + " return c1, c2, c3" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "5d440e6d", + "metadata": {}, + "outputs": [], + "source": [ + "t = -zone_i_boundary[0]" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "2a3a1651", + "metadata": {}, + "outputs": [], + "source": [ + "zone_i_boundary[0].bottom" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "93fdcaf0", + "metadata": {}, + "outputs": [], + "source": [ + "maxy, miny, maxx, minx, ur, br, bl, ul = list(t.get_surfaces().values())" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "cdf61881", + "metadata": {}, + "outputs": [], + "source": [ + "zone_bounds, core_bounds, reflector_bounds, vessel_bounds = shared_root_geometry()\n", + "\n", + "cr_boundary, zone_i_boundary, zone_i_octas, zone_ii_boundary = zone_bounds\n", + "annulus_boundary, lower_plenum_boundary, core_base, core_top = core_bounds\n", + "radial_reflector_boundary, bottom_reflector_boundary, top_reflector_boundary = reflector_bounds\n", + "radial_vessel_boundary, bottom_vessel_boundary, top_vessel_boundary= vessel_bounds\n", + "\n", + "#main1, main2, main3 = main_lattice(zone_i_boundary, zone_i_octas, cr_boundary, core_base, core_top)\n", + "main = main_lattice(zone_i_boundary, zone_i_octas, cr_boundary, core_base, core_top)\n", + "cr = cr_lattice(cr_boundary, core_base, core_top)\n", + "iib = zoneIIB(zone_i_boundary, zone_i_octas, cr_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top)\n", + "a = annulus(zone_ii_boundary, annulus_boundary, core_base, core_top)\n", + "lp = lower_plenum(core_base, lower_plenum_boundary, annulus_boundary)\n", + "\n", + "rr, rb, rt = reflectors(annulus_boundary, \n", + " radial_reflector_boundary, \n", + " lower_plenum_boundary,\n", + " bottom_reflector_boundary, \n", + " core_top, \n", + " top_reflector_boundary)\n", + "\n", + "vr, vb, vt = vessel(radial_reflector_boundary,\n", + " radial_vessel_boundary,\n", + " bottom_vessel_boundary,\n", + " top_vessel_boundary,\n", + " top_reflector_boundary,\n", + " bottom_reflector_boundary)\n", + "\n", + "testuniverse = openmc.Universe()\n", + "testuniverse.add_cells([cr, lp, a, rr, rb, rt, vr, vb, vt])\n", + "testuniverse.add_cells(main)\n", + "testuniverse.add_cells(iib)\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "3b888598", + "metadata": {}, + "outputs": [], + "source": [ + "iib.fill.plot(width=(700,700),\n", + " basis='xy',\n", + " colors=colormap,\n", + " origin=(0.,0.,200),\n", + " color_by='material',\n", + " pixels=(1000,1000))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "2a283441", + "metadata": { + "scrolled": false + }, + "outputs": [], + "source": [ + "testuniverse.plot(width=(700,700),\n", + " basis='xy',\n", + " colors=colormap,\n", + " origin=(0.,0.,200),\n", + " color_by='material',\n", + " pixels=(1000,1000))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "1fab3df4", + "metadata": {}, + "outputs": [], + "source": [ + "#testuniverse.plot(width=(700,650),\n", + "# basis='xz',\n", + "# colors=colormap,\n", + "# origin=(0.,0.,220),\n", + "# color_by='material',\n", + "# pixels=(1000,1000))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "6b0f4320", + "metadata": {}, + "outputs": [], + "source": [ + "geo = openmc.Geometry()\n", + "geo.root_universe = testuniverse\n", + "geo.remove_redundant_surfaces()\n", + "#geo.export_to_xml()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "48d744d2", + "metadata": {}, + "outputs": [], + "source": [ + "geo.export_to_xml()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "524f65b6", + "metadata": {}, + "outputs": [], + "source": [ + "geo.get_all_cells()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ec266af0", + "metadata": {}, + "outputs": [], + "source": [ + "plots = openmc.Plots()\n", + "\n", + "plot = openmc.Plot(name='detail-zoneIA-IIA-lower1')\n", + "plot.origin=(215, 0, 10.0)\n", + "plot.width=(40, 40)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='detail-zoneIA-main')\n", + "plot.origin=(215, 0, 23.0)\n", + "plot.width=(40, 40)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='detail-zoneIIA-upper1')\n", + "plot.origin=(215, 0, 435)\n", + "plot.width=(40, 40)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='detail-zoneIA-upper1')\n", + "plot.origin=(215, 0, 420)\n", + "plot.width=(40, 40)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='detail-zoneIIA-upper2')\n", + "plot.origin=(215, 0, 437)\n", + "plot.width=(40, 40)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='detail-zoneIA-upper2')\n", + "plot.origin=(215, 0, 439)\n", + "plot.width=(40, 40)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='detail-zoneIIA-upper3')\n", + "plot.origin=(215, 0, 440)\n", + "plot.width=(40, 40)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='detail-zoneIA-upper3')\n", + "plot.origin=(215, 0, 448)\n", + "plot.width=(40, 40)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='detail-zoneIIA-upper4')\n", + "plot.origin=(215, 0, 442)\n", + "plot.width=(40, 40)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='full-zoneIA-IIA-lower1')\n", + "plot.origin=(0.0, 0, 10.0)\n", + "plot.width=(600, 600)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='full-zoneIA-main')\n", + "plot.origin=(0, 0, 23.0)\n", + "plot.width=(600, 600)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='full-zoneIIA-upper1')\n", + "plot.origin=(0, 0, 435)\n", + "plot.width=(600, 600)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='full-zoneIA-upper1')\n", + "plot.origin=(0, 0, 420)\n", + "plot.width=(600, 600)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='full-zoneIIA-upper2')\n", + "plot.origin=(0, 0, 437)\n", + "plot.width=(600, 600)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='full-zoneIA-upper2')\n", + "plot.origin=(0, 0, 439)\n", + "plot.width=(600, 600)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='full-zoneIIA-upper3')\n", + "plot.origin=(0, 0, 440)\n", + "plot.width=(600, 600)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='full-zoneIA-upper3')\n", + "plot.origin=(0, 0, 448)\n", + "plot.width=(600, 600)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='full-zoneIIA-upper4')\n", + "plot.origin=(0, 0, 442)\n", + "plot.width=(600, 600)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='core-xz-detail-upper')\n", + "plot.origin=(215, 0, 440)\n", + "plot.width=(100, 100)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xz'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='full-core-xz')\n", + "plot.origin=(0, 0, 200)\n", + "plot.width=(700, 700)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xz'\n", + "plots.append(plot)\n", + "\n", + "plots.export_to_xml()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "76ec95ac", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python [conda env:openmc-env] *", + "language": "python", + "name": "conda-env-openmc-env-py" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.6" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/examples/msbr/openmc_model.py b/examples/msbr/openmc_model.py index f0603b9fd..d0f7aaa98 100644 --- a/examples/msbr/openmc_model.py +++ b/examples/msbr/openmc_model.py @@ -121,7 +121,7 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): main = main_lattice(zone_i_boundary, cr_boundary, core_base, core_top) cr = cr_lattice(cr_boundary, core_base, core_top) -iib_m, iib_f = zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top, moder, fuel) +iib = zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top, moder, fuel) a = annulus(zone_ii_boundary, annulus_boundary, core_base, core_top, fuel) lp = lower_plenum(core_base, lower_plenum_boundary, annulus_boundary, fuel) @@ -143,7 +143,7 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): geo = openmc.Geometry() univ = openmc.Universe() -univ.add_cells([cr, main, iib_m, iib_f, lp, a, rr, rb, rt, vr, vb, vt]) +univ.add_cells([cr, main, iib, lp, a, rr, rb, rt, vr, vb, vt]) geo.root_universe = univ geo.remove_redundant_surfaces() @@ -151,9 +151,9 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): # Settings settings = openmc.Settings() -settings.particles = 300 -settings.batches = 400 -settings.inactive = 10 +settings.particles = 10000 +settings.batches = 150 +settings.inactive = 25 settings.temperature = {'default': 900, 'method': 'interpolation'} settings.export_to_xml() diff --git a/examples/msbr/openmc_model_optimized.py b/examples/msbr/openmc_model_optimized.py new file mode 100644 index 000000000..fb73f4454 --- /dev/null +++ b/examples/msbr/openmc_model_optimized.py @@ -0,0 +1,471 @@ +import openmc +import numpy as np +from openmc.deplete import CoupledOperator, PredictorIntegrator, CELIIntegrator + +from _core_elements_optimized import * +from _control_rods_optimized import * +from _root_geometry_optimized import * + +# Materials + +T = 900 +fuel = openmc.Material(name='fuel', temperature=T) +fuel.set_density('g/cm3', density=3.35) +fuel.add_components({'Li7': 0.0787474673879085, + 'Be9': 0.0225566879138321, + 'F19': 0.454003012179284, + 'Th232': 0.435579130482336, + 'U233': 0.00911370203663893}, + percent_type='wo') +fuel.depletable = True +fuel.volume = 48710000.0 + +moder = openmc.Material(name='graphite', temperature=T) +moder.set_density('g/cm3', density=1.84) +moder.add_nuclide('C0', 1.000, percent_type='wo') +moder.add_s_alpha_beta('c_Graphite') + +hast = openmc.Material(name='hastelloyN', temperature=T) +hast.set_density('g/cm3', density=8.671) +hast.add_components({'Al27': 0.003, + 'Ni': 0.677, + 'W': 0.250, + 'Cr': 0.070}, + percent_type='wo') + +mat = openmc.Materials(materials=[fuel, moder, hast]) +mat.export_to_xml() + +# Geometry +def cr_lattice(cr_boundary, core_base, core_top): + fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel = shared_cr_geometry() + f = control_rod(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, fuel, moder) + fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel = shared_cr_geometry() + e = control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, fuel, moder) + + cr = openmc.RectLattice() + cr.pitch = np.array([15.24, 15.24]) + N = 2 / 2 + cr.lower_left = -1 * cr.pitch * N + cr.universes = [[e, f], + [f, e]] + c1 = openmc.Cell(fill=cr, region=(+core_base & -core_top & cr_boundary), name='cr_lattice') + + return c1 + +def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): + elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4 = shared_elem_geometry() + l = zoneIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4, moder, fuel, hast) + elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4 = shared_elem_geometry() + z = zoneIIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4, moder, fuel) + v = void_cell(elem_bound) + # tres, uno, dos, quatro + t, u, d, q = graphite_triangles(elem_bound, moder, fuel) + + main = openmc.RectLattice() + main.pitch = np.array([10.16, 10.16]) + N = 45 / 2 + main.lower_left = -1 * main.pitch * N + main.universes = [[v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, d, z, z, z, z, z, z, z, z, z, u, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, v, v, v, v, v, d, z, z, z, z, l, l, l, l, l, l, l, l, l, z, z, z, z, u, v, v, v, v, v, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, v, v, v, d, z, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, z, u, v, v, v, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v], + [v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v], + [v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v], + [v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v], + [v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v], + [v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v], + [v, v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v, v], + [v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v], + [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v], + [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v], + [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v], + [d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u], + [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], + [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], + [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], + [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, v, v, v, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], + [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, v, v, v, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], + [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, v, v, v, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], + [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], + [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], + [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], + [t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q], + [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v], + [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v], + [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v], + [v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v], + [v, v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v, v], + [v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v], + [v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v], + [v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v], + [v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v], + [v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v], + [v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, v, v, v, t, z, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, z, q, v, v, v, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, v, v, v, v, v, t, z, z, z, z, l, l, l, l, l, l, l, l, l, z, z, z, z, q, v, v, v, v, v, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, t, z, z, z, z, z, z, z, z, z, q, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v]] + c1 = openmc.Cell(fill=main, region=(+core_base & -core_top & zone_i_boundary & ~cr_boundary), name='main_lattice') + return c1 + +zone_bounds, core_bounds, reflector_bounds, vessel_bounds = shared_root_geometry() + +cr_boundary, zone_i_boundary, zone_ii_boundary = zone_bounds +annulus_boundary, lower_plenum_boundary, core_base, core_top = core_bounds +radial_reflector_boundary, bottom_reflector_boundary, top_reflector_boundary = reflector_bounds +radial_vessel_boundary, bottom_vessel_boundary, top_vessel_boundary= vessel_bounds + +main = main_lattice(zone_i_boundary, cr_boundary, core_base, core_top) +cr = cr_lattice(cr_boundary, core_base, core_top) +iib = zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top, moder, fuel) +a = annulus(zone_ii_boundary, annulus_boundary, core_base, core_top, fuel) +lp = lower_plenum(core_base, lower_plenum_boundary, annulus_boundary, fuel) + +rr, rb, rt = reflectors(annulus_boundary, + radial_reflector_boundary, + lower_plenum_boundary, + bottom_reflector_boundary, + core_top, + top_reflector_boundary, + moder) + +vr, vb, vt = vessel(radial_reflector_boundary, + radial_vessel_boundary, + bottom_vessel_boundary, + top_vessel_boundary, + top_reflector_boundary, + bottom_reflector_boundary, + hast) + +geo = openmc.Geometry() +univ = openmc.Universe() +univ.add_cells([cr, main, iib, lp, a, rr, rb, rt, vr, vb, vt]) + +geo.root_universe = univ +geo.remove_redundant_surfaces() +geo.export_to_xml() + +# Settings +settings = openmc.Settings() +settings.particles = 10000 +settings.batches = 150 +settings.inactive = 25 +settings.generations_per_batch = 1 +settings.temperature = {'default': 900, 'method': 'interpolation', 'range': (800, 1000)} +#settings.temperature = {'default': 600, 'method': 'nearest'} +settings.export_to_xml() + +# Plots +plots_3d = False +detail_pixels = (1000, 1000) +full_pixels = (10000, 10000) + +colormap = {moder: 'purple', + hast: 'blue', + fuel: 'yellow'} +## Slice plots +plots = openmc.Plots() + +plot = openmc.Plot(name='serpent-plot-1_full-zoneIA-main') +plot.origin=(0, 0, 150.5) +plot.width=(600, 600) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='serpent-plot-2') +plot.origin=(0, -77.5, 200) +plot.width=(155, 700) +plot.pixels=(1550, 3400) +plot.color_by='material' +plot.colors=colormap +plot.basis='yz' +plots.append(plot) + +plot = openmc.Plot(name='serpent-plot-3') +plot.origin=(0, 0, 155) +plot.width=(40, 40) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='yz' +plots.append(plot) + +plot = openmc.Plot(name='serpent-plot-4') +plot.origin=(16.5, 0, 200) +plot.width=(700, 700) +plot.pixels=(2000, 2000) +plot.color_by='material' +plot.colors=colormap +plot.basis='yz' +plots.append(plot) + +plot = openmc.Plot(name='detail-zoneIA-IIA-lower1') +plot.origin=(215, 0, 10.0) +plot.width=(40, 40) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='detail-zoneIA-main') +plot.origin=(215, 0, 23.0) +plot.width=(40, 40) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='detail-zoneIIA-upper1') +plot.origin=(215, 0, 435) +plot.width=(40, 40) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='detail-zoneIA-upper1') +plot.origin=(215, 0, 420) +plot.width=(40, 40) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='detail-zoneIIA-upper2') +plot.origin=(215, 0, 437) +plot.width=(40, 40) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='detail-zoneIA-upper2') +plot.origin=(215, 0, 439) +plot.width=(40, 40) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='detail-zoneIIA-upper3') +plot.origin=(215, 0, 440) +plot.width=(40, 40) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='detail-zoneIA-upper3') +plot.origin=(215, 0, 448) +plot.width=(40, 40) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='detail-zoneIIA-upper4') +plot.origin=(215, 0, 442) +plot.width=(40, 40) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='full-zoneIA-IIA-lower1') +plot.origin=(0.0, 0, 10.0) +plot.width=(600, 600) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='full-zoneIIA-upper1') +plot.origin=(0, 0, 435) +plot.width=(600, 600) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='full-zoneIA-upper1') +plot.origin=(0, 0, 420) +plot.width=(600, 600) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='full-zoneIIA-upper2') +plot.origin=(0, 0, 437) +plot.width=(600, 600) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='full-zoneIA-upper2') +plot.origin=(0, 0, 439) +plot.width=(600, 600) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='full-zoneIIA-upper3') +plot.origin=(0, 0, 440) +plot.width=(600, 600) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='full-zoneIA-upper3') +plot.origin=(0, 0, 448) +plot.width=(600, 600) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='full-zoneIIA-upper4') +plot.origin=(0, 0, 442) +plot.width=(600, 600) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='core-xz-detail-upper') +plot.origin=(215, 0, 440) +plot.width=(100, 100) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xz' +plots.append(plot) + +plot = openmc.Plot(name='full-core-xz') +plot.origin=(0, 0, 200) +plot.width=(700, 700) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xz' +plots.append(plot) + +plots.export_to_xml() + +DEPLETE = False +if DEPLETE: + fiss_q = { + "Am243": 212952778.98135212, + "Cm246": 220179493.9541502, + "U239": 196182721.4907133, + "Np239": 198519429.0542043, + "Th233": 185840570.73897627, + "Cf251": 223166396.6983342, + "Am242": 215146730.16368726, + "Cm245": 214624022.18345505, + "Cf254": 230600814.3619568, + "Am241": 211216798.63643932, + "Th232": 197108389.42449385, + "Cm240": 219583368.40646642, + "Th231": 186918512.14598972, + "Bk246": 224446497.874413, + "Cm247": 218956599.9139631, + "U238": 206851381.70909396, + "Bk250": 225432928.78068554, + "U230": 198841127.68309468, + "Cf249": 221434495.10716867, + "U234": 200632850.9958874, + "Cm250": 219425761.1783332, + "Th229": 192235847.44789958, + "Cm241": 219075406.6897822, + "Pu237": 210593272.23024797, + "Am240": 215272544.02927735, + "Cm249": 218622037.52325428, + "Ac226": 183632605.3770991, + "Cf250": 229685291.02082983, + "Th228": 189488754.50737157, + "Cf248": 229015120.40511796, + "Ac227": 183458264.80025893, + "Pu241": 211237715.32232296, + "Pu240": 208612566.66049656, + "Cf252": 230239896.94703457, + "U231": 197643438.24939737, + "Cm242": 212786491.32857716, + "Bk245": 225023484.65451327, + "Np235": 199435370.72904894, + "Pu243": 207499380.63776916, + "Pu239": 208018532.78140113, + "Am242_m1": 215145370.5791048, + "Pu236": 208679081.72160652, + "Bk249": 224740691.06136644, + "Np236": 198952718.20228392, + "Np234": 200175925.99275926, + "U237": 196429642.96756968, + "Cf253": 231148831.53210822, + "U236": 203404311.87546986, + "Es254": 232527659.46555784, + "Ac225": 183891658.531768, + "Cm243": 213375296.0362017, + "Bk248": 224456537.88363716, + "Cm244": 217926766.88448203, + "Pu242": 212072186.50565082, + "U241": 198266755.4887299, + "Np237": 205370480.34853214, + "Th234": 186385345.82281572, + "Pa231": 194099942.4938497, + "Pa230": 194744699.33621296, + "Pa233": 194162901.71835947, + "U240": 207137940.30569986, + "U233": 199796183.56054175, + "Pu246": 208860847.72193536, + "Pa232": 193654730.8348164, + "U232": 193044277.35730234, + "Am244_m1": 213894761.9301219, + "Pu244": 208427244.82356748, + "Np238": 208699370.90691367, + "Bk247": 224883761.19281054, + "Am244": 213894761.9301219, + "Pa229": 194955644.11334947, + "Cm248": 221723145.3723629, + "Fm255": 238051756.2074275, + "Cf246": 229074942.12674516, + "Th230": 188666101.25156796, + "Pu238": 209540012.5125772, + "U235": 202270000.0, + "Th227": 190640950.14927194 + } + model = openmc.Model.from_xml() + op = CoupledOperator(model, chain_file='chain_endfb71_pwr.xml', fission_q=fiss_q) + timesteps = [3] * 12 + integrator = PredictorIntegrator(op, timesteps, timestep_units='d', power=2.25e9) + integrator.integrate() + From d40074b0cb1cf5dcfd544dda9901468456653b0b Mon Sep 17 00:00:00 2001 From: yardasol Date: Thu, 20 Oct 2022 13:58:27 -0500 Subject: [PATCH 17/62] add optimized model alongside serpent-idential model --- examples/msbr/_control_rods.py | 85 +- examples/msbr/_control_rods_optimized.py | 106 ++ examples/msbr/_core_elements.py | 150 +- examples/msbr/_core_elements_optimized.py | 266 ++++ examples/msbr/_root_geometry.py | 141 +- examples/msbr/_root_geometry_optimized.py | 158 +++ examples/msbr/model-plotting-optimized.ipynb | 1327 ++++++++++++++++++ examples/msbr/model-plotting.ipynb | 461 +++--- examples/msbr/openmc_model.py | 416 +++++- examples/msbr/openmc_model_optimized.py | 471 +++++++ 10 files changed, 3144 insertions(+), 437 deletions(-) create mode 100644 examples/msbr/_control_rods_optimized.py create mode 100644 examples/msbr/_core_elements_optimized.py create mode 100644 examples/msbr/_root_geometry_optimized.py create mode 100644 examples/msbr/model-plotting-optimized.ipynb create mode 100644 examples/msbr/openmc_model_optimized.py diff --git a/examples/msbr/_control_rods.py b/examples/msbr/_control_rods.py index 0f9a9fafd..34d339c7c 100644 --- a/examples/msbr/_control_rods.py +++ b/examples/msbr/_control_rods.py @@ -1,55 +1,52 @@ import openmc import numpy as np -def shared_cr_geometry(): - fuel_hole = openmc.ZCylinder(r=5.08, name='cr_fuel_hole') - elem_bound = openmc.rectangular_prism(7.62*2, 7.62*2) # Pin outer boundary - - gr_sq_neg = openmc.rectangular_prism(7.23646*2, 7.23646*2, corner_radius=0.99) # Graphite square - # params for - r_d = 1.16 - e_d = 2 * r_d / np.sqrt(3) - r_dt = 0.8 - r_c = 0.18 - l1 = 5.8801 - l2 = 6.505 - l3 = 8.03646 - ul = openmc.model.hexagonal_prism(origin=(-l1, l2), edge_length=e_d, orientation='x', corner_radius=r_c) - br = openmc.model.hexagonal_prism(origin=(l1, -l2), edge_length=e_d, orientation='x',corner_radius=r_c) - lb = openmc.model.hexagonal_prism(origin=(-l2, -l1), edge_length=e_d, orientation='y',corner_radius=r_c) - ru = openmc.model.hexagonal_prism(origin=(l2, l1), edge_length=e_d, orientation='y',corner_radius=r_c) - ul_t = openmc.ZCylinder(-l1, -l3, r_dt, name='corner_ul_tip') - br_t = openmc.ZCylinder(l1, l3, r_dt, name='corner_br_tip') - ru_t = openmc.ZCylinder(-l3, l1, r_dt, name='corner_ru_tip') - lb_t = openmc.ZCylinder(l3, -l1, r_dt, name='corner_lb_tip') - - gr_corners = elem_bound & (ul | br | lb | ru | - -ul_t | -br_t | -ru_t | -lb_t) - - inter_elem_channel = (~gr_sq_neg & elem_bound & - ~ul & ~br & ~lb & ~ru & - +ul_t & +ru_t & +ru_t & +lb_t) - - - return fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel - -def control_rod(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel, fuel, moder): +def control_rod(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole, fuel, moder, optimized): s1 = openmc.ZCylinder(r=4.7625, name='control_rod') c1 = openmc.Cell(fill=moder, region=-s1, name='control_rod') c2 = openmc.Cell(fill=fuel, region=(+s1 & -fuel_hole), name='cr_fuel_inner') - moderator_block = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg | gr_corners), name='cr_moderator') - fuel_outer = openmc.Cell(fill=fuel, region=inter_elem_channel, name='cr_fuel_outer') - #universe_id=3 - cr = openmc.Universe(name='control_rod') - cr.add_cells([c1, c2, moderator_block, fuel_outer]) + if optimized: + c3 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg), name='cr_moderator_core') + + #universe_id=3 + cr = openmc.Universe(name='control_rod', cells=[c1, c2, c3]) + + for (reg, name) in inter_elem_channel: + cr.add_cell(openmc.Cell(fill=fuel, region=reg, name=f'cr_fuel_outer_{name}')) + else: + c3 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg & inter_elem_channel), + name='cr_moderator') + c4 = openmc.Cell(fill=fuel, region= (~gr_sq_neg & inter_elem_channel), + name='cr_fuel_outer') + #universe_id=3 + cr = openmc.Universe(name='control_rod', cells=[c1, c2, c3, c4]) + + for (reg, name) in gr_corners: + cr.add_cell(openmc.Cell(fill=moder, region=reg, name=f'cr_moderator_{name}')) + return cr -def control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel, fuel, moder): +def control_rod_channel(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole, fuel, moder, optimized): c1 = openmc.Cell(fill=fuel, region=(-fuel_hole), name='crc_fuel_inner') - moderator_block = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg | gr_corners), name='crc_moderator') - fuel_outer = openmc.Cell(fill=fuel, region=inter_elem_channel, name='crc_fuel_outer') - # universe_id=4 - crc = openmc.Universe(name='control_rod_channel') - crc.add_cells([c1, moderator_block, fuel_outer]) + + if optimized: + c2 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg), name='crc_moderator_core') + + # universe_id=4 + crc = openmc.Universe(name='control_rod_channel', cells=[c1, c2]) + + for (reg, name) in inter_elem_channel: + crc.add_cell(openmc.Cell(fill=fuel, region=reg, name=f'crc_fuel_outer_{name}')) + else: + c2 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg & inter_elem_channel), name='crc_moderator') + c3 = openmc.Cell(fill=fuel, region=(~gr_sq_neg & inter_elem_channel), name='crc_fuel_outer') + + # universe_id=4 + crc = openmc.Universe(name='control_rod_channel', cells=[c1, c2, c3]) + + for (reg, name) in gr_corners: + crc.add_cell(openmc.Cell(fill=moder, region=reg, name=f'crc_moderator_{name}')) + + return crc diff --git a/examples/msbr/_control_rods_optimized.py b/examples/msbr/_control_rods_optimized.py new file mode 100644 index 000000000..8bb9ade7e --- /dev/null +++ b/examples/msbr/_control_rods_optimized.py @@ -0,0 +1,106 @@ +import openmc +import numpy as np + +def shared_cr_geometry(): + fuel_hole = openmc.ZCylinder(r=5.08, name='cr_fuel_hole') + elem_bound = openmc.rectangular_prism(7.62*2, 7.62*2) # Pin outer boundary + eb_minx, eb_maxx, eb_miny, eb_maxy = list(elem_bound.get_surfaces().values()) + + gr_sq_neg = openmc.rectangular_prism(7.23646*2, 7.23646*2, corner_radius=0.99) # Graphite square + # params for + (gr_minx, gr_maxx, gr_miny, gr_maxy, + gr_cyl_lb, gr_cyl_minx, gr_cyl_miny, + gr_cyl_ul, gr_cyl_maxy, gr_cyl_br, + gr_cyl_maxx, gr_cyl_ru) = list(gr_sq_neg.get_surfaces().values()) + + r_d = 1.16 + e_d = 2 * r_d / np.sqrt(3) + r_dt = 0.8 + r_c = 0.18 + l1 = 5.8801 + l2 = 6.505 + l3 = 8.03646 + ul = openmc.model.hexagonal_prism(origin=(-l1, l2), edge_length=e_d, orientation='x', corner_radius=r_c) + br = openmc.model.hexagonal_prism(origin=(l1, -l2), edge_length=e_d, orientation='x',corner_radius=r_c) + lb = openmc.model.hexagonal_prism(origin=(-l2, -l1), edge_length=e_d, orientation='y',corner_radius=r_c) + ru = openmc.model.hexagonal_prism(origin=(l2, l1), edge_length=e_d, orientation='y',corner_radius=r_c) + ul_t = openmc.ZCylinder(-l1, -l3, r_dt, name='corner_ul_tip') + br_t = openmc.ZCylinder(l1, l3, r_dt, name='corner_br_tip') + ru_t = openmc.ZCylinder(-l3, l1, r_dt, name='corner_ru_tip') + lb_t = openmc.ZCylinder(l3, -l1, r_dt, name='corner_lb_tip') + + gr_ul = ul & -eb_maxy & +gr_maxy + gr_ul_fill = ul & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy + gr_br = br & +eb_miny & -gr_miny + gr_br_fill = br & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny + gr_lb = lb & +eb_minx & -gr_minx + gr_lb_fill = lb & +gr_cyl_lb & +gr_minx & -gr_cyl_minx & -gr_cyl_miny + gr_ru = ru & -eb_maxx & +gr_maxx + gr_ru_fill = ru & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxx & +gr_cyl_maxy + + gr_ul_t = -ul_t & +eb_miny & -gr_miny + gr_br_t = -br_t & -eb_maxy & +gr_maxy + gr_ru_t = -ru_t & +eb_minx & -gr_minx + gr_lb_t = -lb_t & -eb_maxx & +gr_maxx + + gr_corners = (gr_ul, gr_br, gr_lb, gr_ru, gr_ul_fill, gr_br_fill, gr_lb_fill, gr_ru_fill) + gr_t = (gr_ul_t, gr_br_t, gr_ru_t, gr_lb_t) + + inter_elem_channel = (~gr_sq_neg & elem_bound & + ~ul & ~br & ~lb & ~ru & + +ul_t & +br_t & +ru_t & +lb_t) + + + return fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel + +def control_rod(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, fuel, moder): + s1 = openmc.ZCylinder(r=4.7625, name='control_rod') + + c1 = openmc.Cell(fill=moder, region=-s1, name='control_rod') + c2 = openmc.Cell(fill=fuel, region=(+s1 & -fuel_hole), name='cr_fuel_inner') + c3 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg), name='cr_moderator') + c4 = openmc.Cell(fill=fuel, region=inter_elem_channel, name='cr_fuel_outer') + + c3_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='cr_moderator_ul') + c3_br = openmc.Cell(fill=moder, region=gr_corners[1], name='cr_moderator_br') + c3_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='cr_moderator_ru') + c3_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='cr_moderator_lb') + c3_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='cr_moderator_ul_fill') + c3_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='cr_moderator_br_fill') + c3_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='cr_moderator_ru_fill') + c3_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='cr_moderator_lb_fill') + c3_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='cr_moderator_ul_t') + c3_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='cr_moderator_br_t') + c3_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='cr_moderator_ru_t') + c3_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='cr_moderator_lb_t') + + + #universe_id=3 + cr = openmc.Universe(name='control_rod') + cr.add_cells([c1, c2, c3, c4, c3_ul, c3_br, c3_ru, c3_lb, c3_ulf, c3_brf, c3_ruf, c3_lbf, c3_ul_t, c3_br_t, c3_ru_t, c3_lb_t]) + + return cr + +def control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, fuel, moder): + c1 = openmc.Cell(fill=fuel, region=(-fuel_hole), name='crc_fuel_inner') + c2 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg), name='crc_moderator') + c3 = openmc.Cell(fill=fuel, region=inter_elem_channel, name='crc_fuel_outer') + + c2_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='crc_moderator_ul') + c2_br = openmc.Cell(fill=moder, region=gr_corners[1], name='crc_moderator_br') + c2_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='crc_moderator_ru') + c2_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='crc_moderator_lb') + c2_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='crc_moderator_ul_fill') + c2_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='crc_moderator_br_fill') + c2_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='crc_moderator_ru_fill') + c2_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='crc_moderator_lb_fill') + c2_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='crc_moderator_ul_t') + c2_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='crc_moderator_br_t') + c2_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='crc_moderator_ru_t') + c2_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='crc_moderator_lb_t') + + # universe_id=4 + crc = openmc.Universe(name='control_rod_channel') + crc.add_cells([c1, c2, c3, c2_ul, c2_br, c2_ru, c2_lb, c2_ulf, c2_brf, c2_ruf, c2_lbf, c2_ul_t, c2_br_t, c2_ru_t, c2_lb_t]) + + return crc diff --git a/examples/msbr/_core_elements.py b/examples/msbr/_core_elements.py index e2b276814..6b353b48f 100644 --- a/examples/msbr/_core_elements.py +++ b/examples/msbr/_core_elements.py @@ -5,49 +5,30 @@ def _bound_zone_cells(cells_tuples, levels): """Helper function that moves Zone IA and Zone IIA cells to the appropriate height.""" cell_list = [] + n_levels = len(cells_tuples) for i, cells in enumerate(cells_tuples): - lower_bound = levels[i] - upper_bound = levels[i+1] + if i == 0: + lower_bound = None + upper_bound = levels[i] + elif i == n_levels - 1: + lower_bound = levels[i-1] + upper_bound = None + else: + lower_bound = levels[i-1] + upper_bound = levels[i] for j, cell in enumerate(cells): - cell.region = cell.region & +lower_bound & -upper_bound + if lower_bound is None: + cell.region = cell.region & -upper_bound + elif upper_bound is None: + cell.region = cell.region & +lower_bound + else: + cell.region = cell.region & +lower_bound & -upper_bound cell_list.append(cell) return cell_list -def shared_elem_geometry(): - """Surfaces and regions shared by Zone IA and Zone IIA elements. - Specs found in Robertson, 1971 Fig 3.4 (p. 17) and Fig 3.5 (p.18)""" - - elem_bound = openmc.rectangular_prism(5.08*2, 5.08*2) # Pin outer boundary - - gr_sq_neg = openmc.rectangular_prism(4.953*2, 4.953*2, corner_radius=0.46) # Graphite square - - # params for main pin section for both I-A and II-A - r_d = 0.66802 - l1 = 4.28498 - l2 = 4.53898 - l3 = 5.62102 - ul = openmc.ZCylinder(-l1, l2, r_d, name='corner_ul') - br = openmc.ZCylinder(l1, -l2, r_d, name='corner_br') - lb = openmc.ZCylinder(-l2, -l1, r_d, name='corner_lb') - ru = openmc.ZCylinder(l2, l1, r_d, name='corner_ru') - ul_t = openmc.ZCylinder(-l1, -l3, r_d, name='corner_ul_tip') - br_t = openmc.ZCylinder(l1, l3, r_d, name='corner_br_tip') - ru_t = openmc.ZCylinder(-l3, l1, r_d, name='corner_ru_tip') - lb_t = openmc.ZCylinder(l3, -l1, r_d, name='corner_lb_tip') - - gr_corners = elem_bound & (-ul | -br | -lb | -ru | - -ul_t | -br_t | -ru_t | -lb_t) - - inter_elem_channel = (~gr_sq_neg & elem_bound & - +ul & +br & +lb & +ru & - +ul_t & +ru_t & +ru_t & +lb_t) - gr_round_4 = openmc.ZCylinder(r=2.2225, name='gr_round_4') - - return elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4 - -def zoneIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4, moder, fuel, hast): +def zoneIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4, moder, fuel, hast, optimized): """Zone IA element. Specs found in Robertson, 1971 Fig 3.4 (p. 17)""" - elem_levels = [0.0, 22.86, 419.10, 438.15, 445.135, 449.58] + elem_levels = [22.86, 419.10, 438.15, 445.135] level_bounds = [] for level in elem_levels: level_bounds.append(openmc.ZPlane(z0=level)) @@ -57,7 +38,7 @@ def zoneIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4, mo h = 12.66 theta = np.arctan(4.953 / h) r2 = (1 / np.cos(theta))**2 - 1 - s3 = openmc.ZCone(z0=h + elem_levels[3], r2=r2, name='cone_i') + s3 = openmc.ZCone(z0=h + elem_levels[2], r2=r2, name='cone_i') c1 = openmc.Cell(fill=fuel, region=(-s2), name='ia_fuel_inner_1') c2 = openmc.Cell(fill=moder, region=(+s2 & -s1), name='ia_moderator_1') @@ -67,11 +48,21 @@ def zoneIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4, mo # I-A main (lower 2) c4 = c1.clone(clone_materials=False) c4.name = 'ia_fuel_inner_main' - c5 = openmc.Cell(fill=moder, region=(+s2 & - gr_sq_neg | - gr_corners), name='ia_moderator_main') - c6 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='ia_fuel_outer_main') - iam = (c4, c5, c6) + + if optimized: + s2 = s2.clone() + c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg), name='ia_moderator_main_core') + iam = [c4, c5] + for (reg, name) in inter_elem_channel: + iam.append(openmc.Cell(fill=fuel, region=reg, name=f'ia_fuel_outer_main_{name}')) + else: + c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg & inter_elem_channel), name='ia_moderator_main') + c6 = openmc.Cell(fill=fuel, region=(~gr_sq_neg & elem_bound & inter_elem_channel), name='ia_fuel_outer_main') + iam = [c4, c5, c6] + + for (reg, name) in gr_corners: + iam.append(openmc.Cell(fill=moder, region=reg, name=f'ia_moderator_main_{name}')) + # I-A 2 (upper 1) c7 = c1.clone(clone_materials=False) @@ -83,6 +74,10 @@ def zoneIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4, mo ia2 = (c7, c8, c9) # I-A 3 (upper 2) + if optimized: + s2 = s2.clone() + s3 = s3.clone() + elem_bound = elem_bound.clone() c10 = c1.clone(clone_materials=False) c10.name = 'ia_fuel_inner_3' c11 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='ia_moderator_3') @@ -90,6 +85,9 @@ def zoneIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4, mo ia3 = (c10, c11, c12) # I-A 4 (upper 3) + if optimized: + s2 = s2.clone() + elem_bound = elem_bound.clone() c13 = openmc.Cell(fill=hast, region=(-s2), name='ia_hast') c14 = openmc.Cell(fill=moder, region=(+s2 & -gr_round_4), name='ia_moderator_4') c15 = openmc.Cell(fill=fuel, region=(+gr_round_4 & elem_bound), name='ia_fuel_outer_4') @@ -101,9 +99,9 @@ def zoneIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4, mo ia.add_cells(_bound_zone_cells(elem_cells, level_bounds)) return ia -def zoneIIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4, moder, fuel): +def zoneIIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4, moder, fuel, optimized): """Zone IIA element. Specs found in Robertson, 1971 Fig 3.5 (p. 18)""" - elem_levels = [0.0, 434.34, 436.88, 439.42, 441.96, 449.58] + elem_levels = [434.34, 436.88, 439.42, 441.96] level_bounds = [] for level in elem_levels: level_bounds.append(openmc.ZPlane(z0=level)) @@ -113,52 +111,80 @@ def zoneIIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4, m h = 6.5 theta = np.arctan(3.65125 / h) r2 = (1 / np.cos(theta))**2 - 1 - s4 = openmc.ZCone(z0=h + elem_levels[3], r2=r2, name='cone_ii') + s4 = openmc.ZCone(z0=h + elem_levels[2], r2=r2, name='cone_ii') + # II-A main (lower 1) c1 = openmc.Cell(fill=fuel, region=(-s1), name='iia_fuel_inner_main') - c2 = openmc.Cell(fill=moder, region=(+s1 & gr_sq_neg | gr_corners), name='iia_moderator_main') - c3 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='iia_fuel_outer_main') - c3.name = 'iia_fuel_outer_main' - iiam = (c1, c2, c3) # II-A 2 (upper 1) c4 = openmc.Cell(fill=fuel, region=(-s2), name='iia_fuel_inner_2') - c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg | gr_corners), name='iia_moderator_2') - c6 = c3.clone(clone_materials=False) - c6.name = 'iia_fuel_outer_2' - iia2 = (c4, c5, c6) + if optimized: + # II-A main (lower 1) + c2 = openmc.Cell(fill=moder, region=(+s1 & gr_sq_neg), name='iia_moderator_main_core') + iiam = [c1, c2] + + # II-A 2 (upper 1) + gr_sq_neg = gr_sq_neg.clone() + c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg), name='iia_moderator_2_core') + iia2 = [c4, c5] + + for (reg, name) in gr_corners: + iiam.append(openmc.Cell(fill=moder, region=reg, name=f'iia_moderator_main_{name}')) + iia2.append(openmc.Cell(fill=moder, region=(reg), name=f'iia_moderator_main_{name}')) + for (reg, name) in inter_elem_channel: + iiam.append(openmc.Cell(fill=fuel, region=reg, name=f'iia_fuel_outer_main_{name}')) + iia2.append(openmc.Cell(fill=fuel, region=(reg), name=f'iia_fuel_outer_2_{name}')) + + else: + # II-A main (lower 1) + c2 = openmc.Cell(fill=moder, region=(+s1 & gr_sq_neg & inter_elem_channel), name='iia_moderator_main') + c3 = openmc.Cell(fill=fuel, region=(~gr_sq_neg & inter_elem_channel), name='iia_fuel_outer_main') + iiam = [c1, c2, c3] + + # II-A 2 (upper 1) + c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg & inter_elem_channel), name='iia_moderator_2') + c6 = c3.clone(clone_materials=False) + c6.name = 'iia_fuel_outer_2' + iia2 = [c4, c5, c6] + + for (reg, name) in gr_corners: + iiam.append(openmc.Cell(fill=moder, region=reg, name=f'iia_moderator_main_{name}')) + iia2.append(openmc.Cell(fill=moder, region=reg, name=f'iia_moderator_2_{name}')) # II-A 3 (upper 2) + if optimized: + s2 = s2.clone() c7 = c4.clone(clone_materials=False) c7.name = 'iia_fuel_inner_3' c8 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='iia_moderator_3') - c9 = openmc.Cell(fill=fuel, region=(+s3 & elem_bound), name='iia_fuel_outer_3') + c9 = openmc.Cell(fill=fuel, region=(+s3), name='iia_fuel_outer_3') iia3 = (c7, c8, c9) # II-A 4 (upper 3) c10 = openmc.Cell(fill=moder, region=(-s4), name='iia_moderator_4') - c11 = openmc.Cell(fill=fuel, region=(+s4 & elem_bound), name='iia_fuel_outer_4') + c11 = openmc.Cell(fill=fuel, region=(+s4), name='iia_fuel_outer_4') iia4 = (c10, c11) # II-A 5 (upper 4) c12 = openmc.Cell(fill=moder, region=(-gr_round_4), name='iia_moderator_5') - c13 = openmc.Cell(fill=fuel, region=(+gr_round_4 & elem_bound), name='iia_fuel_outer_5') + c13 = openmc.Cell(fill=fuel, region=(+gr_round_4), name='iia_fuel_outer_5') iia5 = (c12, c13) + elem_cells = [iiam, iia2, iia3, iia4, iia5] # universe_id=2 iia = openmc.Universe(name='zone_iia') iia.add_cells(_bound_zone_cells(elem_cells, level_bounds)) return iia -def void_cell(elem_bound): - c1 = openmc.Cell(region=elem_bound, name='lattice_void') +def void_cell(elem_bound, optimized): + c1 = openmc.Cell(name='lattice_void') #universe_id=5 v = openmc.Universe(name='lattice_void') v.add_cell(c1) return v -def graphite_triangles(elem_bound, moder, fuel): +def graphite_triangles(elem_bound, moder, fuel, optimized): s1 = openmc.Plane(1.0, 1.0, 0.0, 0.0) s2 = openmc.Plane(-1.0, 1.0, 0.0, 0.0) s3 = openmc.Plane(1.0, -1.0, 0.0, 0.0) @@ -169,8 +195,8 @@ def graphite_triangles(elem_bound, moder, fuel): (s3, 'bottom_right')] univs = [] for i, (s, name) in enumerate(surfs): - c1 = openmc.Cell(fill=moder, region=(-s & elem_bound)) - c2 = openmc.Cell(fill=fuel, region=(+s & elem_bound)) + c1 = openmc.Cell(fill=moder, region=(-s)) + c2 = openmc.Cell(fill=fuel, region=(+s)) # universe_id = 6+i gr_tri = openmc.Universe(name=f'{name}_triangle') gr_tri.add_cells([c1, c2]) diff --git a/examples/msbr/_core_elements_optimized.py b/examples/msbr/_core_elements_optimized.py new file mode 100644 index 000000000..0db560c97 --- /dev/null +++ b/examples/msbr/_core_elements_optimized.py @@ -0,0 +1,266 @@ +import openmc +import numpy as np + +def _bound_zone_cells(cells_tuples, levels): + """Helper function that moves Zone IA and Zone IIA cells to the + appropriate height.""" + cell_list = [] + n_levels = len(cells_tuples) + for i, cells in enumerate(cells_tuples): + if i == 0: + lower_bound = None + upper_bound = levels[i] + elif i == n_levels - 1: + lower_bound = levels[i-1] + upper_bound = None + else: + lower_bound = levels[i-1] + upper_bound = levels[i] + + for j, cell in enumerate(cells): + if lower_bound is None: + cell.region = cell.region & -upper_bound + elif upper_bound is None: + cell.region = cell.region & +lower_bound + else: + cell.region = cell.region & +lower_bound & -upper_bound + cell_list.append(cell) + return cell_list + +def shared_elem_geometry(): + """Surfaces and regions shared by Zone IA and Zone IIA elements. + Specs found in Robertson, 1971 Fig 3.4 (p. 17) and Fig 3.5 (p.18)""" + + elem_bound = openmc.rectangular_prism(5.08*2, 5.08*2) # Pin outer boundary + eb_minx, eb_maxx, eb_miny, eb_maxy = list(elem_bound.get_surfaces().values()) + + gr_sq_neg = openmc.rectangular_prism(4.953*2, 4.953*2, corner_radius=0.46) # Graphite square + (gr_minx, gr_maxx, gr_miny, gr_maxy, + gr_cyl_lb, gr_cyl_minx, gr_cyl_miny, + gr_cyl_ul, gr_cyl_maxy, gr_cyl_br, + gr_cyl_maxx, gr_cyl_ru) = list(gr_sq_neg.get_surfaces().values()) + + # params for main pin section for both I-A and II-A + r_d = 0.66802 + l1 = 4.28498 + l2 = 4.53898 + l3 = 5.62102 + ul = openmc.ZCylinder(-l1, l2, r_d, name='corner_ul') + br = openmc.ZCylinder(l1, -l2, r_d, name='corner_br') + lb = openmc.ZCylinder(-l2, -l1, r_d, name='corner_lb') + ru = openmc.ZCylinder(l2, l1, r_d, name='corner_ru') + ul_t = openmc.ZCylinder(-l1, -l3, r_d, name='corner_ul_tip') + br_t = openmc.ZCylinder(l1, l3, r_d, name='corner_br_tip') + ru_t = openmc.ZCylinder(-l3, l1, r_d, name='corner_ru_tip') + lb_t = openmc.ZCylinder(l3, -l1, r_d, name='corner_lb_tip') + + gr_ul = -ul & -eb_maxy & +gr_maxy# | + gr_ul_fill = -ul & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy + gr_br = -br & +eb_miny & -gr_miny# | + gr_br_fill = -br & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny + gr_lb = -lb & +eb_minx & -gr_minx# | + gr_lb_fill = -lb & +gr_cyl_lb & +gr_minx & -gr_cyl_minx & -gr_cyl_miny + gr_ru = -ru & -eb_maxx & +gr_maxx# | + gr_ru_fill = -ru & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxx & +gr_cyl_maxy + + gr_ul_t = -ul_t & +eb_miny & -gr_miny + gr_br_t = -br_t & -eb_maxy & +gr_maxy + gr_ru_t = -ru_t & +eb_minx & -gr_minx + gr_lb_t = -lb_t & -eb_maxx & +gr_maxx + + gr_corners = (gr_ul, gr_br, gr_lb, gr_ru, gr_ul_fill, gr_br_fill, gr_lb_fill, gr_ru_fill) + gr_t = (gr_ul_t, gr_br_t, gr_ru_t, gr_lb_t) + + inter_elem_channel = (~gr_sq_neg & elem_bound & + +ul & +br & +lb & +ru & + +ul_t & +br_t & +ru_t & +lb_t) + + gr_round_4 = openmc.ZCylinder(r=2.2225, name='gr_round_4') + + return elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4 + +def zoneIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4, moder, fuel, hast): + """Zone IA element. Specs found in Robertson, 1971 Fig 3.4 (p. 17)""" + elem_levels = [22.86, 419.10, 438.15, 445.135] + level_bounds = [] + for level in elem_levels: + level_bounds.append(openmc.ZPlane(z0=level)) + s1 = openmc.ZCylinder(r=4.953, name='ia_gr_round_1') + s2 = openmc.ZCylinder(r=1.71069, name='ia_fuel_hole') + + h = 12.66 + theta = np.arctan(4.953 / h) + r2 = (1 / np.cos(theta))**2 - 1 + s3 = openmc.ZCone(z0=h + elem_levels[2], r2=r2, name='cone_i') + + c1 = openmc.Cell(fill=fuel, region=(-s2), name='ia_fuel_inner_1') + c2 = openmc.Cell(fill=moder, region=(+s2 & -s1), name='ia_moderator_1') + c3 = openmc.Cell(fill=fuel, region=(+s1 & elem_bound), name='ia_fuel_outer_1') + ia1 = (c1, c2, c3) + + # I-A main (lower 2) + s2 = s2.clone() + gr_sq_neg = gr_sq_neg.clone() + c4 = c1.clone(clone_materials=False) + c4.name = 'ia_fuel_inner_main' + c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg), name='ia_moderator_main') + c6 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='ia_fuel_outer_main') + c5_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='ia_moderator_main_ul') + c5_br = openmc.Cell(fill=moder, region=gr_corners[1], name='ia_moderator_main_br') + c5_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='ia_moderator_main_ru') + c5_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='ia_moderator_main_lb') + c5_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='ia_moderator_main_ul_fill') + c5_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='ia_moderator_main_br_fill') + c5_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='ia_moderator_main_ru_fill') + c5_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='ia_moderator_main_lb_fill') + c5_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='ia_moderator_main_ul_t') + c5_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='ia_moderator_main_br_t') + c5_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='ia_moderator_main_ru_t') + c5_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='ia_moderator_main_lb_t') + + iam = (c4, c5, c6, + c5_ul, c5_br, c5_ru, c5_lb, + c5_ulf, c5_brf, c5_ruf, c5_lbf, + c5_ul_t, c5_br_t, c5_ru_t, c5_lb_t) + + # I-A 2 (upper 1) + c7 = c1.clone(clone_materials=False) + c7.name = 'ia_fuel_inner_2' + c8 = c2.clone(clone_materials=False) + c8.name = 'ia_moderator_2' + c9 = c3.clone(clone_materials=False) + c9.name = 'ia_fuel_outer_2' + ia2 = (c7, c8, c9) + + # I-A 3 (upper 2)' + s2 = s2.clone() + s3 = s3.clone() + elem_bound = elem_bound.clone() + c10 = c1.clone(clone_materials=False) + c10.name = 'ia_fuel_inner_3' + c11 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='ia_moderator_3') + c12 = openmc.Cell(fill=fuel, region=(+s3 & elem_bound), name='ia_fuel_outer_3') + ia3 = (c10, c11, c12) + + # I-A 4 (upper 3) + s2 = s2.clone() + elem_bound = elem_bound.clone() + c13 = openmc.Cell(fill=hast, region=(-s2), name='ia_hast') + c14 = openmc.Cell(fill=moder, region=(+s2 & -gr_round_4), name='ia_moderator_4') + c15 = openmc.Cell(fill=fuel, region=(+gr_round_4 & elem_bound), name='ia_fuel_outer_4') + ia4 = (c13, c14, c15) + + elem_cells = [ia1, iam, ia2, ia3, ia4] + # universe_id=1 + ia = openmc.Universe(name='zone_ia') + ia.add_cells(_bound_zone_cells(elem_cells, level_bounds)) + return ia + +def zoneIIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4, moder, fuel): + """Zone IIA element. Specs found in Robertson, 1971 Fig 3.5 (p. 18)""" + elem_levels = [434.34, 436.88, 439.42, 441.96] + level_bounds = [] + for level in elem_levels: + level_bounds.append(openmc.ZPlane(z0=level)) + s1 = openmc.ZCylinder(r=3.302, name='iia_fuel_hole_main') # Hole with fuel salt - Fig 3.5, Roberton 1971 (3.27787 - p.47) + s2 = openmc.ZCylinder(r=0.635, name='iia_fuel_hole_2') + s3 = openmc.ZCylinder(r=3.65125, name='iia_gr_round_3') + h = 6.5 + theta = np.arctan(3.65125 / h) + r2 = (1 / np.cos(theta))**2 - 1 + s4 = openmc.ZCone(z0=h + elem_levels[2], r2=r2, name='cone_ii') + + # II-A main (lower 1) + c1 = openmc.Cell(fill=fuel, region=(-s1), name='iia_fuel_inner_main') + c2 = openmc.Cell(fill=moder, region=(+s1 & gr_sq_neg), name='iia_moderator_main') + c3 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='iia_fuel_outer_main') + c3.name = 'iia_fuel_outer_main' + c2_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='iia_moderator_main_ul') + c2_br = openmc.Cell(fill=moder, region=gr_corners[1], name='iia_moderator_main_br') + c2_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='iia_moderator_main_ru') + c2_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='iia_moderator_main_lb') + c2_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='iia_moderator_main_ul_fill') + c2_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='iia_moderator_main_br_fill') + c2_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='iia_moderator_main_ru_fill') + c2_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='iia_moderator_main_lb_fill') + c2_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='iia_moderator_main_ul_t') + c2_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='iia_moderator_main_br_t') + c2_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='iia_moderator_main_ru_t') + c2_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='iia_moderator_main_lb_t') + iiam = (c1, c2, c3, c2_ul, c2_br, c2_ru, c2_lb, c2_ulf, c2_brf, c2_ruf, c2_lbf, c2_ul_t, c2_br_t, c2_ru_t, c2_lb_t) + + # II-A 2 (upper 1) + gr_sq_neg = gr_sq_neg.clone() + c4 = openmc.Cell(fill=fuel, region=(-s2), name='iia_fuel_inner_2') + c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg), name='iia_moderator_2') + c6 = c3.clone(clone_materials=False) + c6.name = 'iia_fuel_outer_2' + c5_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='iia_moderator_2_ul') + c5_br = openmc.Cell(fill=moder, region=gr_corners[1], name='iia_moderator_2_br') + c5_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='iia_moderator_2_ru') + c5_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='iia_moderator_2_lb') + c5_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='iia_moderator_2_ul_fill') + c5_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='iia_moderator_2_br_fill') + c5_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='iia_moderator_2_ru_fill') + c5_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='iia_moderator_2_lb_fill') + c5_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='iia_moderator_2_ul_t') + c5_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='iia_moderator_2_br_t') + c5_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='iia_moderator_2_ru_t') + c5_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='iia_moderator_2_lb_t') + iia2 = (c4, c5, c6, c5_ul, c5_br, c5_ru, c5_lb, c5_ulf, c5_brf, c5_ruf, c5_lbf, c5_ul_t, c5_br_t, c5_ru_t, c5_lb_t) + + # II-A 3 (upper 2) + s2 = s2.clone() + elem_bound = elem_bound.clone() + c7 = c4.clone(clone_materials=False) + c7.name = 'iia_fuel_inner_3' + c8 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='iia_moderator_3') + c9 = openmc.Cell(fill=fuel, region=(+s3 & elem_bound), name='iia_fuel_outer_3') + iia3 = (c7, c8, c9) + + # II-A 4 (upper 3) + elem_bound = elem_bound.clone() + c10 = openmc.Cell(fill=moder, region=(-s4), name='iia_moderator_4') + c11 = openmc.Cell(fill=fuel, region=(+s4 & elem_bound), name='iia_fuel_outer_4') + iia4 = (c10, c11) + + # II-A 5 (upper 4) + elem_bound = elem_bound.clone() + c12 = openmc.Cell(fill=moder, region=(-gr_round_4), name='iia_moderator_5') + c13 = openmc.Cell(fill=fuel, region=(+gr_round_4 & elem_bound), name='iia_fuel_outer_5') + iia5 = (c12, c13) + + elem_cells = [iiam, iia2, iia3, iia4, iia5] + # universe_id=2 + iia = openmc.Universe(name='zone_iia') + iia.add_cells(_bound_zone_cells(elem_cells, level_bounds)) + return iia + +def void_cell(elem_bound): + elem_bound = elem_bound.clone() + c1 = openmc.Cell(region=elem_bound, name='lattice_void') + #universe_id=5 + v = openmc.Universe(name='lattice_void') + v.add_cell(c1) + return v + +def graphite_triangles(elem_bound, moder, fuel): + s1 = openmc.Plane(1.0, 1.0, 0.0, 0.0) + s2 = openmc.Plane(-1.0, 1.0, 0.0, 0.0) + s3 = openmc.Plane(1.0, -1.0, 0.0, 0.0) + s4 = openmc.Plane(-1.0, -1.0, 0.0, 0.0) + surfs = [(s4, 'bottom_left'), + (s1, 'top_right'), + (s2, 'top_left'), + (s3, 'bottom_right')] + univs = [] + for i, (s, name) in enumerate(surfs): + elem_bound = elem_bound.clone() + c1 = openmc.Cell(fill=moder, region=(-s & elem_bound)) + elem_bound = elem_bound.clone() + c2 = openmc.Cell(fill=fuel, region=(+s & elem_bound)) + # universe_id = 6+i + gr_tri = openmc.Universe(name=f'{name}_triangle') + gr_tri.add_cells([c1, c2]) + univs.append(gr_tri) + return univs diff --git a/examples/msbr/_root_geometry.py b/examples/msbr/_root_geometry.py index 2b14dcc88..b0bbf641f 100644 --- a/examples/msbr/_root_geometry.py +++ b/examples/msbr/_root_geometry.py @@ -9,7 +9,8 @@ def shared_root_geometry(): s1 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=208.28, r2=222.71, name='base_octader') s2 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=218.44, r2=215.53, name='smaller_octader') s3 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=228.60, r2=193.97, name='smallest_octader') - zone_i_boundary = -s1 | -s2 | -s3 + + zone_i_boundary = (s1, s2, s3) zone_ii_boundary = openmc.ZCylinder(r=256.032, name='iib_boundary') annulus_boundary = openmc.ZCylinder(r=261.112, name='annulus_boundary') @@ -34,7 +35,7 @@ def shared_root_geometry(): return zone_bounds, core_bounds, reflector_bounds, vessel_bounds -def zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top, moder, fuel): +def zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top, moder, fuel, optimized): # Large elements large_angular_width = 3.538 large_half_w = large_angular_width / 2 @@ -63,36 +64,118 @@ def zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core small_elems_per_octant = 25 elem_cells = [] + zone_iib_reg = None for i, pos in enumerate(large_positions): - r1, r2 = big_radii[i] - t1 = pos - large_half_w - t2 = pos + large_half_w - large_elem = openmc.model.CylinderSector(r1, r2, t1, t2) - elem_hole = hole_region.rotate((0.0, 0.0, pos)) - elem_reg = -large_elem & elem_hole - if isinstance(zone_iib_reg, openmc.Region): - zone_iib_reg = zone_iib_reg | elem_reg + pos = np.round(pos, 3) + r1_big, r2_big = big_radii[i] + t1_big = pos - large_half_w + t2_big = pos + large_half_w + s1 = openmc.model.CylinderSector(r1_big, r2_big, t1_big, t2_big, name=f'iib_large_element_{pos}') + s2 = openmc.ZCylinder(**hole_args[i]) + + elem_cells.append(openmc.Cell(fill=moder, region=(-s1 & +s2), name=f'iib_large_element_{pos}')) + elem_cells.append(openmc.Cell(fill=fuel, region=(-s2), name=f'iib_large_element_fuel_hole_{pos}')) + + t1_small = t2_big + adjacent_angular_offset + r1_small, r2_small = small_radii + + if optimized: + # Inter element fuel channel + s3 = openmc.model.CylinderSector(r1_small, r2_small, t2_big, t1_small) + cpos = t2_big + (adjacent_angular_offset / 2) + cpos = np.round(cpos, 3) + elem_cells.append(openmc.Cell(fill=fuel, region=-s3, name=f'inter_element_fuel_channel_{cpos}')) + + t4a = t1_big - adjacent_angular_offset + s4 = openmc.model.CylinderSector(r1_small, r1_big, t4a, t1_small) + elem_cells.append(openmc.Cell(fill=fuel, region=-s4, name=f'inter_element_fuel_channel_{pos}')) else: - zone_iib_reg = elem_reg - small_start = t2 + adjacent_angular_offset - r1, r2 = small_radii - t1 = small_start + if isinstance(zone_iib_reg, openmc.Region): + zone_iib_reg = zone_iib_reg & +s1 + else: + zone_iib_reg = +s1 + for i in range(0, small_elems_per_octant): - t2 = t1 + small_angular_width - elem_reg = -openmc.model.CylinderSector(r1, r2, t1, t2) - pos = t2 - (small_angular_width / 2) - zone_iib_reg = zone_iib_reg | elem_reg - t1 = t2 + adjacent_angular_offset - c1 = openmc.Cell(fill=moder, region=(zone_iib_reg & - ~zone_i_boundary & - +core_base & - -core_top), name='iib_moderator') - c2 = openmc.Cell(fill=fuel, region=(~zone_iib_reg & - ~zone_i_boundary & - -zone_ii_boundary & - +core_base & - -core_top), name='iib_fuel') - return c1, c2 + t2_small = t1_small + small_angular_width + + # reflector element + pos = t2_small - (small_angular_width / 2) + pos = np.round(pos, 3) + s5 = openmc.model.CylinderSector(r1_small, r2_small, t1_small, t2_small, name=f'iib_small_element_{pos}') + elem_cells.append(openmc.Cell(fill=moder, region=-s5, name=f'iib_small_element_{pos}')) + + t1_small = t2_small + adjacent_angular_offset + + if optimized: + # inter-element fuel channel + cpos = t2_small + (adjacent_angular_offset/2) + cpos = np.round(cpos, 3) + s6 = openmc.model.CylinderSector(r1_small, r2_small, t2_small, t1_small, name=f'inter_element_fuel_channel_{cpos}') + elem_cells.append(openmc.Cell(fill=fuel, region=-s6, name=f'inter_element_fuel_channel_{cpos}')) + else: + zone_iib_reg = zone_iib_reg & +s5 + + #universe_id=10 + iib = openmc.Universe(name='zone_iib', cells=elem_cells) + s1, s2, s3 = zone_i_boundary + if optimized: + oct1_maxy, oct1_miny, oct1_maxx, oct1_minx, oct1_ur, oct1_br, oct1_bl, oct1_ul = list((-s1).get_surfaces().values()) + oct2_maxy, oct2_miny, oct2_maxx, oct2_minx, oct2_ur, oct2_br, oct2_bl, oct2_ul = list((-s3).get_surfaces().values()) + oct3_maxy, oct3_miny, oct3_maxx, oct3_minx, oct3_ur, oct3_br, oct3_bl, oct3_ul = list((-s2).get_surfaces().values()) + + cap_r =(+oct3_maxx & -zone_ii_boundary) + + c23_urr = (+oct2_maxx & -oct3_maxx & -oct3_ur & +oct2_ur) + c12_urr = (+oct1_maxx & -oct3_maxx & -oct2_ur & +oct1_ur) + cap_ur = (-oct3_maxy & -oct3_maxx & -oct1_ur & -zone_ii_boundary) + c12_uru = (+oct1_maxy & -oct3_maxy & -oct2_ur & +oct1_ur) + c23_uru = (+oct2_maxy & -oct3_maxy & -oct3_ur & +oct2_ur) + + cap_u = (+oct3_maxy & -zone_ii_boundary) + + c23_ulu = (+oct2_maxy & -oct3_maxy & +oct3_ul & -oct2_ul) + c12_ulu = (+oct1_maxy & -oct3_maxy & +oct2_ul & -oct1_ul) + cap_ul = (-oct3_maxy & +oct3_minx & +oct1_ul & -zone_ii_boundary) + c12_ull = (-oct1_minx & +oct3_minx & +oct2_ul & -oct1_ul) + c23_ull = (-oct2_minx & +oct3_minx & +oct3_ul & -oct2_ul) + + cap_l = (-oct3_minx & -zone_ii_boundary) + + c23_bll = (-oct2_minx & +oct3_minx & +oct3_bl & -oct2_bl) + c12_bll = (-oct1_minx & +oct3_minx & +oct2_bl & -oct1_bl) + cap_bl = (+oct3_minx & +oct3_miny & +oct1_bl & -zone_ii_boundary) + c12_blb = (-oct1_miny & +oct3_miny & +oct2_bl & -oct1_bl) + c23_blb = (-oct2_miny & +oct3_miny & +oct3_bl & -oct2_bl) + + cap_b = (-oct3_miny & -zone_ii_boundary) + + c23_brb = (-oct2_miny & +oct3_miny & -oct3_br & +oct2_br) + c12_brb = (-oct1_miny & +oct3_miny & -oct2_br & +oct1_br) + cap_rb = (-oct3_maxx & +oct3_miny & -oct1_br & -zone_ii_boundary) + c12_brr = (+oct1_maxx & -oct3_maxx & -oct2_br & +oct1_br) + c23_brr = (+oct2_maxx & -oct3_maxx & -oct3_br & +oct2_br) + + regs = ([cap_r, 'cap_r'], [c23_urr, '23_urr'], [c12_urr, '12_urr'], + [cap_ur, 'cap_ur'], [c12_uru, '12_uru'], [c23_uru, '23_uru'], + [cap_u, 'cap_u'], [c23_ulu, '23_ulu'], [c12_ulu, '12_ulu'], + [cap_ul, 'cap_ul'], [c12_ull, '12_ull'], [c23_ull, '23_ull'], + [cap_l, 'cap_l'], [c23_bll, '23_bll'], [c12_bll, '12_bll'], + [cap_bl, 'cap_bl'], [c12_blb, '12_blb'], [c23_blb, '23_blb'], + [cap_b, 'cap_b'], [c23_brb, '23_brb'], [c12_brb, '12_brb'], + [cap_rb, 'cap_rb'], [c12_brr, '12_brr'], [c23_brr, '23_brr']) + + iib_cells = [] + for reg, name in regs: + iib_cells.append(openmc.Cell(fill=iib, region=(reg & +core_base & -core_top), name=f'zone_iib_{name}')) + + + else: + iib.add_cell(openmc.Cell(fill=fuel, region=zone_iib_reg, name='zone_iib_fuel')) + iib_cells = [openmc.Cell(fill=iib, region=(+s1 & +s2 & +s3 & + -zone_ii_boundary & + +core_base & + -core_top), name='zone_iib')] + return iib_cells def annulus(zone_ii_boundary, annulus_boundary, core_base, core_top, fuel): annulus_reg = +zone_ii_boundary & -annulus_boundary & +core_base & -core_top diff --git a/examples/msbr/_root_geometry_optimized.py b/examples/msbr/_root_geometry_optimized.py new file mode 100644 index 000000000..e2f81e2d2 --- /dev/null +++ b/examples/msbr/_root_geometry_optimized.py @@ -0,0 +1,158 @@ +import openmc +import numpy as np + +def shared_root_geometry(): + cr_boundary = openmc.model.rectangular_prism(15.24*2, 15.24*2) + core_base = openmc.ZPlane(z0=0.0, name='core_base') + core_top = openmc.ZPlane(z0=449.58, name='core_top') + + s1 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=208.28, r2=222.71, name='base_octader') + s2 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=218.44, r2=215.53, name='smaller_octader') + s3 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=228.60, r2=193.97, name='smallest_octader') + zone_i_boundary = -s1 | -s2 | -s3 + + zone_ii_boundary = openmc.ZCylinder(r=256.032, name='iib_boundary') + annulus_boundary = openmc.ZCylinder(r=261.112, name='annulus_boundary') + lower_plenum_boundary = openmc.ZPlane(z0=-7.62, name='lower_plenum_boundary') + + zone_bounds = (cr_boundary, zone_i_boundary, zone_ii_boundary) + core_bounds = (annulus_boundary, lower_plenum_boundary, core_base, core_top) + radial_reflector_boundary = openmc.ZCylinder(r=338.328, name='radial_reflector_boundary') + bottom_reflector_boundary = openmc.ZPlane(z0=-76.2, name='bottom_axial_reflector_boundary') + top_reflector_boundary = openmc.ZPlane(z0=525.78, name='top_axial_reflector_boundary') + reflector_bounds = (radial_reflector_boundary, + bottom_reflector_boundary, + top_reflector_boundary) + + radial_vessel_boundary = openmc.ZCylinder(r=343.408, name='radial_vessel_wall', boundary_type='vacuum') + bottom_vessel_boundary = openmc.ZPlane(z0=-81.28, name='bottom_vessel_wall', boundary_type='vacuum') + top_vessel_boundary = openmc.ZPlane(z0=530.86, name='top_vessel_wall', boundary_type='vacuum') + + vessel_bounds = (radial_vessel_boundary, + bottom_vessel_boundary, + top_vessel_boundary) + + return zone_bounds, core_bounds, reflector_bounds, vessel_bounds + +def zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top, moder, fuel): + # Large elements + large_angular_width = 3.538 + large_half_w = large_angular_width / 2 + large_positions = np.linspace(0, 315, 8) + r_outer = 256.032 + r_big1 = 229.6 + r_big2 = 223.6 + rb_1 = (r_big1, r_outer) + rb_2 = (r_big2, r_outer) + big_radii = [rb_1, rb_2] * 4 + small_radii = (207.28, r_outer) + + r_hole = 3.0875 + hole_args = ({'x0': 242.679, 'y0': 0.0, 'r': r_hole}, + {'x0': 171.60, 'y0': 171.60, 'r': r_hole}, + {'x0': 0.0, 'y0': 242.679, 'r': r_hole}, + {'x0': -171.60, 'y0': 171.60, 'r': r_hole}, + {'x0': -242.679, 'y0': 0.0, 'r': r_hole}, + {'x0': -171.60, 'y0': -171.60, 'r': r_hole}, + {'x0': 0.0, 'y0': -242.697, 'r': r_hole}, + {'x0': 171.60, 'y0': -171.60, 'r': r_hole}) + + # Small elements + small_angular_width = 0.96 + adjacent_angular_offset = 0.675 #27/40 + small_elems_per_octant = 25 + + elem_cells = [] + for i, pos in enumerate(large_positions): + pos = np.round(pos, 3) + r1_big, r2_big = big_radii[i] + t1_big = pos - large_half_w + t2_big = pos + large_half_w + s1 = openmc.model.CylinderSector(r1_big, r2_big, t1_big, t2_big) + s2 = openmc.ZCylinder(**hole_args[i]) + elem_cells.append(openmc.Cell(fill=moder, region=(-s1 & +s2), name=f'iib_large_element_{pos}')) + elem_cells.append(openmc.Cell(fill=fuel, region=(-s2), + name=f'iib_large_element_fuel_hole_{pos}')) + t1_small = t2_big + adjacent_angular_offset + r1_small, r2_small = small_radii + + # Inter element fuel channel + s3 = openmc.model.CylinderSector(r1_small, r2_small, t2_big, t1_small) + cpos = t2_big + (adjacent_angular_offset / 2) + cpos = np.round(cpos, 3) + elem_cells.append(openmc.Cell(fill=fuel, region=-s3, + name=f'inter_element_fuel_channel_{cpos}')) + + t4a = t1_big - adjacent_angular_offset + s4 = openmc.model.CylinderSector(r1_small, r1_big, t4a, t1_small) + elem_cells.append(openmc.Cell(fill=fuel, region=-s4, + name=f'inter_element_fuel_channel_{pos}')) + + for i in range(0, small_elems_per_octant): + t2_small = t1_small + small_angular_width + + # reflector element + s5 = openmc.model.CylinderSector(r1_small, r2_small, t1_small, t2_small) + pos = t2_small - (small_angular_width / 2) + pos = np.round(pos, 3) + elem_cells.append(openmc.Cell(fill=moder, region=-s5, name=f'iib_small_element_{pos}')) + t1_small = t2_small + adjacent_angular_offset + + # inter-element fuel channel + s6 = openmc.model.CylinderSector(r1_small, r2_small, t2_small, t1_small) + cpos = t2_small + (adjacent_angular_offset/2) + cpos = np.round(cpos, 3) + elem_cells.append(openmc.Cell(fill=fuel, region=-s6, + name=f'inter_element_fuel_channel_{cpos}')) + + #universe_id=10 + iib = openmc.Universe(name='zone_iib') + iib.add_cells(elem_cells) + + c1 = openmc.Cell(fill=iib, region=(~zone_i_boundary & + -zone_ii_boundary & + +core_base & + -core_top), name='zone_iib') + return c1 + +def annulus(zone_ii_boundary, annulus_boundary, core_base, core_top, fuel): + annulus_reg = +zone_ii_boundary & -annulus_boundary & +core_base & -core_top + c1 = openmc.Cell(fill=fuel, region=annulus_reg, name='annulus') + return c1 + +def lower_plenum(core_base, lower_plenum_boundary, annulus_boundary, fuel): + lower_plenum_reg = -core_base & +lower_plenum_boundary & -annulus_boundary + c1 = openmc.Cell(fill=fuel, region=lower_plenum_reg, name='lower_plenum') + return c1 + +def reflectors(annulus_boundary, + radial_reflector_boundary, + lower_plenum_boundary, + bottom_reflector_boundary, + core_top, + top_reflector_boundary, + moder): + radial_reflector_reg = +annulus_boundary & -radial_reflector_boundary & +bottom_reflector_boundary & -top_reflector_boundary + bottom_reflector_reg = -annulus_boundary & -lower_plenum_boundary & +bottom_reflector_boundary + top_reflector_reg = -annulus_boundary & +core_top & -top_reflector_boundary + + c1 = openmc.Cell(fill=moder, region=radial_reflector_reg, name='radial_reflector') + c2 = openmc.Cell(fill=moder, region=bottom_reflector_reg, name='bottom_axial_reflector') + c3 = openmc.Cell(fill=moder, region=top_reflector_reg, name='top_axial_reflector') + return c1, c2, c3 + +def vessel(radial_reflector_boundary, + radial_vessel_boundary, + bottom_vessel_boundary, + top_vessel_boundary, + top_reflector_boundary, + bottom_reflector_boundary, + hast): + radial_vessel_reg = +radial_reflector_boundary & -radial_vessel_boundary & -top_vessel_boundary & +bottom_vessel_boundary + bottom_vessel_reg = -radial_reflector_boundary & -bottom_reflector_boundary & +bottom_vessel_boundary + top_vessel_reg = -radial_reflector_boundary & -top_vessel_boundary & +top_reflector_boundary + + c1 = openmc.Cell(fill=hast, region=radial_vessel_reg, name='radial_vessel_wall') + c2 = openmc.Cell(fill=hast, region=bottom_vessel_reg, name='bottom_vessel_wall') + c3 = openmc.Cell(fill=hast, region=top_vessel_reg, name='top_vessel_wall') + return c1, c2, c3 diff --git a/examples/msbr/model-plotting-optimized.ipynb b/examples/msbr/model-plotting-optimized.ipynb new file mode 100644 index 000000000..d64be0f3d --- /dev/null +++ b/examples/msbr/model-plotting-optimized.ipynb @@ -0,0 +1,1327 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "id": "bdbd4aaa", + "metadata": {}, + "outputs": [], + "source": [ + "import openmc\n", + "import numpy as np" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "56642afc", + "metadata": {}, + "outputs": [], + "source": [ + "# Create materials\n", + "fuel = openmc.Material(name='fuel')\n", + "fuel.set_density('g/cm3', density=3.35)\n", + "fuel.add_components({'Li7': 0.0787474673879085,\n", + " 'Be9': 0.0225566879138321,\n", + " 'F19': 0.454003012179284,\n", + " 'Th232': 0.435579130482336,\n", + " 'U233': 0.00911370203663893},\n", + " percent_type='wo')\n", + "fuel.depletable = True\n", + "fuel.volume = 48710000.0\n", + "\n", + "moder = openmc.Material(name='graphite', temperature=900.0)\n", + "moder.set_density('g/cm3', density=1.84)\n", + "moder.add_nuclide('C0', 1.000, percent_type='wo')\n", + "moder.add_s_alpha_beta('c_Graphite')\n", + "\n", + "hast = openmc.Material(name='hastelloyN', temperature=900.0)\n", + "hast.set_density('g/cm3', density=8.671)\n", + "hast.add_components({'Al27': 0.003,\n", + " 'Ni': 0.677,\n", + " 'W': 0.250,\n", + " 'Cr': 0.070},\n", + " percent_type='wo')\n", + "\n", + "mat = openmc.Materials(materials=[fuel, moder, hast])\n", + "mat.export_to_xml()" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "5bf1ab77", + "metadata": {}, + "outputs": [], + "source": [ + "colormap = {moder: 'purple',\n", + " hast: 'blue',\n", + " fuel: 'yellow'}" + ] + }, + { + "cell_type": "code", + "execution_count": 65, + "id": "3e341197", + "metadata": {}, + "outputs": [], + "source": [ + " def _bound_zone_cells(cells_tuples, levels):\n", + " \"\"\"Helper function that moves Zone IA and Zone IIA cells to the\n", + " appropriate height.\"\"\"\n", + " cell_list = []\n", + " n_levels = len(cells_tuples)\n", + " for i, cells in enumerate(cells_tuples):\n", + " if i == 0:\n", + " lower_bound = None\n", + " upper_bound = levels[i]\n", + " elif i == n_levels - 1:\n", + " lower_bound = levels[i-1]\n", + " upper_bound = None\n", + " else:\n", + " lower_bound = levels[i-1]\n", + " upper_bound = levels[i]\n", + " for j, cell in enumerate(cells):\n", + " if lower_bound is None:\n", + " cell.region = cell.region & -upper_bound\n", + " elif upper_bound is None:\n", + " cell.region = cell.region & +lower_bound\n", + " else:\n", + " cell.region = cell.region & +lower_bound & -upper_bound\n", + " cell_list.append(cell)\n", + " return cell_list\n", + "\n", + "def shared_elem_geometry(elem_type, eb_d, gr_sq_d, gr_sq_r, r_dt, l1, l2, l3, r_es, es_name):\n", + " \"\"\"Surfaces and regions shared by Zone IA and Zone IIA elements.\n", + " Specs found in Robertson, 1971 Fig 3.4 (p. 17) and Fig 3.5 (p.18)\"\"\"\n", + " elem_bound = openmc.rectangular_prism(eb_d*2, eb_d*2) # Pin outer boundary\n", + " eb_minx, eb_maxx, eb_miny, eb_maxy = list(elem_bound.get_surfaces().values())\n", + "\n", + " gr_sq_neg = openmc.rectangular_prism(gr_sq_d*2, gr_sq_d*2, corner_radius=gr_sq_r) # Graphite square\n", + " (gr_minx, gr_maxx, gr_miny, gr_maxy,\n", + " gr_cyl_lb, gr_cyl_minx, gr_cyl_miny,\n", + " gr_cyl_ul, gr_cyl_maxy, gr_cyl_br,\n", + " gr_cyl_maxx, gr_cyl_ru) = list(gr_sq_neg.get_surfaces().values())\n", + "\n", + " # remaining square\n", + " gr_sq_neg = +gr_minx & -gr_maxx & +gr_cyl_miny & -gr_cyl_maxy\n", + "\n", + " ul_t = openmc.ZCylinder(-l1, -l3, r_dt, name='corner_ul_tip')\n", + " br_t = openmc.ZCylinder(l1, l3, r_dt, name='corner_br_tip')\n", + " ru_t = openmc.ZCylinder(-l3, l1, r_dt, name='corner_ru_tip')\n", + " lb_t = openmc.ZCylinder(l3, -l1, r_dt, name='corner_lb_tip')\n", + "\n", + " if elem_type == 'core':\n", + " # for main pin section for both I-A and II-A\n", + " ul = openmc.ZCylinder(-l1, l2, r_dt, name='corner_ul')\n", + " br = openmc.ZCylinder(l1, -l2, r_dt, name='corner_br')\n", + " lb = openmc.ZCylinder(-l2, -l1, r_dt, name='corner_lb')\n", + " ru = openmc.ZCylinder(l2, l1, r_dt, name='corner_ru')\n", + "\n", + " # corner regions\n", + " gr_ul = -ul & +gr_maxy\n", + " gr_ul_fill = -ul & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy\n", + " gr_br = -br & -gr_miny\n", + " gr_br_fill = -br & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny\n", + " gr_lb = -lb & -gr_minx\n", + " gr_lb_fill = -lb & +gr_cyl_lb & +gr_minx & -gr_cyl_minx & -gr_cyl_miny\n", + " gr_ru = -ru & +gr_maxx\n", + " gr_ru_fill = -ru & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxx & +gr_cyl_maxy\n", + "\n", + " # inter-element channel regions\n", + " iec_r = +gr_cyl_miny & -gr_cyl_maxy & +gr_maxx & +lb_t & +ru & +gr_cyl_ru\n", + " iec_ru = (+gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy) & +ru & +br_t\n", + " iec_u = +gr_cyl_minx & -gr_cyl_maxx & +gr_maxy & +br_t & +ul & +gr_cyl_ul\n", + " iec_ul = (+gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy) & +ul & +ru_t\n", + " iec_l = +gr_cyl_miny & -gr_cyl_maxy & -gr_minx & +ru_t & +lb & +gr_cyl_lb\n", + " iec_lb = (+gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny) & +lb & +ul_t\n", + " iec_b = +gr_cyl_minx & -gr_cyl_maxx & -gr_miny & +ul_t & +br & +gr_cyl_br\n", + " iec_br = (+gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny) & +br & +lb_t\n", + " \n", + " inter_elem_channel = [[iec_r, 'outer_r'], [iec_ru, 'outer_ru'],\n", + " [iec_u, 'outer_u'], [iec_ul, 'outer_ul'],\n", + " [iec_l, 'outer_l'], [iec_lb, 'outer_lb'],\n", + " [iec_b, 'outer_b'], [iec_br, 'outer_br']]\n", + "\n", + " elif elem_type == 'cr':\n", + " # params for control rods\n", + " r_d = 1.16\n", + " e_d = 2 * r_d / np.sqrt(3)\n", + " r_c = 0.18\n", + "\n", + " ul = openmc.model.hexagonal_prism(origin=(-l1, l2), edge_length=e_d, orientation='x', corner_radius=r_c)\n", + " br = openmc.model.hexagonal_prism(origin=(l1, -l2), edge_length=e_d, orientation='x',corner_radius=r_c)\n", + " lb = openmc.model.hexagonal_prism(origin=(-l2, -l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", + " ru = openmc.model.hexagonal_prism(origin=(l2, l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", + "\n", + " (ul_u, ul_b, ul_ur, ul_br, ul_bl, ul_ul,\n", + " ul_cyl_bl_in, ul_cyl_bl_out,\n", + " ul_cyl_ul_in, ul_cyl_ul_out,\n", + " ul_cyl_br_in, ul_cyl_br_out,\n", + " ul_cyl_ur_in, ul_cyl_ur_out,\n", + " ul_cyl_l_in, ul_cyl_l_out,\n", + " ul_cyl_r_in, ul_cyl_r_out)= list(ul.get_surfaces().values())\n", + " (br_u, br_b, br_ur, br_br, br_bl, br_ul,\n", + " br_cyl_bl_in, br_cyl_bl_out,\n", + " br_cyl_ul_in, br_cyl_ul_out,\n", + " br_cyl_br_in, br_cyl_br_out,\n", + " br_cyl_ur_in, br_cyl_ur_out,\n", + " br_cyl_l_in, br_cyl_l_out,\n", + " br_cyl_r_in, br_cyl_r_out)= list(br.get_surfaces().values())\n", + " (lb_r, lb_l, lb_ur, lb_ul, lb_br, lb_bl,\n", + " lb_cyl_lb_in, lb_cyl_lb_out,\n", + " lb_cyl_lu_in, lb_cyl_lu_out,\n", + " lb_cyl_rb_in, lb_cyl_rb_out,\n", + " lb_cyl_ru_in, lb_cyl_ru_out,\n", + " lb_cyl_b_in, lb_cyl_b_out,\n", + " lb_cyl_u_in, lb_cyl_u_out)= list(lb.get_surfaces().values())\n", + " (ru_r, ru_l, ru_ur, ru_ul, ru_br, ru_bl,\n", + " ru_cyl_lb_in, ru_cyl_lb_out,\n", + " ru_cyl_lu_in, ru_cyl_lu_out,\n", + " ru_cyl_rb_in, ru_cyl_rb_out,\n", + " ru_cyl_ru_in, ru_cyl_ru_out,\n", + " ru_cyl_b_in, ru_cyl_b_out,\n", + " ru_cyl_u_in, ru_cyl_u_out)= list(ru.get_surfaces().values())\n", + "\n", + " # corner regions\n", + " gr_ul = -ul_ul & -ul_ur & +gr_maxy\n", + " gr_ul_fill = -ul_ul & +ul_bl & +ul_cyl_l_out & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy\n", + " gr_lb = +lb_bl & -lb_ul & -gr_minx\n", + " gr_lb_fill = +lb_bl & +lb_br & +lb_cyl_b_out & +gr_cyl_lb & +gr_minx & -gr_cyl_miny & -gr_cyl_minx\n", + " gr_br = +br_br & +br_bl & -gr_miny\n", + " gr_br_fill = +br_br & -br_ur & +br_cyl_r_out & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny\n", + " gr_ru = +ru_br & -ru_ur & +gr_maxx\n", + " gr_ru_fill = -ru_ur & -ru_ul & +ru_cyl_u_out & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxy & +gr_cyl_maxx\n", + "\n", + " # inter-element channel regions\n", + " iec_r = +gr_cyl_miny & +gr_maxx & +lb_t & -ru_br\n", + " iec_ru_main = +gr_cyl_ru & (+ru_ur) & +br_t\n", + " iec_ru_fill1 = +gr_cyl_ru & +gr_cyl_maxx & (+ru_ul & -ru_ur) & +br_t\n", + " iec_ru_fill2 = +gr_cyl_ru & ((-ru_cyl_u_out)) & -ru_ul & -ru_ur\n", + " iec_u = -gr_cyl_maxx & +gr_maxy & +br_t & +ul_ur\n", + " iec_ul_main = +gr_cyl_ul & (+ul_ul) & +ru_t\n", + " iec_ul_fill1 = +gr_cyl_ul & +gr_cyl_maxy & (-ul_bl & -ul_ul) & +ru_t\n", + " iec_ul_fill2 = +gr_cyl_ul & ((-ul_cyl_l_out)) & +ul_bl & -ul_ul\n", + " iec_l = -gr_cyl_maxy & -gr_minx & +ru_t & +lb_ul\n", + " iec_lb_main = +gr_cyl_lb & (-lb_bl) & +ul_t\n", + " iec_lb_fill1 = +gr_cyl_lb & -gr_cyl_minx & (-lb_br & +lb_bl) & +ul_t\n", + " iec_lb_fill2 = +gr_cyl_lb & ((-lb_cyl_b_out)) & +lb_br & +lb_bl\n", + " iec_b = +gr_cyl_minx & -gr_miny & +ul_t & -br_bl\n", + " iec_br_main = +gr_cyl_br & (-br_br) & +lb_t\n", + " iec_br_fill1 = +gr_cyl_br & -gr_cyl_miny & (+br_ur & +br_br) & +lb_t\n", + " iec_br_fill2 = +gr_cyl_br & ((-br_cyl_r_out)) & -br_ur & +br_br\n", + " \n", + " inter_elem_channel = [[iec_r, 'outer_r'], [iec_ru_main, 'outer_ru_main'],\n", + " [iec_ru_fill1, 'outer_ru_fill1'], [iec_ru_fill2, 'outer_ru_fill2'],\n", + " [iec_u, 'outer_u'], [iec_ul_main, 'outer_ul_main'],\n", + " [iec_ul_fill1, 'outer_ul_fill1'], [iec_ul_fill2, 'outer_ul_fill2'],\n", + " [iec_l, 'outer_l'], [iec_lb_main, 'outer_lb_main'],\n", + " [iec_lb_fill1, 'outer_lb_fill1'], [iec_lb_fill2, 'outer_lb_fill2'],\n", + " [iec_b, 'outer_b'], [iec_br_main, 'outer_br_main'],\n", + " [iec_br_fill1, 'outer_br_fill1'], [iec_br_fill2, 'outer_br_fill2']]\n", + "\n", + " # shared corner regions\n", + " gr_ul_t = -ul_t\n", + " gr_br_t = -br_t\n", + " gr_ru_t = -ru_t\n", + " gr_lb_t = -lb_t\n", + "\n", + " gr_corners = [[gr_ul, 'ul'], [gr_br, 'br'], [gr_ru, 'ru'], [gr_lb, 'lb'],\n", + " [gr_ul_t, 'ul_t'], [gr_br_t, 'br_t'], [gr_ru_t, 'ru_t'], [gr_lb_t, 'lb_t'],\n", + " [gr_ul_fill, 'ul_fill'], [gr_br_fill, 'br_fill'], [gr_ru_fill, 'ru_fill'], [gr_lb_fill, 'lb_fill']]\n", + "\n", + " # slabs that line up with rounded edges\n", + " slab_u = -gr_maxy & +gr_cyl_maxy & -gr_cyl_maxx & +gr_cyl_minx\n", + " #slab_l = +gr_minx & -gr_cyl_minx & -gr_cyl_maxy & +gr_cyl_miny\n", + " slab_b = +gr_miny & -gr_cyl_miny & -gr_cyl_maxx & +gr_cyl_minx\n", + " #slab_r = -gr_maxx & +gr_cyl_maxx & -gr_cyl_maxy & +gr_cyl_miny\n", + " slabs = [[slab_u, 'slab_u'], \n", + " #[slab_l, 'slab_l'], \n", + " [slab_b, 'slab_b']]#, \n", + " #[slab_r, 'slab_r']]\n", + "\n", + " # the rounded edges themselves\n", + " quarter_ul = -gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy\n", + " quarter_br = -gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny\n", + " quarter_lb = -gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny\n", + " quarter_ru = -gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy\n", + " quarters = [[quarter_ul, 'quarter_ul'], [quarter_br, 'quarter_br'], [quarter_ru, 'quarter_ru'], [quarter_lb, 'quarter_lb']]\n", + "\n", + " gr_reg = gr_corners + slabs + quarters\n", + "\n", + " extra_surf = openmc.ZCylinder(r=r_es, name=es_name)\n", + "\n", + "\n", + " return elem_bound, gr_sq_neg, gr_reg, inter_elem_channel, extra_surf " + ] + }, + { + "cell_type": "code", + "execution_count": 53, + "id": "71b4a322", + "metadata": {}, + "outputs": [], + "source": [ + "def zoneIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4):\n", + " \"\"\"Zone IA element. Specs found in Robertson, 1971 Fig 3.4 (p. 17)\"\"\"\n", + " elem_levels = [22.86, 419.10, 438.15, 445.135]\n", + " level_bounds = []\n", + " for level in elem_levels:\n", + " level_bounds.append(openmc.ZPlane(z0=level))\n", + " s1 = openmc.ZCylinder(r=4.953, name='ia_gr_round_1')\n", + " s2 = openmc.ZCylinder(r=1.71069, name='ia_fuel_hole')\n", + "\n", + " h = 12.66\n", + " theta = np.arctan(4.953 / h)\n", + " r2 = (1 / np.cos(theta))**2 - 1\n", + " s3 = openmc.ZCone(z0=h + elem_levels[2], r2=r2, name='cone_i')\n", + "\n", + " c1 = openmc.Cell(fill=fuel, region=(-s2), name='ia_fuel_inner_1')\n", + " c2 = openmc.Cell(fill=moder, region=(+s2 & -s1), name='ia_moderator_1')\n", + " c3 = openmc.Cell(fill=fuel, region=(+s1), name='ia_fuel_outer_1')\n", + " ia1 = (c1, c2, c3)\n", + "\n", + " # I-A main (lower 2)\n", + " s2 = s2.clone()\n", + " c4 = c1.clone(clone_materials=False)\n", + " c4.name = 'ia_fuel_inner_main'\n", + " c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg), name='ia_moderator_main_core')\n", + " iam = [c4, c5]\n", + " for (reg, name) in gr_corners:\n", + " iam.append(openmc.Cell(fill=moder, region=reg, name=f'ia_moderator_main_{name}'))\n", + " for (reg, name) in inter_elem_channel:\n", + " iam.append(openmc.Cell(fill=fuel, region=reg, name=f'ia_fuel_outer_main_{name}'))\n", + "\n", + " # I-A 2 (upper 1)\n", + " c7 = c1.clone(clone_materials=False)\n", + " c7.name = 'ia_fuel_inner_2'\n", + " c8 = c2.clone(clone_materials=False)\n", + " c8.name = 'ia_moderator_2'\n", + " c9 = c3.clone(clone_materials=False)\n", + " c9.name = 'ia_fuel_outer_2'\n", + " ia2 = (c7, c8, c9)\n", + "\n", + " # I-A 3 (upper 2)'\n", + " s2 = s2.clone()\n", + " s3 = s3.clone()\n", + " #elem_bound = elem_bound.clone()\n", + " c10 = c1.clone(clone_materials=False)\n", + " c10.name = 'ia_fuel_inner_3'\n", + " c11 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='ia_moderator_3')\n", + " c12 = openmc.Cell(fill=fuel, region=(+s3), name='ia_fuel_outer_3')\n", + " ia3 = (c10, c11, c12)\n", + "\n", + " # I-A 4 (upper 3)\n", + " s2 = s2.clone()\n", + " #elem_bound = elem_bound.clone()\n", + " c13 = openmc.Cell(fill=hast, region=(-s2), name='ia_hast')\n", + " c14 = openmc.Cell(fill=moder, region=(+s2 & -gr_round_4), name='ia_moderator_4')\n", + " c15 = openmc.Cell(fill=fuel, region=(+gr_round_4), name='ia_fuel_outer_4')\n", + " ia4 = (c13, c14, c15)\n", + "\n", + " elem_cells = [ia1, iam, ia2, ia3, ia4]\n", + " # universe_id=1\n", + " ia = openmc.Universe(name='zone_ia')\n", + " ia.add_cells(_bound_zone_cells(elem_cells, level_bounds))\n", + " return ia\n", + "\n", + "def zoneIIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4):\n", + " \"\"\"Zone IIA element. Specs found in Robertson, 1971 Fig 3.5 (p. 18)\"\"\"\n", + " elem_levels = [434.34, 436.88, 439.42, 441.96]\n", + " level_bounds = []\n", + " for level in elem_levels:\n", + " level_bounds.append(openmc.ZPlane(z0=level))\n", + " s1 = openmc.ZCylinder(r=3.302, name='iia_fuel_hole_main') # Hole with fuel salt - Fig 3.5, Roberton 1971 (3.27787 - p.47)\n", + " s2 = openmc.ZCylinder(r=0.635, name='iia_fuel_hole_2')\n", + " s3 = openmc.ZCylinder(r=3.65125, name='iia_gr_round_3')\n", + " h = 6.5\n", + " theta = np.arctan(3.65125 / h)\n", + " r2 = (1 / np.cos(theta))**2 - 1\n", + " s4 = openmc.ZCone(z0=h + elem_levels[2], r2=r2, name='cone_ii')\n", + "\n", + " # II-A main (lower 1)\n", + " c1 = openmc.Cell(fill=fuel, region=(-s1), name='iia_fuel_inner_main')\n", + " c2 = openmc.Cell(fill=moder, region=(+s1 & gr_sq_neg), name='iia_moderator_main_core')\n", + " iiam = [c1, c2]\n", + "\n", + " # II-A 2 (upper 1)\n", + " gr_sq_neg = gr_sq_neg.clone()\n", + " c4 = openmc.Cell(fill=fuel, region=(-s2), name='iia_fuel_inner_2')\n", + " c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg), name='iia_moderator_2_core')\n", + " iia2 = [c4, c5]\n", + "\n", + " for (reg, name) in gr_corners:\n", + " iiam.append(openmc.Cell(fill=moder, region=reg, name=f'iia_moderator_main_{name}'))\n", + " iia2.append(openmc.Cell(fill=moder, region=reg, name=f'iia_moderator_main_{name}'))\n", + " for (reg, name) in inter_elem_channel:\n", + " iiam.append(openmc.Cell(fill=fuel, region=reg, name=f'iia_fuel_outer_main_{name}'))\n", + " iia2.append(openmc.Cell(fill=fuel, region=reg, name=f'iia_fuel_outer_2_{name}'))\n", + "\n", + " # II-A 3 (upper 2)\n", + " s2 = s2.clone()\n", + " #elem_bound = elem_bound.clone()\n", + " c7 = c4.clone(clone_materials=False)\n", + " c7.name = 'iia_fuel_inner_3'\n", + " c8 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='iia_moderator_3')\n", + " c9 = openmc.Cell(fill=fuel, region=(+s3), name='iia_fuel_outer_3')\n", + " iia3 = (c7, c8, c9)\n", + "\n", + " # II-A 4 (upper 3)\n", + " #elem_bound = elem_bound.clone()\n", + " c10 = openmc.Cell(fill=moder, region=(-s4), name='iia_moderator_4')\n", + " c11 = openmc.Cell(fill=fuel, region=(+s4), name='iia_fuel_outer_4')\n", + " iia4 = (c10, c11)\n", + "\n", + " # II-A 5 (upper 4)\n", + " #elem_bound = elem_bound.clone()\n", + " c12 = openmc.Cell(fill=moder, region=(-gr_round_4), name='iia_moderator_5')\n", + " c13 = openmc.Cell(fill=fuel, region=(+gr_round_4), name='iia_fuel_outer_5')\n", + " iia5 = (c12, c13)\n", + "\n", + " elem_cells = [iiam, iia2, iia3, iia4, iia5]\n", + " # universe_id=2\n", + " iia = openmc.Universe(name='zone_iia')\n", + " iia.add_cells(_bound_zone_cells(elem_cells, level_bounds))\n", + " return iia\n", + "\n", + "def void_cell(elem_bound):\n", + " #elem_bound = elem_bound.clone()\n", + " #c1 = openmc.Cell(region=elem_bound, name='lattice_void')\n", + " c1 = openmc.Cell(name='lattice_void')\n", + " #universe_id=5\n", + " v = openmc.Universe(name='lattice_void')\n", + " v.add_cell(c1)\n", + " return v\n", + "\n", + "def graphite_triangles(elem_bound):\n", + " s1 = openmc.Plane(1.0, 1.0, 0.0, 0.0)\n", + " s2 = openmc.Plane(-1.0, 1.0, 0.0, 0.0)\n", + " s3 = openmc.Plane(1.0, -1.0, 0.0, 0.0)\n", + " s4 = openmc.Plane(-1.0, -1.0, 0.0, 0.0)\n", + " surfs = [(s4, 'bottom_left'),\n", + " (s1, 'top_right'),\n", + " (s2, 'top_left'),\n", + " (s3, 'bottom_right')]\n", + " univs = []\n", + " for i, (s, name) in enumerate(surfs):\n", + " #elem_bound = elem_bound.clone()\n", + " c1 = openmc.Cell(fill=moder, region=(-s))\n", + " #elem_bound = elem_bound.clone()\n", + " c2 = openmc.Cell(fill=fuel, region=(+s))\n", + " # universe_id = 6+i\n", + " gr_tri = openmc.Universe(name=f'{name}_triangle')\n", + " gr_tri.add_cells([c1, c2])\n", + " univs.append(gr_tri)\n", + " return univs" + ] + }, + { + "cell_type": "code", + "execution_count": 54, + "id": "07136110", + "metadata": {}, + "outputs": [], + "source": [ + "#elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4 = shared_elem_geometry('core', 5.08, 4.953, 0.46, 0.66802, 4.28498, 4.53898, 5.62102, 2.2225, 'gr_round_4')\n", + "#ia = zoneIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4)\n", + "#iia = zoneIIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4)\n", + "# tres, uno, dos, quatro\n", + "#bl, ur, ul, br = graphite_triangles(elem_bound)" + ] + }, + { + "cell_type": "code", + "execution_count": 55, + "id": "752c5160", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 55, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAA18AAANLCAYAAAC+ASfkAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/NK7nSAAAACXBIWXMAAA9hAAAPYQGoP6dpAABCRklEQVR4nO3de5zVdb3o//dCYECDUURhyOEieSkxU1KBneIl76K13Sa2d+KjpDxe8pK7LbvcXh4W6XGbO83Ik2Ee91b3CW1bWAm/Lbo7UoFgeUnUJEFkDkePzXjJAfTz+0NnZGAYmGHWZ92ezx7r8XB91/f7nc9isWZ68fms7xRSSikAAAAoqj6lHgAAAEAtEF8AAAAZiC8AAIAMxBcAAEAG4gsAACAD8QUAAJCB+AIAAMigb6kH0NveeeedeOmll2LQoEFRKBRKPRwAAKCKpZTitddeixEjRkSfPl3PbVVdfL300kvR2NhY6mEAAAA1ZOXKlbHbbrt1uU/VxdegQYMiIuKT314YfQd+oMSjAaBYUkrx+6alpR4GABtLKXZ78pZSjyKbt9etjyX3/ba9Q7pSdfHVttSw78APRL+BW/4DAKAypZSiz4DtSz0MADaWUvTtV3WZsUVb85EnF9wAAADIQHwBAABkIL4AAAAyEF8AAAAZiC8AAIAMxBcAAEAG4gsAACAD8QUAAJCB+AIAAMhAfAEAAGQgvgAAADIQXwAAABmILwAAgAzEFwAAQAbiCwAAIAPxBQAAkIH4AgAAyEB8AQAAZCC+AAAAMhBfAAAAGYgvAACADMQXAABABuILAAAgA/EFAACQgfgCAADIQHwBAABkIL4AAAAyEF8AAAAZiC8AAIAMxBcAAEAG4gsAACAD8QUAAJCB+AIAAMhAfAEAAGQgvgAAADIQXwAAABmILwAAgAzEFwAAQAbiCwAAIAPxBQAAkIH4AgAAyEB8AQAAZCC+AAAAMhBfAAAAGYgvAACADMQXAABABuILAAAgA/EFAACQgfgCAADIQHwBAABkIL4AAAAyEF8AAAAZiC8AAIAMehxfDz/8cEyZMiVGjBgRhUIhfvKTn7Q/tm7duviHf/iH2HfffWOHHXaIESNGxBlnnBEvvfRSl+e87bbbolAobHJ76623ejpMAACAstDj+HrjjTdiv/32i5tuummTx958881YsmRJXHbZZbFkyZK455574plnnomTTjppi+cdPHhwrF69usNtwIABPR0mAABAWejb0wOPO+64OO644zp9rL6+PubNm9dh24033hgHHXRQrFixIkaOHLnZ8xYKhRg+fHhPhwUAAFCWsn3mq7m5OQqFQuy4445d7vf666/HqFGjYrfddosTTzwxli5d2uX+ra2t0dLS0uEGAABQbrLE11tvvRWXXnppfPazn43Bgwdvdr+99947brvttrjvvvvizjvvjAEDBsRf/dVfxbPPPrvZY2bOnBn19fXtt8bGxmI8BQAAgG1S9Phat25dTJ06Nd555524+eabu9x3woQJ8Xd/93ex3377xSGHHBL//u//HnvuuWfceOONmz1mxowZ0dzc3H5buXJlbz8FAACAbdbjz3xtjXXr1sVnPvOZWL58efznf/5nl7NenenTp08ceOCBXc581dXVRV1d3bYOFQAAoKiKNvPVFl7PPvtszJ8/P3beeedunyOlFI899lg0NDQUYYQAAAD59Hjm6/XXX4/nnnuu/f7y5cvjscceiyFDhsSIESPib/7mb2LJkiXxs5/9LN5+++1oamqKiIghQ4ZE//79IyLijDPOiA9+8IMxc+bMiIi48sorY8KECbHHHntES0tLfOc734nHHnssvvvd727LcwQAACi5HsfX4sWL4/DDD2+/f/HFF0dExLRp0+KKK66I++67LyIiPvaxj3U47sEHH4zDDjssIiJWrFgRffq8P/n25z//Ob74xS9GU1NT1NfXx/777x8PP/xwHHTQQT0dJgAAQFkopJRSqQfRm1paWqK+vj6OnfV49Bs4qNTDAaBIUkqxdPXiUg8DgI2lFCN/f1OpR5HN+nXrY9GcR6K5uXmL17jI9nu+AAAAapn4AgAAyEB8AQAAZCC+AAAAMhBfAAAAGYgvAACADMQXAABABuILAAAgA/EFAACQgfgCAADIQHwBAABkIL4AAAAyEF8AAAAZiC8AAIAMxBcAAEAG4gsAACAD8QUAAJCB+AIAAMhAfAEAAGQgvgAAADIQXwAAABmILwAAgAzEFwAAQAbiCwAAIAPxBQAAkIH4AgAAyEB8AQAAZCC+AAAAMhBfAAAAGYgvAACADMQXAABABuILAAAgA/EFAACQgfgCAADIQHwBAABkIL4AAAAyEF8AAAAZiC8AAIAMxBcAAEAG4gsAACAD8QUAAJCB+AIAAMhAfAEA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WuX1KC9ej/Li9SgvXo/y4vUoL16P8lLOr0d9ff1W7eeCGwAAABmILwAAgAzEV4Wrq6uLyy+/POrq6ko9FMLrUW68HuXF61FevB7lxetRXrwe5aWaXo+qu+AGAABAOTLzBQAAkIH4AgAAyEB8AQAAZCC+AAAAMhBfAAAAGYivCvCNb3wjJk2aFNtvv33suOOOmzz+u9/9Lk4//fRobGyMgQMHxoc//OH4l3/5ly2e97DDDotCodDhNnXq1CI8g+qypdcjImLFihUxZcqU2GGHHWLo0KHx5S9/OdauXdvleVtbW+P888+PoUOHxg477BAnnXRSvPjii0V4BtVrwYIFm/ydbrstWrRos8edeeaZm+w/YcKEjCOvXqNHj97kz/bSSy/t8piUUlxxxRUxYsSIGDhwYBx22GHx5JNPZhpx9frTn/4UX/jCF2LMmDExcODAGDt2bFx++eVb/N7k/dF7br755hgzZkwMGDAgxo8fH//1X//V5f4PPfRQjB8/PgYMGBC77757zJo1K9NIq9vMmTPjwAMPjEGDBsWuu+4an/rUp2LZsmVdHrO5ny9PP/10plFXryuuuGKTP9fhw4d3eUwlvzf6lnoAbNnatWvj1FNPjYkTJ8att966yeOPPvpo7LLLLnHHHXdEY2NjPPLII/HFL34xtttuuzjvvPO6PPf06dPjqquuar8/cODAXh9/tdnS6/H222/HCSecELvsskv86le/ildeeSWmTZsWKaW48cYbN3veCy+8MH7605/GXXfdFTvvvHN85StfiRNPPDEeffTR2G677Yr5lKrGpEmTYvXq1R22XXbZZTF//vz4+Mc/3uWxxx57bMyePbv9fv/+/Ysyxlp01VVXxfTp09vvf+ADH+hy/2uvvTauv/76uO2222LPPfeMq6++Oo466qhYtmxZDBo0qNjDrVpPP/10vPPOO/H9738/PvShD8UTTzwR06dPjzfeeCOuu+66Lo/1/th2d999d1x44YVx8803x1/91V/F97///TjuuOPiqaeeipEjR26y//Lly+P444+P6dOnxx133BH/+3//7zjnnHNil112iVNOOaUEz6B6PPTQQ3HuuefGgQceGOvXr4+vfe1rcfTRR8dTTz0VO+ywQ5fHLlu2LAYPHtx+f5dddin2cGvCPvvsE/Pnz2+/39X/76n490aiYsyePTvV19dv1b7nnHNOOvzww7vcZ/LkyemCCy7Y9oHVqM29Hvfff3/q06dPWrVqVfu2O++8M9XV1aXm5uZOz/XnP/859evXL911113t21atWpX69OmTfvGLX/T62GvF2rVr06677pquuuqqLvebNm1aOvnkk/MMqsaMGjUqffvb397q/d955500fPjw9K1vfat921tvvZXq6+vTrFmzijDC2nbttdemMWPGdLmP90fvOOigg9LZZ5/dYdvee++dLr300k73/+pXv5r23nvvDtu+9KUvpQkTJhRtjLVqzZo1KSLSQw89tNl9HnzwwRQR6dVXX803sBpx+eWXp/3222+r96/094Zlh1Wqubk5hgwZssX9/vVf/zWGDh0a++yzT1xyySXx2muvZRhddVu4cGGMGzcuRowY0b7tmGOOidbW1nj00Uc7PebRRx+NdevWxdFHH92+bcSIETFu3Lh45JFHij7manXffffFyy+/HGeeeeYW912wYEHsuuuuseeee8b06dNjzZo1xR9gjbjmmmti5513jo997GPxjW98o8tlbsuXL4+mpqYO74W6urqYPHmy90IRbO3PCu+PbbN27dp49NFHO/y9jog4+uijN/v3euHChZvsf8wxx8TixYtj3bp1RRtrLWpubo6I2Kr3wv777x8NDQ1x5JFHxoMPPljsodWMZ599NkaMGBFjxoyJqVOnxvPPP7/ZfSv9vWHZYRVauHBh/Pu//3vMnTu3y/3+9m//NsaMGRPDhw+PJ554ImbMmBG/+93vYt68eZlGWp2amppi2LBhHbbttNNO0b9//2hqatrsMf3794+ddtqpw/Zhw4Zt9hi27NZbb41jjjkmGhsbu9zvuOOOi1NPPTVGjRoVy5cvj8suuyyOOOKIePTRR6Ouri7TaKvTBRdcEAcccEDstNNO8dvf/jZmzJgRy5cvjx/84Aed7t/2933j99CwYcPihRdeKPp4a8kf//jHuPHGG+Of//mfu9zP+2Pbvfzyy/H22293+ve6q58Lne2/fv36ePnll6OhoaFo460lKaW4+OKL4xOf+ESMGzdus/s1NDTELbfcEuPHj4/W1tb4n//zf8aRRx4ZCxYsiEMPPTTjiKvPwQcfHLfffnvsueee8X/+z/+Jq6++OiZNmhRPPvlk7LzzzpvsX+nvDTNfJdLZhws3vi1evLjb533yySfj5JNPjn/6p3+Ko446qst9p0+fHp/85Cdj3LhxMXXq1Pjxj38c8+fPjyVLlvT0aVWs3n49CoXCJttSSp1u70pPjqlGPXl9XnzxxfjlL38ZX/jCF7Z4/tNOOy1OOOGEGDduXEyZMiV+/vOfxzPPPLPFf8CoVd15PS666KKYPHlyfPSjH42zzjorZs2aFbfeemu88sorXX6Njf/eey9sXk/eHy+99FIce+yxceqpp8ZZZ53V5fm9P3pPd/9ed7Z/Z9vpufPOOy9+//vfx5133tnlfnvttVdMnz49DjjggJg4cWLcfPPNccIJJ2zx85Js2XHHHRennHJK7LvvvvHJT36y/XvLj370o80eU8nvDTNfJXLeeedt8cqCo0eP7tY5n3rqqTjiiCNi+vTp8fWvf73bYzrggAOiX79+8eyzz8YBBxzQ7eMrWW++HsOHD4/f/OY3Hba9+uqrsW7duk3+pWbDY9auXRuvvvpqh9mvNWvWxKRJk7bq61aznrw+s2fPjp133jlOOumkbn+9hoaGGDVqVDz77LPdPrYWbMv7pe0qec8991yn/6LZdoWrpqamDv96uWbNms2+f2pdd1+Pl156KQ4//PCYOHFi3HLLLd3+et4f3Td06NDYbrvtNpnl6urv9fDhwzvdv2/fvp2+d+i+888/P+677754+OGHY7fdduv28RMmTIg77rijCCOrbTvssEPsu+++m/0eU+nvDfFVIkOHDo2hQ4f22vmefPLJOOKII2LatGnxjW98o8fnWLduXdlP1xZDb74eEydOjG984xuxevXq9j/LBx54IOrq6mL8+PGdHjN+/Pjo169fzJs3Lz7zmc9ERMTq1avjiSeeiGuvvbZXxlXJuvv6pJRi9uzZccYZZ0S/fv26/fVeeeWVWLlyZU2+F7bGtrxfli5dGhGx2T/btqXQ8+bNi/333z8i3v28zEMPPRTXXHNNzwZc5brzeqxatSoOP/zwGD9+fMyePTv69On+Ahjvj+7r379/jB8/PubNmxef/vSn27fPmzcvTj755E6PmThxYvz0pz/tsO2BBx6Ij3/84z36vsb7Ukpx/vnnx7333hsLFiyIMWPG9Og8S5cu9T4ogtbW1vjDH/4QhxxySKePV/x7o2SX+mCrvfDCC2np0qXpyiuvTB/4wAfS0qVL09KlS9Nrr72WUkrpiSeeSLvsskv627/927R69er225o1a9rP8eKLL6a99tor/eY3v0kppfTcc8+lK6+8Mi1atCgtX748zZ07N+29995p//33T+vXry/J86wUW3o91q9fn8aNG5eOPPLItGTJkjR//vy02267pfPOO6/9HBu/HimldPbZZ6fddtstzZ8/Py1ZsiQdccQRab/99vN69MD8+fNTRKSnnnqq08f32muvdM8996SUUnrttdfSV77ylfTII4+k5cuXpwcffDBNnDgxffCDH0wtLS05h111HnnkkXT99denpUuXpueffz7dfffdacSIEemkk07qsN+Gr0dKKX3rW99K9fX16Z577kmPP/54Ov3001NDQ4PXYxutWrUqfehDH0pHHHFEevHFFzv8vNiQ90dx3HXXXalfv37p1ltvTU899VS68MIL0w477JD+9Kc/pZRSuvTSS9PnPve59v2ff/75tP3226eLLrooPfXUU+nWW29N/fr1Sz/+8Y9L9RSqxn/7b/8t1dfXpwULFnR4H7z55pvt+2z8enz7299O9957b3rmmWfSE088kS699NIUEWnOnDmleApV5Stf+UpasGBBev7559Ovf/3rdOKJJ6ZBgwZV7XtDfFWAadOmpYjY5Pbggw+mlN69RGdnj48aNar9HMuXL+9wzIoVK9Khhx6ahgwZkvr375/Gjh2bvvzlL6dXXnkl/xOsMFt6PVJ6N9BOOOGENHDgwDRkyJB03nnnpbfeeqv98Y1fj5RS+stf/pLOO++8NGTIkDRw4MB04oknphUrVmR8ZtXj9NNPT5MmTdrs4xGRZs+enVJK6c0330xHH3102mWXXVK/fv3SyJEj07Rp0/zZ94JHH300HXzwwam+vj4NGDAg7bXXXunyyy9Pb7zxRof9Nnw9Unr3cvOXX355Gj58eKqrq0uHHnpoevzxxzOPvvrMnj270+9dG/87rPdH8Xz3u99No0aNSv37908HHHBAh0ubT5s2LU2ePLnD/gsWLEj7779/6t+/fxo9enT63ve+l3nE1Wlz74MNvw9t/Hpcc801aezYsWnAgAFpp512Sp/4xCfS3Llz8w++Cp122mmpoaEh9evXL40YMSL99V//dXryySfbH6+290Yhpfc+oQYAAEDRuNohAABABuILAAAgA/EFAACQgfgCAADIQHwBAABkIL4AAAAyEF8AAAAZiC8AAIAMxBcAAEAG4gsAACAD8QUAAJDB/w9mg717WG2MRwAAAABJRU5ErkJggg==\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "#ia.plot(width=(20,20),\n", + "# basis='xy',\n", + "# colors=colormap,\n", + "# origin=(-4.,4., 300),\n", + "# color_by='material',\n", + "# pixels=(800,800))" + ] + }, + { + "cell_type": "code", + "execution_count": 57, + "id": "ee56bc53", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 57, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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AEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCDirqKisrIy8vL+bMmdPs9muuuSby8vLizjvvbFr3pz/9Ka677roYNmxYHH300TF48OC4/vrro76+vtX7WrhwYeTl5eUspaWlBzN8AACA5BW098B169bFsmXL4rTTTmt2+y9+8YtYu3ZtDBw4MGf9O++8E++88058//vfj1NPPTXeeuutuPbaa+Odd96Jn//8563e54gRI+LJJ59sup2fn9/e4QMAAHQJ7Yq6Xbt2xfTp02P58uWxePHifba//fbbMWvWrHj88cdj0qRJOdvKysrioYcearp94oknxq233hr/8A//EB999FEUFLQ8pIKCArNzAAAAn9Gul1/OnDkzJk2aFOPHj99n28cffxwzZsyI7373uzFixIgDOl99fX306dOn1aCLiNi0aVMMHDgwhg4dGtOmTYvXX3+91f0bGxujoaEhZwEAAOhK2hx1q1atipqamqisrGx2++233x4FBQVx/fXXH9D5du7cGf/6r/8a11xzTav7nX322fHTn/40Hn/88Vi+fHns2LEjxo4dGzt37mzxmMrKyiguLm5aBg0adEBjAgAASEWbXn65devWmD17djzxxBNRWFi4z/bq6uq46667oqamJvLy8vZ7voaGhpg0aVKceuqpsWDBglb3nThxYtN/jxw5MsaMGRMnnnhi3H///TF37txmj5k/f37OtoaGBmEHAAB0KW2aqauuro7a2tooLy+PgoKCKCgoiGeeeSbuvvvuKCgoiKeffjpqa2tj8ODBTdvfeuutmDdvXpxwwgk553rvvffi/PPPj2OOOSZWr14dPXr0aNPAi4qKYuTIkbFp06YW9+nVq1f06dMnZwEAAOhK2jRTV1FRERs3bsxZd8UVV8Tw4cPjxhtvjAEDBsR5552Xs/28886LGTNmxBVXXNG0rqGhIc4777zo1atXPPLII83O+u1PY2NjvPrqqzFu3Lg2HwsAANBVtCnqevfuHWVlZTnrioqKoqSkpGl9SUlJzvYe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DBgQO3fujKVLl8a2bdvioosuyjnuD3/4Qzz77LPx2GOPNXtfFRUVMWXKlJg1a1ZERNxwww1x4YUXxuDBg6O2tjYWL14cDQ0Ncfnll7flIQAAAHQp7fpIg5bk5+fHa6+9Fvfff3/U1dVFSUlJnHXWWfHcc8/FiBEjcvb9t3/7t/jCF74QEyZMaPZcmzdvjrq6uqbb27Zti0suuSTq6uriuOOOi9GjR8cLL7wQQ4YMOZQPAQAAICl5WZZlR3oQh0tDQ0MUFxdHfX2EP6+D7iHLIm45auGRHgYdKosF2aIjPYiD5nu1O+ga36vAgWtoiCgujqivr+/Q9/do1+fUAQAA0DmIOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgIQVHOkBAJ1Plh3pEQB0TV3t52te3pEeARAh6oC/kmURtxy18EgPA6ALyutiP1+zWJAtOtKDAMLLLwEAAJIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABJ2UFFXWVkZeXl5MWfOnKZ1CxcujOHDh0dRUVH07ds3xo8fH2vXrs057pxzzom8vLycZdq0afu9v6VLl8bQoUOjsLAwysvL47nnnjuY4QMAACSv3VG3bt26WLZsWZx22mk5608++eS45557YuPGjfH888/HCSecEBMmTIg//vGPOftdffXVsX379qblxz/+cav39+CDD8acOXPi5ptvjvXr18e4ceNi4sSJsWXLlvY+BAAAgOS1K+p27doV06dPj+XLl0ffvn1ztl166aUxfvz4+NKXvhQjRoyIJUuWRENDQ7z44os5+x199NFRWlratBQXF7d6n0uWLIkrr7wyrrrqqjjllFPizjvvjEGDBsW9997bnocAAADQJbQr6mbOnBmTJk2K8ePHt7rf7t27Y9myZVFcXBynn356zrYHHngg+vXrFyNGjIgbbrgh3nvvvVbPU11dHRMmTMhZP2HChFizZk2LxzU2NkZDQ0POAgAA0JUUtPWAVatWRU1NTaxbt67FfR599NGYNm1afPDBBzFgwICoqqqKfv36NW2fPn16DB06NEpLS+Oll16K+fPnx29/+9uoqqpq9nx1dXWxd+/e6N+/f876/v37x44dO1ocR2VlZSxatKiNjxAAACAdbYq6rVu3xuzZs+OJJ56IwsLCFvc799xzY8OGDVFXVxfLly+PqVOnxtq1a+P444+PiE/+nu5TZWVl8eUvfzlGjRoVNTU1ceaZZ7Z43ry8vJzbWZbts+6z5s+fH3Pnzm263dDQEIMGDdrv4wQAAEhFm15+WV1dHbW1tVFeXh4FBQVRUFAQzzzzTNx9991RUFAQe/fujYiIoqKiOOmkk2L06NGxYsWKKCgoiBUrVrR43jPPPDN69OgRmzZtanZ7v379Ij8/f59Zudra2n1m7z6rV69e0adPn5wFAACgK2lT1FVUVMTGjRtjw4YNTcuoUaNi+vTpsWHDhsjPz2/2uCzLorGxscXzvvzyy7Fnz54YMGBAs9t79uwZ5eXl+7w8s6qqKsaOHduWhwAAANCltOnll717946ysrKcdUVFRVFSUhJlZWXx/vvvx6233hqTJ0+OAQMGxM6dO2Pp0qWxbdu2uOiiiyIiYvPmzfHAAw/EN77xjejXr1+88sorMW/evDjjjDPiq1/9atN5KyoqYsqUKTFr1qyIiJg7d27MmDEjRo0aFWPGjIlly5bFli1b4tprrz3YrwEAAECy2vxGKa3Jz8+P1157Le6///6oq6uLkpKSOOuss+K5556LESNGRMQns26/+tWv4q677opdu3bFoEGDYtKkSbFgwYKcmb7NmzdHXV1d0+2LL744du7cGbfcckts3749ysrK4rHHHoshQ4YcyocAAACQlLwsy7IjPYjDpaGhIYqLi6O+PsKf10HzsizilqMWHulhQBtksSBL/52OXXukp2tce9CRGhoiiosj6uvrO/T9Pdr1OXUAAAB0DqIOAAAgYaIOAAAgYaIOAAAgYaIOAAAgYaIOAAAgYaIOAAAgYaIOAAAgYaIOAAAgYaIOAAAgYaIOAAAgYaIOAAAgYaIOAAAgYaIOAAAgYaIOAAAgYaIOAAAgYaIOAAAgYaIOAAAgYQVHegAAnVd2pAdAt+N7Lh15R3oAAE1EHUCzsliQLTrSg6AbycsL33OJyLKIW45aeKSHAdDEyy8BAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASdlBRV1lZGXl5eTFnzpymdQsXLozhw4dHUVFR9O3bN8aPHx9r165t2v6nP/0prrvuuhg2bFgcffTRMXjw4Lj++uujvr6+1ftauHBh5OXl5SylpaUHM3wAAIDkFbT3wHXr1sWyZcvitNNOy1l/8sknxz333BNf+tKX4sMPP4w77rgjJkyYEH/4wx/iuOOOi3feeSfeeeed+P73vx+nnnpqvPXWW3HttdfGO++8Ez//+c9bvc8RI0bEk08+2XQ7Pz+/vcMHAADoEtoV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tWpV1NTUxLp161rc59FHH41p06bFBx98EAMGDIiqqqro169fRETs2LEjevbsuc8MX//+/WPHjh3Nnq+uri727t0b/fv3P+BjIj75m79FixYd6EMDAABITptm6rZu3RqzZ8+OlStXRmFhYYv7nXvuubFhw4ZYs2ZNnH/++TF16tSora1t9dxZlkVeXl6r+/z19v0dM3/+/Kivr29atm7d2ur5AQAAUtOmqKuuro7a2tooLy+PgoKCKCgoiGeeeSbuvvvuKCgoaHqjk6KiojjppJNi9OjRsWLFiigoKIgVK1ZERERpaWns3r073n333Zxz19bW7jMT96l+/fpFfn7+PrNyrR0TEdGrV6/o06dPzgIAANCVtCnqKioqYuPGjbFhw4amZdSoUTF9+vTYsGFD5OfnN3tclmXR2NgYERHl5eXRo0ePqKqqatq+ffv2eOmll2Ls2LHNHt+zZ88oLy/POSYioqqqqsVjAAAAuoM2/U1d7969o6ysLGddUVFRlJSURFlZWbz//vtx6623xuTJk2PAgAGxc+fOWLp0aWzbti0uuuiiiIgoLi6OK6+8MubNmxclJSVx7LHHxg033BAjR47MeeOVioqKmDJlSsyaNSsiIubOnRszZsyIUaNGxZgxY2LZsmWxZcuWuPbaaw/2awAAAJCsNr9RSmvy8/Pjtddei/vvvz/q6uqipKQkzjrrrHjuuedixIgRTfvdcccdUVBQEFOnTo0PP/wwKioq4ic/+UnOTN/mzZujrq6u6fbFF18cO3fujFtuuSW2b98eZWVl8dhjj8WQIUMO5UMAAABISl6WZdmRHsTh0tDQEMXFxVFfH+HP66B5WRZxy1ELj/QwOoEsFmTePRfYl5+Tn/JzEvanoSGiuPiTz+ruyPf3aNfn1AEAANA5iDoAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEHVTUVVZWRl5eXsyZMyciIvbs2RM33nhjjBw5MoqKimLgwIFx2WWXxTvvvNN0zJtvvhl5eXnNLj/72c9avK+FCxfus39paenBDB8AACB57Y66devWxbJly+K0005rWvfBBx9ETU1N/Mu//EvU1NTEww8/HL///e9j8uTJTfsMGjQotm/fnrMsWrQoioqKYuLEia3e54gRI3KO27hxY3uHDwAA0CUUtOegXbt2xfTp02P58uWxePHipvXFxcVRVVWVs+8Pf/jD+Ju/+ZvYsmVLDB48OPLz8/eZYVu9enVcfPHFccwxx7Q+2IICs3MAAACf0a6ZupkzZ8akSZNi/Pjx+923vr4+8vLy4vOf/3yz26urq2PDhg1x5ZVX7vdcmzZtioEDB8bQoUNj2rRp8frrr7e6f2NjYzQ0NOQsAAAAXUmbo27VqlVRU1MTlZWV+933L3/5S9x0001x6aWXRp8+fZrdZ8WKFXHKKafE2LFjWz3X2WefHT/96U/j8ccfj+XLl8eOHTti7NixsXPnzhaPqaysjOLi4qZl0KBB+x0zAABAStoUdVu3bo3Zs2fHypUro7CwsNV99+zZE9OmTYuPP/44li5d2uw+H374Yfz7v//7Ac3STZw4Mb71rW/FyJEjY/z48fHLX/4yIiLuv//+Fo+ZP39+1NfXNy1bt27d7/0AAACkpE1/U1ddXR21tbVRXl7etG7v3r3x7LPPxj333BONjY2Rn58fe/bsialTp8Ybb7wRv/71r1ucpfv5z38eH3zwQVx22WVtHnhRUVGM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z54YMGBAs9t79uwZ5eXl+7w8s6qqKsaOHduWhwAAANCltGmmrnfv3lFWVpazrqioKEpKSqKsrCw++uij+Pa3vx01NTXx6KOPxt69e5tm14499tjo2bNnbN68OR544IH4xje+Ef369YtXXnkl5s2bF2eccUZ89atfbTpvRUVFTJkyJWbNmhUREXPnzo0ZM2bEqFGjYsyYMbFs2bLYsmVLXHvttQf7NQAAAEhWu979siXbtm2LRx55JCIivvKVr+Rse+qpp+Kcc86Jnj17xq9+9au46667YteuXTFo0KCYNGlSLFiwIPLz85v237x5c9TV1TXdvvjii2Pnzp1xyy23xPbt26OsrCwee+yxGDJkyAGPr1evXrFgwYJmX5LJ4ef56Fw8H52L56Nz8Xx0Lp6PzsXz0bl4PjqXw/V85GUd/f6aAAAAdJiO/Ys9AAAAOpSoAwAASJioAwAASJioAwAASFiXirpbb701xo4dG0cffXR8/vOfb3afLVu2xIUXXhhFRUXRr1+/uP7662P37t2tnrexsTGuu+666NevXxQVFcXkyZNj27ZtHfAIuq6nn3468vLyml3WrVvX4nHf+c539tl/9OjRh3HkXdcJJ5ywz9f2pptuavWYLMti4cKFMXDgwPjc5z4X55xzTrz88suHacRd15tvvhlXXnllDB06ND73uc/FiSeeGAsWLNjvzybXx6GzdOnSGDp0aBQWFkZ5eXk899xzre7/zDPPRHl5eRQWFsaXvvSl+NGPfnSYRtr1VVZWxllnnRW9e/eO448/Pv7zf/7P8bvf/a7VY1r6f8xrr712mEbddS1cuHCfr2tpaWmrx7g+Ok5z/+/Oy8uLmTNnNru/a+PQevbZZ+PCCy+MgQMHRl5eXvziF7/I2d7e35MeeuihOPXUU6NXr15x6qmnxurVq9s8ti4Vdbt3746LLroo/vEf/7HZ7Xv37o1JkybF+++/H88//3ysWrUqHnrooZg3b16r550zZ06sXr06Vq1aFc8//3zs2rUrLrjggti7d29HPIwuaezYsbF9+/ac5aqrrooTTjghRo0a1eqx559/fs5xjz322GEaddf36UeEfLr89//+31vd/3vf+14sWbIk7rnnnli3bl2UlpbGf/pP/ynee++9wzTirum1116Ljz/+OH784x/Hyy+/HHfccUf86Ec/in/+53/e77Guj4P34IMPxpw5c+Lmm2+O9evXx7hx42LixImxZcuWZvd/44034hvf+EaMGzcu1q9fH//8z/8c119/fTz00EOHeeRd0zPPPBMzZ86MF154IaqqquKjjz6KCRMmxPvvv7/fY3/3u9/lXA9f/vKXD8OIu74RI0bkfF03btzY4r6uj461bt26nOeiqqoqIiIuuuiiVo9zbRwa77//fpx++ulxzz33NLu9Pb8n/eY3v4mLL744ZsyYEb/97W9jxowZMXXq1Fi7dm3bBpd1Qffdd19WXFy8z/rHHnssO+qoo7K33367ad3//J//M+vVq1dWX1/f7Ln+/Oc/Zz169MhWrVrVtO7tt9/OjjrqqOz//J//c8jH3l3s3r07O/7447Nbbrml1f0uv/zy7Jvf/ObhGVQ3M2TIkOyOO+444P0//vjjrLS0NLvtttua1v3lL3/JiouLsx/96EcdMMLu7Xvf+142dOjQVvdxfRwaf/M3f5Nde+21OeuGDx+e3XTTTc3u/9/+23/Lhg8fnrPummuuyUaPHt1hY+zOamtrs4jInnnmmRb3eeqpp7KIyN59993DN7BuYsGCBdnpp59+wPu7Pg6v2bNnZyeeeGL28ccfN7vdtdFxIiJbvXp10+32/p40derU7Pzzz89Zd95552XTpk1r03i61Ezd/vzmN7+JsrKyGDhwYNO68847LxobG6O6urrZY6qrq2PPnj0xYcKEpnUDBw6MsrKyWLNmTYePuat65JFHoq6uLr7zne/sd9+nn346jj/++Dj55JPj6quvjtra2o4fYDdx++23R0lJSXzlK1+JW2+9tdWX+73xxhuxY8eOnGuhV69e8bWvfc210AHq6+vj2GOP3e9+ro+Ds3v37qiurs75vo6ImDBhQovf17/5zW/22f+8886L//f//l/s2bOnw8baXdXX10dEHND1cMYZZ8SAAQOioqIinnrqqY4eWrexadOmGDhwYAwdOjSmTZsWr7/+eov7uj4On927d8fKlSvjv/yX/xJ5eXmt7uva6Hjt/T2ppWumrb9bdauo27FjR/Tv3z9nXd++faNnz56xY8eOFo/p2bNn9O3bN2d9//79WzyG/VuxYkWcd955MWjQoFb3mzhxYjzwwAPx61//On7wgx/EunXr4utf/3o0NjYeppF2XbNnz45Vq1bFU089FbNmzYo777wz/ut//a8t7v/p9/tf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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "#iia.plot(width=(20,20),\n", + "# basis='xz',\n", + "# colors=colormap,\n", + "# origin=(0.,0.,435),\n", + "# color_by='material',\n", + "# pixels=(800,800))" + ] + }, + { + "cell_type": "code", + "execution_count": 58, + "id": "d17047bd", + "metadata": {}, + "outputs": [], + "source": [ + "def control_rod(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole):\n", + " s1 = openmc.ZCylinder(r=4.7625, name='control_rod')\n", + "\n", + " c1 = openmc.Cell(fill=moder, region=-s1, name='control_rod')\n", + " c2 = openmc.Cell(fill=fuel, region=(+s1 & -fuel_hole), name='cr_fuel_inner')\n", + " c3 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg), name='cr_moderator_core')\n", + "\n", + " #universe_id=3\n", + " cr = openmc.Universe(name='control_rod', cells=[c1, c2, c3])\n", + "\n", + " for (reg, name) in gr_corners:\n", + " cr.add_cell(openmc.Cell(fill=moder, region=reg, name=f'cr_moderator_{name}'))\n", + " for (reg, name) in inter_elem_channel:\n", + " cr.add_cell(openmc.Cell(fill=fuel, region=reg, name=f'cr_fuel_outer_{name}'))\n", + "\n", + " return cr\n", + "\n", + "def control_rod_channel(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole):\n", + " c1 = openmc.Cell(fill=fuel, region=(-fuel_hole), name='crc_fuel_inner')\n", + " c2 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg), name='crc_moderator_core')\n", + "\n", + " # universe_id=4\n", + " crc = openmc.Universe(name='control_rod_channel', cells=[c1, c2])\n", + "\n", + " for (reg, name) in gr_corners:\n", + " crc.add_cell(openmc.Cell(fill=moder, region=reg, name=f'crc_moderator_{name}'))\n", + " for (reg, name) in inter_elem_channel:\n", + " crc.add_cell(openmc.Cell(fill=fuel, region=reg, name=f'crc_fuel_outer_{name}'))\n", + "\n", + " return crc" + ] + }, + { + "cell_type": "code", + "execution_count": 66, + "id": "cea2d476", + "metadata": {}, + "outputs": [], + "source": [ + "#elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole = shared_elem_geometry('cr', 7.62, 7.23645, 0.99, 0.8, 5.8801, 6.505, 8.03646, 5.08, 'cr_fuel_hole')\n", + "\n", + "#cr = control_rod(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole)\n", + "#crc = control_rod_channel(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole)" + ] + }, + { + "cell_type": "code", + "execution_count": 67, + "id": "aa83205f", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 67, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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YxUBAACAvcgaJ9x2223xpS99adPHfvu3fztOnjy57a9JKcWDDz4Yp06diq9//evx8pe/PN73vvfFD/7gD/b9XIBN1v5Yzh96AwBkZV0BemMVAQAAgFnKvpzwrne9K+6+++5Lf/9d3/VdO37+H/7hH8Z73/veeOSRR+KOO+6I3//934+f+qmfiieffDKuu+66vp8LEBFrYcL/fukHIqUUsfrfcz8HAIBR1hVgYlYRAAAA6Fv2OOG6666Lm2++eazPTSnFQw89FO94xzvi9a9/fURE/Pmf/3ncdNNN8ZGPfCTuueeePp8KcOmP6/73Sz+Q9R0AAExgzHWFtU8VLNA+IQIAAAA5ZI8T3vOe98Tv/d7vxYEDB+KXf/mX49ixY/H85z9/y8/9whe+EM8880y8+tWvvvSx/fv3x1133RWf+cxnto0TLl68GBcvXrz09xcuXJjtbwJonigBAKAxEwQLa58uWqA+W0UIEUIEAAAA8sgaJ/zWb/1W/OiP/mi88IUvjL//+7+P48ePxxe+8IV4+OGHt/z8Z555JiIibrrppk0fv+mmm+JLX/rStl/nxIkT8eCDD87u4cBgiBIAAAZkq2AhQrRA8UQIAAAA1GDmccI73/nOXUOAxx57LO688864//77L33sh3/4h+OFL3xh/NIv/VK85z3viRe96EXb/vqu2/yHPymlqz426vjx4/HAAw9c+vsLFy7EgQMHdvutAAOXQpQAAECIFiiGCAEAAICazTxOeOtb3xpveMMbdvyc2267bcuPv+IVr4iIiNXV1S3jhJtvvjki1hYUbrnllksff/bZZ69aUxi1f//+2L9//25PB4gIawkAAIxpimjh8i8VL3C17eKDDSIEAAAAajbzOOHGG2+MG2+8capf+8QTT0REbAoPRt1+++1x8803xyc+8Yn4kR/5kYiI+MY3vhGf/vSn4z3vec90DwZYJ0oAAGAmtosWNuwSLwgX2rZTgCA+AAAAoGUzjxPG9eijj8bf/d3fxate9aq44YYb4rHHHov7778/fv7nfz5e/OIXX/q8l770pXHixIl43eteF13Xxdve9rZ497vfHQcPHoyDBw/Gu9/97rj22mvjV3/1V3P9VoDKiRIAAJirneKFMVYXLv9jRAwl2W31YIMAAQAAgKHKFifs378/PvrRj8aDDz4YFy9ejFtvvTXuvvvuePvb377p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e/fuePnll/u0J2zbti2mT59e0/MC9RnKeb948eI48sgj44ILLqj7+SZMmBDHHntsPPvss3UfCwzNcK7vp512WkRErF+/vmo4Yfz48RGxL9U5YcKEnu3btm3r93oPNF695/nmzZvjzDPPjGnTpsXXvva1up/P9RzyoaOjI0aMGFHxWxQDXYfHjx9fdf+RI0cOGEQEsnX11VfHvffeG48//ni88Y1vrPv40047Lb71rW81YWVAo40ZMyZOPvnkfv+t7VoOxfWrX/0qvv/978f3vve9uo91LYfiGOo98/6u8fXeZy9UOKGjoyM6Ojoa8ljTpk2LG2+8MbZs2dLzB798+fIYPXp0TJ06teoxU6dOjYMOOihWrFgRF110UUREbNmyJX7+85/HLbfc0pB1AX3Ve96naRqLFy+OSy+9NA466KC6n++ll16KTZs29fkfMtBcw7m+r1mzJiKi33N28uTJMX78+FixYkW87W1vi4h9s/Mee+yxuPnmm4e2YKBu9ZznL7zwQpx55pkxderUWLx4cbzudfVPonM9h3wYNWpUTJ06NVasWBHve9/7eravWLEi3vOe91Q9Ztq0afHv//7vfbYtX748TjnllCH9+x5orjRN4+qrr45ly5bFypUrY/LkyUN6nDVr1rhuQ0F0dnbGunXr4vTTT6/6c9dyKK7FixfHUUcdFeeee27dx7qWQ3EM9Z75tGnTYsWKFX3ajZcvX173L/DXf6evIDZu3Bhr166NjRs3xt69e2Pt2rWxdu3a2LVrV0REzJgxI0466aS45JJLYs2aNfHwww/HggUL4vLLL4/DDz88IvbdGD3hhBPiRz/6UUREHHHEEXHZZZfFddddFw8//HCsWbMmPvShD8XJJ58c73rXuzJ7rcB+jzzySGzYsCEuu+yyqj8/4YQTYtmyZRERsWvXrliwYEGsWrUqnnvuuVi5cmWcf/750dHR0efmKZAPq1atittuuy3Wrl0bGzZsiO985zvx0Y9+NC644IJ405ve1LNf7/M8SZKYP39+/M3f/E0sW7Ysfv7zn8fcuXPj0EMPjQ9+8INZvRSgH5s3b44zzjgjjjnmmLj11lvj17/+dWzdurUile16DsVx7bXXxr/8y7/E17/+9Vi3bl1cc801sXHjxrjiiisiIuL666+PSy+9tGf/K664In71q1/FtddeG+vWrYuvf/3rsWjRoliwYEFWLwEYwFVXXRXf+ta34tvf/nYcdthhPdft1157rWefA8/zL33pS3HPPffEs88+G08//XRcf/31sXTp0pg3b14WLwEYxIIFC+Kxxx6LDRs2xJNPPhnvf//7Y+fOnTFnzpyIcC2Hsvjd734Xixcvjjlz5sTIkX1/r9m1HIpn165dPZ+NR0Rs2LCh53PzWu+ZX3rppXH99df3fP+JT3wili9fHjfffHP84he/iJtvvjm+//3vx/z58+taW6GaE+rxuc99Lu68886e77uTH48++micccYZMWLEiLj//vvjyiuvjLe//e1xyCGHxAc/+MG49dZbe47Zs2dPPPPMM/Hqq6/2bLvtttti5MiRcdFFF8Vrr70WZ511Vtxxxx0xYsSI1r04oF+LFi2K6dOnx4knnlj1588880zs2LEjIiJGjBgRP/vZz+Ib3/hGbN++PSZMmBBnnnlm3H333XHYYYe1ctlADUaPHh1333133HDDDdHZ2RnHHntsXH755fHJT36yz369z/OIiE9+8pPx2muvxZVXXhkvv/xynHrqqbF8+XLnOeTQ8uXLY/369bF+/fqKSujuObURrudQJLNmzYqXXnopvvCFL8SWLVtiypQp8cADD8Sxxx4bEfvaCDdu3Niz/+TJk+OBBx6Ia665Jv7xH/8xJk6cGH//938ff/EXf5HVSwAG8JWvfCUiIs4444w+2xcvXhxz586NiMrzfPfu3bFgwYJ44YUX4pBDDom3vOUtcf/998e73/3uVi0bqMPzzz8fH/jAB+LFF1+MN7zhDXHaaafFD3/4Q9dyKJnvf//7sXHjxvjwhz9c8TPXciieH//4x3HmmWf2fH/ttddGRMScOXPijjvuqOme+caNG/s0mk6fPj2WLFkSn/nMZ+Kzn/1svPnNb4677747Tj311LrWlqS97/IBAAAAAAAAADRYacc6AAAAAAAAAAD5IJwAAAAAAAAAADSVcAIAAAAAAAAA0FTCCQAAAAAAAABAUwknAAAAAAAAAABNJZwAAAAAAAAAADSVcAIAAAAAAAAA0FTCCQAAAAAAAABAUwknAAAAAAAAAABNJZwAAAAAAAAAADSVcAIAAAAAAAAA0FTCCQAAAAAAAABAU/0/q+OPGEhw+xcAAAAASUVORK5CYII=\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "#cr.plot(width=(20,20),\n", + "# basis='xy',\n", + "# colors=colormap,\n", + "# origin=(0.,0.,440),\n", + "# color_by='material',\n", + "# pixels=(2000,2000))" + ] + }, + { + "cell_type": "code", + "execution_count": 68, + "id": "37a3fa2a", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 68, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "#crc.plot(width=(20,20),\n", + "# basis='xy',\n", + "# colors=colormap,\n", + "# origin=(0.,0.,440),\n", + "# color_by='material',\n", + "# pixels=(400,400))" + ] + }, + { + "cell_type": "code", + "execution_count": 69, + "id": "7f985e3a", + "metadata": {}, + "outputs": [], + "source": [ + "def shared_root_geometry():\n", + " cr_boundary = openmc.model.rectangular_prism(15.24*2, 15.24*2)\n", + " \n", + " core_base = openmc.ZPlane(z0=0.0, name='core_base')\n", + " core_top = openmc.ZPlane(z0=449.58, name='core_top')\n", + " \n", + " s1 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=208.28, r2=222.71, name='base_octader')\n", + " s2 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=218.44, r2=215.53, name='smaller_octader')\n", + " s3 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=228.60, r2=193.97, name='smallest_octader')\n", + " \n", + " oct1 = list((-s1).get_surfaces().values())\n", + " oct2 = list((-s2).get_surfaces().values())\n", + " oct3 = list((-s3).get_surfaces().values())\n", + " zone_i_octas = (oct1, oct2, oct3)\n", + " \n", + " zone_ii_boundary = openmc.ZCylinder(r=256.032, name='iib_boundary')\n", + " annulus_boundary = openmc.ZCylinder(r=261.112, name='annulus_boundary')\n", + " lower_plenum_boundary = openmc.ZPlane(z0=-7.62, name='lower_plenum_boundary')\n", + "\n", + " zone_bounds = (cr_boundary, zone_i_octas, zone_ii_boundary)\n", + " \n", + " core_bounds = (annulus_boundary, lower_plenum_boundary, core_base, core_top)\n", + " \n", + " radial_reflector_boundary = openmc.ZCylinder(r=338.328, name='radial_reflector_boundary') \n", + " bottom_reflector_boundary = openmc.ZPlane(z0=-76.2, name='bottom_axial_reflector_boundary')\n", + " top_reflector_boundary = openmc.ZPlane(z0=525.78, name='top_axial_reflector_boundary') \n", + " \n", + " reflector_bounds = (radial_reflector_boundary,\n", + " bottom_reflector_boundary,\n", + " top_reflector_boundary)\n", + " \n", + " radial_vessel_boundary = openmc.ZCylinder(r=343.408, name='radial_vessel_wall', boundary_type='vacuum')\n", + " bottom_vessel_boundary = openmc.ZPlane(z0=-81.28, name='bottom_vessel_wall', boundary_type='vacuum')\n", + " top_vessel_boundary = openmc.ZPlane(z0=530.86, name='top_vessel_wall', boundary_type='vacuum')\n", + " \n", + " vessel_bounds = (radial_vessel_boundary,\n", + " bottom_vessel_boundary,\n", + " top_vessel_boundary)\n", + " \n", + " return zone_bounds, core_bounds, reflector_bounds, vessel_bounds\n", + "\n", + "def cr_lattice(cr_boundary, core_base, core_top):\n", + " elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole = shared_elem_geometry('cr', 7.62, 7.23645, 0.99, 0.8, 5.8801, 6.505, 8.03646, 5.08, 'cr_fuel_hole')\n", + " f = control_rod(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole)\n", + " elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole = shared_elem_geometry('cr', 7.62, 7.23645, 0.99, 0.8, 5.8801, 6.505, 8.03646, 5.08, 'cr_fuel_hole')\n", + " e = control_rod_channel(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole)\n", + " \n", + " cr = openmc.RectLattice()\n", + " cr.pitch = np.array([15.24, 15.24])\n", + " N = 2 / 2\n", + " cr.lower_left = -1 * cr.pitch * N\n", + " cr.universes = [[f, e],\n", + " [e, f]]\n", + " \n", + " c1 = openmc.Cell(fill=cr, region=(+core_base & -core_top & cr_boundary), name='cr_lattice')\n", + " \n", + " return c1\n", + "\n", + "def main_lattice(zone_i_octas, cr_boundary, core_base, core_top):\n", + " elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4 = shared_elem_geometry('core', 5.08, 4.953, 0.46, 0.66802, 4.28498, 4.53898, 5.62102, 2.2225, 'gr_round_4')\n", + " l = zoneIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4)\n", + " elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4 = shared_elem_geometry('core', 5.08, 4.953, 0.46, 0.66802, 4.28498, 4.53898, 5.62102, 2.2225, 'gr_round_4')\n", + " z = zoneIIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4)\n", + " v = void_cell(elem_bound)\n", + " # tres, uno, dos, quatro\n", + " t, u, d, q = graphite_triangles(elem_bound) \n", + " \n", + " main = openmc.RectLattice()\n", + " main.pitch = np.array([10.16, 10.16])\n", + " N = 45 / 2\n", + " main.lower_left = -1 * main.pitch * N\n", + " main.universes = [[v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, d, z, z, z, z, z, z, z, z, z, u, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, v, v, v, v, v, d, z, z, z, z, l, l, l, l, l, l, l, l, l, z, z, z, z, u, v, v, v, v, v, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, v, v, v, d, z, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, z, u, v, v, v, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v],\n", + " [v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v],\n", + " [v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v],\n", + " [v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v],\n", + " [v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v],\n", + " [v, v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v, v],\n", + " [v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v],\n", + " [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v],\n", + " [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v],\n", + " [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v],\n", + " [d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u],\n", + " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", + " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", + " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", + " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, v, v, v, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", + " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, v, v, v, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", + " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, v, v, v, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", + " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", + " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", + " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", + " [t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q],\n", + " [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v],\n", + " [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v],\n", + " [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v],\n", + " [v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v],\n", + " [v, v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v, v],\n", + " [v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v],\n", + " [v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v],\n", + " [v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v],\n", + " [v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v],\n", + " [v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, v, v, v, t, z, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, z, q, v, v, v, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, v, v, v, v, v, t, z, z, z, z, l, l, l, l, l, l, l, l, l, z, z, z, z, q, v, v, v, v, v, v, v, v, v, v, v, v, v],\n", + " [v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, t, z, z, z, z, z, z, z, z, z, q, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v]]\n", + " \n", + " oct1_maxy, oct1_miny, oct1_maxx, oct1_minx, oct1_ur, oct1_br, oct1_bl, oct1_ul = zone_i_octas[0]\n", + " oct2_maxy, oct2_miny, oct2_maxx, oct2_minx, oct2_ur, oct2_br, oct2_bl, oct2_ul = zone_i_octas[1]\n", + " oct3_maxy, oct3_miny, oct3_maxx, oct3_minx, oct3_ur, oct3_br, oct3_bl, oct3_ul = zone_i_octas[2]\n", + " cb_minx, cb_maxx, cb_miny, cb_maxy = list(cr_boundary.get_surfaces().values())\n", + "\n", + " c1_ur = (-oct3_ur & +oct2_ur & -oct2_maxx & -oct2_maxy)\n", + " c1_ul = (+oct3_ul & -oct2_ul & +oct2_minx & -oct2_maxy)\n", + " c1_bl = (+oct3_bl & -oct2_bl & +oct2_minx & +oct2_miny)\n", + " c1_br = (-oct3_br & +oct2_br & -oct2_maxx & +oct2_miny)\n", + " c1 = [[c1_ur, 'smaller_octader_ur'],\n", + " [c1_ul, 'smaller_octader_ul'],\n", + " [c1_bl, 'smaller_octader_bl'],\n", + " [c1_br, 'smaller_octader_br']]\n", + "\n", + " c2_r = (+cb_maxx & +cb_miny & -cb_maxy & -oct3_maxx)\n", + " c2_ur = (+cb_maxx & +cb_maxy & -oct3_maxx & -oct3_maxy & +oct3_ur)\n", + " c2_u = (+cb_maxy & +cb_minx & -cb_maxx & -oct3_maxy)\n", + " c2_ul = (-cb_minx & +cb_maxy & +oct3_minx & -oct3_maxy & -oct3_ul)\n", + " c2_l = (-cb_minx & +cb_miny & -cb_maxy & +oct3_minx)\n", + " c2_bl = (-cb_minx & -cb_miny & +oct3_minx & +oct3_miny & -oct3_bl)\n", + " c2_b = (-cb_miny & +cb_minx & -cb_maxx & +oct3_miny)\n", + " c2_br = (+cb_maxx & -cb_miny & -oct3_maxx & +oct3_miny & +oct3_br)\n", + " c2 = [[c2_r, 'smallest_octader_r'],\n", + " [c2_ur, 'smallest_octader_ur'],\n", + " [c2_u, 'smallest_octader_u'],\n", + " [c2_ul, 'smallest_octader_ul'],\n", + " [c2_l, 'smallest_octader_l'],\n", + " [c2_bl, 'smallest_octader_bl'],\n", + " [c2_b, 'smallest_octader_b'],\n", + " [c2_br, 'smallest_octader_br']]\n", + "\n", + " c3_ur = (-oct2_ur & +oct1_ur & -oct1_maxx & -oct1_maxy)\n", + " c3_ul = (+oct2_ul & -oct1_ul & +oct1_minx & -oct1_maxy)\n", + " c3_bl = (+oct2_bl & -oct1_bl & +oct1_minx & +oct1_miny)\n", + " c3_br = (-oct2_br & +oct1_br & -oct1_maxx & +oct1_miny)\n", + " c3 = [[c3_ur, 'base_octader_ur'],\n", + " [c3_ul, 'base_octader_ul'],\n", + " [c3_bl, 'base_octader_bl'],\n", + " [c3_br, 'base_octader_br']]\n", + "\n", + " regs = c1 + c2 + c3\n", + " main_cells = []\n", + " for reg, name in regs:\n", + " main_cells.append(openmc.Cell(fill=main, region=(reg & +core_base & -core_top), name=name))\n", + "\n", + " return main_cells\n", + "\n", + "def zoneIIB(zone_i_octas, zone_ii_boundary, annulus_boundary, core_base, core_top):\n", + " # Large elements\n", + " large_angular_width = 3.538\n", + " large_half_w = large_angular_width / 2\n", + " large_positions = np.linspace(0, 315, 8)\n", + " r_outer = 256.032\n", + " r_big1 = 229.6\n", + " r_big2 = 223.6\n", + " rb_1 = (r_big1, r_outer)\n", + " rb_2 = (r_big2, r_outer)\n", + " big_radii = [rb_1, rb_2] * 4\n", + " small_radii = (207.28, r_outer)\n", + " \n", + " r_hole = 3.0875\n", + " hole_args = ({'x0': 242.679, 'y0': 0.0, 'r': r_hole},\n", + " {'x0': 171.60, 'y0': 171.60, 'r': r_hole},\n", + " {'x0': 0.0, 'y0': 242.679, 'r': r_hole},\n", + " {'x0': -171.60, 'y0': 171.60, 'r': r_hole},\n", + " {'x0': -242.679, 'y0': 0.0, 'r': r_hole},\n", + " {'x0': -171.60, 'y0': -171.60, 'r': r_hole},\n", + " {'x0': 0.0, 'y0': -242.697, 'r': r_hole},\n", + " {'x0': 171.60, 'y0': -171.60, 'r': r_hole})\n", + " \n", + " # Small elements\n", + " small_angular_width = 0.96\n", + " adjacent_angular_offset = 0.675 #27/40\n", + " small_elems_per_octant = 25\n", + " \n", + " elem_cells = []\n", + " for i, pos in enumerate(large_positions):\n", + " pos = np.round(pos, 3)\n", + " r1_big, r2_big = big_radii[i]\n", + " t1_big = pos - large_half_w\n", + " t2_big = pos + large_half_w\n", + " s1 = openmc.model.CylinderSector(r1_big, r2_big, t1_big, t2_big)\n", + " s2 = openmc.ZCylinder(**hole_args[i])\n", + " elem_cells.append(openmc.Cell(fill=moder, region=(-s1 & +s2), name=f'iib_large_element_{pos}'))\n", + " elem_cells.append(openmc.Cell(fill=fuel, region=(-s2),\n", + " name=f'iib_large_element_fuel_hole_{pos}'))\n", + " t1_small = t2_big + adjacent_angular_offset\n", + " r1_small, r2_small = small_radii\n", + " \n", + " # Inter element fuel channel\n", + " s3 = openmc.model.CylinderSector(r1_small, r2_small, t2_big, t1_small)\n", + " cpos = t2_big + (adjacent_angular_offset / 2)\n", + " cpos = np.round(cpos, 3)\n", + " elem_cells.append(openmc.Cell(fill=fuel, region=-s3,\n", + " name=f'inter_element_fuel_channel_{cpos}'))\n", + " \n", + " t4a = t1_big - adjacent_angular_offset\n", + " s4 = openmc.model.CylinderSector(r1_small, r1_big, t4a, t1_small)\n", + " elem_cells.append(openmc.Cell(fill=fuel, region=-s4,\n", + " name=f'inter_element_fuel_channel_{pos}'))\n", + " \n", + " for i in range(0, small_elems_per_octant):\n", + " t2_small = t1_small + small_angular_width\n", + " \n", + " # reflector element\n", + " s5 = openmc.model.CylinderSector(r1_small, r2_small, t1_small, t2_small)\n", + " pos = t2_small - (small_angular_width / 2)\n", + " pos = np.round(pos, 3)\n", + " elem_cells.append(openmc.Cell(fill=moder, region=-s5, name=f'iib_small_element_{pos}'))\n", + " t1_small = t2_small + adjacent_angular_offset\n", + " \n", + " # inter-element fuel channel\n", + " s6 = openmc.model.CylinderSector(r1_small, r2_small, t2_small, t1_small)\n", + " cpos = t2_small + (adjacent_angular_offset/2)\n", + " cpos = np.round(cpos, 3)\n", + " elem_cells.append(openmc.Cell(fill=fuel, region=-s6,\n", + " name=f'inter_element_fuel_channel_{cpos}'))\n", + " \n", + "\n", + " #universe_id=10\n", + " iib = openmc.Universe(name='zone_iib')\n", + " iib.add_cells(elem_cells)\n", + " \n", + " #universe_id=10\n", + " iib = openmc.Universe(name='zone_iib')\n", + " iib.add_cells(elem_cells)\n", + "\n", + " oct1_maxy, oct1_miny, oct1_maxx, oct1_minx, oct1_ur, oct1_br, oct1_bl, oct1_ul = zone_i_octas[0]\n", + " oct2_maxy, oct2_miny, oct2_maxx, oct2_minx, oct2_ur, oct2_br, oct2_bl, oct2_ul = zone_i_octas[1]\n", + " oct3_maxy, oct3_miny, oct3_maxx, oct3_minx, oct3_ur, oct3_br, oct3_bl, oct3_ul = zone_i_octas[2]\n", + "\n", + " cap_r =(+oct3_maxx & -zone_ii_boundary)\n", + "\n", + " c23_urr = (+oct2_maxx & -oct3_maxx & -oct3_ur & +oct2_ur)\n", + " c12_urr = (+oct1_maxx & -oct3_maxx & -oct2_ur & +oct1_ur)\n", + " cap_ur = (-oct3_maxy & -oct3_maxx & -oct1_ur & -zone_ii_boundary)\n", + " c12_uru = (+oct1_maxy & -oct3_maxy & -oct2_ur & +oct1_ur)\n", + " c23_uru = (+oct2_maxy & -oct3_maxy & -oct3_ur & +oct2_ur)\n", + "\n", + " cap_u = (+oct3_maxy & -zone_ii_boundary)\n", + "\n", + " c23_ulu = (+oct2_maxy & -oct3_maxy & +oct3_ul & -oct2_ul)\n", + " c12_ulu = (+oct1_maxy & -oct3_maxy & +oct2_ul & -oct1_ul)\n", + " cap_ul = (-oct3_maxy & +oct3_minx & +oct1_ul & -zone_ii_boundary)\n", + " c12_ull = (-oct1_minx & +oct3_minx & +oct2_ul & -oct1_ul)\n", + " c23_ull = (-oct2_minx & +oct3_minx & +oct3_ul & -oct2_ul)\n", + "\n", + " cap_l = (-oct3_minx & -zone_ii_boundary)\n", + "\n", + " c23_bll = (-oct2_minx & +oct3_minx & +oct3_bl & -oct2_bl)\n", + " c12_bll = (-oct1_minx & +oct3_minx & +oct2_bl & -oct1_bl)\n", + " cap_bl = (+oct3_minx & +oct3_miny & +oct1_bl & -zone_ii_boundary)\n", + " c12_blb = (-oct1_miny & +oct3_miny & +oct2_bl & -oct1_bl)\n", + " c23_blb = (-oct2_miny & +oct3_miny & +oct3_bl & -oct2_bl)\n", + "\n", + " cap_b = (-oct3_miny & -zone_ii_boundary)\n", + "\n", + " c23_brb = (-oct2_miny & +oct3_miny & -oct3_br & +oct2_br)\n", + " c12_brb = (-oct1_miny & +oct3_miny & -oct2_br & +oct1_br)\n", + " cap_rb = (-oct3_maxx & +oct3_miny & -oct1_br & -zone_ii_boundary)\n", + " c12_brr = (+oct1_maxx & -oct3_maxx & -oct2_br & +oct1_br)\n", + " c23_brr = (+oct2_maxx & -oct3_maxx & -oct3_br & +oct2_br)\n", + "\n", + " regs = ([cap_r, 'cap_r'], [c23_urr, '23_urr'], [c12_urr, '12_urr'],\n", + " [cap_ur, 'cap_ur'], [c12_uru, '12_uru'], [c23_uru, '23_uru'],\n", + " [cap_u, 'cap_u'], [c23_ulu, '23_ulu'], [c12_ulu, '12_ulu'],\n", + " [cap_ul, 'cap_ul'], [c12_ull, '12_ull'], [c23_ull, '23_ull'],\n", + " [cap_l, 'cap_l'], [c23_bll, '23_bll'], [c12_bll, '12_bll'],\n", + " [cap_bl, 'cap_bl'], [c12_blb, '12_blb'], [c23_blb, '23_blb'],\n", + " [cap_b, 'cap_b'], [c23_brb, '23_brb'], [c12_brb, '12_brb'],\n", + " [cap_rb, 'cap_rb'], [c12_brr, '12_brr'], [c23_brr, '23_brr'])\n", + "\n", + " iib_cells = []\n", + " for reg, name in regs:\n", + " iib_cells.append(openmc.Cell(fill=iib, region=(reg & +core_base & -core_top), name=f'zone_iib_{name}'))\n", + "\n", + " return iib_cells\n", + "\n", + "\n", + "def annulus(zone_ii_boundary, annulus_boundary, core_base, core_top):\n", + " annulus_reg = +zone_ii_boundary & -annulus_boundary & +core_base & -core_top\n", + " c1 = openmc.Cell(fill=fuel, region=annulus_reg, name='annulus')\n", + " \n", + " return c1\n", + "\n", + "def lower_plenum(core_base, lower_plenum_boundary, annulus_boundary):\n", + " lower_plenum_reg = -core_base & +lower_plenum_boundary & -annulus_boundary \n", + " c1 = openmc.Cell(fill=fuel, region=lower_plenum_reg, name='lower_plenum')\n", + "\n", + " return c1\n", + "\n", + "def reflectors(annulus_boundary, \n", + " radial_reflector_boundary, \n", + " lower_plenum_boundary,\n", + " bottom_reflector_boundary, \n", + " core_top, \n", + " top_reflector_boundary):\n", + " \n", + " radial_reflector_reg = +annulus_boundary & -radial_reflector_boundary & +bottom_reflector_boundary & -top_reflector_boundary\n", + " bottom_reflector_reg = -annulus_boundary & -lower_plenum_boundary & +bottom_reflector_boundary\n", + " top_reflector_reg = -annulus_boundary & +core_top & -top_reflector_boundary\n", + "\n", + " c1 = openmc.Cell(fill=moder, region=radial_reflector_reg, name='radial_reflector')\n", + " c2 = openmc.Cell(fill=moder, region=bottom_reflector_reg, name='bottom_axial_reflector')\n", + " c3 = openmc.Cell(fill=moder, region=top_reflector_reg, name='top_axial_reflector')\n", + " \n", + " return c1, c2, c3\n", + "\n", + "def vessel(radial_reflector_boundary,\n", + " radial_vessel_boundary,\n", + " bottom_vessel_boundary,\n", + " top_vessel_boundary,\n", + " top_reflector_boundary,\n", + " bottom_reflector_boundary):\n", + " radial_vessel_reg = +radial_reflector_boundary & -radial_vessel_boundary & -top_vessel_boundary & +bottom_vessel_boundary\n", + " bottom_vessel_reg = -radial_reflector_boundary & -bottom_reflector_boundary & +bottom_vessel_boundary\n", + " top_vessel_reg = -radial_reflector_boundary & -top_vessel_boundary & +top_reflector_boundary\n", + "\n", + " \n", + " c1 = openmc.Cell(fill=hast, region=radial_vessel_reg, name='radial_vessel_wall')\n", + " c2 = openmc.Cell(fill=hast, region=bottom_vessel_reg, name='bottom_vessel_wall')\n", + " c3 = openmc.Cell(fill=hast, region=top_vessel_reg, name='top_vessel_wall')\n", + " \n", + " return c1, c2, c3" + ] + }, + { + "cell_type": "code", + "execution_count": 70, + "id": "cdf61881", + "metadata": {}, + "outputs": [], + "source": [ + "zone_bounds, core_bounds, reflector_bounds, vessel_bounds = shared_root_geometry()\n", + "\n", + "cr_boundary, zone_i_octas, zone_ii_boundary = zone_bounds\n", + "annulus_boundary, lower_plenum_boundary, core_base, core_top = core_bounds\n", + "radial_reflector_boundary, bottom_reflector_boundary, top_reflector_boundary = reflector_bounds\n", + "radial_vessel_boundary, bottom_vessel_boundary, top_vessel_boundary= vessel_bounds\n", + "\n", + "#main1, main2, main3 = main_lattice(zone_i_boundary, zone_i_octas, cr_boundary, core_base, core_top)\n", + "main = main_lattice(zone_i_octas, cr_boundary, core_base, core_top)\n", + "cr = cr_lattice(cr_boundary, core_base, core_top)\n", + "iib = zoneIIB(zone_i_octas, zone_ii_boundary, annulus_boundary, core_base, core_top)\n", + "a = annulus(zone_ii_boundary, annulus_boundary, core_base, core_top)\n", + "lp = lower_plenum(core_base, lower_plenum_boundary, annulus_boundary)\n", + "\n", + "rr, rb, rt = reflectors(annulus_boundary, \n", + " radial_reflector_boundary, \n", + " lower_plenum_boundary,\n", + " bottom_reflector_boundary, \n", + " core_top, \n", + " top_reflector_boundary)\n", + "\n", + "vr, vb, vt = vessel(radial_reflector_boundary,\n", + " radial_vessel_boundary,\n", + " bottom_vessel_boundary,\n", + " top_vessel_boundary,\n", + " top_reflector_boundary,\n", + " bottom_reflector_boundary)\n", + "\n", + "testuniverse = openmc.Universe()\n", + "testuniverse.add_cells([cr, lp, a, rr, rb, rt, vr, vb, vt])\n", + "testuniverse.add_cells(main)\n", + "testuniverse.add_cells(iib)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 74, + "id": "2a283441", + "metadata": { + "scrolled": false + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 74, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABD8AAAQZCAYAAADCPKFlAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/NK7nSAAAACXBIWXMAAA9hAAAPYQGoP6dpAABUY0lEQVR4nO3deZBd5X3g72+DpEYQ1CyypNYgJJlMhFliiMiANMZiscVmSIzDYtewlIEyBoHZiiDs/NRyiggoFlXCxARHlk1hR2RGyMMUJEjECMKwjMAiw6rgIJAQUmlgoBuwabGc3x9EbbXUe997zznveZ6qrlLfvrd1bt973vveT7/ndFOWZVkAAAAAJGqnvDcAAAAAoJ7EDwAAACBp4gcAAACQNPEDAAAASJr4AQAAACRN/AAAAACSJn4AAAAASRM/AAAAgKSJHwAAAEDSxA8AAAAgaXWNH4888kicfPLJMXHixGhqaoqf//zn3b6eZVm0tbXFxIkTY/To0XHUUUfF888/3+/3Xbp0aRxwwAHR3NwcBxxwQCxbtqxO9wAAAAAou7rGj/fffz8+//nPx2233dbj12+88ca45ZZb4rbbbotVq1bFhAkT4stf/nK8++67vX7Pxx9/PM4444w466yz4l/+5V/irLPOitNPPz2efPLJet0NAAAAoMSasizLGvIfNTXFsmXL4o//+I8j4tNVHxMnTozLLrss/vRP/zQiIjo7O2P8+PFxww03xLe+9a0ev88ZZ5wRHR0d8Q//8A9dlx1//PGx5557xt/93d/V/X4AAAAA5TIir/947dq1sWnTppg9e3bXZc3NzTFr1qx47LHHeo0fjz/+eFx++eXdLjvuuONi4cKFvf5fnZ2d0dnZ2fX5J598Ev/v//2/2HvvvaOpqWl4dwQAAAAYkizL4t13342JEyfGTjvV7+CU3OLHpk2bIiJi/Pjx3S4fP358vPbaa33erqfbbP1+PVmwYEHMnz9/GFsLAAAA1Mv69etjn332qdv3zy1+bLX9yossy/pdjTHY28ydOzeuuOKKrs/b29tj3333jcvj8miO5iFsNUB65rZfX5Pvs6Dlmpp8H9JVq+darXnu0p+iPncByqyjI2LSpIjdd9+9rv9PbvFjwoQJEfHpSo7W1tauyzdv3rzDyo7tb7f9Ko/+btPc3BzNzTtGjuZojl1il8FuOkCSbm1pi3lZ27C/z4Ls+pjfNPzvQ7rGjMl7C3pmTkBfajE+AtC7ep+Soq5/7aUvU6dOjQkTJsSKFSu6LtuyZUs8/PDDMXPmzF5vN2PGjG63iYhYvnx5n7cBAAAAqquu8eO9996LZ555Jp555pmI+PQkp88880ysW7cumpqa4rLLLou/+Iu/iGXLlsVzzz0X5557buy6667xjW98o+t7nH322TF37tyuz7/zne/E8uXL44YbboiXXnopbrjhhnjwwQfjsssuq+ddAaiEWq3Y8BtSICXGNIDyq+thL0899VQcffTRXZ9vPe/GOeecEz/+8Y/j6quvjt/85jdx0UUXxdtvvx2HH354LF++vNuxPuvWret2xteZM2fGkiVL4nvf+1782Z/9Wey3335x9913x+GHH17PuwIAAACUVFOWZVneG9FoHR0d0dLSEtfENY7vBehBrX7L6dwf9KSov0X3fKUnRX2+AqSioyOipeXTP0wypo4nBsvtnB8AAAAAjSB+ALAD5/4AMIYBpET8AAAAAJImfgDQI6s/gCozdgGkRfwAAAAAkiZ+ANArqz+AKjJmAaRH/AAAAACSJn4A0CerP4AqMVYBpEn8AAAAAJImfgDQr1qt/gAAgDyIHwA0jOXkQJEZowDSJX4AMCBWfwAAUFbiBwAN5TerQBEZmwDSJn4AMGBWfwAAUEbiBwAN5zesQJEYkwDSJ34AMChWfwAAUDbiBwAAAJA08QOAQavF6g/LzIEiMBYBVIP4AQAAACRN/AAgN37jCuTJGARQHeIHAEPixKcAAJSF+AEAAAAkTfwAYMic+BQoK2MPQLWIHwAAAEDSxA8AAAAgaeIHAMPi0BegbIw5ANUjfgAAAABJEz8AGDarP4CyMNYAVJP4AQAAACRN/AAAAACSJn4AUBMOfQGKzhgDUF3iBwAAAJA08QMAAABImvgBQM049AUoKmMLQLWJHwAAAEDSxA8AaqoWqz8AAKCWxA8ACsfydKCWjCkAiB8AAABA0sQPAAAAIGniBwA157wfAAAUifgBQCE5Rh+oBWMJABHiBwAAAJA48QOAunDoCwAARSF+AFBYlqsDw2EMAWAr8QMAAABImvgBQN049AUAgCIQPwAAAICkiR8AFJpj9oGhMHYAsC3xA4C6cugLAAB5Ez8AAACApIkfAAAAQNLEDwAKz7H7wGAYMwDYnvgBQN057wcAAHkSPwAAAICkiR8AAABA0sQPAErBMfzAQBgrAOiJ+AFAQzjvBwAAeRE/AAAAgKSJHwAAAEDSxA8ASsOx/EBfjBEA9Eb8AAAAAJImfgDQME56CgBAHsQPAAAAIGniBwAAAJA08QOAUnFCQ6AnxgYA+iJ+ANBQzvsBAECjiR8AAABA0sQPAAAAIGniBwAAAJA08QMAAABImvgBQOn4qw7AtowJAPRH/ACg4fzFFwAAGkn8AAAAAJImfgAAAABJEz8AAACApIkfAAAAQNLEDwBKyV93ACKMBQAMjPgBQC78xRcAABpF/AAAAACSJn4AAAAASRM/AAAAgKSJHwAAAEDSxA8AAAAgaeIHAAAAkDTxA4DcDPfP3c7Lhnd7oNyMAQAMlPgBAAAAJE38AAAAAJImfgAAAABJEz8AAACApIkfAAAAQNLEDwAAACBp4gcAAACQNPEDAAAASJr4AQAAACRN/AAAAACSJn4AkKv5TW15bwIAAIkTPwAotXlZW96bAOTAvg/AYIgfAAAAQNLEDwAAACBp4gcAAACQNPEDAAAASJr4AQAAACRN/AAAAACSJn4AAAAASRM/AAAAgKSJHwAAAEDSxA8AAAAgaeIHAAAAkDTxAwAAAEia+AEAAAAkTfwAAAAAkiZ+AAAAAEkTPwAAAICkiR8AAABA0nKPH1OmTImmpqYdPi6++OIer79y5coer//SSy81eMsBAACAMhiR9wasWrUqPv74467Pn3vuufjyl78cp512Wp+3W7NmTYwZM6br88985jN120YAAACgvHKPH9tHi+uvvz7222+/mDVrVp+3GzduXOyxxx513DIAAAAgBbkf9rKtLVu2xF133RXf/OY3o6mpqc/rHnroodHa2hrHHntsPPTQQ31et7OzMzo6Orp9AAAAANVQqPjx85//PN55550499xze71Oa2tr3HHHHbF06dK45557Ytq0aXHsscfGI4880uttFixYEC0tLV0fkyZNqsPWAwAAAEWU+2Ev21q0aFGccMIJMXHixF6vM23atJg2bVrX5zNmzIj169fHTTfdFF/84hd7vM3cuXPjiiuu6Pq8o6NDAAEAAICKKEz8eO211+LBBx+Me+65Z9C3PeKII+Kuu+7q9evNzc3R3Nw8nM0DAAAASqowh70sXrw4xo0bFyeddNKgb7t69epobW2tw1YBAAAAZVeIlR+ffPJJLF68OM4555wYMaL7Js2dOzc2bNgQd955Z0RELFy4MKZMmRIHHnhg1wlSly5dGkuXLs1j0wEAAICCK0T8ePDBB2PdunXxzW9+c4evbdy4MdatW9f1+ZYtW+Kqq66KDRs2xOjRo+PAAw+M++67L0488cRGbjIAAABQEoWIH7Nnz44sy3r82o9//ONun1999dVx9dVXN2CrAAAAgBQU5pwfAAAAAPUgfgAAAABJEz8AAACApIkfAJTa/Ka2vDcByIF9H4DBED8AyNW8rC3vTQAAIHHiBwAAAJA08QMAAABImvgBAAAAJE38AAAAAJImfgAAAABJEz8AAACApIkfAAAAQNLEDwAAACBp4gcAAACQNPEDAAAASJr4AUBu5mVtw7r9/Kbh3R4oN2MAAAMlfgAAAABJEz8AAACApIkfAAAAQNLEDwAAACBp4gcAAACQNPEDAAAASJr4AUAuhvtnbgEAYKDEDwBKaX5TW96bABSAsQCAgRA/AAAAgKSJHwAAAEDSxA8AAAAgaeIHAAAAkDTxA4CG85deAABoJPEDgNLx1x2AbRkTAOiP+AEAAAAkTfwAAAAAkiZ+AAAAAEkTPwAAAICkiR8ANJS/9AIAQKOJHwCUir/qAPTE2ABAX8QPAAAAIGniBwAAAJA08QOAhnG+DwAA8iB+AAAAAEkTPwAoDSc0BPpijACgN+IHAAAAkDTxAwAAAEia+AFAQzjZKQAAeRE/ACgFx/IDA2GsAKAn4gcAAACQNPEDAAAASJr4AUDdOd8HAAB5Ej8AKDzH8AODYcwAYHviBwAAAJA08QMAAABImvgBQF053wcAAHkTPwAoNMfuA0Nh7ABgW+IHAAAAkDTxA4C6ccgLAABFIH4AAAAASRM/ACgsx+wDw2EMAWAr8QOAunDICwAARSF+AAAAAEkTPwAoJMvVgVowlgAQIX4AUAcOeQEAoEjEDwAAACBp4gcAAACQNPEDgMJxjD5QS8YUAMQPAGrK+T4AACga8QMAAABImvgBQM3UYtWH5elAPRhbAKpN/AAAAACSJn4AAAAASRM/AKgJh7wARWeMAagu8QMAAABImvgBAAAAJE38AGDYHPIClIWxBqCaxA8AAAAgaeIHAMNi1QdQNsYcgOoRPwAAAICkiR8AAABA0sQPAIbMIS9AWRl7AKpF/AAAAACSJn4AMCS1WPUBAACNIH4AkBvLzoE8GYMAqkP8AAAAAJImfgAwaE50CqTCWARQDeIHAAAAkDTxA4BBcaJTAADKRvwAoOEsMweKxJgEkD7xA4ABs+oDAIAyEj8AaCi/YQWKyNgEkDbxA4ABseoDAICyEj8AaBi/WQWKzBgFkC7xA4B+WfUBAECZiR8AAABA0sQPAPpUq1UflpMDZWCsAkiT+AEAAAAkTfwAoFdWfQBVZMwCSI/4AQAAACRN/ACgR1Z9AFVm7AJIi/gBAAAAJE38AGAHVn0AGMMAUiJ+AAAAAEkTPwDoxqoPgN8ylgGkQfwAAAAAkiZ+ANDFqg+AHRnTAMpP/AAAAACSJn4AEBFWfQD0xdgGUG7iBwAAAJA08QMAqz4ABsAYB1Be4gdAxdUqfAAAQFGJHwDUhN+IAlVgrAMoJ/EDoMKs+gAAoArEDwCGzW9CgSox5gGUj/gBUFFOcgowdMY+gHIRPwAqyOEuAABUifgBwJD5zSdQZcZAgPLIPX60tbVFU1NTt48JEyb0eZuHH344pk+fHrvsskt89rOfjdtvv71BWwtQflZ9AABQNbnHj4iIAw88MDZu3Nj18eyzz/Z63bVr18aJJ54YRx55ZKxevTquvfbauPTSS2Pp0qUN3GKAcqpl+PAbTwBjIUBZjMh7AyIiRowY0e9qj61uv/322HfffWPhwoUREfG5z30unnrqqbjpppvia1/7Wh23EgAAACijQqz8ePnll2PixIkxderUOPPMM+OVV17p9bqPP/54zJ49u9tlxx13XDz11FPx4Ycf9nibzs7O6Ojo6PYBUDVWfQDUhzERoPhyjx+HH3543HnnnfHAAw/ED3/4w9i0aVPMnDkz3nrrrR6vv2nTphg/fny3y8aPHx8fffRRvPnmmz3eZsGCBdHS0tL1MWnSpJrfD4CqMMkH2JGxEaDYco8fJ5xwQnzta1+Lgw8+OL70pS/FfffdFxERP/nJT3q9TVNTU7fPsyzr8fKt5s6dG+3t7V0f69evr9HWA5SDk5wCAFBluceP7e22225x8MEHx8svv9zj1ydMmBCbNm3qdtnmzZtjxIgRsffee/d4m+bm5hgzZky3D4CqcLgLQGMYIwGKq3Dxo7OzM1588cVobW3t8eszZsyIFStWdLts+fLlcdhhh8XIkSMbsYkAlWRSD9A/YyVAMeUeP6666qp4+OGHY+3atfHkk0/Gn/zJn0RHR0ecc845EfHpIStnn3121/UvvPDCeO211+KKK66IF198MX70ox/FokWL4qqrrsrrLgAUlsNdAACgAPHj9ddfj69//esxbdq0OPXUU2PUqFHxxBNPxOTJkyMiYuPGjbFu3bqu60+dOjXuv//+WLlyZRxyyCHx53/+5/GXf/mX/swtwHYc7gKQD2MmQPGMyHsDlixZ0ufXf/zjH+9w2axZs+KXv/xlnbYIoPys+AAAgN/KfeUHAMXmN5gAg2fsBCgW8QMgMQ53ASgGYyhAcYgfAAlxuAsAAOxI/ACgR35jCTB8xlKAYhA/ABLhcBeAYjKmAuRP/ABIgMNdAACgd+IHQMnVOnz4DSVA7RlbAfIlfgDQxeQcoH6MsQD5ET8ASsx5PgDKxVgLkA/xA6CknOcDAAAGRvwAKCHn+QAoL2MuQOOJHwAlI3wAlJ+xF6CxxA8AAAAgaeIHQIlY9QGQDmMwQOOIHwAlIXwApMdYDNAY4gdACQgfAOkyJgPUn/gBUHD+pC0AAAyP+AFQYPUIH37DCFA8xmaA+hI/AApK+ACoFmM0QP2IHwAVYVINUHzGaoD6ED8ACsgJTgGqy5gNUHviB0DBOMEpAADUlvgBUCDO8wFAhLEboNbED4CCED4A2JYxHKB2xA+AAhA+AOiJsRygNsQPgJwJHwD0xZgOMHziB0COnNwUAADqT/wAyEm9woffEAKkx9gOMDziB0AOhA8ABssYDzB04gdAgwkfAAyVsR5gaMQPgAYSPgAYLmM+wOCJHwANInwAUCvGfoDBET8AGkD4AKDWvAYADJz4AVBnwgcA9eK1AGBgxA+AOhI+AKg3rwkA/RM/AOqkXuEDAAAYHPEDoA7qGT78hg+A7XltAOib+AFQY8IHAHnwGgHQO/EDoIaEDwDy5LUCoGfiB0CNCB8AFIHXDIAdiR8ANSB8AFAkXjsAuhM/AIZhXtYmfABQSF5DAH5L/AAYonr/KVuTVgCGy2sJwKfED4AhED4AKAuvKQDiB8CgCR8AlI3XFqDqxA+AQRA+ACgrrzFAlYkfAAMkfABQdl5rgKoSPwD6Ue+/6BJhMgpA43jNAapoRN4bAFBkogcAKdr6+lPv1zmAorDyA6AXwgcAqfNaBFSF+AHQA+EDgKrwmgRUgfgBsA3n9wCgirw2AakTPwD+XSOOeza5BKCovEYBKRM/AEL4AIAIr1VAusQPoNIacZhLhMkkAOXhNQtIkfgBVFaj/ryfSSQAZeO1C0jNiLw3AKDRRA8A6N/W17FGvW4C1JOVH0ClCB8AMDhe04AUiB9AZQgfADA0XtuAshM/gOQ16qSmESaHAKTLaxxQZs75ASRN9ACA2nEeEKCsrPwAkmS1BwDUj9c+oGzEDyApjYweESZ/AFSX10CgTMQPIBmNXoJr0gdA1XktBMrCOT+A0hM9ACA/zgMClIGVH0CpCR8AUAxeI4EiEz+AUmr0uT0iTOoAoD9eK4GictgLUCp5LKk1kQOAgXMYDFBEVn4ApSF8AEB5eA0FiqTSKz/mtl8ft7a05b0ZQD9EDwAoJ6tAgKKo/MqPPM4bAAxMXvun8AEAteW1Fchb5ePHViIIFEee+6PJGQDUh9dYIE+VPuylJ1vfcBmcofHyDJD2eQCoP4fBAHmx8qMXVoJA4+S9vwkfANBYXnuBRrPyox9WgkD95B0Y7dcAkB+rQIBGsvJjgPL+zTSkpAj7k/ABAMXgNRloBCs/BslKEBi6vINHhH0XAIrIKhCg3sSPIRJBYOCKMJGxrwJA8YkgQL047GWYirB8H4qqKPuH8AEA5eK1G6g1Kz9qxEoQ+K0iBI8I+yMAlJlVIEAtWflRY0X5TTfkoUjPf+EDANLgNR2oBSs/6mTbN4AGbFJWlNixlf0NANJjFQgwXOJHAzgkhhQVbfJh/wKA9IkgwFCJHw1kNQhlV8SJhn0JAKpHBAEGyzk/clKkcyNAf4r6fBU+AKDazAWAgbLyI2dWg1BURYwdW9lXAICtrAIBBkL8KBAhhLwVfdJgvwAAeiOCAH2pdPxY0HJNLMiuz3szeuQkqTRS0ScJ9gMAYKBEECiP+U1t8UF8EBH1f19e6fgRUfzBcfvt8iaQWijq8317nu8AwFAVfZ4PVZbHPL/y8WOrsgyODo1hqIr+3N6W5zYAUCtlmedDFeQ5zxc/tlOmwVEIoT9leB5vy/MYAKiXMs3zITVFmOeLH70o2+AohLBVWZ6z2/KcBQAapWzzfCizIs3zxY9+lHFwdJ6QainTc3N7npsAQF7KOM+HsijiPF/8GKAyD45iSFrK+BzcnucgAFAUZZ7nQ9EUeZ4vfgzStg9mWQfInra7yE/SKivrc6wnnmMAQJGlMM+HPJRlni9+DENKldjqkGJI4bm0Pc8lAKBsUprnQ72UbZ4vftRAioNjb/elbE/wokrpudIbzxUAoOxSnOfDcJV1ni9+1FAVlsqJIoOT6vOgN54HAECKqjDPh76kMM8XP+qkapW4r/uZwo7Sl6o8xn1J/TEGANiqavN8qi2leb74UWcq8eDud1F2rqo+VoNRlMcKACAP5vmkKtV5vvjRQAbI/vm5FFuqAyEAwHCY51N2VZjnix85sVyOMqnCYAgAUAvm+ZRJleb54kfOVGKKqkoDIQBArZnnU1RVneeLHwVigCRvVR0IAQDqyTyfvJnnix+FZYCkUQyEAACNY55Po5jndyd+lMD2T1qDJMNhEAQAKAbzfGrJPL9v4kcJqcUMloEQAKD4zPMZLPP8gRM/Sk4tpicGQQCAcjPPpyfm+UMnfiTGIFlNBkEAgLSZ51eTeX7tiB+JM0imySAIAFBt5vlpMs+vH/GjYgyS5WQQBACgL+b55WSe3zjiR8X1tLMZKPNlAARoLOMukCLz/OLxepMv8YMd9LZTGixry+AHkC/jMFA15vmN4fWlmMQPBsxgOTQGP4BiMS4DdGeePzReT8ol9/ixYMGCuOeee+Kll16K0aNHx8yZM+OGG26IadOm9XqblStXxtFHH73D5S+++GLsv//+9dxcetDfTp/6oGnQAygPYzbAwJnnt+W9CdRQ7vHj4Ycfjosvvjj+8A//MD766KP47ne/G7Nnz44XXnghdttttz5vu2bNmhgzZkzX55/5zGfqvbkMwWAHjbwHUYMcQHqM7QC1Z55PmeQeP/7xH/+x2+eLFy+OcePGxdNPPx1f/OIX+7ztuHHjYo899qjj1pEHgxIAteI1BaA4jMnkKff4sb329vaIiNhrr736ve6hhx4aH3zwQRxwwAHxve99r8dDYSIiOjs7o7Ozs+vzjo6O2mwsAFBIJtgAwLZ2ynsDtpVlWVxxxRXxhS98IQ466KBer9fa2hp33HFHLF26NO65556YNm1aHHvssfHII4/0eP0FCxZES0tL18ekSZPqdRcAgJwJHwDA9pqyLMvy3oitLr744rjvvvvi0UcfjX322WdQtz355JOjqakp7r333h2+1tPKj0mTJsU1cU3sErsMe7sBgIGr1zHfogcAlM8H8UFcH9dHe3t7t3N61lphDnu55JJL4t57741HHnlk0OEjIuKII46Iu+66q8evNTc3R3Nz83A3EQAoINEDAOhP7vEjy7K45JJLYtmyZbFy5cqYOnXqkL7P6tWro7W1tcZbBwAUmfABAAxE7vHj4osvjp/97GfxP/7H/4jdd989Nm3aFBERLS0tMXr06IiImDt3bmzYsCHuvPPOiIhYuHBhTJkyJQ488MDYsmVL3HXXXbF06dJYunRpbvcDAGgs4QMAGKjc48cPfvCDiIg46qijul2+ePHiOPfccyMiYuPGjbFu3bqur23ZsiWuuuqq2LBhQ4wePToOPPDAuO++++LEE09s1GYDADkSPgCAwSjUCU8bpaOjI1paWpzwFAByMJwTnooeAJCWRp3wtFB/6hYAoDfCBwAwVOIHAFB4wgcAMBziBwBQaMIHADBc4gcAUFjCBwBQC+IHAFBIwgcAUCviBwBQOMIHAFBL4gcAUCjCBwBQa+IHAFAYwgcAUA/iBwAAAJA08QMAKASrPgCAehE/AIDcCR8AQD2JHwAAAEDSxA8AIFdWfQAA9SZ+AAAAAEkTPwCA3Fj1AQA0gvgBAAAAJE38AAAAAJImfgAAuXDICwDQKOIHAAAAkDTxAwAAAEia+AEANJxDXgCARhI/AAAAgKSJHwAAAEDSxA8AAAAgaeIHANBQzvcBADSa+AEAAAAkTfwAAAAAkiZ+AAAAAEkTPwAAAICkiR8AAABA0sQPAAAAIGniBwAAAJA08QMAAABImvgBAAAAJE38AAAAAJImfgAAAABJEz8AAACApIkfAAAAQNLEDwCgoeZlbXlvAgBQMeIHAAAAkDTxAwAAAEia+AEAAAAkTfwAABrOeT8AgEYSPwAAAICkiR8AAABA0sQPACAXDn0BABpF/AAAAACSJn4AAAAASRM/AIDcOPQFAGgE8QMAAABImvgBAOTK6g8AoN7EDwAAACBp4gcAkDurPwCAehI/AIBCEEAAgHoRPwAAAICkiR8AQMP0t7rD6g8AoB7EDwCgUAQQAKDWxA8AoHAEEACglsQPAKCQBBAAoFbEDwCgsAQQAKAWxA8AoNAEEABguMQPAKAhhhMxBBAAYDjEDwCgFAQQAGCoxA8AoDQEEABgKMQPAKDuahkt5mVtIggAMCjiBwBQSgIIADBQ4gcAUFoCCAAwEOIHAFBX9Q4UDoMBAPojfgAASRBBAIDeiB8AQFIEEABge+IHAFA3eYUIq0AAgG2JHwBAskQQACBC/AAA6qRI0UEEAYBqEz8AgMoQQACgmsQPAKDmihwZrAIBgOoRPwCAmipLWBBBAKA6xA8AoNJEEABIn/gBANRMmSNCmbcdAOib+AEA1EQK8cAqEABIk/gBALAdEQQA0iJ+AADDlmooSPV+AUDViB8AwLCkHgisAgGA8hM/AIAhq1IUEEEAoLzEDwCAQRBBAKB8xA8AYEiqHgCqfv8BoEzEDwCAIbIKBADKQfwAAAbNG/7uRBAAKDbxAwAYFG/ye+dnAwDFJH4AANSQAAIAxSN+AAAD5o39wDgMBgCKRfwAAKgTAQQAikH8AAAGxBv5obEKBADyJ34AADSAAAIA+RE/AIB+eeNeG1aBAEA+xA8AoE/erNeeCAIAjTUi7w0AAKiqbQPI/Ka2Xq8HAAyP+AEA9MrqhMYRQgCgfsQPAICCEUIAoLbEDwCgR1Z9FENvj4MoAgAD15RlWZb3RjRaR0dHtLS0RHt7xJgxeW8NAIPhDV9jCB/VMNT9yfMDgFrp6IhoaYlob2+PMXV8g27lBwBARdQqHm7/fcQQAIrOyg8rPwBKx+qP+vJGNi2N3l88fwAYDCs/AAAYkjwD4bb/txACQFFY+WHlB0ApWf1RH96slltR9wvPKwB6Y+UHAAADUtTosdXW7RNBAMjLTnlvAAAMhTdRtednWk5FDx/bKtO2ApAWh7047AWg1LyZqg3ho3zK/tz3nAMgonGHvVj5AQBQMmUPHxFp3AcAykP8AKDU/PZ4+PwMyyWlaJDSfQGg2MQPAICSSDEWpHifACge8QOA0rNyYej87Moj5UiQ8n0DoBjEDwCAgqtCHKjCfQQgP+IHAEmwgmHw/MzKoUpRoEr3FYDGEj8ASIY38wPnZ1UOVYwBVbzPANRfIeLHX//1X8fUqVNjl112ienTp8c///M/93n9hx9+OKZPnx677LJLfPazn43bb7+9QVsKANAYVY4AVb7vANRH7vHj7rvvjssuuyy++93vxurVq+PII4+ME044IdatW9fj9deuXRsnnnhiHHnkkbF69eq49tpr49JLL42lS5c2eMsBKCIrGvrnZ1R83vwDQG3lHj9uueWWOO+88+L888+Pz33uc7Fw4cKYNGlS/OAHP+jx+rfffnvsu+++sXDhwvjc5z4X559/fnzzm9+Mm266qcFbDgBAvQhAANRSrvFjy5Yt8fTTT8fs2bO7XT579ux47LHHerzN448/vsP1jzvuuHjqqafiww8/7PE2nZ2d0dHR0e0DgHRZ2dA7P5vi86b/t/wsAKiVXOPHm2++GR9//HGMHz++2+Xjx4+PTZs29XibTZs29Xj9jz76KN58880eb7NgwYJoaWnp+pg0aVJt7gAAheVN/o78TIrPm/0d+ZkAUAu5H/YSEdHU1NTt8yzLdrisv+v3dPlWc+fOjfb29q6P9evXD3OLASgDb/Z/y8+i+LzJ752fDQDDlWv8GDt2bOy88847rPLYvHnzDqs7tpowYUKP1x8xYkTsvffePd6mubk5xowZ0+0DgGrwph8AgFzjx6hRo2L69OmxYsWKbpevWLEiZs6c2eNtZsyYscP1ly9fHocddliMHDmybtsKAGUlABWflQ398zMCYDhyP+zliiuuiL/927+NH/3oR/Hiiy/G5ZdfHuvWrYsLL7wwIj49ZOXss8/uuv6FF14Yr732WlxxxRXx4osvxo9+9KNYtGhRXHXVVXndBQAKrspv/qt83wEAtso9fpxxxhmxcOHC+P73vx+HHHJIPPLII3H//ffH5MmTIyJi48aNsW7duq7rT506Ne6///5YuXJlHHLIIfHnf/7n8Zd/+Zfxta99La+7AEAJVDECVPE+l5EVDQPnZwXAUDVlW88WWiEdHR3R0tIS7e0RTv8BUC1VefMkfJRDVZ6Pteb5DZCOjo6IlpaI9vb2up6fM/eVHwDQSFV401SF+wgAMBjiBwCVk3IcSPm+pcaqj6HzswNgsMQPACopxUiQ4n0CAKgF8QOAykopFqR0X6rAyoXh8zMEYDDEDwAqLYVokMJ9AACoJ3/txV97AeDfle03yaJHOZXteVZ09gOAcvPXXgCgwcr0JqpM28pvCR+152cKwECMyHsDAKBItkaFor6hEj0AAAbPYS8OewGgD0WJIKJH+RXluZQq+whAOTXqsBcrPwCgD9u+oWr0m1dv5gAAasPKDys/ABiCeoUQwSNNVn00hv0HoHys/ACAAtv+TdZQ39x6swYAUH+VXvlxTVwTu8QueW8OAAyLgFJsVn0AQO8+iA/i+rjeyg8AoG+9vbkWRfInfABAMYgfAJCobd94CyEAQJWJHwBQAUJI41n1AQDFIX4AQMUIIQBA1eyU9wYAAPmZ39RmhUId+JkCQLGIHwCACFJDfo4AUDziBwDQxRt3ACBF4gcA0I1VIEPn5wYAxSR+AAA98kYeAEiF+AEA9MoqkIHzcwKA4hI/AIB+eWMPAJSZ+AEADIgA0js/GwAoNvEDABgwh8HsyM8DAIpP/AAABk0EAQDKRPwAAIas6gGk6vcfAMpC/AAAhsUqEACg6MQPAKAmqhZBqnRfAaDsxA8AoKaqEEFSv38AkBrxAwCoi1QDQar3CwBSJn4AAHVThVUgAEDxiR8AQN2lEkFSuA8AUEXiBwDQMGWOB2XedgCoOvEDAGioVFaBAADlIX4AALkoUwQpy3YCAD0TPwCAXBU9ghR52wCAgRE/AIBCEBkAgHoRPwCAwijaKpAibQsAMHTiBwBQOEWLIABAuYkfAEBh5RlBxBcASIf4AQAUnhABAAyH+AEAlIJDYQCAoRI/AIBSaUQEEVkAIC3iBwBQSgIFADBQ4gcAUFoCCAAwEOIHAFBqtT4MRlABgPSIHwBAEkQLAKA34gcAkAwBBADoifgBACRlOAFEPAGANIkfAEByRAwAYFviBwCQJAEEANhK/AAAkiWAAAAR4gcAkDgBBAAQPwCA5AkgAFBt4gcAUAn9BRCBBADSJX4AAAAASRM/AIDKsLoDAKpJ/AAAKkUAAYDqET8AAACApIkfAEDlWP0BANUifgAAAABJEz8AgEqy+gMAqkP8AAAAAJImfgAAAABJEz8AgMpy6AsAVIP4AQAAACRN/AAAAACSJn4AAJXm0BcASJ/4AQAAACRN/AAAAACSJn4AAAAASRM/AIDKc94PAEib+AEAAAAkTfwAAAAAkiZ+AAAAAEkTPwAAAICkiR8AAABA0sQPAAAAIGniBwAAAJA08QMAAABImvgBAAAAJE38AAAAAJImfgAAAABJEz8AAACApIkfAAAAQNLEDwCg8uZlbXlvAgBQR+IHAAAAkDTxAwAAAEia+AEAAAAkTfwAACrN+T4AIH3iBwAAAJA08QMAAABImvgBAFSWQ14AoBrEDwAAACBp4gcAAACQNPEDAKgkh7wAQHWIHwAAAEDSxA8AoHKs+gCAahE/AAAAgKSJHwBApVj1AQDVI34AAJUhfABANYkfAAAAQNLEDwCgEqz6AIDqEj8AgOQJHwBQbeIHAJA04QMAED8AgGQJHwBAhPgBACRK+AAAthI/AIDkCB8AwLbEDwAgKcIHALA98QMASIbwAQD0ZETeGwAAMFyiBwDQFys/AIBSEz4AgP7kFj9effXVOO+882Lq1KkxevTo2G+//WLevHmxZcuWPm937rnnRlNTU7ePI444okFbDQAUifABAAxEboe9vPTSS/HJJ5/E3/zN38Tv/u7vxnPPPRcXXHBBvP/++3HTTTf1edvjjz8+Fi9e3PX5qFGj6r25AEDBCB8AwEDlFj+OP/74OP7447s+/+xnPxtr1qyJH/zgB/3Gj+bm5pgwYUK9NxEAKCDRAwAYrEKd8LS9vT322muvfq+3cuXKGDduXOyxxx4xa9asuO6662LcuHG9Xr+zszM6Ozu7Pu/o6KjJ9gIAjSN6AABDVZgTnv7bv/1b/NVf/VVceOGFfV7vhBNOiJ/+9Kfxi1/8Im6++eZYtWpVHHPMMd3ixvYWLFgQLS0tXR+TJk2q9eYDAHUkfAAAw9GUZVlWy2/Y1tYW8+fP7/M6q1atisMOO6zr8zfeeCNmzZoVs2bNir/9278d1P+3cePGmDx5cixZsiROPfXUHq/T08qPSZMmxTVxTewSuwzq/wMAGqeR0WN+U+P+LwDgUx/EB3F9XB/t7e0xZsyYuv0/NT/sZc6cOXHmmWf2eZ0pU6Z0/fuNN96Io48+OmbMmBF33HHHoP+/1tbWmDx5crz88su9Xqe5uTmam5sH/b3JR96/3TP5Bchf3q8FANRe3mO7eX611Tx+jB07NsaOHTug627YsCGOPvromD59eixevDh22mnwR+G89dZbsX79+mhtbR30bWmMvAe5wRrs9hpEAWqnbK8ZAFVWtjHbPL/acjvh6RtvvBFHHXVU7LvvvnHTTTfF//2//7fra9v+JZf9998/FixYEF/96lfjvffei7a2tvja174Wra2t8eqrr8a1114bY8eOja9+9at53A2ifINerfV3/w2aAANT9dcTgKKp+rhsnp+W3OLH8uXL41e/+lX86le/in322afb17Y9DcmaNWuivb09IiJ23nnnePbZZ+POO++Md955J1pbW+Poo4+Ou+++O3bfffeGbn8VVX3wG6refm4GS4BPeX0ByJdxeGjM88ul5ic8LYOOjo5oaWlxwtNeGPzyZbAEqqJorzfGXyB1RRt3q8brTM9Ke8JTysUAWDw9PSYGSiAlXnsA6s9YWzzm+fkSPyrGIFhO2z9uBkkAALZlnl9O5vmNI34kziCYJoMkAEC1meenyTy/fsSPxBgEq8kgCQCQNvP8ajLPrx3xo+QMgvTEIAkAUG7m+fTEPH/oxI8SMhAyWNs+ZwyQAADFZJ7PYJnnD5z4UQIGQWpJLQYAKAbzfGrJPL9v4kdBGQhpFLUYAKBxzPNpFPP87sSPAjEQkjcDJABA7ZnnkzfzfPEjdwZCisoACQAwdOb5FFVV5/niR04MhpTJ1udrlQZHAIChMM+nTKo0zxc/GshASNlVtRIDAPTFPL9/RZk7eqx6VoV5vvhRZ3YuUlWFARIAoDfm+eWcAw5mm6v6GKc6zxc/6qSqOwrVVKXlcgBAtVVtnl/l+V1f970qz4OU5vniRw1VZQeA3qRaiQGAaqvCPN/cbXB6+3ml+lxJYZ4vftRAqk9wGI6UKjEAUE0pzvPNzeqrClGkrPN88WMYUnoCQ72UdXAEAKorpXm+OVgxbP84pPAcK9s8X/wYpBSepJCHFJbKAQDpSmGeb45VHj09VmV9DpZlni9+DFBZn4hQRGWrxABAuso8zzeXSksKq0OKPM8XP/pRxicclEWRB0cAIG1lnOebM1VLmWNIEef54kcvyvTEgrIr4uAIAKSpbPN88yO22va5UJbncZHm+eLHdsryJIIUFWlwBADSUqZ5vrkQ/SlbCCnCPF/8+HdleMJAVRRhcAQA0lCWeb55D0NVphCS5zy/8vGj6E8OqDIRBAAYqqLP881vqIeynCckj3l+U5ZlWcP+t4Lo6OiIlpaWaG+PGDMm760BBsokAdJQ1ImYMQbSUNQxZitjDXko8n7R0RHR0hLR3t4eY+r4Br3yKz+A8rASBADoTZHf3Jm7kLcyHRpTL+IHUDoiCACwVVHfyJmnUFRVDSE75b0BAENVpcEaANhREecC85vahA9Ko0rPVys/gFKzCgQAqqdo0cM8hLKrwmoQ8QNIgggCAOkr2psy8w5StPV5XbT9bbjEDyApIggApKdIb8LMMaiK1FaDOOcHkKQUBmgAoDiv6VU6NwJsL4Xnv5UfQLKsAgGA8ipS9AA+VeZDYqz8AJJXxsEZAKqsCK/dKfymG+qljPuHlR9AJVgFAgDFV5ToAQxMmVaCiB9ApYggAFA8RXjjZG4AQ1eGCOKwF6CSijwwA0CV5P2aXMbl+1BURd6frPwAKssqEADITxGiB1AfRVwJYuUHUHlFGpQBoAryfO0t8m+mITVF2t+s/AAIq0AAoBHyjh5APoqwEsTKD4BtWAUCAPWR12tskX7zDFWX5/4ofgBsRwABgNrK47VV9IDiymP/dNgLQA8cBgMAw5dX9ADKYX5TW3wQH0TE9XX/v6z8AOiDVSAAMDTCB1AkVn4A9MMqEAAYONEDKCIrPwAGyCoQAOhbo18rndcDGCjxA2AQBBAA6Fke4QNgoBz2AjBIDoMBgN8SPYAysPIDYIisAgGg6oQPoCzED4BhEEAAqKpGvgY6twcwXOIHwDAJIABUTaNe+0QPoFac8wOgBpwHBIAqaPRqD4BasfIDoIasAgEgVVZ7AGUmfgDUmAACQGoaGT4A6kH8AKgDAQSAVAgfQAqc8wOgTpwHBIAyEz2AlFj5AVBnVoEAUDbCB5Aa8QOgAQQQAMqiEa9ZTmoKNJr4AdAgAggARdeo8AHQaOIHQAMJIAAUlfABpEz8AGgwAQSAoqn3a5PDXIC8iR8AORBAACiKRoQPgLyJHwA5EUAAyJvwAVTFiLw3AKDKtk46TQ4BaCTn9wCqxsoPgAKwCgSARnF+D6CKxA+AghBAAKg3h7kAVSV+ABSIAAJAvQgfQJWJHwAFI4AAUGvCB1B14gdAAQkgANSK8AEgfgAUlgACwHAJHwCfEj8ACkwAAWCo6vka4i+6AGUjfgAUnAACwGDVO3wAlI34AVACAggAAyV8AOxI/AAoCQEEgP4IHwA9Ez8ASkQAAaA3wgdA78QPgJIRQADYnvAB0DfxAwAA6JHwAaRC/AAoIas/ANiqXq8JwgeQEvEDoKQEEACED4CBET8ASkwAAagu4QNg4MQPgJITQACqR/gAGBzxAyABAghAdQgfAIMnfgAkQgABSJ/wATA04gdAQgQQgHQJHwBDJ34AJEYAAUiP8AEwPOIHAABUkPABVIn4AZAgqz8A0lGPMV34AKpG/ABIlAACUH7CB0BtiB8ACRNAAMpL+ACoHfEDIHECCED5CB8AtSV+AABA4oQPoOrED4AKsPoDoDxqPWYLHwDiB0BlCCAAxWesBqgP8QOgQkyqAYrLeT4A6kf8AKgYAQSgeIQPgPoSPwAAIDHCB0B34gdABVn9AVAcTnAKUH/iB0BFCSAA+RM+ABpD/ACoMAEEID/CB0DjiB8AAABA0sQPgIqz+gOg8az6AGgs8QMAAQSggYQPgMYTPwAAoKSED4CBET8AiAirPwAaoZZjrfABMHDiBwBdBBCA+jHGAuRH/ACgG5NzgNpzng+AfIkfAABQIsIHwOCJHwDswOoPgNpxng+A/IkfAPRIAAEYPmMpQDGIHwAAUAJWfQAMnfgBQK/8xhJg6BzuAlAc4gcAfRJAAAbP2AlQLOIHAAAUmFUfAMMnfgDQL7/BBBg4h7sAFE+u8WPKlCnR1NTU7eOaa67p8zZZlkVbW1tMnDgxRo8eHUcddVQ8//zzDdpiAABoDOEDoHZyX/nx/e9/PzZu3Nj18b3vfa/P6994441xyy23xG233RarVq2KCRMmxJe//OV49913G7TFANVk9QdA/4yVAMWUe/zYfffdY8KECV0fv/M7v9PrdbMsi4ULF8Z3v/vdOPXUU+Oggw6Kn/zkJ/HrX/86fvaznzVwqwGqyaQeoHcOdwEortzjxw033BB77713HHLIIXHdddfFli1ber3u2rVrY9OmTTF79uyuy5qbm2PWrFnx2GOP9Xq7zs7O6Ojo6PYBAABFJHwA1F6u8eM73/lOLFmyJB566KGYM2dOLFy4MC666KJer79p06aIiBg/fny3y8ePH9/1tZ4sWLAgWlpauj4mTZpUmzsAUEFWfwDsyNgIUGw1jx9tbW07nMR0+4+nnnoqIiIuv/zymDVrVvz+7/9+nH/++XH77bfHokWL4q233urz/2hqaur2eZZlO1y2rblz50Z7e3vXx/r164d/RwEqzCQf4Lcc7gJQfCNq/Q3nzJkTZ555Zp/XmTJlSo+XH3HEERER8atf/Sr23nvvHb4+YcKEiPh0BUhra2vX5Zs3b95hNci2mpubo7m5ub9NBwAAABJU8/gxduzYGDt27JBuu3r16oiIbmFjW1OnTo0JEybEihUr4tBDD42IiC1btsTDDz8cN9xww9A2GIAhmZe1+Q0lUHlWfQCUQ27n/Hj88cfj1ltvjWeeeSbWrl0bf//3fx/f+ta34pRTTol9992363r7779/LFu2LCI+Pdzlsssui7/4i7+IZcuWxXPPPRfnnntu7LrrrvGNb3wjr7sCAADDInwA1FfNV34MVHNzc9x9990xf/786OzsjMmTJ8cFF1wQV199dbfrrVmzJtrb27s+v/rqq+M3v/lNXHTRRfH222/H4YcfHsuXL4/dd9+90XcBoPKs/gCqzPmPAMojt/jxB3/wB/HEE0/0e70sy7p93tTUFG1tbdHW1lanLQMAgMYRkQHqL9c/dQtA+fnNJ1BFtRr7hA+AxhA/ABg2AQSoEmMeQPmIHwAAkAOrPgAaR/wAoCb8JhSoAmMdQDmJHwAA0GBWfQA0lvgBQM34jSiQMic5BSgv8QMAAABImvgBQE1Z/QGkyKoPgHITPwAAAICkiR8A1JzVH0BKrPoAKD/xAwAAAEia+AFAXVj9AaTAqg+ANIgfAAAAQNLEDwDqxuoPoMys+gBIh/gBAAAAJE38AKCurP4AysiqD4C0iB8AAABA0sQPAOrO6g+gTKz6AEiP+AEAAAAkTfwAoCGs/gDKwKoPgDSJHwAAAEDSxA8AAKghqz4Aikf8AKBhHPoCFJkxCiBd4gcAANSIVR8AxSR+ANBQfrMKFJGxCSBt4gcAANSAVR8AxSV+ANBwfsMKFIkxCSB94gcAAAyTVR8AxSZ+AAAAAEkTPwDIhWXmQBHUYiyy6gOg+MQPAAAAIGniBwC5sfoDyJMxCKA6xA8AABgih7wAlIP4AQAAACRN/AAgV5adA3lwolOAahE/AAAAgKSJHwAAAEDSxA8AcufQF6CRHPICUD3iBwAAAJA08QOAQrD6A2gEqz4Aqkn8AAAAAJImfgAAAABJEz8AKAyHvgD15JAXgOoSPwAAAICkiR8AAABA0sQPAArFoS9APTjkBaDaxA8AAAAgaeIHAAD0w6oPgHITPwAoHIe+ALVkTAFA/AAAAACSJn4AAAAASRM/AACgD873AVB+4gcAheQYfaAWjCUARIgfAAAAQOLEDwAA6IVDXgDSIH4AUFiWqwPDYQwBYCvxAwAAAEia+AEAAD1wyAtAOsQPAAAAIGniBwCF5ph9YCiMHQBsS/wAAIDtOOQFIC3iBwAAAJA08QMAAABImvgBQOE5dh8YDGMGANsTPwAAYBvO9wGQHvEDAAAASJr4AQAAACRN/ACgFBzDDwyEsQKAnogfAADw75zvAyBN4gcAAACQNPEDAAAASJr4AUBpOJYf6IsxAoDeiB8AAABA0sQPAAAIJzsFSJn4AQAAACRN/AAAAACSJn4AUCpOaAj0xNgAQF/EDwAAKs/5PgDSJn4AAAAASRM/AAAAgKSJHwAAAEDSxA8AAAAgaeIHAKXjrzoA2zImANAf8QMAgErzl14A0id+AAAAAEkTPwAAAICkiR8AAABA0sQPAAAAIGniBwCl5K87ABHGAgAGRvwAAKCy/KUXgGoQPwAAAICkiR8AAABA0sQPAAAAIGniBwAAAJA08QMAAABImvgBAAAAJE38AKC05mVteW8CkKPhjgH+zC1AdYgfAAAAQNLEDwAAACBp4gcAAACQNPEDAAAASJr4AQAAACRN/AAAAACSJn4AAAAASRM/AAAAgKSJHwAAAEDSxA8AAAAgaeIHAACVM7+pLe9NAKCBxA8ASm1e1pb3JgA5sO8DMBjiBwAAAJA08QMAAABImvgBAAAAJE38AAAAAJImfgAAAABJyy1+rFy5Mpqamnr8WLVqVa+3O/fcc3e4/hFHHNHALQcAAADKZERe//HMmTNj48aN3S77sz/7s3jwwQfjsMMO6/O2xx9/fCxevLjr81GjRtVlGwEAAIDyyy1+jBo1KiZMmND1+Ycffhj33ntvzJkzJ5qamvq8bXNzc7fbAgAAAPSmMOf8uPfee+PNN9+Mc889t9/rrly5MsaNGxe/93u/FxdccEFs3ry5z+t3dnZGR0dHtw8AAACgGgoTPxYtWhTHHXdcTJo0qc/rnXDCCfHTn/40fvGLX8TNN98cq1atimOOOSY6Ozt7vc2CBQuipaWl66O//wMAAABIR83jR1tbW68nMt368dRTT3W7zeuvvx4PPPBAnHfeef1+/zPOOCNOOumkOOigg+Lkk0+Of/iHf4h//dd/jfvuu6/X28ydOzfa29u7PtavXz/s+wkAAACUQ83P+TFnzpw488wz+7zOlClTun2+ePHi2HvvveOUU04Z9P/X2toakydPjpdffrnX6zQ3N0dzc/OgvzcAAABQfjWPH2PHjo2xY8cO+PpZlsXixYvj7LPPjpEjRw76/3vrrbdi/fr10draOujbAgAAAOnL/Zwfv/jFL2Lt2rW9HvKy//77x7JlyyIi4r333ourrroqHn/88Xj11Vdj5cqVcfLJJ8fYsWPjq1/9aiM3GwAAACiJ3P7U7VaLFi2KmTNnxuc+97kev75mzZpob2+PiIidd945nn322bjzzjvjnXfeidbW1jj66KPj7rvvjt13372Rmw0AAACURO7x42c/+1mfX8+yrOvfo0ePjgceeKDemwQAAAAkJPfDXgAAAADqSfwAAAAAkiZ+AAAAAEkTPwAAAICkiR8AAABA0sQPAAAAIGniBwAAAJA08QMAAABImvgBAAAAJE38AAAAAJImfgAAAABJEz8AAACApIkfAAAAQNLEDwAAACBp4gcAAACQNPEDgFKb39SW9yYAObDvAzAY4gcAAJUzL2vLexMAaCDxAwAAAEia+AEAAAAkTfwAAAAAkiZ+AAAAAEkTPwAAAICkiR8AAABA0sQPAAAAIGniBwAAAJA08QMAAABImvgBAAAAJE38AKC05je15b0JQI6GOwbMy4Z3ewDKQ/wAAAAAkiZ+AAAAAEkTPwAAAICkiR8AAABA0sQPAAAAIGniBwAAAJA08QMAgMry524BqkH8AKCU5je15b0JQAEYCwAYCPEDAAAASJr4AQAAACRN/AAAAACSJn4AAAAASRM/AACoNH/xBSB94gcApeOvOwDbMiYA0B/xAwAAAEia+AEAAAAkTfwAAAAAkiZ+AAAAAEkTPwAAqDx/8QUgbeIHAKXirzoAPTE2ANAX8QMAAABImvgBAAAAJE38AACAcN4PgJSJHwAAAEDSxA8ASsMJDYG+GCMA6I34AQAAACRN/AAAAACSJn4AAMC/c9JTgDSJHwCUgmP5gYEwVgDQE/EDAAAASJr4AQAAACRN/AAAgG047wdAesQPAArPMfzAYBgzANie+AEAAAAkTfwAAAAAkiZ+AADAdpz3AyAt4gcAhebYfWAojB0AbEv8AAAAAJImfgAAQA8c+gKQDvEDAAAASJr4AUBhOWYfGA5jCABbiR8AANALh74ApEH8AAAAAJImfgBQSJarA7VgLAEgQvwAAIA+OfQFoPzEDwAAACBp4gcAAACQNPEDgMJxjD5QS8YUAMQPAADoh/N+AJSb+AEAAAAkTfwAoFAsTwfqoRZji9UfAOUlfgAAAABJEz8AAACApIkfABSGQ16AenLoC0B1iR8AAABA0sQPAAAAIGniBwCF4JAXoBEc+gJQTeIHAAAAkDTxA4DcWfUBNJLVHwDVI34AAAAASRM/AAAAgKSJHwDkyiEvQB4c+gJQLeIHAAAAkDTxAwAAhsjqD4ByED8AyI1DXoA8GYMAqkP8AAAAAJImfgCQC79xBYrAiU8BqkH8AAAAAJImfgAAwDBZ/QFQbOIHAA3nkBegSIxJAOkTPwAAoAas/gAoLvEDgIbyG1agiIxNAGkTPwAAoEas/gAoJvEDgIbxm1WgyIxRAOkSPwAAoIas/gAoHvEDAAAASJr4AUBDWE4OlEGtxiqrPwCKRfwAAAAAkiZ+AFB3Vn0AZWL1B0B6xA8AAAAgaeIHAHVl1QdQRlZ/AKRF/AAAAACSJn4AUDdWfQBlZvUHQDrEDwAAACBp4gcAdWHVB5ACqz8A0iB+AAAAAEmra/y47rrrYubMmbHrrrvGHnvs0eN11q1bFyeffHLstttuMXbs2Lj00ktjy5YtfX7fzs7OuOSSS2Ls2LGx2267xSmnnBKvv/56He4BAENh1QeQEqs/AMqvrvFjy5Ytcdppp8W3v/3tHr/+8ccfx0knnRTvv/9+PProo7FkyZJYunRpXHnllX1+38suuyyWLVsWS5YsiUcffTTee++9+MpXvhIff/xxPe4GAAAAUGJ1jR/z58+Pyy+/PA4++OAev758+fJ44YUX4q677opDDz00vvSlL8XNN98cP/zhD6Ojo6PH27S3t8eiRYvi5ptvji996Utx6KGHxl133RXPPvtsPPjgg/W8OwAMgFUfQIqs/gAotxF5/uePP/54HHTQQTFx4sSuy4477rjo7OyMp59+Oo4++ugdbvP000/Hhx9+GLNnz+66bOLEiXHQQQfFY489Fscdd9wOt+ns7IzOzs6uz9vb2yMiope+AsAwfBAf5L0JFFxRX389d+lPrZ67nmsAv9UZn75Xz7Ksrv9PrvFj06ZNMX78+G6X7bnnnjFq1KjYtGlTr7cZNWpU7Lnnnt0uHz9+fK+3WbBgQcyfP3+HyydNGuKGA9CH6/PeAAru+pa8t6A3nrv0rXbPXc81gO299dZb0dJSv0nCoONHW1tbjyFhW6tWrYrDDjtsQN+vqalph8uyLOvx8r70dZu5c+fGFVdc0fX5O++8E5MnT45169bV9YdLcXR0dMSkSZNi/fr1MWbMmLw3hwbwmFePx7x6PObV4zGvHo959XjMq6e9vT323Xff2Guvver6/ww6fsyZMyfOPPPMPq8zZcqUAX2vCRMmxJNPPtntsrfffjs+/PDDHVaEbHubLVu2xNtvv91t9cfmzZtj5syZPd6mubk5mpubd7i8paXFDlUxY8aM8ZhXjMe8ejzm1eMxrx6PefV4zKvHY149O+1U11OSDj5+jB07NsaOHVuT/3zGjBlx3XXXxcaNG6O1tTUiPj0JanNzc0yfPr3H20yfPj1GjhwZK1asiNNPPz0iIjZu3BjPPfdc3HjjjTXZLgAAACAddU0r69ati2eeeSbWrVsXH3/8cTzzzDPxzDPPxHvvvRcREbNnz44DDjggzjrrrFi9enX80z/9U1x11VVxwQUXdFW+DRs2xP777x//+3//74j4dLXGeeedF1deeWX80z/9U6xevTr+y3/5L3HwwQfHl770pXreHQAAAKCE6nrC0//v//v/4ic/+UnX54ceemhERDz00ENx1FFHxc477xz33XdfXHTRRfGf//N/jtGjR8c3vvGNuOmmm7pu8+GHH8aaNWvi17/+dddlt956a4wYMSJOP/30+M1vfhPHHnts/PjHP46dd955QNvV3Nwc8+bN6/FQGNLkMa8ej3n1eMyrx2NePR7z6vGYV4/HvHoa9Zg3ZfX+ezIAAAAAOarvGUUAAAAAciZ+AAAAAEkTPwAAAICkiR8AAABA0pKNH9ddd13MnDkzdt1119hjjz16vM66devi5JNPjt122y3Gjh0bl156aWzZsqXP79vZ2RmXXHJJjB07Nnbbbbc45ZRT4vXXX6/DPWA4Vq5cGU1NTT1+rFq1qtfbnXvuuTtc/4gjjmjgljMcU6ZM2eHxu+aaa/q8TZZl0dbWFhMnTozRo0fHUUcdFc8//3yDtpjhePXVV+O8886LqVOnxujRo2O//faLefPm9TuO28/L5a//+q9j6tSpscsuu8T06dPjn//5n/u8/sMPPxzTp0+PXXbZJT772c/G7bff3qAtZbgWLFgQf/iHfxi77757jBs3Lv74j/841qxZ0+dtenu9f+mllxq01QxHW1vbDo/dhAkT+ryNfbzcepqrNTU1xcUXX9zj9e3j5fPII4/EySefHBMnToympqb4+c9/3u3rQ517L126NA444IBobm6OAw44IJYtWzbobUs2fmzZsiVOO+20+Pa3v93j1z/++OM46aST4v33349HH300lixZEkuXLo0rr7yyz+972WWXxbJly2LJkiXx6KOPxnvvvRdf+cpX4uOPP67H3WCIZs6cGRs3buz2cf7558eUKVPisMMO6/O2xx9/fLfb3X///Q3aamrh+9//frfH73vf+16f17/xxhvjlltuidtuuy1WrVoVEyZMiC9/+cvx7rvvNmiLGaqXXnopPvnkk/ibv/mbeP755+PWW2+N22+/Pa699tp+b2s/L4e77747Lrvssvjud78bq1evjiOPPDJOOOGEWLduXY/XX7t2bZx44olx5JFHxurVq+Paa6+NSy+9NJYuXdrgLWcoHn744bj44ovjiSeeiBUrVsRHH30Us2fPjvfff7/f265Zs6bbPv0f/+N/bMAWUwsHHnhgt8fu2Wef7fW69vHyW7VqVbfHe8WKFRERcdppp/V5O/t4ebz//vvx+c9/Pm677bYevz6Uuffjjz8eZ5xxRpx11lnxL//yL3HWWWfF6aefHk8++eTgNi5L3OLFi7OWlpYdLr///vuznXbaKduwYUPXZX/3d3+XNTc3Z+3t7T1+r3feeScbOXJktmTJkq7LNmzYkO20007ZP/7jP9Z826mdLVu2ZOPGjcu+//3v93m9c845J/ujP/qjxmwUNTd58uTs1ltvHfD1P/nkk2zChAnZ9ddf33XZBx98kLW0tGS33357HbaQervxxhuzqVOn9nkd+3l5/Kf/9J+yCy+8sNtl+++/f3bNNdf0eP2rr74623///btd9q1vfSs74ogj6raN1M/mzZuziMgefvjhXq/z0EMPZRGRvf32243bMGpm3rx52ec///kBX98+np7vfOc72X777Zd98sknPX7dPl5uEZEtW7as6/Ohzr1PP/307Pjjj+922XHHHZedeeaZg9qeZFd+9Ofxxx+Pgw46KCZOnNh12XHHHRednZ3x9NNP93ibp59+Oj788MOYPXt212UTJ06Mgw46KB577LG6bzNDd++998abb74Z5557br/XXblyZYwbNy5+7/d+Ly644ILYvHlz/TeQmrnhhhti7733jkMOOSSuu+66Pg+BWLt2bWzatKnbPt3c3ByzZs2yT5dUe3t77LXXXv1ez35efFu2bImnn3662/4ZETF79uxe98/HH398h+sfd9xx8dRTT8WHH35Yt22lPtrb2yMiBrRPH3roodHa2hrHHntsPPTQQ/XeNGro5ZdfjokTJ8bUqVPjzDPPjFdeeaXX69rH07Jly5a466674pvf/GY0NTX1eV37eBqGOvfubd8f7Hy9svFj06ZNMX78+G6X7bnnnjFq1KjYtGlTr7cZNWpU7Lnnnt0uHz9+fK+3oRgWLVoUxx13XEyaNKnP651wwgnx05/+NH7xi1/EzTffHKtWrYpjjjkmOjs7G7SlDMd3vvOdWLJkSTz00EMxZ86cWLhwYVx00UW9Xn/rfrv9WGCfLqd/+7d/i7/6q7+KCy+8sM/r2c/L4c0334yPP/54UPtnT6/t48ePj48++ijefPPNum0rtZdlWVxxxRXxhS98IQ466KBer9fa2hp33HFHLF26NO65556YNm1aHHvssfHII480cGsZqsMPPzzuvPPOeOCBB+KHP/xhbNq0KWbOnBlvvfVWj9e3j6fl5z//ebzzzjt9/nLSPp6Woc69e9v3BztfHzGoa+esra0t5s+f3+d1Vq1a1e85HbbqqTBmWdZveazFbRiaoTwHXn/99XjggQfi7//+7/v9/meccUbXvw866KA47LDDYvLkyXHffffFqaeeOvQNZ8gG85hffvnlXZf9/u//fuy5557xJ3/yJ12rQXqz/f5rn87XUPbzN954I44//vg47bTT4vzzz+/ztvbzchns/tnT9Xu6nGKbM2dO/J//83/i0Ucf7fN606ZNi2nTpnV9PmPGjFi/fn3cdNNN8cUvfrHem8kwnXDCCV3/Pvjgg2PGjBmx3377xU9+8pO44ooreryNfTwdixYtihNOOKHbSvzt2cfTNJS5dy3m66WKH3PmzIkzzzyzz+tMmTJlQN9rwoQJO5wg5e23344PP/xwh6q07W22bNkSb7/9drfVH5s3b46ZM2cO6P9leIbyHFi8eHHsvffeccoppwz6/2ttbY3JkyfHyy+/POjbUhvD2e+3/gWPX/3qVz3Gj61nlN+0aVO0trZ2Xb558+ZexwHqb7CP+RtvvBFHH310zJgxI+64445B/3/282IaO3Zs7Lzzzjv8Vqev/XPChAk9Xn/EiBF9BlCK5ZJLLol77703Hnnkkdhnn30Gffsjjjgi7rrrrjpsGfW22267xcEHH9zreGwfT8drr70WDz74YNxzzz2Dvq19vLyGOvfubd8f7Hy9VPFj7NixMXbs2Jp8rxkzZsR1110XGzdu7PrBL1++PJqbm2P69Ok93mb69OkxcuTIWLFiRZx++ukREbFx48Z47rnn4sYbb6zJdtG3wT4HsiyLxYsXx9lnnx0jR44c9P/31ltvxfr167vtnDTWcPb71atXR0T0+vhNnTo1JkyYECtWrIhDDz00Ij49/vThhx+OG264YWgbzLAN5jHfsGFDHH300TF9+vRYvHhx7LTT4I/mtJ8X06hRo2L69OmxYsWK+OpXv9p1+YoVK+KP/uiPerzNjBkz4n/+z//Z7bLly5fHYYcdNqTXABory7K45JJLYtmyZbFy5cqYOnXqkL7P6tWr7c8l1dnZGS+++GIceeSRPX7dPp6OxYsXx7hx4+Kkk04a9G3t4+U11Ln3jBkzYsWKFd1WeS9fvnzwCxAGdXrUEnnttdey1atXZ/Pnz89+53d+J1u9enW2evXq7N13382yLMs++uij7KCDDsqOPfbY7Je//GX24IMPZvvss082Z86cru/x+uuvZ9OmTcuefPLJrssuvPDCbJ999skefPDB7Je//GV2zDHHZJ///Oezjz76qOH3kf49+OCDWURkL7zwQo9fnzZtWnbPPfdkWZZl7777bnbllVdmjz32WLZ27drsoYceymbMmJH9h//wH7KOjo5GbjZD8Nhjj2W33HJLtnr16uyVV17J7r777mzixInZKaec0u162z7mWZZl119/fdbS0pLdc8892bPPPpt9/etfz1pbWz3mJbBhw4bsd3/3d7Njjjkme/3117ONGzd2fWzLfl5eS5YsyUaOHJktWrQoe+GFF7LLLrss22233bJXX301y7Isu+aaa7Kzzjqr6/qvvPJKtuuuu2aXX3559sILL2SLFi3KRo4cmf33//7f87oLDMK3v/3trKWlJVu5cmW3/fnXv/5113W2f8xvvfXWbNmyZdm//uu/Zs8991x2zTXXZBGRLV26NI+7wCBdeeWV2cqVK7NXXnkle+KJJ7KvfOUr2e67724fT9zHH3+c7bvvvtmf/umf7vA1+3j5vfvuu13vvSOia37+2muvZVk2sLn3WWed1e0vu/2v//W/sp133jm7/vrrsxdffDG7/vrrsxEjRmRPPPHEoLYt2fhxzjnnZBGxw8dDDz3UdZ3XXnstO+mkk7LRo0dne+21VzZnzpzsgw8+6Pr62rVrd7jNb37zm2zOnDnZXnvtlY0ePTr7yle+kq1bt66B94zB+PrXv57NnDmz169HRLZ48eIsy7Ls17/+dTZ79uzsM5/5TDZy5Mhs3333zc455xyPb0k8/fTT2eGHH561tLRku+yySzZt2rRs3rx52fvvv9/tets+5ln26Z/cmjdvXjZhwoSsubk5++IXv5g9++yzDd56hmLx4sU9jvPbd337ebn91//6X7PJkydno0aNyv7gD/6g2589Peecc7JZs2Z1u/7KlSuzQw89NBs1alQ2ZcqU7Ac/+EGDt5ih6m1/3nbM3v4xv+GGG7L99tsv22WXXbI999wz+8IXvpDdd999jd94huSMM87IWltbs5EjR2YTJ07MTj311Oz555/v+rp9PE0PPPBAFhHZmjVrdviafbz8tv554u0/zjnnnCzLBjb3njVrVtf1t/pv/+2/ZdOmTctGjhyZ7b///kMKYE1Z9u9nCQIAAABIUGX/1C0AAABQDeIHAAAAkDTxAwAAAEia+AEAAAAkTfwAAAAAkiZ+AAAAAEkTPwAAAICkiR8AAABA0sQPAAAAIGniBwAAAJA08QMAAABImvgBAAAAJO3/B5JEGLUaQzz8AAAAAElFTkSuQmCC\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "#testuniverse.plot(width=(700,700),\n", + "# basis='xy',\n", + "# colors=colormap,\n", + "# origin=(0.,0.,200),\n", + "# color_by='material',\n", + "# pixels=(1000,1000))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "1fab3df4", + "metadata": {}, + "outputs": [], + "source": [ + "#testuniverse.plot(width=(700,650),\n", + "# basis='xz',\n", + "# colors=colormap,\n", + "# origin=(0.,0.,220),\n", + "# color_by='material',\n", + "# pixels=(1000,1000))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "6b0f4320", + "metadata": {}, + "outputs": [], + "source": [ + "geo = openmc.Geometry()\n", + "geo.root_universe = testuniverse\n", + "#geo.remove_redundant_surfaces()\n", + "#geo.export_to_xml()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "48d744d2", + "metadata": {}, + "outputs": [], + "source": [ + "geo.export_to_xml()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "524f65b6", + "metadata": {}, + "outputs": [], + "source": [ + "geo.get_all_cells()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ec266af0", + "metadata": {}, + "outputs": [], + "source": [ + "plots = openmc.Plots()\n", + "\n", + "plot = openmc.Plot(name='detail-zoneIA-IIA-lower1')\n", + "plot.origin=(215, 0, 10.0)\n", + "plot.width=(40, 40)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='detail-zoneIA-main')\n", + "plot.origin=(215, 0, 23.0)\n", + "plot.width=(40, 40)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='detail-zoneIIA-upper1')\n", + "plot.origin=(215, 0, 435)\n", + "plot.width=(40, 40)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='detail-zoneIA-upper1')\n", + "plot.origin=(215, 0, 420)\n", + "plot.width=(40, 40)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='detail-zoneIIA-upper2')\n", + "plot.origin=(215, 0, 437)\n", + "plot.width=(40, 40)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='detail-zoneIA-upper2')\n", + "plot.origin=(215, 0, 439)\n", + "plot.width=(40, 40)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='detail-zoneIIA-upper3')\n", + "plot.origin=(215, 0, 440)\n", + "plot.width=(40, 40)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='detail-zoneIA-upper3')\n", + "plot.origin=(215, 0, 448)\n", + "plot.width=(40, 40)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='detail-zoneIIA-upper4')\n", + "plot.origin=(215, 0, 442)\n", + "plot.width=(40, 40)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='full-zoneIA-IIA-lower1')\n", + "plot.origin=(0.0, 0, 10.0)\n", + "plot.width=(600, 600)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='full-zoneIA-main')\n", + "plot.origin=(0, 0, 23.0)\n", + "plot.width=(600, 600)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='full-zoneIIA-upper1')\n", + "plot.origin=(0, 0, 435)\n", + "plot.width=(600, 600)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='full-zoneIA-upper1')\n", + "plot.origin=(0, 0, 420)\n", + "plot.width=(600, 600)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='full-zoneIIA-upper2')\n", + "plot.origin=(0, 0, 437)\n", + "plot.width=(600, 600)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='full-zoneIA-upper2')\n", + "plot.origin=(0, 0, 439)\n", + "plot.width=(600, 600)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='full-zoneIIA-upper3')\n", + "plot.origin=(0, 0, 440)\n", + "plot.width=(600, 600)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='full-zoneIA-upper3')\n", + "plot.origin=(0, 0, 448)\n", + "plot.width=(600, 600)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='full-zoneIIA-upper4')\n", + "plot.origin=(0, 0, 442)\n", + "plot.width=(600, 600)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xy'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='core-xz-detail-upper')\n", + "plot.origin=(215, 0, 440)\n", + "plot.width=(100, 100)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xz'\n", + "plots.append(plot)\n", + "\n", + "plot = openmc.Plot(name='full-core-xz')\n", + "plot.origin=(0, 0, 200)\n", + "plot.width=(700, 700)\n", + "plot.pixels=(1000,1000)\n", + "plot.color_by='material'\n", + "plot.colors=colormap\n", + "plot.basis='xz'\n", + "plots.append(plot)\n", + "\n", + "plots.export_to_xml()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "76ec95ac", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python [conda env:openmc-env] *", + "language": "python", + "name": "conda-env-openmc-env-py" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.6" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/examples/msbr/model-plotting.ipynb b/examples/msbr/model-plotting.ipynb index dc9a5c970..6352caf68 100644 --- a/examples/msbr/model-plotting.ipynb +++ b/examples/msbr/model-plotting.ipynb @@ -11,6 +11,16 @@ "import numpy as np" ] }, + { + "cell_type": "code", + "execution_count": null, + "id": "46a4a1d5", + "metadata": {}, + "outputs": [], + "source": [ + "mycul = openmc.ZPlane()" + ] + }, { "cell_type": "code", "execution_count": null, @@ -19,7 +29,7 @@ "outputs": [], "source": [ "# Create materials\n", - "fuel, moder, hast = mat\n", + "fuel = openmc.Material(name='fuel', temperature=900.0)\n", "fuel.set_density('g/cm3', density=3.35)\n", "fuel.add_components({'Li7': 0.0787474673879085,\n", " 'Be9': 0.0225566879138321,\n", @@ -70,48 +80,66 @@ " \"\"\"Helper function that moves Zone IA and Zone IIA cells to the\n", " appropriate height.\"\"\"\n", " cell_list = []\n", + " n_levels = len(cells_tuples)\n", " for i, cells in enumerate(cells_tuples):\n", - " lower_bound = levels[i]\n", - " upper_bound = levels[i+1]\n", + " if i == 0:\n", + " lower_bound = None\n", + " upper_bound = levels[i]\n", + " elif i == n_levels - 1:\n", + " lower_bound = levels[i-1]\n", + " upper_bound = None\n", + " else:\n", + " lower_bound = levels[i-1]\n", + " upper_bound = levels[i]\n", " for j, cell in enumerate(cells):\n", - " cell.region = cell.region & +lower_bound & -upper_bound\n", + " if lower_bound is None:\n", + " cell.region = cell.region & -upper_bound\n", + " elif upper_bound is None:\n", + " cell.region = cell.region & +lower_bound\n", + " else:\n", + " cell.region = cell.region & +lower_bound & -upper_bound\n", " cell_list.append(cell)\n", " return cell_list\n", "\n", - "def shared_elem_geometry():\n", - " \"\"\"Surfaces and regions shared by Zone IA and Zone IIA elements. \n", - " Specs found in Robertson, 1971 Fig 3.4 (p. 17) and Fig 3.5 (p.18)\"\"\"\n", - "\n", - " elem_bound = openmc.rectangular_prism(5.08*2, 5.08*2) # Pin outer boundary\n", - "\n", - " gr_sq_neg = openmc.rectangular_prism(4.953*2, 4.953*2, corner_radius=0.46) # Graphite square\n", - "\n", - " # params for main pin section for both I-A and II-A\n", - " r_d = 0.66802\n", - " l1 = 4.28498\n", - " l2 = 4.53898\n", - " l3 = 5.62102\n", - " ul = openmc.ZCylinder(-l1, l2, r_d, name='corner_ul')\n", - " br = openmc.ZCylinder(l1, -l2, r_d, name='corner_br')\n", - " lb = openmc.ZCylinder(-l2, -l1, r_d, name='corner_lb')\n", - " ru = openmc.ZCylinder(l2, l1, r_d, name='corner_ru')\n", - " ul_t = openmc.ZCylinder(-l1, -l3, r_d, name='corner_ul_tip')\n", - " br_t = openmc.ZCylinder(l1, l3, r_d, name='corner_br_tip')\n", - " ru_t = openmc.ZCylinder(-l3, l1, r_d, name='corner_ru_tip')\n", - " lb_t = openmc.ZCylinder(l3, -l1, r_d, name='corner_lb_tip')\n", - "\n", - " gr_corners = elem_bound & (-ul | -br | -lb | -ru | \n", - " -ul_t | -br_t | -ru_t | -lb_t)\n", - "\n", - " inter_elem_channel = (~gr_sq_neg & elem_bound &\n", - " +ul & +br & +lb & +ru &\n", - " +ul_t & +ru_t & +ru_t & +lb_t)\n", - " \n", - " gr_round_4 = openmc.ZCylinder(r=2.2225, name='gr_round_4')\n", "\n", - " \n", - " return elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4\n", - " " + "def shared_elem_geometry(elem_type, eb_d, gr_sq_d, gr_sq_r, r_dt, l1, l2, l3, r_es, es_name):\n", + " \"\"\"Surfaces and regions shared by Zone IA and Zone IIA elements.\n", + " Specs found in Robertson, 1971 Fig 3.4 (p. 17) and Fig 3.5 (p. 18)\"\"\"\n", + " if elem_type == 'core':\n", + " # for main pin section for both I-A and II-A\n", + " ul = openmc.ZCylinder(-l1, l2, r_dt, name='corner_ul')\n", + " br = openmc.ZCylinder(l1, -l2, r_dt, name='corner_br')\n", + " lb = openmc.ZCylinder(-l2, -l1, r_dt, name='corner_lb')\n", + " ru = openmc.ZCylinder(l2, l1, r_dt, name='corner_ru')\n", + " inter_elem_channel = +ul & +br & +lb & +ru\n", + " elif elem_type == 'cr':\n", + " # params for control rods\n", + " r_d = 1.16\n", + " e_d = 2 * r_d / np.sqrt(3)\n", + " r_c = 0.18\n", + " \n", + " ul = openmc.model.hexagonal_prism(origin=(-l1, l2), edge_length=e_d, orientation='x', corner_radius=r_c)\n", + " br = openmc.model.hexagonal_prism(origin=(l1, -l2), edge_length=e_d, orientation='x',corner_radius=r_c)\n", + " lb = openmc.model.hexagonal_prism(origin=(-l2, -l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", + " ru = openmc.model.hexagonal_prism(origin=(l2, l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", + " inter_elem_channel = ~ul & ~br & ~lb & ~ru\n", + " elem_bound = openmc.rectangular_prism(eb_d*2, eb_d*2) # Pin outer boundary\n", + " gr_sq_neg = openmc.rectangular_prism(gr_sq_d*2, gr_sq_d*2, corner_radius=gr_sq_r) # Graphite square\n", + " \n", + " ul_t = openmc.ZCylinder(-l1, -l3, r_dt, name='corner_ul_tip')\n", + " br_t = openmc.ZCylinder(l1, l3, r_dt, name='corner_br_tip')\n", + " ru_t = openmc.ZCylinder(-l3, l1, r_dt, name='corner_ru_tip')\n", + " lb_t = openmc.ZCylinder(l3, -l1, r_dt, name='corner_lb_tip')\n", + " \n", + " inter_elem_channel = inter_elem_channel & +ul_t & +br_t & +ru_t & +lb_t\n", + " \n", + " gr_corners = ([ul, 'ul'], [br, 'br'], [ru, 'ru'], [lb, 'lb'],\n", + " [ul_t, 'ul_t'], [br_t, 'br_t'], [ru_t, 'ru_t'], [lb_t, 'lb_t'])\n", + " \n", + " extra_surf = openmc.ZCylinder(r=r_es, name=es_name)\n", + " \n", + " \n", + " return elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, extra_surf" ] }, { @@ -121,9 +149,9 @@ "metadata": {}, "outputs": [], "source": [ - "def zoneIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4):\n", + "def zoneIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4):\n", " \"\"\"Zone IA element. Specs found in Robertson, 1971 Fig 3.4 (p. 17)\"\"\"\n", - " elem_levels = [0.0, 22.86, 419.10, 438.15, 445.135, 449.58]\n", + " elem_levels = [22.86, 419.10, 438.15, 445.135]\n", " level_bounds = []\n", " for level in elem_levels:\n", " level_bounds.append(openmc.ZPlane(z0=level))\n", @@ -133,7 +161,7 @@ " h = 12.66\n", " theta = np.arctan(4.953 / h)\n", " r2 = (1 / np.cos(theta))**2 - 1\n", - " s3 = openmc.ZCone(z0=h + elem_levels[3], r2=r2, name='cone_i')\n", + " s3 = openmc.ZCone(z0=h + elem_levels[2], r2=r2, name='cone_i')\n", "\n", " c1 = openmc.Cell(fill=fuel, region=(-s2), name='ia_fuel_inner_1')\n", " c2 = openmc.Cell(fill=moder, region=(+s2 & -s1), name='ia_moderator_1')\n", @@ -143,11 +171,13 @@ " # I-A main (lower 2)\n", " c4 = c1.clone(clone_materials=False)\n", " c4.name = 'ia_fuel_inner_main'\n", - " c5 = openmc.Cell(fill=moder, region=(+s2 &\n", - " gr_sq_neg |\n", - " gr_corners), name='ia_moderator_main')\n", - " c6 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='ia_fuel_outer_main')\n", - " iam = (c4, c5, c6)\n", + " c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg & inter_elem_channel),\n", + " name='ia_moderator_main')\n", + " c6 = openmc.Cell(fill=fuel, region=(~gr_sq_neg & elem_bound & inter_elem_channel),\n", + " name='ia_fuel_outer_main') \n", + " iam = [c4, c5, c6]\n", + " for (corner, name) in gr_corners:\n", + " iam.append(openmc.Cell(fill=moder, region=-corner, name=f'ia_moderator_main_{name}'))\n", " \n", " # I-A 2 (upper 1)\n", " c7 = c1.clone(clone_materials=False)\n", @@ -178,9 +208,9 @@ " \n", " return ia\n", "\n", - "def zoneIIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4):\n", + "def zoneIIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4):\n", " \"\"\"Zone IIA element. Specs found in Robertson, 1971 Fig 3.5 (p. 18)\"\"\"\n", - " elem_levels = [0.0, 434.34, 436.88, 439.42, 441.96, 449.58]\n", + " elem_levels = [434.34, 436.88, 439.42, 441.96]\n", " level_bounds = []\n", " for level in elem_levels:\n", " level_bounds.append(openmc.ZPlane(z0=level))\n", @@ -190,21 +220,24 @@ " h = 6.5\n", " theta = np.arctan(3.65125 / h)\n", " r2 = (1 / np.cos(theta))**2 - 1\n", - " s4 = openmc.ZCone(z0=h + elem_levels[3], r2=r2, name='cone_ii')\n", + " s4 = openmc.ZCone(z0=h + elem_levels[2], r2=r2, name='cone_ii')\n", "\n", " # II-A main (lower 1)\n", " c1 = openmc.Cell(fill=fuel, region=(-s1), name='iia_fuel_inner_main')\n", - " c2 = openmc.Cell(fill=moder, region=(+s1 & gr_sq_neg | gr_corners), name='iia_moderator_main')\n", - " c3 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='iia_fuel_outer_main')\n", - " c3.name = 'iia_fuel_outer_main'\n", - " iiam = (c1, c2, c3)\n", - "\n", + " c2 = openmc.Cell(fill=moder, region=(+s1 & gr_sq_neg & inter_elem_channel), name='iia_moderator_main')\n", + " c3 = openmc.Cell(fill=fuel, region=(~gr_sq_neg & elem_bound & inter_elem_channel), name='iia_fuel_outer_main')\n", + " iiam = [c1, c2, c3]\n", + " \n", " # II-A 2 (upper 1)\n", " c4 = openmc.Cell(fill=fuel, region=(-s2), name='iia_fuel_inner_2')\n", - " c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg | gr_corners), name='iia_moderator_2')\n", + " c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg & inter_elem_channel), name='iia_moderator_2')\n", " c6 = c3.clone(clone_materials=False)\n", " c6.name = 'iia_fuel_outer_2'\n", - " iia2 = (c4, c5, c6)\n", + " iia2 = [c4, c5, c6]\n", + " \n", + " for (corner, name) in gr_corners:\n", + " iiam.append(openmc.Cell(fill=moder, region=-corner, name=f'iia_moderator_main_{name}'))\n", + " iia2.append(openmc.Cell(fill=moder, region=-corner, name=f'iia_moderator_2_{name}'))\n", "\n", " # II-A 3 (upper 2)\n", " c7 = c4.clone(clone_materials=False)\n", @@ -266,9 +299,9 @@ "metadata": {}, "outputs": [], "source": [ - "#elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4 = shared_elem_geometry()\n", - "#ia = zoneIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4)\n", - "#iia = zoneIIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4)\n", + "#elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4 = shared_elem_geometry('core', 5.08, 4.953, 0.46, 0.66802, 4.28498, 4.53898, 5.62102, 2.2225, 'gr_round_4')\n", + "#ia = zoneIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4)\n", + "#iia = zoneIIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4)\n", "# tres, uno, dos, quatro\n", "#bl, ur, ul, br = graphite_triangles(elem_bound)" ] @@ -281,9 +314,9 @@ "outputs": [], "source": [ "#ia.plot(width=(20,20),\n", - "# basis='xz',\n", + "# basis='xy',\n", "# colors=colormap,\n", - "# origin=(0.,0.,440),\n", + "# origin=(0.,0.,300),\n", "# color_by='material',\n", "# pixels=(400,400))" ] @@ -303,77 +336,6 @@ "# pixels=(400,400))" ] }, - { - "cell_type": "code", - "execution_count": null, - "id": "f71ac1b6", - "metadata": {}, - "outputs": [], - "source": [ - "def shared_cr_geometry():\n", - " fuel_hole = openmc.ZCylinder(r=5.08, name='cr_fuel_hole')\n", - " \n", - " elem_bound = openmc.rectangular_prism(7.62*2, 7.62*2) # Pin outer boundary\n", - "\n", - " gr_sq_neg = openmc.rectangular_prism(7.23646*2, 7.23646*2, corner_radius=0.99) # Graphite square\n", - " # params for \n", - " r_d = 1.16\n", - " e_d = 2 * r_d / np.sqrt(3)\n", - " r_dt = 0.8\n", - " r_c = 0.18\n", - " l1 = 5.8801\n", - " l2 = 6.505\n", - " l3 = 8.03646\n", - " ul = openmc.model.hexagonal_prism(origin=(-l1, l2), edge_length=e_d, orientation='x', corner_radius=r_c)\n", - " (ul_u, ul_b, ul_ur, ul_br, ul_bl, ul_ul,\n", - " ul_cyl_bl_in, ul_cyl_bl_out, \n", - " ul_cyl_ul_in, ul_cyl_ul_out,\n", - " ul_cyl_br_in, ul_cyl_br_out,\n", - " ul_cyl_ur_in, ul_cyl_ur_out,\n", - " ul_cyl_l_in, ul_cyl_l_out,\n", - " ul_cyl_r_in, ul_cyl_r_out)= list(ul.get_surfaces().values())\n", - " br = openmc.model.hexagonal_prism(origin=(l1, -l2), edge_length=e_d, orientation='x',corner_radius=r_c)\n", - " (br_u, br_b, br_ur, br_br, br_bl, br_ul,\n", - " br_cyl_bl_in, br_cyl_bl_out, \n", - " br_cyl_ul_in, br_cyl_ul_out,\n", - " br_cyl_br_in, br_cyl_br_out,\n", - " br_cyl_ur_in, br_cyl_ur_out,\n", - " br_cyl_l_in, br_cyl_l_out,\n", - " br_cyl_r_in, br_cyl_r_out)= list(br.get_surfaces().values())\n", - " lb = openmc.model.hexagonal_prism(origin=(-l2, -l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", - " (lb_r, lb_l, lb_ur, lb_ul, lb_br, lb_bl,\n", - " lb_cyl_lb_in, lb_cyl_lb_out, \n", - " lb_cyl_lu_in, lb_cyl_lu_out,\n", - " lb_cyl_rb_in, lb_cyl_rb_out,\n", - " lb_cyl_ru_in, lb_cyl_ru_out,\n", - " lb_cyl_b_in, lb_cyl_b_out,\n", - " lb_cyl_u_in, lb_cyl_u_out)= list(lb.get_surfaces().values())\n", - " ru = openmc.model.hexagonal_prism(origin=(l2, l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", - " (ru_r, ru_l, ru_ur, ru_ul, ru_br, ru_bl,\n", - " ru_cyl_lb_in, ru_cyl_lb_out, \n", - " ru_cyl_lu_in, ru_cyl_lu_out,\n", - " ru_cyl_rb_in, ru_cyl_rb_out,\n", - " ru_cyl_ru_in, ru_cyl_ru_out,\n", - " ru_cyl_b_in, ru_cyl_b_out,\n", - " ru_cyl_u_in, ru_cyl_u_out)= list(ru.get_surfaces().values())\n", - " ul_t = openmc.ZCylinder(-l1, -l3, r_dt, name='corner_ul_tip')\n", - " br_t = openmc.ZCylinder(l1, l3, r_dt, name='corner_br_tip')\n", - " ru_t = openmc.ZCylinder(-l3, l1, r_dt, name='corner_ru_tip')\n", - " lb_t = openmc.ZCylinder(l3, -l1, r_dt, name='corner_lb_tip')\n", - "\n", - " gr_corners = elem_bound & (ul | br | lb | ru | \n", - " -ul_t | -br_t | -ru_t | -lb_t)\n", - "\n", - " inter_elem_channel = (~gr_sq_neg & elem_bound &\n", - " ~ul & ~br & ~lb & ~ru &\n", - " +ul_t & +ru_t & +ru_t & +lb_t)\n", - " \n", - "\n", - "\n", - " return fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel\n", - " " - ] - }, { "cell_type": "code", "execution_count": null, @@ -381,28 +343,43 @@ "metadata": {}, "outputs": [], "source": [ - "def control_rod(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel):\n", + "def control_rod(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole):\n", " s1 = openmc.ZCylinder(r=4.7625, name='control_rod')\n", "\n", " c1 = openmc.Cell(fill=moder, region=-s1, name='control_rod')\n", " c2 = openmc.Cell(fill=fuel, region=(+s1 & -fuel_hole), name='cr_fuel_inner')\n", - " \n", - " moderator_block = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg | gr_corners), name='cr_moderator')\n", - " fuel_outer = openmc.Cell(fill=fuel, region=inter_elem_channel, name='cr_fuel_outer')\n", + " c3 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg & inter_elem_channel),\n", + " name='cr_moderator')\n", + " c4 = openmc.Cell(fill=fuel, region= (~gr_sq_neg & elem_bound & inter_elem_channel),\n", + " name='cr_fuel_outer')\n", + " \n", " #universe_id=3\n", - " cr = openmc.Universe(name='control_rod')\n", - " cr.add_cells([c1, c2, moderator_block, fuel_outer])\n", - " \n", + " cr = openmc.Universe(name='control_rod',\n", + " cells=[c1, c2, c3, c4])\n", + " \n", + " for i, (corner, name) in enumerate(gr_corners):\n", + " if i < 4:\n", + " cr.add_cell(openmc.Cell(fill=moder, region=corner, name=f'cr_moderator_{name}'))\n", + " else:\n", + " cr.add_cell(openmc.Cell(fill=moder, region=-corner, name=f'cr_moderator_{name}'))\n", + "\n", " return cr\n", " \n", - "def control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel):\n", + "def control_rod_channel(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole):\n", " c1 = openmc.Cell(fill=fuel, region=(-fuel_hole), name='crc_fuel_inner')\n", - " moderator_block = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg | gr_corners), name='crc_moderator')\n", - " fuel_outer = openmc.Cell(fill=fuel, region=inter_elem_channel, name='crc_fuel_outer')\n", + " c2 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg & inter_elem_channel), name='crc_moderator')\n", + " c3 = openmc.Cell(fill=fuel, region=(~gr_sq_neg & elem_bound & inter_elem_channel), name='crc_fuel_outer')\n", + " \n", " # universe_id=4\n", - " crc = openmc.Universe(name='control_rod_channel')\n", - " crc.add_cells([c1, moderator_block, fuel_outer])\n", - " \n", + " crc = openmc.Universe(name='control_rod_channel',\n", + " cells=[c1, c2, c3])\n", + " \n", + " for i, (corner, name) in enumerate(gr_corners):\n", + " if i < 4:\n", + " crc.add_cell(openmc.Cell(fill=moder, region=corner, name=f'crc_moderator_{name}'))\n", + " else:\n", + " crc.add_cell(openmc.Cell(fill=moder, region=-corner, name=f'crc_moderator_{name}'))\n", + "\n", " return crc" ] }, @@ -413,10 +390,10 @@ "metadata": {}, "outputs": [], "source": [ - "#fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel = shared_cr_geometry() \n", + "#elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole = shared_elem_geometry('cr', 7.62, 7.23645, 0.99, 0.8, 5.8801, 6.505, 8.03646, 5.08, 'cr_fuel_hole')\n", "\n", - "#cr = control_rod(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel)\n", - "#crc = control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel)" + "#cr = control_rod(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole)\n", + "#crc = control_rod_channel(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole)" ] }, { @@ -466,18 +443,13 @@ " s2 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=218.44, r2=215.53, name='smaller_octader')\n", " s3 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=228.60, r2=193.97, name='smallest_octader')\n", " \n", - " oct1 = list((-s1).get_surfaces().values())\n", - " oct2 = list((-s2).get_surfaces().values())\n", - " oct3 = list((-s3).get_surfaces().values())\n", - " zone_i_octas = (oct1, oct2, oct3)\n", - " \n", " zone_i_boundary = (s1, s2, s3)\n", "\n", " zone_ii_boundary = openmc.ZCylinder(r=256.032, name='iib_boundary')\n", " annulus_boundary = openmc.ZCylinder(r=261.112, name='annulus_boundary')\n", " lower_plenum_boundary = openmc.ZPlane(z0=-7.62, name='lower_plenum_boundary')\n", "\n", - " zone_bounds = (cr_boundary, zone_i_boundary, zone_i_octas, zone_ii_boundary)\n", + " zone_bounds = (cr_boundary, zone_i_boundary, zone_ii_boundary)\n", " \n", " core_bounds = (annulus_boundary, lower_plenum_boundary, core_base, core_top)\n", " \n", @@ -500,11 +472,10 @@ " return zone_bounds, core_bounds, reflector_bounds, vessel_bounds\n", "\n", "def cr_lattice(cr_boundary, core_base, core_top):\n", - " fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel = shared_cr_geometry() \n", - " elem_bound = openmc.rectangular_prism(7.62*2, 7.62*2) # Pin outer boundary\n", + " elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole = shared_elem_geometry('cr', 7.62, 7.23645, 0.99, 0.8, 5.8801, 6.505, 8.03646, 5.08, 'cr_fuel_hole')\n", "\n", - " f = control_rod(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel)\n", - " e = control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel)\n", + " f = control_rod(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole)\n", + " e = control_rod_channel(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole)\n", " \n", " cr = openmc.RectLattice()\n", " cr.pitch = np.array([15.24, 15.24])\n", @@ -518,9 +489,10 @@ " return c1\n", "\n", "def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top):\n", - " elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4 = shared_elem_geometry()\n", - " l = zoneIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4)\n", - " z = zoneIIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4)\n", + " elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4 = shared_elem_geometry('core', 5.08, 4.953, 0.46, 0.66802, 4.28498, 4.53898, 5.62102, 2.2225, 'gr_round_4')\n", + " l = zoneIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4)\n", + " elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4 = shared_elem_geometry('core', 5.08, 4.953, 0.46, 0.66802, 4.28498, 4.53898, 5.62102, 2.2225, 'gr_round_4')\n", + " z = zoneIIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4)\n", " v = void_cell(elem_bound)\n", " # tres, uno, dos, quatro\n", " t, u, d, q = graphite_triangles(elem_bound) \n", @@ -575,68 +547,20 @@ " [v, v, v, v, v, v, v, v, v, v, v, v, v, t, z, z, z, z, l, l, l, l, l, l, l, l, l, z, z, z, z, q, v, v, v, v, v, v, v, v, v, v, v, v, v],\n", " [v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, t, z, z, z, z, z, z, z, z, z, q, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v]]\n", " \n", - " oct1_maxy, oct1_miny, oct1_maxx, oct1_minx, oct1_ur, oct1_br, oct1_bl, oct1_ul = zone_i_octas[0]\n", - " oct2_maxy, oct2_miny, oct2_maxx, oct2_minx, oct2_ur, oct2_br, oct2_bl, oct2_ul = zone_i_octas[1]\n", - " oct3_maxy, oct3_miny, oct3_maxx, oct3_minx, oct3_ur, oct3_br, oct3_bl, oct3_ul = zone_i_octas[2]\n", - " cb_minx, cb_maxx, cb_miny, cb_maxy = list(cr_boundary.get_surfaces().values())\n", - " \n", - " #c1 = openmc.Cell(fill=moder, region=+s3 & -s2)\n", - " c1_ur = openmc.Cell(fill=main, region=(-oct3_ur & +oct2_ur & -oct2_maxx & -oct2_maxy),\n", - " name='smaller_octader_ur')\n", - " c1_ul = openmc.Cell(fill=main, region=(+oct3_ul & -oct2_ul & +oct2_minx & -oct2_maxy),\n", - " name='smaller_octader_ul')\n", - " c1_bl = openmc.Cell(fill=main, region=(+oct3_bl & -oct2_bl & +oct2_minx & +oct2_miny),\n", - " name='smaller_octader_bl')\n", - " c1_br = openmc.Cell(fill=main, region=(-oct3_br & +oct2_br & -oct2_maxx & +oct2_miny),\n", - " name='smaller_octader_br')\n", - " c1 = [c1_ur, c1_ul, c1_bl, c1_br]\n", - "\n", - " #c2 = openmc.Cell(fill=moder, region=-s3)\n", - " c2_r = openmc.Cell(fill=main, region=(+cb_maxx & +cb_miny & -cb_maxy & -oct3_maxx),\n", - " name='smallest_octader_r')\n", - " c2_ur = openmc.Cell(fill=main, region=(+cb_maxx & +cb_maxy & -oct3_maxx & -oct3_maxy & +oct3_ur),\n", - " name='smallest_octader_ur')\n", - " c2_u = openmc.Cell(fill=main, region=(+cb_maxy & +cb_minx & -cb_maxx & -oct3_maxy),\n", - " name='smallest_octader_u')\n", - " c2_ul = openmc.Cell(fill=main, region=(-cb_minx & +cb_maxy & +oct3_minx & -oct3_maxy & -oct3_ul),\n", - " name='smallest_octader_ul')\n", - " c2_l = openmc.Cell(fill=main, region=(-cb_minx & +cb_miny & -cb_maxy & +oct3_minx),\n", - " name='smallest_octader_l')\n", - " c2_bl = openmc.Cell(fill=main, region=(-cb_minx & -cb_miny & +oct3_minx & +oct3_miny & -oct3_bl),\n", - " name='smallest_octader_bl')\n", - " c2_b = openmc.Cell(fill=main, region=(-cb_miny & +cb_minx & -cb_maxx & +oct3_miny),\n", - " name='smallest_octader_b')\n", - " c2_br = openmc.Cell(fill=main, region=(+cb_maxx & -cb_miny & -oct3_maxx & +oct3_miny & +oct3_br),\n", - " name='smallest_octader_br')\n", - " c2 = [c2_r, c2_ur, c2_u, c2_ul, c2_l, c2_bl, c2_b, c2_br]\n", + " c1 = openmc.Cell(fill=main, region=(+core_base & -core_top &\n", + " +zone_i_boundary[2] & -zone_i_boundary[1] &\n", + " ~cr_boundary), name='main_lattice_smaller_octader')\n", + " c2 = openmc.Cell(fill=main, region=(+core_base & -core_top &\n", + " -zone_i_boundary[2] &\n", + " ~cr_boundary), name='main_lattice_insite_smallest_octader')\n", + " c3 = openmc.Cell(fill=main, region=(+core_base & -core_top &\n", + " -zone_i_boundary[0] & +zone_i_boundary[1] & +zone_i_boundary[2] &\n", + " ~cr_boundary), name='main_lattice_inside_base_octader_deducted_smaller_smallest')\n", + " main = [c1, c2, c3]\n", "\n", - " #c3 = openmc.Cell(fill=moder, region=-s1 & +s2)\n", - " c3_ur = openmc.Cell(fill=main, region=(-oct2_ur & +oct1_ur & -oct1_maxx & -oct1_maxy),\n", - " name='base_octader_ur')\n", - " c3_ul = openmc.Cell(fill=main, region=(+oct2_ul & -oct1_ul & +oct1_minx & -oct1_maxy),\n", - " name='base_octader_ul')\n", - " c3_bl = openmc.Cell(fill=main, region=(+oct2_bl & -oct1_bl & +oct1_minx & +oct1_miny),\n", - " name='base_octader_bl')\n", - " c3_br = openmc.Cell(fill=main, region=(-oct2_br & +oct1_br & -oct1_maxx & +oct1_miny),\n", - " name='base_octader_br')\n", - " c3 = [c3_ur, c3_ul, c3_bl, c3_br]\n", - " for cells in (c1, c2, c3):\n", - " for cell in cells:\n", - " cell.region = cell.region & +core_base & -core_top \n", - "\n", - " #c1 = openmc.Cell(fill=main, region=(+core_base & -core_top & \n", - " # +zone_i_boundary[2] & -zone_i_boundary[1] & \n", - " # ~cr_boundary), name='main_lattice')\n", - " #c2 = openmc.Cell(fill=main, region=(+core_base & -core_top & \n", - " # -zone_i_boundary[2] & \n", - " # ~cr_boundary), name='main_lattice')\n", - " #c3 = openmc.Cell(fill=main, region=(+core_base & -core_top & \n", - " # -zone_i_boundary[0] & +zone_i_boundary[1] & +zone_i_boundary[2] &\n", - " # ~cr_boundary), name='main_lattice')\n", - " \n", " return c1, c2, c3\n", "\n", - "def zoneIIB(zone_i_octas, zone_i_boundary, cr_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top):\n", + "def zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top):\n", " # Large elements\n", " large_angular_width = 3.538\n", " large_half_w = large_angular_width / 2\n", @@ -665,67 +589,48 @@ " small_elems_per_octant = 25\n", " \n", " elem_cells = []\n", + " zone_iib_reg = None\n", " for i, pos in enumerate(large_positions):\n", - " r1, r2 = big_radii[i]\n", - " t1 = pos - large_half_w\n", - " t2 = pos + large_half_w\n", - " large_elem = openmc.model.CylinderSector(r1, r2, t1, t2)\n", - " elem_hole = hole_region.rotate((0.0, 0.0, pos))\n", - " elem_reg = -large_elem & elem_hole\n", - " # comment/uncomment\n", - " #elem_cells.append(openmc.Cell(fill=moder, region=(elem_reg & \n", - " # ~zone_i_boundary &\n", - " # +core_base & \n", - " # -core_top), name=f'iib_large_element_{pos}'))\n", + " pos = np.round(pos, 3)\n", + " r1_big, r2_big = big_radii[i]\n", + " t1_big = pos - large_half_w\n", + " t2_big = pos + large_half_w\n", + " s1 = openmc.model.CylinderSector(r1_big, r2_big, t1_big, t2_big, name=f'iib_large_element_{pos}')\n", + " s2 = openmc.ZCylinder(**hole_args[i])\n", " if isinstance(zone_iib_reg, openmc.Region):\n", - " zone_iib_reg = zone_iib_reg | elem_reg\n", + " zone_iib_reg = zone_iib_reg & +s1\n", " else:\n", - " zone_iib_reg = elem_reg\n", - " small_start = t2 + adjacent_angular_offset\n", - " r1, r2 = small_radii\n", - " t1 = small_start\n", + " zone_iib_reg = +s1\n", + " \n", + " elem_cells.append(openmc.Cell(fill=moder, region=(-s1 & +s2), name=f'iib_large_element_{pos}'))\n", + " elem_cells.append(openmc.Cell(fill=fuel, region=(-s2),\n", + " name=f'iib_large_element_fuel_hole_{pos}'))\n", + " t1_small = t2_big + adjacent_angular_offset\n", + " r1_small, r2_small = small_radii\n", + " \n", " for i in range(0, small_elems_per_octant):\n", - " t2 = t1 + small_angular_width\n", - " elem_reg = -openmc.model.CylinderSector(r1, r2, t1, t2)\n", - " pos = t2 - (small_angular_width / 2)\n", - " # comment/uncomment\n", - " # elem_cells.append(openmc.Cell(fill=moder, region=(elem_reg & \n", - " # ~zone_i_boundary &\n", - " # +core_base & \n", - " # -core_top), name=f'iib_small_element_{pos}'))\n", - " zone_iib_reg = zone_iib_reg | elem_reg\n", - " t1 = t2 + adjacent_angular_offset\n", - " \n", - " # uncomment/comment\n", - " c1 = openmc.Cell(fill=moder, region=(zone_iib_reg &\n", - " ~zone_i_boundary &\n", - " +core_base &\n", - " -core_top), name='iib_moderator')\n", - " c2 = openmc.Cell(fill=fuel, region=(~zone_iib_reg & \n", - " ~zone_i_boundary & \n", - " -zone_ii_boundary & \n", - " +core_base & \n", - " -core_top), name='iib_fuel')\n", + " t2_small = t1_small + small_angular_width\n", + " \n", + " # reflector element\n", + " s5 = openmc.model.CylinderSector(r1_small, r2_small, t1_small, t2_small)\n", + " pos = t2_small - (small_angular_width / 2)\n", + " pos = np.round(pos, 3)\n", + " elem_cells.append(openmc.Cell(fill=moder, region=-s5, name=f'iib_small_element_{pos}'))\n", + " zone_iib_reg = zone_iib_reg & +s5\n", + " t1_small = t2_small + adjacent_angular_offset\n", " \n", - " # comment/uncomment\n", " #universe_id=10\n", - " #iib = openmc.Universe(name='zone_iib')\n", - " #iib.add_cell(c2)\n", - " #iib.add_cell(c1)\n", - " # comment/uncomment\n", - " #iib.add_cells(elem_cells)\n", - " \n", - " # comment/uncomment\n", - " #c3 = openmc.Cell(fill=iib, region=(~zone_i_boundary & \n", - " # -zone_ii_boundary & \n", - " # +core_base & \n", - " # -core_top), name='zone_iib')\n", - " \n", - " #comment/uncomment\n", - " #return c3\n", + " iib = openmc.Universe(name='zone_iib', cells=elem_cells)\n", + " iib.add_cell(openmc.Cell(fill=fuel, region=zone_iib_reg, name='zone_iib_fuel'))\n", + " \n", + " c1 = openmc.Cell(fill=iib, region=(+zone_i_boundary[0] &\n", + " +zone_i_boundary[1] &\n", + " +zone_i_boundary[2] &\n", + " -zone_ii_boundary &\n", + " +core_base &\n", + " -core_top), name='zone_iib')\n", + " return c1\n", "\n", - " # uncomment/comment\n", - " return c1, c2\n", "\n", "def annulus(zone_ii_boundary, annulus_boundary, core_base, core_top):\n", " annulus_reg = +zone_ii_boundary & -annulus_boundary & +core_base & -core_top\n", @@ -783,14 +688,14 @@ "source": [ "zone_bounds, core_bounds, reflector_bounds, vessel_bounds = shared_root_geometry()\n", "\n", - "cr_boundary, zone_i_boundary, zone_i_octas, zone_ii_boundary = zone_bounds\n", + "cr_boundary, zone_i_boundary, zone_ii_boundary = zone_bounds\n", "annulus_boundary, lower_plenum_boundary, core_base, core_top = core_bounds\n", "radial_reflector_boundary, bottom_reflector_boundary, top_reflector_boundary = reflector_bounds\n", "radial_vessel_boundary, bottom_vessel_boundary, top_vessel_boundary= vessel_bounds\n", "\n", - "main1, main2, main3 = main_lattice(zone_i_octas, cr_boundary, core_base, core_top)\n", + "main = main_lattice(zone_i_boundary, cr_boundary, core_base, core_top)\n", "cr = cr_lattice(cr_boundary, core_base, core_top)\n", - "iib_m, iib_f = zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top)\n", + "iib = zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top)\n", "a = annulus(zone_ii_boundary, annulus_boundary, core_base, core_top)\n", "lp = lower_plenum(core_base, lower_plenum_boundary, annulus_boundary)\n", "\n", @@ -809,7 +714,9 @@ " bottom_reflector_boundary)\n", "\n", "testuniverse = openmc.Universe()\n", - "testuniverse.add_cells([cr, main, iib_m, iib_f, lp, a, rr, rb, rt, vr, vb, vt])" + "testuniverse.add_cells([cr, lp, a, rr, rb, rt, vr, vb, vt])\n", + "testuniverse.add_cells(main)\n", + "testuniverse.add_cell(iib)" ] }, { diff --git a/examples/msbr/openmc_model.py b/examples/msbr/openmc_model.py index f0603b9fd..69d6523f7 100644 --- a/examples/msbr/openmc_model.py +++ b/examples/msbr/openmc_model.py @@ -1,5 +1,8 @@ import openmc import numpy as np +import argparse + +from openmc.deplete import CoupledOperator, PredictorIntegrator, CELIIntegrator from _core_elements import * from _control_rods import * @@ -34,13 +37,225 @@ mat = openmc.Materials(materials=[fuel, moder, hast]) mat.export_to_xml() -# Geometry -def cr_lattice(cr_boundary, core_base, core_top): - fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel = shared_cr_geometry() - elem_bound = openmc.rectangular_prism(7.62*2, 7.62*2) # Pin outer boundary - - f = control_rod(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel, moder, fuel) - e = control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, inter_elem_channel, moder, fuel) +def parse_arguments(): + """Parses arguments from command line. + + Parameters + ---------- + + Returns + ------- + + """ + parser = argparse.ArgumentParser() + parser.add_argument('--optimized', + type=bool, + default=False, + help='flag to generate model \ + with only simple regions') + parser.add_argument('--deplete', + type=bool, + default=False, + help='flag for running depletion') + + args = parser.parse_args() + return bool(args.optimized), bool(args.deplete) + +def shared_elem_geometry(elem_type, eb_d, gr_sq_d, gr_sq_r, r_dt, l1, l2, l3, r_es, es_name, optimized): + """Surfaces and regions shared by Zone IA and Zone IIA elements. + Specs found in Robertson, 1971 Fig 3.4 (p. 17) and Fig 3.5 (p.18)""" + elem_bound = openmc.rectangular_prism(eb_d*2, eb_d*2) # Pin outer boundary + gr_sq_neg = openmc.rectangular_prism(gr_sq_d*2, gr_sq_d*2, corner_radius=gr_sq_r) # Graphite square + + ul_t = openmc.ZCylinder(-l1, -l3, r_dt, name='corner_ul_tip') + br_t = openmc.ZCylinder(l1, l3, r_dt, name='corner_br_tip') + ru_t = openmc.ZCylinder(-l3, l1, r_dt, name='corner_ru_tip') + lb_t = openmc.ZCylinder(l3, -l1, r_dt, name='corner_lb_tip') + + if optimized: + eb_minx, eb_maxx, eb_miny, eb_maxy = list(elem_bound.get_surfaces().values()) + + gr_sq_neg = openmc.rectangular_prism(gr_sq_d*2, gr_sq_d*2, corner_radius=gr_sq_r) # Graphite square + (gr_minx, gr_maxx, gr_miny, gr_maxy, + gr_cyl_lb, gr_cyl_minx, gr_cyl_miny, + gr_cyl_ul, gr_cyl_maxy, gr_cyl_br, + gr_cyl_maxx, gr_cyl_ru) = list(gr_sq_neg.get_surfaces().values()) + + # remaining square + gr_sq_neg = +gr_minx & -gr_maxx & +gr_cyl_miny & -gr_cyl_maxy + + # create separating rod tip regions + gr_ul_t = -ul_t + gr_br_t = -br_t + gr_ru_t = -ru_t + gr_lb_t = -lb_t + + if elem_type == 'core': + # for main pin section for both I-A and II-A + ul = openmc.ZCylinder(-l1, l2, r_dt, name='corner_ul') + br = openmc.ZCylinder(l1, -l2, r_dt, name='corner_br') + lb = openmc.ZCylinder(-l2, -l1, r_dt, name='corner_lb') + ru = openmc.ZCylinder(l2, l1, r_dt, name='corner_ru') + + if optimized: + # corner regions + gr_ul = -ul & +gr_maxy + gr_ul_fill = -ul & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy + gr_br = -br & -gr_miny + gr_br_fill = -br & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny + gr_lb = -lb & -gr_minx + gr_lb_fill = -lb & +gr_cyl_lb & +gr_minx & -gr_cyl_minx & -gr_cyl_miny + gr_ru = -ru & +gr_maxx + gr_ru_fill = -ru & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxx & +gr_cyl_maxy + + # inter-element channel regions + iec_r = +gr_cyl_miny & -gr_cyl_maxy & +gr_maxx & +lb_t & +ru & +gr_cyl_ru + iec_ru = (+gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy) & +ru & +br_t + iec_u = +gr_cyl_minx & -gr_cyl_maxx & +gr_maxy & +br_t & +ul & +gr_cyl_ul + iec_ul = (+gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy) & +ul & +ru_t + iec_l = +gr_cyl_miny & -gr_cyl_maxy & -gr_minx & +ru_t & +lb & +gr_cyl_lb + iec_lb = (+gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny) & +lb & +ul_t + iec_b = +gr_cyl_minx & -gr_cyl_maxx & -gr_miny & +ul_t & +br & +gr_cyl_br + iec_br = (+gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny) & +br & +lb_t + + inter_elem_channel = [[iec_r, 'outer_r'], [iec_ru, 'outer_ru'], + [iec_u, 'outer_u'], [iec_ul, 'outer_ul'], + [iec_l, 'outer_l'], [iec_lb, 'outer_lb'], + [iec_b, 'outer_b'], [iec_br, 'outer_br']] + else: + gr_ul = -ul + gr_br = -br + gr_lb = -lb + gr_ru = -ru + + inter_elem_channel = +ul & +br & +lb & +ru + + elif elem_type == 'cr': + # params for control rods + r_d = 1.16 + e_d = 2 * r_d / np.sqrt(3) + r_c = 0.18 + + ul = openmc.model.hexagonal_prism(origin=(-l1, l2), edge_length=e_d, orientation='x', corner_radius=r_c) + br = openmc.model.hexagonal_prism(origin=(l1, -l2), edge_length=e_d, orientation='x',corner_radius=r_c) + lb = openmc.model.hexagonal_prism(origin=(-l2, -l1), edge_length=e_d, orientation='y',corner_radius=r_c) + ru = openmc.model.hexagonal_prism(origin=(l2, l1), edge_length=e_d, orientation='y',corner_radius=r_c) + + if optimized: + (ul_u, ul_b, ul_ur, ul_br, ul_bl, ul_ul, + ul_cyl_bl_in, ul_cyl_bl_out, + ul_cyl_ul_in, ul_cyl_ul_out, + ul_cyl_br_in, ul_cyl_br_out, + ul_cyl_ur_in, ul_cyl_ur_out, + ul_cyl_l_in, ul_cyl_l_out, + ul_cyl_r_in, ul_cyl_r_out)= list(ul.get_surfaces().values()) + (br_u, br_b, br_ur, br_br, br_bl, br_ul, + br_cyl_bl_in, br_cyl_bl_out, + br_cyl_ul_in, br_cyl_ul_out, + br_cyl_br_in, br_cyl_br_out, + br_cyl_ur_in, br_cyl_ur_out, + br_cyl_l_in, br_cyl_l_out, + br_cyl_r_in, br_cyl_r_out)= list(br.get_surfaces().values()) + (lb_r, lb_l, lb_ur, lb_ul, lb_br, lb_bl, + lb_cyl_lb_in, lb_cyl_lb_out, + lb_cyl_lu_in, lb_cyl_lu_out, + lb_cyl_rb_in, lb_cyl_rb_out, + lb_cyl_ru_in, lb_cyl_ru_out, + lb_cyl_b_in, lb_cyl_b_out, + lb_cyl_u_in, lb_cyl_u_out)= list(lb.get_surfaces().values()) + (ru_r, ru_l, ru_ur, ru_ul, ru_br, ru_bl, + ru_cyl_lb_in, ru_cyl_lb_out, + ru_cyl_lu_in, ru_cyl_lu_out, + ru_cyl_rb_in, ru_cyl_rb_out, + ru_cyl_ru_in, ru_cyl_ru_out, + ru_cyl_b_in, ru_cyl_b_out, + ru_cyl_u_in, ru_cyl_u_out)= list(ru.get_surfaces().values()) + + # corner regions + gr_ul = -ul_ul & -ul_ur & +gr_maxy + gr_ul_fill = -ul_ul & +ul_bl & +ul_cyl_l_out & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy + gr_lb = +lb_bl & -lb_ul & -gr_minx + gr_lb_fill = +lb_bl & +lb_br & +lb_cyl_b_out & +gr_cyl_lb & +gr_minx & -gr_cyl_miny & -gr_cyl_minx + gr_br = +br_br & +br_bl & -gr_miny + gr_br_fill = +br_br & -br_ur & +br_cyl_r_out & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny + gr_ru = +ru_br & -ru_ur & +gr_maxx + gr_ru_fill = -ru_ur & -ru_ul & +ru_cyl_u_out & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxy & +gr_cyl_maxx + + # inter-element channel regions + iec_r = +gr_cyl_miny & +gr_maxx & +lb_t & -ru_br + iec_ru_main = +gr_cyl_ru & (+ru_ur) & +br_t + iec_ru_fill1 = +gr_cyl_ru & +gr_cyl_maxx & (+ru_ul & -ru_ur) & +br_t + iec_ru_fill2 = +gr_cyl_ru & ((-ru_cyl_u_out)) & -ru_ul & -ru_ur + iec_u = -gr_cyl_maxx & +gr_maxy & +br_t & +ul_ur + iec_ul_main = +gr_cyl_ul & (+ul_ul) & +ru_t + iec_ul_fill1 = +gr_cyl_ul & +gr_cyl_maxy & (-ul_bl & -ul_ul) & +ru_t + iec_ul_fill2 = +gr_cyl_ul & ((-ul_cyl_l_out)) & +ul_bl & -ul_ul + iec_l = -gr_cyl_maxy & -gr_minx & +ru_t & +lb_ul + iec_lb_main = +gr_cyl_lb & (-lb_bl) & +ul_t + iec_lb_fill1 = +gr_cyl_lb & -gr_cyl_minx & (-lb_br & +lb_bl) & +ul_t + iec_lb_fill2 = +gr_cyl_lb & ((-lb_cyl_b_out)) & +lb_br & +lb_bl + iec_b = +gr_cyl_minx & -gr_miny & +ul_t & -br_bl + iec_br_main = +gr_cyl_br & (-br_br) & +lb_t + iec_br_fill1 = +gr_cyl_br & -gr_cyl_miny & (+br_ur & +br_br) & +lb_t + iec_br_fill2 = +gr_cyl_br & ((-br_cyl_r_out)) & -br_ur & +br_br + inter_elem_channel = [[iec_r, 'outer_r'], [iec_ru_main, 'outer_ru_main'], + [iec_ru_fill1, 'outer_ru_fill1'], [iec_ru_fill2, 'outer_ru_fill2'], + [iec_u, 'outer_u'], [iec_ul_main, 'outer_ul_main'], + [iec_ul_fill1, 'outer_ul_fill1'], [iec_ul_fill2, 'outer_ul_fill2'], + [iec_l, 'outer_l'], [iec_lb_main, 'outer_lb_main'], + [iec_lb_fill1, 'outer_lb_fill1'], [iec_lb_fill2, 'outer_lb_fill2'], + [iec_b, 'outer_b'], [iec_br_main, 'outer_br_main'], + [iec_br_fill1, 'outer_br_fill1'], [iec_br_fill2, 'outer_br_fill2']] + + else: + gr_ul = ul + gr_lb = br + gr_br = lb + gr_ru = ru + + inter_elem_channel = ~ul & ~br & ~lb & ~ru + + gr_corners = [[gr_ul, 'ul'], [gr_br, 'br'], [gr_ru, 'ru'], [gr_lb, 'lb'], + [gr_ul_t, 'ul_t'], [gr_br_t, 'br_t'], [gr_ru_t, 'ru_t'], [gr_lb_t, 'lb_t']] + + if optimized: + gr_corners += [[gr_ul_fill, 'ul_fill'], [gr_br_fill, 'br_fill'], [gr_ru_fill, 'ru_fill'], [gr_lb_fill, 'lb_fill']] + + # slabs that line up with rounded edges + slab_u = -gr_maxy & +gr_cyl_maxy & -gr_cyl_maxx & +gr_cyl_minx + #slab_l = +gr_minx & -gr_cyl_minx & -gr_cyl_maxy & +gr_cyl_miny + slab_b = +gr_miny & -gr_cyl_miny & -gr_cyl_maxx & +gr_cyl_minx + #slab_r = -gr_maxx & +gr_cyl_maxx & -gr_cyl_maxy & +gr_cyl_miny + slabs = [[slab_u, 'slab_u'], + #[slab_l, 'slab_l'], + [slab_b, 'slab_b']] + #[slab_r, 'slab_r']] + + # the rounded edges themselves + quarter_ul = -gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy + quarter_br = -gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny + quarter_lb = -gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny + quarter_ru = -gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy + quarters = [[quarter_ul, 'quarter_ul'], [quarter_br, 'quarter_br'], [quarter_ru, 'quarter_ru'], [quarter_lb, 'quarter_lb']] + + gr_corners= slabs + quarters + gr_corners + else: + inter_elem_channel = inter_elem_channel & +ul_t & +br_t & +ru_t & +lb_t + + + extra_surf = openmc.ZCylinder(r=r_es, name=es_name) + + + return elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, extra_surf + +def cr_lattice(cr_boundary, core_base, core_top, optimized): + elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole = shared_elem_geometry('cr', 7.62, 7.23645, 0.99, 0.8, 5.8801, 6.505, 8.03646, 5.08, 'cr_fuel_hole', optimized) + + f = control_rod(elem_bound, gr_sq_neg, gr_corners,inter_elem_channel, fuel_hole, fuel, moder, optimized) + if optimized: + # call a second time to have unique surfaces + elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole = shared_elem_geometry('cr', 7.62, 7.23645, 0.99, 0.8, 5.8801, 6.505, 8.03646, 5.08, 'cr_fuel_hole', optimized) + e = control_rod_channel(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole, fuel, moder, optimized) cr = openmc.RectLattice() cr.pitch = np.array([15.24, 15.24]) @@ -52,13 +267,16 @@ def cr_lattice(cr_boundary, core_base, core_top): return c1 -def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): - elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4 = shared_elem_geometry() - l = zoneIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4, moder, fuel, hast) - z = zoneIIA(elem_bound, gr_corners, gr_sq_neg, inter_elem_channel, gr_round_4, moder, fuel) - v = void_cell(elem_bound) +def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): + elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4 = shared_elem_geometry('core', 5.08, 4.953, 0.46, 0.66802, 4.28498, 4.53898, 5.62102, 2.2225, 'gr_round_4', optimized) + l = zoneIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4, moder, fuel, hast, optimized) + elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4 = shared_elem_geometry('core', 5.08, 4.953, 0.46, 0.66802, 4.28498, 4.53898, 5.62102, 2.2225, 'gr_round_4', optimized) + z = zoneIIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4, moder, fuel, optimized) + v = void_cell(elem_bound, optimized) # tres, uno, dos, quatro - t, u, d, q = graphite_triangles(elem_bound, moder, fuel) + t, u, d, q = graphite_triangles(elem_bound, moder, fuel, optimized) + + s1, s2, s3 = zone_i_boundary main = openmc.RectLattice() main.pitch = np.array([10.16, 10.16]) @@ -109,9 +327,68 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): [v, v, v, v, v, v, v, v, v, v, v, t, z, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, z, q, v, v, v, v, v, v, v, v, v, v, v], [v, v, v, v, v, v, v, v, v, v, v, v, v, t, z, z, z, z, l, l, l, l, l, l, l, l, l, z, z, z, z, q, v, v, v, v, v, v, v, v, v, v, v, v, v], [v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, t, z, z, z, z, z, z, z, z, z, q, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v]] - c1 = openmc.Cell(fill=main, region=(+core_base & -core_top & zone_i_boundary & ~cr_boundary), name='main_lattice') - return c1 - + if optimized: + # Octagon subsurfaces + oct1_maxy, oct1_miny, oct1_maxx, oct1_minx, oct1_ur, oct1_br, oct1_bl, oct1_ul = list((-s1).get_surfaces().values()) + oct2_maxy, oct2_miny, oct2_maxx, oct2_minx, oct2_ur, oct2_br, oct2_bl, oct2_ul = list((-s3).get_surfaces().values()) + oct3_maxy, oct3_miny, oct3_maxx, oct3_minx, oct3_ur, oct3_br, oct3_bl, oct3_ul = list((-s2).get_surfaces().values()) + # cb_minx, cb_maxx, cb_miny, cb_maxy = list(cr_boundary.get_surfaces().values()) + + c1_ur = (-oct3_ur & +oct2_ur & -oct2_maxx & -oct2_maxy) + c1_ul = (+oct3_ul & -oct2_ul & +oct2_minx & -oct2_maxy) + c1_bl = (+oct3_bl & -oct2_bl & +oct2_minx & +oct2_miny) + c1_br = (-oct3_br & +oct2_br & -oct2_maxx & +oct2_miny) + c1 = [[c1_ur, 'smaller_octader_ur'], + [c1_ul, 'smaller_octader_ul'], + [c1_bl, 'smaller_octader_bl'], + [c1_br, 'smaller_octader_br']] + + #c2_r = (+cb_maxx & +cb_miny & -cb_maxy & -oct3_maxx) + #c2_ur = (+cb_maxx & +cb_maxy & -oct3_maxx & -oct3_maxy & +oct3_ur) + #c2_u = (+cb_maxy & +cb_minx & -cb_maxx & -oct3_maxy) + #c2_ul = (-cb_minx & +cb_maxy & +oct3_minx & -oct3_maxy & -oct3_ul) + #c2_l = (-cb_minx & +cb_miny & -cb_maxy & +oct3_minx) + #c2_bl = (-cb_minx & -cb_miny & +oct3_minx & +oct3_miny & -oct3_bl) + #c2_b = (-cb_miny & +cb_minx & -cb_maxx & +oct3_miny) + #c2_br = (+cb_maxx & -cb_miny & -oct3_maxx & +oct3_miny & +oct3_br) + #c2 = [[c2_r, 'smallest_octader_r'], + # [c2_ur, 'smallest_octader_ur'], + # [c2_u, 'smallest_octader_u'], + # [c2_ul, 'smallest_octader_ul'], + # [c2_l, 'smallest_octader_l'], + # [c2_bl, 'smallest_octader_bl'], + # [c2_b, 'smallest_octader_b'], + # [c2_br, 'smallest_octader_br']] + c2 = [[-s3, 'smallest_octader']] + + c3_ur = (-oct2_ur & +oct1_ur & -oct1_maxx & -oct1_maxy) + c3_ul = (+oct2_ul & -oct1_ul & +oct1_minx & -oct1_maxy) + c3_bl = (+oct2_bl & -oct1_bl & +oct1_minx & +oct1_miny) + c3_br = (-oct2_br & +oct1_br & -oct1_maxx & +oct1_miny) + c3 = [[c3_ur, 'base_octader_ur'], + [c3_ul, 'base_octader_ul'], + [c3_bl, 'base_octader_bl'], + [c3_br, 'base_octader_br']] + + regs = c1 + c2 + c3 + main_cells = [] + for reg, name in regs: + main_cells.append(openmc.Cell(fill=main, region=(reg & +core_base & -core_top), name=name)) + + else: + c1 = openmc.Cell(fill=main, region=(+core_base & -core_top & + +zone_i_boundary[2] & -zone_i_boundary[1] & + ~cr_boundary), name='main_lattice_smaller_octader') + c2 = openmc.Cell(fill=main, region=(+core_base & -core_top & + -zone_i_boundary[2] & + ~cr_boundary), name='main_lattice_insite_smallest_octader') + c3 = openmc.Cell(fill=main, region=(+core_base & -core_top & + -zone_i_boundary[0] & +zone_i_boundary[1] & +zone_i_boundary[2] & + ~cr_boundary), name='main_lattice_inside_base_octader_deducted_smaller_smallest') + main_cells = [c1, c2, c3] + return main_cells + +optimized, deplete = parse_arguments() zone_bounds, core_bounds, reflector_bounds, vessel_bounds = shared_root_geometry() cr_boundary, zone_i_boundary, zone_ii_boundary = zone_bounds @@ -119,9 +396,9 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): radial_reflector_boundary, bottom_reflector_boundary, top_reflector_boundary = reflector_bounds radial_vessel_boundary, bottom_vessel_boundary, top_vessel_boundary= vessel_bounds -main = main_lattice(zone_i_boundary, cr_boundary, core_base, core_top) -cr = cr_lattice(cr_boundary, core_base, core_top) -iib_m, iib_f = zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top, moder, fuel) +main = main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized) +cr = cr_lattice(cr_boundary, core_base, core_top, optimized) +iib = zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top, moder, fuel, optimized) a = annulus(zone_ii_boundary, annulus_boundary, core_base, core_top, fuel) lp = lower_plenum(core_base, lower_plenum_boundary, annulus_boundary, fuel) @@ -142,18 +419,20 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): hast) geo = openmc.Geometry() -univ = openmc.Universe() -univ.add_cells([cr, main, iib_m, iib_f, lp, a, rr, rb, rt, vr, vb, vt]) +univ = openmc.Universe(cells=[cr, lp, a, rr, rb, rt, vr, vb, vt]) +univ.add_cells(main) +univ.add_cells(iib) geo.root_universe = univ -geo.remove_redundant_surfaces() +if not optimized: + geo.remove_redundant_surfaces() geo.export_to_xml() # Settings settings = openmc.Settings() -settings.particles = 300 -settings.batches = 400 -settings.inactive = 10 +settings.particles = 10000 +settings.batches = 150 +settings.inactive = 25 settings.temperature = {'default': 900, 'method': 'interpolation'} settings.export_to_xml() @@ -360,3 +639,90 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): plots.append(plot) plots.export_to_xml() + +if deplete: + fiss_q = { + "Am243": 212952778.98135212, + "Cm246": 220179493.9541502, + "U239": 196182721.4907133, + "Np239": 198519429.0542043, + "Th233": 185840570.73897627, + "Cf251": 223166396.6983342, + "Am242": 215146730.16368726, + "Cm245": 214624022.18345505, + "Cf254": 230600814.3619568, + "Am241": 211216798.63643932, + "Th232": 197108389.42449385, + "Cm240": 219583368.40646642, + "Th231": 186918512.14598972, + "Bk246": 224446497.874413, + "Cm247": 218956599.9139631, + "U238": 206851381.70909396, + "Bk250": 225432928.78068554, + "U230": 198841127.68309468, + "Cf249": 221434495.10716867, + "U234": 200632850.9958874, + "Cm250": 219425761.1783332, + "Th229": 192235847.44789958, + "Cm241": 219075406.6897822, + "Pu237": 210593272.23024797, + "Am240": 215272544.02927735, + "Cm249": 218622037.52325428, + "Ac226": 183632605.3770991, + "Cf250": 229685291.02082983, + "Th228": 189488754.50737157, + "Cf248": 229015120.40511796, + "Ac227": 183458264.80025893, + "Pu241": 211237715.32232296, + "Pu240": 208612566.66049656, + "Cf252": 230239896.94703457, + "U231": 197643438.24939737, + "Cm242": 212786491.32857716, + "Bk245": 225023484.65451327, + "Np235": 199435370.72904894, + "Pu243": 207499380.63776916, + "Pu239": 208018532.78140113, + "Am242_m1": 215145370.5791048, + "Pu236": 208679081.72160652, + "Bk249": 224740691.06136644, + "Np236": 198952718.20228392, + "Np234": 200175925.99275926, + "U237": 196429642.96756968, + "Cf253": 231148831.53210822, + "U236": 203404311.87546986, + "Es254": 232527659.46555784, + "Ac225": 183891658.531768, + "Cm243": 213375296.0362017, + "Bk248": 224456537.88363716, + "Cm244": 217926766.88448203, + "Pu242": 212072186.50565082, + "U241": 198266755.4887299, + "Np237": 205370480.34853214, + "Th234": 186385345.82281572, + "Pa231": 194099942.4938497, + "Pa230": 194744699.33621296, + "Pa233": 194162901.71835947, + "U240": 207137940.30569986, + "U233": 199796183.56054175, + "Pu246": 208860847.72193536, + "Pa232": 193654730.8348164, + "U232": 193044277.35730234, + "Am244_m1": 213894761.9301219, + "Pu244": 208427244.82356748, + "Np238": 208699370.90691367, + "Bk247": 224883761.19281054, + "Am244": 213894761.9301219, + "Pa229": 194955644.11334947, + "Cm248": 221723145.3723629, + "Fm255": 238051756.2074275, + "Cf246": 229074942.12674516, + "Th230": 188666101.25156796, + "Pu238": 209540012.5125772, + "U235": 202270000.0, + "Th227": 190640950.14927194 + } + model = openmc.Model.from_xml() + op = CoupledOperator(model, chain_file='chain_endfb71_pwr.xml', fission_q=fiss_q) + timesteps = [3] * 12 + integrator = PredictorIntegrator(op, timesteps, timestep_units='d', power=2.25e9) + integrator.integrate() diff --git a/examples/msbr/openmc_model_optimized.py b/examples/msbr/openmc_model_optimized.py new file mode 100644 index 000000000..fb73f4454 --- /dev/null +++ b/examples/msbr/openmc_model_optimized.py @@ -0,0 +1,471 @@ +import openmc +import numpy as np +from openmc.deplete import CoupledOperator, PredictorIntegrator, CELIIntegrator + +from _core_elements_optimized import * +from _control_rods_optimized import * +from _root_geometry_optimized import * + +# Materials + +T = 900 +fuel = openmc.Material(name='fuel', temperature=T) +fuel.set_density('g/cm3', density=3.35) +fuel.add_components({'Li7': 0.0787474673879085, + 'Be9': 0.0225566879138321, + 'F19': 0.454003012179284, + 'Th232': 0.435579130482336, + 'U233': 0.00911370203663893}, + percent_type='wo') +fuel.depletable = True +fuel.volume = 48710000.0 + +moder = openmc.Material(name='graphite', temperature=T) +moder.set_density('g/cm3', density=1.84) +moder.add_nuclide('C0', 1.000, percent_type='wo') +moder.add_s_alpha_beta('c_Graphite') + +hast = openmc.Material(name='hastelloyN', temperature=T) +hast.set_density('g/cm3', density=8.671) +hast.add_components({'Al27': 0.003, + 'Ni': 0.677, + 'W': 0.250, + 'Cr': 0.070}, + percent_type='wo') + +mat = openmc.Materials(materials=[fuel, moder, hast]) +mat.export_to_xml() + +# Geometry +def cr_lattice(cr_boundary, core_base, core_top): + fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel = shared_cr_geometry() + f = control_rod(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, fuel, moder) + fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel = shared_cr_geometry() + e = control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, fuel, moder) + + cr = openmc.RectLattice() + cr.pitch = np.array([15.24, 15.24]) + N = 2 / 2 + cr.lower_left = -1 * cr.pitch * N + cr.universes = [[e, f], + [f, e]] + c1 = openmc.Cell(fill=cr, region=(+core_base & -core_top & cr_boundary), name='cr_lattice') + + return c1 + +def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): + elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4 = shared_elem_geometry() + l = zoneIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4, moder, fuel, hast) + elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4 = shared_elem_geometry() + z = zoneIIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4, moder, fuel) + v = void_cell(elem_bound) + # tres, uno, dos, quatro + t, u, d, q = graphite_triangles(elem_bound, moder, fuel) + + main = openmc.RectLattice() + main.pitch = np.array([10.16, 10.16]) + N = 45 / 2 + main.lower_left = -1 * main.pitch * N + main.universes = [[v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, d, z, z, z, z, z, z, z, z, z, u, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, v, v, v, v, v, d, z, z, z, z, l, l, l, l, l, l, l, l, l, z, z, z, z, u, v, v, v, v, v, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, v, v, v, d, z, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, z, u, v, v, v, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v], + [v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v], + [v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v], + [v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v], + [v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v], + [v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v], + [v, v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v, v], + [v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v], + [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v], + [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v], + [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v], + [d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u], + [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], + [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], + [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], + [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, v, v, v, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], + [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, v, v, v, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], + [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, v, v, v, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], + [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], + [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], + [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], + [t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q], + [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v], + [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v], + [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v], + [v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v], + [v, v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v, v], + [v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v], + [v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v], + [v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v], + [v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v], + [v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v], + [v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, v, v, v, t, z, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, z, q, v, v, v, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, v, v, v, v, v, t, z, z, z, z, l, l, l, l, l, l, l, l, l, z, z, z, z, q, v, v, v, v, v, v, v, v, v, v, v, v, v], + [v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, t, z, z, z, z, z, z, z, z, z, q, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v]] + c1 = openmc.Cell(fill=main, region=(+core_base & -core_top & zone_i_boundary & ~cr_boundary), name='main_lattice') + return c1 + +zone_bounds, core_bounds, reflector_bounds, vessel_bounds = shared_root_geometry() + +cr_boundary, zone_i_boundary, zone_ii_boundary = zone_bounds +annulus_boundary, lower_plenum_boundary, core_base, core_top = core_bounds +radial_reflector_boundary, bottom_reflector_boundary, top_reflector_boundary = reflector_bounds +radial_vessel_boundary, bottom_vessel_boundary, top_vessel_boundary= vessel_bounds + +main = main_lattice(zone_i_boundary, cr_boundary, core_base, core_top) +cr = cr_lattice(cr_boundary, core_base, core_top) +iib = zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top, moder, fuel) +a = annulus(zone_ii_boundary, annulus_boundary, core_base, core_top, fuel) +lp = lower_plenum(core_base, lower_plenum_boundary, annulus_boundary, fuel) + +rr, rb, rt = reflectors(annulus_boundary, + radial_reflector_boundary, + lower_plenum_boundary, + bottom_reflector_boundary, + core_top, + top_reflector_boundary, + moder) + +vr, vb, vt = vessel(radial_reflector_boundary, + radial_vessel_boundary, + bottom_vessel_boundary, + top_vessel_boundary, + top_reflector_boundary, + bottom_reflector_boundary, + hast) + +geo = openmc.Geometry() +univ = openmc.Universe() +univ.add_cells([cr, main, iib, lp, a, rr, rb, rt, vr, vb, vt]) + +geo.root_universe = univ +geo.remove_redundant_surfaces() +geo.export_to_xml() + +# Settings +settings = openmc.Settings() +settings.particles = 10000 +settings.batches = 150 +settings.inactive = 25 +settings.generations_per_batch = 1 +settings.temperature = {'default': 900, 'method': 'interpolation', 'range': (800, 1000)} +#settings.temperature = {'default': 600, 'method': 'nearest'} +settings.export_to_xml() + +# Plots +plots_3d = False +detail_pixels = (1000, 1000) +full_pixels = (10000, 10000) + +colormap = {moder: 'purple', + hast: 'blue', + fuel: 'yellow'} +## Slice plots +plots = openmc.Plots() + +plot = openmc.Plot(name='serpent-plot-1_full-zoneIA-main') +plot.origin=(0, 0, 150.5) +plot.width=(600, 600) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='serpent-plot-2') +plot.origin=(0, -77.5, 200) +plot.width=(155, 700) +plot.pixels=(1550, 3400) +plot.color_by='material' +plot.colors=colormap +plot.basis='yz' +plots.append(plot) + +plot = openmc.Plot(name='serpent-plot-3') +plot.origin=(0, 0, 155) +plot.width=(40, 40) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='yz' +plots.append(plot) + +plot = openmc.Plot(name='serpent-plot-4') +plot.origin=(16.5, 0, 200) +plot.width=(700, 700) +plot.pixels=(2000, 2000) +plot.color_by='material' +plot.colors=colormap +plot.basis='yz' +plots.append(plot) + +plot = openmc.Plot(name='detail-zoneIA-IIA-lower1') +plot.origin=(215, 0, 10.0) +plot.width=(40, 40) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='detail-zoneIA-main') +plot.origin=(215, 0, 23.0) +plot.width=(40, 40) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='detail-zoneIIA-upper1') +plot.origin=(215, 0, 435) +plot.width=(40, 40) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='detail-zoneIA-upper1') +plot.origin=(215, 0, 420) +plot.width=(40, 40) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='detail-zoneIIA-upper2') +plot.origin=(215, 0, 437) +plot.width=(40, 40) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='detail-zoneIA-upper2') +plot.origin=(215, 0, 439) +plot.width=(40, 40) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='detail-zoneIIA-upper3') +plot.origin=(215, 0, 440) +plot.width=(40, 40) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='detail-zoneIA-upper3') +plot.origin=(215, 0, 448) +plot.width=(40, 40) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='detail-zoneIIA-upper4') +plot.origin=(215, 0, 442) +plot.width=(40, 40) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='full-zoneIA-IIA-lower1') +plot.origin=(0.0, 0, 10.0) +plot.width=(600, 600) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='full-zoneIIA-upper1') +plot.origin=(0, 0, 435) +plot.width=(600, 600) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='full-zoneIA-upper1') +plot.origin=(0, 0, 420) +plot.width=(600, 600) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='full-zoneIIA-upper2') +plot.origin=(0, 0, 437) +plot.width=(600, 600) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='full-zoneIA-upper2') +plot.origin=(0, 0, 439) +plot.width=(600, 600) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='full-zoneIIA-upper3') +plot.origin=(0, 0, 440) +plot.width=(600, 600) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='full-zoneIA-upper3') +plot.origin=(0, 0, 448) +plot.width=(600, 600) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='full-zoneIIA-upper4') +plot.origin=(0, 0, 442) +plot.width=(600, 600) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='core-xz-detail-upper') +plot.origin=(215, 0, 440) +plot.width=(100, 100) +plot.pixels=detail_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xz' +plots.append(plot) + +plot = openmc.Plot(name='full-core-xz') +plot.origin=(0, 0, 200) +plot.width=(700, 700) +plot.pixels=full_pixels +plot.color_by='material' +plot.colors=colormap +plot.basis='xz' +plots.append(plot) + +plots.export_to_xml() + +DEPLETE = False +if DEPLETE: + fiss_q = { + "Am243": 212952778.98135212, + "Cm246": 220179493.9541502, + "U239": 196182721.4907133, + "Np239": 198519429.0542043, + "Th233": 185840570.73897627, + "Cf251": 223166396.6983342, + "Am242": 215146730.16368726, + "Cm245": 214624022.18345505, + "Cf254": 230600814.3619568, + "Am241": 211216798.63643932, + "Th232": 197108389.42449385, + "Cm240": 219583368.40646642, + "Th231": 186918512.14598972, + "Bk246": 224446497.874413, + "Cm247": 218956599.9139631, + "U238": 206851381.70909396, + "Bk250": 225432928.78068554, + "U230": 198841127.68309468, + "Cf249": 221434495.10716867, + "U234": 200632850.9958874, + "Cm250": 219425761.1783332, + "Th229": 192235847.44789958, + "Cm241": 219075406.6897822, + "Pu237": 210593272.23024797, + "Am240": 215272544.02927735, + "Cm249": 218622037.52325428, + "Ac226": 183632605.3770991, + "Cf250": 229685291.02082983, + "Th228": 189488754.50737157, + "Cf248": 229015120.40511796, + "Ac227": 183458264.80025893, + "Pu241": 211237715.32232296, + "Pu240": 208612566.66049656, + "Cf252": 230239896.94703457, + "U231": 197643438.24939737, + "Cm242": 212786491.32857716, + "Bk245": 225023484.65451327, + "Np235": 199435370.72904894, + "Pu243": 207499380.63776916, + "Pu239": 208018532.78140113, + "Am242_m1": 215145370.5791048, + "Pu236": 208679081.72160652, + "Bk249": 224740691.06136644, + "Np236": 198952718.20228392, + "Np234": 200175925.99275926, + "U237": 196429642.96756968, + "Cf253": 231148831.53210822, + "U236": 203404311.87546986, + "Es254": 232527659.46555784, + "Ac225": 183891658.531768, + "Cm243": 213375296.0362017, + "Bk248": 224456537.88363716, + "Cm244": 217926766.88448203, + "Pu242": 212072186.50565082, + "U241": 198266755.4887299, + "Np237": 205370480.34853214, + "Th234": 186385345.82281572, + "Pa231": 194099942.4938497, + "Pa230": 194744699.33621296, + "Pa233": 194162901.71835947, + "U240": 207137940.30569986, + "U233": 199796183.56054175, + "Pu246": 208860847.72193536, + "Pa232": 193654730.8348164, + "U232": 193044277.35730234, + "Am244_m1": 213894761.9301219, + "Pu244": 208427244.82356748, + "Np238": 208699370.90691367, + "Bk247": 224883761.19281054, + "Am244": 213894761.9301219, + "Pa229": 194955644.11334947, + "Cm248": 221723145.3723629, + "Fm255": 238051756.2074275, + "Cf246": 229074942.12674516, + "Th230": 188666101.25156796, + "Pu238": 209540012.5125772, + "U235": 202270000.0, + "Th227": 190640950.14927194 + } + model = openmc.Model.from_xml() + op = CoupledOperator(model, chain_file='chain_endfb71_pwr.xml', fission_q=fiss_q) + timesteps = [3] * 12 + integrator = PredictorIntegrator(op, timesteps, timestep_units='d', power=2.25e9) + integrator.integrate() + From 95b58c508ced3dc8824eeb210ff1bb35b24aa50f Mon Sep 17 00:00:00 2001 From: yardasol Date: Mon, 24 Oct 2022 15:38:47 -0500 Subject: [PATCH 18/62] fix missing control rods, smallest octader --- examples/msbr/_root_geometry.py | 13 +- examples/msbr/model-plotting-optimized.ipynb | 182 ++++--------------- examples/msbr/openmc_model.py | 100 ++++++---- 3 files changed, 112 insertions(+), 183 deletions(-) diff --git a/examples/msbr/_root_geometry.py b/examples/msbr/_root_geometry.py index b0bbf641f..81aa55822 100644 --- a/examples/msbr/_root_geometry.py +++ b/examples/msbr/_root_geometry.py @@ -68,15 +68,15 @@ def zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core for i, pos in enumerate(large_positions): pos = np.round(pos, 3) r1_big, r2_big = big_radii[i] - t1_big = pos - large_half_w - t2_big = pos + large_half_w + t1_big = np.round(pos - large_half_w, 3) + t2_big = np.round(pos + large_half_w, 3) s1 = openmc.model.CylinderSector(r1_big, r2_big, t1_big, t2_big, name=f'iib_large_element_{pos}') s2 = openmc.ZCylinder(**hole_args[i]) elem_cells.append(openmc.Cell(fill=moder, region=(-s1 & +s2), name=f'iib_large_element_{pos}')) elem_cells.append(openmc.Cell(fill=fuel, region=(-s2), name=f'iib_large_element_fuel_hole_{pos}')) - t1_small = t2_big + adjacent_angular_offset + t1_small = np.round(t2_big + adjacent_angular_offset, 3) r1_small, r2_small = small_radii if optimized: @@ -86,8 +86,7 @@ def zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core cpos = np.round(cpos, 3) elem_cells.append(openmc.Cell(fill=fuel, region=-s3, name=f'inter_element_fuel_channel_{cpos}')) - t4a = t1_big - adjacent_angular_offset - s4 = openmc.model.CylinderSector(r1_small, r1_big, t4a, t1_small) + s4 = openmc.model.CylinderSector(r1_small, r1_big, t1_big, t2_big) elem_cells.append(openmc.Cell(fill=fuel, region=-s4, name=f'inter_element_fuel_channel_{pos}')) else: if isinstance(zone_iib_reg, openmc.Region): @@ -96,7 +95,7 @@ def zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core zone_iib_reg = +s1 for i in range(0, small_elems_per_octant): - t2_small = t1_small + small_angular_width + t2_small = np.round(t1_small + small_angular_width, 3) # reflector element pos = t2_small - (small_angular_width / 2) @@ -104,7 +103,7 @@ def zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core s5 = openmc.model.CylinderSector(r1_small, r2_small, t1_small, t2_small, name=f'iib_small_element_{pos}') elem_cells.append(openmc.Cell(fill=moder, region=-s5, name=f'iib_small_element_{pos}')) - t1_small = t2_small + adjacent_angular_offset + t1_small = np.round(t2_small + adjacent_angular_offset, 3) if optimized: # inter-element fuel channel diff --git a/examples/msbr/model-plotting-optimized.ipynb b/examples/msbr/model-plotting-optimized.ipynb index 309f4caf3..9c4d3b5ed 100644 --- a/examples/msbr/model-plotting-optimized.ipynb +++ b/examples/msbr/model-plotting-optimized.ipynb @@ -417,7 +417,7 @@ }, { "cell_type": "code", - "execution_count": 54, + "execution_count": null, "id": "07136110", "metadata": {}, "outputs": [], @@ -431,31 +431,10 @@ }, { "cell_type": "code", - "execution_count": 55, + "execution_count": null, "id": "752c5160", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 55, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAA18AAANLCAYAAAC+ASfkAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/NK7nSAAAACXBIWXMAAA9hAAAPYQGoP6dpAABCRklEQVR4nO3de5zVdb3o//dCYECDUURhyOEieSkxU1KBneIl76K13Sa2d+KjpDxe8pK7LbvcXh4W6XGbO83Ik2Ee91b3CW1bWAm/Lbo7UoFgeUnUJEFkDkePzXjJAfTz+0NnZGAYmGHWZ92ezx7r8XB91/f7nc9isWZ68fms7xRSSikAAAAoqj6lHgAAAEAtEF8AAAAZiC8AAIAMxBcAAEAG4gsAACAD8QUAAJCB+AIAAMigb6kH0NveeeedeOmll2LQoEFRKBRKPRwAAKCKpZTitddeixEjRkSfPl3PbVVdfL300kvR2NhY6mEAAAA1ZOXKlbHbbrt1uU/VxdegQYMiIuKT314YfQd+oMSjAaBYUkrx+6alpR4GABtLKXZ78pZSjyKbt9etjyX3/ba9Q7pSdfHVttSw78APRL+BW/4DAKAypZSiz4DtSz0MADaWUvTtV3WZsUVb85EnF9wAAADIQHwBAABkIL4AAAAyEF8AAAAZiC8AAIAMxBcAAEAG4gsAACAD8QUAAJCB+AIAAMhAfAEAAGQgvgAAADIQXwAAABmILwAAgAzEFwAAQAbiCwAAIAPxBQAAkIH4AgAAyEB8AQAAZCC+AAAAMhBfAAAAGYgvAACADMQXAABABuILAAAgA/EFAACQgfgCAADIQHwBAABkIL4AAAAyEF8AAAAZiC8AAIAMxBcAAEAG4gsAACAD8QUAAJCB+AIAAMhAfAEAAGQgvgAAADIQXwAAABmILwAAgAzEFwAAQAbiCwAAIAPxBQAAkIH4AgAAyEB8AQAAZCC+AAAAMhBfAAAAGYgvAACADMQXAABABuILAAAgA/EFAACQgfgCAADIQHwBAABkIL4AAAAyEF8AAAAZiC8AAIAMehxfDz/8cEyZMiVGjBgRhUIhfvKTn7Q/tm7duviHf/iH2HfffWOHHXaIESNGxBlnnBEvvfRSl+e87bbbolAobHJ76623ejpMAACAstDj+HrjjTdiv/32i5tuummTx958881YsmRJXHbZZbFkyZK455574plnnomTTjppi+cdPHhwrF69usNtwIABPR0mAABAWejb0wOPO+64OO644zp9rL6+PubNm9dh24033hgHHXRQrFixIkaOHLnZ8xYKhRg+fHhPhwUAAFCWsn3mq7m5OQqFQuy4445d7vf666/HqFGjYrfddosTTzwxli5d2uX+ra2t0dLS0uEGAABQbrLE11tvvRWXXnppfPazn43Bgwdvdr+99947brvttrjvvvvizjvvjAEDBsRf/dVfxbPPPrvZY2bOnBn19fXtt8bGxmI8BQAAgG1S9Phat25dTJ06Nd555524+eabu9x3woQJ8Xd/93ex3377xSGHHBL//u//HnvuuWfceOONmz1mxowZ0dzc3H5buXJlbz8FAACAbdbjz3xtjXXr1sVnPvOZWL58efznf/5nl7NenenTp08ceOCBXc581dXVRV1d3bYOFQAAoKiKNvPVFl7PPvtszJ8/P3beeedunyOlFI899lg0NDQUYYQAAAD59Hjm6/XXX4/nnnuu/f7y5cvjscceiyFDhsSIESPib/7mb2LJkiXxs5/9LN5+++1oamqKiIghQ4ZE//79IyLijDPOiA9+8IMxc+bMiIi48sorY8KECbHHHntES0tLfOc734nHHnssvvvd727LcwQAACi5HsfX4sWL4/DDD2+/f/HFF0dExLRp0+KKK66I++67LyIiPvaxj3U47sEHH4zDDjssIiJWrFgRffq8P/n25z//Ob74xS9GU1NT1NfXx/777x8PP/xwHHTQQT0dJgAAQFkopJRSqQfRm1paWqK+vj6OnfV49Bs4qNTDAaBIUkqxdPXiUg8DgI2lFCN/f1OpR5HN+nXrY9GcR6K5uXmL17jI9nu+AAAAapn4AgAAyEB8AQAAZCC+AAAAMhBfAAAAGYgvAACADMQXAABABuILAAAgA/EFAACQgfgCAADIQHwBAABkIL4AAAAyEF8AAAAZiC8AAIAMxBcAAEAG4gsAACAD8QUAAJCB+AIAAMhAfAEAAGQgvgAAADIQXwAAABmILwAAgAzEFwAAQAbiCwAAIAPxBQAAkIH4AgAAyEB8AQAAZCC+AAAAMhBfAAAAGYgvAACADMQXAABABuILAAAgA/EFAACQgfgCAADIQHwBAABkIL4AAAAyEF8AAAAZiC8AAIAMxBcAAEAG4gsAACAD8QUAAJCB+AIAAMhAfAEA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WuX1KC9ej/Li9SgvXo/y4vUoL16P8lLOr0d9ff1W7eeCGwAAABmILwAAgAzEV4Wrq6uLyy+/POrq6ko9FMLrUW68HuXF61FevB7lxetRXrwe5aWaXo+qu+AGAABAOTLzBQAAkIH4AgAAyEB8AQAAZCC+AAAAMhBfAAAAGYivCvCNb3wjJk2aFNtvv33suOOOmzz+u9/9Lk4//fRobGyMgQMHxoc//OH4l3/5ly2e97DDDotCodDhNnXq1CI8g+qypdcjImLFihUxZcqU2GGHHWLo0KHx5S9/OdauXdvleVtbW+P888+PoUOHxg477BAnnXRSvPjii0V4BtVrwYIFm/ydbrstWrRos8edeeaZm+w/YcKEjCOvXqNHj97kz/bSSy/t8piUUlxxxRUxYsSIGDhwYBx22GHx5JNPZhpx9frTn/4UX/jCF2LMmDExcODAGDt2bFx++eVb/N7k/dF7br755hgzZkwMGDAgxo8fH//1X//V5f4PPfRQjB8/PgYMGBC77757zJo1K9NIq9vMmTPjwAMPjEGDBsWuu+4an/rUp2LZsmVdHrO5ny9PP/10plFXryuuuGKTP9fhw4d3eUwlvzf6lnoAbNnatWvj1FNPjYkTJ8att966yeOPPvpo7LLLLnHHHXdEY2NjPPLII/HFL34xtttuuzjvvPO6PPf06dPjqquuar8/cODAXh9/tdnS6/H222/HCSecELvsskv86le/ildeeSWmTZsWKaW48cYbN3veCy+8MH7605/GXXfdFTvvvHN85StfiRNPPDEeffTR2G677Yr5lKrGpEmTYvXq1R22XXbZZTF//vz4+Mc/3uWxxx57bMyePbv9fv/+/Ysyxlp01VVXxfTp09vvf+ADH+hy/2uvvTauv/76uO2222LPPfeMq6++Oo466qhYtmxZDBo0qNjDrVpPP/10vPPOO/H9738/PvShD8UTTzwR06dPjzfeeCOuu+66Lo/1/th2d999d1x44YVx8803x1/91V/F97///TjuuOPiqaeeipEjR26y//Lly+P444+P6dOnxx133BH/+3//7zjnnHNil112iVNOOaUEz6B6PPTQQ3HuuefGgQceGOvXr4+vfe1rcfTRR8dTTz0VO+ywQ5fHLlu2LAYPHtx+f5dddin2cGvCPvvsE/Pnz2+/39X/76n490aiYsyePTvV19dv1b7nnHNOOvzww7vcZ/LkyemCCy7Y9oHVqM29Hvfff3/q06dPWrVqVfu2O++8M9XV1aXm5uZOz/XnP/859evXL911113t21atWpX69OmTfvGLX/T62GvF2rVr06677pquuuqqLvebNm1aOvnkk/MMqsaMGjUqffvb397q/d955500fPjw9K1vfat921tvvZXq6+vTrFmzijDC2nbttdemMWPGdLmP90fvOOigg9LZZ5/dYdvee++dLr300k73/+pXv5r23nvvDtu+9KUvpQkTJhRtjLVqzZo1KSLSQw89tNl9HnzwwRQR6dVXX803sBpx+eWXp/3222+r96/094Zlh1Wqubk5hgwZssX9/vVf/zWGDh0a++yzT1xyySXx2muvZRhddVu4cGGMGzcuRowY0b7tmGOOidbW1nj00Uc7PebRRx+NdevWxdFHH92+bcSIETFu3Lh45JFHij7manXffffFyy+/HGeeeeYW912wYEHsuuuuseeee8b06dNjzZo1xR9gjbjmmmti5513jo997GPxjW98o8tlbsuXL4+mpqYO74W6urqYPHmy90IRbO3PCu+PbbN27dp49NFHO/y9jog4+uijN/v3euHChZvsf8wxx8TixYtj3bp1RRtrLWpubo6I2Kr3wv777x8NDQ1x5JFHxoMPPljsodWMZ599NkaMGBFjxoyJqVOnxvPPP7/ZfSv9vWHZYRVauHBh/Pu//3vMnTu3y/3+9m//NsaMGRPDhw+PJ554ImbMmBG/+93vYt68eZlGWp2amppi2LBhHbbttNNO0b9//2hqatrsMf3794+ddtqpw/Zhw4Zt9hi27NZbb41jjjkmGhsbu9zvuOOOi1NPPTVGjRoVy5cvj8suuyyOOOKIePTRR6Ouri7TaKvTBRdcEAcccEDstNNO8dvf/jZmzJgRy5cvjx/84Aed7t/2933j99CwYcPihRdeKPp4a8kf//jHuPHGG+Of//mfu9zP+2Pbvfzyy/H22293+ve6q58Lne2/fv36ePnll6OhoaFo460lKaW4+OKL4xOf+ESMGzdus/s1NDTELbfcEuPHj4/W1tb4n//zf8aRRx4ZCxYsiEMPPTTjiKvPwQcfHLfffnvsueee8X/+z/+Jq6++OiZNmhRPPvlk7LzzzpvsX+nvDTNfJdLZhws3vi1evLjb533yySfj5JNPjn/6p3+Ko446qst9p0+fHp/85Cdj3LhxMXXq1Pjxj38c8+fPjyVLlvT0aVWs3n49CoXCJttSSp1u70pPjqlGPXl9XnzxxfjlL38ZX/jCF7Z4/tNOOy1OOOGEGDduXEyZMiV+/vOfxzPPPLPFf8CoVd15PS666KKYPHlyfPSjH42zzjorZs2aFbfeemu88sorXX6Njf/eey9sXk/eHy+99FIce+yxceqpp8ZZZ53V5fm9P3pPd/9ed7Z/Z9vpufPOOy9+//vfx5133tnlfnvttVdMnz49DjjggJg4cWLcfPPNccIJJ2zx85Js2XHHHRennHJK7LvvvvHJT36y/XvLj370o80eU8nvDTNfJXLeeedt8cqCo0eP7tY5n3rqqTjiiCNi+vTp8fWvf73bYzrggAOiX79+8eyzz8YBBxzQ7eMrWW++HsOHD4/f/OY3Hba9+uqrsW7duk3+pWbDY9auXRuvvvpqh9mvNWvWxKRJk7bq61aznrw+s2fPjp133jlOOumkbn+9hoaGGDVqVDz77LPdPrYWbMv7pe0qec8991yn/6LZdoWrpqamDv96uWbNms2+f2pdd1+Pl156KQ4//PCYOHFi3HLLLd3+et4f3Td06NDYbrvtNpnl6urv9fDhwzvdv2/fvp2+d+i+888/P+677754+OGHY7fdduv28RMmTIg77rijCCOrbTvssEPsu+++m/0eU+nvDfFVIkOHDo2hQ4f22vmefPLJOOKII2LatGnxjW98o8fnWLduXdlP1xZDb74eEydOjG984xuxevXq9j/LBx54IOrq6mL8+PGdHjN+/Pjo169fzJs3Lz7zmc9ERMTq1avjiSeeiGuvvbZXxlXJuvv6pJRi9uzZccYZZ0S/fv26/fVeeeWVWLlyZU2+F7bGtrxfli5dGhGx2T/btqXQ8+bNi/333z8i3v28zEMPPRTXXHNNzwZc5brzeqxatSoOP/zwGD9+fMyePTv69On+Ahjvj+7r379/jB8/PubNmxef/vSn27fPmzcvTj755E6PmThxYvz0pz/tsO2BBx6Ij3/84z36vsb7Ukpx/vnnx7333hsLFiyIMWPG9Og8S5cu9T4ogtbW1vjDH/4QhxxySKePV/x7o2SX+mCrvfDCC2np0qXpyiuvTB/4wAfS0qVL09KlS9Nrr72WUkrpiSeeSLvsskv627/927R69er225o1a9rP8eKLL6a99tor/eY3v0kppfTcc8+lK6+8Mi1atCgtX748zZ07N+29995p//33T+vXry/J86wUW3o91q9fn8aNG5eOPPLItGTJkjR//vy02267pfPOO6/9HBu/HimldPbZZ6fddtstzZ8/Py1ZsiQdccQRab/99vN69MD8+fNTRKSnnnqq08f32muvdM8996SUUnrttdfSV77ylfTII4+k5cuXpwcffDBNnDgxffCDH0wtLS05h111HnnkkXT99denpUuXpueffz7dfffdacSIEemkk07qsN+Gr0dKKX3rW99K9fX16Z577kmPP/54Ov3001NDQ4PXYxutWrUqfehDH0pHHHFEevHFFzv8vNiQ90dx3HXXXalfv37p1ltvTU899VS68MIL0w477JD+9Kc/pZRSuvTSS9PnPve59v2ff/75tP3226eLLrooPfXUU+nWW29N/fr1Sz/+8Y9L9RSqxn/7b/8t1dfXpwULFnR4H7z55pvt+2z8enz7299O9957b3rmmWfSE088kS699NIUEWnOnDmleApV5Stf+UpasGBBev7559Ovf/3rdOKJJ6ZBgwZV7XtDfFWAadOmpYjY5Pbggw+mlN69RGdnj48aNar9HMuXL+9wzIoVK9Khhx6ahgwZkvr375/Gjh2bvvzlL6dXXnkl/xOsMFt6PVJ6N9BOOOGENHDgwDRkyJB03nnnpbfeeqv98Y1fj5RS+stf/pLOO++8NGTIkDRw4MB04oknphUrVmR8ZtXj9NNPT5MmTdrs4xGRZs+enVJK6c0330xHH3102mWXXVK/fv3SyJEj07Rp0/zZ94JHH300HXzwwam+vj4NGDAg7bXXXunyyy9Pb7zxRof9Nnw9Unr3cvOXX355Gj58eKqrq0uHHnpoevzxxzOPvvrMnj270+9dG/87rPdH8Xz3u99No0aNSv37908HHHBAh0ubT5s2LU2ePLnD/gsWLEj7779/6t+/fxo9enT63ve+l3nE1Wlz74MNvw9t/Hpcc801aezYsWnAgAFpp512Sp/4xCfS3Llz8w++Cp122mmpoaEh9evXL40YMSL99V//dXryySfbH6+290Yhpfc+oQYAAEDRuNohAABABuILAAAgA/EFAACQgfgCAADIQHwBAABkIL4AAAAyEF8AAAAZiC8AAIAMxBcAAEAG4gsAACAD8QUAAJDB/w9mg717WG2MRwAAAABJRU5ErkJggg==\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "#ia.plot(width=(20,20),\n", "# basis='xy',\n", @@ -467,31 +446,10 @@ }, { "cell_type": "code", - "execution_count": 57, + "execution_count": null, "id": "ee56bc53", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 57, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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AEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCRB0AAEDCDirqKisrIy8vL+bMmdPs9muuuSby8vLizjvvbFr3pz/9Ka677roYNmxYHH300TF48OC4/vrro76+vtX7WrhwYeTl5eUspaWlBzN8AACA5BW098B169bFsmXL4rTTTmt2+y9+8YtYu3ZtDBw4MGf9O++8E++88058//vfj1NPPTXeeuutuPbaa+Odd96Jn//8563e54gRI+LJJ59sup2fn9/e4QMAAHQJ7Yq6Xbt2xfTp02P58uWxePHifba//fbbMWvWrHj88cdj0qRJOdvKysrioYcearp94oknxq233hr/8A//EB999FEUFLQ8pIKCArNzAAAAn9Gul1/OnDkzJk2aFOPHj99n28cffxwzZsyI7373uzFixIgDOl99fX306dOn1aCLiNi0aVMMHDgwhg4dGtOmTYvXX3+91f0bGxujoaEhZwEAAOhK2hx1q1atipqamqisrGx2++233x4FBQVx/fXXH9D5du7cGf/6r/8a11xzTav7nX322fHTn/40Hn/88Vi+fHns2LEjxo4dGzt37mzxmMrKyiguLm5aBg0adEBjAgAASEWbXn65devWmD17djzxxBNRWFi4z/bq6uq46667oqamJvLy8vZ7voaGhpg0aVKceuqpsWDBglb3nThxYtN/jxw5MsaMGRMnnnhi3H///TF37txmj5k/f37OtoaGBmEHAAB0KW2aqauuro7a2tooLy+PgoKCKCgoiGeeeSbuvvvuKCgoiKeffjpqa2tj8ODBTdvfeuutmDdvXpxwwgk553rvvffi/PPPj2OOOSZWr14dPXr0aNPAi4qKYuTIkbFp06YW9+nVq1f06dMnZwEAAOhK2jRTV1FRERs3bsxZd8UVV8Tw4cPjxhtvjAEDBsR5552Xs/28886LGTNmxBVXXNG0rqGhIc4777zo1atXPPLII83O+u1PY2NjvPrqqzFu3Lg2HwsAANBVtCnqevfuHWVlZTnrioqKoqSkpGl9SUlJzvYe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DBgQO3fujKVLl8a2bdvioosuyjnuD3/4Qzz77LPx2GOPNXtfFRUVMWXKlJg1a1ZERNxwww1x4YUXxuDBg6O2tjYWL14cDQ0Ncfnll7flIQAAAHQp7fpIg5bk5+fHa6+9Fvfff3/U1dVFSUlJnHXWWfHcc8/FiBEjcvb9t3/7t/jCF74QEyZMaPZcmzdvjrq6uqbb27Zti0suuSTq6uriuOOOi9GjR8cLL7wQQ4YMOZQPAQAAICl5WZZlR3oQh0tDQ0MUFxdHfX2EP6+D7iHLIm45auGRHgYdKosF2aIjPYiD5nu1O+ga36vAgWtoiCgujqivr+/Q9/do1+fUAQAA0DmIOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgISJOgAAgIQVHOkBAJ1Plh3pEQB0TV3t52te3pEeARAh6oC/kmURtxy18EgPA6ALyutiP1+zWJAtOtKDAMLLLwEAAJIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABIm6gAAABJ2UFFXWVkZeXl5MWfOnKZ1CxcujOHDh0dRUVH07ds3xo8fH2vXrs057pxzzom8vLycZdq0afu9v6VLl8bQoUOjsLAwysvL47nnnjuY4QMAACSv3VG3bt26WLZsWZx22mk5608++eS45557YuPGjfH888/HCSecEBMmTIg//vGPOftdffXVsX379qblxz/+cav39+CDD8acOXPi5ptvjvXr18e4ceNi4sSJsWXLlvY+BAAAgOS1K+p27doV06dPj+XLl0ffvn1ztl166aUxfvz4+NKXvhQjRoyIJUuWRENDQ7z44os5+x199NFRWlratBQXF7d6n0uWLIkrr7wyrrrqqjjllFPizjvvjEGDBsW9997bnocAAADQJbQr6mbOnBmTJk2K8ePHt7rf7t27Y9myZVFcXBynn356zrYHHngg+vXrFyNGjIgbbrgh3nvvvVbPU11dHRMmTMhZP2HChFizZk2LxzU2NkZDQ0POAgAA0JUUtPWAVatWRU1NTaxbt67FfR599NGYNm1afPDBBzFgwICoqqqKfv36NW2fPn16DB06NEpLS+Oll16K+fPnx29/+9uoqqpq9nx1dXWxd+/e6N+/f876/v37x44dO1ocR2VlZSxatKiNjxAAACAdbYq6rVu3xuzZs+OJJ56IwsLCFvc799xzY8OGDVFXVxfLly+PqVOnxtq1a+P444+PiE/+nu5TZWVl8eUvfzlGjRoVNTU1ceaZZ7Z43ry8vJzbWZbts+6z5s+fH3Pnzm263dDQEIMGDdrv4wQAAEhFm15+WV1dHbW1tVFeXh4FBQVRUFAQzzzzTNx9991RUFAQe/fujYiIoqKiOOmkk2L06NGxYsWKKCgoiBUrVrR43jPPPDN69OgRmzZtanZ7v379Ij8/f59Zudra2n1m7z6rV69e0adPn5wFAACgK2lT1FVUVMTGjRtjw4YNTcuoUaNi+vTpsWHDhsjPz2/2uCzLorGxscXzvvzyy7Fnz54YMGBAs9t79uwZ5eXl+7w8s6qqKsaOHduWhwAAANCltOnll717946ysrKcdUVFRVFSUhJlZWXx/vvvx6233hqTJ0+OAQMGxM6dO2Pp0qWxbdu2uOiiiyIiYvPmzfHAAw/EN77xjejXr1+88sorMW/evDjjjDPiq1/9atN5KyoqYsqUKTFr1qyIiJg7d27MmDEjRo0aFWPGjIlly5bFli1b4tprrz3YrwEAAECy2vxGKa3Jz8+P1157Le6///6oq6uLkpKSOOuss+K5556LESNGRMQns26/+tWv4q677opdu3bFoEGDYtKkSbFgwYKcmb7NmzdHXV1d0+2LL744du7cGbfcckts3749ysrK4rHHHoshQ4YcyocAAACQlLwsy7IjPYjDpaGhIYqLi6O+PsKf10HzsizilqMWHulhQBtksSBL/52OXXukp2tce9CRGhoiiosj6uvrO/T9Pdr1OXUAAAB0DqIOAAAgYaIOAAAgYaIOAAAgYaIOAAAgYaIOAAAgYaIOAAAgYaIOAAAgYaIOAAAgYaIOAAAgYaIOAAAgYaIOAAAgYaIOAAAgYaIOAAAgYaIOAAAgYaIOAAAgYaIOAAAgYaIOAAAgYQVHegAAnVd2pAdAt+N7Lh15R3oAAE1EHUCzsliQLTrSg6AbycsL33OJyLKIW45aeKSHAdDEyy8BAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASJuoAAAASdlBRV1lZGXl5eTFnzpymdQsXLozhw4dHUVFR9O3bN8aPHx9r165t2v6nP/0prrvuuhg2bFgcffTRMXjw4Lj++uujvr6+1ftauHBh5OXl5SylpaUHM3wAAIDkFbT3wHXr1sWyZcvitNNOy1l/8sknxz333BNf+tKX4sMPP4w77rgjJkyYEH/4wx/iuOOOi3feeSfeeeed+P73vx+nnnpqvPXWW3HttdfGO++8Ez//+c9bvc8RI0bEk08+2XQ7Pz+/vcMHAADoEtoV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tWpV1NTUxLp161rc59FHH41p06bFBx98EAMGDIiqqqro169fRETs2LEjevbsuc8MX//+/WPHjh3Nnq+uri727t0b/fv3P+BjIj75m79FixYd6EMDAABITptm6rZu3RqzZ8+OlStXRmFhYYv7nXvuubFhw4ZYs2ZNnH/++TF16tSora1t9dxZlkVeXl6r+/z19v0dM3/+/Kivr29atm7d2ur5AQAAUtOmqKuuro7a2tooLy+PgoKCKCgoiGeeeSbuvvvuKCgoaHqjk6KiojjppJNi9OjRsWLFiigoKIgVK1ZERERpaWns3r073n333Zxz19bW7jMT96l+/fpFfn7+PrNyrR0TEdGrV6/o06dPzgIAANCVtCnqKioqYuPGjbFhw4amZdSoUTF9+vTYsGFD5OfnN3tclmXR2NgYERHl5eXRo0ePqKqqatq+ffv2eOmll2Ls2LHNHt+zZ88oLy/POSYioqqqqsVjAAAAuoM2/U1d7969o6ysLGddUVFRlJSURFlZWbz//vtx6623xuTJk2PAgAGxc+fOWLp0aWzbti0uuuiiiIgoLi6OK6+8MubNmxclJSVx7LHHxg033BAjR47MeeOVioqKmDJlSsyaNSsiIubOnRszZsyIUaNGxZgxY2LZsmWxZcuWuPbaaw/2awAAAJCsNr9RSmvy8/Pjtddei/vvvz/q6uqipKQkzjrrrHjuuedixIgRTfvdcccdUVBQEFOnTo0PP/wwKioq4ic/+UnOTN/mzZujrq6u6fbFF18cO3fujFtuuSW2b98eZWVl8dhjj8WQIUMO5UMAAABISl6WZdmRHsTh0tDQEMXFxVFfH+HP66B5WRZxy1ELj/QwOoEsFmTePRfYl5+Tn/JzEvanoSGiuPiTz+ruyPf3aNfn1AEAANA5iDoAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEiToAAICEHVTUVVZWRl5eXsyZMyciIvbs2RM33nhjjBw5MoqKimLgwIFx2WWXxTvvvNN0zJtvvhl5eXnNLj/72c9avK+FCxfus39paenBDB8AACB57Y66devWxbJly+K0005rWvfBBx9ETU1N/Mu//EvU1NTEww8/HL///e9j8uTJTfsMGjQotm/fnrMsWrQoioqKYuLEia3e54gRI3KO27hxY3uHDwAA0CUUtOegXbt2xfTp02P58uWxePHipvXFxcVRVVWVs+8Pf/jD+Ju/+ZvYsmVLDB48OPLz8/eZYVu9enVcfPHFccwxx7Q+2IICs3MAAACf0a6ZupkzZ8akSZNi/Pjx+923vr4+8vLy4vOf/3yz26urq2PDhg1x5ZVX7vdcmzZtioEDB8bQoUNj2rRp8frrr7e6f2NjYzQ0NOQsAAAAXUmbo27VqlVRU1MTlZWV+933L3/5S9x0001x6aWXRp8+fZrdZ8WKFXHKKafE2LFjWz3X2WefHT/96U/j8ccfj+XLl8eOHTti7NixsXPnzhaPqaysjOLi4qZl0KBB+x0zAABAStoUdVu3bo3Zs2fHypUro7CwsNV99+zZE9OmTYuPP/44li5d2uw+H374Yfz7v//7Ac3STZw4Mb71rW/FyJEjY/z48fHLX/4yIiLuv//+Fo+ZP39+1NfXNy1bt27d7/0AAACkpE1/U1ddXR21tbVRXl7etG7v3r3x7LPPxj333BONjY2Rn58fe/bsialTp8Ybb7wRv/71r1ucpfv5z38eH3zwQVx22WVtHnhRUVGMHDkyNm3a1OI+vXr1il69erX53AAAAKloU9RVVFTs846TV1xxRQwfPjxuvPHGnKDbtGlTPPXUU1FSUtLi+VasWBGTJ0+O4447rs0Db2xsjFdffTXGjRvX5mMBAAC6ijZFXe/evaOsrCxnXVFRUZSUlERZWVl89NFH8e1vfztqamri0Ucfjb1798aOHTsiIuLYY4+Nnj17Nh33hz/8IZ599tl47LHHmr2vioqKmDJlSsyaNSsiIm644Ya48MILY/DgwVFbWxuLFy+OhoaGuPzyy9v0gAEAALqSdn2kQUu2bdsWjzzySEREfOUrX8nZ9tRTT8U555zTdPvf/u3f4gtf+EJMmDCh2XNt3rw56urqcs59ySWXRF1dXRx33HExevToeOGFF2LIkCGH8iEAAAAkJS/LsuxID+JwaWhoiOLi4qivj2jhz/yg28uyiFuOWnikh9EJZLEgW3SkBwF0Qn5OfsrPSdifhoaI4uJPPuatpfcZORTa9Tl1AAAAdA6iDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGGiDgAAIGEHFXWVlZWRl5cXc+bMiYiIPXv2xI033hgjR46MoqKiGDhwYFx22WXxzjvv5Bx3zjnnRF5eXs4ybdq0/d7f0qVLY+jQoVFYWBjl5eXx3HPPHczwAQAAktfuqFu3bl0sW7YsTjvttKZ1H3zwQdTU1MS//Mu/RE1NTTz88MPx+9//PiZPnrzP8VdffXVs3769afnxj3/c6v09+OCDMWfOnLj55ptj/fr1MW7cuJg4cWJs2bKlvQ8BAAAgee2Kul27dsX06dNj+fLl0bdv36b1xcXFUVVVFVOnTo1hw4bF6NGj44c//GFUV1fvE19HH310lJaWNi3FxcWt3ueSJUviyiuvjKuuuipOOeWUuPPOO2PQoEFx7733tuchAAAAdAkF7Tlo5syZMWnSpBg/fnwsXry41X3r6+sjLy8vPv/5z+esf+CBB2LlypXRv3//mDhxYixYsCB69+7d7Dl2794d1dXVcdNNN+WsnzBhQqxZs6bF+25sbIzGxsacsURENDS0OmTo1rIs4i/xlyM9jE7BzwqgOX5O/gc/J6F1n14jWZZ16P20OepWrVoVNTU1sW7duv3u+5e//CVuuummuPTSS6NPnz5N66dPnx5Dhw6N0tLSeOmll2L+/Pnx29/+Nqqqqpo9T11dXezduzf69++fs75///6xY8eOFu+/srIyFi1atM/6QYP2O3To5m470gPoFG5r/QUEQLfm52SEn5NwoHbu3LnfVyYejDZF3datW2P27NnxxBNPRGFhYav77tmzJ6ZNmxYff/xxLF26NGfb1Vdf3fTfZWVl8eUvfzlGjRoVNTU1ceaZZ7Z4zry8vJzbWZbts+6z5s+fH3Pnzm26/ec//zmGDBkSW7Zs6dAvKgemoaEhBg0aFFu3bs2Jfo4Mz0fn4vnoXDwfnYvno3PxfHQuno/Opb6+PgYPHhzHHntsh95Pm6Kuuro6amtro7y8vGnd3r1749lnn4177rknGhsbIz8/P/bs2RNTp06NN954I37961/v9xvqzDPPjB49esSmTZuajbp+/fpFfn7+PrNytbW1+8zefVavXr2iV69e+6wvLi72Td6J9OnTx/PRiXg+OhfPR+fi+ehcPB+di+ejc/F8dC5HHdWxnyTXprNXVFTExo0bY8OGDU3LqFGjYvr06bFhw4acoNu0aVM8+eSTUVJSst/zvvzyy7Fnz54YMGBAs9t79uwZ5eXl+7w8s6qqKsaOHduWhwAAANCltGmmrnfv3lFWVpazrqioKEpKSqKsrCw++uij+Pa3vx01NTXx6KOPxt69e5tm14499tjo2bNnbN68OR544IH4xje+Ef369YtXXnkl5s2bF2eccUZ89atfbTpvRUVFTJkyJWbNmhUREXPnzo0ZM2bEqFGjYsyYMbFs2bLYsmVLXHvttQf7NQAAAEhWu979siXbtm2LRx55JCIivvKVr+Rse+qpp+Kcc86Jnj17xq9+9au46667YteuXTFo0KCYNGlSLFiwIPLz85v237x5c9TV1TXdvvjii2Pnzp1xyy23xPbt26OsrCwee+yxGDJkyAGPr1evXrFgwYJmX5LJ4ef56Fw8H52L56Nz8Xx0Lp6PzsXz0bl4PjqXw/V85GUd/f6aAAAAdJiO/Ys9AAAAOpSoAwAASJioAwAASJioAwAASFiXirpbb701xo4dG0cffXR8/vOfb3afLVu2xIUXXhhFRUXRr1+/uP7662P37t2tnrexsTGuu+666NevXxQVFcXkyZNj27ZtHfAIuq6nn3468vLyml3WrVvX4nHf+c539tl/9OjRh3HkXdcJJ5ywz9f2pptuavWYLMti4cKFMXDgwPjc5z4X55xzTrz88suHacRd15tvvhlXXnllDB06ND73uc/FiSeeGAsWLNjvzybXx6GzdOnSGDp0aBQWFkZ5eXk899xzre7/zDPPRHl5eRQWFsaXvvSl+NGPfnSYRtr1VVZWxllnnRW9e/eO448/Pv7zf/7P8bvf/a7VY1r6f8xrr712mEbddS1cuHCfr2tpaWmrx7g+Ok5z/+/Oy8uLmTNnNru/a+PQevbZZ+PCCy+MgQMHRl5eXvziF7/I2d7e35MeeuihOPXUU6NXr15x6qmnxurVq9s8ti4Vdbt3746LLroo/vEf/7HZ7Xv37o1JkybF+++/H88//3ysWrUqHnrooZg3b16r550zZ06sXr06Vq1aFc8//3zs2rUrLrjggti7d29HPIwuaezYsbF9+/ac5aqrrooTTjghRo0a1eqx559/fs5xjz322GEaddf36UeEfLr89//+31vd/3vf+14sWbIk7rnnnli3bl2UlpbGf/pP/ynee++9wzTirum1116Ljz/+OH784x/Hyy+/HHfccUf86Ec/in/+53/e77Guj4P34IMPxpw5c+Lmm2+O9evXx7hx42LixImxZcuWZvd/44034hvf+EaMGzcu1q9fH//8z/8c119/fTz00EOHeeRd0zPPPBMzZ86MF154IaqqquKjjz6KCRMmxPvvv7/fY3/3u9/lXA9f/vKXD8OIu74RI0bkfF03btzY4r6uj461bt26nOeiqqoqIiIuuuiiVo9zbRwa77//fpx++ulxzz33NLu9Pb8n/eY3v4mLL744ZsyYEb/97W9jxowZMXXq1Fi7dm3bBpd1Qffdd19WXFy8z/rHHnssO+qoo7K33367ad3//J//M+vVq1dWX1/f7Ln+/Oc/Zz169MhWrVrVtO7tt9/OjjrqqOz//J//c8jH3l3s3r07O/7447Nbbrml1f0uv/zy7Jvf/ObhGVQ3M2TIkOyOO+444P0//vjjrLS0NLvtttua1v3lL3/JiouLsx/96EcdMMLu7Xvf+142dOjQVvdxfRwaf/M3f5Nde+21OeuGDx+e3XTTTc3u/9/+23/Lhg8fnrPummuuyUaPHt1hY+zOamtrs4jInnnmmRb3eeqpp7KIyN59993DN7BuYsGCBdnpp59+wPu7Pg6v2bNnZyeeeGL28ccfN7vdtdFxIiJbvXp10+32/p40derU7Pzzz89Zd95552XTpk1r03i61Ezd/vzmN7+JsrKyGDhwYNO68847LxobG6O6urrZY6qrq2PPnj0xYcKEpnUDBw6MsrKyWLNmTYePuat65JFHoq6uLr7zne/sd9+nn346jj/++Dj55JPj6quvjtra2o4fYDdx++23R0lJSXzlK1+JW2+9tdWX+73xxhuxY8eOnGuhV69e8bWvfc210AHq6+vj2GOP3e9+ro+Ds3v37qiurs75vo6ImDBhQovf17/5zW/22f+8886L//f//l/s2bOnw8baXdXX10dEHND1cMYZZ8SAAQOioqIinnrqqY4eWrexadOmGDhwYAwdOjSmTZsWr7/+eov7uj4On927d8fKlSvjv/yX/xJ5eXmt7uva6Hjt/T2ppWumrb9bdauo27FjR/Tv3z9nXd++faNnz56xY8eOFo/p2bNn9O3bN2d9//79WzyG/VuxYkWcd955MWjQoFb3mzhxYjzwwAPx61//On7wgx/EunXr4utf/3o0NjYeppF2XbNnz45Vq1bFU089FbNmzYo777wz/ut//a8t7v/p9/tf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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "#iia.plot(width=(20,20),\n", "# basis='xz',\n", @@ -503,7 +461,7 @@ }, { "cell_type": "code", - "execution_count": 58, + "execution_count": null, "id": "d17047bd", "metadata": {}, "outputs": [], @@ -555,31 +513,10 @@ }, { "cell_type": "code", - "execution_count": 67, + "execution_count": null, "id": "aa83205f", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 67, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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YxUBAACAvcgaJ9x2223xpS99adPHfvu3fztOnjy57a9JKcWDDz4Yp06diq9//evx8pe/PN73vvfFD/7gD/b9XIBN1v5Yzh96AwBkZV0BemMVAQAAgFnKvpzwrne9K+6+++5Lf/9d3/VdO37+H/7hH8Z73/veeOSRR+KOO+6I3//934+f+qmfiieffDKuu+66vp8LEBFrYcL/fukHIqUUsfrfcz8HAIBR1hVgYlYRAAAA6Fv2OOG6666Lm2++eazPTSnFQw89FO94xzvi9a9/fURE/Pmf/3ncdNNN8ZGPfCTuueeePp8KcOmP6/73Sz+Q9R0AAExgzHWFtU8VLNA+IQIAAAA5ZI8T3vOe98Tv/d7vxYEDB+KXf/mX49ixY/H85z9/y8/9whe+EM8880y8+tWvvvSx/fv3x1133RWf+cxnto0TLl68GBcvXrz09xcuXJjtbwJonigBAKAxEwQLa58uWqA+W0UIEUIEAAAA8sgaJ/zWb/1W/OiP/mi88IUvjL//+7+P48ePxxe+8IV4+OGHt/z8Z555JiIibrrppk0fv+mmm+JLX/rStl/nxIkT8eCDD87u4cBgiBIAAAZkq2AhQrRA8UQIAAAA1GDmccI73/nOXUOAxx57LO688864//77L33sh3/4h+OFL3xh/NIv/VK85z3viRe96EXb/vqu2/yHPymlqz426vjx4/HAAw9c+vsLFy7EgQMHdvutAAOXQpQAAECIFiiGCAEAAICazTxOeOtb3xpveMMbdvyc2267bcuPv+IVr4iIiNXV1S3jhJtvvjki1hYUbrnllksff/bZZ69aUxi1f//+2L9//25PB4gIawkAAIxpimjh8i8VL3C17eKDDSIEAAAAajbzOOHGG2+MG2+8capf+8QTT0REbAoPRt1+++1x8803xyc+8Yn4kR/5kYiI+MY3vhGf/vSn4z3vec90DwZYJ0oAAGAmtosWNuwSLwgX2rZTgCA+AAAAoGUzjxPG9eijj8bf/d3fxate9aq44YYb4rHHHov7778/fv7nfz5e/OIXX/q8l770pXHixIl43eteF13Xxdve9rZ497vfHQcPHoyDBw/Gu9/97rj22mvjV3/1V3P9VoDKiRIAAJirneKFMVYXLv9jRAwl2W31YIMAAQAAgKHKFifs378/PvrRj8aDDz4YFy9ejFtvvTXuvvvuePvb377p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e/fuePnll/u0J2zbti2mT59e0/MC9RnKeb948eI48sgj44ILLqj7+SZMmBDHHntsPPvss3UfCwzNcK7vp512WkRErF+/vmo4Yfz48RGxL9U5YcKEnu3btm3r93oPNF695/nmzZvjzDPPjGnTpsXXvva1up/P9RzyoaOjI0aMGFHxWxQDXYfHjx9fdf+RI0cOGEQEsnX11VfHvffeG48//ni88Y1vrPv40047Lb71rW81YWVAo40ZMyZOPvnkfv+t7VoOxfWrX/0qvv/978f3vve9uo91LYfiGOo98/6u8fXeZy9UOKGjoyM6Ojoa8ljTpk2LG2+8MbZs2dLzB798+fIYPXp0TJ06teoxU6dOjYMOOihWrFgRF110UUREbNmyJX7+85/HLbfc0pB1AX3Ve96naRqLFy+OSy+9NA466KC6n++ll16KTZs29fkfMtBcw7m+r1mzJiKi33N28uTJMX78+FixYkW87W1vi4h9s/Mee+yxuPnmm4e2YKBu9ZznL7zwQpx55pkxderUWLx4cbzudfVPonM9h3wYNWpUTJ06NVasWBHve9/7eravWLEi3vOe91Q9Ztq0afHv//7vfbYtX748TjnllCH9+x5orjRN4+qrr45ly5bFypUrY/LkyUN6nDVr1rhuQ0F0dnbGunXr4vTTT6/6c9dyKK7FixfHUUcdFeeee27dx7qWQ3EM9Z75tGnTYsWKFX3ajZcvX173L/DXf6evIDZu3Bhr166NjRs3xt69e2Pt2rWxdu3a2LVrV0REzJgxI0466aS45JJLYs2aNfHwww/HggUL4vLLL4/DDz88IvbdGD3hhBPiRz/6UUREHHHEEXHZZZfFddddFw8//HCsWbMmPvShD8XJJ58c73rXuzJ7rcB+jzzySGzYsCEuu+yyqj8/4YQTYtmyZRERsWvXrliwYEGsWrUqnnvuuVi5cmWcf/750dHR0efmKZAPq1atittuuy3Wrl0bGzZsiO985zvx0Y9+NC644IJ405ve1LNf7/M8SZKYP39+/M3f/E0sW7Ysfv7zn8fcuXPj0EMPjQ9+8INZvRSgH5s3b44zzjgjjjnmmLj11lvj17/+dWzdurUile16DsVx7bXXxr/8y7/E17/+9Vi3bl1cc801sXHjxrjiiisiIuL666+PSy+9tGf/K664In71q1/FtddeG+vWrYuvf/3rsWjRoliwYEFWLwEYwFVXXRXf+ta34tvf/nYcdthhPdft1157rWefA8/zL33pS3HPPffEs88+G08//XRcf/31sXTp0pg3b14WLwEYxIIFC+Kxxx6LDRs2xJNPPhnvf//7Y+fOnTFnzpyIcC2Hsvjd734Xixcvjjlz5sTIkX1/r9m1HIpn165dPZ+NR0Rs2LCh53PzWu+ZX3rppXH99df3fP+JT3wili9fHjfffHP84he/iJtvvjm+//3vx/z58+taW6GaE+rxuc99Lu68886e77uTH48++micccYZMWLEiLj//vvjyiuvjLe//e1xyCGHxAc/+MG49dZbe47Zs2dPPPPMM/Hqq6/2bLvtttti5MiRcdFFF8Vrr70WZ511Vtxxxx0xYsSI1r04oF+LFi2K6dOnx4knnlj1588880zs2LEjIiJGjBgRP/vZz+Ib3/hGbN++PSZMmBBnnnlm3H333XHYYYe1ctlADUaPHh1333133HDDDdHZ2RnHHntsXH755fHJT36yz369z/OIiE9+8pPx2muvxZVXXhkvv/xynHrqqbF8+XLnOeTQ8uXLY/369bF+/fqKSujuObURrudQJLNmzYqXXnopvvCFL8SWLVtiypQp8cADD8Sxxx4bEfvaCDdu3Niz/+TJk+OBBx6Ia665Jv7xH/8xJk6cGH//938ff/EXf5HVSwAG8JWvfCUiIs4444w+2xcvXhxz586NiMrzfPfu3bFgwYJ44YUX4pBDDom3vOUtcf/998e73/3uVi0bqMPzzz8fH/jAB+LFF1+MN7zhDXHaaafFD3/4Q9dyKJnvf//7sXHjxvjwhz9c8TPXciieH//4x3HmmWf2fH/ttddGRMScOXPijjvuqOme+caNG/s0mk6fPj2WLFkSn/nMZ+Kzn/1svPnNb4677747Tj311LrWlqS97/IBAAAAAAAAADRYacc6AAAAAAAAAAD5IJwAAAAAAAAAADSVcAIAAAAAAAAA0FTCCQAAAAAAAABAUwknAAAAAAAAAABNJZwAAAAAAAAAADSVcAIAAAAAAAAA0FTCCQAAAAAAAABAUwknAAAAAAAAAABNJZwAAAAAAAAAADSVcAIAAAAAAAAA0FTCCQAAAAAAAABAU/0/q+OPGEhw+xcAAAAASUVORK5CYII=\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "#cr.plot(width=(20,20),\n", "# basis='xy',\n", @@ -591,31 +528,10 @@ }, { "cell_type": "code", - "execution_count": 68, + "execution_count": null, "id": "37a3fa2a", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 68, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "#crc.plot(width=(20,20),\n", "# basis='xy',\n", @@ -627,7 +543,7 @@ }, { "cell_type": "code", - "execution_count": 69, + "execution_count": null, "id": "7f985e3a", "metadata": {}, "outputs": [], @@ -698,6 +614,8 @@ " v = void_cell(elem_bound)\n", " # tres, uno, dos, quatro\n", " t, u, d, q = graphite_triangles(elem_bound) \n", + " s1, s2, s3 = zone_i_boundary\n", + "\n", " \n", " main = openmc.RectLattice()\n", " main.pitch = np.array([10.16, 10.16])\n", @@ -749,9 +667,9 @@ " [v, v, v, v, v, v, v, v, v, v, v, v, v, t, z, z, z, z, l, l, l, l, l, l, l, l, l, z, z, z, z, q, v, v, v, v, v, v, v, v, v, v, v, v, v],\n", " [v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, t, z, z, z, z, z, z, z, z, z, q, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v]]\n", " \n", - " oct1_maxy, oct1_miny, oct1_maxx, oct1_minx, oct1_ur, oct1_br, oct1_bl, oct1_ul = zone_i_octas[0]\n", - " oct2_maxy, oct2_miny, oct2_maxx, oct2_minx, oct2_ur, oct2_br, oct2_bl, oct2_ul = zone_i_octas[1]\n", - " oct3_maxy, oct3_miny, oct3_maxx, oct3_minx, oct3_ur, oct3_br, oct3_bl, oct3_ul = zone_i_octas[2]\n", + " oct1_maxy, oct1_miny, oct1_maxx, oct1_minx, oct1_ur, oct1_br, oct1_bl, oct1_ul = list((-s1).get_surfaces().values())\n", + " oct2_maxy, oct2_miny, oct2_maxx, oct2_minx, oct2_ur, oct2_br, oct2_bl, oct2_ul = list((-s2).get_surfaces().values())\n", + " oct3_maxy, oct3_miny, oct3_maxx, oct3_minx, oct3_ur, oct3_br, oct3_bl, oct3_ul = list((-s3).get_surfaces().values())\n", " cb_minx, cb_maxx, cb_miny, cb_maxy = list(cr_boundary.get_surfaces().values())\n", "\n", " c1_ur = (-oct3_ur & +oct2_ur & -oct2_maxx & -oct2_maxy)\n", @@ -796,7 +714,7 @@ "\n", " return main_cells\n", "\n", - "def zoneIIB(zone_i_octas, zone_ii_boundary, annulus_boundary, core_base, core_top):\n", + "def zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top):\n", " # Large elements\n", " large_angular_width = 3.538\n", " large_half_w = large_angular_width / 2\n", @@ -828,14 +746,14 @@ " for i, pos in enumerate(large_positions):\n", " pos = np.round(pos, 3)\n", " r1_big, r2_big = big_radii[i]\n", - " t1_big = pos - large_half_w\n", - " t2_big = pos + large_half_w\n", + " t1_big = np.round(pos - large_half_w, 3)\n", + " t2_big = np.round(pos + large_half_w, 3)\n", " s1 = openmc.model.CylinderSector(r1_big, r2_big, t1_big, t2_big)\n", " s2 = openmc.ZCylinder(**hole_args[i])\n", " elem_cells.append(openmc.Cell(fill=moder, region=(-s1 & +s2), name=f'iib_large_element_{pos}'))\n", " elem_cells.append(openmc.Cell(fill=fuel, region=(-s2),\n", " name=f'iib_large_element_fuel_hole_{pos}'))\n", - " t1_small = t2_big + adjacent_angular_offset\n", + " t1_small = np.round(t2_big + adjacent_angular_offset, 3)\n", " r1_small, r2_small = small_radii\n", " \n", " # Inter element fuel channel\n", @@ -845,20 +763,20 @@ " elem_cells.append(openmc.Cell(fill=fuel, region=-s3,\n", " name=f'inter_element_fuel_channel_{cpos}'))\n", " \n", - " t4a = t1_big - adjacent_angular_offset\n", - " s4 = openmc.model.CylinderSector(r1_small, r1_big, t4a, t1_small)\n", + " #t4a = t1_big - adjacent_angular_offset\n", + " s4 = openmc.model.CylinderSector(r1_small, r1_big, t1_big, t2_big)\n", " elem_cells.append(openmc.Cell(fill=fuel, region=-s4,\n", " name=f'inter_element_fuel_channel_{pos}'))\n", " \n", " for i in range(0, small_elems_per_octant):\n", - " t2_small = t1_small + small_angular_width\n", + " t2_small = np.round(t1_small + small_angular_width, 3)\n", " \n", " # reflector element\n", " s5 = openmc.model.CylinderSector(r1_small, r2_small, t1_small, t2_small)\n", " pos = t2_small - (small_angular_width / 2)\n", " pos = np.round(pos, 3)\n", " elem_cells.append(openmc.Cell(fill=moder, region=-s5, name=f'iib_small_element_{pos}'))\n", - " t1_small = t2_small + adjacent_angular_offset\n", + " t1_small = np.round(t2_small + adjacent_angular_offset, 3)\n", " \n", " # inter-element fuel channel\n", " s6 = openmc.model.CylinderSector(r1_small, r2_small, t2_small, t1_small)\n", @@ -867,18 +785,15 @@ " elem_cells.append(openmc.Cell(fill=fuel, region=-s6,\n", " name=f'inter_element_fuel_channel_{cpos}'))\n", " \n", - "\n", - " #universe_id=10\n", - " iib = openmc.Universe(name='zone_iib')\n", - " iib.add_cells(elem_cells)\n", " \n", " #universe_id=10\n", " iib = openmc.Universe(name='zone_iib')\n", - " iib.add_cells(elem_cells)\n", + " s1, s2, s3 = zone_i_boundary\n", "\n", - " oct1_maxy, oct1_miny, oct1_maxx, oct1_minx, oct1_ur, oct1_br, oct1_bl, oct1_ul = zone_i_octas[0]\n", - " oct2_maxy, oct2_miny, oct2_maxx, oct2_minx, oct2_ur, oct2_br, oct2_bl, oct2_ul = zone_i_octas[1]\n", - " oct3_maxy, oct3_miny, oct3_maxx, oct3_minx, oct3_ur, oct3_br, oct3_bl, oct3_ul = zone_i_octas[2]\n", + " iib.add_cells(elem_cells)\n", + " oct1_maxy, oct1_miny, oct1_maxx, oct1_minx, oct1_ur, oct1_br, oct1_bl, oct1_ul = list((-s1).get_surfaces().values())\n", + " oct2_maxy, oct2_miny, oct2_maxx, oct2_minx, oct2_ur, oct2_br, oct2_bl, oct2_ul = list((-s2).get_surfaces().values())\n", + " oct3_maxy, oct3_miny, oct3_maxx, oct3_minx, oct3_ur, oct3_br, oct3_bl, oct3_ul = list((-s3).get_surfaces().values())\n", "\n", " cap_r =(+oct3_maxx & -zone_ii_boundary)\n", "\n", @@ -977,7 +892,7 @@ }, { "cell_type": "code", - "execution_count": 70, + "execution_count": null, "id": "cdf61881", "metadata": {}, "outputs": [], @@ -1018,40 +933,19 @@ }, { "cell_type": "code", - "execution_count": 74, + "execution_count": null, "id": "2a283441", "metadata": { "scrolled": false }, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 74, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAABD8AAAQZCAYAAADCPKFlAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/NK7nSAAAACXBIWXMAAA9hAAAPYQGoP6dpAABUY0lEQVR4nO3deZBd5X3g72+DpEYQ1CyypNYgJJlMhFliiMiANMZiscVmSIzDYtewlIEyBoHZiiDs/NRyiggoFlXCxARHlk1hR2RGyMMUJEjECMKwjMAiw6rgIJAQUmlgoBuwabGc3x9EbbXUe997zznveZ6qrlLfvrd1bt973vveT7/ndFOWZVkAAAAAJGqnvDcAAAAAoJ7EDwAAACBp4gcAAACQNPEDAAAASJr4AQAAACRN/AAAAACSJn4AAAAASRM/AAAAgKSJHwAAAEDSxA8AAAAgaXWNH4888kicfPLJMXHixGhqaoqf//zn3b6eZVm0tbXFxIkTY/To0XHUUUfF888/3+/3Xbp0aRxwwAHR3NwcBxxwQCxbtqxO9wAAAAAou7rGj/fffz8+//nPx2233dbj12+88ca45ZZb4rbbbotVq1bFhAkT4stf/nK8++67vX7Pxx9/PM4444w466yz4l/+5V/irLPOitNPPz2efPLJet0NAAAAoMSasizLGvIfNTXFsmXL4o//+I8j4tNVHxMnTozLLrss/vRP/zQiIjo7O2P8+PFxww03xLe+9a0ev88ZZ5wRHR0d8Q//8A9dlx1//PGx5557xt/93d/V/X4AAAAA5TIir/947dq1sWnTppg9e3bXZc3NzTFr1qx47LHHeo0fjz/+eFx++eXdLjvuuONi4cKFvf5fnZ2d0dnZ2fX5J598Ev/v//2/2HvvvaOpqWl4dwQAAAAYkizL4t13342JEyfGTjvV7+CU3OLHpk2bIiJi/Pjx3S4fP358vPbaa33erqfbbP1+PVmwYEHMnz9/GFsLAAAA1Mv69etjn332qdv3zy1+bLX9yossy/pdjTHY28ydOzeuuOKKrs/b29tj3333jcvj8miO5iFsNUB65rZfX5Pvs6Dlmpp8H9JVq+darXnu0p+iPncByqyjI2LSpIjdd9+9rv9PbvFjwoQJEfHpSo7W1tauyzdv3rzDyo7tb7f9Ko/+btPc3BzNzTtGjuZojl1il8FuOkCSbm1pi3lZ27C/z4Ls+pjfNPzvQ7rGjMl7C3pmTkBfajE+AtC7ep+Soq5/7aUvU6dOjQkTJsSKFSu6LtuyZUs8/PDDMXPmzF5vN2PGjG63iYhYvnx5n7cBAAAAqquu8eO9996LZ555Jp555pmI+PQkp88880ysW7cumpqa4rLLLou/+Iu/iGXLlsVzzz0X5557buy6667xjW98o+t7nH322TF37tyuz7/zne/E8uXL44YbboiXXnopbrjhhnjwwQfjsssuq+ddAaiEWq3Y8BtSICXGNIDyq+thL0899VQcffTRXZ9vPe/GOeecEz/+8Y/j6quvjt/85jdx0UUXxdtvvx2HH354LF++vNuxPuvWret2xteZM2fGkiVL4nvf+1782Z/9Wey3335x9913x+GHH17PuwIAAACUVFOWZVneG9FoHR0d0dLSEtfENY7vBehBrX7L6dwf9KSov0X3fKUnRX2+AqSioyOipeXTP0wypo4nBsvtnB8AAAAAjSB+ALAD5/4AMIYBpET8AAAAAJImfgDQI6s/gCozdgGkRfwAAAAAkiZ+ANArqz+AKjJmAaRH/AAAAACSJn4A0CerP4AqMVYBpEn8AAAAAJImfgDQr1qt/gAAgDyIHwA0jOXkQJEZowDSJX4AMCBWfwAAUFbiBwAN5TerQBEZmwDSJn4AMGBWfwAAUEbiBwAN5zesQJEYkwDSJ34AMChWfwAAUDbiBwAAAJA08QOAQavF6g/LzIEiMBYBVIP4AQAAACRN/AAgN37jCuTJGARQHeIHAEPixKcAAJSF+AEAAAAkTfwAYMic+BQoK2MPQLWIHwAAAEDSxA8AAAAgaeIHAMPi0BegbIw5ANUjfgAAAABJEz8AGDarP4CyMNYAVJP4AQAAACRN/AAAAACSJn4AUBMOfQGKzhgDUF3iBwAAAJA08QMAAABImvgBQM049AUoKmMLQLWJHwAAAEDSxA8AaqoWqz8AAKCWxA8ACsfydKCWjCkAiB8AAABA0sQPAAAAIGniBwA157wfAAAUifgBQCE5Rh+oBWMJABHiBwAAAJA48QOAunDoCwAARSF+AFBYlqsDw2EMAWAr8QMAAABImvgBQN049AUAgCIQPwAAAICkiR8AFJpj9oGhMHYAsC3xA4C6cugLAAB5Ez8AAACApIkfAAAAQNLEDwAKz7H7wGAYMwDYnvgBQN057wcAAHkSPwAAAICkiR8AAABA0sQPAErBMfzAQBgrAOiJ+AFAQzjvBwAAeRE/AAAAgKSJHwAAAEDSxA8ASsOx/EBfjBEA9Eb8AAAAAJImfgDQME56CgBAHsQPAAAAIGniBwAAAJA08QOAUnFCQ6AnxgYA+iJ+ANBQzvsBAECjiR8AAABA0sQPAAAAIGniBwAAAJA08QMAAABImvgBQOn4qw7AtowJAPRH/ACg4fzFFwAAGkn8AAAAAJImfgAAAABJEz8AAACApIkfAAAAQNLEDwBKyV93ACKMBQAMjPgBQC78xRcAABpF/AAAAACSJn4AAAAASRM/AAAAgKSJHwAAAEDSxA8AAAAgaeIHAAAAkDTxA4DcDPfP3c7Lhnd7oNyMAQAMlPgBAAAAJE38AAAAAJImfgAAAABJEz8AAACApIkfAAAAQNLEDwAAACBp4gcAAACQNPEDAAAASJr4AQAAACRN/AAAAACSJn4AkKv5TW15bwIAAIkTPwAotXlZW96bAOTAvg/AYIgfAAAAQNLEDwAAACBp4gcAAACQNPEDAAAASJr4AQAAACRN/AAAAACSJn4AAAAASRM/AAAAgKSJHwAAAEDSxA8AAAAgaeIHAAAAkDTxAwAAAEia+AEAAAAkTfwAAAAAkiZ+AAAAAEkTPwAAAICkiR8AAABA0nKPH1OmTImmpqYdPi6++OIer79y5coer//SSy81eMsBAACAMhiR9wasWrUqPv74467Pn3vuufjyl78cp512Wp+3W7NmTYwZM6br88985jN120YAAACgvHKPH9tHi+uvvz7222+/mDVrVp+3GzduXOyxxx513DIAAAAgBbkf9rKtLVu2xF133RXf/OY3o6mpqc/rHnroodHa2hrHHntsPPTQQ31et7OzMzo6Orp9AAAAANVQqPjx85//PN55550499xze71Oa2tr3HHHHbF06dK45557Ytq0aXHsscfGI4880uttFixYEC0tLV0fkyZNqsPWAwAAAEWU+2Ev21q0aFGccMIJMXHixF6vM23atJg2bVrX5zNmzIj169fHTTfdFF/84hd7vM3cuXPjiiuu6Pq8o6NDAAEAAICKKEz8eO211+LBBx+Me+65Z9C3PeKII+Kuu+7q9evNzc3R3Nw8nM0DAAAASqowh70sXrw4xo0bFyeddNKgb7t69epobW2tw1YBAAAAZVeIlR+ffPJJLF68OM4555wYMaL7Js2dOzc2bNgQd955Z0RELFy4MKZMmRIHHnhg1wlSly5dGkuXLs1j0wEAAICCK0T8ePDBB2PdunXxzW9+c4evbdy4MdatW9f1+ZYtW+Kqq66KDRs2xOjRo+PAAw+M++67L0488cRGbjIAAABQEoWIH7Nnz44sy3r82o9//ONun1999dVx9dVXN2CrAAAAgBQU5pwfAAAAAPUgfgAAAABJEz8AAACApIkfAJTa/Ka2vDcByIF9H4DBED8AyNW8rC3vTQAAIHHiBwAAAJA08QMAAABImvgBAAAAJE38AAAAAJImfgAAAABJEz8AAACApIkfAAAAQNLEDwAAACBp4gcAAACQNPEDAAAASJr4AUBu5mVtw7r9/Kbh3R4oN2MAAAMlfgAAAABJEz8AAACApIkfAAAAQNLEDwAAACBp4gcAAACQNPEDAAAASJr4AUAuhvtnbgEAYKDEDwBKaX5TW96bABSAsQCAgRA/AAAAgKSJHwAAAEDSxA8AAAAgaeIHAAAAkDTxA4CG85deAABoJPEDgNLx1x2AbRkTAOiP+AEAAAAkTfwAAAAAkiZ+AAAAAEkTPwAAAICkiR8ANJS/9AIAQKOJHwCUir/qAPTE2ABAX8QPAAAAIGniBwAAAJA08QOAhnG+DwAA8iB+AAAAAEkTPwAoDSc0BPpijACgN+IHAAAAkDTxAwAAAEia+AFAQzjZKQAAeRE/ACgFx/IDA2GsAKAn4gcAAACQNPEDAAAASJr4AUDdOd8HAAB5Ej8AKDzH8AODYcwAYHviBwAAAJA08QMAAABImvgBQF053wcAAHkTPwAoNMfuA0Nh7ABgW+IHAAAAkDTxA4C6ccgLAABFIH4AAAAASRM/ACgsx+wDw2EMAWAr8QOAunDICwAARSF+AAAAAEkTPwAoJMvVgVowlgAQIX4AUAcOeQEAoEjEDwAAACBp4gcAAACQNPEDgMJxjD5QS8YUAMQPAGrK+T4AACga8QMAAABImvgBQM3UYtWH5elAPRhbAKpN/AAAAACSJn4AAAAASRM/AKgJh7wARWeMAagu8QMAAABImvgBAAAAJE38AGDYHPIClIWxBqCaxA8AAAAgaeIHAMNi1QdQNsYcgOoRPwAAAICkiR8AAABA0sQPAIbMIS9AWRl7AKpF/AAAAACSJn4AMCS1WPUBAACNIH4AkBvLzoE8GYMAqkP8AAAAAJImfgAwaE50CqTCWARQDeIHAAAAkDTxA4BBcaJTAADKRvwAoOEsMweKxJgEkD7xA4ABs+oDAIAyEj8AaCi/YQWKyNgEkDbxA4ABseoDAICyEj8AaBi/WQWKzBgFkC7xA4B+WfUBAECZiR8AAABA0sQPAPpUq1UflpMDZWCsAkiT+AEAAAAkTfwAoFdWfQBVZMwCSI/4AQAAACRN/ACgR1Z9AFVm7AJIi/gBAAAAJE38AGAHVn0AGMMAUiJ+AAAAAEkTPwDoxqoPgN8ylgGkQfwAAAAAkiZ+ANDFqg+AHRnTAMpP/AAAAACSJn4AEBFWfQD0xdgGUG7iBwAAAJA08QMAqz4ABsAYB1Be4gdAxdUqfAAAQFGJHwDUhN+IAlVgrAMoJ/EDoMKs+gAAoArEDwCGzW9CgSox5gGUj/gBUFFOcgowdMY+gHIRPwAqyOEuAABUifgBwJD5zSdQZcZAgPLIPX60tbVFU1NTt48JEyb0eZuHH344pk+fHrvsskt89rOfjdtvv71BWwtQflZ9AABQNbnHj4iIAw88MDZu3Nj18eyzz/Z63bVr18aJJ54YRx55ZKxevTquvfbauPTSS2Pp0qUN3GKAcqpl+PAbTwBjIUBZjMh7AyIiRowY0e9qj61uv/322HfffWPhwoUREfG5z30unnrqqbjpppvia1/7Wh23EgAAACijQqz8ePnll2PixIkxderUOPPMM+OVV17p9bqPP/54zJ49u9tlxx13XDz11FPx4Ycf9nibzs7O6Ojo6PYBUDVWfQDUhzERoPhyjx+HH3543HnnnfHAAw/ED3/4w9i0aVPMnDkz3nrrrR6vv2nTphg/fny3y8aPHx8fffRRvPnmmz3eZsGCBdHS0tL1MWnSpJrfD4CqMMkH2JGxEaDYco8fJ5xwQnzta1+Lgw8+OL70pS/FfffdFxERP/nJT3q9TVNTU7fPsyzr8fKt5s6dG+3t7V0f69evr9HWA5SDk5wCAFBluceP7e22225x8MEHx8svv9zj1ydMmBCbNm3qdtnmzZtjxIgRsffee/d4m+bm5hgzZky3D4CqcLgLQGMYIwGKq3Dxo7OzM1588cVobW3t8eszZsyIFStWdLts+fLlcdhhh8XIkSMbsYkAlWRSD9A/YyVAMeUeP6666qp4+OGHY+3atfHkk0/Gn/zJn0RHR0ecc845EfHpIStnn3121/UvvPDCeO211+KKK66IF198MX70ox/FokWL4qqrrsrrLgAUlsNdAACgAPHj9ddfj69//esxbdq0OPXUU2PUqFHxxBNPxOTJkyMiYuPGjbFu3bqu60+dOjXuv//+WLlyZRxyyCHx53/+5/GXf/mX/swtwHYc7gKQD2MmQPGMyHsDlixZ0ufXf/zjH+9w2axZs+KXv/xlnbYIoPys+AAAgN/KfeUHAMXmN5gAg2fsBCgW8QMgMQ53ASgGYyhAcYgfAAlxuAsAAOxI/ACgR35jCTB8xlKAYhA/ABLhcBeAYjKmAuRP/ABIgMNdAACgd+IHQMnVOnz4DSVA7RlbAfIlfgDQxeQcoH6MsQD5ET8ASsx5PgDKxVgLkA/xA6CknOcDAAAGRvwAKCHn+QAoL2MuQOOJHwAlI3wAlJ+xF6CxxA8AAAAgaeIHQIlY9QGQDmMwQOOIHwAlIXwApMdYDNAY4gdACQgfAOkyJgPUn/gBUHD+pC0AAAyP+AFQYPUIH37DCFA8xmaA+hI/AApK+ACoFmM0QP2IHwAVYVINUHzGaoD6ED8ACsgJTgGqy5gNUHviB0DBOMEpAADUlvgBUCDO8wFAhLEboNbED4CCED4A2JYxHKB2xA+AAhA+AOiJsRygNsQPgJwJHwD0xZgOMHziB0COnNwUAADqT/wAyEm9woffEAKkx9gOMDziB0AOhA8ABssYDzB04gdAgwkfAAyVsR5gaMQPgAYSPgAYLmM+wOCJHwANInwAUCvGfoDBET8AGkD4AKDWvAYADJz4AVBnwgcA9eK1AGBgxA+AOhI+AKg3rwkA/RM/AOqkXuEDAAAYHPEDoA7qGT78hg+A7XltAOib+AFQY8IHAHnwGgHQO/EDoIaEDwDy5LUCoGfiB0CNCB8AFIHXDIAdiR8ANSB8AFAkXjsAuhM/AIZhXtYmfABQSF5DAH5L/AAYonr/KVuTVgCGy2sJwKfED4AhED4AKAuvKQDiB8CgCR8AlI3XFqDqxA+AQRA+ACgrrzFAlYkfAAMkfABQdl5rgKoSPwD6Ue+/6BJhMgpA43jNAapoRN4bAFBkogcAKdr6+lPv1zmAorDyA6AXwgcAqfNaBFSF+AHQA+EDgKrwmgRUgfgBsA3n9wCgirw2AakTPwD+XSOOeza5BKCovEYBKRM/AEL4AIAIr1VAusQPoNIacZhLhMkkAOXhNQtIkfgBVFaj/ryfSSQAZeO1C0jNiLw3AKDRRA8A6N/W17FGvW4C1JOVH0ClCB8AMDhe04AUiB9AZQgfADA0XtuAshM/gOQ16qSmESaHAKTLaxxQZs75ASRN9ACA2nEeEKCsrPwAkmS1BwDUj9c+oGzEDyApjYweESZ/AFSX10CgTMQPIBmNXoJr0gdA1XktBMrCOT+A0hM9ACA/zgMClIGVH0CpCR8AUAxeI4EiEz+AUmr0uT0iTOoAoD9eK4GictgLUCp5LKk1kQOAgXMYDFBEVn4ApSF8AEB5eA0FiqTSKz/mtl8ft7a05b0ZQD9EDwAoJ6tAgKKo/MqPPM4bAAxMXvun8AEAteW1Fchb5ePHViIIFEee+6PJGQDUh9dYIE+VPuylJ1vfcBmcofHyDJD2eQCoP4fBAHmx8qMXVoJA4+S9vwkfANBYXnuBRrPyox9WgkD95B0Y7dcAkB+rQIBGsvJjgPL+zTSkpAj7k/ABAMXgNRloBCs/BslKEBi6vINHhH0XAIrIKhCg3sSPIRJBYOCKMJGxrwJA8YkgQL047GWYirB8H4qqKPuH8AEA5eK1G6g1Kz9qxEoQ+K0iBI8I+yMAlJlVIEAtWflRY0X5TTfkoUjPf+EDANLgNR2oBSs/6mTbN4AGbFJWlNixlf0NANJjFQgwXOJHAzgkhhQVbfJh/wKA9IkgwFCJHw1kNQhlV8SJhn0JAKpHBAEGyzk/clKkcyNAf4r6fBU+AKDazAWAgbLyI2dWg1BURYwdW9lXAICtrAIBBkL8KBAhhLwVfdJgvwAAeiOCAH2pdPxY0HJNLMiuz3szeuQkqTRS0ScJ9gMAYKBEECiP+U1t8UF8EBH1f19e6fgRUfzBcfvt8iaQWijq8317nu8AwFAVfZ4PVZbHPL/y8WOrsgyODo1hqIr+3N6W5zYAUCtlmedDFeQ5zxc/tlOmwVEIoT9leB5vy/MYAKiXMs3zITVFmOeLH70o2+AohLBVWZ6z2/KcBQAapWzzfCizIs3zxY9+lHFwdJ6QainTc3N7npsAQF7KOM+HsijiPF/8GKAyD45iSFrK+BzcnucgAFAUZZ7nQ9EUeZ4vfgzStg9mWQfInra7yE/SKivrc6wnnmMAQJGlMM+HPJRlni9+DENKldjqkGJI4bm0Pc8lAKBsUprnQ72UbZ4vftRAioNjb/elbE/wokrpudIbzxUAoOxSnOfDcJV1ni9+1FAVlsqJIoOT6vOgN54HAECKqjDPh76kMM8XP+qkapW4r/uZwo7Sl6o8xn1J/TEGANiqavN8qi2leb74UWcq8eDud1F2rqo+VoNRlMcKACAP5vmkKtV5vvjRQAbI/vm5FFuqAyEAwHCY51N2VZjnix85sVyOMqnCYAgAUAvm+ZRJleb54kfOVGKKqkoDIQBArZnnU1RVneeLHwVigCRvVR0IAQDqyTyfvJnnix+FZYCkUQyEAACNY55Po5jndyd+lMD2T1qDJMNhEAQAKAbzfGrJPL9v4kcJqcUMloEQAKD4zPMZLPP8gRM/Sk4tpicGQQCAcjPPpyfm+UMnfiTGIFlNBkEAgLSZ51eTeX7tiB+JM0imySAIAFBt5vlpMs+vH/GjYgyS5WQQBACgL+b55WSe3zjiR8X1tLMZKPNlAARoLOMukCLz/OLxepMv8YMd9LZTGixry+AHkC/jMFA15vmN4fWlmMQPBsxgOTQGP4BiMS4DdGeePzReT8ol9/ixYMGCuOeee+Kll16K0aNHx8yZM+OGG26IadOm9XqblStXxtFHH73D5S+++GLsv//+9dxcetDfTp/6oGnQAygPYzbAwJnnt+W9CdRQ7vHj4Ycfjosvvjj+8A//MD766KP47ne/G7Nnz44XXnghdttttz5vu2bNmhgzZkzX55/5zGfqvbkMwWAHjbwHUYMcQHqM7QC1Z55PmeQeP/7xH/+x2+eLFy+OcePGxdNPPx1f/OIX+7ztuHHjYo899qjj1pEHgxIAteI1BaA4jMnkKff4sb329vaIiNhrr736ve6hhx4aH3zwQRxwwAHxve99r8dDYSIiOjs7o7Ozs+vzjo6O2mwsAFBIJtgAwLZ2ynsDtpVlWVxxxRXxhS98IQ466KBer9fa2hp33HFHLF26NO65556YNm1aHHvssfHII4/0eP0FCxZES0tL18ekSZPqdRcAgJwJHwDA9pqyLMvy3oitLr744rjvvvvi0UcfjX322WdQtz355JOjqakp7r333h2+1tPKj0mTJsU1cU3sErsMe7sBgIGr1zHfogcAlM8H8UFcH9dHe3t7t3N61lphDnu55JJL4t57741HHnlk0OEjIuKII46Iu+66q8evNTc3R3Nz83A3EQAoINEDAOhP7vEjy7K45JJLYtmyZbFy5cqYOnXqkL7P6tWro7W1tcZbBwAUmfABAAxE7vHj4osvjp/97GfxP/7H/4jdd989Nm3aFBERLS0tMXr06IiImDt3bmzYsCHuvPPOiIhYuHBhTJkyJQ488MDYsmVL3HXXXbF06dJYunRpbvcDAGgs4QMAGKjc48cPfvCDiIg46qijul2+ePHiOPfccyMiYuPGjbFu3bqur23ZsiWuuuqq2LBhQ4wePToOPPDAuO++++LEE09s1GYDADkSPgCAwSjUCU8bpaOjI1paWpzwFAByMJwTnooeAJCWRp3wtFB/6hYAoDfCBwAwVOIHAFB4wgcAMBziBwBQaMIHADBc4gcAUFjCBwBQC+IHAFBIwgcAUCviBwBQOMIHAFBL4gcAUCjCBwBQa+IHAFAYwgcAUA/iBwAAAJA08QMAKASrPgCAehE/AIDcCR8AQD2JHwAAAEDSxA8AIFdWfQAA9SZ+AAAAAEkTPwCA3Fj1AQA0gvgBAAAAJE38AAAAAJImfgAAuXDICwDQKOIHAAAAkDTxAwAAAEia+AEANJxDXgCARhI/AAAAgKSJHwAAAEDSxA8AAAAgaeIHANBQzvcBADSa+AEAAAAkTfwAAAAAkiZ+AAAAAEkTPwAAAICkiR8AAABA0sQPAAAAIGniBwAAAJA08QMAAABImvgBAAAAJE38AAAAAJImfgAAAABJEz8AAACApIkfAAAAQNLEDwCgoeZlbXlvAgBQMeIHAAAAkDTxAwAAAEia+AEAAAAkTfwAABrOeT8AgEYSPwAAAICkiR8AAABA0sQPACAXDn0BABpF/AAAAACSJn4AAAAASRM/AIDcOPQFAGgE8QMAAABImvgBAOTK6g8AoN7EDwAAACBp4gcAkDurPwCAehI/AIBCEEAAgHoRPwAAAICkiR8AQMP0t7rD6g8AoB7EDwCgUAQQAKDWxA8AoHAEEACglsQPAKCQBBAAoFbEDwCgsAQQAKAWxA8AoNAEEABguMQPAKAhhhMxBBAAYDjEDwCgFAQQAGCoxA8AoDQEEABgKMQPAKDuahkt5mVtIggAMCjiBwBQSgIIADBQ4gcAUFoCCAAwEOIHAFBX9Q4UDoMBAPojfgAASRBBAIDeiB8AQFIEEABge+IHAFA3eYUIq0AAgG2JHwBAskQQACBC/AAA6qRI0UEEAYBqEz8AgMoQQACgmsQPAKDmihwZrAIBgOoRPwCAmipLWBBBAKA6xA8AoNJEEABIn/gBANRMmSNCmbcdAOib+AEA1EQK8cAqEABIk/gBALAdEQQA0iJ+AADDlmooSPV+AUDViB8AwLCkHgisAgGA8hM/AIAhq1IUEEEAoLzEDwCAQRBBAKB8xA8AYEiqHgCqfv8BoEzEDwCAIbIKBADKQfwAAAbNG/7uRBAAKDbxAwAYFG/ye+dnAwDFJH4AANSQAAIAxSN+AAAD5o39wDgMBgCKRfwAAKgTAQQAikH8AAAGxBv5obEKBADyJ34AADSAAAIA+RE/AIB+eeNeG1aBAEA+xA8AoE/erNeeCAIAjTUi7w0AAKiqbQPI/Ka2Xq8HAAyP+AEA9MrqhMYRQgCgfsQPAICCEUIAoLbEDwCgR1Z9FENvj4MoAgAD15RlWZb3RjRaR0dHtLS0RHt7xJgxeW8NAIPhDV9jCB/VMNT9yfMDgFrp6IhoaYlob2+PMXV8g27lBwBARdQqHm7/fcQQAIrOyg8rPwBKx+qP+vJGNi2N3l88fwAYDCs/AAAYkjwD4bb/txACQFFY+WHlB0ApWf1RH96slltR9wvPKwB6Y+UHAAADUtTosdXW7RNBAMjLTnlvAAAMhTdRtednWk5FDx/bKtO2ApAWh7047AWg1LyZqg3ho3zK/tz3nAMgonGHvVj5AQBQMmUPHxFp3AcAykP8AKDU/PZ4+PwMyyWlaJDSfQGg2MQPAICSSDEWpHifACge8QOA0rNyYej87Moj5UiQ8n0DoBjEDwCAgqtCHKjCfQQgP+IHAEmwgmHw/MzKoUpRoEr3FYDGEj8ASIY38wPnZ1UOVYwBVbzPANRfIeLHX//1X8fUqVNjl112ienTp8c///M/93n9hx9+OKZPnx677LJLfPazn43bb7+9QVsKANAYVY4AVb7vANRH7vHj7rvvjssuuyy++93vxurVq+PII4+ME044IdatW9fj9deuXRsnnnhiHHnkkbF69eq49tpr49JLL42lS5c2eMsBKCIrGvrnZ1R83vwDQG3lHj9uueWWOO+88+L888+Pz33uc7Fw4cKYNGlS/OAHP+jx+rfffnvsu+++sXDhwvjc5z4X559/fnzzm9+Mm266qcFbDgBAvQhAANRSrvFjy5Yt8fTTT8fs2bO7XT579ux47LHHerzN448/vsP1jzvuuHjqqafiww8/7PE2nZ2d0dHR0e0DgHRZ2dA7P5vi86b/t/wsAKiVXOPHm2++GR9//HGMHz++2+Xjx4+PTZs29XibTZs29Xj9jz76KN58880eb7NgwYJoaWnp+pg0aVJt7gAAheVN/o78TIrPm/0d+ZkAUAu5H/YSEdHU1NTt8yzLdrisv+v3dPlWc+fOjfb29q6P9evXD3OLASgDb/Z/y8+i+LzJ752fDQDDlWv8GDt2bOy88847rPLYvHnzDqs7tpowYUKP1x8xYkTsvffePd6mubk5xowZ0+0DgGrwph8AgFzjx6hRo2L69OmxYsWKbpevWLEiZs6c2eNtZsyYscP1ly9fHocddliMHDmybtsKAGUlABWflQ398zMCYDhyP+zliiuuiL/927+NH/3oR/Hiiy/G5ZdfHuvWrYsLL7wwIj49ZOXss8/uuv6FF14Yr732WlxxxRXx4osvxo9+9KNYtGhRXHXVVXndBQAKrspv/qt83wEAtso9fpxxxhmxcOHC+P73vx+HHHJIPPLII3H//ffH5MmTIyJi48aNsW7duq7rT506Ne6///5YuXJlHHLIIfHnf/7n8Zd/+Zfxta99La+7AEAJVDECVPE+l5EVDQPnZwXAUDVlW88WWiEdHR3R0tIS7e0RTv8BUC1VefMkfJRDVZ6Pteb5DZCOjo6IlpaI9vb2up6fM/eVHwDQSFV401SF+wgAMBjiBwCVk3IcSPm+pcaqj6HzswNgsMQPACopxUiQ4n0CAKgF8QOAykopFqR0X6rAyoXh8zMEYDDEDwAqLYVokMJ9AACoJ3/txV97AeDfle03yaJHOZXteVZ09gOAcvPXXgCgwcr0JqpM28pvCR+152cKwECMyHsDAKBItkaFor6hEj0AAAbPYS8OewGgD0WJIKJH+RXluZQq+whAOTXqsBcrPwCgD9u+oWr0m1dv5gAAasPKDys/ABiCeoUQwSNNVn00hv0HoHys/ACAAtv+TdZQ39x6swYAUH+VXvlxTVwTu8QueW8OAAyLgFJsVn0AQO8+iA/i+rjeyg8AoG+9vbkWRfInfABAMYgfAJCobd94CyEAQJWJHwBQAUJI41n1AQDFIX4AQMUIIQBA1eyU9wYAAPmZ39RmhUId+JkCQLGIHwCACFJDfo4AUDziBwDQxRt3ACBF4gcA0I1VIEPn5wYAxSR+AAA98kYeAEiF+AEA9MoqkIHzcwKA4hI/AIB+eWMPAJSZ+AEADIgA0js/GwAoNvEDABgwh8HsyM8DAIpP/AAABk0EAQDKRPwAAIas6gGk6vcfAMpC/AAAhsUqEACg6MQPAKAmqhZBqnRfAaDsxA8AoKaqEEFSv38AkBrxAwCoi1QDQar3CwBSJn4AAHVThVUgAEDxiR8AQN2lEkFSuA8AUEXiBwDQMGWOB2XedgCoOvEDAGioVFaBAADlIX4AALkoUwQpy3YCAD0TPwCAXBU9ghR52wCAgRE/AIBCEBkAgHoRPwCAwijaKpAibQsAMHTiBwBQOEWLIABAuYkfAEBh5RlBxBcASIf4AQAUnhABAAyH+AEAlIJDYQCAoRI/AIBSaUQEEVkAIC3iBwBQSgIFADBQ4gcAUFoCCAAwEOIHAFBqtT4MRlABgPSIHwBAEkQLAKA34gcAkAwBBADoifgBACRlOAFEPAGANIkfAEByRAwAYFviBwCQJAEEANhK/AAAkiWAAAAR4gcAkDgBBAAQPwCA5AkgAFBt4gcAUAn9BRCBBADSJX4AAAAASRM/AIDKsLoDAKpJ/AAAKkUAAYDqET8AAACApIkfAEDlWP0BANUifgAAAABJEz8AgEqy+gMAqkP8AAAAAJImfgAAAABJEz8AgMpy6AsAVIP4AQAAACRN/AAAAACSJn4AAJXm0BcASJ/4AQAAACRN/AAAAACSJn4AAAAASRM/AIDKc94PAEib+AEAAAAkTfwAAAAAkiZ+AAAAAEkTPwAAAICkiR8AAABA0sQPAAAAIGniBwAAAJA08QMAAABImvgBAAAAJE38AAAAAJImfgAAAABJEz8AAACApIkfAAAAQNLEDwCg8uZlbXlvAgBQR+IHAAAAkDTxAwAAAEia+AEAAAAkTfwAACrN+T4AIH3iBwAAAJA08QMAAABImvgBAFSWQ14AoBrEDwAAACBp4gcAAACQNPEDAKgkh7wAQHWIHwAAAEDSxA8AoHKs+gCAahE/AAAAgKSJHwBApVj1AQDVI34AAJUhfABANYkfAAAAQNLEDwCgEqz6AIDqEj8AgOQJHwBQbeIHAJA04QMAED8AgGQJHwBAhPgBACRK+AAAthI/AIDkCB8AwLbEDwAgKcIHALA98QMASIbwAQD0ZETeGwAAMFyiBwDQFys/AIBSEz4AgP7kFj9effXVOO+882Lq1KkxevTo2G+//WLevHmxZcuWPm937rnnRlNTU7ePI444okFbDQAUifABAAxEboe9vPTSS/HJJ5/E3/zN38Tv/u7vxnPPPRcXXHBBvP/++3HTTTf1edvjjz8+Fi9e3PX5qFGj6r25AEDBCB8AwEDlFj+OP/74OP7447s+/+xnPxtr1qyJH/zgB/3Gj+bm5pgwYUK9NxEAKCDRAwAYrEKd8LS9vT322muvfq+3cuXKGDduXOyxxx4xa9asuO6662LcuHG9Xr+zszM6Ozu7Pu/o6KjJ9gIAjSN6AABDVZgTnv7bv/1b/NVf/VVceOGFfV7vhBNOiJ/+9Kfxi1/8Im6++eZYtWpVHHPMMd3ixvYWLFgQLS0tXR+TJk2q9eYDAHUkfAAAw9GUZVlWy2/Y1tYW8+fP7/M6q1atisMOO6zr8zfeeCNmzZoVs2bNir/9278d1P+3cePGmDx5cixZsiROPfXUHq/T08qPSZMmxTVxTewSuwzq/wMAGqeR0WN+U+P+LwDgUx/EB3F9XB/t7e0xZsyYuv0/NT/sZc6cOXHmmWf2eZ0pU6Z0/fuNN96Io48+OmbMmBF33HHHoP+/1tbWmDx5crz88su9Xqe5uTmam5sH/b3JR96/3TP5Bchf3q8FANRe3mO7eX611Tx+jB07NsaOHTug627YsCGOPvromD59eixevDh22mnwR+G89dZbsX79+mhtbR30bWmMvAe5wRrs9hpEAWqnbK8ZAFVWtjHbPL/acjvh6RtvvBFHHXVU7LvvvnHTTTfF//2//7fra9v+JZf9998/FixYEF/96lfjvffei7a2tvja174Wra2t8eqrr8a1114bY8eOja9+9at53A2ifINerfV3/w2aAANT9dcTgKKp+rhsnp+W3OLH8uXL41e/+lX86le/in322afb17Y9DcmaNWuivb09IiJ23nnnePbZZ+POO++Md955J1pbW+Poo4+Ou+++O3bfffeGbn8VVX3wG6refm4GS4BPeX0ByJdxeGjM88ul5ic8LYOOjo5oaWlxwtNeGPzyZbAEqqJorzfGXyB1RRt3q8brTM9Ke8JTysUAWDw9PSYGSiAlXnsA6s9YWzzm+fkSPyrGIFhO2z9uBkkAALZlnl9O5vmNI34kziCYJoMkAEC1meenyTy/fsSPxBgEq8kgCQCQNvP8ajLPrx3xo+QMgvTEIAkAUG7m+fTEPH/oxI8SMhAyWNs+ZwyQAADFZJ7PYJnnD5z4UQIGQWpJLQYAKAbzfGrJPL9v4kdBGQhpFLUYAKBxzPNpFPP87sSPAjEQkjcDJABA7ZnnkzfzfPEjdwZCisoACQAwdOb5FFVV5/niR04MhpTJ1udrlQZHAIChMM+nTKo0zxc/GshASNlVtRIDAPTFPL9/RZk7eqx6VoV5vvhRZ3YuUlWFARIAoDfm+eWcAw5mm6v6GKc6zxc/6qSqOwrVVKXlcgBAtVVtnl/l+V1f970qz4OU5vniRw1VZQeA3qRaiQGAaqvCPN/cbXB6+3ml+lxJYZ4vftRAqk9wGI6UKjEAUE0pzvPNzeqrClGkrPN88WMYUnoCQ72UdXAEAKorpXm+OVgxbP84pPAcK9s8X/wYpBSepJCHFJbKAQDpSmGeb45VHj09VmV9DpZlni9+DFBZn4hQRGWrxABAuso8zzeXSksKq0OKPM8XP/pRxicclEWRB0cAIG1lnOebM1VLmWNIEef54kcvyvTEgrIr4uAIAKSpbPN88yO22va5UJbncZHm+eLHdsryJIIUFWlwBADSUqZ5vrkQ/SlbCCnCPF/8+HdleMJAVRRhcAQA0lCWeb55D0NVphCS5zy/8vGj6E8OqDIRBAAYqqLP881vqIeynCckj3l+U5ZlWcP+t4Lo6OiIlpaWaG+PGDMm760BBsokAdJQ1ImYMQbSUNQxZitjDXko8n7R0RHR0hLR3t4eY+r4Br3yKz+A8rASBADoTZHf3Jm7kLcyHRpTL+IHUDoiCACwVVHfyJmnUFRVDSE75b0BAENVpcEaANhREecC85vahA9Ko0rPVys/gFKzCgQAqqdo0cM8hLKrwmoQ8QNIgggCAOkr2psy8w5StPV5XbT9bbjEDyApIggApKdIb8LMMaiK1FaDOOcHkKQUBmgAoDiv6VU6NwJsL4Xnv5UfQLKsAgGA8ipS9AA+VeZDYqz8AJJXxsEZAKqsCK/dKfymG+qljPuHlR9AJVgFAgDFV5ToAQxMmVaCiB9ApYggAFA8RXjjZG4AQ1eGCOKwF6CSijwwA0CV5P2aXMbl+1BURd6frPwAKssqEADITxGiB1AfRVwJYuUHUHlFGpQBoAryfO0t8m+mITVF2t+s/AAIq0AAoBHyjh5APoqwEsTKD4BtWAUCAPWR12tskX7zDFWX5/4ofgBsRwABgNrK47VV9IDiymP/dNgLQA8cBgMAw5dX9ADKYX5TW3wQH0TE9XX/v6z8AOiDVSAAMDTCB1AkVn4A9MMqEAAYONEDKCIrPwAGyCoQAOhbo18rndcDGCjxA2AQBBAA6Fke4QNgoBz2AjBIDoMBgN8SPYAysPIDYIisAgGg6oQPoCzED4BhEEAAqKpGvgY6twcwXOIHwDAJIABUTaNe+0QPoFac8wOgBpwHBIAqaPRqD4BasfIDoIasAgEgVVZ7AGUmfgDUmAACQGoaGT4A6kH8AKgDAQSAVAgfQAqc8wOgTpwHBIAyEz2AlFj5AVBnVoEAUDbCB5Aa8QOgAQQQAMqiEa9ZTmoKNJr4AdAgAggARdeo8AHQaOIHQAMJIAAUlfABpEz8AGgwAQSAoqn3a5PDXIC8iR8AORBAACiKRoQPgLyJHwA5EUAAyJvwAVTFiLw3AKDKtk46TQ4BaCTn9wCqxsoPgAKwCgSARnF+D6CKxA+AghBAAKg3h7kAVSV+ABSIAAJAvQgfQJWJHwAFI4AAUGvCB1B14gdAAQkgANSK8AEgfgAUlgACwHAJHwCfEj8ACkwAAWCo6vka4i+6AGUjfgAUnAACwGDVO3wAlI34AVACAggAAyV8AOxI/AAoCQEEgP4IHwA9Ez8ASkQAAaA3wgdA78QPgJIRQADYnvAB0DfxAwAA6JHwAaRC/AAoIas/ANiqXq8JwgeQEvEDoKQEEACED4CBET8ASkwAAagu4QNg4MQPgJITQACqR/gAGBzxAyABAghAdQgfAIMnfgAkQgABSJ/wATA04gdAQgQQgHQJHwBDJ34AJEYAAUiP8AEwPOIHAABUkPABVIn4AZAgqz8A0lGPMV34AKpG/ABIlAACUH7CB0BtiB8ACRNAAMpL+ACoHfEDIHECCED5CB8AtSV+AABA4oQPoOrED4AKsPoDoDxqPWYLHwDiB0BlCCAAxWesBqgP8QOgQkyqAYrLeT4A6kf8AKgYAQSgeIQPgPoSPwAAIDHCB0B34gdABVn9AVAcTnAKUH/iB0BFCSAA+RM+ABpD/ACoMAEEID/CB0DjiB8AAABA0sQPgIqz+gOg8az6AGgs8QMAAQSggYQPgMYTPwAAoKSED4CBET8AiAirPwAaoZZjrfABMHDiBwBdBBCA+jHGAuRH/ACgG5NzgNpzng+AfIkfAABQIsIHwOCJHwDswOoPgNpxng+A/IkfAPRIAAEYPmMpQDGIHwAAUAJWfQAMnfgBQK/8xhJg6BzuAlAc4gcAfRJAAAbP2AlQLOIHAAAUmFUfAMMnfgDQL7/BBBg4h7sAFE+u8WPKlCnR1NTU7eOaa67p8zZZlkVbW1tMnDgxRo8eHUcddVQ8//zzDdpiAABoDOEDoHZyX/nx/e9/PzZu3Nj18b3vfa/P6994441xyy23xG233RarVq2KCRMmxJe//OV49913G7TFANVk9QdA/4yVAMWUe/zYfffdY8KECV0fv/M7v9PrdbMsi4ULF8Z3v/vdOPXUU+Oggw6Kn/zkJ/HrX/86fvaznzVwqwGqyaQeoHcOdwEortzjxw033BB77713HHLIIXHdddfFli1ber3u2rVrY9OmTTF79uyuy5qbm2PWrFnx2GOP9Xq7zs7O6Ojo6PYBAABFJHwA1F6u8eM73/lOLFmyJB566KGYM2dOLFy4MC666KJer79p06aIiBg/fny3y8ePH9/1tZ4sWLAgWlpauj4mTZpUmzsAUEFWfwDsyNgIUGw1jx9tbW07nMR0+4+nnnoqIiIuv/zymDVrVvz+7/9+nH/++XH77bfHokWL4q233urz/2hqaur2eZZlO1y2rblz50Z7e3vXx/r164d/RwEqzCQf4Lcc7gJQfCNq/Q3nzJkTZ555Zp/XmTJlSo+XH3HEERER8atf/Sr23nvvHb4+YcKEiPh0BUhra2vX5Zs3b95hNci2mpubo7m5ub9NBwAAABJU8/gxduzYGDt27JBuu3r16oiIbmFjW1OnTo0JEybEihUr4tBDD42IiC1btsTDDz8cN9xww9A2GIAhmZe1+Q0lUHlWfQCUQ27n/Hj88cfj1ltvjWeeeSbWrl0bf//3fx/f+ta34pRTTol9992363r7779/LFu2LCI+Pdzlsssui7/4i7+IZcuWxXPPPRfnnntu7LrrrvGNb3wjr7sCAADDInwA1FfNV34MVHNzc9x9990xf/786OzsjMmTJ8cFF1wQV199dbfrrVmzJtrb27s+v/rqq+M3v/lNXHTRRfH222/H4YcfHsuXL4/dd9+90XcBoPKs/gCqzPmPAMojt/jxB3/wB/HEE0/0e70sy7p93tTUFG1tbdHW1lanLQMAgMYRkQHqL9c/dQtA+fnNJ1BFtRr7hA+AxhA/ABg2AQSoEmMeQPmIHwAAkAOrPgAaR/wAoCb8JhSoAmMdQDmJHwAA0GBWfQA0lvgBQM34jSiQMic5BSgv8QMAAABImvgBQE1Z/QGkyKoPgHITPwAAAICkiR8A1JzVH0BKrPoAKD/xAwAAAEia+AFAXVj9AaTAqg+ANIgfAAAAQNLEDwDqxuoPoMys+gBIh/gBAAAAJE38AKCurP4AysiqD4C0iB8AAABA0sQPAOrO6g+gTKz6AEiP+AEAAAAkTfwAoCGs/gDKwKoPgDSJHwAAAEDSxA8AAKghqz4Aikf8AKBhHPoCFJkxCiBd4gcAANSIVR8AxSR+ANBQfrMKFJGxCSBt4gcAANSAVR8AxSV+ANBwfsMKFIkxCSB94gcAAAyTVR8AxSZ+AAAAAEkTPwDIhWXmQBHUYiyy6gOg+MQPAAAAIGniBwC5sfoDyJMxCKA6xA8AABgih7wAlIP4AQAAACRN/AAgV5adA3lwolOAahE/AAAAgKSJHwAAAEDSxA8AcufQF6CRHPICUD3iBwAAAJA08QOAQrD6A2gEqz4Aqkn8AAAAAJImfgAAAABJEz8AKAyHvgD15JAXgOoSPwAAAICkiR8AAABA0sQPAArFoS9APTjkBaDaxA8AAAAgaeIHAAD0w6oPgHITPwAoHIe+ALVkTAFA/AAAAACSJn4AAAAASRM/AACgD873AVB+4gcAheQYfaAWjCUARIgfAAAAQOLEDwAA6IVDXgDSIH4AUFiWqwPDYQwBYCvxAwAAAEia+AEAAD1wyAtAOsQPAAAAIGniBwCF5ph9YCiMHQBsS/wAAIDtOOQFIC3iBwAAAJA08QMAAABImvgBQOE5dh8YDGMGANsTPwAAYBvO9wGQHvEDAAAASJr4AQAAACRN/ACgFBzDDwyEsQKAnogfAADw75zvAyBN4gcAAACQNPEDAAAASJr4AUBpOJYf6IsxAoDeiB8AAABA0sQPAAAIJzsFSJn4AQAAACRN/AAAAACSJn4AUCpOaAj0xNgAQF/EDwAAKs/5PgDSJn4AAAAASRM/AAAAgKSJHwAAAEDSxA8AAAAgaeIHAKXjrzoA2zImANAf8QMAgErzl14A0id+AAAAAEkTPwAAAICkiR8AAABA0sQPAAAAIGniBwCl5K87ABHGAgAGRvwAAKCy/KUXgGoQPwAAAICkiR8AAABA0sQPAAAAIGniBwAAAJA08QMAAABImvgBAAAAJE38AKC05mVteW8CkKPhjgH+zC1AdYgfAAAAQNLEDwAAACBp4gcAAACQNPEDAAAASJr4AQAAACRN/AAAAACSJn4AAAAASRM/AAAAgKSJHwAAAEDSxA8AAAAgaeIHAACVM7+pLe9NAKCBxA8ASm1e1pb3JgA5sO8DMBjiBwAAAJA08QMAAABImvgBAAAAJE38AAAAAJImfgAAAABJyy1+rFy5Mpqamnr8WLVqVa+3O/fcc3e4/hFHHNHALQcAAADKZERe//HMmTNj48aN3S77sz/7s3jwwQfjsMMO6/O2xx9/fCxevLjr81GjRtVlGwEAAIDyyy1+jBo1KiZMmND1+Ycffhj33ntvzJkzJ5qamvq8bXNzc7fbAgAAAPSmMOf8uPfee+PNN9+Mc889t9/rrly5MsaNGxe/93u/FxdccEFs3ry5z+t3dnZGR0dHtw8AAACgGgoTPxYtWhTHHXdcTJo0qc/rnXDCCfHTn/40fvGLX8TNN98cq1atimOOOSY6Ozt7vc2CBQuipaWl66O//wMAAABIR83jR1tbW68nMt368dRTT3W7zeuvvx4PPPBAnHfeef1+/zPOOCNOOumkOOigg+Lkk0+Of/iHf4h//dd/jfvuu6/X28ydOzfa29u7PtavXz/s+wkAAACUQ83P+TFnzpw488wz+7zOlClTun2+ePHi2HvvveOUU04Z9P/X2toakydPjpdffrnX6zQ3N0dzc/OgvzcAAABQfjWPH2PHjo2xY8cO+PpZlsXixYvj7LPPjpEjRw76/3vrrbdi/fr10draOujbAgAAAOnL/Zwfv/jFL2Lt2rW9HvKy//77x7JlyyIi4r333ourrroqHn/88Xj11Vdj5cqVcfLJJ8fYsWPjq1/9aiM3GwAAACiJ3P7U7VaLFi2KmTNnxuc+97kev75mzZpob2+PiIidd945nn322bjzzjvjnXfeidbW1jj66KPj7rvvjt13372Rmw0AAACURO7x42c/+1mfX8+yrOvfo0ePjgceeKDemwQAAAAkJPfDXgAAAADqSfwAAAAAkiZ+AAAAAEkTPwAAAICkiR8AAABA0sQPAAAAIGniBwAAAJA08QMAAABImvgBAAAAJE38AAAAAJImfgAAAABJEz8AAACApIkfAAAAQNLEDwAAACBp4gcAAACQNPEDgFKb39SW9yYAObDvAzAY4gcAAJUzL2vLexMAaCDxAwAAAEia+AEAAAAkTfwAAAAAkiZ+AAAAAEkTPwAAAICkiR8AAABA0sQPAAAAIGniBwAAAJA08QMAAABImvgBAAAAJE38AKC05je15b0JQI6GOwbMy4Z3ewDKQ/wAAAAAkiZ+AAAAAEkTPwAAAICkiR8AAABA0sQPAAAAIGniBwAAAJA08QMAgMry524BqkH8AKCU5je15b0JQAEYCwAYCPEDAAAASJr4AQAAACRN/AAAAACSJn4AAAAASRM/AACoNH/xBSB94gcApeOvOwDbMiYA0B/xAwAAAEia+AEAAAAkTfwAAAAAkiZ+AAAAAEkTPwAAqDx/8QUgbeIHAKXirzoAPTE2ANAX8QMAAABImvgBAAAAJE38AACAcN4PgJSJHwAAAEDSxA8ASsMJDYG+GCMA6I34AQAAACRN/AAAAACSJn4AAMC/c9JTgDSJHwCUgmP5gYEwVgDQE/EDAAAASJr4AQAAACRN/AAAgG047wdAesQPAArPMfzAYBgzANie+AEAAAAkTfwAAAAAkiZ+AADAdpz3AyAt4gcAhebYfWAojB0AbEv8AAAAAJImfgAAQA8c+gKQDvEDAAAASJr4AUBhOWYfGA5jCABbiR8AANALh74ApEH8AAAAAJImfgBQSJarA7VgLAEgQvwAAIA+OfQFoPzEDwAAACBp4gcAAACQNPEDgMJxjD5QS8YUAMQPAADoh/N+AJSb+AEAAAAkTfwAoFAsTwfqoRZji9UfAOUlfgAAAABJEz8AAACApIkfABSGQ16AenLoC0B1iR8AAABA0sQPAAAAIGniBwCF4JAXoBEc+gJQTeIHAAAAkDTxA4DcWfUBNJLVHwDVI34AAAAASRM/AAAAgKSJHwDkyiEvQB4c+gJQLeIHAAAAkDTxAwAAhsjqD4ByED8AyI1DXoA8GYMAqkP8AAAAAJImfgCQC79xBYrAiU8BqkH8AAAAAJImfgAAwDBZ/QFQbOIHAA3nkBegSIxJAOkTPwAAoAas/gAoLvEDgIbyG1agiIxNAGkTPwAAoEas/gAoJvEDgIbxm1WgyIxRAOkSPwAAoIas/gAoHvEDAAAASJr4AUBDWE4OlEGtxiqrPwCKRfwAAAAAkiZ+AFB3Vn0AZWL1B0B6xA8AAAAgaeIHAHVl1QdQRlZ/AKRF/AAAAACSJn4AUDdWfQBlZvUHQDrEDwAAACBp4gcAdWHVB5ACqz8A0iB+AAAAAEmra/y47rrrYubMmbHrrrvGHnvs0eN11q1bFyeffHLstttuMXbs2Lj00ktjy5YtfX7fzs7OuOSSS2Ls2LGx2267xSmnnBKvv/56He4BAENh1QeQEqs/AMqvrvFjy5Ytcdppp8W3v/3tHr/+8ccfx0knnRTvv/9+PProo7FkyZJYunRpXHnllX1+38suuyyWLVsWS5YsiUcffTTee++9+MpXvhIff/xxPe4GAAAAUGJ1jR/z58+Pyy+/PA4++OAev758+fJ44YUX4q677opDDz00vvSlL8XNN98cP/zhD6Ojo6PH27S3t8eiRYvi5ptvji996Utx6KGHxl133RXPPvtsPPjgg/W8OwAMgFUfQIqs/gAotxF5/uePP/54HHTQQTFx4sSuy4477rjo7OyMp59+Oo4++ugdbvP000/Hhx9+GLNnz+66bOLEiXHQQQfFY489Fscdd9wOt+ns7IzOzs6uz9vb2yMiope+AsAwfBAf5L0JFFxRX389d+lPrZ67nmsAv9UZn75Xz7Ksrv9PrvFj06ZNMX78+G6X7bnnnjFq1KjYtGlTr7cZNWpU7Lnnnt0uHz9+fK+3WbBgQcyfP3+HyydNGuKGA9CH6/PeAAru+pa8t6A3nrv0rXbPXc81gO299dZb0dJSv0nCoONHW1tbjyFhW6tWrYrDDjtsQN+vqalph8uyLOvx8r70dZu5c+fGFVdc0fX5O++8E5MnT45169bV9YdLcXR0dMSkSZNi/fr1MWbMmLw3hwbwmFePx7x6PObV4zGvHo959XjMq6e9vT323Xff2Guvver6/ww6fsyZMyfOPPPMPq8zZcqUAX2vCRMmxJNPPtntsrfffjs+/PDDHVaEbHubLVu2xNtvv91t9cfmzZtj5syZPd6mubk5mpubd7i8paXFDlUxY8aM8ZhXjMe8ejzm1eMxrx6PefV4zKvHY149O+1U11OSDj5+jB07NsaOHVuT/3zGjBlx3XXXxcaNG6O1tTUiPj0JanNzc0yfPr3H20yfPj1GjhwZK1asiNNPPz0iIjZu3BjPPfdc3HjjjTXZLgAAACAddU0r69ati2eeeSbWrVsXH3/8cTzzzDPxzDPPxHvvvRcREbNnz44DDjggzjrrrFi9enX80z/9U1x11VVxwQUXdFW+DRs2xP777x//+3//74j4dLXGeeedF1deeWX80z/9U6xevTr+y3/5L3HwwQfHl770pXreHQAAAKCE6nrC0//v//v/4ic/+UnX54ceemhERDz00ENx1FFHxc477xz33XdfXHTRRfGf//N/jtGjR8c3vvGNuOmmm7pu8+GHH8aaNWvi17/+dddlt956a4wYMSJOP/30+M1vfhPHHnts/PjHP46dd955QNvV3Nwc8+bN6/FQGNLkMa8ej3n1eMyrx2NePR7z6vGYV4/HvHoa9Zg3ZfX+ezIAAAAAOarvGUUAAAAAciZ+AAAAAEkTPwAAAICkiR8AAABA0pKNH9ddd13MnDkzdt1119hjjz16vM66devi5JNPjt122y3Gjh0bl156aWzZsqXP79vZ2RmXXHJJjB07Nnbbbbc45ZRT4vXXX6/DPWA4Vq5cGU1NTT1+rFq1qtfbnXvuuTtc/4gjjmjgljMcU6ZM2eHxu+aaa/q8TZZl0dbWFhMnTozRo0fHUUcdFc8//3yDtpjhePXVV+O8886LqVOnxujRo2O//faLefPm9TuO28/L5a//+q9j6tSpscsuu8T06dPjn//5n/u8/sMPPxzTp0+PXXbZJT772c/G7bff3qAtZbgWLFgQf/iHfxi77757jBs3Lv74j/841qxZ0+dtenu9f+mllxq01QxHW1vbDo/dhAkT+ryNfbzcepqrNTU1xcUXX9zj9e3j5fPII4/EySefHBMnToympqb4+c9/3u3rQ517L126NA444IBobm6OAw44IJYtWzbobUs2fmzZsiVOO+20+Pa3v93j1z/++OM46aST4v33349HH300lixZEkuXLo0rr7yyz+972WWXxbJly2LJkiXx6KOPxnvvvRdf+cpX4uOPP67H3WCIZs6cGRs3buz2cf7558eUKVPisMMO6/O2xx9/fLfb3X///Q3aamrh+9//frfH73vf+16f17/xxhvjlltuidtuuy1WrVoVEyZMiC9/+cvx7rvvNmiLGaqXXnopPvnkk/ibv/mbeP755+PWW2+N22+/Pa699tp+b2s/L4e77747Lrvssvjud78bq1evjiOPPDJOOOGEWLduXY/XX7t2bZx44olx5JFHxurVq+Paa6+NSy+9NJYuXdrgLWcoHn744bj44ovjiSeeiBUrVsRHH30Us2fPjvfff7/f265Zs6bbPv0f/+N/bMAWUwsHHnhgt8fu2Wef7fW69vHyW7VqVbfHe8WKFRERcdppp/V5O/t4ebz//vvx+c9/Pm677bYevz6Uuffjjz8eZ5xxRpx11lnxL//yL3HWWWfF6aefHk8++eTgNi5L3OLFi7OWlpYdLr///vuznXbaKduwYUPXZX/3d3+XNTc3Z+3t7T1+r3feeScbOXJktmTJkq7LNmzYkO20007ZP/7jP9Z826mdLVu2ZOPGjcu+//3v93m9c845J/ujP/qjxmwUNTd58uTs1ltvHfD1P/nkk2zChAnZ9ddf33XZBx98kLW0tGS33357HbaQervxxhuzqVOn9nkd+3l5/Kf/9J+yCy+8sNtl+++/f3bNNdf0eP2rr74623///btd9q1vfSs74ogj6raN1M/mzZuziMgefvjhXq/z0EMPZRGRvf32243bMGpm3rx52ec///kBX98+np7vfOc72X777Zd98sknPX7dPl5uEZEtW7as6/Ohzr1PP/307Pjjj+922XHHHZedeeaZg9qeZFd+9Ofxxx+Pgw46KCZOnNh12XHHHRednZ3x9NNP93ibp59+Oj788MOYPXt212UTJ06Mgw46KB577LG6bzNDd++998abb74Z5557br/XXblyZYwbNy5+7/d+Ly644ILYvHlz/TeQmrnhhhti7733jkMOOSSuu+66Pg+BWLt2bWzatKnbPt3c3ByzZs2yT5dUe3t77LXXXv1ez35efFu2bImnn3662/4ZETF79uxe98/HH398h+sfd9xx8dRTT8WHH35Yt22lPtrb2yMiBrRPH3roodHa2hrHHntsPPTQQ/XeNGro5ZdfjokTJ8bUqVPjzDPPjFdeeaXX69rH07Jly5a466674pvf/GY0NTX1eV37eBqGOvfubd8f7Hy9svFj06ZNMX78+G6X7bnnnjFq1KjYtGlTr7cZNWpU7Lnnnt0uHz9+fK+3oRgWLVoUxx13XEyaNKnP651wwgnx05/+NH7xi1/EzTffHKtWrYpjjjkmOjs7G7SlDMd3vvOdWLJkSTz00EMxZ86cWLhwYVx00UW9Xn/rfrv9WGCfLqd/+7d/i7/6q7+KCy+8sM/r2c/L4c0334yPP/54UPtnT6/t48ePj48++ijefPPNum0rtZdlWVxxxRXxhS98IQ466KBer9fa2hp33HFHLF26NO65556YNm1aHHvssfHII480cGsZqsMPPzzuvPPOeOCBB+KHP/xhbNq0KWbOnBlvvfVWj9e3j6fl5z//ebzzzjt9/nLSPp6Woc69e9v3BztfHzGoa+esra0t5s+f3+d1Vq1a1e85HbbqqTBmWdZveazFbRiaoTwHXn/99XjggQfi7//+7/v9/meccUbXvw866KA47LDDYvLkyXHffffFqaeeOvQNZ8gG85hffvnlXZf9/u//fuy5557xJ3/yJ12rQXqz/f5rn87XUPbzN954I44//vg47bTT4vzzz+/ztvbzchns/tnT9Xu6nGKbM2dO/J//83/i0Ucf7fN606ZNi2nTpnV9PmPGjFi/fn3cdNNN8cUvfrHem8kwnXDCCV3/Pvjgg2PGjBmx3377xU9+8pO44ooreryNfTwdixYtihNOOKHbSvzt2cfTNJS5dy3m66WKH3PmzIkzzzyzz+tMmTJlQN9rwoQJO5wg5e23344PP/xwh6q07W22bNkSb7/9drfVH5s3b46ZM2cO6P9leIbyHFi8eHHsvffeccoppwz6/2ttbY3JkyfHyy+/POjbUhvD2e+3/gWPX/3qVz3Gj61nlN+0aVO0trZ2Xb558+ZexwHqb7CP+RtvvBFHH310zJgxI+64445B/3/282IaO3Zs7Lzzzjv8Vqev/XPChAk9Xn/EiBF9BlCK5ZJLLol77703Hnnkkdhnn30Gffsjjjgi7rrrrjpsGfW22267xcEHH9zreGwfT8drr70WDz74YNxzzz2Dvq19vLyGOvfubd8f7Hy9VPFj7NixMXbs2Jp8rxkzZsR1110XGzdu7PrBL1++PJqbm2P69Ok93mb69OkxcuTIWLFiRZx++ukREbFx48Z47rnn4sYbb6zJdtG3wT4HsiyLxYsXx9lnnx0jR44c9P/31ltvxfr167vtnDTWcPb71atXR0T0+vhNnTo1JkyYECtWrIhDDz00Ij49/vThhx+OG264YWgbzLAN5jHfsGFDHH300TF9+vRYvHhx7LTT4I/mtJ8X06hRo2L69OmxYsWK+OpXv9p1+YoVK+KP/uiPerzNjBkz4n/+z//Z7bLly5fHYYcdNqTXABory7K45JJLYtmyZbFy5cqYOnXqkL7P6tWr7c8l1dnZGS+++GIceeSRPX7dPp6OxYsXx7hx4+Kkk04a9G3t4+U11Ln3jBkzYsWKFd1WeS9fvnzwCxAGdXrUEnnttdey1atXZ/Pnz89+53d+J1u9enW2evXq7N13382yLMs++uij7KCDDsqOPfbY7Je//GX24IMPZvvss082Z86cru/x+uuvZ9OmTcuefPLJrssuvPDCbJ999skefPDB7Je//GV2zDHHZJ///Oezjz76qOH3kf49+OCDWURkL7zwQo9fnzZtWnbPPfdkWZZl7777bnbllVdmjz32WLZ27drsoYceymbMmJH9h//wH7KOjo5GbjZD8Nhjj2W33HJLtnr16uyVV17J7r777mzixInZKaec0u162z7mWZZl119/fdbS0pLdc8892bPPPpt9/etfz1pbWz3mJbBhw4bsd3/3d7Njjjkme/3117ONGzd2fWzLfl5eS5YsyUaOHJktWrQoe+GFF7LLLrss22233bJXX301y7Isu+aaa7Kzzjqr6/qvvPJKtuuuu2aXX3559sILL2SLFi3KRo4cmf33//7f87oLDMK3v/3trKWlJVu5cmW3/fnXv/5113W2f8xvvfXWbNmyZdm//uu/Zs8991x2zTXXZBGRLV26NI+7wCBdeeWV2cqVK7NXXnkle+KJJ7KvfOUr2e67724fT9zHH3+c7bvvvtmf/umf7vA1+3j5vfvuu13vvSOia37+2muvZVk2sLn3WWed1e0vu/2v//W/sp133jm7/vrrsxdffDG7/vrrsxEjRmRPPPHEoLYt2fhxzjnnZBGxw8dDDz3UdZ3XXnstO+mkk7LRo0dne+21VzZnzpzsgw8+6Pr62rVrd7jNb37zm2zOnDnZXnvtlY0ePTr7yle+kq1bt66B94zB+PrXv57NnDmz169HRLZ48eIsy7Ls17/+dTZ79uzsM5/5TDZy5Mhs3333zc455xyPb0k8/fTT2eGHH561tLRku+yySzZt2rRs3rx52fvvv9/tets+5ln26Z/cmjdvXjZhwoSsubk5++IXv5g9++yzDd56hmLx4sU9jvPbd337ebn91//6X7PJkydno0aNyv7gD/6g2589Peecc7JZs2Z1u/7KlSuzQw89NBs1alQ2ZcqU7Ac/+EGDt5ih6m1/3nbM3v4xv+GGG7L99tsv22WXXbI999wz+8IXvpDdd999jd94huSMM87IWltbs5EjR2YTJ07MTj311Oz555/v+rp9PE0PPPBAFhHZmjVrdviafbz8tv554u0/zjnnnCzLBjb3njVrVtf1t/pv/+2/ZdOmTctGjhyZ7b///kMKYE1Z9u9nCQIAAABIUGX/1C0AAABQDeIHAAAAkDTxAwAAAEia+AEAAAAkTfwAAAAAkiZ+AAAAAEkTPwAAAICkiR8AAABA0sQPAAAAIGniBwAAAJA08QMAAABImvgBAAAAJO3/B5JEGLUaQzz8AAAAAElFTkSuQmCC\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ - "#testuniverse.plot(width=(700,700),\n", - "# basis='xy',\n", - "# colors=colormap,\n", - "# origin=(0.,0.,200),\n", - "# color_by='material',\n", - "# pixels=(1000,1000))" + "testuniverse.plot(width=(40,40),\n", + " basis='xy',\n", + " colors=colormap,\n", + " origin=(215, 0., 23),\n", + " color_by='material',\n", + " pixels=(1000,1000))" ] }, { diff --git a/examples/msbr/openmc_model.py b/examples/msbr/openmc_model.py index 69d6523f7..12533c306 100644 --- a/examples/msbr/openmc_model.py +++ b/examples/msbr/openmc_model.py @@ -330,9 +330,9 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): if optimized: # Octagon subsurfaces oct1_maxy, oct1_miny, oct1_maxx, oct1_minx, oct1_ur, oct1_br, oct1_bl, oct1_ul = list((-s1).get_surfaces().values()) - oct2_maxy, oct2_miny, oct2_maxx, oct2_minx, oct2_ur, oct2_br, oct2_bl, oct2_ul = list((-s3).get_surfaces().values()) - oct3_maxy, oct3_miny, oct3_maxx, oct3_minx, oct3_ur, oct3_br, oct3_bl, oct3_ul = list((-s2).get_surfaces().values()) - # cb_minx, cb_maxx, cb_miny, cb_maxy = list(cr_boundary.get_surfaces().values()) + oct2_maxy, oct2_miny, oct2_maxx, oct2_minx, oct2_ur, oct2_br, oct2_bl, oct2_ul = list((-s2).get_surfaces().values()) + oct3_maxy, oct3_miny, oct3_maxx, oct3_minx, oct3_ur, oct3_br, oct3_bl, oct3_ul = list((-s3).get_surfaces().values()) + cb_minx, cb_maxx, cb_miny, cb_maxy = list(cr_boundary.get_surfaces().values()) c1_ur = (-oct3_ur & +oct2_ur & -oct2_maxx & -oct2_maxy) c1_ul = (+oct3_ul & -oct2_ul & +oct2_minx & -oct2_maxy) @@ -343,23 +343,23 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): [c1_bl, 'smaller_octader_bl'], [c1_br, 'smaller_octader_br']] - #c2_r = (+cb_maxx & +cb_miny & -cb_maxy & -oct3_maxx) - #c2_ur = (+cb_maxx & +cb_maxy & -oct3_maxx & -oct3_maxy & +oct3_ur) - #c2_u = (+cb_maxy & +cb_minx & -cb_maxx & -oct3_maxy) - #c2_ul = (-cb_minx & +cb_maxy & +oct3_minx & -oct3_maxy & -oct3_ul) - #c2_l = (-cb_minx & +cb_miny & -cb_maxy & +oct3_minx) - #c2_bl = (-cb_minx & -cb_miny & +oct3_minx & +oct3_miny & -oct3_bl) - #c2_b = (-cb_miny & +cb_minx & -cb_maxx & +oct3_miny) - #c2_br = (+cb_maxx & -cb_miny & -oct3_maxx & +oct3_miny & +oct3_br) - #c2 = [[c2_r, 'smallest_octader_r'], - # [c2_ur, 'smallest_octader_ur'], - # [c2_u, 'smallest_octader_u'], - # [c2_ul, 'smallest_octader_ul'], - # [c2_l, 'smallest_octader_l'], - # [c2_bl, 'smallest_octader_bl'], - # [c2_b, 'smallest_octader_b'], - # [c2_br, 'smallest_octader_br']] - c2 = [[-s3, 'smallest_octader']] + c2_r = (+cb_maxx & +cb_miny & -cb_maxy & -oct3_maxx) + c2_ur = (+cb_maxx & +cb_maxy & -oct3_maxx & -oct3_maxy & +oct3_ur) + c2_u = (+cb_maxy & +cb_minx & -cb_maxx & -oct3_maxy) + c2_ul = (-cb_minx & +cb_maxy & +oct3_minx & -oct3_maxy & -oct3_ul) + c2_l = (-cb_minx & +cb_miny & -cb_maxy & +oct3_minx) + c2_bl = (-cb_minx & -cb_miny & +oct3_minx & +oct3_miny & -oct3_bl) + c2_b = (-cb_miny & +cb_minx & -cb_maxx & +oct3_miny) + c2_br = (+cb_maxx & -cb_miny & -oct3_maxx & +oct3_miny & +oct3_br) + c2 = [[c2_r, 'smallest_octader_r'], + [c2_ur, 'smallest_octader_ur'], + [c2_u, 'smallest_octader_u'], + [c2_ul, 'smallest_octader_ul'], + [c2_l, 'smallest_octader_l'], + [c2_bl, 'smallest_octader_bl'], + [c2_b, 'smallest_octader_b'], + [c2_br, 'smallest_octader_br']] + #c2 = [[-s3, 'smallest_octader']] c3_ur = (-oct2_ur & +oct1_ur & -oct1_maxx & -oct1_maxy) c3_ul = (+oct2_ul & -oct1_ul & +oct1_minx & -oct1_maxy) @@ -433,7 +433,7 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): settings.particles = 10000 settings.batches = 150 settings.inactive = 25 -settings.temperature = {'default': 900, 'method': 'interpolation'} +settings.temperature = {'default': 900, 'method': 'interpolation', 'range': (800, 1000)} settings.export_to_xml() # Plots @@ -447,6 +447,42 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): ## Slice plots plots = openmc.Plots() +plot = openmc.Plot(name='serpent-plot1') +plot.origin=(0., 0., 150.5) +plot.pixels=full_pixels +plot.width=(686.816, 686.816) +plot.color_by='material' +plot.colors=colormap +plot.basis='xy' +plots.append(plot) + +plot = openmc.Plot(name='serpent-plot1') +plot.origin=(0.0, -77.5, 306.07) +plot.pixels=(1550, 3400) +plot.width=(155, 612.14) +plot.color_by='material' +plot.colors=colormap +plot.basis='yz' +plots.append(plot) + +plot = openmc.Plot(name='serpent-plot2') +plot.origin=(0, 0, 155) +plot.pixels=(1000, 1000) +plot.width=(40, 40) +plot.color_by='material' +plot.colors=colormap +plot.basis='yz' +plots.append(plot) + +plot = openmc.Plot(name='serpent-plot3') +plot.origin=(16.5, 0, 306.07) +plot.pixels=(2000, 2000) +plot.width=(686.816, 612.14) +plot.color_by='material' +plot.colors=colormap +plot.basis='yz' +plots.append(plot) + plot = openmc.Plot(name='detail-zoneIA-IIA-lower1') plot.origin=(215, 0, 10.0) plot.width=(40, 40) @@ -530,7 +566,7 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): plot = openmc.Plot(name='full-zoneIA-IIA-lower1') plot.origin=(0.0, 0, 10.0) -plot.width=(600, 600) +plot.width=(522.232, 522.232) plot.pixels=full_pixels plot.color_by='material' plot.colors=colormap @@ -539,7 +575,7 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): plot = openmc.Plot(name='full-zoneIA-main') plot.origin=(0, 0, 23.0) -plot.width=(600, 600) +plot.width=(522.232, 522.232) plot.pixels=full_pixels plot.color_by='material' plot.colors=colormap @@ -548,7 +584,7 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): plot = openmc.Plot(name='full-zoneIIA-upper1') plot.origin=(0, 0, 435) -plot.width=(600, 600) +plot.width=(522.232, 522.232) plot.pixels=full_pixels plot.color_by='material' plot.colors=colormap @@ -557,7 +593,7 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): plot = openmc.Plot(name='full-zoneIA-upper1') plot.origin=(0, 0, 420) -plot.width=(600, 600) +plot.width=(522.232, 522.232) plot.pixels=full_pixels plot.color_by='material' plot.colors=colormap @@ -566,7 +602,7 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): plot = openmc.Plot(name='full-zoneIIA-upper2') plot.origin=(0, 0, 437) -plot.width=(600, 600) +plot.width=(522.232, 522.232) plot.pixels=full_pixels plot.color_by='material' plot.colors=colormap @@ -575,7 +611,7 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): plot = openmc.Plot(name='full-zoneIA-upper2') plot.origin=(0, 0, 439) -plot.width=(600, 600) +plot.width=(522.232, 522.232) plot.pixels=full_pixels plot.color_by='material' plot.colors=colormap @@ -584,7 +620,7 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): plot = openmc.Plot(name='full-zoneIIA-upper3') plot.origin=(0, 0, 440) -plot.width=(600, 600) +plot.width=(522.232, 522.232) plot.pixels=full_pixels plot.color_by='material' plot.colors=colormap @@ -593,7 +629,7 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): plot = openmc.Plot(name='full-zoneIA-upper3') plot.origin=(0, 0, 448) -plot.width=(600, 600) +plot.width=(522.232, 522.232) plot.pixels=full_pixels plot.color_by='material' plot.colors=colormap @@ -602,7 +638,7 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): plot = openmc.Plot(name='full-zoneIIA-upper4') plot.origin=(0, 0, 442) -plot.width=(600, 600) +plot.width=(522.232, 522.232) plot.pixels=full_pixels plot.color_by='material' plot.colors=colormap @@ -619,8 +655,8 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): plots.append(plot) plot = openmc.Plot(name='full-core-xz') -plot.origin=(0, 0, 200) -plot.width=(700, 700) +plot.origin=(0, 0, 306.07) +plot.width = (686.816, 612.14) plot.pixels=full_pixels plot.color_by='material' plot.colors=colormap From c76c993018b323771340eabbd2cb7a03b9c50d36 Mon Sep 17 00:00:00 2001 From: yardasol Date: Mon, 24 Oct 2022 15:45:26 -0500 Subject: [PATCH 19/62] remove unneeded outside cells and add missing cell descriptors in Serpent geometry --- examples/msbr/geometry/msbr_full.ini | 32 +++++++++------------------- 1 file changed, 10 insertions(+), 22 deletions(-) diff --git a/examples/msbr/geometry/msbr_full.ini b/examples/msbr/geometry/msbr_full.ini index 20a304f22..53498fd33 100644 --- a/examples/msbr/geometry/msbr_full.ini +++ b/examples/msbr/geometry/msbr_full.ini @@ -22,32 +22,27 @@ cell 8 11 moder -8 % replay part of left-upper graphite cell 9 11 moder -9 % replay part of right-bottom graphite element cell 10 11 moder -10 % replay part of right-upper graphite element cell 11 11 moder -11 % replay part of left-bottom graphite element -cell 12 11 outside 3 % Outside world % ============ Bottom part: Zone I-A (Universe 12) ======================== surf 12 cyl 0.0 0.0 4.953 % Graphite round outer wall cell 601 12 fuel -1 % Fuel hole cell 602 12 moder 1 -12 % Graphite block cell 603 12 fuel 12 -3 % Fuel salt outside graphite block -cell 612 12 outside 3 % Outside world % ============ Upper part 1: Zone I-A (Universe 13) ======================== surf 13 cyl 0.0 0.0 4.953 % Graphite round outer wall above main 13-feet part cell 604 13 fuel -1 % Fuel hole cell 605 13 moder 1 -13 % Graphite block cell 606 13 fuel 13 -3 % Fuel salt outside graphite block -cell 613 13 outside 3 % Outside world % ============ Upper part 2: Zone I-A (Universe 14) ======================== surf 14 cone 0.0 0.0 0.0 4.953 12.66 % Graphite cone outer wall part cell 607 14 fuel -1 % Fuel hole cell 608 14 moder 1 -14 % Graphite block cell 609 14 fuel 14 -3 % Fuel salt outside graphite block -cell 614 14 outside 3 % Outside world % ============ Upper part 3: Zone I-A (Universe 15) ======================== surf 15 cyl 0.0 0.0 2.2225 % Graphite outer wall part surf 16 cyl 0.0 0.0 0.762 % Fuel hole 0.6 in cell 616 15 hast -1 % Hastelloy N cell 617 15 moder 1 -15 % Graphite block cell 618 15 fuel 15 -3 % Fuel salt outside graphite block -cell 615 15 outside 3 % Outside world % ======== Vertical stack Zone I-A cell (marked as 1 in main lattice) =========================================== lat 1 9 0.0 0.0 5 0.0 12 @@ -80,7 +75,6 @@ cell 28 21 moder -28 % replay part of left-uppe cell 29 21 moder -29 % replay part of right-bottom graphite element cell 30 21 moder -30 % replay part of right-upper graphite element cell 31 21 moder -31 % replay part of left-bottom graphite element -cell 32 21 outside 23 % Outside world % =====Cells: Universe 22: Upper part 1 (from H=434.34cm to 436.88cm): Zone II-A ============ surf 32 cyl 0.0 0.0 0.635 % Hole with fuel salt (Fig.3.5 Robertson p. 47) d=0.5in cell 721 22 fuel -32 % Fuel hole @@ -94,23 +88,19 @@ cell 728 22 moder -28 % replay part of left-upp cell 729 22 moder -29 % replay part of right-bottom graphite element cell 730 22 moder -30 % replay part of right-upper graphite element cell 731 22 moder -31 % replay part of left-bottom graphite element -cell 732 22 outside 23 % Outside world %===========Cells: Universe 23: Upper part 2 (from H=436.88cm to 439.42cm): Zone II-A =========================== surf 33 cyl 0.0 0.0 3.65125 % Outer cylindrical surface (Fig.3.5 Robertson p. 47) d=2 7/8 in cell 733 23 fuel -32 % Fuel hole cell 734 23 moder 32 -33 % Graphite block cell 735 23 fuel 33 -23 % Fuel salt outside graphite block -cell 736 23 outside 23 % Outside world %===========Cells: Universe 24: Upper part 3 (from H=439.42cm to 441.96cm): Zone II-A =========================== surf 34 cone 0.0 0.0 0.0 3.65125 6.5 % Outer cone surface (Fig.3.5 Robertson p. 47) cell 737 24 moder -34 % Graphite block cell 738 24 fuel 34 -23 % Fuel salt outside graphite block -cell 739 24 outside 23 % Outside world %===========Cells: Universe 25: Upper part 4 (from H=441.96cm to 449.58cm): Zone II-A =========================== surf 35 cyl 0.0 0.0 2.2225 % Outer cylindrical surface (Fig.3.5 Robertson p. 47) cell 740 25 moder -35 % Graphite block cell 741 25 fuel 35 -23 % Fuel salt outside graphite block -cell 742 25 outside 23 % Outside world % ======== Vertical stack Zone II-A cell (marked as 2 in main lattice) =========================================== lat 2 9 0.0 0.0 5 @@ -148,7 +138,6 @@ cell 48 3 moder -48 % replay part of lef cell 49 3 moder -49 % replay part of right-bottom graphite element cell 50 3 moder -50 % replay part of right-upper graphite element cell 51 3 moder -51 % replay part of left-bottom graphite element -cell 52 3 outside 43 % Outside world % --- Cells: Universe 4: Control rods channels (no control rods in) cell 841 4 fuel -41 % Fuel hole @@ -162,7 +151,6 @@ cell 848 4 moder -48 % replay part of le cell 849 4 moder -49 % replay part of right-bottom graphite element cell 850 4 moder -50 % replay part of right-upper graphite element cell 851 4 moder -51 % replay part of left-bottom graphite element -cell 852 4 outside 43 % Outside world % ------ Vacuum cell cell 57 5 void -3 @@ -707,15 +695,15 @@ surf 3103 octa 0.0 0.0 218.44 215.53 % smaller octader, which cover 8 tria surf 3104 octa 0.0 0.0 228.60 193.97 % smallest octader, which cover 8 triangle elements % --- Cells: %cell 300 0 fill 300 -3000 3003 3011 -3012 -cell 303 0 fill 400 -3003 3011 -3012 -cell 305 0 fuel -3004 3002 3011 -3012 -cell 306 0 moder -3005 3004 3015 -3013 -cell 313 0 moder -3004 3012 -3013 -cell 314 0 moder -3004 3015 -3017 -cell 315 0 fuel -3004 3017 -3011 -cell 307 0 hast -3006 3005 3015 -3013 -cell 308 0 hast -3006 3013 -3014 -cell 309 0 hast -3006 -3015 3016 +cell 303 0 fill 400 -3003 3011 -3012 % Control rod lattice cell +cell 305 0 fuel -3004 3002 3011 -3012 % Annulus +cell 306 0 moder -3005 3004 3015 -3013 % Radial Reflector +cell 313 0 moder -3004 3012 -3013 % Top axial reflector +cell 314 0 moder -3004 3015 -3017 % Bottom axial reflector +cell 315 0 fuel -3004 3017 -3011 % Lower plenum +cell 307 0 hast -3006 3005 3015 -3013 % Radial vessel +cell 308 0 hast -3006 3013 -3014 % Top vessel +cell 309 0 hast -3006 -3015 3016 % Bottom vessel cell 310 0 outside 3006 3016 -3014 cell 311 0 outside -3016 cell 312 0 outside 3014 @@ -725,4 +713,4 @@ cell 331 0 fill 300 -3104 3003 3011 -3012 % inside smallest cell 300 0 fill 300 -3100 3103 3104 3003 3011 -3012 % inside base octader, deducted smaller and smallest -cell 350 0 fill 10 -3002 3103 3104 3100 3011 -3012 % radial reflector lattice +cell 350 0 fill 10 -3002 3103 3104 3100 3011 -3012 % radial reflector lattice (Zone IIB) From ca321205e727f38a135fb2c8f622dbac551169cb Mon Sep 17 00:00:00 2001 From: yardasol Date: Mon, 24 Oct 2022 15:46:49 -0500 Subject: [PATCH 20/62] change plotting colors of Serpent model geometry --- .../mats/msbr_saltproc_prepr_comp_endfb71.ini | 2 +- examples/msbr/msbr_endfb71.serpent | 27 ++++++++++--------- 2 files changed, 15 insertions(+), 14 deletions(-) diff --git a/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71.ini b/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71.ini index 4ae097b36..19854af10 100644 --- a/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71.ini +++ b/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71.ini @@ -1,6 +1,6 @@ % Material compositions (after 0.000000 days) -mat fuel -3.350000000E+00 burn 1 fix 82c 900 vol 4.87100E+07 +mat fuel -3.350000000E+00 rgb 255 255 0 burn 1 fix 82c 900 vol 4.87100E+07 1001.82c -0.00000000000000E+00 1002.82c -0.00000000000000E+00 1003.82c -0.00000000000000E+00 diff --git a/examples/msbr/msbr_endfb71.serpent b/examples/msbr/msbr_endfb71.serpent index 3b3442b6d..8e9c12e23 100644 --- a/examples/msbr/msbr_endfb71.serpent +++ b/examples/msbr/msbr_endfb71.serpent @@ -12,10 +12,10 @@ include "mats/msbr_saltproc_prepr_comp_endfb71.ini" include "geometry/msbr_full.ini" % --- Moderator graphite: -mat moder -1.84 tmp 900 rgb 68 1 84 moder gr 6000 6000.82c -1.0 %tmp 908 +mat moder -1.84 tmp 900 rgb 128 0 128 moder gr 6000 6000.82c -1.0 %tmp 908 % --- Hastelloy N mat hast -8.671 -rgb 127 205 187 +rgb 0 0 255 % Natural Ni %28000.82c -0.677 28058.82c -0.45492846488214814 @@ -58,8 +58,8 @@ set sfylib "endfb71.sfy" % --- Neutron population and criticality cycles: -set pop 300 400 10 1.0 1 %500 400 60 1.0 1 %30000 400 100 1.0 1 -%set gcu -1 +set pop 10000 125 25 1.0 1 %500 400 60 1.0 1 %30000 400 100 1.0 1 +set gcu -1 %set usym 0 3 2 0.0 0.0 0 90 % --- Reproducibility off (set value to 1 and define seed to set on): @@ -80,24 +80,25 @@ set fpcut 1E-6 set stabcut 1E-12 % --- Geometry and mesh plots: -%plot 33 3000 3000 150.5 +%plot 30 10000 10000 150.5 %trans 10 0 0 0 0 0 45 -%plot 13 1550 3400 0.0 -155 0 -%plot 13 1000 1000 0 -20 20 135 175 -%plot 13 2000 2000 16.5 +%plot 10 1550 3400 0.0 -155 0 +%plot 10 1000 1000 0 -20 20 135 175 +%plot 10 2000 2000 16.5 % --- Depletion parameters % --- Options for burnup calculation: -set bumode 2 % CRAM method -set pcc 2 % Predictor-corrector calculation off (Linear extrapolation) +%%set bumode 2 -48 % IPF CRAM-48 method +%%set pcc 0 % Predictor +%set pcc 1 % CELI %set xscalc 2 % Cross sections from spectrum %set bunorm 2 %set opti 3 -%set power 2.25E+9 dep daytot 60000.0 +%%set power 2.25E+9 dep daystep 3 3 3 3 3 3 3 3 3 3 3 3 %set rfw 1 restart -set inventory fuel all +%%set inventory fuel all -%set printm 1 0.0 +%set printm 1 0.0%set printm 1 0.0 From 29731c012ee0ddc4b564d0fdc9c5b9671036b154 Mon Sep 17 00:00:00 2001 From: yardasol Date: Mon, 24 Oct 2022 16:02:28 -0500 Subject: [PATCH 21/62] remove unneeded files --- examples/msbr/_control_rods_optimized.py | 106 ----- examples/msbr/_core_elements_optimized.py | 266 ------------ examples/msbr/_root_geometry_optimized.py | 158 -------- examples/msbr/openmc_model_optimized.py | 471 ---------------------- 4 files changed, 1001 deletions(-) delete mode 100644 examples/msbr/_control_rods_optimized.py delete mode 100644 examples/msbr/_core_elements_optimized.py delete mode 100644 examples/msbr/_root_geometry_optimized.py delete mode 100644 examples/msbr/openmc_model_optimized.py diff --git a/examples/msbr/_control_rods_optimized.py b/examples/msbr/_control_rods_optimized.py deleted file mode 100644 index 8bb9ade7e..000000000 --- a/examples/msbr/_control_rods_optimized.py +++ /dev/null @@ -1,106 +0,0 @@ -import openmc -import numpy as np - -def shared_cr_geometry(): - fuel_hole = openmc.ZCylinder(r=5.08, name='cr_fuel_hole') - elem_bound = openmc.rectangular_prism(7.62*2, 7.62*2) # Pin outer boundary - eb_minx, eb_maxx, eb_miny, eb_maxy = list(elem_bound.get_surfaces().values()) - - gr_sq_neg = openmc.rectangular_prism(7.23646*2, 7.23646*2, corner_radius=0.99) # Graphite square - # params for - (gr_minx, gr_maxx, gr_miny, gr_maxy, - gr_cyl_lb, gr_cyl_minx, gr_cyl_miny, - gr_cyl_ul, gr_cyl_maxy, gr_cyl_br, - gr_cyl_maxx, gr_cyl_ru) = list(gr_sq_neg.get_surfaces().values()) - - r_d = 1.16 - e_d = 2 * r_d / np.sqrt(3) - r_dt = 0.8 - r_c = 0.18 - l1 = 5.8801 - l2 = 6.505 - l3 = 8.03646 - ul = openmc.model.hexagonal_prism(origin=(-l1, l2), edge_length=e_d, orientation='x', corner_radius=r_c) - br = openmc.model.hexagonal_prism(origin=(l1, -l2), edge_length=e_d, orientation='x',corner_radius=r_c) - lb = openmc.model.hexagonal_prism(origin=(-l2, -l1), edge_length=e_d, orientation='y',corner_radius=r_c) - ru = openmc.model.hexagonal_prism(origin=(l2, l1), edge_length=e_d, orientation='y',corner_radius=r_c) - ul_t = openmc.ZCylinder(-l1, -l3, r_dt, name='corner_ul_tip') - br_t = openmc.ZCylinder(l1, l3, r_dt, name='corner_br_tip') - ru_t = openmc.ZCylinder(-l3, l1, r_dt, name='corner_ru_tip') - lb_t = openmc.ZCylinder(l3, -l1, r_dt, name='corner_lb_tip') - - gr_ul = ul & -eb_maxy & +gr_maxy - gr_ul_fill = ul & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy - gr_br = br & +eb_miny & -gr_miny - gr_br_fill = br & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny - gr_lb = lb & +eb_minx & -gr_minx - gr_lb_fill = lb & +gr_cyl_lb & +gr_minx & -gr_cyl_minx & -gr_cyl_miny - gr_ru = ru & -eb_maxx & +gr_maxx - gr_ru_fill = ru & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxx & +gr_cyl_maxy - - gr_ul_t = -ul_t & +eb_miny & -gr_miny - gr_br_t = -br_t & -eb_maxy & +gr_maxy - gr_ru_t = -ru_t & +eb_minx & -gr_minx - gr_lb_t = -lb_t & -eb_maxx & +gr_maxx - - gr_corners = (gr_ul, gr_br, gr_lb, gr_ru, gr_ul_fill, gr_br_fill, gr_lb_fill, gr_ru_fill) - gr_t = (gr_ul_t, gr_br_t, gr_ru_t, gr_lb_t) - - inter_elem_channel = (~gr_sq_neg & elem_bound & - ~ul & ~br & ~lb & ~ru & - +ul_t & +br_t & +ru_t & +lb_t) - - - return fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel - -def control_rod(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, fuel, moder): - s1 = openmc.ZCylinder(r=4.7625, name='control_rod') - - c1 = openmc.Cell(fill=moder, region=-s1, name='control_rod') - c2 = openmc.Cell(fill=fuel, region=(+s1 & -fuel_hole), name='cr_fuel_inner') - c3 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg), name='cr_moderator') - c4 = openmc.Cell(fill=fuel, region=inter_elem_channel, name='cr_fuel_outer') - - c3_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='cr_moderator_ul') - c3_br = openmc.Cell(fill=moder, region=gr_corners[1], name='cr_moderator_br') - c3_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='cr_moderator_ru') - c3_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='cr_moderator_lb') - c3_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='cr_moderator_ul_fill') - c3_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='cr_moderator_br_fill') - c3_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='cr_moderator_ru_fill') - c3_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='cr_moderator_lb_fill') - c3_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='cr_moderator_ul_t') - c3_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='cr_moderator_br_t') - c3_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='cr_moderator_ru_t') - c3_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='cr_moderator_lb_t') - - - #universe_id=3 - cr = openmc.Universe(name='control_rod') - cr.add_cells([c1, c2, c3, c4, c3_ul, c3_br, c3_ru, c3_lb, c3_ulf, c3_brf, c3_ruf, c3_lbf, c3_ul_t, c3_br_t, c3_ru_t, c3_lb_t]) - - return cr - -def control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, fuel, moder): - c1 = openmc.Cell(fill=fuel, region=(-fuel_hole), name='crc_fuel_inner') - c2 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg), name='crc_moderator') - c3 = openmc.Cell(fill=fuel, region=inter_elem_channel, name='crc_fuel_outer') - - c2_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='crc_moderator_ul') - c2_br = openmc.Cell(fill=moder, region=gr_corners[1], name='crc_moderator_br') - c2_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='crc_moderator_ru') - c2_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='crc_moderator_lb') - c2_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='crc_moderator_ul_fill') - c2_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='crc_moderator_br_fill') - c2_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='crc_moderator_ru_fill') - c2_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='crc_moderator_lb_fill') - c2_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='crc_moderator_ul_t') - c2_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='crc_moderator_br_t') - c2_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='crc_moderator_ru_t') - c2_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='crc_moderator_lb_t') - - # universe_id=4 - crc = openmc.Universe(name='control_rod_channel') - crc.add_cells([c1, c2, c3, c2_ul, c2_br, c2_ru, c2_lb, c2_ulf, c2_brf, c2_ruf, c2_lbf, c2_ul_t, c2_br_t, c2_ru_t, c2_lb_t]) - - return crc diff --git a/examples/msbr/_core_elements_optimized.py b/examples/msbr/_core_elements_optimized.py deleted file mode 100644 index 0db560c97..000000000 --- a/examples/msbr/_core_elements_optimized.py +++ /dev/null @@ -1,266 +0,0 @@ -import openmc -import numpy as np - -def _bound_zone_cells(cells_tuples, levels): - """Helper function that moves Zone IA and Zone IIA cells to the - appropriate height.""" - cell_list = [] - n_levels = len(cells_tuples) - for i, cells in enumerate(cells_tuples): - if i == 0: - lower_bound = None - upper_bound = levels[i] - elif i == n_levels - 1: - lower_bound = levels[i-1] - upper_bound = None - else: - lower_bound = levels[i-1] - upper_bound = levels[i] - - for j, cell in enumerate(cells): - if lower_bound is None: - cell.region = cell.region & -upper_bound - elif upper_bound is None: - cell.region = cell.region & +lower_bound - else: - cell.region = cell.region & +lower_bound & -upper_bound - cell_list.append(cell) - return cell_list - -def shared_elem_geometry(): - """Surfaces and regions shared by Zone IA and Zone IIA elements. - Specs found in Robertson, 1971 Fig 3.4 (p. 17) and Fig 3.5 (p.18)""" - - elem_bound = openmc.rectangular_prism(5.08*2, 5.08*2) # Pin outer boundary - eb_minx, eb_maxx, eb_miny, eb_maxy = list(elem_bound.get_surfaces().values()) - - gr_sq_neg = openmc.rectangular_prism(4.953*2, 4.953*2, corner_radius=0.46) # Graphite square - (gr_minx, gr_maxx, gr_miny, gr_maxy, - gr_cyl_lb, gr_cyl_minx, gr_cyl_miny, - gr_cyl_ul, gr_cyl_maxy, gr_cyl_br, - gr_cyl_maxx, gr_cyl_ru) = list(gr_sq_neg.get_surfaces().values()) - - # params for main pin section for both I-A and II-A - r_d = 0.66802 - l1 = 4.28498 - l2 = 4.53898 - l3 = 5.62102 - ul = openmc.ZCylinder(-l1, l2, r_d, name='corner_ul') - br = openmc.ZCylinder(l1, -l2, r_d, name='corner_br') - lb = openmc.ZCylinder(-l2, -l1, r_d, name='corner_lb') - ru = openmc.ZCylinder(l2, l1, r_d, name='corner_ru') - ul_t = openmc.ZCylinder(-l1, -l3, r_d, name='corner_ul_tip') - br_t = openmc.ZCylinder(l1, l3, r_d, name='corner_br_tip') - ru_t = openmc.ZCylinder(-l3, l1, r_d, name='corner_ru_tip') - lb_t = openmc.ZCylinder(l3, -l1, r_d, name='corner_lb_tip') - - gr_ul = -ul & -eb_maxy & +gr_maxy# | - gr_ul_fill = -ul & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy - gr_br = -br & +eb_miny & -gr_miny# | - gr_br_fill = -br & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny - gr_lb = -lb & +eb_minx & -gr_minx# | - gr_lb_fill = -lb & +gr_cyl_lb & +gr_minx & -gr_cyl_minx & -gr_cyl_miny - gr_ru = -ru & -eb_maxx & +gr_maxx# | - gr_ru_fill = -ru & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxx & +gr_cyl_maxy - - gr_ul_t = -ul_t & +eb_miny & -gr_miny - gr_br_t = -br_t & -eb_maxy & +gr_maxy - gr_ru_t = -ru_t & +eb_minx & -gr_minx - gr_lb_t = -lb_t & -eb_maxx & +gr_maxx - - gr_corners = (gr_ul, gr_br, gr_lb, gr_ru, gr_ul_fill, gr_br_fill, gr_lb_fill, gr_ru_fill) - gr_t = (gr_ul_t, gr_br_t, gr_ru_t, gr_lb_t) - - inter_elem_channel = (~gr_sq_neg & elem_bound & - +ul & +br & +lb & +ru & - +ul_t & +br_t & +ru_t & +lb_t) - - gr_round_4 = openmc.ZCylinder(r=2.2225, name='gr_round_4') - - return elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4 - -def zoneIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4, moder, fuel, hast): - """Zone IA element. Specs found in Robertson, 1971 Fig 3.4 (p. 17)""" - elem_levels = [22.86, 419.10, 438.15, 445.135] - level_bounds = [] - for level in elem_levels: - level_bounds.append(openmc.ZPlane(z0=level)) - s1 = openmc.ZCylinder(r=4.953, name='ia_gr_round_1') - s2 = openmc.ZCylinder(r=1.71069, name='ia_fuel_hole') - - h = 12.66 - theta = np.arctan(4.953 / h) - r2 = (1 / np.cos(theta))**2 - 1 - s3 = openmc.ZCone(z0=h + elem_levels[2], r2=r2, name='cone_i') - - c1 = openmc.Cell(fill=fuel, region=(-s2), name='ia_fuel_inner_1') - c2 = openmc.Cell(fill=moder, region=(+s2 & -s1), name='ia_moderator_1') - c3 = openmc.Cell(fill=fuel, region=(+s1 & elem_bound), name='ia_fuel_outer_1') - ia1 = (c1, c2, c3) - - # I-A main (lower 2) - s2 = s2.clone() - gr_sq_neg = gr_sq_neg.clone() - c4 = c1.clone(clone_materials=False) - c4.name = 'ia_fuel_inner_main' - c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg), name='ia_moderator_main') - c6 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='ia_fuel_outer_main') - c5_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='ia_moderator_main_ul') - c5_br = openmc.Cell(fill=moder, region=gr_corners[1], name='ia_moderator_main_br') - c5_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='ia_moderator_main_ru') - c5_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='ia_moderator_main_lb') - c5_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='ia_moderator_main_ul_fill') - c5_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='ia_moderator_main_br_fill') - c5_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='ia_moderator_main_ru_fill') - c5_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='ia_moderator_main_lb_fill') - c5_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='ia_moderator_main_ul_t') - c5_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='ia_moderator_main_br_t') - c5_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='ia_moderator_main_ru_t') - c5_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='ia_moderator_main_lb_t') - - iam = (c4, c5, c6, - c5_ul, c5_br, c5_ru, c5_lb, - c5_ulf, c5_brf, c5_ruf, c5_lbf, - c5_ul_t, c5_br_t, c5_ru_t, c5_lb_t) - - # I-A 2 (upper 1) - c7 = c1.clone(clone_materials=False) - c7.name = 'ia_fuel_inner_2' - c8 = c2.clone(clone_materials=False) - c8.name = 'ia_moderator_2' - c9 = c3.clone(clone_materials=False) - c9.name = 'ia_fuel_outer_2' - ia2 = (c7, c8, c9) - - # I-A 3 (upper 2)' - s2 = s2.clone() - s3 = s3.clone() - elem_bound = elem_bound.clone() - c10 = c1.clone(clone_materials=False) - c10.name = 'ia_fuel_inner_3' - c11 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='ia_moderator_3') - c12 = openmc.Cell(fill=fuel, region=(+s3 & elem_bound), name='ia_fuel_outer_3') - ia3 = (c10, c11, c12) - - # I-A 4 (upper 3) - s2 = s2.clone() - elem_bound = elem_bound.clone() - c13 = openmc.Cell(fill=hast, region=(-s2), name='ia_hast') - c14 = openmc.Cell(fill=moder, region=(+s2 & -gr_round_4), name='ia_moderator_4') - c15 = openmc.Cell(fill=fuel, region=(+gr_round_4 & elem_bound), name='ia_fuel_outer_4') - ia4 = (c13, c14, c15) - - elem_cells = [ia1, iam, ia2, ia3, ia4] - # universe_id=1 - ia = openmc.Universe(name='zone_ia') - ia.add_cells(_bound_zone_cells(elem_cells, level_bounds)) - return ia - -def zoneIIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4, moder, fuel): - """Zone IIA element. Specs found in Robertson, 1971 Fig 3.5 (p. 18)""" - elem_levels = [434.34, 436.88, 439.42, 441.96] - level_bounds = [] - for level in elem_levels: - level_bounds.append(openmc.ZPlane(z0=level)) - s1 = openmc.ZCylinder(r=3.302, name='iia_fuel_hole_main') # Hole with fuel salt - Fig 3.5, Roberton 1971 (3.27787 - p.47) - s2 = openmc.ZCylinder(r=0.635, name='iia_fuel_hole_2') - s3 = openmc.ZCylinder(r=3.65125, name='iia_gr_round_3') - h = 6.5 - theta = np.arctan(3.65125 / h) - r2 = (1 / np.cos(theta))**2 - 1 - s4 = openmc.ZCone(z0=h + elem_levels[2], r2=r2, name='cone_ii') - - # II-A main (lower 1) - c1 = openmc.Cell(fill=fuel, region=(-s1), name='iia_fuel_inner_main') - c2 = openmc.Cell(fill=moder, region=(+s1 & gr_sq_neg), name='iia_moderator_main') - c3 = openmc.Cell(fill=fuel, region=(inter_elem_channel), name='iia_fuel_outer_main') - c3.name = 'iia_fuel_outer_main' - c2_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='iia_moderator_main_ul') - c2_br = openmc.Cell(fill=moder, region=gr_corners[1], name='iia_moderator_main_br') - c2_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='iia_moderator_main_ru') - c2_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='iia_moderator_main_lb') - c2_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='iia_moderator_main_ul_fill') - c2_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='iia_moderator_main_br_fill') - c2_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='iia_moderator_main_ru_fill') - c2_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='iia_moderator_main_lb_fill') - c2_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='iia_moderator_main_ul_t') - c2_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='iia_moderator_main_br_t') - c2_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='iia_moderator_main_ru_t') - c2_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='iia_moderator_main_lb_t') - iiam = (c1, c2, c3, c2_ul, c2_br, c2_ru, c2_lb, c2_ulf, c2_brf, c2_ruf, c2_lbf, c2_ul_t, c2_br_t, c2_ru_t, c2_lb_t) - - # II-A 2 (upper 1) - gr_sq_neg = gr_sq_neg.clone() - c4 = openmc.Cell(fill=fuel, region=(-s2), name='iia_fuel_inner_2') - c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg), name='iia_moderator_2') - c6 = c3.clone(clone_materials=False) - c6.name = 'iia_fuel_outer_2' - c5_ul = openmc.Cell(fill=moder, region=gr_corners[0], name='iia_moderator_2_ul') - c5_br = openmc.Cell(fill=moder, region=gr_corners[1], name='iia_moderator_2_br') - c5_ru = openmc.Cell(fill=moder, region=gr_corners[2], name='iia_moderator_2_ru') - c5_lb = openmc.Cell(fill=moder, region=gr_corners[3], name='iia_moderator_2_lb') - c5_ulf = openmc.Cell(fill=moder, region=gr_corners[4], name='iia_moderator_2_ul_fill') - c5_brf = openmc.Cell(fill=moder, region=gr_corners[5], name='iia_moderator_2_br_fill') - c5_ruf = openmc.Cell(fill=moder, region=gr_corners[6], name='iia_moderator_2_ru_fill') - c5_lbf = openmc.Cell(fill=moder, region=gr_corners[7], name='iia_moderator_2_lb_fill') - c5_ul_t = openmc.Cell(fill=moder, region=gr_t[0], name='iia_moderator_2_ul_t') - c5_br_t = openmc.Cell(fill=moder, region=gr_t[1], name='iia_moderator_2_br_t') - c5_ru_t = openmc.Cell(fill=moder, region=gr_t[2], name='iia_moderator_2_ru_t') - c5_lb_t = openmc.Cell(fill=moder, region=gr_t[3], name='iia_moderator_2_lb_t') - iia2 = (c4, c5, c6, c5_ul, c5_br, c5_ru, c5_lb, c5_ulf, c5_brf, c5_ruf, c5_lbf, c5_ul_t, c5_br_t, c5_ru_t, c5_lb_t) - - # II-A 3 (upper 2) - s2 = s2.clone() - elem_bound = elem_bound.clone() - c7 = c4.clone(clone_materials=False) - c7.name = 'iia_fuel_inner_3' - c8 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='iia_moderator_3') - c9 = openmc.Cell(fill=fuel, region=(+s3 & elem_bound), name='iia_fuel_outer_3') - iia3 = (c7, c8, c9) - - # II-A 4 (upper 3) - elem_bound = elem_bound.clone() - c10 = openmc.Cell(fill=moder, region=(-s4), name='iia_moderator_4') - c11 = openmc.Cell(fill=fuel, region=(+s4 & elem_bound), name='iia_fuel_outer_4') - iia4 = (c10, c11) - - # II-A 5 (upper 4) - elem_bound = elem_bound.clone() - c12 = openmc.Cell(fill=moder, region=(-gr_round_4), name='iia_moderator_5') - c13 = openmc.Cell(fill=fuel, region=(+gr_round_4 & elem_bound), name='iia_fuel_outer_5') - iia5 = (c12, c13) - - elem_cells = [iiam, iia2, iia3, iia4, iia5] - # universe_id=2 - iia = openmc.Universe(name='zone_iia') - iia.add_cells(_bound_zone_cells(elem_cells, level_bounds)) - return iia - -def void_cell(elem_bound): - elem_bound = elem_bound.clone() - c1 = openmc.Cell(region=elem_bound, name='lattice_void') - #universe_id=5 - v = openmc.Universe(name='lattice_void') - v.add_cell(c1) - return v - -def graphite_triangles(elem_bound, moder, fuel): - s1 = openmc.Plane(1.0, 1.0, 0.0, 0.0) - s2 = openmc.Plane(-1.0, 1.0, 0.0, 0.0) - s3 = openmc.Plane(1.0, -1.0, 0.0, 0.0) - s4 = openmc.Plane(-1.0, -1.0, 0.0, 0.0) - surfs = [(s4, 'bottom_left'), - (s1, 'top_right'), - (s2, 'top_left'), - (s3, 'bottom_right')] - univs = [] - for i, (s, name) in enumerate(surfs): - elem_bound = elem_bound.clone() - c1 = openmc.Cell(fill=moder, region=(-s & elem_bound)) - elem_bound = elem_bound.clone() - c2 = openmc.Cell(fill=fuel, region=(+s & elem_bound)) - # universe_id = 6+i - gr_tri = openmc.Universe(name=f'{name}_triangle') - gr_tri.add_cells([c1, c2]) - univs.append(gr_tri) - return univs diff --git a/examples/msbr/_root_geometry_optimized.py b/examples/msbr/_root_geometry_optimized.py deleted file mode 100644 index e2f81e2d2..000000000 --- a/examples/msbr/_root_geometry_optimized.py +++ /dev/null @@ -1,158 +0,0 @@ -import openmc -import numpy as np - -def shared_root_geometry(): - cr_boundary = openmc.model.rectangular_prism(15.24*2, 15.24*2) - core_base = openmc.ZPlane(z0=0.0, name='core_base') - core_top = openmc.ZPlane(z0=449.58, name='core_top') - - s1 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=208.28, r2=222.71, name='base_octader') - s2 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=218.44, r2=215.53, name='smaller_octader') - s3 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=228.60, r2=193.97, name='smallest_octader') - zone_i_boundary = -s1 | -s2 | -s3 - - zone_ii_boundary = openmc.ZCylinder(r=256.032, name='iib_boundary') - annulus_boundary = openmc.ZCylinder(r=261.112, name='annulus_boundary') - lower_plenum_boundary = openmc.ZPlane(z0=-7.62, name='lower_plenum_boundary') - - zone_bounds = (cr_boundary, zone_i_boundary, zone_ii_boundary) - core_bounds = (annulus_boundary, lower_plenum_boundary, core_base, core_top) - radial_reflector_boundary = openmc.ZCylinder(r=338.328, name='radial_reflector_boundary') - bottom_reflector_boundary = openmc.ZPlane(z0=-76.2, name='bottom_axial_reflector_boundary') - top_reflector_boundary = openmc.ZPlane(z0=525.78, name='top_axial_reflector_boundary') - reflector_bounds = (radial_reflector_boundary, - bottom_reflector_boundary, - top_reflector_boundary) - - radial_vessel_boundary = openmc.ZCylinder(r=343.408, name='radial_vessel_wall', boundary_type='vacuum') - bottom_vessel_boundary = openmc.ZPlane(z0=-81.28, name='bottom_vessel_wall', boundary_type='vacuum') - top_vessel_boundary = openmc.ZPlane(z0=530.86, name='top_vessel_wall', boundary_type='vacuum') - - vessel_bounds = (radial_vessel_boundary, - bottom_vessel_boundary, - top_vessel_boundary) - - return zone_bounds, core_bounds, reflector_bounds, vessel_bounds - -def zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top, moder, fuel): - # Large elements - large_angular_width = 3.538 - large_half_w = large_angular_width / 2 - large_positions = np.linspace(0, 315, 8) - r_outer = 256.032 - r_big1 = 229.6 - r_big2 = 223.6 - rb_1 = (r_big1, r_outer) - rb_2 = (r_big2, r_outer) - big_radii = [rb_1, rb_2] * 4 - small_radii = (207.28, r_outer) - - r_hole = 3.0875 - hole_args = ({'x0': 242.679, 'y0': 0.0, 'r': r_hole}, - {'x0': 171.60, 'y0': 171.60, 'r': r_hole}, - {'x0': 0.0, 'y0': 242.679, 'r': r_hole}, - {'x0': -171.60, 'y0': 171.60, 'r': r_hole}, - {'x0': -242.679, 'y0': 0.0, 'r': r_hole}, - {'x0': -171.60, 'y0': -171.60, 'r': r_hole}, - {'x0': 0.0, 'y0': -242.697, 'r': r_hole}, - {'x0': 171.60, 'y0': -171.60, 'r': r_hole}) - - # Small elements - small_angular_width = 0.96 - adjacent_angular_offset = 0.675 #27/40 - small_elems_per_octant = 25 - - elem_cells = [] - for i, pos in enumerate(large_positions): - pos = np.round(pos, 3) - r1_big, r2_big = big_radii[i] - t1_big = pos - large_half_w - t2_big = pos + large_half_w - s1 = openmc.model.CylinderSector(r1_big, r2_big, t1_big, t2_big) - s2 = openmc.ZCylinder(**hole_args[i]) - elem_cells.append(openmc.Cell(fill=moder, region=(-s1 & +s2), name=f'iib_large_element_{pos}')) - elem_cells.append(openmc.Cell(fill=fuel, region=(-s2), - name=f'iib_large_element_fuel_hole_{pos}')) - t1_small = t2_big + adjacent_angular_offset - r1_small, r2_small = small_radii - - # Inter element fuel channel - s3 = openmc.model.CylinderSector(r1_small, r2_small, t2_big, t1_small) - cpos = t2_big + (adjacent_angular_offset / 2) - cpos = np.round(cpos, 3) - elem_cells.append(openmc.Cell(fill=fuel, region=-s3, - name=f'inter_element_fuel_channel_{cpos}')) - - t4a = t1_big - adjacent_angular_offset - s4 = openmc.model.CylinderSector(r1_small, r1_big, t4a, t1_small) - elem_cells.append(openmc.Cell(fill=fuel, region=-s4, - name=f'inter_element_fuel_channel_{pos}')) - - for i in range(0, small_elems_per_octant): - t2_small = t1_small + small_angular_width - - # reflector element - s5 = openmc.model.CylinderSector(r1_small, r2_small, t1_small, t2_small) - pos = t2_small - (small_angular_width / 2) - pos = np.round(pos, 3) - elem_cells.append(openmc.Cell(fill=moder, region=-s5, name=f'iib_small_element_{pos}')) - t1_small = t2_small + adjacent_angular_offset - - # inter-element fuel channel - s6 = openmc.model.CylinderSector(r1_small, r2_small, t2_small, t1_small) - cpos = t2_small + (adjacent_angular_offset/2) - cpos = np.round(cpos, 3) - elem_cells.append(openmc.Cell(fill=fuel, region=-s6, - name=f'inter_element_fuel_channel_{cpos}')) - - #universe_id=10 - iib = openmc.Universe(name='zone_iib') - iib.add_cells(elem_cells) - - c1 = openmc.Cell(fill=iib, region=(~zone_i_boundary & - -zone_ii_boundary & - +core_base & - -core_top), name='zone_iib') - return c1 - -def annulus(zone_ii_boundary, annulus_boundary, core_base, core_top, fuel): - annulus_reg = +zone_ii_boundary & -annulus_boundary & +core_base & -core_top - c1 = openmc.Cell(fill=fuel, region=annulus_reg, name='annulus') - return c1 - -def lower_plenum(core_base, lower_plenum_boundary, annulus_boundary, fuel): - lower_plenum_reg = -core_base & +lower_plenum_boundary & -annulus_boundary - c1 = openmc.Cell(fill=fuel, region=lower_plenum_reg, name='lower_plenum') - return c1 - -def reflectors(annulus_boundary, - radial_reflector_boundary, - lower_plenum_boundary, - bottom_reflector_boundary, - core_top, - top_reflector_boundary, - moder): - radial_reflector_reg = +annulus_boundary & -radial_reflector_boundary & +bottom_reflector_boundary & -top_reflector_boundary - bottom_reflector_reg = -annulus_boundary & -lower_plenum_boundary & +bottom_reflector_boundary - top_reflector_reg = -annulus_boundary & +core_top & -top_reflector_boundary - - c1 = openmc.Cell(fill=moder, region=radial_reflector_reg, name='radial_reflector') - c2 = openmc.Cell(fill=moder, region=bottom_reflector_reg, name='bottom_axial_reflector') - c3 = openmc.Cell(fill=moder, region=top_reflector_reg, name='top_axial_reflector') - return c1, c2, c3 - -def vessel(radial_reflector_boundary, - radial_vessel_boundary, - bottom_vessel_boundary, - top_vessel_boundary, - top_reflector_boundary, - bottom_reflector_boundary, - hast): - radial_vessel_reg = +radial_reflector_boundary & -radial_vessel_boundary & -top_vessel_boundary & +bottom_vessel_boundary - bottom_vessel_reg = -radial_reflector_boundary & -bottom_reflector_boundary & +bottom_vessel_boundary - top_vessel_reg = -radial_reflector_boundary & -top_vessel_boundary & +top_reflector_boundary - - c1 = openmc.Cell(fill=hast, region=radial_vessel_reg, name='radial_vessel_wall') - c2 = openmc.Cell(fill=hast, region=bottom_vessel_reg, name='bottom_vessel_wall') - c3 = openmc.Cell(fill=hast, region=top_vessel_reg, name='top_vessel_wall') - return c1, c2, c3 diff --git a/examples/msbr/openmc_model_optimized.py b/examples/msbr/openmc_model_optimized.py deleted file mode 100644 index fb73f4454..000000000 --- a/examples/msbr/openmc_model_optimized.py +++ /dev/null @@ -1,471 +0,0 @@ -import openmc -import numpy as np -from openmc.deplete import CoupledOperator, PredictorIntegrator, CELIIntegrator - -from _core_elements_optimized import * -from _control_rods_optimized import * -from _root_geometry_optimized import * - -# Materials - -T = 900 -fuel = openmc.Material(name='fuel', temperature=T) -fuel.set_density('g/cm3', density=3.35) -fuel.add_components({'Li7': 0.0787474673879085, - 'Be9': 0.0225566879138321, - 'F19': 0.454003012179284, - 'Th232': 0.435579130482336, - 'U233': 0.00911370203663893}, - percent_type='wo') -fuel.depletable = True -fuel.volume = 48710000.0 - -moder = openmc.Material(name='graphite', temperature=T) -moder.set_density('g/cm3', density=1.84) -moder.add_nuclide('C0', 1.000, percent_type='wo') -moder.add_s_alpha_beta('c_Graphite') - -hast = openmc.Material(name='hastelloyN', temperature=T) -hast.set_density('g/cm3', density=8.671) -hast.add_components({'Al27': 0.003, - 'Ni': 0.677, - 'W': 0.250, - 'Cr': 0.070}, - percent_type='wo') - -mat = openmc.Materials(materials=[fuel, moder, hast]) -mat.export_to_xml() - -# Geometry -def cr_lattice(cr_boundary, core_base, core_top): - fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel = shared_cr_geometry() - f = control_rod(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, fuel, moder) - fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel = shared_cr_geometry() - e = control_rod_channel(fuel_hole, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, fuel, moder) - - cr = openmc.RectLattice() - cr.pitch = np.array([15.24, 15.24]) - N = 2 / 2 - cr.lower_left = -1 * cr.pitch * N - cr.universes = [[e, f], - [f, e]] - c1 = openmc.Cell(fill=cr, region=(+core_base & -core_top & cr_boundary), name='cr_lattice') - - return c1 - -def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): - elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4 = shared_elem_geometry() - l = zoneIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4, moder, fuel, hast) - elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4 = shared_elem_geometry() - z = zoneIIA(elem_bound, gr_sq_neg, gr_corners, gr_t, inter_elem_channel, gr_round_4, moder, fuel) - v = void_cell(elem_bound) - # tres, uno, dos, quatro - t, u, d, q = graphite_triangles(elem_bound, moder, fuel) - - main = openmc.RectLattice() - main.pitch = np.array([10.16, 10.16]) - N = 45 / 2 - main.lower_left = -1 * main.pitch * N - main.universes = [[v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, d, z, z, z, z, z, z, z, z, z, u, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v], - [v, v, v, v, v, v, v, v, v, v, v, v, v, d, z, z, z, z, l, l, l, l, l, l, l, l, l, z, z, z, z, u, v, v, v, v, v, v, v, v, v, v, v, v, v], - [v, v, v, v, v, v, v, v, v, v, v, d, z, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, z, u, v, v, v, v, v, v, v, v, v, v, v], - [v, v, v, v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v, v, v, v], - [v, v, v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v, v, v], - [v, v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v, v], - [v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v], - [v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v], - [v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v], - [v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v], - [v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v], - [v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v], - [v, v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v, v], - [v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v], - [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v], - [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v], - [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v], - [d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u], - [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], - [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], - [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], - [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, v, v, v, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], - [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, v, v, v, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], - [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, v, v, v, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], - [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], - [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], - [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z], - [t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q], - [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v], - [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v], - [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v], - [v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v], - [v, v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v, v], - [v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v], - [v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v], - [v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v], - [v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v], - [v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v], - [v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v], - [v, v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v, v], - [v, v, v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v, v, v], - [v, v, v, v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v, v, v, v], - [v, v, v, v, v, v, v, v, v, v, v, t, z, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, z, q, v, v, v, v, v, v, v, v, v, v, v], - [v, v, v, v, v, v, v, v, v, v, v, v, v, t, z, z, z, z, l, l, l, l, l, l, l, l, l, z, z, z, z, q, v, v, v, v, v, v, v, v, v, v, v, v, v], - [v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, t, z, z, z, z, z, z, z, z, z, q, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v]] - c1 = openmc.Cell(fill=main, region=(+core_base & -core_top & zone_i_boundary & ~cr_boundary), name='main_lattice') - return c1 - -zone_bounds, core_bounds, reflector_bounds, vessel_bounds = shared_root_geometry() - -cr_boundary, zone_i_boundary, zone_ii_boundary = zone_bounds -annulus_boundary, lower_plenum_boundary, core_base, core_top = core_bounds -radial_reflector_boundary, bottom_reflector_boundary, top_reflector_boundary = reflector_bounds -radial_vessel_boundary, bottom_vessel_boundary, top_vessel_boundary= vessel_bounds - -main = main_lattice(zone_i_boundary, cr_boundary, core_base, core_top) -cr = cr_lattice(cr_boundary, core_base, core_top) -iib = zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top, moder, fuel) -a = annulus(zone_ii_boundary, annulus_boundary, core_base, core_top, fuel) -lp = lower_plenum(core_base, lower_plenum_boundary, annulus_boundary, fuel) - -rr, rb, rt = reflectors(annulus_boundary, - radial_reflector_boundary, - lower_plenum_boundary, - bottom_reflector_boundary, - core_top, - top_reflector_boundary, - moder) - -vr, vb, vt = vessel(radial_reflector_boundary, - radial_vessel_boundary, - bottom_vessel_boundary, - top_vessel_boundary, - top_reflector_boundary, - bottom_reflector_boundary, - hast) - -geo = openmc.Geometry() -univ = openmc.Universe() -univ.add_cells([cr, main, iib, lp, a, rr, rb, rt, vr, vb, vt]) - -geo.root_universe = univ -geo.remove_redundant_surfaces() -geo.export_to_xml() - -# Settings -settings = openmc.Settings() -settings.particles = 10000 -settings.batches = 150 -settings.inactive = 25 -settings.generations_per_batch = 1 -settings.temperature = {'default': 900, 'method': 'interpolation', 'range': (800, 1000)} -#settings.temperature = {'default': 600, 'method': 'nearest'} -settings.export_to_xml() - -# Plots -plots_3d = False -detail_pixels = (1000, 1000) -full_pixels = (10000, 10000) - -colormap = {moder: 'purple', - hast: 'blue', - fuel: 'yellow'} -## Slice plots -plots = openmc.Plots() - -plot = openmc.Plot(name='serpent-plot-1_full-zoneIA-main') -plot.origin=(0, 0, 150.5) -plot.width=(600, 600) -plot.pixels=full_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='serpent-plot-2') -plot.origin=(0, -77.5, 200) -plot.width=(155, 700) -plot.pixels=(1550, 3400) -plot.color_by='material' -plot.colors=colormap -plot.basis='yz' -plots.append(plot) - -plot = openmc.Plot(name='serpent-plot-3') -plot.origin=(0, 0, 155) -plot.width=(40, 40) -plot.pixels=detail_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='yz' -plots.append(plot) - -plot = openmc.Plot(name='serpent-plot-4') -plot.origin=(16.5, 0, 200) -plot.width=(700, 700) -plot.pixels=(2000, 2000) -plot.color_by='material' -plot.colors=colormap -plot.basis='yz' -plots.append(plot) - -plot = openmc.Plot(name='detail-zoneIA-IIA-lower1') -plot.origin=(215, 0, 10.0) -plot.width=(40, 40) -plot.pixels=detail_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='detail-zoneIA-main') -plot.origin=(215, 0, 23.0) -plot.width=(40, 40) -plot.pixels=detail_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='detail-zoneIIA-upper1') -plot.origin=(215, 0, 435) -plot.width=(40, 40) -plot.pixels=detail_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='detail-zoneIA-upper1') -plot.origin=(215, 0, 420) -plot.width=(40, 40) -plot.pixels=detail_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='detail-zoneIIA-upper2') -plot.origin=(215, 0, 437) -plot.width=(40, 40) -plot.pixels=detail_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='detail-zoneIA-upper2') -plot.origin=(215, 0, 439) -plot.width=(40, 40) -plot.pixels=detail_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='detail-zoneIIA-upper3') -plot.origin=(215, 0, 440) -plot.width=(40, 40) -plot.pixels=detail_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='detail-zoneIA-upper3') -plot.origin=(215, 0, 448) -plot.width=(40, 40) -plot.pixels=detail_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='detail-zoneIIA-upper4') -plot.origin=(215, 0, 442) -plot.width=(40, 40) -plot.pixels=detail_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='full-zoneIA-IIA-lower1') -plot.origin=(0.0, 0, 10.0) -plot.width=(600, 600) -plot.pixels=full_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='full-zoneIIA-upper1') -plot.origin=(0, 0, 435) -plot.width=(600, 600) -plot.pixels=full_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='full-zoneIA-upper1') -plot.origin=(0, 0, 420) -plot.width=(600, 600) -plot.pixels=full_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='full-zoneIIA-upper2') -plot.origin=(0, 0, 437) -plot.width=(600, 600) -plot.pixels=full_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='full-zoneIA-upper2') -plot.origin=(0, 0, 439) -plot.width=(600, 600) -plot.pixels=full_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='full-zoneIIA-upper3') -plot.origin=(0, 0, 440) -plot.width=(600, 600) -plot.pixels=full_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='full-zoneIA-upper3') -plot.origin=(0, 0, 448) -plot.width=(600, 600) -plot.pixels=full_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='full-zoneIIA-upper4') -plot.origin=(0, 0, 442) -plot.width=(600, 600) -plot.pixels=full_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='core-xz-detail-upper') -plot.origin=(215, 0, 440) -plot.width=(100, 100) -plot.pixels=detail_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xz' -plots.append(plot) - -plot = openmc.Plot(name='full-core-xz') -plot.origin=(0, 0, 200) -plot.width=(700, 700) -plot.pixels=full_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xz' -plots.append(plot) - -plots.export_to_xml() - -DEPLETE = False -if DEPLETE: - fiss_q = { - "Am243": 212952778.98135212, - "Cm246": 220179493.9541502, - "U239": 196182721.4907133, - "Np239": 198519429.0542043, - "Th233": 185840570.73897627, - "Cf251": 223166396.6983342, - "Am242": 215146730.16368726, - "Cm245": 214624022.18345505, - "Cf254": 230600814.3619568, - "Am241": 211216798.63643932, - "Th232": 197108389.42449385, - "Cm240": 219583368.40646642, - "Th231": 186918512.14598972, - "Bk246": 224446497.874413, - "Cm247": 218956599.9139631, - "U238": 206851381.70909396, - "Bk250": 225432928.78068554, - "U230": 198841127.68309468, - "Cf249": 221434495.10716867, - "U234": 200632850.9958874, - "Cm250": 219425761.1783332, - "Th229": 192235847.44789958, - "Cm241": 219075406.6897822, - "Pu237": 210593272.23024797, - "Am240": 215272544.02927735, - "Cm249": 218622037.52325428, - "Ac226": 183632605.3770991, - "Cf250": 229685291.02082983, - "Th228": 189488754.50737157, - "Cf248": 229015120.40511796, - "Ac227": 183458264.80025893, - "Pu241": 211237715.32232296, - "Pu240": 208612566.66049656, - "Cf252": 230239896.94703457, - "U231": 197643438.24939737, - "Cm242": 212786491.32857716, - "Bk245": 225023484.65451327, - "Np235": 199435370.72904894, - "Pu243": 207499380.63776916, - "Pu239": 208018532.78140113, - "Am242_m1": 215145370.5791048, - "Pu236": 208679081.72160652, - "Bk249": 224740691.06136644, - "Np236": 198952718.20228392, - "Np234": 200175925.99275926, - "U237": 196429642.96756968, - "Cf253": 231148831.53210822, - "U236": 203404311.87546986, - "Es254": 232527659.46555784, - "Ac225": 183891658.531768, - "Cm243": 213375296.0362017, - "Bk248": 224456537.88363716, - "Cm244": 217926766.88448203, - "Pu242": 212072186.50565082, - "U241": 198266755.4887299, - "Np237": 205370480.34853214, - "Th234": 186385345.82281572, - "Pa231": 194099942.4938497, - "Pa230": 194744699.33621296, - "Pa233": 194162901.71835947, - "U240": 207137940.30569986, - "U233": 199796183.56054175, - "Pu246": 208860847.72193536, - "Pa232": 193654730.8348164, - "U232": 193044277.35730234, - "Am244_m1": 213894761.9301219, - "Pu244": 208427244.82356748, - "Np238": 208699370.90691367, - "Bk247": 224883761.19281054, - "Am244": 213894761.9301219, - "Pa229": 194955644.11334947, - "Cm248": 221723145.3723629, - "Fm255": 238051756.2074275, - "Cf246": 229074942.12674516, - "Th230": 188666101.25156796, - "Pu238": 209540012.5125772, - "U235": 202270000.0, - "Th227": 190640950.14927194 - } - model = openmc.Model.from_xml() - op = CoupledOperator(model, chain_file='chain_endfb71_pwr.xml', fission_q=fiss_q) - timesteps = [3] * 12 - integrator = PredictorIntegrator(op, timesteps, timestep_units='d', power=2.25e9) - integrator.integrate() - From 3375a0c43fcf1258e21a31614634f625264d092c Mon Sep 17 00:00:00 2001 From: yardasol Date: Mon, 24 Oct 2022 17:10:01 -0500 Subject: [PATCH 22/62] remove redundant surfaces Always --- examples/msbr/openmc_model.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/examples/msbr/openmc_model.py b/examples/msbr/openmc_model.py index 12533c306..fe49e6d66 100644 --- a/examples/msbr/openmc_model.py +++ b/examples/msbr/openmc_model.py @@ -424,8 +424,7 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): univ.add_cells(iib) geo.root_universe = univ -if not optimized: - geo.remove_redundant_surfaces() +geo.remove_redundant_surfaces() geo.export_to_xml() # Settings From 525aecce0dfa5f0574653fdb43da9843db9ede2c Mon Sep 17 00:00:00 2001 From: yardasol Date: Wed, 26 Oct 2022 11:03:26 -0500 Subject: [PATCH 23/62] remove unneeded element bounding surfaces --- examples/msbr/_control_rods.py | 4 +-- examples/msbr/_core_elements.py | 18 +++++------ examples/msbr/geometry/msbr_full.ini | 48 ++++++++++++++-------------- examples/msbr/openmc_model.py | 29 ++++++++--------- 4 files changed, 48 insertions(+), 51 deletions(-) diff --git a/examples/msbr/_control_rods.py b/examples/msbr/_control_rods.py index 34d339c7c..6ff2df22c 100644 --- a/examples/msbr/_control_rods.py +++ b/examples/msbr/_control_rods.py @@ -1,7 +1,7 @@ import openmc import numpy as np -def control_rod(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole, fuel, moder, optimized): +def control_rod(gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole, fuel, moder, optimized): s1 = openmc.ZCylinder(r=4.7625, name='control_rod') c1 = openmc.Cell(fill=moder, region=-s1, name='control_rod') @@ -27,7 +27,7 @@ def control_rod(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole return cr -def control_rod_channel(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole, fuel, moder, optimized): +def control_rod_channel(gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole, fuel, moder, optimized): c1 = openmc.Cell(fill=fuel, region=(-fuel_hole), name='crc_fuel_inner') if optimized: diff --git a/examples/msbr/_core_elements.py b/examples/msbr/_core_elements.py index 6b353b48f..4386d1a89 100644 --- a/examples/msbr/_core_elements.py +++ b/examples/msbr/_core_elements.py @@ -26,7 +26,7 @@ def _bound_zone_cells(cells_tuples, levels): cell_list.append(cell) return cell_list -def zoneIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4, moder, fuel, hast, optimized): +def zoneIA(gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4, moder, fuel, hast, optimized): """Zone IA element. Specs found in Robertson, 1971 Fig 3.4 (p. 17)""" elem_levels = [22.86, 419.10, 438.15, 445.135] level_bounds = [] @@ -42,7 +42,7 @@ def zoneIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4, mo c1 = openmc.Cell(fill=fuel, region=(-s2), name='ia_fuel_inner_1') c2 = openmc.Cell(fill=moder, region=(+s2 & -s1), name='ia_moderator_1') - c3 = openmc.Cell(fill=fuel, region=(+s1 & elem_bound), name='ia_fuel_outer_1') + c3 = openmc.Cell(fill=fuel, region=(+s1), name='ia_fuel_outer_1') ia1 = (c1, c2, c3) # I-A main (lower 2) @@ -57,7 +57,7 @@ def zoneIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4, mo iam.append(openmc.Cell(fill=fuel, region=reg, name=f'ia_fuel_outer_main_{name}')) else: c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg & inter_elem_channel), name='ia_moderator_main') - c6 = openmc.Cell(fill=fuel, region=(~gr_sq_neg & elem_bound & inter_elem_channel), name='ia_fuel_outer_main') + c6 = openmc.Cell(fill=fuel, region=(~gr_sq_neg & inter_elem_channel), name='ia_fuel_outer_main') iam = [c4, c5, c6] for (reg, name) in gr_corners: @@ -77,20 +77,18 @@ def zoneIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4, mo if optimized: s2 = s2.clone() s3 = s3.clone() - elem_bound = elem_bound.clone() c10 = c1.clone(clone_materials=False) c10.name = 'ia_fuel_inner_3' c11 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='ia_moderator_3') - c12 = openmc.Cell(fill=fuel, region=(+s3 & elem_bound), name='ia_fuel_outer_3') + c12 = openmc.Cell(fill=fuel, region=(+s3), name='ia_fuel_outer_3') ia3 = (c10, c11, c12) # I-A 4 (upper 3) if optimized: s2 = s2.clone() - elem_bound = elem_bound.clone() c13 = openmc.Cell(fill=hast, region=(-s2), name='ia_hast') c14 = openmc.Cell(fill=moder, region=(+s2 & -gr_round_4), name='ia_moderator_4') - c15 = openmc.Cell(fill=fuel, region=(+gr_round_4 & elem_bound), name='ia_fuel_outer_4') + c15 = openmc.Cell(fill=fuel, region=(+gr_round_4), name='ia_fuel_outer_4') ia4 = (c13, c14, c15) elem_cells = [ia1, iam, ia2, ia3, ia4] @@ -99,7 +97,7 @@ def zoneIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4, mo ia.add_cells(_bound_zone_cells(elem_cells, level_bounds)) return ia -def zoneIIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4, moder, fuel, optimized): +def zoneIIA(gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4, moder, fuel, optimized): """Zone IIA element. Specs found in Robertson, 1971 Fig 3.5 (p. 18)""" elem_levels = [434.34, 436.88, 439.42, 441.96] level_bounds = [] @@ -177,14 +175,14 @@ def zoneIIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4, m iia.add_cells(_bound_zone_cells(elem_cells, level_bounds)) return iia -def void_cell(elem_bound, optimized): +def void_cell(): c1 = openmc.Cell(name='lattice_void') #universe_id=5 v = openmc.Universe(name='lattice_void') v.add_cell(c1) return v -def graphite_triangles(elem_bound, moder, fuel, optimized): +def graphite_triangles(moder, fuel): s1 = openmc.Plane(1.0, 1.0, 0.0, 0.0) s2 = openmc.Plane(-1.0, 1.0, 0.0, 0.0) s3 = openmc.Plane(1.0, -1.0, 0.0, 0.0) diff --git a/examples/msbr/geometry/msbr_full.ini b/examples/msbr/geometry/msbr_full.ini index 53498fd33..7f2c40a42 100644 --- a/examples/msbr/geometry/msbr_full.ini +++ b/examples/msbr/geometry/msbr_full.ini @@ -1,7 +1,7 @@ % --- Surfaces (core pitch = 10.16 cm): Zone I-A surf 1 cyl 0.0 0.0 1.71069 % Hole with fuel salt surf 2 sqc 0.0 0.0 4.953 0.46 % Graphite square outer wall 1.07 -surf 3 sqc 0.0 0.0 5.08 % Outer boundary +%surf 3 sqc 0.0 0.0 5.08 % Outer boundary surf 4 cyl -4.28498 4.53898 0.66802 % Left-upper graphite element 1.15 surf 5 cyl 4.28498 -4.53898 0.66802 % Right-bottom graphite element surf 6 cyl -4.53898 -4.28498 0.66802 % Left-bottom graphite element @@ -13,7 +13,7 @@ surf 11 cyl 5.62102 -4.28498 0.66802 % replay part of left-bottom graphite e % --- Cells: Universe 11: Zone I-A cell 1 11 fuel -1 % Fuel hole cell 2 11 moder 1 -2 4 5 6 7 8 9 10 11 % Graphite block -cell 3 11 fuel 2 -3 4 5 6 7 8 9 10 11 % Fuel salt outside graphite block +cell 3 11 fuel 2 4 5 6 7 8 9 10 11 % Fuel salt outside graphite block cell 4 11 moder -4 % Left-upper graphite element cell 5 11 moder -5 % Right-bottom graphite element cell 6 11 moder -6 % Left-bottom graphite element @@ -26,23 +26,23 @@ cell 11 11 moder -11 % replay part of left-bottom graphit surf 12 cyl 0.0 0.0 4.953 % Graphite round outer wall cell 601 12 fuel -1 % Fuel hole cell 602 12 moder 1 -12 % Graphite block -cell 603 12 fuel 12 -3 % Fuel salt outside graphite block +cell 603 12 fuel 12 % Fuel salt outside graphite block % ============ Upper part 1: Zone I-A (Universe 13) ======================== surf 13 cyl 0.0 0.0 4.953 % Graphite round outer wall above main 13-feet part cell 604 13 fuel -1 % Fuel hole cell 605 13 moder 1 -13 % Graphite block -cell 606 13 fuel 13 -3 % Fuel salt outside graphite block +cell 606 13 fuel 13 % Fuel salt outside graphite block % ============ Upper part 2: Zone I-A (Universe 14) ======================== surf 14 cone 0.0 0.0 0.0 4.953 12.66 % Graphite cone outer wall part cell 607 14 fuel -1 % Fuel hole cell 608 14 moder 1 -14 % Graphite block -cell 609 14 fuel 14 -3 % Fuel salt outside graphite block +cell 609 14 fuel 14 % Fuel salt outside graphite block % ============ Upper part 3: Zone I-A (Universe 15) ======================== surf 15 cyl 0.0 0.0 2.2225 % Graphite outer wall part surf 16 cyl 0.0 0.0 0.762 % Fuel hole 0.6 in cell 616 15 hast -1 % Hastelloy N cell 617 15 moder 1 -15 % Graphite block -cell 618 15 fuel 15 -3 % Fuel salt outside graphite block +cell 618 15 fuel 15 % Fuel salt outside graphite block % ======== Vertical stack Zone I-A cell (marked as 1 in main lattice) =========================================== lat 1 9 0.0 0.0 5 0.0 12 @@ -54,7 +54,7 @@ lat 1 9 0.0 0.0 5 % --- Surfaces (core pitch = 10.16 cm) - Zone II-A Universe 2: surf 21 cyl 0.0 0.0 3.302 % Hole with fuel salt (Fig.3.5 Robertson) 3.27787 - p. 47 surf 22 sqc 0.0 0.0 4.953 0.46 % Graphite square outer wall 1.07 -surf 23 sqc 0.0 0.0 5.08 % Outer boundary +%surf 23 sqc 0.0 0.0 5.08 % Outer boundary surf 24 cyl -4.28498 4.53898 0.66802 % Left-upper graphite element 1.15 surf 25 cyl 4.28498 -4.53898 0.66802 % Right-bottom graphite element surf 26 cyl -4.53898 -4.28498 0.66802 % Left-bottom graphite element @@ -66,7 +66,7 @@ surf 31 cyl 5.62102 -4.28498 0.66802 % replay part of left-bottom graphite % --- Cells: Universe 21: Bottom(main) part: Zone I-A ======================================= cell 21 21 fuel -21 % Fuel hole cell 22 21 moder 21 -22 24 25 26 27 28 29 30 31 % Graphite block -cell 23 21 fuel 22 -23 24 25 26 27 28 29 30 31 % Fuel salt outside graphite block +cell 23 21 fuel 22 24 25 26 27 28 29 30 31 % Fuel salt outside graphite block cell 24 21 moder -24 % Left-upper graphite element cell 25 21 moder -25 % Right-bottom graphite element cell 26 21 moder -26 % Left-bottom graphite element @@ -79,7 +79,7 @@ cell 31 21 moder -31 % replay part of left-bott surf 32 cyl 0.0 0.0 0.635 % Hole with fuel salt (Fig.3.5 Robertson p. 47) d=0.5in cell 721 22 fuel -32 % Fuel hole cell 722 22 moder 32 -22 24 25 26 27 28 29 30 31 % Graphite block -cell 723 22 fuel 22 -23 24 25 26 27 28 29 30 31 % Fuel salt outside graphite block +cell 723 22 fuel 22 24 25 26 27 28 29 30 31 % Fuel salt outside graphite block cell 724 22 moder -24 % Left-upper graphite element cell 725 22 moder -25 % Right-bottom graphite element cell 726 22 moder -26 % Left-bottom graphite element @@ -92,15 +92,15 @@ cell 731 22 moder -31 % replay part of left-bot surf 33 cyl 0.0 0.0 3.65125 % Outer cylindrical surface (Fig.3.5 Robertson p. 47) d=2 7/8 in cell 733 23 fuel -32 % Fuel hole cell 734 23 moder 32 -33 % Graphite block -cell 735 23 fuel 33 -23 % Fuel salt outside graphite block +cell 735 23 fuel 33 % Fuel salt outside graphite block %===========Cells: Universe 24: Upper part 3 (from H=439.42cm to 441.96cm): Zone II-A =========================== surf 34 cone 0.0 0.0 0.0 3.65125 6.5 % Outer cone surface (Fig.3.5 Robertson p. 47) cell 737 24 moder -34 % Graphite block -cell 738 24 fuel 34 -23 % Fuel salt outside graphite block +cell 738 24 fuel 34 % Fuel salt outside graphite block %===========Cells: Universe 25: Upper part 4 (from H=441.96cm to 449.58cm): Zone II-A =========================== surf 35 cyl 0.0 0.0 2.2225 % Outer cylindrical surface (Fig.3.5 Robertson p. 47) cell 740 25 moder -35 % Graphite block -cell 741 25 fuel 35 -23 % Fuel salt outside graphite block +cell 741 25 fuel 35 % Fuel salt outside graphite block % ======== Vertical stack Zone II-A cell (marked as 2 in main lattice) =========================================== lat 2 9 0.0 0.0 5 @@ -113,7 +113,7 @@ lat 2 9 0.0 0.0 5 % --- Surfaces (core pitch = 15.24 cm) - Control rods Universe 3: surf 41 cyl 0.0 0.0 5.08 % Hole with fuel salt surf 42 sqc 0.0 0.0 7.23646 0.99 % Graphite square outer wall 1.07 -surf 43 sqc 0.0 0.0 7.62 % Outer boundary +%surf 43 sqc 0.0 0.0 7.62 % Outer boundary surf 44 hexyc -5.8801 6.505 1.16 0.18 % Left-upper graphite element 1.15 surf 45 hexyc 5.8801 -6.505 1.16 0.18 % Right-bottom graphite element surf 46 hexxc -6.505 -5.8801 1.16 0.18 % Left-bottom graphite element @@ -129,7 +129,7 @@ surf 39 cyl 0.0 0.0 4.7625 % control rod diameter 3.75in (Rob cell 53 3 moder -39 % Control rods cell 41 3 fuel -41 39 % Fuel hole cell 42 3 moder 41 -42 44 45 46 47 48 49 50 51 % Graphite block -cell 43 3 fuel 42 -43 44 45 46 47 48 49 50 51 % Fuel salt outside graphite block +cell 43 3 fuel 42 44 45 46 47 48 49 50 51 % Fuel salt outside graphite block cell 44 3 moder -44 % Left-upper graphite element cell 45 3 moder -45 % Right-bottom graphite element cell 46 3 moder -46 % Left-bottom graphite element @@ -142,7 +142,7 @@ cell 51 3 moder -51 % replay part of lef % --- Cells: Universe 4: Control rods channels (no control rods in) cell 841 4 fuel -41 % Fuel hole cell 842 4 moder 41 -42 44 45 46 47 48 49 50 51 % Graphite block -cell 843 4 fuel 42 -43 44 45 46 47 48 49 50 51 % Fuel salt outside graphite block +cell 843 4 fuel 42 44 45 46 47 48 49 50 51 % Fuel salt outside graphite block cell 844 4 moder -44 % Left-upper graphite element cell 845 4 moder -45 % Right-bottom graphite element cell 846 4 moder -46 % Left-bottom graphite element @@ -153,7 +153,7 @@ cell 850 4 moder -50 % replay part of ri cell 851 4 moder -51 % replay part of left-bottom graphite element % ------ Vacuum cell -cell 57 5 void -3 +cell 57 5 void %--------- Reflector cell %cell 58 6 refl -3 @@ -164,14 +164,14 @@ surf 53 plane -1.0 1.0 0.0 0.0 % Upper-left surf 54 plane 1.0 -1.0 0.0 0.0 % Bottom-right surf 55 plane -1.0 -1.0 0.0 0.0 % Bottom-left -cell 500 7 moder -3 -52 % Top-right -cell 501 7 fuel -3 52 % Top-right -cell 502 8 moder -3 -53 % Top-left -cell 503 8 fuel -3 53 % Top-left -cell 504 9 moder -3 -54 % Bottom-right -cell 505 9 fuel -3 54 % Bottom-right -cell 506 6 moder -3 -55 % Bottom-left -cell 507 6 fuel -3 55 % Bottom-left +cell 500 7 moder -52 % Top-right +cell 501 7 fuel 52 % Top-right +cell 502 8 moder -53 % Top-left +cell 503 8 fuel 53 % Top-left +cell 504 9 moder -54 % Bottom-right +cell 505 9 fuel 54 % Bottom-right +cell 506 6 moder -55 % Bottom-left +cell 507 6 fuel 55 % Bottom-left % --------- Reflector zone II-B surf 60 pad 0.0 0.0 229.6 256.032 1.769 -1.769 % Left horizontal big element diff --git a/examples/msbr/openmc_model.py b/examples/msbr/openmc_model.py index fe49e6d66..30a02063f 100644 --- a/examples/msbr/openmc_model.py +++ b/examples/msbr/openmc_model.py @@ -61,10 +61,10 @@ def parse_arguments(): args = parser.parse_args() return bool(args.optimized), bool(args.deplete) -def shared_elem_geometry(elem_type, eb_d, gr_sq_d, gr_sq_r, r_dt, l1, l2, l3, r_es, es_name, optimized): +def shared_elem_geometry(elem_type, gr_sq_d, gr_sq_r, r_dt, l1, l2, l3, r_es, es_name, optimized): """Surfaces and regions shared by Zone IA and Zone IIA elements. Specs found in Robertson, 1971 Fig 3.4 (p. 17) and Fig 3.5 (p.18)""" - elem_bound = openmc.rectangular_prism(eb_d*2, eb_d*2) # Pin outer boundary + #elem_bound = openmc.rectangular_prism(eb_d*2, eb_d*2) # Pin outer boundary gr_sq_neg = openmc.rectangular_prism(gr_sq_d*2, gr_sq_d*2, corner_radius=gr_sq_r) # Graphite square ul_t = openmc.ZCylinder(-l1, -l3, r_dt, name='corner_ul_tip') @@ -73,7 +73,7 @@ def shared_elem_geometry(elem_type, eb_d, gr_sq_d, gr_sq_r, r_dt, l1, l2, l3, r_ lb_t = openmc.ZCylinder(l3, -l1, r_dt, name='corner_lb_tip') if optimized: - eb_minx, eb_maxx, eb_miny, eb_maxy = list(elem_bound.get_surfaces().values()) + #eb_minx, eb_maxx, eb_miny, eb_maxy = list(elem_bound.get_surfaces().values()) gr_sq_neg = openmc.rectangular_prism(gr_sq_d*2, gr_sq_d*2, corner_radius=gr_sq_r) # Graphite square (gr_minx, gr_maxx, gr_miny, gr_maxy, @@ -246,16 +246,16 @@ def shared_elem_geometry(elem_type, eb_d, gr_sq_d, gr_sq_r, r_dt, l1, l2, l3, r_ extra_surf = openmc.ZCylinder(r=r_es, name=es_name) - return elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, extra_surf + return gr_sq_neg, gr_corners, inter_elem_channel, extra_surf def cr_lattice(cr_boundary, core_base, core_top, optimized): - elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole = shared_elem_geometry('cr', 7.62, 7.23645, 0.99, 0.8, 5.8801, 6.505, 8.03646, 5.08, 'cr_fuel_hole', optimized) + gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole = shared_elem_geometry('cr', 7.23645, 0.99, 0.8, 5.8801, 6.505, 8.03646, 5.08, 'cr_fuel_hole', optimized) - f = control_rod(elem_bound, gr_sq_neg, gr_corners,inter_elem_channel, fuel_hole, fuel, moder, optimized) + f = control_rod(gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole, fuel, moder, optimized) if optimized: # call a second time to have unique surfaces - elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole = shared_elem_geometry('cr', 7.62, 7.23645, 0.99, 0.8, 5.8801, 6.505, 8.03646, 5.08, 'cr_fuel_hole', optimized) - e = control_rod_channel(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole, fuel, moder, optimized) + gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole = shared_elem_geometry('cr', 7.23645, 0.99, 0.8, 5.8801, 6.505, 8.03646, 5.08, 'cr_fuel_hole', optimized) + e = control_rod_channel(gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole, fuel, moder, optimized) cr = openmc.RectLattice() cr.pitch = np.array([15.24, 15.24]) @@ -268,13 +268,13 @@ def cr_lattice(cr_boundary, core_base, core_top, optimized): return c1 def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): - elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4 = shared_elem_geometry('core', 5.08, 4.953, 0.46, 0.66802, 4.28498, 4.53898, 5.62102, 2.2225, 'gr_round_4', optimized) - l = zoneIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4, moder, fuel, hast, optimized) - elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4 = shared_elem_geometry('core', 5.08, 4.953, 0.46, 0.66802, 4.28498, 4.53898, 5.62102, 2.2225, 'gr_round_4', optimized) - z = zoneIIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4, moder, fuel, optimized) - v = void_cell(elem_bound, optimized) + gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4 = shared_elem_geometry('core', 4.953, 0.46, 0.66802, 4.28498, 4.53898, 5.62102, 2.2225, 'gr_round_4', optimized) + l = zoneIA(gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4, moder, fuel, hast, optimized) + gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4 = shared_elem_geometry('core', 4.953, 0.46, 0.66802, 4.28498, 4.53898, 5.62102, 2.2225, 'gr_round_4', optimized) + z = zoneIIA(gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4, moder, fuel, optimized) + v = void_cell() # tres, uno, dos, quatro - t, u, d, q = graphite_triangles(elem_bound, moder, fuel, optimized) + t, u, d, q = graphite_triangles(moder, fuel) s1, s2, s3 = zone_i_boundary @@ -359,7 +359,6 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): [c2_bl, 'smallest_octader_bl'], [c2_b, 'smallest_octader_b'], [c2_br, 'smallest_octader_br']] - #c2 = [[-s3, 'smallest_octader']] c3_ur = (-oct2_ur & +oct1_ur & -oct1_maxx & -oct1_maxy) c3_ul = (+oct2_ul & -oct1_ul & +oct1_minx & -oct1_maxy) From f3af270b02cf6126ffa7112c6ec15c8b19877450 Mon Sep 17 00:00:00 2001 From: yardasol Date: Wed, 26 Oct 2022 13:12:16 -0500 Subject: [PATCH 24/62] add docstrings, comments; clean up some variable names --- examples/msbr/_control_rods.py | 70 +++++++- examples/msbr/_core_elements.py | 110 +++++++++++-- examples/msbr/_root_geometry.py | 139 +++++++++++++++- examples/msbr/openmc_model.py | 272 ++++++++++++++++++++++---------- 4 files changed, 490 insertions(+), 101 deletions(-) diff --git a/examples/msbr/_control_rods.py b/examples/msbr/_control_rods.py index 6ff2df22c..a74e2ef4a 100644 --- a/examples/msbr/_control_rods.py +++ b/examples/msbr/_control_rods.py @@ -1,7 +1,38 @@ import openmc import numpy as np -def control_rod(gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole, fuel, moder, optimized): +def control_rod(gr_sq_neg, gr_extra_regions, inter_elem_channel, fuel_hole, fuel, moder, optimized): + """Create universe for control rod element with control rod fully inserted. + Based on specification in Roberton, 1971. + + Parameters + ---------- + gr_sq_neg : openmc.Intersection + The region bounding the outer surface of the 6 in. x 6 in. graphite + element. + gr_extra_regions : list of (openmc.Region, str) + 'Add-on' regions and their names for the graphite element. + Includes ribs, rib tips, and gap-filling regions. + inter_elem_channel : openmc.Region, list of (openmc.Region, str) + Inter-element channel region(s). + fuel_hole : openmc.ZCylinder + Central fuel hole in graphite element. + fuel : openmc.Material + Fuel salt material + moder : openmc.Material + Graphite material + optimized : bool + Flag indicating whether or not to construct 'optimized' geometry + with cell regions consiting only of :class:`openmc.Intersection` + objects. This will speed up any calculations by around 50%, and is thus + optimized. + + Returns + ------- + cr : openmc.Universe + Univerese for control rod element with control rod fully insterted. + """ + s1 = openmc.ZCylinder(r=4.7625, name='control_rod') c1 = openmc.Cell(fill=moder, region=-s1, name='control_rod') @@ -22,12 +53,43 @@ def control_rod(gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole, fuel, mode #universe_id=3 cr = openmc.Universe(name='control_rod', cells=[c1, c2, c3, c4]) - for (reg, name) in gr_corners: + for (reg, name) in gr_extra_regions: cr.add_cell(openmc.Cell(fill=moder, region=reg, name=f'cr_moderator_{name}')) return cr -def control_rod_channel(gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole, fuel, moder, optimized): +def control_rod_channel(gr_sq_neg, gr_extra_regions, inter_elem_channel, fuel_hole, fuel, moder, optimized): + """Create universe for control rod element with control rod fully withdrawn. + Based on specification in Roberton, 1971. + + Parameters + ---------- + gr_sq_neg : openmc.Intersection + The region bounding the outer surface of the 6 in. x 6 in. graphite + element. + gr_extra_regions : list of (openmc.Region, str) + 'Add-on' regions and their names for the graphite element. + Includes ribs, rib tips, and gap-filling regions. + inter_elem_channel : openmc.Region, list of (openmc.Region, str) + Inter-element channel region(s). + fuel_hole : openmc.ZCylinder + Central fuel hole in graphite element. + fuel : openmc.Material + Fuel salt material + moder : openmc.Material + Graphite material + optimized : bool + Flag indicating whether or not to construct 'optimized' geometry + with cell regions consiting only of :class:`openmc.Intersection` + objects. This will speed up any calculations by around 50%, and is thus + optimized. + + Returns + ------- + crc : openmc.Universe + Universe for control rod element with control rod fully withdrawn. + """ + c1 = openmc.Cell(fill=fuel, region=(-fuel_hole), name='crc_fuel_inner') if optimized: @@ -45,7 +107,7 @@ def control_rod_channel(gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole, fu # universe_id=4 crc = openmc.Universe(name='control_rod_channel', cells=[c1, c2, c3]) - for (reg, name) in gr_corners: + for (reg, name) in gr_extra_regions: crc.add_cell(openmc.Cell(fill=moder, region=reg, name=f'crc_moderator_{name}')) diff --git a/examples/msbr/_core_elements.py b/examples/msbr/_core_elements.py index 4386d1a89..3a2ae54be 100644 --- a/examples/msbr/_core_elements.py +++ b/examples/msbr/_core_elements.py @@ -26,8 +26,40 @@ def _bound_zone_cells(cells_tuples, levels): cell_list.append(cell) return cell_list -def zoneIA(gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4, moder, fuel, hast, optimized): - """Zone IA element. Specs found in Robertson, 1971 Fig 3.4 (p. 17)""" +def zoneIA(gr_sq_neg, gr_extra_regions, inter_elem_channel, gr_round_4, moder, fuel, hast, optimized): + """Create universe for Zone IA element. Based on specification in + Robertson, 1971 Fig 3.4 (p. 17) + + Parameters + ---------- + gr_sq_neg : openmc.Intersection + The region bounding the outer surface of the 4 in. x 4 in. graphite + element. + gr_extra_regions : list of (openmc.Region, str) + 'Add-on' regions and their names for the graphite element. + Includes ribs, rib tips, and gap-filling regions. + inter_elem_channel : openmc.Region, list of (openmc.Region, str) + Inter-element channel region(s). + gr_round_4 : openmc.ZCylinder + Outer bounding surface for cylindrical graphite in uppermost part of + element. + fuel : openmc.Material + Fuel salt material + moder : openmc.Material + Graphite material + hast : openmc.Material + Hastelloy-N material. + optimized : bool + Flag indicating whether or not to construct 'optimized' geometry + with cell regions consiting only of :class:`openmc.Intersection` + objects. This will speed up any calculations by around 50%, and is thus + optimized. + + Returns + ------- + ia : openmc.Universe + Universe for Zone IA element. + """ elem_levels = [22.86, 419.10, 438.15, 445.135] level_bounds = [] for level in elem_levels: @@ -60,7 +92,7 @@ def zoneIA(gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4, moder, fuel, h c6 = openmc.Cell(fill=fuel, region=(~gr_sq_neg & inter_elem_channel), name='ia_fuel_outer_main') iam = [c4, c5, c6] - for (reg, name) in gr_corners: + for (reg, name) in gr_extra_regions: iam.append(openmc.Cell(fill=moder, region=reg, name=f'ia_moderator_main_{name}')) @@ -97,8 +129,41 @@ def zoneIA(gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4, moder, fuel, h ia.add_cells(_bound_zone_cells(elem_cells, level_bounds)) return ia -def zoneIIA(gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4, moder, fuel, optimized): - """Zone IIA element. Specs found in Robertson, 1971 Fig 3.5 (p. 18)""" +def zoneIIA(gr_sq_neg, gr_extra_regions, inter_elem_channel, gr_round_4, moder, fuel, optimized): + """Create universe for Zone IIA element. Based on specification in + Robertson, 1971 Fig 3.5 (p. 18) + + Parameters + ---------- + gr_sq_neg : openmc.Intersection + The region bounding the outer surface of the 4 in. x 4 in. graphite + element. + gr_extra_regions : list of (openmc.Region, str) + 'Add-on' regions and their names for the graphite element. + Includes ribs, rib tips, and gap-filling regions. + inter_elem_channel : openmc.Region, list of (openmc.Region, str) + Inter-element channel region(s). + gr_round_4 : openmc.ZCylinder + Outer bounding surface for cylindrical graphite in uppermost part of + element. + fuel : openmc.Material + Fuel salt material + moder : openmc.Material + Graphite material + hast : openmc.Material + Hastelloy-N material. + optimized : bool + Flag indicating whether or not to construct 'optimized' geometry + with cell regions consiting only of :class:`openmc.Intersection` + objects. This will speed up any calculations by around 50%, and is thus + optimized. + + Returns + ------- + iia : openmc.Universe + Universe for Zone IIA element. + """ + elem_levels = [434.34, 436.88, 439.42, 441.96] level_bounds = [] for level in elem_levels: @@ -127,7 +192,7 @@ def zoneIIA(gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4, moder, fuel, c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg), name='iia_moderator_2_core') iia2 = [c4, c5] - for (reg, name) in gr_corners: + for (reg, name) in gr_extra_regions: iiam.append(openmc.Cell(fill=moder, region=reg, name=f'iia_moderator_main_{name}')) iia2.append(openmc.Cell(fill=moder, region=(reg), name=f'iia_moderator_main_{name}')) for (reg, name) in inter_elem_channel: @@ -146,7 +211,7 @@ def zoneIIA(gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4, moder, fuel, c6.name = 'iia_fuel_outer_2' iia2 = [c4, c5, c6] - for (reg, name) in gr_corners: + for (reg, name) in gr_extra_regions: iiam.append(openmc.Cell(fill=moder, region=reg, name=f'iia_moderator_main_{name}')) iia2.append(openmc.Cell(fill=moder, region=reg, name=f'iia_moderator_2_{name}')) @@ -176,13 +241,36 @@ def zoneIIA(gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4, moder, fuel, return iia def void_cell(): + """Creates a void cell universe for filling unused parts of core lattice. + + Returns + ------- + v : openmc.Universe + Void universe + """ c1 = openmc.Cell(name='lattice_void') #universe_id=5 v = openmc.Universe(name='lattice_void') v.add_cell(c1) return v -def graphite_triangles(moder, fuel): +def graphite_triangles(fuel, moder): + """Creates triangular prism elements that fill in 90-degree corners + on the outermost layer of Zone IIA, + + Parameters + ---------- + fuel : openmc.Material + Fuel salt material + moder : openmc.Material + Graphite material + + Returns + ------- + tri_univs : list of openmc.Universe + Universes for graphite trangular prism elements. + + """ s1 = openmc.Plane(1.0, 1.0, 0.0, 0.0) s2 = openmc.Plane(-1.0, 1.0, 0.0, 0.0) s3 = openmc.Plane(1.0, -1.0, 0.0, 0.0) @@ -191,12 +279,12 @@ def graphite_triangles(moder, fuel): (s1, 'top_right'), (s2, 'top_left'), (s3, 'bottom_right')] - univs = [] + tri_univs = [] for i, (s, name) in enumerate(surfs): c1 = openmc.Cell(fill=moder, region=(-s)) c2 = openmc.Cell(fill=fuel, region=(+s)) # universe_id = 6+i gr_tri = openmc.Universe(name=f'{name}_triangle') gr_tri.add_cells([c1, c2]) - univs.append(gr_tri) - return univs + tri_univs.append(gr_tri) + return tri_univs diff --git a/examples/msbr/_root_geometry.py b/examples/msbr/_root_geometry.py index 81aa55822..c18351b48 100644 --- a/examples/msbr/_root_geometry.py +++ b/examples/msbr/_root_geometry.py @@ -2,6 +2,20 @@ import numpy as np def shared_root_geometry(): +"""Creates surfaces and regions for root geometry. + + Returns + ------- + zone_bounds : tuple + Tuple containing zone bounding surfaces + core_bounds : list of openmc.Surface + List of reactor core bounding surfaces + reflector_bounds : list of openmc.Surface + List of reflector boundng surfaces + vessel_bounds : list of openmc.Surface + List of reactor vessel bounding surfaces + + """ cr_boundary = openmc.model.rectangular_prism(15.24*2, 15.24*2) core_base = openmc.ZPlane(z0=0.0, name='core_base') core_top = openmc.ZPlane(z0=449.58, name='core_top') @@ -35,7 +49,36 @@ def shared_root_geometry(): return zone_bounds, core_bounds, reflector_bounds, vessel_bounds -def zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top, moder, fuel, optimized): +def zoneIIB(zone_i_boundary, zone_ii_boundary, core_base, core_top, fuel, moder, optimized): + """ Creates Zone IIB graphite slab elements. + + Parameters + ---------- + zone_i_boundary : 3-tuple of openmc.model.IsogonalOctagon + Zone I bounding surfaces in the xy-plane + zone_ii_boundary : openmc.ZCylinder + Zone II bounding surface in the xy-plance + core_base : openmc.ZPlane + Core bottom bounding surface. + core_top : openmc.ZPlane + Core top bounding surface. + fuel : openmc.Material + Fuel salt material + moder : openmc.Material + Graphite material + optimized : bool + Flag indicating whether or not to construct 'optimized' geometry + with cell regions consiting only of :class:`openmc.Intersection` + objects. This will speed up any calculations by around 50%, and is thus + optimized. + + Returns + ------- + iib_cells : list of openmc.Cell + Cells containing graphite slabs in Zone IIB. + """ + + # Large elements large_angular_width = 3.538 large_half_w = large_angular_width / 2 @@ -177,11 +220,49 @@ def zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core return iib_cells def annulus(zone_ii_boundary, annulus_boundary, core_base, core_top, fuel): + """ Creates annulus cell. + + Parameters + ---------- + zone_ii_boundary : openmc.ZCylinder + Zone II bounding surfaces in the xy-plane + annulus_boundary : openmc.ZCylinder + Annulus bounding surface in the xy-plance + core_base : openmc.ZPlane + Core bottom bounding surface. + core_top : openmc.ZPlane + Core top bounding surface. + fuel : openmc.Material + Fuel salt material + + Returns + ------- + c1 : openmc.Cell + Annulus cell. + """ annulus_reg = +zone_ii_boundary & -annulus_boundary & +core_base & -core_top c1 = openmc.Cell(fill=fuel, region=annulus_reg, name='annulus') return c1 def lower_plenum(core_base, lower_plenum_boundary, annulus_boundary, fuel): + """ Creates lower plenum cell. + + Parameters + ---------- + core_base : openmc.ZPlane + Core bottom bounding surface. + lower_plenum_boundary : openmc.ZPlane + Lower plenum bottom bounding surface. + annulus_boundary : openmc.ZCylinder + Annulus bounding surface in the xy-plance + fuel : openmc.Material + Fuel salt material + + Returns + ------- + c1 : openmc.Cell + Lower plenum cell + """ lower_plenum_reg = -core_base & +lower_plenum_boundary & -annulus_boundary c1 = openmc.Cell(fill=fuel, region=lower_plenum_reg, name='lower_plenum') return c1 @@ -193,6 +274,34 @@ def reflectors(annulus_boundary, core_top, top_reflector_boundary, moder): + """ Creates graphite reflector cells. + + Parameters + ---------- + annulus_boundary : openmc.ZCylinder + Annulus bounding surface in the xy-plance + radial_reflector_boundary : openmc.ZCylinder + Reflector bounding surface in the xy-plance + lower_plenum_boundary : openmc.ZPlane + Lower plenum bottom bounding surface. + bottom_reflector_boundary : openmc.ZPlane + Reflector bottom bounding surface. + core_top : openmc.ZPlane + Core top bounding surface. + top_reflector_boundary : openmc.ZPlane + Reflector top bounding surface. + moder : openmc.Material + Graphite material + + Returns + ------- + c1 : openmc.Cell + Radial reflector. + c2 : openmc.Cell + Bottom axial reflector. + c3 : openmc.Cell + Top axial reflector. + """ radial_reflector_reg = +annulus_boundary & -radial_reflector_boundary & +bottom_reflector_boundary & -top_reflector_boundary bottom_reflector_reg = -annulus_boundary & -lower_plenum_boundary & +bottom_reflector_boundary top_reflector_reg = -annulus_boundary & +core_top & -top_reflector_boundary @@ -209,6 +318,34 @@ def vessel(radial_reflector_boundary, top_reflector_boundary, bottom_reflector_boundary, hast): + """ Creates reactor vessel cells. + + Parameters + ---------- + radial_reflector_boundary : openmc.ZCylinder + Reflector bounding surface in the xy-plance + radial_vessel_boundary : openmc.ZCylinder + Vessel bounding surface in the xy-plane + bottom_vessel_boundary : openmc.ZPlane + Vessel bottom bounding surface. + top_vessel_boundary : openmc.ZPlane + Vessel top bounding surface. + top_reflector_boundary : openmc.ZPlane + Reflector top bounding surface. + bottom_reflector_boundary : openmc.ZPlane + Reflector bottom bounding surface. + hast : openmc.Material + Hastelloy-N material + + Returns + ------- + c1 : openmc.Cell + Radial vessel wall. + c2 : openmc.Cell + Bottom vessel wall. + c3 : openmc.Cell + Top vessel wall. + """ radial_vessel_reg = +radial_reflector_boundary & -radial_vessel_boundary & -top_vessel_boundary & +bottom_vessel_boundary bottom_vessel_reg = -radial_reflector_boundary & -bottom_reflector_boundary & +bottom_vessel_boundary top_vessel_reg = -radial_reflector_boundary & -top_vessel_boundary & +top_reflector_boundary diff --git a/examples/msbr/openmc_model.py b/examples/msbr/openmc_model.py index 30a02063f..4450ff95c 100644 --- a/examples/msbr/openmc_model.py +++ b/examples/msbr/openmc_model.py @@ -40,12 +40,15 @@ def parse_arguments(): """Parses arguments from command line. - Parameters - ---------- - Returns ------- - + optimized : bool + Flag indicating whether or not to construct 'optimized' geometry + with cell regions consiting only of :class:`openmc.Intersection` + objects. This will speed up any calculations by around 50%, and is thus + optimized. + deplete : bool + Flag indicated whether or not to run a depletion simulation. """ parser = argparse.ArgumentParser() parser.add_argument('--optimized', @@ -61,54 +64,96 @@ def parse_arguments(): args = parser.parse_args() return bool(args.optimized), bool(args.deplete) -def shared_elem_geometry(elem_type, gr_sq_d, gr_sq_r, r_dt, l1, l2, l3, r_es, es_name, optimized): - """Surfaces and regions shared by Zone IA and Zone IIA elements. - Specs found in Robertson, 1971 Fig 3.4 (p. 17) and Fig 3.5 (p.18)""" - #elem_bound = openmc.rectangular_prism(eb_d*2, eb_d*2) # Pin outer boundary - gr_sq_neg = openmc.rectangular_prism(gr_sq_d*2, gr_sq_d*2, corner_radius=gr_sq_r) # Graphite square +def shared_elem_geometry(elem_type, gr_sq_d, gr_sq_r, r_rib, l1, l2, l3, r_es, es_name, optimized): + """Creates surfaces and regions for lattice elements. - ul_t = openmc.ZCylinder(-l1, -l3, r_dt, name='corner_ul_tip') - br_t = openmc.ZCylinder(l1, l3, r_dt, name='corner_br_tip') - ru_t = openmc.ZCylinder(-l3, l1, r_dt, name='corner_ru_tip') - lb_t = openmc.ZCylinder(l3, -l1, r_dt, name='corner_lb_tip') + Parameters + ---------- + elem_type : 'core', 'cr' + Indicates the type of element. 'core' inidcates for Zones IA and IIA. + 'cr' indicates control rod. + gr_sq_d : float + Half-width of graphite square element in cm. + gr_sq_r : float + Radius of graphite square rounded corners in cm. + r_rib : float + Radius of graphite element rib section. + l1 : float + Coordinate used to position graphite element ribs and rib tips. + l2 : float + Coordinate used to position graphite element ribs. + l3 : float + Coordinate used to position graphite element rib tips. + r_es : float + Radius of extra cylindrical surface used for element + es_name : str + Name of extra cylindrical surface. + optimized : bool + Flag indicating whether or not to construct 'optimized' geometry + with cell regions consiting only of :class:`openmc.Intersection` + objects. This will speed up any calculations by around 50%, and is thus + optimized. - if optimized: - #eb_minx, eb_maxx, eb_miny, eb_maxy = list(elem_bound.get_surfaces().values()) + Returns + ------- + gr_sq_neg : openmc.Intersection + The region bounding the outer surface of the graphite + element. + gr_extra_regions : list of (openmc.Region, str) + 'Add-on' regions and their names for the graphite element. + Includes ribs, rib tips, and gap-filling regions. + inter_elem_channel : openmc.Region, list of (openmc.Region, str) + Inter-element channel region(s) + extra_surf : openmc.ZCylinder + Extra cylindrical surface used in the element. + """ + # Square graphite element + gr_sq_neg = openmc.rectangular_prism(gr_sq_d*2, + gr_sq_d*2, + corner_radius=gr_sq_r) - gr_sq_neg = openmc.rectangular_prism(gr_sq_d*2, gr_sq_d*2, corner_radius=gr_sq_r) # Graphite square + # Rib tip surfaces + ul_t = openmc.ZCylinder(-l1, -l3, r_rib, name='rib_ul_tip') + br_t = openmc.ZCylinder(l1, l3, r_rib, name='rib_br_tip') + ru_t = openmc.ZCylinder(-l3, l1, r_rib, name='rib_ru_tip') + lb_t = openmc.ZCylinder(l3, -l1, r_rib, name='rib_lb_tip') + + if optimized: + # Split the graphite square region into component surfaces (gr_minx, gr_maxx, gr_miny, gr_maxy, gr_cyl_lb, gr_cyl_minx, gr_cyl_miny, gr_cyl_ul, gr_cyl_maxy, gr_cyl_br, gr_cyl_maxx, gr_cyl_ru) = list(gr_sq_neg.get_surfaces().values()) - # remaining square + # The 'core' graphite square region gr_sq_neg = +gr_minx & -gr_maxx & +gr_cyl_miny & -gr_cyl_maxy - # create separating rod tip regions - gr_ul_t = -ul_t - gr_br_t = -br_t - gr_ru_t = -ru_t - gr_lb_t = -lb_t + # Graphite element rib tip regions + rib_ul_t = -ul_t + rib_br_t = -br_t + rib_ru_t = -ru_t + rib_lb_t = -lb_t if elem_type == 'core': - # for main pin section for both I-A and II-A - ul = openmc.ZCylinder(-l1, l2, r_dt, name='corner_ul') - br = openmc.ZCylinder(l1, -l2, r_dt, name='corner_br') - lb = openmc.ZCylinder(-l2, -l1, r_dt, name='corner_lb') - ru = openmc.ZCylinder(l2, l1, r_dt, name='corner_ru') + # Graphite element ribs for zones I-A and II-A + ul = openmc.ZCylinder(-l1, l2, r_rib, name='rib_ul') + br = openmc.ZCylinder(l1, -l2, r_rib, name='rib_br') + lb = openmc.ZCylinder(-l2, -l1, r_rib, name='rib_lb') + ru = openmc.ZCylinder(l2, l1, r_rib, name='rib_ru') if optimized: - # corner regions - gr_ul = -ul & +gr_maxy - gr_ul_fill = -ul & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy - gr_br = -br & -gr_miny - gr_br_fill = -br & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny - gr_lb = -lb & -gr_minx - gr_lb_fill = -lb & +gr_cyl_lb & +gr_minx & -gr_cyl_minx & -gr_cyl_miny - gr_ru = -ru & +gr_maxx - gr_ru_fill = -ru & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxx & +gr_cyl_maxy - - # inter-element channel regions + # Graphite element rib regions. 'fill' regions fill in the gap between + # the rounded corner and the 'main' rib. + rib_ul = -ul & +gr_maxy + rib_ul_fill = -ul & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy + rib_br = -br & -gr_miny + rib_br_fill = -br & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny + rib_lb = -lb & -gr_minx + rib_lb_fill = -lb & +gr_cyl_lb & +gr_minx & -gr_cyl_minx & -gr_cyl_miny + rib_ru = -ru & +gr_maxx + rib_ru_fill = -ru & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxx & +gr_cyl_maxy + + # inter-element fuel channel regions iec_r = +gr_cyl_miny & -gr_cyl_maxy & +gr_maxx & +lb_t & +ru & +gr_cyl_ru iec_ru = (+gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy) & +ru & +br_t iec_u = +gr_cyl_minx & -gr_cyl_maxx & +gr_maxy & +br_t & +ul & +gr_cyl_ul @@ -123,25 +168,29 @@ def shared_elem_geometry(elem_type, gr_sq_d, gr_sq_r, r_dt, l1, l2, l3, r_es, es [iec_l, 'outer_l'], [iec_lb, 'outer_lb'], [iec_b, 'outer_b'], [iec_br, 'outer_br']] else: - gr_ul = -ul - gr_br = -br - gr_lb = -lb - gr_ru = -ru + # Graphite element rib regions. + rib_ul = -ul + rib_br = -br + rib_lb = -lb + rib_ru = -ru + # inter-element fuel channel region inter_elem_channel = +ul & +br & +lb & +ru elif elem_type == 'cr': - # params for control rods + # Parameters for control rod element r_d = 1.16 e_d = 2 * r_d / np.sqrt(3) r_c = 0.18 + # Base rib region ul = openmc.model.hexagonal_prism(origin=(-l1, l2), edge_length=e_d, orientation='x', corner_radius=r_c) br = openmc.model.hexagonal_prism(origin=(l1, -l2), edge_length=e_d, orientation='x',corner_radius=r_c) lb = openmc.model.hexagonal_prism(origin=(-l2, -l1), edge_length=e_d, orientation='y',corner_radius=r_c) ru = openmc.model.hexagonal_prism(origin=(l2, l1), edge_length=e_d, orientation='y',corner_radius=r_c) if optimized: + # Split base rib region into component surfaces (ul_u, ul_b, ul_ur, ul_br, ul_bl, ul_ul, ul_cyl_bl_in, ul_cyl_bl_out, ul_cyl_ul_in, ul_cyl_ul_out, @@ -171,17 +220,19 @@ def shared_elem_geometry(elem_type, gr_sq_d, gr_sq_r, r_dt, l1, l2, l3, r_es, es ru_cyl_b_in, ru_cyl_b_out, ru_cyl_u_in, ru_cyl_u_out)= list(ru.get_surfaces().values()) - # corner regions - gr_ul = -ul_ul & -ul_ur & +gr_maxy - gr_ul_fill = -ul_ul & +ul_bl & +ul_cyl_l_out & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy - gr_lb = +lb_bl & -lb_ul & -gr_minx - gr_lb_fill = +lb_bl & +lb_br & +lb_cyl_b_out & +gr_cyl_lb & +gr_minx & -gr_cyl_miny & -gr_cyl_minx - gr_br = +br_br & +br_bl & -gr_miny - gr_br_fill = +br_br & -br_ur & +br_cyl_r_out & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny - gr_ru = +ru_br & -ru_ur & +gr_maxx - gr_ru_fill = -ru_ur & -ru_ul & +ru_cyl_u_out & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxy & +gr_cyl_maxx - - # inter-element channel regions + # Graphite element rib regions. 'fill' regions fill in the gap + # between the rounded element corner and the 'main' rib. + rib_ul = -ul_ul & -ul_ur & +gr_maxy + rib_ul_fill = -ul_ul & +ul_bl & +ul_cyl_l_out & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy + rib_lb = +lb_bl & -lb_ul & -gr_minx + rib_lb_fill = +lb_bl & +lb_br & +lb_cyl_b_out & +gr_cyl_lb & +gr_minx & -gr_cyl_miny & -gr_cyl_minx + rib_br = +br_br & +br_bl & -gr_miny + rib_br_fill = +br_br & -br_ur & +br_cyl_r_out & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny + rib_ru = +ru_br & -ru_ur & +gr_maxx + rib_ru_fill = -ru_ur & -ru_ul & +ru_cyl_u_out & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxy & +gr_cyl_maxx + + # Inter-element channel regions. 'fill' regions fill in the gap + # between the rounded element corner and the 'main' rib iec_r = +gr_cyl_miny & +gr_maxx & +lb_t & -ru_br iec_ru_main = +gr_cyl_ru & (+ru_ur) & +br_t iec_ru_fill1 = +gr_cyl_ru & +gr_cyl_maxx & (+ru_ul & -ru_ur) & +br_t @@ -208,37 +259,33 @@ def shared_elem_geometry(elem_type, gr_sq_d, gr_sq_r, r_dt, l1, l2, l3, r_es, es [iec_br_fill1, 'outer_br_fill1'], [iec_br_fill2, 'outer_br_fill2']] else: - gr_ul = ul - gr_lb = br - gr_br = lb - gr_ru = ru + rib_ul = ul + rib_lb = br + rib_br = lb + rib_ru = ru inter_elem_channel = ~ul & ~br & ~lb & ~ru - gr_corners = [[gr_ul, 'ul'], [gr_br, 'br'], [gr_ru, 'ru'], [gr_lb, 'lb'], - [gr_ul_t, 'ul_t'], [gr_br_t, 'br_t'], [gr_ru_t, 'ru_t'], [gr_lb_t, 'lb_t']] + ribs = [[rib_ul, 'rib_ul'], [rib_br, 'rib_br'], [rib_ru, 'rib_ru'], [rib_lb, 'rib_lb'], + [rib_ul_t, 'rib_ul_t'], [rib_br_t, 'rib_br_t'], [rib_ru_t, 'rib_ru_t'], [rib_lb_t, 'rib_lb_t']] if optimized: - gr_corners += [[gr_ul_fill, 'ul_fill'], [gr_br_fill, 'br_fill'], [gr_ru_fill, 'ru_fill'], [gr_lb_fill, 'lb_fill']] + ribs += [[rib_ul_fill, 'rib_ul_fill'], [rib_br_fill, 'rib_br_fill'], [rib_ru_fill, 'rib_ru_fill'], [rib_lb_fill, 'rib_lb_fill']] - # slabs that line up with rounded edges + # Rectangular slabs regions that line up with rounded corners slab_u = -gr_maxy & +gr_cyl_maxy & -gr_cyl_maxx & +gr_cyl_minx - #slab_l = +gr_minx & -gr_cyl_minx & -gr_cyl_maxy & +gr_cyl_miny slab_b = +gr_miny & -gr_cyl_miny & -gr_cyl_maxx & +gr_cyl_minx - #slab_r = -gr_maxx & +gr_cyl_maxx & -gr_cyl_maxy & +gr_cyl_miny slabs = [[slab_u, 'slab_u'], - #[slab_l, 'slab_l'], [slab_b, 'slab_b']] - #[slab_r, 'slab_r']] - # the rounded edges themselves - quarter_ul = -gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy - quarter_br = -gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny - quarter_lb = -gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny - quarter_ru = -gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy - quarters = [[quarter_ul, 'quarter_ul'], [quarter_br, 'quarter_br'], [quarter_ru, 'quarter_ru'], [quarter_lb, 'quarter_lb']] + # Rounded corner regions + corner_ul = -gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy + corner_br = -gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny + corner_lb = -gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny + corner_ru = -gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy + corners = [[quarter_ul, 'quarter_ul'], [quarter_br, 'quarter_br'], [quarter_ru, 'quarter_ru'], [quarter_lb, 'quarter_lb']] - gr_corners= slabs + quarters + gr_corners + gr_extra_regions= slabs + corners + ribs else: inter_elem_channel = inter_elem_channel & +ul_t & +br_t & +ru_t & +lb_t @@ -246,16 +293,38 @@ def shared_elem_geometry(elem_type, gr_sq_d, gr_sq_r, r_dt, l1, l2, l3, r_es, es extra_surf = openmc.ZCylinder(r=r_es, name=es_name) - return gr_sq_neg, gr_corners, inter_elem_channel, extra_surf + return gr_sq_neg, gr_extra_regions, inter_elem_channel, extra_surf def cr_lattice(cr_boundary, core_base, core_top, optimized): - gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole = shared_elem_geometry('cr', 7.23645, 0.99, 0.8, 5.8801, 6.505, 8.03646, 5.08, 'cr_fuel_hole', optimized) + """Creates the control rod lattice. + + Parameters + ---------- + cr_boundary : openmc.Intersection + Outer bound of the lattice in the xy-plane. + core_base : openmc.ZPlane + Core bottom bounding surface. + core_top : openmc.ZPlane + Core top bounding surface. + optimized : bool + Flag indicating whether or not to construct 'optimized' geometry + with cell regions consiting only of :class:`openmc.Intersection` + objects. This will speed up any calculations by around 50%, and is thus + optimized. + + Returns + ------- + c1 : openmc.Cell + Cell containing the control rod lattice. + + """ + gr_sq_neg, gr_extra_regions, inter_elem_channel, fuel_hole = shared_elem_geometry('cr', 7.23645, 0.99, 0.8, 5.8801, 6.505, 8.03646, 5.08, 'cr_fuel_hole', optimized) - f = control_rod(gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole, fuel, moder, optimized) + f = control_rod(gr_sq_neg, gr_extra_regions, inter_elem_channel, fuel_hole, fuel, moder, optimized) if optimized: # call a second time to have unique surfaces - gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole = shared_elem_geometry('cr', 7.23645, 0.99, 0.8, 5.8801, 6.505, 8.03646, 5.08, 'cr_fuel_hole', optimized) - e = control_rod_channel(gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole, fuel, moder, optimized) + gr_sq_neg, gr_extra_regions, inter_elem_channel, fuel_hole = shared_elem_geometry('cr', 7.23645, 0.99, 0.8, 5.8801, 6.505, 8.03646, 5.08, 'cr_fuel_hole', optimized) + e = control_rod_channel(gr_sq_neg, gr_extra_regions, inter_elem_channel, fuel_hole, fuel, moder, optimized) cr = openmc.RectLattice() cr.pitch = np.array([15.24, 15.24]) @@ -268,13 +337,42 @@ def cr_lattice(cr_boundary, core_base, core_top, optimized): return c1 def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): - gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4 = shared_elem_geometry('core', 4.953, 0.46, 0.66802, 4.28498, 4.53898, 5.62102, 2.2225, 'gr_round_4', optimized) - l = zoneIA(gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4, moder, fuel, hast, optimized) - gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4 = shared_elem_geometry('core', 4.953, 0.46, 0.66802, 4.28498, 4.53898, 5.62102, 2.2225, 'gr_round_4', optimized) - z = zoneIIA(gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4, moder, fuel, optimized) + """Creates the core lattice. + + Parameters + ---------- + zone_i_boundary : 3-tuple of openmc.model.IsogonalOctagon + Zone I bounding surfaces in the xy-plane + cr_boundary : openmc.Intersection + Outer bound of the lattice in the xy-plane. + core_base : openmc.ZPlane + Core bottom bounding surface. + core_top : openmc.ZPlane + Core top bounding surface. + optimized : bool + Flag indicating whether or not to construct 'optimized' geometry + with cell regions consiting only of :class:`openmc.Intersection` + objects. This will speed up any calculations by around 50%, and is thus + optimized. + + Returns + ------- + main_cells : list of openmc.Cell + Cells containing the main lattice. + + """ optimized : bool + Flag indicating whether or not to construct 'optimized' geometry + with cell regions consiting only of :class:`openmc.Intersection` + objects. This will speed up any calculations by around 50%, and is thus + optimized. + + gr_sq_neg, gr_extra_regions, inter_elem_channel, gr_round_4 = shared_elem_geometry('core', 4.953, 0.46, 0.66802, 4.28498, 4.53898, 5.62102, 2.2225, 'gr_round_4', optimized) + l = zoneIA(gr_sq_neg, gr_extra_regions, inter_elem_channel, gr_round_4, moder, fuel, hast, optimized) + gr_sq_neg, gr_extra_regions, inter_elem_channel, gr_round_4 = shared_elem_geometry('core', 4.953, 0.46, 0.66802, 4.28498, 4.53898, 5.62102, 2.2225, 'gr_round_4', optimized) + z = zoneIIA(gr_sq_neg, gr_extra_regions, inter_elem_channel, gr_round_4, moder, fuel, optimized) v = void_cell() # tres, uno, dos, quatro - t, u, d, q = graphite_triangles(moder, fuel) + t, u, d, q = graphite_triangles(fuel, moder) s1, s2, s3 = zone_i_boundary @@ -334,6 +432,7 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): oct3_maxy, oct3_miny, oct3_maxx, oct3_minx, oct3_ur, oct3_br, oct3_bl, oct3_ul = list((-s3).get_surfaces().values()) cb_minx, cb_maxx, cb_miny, cb_maxy = list(cr_boundary.get_surfaces().values()) + # Smaller octader subcells c1_ur = (-oct3_ur & +oct2_ur & -oct2_maxx & -oct2_maxy) c1_ul = (+oct3_ul & -oct2_ul & +oct2_minx & -oct2_maxy) c1_bl = (+oct3_bl & -oct2_bl & +oct2_minx & +oct2_miny) @@ -343,6 +442,7 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): [c1_bl, 'smaller_octader_bl'], [c1_br, 'smaller_octader_br']] + # Smallest octader subcells c2_r = (+cb_maxx & +cb_miny & -cb_maxy & -oct3_maxx) c2_ur = (+cb_maxx & +cb_maxy & -oct3_maxx & -oct3_maxy & +oct3_ur) c2_u = (+cb_maxy & +cb_minx & -cb_maxx & -oct3_maxy) @@ -360,6 +460,7 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): [c2_b, 'smallest_octader_b'], [c2_br, 'smallest_octader_br']] + # Base octader subcells c3_ur = (-oct2_ur & +oct1_ur & -oct1_maxx & -oct1_maxy) c3_ul = (+oct2_ul & -oct1_ul & +oct1_minx & -oct1_maxy) c3_bl = (+oct2_bl & -oct1_bl & +oct1_minx & +oct1_miny) @@ -372,7 +473,7 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): regs = c1 + c2 + c3 main_cells = [] for reg, name in regs: - main_cells.append(openmc.Cell(fill=main, region=(reg & +core_base & -core_top), name=name)) + main_cells.append(openmc.Cell(fill=main, region=(reg & +core_base & -core_top), name=f'main_lattice_{name}')) else: c1 = openmc.Cell(fill=main, region=(+core_base & -core_top & @@ -397,7 +498,7 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): main = main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized) cr = cr_lattice(cr_boundary, core_base, core_top, optimized) -iib = zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top, moder, fuel, optimized) +iib = zoneIIB(zone_i_boundary, zone_ii_boundary, core_base, core_top, fuel, moder, optimized) a = annulus(zone_ii_boundary, annulus_boundary, core_base, core_top, fuel) lp = lower_plenum(core_base, lower_plenum_boundary, annulus_boundary, fuel) @@ -675,6 +776,7 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): plots.export_to_xml() if deplete: + # Serpent fission q values fiss_q = { "Am243": 212952778.98135212, "Cm246": 220179493.9541502, From 134648caf7ff1bbd6629d24121eb370b3fbf02b0 Mon Sep 17 00:00:00 2001 From: yardasol Date: Wed, 26 Oct 2022 13:12:40 -0500 Subject: [PATCH 25/62] remove notebooks --- examples/msbr/model-plotting-optimized.ipynb | 1221 ------------------ examples/msbr/model-plotting.ipynb | 989 -------------- 2 files changed, 2210 deletions(-) delete mode 100644 examples/msbr/model-plotting-optimized.ipynb delete mode 100644 examples/msbr/model-plotting.ipynb diff --git a/examples/msbr/model-plotting-optimized.ipynb b/examples/msbr/model-plotting-optimized.ipynb deleted file mode 100644 index 9c4d3b5ed..000000000 --- a/examples/msbr/model-plotting-optimized.ipynb +++ /dev/null @@ -1,1221 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": null, - "id": "bdbd4aaa", - "metadata": {}, - "outputs": [], - "source": [ - "import openmc\n", - "import numpy as np" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "56642afc", - "metadata": {}, - "outputs": [], - "source": [ - "# Create materials\n", - "fuel = openmc.Material(name='fuel')\n", - "fuel.set_density('g/cm3', density=3.35)\n", - "fuel.add_components({'Li7': 0.0787474673879085,\n", - " 'Be9': 0.0225566879138321,\n", - " 'F19': 0.454003012179284,\n", - " 'Th232': 0.435579130482336,\n", - " 'U233': 0.00911370203663893},\n", - " percent_type='wo')\n", - "fuel.depletable = True\n", - "fuel.volume = 48710000.0\n", - "\n", - "moder = openmc.Material(name='graphite', temperature=900.0)\n", - "moder.set_density('g/cm3', density=1.84)\n", - "moder.add_nuclide('C0', 1.000, percent_type='wo')\n", - "moder.add_s_alpha_beta('c_Graphite')\n", - "\n", - "hast = openmc.Material(name='hastelloyN', temperature=900.0)\n", - "hast.set_density('g/cm3', density=8.671)\n", - "hast.add_components({'Al27': 0.003,\n", - " 'Ni': 0.677,\n", - " 'W': 0.250,\n", - " 'Cr': 0.070},\n", - " percent_type='wo')\n", - "\n", - "mat = openmc.Materials(materials=[fuel, moder, hast])\n", - "mat.export_to_xml()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "5bf1ab77", - "metadata": {}, - "outputs": [], - "source": [ - "colormap = {moder: 'purple',\n", - " hast: 'blue',\n", - " fuel: 'yellow'}" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "3e341197", - "metadata": {}, - "outputs": [], - "source": [ - " def _bound_zone_cells(cells_tuples, levels):\n", - " \"\"\"Helper function that moves Zone IA and Zone IIA cells to the\n", - " appropriate height.\"\"\"\n", - " cell_list = []\n", - " n_levels = len(cells_tuples)\n", - " for i, cells in enumerate(cells_tuples):\n", - " if i == 0:\n", - " lower_bound = None\n", - " upper_bound = levels[i]\n", - " elif i == n_levels - 1:\n", - " lower_bound = levels[i-1]\n", - " upper_bound = None\n", - " else:\n", - " lower_bound = levels[i-1]\n", - " upper_bound = levels[i]\n", - " for j, cell in enumerate(cells):\n", - " if lower_bound is None:\n", - " cell.region = cell.region & -upper_bound\n", - " elif upper_bound is None:\n", - " cell.region = cell.region & +lower_bound\n", - " else:\n", - " cell.region = cell.region & +lower_bound & -upper_bound\n", - " cell_list.append(cell)\n", - " return cell_list\n", - "\n", - "def shared_elem_geometry(elem_type, eb_d, gr_sq_d, gr_sq_r, r_dt, l1, l2, l3, r_es, es_name):\n", - " \"\"\"Surfaces and regions shared by Zone IA and Zone IIA elements.\n", - " Specs found in Robertson, 1971 Fig 3.4 (p. 17) and Fig 3.5 (p.18)\"\"\"\n", - " elem_bound = openmc.rectangular_prism(eb_d*2, eb_d*2) # Pin outer boundary\n", - " eb_minx, eb_maxx, eb_miny, eb_maxy = list(elem_bound.get_surfaces().values())\n", - "\n", - " gr_sq_neg = openmc.rectangular_prism(gr_sq_d*2, gr_sq_d*2, corner_radius=gr_sq_r) # Graphite square\n", - " (gr_minx, gr_maxx, gr_miny, gr_maxy,\n", - " gr_cyl_lb, gr_cyl_minx, gr_cyl_miny,\n", - " gr_cyl_ul, gr_cyl_maxy, gr_cyl_br,\n", - " gr_cyl_maxx, gr_cyl_ru) = list(gr_sq_neg.get_surfaces().values())\n", - "\n", - " # remaining square\n", - " gr_sq_neg = +gr_minx & -gr_maxx & +gr_cyl_miny & -gr_cyl_maxy\n", - "\n", - " ul_t = openmc.ZCylinder(-l1, -l3, r_dt, name='corner_ul_tip')\n", - " br_t = openmc.ZCylinder(l1, l3, r_dt, name='corner_br_tip')\n", - " ru_t = openmc.ZCylinder(-l3, l1, r_dt, name='corner_ru_tip')\n", - " lb_t = openmc.ZCylinder(l3, -l1, r_dt, name='corner_lb_tip')\n", - "\n", - " if elem_type == 'core':\n", - " # for main pin section for both I-A and II-A\n", - " ul = openmc.ZCylinder(-l1, l2, r_dt, name='corner_ul')\n", - " br = openmc.ZCylinder(l1, -l2, r_dt, name='corner_br')\n", - " lb = openmc.ZCylinder(-l2, -l1, r_dt, name='corner_lb')\n", - " ru = openmc.ZCylinder(l2, l1, r_dt, name='corner_ru')\n", - "\n", - " # corner regions\n", - " gr_ul = -ul & +gr_maxy\n", - " gr_ul_fill = -ul & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy\n", - " gr_br = -br & -gr_miny\n", - " gr_br_fill = -br & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny\n", - " gr_lb = -lb & -gr_minx\n", - " gr_lb_fill = -lb & +gr_cyl_lb & +gr_minx & -gr_cyl_minx & -gr_cyl_miny\n", - " gr_ru = -ru & +gr_maxx\n", - " gr_ru_fill = -ru & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxx & +gr_cyl_maxy\n", - "\n", - " # inter-element channel regions\n", - " iec_r = +gr_cyl_miny & -gr_cyl_maxy & +gr_maxx & +lb_t & +ru & +gr_cyl_ru\n", - " iec_ru = (+gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy) & +ru & +br_t\n", - " iec_u = +gr_cyl_minx & -gr_cyl_maxx & +gr_maxy & +br_t & +ul & +gr_cyl_ul\n", - " iec_ul = (+gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy) & +ul & +ru_t\n", - " iec_l = +gr_cyl_miny & -gr_cyl_maxy & -gr_minx & +ru_t & +lb & +gr_cyl_lb\n", - " iec_lb = (+gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny) & +lb & +ul_t\n", - " iec_b = +gr_cyl_minx & -gr_cyl_maxx & -gr_miny & +ul_t & +br & +gr_cyl_br\n", - " iec_br = (+gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny) & +br & +lb_t\n", - " \n", - " inter_elem_channel = [[iec_r, 'outer_r'], [iec_ru, 'outer_ru'],\n", - " [iec_u, 'outer_u'], [iec_ul, 'outer_ul'],\n", - " [iec_l, 'outer_l'], [iec_lb, 'outer_lb'],\n", - " [iec_b, 'outer_b'], [iec_br, 'outer_br']]\n", - "\n", - " elif elem_type == 'cr':\n", - " # params for control rods\n", - " r_d = 1.16\n", - " e_d = 2 * r_d / np.sqrt(3)\n", - " r_c = 0.18\n", - "\n", - " ul = openmc.model.hexagonal_prism(origin=(-l1, l2), edge_length=e_d, orientation='x', corner_radius=r_c)\n", - " br = openmc.model.hexagonal_prism(origin=(l1, -l2), edge_length=e_d, orientation='x',corner_radius=r_c)\n", - " lb = openmc.model.hexagonal_prism(origin=(-l2, -l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", - " ru = openmc.model.hexagonal_prism(origin=(l2, l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", - "\n", - " (ul_u, ul_b, ul_ur, ul_br, ul_bl, ul_ul,\n", - " ul_cyl_bl_in, ul_cyl_bl_out,\n", - " ul_cyl_ul_in, ul_cyl_ul_out,\n", - " ul_cyl_br_in, ul_cyl_br_out,\n", - " ul_cyl_ur_in, ul_cyl_ur_out,\n", - " ul_cyl_l_in, ul_cyl_l_out,\n", - " ul_cyl_r_in, ul_cyl_r_out)= list(ul.get_surfaces().values())\n", - " (br_u, br_b, br_ur, br_br, br_bl, br_ul,\n", - " br_cyl_bl_in, br_cyl_bl_out,\n", - " br_cyl_ul_in, br_cyl_ul_out,\n", - " br_cyl_br_in, br_cyl_br_out,\n", - " br_cyl_ur_in, br_cyl_ur_out,\n", - " br_cyl_l_in, br_cyl_l_out,\n", - " br_cyl_r_in, br_cyl_r_out)= list(br.get_surfaces().values())\n", - " (lb_r, lb_l, lb_ur, lb_ul, lb_br, lb_bl,\n", - " lb_cyl_lb_in, lb_cyl_lb_out,\n", - " lb_cyl_lu_in, lb_cyl_lu_out,\n", - " lb_cyl_rb_in, lb_cyl_rb_out,\n", - " lb_cyl_ru_in, lb_cyl_ru_out,\n", - " lb_cyl_b_in, lb_cyl_b_out,\n", - " lb_cyl_u_in, lb_cyl_u_out)= list(lb.get_surfaces().values())\n", - " (ru_r, ru_l, ru_ur, ru_ul, ru_br, ru_bl,\n", - " ru_cyl_lb_in, ru_cyl_lb_out,\n", - " ru_cyl_lu_in, ru_cyl_lu_out,\n", - " ru_cyl_rb_in, ru_cyl_rb_out,\n", - " ru_cyl_ru_in, ru_cyl_ru_out,\n", - " ru_cyl_b_in, ru_cyl_b_out,\n", - " ru_cyl_u_in, ru_cyl_u_out)= list(ru.get_surfaces().values())\n", - "\n", - " # corner regions\n", - " gr_ul = -ul_ul & -ul_ur & +gr_maxy\n", - " gr_ul_fill = -ul_ul & +ul_bl & +ul_cyl_l_out & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy\n", - " gr_lb = +lb_bl & -lb_ul & -gr_minx\n", - " gr_lb_fill = +lb_bl & +lb_br & +lb_cyl_b_out & +gr_cyl_lb & +gr_minx & -gr_cyl_miny & -gr_cyl_minx\n", - " gr_br = +br_br & +br_bl & -gr_miny\n", - " gr_br_fill = +br_br & -br_ur & +br_cyl_r_out & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny\n", - " gr_ru = +ru_br & -ru_ur & +gr_maxx\n", - " gr_ru_fill = -ru_ur & -ru_ul & +ru_cyl_u_out & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxy & +gr_cyl_maxx\n", - "\n", - " # inter-element channel regions\n", - " iec_r = +gr_cyl_miny & +gr_maxx & +lb_t & -ru_br\n", - " iec_ru_main = +gr_cyl_ru & (+ru_ur) & +br_t\n", - " iec_ru_fill1 = +gr_cyl_ru & +gr_cyl_maxx & (+ru_ul & -ru_ur) & +br_t\n", - " iec_ru_fill2 = +gr_cyl_ru & ((-ru_cyl_u_out)) & -ru_ul & -ru_ur\n", - " iec_u = -gr_cyl_maxx & +gr_maxy & +br_t & +ul_ur\n", - " iec_ul_main = +gr_cyl_ul & (+ul_ul) & +ru_t\n", - " iec_ul_fill1 = +gr_cyl_ul & +gr_cyl_maxy & (-ul_bl & -ul_ul) & +ru_t\n", - " iec_ul_fill2 = +gr_cyl_ul & ((-ul_cyl_l_out)) & +ul_bl & -ul_ul\n", - " iec_l = -gr_cyl_maxy & -gr_minx & +ru_t & +lb_ul\n", - " iec_lb_main = +gr_cyl_lb & (-lb_bl) & +ul_t\n", - " iec_lb_fill1 = +gr_cyl_lb & -gr_cyl_minx & (-lb_br & +lb_bl) & +ul_t\n", - " iec_lb_fill2 = +gr_cyl_lb & ((-lb_cyl_b_out)) & +lb_br & +lb_bl\n", - " iec_b = +gr_cyl_minx & -gr_miny & +ul_t & -br_bl\n", - " iec_br_main = +gr_cyl_br & (-br_br) & +lb_t\n", - " iec_br_fill1 = +gr_cyl_br & -gr_cyl_miny & (+br_ur & +br_br) & +lb_t\n", - " iec_br_fill2 = +gr_cyl_br & ((-br_cyl_r_out)) & -br_ur & +br_br\n", - " \n", - " inter_elem_channel = [[iec_r, 'outer_r'], [iec_ru_main, 'outer_ru_main'],\n", - " [iec_ru_fill1, 'outer_ru_fill1'], [iec_ru_fill2, 'outer_ru_fill2'],\n", - " [iec_u, 'outer_u'], [iec_ul_main, 'outer_ul_main'],\n", - " [iec_ul_fill1, 'outer_ul_fill1'], [iec_ul_fill2, 'outer_ul_fill2'],\n", - " [iec_l, 'outer_l'], [iec_lb_main, 'outer_lb_main'],\n", - " [iec_lb_fill1, 'outer_lb_fill1'], [iec_lb_fill2, 'outer_lb_fill2'],\n", - " [iec_b, 'outer_b'], [iec_br_main, 'outer_br_main'],\n", - " [iec_br_fill1, 'outer_br_fill1'], [iec_br_fill2, 'outer_br_fill2']]\n", - "\n", - " # shared corner regions\n", - " gr_ul_t = -ul_t\n", - " gr_br_t = -br_t\n", - " gr_ru_t = -ru_t\n", - " gr_lb_t = -lb_t\n", - "\n", - " gr_corners = [[gr_ul, 'ul'], [gr_br, 'br'], [gr_ru, 'ru'], [gr_lb, 'lb'],\n", - " [gr_ul_t, 'ul_t'], [gr_br_t, 'br_t'], [gr_ru_t, 'ru_t'], [gr_lb_t, 'lb_t'],\n", - " [gr_ul_fill, 'ul_fill'], [gr_br_fill, 'br_fill'], [gr_ru_fill, 'ru_fill'], [gr_lb_fill, 'lb_fill']]\n", - "\n", - " # slabs that line up with rounded edges\n", - " slab_u = -gr_maxy & +gr_cyl_maxy & -gr_cyl_maxx & +gr_cyl_minx\n", - " #slab_l = +gr_minx & -gr_cyl_minx & -gr_cyl_maxy & +gr_cyl_miny\n", - " slab_b = +gr_miny & -gr_cyl_miny & -gr_cyl_maxx & +gr_cyl_minx\n", - " #slab_r = -gr_maxx & +gr_cyl_maxx & -gr_cyl_maxy & +gr_cyl_miny\n", - " slabs = [[slab_u, 'slab_u'], \n", - " #[slab_l, 'slab_l'], \n", - " [slab_b, 'slab_b']]#, \n", - " #[slab_r, 'slab_r']]\n", - "\n", - " # the rounded edges themselves\n", - " quarter_ul = -gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy\n", - " quarter_br = -gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny\n", - " quarter_lb = -gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny\n", - " quarter_ru = -gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy\n", - " quarters = [[quarter_ul, 'quarter_ul'], [quarter_br, 'quarter_br'], [quarter_ru, 'quarter_ru'], [quarter_lb, 'quarter_lb']]\n", - "\n", - " gr_reg = gr_corners + slabs + quarters\n", - "\n", - " extra_surf = openmc.ZCylinder(r=r_es, name=es_name)\n", - "\n", - "\n", - " return elem_bound, gr_sq_neg, gr_reg, inter_elem_channel, extra_surf " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "71b4a322", - "metadata": {}, - "outputs": [], - "source": [ - "def zoneIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4):\n", - " \"\"\"Zone IA element. Specs found in Robertson, 1971 Fig 3.4 (p. 17)\"\"\"\n", - " elem_levels = [22.86, 419.10, 438.15, 445.135]\n", - " level_bounds = []\n", - " for level in elem_levels:\n", - " level_bounds.append(openmc.ZPlane(z0=level))\n", - " s1 = openmc.ZCylinder(r=4.953, name='ia_gr_round_1')\n", - " s2 = openmc.ZCylinder(r=1.71069, name='ia_fuel_hole')\n", - "\n", - " h = 12.66\n", - " theta = np.arctan(4.953 / h)\n", - " r2 = (1 / np.cos(theta))**2 - 1\n", - " s3 = openmc.ZCone(z0=h + elem_levels[2], r2=r2, name='cone_i')\n", - "\n", - " c1 = openmc.Cell(fill=fuel, region=(-s2), name='ia_fuel_inner_1')\n", - " c2 = openmc.Cell(fill=moder, region=(+s2 & -s1), name='ia_moderator_1')\n", - " c3 = openmc.Cell(fill=fuel, region=(+s1), name='ia_fuel_outer_1')\n", - " ia1 = (c1, c2, c3)\n", - "\n", - " # I-A main (lower 2)\n", - " s2 = s2.clone()\n", - " c4 = c1.clone(clone_materials=False)\n", - " c4.name = 'ia_fuel_inner_main'\n", - " c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg), name='ia_moderator_main_core')\n", - " iam = [c4, c5]\n", - " for (reg, name) in gr_corners:\n", - " iam.append(openmc.Cell(fill=moder, region=reg, name=f'ia_moderator_main_{name}'))\n", - " for (reg, name) in inter_elem_channel:\n", - " iam.append(openmc.Cell(fill=fuel, region=reg, name=f'ia_fuel_outer_main_{name}'))\n", - "\n", - " # I-A 2 (upper 1)\n", - " c7 = c1.clone(clone_materials=False)\n", - " c7.name = 'ia_fuel_inner_2'\n", - " c8 = c2.clone(clone_materials=False)\n", - " c8.name = 'ia_moderator_2'\n", - " c9 = c3.clone(clone_materials=False)\n", - " c9.name = 'ia_fuel_outer_2'\n", - " ia2 = (c7, c8, c9)\n", - "\n", - " # I-A 3 (upper 2)'\n", - " s2 = s2.clone()\n", - " s3 = s3.clone()\n", - " #elem_bound = elem_bound.clone()\n", - " c10 = c1.clone(clone_materials=False)\n", - " c10.name = 'ia_fuel_inner_3'\n", - " c11 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='ia_moderator_3')\n", - " c12 = openmc.Cell(fill=fuel, region=(+s3), name='ia_fuel_outer_3')\n", - " ia3 = (c10, c11, c12)\n", - "\n", - " # I-A 4 (upper 3)\n", - " s2 = s2.clone()\n", - " #elem_bound = elem_bound.clone()\n", - " c13 = openmc.Cell(fill=hast, region=(-s2), name='ia_hast')\n", - " c14 = openmc.Cell(fill=moder, region=(+s2 & -gr_round_4), name='ia_moderator_4')\n", - " c15 = openmc.Cell(fill=fuel, region=(+gr_round_4), name='ia_fuel_outer_4')\n", - " ia4 = (c13, c14, c15)\n", - "\n", - " elem_cells = [ia1, iam, ia2, ia3, ia4]\n", - " # universe_id=1\n", - " ia = openmc.Universe(name='zone_ia')\n", - " ia.add_cells(_bound_zone_cells(elem_cells, level_bounds))\n", - " return ia\n", - "\n", - "def zoneIIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4):\n", - " \"\"\"Zone IIA element. Specs found in Robertson, 1971 Fig 3.5 (p. 18)\"\"\"\n", - " elem_levels = [434.34, 436.88, 439.42, 441.96]\n", - " level_bounds = []\n", - " for level in elem_levels:\n", - " level_bounds.append(openmc.ZPlane(z0=level))\n", - " s1 = openmc.ZCylinder(r=3.302, name='iia_fuel_hole_main') # Hole with fuel salt - Fig 3.5, Roberton 1971 (3.27787 - p.47)\n", - " s2 = openmc.ZCylinder(r=0.635, name='iia_fuel_hole_2')\n", - " s3 = openmc.ZCylinder(r=3.65125, name='iia_gr_round_3')\n", - " h = 6.5\n", - " theta = np.arctan(3.65125 / h)\n", - " r2 = (1 / np.cos(theta))**2 - 1\n", - " s4 = openmc.ZCone(z0=h + elem_levels[2], r2=r2, name='cone_ii')\n", - "\n", - " # II-A main (lower 1)\n", - " c1 = openmc.Cell(fill=fuel, region=(-s1), name='iia_fuel_inner_main')\n", - " c2 = openmc.Cell(fill=moder, region=(+s1 & gr_sq_neg), name='iia_moderator_main_core')\n", - " iiam = [c1, c2]\n", - "\n", - " # II-A 2 (upper 1)\n", - " gr_sq_neg = gr_sq_neg.clone()\n", - " c4 = openmc.Cell(fill=fuel, region=(-s2), name='iia_fuel_inner_2')\n", - " c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg), name='iia_moderator_2_core')\n", - " iia2 = [c4, c5]\n", - "\n", - " for (reg, name) in gr_corners:\n", - " iiam.append(openmc.Cell(fill=moder, region=reg, name=f'iia_moderator_main_{name}'))\n", - " iia2.append(openmc.Cell(fill=moder, region=reg, name=f'iia_moderator_main_{name}'))\n", - " for (reg, name) in inter_elem_channel:\n", - " iiam.append(openmc.Cell(fill=fuel, region=reg, name=f'iia_fuel_outer_main_{name}'))\n", - " iia2.append(openmc.Cell(fill=fuel, region=reg, name=f'iia_fuel_outer_2_{name}'))\n", - "\n", - " # II-A 3 (upper 2)\n", - " s2 = s2.clone()\n", - " #elem_bound = elem_bound.clone()\n", - " c7 = c4.clone(clone_materials=False)\n", - " c7.name = 'iia_fuel_inner_3'\n", - " c8 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='iia_moderator_3')\n", - " c9 = openmc.Cell(fill=fuel, region=(+s3), name='iia_fuel_outer_3')\n", - " iia3 = (c7, c8, c9)\n", - "\n", - " # II-A 4 (upper 3)\n", - " #elem_bound = elem_bound.clone()\n", - " c10 = openmc.Cell(fill=moder, region=(-s4), name='iia_moderator_4')\n", - " c11 = openmc.Cell(fill=fuel, region=(+s4), name='iia_fuel_outer_4')\n", - " iia4 = (c10, c11)\n", - "\n", - " # II-A 5 (upper 4)\n", - " #elem_bound = elem_bound.clone()\n", - " c12 = openmc.Cell(fill=moder, region=(-gr_round_4), name='iia_moderator_5')\n", - " c13 = openmc.Cell(fill=fuel, region=(+gr_round_4), name='iia_fuel_outer_5')\n", - " iia5 = (c12, c13)\n", - "\n", - " elem_cells = [iiam, iia2, iia3, iia4, iia5]\n", - " # universe_id=2\n", - " iia = openmc.Universe(name='zone_iia')\n", - " iia.add_cells(_bound_zone_cells(elem_cells, level_bounds))\n", - " return iia\n", - "\n", - "def void_cell(elem_bound):\n", - " #elem_bound = elem_bound.clone()\n", - " #c1 = openmc.Cell(region=elem_bound, name='lattice_void')\n", - " c1 = openmc.Cell(name='lattice_void')\n", - " #universe_id=5\n", - " v = openmc.Universe(name='lattice_void')\n", - " v.add_cell(c1)\n", - " return v\n", - "\n", - "def graphite_triangles(elem_bound):\n", - " s1 = openmc.Plane(1.0, 1.0, 0.0, 0.0)\n", - " s2 = openmc.Plane(-1.0, 1.0, 0.0, 0.0)\n", - " s3 = openmc.Plane(1.0, -1.0, 0.0, 0.0)\n", - " s4 = openmc.Plane(-1.0, -1.0, 0.0, 0.0)\n", - " surfs = [(s4, 'bottom_left'),\n", - " (s1, 'top_right'),\n", - " (s2, 'top_left'),\n", - " (s3, 'bottom_right')]\n", - " univs = []\n", - " for i, (s, name) in enumerate(surfs):\n", - " #elem_bound = elem_bound.clone()\n", - " c1 = openmc.Cell(fill=moder, region=(-s))\n", - " #elem_bound = elem_bound.clone()\n", - " c2 = openmc.Cell(fill=fuel, region=(+s))\n", - " # universe_id = 6+i\n", - " gr_tri = openmc.Universe(name=f'{name}_triangle')\n", - " gr_tri.add_cells([c1, c2])\n", - " univs.append(gr_tri)\n", - " return univs" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "07136110", - "metadata": {}, - "outputs": [], - "source": [ - "#elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4 = shared_elem_geometry('core', 5.08, 4.953, 0.46, 0.66802, 4.28498, 4.53898, 5.62102, 2.2225, 'gr_round_4')\n", - "#ia = zoneIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4)\n", - "#iia = zoneIIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4)\n", - "# tres, uno, dos, quatro\n", - "#bl, ur, ul, br = graphite_triangles(elem_bound)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "752c5160", - "metadata": {}, - "outputs": [], - "source": [ - "#ia.plot(width=(20,20),\n", - "# basis='xy',\n", - "# colors=colormap,\n", - "# origin=(-4.,4., 300),\n", - "# color_by='material',\n", - "# pixels=(800,800))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "ee56bc53", - "metadata": {}, - "outputs": [], - "source": [ - "#iia.plot(width=(20,20),\n", - "# basis='xz',\n", - "# colors=colormap,\n", - "# origin=(0.,0.,435),\n", - "# color_by='material',\n", - "# pixels=(800,800))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "d17047bd", - "metadata": {}, - "outputs": [], - "source": [ - "def control_rod(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole):\n", - " s1 = openmc.ZCylinder(r=4.7625, name='control_rod')\n", - "\n", - " c1 = openmc.Cell(fill=moder, region=-s1, name='control_rod')\n", - " c2 = openmc.Cell(fill=fuel, region=(+s1 & -fuel_hole), name='cr_fuel_inner')\n", - " c3 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg), name='cr_moderator_core')\n", - "\n", - " #universe_id=3\n", - " cr = openmc.Universe(name='control_rod', cells=[c1, c2, c3])\n", - "\n", - " for (reg, name) in gr_corners:\n", - " cr.add_cell(openmc.Cell(fill=moder, region=reg, name=f'cr_moderator_{name}'))\n", - " for (reg, name) in inter_elem_channel:\n", - " cr.add_cell(openmc.Cell(fill=fuel, region=reg, name=f'cr_fuel_outer_{name}'))\n", - "\n", - " return cr\n", - "\n", - "def control_rod_channel(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole):\n", - " c1 = openmc.Cell(fill=fuel, region=(-fuel_hole), name='crc_fuel_inner')\n", - " c2 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg), name='crc_moderator_core')\n", - "\n", - " # universe_id=4\n", - " crc = openmc.Universe(name='control_rod_channel', cells=[c1, c2])\n", - "\n", - " for (reg, name) in gr_corners:\n", - " crc.add_cell(openmc.Cell(fill=moder, region=reg, name=f'crc_moderator_{name}'))\n", - " for (reg, name) in inter_elem_channel:\n", - " crc.add_cell(openmc.Cell(fill=fuel, region=reg, name=f'crc_fuel_outer_{name}'))\n", - "\n", - " return crc" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "cea2d476", - "metadata": {}, - "outputs": [], - "source": [ - "#elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole = shared_elem_geometry('cr', 7.62, 7.23645, 0.99, 0.8, 5.8801, 6.505, 8.03646, 5.08, 'cr_fuel_hole')\n", - "\n", - "#cr = control_rod(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole)\n", - "#crc = control_rod_channel(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "aa83205f", - "metadata": {}, - "outputs": [], - "source": [ - "#cr.plot(width=(20,20),\n", - "# basis='xy',\n", - "# colors=colormap,\n", - "# origin=(0.,0.,440),\n", - "# color_by='material',\n", - "# pixels=(2000,2000))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "37a3fa2a", - "metadata": {}, - "outputs": [], - "source": [ - "#crc.plot(width=(20,20),\n", - "# basis='xy',\n", - "# colors=colormap,\n", - "# origin=(0.,0.,440),\n", - "# color_by='material',\n", - "# pixels=(400,400))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "7f985e3a", - "metadata": {}, - "outputs": [], - "source": [ - "def shared_root_geometry():\n", - " cr_boundary = openmc.model.rectangular_prism(15.24*2, 15.24*2)\n", - " \n", - " core_base = openmc.ZPlane(z0=0.0, name='core_base')\n", - " core_top = openmc.ZPlane(z0=449.58, name='core_top')\n", - " \n", - " s1 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=208.28, r2=222.71, name='base_octader')\n", - " s2 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=218.44, r2=215.53, name='smaller_octader')\n", - " s3 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=228.60, r2=193.97, name='smallest_octader')\n", - " \n", - " oct1 = list((-s1).get_surfaces().values())\n", - " oct2 = list((-s2).get_surfaces().values())\n", - " oct3 = list((-s3).get_surfaces().values())\n", - " zone_i_octas = (oct1, oct2, oct3)\n", - " \n", - " zone_ii_boundary = openmc.ZCylinder(r=256.032, name='iib_boundary')\n", - " annulus_boundary = openmc.ZCylinder(r=261.112, name='annulus_boundary')\n", - " lower_plenum_boundary = openmc.ZPlane(z0=-7.62, name='lower_plenum_boundary')\n", - "\n", - " zone_bounds = (cr_boundary, zone_i_octas, zone_ii_boundary)\n", - " \n", - " core_bounds = (annulus_boundary, lower_plenum_boundary, core_base, core_top)\n", - " \n", - " radial_reflector_boundary = openmc.ZCylinder(r=338.328, name='radial_reflector_boundary') \n", - " bottom_reflector_boundary = openmc.ZPlane(z0=-76.2, name='bottom_axial_reflector_boundary')\n", - " top_reflector_boundary = openmc.ZPlane(z0=525.78, name='top_axial_reflector_boundary') \n", - " \n", - " reflector_bounds = (radial_reflector_boundary,\n", - " bottom_reflector_boundary,\n", - " top_reflector_boundary)\n", - " \n", - " radial_vessel_boundary = openmc.ZCylinder(r=343.408, name='radial_vessel_wall', boundary_type='vacuum')\n", - " bottom_vessel_boundary = openmc.ZPlane(z0=-81.28, name='bottom_vessel_wall', boundary_type='vacuum')\n", - " top_vessel_boundary = openmc.ZPlane(z0=530.86, name='top_vessel_wall', boundary_type='vacuum')\n", - " \n", - " vessel_bounds = (radial_vessel_boundary,\n", - " bottom_vessel_boundary,\n", - " top_vessel_boundary)\n", - " \n", - " return zone_bounds, core_bounds, reflector_bounds, vessel_bounds\n", - "\n", - "def cr_lattice(cr_boundary, core_base, core_top):\n", - " elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole = shared_elem_geometry('cr', 7.62, 7.23645, 0.99, 0.8, 5.8801, 6.505, 8.03646, 5.08, 'cr_fuel_hole')\n", - " f = control_rod(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole)\n", - " elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole = shared_elem_geometry('cr', 7.62, 7.23645, 0.99, 0.8, 5.8801, 6.505, 8.03646, 5.08, 'cr_fuel_hole')\n", - " e = control_rod_channel(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole)\n", - " \n", - " cr = openmc.RectLattice()\n", - " cr.pitch = np.array([15.24, 15.24])\n", - " N = 2 / 2\n", - " cr.lower_left = -1 * cr.pitch * N\n", - " cr.universes = [[f, e],\n", - " [e, f]]\n", - " \n", - " c1 = openmc.Cell(fill=cr, region=(+core_base & -core_top & cr_boundary), name='cr_lattice')\n", - " \n", - " return c1\n", - "\n", - "def main_lattice(zone_i_octas, cr_boundary, core_base, core_top):\n", - " elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4 = shared_elem_geometry('core', 5.08, 4.953, 0.46, 0.66802, 4.28498, 4.53898, 5.62102, 2.2225, 'gr_round_4')\n", - " l = zoneIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4)\n", - " elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4 = shared_elem_geometry('core', 5.08, 4.953, 0.46, 0.66802, 4.28498, 4.53898, 5.62102, 2.2225, 'gr_round_4')\n", - " z = zoneIIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4)\n", - " v = void_cell(elem_bound)\n", - " # tres, uno, dos, quatro\n", - " t, u, d, q = graphite_triangles(elem_bound) \n", - " s1, s2, s3 = zone_i_boundary\n", - "\n", - " \n", - " main = openmc.RectLattice()\n", - " main.pitch = np.array([10.16, 10.16])\n", - " N = 45 / 2\n", - " main.lower_left = -1 * main.pitch * N\n", - " main.universes = [[v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, d, z, z, z, z, z, z, z, z, z, u, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v],\n", - " [v, v, v, v, v, v, v, v, v, v, v, v, v, d, z, z, z, z, l, l, l, l, l, l, l, l, l, z, z, z, z, u, v, v, v, v, v, v, v, v, v, v, v, v, v],\n", - " [v, v, v, v, v, v, v, v, v, v, v, d, z, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, z, u, v, v, v, v, v, v, v, v, v, v, v],\n", - " [v, v, v, v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v, v, v, v],\n", - " [v, v, v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v, v, v],\n", - " [v, v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v, v],\n", - " [v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v],\n", - " [v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v],\n", - " [v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v],\n", - " [v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v],\n", - " [v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v],\n", - " [v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v],\n", - " [v, v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v, v],\n", - " [v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v],\n", - " [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v],\n", - " [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v],\n", - " [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v],\n", - " [d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u],\n", - " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", - " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", - " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", - " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, v, v, v, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", - " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, v, v, v, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", - " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, v, v, v, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", - " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", - " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", - " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", - " [t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q],\n", - " [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v],\n", - " [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v],\n", - " [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v],\n", - " [v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v],\n", - " [v, v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v, v],\n", - " [v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v],\n", - " [v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v],\n", - " [v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v],\n", - " [v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v],\n", - " [v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v],\n", - " [v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v],\n", - " [v, v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v, v],\n", - " [v, v, v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v, v, v],\n", - " [v, v, v, v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v, v, v, v],\n", - " [v, v, v, v, v, v, v, v, v, v, v, t, z, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, z, q, v, v, v, v, v, v, v, v, v, v, v],\n", - " [v, v, v, v, v, v, v, v, v, v, v, v, v, t, z, z, z, z, l, l, l, l, l, l, l, l, l, z, z, z, z, q, v, v, v, v, v, v, v, v, v, v, v, v, v],\n", - " [v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, t, z, z, z, z, z, z, z, z, z, q, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v]]\n", - " \n", - " oct1_maxy, oct1_miny, oct1_maxx, oct1_minx, oct1_ur, oct1_br, oct1_bl, oct1_ul = list((-s1).get_surfaces().values())\n", - " oct2_maxy, oct2_miny, oct2_maxx, oct2_minx, oct2_ur, oct2_br, oct2_bl, oct2_ul = list((-s2).get_surfaces().values())\n", - " oct3_maxy, oct3_miny, oct3_maxx, oct3_minx, oct3_ur, oct3_br, oct3_bl, oct3_ul = list((-s3).get_surfaces().values())\n", - " cb_minx, cb_maxx, cb_miny, cb_maxy = list(cr_boundary.get_surfaces().values())\n", - "\n", - " c1_ur = (-oct3_ur & +oct2_ur & -oct2_maxx & -oct2_maxy)\n", - " c1_ul = (+oct3_ul & -oct2_ul & +oct2_minx & -oct2_maxy)\n", - " c1_bl = (+oct3_bl & -oct2_bl & +oct2_minx & +oct2_miny)\n", - " c1_br = (-oct3_br & +oct2_br & -oct2_maxx & +oct2_miny)\n", - " c1 = [[c1_ur, 'smaller_octader_ur'],\n", - " [c1_ul, 'smaller_octader_ul'],\n", - " [c1_bl, 'smaller_octader_bl'],\n", - " [c1_br, 'smaller_octader_br']]\n", - "\n", - " c2_r = (+cb_maxx & +cb_miny & -cb_maxy & -oct3_maxx)\n", - " c2_ur = (+cb_maxx & +cb_maxy & -oct3_maxx & -oct3_maxy & +oct3_ur)\n", - " c2_u = (+cb_maxy & +cb_minx & -cb_maxx & -oct3_maxy)\n", - " c2_ul = (-cb_minx & +cb_maxy & +oct3_minx & -oct3_maxy & -oct3_ul)\n", - " c2_l = (-cb_minx & +cb_miny & -cb_maxy & +oct3_minx)\n", - " c2_bl = (-cb_minx & -cb_miny & +oct3_minx & +oct3_miny & -oct3_bl)\n", - " c2_b = (-cb_miny & +cb_minx & -cb_maxx & +oct3_miny)\n", - " c2_br = (+cb_maxx & -cb_miny & -oct3_maxx & +oct3_miny & +oct3_br)\n", - " c2 = [[c2_r, 'smallest_octader_r'],\n", - " [c2_ur, 'smallest_octader_ur'],\n", - " [c2_u, 'smallest_octader_u'],\n", - " [c2_ul, 'smallest_octader_ul'],\n", - " [c2_l, 'smallest_octader_l'],\n", - " [c2_bl, 'smallest_octader_bl'],\n", - " [c2_b, 'smallest_octader_b'],\n", - " [c2_br, 'smallest_octader_br']]\n", - "\n", - " c3_ur = (-oct2_ur & +oct1_ur & -oct1_maxx & -oct1_maxy)\n", - " c3_ul = (+oct2_ul & -oct1_ul & +oct1_minx & -oct1_maxy)\n", - " c3_bl = (+oct2_bl & -oct1_bl & +oct1_minx & +oct1_miny)\n", - " c3_br = (-oct2_br & +oct1_br & -oct1_maxx & +oct1_miny)\n", - " c3 = [[c3_ur, 'base_octader_ur'],\n", - " [c3_ul, 'base_octader_ul'],\n", - " [c3_bl, 'base_octader_bl'],\n", - " [c3_br, 'base_octader_br']]\n", - "\n", - " regs = c1 + c2 + c3\n", - " main_cells = []\n", - " for reg, name in regs:\n", - " main_cells.append(openmc.Cell(fill=main, region=(reg & +core_base & -core_top), name=name))\n", - "\n", - " return main_cells\n", - "\n", - "def zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top):\n", - " # Large elements\n", - " large_angular_width = 3.538\n", - " large_half_w = large_angular_width / 2\n", - " large_positions = np.linspace(0, 315, 8)\n", - " r_outer = 256.032\n", - " r_big1 = 229.6\n", - " r_big2 = 223.6\n", - " rb_1 = (r_big1, r_outer)\n", - " rb_2 = (r_big2, r_outer)\n", - " big_radii = [rb_1, rb_2] * 4\n", - " small_radii = (207.28, r_outer)\n", - " \n", - " r_hole = 3.0875\n", - " hole_args = ({'x0': 242.679, 'y0': 0.0, 'r': r_hole},\n", - " {'x0': 171.60, 'y0': 171.60, 'r': r_hole},\n", - " {'x0': 0.0, 'y0': 242.679, 'r': r_hole},\n", - " {'x0': -171.60, 'y0': 171.60, 'r': r_hole},\n", - " {'x0': -242.679, 'y0': 0.0, 'r': r_hole},\n", - " {'x0': -171.60, 'y0': -171.60, 'r': r_hole},\n", - " {'x0': 0.0, 'y0': -242.697, 'r': r_hole},\n", - " {'x0': 171.60, 'y0': -171.60, 'r': r_hole})\n", - " \n", - " # Small elements\n", - " small_angular_width = 0.96\n", - " adjacent_angular_offset = 0.675 #27/40\n", - " small_elems_per_octant = 25\n", - " \n", - " elem_cells = []\n", - " for i, pos in enumerate(large_positions):\n", - " pos = np.round(pos, 3)\n", - " r1_big, r2_big = big_radii[i]\n", - " t1_big = np.round(pos - large_half_w, 3)\n", - " t2_big = np.round(pos + large_half_w, 3)\n", - " s1 = openmc.model.CylinderSector(r1_big, r2_big, t1_big, t2_big)\n", - " s2 = openmc.ZCylinder(**hole_args[i])\n", - " elem_cells.append(openmc.Cell(fill=moder, region=(-s1 & +s2), name=f'iib_large_element_{pos}'))\n", - " elem_cells.append(openmc.Cell(fill=fuel, region=(-s2),\n", - " name=f'iib_large_element_fuel_hole_{pos}'))\n", - " t1_small = np.round(t2_big + adjacent_angular_offset, 3)\n", - " r1_small, r2_small = small_radii\n", - " \n", - " # Inter element fuel channel\n", - " s3 = openmc.model.CylinderSector(r1_small, r2_small, t2_big, t1_small)\n", - " cpos = t2_big + (adjacent_angular_offset / 2)\n", - " cpos = np.round(cpos, 3)\n", - " elem_cells.append(openmc.Cell(fill=fuel, region=-s3,\n", - " name=f'inter_element_fuel_channel_{cpos}'))\n", - " \n", - " #t4a = t1_big - adjacent_angular_offset\n", - " s4 = openmc.model.CylinderSector(r1_small, r1_big, t1_big, t2_big)\n", - " elem_cells.append(openmc.Cell(fill=fuel, region=-s4,\n", - " name=f'inter_element_fuel_channel_{pos}'))\n", - " \n", - " for i in range(0, small_elems_per_octant):\n", - " t2_small = np.round(t1_small + small_angular_width, 3)\n", - " \n", - " # reflector element\n", - " s5 = openmc.model.CylinderSector(r1_small, r2_small, t1_small, t2_small)\n", - " pos = t2_small - (small_angular_width / 2)\n", - " pos = np.round(pos, 3)\n", - " elem_cells.append(openmc.Cell(fill=moder, region=-s5, name=f'iib_small_element_{pos}'))\n", - " t1_small = np.round(t2_small + adjacent_angular_offset, 3)\n", - " \n", - " # inter-element fuel channel\n", - " s6 = openmc.model.CylinderSector(r1_small, r2_small, t2_small, t1_small)\n", - " cpos = t2_small + (adjacent_angular_offset/2)\n", - " cpos = np.round(cpos, 3)\n", - " elem_cells.append(openmc.Cell(fill=fuel, region=-s6,\n", - " name=f'inter_element_fuel_channel_{cpos}'))\n", - " \n", - " \n", - " #universe_id=10\n", - " iib = openmc.Universe(name='zone_iib')\n", - " s1, s2, s3 = zone_i_boundary\n", - "\n", - " iib.add_cells(elem_cells)\n", - " oct1_maxy, oct1_miny, oct1_maxx, oct1_minx, oct1_ur, oct1_br, oct1_bl, oct1_ul = list((-s1).get_surfaces().values())\n", - " oct2_maxy, oct2_miny, oct2_maxx, oct2_minx, oct2_ur, oct2_br, oct2_bl, oct2_ul = list((-s2).get_surfaces().values())\n", - " oct3_maxy, oct3_miny, oct3_maxx, oct3_minx, oct3_ur, oct3_br, oct3_bl, oct3_ul = list((-s3).get_surfaces().values())\n", - "\n", - " cap_r =(+oct3_maxx & -zone_ii_boundary)\n", - "\n", - " c23_urr = (+oct2_maxx & -oct3_maxx & -oct3_ur & +oct2_ur)\n", - " c12_urr = (+oct1_maxx & -oct3_maxx & -oct2_ur & +oct1_ur)\n", - " cap_ur = (-oct3_maxy & -oct3_maxx & -oct1_ur & -zone_ii_boundary)\n", - " c12_uru = (+oct1_maxy & -oct3_maxy & -oct2_ur & +oct1_ur)\n", - " c23_uru = (+oct2_maxy & -oct3_maxy & -oct3_ur & +oct2_ur)\n", - "\n", - " cap_u = (+oct3_maxy & -zone_ii_boundary)\n", - "\n", - " c23_ulu = (+oct2_maxy & -oct3_maxy & +oct3_ul & -oct2_ul)\n", - " c12_ulu = (+oct1_maxy & -oct3_maxy & +oct2_ul & -oct1_ul)\n", - " cap_ul = (-oct3_maxy & +oct3_minx & +oct1_ul & -zone_ii_boundary)\n", - " c12_ull = (-oct1_minx & +oct3_minx & +oct2_ul & -oct1_ul)\n", - " c23_ull = (-oct2_minx & +oct3_minx & +oct3_ul & -oct2_ul)\n", - "\n", - " cap_l = (-oct3_minx & -zone_ii_boundary)\n", - "\n", - " c23_bll = (-oct2_minx & +oct3_minx & +oct3_bl & -oct2_bl)\n", - " c12_bll = (-oct1_minx & +oct3_minx & +oct2_bl & -oct1_bl)\n", - " cap_bl = (+oct3_minx & +oct3_miny & +oct1_bl & -zone_ii_boundary)\n", - " c12_blb = (-oct1_miny & +oct3_miny & +oct2_bl & -oct1_bl)\n", - " c23_blb = (-oct2_miny & +oct3_miny & +oct3_bl & -oct2_bl)\n", - "\n", - " cap_b = (-oct3_miny & -zone_ii_boundary)\n", - "\n", - " c23_brb = (-oct2_miny & +oct3_miny & -oct3_br & +oct2_br)\n", - " c12_brb = (-oct1_miny & +oct3_miny & -oct2_br & +oct1_br)\n", - " cap_rb = (-oct3_maxx & +oct3_miny & -oct1_br & -zone_ii_boundary)\n", - " c12_brr = (+oct1_maxx & -oct3_maxx & -oct2_br & +oct1_br)\n", - " c23_brr = (+oct2_maxx & -oct3_maxx & -oct3_br & +oct2_br)\n", - "\n", - " regs = ([cap_r, 'cap_r'], [c23_urr, '23_urr'], [c12_urr, '12_urr'],\n", - " [cap_ur, 'cap_ur'], [c12_uru, '12_uru'], [c23_uru, '23_uru'],\n", - " [cap_u, 'cap_u'], [c23_ulu, '23_ulu'], [c12_ulu, '12_ulu'],\n", - " [cap_ul, 'cap_ul'], [c12_ull, '12_ull'], [c23_ull, '23_ull'],\n", - " [cap_l, 'cap_l'], [c23_bll, '23_bll'], [c12_bll, '12_bll'],\n", - " [cap_bl, 'cap_bl'], [c12_blb, '12_blb'], [c23_blb, '23_blb'],\n", - " [cap_b, 'cap_b'], [c23_brb, '23_brb'], [c12_brb, '12_brb'],\n", - " [cap_rb, 'cap_rb'], [c12_brr, '12_brr'], [c23_brr, '23_brr'])\n", - "\n", - " iib_cells = []\n", - " for reg, name in regs:\n", - " iib_cells.append(openmc.Cell(fill=iib, region=(reg & +core_base & -core_top), name=f'zone_iib_{name}'))\n", - "\n", - " return iib_cells\n", - "\n", - "\n", - "def annulus(zone_ii_boundary, annulus_boundary, core_base, core_top):\n", - " annulus_reg = +zone_ii_boundary & -annulus_boundary & +core_base & -core_top\n", - " c1 = openmc.Cell(fill=fuel, region=annulus_reg, name='annulus')\n", - " \n", - " return c1\n", - "\n", - "def lower_plenum(core_base, lower_plenum_boundary, annulus_boundary):\n", - " lower_plenum_reg = -core_base & +lower_plenum_boundary & -annulus_boundary \n", - " c1 = openmc.Cell(fill=fuel, region=lower_plenum_reg, name='lower_plenum')\n", - "\n", - " return c1\n", - "\n", - "def reflectors(annulus_boundary, \n", - " radial_reflector_boundary, \n", - " lower_plenum_boundary,\n", - " bottom_reflector_boundary, \n", - " core_top, \n", - " top_reflector_boundary):\n", - " \n", - " radial_reflector_reg = +annulus_boundary & -radial_reflector_boundary & +bottom_reflector_boundary & -top_reflector_boundary\n", - " bottom_reflector_reg = -annulus_boundary & -lower_plenum_boundary & +bottom_reflector_boundary\n", - " top_reflector_reg = -annulus_boundary & +core_top & -top_reflector_boundary\n", - "\n", - " c1 = openmc.Cell(fill=moder, region=radial_reflector_reg, name='radial_reflector')\n", - " c2 = openmc.Cell(fill=moder, region=bottom_reflector_reg, name='bottom_axial_reflector')\n", - " c3 = openmc.Cell(fill=moder, region=top_reflector_reg, name='top_axial_reflector')\n", - " \n", - " return c1, c2, c3\n", - "\n", - "def vessel(radial_reflector_boundary,\n", - " radial_vessel_boundary,\n", - " bottom_vessel_boundary,\n", - " top_vessel_boundary,\n", - " top_reflector_boundary,\n", - " bottom_reflector_boundary):\n", - " radial_vessel_reg = +radial_reflector_boundary & -radial_vessel_boundary & -top_vessel_boundary & +bottom_vessel_boundary\n", - " bottom_vessel_reg = -radial_reflector_boundary & -bottom_reflector_boundary & +bottom_vessel_boundary\n", - " top_vessel_reg = -radial_reflector_boundary & -top_vessel_boundary & +top_reflector_boundary\n", - "\n", - " \n", - " c1 = openmc.Cell(fill=hast, region=radial_vessel_reg, name='radial_vessel_wall')\n", - " c2 = openmc.Cell(fill=hast, region=bottom_vessel_reg, name='bottom_vessel_wall')\n", - " c3 = openmc.Cell(fill=hast, region=top_vessel_reg, name='top_vessel_wall')\n", - " \n", - " return c1, c2, c3" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "cdf61881", - "metadata": {}, - "outputs": [], - "source": [ - "zone_bounds, core_bounds, reflector_bounds, vessel_bounds = shared_root_geometry()\n", - "\n", - "cr_boundary, zone_i_octas, zone_ii_boundary = zone_bounds\n", - "annulus_boundary, lower_plenum_boundary, core_base, core_top = core_bounds\n", - "radial_reflector_boundary, bottom_reflector_boundary, top_reflector_boundary = reflector_bounds\n", - "radial_vessel_boundary, bottom_vessel_boundary, top_vessel_boundary= vessel_bounds\n", - "\n", - "#main1, main2, main3 = main_lattice(zone_i_boundary, zone_i_octas, cr_boundary, core_base, core_top)\n", - "main = main_lattice(zone_i_octas, cr_boundary, core_base, core_top)\n", - "cr = cr_lattice(cr_boundary, core_base, core_top)\n", - "iib = zoneIIB(zone_i_octas, zone_ii_boundary, annulus_boundary, core_base, core_top)\n", - "a = annulus(zone_ii_boundary, annulus_boundary, core_base, core_top)\n", - "lp = lower_plenum(core_base, lower_plenum_boundary, annulus_boundary)\n", - "\n", - "rr, rb, rt = reflectors(annulus_boundary, \n", - " radial_reflector_boundary, \n", - " lower_plenum_boundary,\n", - " bottom_reflector_boundary, \n", - " core_top, \n", - " top_reflector_boundary)\n", - "\n", - "vr, vb, vt = vessel(radial_reflector_boundary,\n", - " radial_vessel_boundary,\n", - " bottom_vessel_boundary,\n", - " top_vessel_boundary,\n", - " top_reflector_boundary,\n", - " bottom_reflector_boundary)\n", - "\n", - "testuniverse = openmc.Universe()\n", - "testuniverse.add_cells([cr, lp, a, rr, rb, rt, vr, vb, vt])\n", - "testuniverse.add_cells(main)\n", - "testuniverse.add_cells(iib)\n" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "2a283441", - "metadata": { - "scrolled": false - }, - "outputs": [], - "source": [ - "testuniverse.plot(width=(40,40),\n", - " basis='xy',\n", - " colors=colormap,\n", - " origin=(215, 0., 23),\n", - " color_by='material',\n", - " pixels=(1000,1000))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "1fab3df4", - "metadata": {}, - "outputs": [], - "source": [ - "#testuniverse.plot(width=(700,650),\n", - "# basis='xz',\n", - "# colors=colormap,\n", - "# origin=(0.,0.,220),\n", - "# color_by='material',\n", - "# pixels=(1000,1000))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "6b0f4320", - "metadata": {}, - "outputs": [], - "source": [ - "geo = openmc.Geometry()\n", - "geo.root_universe = testuniverse\n", - "#geo.remove_redundant_surfaces()\n", - "#geo.export_to_xml()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "48d744d2", - "metadata": {}, - "outputs": [], - "source": [ - "geo.export_to_xml()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "524f65b6", - "metadata": {}, - "outputs": [], - "source": [ - "geo.get_all_cells()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "ec266af0", - "metadata": {}, - "outputs": [], - "source": [ - "plots = openmc.Plots()\n", - "\n", - "plot = openmc.Plot(name='detail-zoneIA-IIA-lower1')\n", - "plot.origin=(215, 0, 10.0)\n", - "plot.width=(40, 40)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='detail-zoneIA-main')\n", - "plot.origin=(215, 0, 23.0)\n", - "plot.width=(40, 40)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='detail-zoneIIA-upper1')\n", - "plot.origin=(215, 0, 435)\n", - "plot.width=(40, 40)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='detail-zoneIA-upper1')\n", - "plot.origin=(215, 0, 420)\n", - "plot.width=(40, 40)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='detail-zoneIIA-upper2')\n", - "plot.origin=(215, 0, 437)\n", - "plot.width=(40, 40)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='detail-zoneIA-upper2')\n", - "plot.origin=(215, 0, 439)\n", - "plot.width=(40, 40)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='detail-zoneIIA-upper3')\n", - "plot.origin=(215, 0, 440)\n", - "plot.width=(40, 40)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='detail-zoneIA-upper3')\n", - "plot.origin=(215, 0, 448)\n", - "plot.width=(40, 40)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='detail-zoneIIA-upper4')\n", - "plot.origin=(215, 0, 442)\n", - "plot.width=(40, 40)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='full-zoneIA-IIA-lower1')\n", - "plot.origin=(0.0, 0, 10.0)\n", - "plot.width=(600, 600)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='full-zoneIA-main')\n", - "plot.origin=(0, 0, 23.0)\n", - "plot.width=(600, 600)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='full-zoneIIA-upper1')\n", - "plot.origin=(0, 0, 435)\n", - "plot.width=(600, 600)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='full-zoneIA-upper1')\n", - "plot.origin=(0, 0, 420)\n", - "plot.width=(600, 600)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='full-zoneIIA-upper2')\n", - "plot.origin=(0, 0, 437)\n", - "plot.width=(600, 600)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='full-zoneIA-upper2')\n", - "plot.origin=(0, 0, 439)\n", - "plot.width=(600, 600)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='full-zoneIIA-upper3')\n", - "plot.origin=(0, 0, 440)\n", - "plot.width=(600, 600)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='full-zoneIA-upper3')\n", - "plot.origin=(0, 0, 448)\n", - "plot.width=(600, 600)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='full-zoneIIA-upper4')\n", - "plot.origin=(0, 0, 442)\n", - "plot.width=(600, 600)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='core-xz-detail-upper')\n", - "plot.origin=(215, 0, 440)\n", - "plot.width=(100, 100)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xz'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='full-core-xz')\n", - "plot.origin=(0, 0, 200)\n", - "plot.width=(700, 700)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xz'\n", - "plots.append(plot)\n", - "\n", - "plots.export_to_xml()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "76ec95ac", - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python [conda env:openmc-env] *", - "language": "python", - "name": "conda-env-openmc-env-py" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.10.6" - } - }, - "nbformat": 4, - "nbformat_minor": 5 -} diff --git a/examples/msbr/model-plotting.ipynb b/examples/msbr/model-plotting.ipynb deleted file mode 100644 index 6352caf68..000000000 --- a/examples/msbr/model-plotting.ipynb +++ /dev/null @@ -1,989 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": null, - "id": "bdbd4aaa", - "metadata": {}, - "outputs": [], - "source": [ - "import openmc\n", - "import numpy as np" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "46a4a1d5", - "metadata": {}, - "outputs": [], - "source": [ - "mycul = openmc.ZPlane()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "56642afc", - "metadata": {}, - "outputs": [], - "source": [ - "# Create materials\n", - "fuel = openmc.Material(name='fuel', temperature=900.0)\n", - "fuel.set_density('g/cm3', density=3.35)\n", - "fuel.add_components({'Li7': 0.0787474673879085,\n", - " 'Be9': 0.0225566879138321,\n", - " 'F19': 0.454003012179284,\n", - " 'Th232': 0.435579130482336,\n", - " 'U233': 0.00911370203663893},\n", - " percent_type='wo')\n", - "fuel.depletable = True\n", - "fuel.volume = 48710000.0\n", - "\n", - "moder = openmc.Material(name='graphite', temperature=900.0)\n", - "moder.set_density('g/cm3', density=1.84)\n", - "moder.add_nuclide('C0', 1.000, percent_type='wo')\n", - "moder.add_s_alpha_beta('c_Graphite')\n", - "\n", - "hast = openmc.Material(name='hastelloyN', temperature=900.0)\n", - "hast.set_density('g/cm3', density=8.671)\n", - "hast.add_components({'Al27': 0.003,\n", - " 'Ni': 0.677,\n", - " 'W': 0.250,\n", - " 'Cr': 0.070},\n", - " percent_type='wo')\n", - "\n", - "mat = openmc.Materials(materials=[fuel, moder, hast])\n", - "mat.export_to_xml()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "5bf1ab77", - "metadata": {}, - "outputs": [], - "source": [ - "colormap = {moder: 'purple',\n", - " hast: 'blue',\n", - " fuel: 'yellow'}" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "3e341197", - "metadata": {}, - "outputs": [], - "source": [ - "def _bound_zone_cells(cells_tuples, levels):\n", - " \"\"\"Helper function that moves Zone IA and Zone IIA cells to the\n", - " appropriate height.\"\"\"\n", - " cell_list = []\n", - " n_levels = len(cells_tuples)\n", - " for i, cells in enumerate(cells_tuples):\n", - " if i == 0:\n", - " lower_bound = None\n", - " upper_bound = levels[i]\n", - " elif i == n_levels - 1:\n", - " lower_bound = levels[i-1]\n", - " upper_bound = None\n", - " else:\n", - " lower_bound = levels[i-1]\n", - " upper_bound = levels[i]\n", - " for j, cell in enumerate(cells):\n", - " if lower_bound is None:\n", - " cell.region = cell.region & -upper_bound\n", - " elif upper_bound is None:\n", - " cell.region = cell.region & +lower_bound\n", - " else:\n", - " cell.region = cell.region & +lower_bound & -upper_bound\n", - " cell_list.append(cell)\n", - " return cell_list\n", - "\n", - "\n", - "def shared_elem_geometry(elem_type, eb_d, gr_sq_d, gr_sq_r, r_dt, l1, l2, l3, r_es, es_name):\n", - " \"\"\"Surfaces and regions shared by Zone IA and Zone IIA elements.\n", - " Specs found in Robertson, 1971 Fig 3.4 (p. 17) and Fig 3.5 (p. 18)\"\"\"\n", - " if elem_type == 'core':\n", - " # for main pin section for both I-A and II-A\n", - " ul = openmc.ZCylinder(-l1, l2, r_dt, name='corner_ul')\n", - " br = openmc.ZCylinder(l1, -l2, r_dt, name='corner_br')\n", - " lb = openmc.ZCylinder(-l2, -l1, r_dt, name='corner_lb')\n", - " ru = openmc.ZCylinder(l2, l1, r_dt, name='corner_ru')\n", - " inter_elem_channel = +ul & +br & +lb & +ru\n", - " elif elem_type == 'cr':\n", - " # params for control rods\n", - " r_d = 1.16\n", - " e_d = 2 * r_d / np.sqrt(3)\n", - " r_c = 0.18\n", - " \n", - " ul = openmc.model.hexagonal_prism(origin=(-l1, l2), edge_length=e_d, orientation='x', corner_radius=r_c)\n", - " br = openmc.model.hexagonal_prism(origin=(l1, -l2), edge_length=e_d, orientation='x',corner_radius=r_c)\n", - " lb = openmc.model.hexagonal_prism(origin=(-l2, -l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", - " ru = openmc.model.hexagonal_prism(origin=(l2, l1), edge_length=e_d, orientation='y',corner_radius=r_c)\n", - " inter_elem_channel = ~ul & ~br & ~lb & ~ru\n", - " elem_bound = openmc.rectangular_prism(eb_d*2, eb_d*2) # Pin outer boundary\n", - " gr_sq_neg = openmc.rectangular_prism(gr_sq_d*2, gr_sq_d*2, corner_radius=gr_sq_r) # Graphite square\n", - " \n", - " ul_t = openmc.ZCylinder(-l1, -l3, r_dt, name='corner_ul_tip')\n", - " br_t = openmc.ZCylinder(l1, l3, r_dt, name='corner_br_tip')\n", - " ru_t = openmc.ZCylinder(-l3, l1, r_dt, name='corner_ru_tip')\n", - " lb_t = openmc.ZCylinder(l3, -l1, r_dt, name='corner_lb_tip')\n", - " \n", - " inter_elem_channel = inter_elem_channel & +ul_t & +br_t & +ru_t & +lb_t\n", - " \n", - " gr_corners = ([ul, 'ul'], [br, 'br'], [ru, 'ru'], [lb, 'lb'],\n", - " [ul_t, 'ul_t'], [br_t, 'br_t'], [ru_t, 'ru_t'], [lb_t, 'lb_t'])\n", - " \n", - " extra_surf = openmc.ZCylinder(r=r_es, name=es_name)\n", - " \n", - " \n", - " return elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, extra_surf" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "71b4a322", - "metadata": {}, - "outputs": [], - "source": [ - "def zoneIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4):\n", - " \"\"\"Zone IA element. Specs found in Robertson, 1971 Fig 3.4 (p. 17)\"\"\"\n", - " elem_levels = [22.86, 419.10, 438.15, 445.135]\n", - " level_bounds = []\n", - " for level in elem_levels:\n", - " level_bounds.append(openmc.ZPlane(z0=level))\n", - " s1 = openmc.ZCylinder(r=4.953, name='ia_gr_round_1')\n", - " s2 = openmc.ZCylinder(r=1.71069, name='ia_fuel_hole')\n", - " \n", - " h = 12.66\n", - " theta = np.arctan(4.953 / h)\n", - " r2 = (1 / np.cos(theta))**2 - 1\n", - " s3 = openmc.ZCone(z0=h + elem_levels[2], r2=r2, name='cone_i')\n", - "\n", - " c1 = openmc.Cell(fill=fuel, region=(-s2), name='ia_fuel_inner_1')\n", - " c2 = openmc.Cell(fill=moder, region=(+s2 & -s1), name='ia_moderator_1')\n", - " c3 = openmc.Cell(fill=fuel, region=(+s1 & elem_bound), name='ia_fuel_outer_1')\n", - " ia1 = (c1, c2, c3)\n", - " \n", - " # I-A main (lower 2)\n", - " c4 = c1.clone(clone_materials=False)\n", - " c4.name = 'ia_fuel_inner_main'\n", - " c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg & inter_elem_channel),\n", - " name='ia_moderator_main')\n", - " c6 = openmc.Cell(fill=fuel, region=(~gr_sq_neg & elem_bound & inter_elem_channel),\n", - " name='ia_fuel_outer_main') \n", - " iam = [c4, c5, c6]\n", - " for (corner, name) in gr_corners:\n", - " iam.append(openmc.Cell(fill=moder, region=-corner, name=f'ia_moderator_main_{name}'))\n", - " \n", - " # I-A 2 (upper 1)\n", - " c7 = c1.clone(clone_materials=False)\n", - " c7.name = 'ia_fuel_inner_2'\n", - " c8 = c2.clone(clone_materials=False)\n", - " c8.name = 'ia_moderator_2'\n", - " c9 = c3.clone(clone_materials=False)\n", - " c9.name = 'ia_fuel_outer_2'\n", - " ia2 = (c7, c8, c9)\n", - "\n", - " # I-A 3 (upper 2)\n", - " c10 = c1.clone(clone_materials=False)\n", - " c10.name = 'ia_fuel_inner_3'\n", - " c11 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='ia_moderator_3')\n", - " c12 = openmc.Cell(fill=fuel, region=(+s3 & elem_bound), name='ia_fuel_outer_3')\n", - " ia3 = (c10, c11, c12) \n", - " \n", - " # I-A 4 (upper 3)\n", - " c13 = openmc.Cell(fill=hast, region=(-s2), name='ia_hast')\n", - " c14 = openmc.Cell(fill=moder, region=(+s2 & -gr_round_4), name='ia_moderator_4')\n", - " c15 = openmc.Cell(fill=fuel, region=(+gr_round_4 & elem_bound), name='ia_fuel_outer_4')\n", - " ia4 = (c13, c14, c15)\n", - " \n", - " elem_cells = [ia1, iam, ia2, ia3, ia4]\n", - " # universe_id=1\n", - " ia = openmc.Universe(name='zone_ia')\n", - " ia.add_cells(_bound_zone_cells(elem_cells, level_bounds))\n", - " \n", - " return ia\n", - "\n", - "def zoneIIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4):\n", - " \"\"\"Zone IIA element. Specs found in Robertson, 1971 Fig 3.5 (p. 18)\"\"\"\n", - " elem_levels = [434.34, 436.88, 439.42, 441.96]\n", - " level_bounds = []\n", - " for level in elem_levels:\n", - " level_bounds.append(openmc.ZPlane(z0=level))\n", - " s1 = openmc.ZCylinder(r=3.302, name='iia_fuel_hole_main') # Hole with fuel salt - Fig 3.5, Roberton 1971 (3.27787 - p.47)\n", - " s2 = openmc.ZCylinder(r=0.635, name='iia_fuel_hole_2')\n", - " s3 = openmc.ZCylinder(r=3.65125, name='iia_gr_round_3')\n", - " h = 6.5\n", - " theta = np.arctan(3.65125 / h)\n", - " r2 = (1 / np.cos(theta))**2 - 1\n", - " s4 = openmc.ZCone(z0=h + elem_levels[2], r2=r2, name='cone_ii')\n", - "\n", - " # II-A main (lower 1)\n", - " c1 = openmc.Cell(fill=fuel, region=(-s1), name='iia_fuel_inner_main')\n", - " c2 = openmc.Cell(fill=moder, region=(+s1 & gr_sq_neg & inter_elem_channel), name='iia_moderator_main')\n", - " c3 = openmc.Cell(fill=fuel, region=(~gr_sq_neg & elem_bound & inter_elem_channel), name='iia_fuel_outer_main')\n", - " iiam = [c1, c2, c3]\n", - " \n", - " # II-A 2 (upper 1)\n", - " c4 = openmc.Cell(fill=fuel, region=(-s2), name='iia_fuel_inner_2')\n", - " c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg & inter_elem_channel), name='iia_moderator_2')\n", - " c6 = c3.clone(clone_materials=False)\n", - " c6.name = 'iia_fuel_outer_2'\n", - " iia2 = [c4, c5, c6]\n", - " \n", - " for (corner, name) in gr_corners:\n", - " iiam.append(openmc.Cell(fill=moder, region=-corner, name=f'iia_moderator_main_{name}'))\n", - " iia2.append(openmc.Cell(fill=moder, region=-corner, name=f'iia_moderator_2_{name}'))\n", - "\n", - " # II-A 3 (upper 2)\n", - " c7 = c4.clone(clone_materials=False)\n", - " c7.name = 'iia_fuel_inner_3'\n", - " c8 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='iia_moderator_3')\n", - " c9 = openmc.Cell(fill=fuel, region=(+s3 & elem_bound), name='iia_fuel_outer_3')\n", - " iia3 = (c7, c8, c9)\n", - "\n", - " # II-A 4 (upper 3) \n", - " c10 = openmc.Cell(fill=moder, region=(-s4), name='iia_moderator_4')\n", - " c11 = openmc.Cell(fill=fuel, region=(+s4 & elem_bound), name='iia_fuel_outer_4')\n", - " iia4 = (c10, c11)\n", - "\n", - " # II-A 5 (upper 4)\n", - " c12 = openmc.Cell(fill=moder, region=(-gr_round_4), name='iia_moderator_5')\n", - " c13 = openmc.Cell(fill=fuel, region=(+gr_round_4 & elem_bound), name='iia_fuel_outer_5')\n", - " iia5 = (c12, c13)\n", - " \n", - " elem_cells = [iiam, iia2, iia3, iia4, iia5]\n", - " # universe_id=2\n", - " iia = openmc.Universe(name='zone_iia')\n", - " iia.add_cells(_bound_zone_cells(elem_cells, level_bounds))\n", - " return iia\n", - "\n", - "def void_cell(elem_bound):\n", - " c1 = openmc.Cell(region=elem_bound, name='lattice_void')\n", - " #universe_id=5\n", - " v = openmc.Universe(name='lattice_void')\n", - " v.add_cell(c1)\n", - " return v\n", - "\n", - "def graphite_triangles(elem_bound):\n", - " s1 = openmc.Plane(1.0, 1.0, 0.0, 0.0)\n", - " s2 = openmc.Plane(-1.0, 1.0, 0.0, 0.0)\n", - " s3 = openmc.Plane(1.0, -1.0, 0.0, 0.0)\n", - " s4 = openmc.Plane(-1.0, -1.0, 0.0, 0.0)\n", - " \n", - " surfs = [(s4, 'bottom_left'),\n", - " (s1, 'top_right'),\n", - " (s2, 'top_left'),\n", - " (s3, 'bottom_right')]\n", - " univs = []\n", - " for i, (s, name) in enumerate(surfs): \n", - " c1 = openmc.Cell(fill=moder, region=(-s & elem_bound))\n", - " c2 = openmc.Cell(fill=fuel, region=(+s & elem_bound))\n", - " \n", - " # universe_id = 6+i\n", - " gr_tri = openmc.Universe(name=f'{name}_triangle')\n", - " gr_tri.add_cells([c1, c2])\n", - " univs.append(gr_tri)\n", - " \n", - " return univs" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "07136110", - "metadata": {}, - "outputs": [], - "source": [ - "#elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4 = shared_elem_geometry('core', 5.08, 4.953, 0.46, 0.66802, 4.28498, 4.53898, 5.62102, 2.2225, 'gr_round_4')\n", - "#ia = zoneIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4)\n", - "#iia = zoneIIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4)\n", - "# tres, uno, dos, quatro\n", - "#bl, ur, ul, br = graphite_triangles(elem_bound)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "752c5160", - "metadata": {}, - "outputs": [], - "source": [ - "#ia.plot(width=(20,20),\n", - "# basis='xy',\n", - "# colors=colormap,\n", - "# origin=(0.,0.,300),\n", - "# color_by='material',\n", - "# pixels=(400,400))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "ee56bc53", - "metadata": {}, - "outputs": [], - "source": [ - "#iia.plot(width=(20,20),\n", - "# basis='xz',\n", - "# colors=colormap,\n", - "# origin=(0.,0.,440),\n", - "# color_by='material',\n", - "# pixels=(400,400))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "d17047bd", - "metadata": {}, - "outputs": [], - "source": [ - "def control_rod(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole):\n", - " s1 = openmc.ZCylinder(r=4.7625, name='control_rod')\n", - "\n", - " c1 = openmc.Cell(fill=moder, region=-s1, name='control_rod')\n", - " c2 = openmc.Cell(fill=fuel, region=(+s1 & -fuel_hole), name='cr_fuel_inner')\n", - " c3 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg & inter_elem_channel),\n", - " name='cr_moderator')\n", - " c4 = openmc.Cell(fill=fuel, region= (~gr_sq_neg & elem_bound & inter_elem_channel),\n", - " name='cr_fuel_outer')\n", - " \n", - " #universe_id=3\n", - " cr = openmc.Universe(name='control_rod',\n", - " cells=[c1, c2, c3, c4])\n", - " \n", - " for i, (corner, name) in enumerate(gr_corners):\n", - " if i < 4:\n", - " cr.add_cell(openmc.Cell(fill=moder, region=corner, name=f'cr_moderator_{name}'))\n", - " else:\n", - " cr.add_cell(openmc.Cell(fill=moder, region=-corner, name=f'cr_moderator_{name}'))\n", - "\n", - " return cr\n", - " \n", - "def control_rod_channel(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole):\n", - " c1 = openmc.Cell(fill=fuel, region=(-fuel_hole), name='crc_fuel_inner')\n", - " c2 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg & inter_elem_channel), name='crc_moderator')\n", - " c3 = openmc.Cell(fill=fuel, region=(~gr_sq_neg & elem_bound & inter_elem_channel), name='crc_fuel_outer')\n", - " \n", - " # universe_id=4\n", - " crc = openmc.Universe(name='control_rod_channel',\n", - " cells=[c1, c2, c3])\n", - " \n", - " for i, (corner, name) in enumerate(gr_corners):\n", - " if i < 4:\n", - " crc.add_cell(openmc.Cell(fill=moder, region=corner, name=f'crc_moderator_{name}'))\n", - " else:\n", - " crc.add_cell(openmc.Cell(fill=moder, region=-corner, name=f'crc_moderator_{name}'))\n", - "\n", - " return crc" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "cea2d476", - "metadata": {}, - "outputs": [], - "source": [ - "#elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole = shared_elem_geometry('cr', 7.62, 7.23645, 0.99, 0.8, 5.8801, 6.505, 8.03646, 5.08, 'cr_fuel_hole')\n", - "\n", - "#cr = control_rod(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole)\n", - "#crc = control_rod_channel(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "01b506f1", - "metadata": {}, - "outputs": [], - "source": [ - "#cr.plot(width=(20,20),\n", - "# basis='xy',\n", - "# colors=colormap,\n", - "# origin=(0.,0.,440),\n", - "# color_by='material',\n", - "# pixels=(400,400))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "f2369aa1", - "metadata": {}, - "outputs": [], - "source": [ - "#crc.plot(width=(20,20),\n", - "# basis='xy',\n", - "# colors=colormap,\n", - "# origin=(0.,0.,440),\n", - "# color_by='material',\n", - "# pixels=(400,400))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "7f985e3a", - "metadata": {}, - "outputs": [], - "source": [ - "def shared_root_geometry():\n", - " cr_boundary = openmc.model.rectangular_prism(15.24*2, 15.24*2)\n", - " \n", - " core_base = openmc.ZPlane(z0=0.0, name='core_base')\n", - " core_top = openmc.ZPlane(z0=449.58, name='core_top')\n", - " \n", - " s1 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=208.28, r2=222.71, name='base_octader')\n", - " s2 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=218.44, r2=215.53, name='smaller_octader')\n", - " s3 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=228.60, r2=193.97, name='smallest_octader')\n", - " \n", - " zone_i_boundary = (s1, s2, s3)\n", - "\n", - " zone_ii_boundary = openmc.ZCylinder(r=256.032, name='iib_boundary')\n", - " annulus_boundary = openmc.ZCylinder(r=261.112, name='annulus_boundary')\n", - " lower_plenum_boundary = openmc.ZPlane(z0=-7.62, name='lower_plenum_boundary')\n", - "\n", - " zone_bounds = (cr_boundary, zone_i_boundary, zone_ii_boundary)\n", - " \n", - " core_bounds = (annulus_boundary, lower_plenum_boundary, core_base, core_top)\n", - " \n", - " radial_reflector_boundary = openmc.ZCylinder(r=338.328, name='radial_reflector_boundary') \n", - " bottom_reflector_boundary = openmc.ZPlane(z0=-76.2, name='bottom_axial_reflector_boundary')\n", - " top_reflector_boundary = openmc.ZPlane(z0=525.78, name='top_axial_reflector_boundary') \n", - " \n", - " reflector_bounds = (radial_reflector_boundary,\n", - " bottom_reflector_boundary,\n", - " top_reflector_boundary)\n", - " \n", - " radial_vessel_boundary = openmc.ZCylinder(r=343.408, name='radial_vessel_wall', boundary_type='vacuum')\n", - " bottom_vessel_boundary = openmc.ZPlane(z0=-81.28, name='bottom_vessel_wall', boundary_type='vacuum')\n", - " top_vessel_boundary = openmc.ZPlane(z0=530.86, name='top_vessel_wall', boundary_type='vacuum')\n", - " \n", - " vessel_bounds = (radial_vessel_boundary,\n", - " bottom_vessel_boundary,\n", - " top_vessel_boundary)\n", - " \n", - " return zone_bounds, core_bounds, reflector_bounds, vessel_bounds\n", - "\n", - "def cr_lattice(cr_boundary, core_base, core_top):\n", - " elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole = shared_elem_geometry('cr', 7.62, 7.23645, 0.99, 0.8, 5.8801, 6.505, 8.03646, 5.08, 'cr_fuel_hole')\n", - "\n", - " f = control_rod(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole)\n", - " e = control_rod_channel(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, fuel_hole)\n", - " \n", - " cr = openmc.RectLattice()\n", - " cr.pitch = np.array([15.24, 15.24])\n", - " N = 2 / 2\n", - " cr.lower_left = -1 * cr.pitch * N\n", - " cr.universes = [[f, e],\n", - " [e, f]]\n", - " \n", - " c1 = openmc.Cell(fill=cr, region=(+core_base & -core_top & cr_boundary), name='cr_lattice')\n", - " \n", - " return c1\n", - "\n", - "def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top):\n", - " elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4 = shared_elem_geometry('core', 5.08, 4.953, 0.46, 0.66802, 4.28498, 4.53898, 5.62102, 2.2225, 'gr_round_4')\n", - " l = zoneIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4)\n", - " elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4 = shared_elem_geometry('core', 5.08, 4.953, 0.46, 0.66802, 4.28498, 4.53898, 5.62102, 2.2225, 'gr_round_4')\n", - " z = zoneIIA(elem_bound, gr_sq_neg, gr_corners, inter_elem_channel, gr_round_4)\n", - " v = void_cell(elem_bound)\n", - " # tres, uno, dos, quatro\n", - " t, u, d, q = graphite_triangles(elem_bound) \n", - " \n", - " main = openmc.RectLattice()\n", - " main.pitch = np.array([10.16, 10.16])\n", - " N = 45 / 2\n", - " main.lower_left = -1 * main.pitch * N\n", - " main.universes = [[v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, d, z, z, z, z, z, z, z, z, z, u, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v],\n", - " [v, v, v, v, v, v, v, v, v, v, v, v, v, d, z, z, z, z, l, l, l, l, l, l, l, l, l, z, z, z, z, u, v, v, v, v, v, v, v, v, v, v, v, v, v],\n", - " [v, v, v, v, v, v, v, v, v, v, v, d, z, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, z, u, v, v, v, v, v, v, v, v, v, v, v],\n", - " [v, v, v, v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v, v, v, v],\n", - " [v, v, v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v, v, v],\n", - " [v, v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v, v],\n", - " [v, v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v, v],\n", - " [v, v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v, v],\n", - " [v, v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v, v],\n", - " [v, v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v, v],\n", - " [v, v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v, v],\n", - " [v, v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v, v],\n", - " [v, v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v, v],\n", - " [v, d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u, v],\n", - " [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v],\n", - " [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v],\n", - " [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v],\n", - " [d, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, u],\n", - " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", - " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", - " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", - " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, v, v, v, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", - " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, v, v, v, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", - " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, v, v, v, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", - " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", - " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", - " [z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z],\n", - " [t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q],\n", - " [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v],\n", - " [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v],\n", - " [v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v],\n", - " [v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v],\n", - " [v, v, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, v, v],\n", - " [v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v],\n", - " [v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v],\n", - " [v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v],\n", - " [v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v],\n", - " [v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v],\n", - " [v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v],\n", - " [v, v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v, v],\n", - " [v, v, v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v, v, v],\n", - " [v, v, v, v, v, v, v, v, v, v, t, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, q, v, v, v, v, v, v, v, v, v, v],\n", - " [v, v, v, v, v, v, v, v, v, v, v, t, z, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, z, q, v, v, v, v, v, v, v, v, v, v, v],\n", - " [v, v, v, v, v, v, v, v, v, v, v, v, v, t, z, z, z, z, l, l, l, l, l, l, l, l, l, z, z, z, z, q, v, v, v, v, v, v, v, v, v, v, v, v, v],\n", - " [v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, t, z, z, z, z, z, z, z, z, z, q, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v]]\n", - " \n", - " c1 = openmc.Cell(fill=main, region=(+core_base & -core_top &\n", - " +zone_i_boundary[2] & -zone_i_boundary[1] &\n", - " ~cr_boundary), name='main_lattice_smaller_octader')\n", - " c2 = openmc.Cell(fill=main, region=(+core_base & -core_top &\n", - " -zone_i_boundary[2] &\n", - " ~cr_boundary), name='main_lattice_insite_smallest_octader')\n", - " c3 = openmc.Cell(fill=main, region=(+core_base & -core_top &\n", - " -zone_i_boundary[0] & +zone_i_boundary[1] & +zone_i_boundary[2] &\n", - " ~cr_boundary), name='main_lattice_inside_base_octader_deducted_smaller_smallest')\n", - " main = [c1, c2, c3]\n", - "\n", - " return c1, c2, c3\n", - "\n", - "def zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top):\n", - " # Large elements\n", - " large_angular_width = 3.538\n", - " large_half_w = large_angular_width / 2\n", - " large_positions = np.linspace(0, 315, 8)\n", - " r_outer = 256.032\n", - " r_big1 = 229.6\n", - " r_big2 = 223.6\n", - " rb_1 = (r_big1, r_outer)\n", - " rb_2 = (r_big2, r_outer)\n", - " big_radii = [rb_1, rb_2] * 4\n", - " small_radii = (207.28, r_outer)\n", - " \n", - " r_hole = 3.0875\n", - " hole_args = ({'x0': 242.679, 'y0': 0.0, 'r': r_hole},\n", - " {'x0': 171.60, 'y0': 171.60, 'r': r_hole},\n", - " {'x0': 0.0, 'y0': 242.679, 'r': r_hole},\n", - " {'x0': -171.60, 'y0': 171.60, 'r': r_hole},\n", - " {'x0': -242.679, 'y0': 0.0, 'r': r_hole},\n", - " {'x0': -171.60, 'y0': -171.60, 'r': r_hole},\n", - " {'x0': 0.0, 'y0': -242.697, 'r': r_hole},\n", - " {'x0': 171.60, 'y0': -171.60, 'r': r_hole})\n", - " \n", - " # Small elements\n", - " small_angular_width = 0.96\n", - " adjacent_angular_offset = 0.675 #27/40\n", - " small_elems_per_octant = 25\n", - " \n", - " elem_cells = []\n", - " zone_iib_reg = None\n", - " for i, pos in enumerate(large_positions):\n", - " pos = np.round(pos, 3)\n", - " r1_big, r2_big = big_radii[i]\n", - " t1_big = pos - large_half_w\n", - " t2_big = pos + large_half_w\n", - " s1 = openmc.model.CylinderSector(r1_big, r2_big, t1_big, t2_big, name=f'iib_large_element_{pos}')\n", - " s2 = openmc.ZCylinder(**hole_args[i])\n", - " if isinstance(zone_iib_reg, openmc.Region):\n", - " zone_iib_reg = zone_iib_reg & +s1\n", - " else:\n", - " zone_iib_reg = +s1\n", - " \n", - " elem_cells.append(openmc.Cell(fill=moder, region=(-s1 & +s2), name=f'iib_large_element_{pos}'))\n", - " elem_cells.append(openmc.Cell(fill=fuel, region=(-s2),\n", - " name=f'iib_large_element_fuel_hole_{pos}'))\n", - " t1_small = t2_big + adjacent_angular_offset\n", - " r1_small, r2_small = small_radii\n", - " \n", - " for i in range(0, small_elems_per_octant):\n", - " t2_small = t1_small + small_angular_width\n", - " \n", - " # reflector element\n", - " s5 = openmc.model.CylinderSector(r1_small, r2_small, t1_small, t2_small)\n", - " pos = t2_small - (small_angular_width / 2)\n", - " pos = np.round(pos, 3)\n", - " elem_cells.append(openmc.Cell(fill=moder, region=-s5, name=f'iib_small_element_{pos}'))\n", - " zone_iib_reg = zone_iib_reg & +s5\n", - " t1_small = t2_small + adjacent_angular_offset\n", - " \n", - " #universe_id=10\n", - " iib = openmc.Universe(name='zone_iib', cells=elem_cells)\n", - " iib.add_cell(openmc.Cell(fill=fuel, region=zone_iib_reg, name='zone_iib_fuel'))\n", - " \n", - " c1 = openmc.Cell(fill=iib, region=(+zone_i_boundary[0] &\n", - " +zone_i_boundary[1] &\n", - " +zone_i_boundary[2] &\n", - " -zone_ii_boundary &\n", - " +core_base &\n", - " -core_top), name='zone_iib')\n", - " return c1\n", - "\n", - "\n", - "def annulus(zone_ii_boundary, annulus_boundary, core_base, core_top):\n", - " annulus_reg = +zone_ii_boundary & -annulus_boundary & +core_base & -core_top\n", - " c1 = openmc.Cell(fill=fuel, region=annulus_reg, name='annulus')\n", - " \n", - " return c1\n", - "\n", - "def lower_plenum(core_base, lower_plenum_boundary, annulus_boundary):\n", - " lower_plenum_reg = -core_base & +lower_plenum_boundary & -annulus_boundary \n", - " c1 = openmc.Cell(fill=fuel, region=lower_plenum_reg, name='lower_plenum')\n", - "\n", - " return c1\n", - "\n", - "def reflectors(annulus_boundary, \n", - " radial_reflector_boundary, \n", - " lower_plenum_boundary,\n", - " bottom_reflector_boundary, \n", - " core_top, \n", - " top_reflector_boundary):\n", - " \n", - " radial_reflector_reg = +annulus_boundary & -radial_reflector_boundary & +bottom_reflector_boundary & -top_reflector_boundary\n", - " bottom_reflector_reg = -annulus_boundary & -lower_plenum_boundary & +bottom_reflector_boundary\n", - " top_reflector_reg = -annulus_boundary & +core_top & -top_reflector_boundary\n", - "\n", - " c1 = openmc.Cell(fill=moder, region=radial_reflector_reg, name='radial_reflector')\n", - " c2 = openmc.Cell(fill=moder, region=bottom_reflector_reg, name='bottom_axial_reflector')\n", - " c3 = openmc.Cell(fill=moder, region=top_reflector_reg, name='top_axial_reflector')\n", - " \n", - " return c1, c2, c3\n", - "\n", - "def vessel(radial_reflector_boundary,\n", - " radial_vessel_boundary,\n", - " bottom_vessel_boundary,\n", - " top_vessel_boundary,\n", - " top_reflector_boundary,\n", - " bottom_reflector_boundary):\n", - " radial_vessel_reg = +radial_reflector_boundary & -radial_vessel_boundary & -top_vessel_boundary & +bottom_vessel_boundary\n", - " bottom_vessel_reg = -radial_reflector_boundary & -bottom_reflector_boundary & +bottom_vessel_boundary\n", - " top_vessel_reg = -radial_reflector_boundary & -top_vessel_boundary & +top_reflector_boundary\n", - "\n", - " \n", - " c1 = openmc.Cell(fill=hast, region=radial_vessel_reg, name='radial_vessel_wall')\n", - " c2 = openmc.Cell(fill=hast, region=bottom_vessel_reg, name='bottom_vessel_wall')\n", - " c3 = openmc.Cell(fill=hast, region=top_vessel_reg, name='top_vessel_wall')\n", - " \n", - " return c1, c2, c3" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "cdf61881", - "metadata": {}, - "outputs": [], - "source": [ - "zone_bounds, core_bounds, reflector_bounds, vessel_bounds = shared_root_geometry()\n", - "\n", - "cr_boundary, zone_i_boundary, zone_ii_boundary = zone_bounds\n", - "annulus_boundary, lower_plenum_boundary, core_base, core_top = core_bounds\n", - "radial_reflector_boundary, bottom_reflector_boundary, top_reflector_boundary = reflector_bounds\n", - "radial_vessel_boundary, bottom_vessel_boundary, top_vessel_boundary= vessel_bounds\n", - "\n", - "main = main_lattice(zone_i_boundary, cr_boundary, core_base, core_top)\n", - "cr = cr_lattice(cr_boundary, core_base, core_top)\n", - "iib = zoneIIB(zone_i_boundary, zone_ii_boundary, annulus_boundary, core_base, core_top)\n", - "a = annulus(zone_ii_boundary, annulus_boundary, core_base, core_top)\n", - "lp = lower_plenum(core_base, lower_plenum_boundary, annulus_boundary)\n", - "\n", - "rr, rb, rt = reflectors(annulus_boundary, \n", - " radial_reflector_boundary, \n", - " lower_plenum_boundary,\n", - " bottom_reflector_boundary, \n", - " core_top, \n", - " top_reflector_boundary)\n", - "\n", - "vr, vb, vt = vessel(radial_reflector_boundary,\n", - " radial_vessel_boundary,\n", - " bottom_vessel_boundary,\n", - " top_vessel_boundary,\n", - " top_reflector_boundary,\n", - " bottom_reflector_boundary)\n", - "\n", - "testuniverse = openmc.Universe()\n", - "testuniverse.add_cells([cr, lp, a, rr, rb, rt, vr, vb, vt])\n", - "testuniverse.add_cells(main)\n", - "testuniverse.add_cell(iib)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "2a283441", - "metadata": { - "scrolled": false - }, - "outputs": [], - "source": [ - "#testuniverse.plot(width=(700,700),\n", - "# basis='xy',\n", - "# colors=colormap,\n", - "# origin=(0.,0.,200),\n", - "# color_by='material',\n", - "# pixels=(1000,1000))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "1fab3df4", - "metadata": {}, - "outputs": [], - "source": [ - "#testuniverse.plot(width=(700,650),\n", - "# basis='xz',\n", - "# colors=colormap,\n", - "# origin=(0.,0.,220),\n", - "# color_by='material',\n", - "# pixels=(1000,1000))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "6b0f4320", - "metadata": {}, - "outputs": [], - "source": [ - "geo = openmc.Geometry()\n", - "geo.root_universe = testuniverse\n", - "geo.remove_redundant_surfaces()\n", - "geo.export_to_xml()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "ec266af0", - "metadata": {}, - "outputs": [], - "source": [ - "plots = openmc.Plots()\n", - "\n", - "plot = openmc.Plot(name='detail-zoneIA-IIA-lower1')\n", - "plot.origin=(215, 0, 10.0)\n", - "plot.width=(40, 40)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='detail-zoneIA-main')\n", - "plot.origin=(215, 0, 23.0)\n", - "plot.width=(40, 40)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='detail-zoneIIA-upper1')\n", - "plot.origin=(215, 0, 435)\n", - "plot.width=(40, 40)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='detail-zoneIA-upper1')\n", - "plot.origin=(215, 0, 420)\n", - "plot.width=(40, 40)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='detail-zoneIIA-upper2')\n", - "plot.origin=(215, 0, 437)\n", - "plot.width=(40, 40)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='detail-zoneIA-upper2')\n", - "plot.origin=(215, 0, 439)\n", - "plot.width=(40, 40)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='detail-zoneIIA-upper3')\n", - "plot.origin=(215, 0, 440)\n", - "plot.width=(40, 40)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='detail-zoneIA-upper3')\n", - "plot.origin=(215, 0, 448)\n", - "plot.width=(40, 40)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='detail-zoneIIA-upper4')\n", - "plot.origin=(215, 0, 442)\n", - "plot.width=(40, 40)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='full-zoneIA-IIA-lower1')\n", - "plot.origin=(0.0, 0, 10.0)\n", - "plot.width=(600, 600)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='full-zoneIA-main')\n", - "plot.origin=(0, 0, 23.0)\n", - "plot.width=(600, 600)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='full-zoneIIA-upper1')\n", - "plot.origin=(0, 0, 435)\n", - "plot.width=(600, 600)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='full-zoneIA-upper1')\n", - "plot.origin=(0, 0, 420)\n", - "plot.width=(600, 600)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='full-zoneIIA-upper2')\n", - "plot.origin=(0, 0, 437)\n", - "plot.width=(600, 600)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='full-zoneIA-upper2')\n", - "plot.origin=(0, 0, 439)\n", - "plot.width=(600, 600)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='full-zoneIIA-upper3')\n", - "plot.origin=(0, 0, 440)\n", - "plot.width=(600, 600)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='full-zoneIA-upper3')\n", - "plot.origin=(0, 0, 448)\n", - "plot.width=(600, 600)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='full-zoneIIA-upper4')\n", - "plot.origin=(0, 0, 442)\n", - "plot.width=(600, 600)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xy'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='core-xz-detail-upper')\n", - "plot.origin=(215, 0, 440)\n", - "plot.width=(100, 100)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xz'\n", - "plots.append(plot)\n", - "\n", - "plot = openmc.Plot(name='full-core-xz')\n", - "plot.origin=(0, 0, 200)\n", - "plot.width=(700, 700)\n", - "plot.pixels=(1000,1000)\n", - "plot.color_by='material'\n", - "plot.colors=colormap\n", - "plot.basis='xz'\n", - "plots.append(plot)\n", - "\n", - "plots.export_to_xml()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "76ec95ac", - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python [conda env:openmc-env] *", - "language": "python", - "name": "conda-env-openmc-env-py" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.10.6" - } - }, - "nbformat": 4, - "nbformat_minor": 5 -} From c458c90c699f5a07d13ac13dbae22758db23cf26 Mon Sep 17 00:00:00 2001 From: yardasol Date: Wed, 26 Oct 2022 13:20:09 -0500 Subject: [PATCH 26/62] add changes to release notes --- doc/releasenotes/v0.5.0.rst | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/doc/releasenotes/v0.5.0.rst b/doc/releasenotes/v0.5.0.rst index bd66bb0f7..9da1c46fa 100644 --- a/doc/releasenotes/v0.5.0.rst +++ b/doc/releasenotes/v0.5.0.rst @@ -54,6 +54,7 @@ New Features Describe any new features to the code. - ``openmc`` support via `DepcodeOpenMC` +- OpenMC compatible MSBR model. @@ -81,7 +82,9 @@ Script Changes - Add ``SERPENT_DATA`` and ``SERPENT_ACELIB`` variables to ``.bashrc`` - A new script, ``scripts/ci/openmc-xs.bash``, that downloads the OpenMC HDF5 cross section library. - +- A new script, ``download_endfb71.bash``, that downloads the ENDF/B 7.1 cross section library -- including thermal scattering, decay, and fission yield data -- in ACE format. +- A new script, ``process_endfb71_to_openmc.bash``, that converts the library created by ``download_endfb71.bash`` into an OpenMC-usable HDF5 format. Requires OpenMC to be installed from source to use. +- A new script ``openmc_msbr_model.py``, that creates an OpenMC-usable MSBR model based on the Serpent MSBR model. Python API Changes From 82683c1b1f3790af5af10264f71d376970c0d515 Mon Sep 17 00:00:00 2001 From: yardasol Date: Wed, 26 Oct 2022 13:21:51 -0500 Subject: [PATCH 27/62] openmc_model.py -> openmc_msbr_model.py --- examples/msbr/{openmc_model.py => openmc_msbr_model.py} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename examples/msbr/{openmc_model.py => openmc_msbr_model.py} (100%) diff --git a/examples/msbr/openmc_model.py b/examples/msbr/openmc_msbr_model.py similarity index 100% rename from examples/msbr/openmc_model.py rename to examples/msbr/openmc_msbr_model.py From 0e59520efe02d30af14fee5a5183178acc332b87 Mon Sep 17 00:00:00 2001 From: yardasol Date: Wed, 26 Oct 2022 14:20:43 -0500 Subject: [PATCH 28/62] formatting fixes --- examples/msbr/_control_rods.py | 46 +++- examples/msbr/_core_elements.py | 80 +++++-- examples/msbr/_root_geometry.py | 181 +++++++++++---- examples/msbr/openmc_msbr_model.py | 349 ++++++++++++++++++++++------- 4 files changed, 493 insertions(+), 163 deletions(-) diff --git a/examples/msbr/_control_rods.py b/examples/msbr/_control_rods.py index a74e2ef4a..161fb333a 100644 --- a/examples/msbr/_control_rods.py +++ b/examples/msbr/_control_rods.py @@ -1,7 +1,13 @@ import openmc import numpy as np -def control_rod(gr_sq_neg, gr_extra_regions, inter_elem_channel, fuel_hole, fuel, moder, optimized): +def control_rod(gr_sq_neg, + gr_extra_regions, + inter_elem_channel, + fuel_hole, + fuel, + moder, + optimized): """Create universe for control rod element with control rod fully inserted. Based on specification in Roberton, 1971. @@ -38,15 +44,19 @@ def control_rod(gr_sq_neg, gr_extra_regions, inter_elem_channel, fuel_hole, fuel c1 = openmc.Cell(fill=moder, region=-s1, name='control_rod') c2 = openmc.Cell(fill=fuel, region=(+s1 & -fuel_hole), name='cr_fuel_inner') if optimized: - c3 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg), name='cr_moderator_core') + c3 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg), + name='cr_moderator_core') #universe_id=3 cr = openmc.Universe(name='control_rod', cells=[c1, c2, c3]) for (reg, name) in inter_elem_channel: - cr.add_cell(openmc.Cell(fill=fuel, region=reg, name=f'cr_fuel_outer_{name}')) + cr.add_cell(openmc.Cell(fill=fuel, region=reg, + name=f'cr_fuel_outer_{name}')) else: - c3 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg & inter_elem_channel), + c3 = openmc.Cell(fill=moder, region=(+fuel_hole & + gr_sq_neg & + inter_elem_channel), name='cr_moderator') c4 = openmc.Cell(fill=fuel, region= (~gr_sq_neg & inter_elem_channel), name='cr_fuel_outer') @@ -54,11 +64,18 @@ def control_rod(gr_sq_neg, gr_extra_regions, inter_elem_channel, fuel_hole, fuel cr = openmc.Universe(name='control_rod', cells=[c1, c2, c3, c4]) for (reg, name) in gr_extra_regions: - cr.add_cell(openmc.Cell(fill=moder, region=reg, name=f'cr_moderator_{name}')) + cr.add_cell(openmc.Cell(fill=moder, region=reg, + name=f'cr_moderator_{name}')) return cr -def control_rod_channel(gr_sq_neg, gr_extra_regions, inter_elem_channel, fuel_hole, fuel, moder, optimized): +def control_rod_channel(gr_sq_neg, + gr_extra_regions, + inter_elem_channel, + fuel_hole, + fuel, + moder, + optimized): """Create universe for control rod element with control rod fully withdrawn. Based on specification in Roberton, 1971. @@ -93,22 +110,29 @@ def control_rod_channel(gr_sq_neg, gr_extra_regions, inter_elem_channel, fuel_ho c1 = openmc.Cell(fill=fuel, region=(-fuel_hole), name='crc_fuel_inner') if optimized: - c2 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg), name='crc_moderator_core') + c2 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg), + name='crc_moderator_core') # universe_id=4 crc = openmc.Universe(name='control_rod_channel', cells=[c1, c2]) for (reg, name) in inter_elem_channel: - crc.add_cell(openmc.Cell(fill=fuel, region=reg, name=f'crc_fuel_outer_{name}')) + crc.add_cell(openmc.Cell(fill=fuel, region=reg, + name=f'crc_fuel_outer_{name}')) else: - c2 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg & inter_elem_channel), name='crc_moderator') - c3 = openmc.Cell(fill=fuel, region=(~gr_sq_neg & inter_elem_channel), name='crc_fuel_outer') + c2 = openmc.Cell(fill=moder, region=(+fuel_hole & + gr_sq_neg & + inter_elem_channel), + name='crc_moderator') + c3 = openmc.Cell(fill=fuel, region=(~gr_sq_neg & inter_elem_channel), + name='crc_fuel_outer') # universe_id=4 crc = openmc.Universe(name='control_rod_channel', cells=[c1, c2, c3]) for (reg, name) in gr_extra_regions: - crc.add_cell(openmc.Cell(fill=moder, region=reg, name=f'crc_moderator_{name}')) + crc.add_cell(openmc.Cell(fill=moder, region=reg, + name=f'crc_moderator_{name}')) return crc diff --git a/examples/msbr/_core_elements.py b/examples/msbr/_core_elements.py index 3a2ae54be..dc75c3e58 100644 --- a/examples/msbr/_core_elements.py +++ b/examples/msbr/_core_elements.py @@ -26,7 +26,14 @@ def _bound_zone_cells(cells_tuples, levels): cell_list.append(cell) return cell_list -def zoneIA(gr_sq_neg, gr_extra_regions, inter_elem_channel, gr_round_4, moder, fuel, hast, optimized): +def zoneIA(gr_sq_neg, + gr_extra_regions, + inter_elem_channel, + gr_round_4, + moder, + fuel, + hast, + optimized): """Create universe for Zone IA element. Based on specification in Robertson, 1971 Fig 3.4 (p. 17) @@ -83,17 +90,24 @@ def zoneIA(gr_sq_neg, gr_extra_regions, inter_elem_channel, gr_round_4, moder, f if optimized: s2 = s2.clone() - c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg), name='ia_moderator_main_core') + c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg), + name='ia_moderator_main_core') iam = [c4, c5] for (reg, name) in inter_elem_channel: - iam.append(openmc.Cell(fill=fuel, region=reg, name=f'ia_fuel_outer_main_{name}')) + iam.append(openmc.Cell(fill=fuel, region=reg, + name=f'ia_fuel_outer_main_{name}')) else: - c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg & inter_elem_channel), name='ia_moderator_main') - c6 = openmc.Cell(fill=fuel, region=(~gr_sq_neg & inter_elem_channel), name='ia_fuel_outer_main') + c5 = openmc.Cell(fill=moder, region=(+s2 & + gr_sq_neg & + inter_elem_channel), + name='ia_moderator_main') + c6 = openmc.Cell(fill=fuel, region=(~gr_sq_neg & inter_elem_channel), + name='ia_fuel_outer_main') iam = [c4, c5, c6] for (reg, name) in gr_extra_regions: - iam.append(openmc.Cell(fill=moder, region=reg, name=f'ia_moderator_main_{name}')) + iam.append(openmc.Cell(fill=moder, region=reg, + name=f'ia_moderator_main_{name}')) # I-A 2 (upper 1) @@ -118,9 +132,12 @@ def zoneIA(gr_sq_neg, gr_extra_regions, inter_elem_channel, gr_round_4, moder, f # I-A 4 (upper 3) if optimized: s2 = s2.clone() - c13 = openmc.Cell(fill=hast, region=(-s2), name='ia_hast') - c14 = openmc.Cell(fill=moder, region=(+s2 & -gr_round_4), name='ia_moderator_4') - c15 = openmc.Cell(fill=fuel, region=(+gr_round_4), name='ia_fuel_outer_4') + c13 = openmc.Cell(fill=hast, region=(-s2), + name='ia_hast') + c14 = openmc.Cell(fill=moder, region=(+s2 & -gr_round_4), + name='ia_moderator_4') + c15 = openmc.Cell(fill=fuel, region=(+gr_round_4), + name='ia_fuel_outer_4') ia4 = (c13, c14, c15) elem_cells = [ia1, iam, ia2, ia3, ia4] @@ -129,7 +146,13 @@ def zoneIA(gr_sq_neg, gr_extra_regions, inter_elem_channel, gr_round_4, moder, f ia.add_cells(_bound_zone_cells(elem_cells, level_bounds)) return ia -def zoneIIA(gr_sq_neg, gr_extra_regions, inter_elem_channel, gr_round_4, moder, fuel, optimized): +def zoneIIA(gr_sq_neg, + gr_extra_regions, + inter_elem_channel, + gr_round_4, + moder, + fuel, + optimized): """Create universe for Zone IIA element. Based on specification in Robertson, 1971 Fig 3.5 (p. 18) @@ -184,36 +207,51 @@ def zoneIIA(gr_sq_neg, gr_extra_regions, inter_elem_channel, gr_round_4, moder, c4 = openmc.Cell(fill=fuel, region=(-s2), name='iia_fuel_inner_2') if optimized: # II-A main (lower 1) - c2 = openmc.Cell(fill=moder, region=(+s1 & gr_sq_neg), name='iia_moderator_main_core') + c2 = openmc.Cell(fill=moder, region=(+s1 & gr_sq_neg), + name='iia_moderator_main_core') iiam = [c1, c2] # II-A 2 (upper 1) gr_sq_neg = gr_sq_neg.clone() - c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg), name='iia_moderator_2_core') + c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg), + name='iia_moderator_2_core') iia2 = [c4, c5] for (reg, name) in gr_extra_regions: - iiam.append(openmc.Cell(fill=moder, region=reg, name=f'iia_moderator_main_{name}')) - iia2.append(openmc.Cell(fill=moder, region=(reg), name=f'iia_moderator_main_{name}')) + iiam.append(openmc.Cell(fill=moder, region=reg, + name=f'iia_moderator_main_{name}')) + iia2.append(openmc.Cell(fill=moder, region=(reg), + name=f'iia_moderator_main_{name}')) for (reg, name) in inter_elem_channel: - iiam.append(openmc.Cell(fill=fuel, region=reg, name=f'iia_fuel_outer_main_{name}')) - iia2.append(openmc.Cell(fill=fuel, region=(reg), name=f'iia_fuel_outer_2_{name}')) + iiam.append(openmc.Cell(fill=fuel, region=reg, + name=f'iia_fuel_outer_main_{name}')) + iia2.append(openmc.Cell(fill=fuel, region=(reg), + name=f'iia_fuel_outer_2_{name}')) else: # II-A main (lower 1) - c2 = openmc.Cell(fill=moder, region=(+s1 & gr_sq_neg & inter_elem_channel), name='iia_moderator_main') - c3 = openmc.Cell(fill=fuel, region=(~gr_sq_neg & inter_elem_channel), name='iia_fuel_outer_main') + c2 = openmc.Cell(fill=moder, region=(+s1 & + gr_sq_neg & + inter_elem_channel), + name='iia_moderator_main') + c3 = openmc.Cell(fill=fuel, region=(~gr_sq_neg & inter_elem_channel), + name='iia_fuel_outer_main') iiam = [c1, c2, c3] # II-A 2 (upper 1) - c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg & inter_elem_channel), name='iia_moderator_2') + c5 = openmc.Cell(fill=moder, region=(+s2 & + gr_sq_neg & + inter_elem_channel), + name='iia_moderator_2') c6 = c3.clone(clone_materials=False) c6.name = 'iia_fuel_outer_2' iia2 = [c4, c5, c6] for (reg, name) in gr_extra_regions: - iiam.append(openmc.Cell(fill=moder, region=reg, name=f'iia_moderator_main_{name}')) - iia2.append(openmc.Cell(fill=moder, region=reg, name=f'iia_moderator_2_{name}')) + iiam.append(openmc.Cell(fill=moder, region=reg, + name=f'iia_moderator_main_{name}')) + iia2.append(openmc.Cell(fill=moder, region=reg, + name=f'iia_moderator_2_{name}')) # II-A 3 (upper 2) if optimized: diff --git a/examples/msbr/_root_geometry.py b/examples/msbr/_root_geometry.py index c18351b48..0d88508a5 100644 --- a/examples/msbr/_root_geometry.py +++ b/examples/msbr/_root_geometry.py @@ -2,7 +2,7 @@ import numpy as np def shared_root_geometry(): -"""Creates surfaces and regions for root geometry. + """Creates surfaces and regions for root geometry. Returns ------- @@ -20,28 +20,46 @@ def shared_root_geometry(): core_base = openmc.ZPlane(z0=0.0, name='core_base') core_top = openmc.ZPlane(z0=449.58, name='core_top') - s1 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=208.28, r2=222.71, name='base_octader') - s2 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=218.44, r2=215.53, name='smaller_octader') - s3 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=228.60, r2=193.97, name='smallest_octader') + s1 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=208.28, r2=222.71, + name='base_octader') + s2 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=218.44, r2=215.53, + name='smaller_octader') + s3 = openmc.model.IsogonalOctagon(center=(0.0,0.0), r1=228.60, r2=193.97, + name='smallest_octader') zone_i_boundary = (s1, s2, s3) zone_ii_boundary = openmc.ZCylinder(r=256.032, name='iib_boundary') annulus_boundary = openmc.ZCylinder(r=261.112, name='annulus_boundary') - lower_plenum_boundary = openmc.ZPlane(z0=-7.62, name='lower_plenum_boundary') - - zone_bounds = (cr_boundary, zone_i_boundary, zone_ii_boundary) - core_bounds = (annulus_boundary, lower_plenum_boundary, core_base, core_top) - radial_reflector_boundary = openmc.ZCylinder(r=338.328, name='radial_reflector_boundary') - bottom_reflector_boundary = openmc.ZPlane(z0=-76.2, name='bottom_axial_reflector_boundary') - top_reflector_boundary = openmc.ZPlane(z0=525.78, name='top_axial_reflector_boundary') + lower_plenum_boundary = openmc.ZPlane(z0=-7.62, + name='lower_plenum_boundary') + + zone_bounds = (cr_boundary, + zone_i_boundary, + zone_ii_boundary) + core_bounds = (annulus_boundary, + lower_plenum_boundary, + core_base, + core_top) + radial_reflector_boundary = \ + openmc.ZCylinder(r=338.328, name='radial_reflector_boundary') + bottom_reflector_boundary = \ + openmc.ZPlane(z0=-76.2, name='bottom_axial_reflector_boundary') + top_reflector_boundary = \ + openmc.ZPlane(z0=525.78, name='top_axial_reflector_boundary') reflector_bounds = (radial_reflector_boundary, bottom_reflector_boundary, top_reflector_boundary) - radial_vessel_boundary = openmc.ZCylinder(r=343.408, name='radial_vessel_wall', boundary_type='vacuum') - bottom_vessel_boundary = openmc.ZPlane(z0=-81.28, name='bottom_vessel_wall', boundary_type='vacuum') - top_vessel_boundary = openmc.ZPlane(z0=530.86, name='top_vessel_wall', boundary_type='vacuum') + radial_vessel_boundary = openmc.ZCylinder(r=343.408, + name='radial_vessel_wall', + boundary_type='vacuum') + bottom_vessel_boundary = openmc.ZPlane(z0=-81.28, + name='bottom_vessel_wall', + boundary_type='vacuum') + top_vessel_boundary = openmc.ZPlane(z0=530.86, + name='top_vessel_wall', + boundary_type='vacuum') vessel_bounds = (radial_vessel_boundary, bottom_vessel_boundary, @@ -49,7 +67,13 @@ def shared_root_geometry(): return zone_bounds, core_bounds, reflector_bounds, vessel_bounds -def zoneIIB(zone_i_boundary, zone_ii_boundary, core_base, core_top, fuel, moder, optimized): +def zoneIIB(zone_i_boundary, + zone_ii_boundary, + core_base, + core_top, + fuel, + moder, + optimized): """ Creates Zone IIB graphite slab elements. Parameters @@ -113,24 +137,41 @@ def zoneIIB(zone_i_boundary, zone_ii_boundary, core_base, core_top, fuel, moder, r1_big, r2_big = big_radii[i] t1_big = np.round(pos - large_half_w, 3) t2_big = np.round(pos + large_half_w, 3) - s1 = openmc.model.CylinderSector(r1_big, r2_big, t1_big, t2_big, name=f'iib_large_element_{pos}') + s1 = openmc.model.CylinderSector(r1_big, + r2_big, + t1_big, + t2_big, + name=f'iib_large_element_{pos}') s2 = openmc.ZCylinder(**hole_args[i]) - elem_cells.append(openmc.Cell(fill=moder, region=(-s1 & +s2), name=f'iib_large_element_{pos}')) - elem_cells.append(openmc.Cell(fill=fuel, region=(-s2), name=f'iib_large_element_fuel_hole_{pos}')) + elem_cells.append(openmc.Cell(fill=moder, region=(-s1 & +s2), + name=f'iib_large_element_{pos}')) + elem_cells.append(openmc.Cell(fill=fuel, region=(-s2), + name=('iib_large_element' + f'_fuel_hole_{pos}'))) t1_small = np.round(t2_big + adjacent_angular_offset, 3) r1_small, r2_small = small_radii if optimized: # Inter element fuel channel - s3 = openmc.model.CylinderSector(r1_small, r2_small, t2_big, t1_small) + s3 = openmc.model.CylinderSector(r1_small, + r2_small, + t2_big, + t1_small) cpos = t2_big + (adjacent_angular_offset / 2) cpos = np.round(cpos, 3) - elem_cells.append(openmc.Cell(fill=fuel, region=-s3, name=f'inter_element_fuel_channel_{cpos}')) - - s4 = openmc.model.CylinderSector(r1_small, r1_big, t1_big, t2_big) - elem_cells.append(openmc.Cell(fill=fuel, region=-s4, name=f'inter_element_fuel_channel_{pos}')) + elem_cells.append(openmc.Cell(fill=fuel, region=-s3, + name=('inter_element_fuel' + f'_channel_{cpos}'))) + + s4 = openmc.model.CylinderSector(r1_small, + r1_big, + t1_big, + t2_big) + elem_cells.append(openmc.Cell(fill=fuel, region=-s4, + name=('inter_element_fuel' + f'_channel_{pos}'))) else: if isinstance(zone_iib_reg, openmc.Region): zone_iib_reg = zone_iib_reg & +s1 @@ -143,8 +184,13 @@ def zoneIIB(zone_i_boundary, zone_ii_boundary, core_base, core_top, fuel, moder, # reflector element pos = t2_small - (small_angular_width / 2) pos = np.round(pos, 3) - s5 = openmc.model.CylinderSector(r1_small, r2_small, t1_small, t2_small, name=f'iib_small_element_{pos}') - elem_cells.append(openmc.Cell(fill=moder, region=-s5, name=f'iib_small_element_{pos}')) + s5 = openmc.model.CylinderSector(r1_small, + r2_small, + t1_small, + t2_small, + name=f'iib_small_element_{pos}') + elem_cells.append(openmc.Cell(fill=moder, region=-s5, + name=f'iib_small_element_{pos}')) t1_small = np.round(t2_small + adjacent_angular_offset, 3) @@ -152,8 +198,15 @@ def zoneIIB(zone_i_boundary, zone_ii_boundary, core_base, core_top, fuel, moder, # inter-element fuel channel cpos = t2_small + (adjacent_angular_offset/2) cpos = np.round(cpos, 3) - s6 = openmc.model.CylinderSector(r1_small, r2_small, t2_small, t1_small, name=f'inter_element_fuel_channel_{cpos}') - elem_cells.append(openmc.Cell(fill=fuel, region=-s6, name=f'inter_element_fuel_channel_{cpos}')) + s6 = openmc.model.CylinderSector(r1_small, + r2_small, + t2_small, + t1_small, + name=('inter_element_fuel' + f'_channel_{cpos}')) + elem_cells.append(openmc.Cell(fill=fuel, region=-s6, + name=('inter_element_fuel' + f'_channel_{cpos}'))) else: zone_iib_reg = zone_iib_reg & +s5 @@ -161,9 +214,18 @@ def zoneIIB(zone_i_boundary, zone_ii_boundary, core_base, core_top, fuel, moder, iib = openmc.Universe(name='zone_iib', cells=elem_cells) s1, s2, s3 = zone_i_boundary if optimized: - oct1_maxy, oct1_miny, oct1_maxx, oct1_minx, oct1_ur, oct1_br, oct1_bl, oct1_ul = list((-s1).get_surfaces().values()) - oct2_maxy, oct2_miny, oct2_maxx, oct2_minx, oct2_ur, oct2_br, oct2_bl, oct2_ul = list((-s3).get_surfaces().values()) - oct3_maxy, oct3_miny, oct3_maxx, oct3_minx, oct3_ur, oct3_br, oct3_bl, oct3_ul = list((-s2).get_surfaces().values()) + (oct1_maxy, oct1_miny, + oct1_maxx, oct1_minx, + oct1_ur, oct1_br, + oct1_bl, oct1_ul) = list((-s1).get_surfaces().values()) + (oct2_maxy, oct2_miny, + oct2_maxx, oct2_minx, + oct2_ur, oct2_br, + oct2_bl, oct2_ul) = list((-s2).get_surfaces().values()) + (oct3_maxy, oct3_miny, + oct3_maxx, oct3_minx, + oct3_ur, oct3_br, + oct3_bl, oct3_ul) = list((-s3).get_surfaces().values()) cap_r =(+oct3_maxx & -zone_ii_boundary) @@ -208,15 +270,20 @@ def zoneIIB(zone_i_boundary, zone_ii_boundary, core_base, core_top, fuel, moder, iib_cells = [] for reg, name in regs: - iib_cells.append(openmc.Cell(fill=iib, region=(reg & +core_base & -core_top), name=f'zone_iib_{name}')) + iib_cells.append(openmc.Cell(fill=iib, region=(reg & + +core_base & + -core_top), + name=f'zone_iib_{name}')) else: - iib.add_cell(openmc.Cell(fill=fuel, region=zone_iib_reg, name='zone_iib_fuel')) + iib.add_cell(openmc.Cell(fill=fuel, region=zone_iib_reg, + name='zone_iib_fuel')) iib_cells = [openmc.Cell(fill=iib, region=(+s1 & +s2 & +s3 & -zone_ii_boundary & +core_base & - -core_top), name='zone_iib')] + -core_top), + name='zone_iib')] return iib_cells def annulus(zone_ii_boundary, annulus_boundary, core_base, core_top, fuel): @@ -302,13 +369,23 @@ def reflectors(annulus_boundary, c3 : openmc.Cell Top axial reflector. """ - radial_reflector_reg = +annulus_boundary & -radial_reflector_boundary & +bottom_reflector_boundary & -top_reflector_boundary - bottom_reflector_reg = -annulus_boundary & -lower_plenum_boundary & +bottom_reflector_boundary - top_reflector_reg = -annulus_boundary & +core_top & -top_reflector_boundary - - c1 = openmc.Cell(fill=moder, region=radial_reflector_reg, name='radial_reflector') - c2 = openmc.Cell(fill=moder, region=bottom_reflector_reg, name='bottom_axial_reflector') - c3 = openmc.Cell(fill=moder, region=top_reflector_reg, name='top_axial_reflector') + radial_reflector_reg = (+annulus_boundary & + -radial_reflector_boundary & + +bottom_reflector_boundary & + -top_reflector_boundary) + bottom_reflector_reg = (-annulus_boundary & + -lower_plenum_boundary & + +bottom_reflector_boundary) + top_reflector_reg = (-annulus_boundary & + +core_top & + -top_reflector_boundary) + + c1 = openmc.Cell(fill=moder, region=radial_reflector_reg, + name='radial_reflector') + c2 = openmc.Cell(fill=moder, region=bottom_reflector_reg, + name='bottom_axial_reflector') + c3 = openmc.Cell(fill=moder, region=top_reflector_reg, + name='top_axial_reflector') return c1, c2, c3 def vessel(radial_reflector_boundary, @@ -346,11 +423,21 @@ def vessel(radial_reflector_boundary, c3 : openmc.Cell Top vessel wall. """ - radial_vessel_reg = +radial_reflector_boundary & -radial_vessel_boundary & -top_vessel_boundary & +bottom_vessel_boundary - bottom_vessel_reg = -radial_reflector_boundary & -bottom_reflector_boundary & +bottom_vessel_boundary - top_vessel_reg = -radial_reflector_boundary & -top_vessel_boundary & +top_reflector_boundary - - c1 = openmc.Cell(fill=hast, region=radial_vessel_reg, name='radial_vessel_wall') - c2 = openmc.Cell(fill=hast, region=bottom_vessel_reg, name='bottom_vessel_wall') - c3 = openmc.Cell(fill=hast, region=top_vessel_reg, name='top_vessel_wall') + radial_vessel_reg = (+radial_reflector_boundary & + -radial_vessel_boundary & + -top_vessel_boundary & + +bottom_vessel_boundary) + bottom_vessel_reg = (-radial_reflector_boundary & + -bottom_reflector_boundary & + +bottom_vessel_boundary) + top_vessel_reg = (-radial_reflector_boundary & + -top_vessel_boundary & + +top_reflector_boundary) + + c1 = openmc.Cell(fill=hast, region=radial_vessel_reg, + name='radial_vessel_wall') + c2 = openmc.Cell(fill=hast, region=bottom_vessel_reg, + name='bottom_vessel_wall') + c3 = openmc.Cell(fill=hast, region=top_vessel_reg, + name='top_vessel_wall') return c1, c2, c3 diff --git a/examples/msbr/openmc_msbr_model.py b/examples/msbr/openmc_msbr_model.py index 4450ff95c..8a7a61412 100644 --- a/examples/msbr/openmc_msbr_model.py +++ b/examples/msbr/openmc_msbr_model.py @@ -64,7 +64,16 @@ def parse_arguments(): args = parser.parse_args() return bool(args.optimized), bool(args.deplete) -def shared_elem_geometry(elem_type, gr_sq_d, gr_sq_r, r_rib, l1, l2, l3, r_es, es_name, optimized): +def shared_elem_geometry(elem_type, + gr_sq_d, + gr_sq_r, + r_rib, + l1, + l2, + l3, + r_es, + es_name, + optimized): """Creates surfaces and regions for lattice elements. Parameters @@ -145,22 +154,30 @@ def shared_elem_geometry(elem_type, gr_sq_d, gr_sq_r, r_rib, l1, l2, l3, r_es, e # Graphite element rib regions. 'fill' regions fill in the gap between # the rounded corner and the 'main' rib. rib_ul = -ul & +gr_maxy - rib_ul_fill = -ul & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy + rib_ul_fill = (-ul & +gr_cyl_ul & -gr_maxy & + -gr_cyl_minx & +gr_cyl_maxy) rib_br = -br & -gr_miny - rib_br_fill = -br & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny + rib_br_fill = (-br & +gr_cyl_br & +gr_miny & + +gr_cyl_maxx & -gr_cyl_miny) rib_lb = -lb & -gr_minx - rib_lb_fill = -lb & +gr_cyl_lb & +gr_minx & -gr_cyl_minx & -gr_cyl_miny + rib_lb_fill = (-lb & +gr_cyl_lb & +gr_minx & + -gr_cyl_minx & -gr_cyl_miny) rib_ru = -ru & +gr_maxx - rib_ru_fill = -ru & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxx & +gr_cyl_maxy + rib_ru_fill = (-ru & +gr_cyl_ru & -gr_maxx & + +gr_cyl_maxx & +gr_cyl_maxy) # inter-element fuel channel regions - iec_r = +gr_cyl_miny & -gr_cyl_maxy & +gr_maxx & +lb_t & +ru & +gr_cyl_ru + iec_r = (+gr_cyl_miny & -gr_cyl_maxy & +gr_maxx & + +lb_t & +ru & +gr_cyl_ru) iec_ru = (+gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy) & +ru & +br_t - iec_u = +gr_cyl_minx & -gr_cyl_maxx & +gr_maxy & +br_t & +ul & +gr_cyl_ul + iec_u = (+gr_cyl_minx & -gr_cyl_maxx & +gr_maxy & + +br_t & +ul & +gr_cyl_ul) iec_ul = (+gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy) & +ul & +ru_t - iec_l = +gr_cyl_miny & -gr_cyl_maxy & -gr_minx & +ru_t & +lb & +gr_cyl_lb + iec_l = (+gr_cyl_miny & -gr_cyl_maxy & -gr_minx & + +ru_t & +lb & +gr_cyl_lb) iec_lb = (+gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny) & +lb & +ul_t - iec_b = +gr_cyl_minx & -gr_cyl_maxx & -gr_miny & +ul_t & +br & +gr_cyl_br + iec_b = (+gr_cyl_minx & -gr_cyl_maxx & + -gr_miny & +ul_t & +br & +gr_cyl_br) iec_br = (+gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny) & +br & +lb_t inter_elem_channel = [[iec_r, 'outer_r'], [iec_ru, 'outer_ru'], @@ -184,10 +201,14 @@ def shared_elem_geometry(elem_type, gr_sq_d, gr_sq_r, r_rib, l1, l2, l3, r_es, e r_c = 0.18 # Base rib region - ul = openmc.model.hexagonal_prism(origin=(-l1, l2), edge_length=e_d, orientation='x', corner_radius=r_c) - br = openmc.model.hexagonal_prism(origin=(l1, -l2), edge_length=e_d, orientation='x',corner_radius=r_c) - lb = openmc.model.hexagonal_prism(origin=(-l2, -l1), edge_length=e_d, orientation='y',corner_radius=r_c) - ru = openmc.model.hexagonal_prism(origin=(l2, l1), edge_length=e_d, orientation='y',corner_radius=r_c) + ul = openmc.model.hexagonal_prism(origin=(-l1, l2), edge_length=e_d, + orientation='x', corner_radius=r_c) + br = openmc.model.hexagonal_prism(origin=(l1, -l2), edge_length=e_d, + orientation='x',corner_radius=r_c) + lb = openmc.model.hexagonal_prism(origin=(-l2, -l1), edge_length=e_d, + orientation='y',corner_radius=r_c) + ru = openmc.model.hexagonal_prism(origin=(l2, l1), edge_length=e_d, + orientation='y',corner_radius=r_c) if optimized: # Split base rib region into component surfaces @@ -223,13 +244,17 @@ def shared_elem_geometry(elem_type, gr_sq_d, gr_sq_r, r_rib, l1, l2, l3, r_es, e # Graphite element rib regions. 'fill' regions fill in the gap # between the rounded element corner and the 'main' rib. rib_ul = -ul_ul & -ul_ur & +gr_maxy - rib_ul_fill = -ul_ul & +ul_bl & +ul_cyl_l_out & +gr_cyl_ul & -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy + rib_ul_fill = (-ul_ul & +ul_bl & +ul_cyl_l_out & +gr_cyl_ul & + -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy) rib_lb = +lb_bl & -lb_ul & -gr_minx - rib_lb_fill = +lb_bl & +lb_br & +lb_cyl_b_out & +gr_cyl_lb & +gr_minx & -gr_cyl_miny & -gr_cyl_minx + rib_lb_fill = (+lb_bl & +lb_br & +lb_cyl_b_out & +gr_cyl_lb & + +gr_minx & -gr_cyl_miny & -gr_cyl_minx) rib_br = +br_br & +br_bl & -gr_miny - rib_br_fill = +br_br & -br_ur & +br_cyl_r_out & +gr_cyl_br & +gr_miny & +gr_cyl_maxx & -gr_cyl_miny + rib_br_fill = (+br_br & -br_ur & +br_cyl_r_out & +gr_cyl_br & + +gr_miny & +gr_cyl_maxx & -gr_cyl_miny) rib_ru = +ru_br & -ru_ur & +gr_maxx - rib_ru_fill = -ru_ur & -ru_ul & +ru_cyl_u_out & +gr_cyl_ru & -gr_maxx & +gr_cyl_maxy & +gr_cyl_maxx + rib_ru_fill = (-ru_ur & -ru_ul & +ru_cyl_u_out & +gr_cyl_ru & + -gr_maxx & +gr_cyl_maxy & +gr_cyl_maxx) # Inter-element channel regions. 'fill' regions fill in the gap # between the rounded element corner and the 'main' rib @@ -249,14 +274,22 @@ def shared_elem_geometry(elem_type, gr_sq_d, gr_sq_r, r_rib, l1, l2, l3, r_es, e iec_br_main = +gr_cyl_br & (-br_br) & +lb_t iec_br_fill1 = +gr_cyl_br & -gr_cyl_miny & (+br_ur & +br_br) & +lb_t iec_br_fill2 = +gr_cyl_br & ((-br_cyl_r_out)) & -br_ur & +br_br - inter_elem_channel = [[iec_r, 'outer_r'], [iec_ru_main, 'outer_ru_main'], - [iec_ru_fill1, 'outer_ru_fill1'], [iec_ru_fill2, 'outer_ru_fill2'], - [iec_u, 'outer_u'], [iec_ul_main, 'outer_ul_main'], - [iec_ul_fill1, 'outer_ul_fill1'], [iec_ul_fill2, 'outer_ul_fill2'], - [iec_l, 'outer_l'], [iec_lb_main, 'outer_lb_main'], - [iec_lb_fill1, 'outer_lb_fill1'], [iec_lb_fill2, 'outer_lb_fill2'], - [iec_b, 'outer_b'], [iec_br_main, 'outer_br_main'], - [iec_br_fill1, 'outer_br_fill1'], [iec_br_fill2, 'outer_br_fill2']] + inter_elem_channel = [[iec_r, 'outer_r'], + [iec_ru_main, 'outer_ru_main'], + [iec_ru_fill1, 'outer_ru_fill1'], + [iec_ru_fill2, 'outer_ru_fill2'], + [iec_u, 'outer_u'], + [iec_ul_main, 'outer_ul_main'], + [iec_ul_fill1, 'outer_ul_fill1'], + [iec_ul_fill2, 'outer_ul_fill2'], + [iec_l, 'outer_l'], + [iec_lb_main, 'outer_lb_main'], + [iec_lb_fill1, 'outer_lb_fill1'], + [iec_lb_fill2, 'outer_lb_fill2'], + [iec_b, 'outer_b'], + [iec_br_main, 'outer_br_main'], + [iec_br_fill1, 'outer_br_fill1'], + [iec_br_fill2, 'outer_br_fill2']] else: rib_ul = ul @@ -266,11 +299,20 @@ def shared_elem_geometry(elem_type, gr_sq_d, gr_sq_r, r_rib, l1, l2, l3, r_es, e inter_elem_channel = ~ul & ~br & ~lb & ~ru - ribs = [[rib_ul, 'rib_ul'], [rib_br, 'rib_br'], [rib_ru, 'rib_ru'], [rib_lb, 'rib_lb'], - [rib_ul_t, 'rib_ul_t'], [rib_br_t, 'rib_br_t'], [rib_ru_t, 'rib_ru_t'], [rib_lb_t, 'rib_lb_t']] + ribs = [[rib_ul, 'rib_ul'], + [rib_br, 'rib_br'], + [rib_ru, 'rib_ru'], + [rib_lb, 'rib_lb'], + [rib_ul_t, 'rib_ul_t'], + [rib_br_t, 'rib_br_t'], + [rib_ru_t, 'rib_ru_t'], + [rib_lb_t, 'rib_lb_t']] if optimized: - ribs += [[rib_ul_fill, 'rib_ul_fill'], [rib_br_fill, 'rib_br_fill'], [rib_ru_fill, 'rib_ru_fill'], [rib_lb_fill, 'rib_lb_fill']] + ribs += [[rib_ul_fill, 'rib_ul_fill'], + [rib_br_fill, 'rib_br_fill'], + [rib_ru_fill, 'rib_ru_fill'], + [rib_lb_fill, 'rib_lb_fill']] # Rectangular slabs regions that line up with rounded corners slab_u = -gr_maxy & +gr_cyl_maxy & -gr_cyl_maxx & +gr_cyl_minx @@ -283,10 +325,14 @@ def shared_elem_geometry(elem_type, gr_sq_d, gr_sq_r, r_rib, l1, l2, l3, r_es, e corner_br = -gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny corner_lb = -gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny corner_ru = -gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy - corners = [[quarter_ul, 'quarter_ul'], [quarter_br, 'quarter_br'], [quarter_ru, 'quarter_ru'], [quarter_lb, 'quarter_lb']] + corners = [[corner_ul, 'corner_ul'], + [corner_br, 'corner_br'], + [corner_ru, 'corner_ru'], + [corner_lb, 'corner_lb']] gr_extra_regions= slabs + corners + ribs else: + gr_extra_regions = ribs inter_elem_channel = inter_elem_channel & +ul_t & +br_t & +ru_t & +lb_t @@ -318,13 +364,51 @@ def cr_lattice(cr_boundary, core_base, core_top, optimized): Cell containing the control rod lattice. """ - gr_sq_neg, gr_extra_regions, inter_elem_channel, fuel_hole = shared_elem_geometry('cr', 7.23645, 0.99, 0.8, 5.8801, 6.505, 8.03646, 5.08, 'cr_fuel_hole', optimized) - - f = control_rod(gr_sq_neg, gr_extra_regions, inter_elem_channel, fuel_hole, fuel, moder, optimized) + (gr_sq_neg, + gr_extra_regions, + inter_elem_channel, + fuel_hole) = shared_elem_geometry('cr', + 7.23645, + 0.99, + 0.8, + 5.8801, + 6.505, + 8.03646, + 5.08, + 'cr_fuel_hole', + optimized) + + f = control_rod(gr_sq_neg, + gr_extra_regions, + inter_elem_channel, + fuel_hole, + fuel, + moder, + optimized) if optimized: # call a second time to have unique surfaces - gr_sq_neg, gr_extra_regions, inter_elem_channel, fuel_hole = shared_elem_geometry('cr', 7.23645, 0.99, 0.8, 5.8801, 6.505, 8.03646, 5.08, 'cr_fuel_hole', optimized) - e = control_rod_channel(gr_sq_neg, gr_extra_regions, inter_elem_channel, fuel_hole, fuel, moder, optimized) + (gr_sq_neg, + gr_extra_regions, + inter_elem_channel, + fuel_hole) = shared_elem_geometry('cr', + 7.23645, + 0.99, + 0.8, + 5.8801, + 6.505, + 8.03646, + 5.08, + 'cr_fuel_hole', + optimized) + + + e = control_rod_channel(gr_sq_neg, + gr_extra_regions, + inter_elem_channel, + fuel_hole, + fuel, + moder, + optimized) cr = openmc.RectLattice() cr.pitch = np.array([15.24, 15.24]) @@ -332,7 +416,8 @@ def cr_lattice(cr_boundary, core_base, core_top, optimized): cr.lower_left = -1 * cr.pitch * N cr.universes = [[f, e], [e, f]] - c1 = openmc.Cell(fill=cr, region=(+core_base & -core_top & cr_boundary), name='cr_lattice') + c1 = openmc.Cell(fill=cr, region=(+core_base & -core_top & cr_boundary), + name='cr_lattice') return c1 @@ -360,16 +445,49 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): main_cells : list of openmc.Cell Cells containing the main lattice. - """ optimized : bool - Flag indicating whether or not to construct 'optimized' geometry - with cell regions consiting only of :class:`openmc.Intersection` - objects. This will speed up any calculations by around 50%, and is thus - optimized. - - gr_sq_neg, gr_extra_regions, inter_elem_channel, gr_round_4 = shared_elem_geometry('core', 4.953, 0.46, 0.66802, 4.28498, 4.53898, 5.62102, 2.2225, 'gr_round_4', optimized) - l = zoneIA(gr_sq_neg, gr_extra_regions, inter_elem_channel, gr_round_4, moder, fuel, hast, optimized) - gr_sq_neg, gr_extra_regions, inter_elem_channel, gr_round_4 = shared_elem_geometry('core', 4.953, 0.46, 0.66802, 4.28498, 4.53898, 5.62102, 2.2225, 'gr_round_4', optimized) - z = zoneIIA(gr_sq_neg, gr_extra_regions, inter_elem_channel, gr_round_4, moder, fuel, optimized) + """ + (gr_sq_neg, + gr_extra_regions, + inter_elem_channel, + gr_round_4) = shared_elem_geometry('core', + 4.953, + 0.46, + 0.66802, + 4.28498, + 4.53898, + 5.62102, + 2.2225, + 'gr_round_4', + optimized) + l = zoneIA(gr_sq_neg, + gr_extra_regions, + inter_elem_channel, + gr_round_4, + moder, + fuel, + hast, + optimized) + (gr_sq_neg, + gr_extra_regions, + inter_elem_channel, + gr_round_4) = shared_elem_geometry('core', + 4.953, + 0.46, + 0.66802, + 4.28498, + 4.53898, + 5.62102, + 2.2225, + 'gr_round_4', + optimized) + + z = zoneIIA(gr_sq_neg, + gr_extra_regions, + inter_elem_channel, + gr_round_4, + moder, + fuel, + optimized) v = void_cell() # tres, uno, dos, quatro t, u, d, q = graphite_triangles(fuel, moder) @@ -427,10 +545,22 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): [v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, t, z, z, z, z, z, z, z, z, z, q, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v]] if optimized: # Octagon subsurfaces - oct1_maxy, oct1_miny, oct1_maxx, oct1_minx, oct1_ur, oct1_br, oct1_bl, oct1_ul = list((-s1).get_surfaces().values()) - oct2_maxy, oct2_miny, oct2_maxx, oct2_minx, oct2_ur, oct2_br, oct2_bl, oct2_ul = list((-s2).get_surfaces().values()) - oct3_maxy, oct3_miny, oct3_maxx, oct3_minx, oct3_ur, oct3_br, oct3_bl, oct3_ul = list((-s3).get_surfaces().values()) - cb_minx, cb_maxx, cb_miny, cb_maxy = list(cr_boundary.get_surfaces().values()) + (oct1_maxy, oct1_miny, + oct1_maxx, oct1_minx, + oct1_ur, oct1_br, + oct1_bl, oct1_ul) = list((-s1).get_surfaces().values()) + (oct2_maxy, oct2_miny, + oct2_maxx, oct2_minx, + oct2_ur, oct2_br, + oct2_bl, oct2_ul) = list((-s2).get_surfaces().values()) + (oct3_maxy, oct3_miny, + oct3_maxx, oct3_minx, + oct3_ur, oct3_br, + oct3_bl, oct3_ul) = list((-s3).get_surfaces().values()) + (cb_minx, + cb_maxx, + cb_miny, + cb_maxy) = list(cr_boundary.get_surfaces().values()) # Smaller octader subcells c1_ur = (-oct3_ur & +oct2_ur & -oct2_maxx & -oct2_maxy) @@ -473,50 +603,94 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): regs = c1 + c2 + c3 main_cells = [] for reg, name in regs: - main_cells.append(openmc.Cell(fill=main, region=(reg & +core_base & -core_top), name=f'main_lattice_{name}')) + main_cells.append(openmc.Cell(fill=main, region=(reg & + +core_base & + -core_top), + name=f'main_lattice_{name}')) else: - c1 = openmc.Cell(fill=main, region=(+core_base & -core_top & - +zone_i_boundary[2] & -zone_i_boundary[1] & + c1 = openmc.Cell(fill=main, region=(+core_base & + -core_top & + +zone_i_boundary[2] & + -zone_i_boundary[1] & ~cr_boundary), name='main_lattice_smaller_octader') - c2 = openmc.Cell(fill=main, region=(+core_base & -core_top & + c2 = openmc.Cell(fill=main, region=(+core_base & + -core_top & -zone_i_boundary[2] & - ~cr_boundary), name='main_lattice_insite_smallest_octader') - c3 = openmc.Cell(fill=main, region=(+core_base & -core_top & - -zone_i_boundary[0] & +zone_i_boundary[1] & +zone_i_boundary[2] & - ~cr_boundary), name='main_lattice_inside_base_octader_deducted_smaller_smallest') + ~cr_boundary), + name='main_lattice_insite_smallest_octader') + c3 = openmc.Cell(fill=main, region=(+core_base & + -core_top & + -zone_i_boundary[0] & + +zone_i_boundary[1] & + +zone_i_boundary[2] & + ~cr_boundary), + name=('main_lattice_inside_base_octader' + '_deducted_smaller_smallest')) main_cells = [c1, c2, c3] return main_cells optimized, deplete = parse_arguments() -zone_bounds, core_bounds, reflector_bounds, vessel_bounds = shared_root_geometry() - -cr_boundary, zone_i_boundary, zone_ii_boundary = zone_bounds -annulus_boundary, lower_plenum_boundary, core_base, core_top = core_bounds -radial_reflector_boundary, bottom_reflector_boundary, top_reflector_boundary = reflector_bounds -radial_vessel_boundary, bottom_vessel_boundary, top_vessel_boundary= vessel_bounds - -main = main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized) -cr = cr_lattice(cr_boundary, core_base, core_top, optimized) -iib = zoneIIB(zone_i_boundary, zone_ii_boundary, core_base, core_top, fuel, moder, optimized) -a = annulus(zone_ii_boundary, annulus_boundary, core_base, core_top, fuel) -lp = lower_plenum(core_base, lower_plenum_boundary, annulus_boundary, fuel) +(zone_bounds, + core_bounds, + reflector_bounds, + vessel_bounds) = shared_root_geometry() + +(cr_boundary, + zone_i_boundary, + zone_ii_boundary) = zone_bounds +(annulus_boundary, + lower_plenum_boundary, + core_base, + core_top) = core_bounds +(radial_reflector_boundary, + bottom_reflector_boundary, + top_reflector_boundary) = reflector_bounds +(radial_vessel_boundary, + bottom_vessel_boundary, + top_vessel_boundary) = vessel_bounds + +main = main_lattice(zone_i_boundary, + cr_boundary, + core_base, + core_top, + optimized) +cr = cr_lattice(cr_boundary, + core_base, + core_top, + optimized) +iib = zoneIIB(zone_i_boundary, + zone_ii_boundary, + core_base, + core_top, + fuel, + moder, + optimized) +a = annulus(zone_ii_boundary, + annulus_boundary, + core_base, + core_top, + fuel) +lp = lower_plenum(core_base, + lower_plenum_boundary, + annulus_boundary, + fuel) rr, rb, rt = reflectors(annulus_boundary, - radial_reflector_boundary, - lower_plenum_boundary, - bottom_reflector_boundary, - core_top, - top_reflector_boundary, - moder) + radial_reflector_boundary, + lower_plenum_boundary, + bottom_reflector_boundary, + core_top, + top_reflector_boundary, + moder) vr, vb, vt = vessel(radial_reflector_boundary, - radial_vessel_boundary, - bottom_vessel_boundary, - top_vessel_boundary, - top_reflector_boundary, - bottom_reflector_boundary, - hast) + radial_vessel_boundary, + bottom_vessel_boundary, + top_vessel_boundary, + top_reflector_boundary, + bottom_reflector_boundary, + hast) geo = openmc.Geometry() univ = openmc.Universe(cells=[cr, lp, a, rr, rb, rt, vr, vb, vt]) @@ -532,7 +706,9 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): settings.particles = 10000 settings.batches = 150 settings.inactive = 25 -settings.temperature = {'default': 900, 'method': 'interpolation', 'range': (800, 1000)} +settings.temperature = {'default': 900, + 'method': 'interpolation', + 'range': (800, 1000)} settings.export_to_xml() # Plots @@ -858,7 +1034,12 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): "Th227": 190640950.14927194 } model = openmc.Model.from_xml() - op = CoupledOperator(model, chain_file='chain_endfb71_pwr.xml', fission_q=fiss_q) + op = CoupledOperator(model, + chain_file='chain_endfb71_pwr.xml', + fission_q=fiss_q) timesteps = [3] * 12 - integrator = PredictorIntegrator(op, timesteps, timestep_units='d', power=2.25e9) + integrator = PredictorIntegrator(op, + timesteps, + timestep_units='d', + power=2.25e9) integrator.integrate() From ed0b346d16b653ef7c2ad5ecdcb9ab902bd7e415 Mon Sep 17 00:00:00 2001 From: yardasol Date: Fri, 28 Oct 2022 16:51:28 -0500 Subject: [PATCH 29/62] fix metastable flag in conversion script --- scripts/xsdata/process_endfb71_to_openmc.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/xsdata/process_endfb71_to_openmc.bash b/scripts/xsdata/process_endfb71_to_openmc.bash index 6426bebdf..b0f35dda3 100644 --- a/scripts/xsdata/process_endfb71_to_openmc.bash +++ b/scripts/xsdata/process_endfb71_to_openmc.bash @@ -11,4 +11,4 @@ fi mkdir -p $DATADIR conda activate $OPENMC_ENV -python $OPENMCDIR/scripts/openmc-ace-to-hdf5 -d $DATADIR --xsdir $XSDIR/endfb71_ace/endfb71.xsdir -m mcnp +python $OPENMCDIR/scripts/openmc-ace-to-hdf5 -d $DATADIR --xsdir $XSDIR/endfb71_ace/endfb71.xsdir -m nndc From 95317d54dfa2c7b970ce498117d2d44848a301e9 Mon Sep 17 00:00:00 2001 From: yardasol Date: Fri, 28 Oct 2022 16:57:23 -0500 Subject: [PATCH 30/62] fix scripts README --- scripts/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/README.md b/scripts/README.md index 51085a4ba..fc1258123 100644 --- a/scripts/README.md +++ b/scripts/README.md @@ -53,7 +53,7 @@ Information about how to do this can be found [here](https://docs.openmc.org/en/ To run the script, execute ``` -XSDIR=[PATH TO XSDIR] $OPENMC_ENV=[NAME OF OPENMC CONDA ENVIRONMENT] $OPENMC_DIR=[PATH TO OPENMC REPO] bash download_endfb71.bash +XSDIR=[PATH TO XSDIR] OPENMC_ENV=[NAME OF OPENMC CONDA ENVIRONMENT] OPENMCDIR=[PATH TO OPENMC REPO] bash download_endfb71.bash ``` Where `XSDIR` is a path to the directory where you want to store the cross From 804f8f87715de3bdf2d3d1c4225c19f07d03ba8a Mon Sep 17 00:00:00 2001 From: yardasol Date: Fri, 28 Oct 2022 17:32:04 -0500 Subject: [PATCH 31/62] add diluted material to get correct initial tallys in serpent --- .../mats/msbr_saltproc_prepr_comp_endfb71.ini | 5149 ++++++++++++----- ...br_saltproc_prepr_comp_endfb71_diluted.ini | 3822 ++++++++++++ examples/msbr/msbr_endfb71.serpent | 1 + 3 files changed, 7642 insertions(+), 1330 deletions(-) create mode 100644 examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71_diluted.ini diff --git a/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71.ini b/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71.ini index 19854af10..ba9856c18 100644 --- a/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71.ini +++ b/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71.ini @@ -1,1333 +1,3822 @@ % Material compositions (after 0.000000 days) mat fuel -3.350000000E+00 rgb 255 255 0 burn 1 fix 82c 900 vol 4.87100E+07 - 1001.82c -0.00000000000000E+00 - 1002.82c -0.00000000000000E+00 - 1003.82c -0.00000000000000E+00 - 2003.82c -0.00000000000000E+00 - 2004.82c -0.00000000000000E+00 - 20060 -0.00000000000000E+00 - 3006.82c -0.00000000000000E+00 - 3007.82c -7.87474673879085E-02 - 30080 -0.00000000000000E+00 - 30090 -0.00000000000000E+00 - 40080 -0.00000000000000E+00 - 4009.82c -2.25566879138321E-02 - 40100 -0.00000000000000E+00 - 40110 -0.00000000000000E+00 - 5010.82c -0.00000000000000E+00 - 5011.82c -0.00000000000000E+00 - 50120 -0.00000000000000E+00 - 6000.82c -0.00000000000000E+00 - 60130 -0.00000000000000E+00 - 60140 -0.00000000000000E+00 - 60150 -0.00000000000000E+00 - 70130 -0.00000000000000E+00 - 7014.82c -0.00000000000000E+00 - 7015.82c -0.00000000000000E+00 - 70160 -0.00000000000000E+00 - 70170 -0.00000000000000E+00 - 80150 -0.00000000000000E+00 - 8016.82c -0.00000000000000E+00 - 8017.82c -0.00000000000000E+00 - 80180 -0.00000000000000E+00 - 80190 -0.00000000000000E+00 - 90180 -0.00000000000000E+00 - 9019.82c -4.54003012179284E-01 - 90200 -0.00000000000000E+00 - 100200 -0.00000000000000E+00 - 240660 -0.00000000000000E+00 - 240670 -0.00000000000000E+00 - 250660 -0.00000000000000E+00 - 250670 -0.00000000000000E+00 - 250680 -0.00000000000000E+00 - 250690 -0.00000000000000E+00 - 260650 -0.00000000000000E+00 - 260660 -0.00000000000000E+00 - 260670 -0.00000000000000E+00 - 260680 -0.00000000000000E+00 - 260690 -0.00000000000000E+00 - 260700 -0.00000000000000E+00 - 260710 -0.00000000000000E+00 - 260720 -0.00000000000000E+00 - 270650 -0.00000000000000E+00 - 270660 -0.00000000000000E+00 - 270670 -0.00000000000000E+00 - 270680 -0.00000000000000E+00 - 270690 -0.00000000000000E+00 - 270700 -0.00000000000000E+00 - 270710 -0.00000000000000E+00 - 270720 -0.00000000000000E+00 - 270730 -0.00000000000000E+00 - 270740 -0.00000000000000E+00 - 270750 -0.00000000000000E+00 - 280650 -0.00000000000000E+00 - 280660 -0.00000000000000E+00 - 280670 -0.00000000000000E+00 - 280680 -0.00000000000000E+00 - 280690 -0.00000000000000E+00 - 280700 -0.00000000000000E+00 - 280710 -0.00000000000000E+00 - 280720 -0.00000000000000E+00 - 280730 -0.00000000000000E+00 - 280740 -0.00000000000000E+00 - 280750 -0.00000000000000E+00 - 280760 -0.00000000000000E+00 - 280770 -0.00000000000000E+00 - 280780 -0.00000000000000E+00 - 290650 -0.00000000000000E+00 - 290660 -0.00000000000000E+00 - 290670 -0.00000000000000E+00 - 290680 -0.00000000000000E+00 - 290681 -0.00000000000000E+00 - 290690 -0.00000000000000E+00 - 290700 -0.00000000000000E+00 - 290701 -0.00000000000000E+00 - 290710 -0.00000000000000E+00 - 290720 -0.00000000000000E+00 - 290730 -0.00000000000000E+00 - 290740 -0.00000000000000E+00 - 290750 -0.00000000000000E+00 - 290760 -0.00000000000000E+00 - 290770 -0.00000000000000E+00 - 290780 -0.00000000000000E+00 - 290790 -0.00000000000000E+00 - 290800 -0.00000000000000E+00 - 300650 -0.00000000000000E+00 - 300660 -0.00000000000000E+00 - 300670 -0.00000000000000E+00 - 300680 -0.00000000000000E+00 - 300690 -0.00000000000000E+00 - 300691 -0.00000000000000E+00 - 300700 -0.00000000000000E+00 - 300710 -0.00000000000000E+00 - 300711 -0.00000000000000E+00 - 300720 -0.00000000000000E+00 - 300730 -0.00000000000000E+00 - 300740 -0.00000000000000E+00 - 300750 -0.00000000000000E+00 - 300760 -0.00000000000000E+00 - 300770 -0.00000000000000E+00 - 300780 -0.00000000000000E+00 - 300790 -0.00000000000000E+00 - 300800 -0.00000000000000E+00 - 300810 -0.00000000000000E+00 - 300820 -0.00000000000000E+00 - 300830 -0.00000000000000E+00 - 310660 -0.00000000000000E+00 - 310670 -0.00000000000000E+00 - 310680 -0.00000000000000E+00 - 31069.82c -0.00000000000000E+00 - 310700 -0.00000000000000E+00 - 31071.82c -0.00000000000000E+00 - 310720 -0.00000000000000E+00 - 310730 -0.00000000000000E+00 - 310740 -0.00000000000000E+00 - 310741 -0.00000000000000E+00 - 310750 -0.00000000000000E+00 - 310760 -0.00000000000000E+00 - 310770 -0.00000000000000E+00 - 310780 -0.00000000000000E+00 - 310790 -0.00000000000000E+00 - 310800 -0.00000000000000E+00 - 310810 -0.00000000000000E+00 - 310820 -0.00000000000000E+00 - 310830 -0.00000000000000E+00 - 310840 -0.00000000000000E+00 - 310850 -0.00000000000000E+00 - 310860 -0.00000000000000E+00 - 320680 -0.00000000000000E+00 - 320690 -0.00000000000000E+00 - 32070.82c -0.00000000000000E+00 - 320710 -0.00000000000000E+00 - 320711 -0.00000000000000E+00 - 32072.82c -0.00000000000000E+00 - 32073.82c -0.00000000000000E+00 - 320731 -0.00000000000000E+00 - 32074.82c -0.00000000000000E+00 - 320750 -0.00000000000000E+00 - 320751 -0.00000000000000E+00 - 32076.82c -0.00000000000000E+00 - 320770 -0.00000000000000E+00 - 320771 -0.00000000000000E+00 - 320780 -0.00000000000000E+00 - 320790 -0.00000000000000E+00 - 320791 -0.00000000000000E+00 - 320800 -0.00000000000000E+00 - 320810 -0.00000000000000E+00 - 320820 -0.00000000000000E+00 - 320830 -0.00000000000000E+00 - 320840 -0.00000000000000E+00 - 320850 -0.00000000000000E+00 - 320860 -0.00000000000000E+00 - 320870 -0.00000000000000E+00 - 320880 -0.00000000000000E+00 - 320890 -0.00000000000000E+00 - 330710 -0.00000000000000E+00 - 330720 -0.00000000000000E+00 - 330730 -0.00000000000000E+00 - 33074.82c -0.00000000000000E+00 - 33075.82c -0.00000000000000E+00 - 330751 -0.00000000000000E+00 - 330760 -0.00000000000000E+00 - 330770 -0.00000000000000E+00 - 330780 -0.00000000000000E+00 - 330790 -0.00000000000000E+00 - 330800 -0.00000000000000E+00 - 330810 -0.00000000000000E+00 - 330820 -0.00000000000000E+00 - 330821 -0.00000000000000E+00 - 330830 -0.00000000000000E+00 - 330840 -0.00000000000000E+00 - 330850 -0.00000000000000E+00 - 330860 -0.00000000000000E+00 - 330870 -0.00000000000000E+00 - 330880 -0.00000000000000E+00 - 330890 -0.00000000000000E+00 - 330900 -0.00000000000000E+00 - 330910 -0.00000000000000E+00 - 330920 -0.00000000000000E+00 - 340730 -0.00000000000000E+00 - 340731 -0.00000000000000E+00 - 34074.82c -0.00000000000000E+00 - 340750 -0.00000000000000E+00 - 34076.82c -0.00000000000000E+00 - 34077.82c -0.00000000000000E+00 - 340771 -0.00000000000000E+00 - 34078.82c -0.00000000000000E+00 - 34079.82c -0.00000000000000E+00 - 340791 -0.00000000000000E+00 - 34080.82c -0.00000000000000E+00 - 340810 -0.00000000000000E+00 - 340811 -0.00000000000000E+00 - 34082.82c -0.00000000000000E+00 - 340830 -0.00000000000000E+00 - 340831 -0.00000000000000E+00 - 340840 -0.00000000000000E+00 - 340850 -0.00000000000000E+00 - 340860 -0.00000000000000E+00 - 340870 -0.00000000000000E+00 - 340880 -0.00000000000000E+00 - 340890 -0.00000000000000E+00 - 340900 -0.00000000000000E+00 - 340910 -0.00000000000000E+00 - 340920 -0.00000000000000E+00 - 340930 -0.00000000000000E+00 - 340940 -0.00000000000000E+00 - 350750 -0.00000000000000E+00 - 350760 -0.00000000000000E+00 - 350770 -0.00000000000000E+00 - 350771 -0.00000000000000E+00 - 350780 -0.00000000000000E+00 - 35079.82c -0.00000000000000E+00 - 350791 -0.00000000000000E+00 - 350800 -0.00000000000000E+00 - 350801 -0.00000000000000E+00 - 35081.82c -0.00000000000000E+00 - 350820 -0.00000000000000E+00 - 350821 -0.00000000000000E+00 - 350830 -0.00000000000000E+00 - 350840 -0.00000000000000E+00 - 350841 -0.00000000000000E+00 - 350850 -0.00000000000000E+00 - 350860 -0.00000000000000E+00 - 350870 -0.00000000000000E+00 - 350880 -0.00000000000000E+00 - 350890 -0.00000000000000E+00 - 350900 -0.00000000000000E+00 - 350910 -0.00000000000000E+00 - 350920 -0.00000000000000E+00 - 350930 -0.00000000000000E+00 - 350940 -0.00000000000000E+00 - 350950 -0.00000000000000E+00 - 350960 -0.00000000000000E+00 - 350970 -0.00000000000000E+00 - 360770 -0.00000000000000E+00 - 36078.82c -0.00000000000000E+00 - 360790 -0.00000000000000E+00 - 360791 -0.00000000000000E+00 - 36080.82c -0.00000000000000E+00 - 360810 -0.00000000000000E+00 - 360811 -0.00000000000000E+00 - 36082.82c -0.00000000000000E+00 - 36083.82c -0.00000000000000E+00 - 360831 -0.00000000000000E+00 - 36084.82c -0.00000000000000E+00 - 36085.82c -0.00000000000000E+00 - 360851 -0.00000000000000E+00 - 36086.82c -0.00000000000000E+00 - 360870 -0.00000000000000E+00 - 360880 -0.00000000000000E+00 - 360890 -0.00000000000000E+00 - 360900 -0.00000000000000E+00 - 360910 -0.00000000000000E+00 - 360920 -0.00000000000000E+00 - 360930 -0.00000000000000E+00 - 360940 -0.00000000000000E+00 - 360950 -0.00000000000000E+00 - 360960 -0.00000000000000E+00 - 360970 -0.00000000000000E+00 - 360980 -0.00000000000000E+00 - 360990 -0.00000000000000E+00 - 361000 -0.00000000000000E+00 - 370790 -0.00000000000000E+00 - 370810 -0.00000000000000E+00 - 370830 -0.00000000000000E+00 - 370840 -0.00000000000000E+00 - 37085.82c -0.00000000000000E+00 - 37086.82c -0.00000000000000E+00 - 370861 -0.00000000000000E+00 - 37087.82c -0.00000000000000E+00 - 370880 -0.00000000000000E+00 - 370890 -0.00000000000000E+00 - 370900 -0.00000000000000E+00 - 370901 -0.00000000000000E+00 - 370910 -0.00000000000000E+00 - 370920 -0.00000000000000E+00 - 370930 -0.00000000000000E+00 - 370940 -0.00000000000000E+00 - 370950 -0.00000000000000E+00 - 370960 -0.00000000000000E+00 - 370970 -0.00000000000000E+00 - 370980 -0.00000000000000E+00 - 370990 -0.00000000000000E+00 - 371000 -0.00000000000000E+00 - 371010 -0.00000000000000E+00 - 371020 -0.00000000000000E+00 - 380830 -0.00000000000000E+00 - 38084.82c -0.00000000000000E+00 - 380850 -0.00000000000000E+00 - 380851 -0.00000000000000E+00 - 38086.82c -0.00000000000000E+00 - 38087.82c -0.00000000000000E+00 - 380871 -0.00000000000000E+00 - 38088.82c -0.00000000000000E+00 - 38089.82c -0.00000000000000E+00 - 38090.82c -0.00000000000000E+00 - 380910 -0.00000000000000E+00 - 380920 -0.00000000000000E+00 - 380930 -0.00000000000000E+00 - 380940 -0.00000000000000E+00 - 380950 -0.00000000000000E+00 - 380960 -0.00000000000000E+00 - 380970 -0.00000000000000E+00 - 380980 -0.00000000000000E+00 - 380990 -0.00000000000000E+00 - 381000 -0.00000000000000E+00 - 381010 -0.00000000000000E+00 - 381020 -0.00000000000000E+00 - 381030 -0.00000000000000E+00 - 381040 -0.00000000000000E+00 - 381050 -0.00000000000000E+00 - 390850 -0.00000000000000E+00 - 390870 -0.00000000000000E+00 - 390871 -0.00000000000000E+00 - 390880 -0.00000000000000E+00 - 39089.82c -0.00000000000000E+00 - 390891 -0.00000000000000E+00 - 39090.82c -0.00000000000000E+00 - 390901 -0.00000000000000E+00 - 39091.82c -0.00000000000000E+00 - 390911 -0.00000000000000E+00 - 390920 -0.00000000000000E+00 - 390930 -0.00000000000000E+00 - 390931 -0.00000000000000E+00 - 390940 -0.00000000000000E+00 - 390950 -0.00000000000000E+00 - 390960 -0.00000000000000E+00 - 390961 -0.00000000000000E+00 - 390970 -0.00000000000000E+00 - 390980 -0.00000000000000E+00 - 390981 -0.00000000000000E+00 - 390990 -0.00000000000000E+00 - 391000 -0.00000000000000E+00 - 391010 -0.00000000000000E+00 - 391020 -0.00000000000000E+00 - 391030 -0.00000000000000E+00 - 391040 -0.00000000000000E+00 - 391050 -0.00000000000000E+00 - 391060 -0.00000000000000E+00 - 391070 -0.00000000000000E+00 - 391080 -0.00000000000000E+00 - 400870 -0.00000000000000E+00 - 400880 -0.00000000000000E+00 - 400890 -0.00000000000000E+00 - 400891 -0.00000000000000E+00 - 40090.82c -0.00000000000000E+00 - 400901 -0.00000000000000E+00 - 40091.82c -0.00000000000000E+00 - 40092.82c -0.00000000000000E+00 - 40093.82c -0.00000000000000E+00 - 40094.82c -0.00000000000000E+00 - 40095.82c -0.00000000000000E+00 - 40096.82c -0.00000000000000E+00 - 400970 -0.00000000000000E+00 - 400980 -0.00000000000000E+00 - 400990 -0.00000000000000E+00 - 401000 -0.00000000000000E+00 - 401010 -0.00000000000000E+00 - 401020 -0.00000000000000E+00 - 401030 -0.00000000000000E+00 - 401040 -0.00000000000000E+00 - 401050 -0.00000000000000E+00 - 401060 -0.00000000000000E+00 - 401070 -0.00000000000000E+00 - 401080 -0.00000000000000E+00 - 401090 -0.00000000000000E+00 - 401100 -0.00000000000000E+00 - 410890 -0.00000000000000E+00 - 410900 -0.00000000000000E+00 - 410910 -0.00000000000000E+00 - 410911 -0.00000000000000E+00 - 410920 -0.00000000000000E+00 - 41093.82c -0.00000000000000E+00 - 410931 -0.00000000000000E+00 - 41094.82c -0.00000000000000E+00 - 410941 -0.00000000000000E+00 - 41095.82c -0.00000000000000E+00 - 410951 -0.00000000000000E+00 - 410960 -0.00000000000000E+00 - 410970 -0.00000000000000E+00 - 410971 -0.00000000000000E+00 - 410980 -0.00000000000000E+00 - 410981 -0.00000000000000E+00 - 410990 -0.00000000000000E+00 - 410991 -0.00000000000000E+00 - 411000 -0.00000000000000E+00 - 411001 -0.00000000000000E+00 - 411010 -0.00000000000000E+00 - 411020 -0.00000000000000E+00 - 411021 -0.00000000000000E+00 - 411030 -0.00000000000000E+00 - 411040 -0.00000000000000E+00 - 411041 -0.00000000000000E+00 - 411050 -0.00000000000000E+00 - 411060 -0.00000000000000E+00 - 411070 -0.00000000000000E+00 - 411080 -0.00000000000000E+00 - 411090 -0.00000000000000E+00 - 411100 -0.00000000000000E+00 - 411110 -0.00000000000000E+00 - 411120 -0.00000000000000E+00 - 411130 -0.00000000000000E+00 - 420910 -0.00000000000000E+00 - 42092.82c -0.00000000000000E+00 - 420930 -0.00000000000000E+00 - 420931 -0.00000000000000E+00 - 42094.82c -0.00000000000000E+00 - 42095.82c -0.00000000000000E+00 - 42096.82c -0.00000000000000E+00 - 42097.82c -0.00000000000000E+00 - 42098.82c -0.00000000000000E+00 - 42099.82c -0.00000000000000E+00 - 42100.82c -0.00000000000000E+00 - 421010 -0.00000000000000E+00 - 421020 -0.00000000000000E+00 - 421030 -0.00000000000000E+00 - 421040 -0.00000000000000E+00 - 421050 -0.00000000000000E+00 - 421060 -0.00000000000000E+00 - 421070 -0.00000000000000E+00 - 421080 -0.00000000000000E+00 - 421090 -0.00000000000000E+00 - 421100 -0.00000000000000E+00 - 421110 -0.00000000000000E+00 - 421120 -0.00000000000000E+00 - 421130 -0.00000000000000E+00 - 421140 -0.00000000000000E+00 - 421150 -0.00000000000000E+00 - 430950 -0.00000000000000E+00 - 430951 -0.00000000000000E+00 - 430960 -0.00000000000000E+00 - 430970 -0.00000000000000E+00 - 430971 -0.00000000000000E+00 - 430980 -0.00000000000000E+00 - 43099.82c -0.00000000000000E+00 - 430991 -0.00000000000000E+00 - 431000 -0.00000000000000E+00 - 431010 -0.00000000000000E+00 - 431020 -0.00000000000000E+00 - 431021 -0.00000000000000E+00 - 431030 -0.00000000000000E+00 - 431040 -0.00000000000000E+00 - 431050 -0.00000000000000E+00 - 431060 -0.00000000000000E+00 - 431070 -0.00000000000000E+00 - 431080 -0.00000000000000E+00 - 431090 -0.00000000000000E+00 - 431100 -0.00000000000000E+00 - 431110 -0.00000000000000E+00 - 431120 -0.00000000000000E+00 - 431130 -0.00000000000000E+00 - 431140 -0.00000000000000E+00 - 431150 -0.00000000000000E+00 - 431160 -0.00000000000000E+00 - 431170 -0.00000000000000E+00 - 431180 -0.00000000000000E+00 - 440960 -0.00000000000000E+00 - 440970 -0.00000000000000E+00 - 44098.82c -0.00000000000000E+00 - 44099.82c -0.00000000000000E+00 - 44100.82c -0.00000000000000E+00 - 44101.82c -0.00000000000000E+00 - 44102.82c -0.00000000000000E+00 - 44103.82c -0.00000000000000E+00 - 44104.82c -0.00000000000000E+00 - 44105.82c -0.00000000000000E+00 - 44106.82c -0.00000000000000E+00 - 441070 -0.00000000000000E+00 - 441080 -0.00000000000000E+00 - 441090 -0.00000000000000E+00 - 441100 -0.00000000000000E+00 - 441110 -0.00000000000000E+00 - 441120 -0.00000000000000E+00 - 441130 -0.00000000000000E+00 - 441140 -0.00000000000000E+00 - 441150 -0.00000000000000E+00 - 441160 -0.00000000000000E+00 - 441170 -0.00000000000000E+00 - 441180 -0.00000000000000E+00 - 441190 -0.00000000000000E+00 - 441200 -0.00000000000000E+00 - 450990 -0.00000000000000E+00 - 451000 -0.00000000000000E+00 - 451010 -0.00000000000000E+00 - 451011 -0.00000000000000E+00 - 451020 -0.00000000000000E+00 - 451021 -0.00000000000000E+00 - 45103.82c -0.00000000000000E+00 - 451031 -0.00000000000000E+00 - 451040 -0.00000000000000E+00 - 451041 -0.00000000000000E+00 - 45105.82c -0.00000000000000E+00 - 451051 -0.00000000000000E+00 - 451060 -0.00000000000000E+00 - 451061 -0.00000000000000E+00 - 451070 -0.00000000000000E+00 - 451080 -0.00000000000000E+00 - 451081 -0.00000000000000E+00 - 451090 -0.00000000000000E+00 - 451100 -0.00000000000000E+00 - 451101 -0.00000000000000E+00 - 451110 -0.00000000000000E+00 - 451120 -0.00000000000000E+00 - 451130 -0.00000000000000E+00 - 451140 -0.00000000000000E+00 - 451150 -0.00000000000000E+00 - 451160 -0.00000000000000E+00 - 451170 -0.00000000000000E+00 - 451180 -0.00000000000000E+00 - 451190 -0.00000000000000E+00 - 451200 -0.00000000000000E+00 - 451210 -0.00000000000000E+00 - 451220 -0.00000000000000E+00 - 461000 -0.00000000000000E+00 - 461010 -0.00000000000000E+00 - 46102.82c -0.00000000000000E+00 - 461030 -0.00000000000000E+00 - 46104.82c -0.00000000000000E+00 - 46105.82c -0.00000000000000E+00 - 46106.82c -0.00000000000000E+00 - 46107.82c -0.00000000000000E+00 - 461071 -0.00000000000000E+00 - 46108.82c -0.00000000000000E+00 - 461090 -0.00000000000000E+00 - 461091 -0.00000000000000E+00 - 46110.82c -0.00000000000000E+00 - 461110 -0.00000000000000E+00 - 461111 -0.00000000000000E+00 - 461120 -0.00000000000000E+00 - 461130 -0.00000000000000E+00 - 461140 -0.00000000000000E+00 - 461150 -0.00000000000000E+00 - 461160 -0.00000000000000E+00 - 461170 -0.00000000000000E+00 - 461180 -0.00000000000000E+00 - 461190 -0.00000000000000E+00 - 461200 -0.00000000000000E+00 - 461210 -0.00000000000000E+00 - 461220 -0.00000000000000E+00 - 461230 -0.00000000000000E+00 - 461240 -0.00000000000000E+00 - 471030 -0.00000000000000E+00 - 471040 -0.00000000000000E+00 - 471050 -0.00000000000000E+00 - 471051 -0.00000000000000E+00 - 471060 -0.00000000000000E+00 - 471061 -0.00000000000000E+00 - 47107.82c -0.00000000000000E+00 - 471071 -0.00000000000000E+00 - 471080 -0.00000000000000E+00 - 471081 -0.00000000000000E+00 - 47109.82c -0.00000000000000E+00 - 471091 -0.00000000000000E+00 - 471100 -0.00000000000000E+00 - 47510.82c -0.00000000000000E+00 - 47111.82c -0.00000000000000E+00 - 471111 -0.00000000000000E+00 - 471120 -0.00000000000000E+00 - 471130 -0.00000000000000E+00 - 471131 -0.00000000000000E+00 - 471140 -0.00000000000000E+00 - 471150 -0.00000000000000E+00 - 471151 -0.00000000000000E+00 - 471160 -0.00000000000000E+00 - 471161 -0.00000000000000E+00 - 471170 -0.00000000000000E+00 - 471171 -0.00000000000000E+00 - 471180 -0.00000000000000E+00 - 471181 -0.00000000000000E+00 - 471190 -0.00000000000000E+00 - 471200 -0.00000000000000E+00 - 471201 -0.00000000000000E+00 - 471210 -0.00000000000000E+00 - 471220 -0.00000000000000E+00 - 471221 -0.00000000000000E+00 - 471230 -0.00000000000000E+00 - 471240 -0.00000000000000E+00 - 471250 -0.00000000000000E+00 - 471260 -0.00000000000000E+00 - 471270 -0.00000000000000E+00 - 471280 -0.00000000000000E+00 - 471290 -0.00000000000000E+00 - 471300 -0.00000000000000E+00 - 481040 -0.00000000000000E+00 - 481050 -0.00000000000000E+00 - 48106.82c -0.00000000000000E+00 - 481070 -0.00000000000000E+00 - 48108.82c -0.00000000000000E+00 - 481090 -0.00000000000000E+00 - 48110.82c -0.00000000000000E+00 - 48111.82c -0.00000000000000E+00 - 481111 -0.00000000000000E+00 - 48112.82c -0.00000000000000E+00 - 48113.82c -0.00000000000000E+00 - 481131 -0.00000000000000E+00 - 48114.82c -0.00000000000000E+00 - 481150 -0.00000000000000E+00 - 48515.82c -0.00000000000000E+00 - 48116.82c -0.00000000000000E+00 - 481170 -0.00000000000000E+00 - 481171 -0.00000000000000E+00 - 481180 -0.00000000000000E+00 - 481190 -0.00000000000000E+00 - 481191 -0.00000000000000E+00 - 481200 -0.00000000000000E+00 - 481210 -0.00000000000000E+00 - 481211 -0.00000000000000E+00 - 481220 -0.00000000000000E+00 - 481230 -0.00000000000000E+00 - 481231 -0.00000000000000E+00 - 481240 -0.00000000000000E+00 - 481250 -0.00000000000000E+00 - 481260 -0.00000000000000E+00 - 481270 -0.00000000000000E+00 - 481280 -0.00000000000000E+00 - 481290 -0.00000000000000E+00 - 481300 -0.00000000000000E+00 - 481310 -0.00000000000000E+00 - 481320 -0.00000000000000E+00 - 491090 -0.00000000000000E+00 - 491100 -0.00000000000000E+00 - 491101 -0.00000000000000E+00 - 491110 -0.00000000000000E+00 - 491111 -0.00000000000000E+00 - 491120 -0.00000000000000E+00 - 491121 -0.00000000000000E+00 - 49113.82c -0.00000000000000E+00 - 491131 -0.00000000000000E+00 - 491140 -0.00000000000000E+00 - 491141 -0.00000000000000E+00 - 49115.82c -0.00000000000000E+00 - 491151 -0.00000000000000E+00 - 491160 -0.00000000000000E+00 - 491161 -0.00000000000000E+00 - 491170 -0.00000000000000E+00 - 491171 -0.00000000000000E+00 - 491180 -0.00000000000000E+00 - 491181 -0.00000000000000E+00 - 491190 -0.00000000000000E+00 - 491191 -0.00000000000000E+00 - 491200 -0.00000000000000E+00 - 491201 -0.00000000000000E+00 - 491210 -0.00000000000000E+00 - 491211 -0.00000000000000E+00 - 491220 -0.00000000000000E+00 - 491221 -0.00000000000000E+00 - 491230 -0.00000000000000E+00 - 491231 -0.00000000000000E+00 - 491240 -0.00000000000000E+00 - 491241 -0.00000000000000E+00 - 491250 -0.00000000000000E+00 - 491251 -0.00000000000000E+00 - 491260 -0.00000000000000E+00 - 491261 -0.00000000000000E+00 - 491270 -0.00000000000000E+00 - 491271 -0.00000000000000E+00 - 491280 -0.00000000000000E+00 - 491281 -0.00000000000000E+00 - 491290 -0.00000000000000E+00 - 491291 -0.00000000000000E+00 - 491300 -0.00000000000000E+00 - 491310 -0.00000000000000E+00 - 491320 -0.00000000000000E+00 - 491330 -0.00000000000000E+00 - 491340 -0.00000000000000E+00 - 491350 -0.00000000000000E+00 - 501100 -0.00000000000000E+00 - 501110 -0.00000000000000E+00 - 50112.82c -0.00000000000000E+00 - 50113.82c -0.00000000000000E+00 - 501131 -0.00000000000000E+00 - 50114.82c -0.00000000000000E+00 - 50115.82c -0.00000000000000E+00 - 50116.82c -0.00000000000000E+00 - 50117.82c -0.00000000000000E+00 - 501171 -0.00000000000000E+00 - 50118.82c -0.00000000000000E+00 - 50119.82c -0.00000000000000E+00 - 501191 -0.00000000000000E+00 - 50120.82c -0.00000000000000E+00 - 501210 -0.00000000000000E+00 - 501211 -0.00000000000000E+00 - 50122.82c -0.00000000000000E+00 - 50123.82c -0.00000000000000E+00 - 501231 -0.00000000000000E+00 - 50124.82c -0.00000000000000E+00 - 50125.82c -0.00000000000000E+00 - 501251 -0.00000000000000E+00 - 50126.82c -0.00000000000000E+00 - 501270 -0.00000000000000E+00 - 501271 -0.00000000000000E+00 - 501280 -0.00000000000000E+00 - 501281 -0.00000000000000E+00 - 501290 -0.00000000000000E+00 - 501291 -0.00000000000000E+00 - 501300 -0.00000000000000E+00 - 501301 -0.00000000000000E+00 - 501310 -0.00000000000000E+00 - 501311 -0.00000000000000E+00 - 501320 -0.00000000000000E+00 - 501330 -0.00000000000000E+00 - 501340 -0.00000000000000E+00 - 501350 -0.00000000000000E+00 - 501360 -0.00000000000000E+00 - 501370 -0.00000000000000E+00 - 511150 -0.00000000000000E+00 - 511170 -0.00000000000000E+00 - 511180 -0.00000000000000E+00 - 511181 -0.00000000000000E+00 - 511190 -0.00000000000000E+00 - 511200 -0.00000000000000E+00 - 511201 -0.00000000000000E+00 - 51121.82c -0.00000000000000E+00 - 511220 -0.00000000000000E+00 - 511221 -0.00000000000000E+00 - 51123.82c -0.00000000000000E+00 - 51124.82c -0.00000000000000E+00 - 511241 -0.00000000000000E+00 - 51125.82c -0.00000000000000E+00 - 51126.82c -0.00000000000000E+00 - 511261 -0.00000000000000E+00 - 511270 -0.00000000000000E+00 - 511280 -0.00000000000000E+00 - 511281 -0.00000000000000E+00 - 511290 -0.00000000000000E+00 - 511300 -0.00000000000000E+00 - 511301 -0.00000000000000E+00 - 511310 -0.00000000000000E+00 - 511320 -0.00000000000000E+00 - 511321 -0.00000000000000E+00 - 511330 -0.00000000000000E+00 - 511340 -0.00000000000000E+00 - 511341 -0.00000000000000E+00 - 511350 -0.00000000000000E+00 - 511360 -0.00000000000000E+00 - 511370 -0.00000000000000E+00 - 511380 -0.00000000000000E+00 - 511390 -0.00000000000000E+00 - 521180 -0.00000000000000E+00 - 521190 -0.00000000000000E+00 - 52120.82c -0.00000000000000E+00 - 521210 -0.00000000000000E+00 - 521211 -0.00000000000000E+00 - 52122.82c -0.00000000000000E+00 - 52123.82c -0.00000000000000E+00 - 521231 -0.00000000000000E+00 - 52124.82c -0.00000000000000E+00 - 52125.82c -0.00000000000000E+00 - 521251 -0.00000000000000E+00 - 52126.82c -0.00000000000000E+00 - 521270 -0.00000000000000E+00 - 52527.82c -0.00000000000000E+00 - 52128.82c -0.00000000000000E+00 - 521290 -0.00000000000000E+00 - 52529.82c -0.00000000000000E+00 - 52130.82c -0.00000000000000E+00 - 521310 -0.00000000000000E+00 - 521311 -0.00000000000000E+00 - 52132.82c -0.00000000000000E+00 - 521330 -0.00000000000000E+00 - 521331 -0.00000000000000E+00 - 521340 -0.00000000000000E+00 - 521350 -0.00000000000000E+00 - 521360 -0.00000000000000E+00 - 521370 -0.00000000000000E+00 - 521380 -0.00000000000000E+00 - 521390 -0.00000000000000E+00 - 521400 -0.00000000000000E+00 - 521410 -0.00000000000000E+00 - 521420 -0.00000000000000E+00 - 531210 -0.00000000000000E+00 - 531230 -0.00000000000000E+00 - 531240 -0.00000000000000E+00 - 531250 -0.00000000000000E+00 - 531260 -0.00000000000000E+00 - 53127.82c -0.00000000000000E+00 - 531280 -0.00000000000000E+00 - 53129.82c -0.00000000000000E+00 - 53130.82c -0.00000000000000E+00 - 531301 -0.00000000000000E+00 - 53131.82c -0.00000000000000E+00 - 531320 -0.00000000000000E+00 - 531321 -0.00000000000000E+00 - 531330 -0.00000000000000E+00 - 531331 -0.00000000000000E+00 - 531340 -0.00000000000000E+00 - 531341 -0.00000000000000E+00 - 53135.82c -0.00000000000000E+00 - 531360 -0.00000000000000E+00 - 531361 -0.00000000000000E+00 - 531370 -0.00000000000000E+00 - 531380 -0.00000000000000E+00 - 531390 -0.00000000000000E+00 - 531400 -0.00000000000000E+00 - 531410 -0.00000000000000E+00 - 531420 -0.00000000000000E+00 - 531430 -0.00000000000000E+00 - 531440 -0.00000000000000E+00 - 541240 -0.00000000000000E+00 - 541250 -0.00000000000000E+00 - 541251 -0.00000000000000E+00 - 54126.82c -0.00000000000000E+00 - 541270 -0.00000000000000E+00 - 541271 -0.00000000000000E+00 - 54128.82c -0.00000000000000E+00 - 54129.82c -0.00000000000000E+00 - 541291 -0.00000000000000E+00 - 54130.82c -0.00000000000000E+00 - 54131.82c -0.00000000000000E+00 - 541311 -0.00000000000000E+00 - 54132.82c -0.00000000000000E+00 - 54133.82c -0.00000000000000E+00 - 541331 -0.00000000000000E+00 - 54134.82c -0.00000000000000E+00 - 541341 -0.00000000000000E+00 - 54135.82c -0.00000000000000E+00 - 541351 -0.00000000000000E+00 - 54136.82c -0.00000000000000E+00 - 541370 -0.00000000000000E+00 - 541380 -0.00000000000000E+00 - 541390 -0.00000000000000E+00 - 541400 -0.00000000000000E+00 - 541410 -0.00000000000000E+00 - 541420 -0.00000000000000E+00 - 541430 -0.00000000000000E+00 - 541440 -0.00000000000000E+00 - 541450 -0.00000000000000E+00 - 541460 -0.00000000000000E+00 - 541470 -0.00000000000000E+00 - 551270 -0.00000000000000E+00 - 551290 -0.00000000000000E+00 - 551300 -0.00000000000000E+00 - 551310 -0.00000000000000E+00 - 551320 -0.00000000000000E+00 - 55133.82c -0.00000000000000E+00 - 55134.82c -0.00000000000000E+00 - 551341 -0.00000000000000E+00 - 55135.82c -0.00000000000000E+00 - 551351 -0.00000000000000E+00 - 55136.82c -0.00000000000000E+00 - 551361 -0.00000000000000E+00 - 55137.82c -0.00000000000000E+00 - 551380 -0.00000000000000E+00 - 551381 -0.00000000000000E+00 - 551390 -0.00000000000000E+00 - 551400 -0.00000000000000E+00 - 551410 -0.00000000000000E+00 - 551420 -0.00000000000000E+00 - 551430 -0.00000000000000E+00 - 551440 -0.00000000000000E+00 - 551450 -0.00000000000000E+00 - 551460 -0.00000000000000E+00 - 551470 -0.00000000000000E+00 - 551480 -0.00000000000000E+00 - 551490 -0.00000000000000E+00 - 551500 -0.00000000000000E+00 - 551510 -0.00000000000000E+00 - 561290 -0.00000000000000E+00 - 561300 -0.00000000000000E+00 - 561310 -0.00000000000000E+00 - 56132.82c -0.00000000000000E+00 - 56133.82c -0.00000000000000E+00 - 561331 -0.00000000000000E+00 - 56134.82c -0.00000000000000E+00 - 56135.82c -0.00000000000000E+00 - 561351 -0.00000000000000E+00 - 56136.82c -0.00000000000000E+00 - 561361 -0.00000000000000E+00 - 56137.82c -0.00000000000000E+00 - 561371 -0.00000000000000E+00 - 56138.82c -0.00000000000000E+00 - 561390 -0.00000000000000E+00 - 56140.82c -0.00000000000000E+00 - 561410 -0.00000000000000E+00 - 561420 -0.00000000000000E+00 - 561430 -0.00000000000000E+00 - 561440 -0.00000000000000E+00 - 561450 -0.00000000000000E+00 - 561460 -0.00000000000000E+00 - 561470 -0.00000000000000E+00 - 561480 -0.00000000000000E+00 - 561490 -0.00000000000000E+00 - 561500 -0.00000000000000E+00 - 561510 -0.00000000000000E+00 - 561520 -0.00000000000000E+00 - 561530 -0.00000000000000E+00 - 571330 -0.00000000000000E+00 - 571350 -0.00000000000000E+00 - 571360 -0.00000000000000E+00 - 571370 -0.00000000000000E+00 - 57138.82c -0.00000000000000E+00 - 57139.82c -0.00000000000000E+00 - 57140.82c -0.00000000000000E+00 - 571410 -0.00000000000000E+00 - 571420 -0.00000000000000E+00 - 571430 -0.00000000000000E+00 - 571440 -0.00000000000000E+00 - 571450 -0.00000000000000E+00 - 571460 -0.00000000000000E+00 - 571461 -0.00000000000000E+00 - 571470 -0.00000000000000E+00 - 571480 -0.00000000000000E+00 - 571490 -0.00000000000000E+00 - 571500 -0.00000000000000E+00 - 571510 -0.00000000000000E+00 - 571520 -0.00000000000000E+00 - 571530 -0.00000000000000E+00 - 571540 -0.00000000000000E+00 - 571550 -0.00000000000000E+00 - 581350 -0.00000000000000E+00 - 581360 -0.00000000000000E+00 - 581370 -0.00000000000000E+00 - 58138.82c -0.00000000000000E+00 - 58139.82c -0.00000000000000E+00 - 581391 -0.00000000000000E+00 - 58140.82c -0.00000000000000E+00 - 58141.82c -0.00000000000000E+00 - 58142.82c -0.00000000000000E+00 - 58143.82c -0.00000000000000E+00 - 58144.82c -0.00000000000000E+00 - 581450 -0.00000000000000E+00 - 581460 -0.00000000000000E+00 - 581470 -0.00000000000000E+00 - 581480 -0.00000000000000E+00 - 581490 -0.00000000000000E+00 - 581500 -0.00000000000000E+00 - 581510 -0.00000000000000E+00 - 581520 -0.00000000000000E+00 - 581530 -0.00000000000000E+00 - 581540 -0.00000000000000E+00 - 581550 -0.00000000000000E+00 - 581560 -0.00000000000000E+00 - 581570 -0.00000000000000E+00 - 591390 -0.00000000000000E+00 - 591400 -0.00000000000000E+00 - 59141.82c -0.00000000000000E+00 - 59142.82c -0.00000000000000E+00 - 591421 -0.00000000000000E+00 - 59143.82c -0.00000000000000E+00 - 591440 -0.00000000000000E+00 - 591441 -0.00000000000000E+00 - 591450 -0.00000000000000E+00 - 591460 -0.00000000000000E+00 - 591470 -0.00000000000000E+00 - 591480 -0.00000000000000E+00 - 591481 -0.00000000000000E+00 - 591490 -0.00000000000000E+00 - 591500 -0.00000000000000E+00 - 591510 -0.00000000000000E+00 - 591520 -0.00000000000000E+00 - 591530 -0.00000000000000E+00 - 591540 -0.00000000000000E+00 - 591550 -0.00000000000000E+00 - 591560 -0.00000000000000E+00 - 591570 -0.00000000000000E+00 - 591580 -0.00000000000000E+00 - 591590 -0.00000000000000E+00 - 601390 -0.00000000000000E+00 - 601400 -0.00000000000000E+00 - 601410 -0.00000000000000E+00 - 60142.82c -0.00000000000000E+00 - 60143.82c -0.00000000000000E+00 - 60144.82c -0.00000000000000E+00 - 60145.82c -0.00000000000000E+00 - 60146.82c -0.00000000000000E+00 - 60147.82c -0.00000000000000E+00 - 60148.82c -0.00000000000000E+00 - 601490 -0.00000000000000E+00 - 60150.82c -0.00000000000000E+00 - 601510 -0.00000000000000E+00 - 601520 -0.00000000000000E+00 - 601530 -0.00000000000000E+00 - 601540 -0.00000000000000E+00 - 601550 -0.00000000000000E+00 - 601560 -0.00000000000000E+00 - 601570 -0.00000000000000E+00 - 601580 -0.00000000000000E+00 - 601590 -0.00000000000000E+00 - 601600 -0.00000000000000E+00 - 601610 -0.00000000000000E+00 - 611410 -0.00000000000000E+00 - 611420 -0.00000000000000E+00 - 611430 -0.00000000000000E+00 - 611440 -0.00000000000000E+00 - 611450 -0.00000000000000E+00 - 611460 -0.00000000000000E+00 - 61147.82c -0.00000000000000E+00 - 61148.82c -0.00000000000000E+00 - 61548.82c -0.00000000000000E+00 - 61149.82c -0.00000000000000E+00 - 611500 -0.00000000000000E+00 - 61151.82c -0.00000000000000E+00 - 611520 -0.00000000000000E+00 - 611521 -0.00000000000000E+00 - 611530 -0.00000000000000E+00 - 611540 -0.00000000000000E+00 - 611541 -0.00000000000000E+00 - 611550 -0.00000000000000E+00 - 611560 -0.00000000000000E+00 - 611570 -0.00000000000000E+00 - 611580 -0.00000000000000E+00 - 611590 -0.00000000000000E+00 - 611600 -0.00000000000000E+00 - 611610 -0.00000000000000E+00 - 611620 -0.00000000000000E+00 - 611630 -0.00000000000000E+00 - 621420 -0.00000000000000E+00 - 621430 -0.00000000000000E+00 - 62144.82c -0.00000000000000E+00 - 621450 -0.00000000000000E+00 - 621460 -0.00000000000000E+00 - 62147.82c -0.00000000000000E+00 - 62148.82c -0.00000000000000E+00 - 62149.82c -0.00000000000000E+00 - 62150.82c -0.00000000000000E+00 - 62151.82c -0.00000000000000E+00 - 62152.82c -0.00000000000000E+00 - 62153.82c -0.00000000000000E+00 - 62154.82c -0.00000000000000E+00 - 621550 -0.00000000000000E+00 - 621560 -0.00000000000000E+00 - 621570 -0.00000000000000E+00 - 621580 -0.00000000000000E+00 - 621590 -0.00000000000000E+00 - 621600 -0.00000000000000E+00 - 621610 -0.00000000000000E+00 - 621620 -0.00000000000000E+00 - 621630 -0.00000000000000E+00 - 621640 -0.00000000000000E+00 - 621650 -0.00000000000000E+00 - 631470 -0.00000000000000E+00 - 631490 -0.00000000000000E+00 - 631500 -0.00000000000000E+00 - 63151.82c -0.00000000000000E+00 - 63152.82c -0.00000000000000E+00 - 631521 -0.00000000000000E+00 - 63153.82c -0.00000000000000E+00 - 63154.82c -0.00000000000000E+00 - 631541 -0.00000000000000E+00 - 63155.82c -0.00000000000000E+00 - 63156.82c -0.00000000000000E+00 - 63157.82c -0.00000000000000E+00 - 631580 -0.00000000000000E+00 - 631590 -0.00000000000000E+00 - 631600 -0.00000000000000E+00 - 631610 -0.00000000000000E+00 - 631620 -0.00000000000000E+00 - 631630 -0.00000000000000E+00 - 631640 -0.00000000000000E+00 - 631650 -0.00000000000000E+00 - 631660 -0.00000000000000E+00 - 631670 -0.00000000000000E+00 - 641490 -0.00000000000000E+00 - 641500 -0.00000000000000E+00 - 641510 -0.00000000000000E+00 - 64152.82c -0.00000000000000E+00 - 64153.82c -0.00000000000000E+00 - 64154.82c -0.00000000000000E+00 - 64155.82c -0.00000000000000E+00 - 64156.82c -0.00000000000000E+00 - 64157.82c -0.00000000000000E+00 - 64158.82c -0.00000000000000E+00 - 641590 -0.00000000000000E+00 - 64160.82c -0.00000000000000E+00 - 641610 -0.00000000000000E+00 - 641620 -0.00000000000000E+00 - 641630 -0.00000000000000E+00 - 641640 -0.00000000000000E+00 - 641650 -0.00000000000000E+00 - 641660 -0.00000000000000E+00 - 641670 -0.00000000000000E+00 - 641680 -0.00000000000000E+00 - 641690 -0.00000000000000E+00 - 651510 -0.00000000000000E+00 - 651530 -0.00000000000000E+00 - 651540 -0.00000000000000E+00 - 651550 -0.00000000000000E+00 - 651560 -0.00000000000000E+00 - 651561 -0.00000000000000E+00 - 651570 -0.00000000000000E+00 - 651580 -0.00000000000000E+00 - 651581 -0.00000000000000E+00 - 65159.82c -0.00000000000000E+00 - 65160.82c -0.00000000000000E+00 - 651610 -0.00000000000000E+00 - 651620 -0.00000000000000E+00 - 651630 -0.00000000000000E+00 - 651640 -0.00000000000000E+00 - 651650 -0.00000000000000E+00 - 651660 -0.00000000000000E+00 - 651670 -0.00000000000000E+00 - 651680 -0.00000000000000E+00 - 651690 -0.00000000000000E+00 - 651700 -0.00000000000000E+00 - 651710 -0.00000000000000E+00 - 661540 -0.00000000000000E+00 - 661550 -0.00000000000000E+00 - 66156.82c -0.00000000000000E+00 - 661570 -0.00000000000000E+00 - 66158.82c -0.00000000000000E+00 - 661590 -0.00000000000000E+00 - 66160.82c -0.00000000000000E+00 - 66161.82c -0.00000000000000E+00 - 66162.82c -0.00000000000000E+00 - 66163.82c -0.00000000000000E+00 - 66164.82c -0.00000000000000E+00 - 661650 -0.00000000000000E+00 - 661651 -0.00000000000000E+00 - 661660 -0.00000000000000E+00 - 661670 -0.00000000000000E+00 - 661680 -0.00000000000000E+00 - 661690 -0.00000000000000E+00 - 661700 -0.00000000000000E+00 - 661710 -0.00000000000000E+00 - 661720 -0.00000000000000E+00 - 671590 -0.00000000000000E+00 - 671591 -0.00000000000000E+00 - 671600 -0.00000000000000E+00 - 671601 -0.00000000000000E+00 - 671610 -0.00000000000000E+00 - 671611 -0.00000000000000E+00 - 671620 -0.00000000000000E+00 - 671621 -0.00000000000000E+00 - 671630 -0.00000000000000E+00 - 671631 -0.00000000000000E+00 - 671640 -0.00000000000000E+00 - 671641 -0.00000000000000E+00 - 67165.82c -0.00000000000000E+00 - 671660 -0.00000000000000E+00 - 67566.82c -0.00000000000000E+00 - 671670 -0.00000000000000E+00 - 671680 -0.00000000000000E+00 - 671690 -0.00000000000000E+00 - 671700 -0.00000000000000E+00 - 671701 -0.00000000000000E+00 - 671710 -0.00000000000000E+00 - 671720 -0.00000000000000E+00 - 681600 -0.00000000000000E+00 - 681610 -0.00000000000000E+00 - 68162.82c -0.00000000000000E+00 - 681630 -0.00000000000000E+00 - 68164.82c -0.00000000000000E+00 - 681650 -0.00000000000000E+00 - 68166.82c -0.00000000000000E+00 - 68167.82c -0.00000000000000E+00 - 681671 -0.00000000000000E+00 - 68168.82c -0.00000000000000E+00 - 681690 -0.00000000000000E+00 - 68170.82c -0.00000000000000E+00 - 681710 -0.00000000000000E+00 - 681720 -0.00000000000000E+00 - 691650 -0.00000000000000E+00 - 691660 -0.00000000000000E+00 - 691670 -0.00000000000000E+00 - 691680 -0.00000000000000E+00 - 691690 -0.00000000000000E+00 - 691700 -0.00000000000000E+00 - 691710 -0.00000000000000E+00 - 691720 -0.00000000000000E+00 - 701660 -0.00000000000000E+00 - 701670 -0.00000000000000E+00 - 701680 -0.00000000000000E+00 - 701690 -0.00000000000000E+00 - 701691 -0.00000000000000E+00 - 701700 -0.00000000000000E+00 - 701710 -0.00000000000000E+00 - 701720 -0.00000000000000E+00 - 711690 -0.00000000000000E+00 - 711691 -0.00000000000000E+00 - 711710 -0.00000000000000E+00 - 711711 -0.00000000000000E+00 - 711720 -0.00000000000000E+00 - 711721 -0.00000000000000E+00 - 721710 -0.00000000000000E+00 - 721720 -0.00000000000000E+00 - 802060 -0.00000000000000E+00 - 812060 -0.00000000000000E+00 - 812070 -0.00000000000000E+00 - 812080 -0.00000000000000E+00 - 812090 -0.00000000000000E+00 - 812100 -0.00000000000000E+00 - 822060 -0.00000000000000E+00 - 822070 -0.00000000000000E+00 - 822080 -0.00000000000000E+00 - 822090 -0.00000000000000E+00 - 822100 -0.00000000000000E+00 - 822110 -0.00000000000000E+00 - 822120 -0.00000000000000E+00 - 822140 -0.00000000000000E+00 - 832090 -0.00000000000000E+00 - 832100 -0.00000000000000E+00 - 832110 -0.00000000000000E+00 - 832120 -0.00000000000000E+00 - 832130 -0.00000000000000E+00 - 832140 -0.00000000000000E+00 - 842100 -0.00000000000000E+00 - 842110 -0.00000000000000E+00 - 842120 -0.00000000000000E+00 - 842130 -0.00000000000000E+00 - 842140 -0.00000000000000E+00 - 842150 -0.00000000000000E+00 - 842160 -0.00000000000000E+00 - 842180 -0.00000000000000E+00 - 852170 -0.00000000000000E+00 - 852180 -0.00000000000000E+00 - 862160 -0.00000000000000E+00 - 862170 -0.00000000000000E+00 - 862180 -0.00000000000000E+00 - 862190 -0.00000000000000E+00 - 862200 -0.00000000000000E+00 - 862220 -0.00000000000000E+00 - 872210 -0.00000000000000E+00 - 872220 -0.00000000000000E+00 - 872230 -0.00000000000000E+00 - 882200 -0.00000000000000E+00 - 882210 -0.00000000000000E+00 - 882220 -0.00000000000000E+00 - 882230 -0.00000000000000E+00 - 882240 -0.00000000000000E+00 - 882250 -0.00000000000000E+00 - 882260 -0.00000000000000E+00 - 882270 -0.00000000000000E+00 - 882280 -0.00000000000000E+00 - 882290 -0.00000000000000E+00 - 892250 -0.00000000000000E+00 - 892260 -0.00000000000000E+00 - 892270 -0.00000000000000E+00 - 892280 -0.00000000000000E+00 - 892290 -0.00000000000000E+00 - 892300 -0.00000000000000E+00 - 892310 -0.00000000000000E+00 - 892320 -0.00000000000000E+00 - 902240 -0.00000000000000E+00 - 902250 -0.00000000000000E+00 - 902260 -0.00000000000000E+00 - 90227.82c -0.00000000000000E+00 - 90228.82c -0.00000000000000E+00 - 90229.82c -0.00000000000000E+00 - 90230.82c -0.00000000000000E+00 - 902310 -0.00000000000000E+00 - 90232.82c -4.35579130482336E-01 - 90233.82c -0.00000000000000E+00 - 90234.82c -0.00000000000000E+00 - 902350 -0.00000000000000E+00 - 912290 -0.00000000000000E+00 - 912300 -0.00000000000000E+00 - 91231.82c -0.00000000000000E+00 - 91232.82c -0.00000000000000E+00 - 91233.82c -0.00000000000000E+00 - 912340 -0.00000000000000E+00 - 912341 -0.00000000000000E+00 - 912350 -0.00000000000000E+00 - 922300 -0.00000000000000E+00 - 922310 -0.00000000000000E+00 - 92232.82c -0.00000000000000E+00 - 92233.82c -9.11370203663893E-03 - 92234.82c -0.00000000000000E+00 - 92235.82c -0.00000000000000E+00 - 922351 -0.00000000000000E+00 - 92236.82c -0.00000000000000E+00 - 92237.82c -0.00000000000000E+00 - 92238.82c -0.00000000000000E+00 - 92239.82c -0.00000000000000E+00 - 92240.82c -0.00000000000000E+00 - 92241.82c -0.00000000000000E+00 - 922420 -0.00000000000000E+00 - 932330 -0.00000000000000E+00 - 932340 -0.00000000000000E+00 - 93235.82c -0.00000000000000E+00 - 93236.82c -0.00000000000000E+00 - 932361 -0.00000000000000E+00 - 93237.82c -0.00000000000000E+00 - 93238.82c -0.00000000000000E+00 - 93239.82c -0.00000000000000E+00 - 932400 -0.00000000000000E+00 - 932401 -0.00000000000000E+00 - 932410 -0.00000000000000E+00 - 932420 -0.00000000000000E+00 - 942340 -0.00000000000000E+00 - 942350 -0.00000000000000E+00 - 94236.82c -0.00000000000000E+00 - 94237.82c -0.00000000000000E+00 - 942371 -0.00000000000000E+00 - 94238.82c -0.00000000000000E+00 - 94239.82c -0.00000000000000E+00 - 94240.82c -0.00000000000000E+00 - 94241.82c -0.00000000000000E+00 - 94242.82c -0.00000000000000E+00 - 94243.82c -0.00000000000000E+00 - 94244.82c -0.00000000000000E+00 - 942450 -0.00000000000000E+00 - 942460 -0.00000000000000E+00 - 952380 -0.00000000000000E+00 - 952390 -0.00000000000000E+00 - 952400 -0.00000000000000E+00 - 95241.82c -0.00000000000000E+00 - 95242.82c -0.00000000000000E+00 - 95642.82c -0.00000000000000E+00 - 95243.82c -0.00000000000000E+00 - 95244.82c -0.00000000000000E+00 - 95644.82c -0.00000000000000E+00 - 952450 -0.00000000000000E+00 - 952460 -0.00000000000000E+00 - 962380 -0.00000000000000E+00 - 962390 -0.00000000000000E+00 - 96240.82c -0.00000000000000E+00 - 96241.82c -0.00000000000000E+00 - 96242.82c -0.00000000000000E+00 - 96243.82c -0.00000000000000E+00 - 96244.82c -0.00000000000000E+00 - 96245.82c -0.00000000000000E+00 - 96246.82c -0.00000000000000E+00 - 96247.82c -0.00000000000000E+00 - 96248.82c -0.00000000000000E+00 - 96249.82c -0.00000000000000E+00 - 96250.82c -0.00000000000000E+00 - 962510 -0.00000000000000E+00 - 972490 -0.00000000000000E+00 - 972500 -0.00000000000000E+00 - 972510 -0.00000000000000E+00 - 982490 -0.00000000000000E+00 - 982500 -0.00000000000000E+00 - 982510 -0.00000000000000E+00 + 1001.82c -0.0 + 1002.82c -0.0 + 1003.82c -0.0 + 10040 -0.0 + 10050 -0.0 + 10060 -0.0 + 10070 -0.0 + 2003.82c -0.0 + 2004.82c -0.0 + 20050 -0.0 + 20060 -0.0 + 20070 -0.0 + 20080 -0.0 + 20090 -0.0 + 20100 -0.0 + 30040 -0.0 + 30050 -0.0 + 3006.82c -0.0 + 3007.82c -0.07874746738790851 + 30080 -0.0 + 30090 -0.0 + 30100 -0.0 + 30110 -0.0 + 30120 -0.0 + 40050 -0.0 + 40060 -0.0 + 40080 -0.0 + 4009.82c -0.02255668791383211 + 40100 -0.0 + 40110 -0.0 + 40120 -0.0 + 40130 -0.0 + 40140 -0.0 + 40150 -0.0 + 40160 -0.0 + 50060 -0.0 + 50070 -0.0 + 50080 -0.0 + 50090 -0.0 + 5010.82c -0.0 + 5011.82c -0.0 + 50120 -0.0 + 50130 -0.0 + 50140 -0.0 + 50150 -0.0 + 50160 -0.0 + 50170 -0.0 + 50180 -0.0 + 50190 -0.0 + 60080 -0.0 + 60090 -0.0 + 60100 -0.0 + 60110 -0.0 + 60120 -0.0 + 60130 -0.0 + 60140 -0.0 + 60150 -0.0 + 60160 -0.0 + 60170 -0.0 + 60180 -0.0 + 60190 -0.0 + 60200 -0.0 + 60210 -0.0 + 60220 -0.0 + 70100 -0.0 + 70110 -0.0 + 70120 -0.0 + 70130 -0.0 + 7014.82c -0.0 + 7015.82c -0.0 + 70160 -0.0 + 70170 -0.0 + 70180 -0.0 + 70190 -0.0 + 70200 -0.0 + 70210 -0.0 + 70220 -0.0 + 70230 -0.0 + 70240 -0.0 + 70250 -0.0 + 80120 -0.0 + 80130 -0.0 + 80140 -0.0 + 80150 -0.0 + 8016.82c -0.0 + 8017.82c -0.0 + 80180 -0.0 + 80190 -0.0 + 80200 -0.0 + 80210 -0.0 + 80220 -0.0 + 80230 -0.0 + 80240 -0.0 + 80250 -0.0 + 80260 -0.0 + 80270 -0.0 + 80280 -0.0 + 90140 -0.0 + 90150 -0.0 + 90160 -0.0 + 90170 -0.0 + 90180 -0.0 + 9019.82c -0.45400301217928424 + 90200 -0.0 + 90210 -0.0 + 90220 -0.0 + 90230 -0.0 + 90240 -0.0 + 90250 -0.0 + 90260 -0.0 + 90270 -0.0 + 90280 -0.0 + 90290 -0.0 + 90300 -0.0 + 90310 -0.0 + 100160 -0.0 + 100170 -0.0 + 100180 -0.0 + 100190 -0.0 + 100200 -0.0 + 100210 -0.0 + 100220 -0.0 + 100230 -0.0 + 100240 -0.0 + 100250 -0.0 + 100260 -0.0 + 100270 -0.0 + 100280 -0.0 + 100290 -0.0 + 100300 -0.0 + 100310 -0.0 + 100320 -0.0 + 100330 -0.0 + 100340 -0.0 + 110180 -0.0 + 110190 -0.0 + 110200 -0.0 + 110210 -0.0 + 11022.82c -0.0 + 11023.82c -0.0 + 110240 -0.0 + 114241 -0.0 + 110250 -0.0 + 110260 -0.0 + 110270 -0.0 + 110280 -0.0 + 110290 -0.0 + 110300 -0.0 + 110310 -0.0 + 110320 -0.0 + 110330 -0.0 + 110340 -0.0 + 110350 -0.0 + 110360 -0.0 + 110370 -0.0 + 120190 -0.0 + 120200 -0.0 + 120210 -0.0 + 120220 -0.0 + 120230 -0.0 + 12024.82c -0.0 + 12025.82c -0.0 + 12026.82c -0.0 + 120270 -0.0 + 120280 -0.0 + 120290 -0.0 + 120300 -0.0 + 120310 -0.0 + 120320 -0.0 + 120330 -0.0 + 120340 -0.0 + 120350 -0.0 + 120360 -0.0 + 120370 -0.0 + 120380 -0.0 + 120390 -0.0 + 120400 -0.0 + 130210 -0.0 + 130220 -0.0 + 130230 -0.0 + 130240 -0.0 + 134241 -0.0 + 130250 -0.0 + 130260 -0.0 + 134261 -0.0 + 13027.82c -0.0 + 130280 -0.0 + 130290 -0.0 + 130300 -0.0 + 130310 -0.0 + 130320 -0.0 + 130330 -0.0 + 130340 -0.0 + 130350 -0.0 + 130360 -0.0 + 130370 -0.0 + 130380 -0.0 + 130390 -0.0 + 130400 -0.0 + 130410 -0.0 + 130420 -0.0 + 140220 -0.0 + 140230 -0.0 + 140240 -0.0 + 140250 -0.0 + 140260 -0.0 + 140270 -0.0 + 14028.82c -0.0 + 14029.82c -0.0 + 14030.82c -0.0 + 140310 -0.0 + 140320 -0.0 + 140330 -0.0 + 140340 -0.0 + 140350 -0.0 + 140360 -0.0 + 140370 -0.0 + 140380 -0.0 + 140390 -0.0 + 140400 -0.0 + 140410 -0.0 + 140420 -0.0 + 140430 -0.0 + 140440 -0.0 + 150240 -0.0 + 150250 -0.0 + 150260 -0.0 + 150270 -0.0 + 150280 -0.0 + 150290 -0.0 + 150300 -0.0 + 15031.82c -0.0 + 150320 -0.0 + 150330 -0.0 + 150340 -0.0 + 150350 -0.0 + 150360 -0.0 + 150370 -0.0 + 150380 -0.0 + 150390 -0.0 + 150400 -0.0 + 150410 -0.0 + 150420 -0.0 + 150430 -0.0 + 150440 -0.0 + 150450 -0.0 + 150460 -0.0 + 160260 -0.0 + 160270 -0.0 + 160280 -0.0 + 160290 -0.0 + 160300 -0.0 + 160310 -0.0 + 16032.82c -0.0 + 16033.82c -0.0 + 16034.82c -0.0 + 160350 -0.0 + 16036.82c -0.0 + 160370 -0.0 + 160380 -0.0 + 160390 -0.0 + 160400 -0.0 + 160410 -0.0 + 160420 -0.0 + 160430 -0.0 + 160440 -0.0 + 160450 -0.0 + 160460 -0.0 + 160480 -0.0 + 160490 -0.0 + 170280 -0.0 + 170290 -0.0 + 170300 -0.0 + 170310 -0.0 + 170320 -0.0 + 170330 -0.0 + 170340 -0.0 + 174341 -0.0 + 17035.82c -0.0 + 170360 -0.0 + 17037.82c -0.0 + 170380 -0.0 + 174381 -0.0 + 170390 -0.0 + 170400 -0.0 + 170410 -0.0 + 170420 -0.0 + 170430 -0.0 + 170440 -0.0 + 170450 -0.0 + 170460 -0.0 + 170470 -0.0 + 170480 -0.0 + 170490 -0.0 + 170500 -0.0 + 170510 -0.0 + 180300 -0.0 + 180310 -0.0 + 180320 -0.0 + 180330 -0.0 + 180340 -0.0 + 180350 -0.0 + 18036.82c -0.0 + 180370 -0.0 + 18038.82c -0.0 + 180390 -0.0 + 18040.82c -0.0 + 180410 -0.0 + 180420 -0.0 + 180430 -0.0 + 180440 -0.0 + 180450 -0.0 + 180460 -0.0 + 180470 -0.0 + 180480 -0.0 + 180490 -0.0 + 180500 -0.0 + 180510 -0.0 + 180520 -0.0 + 180530 -0.0 + 190320 -0.0 + 190330 -0.0 + 190340 -0.0 + 190350 -0.0 + 190360 -0.0 + 190370 -0.0 + 190380 -0.0 + 194381 -0.0 + 19039.82c -0.0 + 19040.82c -0.0 + 19041.82c -0.0 + 190420 -0.0 + 190430 -0.0 + 190440 -0.0 + 190450 -0.0 + 190460 -0.0 + 190470 -0.0 + 190480 -0.0 + 190490 -0.0 + 190500 -0.0 + 190510 -0.0 + 190520 -0.0 + 190530 -0.0 + 190540 -0.0 + 190550 -0.0 + 200340 -0.0 + 200350 -0.0 + 200360 -0.0 + 200370 -0.0 + 200380 -0.0 + 200390 -0.0 + 20040.82c -0.0 + 200410 -0.0 + 20042.82c -0.0 + 20043.82c -0.0 + 20044.82c -0.0 + 200450 -0.0 + 20046.82c -0.0 + 200470 -0.0 + 20048.82c -0.0 + 200490 -0.0 + 200500 -0.0 + 200510 -0.0 + 200520 -0.0 + 200530 -0.0 + 200540 -0.0 + 200550 -0.0 + 200560 -0.0 + 200570 -0.0 + 210360 -0.0 + 210370 -0.0 + 210380 -0.0 + 210390 -0.0 + 210400 -0.0 + 210410 -0.0 + 210420 -0.0 + 214421 -0.0 + 210430 -0.0 + 210440 -0.0 + 214441 -0.0 + 21045.82c -0.0 + 214451 -0.0 + 210460 -0.0 + 214461 -0.0 + 210470 -0.0 + 210480 -0.0 + 210490 -0.0 + 210500 -0.0 + 214501 -0.0 + 210510 -0.0 + 210520 -0.0 + 210530 -0.0 + 210540 -0.0 + 210550 -0.0 + 210560 -0.0 + 210570 -0.0 + 210580 -0.0 + 210590 -0.0 + 210600 -0.0 + 220380 -0.0 + 220390 -0.0 + 220400 -0.0 + 220410 -0.0 + 220420 -0.0 + 220430 -0.0 + 220440 -0.0 + 220450 -0.0 + 22046.82c -0.0 + 22047.82c -0.0 + 22048.82c -0.0 + 22049.82c -0.0 + 22050.82c -0.0 + 220510 -0.0 + 220520 -0.0 + 220530 -0.0 + 220540 -0.0 + 220550 -0.0 + 220560 -0.0 + 220570 -0.0 + 220580 -0.0 + 220590 -0.0 + 220600 -0.0 + 220610 -0.0 + 220620 -0.0 + 220630 -0.0 + 230400 -0.0 + 230410 -0.0 + 230420 -0.0 + 230430 -0.0 + 230440 -0.0 + 234441 -0.0 + 230450 -0.0 + 230460 -0.0 + 234461 -0.0 + 230470 -0.0 + 230480 -0.0 + 230490 -0.0 + 23050.82c -0.0 + 23051.82c -0.0 + 230520 -0.0 + 230530 -0.0 + 230540 -0.0 + 230550 -0.0 + 230560 -0.0 + 230570 -0.0 + 230580 -0.0 + 230590 -0.0 + 230600 -0.0 + 230610 -0.0 + 230620 -0.0 + 230630 -0.0 + 230640 -0.0 + 230650 -0.0 + 240420 -0.0 + 240430 -0.0 + 240440 -0.0 + 240450 -0.0 + 240460 -0.0 + 240470 -0.0 + 240480 -0.0 + 240490 -0.0 + 24050.82c -0.0 + 240510 -0.0 + 24052.82c -0.0 + 24053.82c -0.0 + 24054.82c -0.0 + 240550 -0.0 + 240560 -0.0 + 240570 -0.0 + 240580 -0.0 + 240590 -0.0 + 240600 -0.0 + 240610 -0.0 + 240620 -0.0 + 240630 -0.0 + 240640 -0.0 + 240650 -0.0 + 240660 -0.0 + 240670 -0.0 + 250440 -0.0 + 250450 -0.0 + 250460 -0.0 + 250470 -0.0 + 250480 -0.0 + 250490 -0.0 + 250500 -0.0 + 254501 -0.0 + 250510 -0.0 + 250520 -0.0 + 254521 -0.0 + 250530 -0.0 + 250540 -0.0 + 25055.82c -0.0 + 250560 -0.0 + 250570 -0.0 + 250580 -0.0 + 254581 -0.0 + 250590 -0.0 + 250600 -0.0 + 254601 -0.0 + 250610 -0.0 + 250620 -0.0 + 254621 -0.0 + 250630 -0.0 + 250640 -0.0 + 250650 -0.0 + 250660 -0.0 + 250670 -0.0 + 250680 -0.0 + 250690 -0.0 + 260450 -0.0 + 260460 -0.0 + 260470 -0.0 + 260480 -0.0 + 260490 -0.0 + 260500 -0.0 + 260510 -0.0 + 260520 -0.0 + 264521 -0.0 + 260530 -0.0 + 264531 -0.0 + 26054.82c -0.0 + 260550 -0.0 + 26056.82c -0.0 + 26057.82c -0.0 + 26058.82c -0.0 + 260590 -0.0 + 260600 -0.0 + 260610 -0.0 + 260620 -0.0 + 260630 -0.0 + 260640 -0.0 + 260650 -0.0 + 264651 -0.0 + 260660 -0.0 + 260670 -0.0 + 260680 -0.0 + 260690 -0.0 + 260700 -0.0 + 260710 -0.0 + 260720 -0.0 + 270490 -0.0 + 270500 -0.0 + 270510 -0.0 + 270520 -0.0 + 270530 -0.0 + 274531 -0.0 + 270540 -0.0 + 274541 -0.0 + 270550 -0.0 + 270560 -0.0 + 270570 -0.0 + 27058.82c -0.0 + 27458.82c -0.0 + 27059.82c -0.0 + 270600 -0.0 + 274601 -0.0 + 270610 -0.0 + 270620 -0.0 + 274621 -0.0 + 270630 -0.0 + 270640 -0.0 + 270650 -0.0 + 270660 -0.0 + 270670 -0.0 + 270680 -0.0 + 274681 -0.0 + 270690 -0.0 + 270700 -0.0 + 274701 -0.0 + 270710 -0.0 + 270720 -0.0 + 270730 -0.0 + 270740 -0.0 + 270750 -0.0 + 280480 -0.0 + 280490 -0.0 + 280500 -0.0 + 280510 -0.0 + 280520 -0.0 + 280530 -0.0 + 280540 -0.0 + 280550 -0.0 + 280560 -0.0 + 280570 -0.0 + 28058.82c -0.0 + 28059.82c -0.0 + 28060.82c -0.0 + 28061.82c -0.0 + 28062.82c -0.0 + 280630 -0.0 + 28064.82c -0.0 + 280650 -0.0 + 280660 -0.0 + 280670 -0.0 + 280680 -0.0 + 280690 -0.0 + 284691 -0.0 + 280700 -0.0 + 280710 -0.0 + 280720 -0.0 + 280730 -0.0 + 280740 -0.0 + 280750 -0.0 + 280760 -0.0 + 280770 -0.0 + 280780 -0.0 + 290520 -0.0 + 290530 -0.0 + 290540 -0.0 + 290550 -0.0 + 290560 -0.0 + 290570 -0.0 + 290580 -0.0 + 290590 -0.0 + 290600 -0.0 + 290610 -0.0 + 290620 -0.0 + 29063.82c -0.0 + 290640 -0.0 + 29065.82c -0.0 + 290660 -0.0 + 290670 -0.0 + 290680 -0.0 + 294681 -0.0 + 290690 -0.0 + 290700 -0.0 + 294701 -0.0 + 295702 -0.0 + 290710 -0.0 + 290720 -0.0 + 290730 -0.0 + 290740 -0.0 + 290750 -0.0 + 290760 -0.0 + 294761 -0.0 + 290770 -0.0 + 290780 -0.0 + 290790 -0.0 + 290800 -0.0 + 290810 -0.0 + 300540 -0.0 + 300550 -0.0 + 300560 -0.0 + 300570 -0.0 + 300580 -0.0 + 300590 -0.0 + 300600 -0.0 + 300610 -0.0 + 304611 -0.0 + 305612 -0.0 + 300620 -0.0 + 300630 -0.0 + 30064.82c -0.0 + 30065.82c -0.0 + 30066.82c -0.0 + 30067.82c -0.0 + 30068.82c -0.0 + 300690 -0.0 + 304691 -0.0 + 30070.82c -0.0 + 300710 -0.0 + 304711 -0.0 + 300720 -0.0 + 300730 -0.0 + 304731 -0.0 + 305732 -0.0 + 300740 -0.0 + 300750 -0.0 + 300760 -0.0 + 300770 -0.0 + 304771 -0.0 + 300780 -0.0 + 300790 -0.0 + 300800 -0.0 + 300810 -0.0 + 300820 -0.0 + 300830 -0.0 + 310560 -0.0 + 310570 -0.0 + 310580 -0.0 + 310590 -0.0 + 310600 -0.0 + 310610 -0.0 + 310620 -0.0 + 310630 -0.0 + 310640 -0.0 + 310650 -0.0 + 310660 -0.0 + 310670 -0.0 + 310680 -0.0 + 31069.82c -0.0 + 310700 -0.0 + 31071.82c -0.0 + 310720 -0.0 + 314721 -0.0 + 310730 -0.0 + 310740 -0.0 + 314741 -0.0 + 310750 -0.0 + 310760 -0.0 + 310770 -0.0 + 310780 -0.0 + 310790 -0.0 + 310800 -0.0 + 310810 -0.0 + 310820 -0.0 + 310830 -0.0 + 310840 -0.0 + 310850 -0.0 + 310860 -0.0 + 320580 -0.0 + 320590 -0.0 + 320600 -0.0 + 320610 -0.0 + 320620 -0.0 + 320630 -0.0 + 320640 -0.0 + 320650 -0.0 + 320660 -0.0 + 320670 -0.0 + 320680 -0.0 + 320690 -0.0 + 32070.82c -0.0 + 320710 -0.0 + 324711 -0.0 + 32072.82c -0.0 + 32073.82c -0.0 + 324731 -0.0 + 32074.82c -0.0 + 320750 -0.0 + 324751 -0.0 + 32076.82c -0.0 + 320770 -0.0 + 324771 -0.0 + 320780 -0.0 + 320790 -0.0 + 324791 -0.0 + 320800 -0.0 + 320810 -0.0 + 324811 -0.0 + 320820 -0.0 + 320830 -0.0 + 320840 -0.0 + 320850 -0.0 + 320860 -0.0 + 320870 -0.0 + 320880 -0.0 + 320890 -0.0 + 330600 -0.0 + 330610 -0.0 + 330620 -0.0 + 330630 -0.0 + 330640 -0.0 + 330650 -0.0 + 330660 -0.0 + 330670 -0.0 + 330680 -0.0 + 330690 -0.0 + 330700 -0.0 + 330710 -0.0 + 330720 -0.0 + 330730 -0.0 + 33074.82c -0.0 + 33075.82c -0.0 + 334751 -0.0 + 330760 -0.0 + 330770 -0.0 + 330780 -0.0 + 330790 -0.0 + 330800 -0.0 + 330810 -0.0 + 330820 -0.0 + 334821 -0.0 + 330830 -0.0 + 330840 -0.0 + 330850 -0.0 + 330860 -0.0 + 330870 -0.0 + 330880 -0.0 + 330890 -0.0 + 330900 -0.0 + 330910 -0.0 + 330920 -0.0 + 340650 -0.0 + 340660 -0.0 + 340670 -0.0 + 340680 -0.0 + 340690 -0.0 + 340700 -0.0 + 340710 -0.0 + 340720 -0.0 + 340730 -0.0 + 344731 -0.0 + 34074.82c -0.0 + 340750 -0.0 + 34076.82c -0.0 + 34077.82c -0.0 + 344771 -0.0 + 34078.82c -0.0 + 34079.82c -0.0 + 344791 -0.0 + 34080.82c -0.0 + 340810 -0.0 + 344811 -0.0 + 34082.82c -0.0 + 340830 -0.0 + 344831 -0.0 + 340840 -0.0 + 340850 -0.0 + 340860 -0.0 + 340870 -0.0 + 340880 -0.0 + 340890 -0.0 + 340900 -0.0 + 340910 -0.0 + 340920 -0.0 + 340930 -0.0 + 340940 -0.0 + 350670 -0.0 + 350680 -0.0 + 350690 -0.0 + 350700 -0.0 + 354701 -0.0 + 350710 -0.0 + 350720 -0.0 + 354721 -0.0 + 350730 -0.0 + 350740 -0.0 + 354741 -0.0 + 350750 -0.0 + 350760 -0.0 + 354761 -0.0 + 350770 -0.0 + 354771 -0.0 + 350780 -0.0 + 35079.82c -0.0 + 354791 -0.0 + 350800 -0.0 + 354801 -0.0 + 35081.82c -0.0 + 350820 -0.0 + 354821 -0.0 + 350830 -0.0 + 350840 -0.0 + 354841 -0.0 + 350850 -0.0 + 350860 -0.0 + 350870 -0.0 + 350880 -0.0 + 350890 -0.0 + 350900 -0.0 + 350910 -0.0 + 350920 -0.0 + 350930 -0.0 + 350940 -0.0 + 350950 -0.0 + 350960 -0.0 + 350970 -0.0 + 360690 -0.0 + 360700 -0.0 + 360710 -0.0 + 360720 -0.0 + 360730 -0.0 + 360740 -0.0 + 360750 -0.0 + 360760 -0.0 + 360770 -0.0 + 36078.82c -0.0 + 360790 -0.0 + 364791 -0.0 + 36080.82c -0.0 + 360810 -0.0 + 364811 -0.0 + 36082.82c -0.0 + 36083.82c -0.0 + 364831 -0.0 + 36084.82c -0.0 + 36085.82c -0.0 + 364851 -0.0 + 36086.82c -0.0 + 360870 -0.0 + 360880 -0.0 + 360890 -0.0 + 360900 -0.0 + 360910 -0.0 + 360920 -0.0 + 360930 -0.0 + 360940 -0.0 + 360950 -0.0 + 360960 -0.0 + 360970 -0.0 + 360980 -0.0 + 360990 -0.0 + 361000 -0.0 + 370710 -0.0 + 370720 -0.0 + 370730 -0.0 + 370740 -0.0 + 370750 -0.0 + 370760 -0.0 + 370770 -0.0 + 370780 -0.0 + 374781 -0.0 + 370790 -0.0 + 370800 -0.0 + 370810 -0.0 + 374811 -0.0 + 370820 -0.0 + 374821 -0.0 + 370830 -0.0 + 370840 -0.0 + 374841 -0.0 + 37085.82c -0.0 + 37086.82c -0.0 + 374861 -0.0 + 37087.82c -0.0 + 370880 -0.0 + 370890 -0.0 + 370900 -0.0 + 374901 -0.0 + 370910 -0.0 + 370920 -0.0 + 370930 -0.0 + 370940 -0.0 + 370950 -0.0 + 370960 -0.0 + 370970 -0.0 + 370980 -0.0 + 374981 -0.0 + 370990 -0.0 + 371000 -0.0 + 371010 -0.0 + 371020 -0.0 + 380730 -0.0 + 380740 -0.0 + 380750 -0.0 + 380760 -0.0 + 380770 -0.0 + 380780 -0.0 + 380790 -0.0 + 380800 -0.0 + 380810 -0.0 + 380820 -0.0 + 380830 -0.0 + 384831 -0.0 + 38084.82c -0.0 + 380850 -0.0 + 384851 -0.0 + 38086.82c -0.0 + 38087.82c -0.0 + 384871 -0.0 + 38088.82c -0.0 + 38089.82c -0.0 + 38090.82c -0.0 + 380910 -0.0 + 380920 -0.0 + 380930 -0.0 + 380940 -0.0 + 380950 -0.0 + 380960 -0.0 + 380970 -0.0 + 380980 -0.0 + 380990 -0.0 + 381000 -0.0 + 381010 -0.0 + 381020 -0.0 + 381030 -0.0 + 381040 -0.0 + 381050 -0.0 + 390760 -0.0 + 390770 -0.0 + 390780 -0.0 + 394781 -0.0 + 390790 -0.0 + 390800 -0.0 + 394801 -0.0 + 390810 -0.0 + 390820 -0.0 + 390830 -0.0 + 394831 -0.0 + 390840 -0.0 + 394841 -0.0 + 390850 -0.0 + 394851 -0.0 + 390860 -0.0 + 394861 -0.0 + 390870 -0.0 + 394871 -0.0 + 390880 -0.0 + 394881 -0.0 + 395882 -0.0 + 39089.82c -0.0 + 394891 -0.0 + 39090.82c -0.0 + 394901 -0.0 + 39091.82c -0.0 + 394911 -0.0 + 390920 -0.0 + 390930 -0.0 + 394931 -0.0 + 390940 -0.0 + 390950 -0.0 + 390960 -0.0 + 394961 -0.0 + 390970 -0.0 + 394971 -0.0 + 395972 -0.0 + 390980 -0.0 + 394981 -0.0 + 390990 -0.0 + 391000 -0.0 + 395001 -0.0 + 391010 -0.0 + 391020 -0.0 + 395021 -0.0 + 391030 -0.0 + 391040 -0.0 + 391050 -0.0 + 391060 -0.0 + 391070 -0.0 + 391080 -0.0 + 400780 -0.0 + 400790 -0.0 + 400800 -0.0 + 400810 -0.0 + 400820 -0.0 + 400830 -0.0 + 400840 -0.0 + 400850 -0.0 + 404851 -0.0 + 400860 -0.0 + 400870 -0.0 + 404871 -0.0 + 400880 -0.0 + 400890 -0.0 + 404891 -0.0 + 40090.82c -0.0 + 404901 -0.0 + 40091.82c -0.0 + 40092.82c -0.0 + 40093.82c -0.0 + 40094.82c -0.0 + 40095.82c -0.0 + 40096.82c -0.0 + 400970 -0.0 + 400980 -0.0 + 400990 -0.0 + 401000 -0.0 + 401010 -0.0 + 401020 -0.0 + 401030 -0.0 + 401040 -0.0 + 401050 -0.0 + 401060 -0.0 + 401070 -0.0 + 401080 -0.0 + 401090 -0.0 + 401100 -0.0 + 410810 -0.0 + 410820 -0.0 + 410830 -0.0 + 410840 -0.0 + 410850 -0.0 + 414851 -0.0 + 410860 -0.0 + 410870 -0.0 + 414871 -0.0 + 410880 -0.0 + 414881 -0.0 + 410890 -0.0 + 414891 -0.0 + 410900 -0.0 + 414901 -0.0 + 415902 -0.0 + 410910 -0.0 + 414911 -0.0 + 410920 -0.0 + 414921 -0.0 + 41093.82c -0.0 + 414931 -0.0 + 41094.82c -0.0 + 414941 -0.0 + 41095.82c -0.0 + 414951 -0.0 + 410960 -0.0 + 410970 -0.0 + 414971 -0.0 + 410980 -0.0 + 414981 -0.0 + 410990 -0.0 + 414991 -0.0 + 411000 -0.0 + 415001 -0.0 + 411010 -0.0 + 411020 -0.0 + 415021 -0.0 + 411030 -0.0 + 411040 -0.0 + 415041 -0.0 + 411050 -0.0 + 411060 -0.0 + 411070 -0.0 + 411080 -0.0 + 411090 -0.0 + 411100 -0.0 + 411110 -0.0 + 411120 -0.0 + 411130 -0.0 + 420830 -0.0 + 420840 -0.0 + 420850 -0.0 + 420860 -0.0 + 420870 -0.0 + 420880 -0.0 + 420890 -0.0 + 424891 -0.0 + 420900 -0.0 + 420910 -0.0 + 424911 -0.0 + 42092.82c -0.0 + 420930 -0.0 + 424931 -0.0 + 42094.82c -0.0 + 42095.82c -0.0 + 42096.82c -0.0 + 42097.82c -0.0 + 42098.82c -0.0 + 42099.82c -0.0 + 42100.82c -0.0 + 421010 -0.0 + 421020 -0.0 + 421030 -0.0 + 421040 -0.0 + 421050 -0.0 + 421060 -0.0 + 421070 -0.0 + 421080 -0.0 + 421090 -0.0 + 421100 -0.0 + 421110 -0.0 + 421120 -0.0 + 421130 -0.0 + 421140 -0.0 + 421150 -0.0 + 430850 -0.0 + 430860 -0.0 + 434861 -0.0 + 430870 -0.0 + 430880 -0.0 + 434881 -0.0 + 430890 -0.0 + 434891 -0.0 + 430900 -0.0 + 434901 -0.0 + 430910 -0.0 + 434911 -0.0 + 430920 -0.0 + 430930 -0.0 + 434931 -0.0 + 430940 -0.0 + 434941 -0.0 + 430950 -0.0 + 434951 -0.0 + 430960 -0.0 + 434961 -0.0 + 430970 -0.0 + 434971 -0.0 + 430980 -0.0 + 43099.82c -0.0 + 434991 -0.0 + 431000 -0.0 + 431010 -0.0 + 431020 -0.0 + 435021 -0.0 + 431030 -0.0 + 431040 -0.0 + 431050 -0.0 + 431060 -0.0 + 431070 -0.0 + 431080 -0.0 + 431090 -0.0 + 431100 -0.0 + 431110 -0.0 + 431120 -0.0 + 431130 -0.0 + 431140 -0.0 + 431150 -0.0 + 431160 -0.0 + 431170 -0.0 + 431180 -0.0 + 440870 -0.0 + 440880 -0.0 + 440890 -0.0 + 440900 -0.0 + 440910 -0.0 + 444911 -0.0 + 440920 -0.0 + 440930 -0.0 + 444931 -0.0 + 440940 -0.0 + 440950 -0.0 + 44096.82c -0.0 + 440970 -0.0 + 44098.82c -0.0 + 44099.82c -0.0 + 44100.82c -0.0 + 44101.82c -0.0 + 44102.82c -0.0 + 44103.82c -0.0 + 445031 -0.0 + 44104.82c -0.0 + 44105.82c -0.0 + 44106.82c -0.0 + 441070 -0.0 + 441080 -0.0 + 441090 -0.0 + 441100 -0.0 + 441110 -0.0 + 441120 -0.0 + 441130 -0.0 + 445131 -0.0 + 441140 -0.0 + 441150 -0.0 + 441160 -0.0 + 441170 -0.0 + 441180 -0.0 + 441190 -0.0 + 441200 -0.0 + 450890 -0.0 + 450900 -0.0 + 454901 -0.0 + 450910 -0.0 + 450920 -0.0 + 450930 -0.0 + 450940 -0.0 + 454941 -0.0 + 450950 -0.0 + 454951 -0.0 + 450960 -0.0 + 454961 -0.0 + 450970 -0.0 + 454971 -0.0 + 450980 -0.0 + 454981 -0.0 + 450990 -0.0 + 454991 -0.0 + 451000 -0.0 + 455001 -0.0 + 451010 -0.0 + 455011 -0.0 + 451020 -0.0 + 455021 -0.0 + 45103.82c -0.0 + 455031 -0.0 + 451040 -0.0 + 455041 -0.0 + 45105.82c -0.0 + 455051 -0.0 + 451060 -0.0 + 455061 -0.0 + 451070 -0.0 + 451080 -0.0 + 455081 -0.0 + 451090 -0.0 + 451100 -0.0 + 455101 -0.0 + 451110 -0.0 + 451120 -0.0 + 455121 -0.0 + 451130 -0.0 + 451140 -0.0 + 451150 -0.0 + 451160 -0.0 + 455161 -0.0 + 451170 -0.0 + 451180 -0.0 + 451190 -0.0 + 451200 -0.0 + 451210 -0.0 + 451220 -0.0 + 451230 -0.0 + 460910 -0.0 + 460920 -0.0 + 460930 -0.0 + 460940 -0.0 + 460950 -0.0 + 464951 -0.0 + 460960 -0.0 + 460970 -0.0 + 460980 -0.0 + 460990 -0.0 + 461000 -0.0 + 461010 -0.0 + 46102.82c -0.0 + 461030 -0.0 + 46104.82c -0.0 + 46105.82c -0.0 + 46106.82c -0.0 + 46107.82c -0.0 + 465071 -0.0 + 46108.82c -0.0 + 461090 -0.0 + 465091 -0.0 + 46110.82c -0.0 + 461110 -0.0 + 465111 -0.0 + 461120 -0.0 + 461130 -0.0 + 465131 -0.0 + 461140 -0.0 + 461150 -0.0 + 465151 -0.0 + 461160 -0.0 + 461170 -0.0 + 465171 -0.0 + 461180 -0.0 + 461190 -0.0 + 461200 -0.0 + 461210 -0.0 + 461220 -0.0 + 461230 -0.0 + 461240 -0.0 + 461250 -0.0 + 461260 -0.0 + 470930 -0.0 + 470940 -0.0 + 474941 -0.0 + 475942 -0.0 + 470950 -0.0 + 474951 -0.0 + 475952 -0.0 + 476953 -0.0 + 470960 -0.0 + 474961 -0.0 + 470970 -0.0 + 470980 -0.0 + 470990 -0.0 + 474991 -0.0 + 471000 -0.0 + 475001 -0.0 + 471010 -0.0 + 475011 -0.0 + 471020 -0.0 + 475021 -0.0 + 471030 -0.0 + 475031 -0.0 + 471040 -0.0 + 475041 -0.0 + 471050 -0.0 + 475051 -0.0 + 471060 -0.0 + 475061 -0.0 + 47107.82c -0.0 + 475071 -0.0 + 471080 -0.0 + 475081 -0.0 + 47109.82c -0.0 + 475091 -0.0 + 471100 -0.0 + 47510.82c -0.0 + 47111.82c -0.0 + 475111 -0.0 + 471120 -0.0 + 471130 -0.0 + 475131 -0.0 + 471140 -0.0 + 475141 -0.0 + 471150 -0.0 + 475151 -0.0 + 471160 -0.0 + 475161 -0.0 + 476162 -0.0 + 471170 -0.0 + 475171 -0.0 + 471180 -0.0 + 475181 -0.0 + 471190 -0.0 + 475191 -0.0 + 471200 -0.0 + 475201 -0.0 + 471210 -0.0 + 471220 -0.0 + 475221 -0.0 + 471230 -0.0 + 471240 -0.0 + 471250 -0.0 + 471260 -0.0 + 471270 -0.0 + 471280 -0.0 + 471290 -0.0 + 471300 -0.0 + 480950 -0.0 + 480960 -0.0 + 480970 -0.0 + 480980 -0.0 + 480990 -0.0 + 481000 -0.0 + 481010 -0.0 + 481020 -0.0 + 481030 -0.0 + 481040 -0.0 + 481050 -0.0 + 48106.82c -0.0 + 481070 -0.0 + 48108.82c -0.0 + 481090 -0.0 + 48110.82c -0.0 + 48111.82c -0.0 + 485111 -0.0 + 48112.82c -0.0 + 48113.82c -0.0 + 485131 -0.0 + 48114.82c -0.0 + 481150 -0.0 + 48515.82c -0.0 + 48116.82c -0.0 + 481170 -0.0 + 485171 -0.0 + 481180 -0.0 + 481190 -0.0 + 485191 -0.0 + 481200 -0.0 + 481210 -0.0 + 485211 -0.0 + 481220 -0.0 + 481230 -0.0 + 485231 -0.0 + 481240 -0.0 + 481250 -0.0 + 485251 -0.0 + 481260 -0.0 + 481270 -0.0 + 481280 -0.0 + 481290 -0.0 + 481300 -0.0 + 481310 -0.0 + 481320 -0.0 + 490970 -0.0 + 490980 -0.0 + 494981 -0.0 + 490990 -0.0 + 491000 -0.0 + 491010 -0.0 + 491020 -0.0 + 491030 -0.0 + 495031 -0.0 + 491040 -0.0 + 495041 -0.0 + 491050 -0.0 + 495051 -0.0 + 491060 -0.0 + 495061 -0.0 + 491070 -0.0 + 495071 -0.0 + 491080 -0.0 + 495081 -0.0 + 491090 -0.0 + 495091 -0.0 + 496092 -0.0 + 491100 -0.0 + 495101 -0.0 + 491110 -0.0 + 495111 -0.0 + 491120 -0.0 + 495121 -0.0 + 49113.82c -0.0 + 495131 -0.0 + 491140 -0.0 + 495141 -0.0 + 496142 -0.0 + 49115.82c -0.0 + 495151 -0.0 + 491160 -0.0 + 495161 -0.0 + 496162 -0.0 + 491170 -0.0 + 495171 -0.0 + 491180 -0.0 + 495181 -0.0 + 496182 -0.0 + 491190 -0.0 + 495191 -0.0 + 491200 -0.0 + 495201 -0.0 + 496202 -0.0 + 491210 -0.0 + 495211 -0.0 + 491220 -0.0 + 495221 -0.0 + 496222 -0.0 + 491230 -0.0 + 495231 -0.0 + 491240 -0.0 + 495241 -0.0 + 491250 -0.0 + 495251 -0.0 + 491260 -0.0 + 495261 -0.0 + 491270 -0.0 + 495271 -0.0 + 491280 -0.0 + 495281 -0.0 + 491290 -0.0 + 495291 -0.0 + 491300 -0.0 + 495301 -0.0 + 496302 -0.0 + 491310 -0.0 + 495311 -0.0 + 496312 -0.0 + 491320 -0.0 + 491330 -0.0 + 495331 -0.0 + 491340 -0.0 + 491350 -0.0 + 500990 -0.0 + 501000 -0.0 + 501010 -0.0 + 501020 -0.0 + 501030 -0.0 + 501040 -0.0 + 501050 -0.0 + 501060 -0.0 + 501070 -0.0 + 501080 -0.0 + 501090 -0.0 + 501100 -0.0 + 501110 -0.0 + 50112.82c -0.0 + 50113.82c -0.0 + 505131 -0.0 + 50114.82c -0.0 + 50115.82c -0.0 + 50116.82c -0.0 + 50117.82c -0.0 + 505171 -0.0 + 50118.82c -0.0 + 50119.82c -0.0 + 505191 -0.0 + 50120.82c -0.0 + 501210 -0.0 + 505211 -0.0 + 50122.82c -0.0 + 50123.82c -0.0 + 505231 -0.0 + 50124.82c -0.0 + 50125.82c -0.0 + 505251 -0.0 + 50126.82c -0.0 + 501270 -0.0 + 505271 -0.0 + 501280 -0.0 + 505281 -0.0 + 501290 -0.0 + 505291 -0.0 + 501300 -0.0 + 505301 -0.0 + 501310 -0.0 + 505311 -0.0 + 501320 -0.0 + 501330 -0.0 + 501340 -0.0 + 501350 -0.0 + 501360 -0.0 + 501370 -0.0 + 511030 -0.0 + 511040 -0.0 + 511050 -0.0 + 511060 -0.0 + 511070 -0.0 + 511080 -0.0 + 511090 -0.0 + 511100 -0.0 + 511110 -0.0 + 511120 -0.0 + 511130 -0.0 + 511140 -0.0 + 511150 -0.0 + 511160 -0.0 + 515161 -0.0 + 511170 -0.0 + 511180 -0.0 + 515181 -0.0 + 511190 -0.0 + 515191 -0.0 + 511200 -0.0 + 515201 -0.0 + 51121.82c -0.0 + 511220 -0.0 + 515221 -0.0 + 51123.82c -0.0 + 51124.82c -0.0 + 515241 -0.0 + 516242 -0.0 + 51125.82c -0.0 + 51126.82c -0.0 + 515261 -0.0 + 516262 -0.0 + 511270 -0.0 + 511280 -0.0 + 515281 -0.0 + 511290 -0.0 + 515291 -0.0 + 511300 -0.0 + 515301 -0.0 + 511310 -0.0 + 511320 -0.0 + 515321 -0.0 + 511330 -0.0 + 511340 -0.0 + 515341 -0.0 + 511350 -0.0 + 511360 -0.0 + 511370 -0.0 + 511380 -0.0 + 511390 -0.0 + 521050 -0.0 + 521060 -0.0 + 521070 -0.0 + 521080 -0.0 + 521090 -0.0 + 521100 -0.0 + 521110 -0.0 + 521120 -0.0 + 521130 -0.0 + 521140 -0.0 + 521150 -0.0 + 525151 -0.0 + 521160 -0.0 + 521170 -0.0 + 525171 -0.0 + 521180 -0.0 + 521190 -0.0 + 525191 -0.0 + 52120.82c -0.0 + 521210 -0.0 + 525211 -0.0 + 52122.82c -0.0 + 52123.82c -0.0 + 525231 -0.0 + 52124.82c -0.0 + 52125.82c -0.0 + 525251 -0.0 + 52126.82c -0.0 + 521270 -0.0 + 52527.82c -0.0 + 52128.82c -0.0 + 521290 -0.0 + 52529.82c -0.0 + 52130.82c -0.0 + 521310 -0.0 + 525311 -0.0 + 52132.82c -0.0 + 521330 -0.0 + 525331 -0.0 + 521340 -0.0 + 521350 -0.0 + 521360 -0.0 + 521370 -0.0 + 521380 -0.0 + 521390 -0.0 + 521400 -0.0 + 521410 -0.0 + 521420 -0.0 + 531080 -0.0 + 531090 -0.0 + 531100 -0.0 + 531110 -0.0 + 531120 -0.0 + 531130 -0.0 + 531140 -0.0 + 535141 -0.0 + 531150 -0.0 + 531160 -0.0 + 531170 -0.0 + 531180 -0.0 + 535181 -0.0 + 531190 -0.0 + 531200 -0.0 + 535201 -0.0 + 531210 -0.0 + 531220 -0.0 + 531230 -0.0 + 531240 -0.0 + 531250 -0.0 + 531260 -0.0 + 53127.82c -0.0 + 531280 -0.0 + 53129.82c -0.0 + 53130.82c -0.0 + 535301 -0.0 + 53131.82c -0.0 + 531320 -0.0 + 535321 -0.0 + 531330 -0.0 + 535331 -0.0 + 531340 -0.0 + 535341 -0.0 + 53135.82c -0.0 + 531360 -0.0 + 535361 -0.0 + 531370 -0.0 + 531380 -0.0 + 531390 -0.0 + 531400 -0.0 + 531410 -0.0 + 531420 -0.0 + 531430 -0.0 + 531440 -0.0 + 531450 -0.0 + 541100 -0.0 + 541110 -0.0 + 541120 -0.0 + 541130 -0.0 + 541140 -0.0 + 541150 -0.0 + 541160 -0.0 + 541170 -0.0 + 541180 -0.0 + 541190 -0.0 + 541200 -0.0 + 541210 -0.0 + 541220 -0.0 + 54123.82c -0.0 + 54124.82c -0.0 + 541250 -0.0 + 545251 -0.0 + 54126.82c -0.0 + 541270 -0.0 + 545271 -0.0 + 54128.82c -0.0 + 54129.82c -0.0 + 545291 -0.0 + 54130.82c -0.0 + 54131.82c -0.0 + 545311 -0.0 + 54132.82c -0.0 + 545321 -0.0 + 54133.82c -0.0 + 545331 -0.0 + 54134.82c -0.0 + 545341 -0.0 + 54135.82c -0.0 + 545351 -0.0 + 54136.82c -0.0 + 541370 -0.0 + 541380 -0.0 + 541390 -0.0 + 541400 -0.0 + 541410 -0.0 + 541420 -0.0 + 541430 -0.0 + 541440 -0.0 + 541450 -0.0 + 541460 -0.0 + 541470 -0.0 + 551120 -0.0 + 551130 -0.0 + 551140 -0.0 + 551150 -0.0 + 551160 -0.0 + 555161 -0.0 + 551170 -0.0 + 555171 -0.0 + 551180 -0.0 + 555181 -0.0 + 551190 -0.0 + 555191 -0.0 + 551200 -0.0 + 555201 -0.0 + 551210 -0.0 + 555211 -0.0 + 551220 -0.0 + 555221 -0.0 + 556222 -0.0 + 551230 -0.0 + 555231 -0.0 + 551240 -0.0 + 555241 -0.0 + 551250 -0.0 + 555251 -0.0 + 551260 -0.0 + 551270 -0.0 + 551280 -0.0 + 551290 -0.0 + 551300 -0.0 + 555301 -0.0 + 551310 -0.0 + 551320 -0.0 + 55133.82c -0.0 + 55134.82c -0.0 + 555341 -0.0 + 55135.82c -0.0 + 555351 -0.0 + 55136.82c -0.0 + 555361 -0.0 + 55137.82c -0.0 + 551380 -0.0 + 555381 -0.0 + 551390 -0.0 + 551400 -0.0 + 551410 -0.0 + 551420 -0.0 + 551430 -0.0 + 551440 -0.0 + 555441 -0.0 + 551450 -0.0 + 551460 -0.0 + 551470 -0.0 + 551480 -0.0 + 551490 -0.0 + 551500 -0.0 + 551510 -0.0 + 561140 -0.0 + 561150 -0.0 + 561160 -0.0 + 561170 -0.0 + 561180 -0.0 + 561190 -0.0 + 561200 -0.0 + 561210 -0.0 + 561220 -0.0 + 561230 -0.0 + 561240 -0.0 + 561250 -0.0 + 561260 -0.0 + 561270 -0.0 + 565271 -0.0 + 561280 -0.0 + 561290 -0.0 + 565291 -0.0 + 56130.82c -0.0 + 565301 -0.0 + 561310 -0.0 + 565311 -0.0 + 56132.82c -0.0 + 56133.82c -0.0 + 565331 -0.0 + 56134.82c -0.0 + 56135.82c -0.0 + 565351 -0.0 + 56136.82c -0.0 + 565361 -0.0 + 56137.82c -0.0 + 565371 -0.0 + 56138.82c -0.0 + 561390 -0.0 + 56140.82c -0.0 + 561410 -0.0 + 561420 -0.0 + 561430 -0.0 + 561440 -0.0 + 561450 -0.0 + 561460 -0.0 + 561470 -0.0 + 561480 -0.0 + 561490 -0.0 + 561500 -0.0 + 561510 -0.0 + 561520 -0.0 + 561530 -0.0 + 571170 -0.0 + 575171 -0.0 + 571180 -0.0 + 571190 -0.0 + 571200 -0.0 + 571210 -0.0 + 571220 -0.0 + 571230 -0.0 + 571240 -0.0 + 575241 -0.0 + 571250 -0.0 + 575251 -0.0 + 571260 -0.0 + 575261 -0.0 + 571270 -0.0 + 575271 -0.0 + 571280 -0.0 + 575281 -0.0 + 571290 -0.0 + 575291 -0.0 + 571300 -0.0 + 571310 -0.0 + 571320 -0.0 + 575321 -0.0 + 571330 -0.0 + 571340 -0.0 + 571350 -0.0 + 571360 -0.0 + 575361 -0.0 + 571370 -0.0 + 57138.82c -0.0 + 57139.82c -0.0 + 57140.82c -0.0 + 571410 -0.0 + 571420 -0.0 + 571430 -0.0 + 571440 -0.0 + 571450 -0.0 + 571460 -0.0 + 575461 -0.0 + 571470 -0.0 + 571480 -0.0 + 571490 -0.0 + 571500 -0.0 + 571510 -0.0 + 571520 -0.0 + 571530 -0.0 + 571540 -0.0 + 571550 -0.0 + 581190 -0.0 + 581200 -0.0 + 581210 -0.0 + 581220 -0.0 + 581230 -0.0 + 581240 -0.0 + 581250 -0.0 + 581260 -0.0 + 581270 -0.0 + 585271 -0.0 + 581280 -0.0 + 581290 -0.0 + 581300 -0.0 + 581310 -0.0 + 585311 -0.0 + 581320 -0.0 + 585321 -0.0 + 581330 -0.0 + 585331 -0.0 + 581340 -0.0 + 581350 -0.0 + 585351 -0.0 + 58136.82c -0.0 + 581370 -0.0 + 585371 -0.0 + 58138.82c -0.0 + 585381 -0.0 + 58139.82c -0.0 + 585391 -0.0 + 58140.82c -0.0 + 58141.82c -0.0 + 58142.82c -0.0 + 58143.82c -0.0 + 58144.82c -0.0 + 581450 -0.0 + 581460 -0.0 + 581470 -0.0 + 581480 -0.0 + 581490 -0.0 + 581500 -0.0 + 581510 -0.0 + 581520 -0.0 + 581530 -0.0 + 581540 -0.0 + 581550 -0.0 + 581560 -0.0 + 581570 -0.0 + 591210 -0.0 + 591220 -0.0 + 591230 -0.0 + 591240 -0.0 + 591250 -0.0 + 591260 -0.0 + 591270 -0.0 + 591280 -0.0 + 591290 -0.0 + 591300 -0.0 + 591310 -0.0 + 595311 -0.0 + 591320 -0.0 + 591330 -0.0 + 591340 -0.0 + 595341 -0.0 + 591350 -0.0 + 591360 -0.0 + 591370 -0.0 + 591380 -0.0 + 595381 -0.0 + 591390 -0.0 + 591400 -0.0 + 59141.82c -0.0 + 59142.82c -0.0 + 595421 -0.0 + 59143.82c -0.0 + 591440 -0.0 + 595441 -0.0 + 591450 -0.0 + 591460 -0.0 + 591470 -0.0 + 591480 -0.0 + 595481 -0.0 + 591490 -0.0 + 591500 -0.0 + 591510 -0.0 + 591520 -0.0 + 591530 -0.0 + 591540 -0.0 + 591550 -0.0 + 591560 -0.0 + 591570 -0.0 + 591580 -0.0 + 591590 -0.0 + 601240 -0.0 + 601250 -0.0 + 601260 -0.0 + 601270 -0.0 + 601280 -0.0 + 601290 -0.0 + 601300 -0.0 + 601310 -0.0 + 601320 -0.0 + 601330 -0.0 + 605331 -0.0 + 601340 -0.0 + 601350 -0.0 + 605351 -0.0 + 601360 -0.0 + 601370 -0.0 + 605371 -0.0 + 601380 -0.0 + 601390 -0.0 + 605391 -0.0 + 601400 -0.0 + 601410 -0.0 + 605411 -0.0 + 60142.82c -0.0 + 60143.82c -0.0 + 60144.82c -0.0 + 60145.82c -0.0 + 60146.82c -0.0 + 60147.82c -0.0 + 60148.82c -0.0 + 601490 -0.0 + 60150.82c -0.0 + 601510 -0.0 + 601520 -0.0 + 601530 -0.0 + 601540 -0.0 + 601550 -0.0 + 601560 -0.0 + 601570 -0.0 + 601580 -0.0 + 601590 -0.0 + 601600 -0.0 + 601610 -0.0 + 611260 -0.0 + 611270 -0.0 + 611280 -0.0 + 611290 -0.0 + 611300 -0.0 + 611310 -0.0 + 611320 -0.0 + 611330 -0.0 + 615331 -0.0 + 611340 -0.0 + 615341 -0.0 + 611350 -0.0 + 615351 -0.0 + 611360 -0.0 + 615361 -0.0 + 611370 -0.0 + 611380 -0.0 + 615381 -0.0 + 611390 -0.0 + 615391 -0.0 + 611400 -0.0 + 615401 -0.0 + 611410 -0.0 + 611420 -0.0 + 615421 -0.0 + 611430 -0.0 + 611440 -0.0 + 611450 -0.0 + 611460 -0.0 + 61147.82c -0.0 + 61148.82c -0.0 + 61548.82c -0.0 + 61149.82c -0.0 + 611500 -0.0 + 61151.82c -0.0 + 611520 -0.0 + 615521 -0.0 + 616522 -0.0 + 611530 -0.0 + 611540 -0.0 + 615541 -0.0 + 611550 -0.0 + 611560 -0.0 + 611570 -0.0 + 611580 -0.0 + 611590 -0.0 + 611600 -0.0 + 611610 -0.0 + 611620 -0.0 + 611630 -0.0 + 621280 -0.0 + 621290 -0.0 + 621300 -0.0 + 621310 -0.0 + 621320 -0.0 + 621330 -0.0 + 621340 -0.0 + 621350 -0.0 + 621360 -0.0 + 621370 -0.0 + 621380 -0.0 + 621390 -0.0 + 625391 -0.0 + 621400 -0.0 + 621410 -0.0 + 625411 -0.0 + 621420 -0.0 + 621430 -0.0 + 625431 -0.0 + 626432 -0.0 + 62144.82c -0.0 + 621450 -0.0 + 621460 -0.0 + 62147.82c -0.0 + 62148.82c -0.0 + 62149.82c -0.0 + 62150.82c -0.0 + 62151.82c -0.0 + 62152.82c -0.0 + 62153.82c -0.0 + 625531 -0.0 + 62154.82c -0.0 + 621550 -0.0 + 621560 -0.0 + 621570 -0.0 + 621580 -0.0 + 621590 -0.0 + 621600 -0.0 + 621610 -0.0 + 621620 -0.0 + 621630 -0.0 + 621640 -0.0 + 621650 -0.0 + 631300 -0.0 + 631310 -0.0 + 631320 -0.0 + 631330 -0.0 + 631340 -0.0 + 631350 -0.0 + 631360 -0.0 + 635361 -0.0 + 636362 -0.0 + 631370 -0.0 + 631380 -0.0 + 631390 -0.0 + 631400 -0.0 + 635401 -0.0 + 631410 -0.0 + 635411 -0.0 + 631420 -0.0 + 635421 -0.0 + 631430 -0.0 + 631440 -0.0 + 631450 -0.0 + 631460 -0.0 + 631470 -0.0 + 631480 -0.0 + 631490 -0.0 + 631500 -0.0 + 635501 -0.0 + 63151.82c -0.0 + 63152.82c -0.0 + 635521 -0.0 + 636522 -0.0 + 63153.82c -0.0 + 63154.82c -0.0 + 635541 -0.0 + 63155.82c -0.0 + 63156.82c -0.0 + 63157.82c -0.0 + 631580 -0.0 + 631590 -0.0 + 631600 -0.0 + 631610 -0.0 + 631620 -0.0 + 631630 -0.0 + 631640 -0.0 + 631650 -0.0 + 631660 -0.0 + 631670 -0.0 + 641340 -0.0 + 641350 -0.0 + 641360 -0.0 + 641370 -0.0 + 641380 -0.0 + 641390 -0.0 + 645391 -0.0 + 641400 -0.0 + 641410 -0.0 + 645411 -0.0 + 641420 -0.0 + 641430 -0.0 + 645431 -0.0 + 641440 -0.0 + 641450 -0.0 + 645451 -0.0 + 641460 -0.0 + 641470 -0.0 + 641480 -0.0 + 641490 -0.0 + 641500 -0.0 + 641510 -0.0 + 64152.82c -0.0 + 64153.82c -0.0 + 64154.82c -0.0 + 64155.82c -0.0 + 645551 -0.0 + 64156.82c -0.0 + 64157.82c -0.0 + 64158.82c -0.0 + 641590 -0.0 + 64160.82c -0.0 + 641610 -0.0 + 641620 -0.0 + 641630 -0.0 + 641640 -0.0 + 641650 -0.0 + 641660 -0.0 + 641670 -0.0 + 641680 -0.0 + 641690 -0.0 + 651350 -0.0 + 651360 -0.0 + 651370 -0.0 + 651380 -0.0 + 651390 -0.0 + 651400 -0.0 + 651410 -0.0 + 655411 -0.0 + 651420 -0.0 + 655421 -0.0 + 651430 -0.0 + 655431 -0.0 + 651440 -0.0 + 655441 -0.0 + 651450 -0.0 + 655451 -0.0 + 651460 -0.0 + 655461 -0.0 + 656462 -0.0 + 651470 -0.0 + 655471 -0.0 + 651480 -0.0 + 655481 -0.0 + 651490 -0.0 + 655491 -0.0 + 651500 -0.0 + 655501 -0.0 + 651510 -0.0 + 655511 -0.0 + 651520 -0.0 + 655521 -0.0 + 651530 -0.0 + 651540 -0.0 + 655541 -0.0 + 656542 -0.0 + 651550 -0.0 + 651560 -0.0 + 655561 -0.0 + 656562 -0.0 + 651570 -0.0 + 651580 -0.0 + 655581 -0.0 + 65159.82c -0.0 + 65160.82c -0.0 + 651610 -0.0 + 651620 -0.0 + 651630 -0.0 + 651640 -0.0 + 651650 -0.0 + 651660 -0.0 + 651670 -0.0 + 651680 -0.0 + 651690 -0.0 + 651700 -0.0 + 651710 -0.0 + 661380 -0.0 + 661390 -0.0 + 661400 -0.0 + 661410 -0.0 + 661420 -0.0 + 661430 -0.0 + 665431 -0.0 + 661440 -0.0 + 661450 -0.0 + 665451 -0.0 + 661460 -0.0 + 665461 -0.0 + 661470 -0.0 + 665471 -0.0 + 661480 -0.0 + 661490 -0.0 + 665491 -0.0 + 661500 -0.0 + 661510 -0.0 + 661520 -0.0 + 661530 -0.0 + 661540 -0.0 + 661550 -0.0 + 66156.82c -0.0 + 661570 -0.0 + 665571 -0.0 + 66158.82c -0.0 + 661590 -0.0 + 66160.82c -0.0 + 66161.82c -0.0 + 66162.82c -0.0 + 66163.82c -0.0 + 66164.82c -0.0 + 661650 -0.0 + 665651 -0.0 + 661660 -0.0 + 661670 -0.0 + 661680 -0.0 + 661690 -0.0 + 661700 -0.0 + 661710 -0.0 + 661720 -0.0 + 661730 -0.0 + 671400 -0.0 + 671410 -0.0 + 671420 -0.0 + 671430 -0.0 + 671440 -0.0 + 671450 -0.0 + 671460 -0.0 + 671470 -0.0 + 671480 -0.0 + 675481 -0.0 + 676482 -0.0 + 671490 -0.0 + 675491 -0.0 + 671500 -0.0 + 675501 -0.0 + 671510 -0.0 + 675511 -0.0 + 671520 -0.0 + 675521 -0.0 + 671530 -0.0 + 675531 -0.0 + 671540 -0.0 + 675541 -0.0 + 671550 -0.0 + 675551 -0.0 + 671560 -0.0 + 675561 -0.0 + 676562 -0.0 + 671570 -0.0 + 671580 -0.0 + 675581 -0.0 + 676582 -0.0 + 671590 -0.0 + 675591 -0.0 + 671600 -0.0 + 675601 -0.0 + 676602 -0.0 + 671610 -0.0 + 675611 -0.0 + 671620 -0.0 + 675621 -0.0 + 671630 -0.0 + 675631 -0.0 + 671640 -0.0 + 675641 -0.0 + 67165.82c -0.0 + 671660 -0.0 + 67566.82c -0.0 + 671670 -0.0 + 671680 -0.0 + 675681 -0.0 + 671690 -0.0 + 671700 -0.0 + 675701 -0.0 + 671710 -0.0 + 671720 -0.0 + 671730 -0.0 + 671740 -0.0 + 671750 -0.0 + 681430 -0.0 + 681440 -0.0 + 681450 -0.0 + 681460 -0.0 + 681470 -0.0 + 685471 -0.0 + 681480 -0.0 + 681490 -0.0 + 685491 -0.0 + 681500 -0.0 + 681510 -0.0 + 685511 -0.0 + 681520 -0.0 + 681530 -0.0 + 681540 -0.0 + 681550 -0.0 + 681560 -0.0 + 681570 -0.0 + 685571 -0.0 + 681580 -0.0 + 681590 -0.0 + 681600 -0.0 + 681610 -0.0 + 68162.82c -0.0 + 681630 -0.0 + 68164.82c -0.0 + 681650 -0.0 + 68166.82c -0.0 + 68167.82c -0.0 + 685671 -0.0 + 68168.82c -0.0 + 681690 -0.0 + 68170.82c -0.0 + 681710 -0.0 + 681720 -0.0 + 681730 -0.0 + 681740 -0.0 + 681750 -0.0 + 681760 -0.0 + 681770 -0.0 + 691450 -0.0 + 691460 -0.0 + 695461 -0.0 + 691470 -0.0 + 691480 -0.0 + 691490 -0.0 + 691500 -0.0 + 695501 -0.0 + 691510 -0.0 + 695511 -0.0 + 691520 -0.0 + 695521 -0.0 + 691530 -0.0 + 695531 -0.0 + 691540 -0.0 + 695541 -0.0 + 691550 -0.0 + 695551 -0.0 + 691560 -0.0 + 691570 -0.0 + 691580 -0.0 + 691590 -0.0 + 691600 -0.0 + 695601 -0.0 + 691610 -0.0 + 691620 -0.0 + 695621 -0.0 + 691630 -0.0 + 691640 -0.0 + 695641 -0.0 + 691650 -0.0 + 691660 -0.0 + 695661 -0.0 + 691670 -0.0 + 69168.82c -0.0 + 69169.82c -0.0 + 69170.82c -0.0 + 691710 -0.0 + 691720 -0.0 + 691730 -0.0 + 691740 -0.0 + 691750 -0.0 + 691760 -0.0 + 691770 -0.0 + 691780 -0.0 + 691790 -0.0 + 701480 -0.0 + 701490 -0.0 + 701500 -0.0 + 701510 -0.0 + 705511 -0.0 + 701520 -0.0 + 701530 -0.0 + 701540 -0.0 + 701550 -0.0 + 701560 -0.0 + 701570 -0.0 + 701580 -0.0 + 701590 -0.0 + 701600 -0.0 + 701610 -0.0 + 701620 -0.0 + 701630 -0.0 + 701640 -0.0 + 701650 -0.0 + 701660 -0.0 + 701670 -0.0 + 701680 -0.0 + 701690 -0.0 + 705691 -0.0 + 701700 -0.0 + 701710 -0.0 + 705711 -0.0 + 701720 -0.0 + 701730 -0.0 + 701740 -0.0 + 701750 -0.0 + 705751 -0.0 + 701760 -0.0 + 705761 -0.0 + 701770 -0.0 + 705771 -0.0 + 701780 -0.0 + 701790 -0.0 + 701800 -0.0 + 701810 -0.0 + 711500 -0.0 + 711510 -0.0 + 711520 -0.0 + 711530 -0.0 + 715531 -0.0 + 711540 -0.0 + 715541 -0.0 + 711550 -0.0 + 715551 -0.0 + 716552 -0.0 + 711560 -0.0 + 715561 -0.0 + 711570 -0.0 + 715571 -0.0 + 711580 -0.0 + 711590 -0.0 + 711600 -0.0 + 715601 -0.0 + 711610 -0.0 + 715611 -0.0 + 711620 -0.0 + 715621 -0.0 + 716622 -0.0 + 711630 -0.0 + 711640 -0.0 + 711650 -0.0 + 711660 -0.0 + 715661 -0.0 + 716662 -0.0 + 711670 -0.0 + 715671 -0.0 + 711680 -0.0 + 715681 -0.0 + 711690 -0.0 + 715691 -0.0 + 711700 -0.0 + 715701 -0.0 + 711710 -0.0 + 715711 -0.0 + 711720 -0.0 + 715721 -0.0 + 711730 -0.0 + 711740 -0.0 + 715741 -0.0 + 71175.82c -0.0 + 71176.82c -0.0 + 715761 -0.0 + 711770 -0.0 + 715771 -0.0 + 716772 -0.0 + 711780 -0.0 + 715781 -0.0 + 711790 -0.0 + 715791 -0.0 + 711800 -0.0 + 715801 -0.0 + 711810 -0.0 + 711820 -0.0 + 711830 -0.0 + 711840 -0.0 + 721530 -0.0 + 721540 -0.0 + 721550 -0.0 + 721560 -0.0 + 721570 -0.0 + 721580 -0.0 + 721590 -0.0 + 721600 -0.0 + 721610 -0.0 + 721620 -0.0 + 721630 -0.0 + 721640 -0.0 + 721650 -0.0 + 721660 -0.0 + 721670 -0.0 + 721680 -0.0 + 721690 -0.0 + 721700 -0.0 + 721710 -0.0 + 725711 -0.0 + 721720 -0.0 + 721730 -0.0 + 72174.82c -0.0 + 721750 -0.0 + 72176.82c -0.0 + 72177.82c -0.0 + 725771 -0.0 + 726772 -0.0 + 72178.82c -0.0 + 725781 -0.0 + 726782 -0.0 + 72179.82c -0.0 + 725791 -0.0 + 726792 -0.0 + 72180.82c -0.0 + 725801 -0.0 + 721810 -0.0 + 721820 -0.0 + 725821 -0.0 + 721830 -0.0 + 721840 -0.0 + 725841 -0.0 + 721850 -0.0 + 721860 -0.0 + 721870 -0.0 + 721880 -0.0 + 731550 -0.0 + 731560 -0.0 + 735561 -0.0 + 731570 -0.0 + 735571 -0.0 + 736572 -0.0 + 731580 -0.0 + 735581 -0.0 + 731590 -0.0 + 735591 -0.0 + 731600 -0.0 + 735601 -0.0 + 731610 -0.0 + 731620 -0.0 + 731630 -0.0 + 731640 -0.0 + 731650 -0.0 + 731660 -0.0 + 731670 -0.0 + 731680 -0.0 + 731690 -0.0 + 731700 -0.0 + 731710 -0.0 + 731720 -0.0 + 731730 -0.0 + 731740 -0.0 + 731750 -0.0 + 731760 -0.0 + 735761 -0.0 + 736762 -0.0 + 731770 -0.0 + 731780 -0.0 + 735781 -0.0 + 736782 -0.0 + 731790 -0.0 + 735791 -0.0 + 736792 -0.0 + 73180.82c -0.0 + 735801 -0.0 + 73181.82c -0.0 + 73182.82c -0.0 + 735821 -0.0 + 736822 -0.0 + 731830 -0.0 + 731840 -0.0 + 731850 -0.0 + 735851 -0.0 + 731860 -0.0 + 731870 -0.0 + 731880 -0.0 + 731890 -0.0 + 731900 -0.0 + 741580 -0.0 + 741590 -0.0 + 741600 -0.0 + 741610 -0.0 + 741620 -0.0 + 741630 -0.0 + 741640 -0.0 + 741650 -0.0 + 741660 -0.0 + 741670 -0.0 + 741680 -0.0 + 741690 -0.0 + 741700 -0.0 + 741710 -0.0 + 741720 -0.0 + 741730 -0.0 + 741740 -0.0 + 741750 -0.0 + 741760 -0.0 + 741770 -0.0 + 741780 -0.0 + 741790 -0.0 + 745791 -0.0 + 74180.82c -0.0 + 745801 -0.0 + 741810 -0.0 + 74182.82c -0.0 + 74183.82c -0.0 + 745831 -0.0 + 74184.82c -0.0 + 741850 -0.0 + 745851 -0.0 + 74186.82c -0.0 + 745861 -0.0 + 741870 -0.0 + 741880 -0.0 + 741890 -0.0 + 741900 -0.0 + 745901 -0.0 + 741910 -0.0 + 741920 -0.0 + 751600 -0.0 + 751610 -0.0 + 755611 -0.0 + 751620 -0.0 + 755621 -0.0 + 751630 -0.0 + 755631 -0.0 + 751640 -0.0 + 755641 -0.0 + 751650 -0.0 + 755651 -0.0 + 751660 -0.0 + 751670 -0.0 + 755671 -0.0 + 751680 -0.0 + 751690 -0.0 + 755691 -0.0 + 751700 -0.0 + 751710 -0.0 + 751720 -0.0 + 755721 -0.0 + 751730 -0.0 + 751740 -0.0 + 751750 -0.0 + 751760 -0.0 + 751770 -0.0 + 751780 -0.0 + 751790 -0.0 + 751800 -0.0 + 751810 -0.0 + 751820 -0.0 + 755821 -0.0 + 751830 -0.0 + 755831 -0.0 + 751840 -0.0 + 755841 -0.0 + 75185.82c -0.0 + 751860 -0.0 + 755861 -0.0 + 75187.82c -0.0 + 751880 -0.0 + 755881 -0.0 + 751890 -0.0 + 751900 -0.0 + 755901 -0.0 + 751910 -0.0 + 751920 -0.0 + 751930 -0.0 + 751940 -0.0 + 761620 -0.0 + 761630 -0.0 + 761640 -0.0 + 761650 -0.0 + 761660 -0.0 + 761670 -0.0 + 761680 -0.0 + 761690 -0.0 + 761700 -0.0 + 761710 -0.0 + 761720 -0.0 + 761730 -0.0 + 761740 -0.0 + 761750 -0.0 + 761760 -0.0 + 761770 -0.0 + 761780 -0.0 + 761790 -0.0 + 761800 -0.0 + 761810 -0.0 + 765811 -0.0 + 761820 -0.0 + 761830 -0.0 + 765831 -0.0 + 761840 -0.0 + 761850 -0.0 + 761860 -0.0 + 761870 -0.0 + 761880 -0.0 + 761890 -0.0 + 765891 -0.0 + 761900 -0.0 + 765901 -0.0 + 761910 -0.0 + 765911 -0.0 + 761920 -0.0 + 765921 -0.0 + 761930 -0.0 + 761940 -0.0 + 761950 -0.0 + 761960 -0.0 + 771640 -0.0 + 775641 -0.0 + 771650 -0.0 + 771660 -0.0 + 775661 -0.0 + 771670 -0.0 + 775671 -0.0 + 771680 -0.0 + 775681 -0.0 + 771690 -0.0 + 775691 -0.0 + 771700 -0.0 + 775701 -0.0 + 771710 -0.0 + 775711 -0.0 + 771720 -0.0 + 775721 -0.0 + 771730 -0.0 + 775731 -0.0 + 771740 -0.0 + 775741 -0.0 + 771750 -0.0 + 771760 -0.0 + 771770 -0.0 + 771780 -0.0 + 771790 -0.0 + 771800 -0.0 + 771810 -0.0 + 771820 -0.0 + 771830 -0.0 + 771840 -0.0 + 771850 -0.0 + 771860 -0.0 + 775861 -0.0 + 771870 -0.0 + 775871 -0.0 + 771880 -0.0 + 775881 -0.0 + 771890 -0.0 + 775891 -0.0 + 776892 -0.0 + 771900 -0.0 + 775901 -0.0 + 776902 -0.0 + 77191.82c -0.0 + 775911 -0.0 + 776912 -0.0 + 771920 -0.0 + 775921 -0.0 + 776922 -0.0 + 77193.82c -0.0 + 775931 -0.0 + 771940 -0.0 + 775941 -0.0 + 776942 -0.0 + 771950 -0.0 + 775951 -0.0 + 771960 -0.0 + 775961 -0.0 + 771970 -0.0 + 775971 -0.0 + 771980 -0.0 + 771990 -0.0 + 781660 -0.0 + 781670 -0.0 + 781680 -0.0 + 781690 -0.0 + 781700 -0.0 + 781710 -0.0 + 781720 -0.0 + 781730 -0.0 + 781740 -0.0 + 781750 -0.0 + 781760 -0.0 + 781770 -0.0 + 781780 -0.0 + 781790 -0.0 + 781800 -0.0 + 781810 -0.0 + 781820 -0.0 + 781830 -0.0 + 785831 -0.0 + 781840 -0.0 + 785841 -0.0 + 781850 -0.0 + 785851 -0.0 + 781860 -0.0 + 781870 -0.0 + 781880 -0.0 + 781890 -0.0 + 781900 -0.0 + 781910 -0.0 + 781920 -0.0 + 781930 -0.0 + 785931 -0.0 + 781940 -0.0 + 781950 -0.0 + 785951 -0.0 + 781960 -0.0 + 781970 -0.0 + 785971 -0.0 + 781980 -0.0 + 781990 -0.0 + 785991 -0.0 + 782000 -0.0 + 782010 -0.0 + 782020 -0.0 + 791690 -0.0 + 791700 -0.0 + 795701 -0.0 + 791710 -0.0 + 795711 -0.0 + 791720 -0.0 + 791730 -0.0 + 795731 -0.0 + 791740 -0.0 + 795741 -0.0 + 791750 -0.0 + 795751 -0.0 + 791760 -0.0 + 795761 -0.0 + 791770 -0.0 + 795771 -0.0 + 791780 -0.0 + 791790 -0.0 + 791800 -0.0 + 791810 -0.0 + 791820 -0.0 + 791830 -0.0 + 791840 -0.0 + 795841 -0.0 + 791850 -0.0 + 791860 -0.0 + 791870 -0.0 + 795871 -0.0 + 791880 -0.0 + 791890 -0.0 + 795891 -0.0 + 791900 -0.0 + 795901 -0.0 + 791910 -0.0 + 795911 -0.0 + 791920 -0.0 + 795921 -0.0 + 796922 -0.0 + 791930 -0.0 + 795931 -0.0 + 791940 -0.0 + 795941 -0.0 + 796942 -0.0 + 791950 -0.0 + 795951 -0.0 + 791960 -0.0 + 795961 -0.0 + 796962 -0.0 + 79197.82c -0.0 + 795971 -0.0 + 791980 -0.0 + 795981 -0.0 + 791990 -0.0 + 792000 -0.0 + 796001 -0.0 + 792010 -0.0 + 792020 -0.0 + 792030 -0.0 + 792040 -0.0 + 792050 -0.0 + 801710 -0.0 + 801720 -0.0 + 801730 -0.0 + 801740 -0.0 + 801750 -0.0 + 801760 -0.0 + 801770 -0.0 + 801780 -0.0 + 801790 -0.0 + 801800 -0.0 + 801810 -0.0 + 801820 -0.0 + 801830 -0.0 + 801840 -0.0 + 801850 -0.0 + 805851 -0.0 + 801860 -0.0 + 801870 -0.0 + 805871 -0.0 + 801880 -0.0 + 801890 -0.0 + 805891 -0.0 + 801900 -0.0 + 801910 -0.0 + 805911 -0.0 + 801920 -0.0 + 801930 -0.0 + 805931 -0.0 + 801940 -0.0 + 801950 -0.0 + 805951 -0.0 + 80196.82c -0.0 + 801970 -0.0 + 805971 -0.0 + 80198.82c -0.0 + 80199.82c -0.0 + 805991 -0.0 + 80200.82c -0.0 + 80201.82c -0.0 + 80202.82c -0.0 + 802030 -0.0 + 80204.82c -0.0 + 802050 -0.0 + 806051 -0.0 + 802060 -0.0 + 802070 -0.0 + 802080 -0.0 + 802090 -0.0 + 802100 -0.0 + 811760 -0.0 + 811770 -0.0 + 811780 -0.0 + 811790 -0.0 + 815791 -0.0 + 811800 -0.0 + 811810 -0.0 + 815811 -0.0 + 811820 -0.0 + 811830 -0.0 + 815831 -0.0 + 811840 -0.0 + 811850 -0.0 + 815851 -0.0 + 811860 -0.0 + 815861 -0.0 + 811870 -0.0 + 815871 -0.0 + 811880 -0.0 + 815881 -0.0 + 816882 -0.0 + 811890 -0.0 + 815891 -0.0 + 811900 -0.0 + 815901 -0.0 + 811910 -0.0 + 815911 -0.0 + 811920 -0.0 + 815921 -0.0 + 811930 -0.0 + 815931 -0.0 + 811940 -0.0 + 815941 -0.0 + 811950 -0.0 + 815951 -0.0 + 811960 -0.0 + 815961 -0.0 + 811970 -0.0 + 815971 -0.0 + 811980 -0.0 + 815981 -0.0 + 816982 -0.0 + 811990 -0.0 + 815991 -0.0 + 812000 -0.0 + 816001 -0.0 + 812010 -0.0 + 816011 -0.0 + 812020 -0.0 + 81203.82c -0.0 + 812040 -0.0 + 81205.82c -0.0 + 812060 -0.0 + 816061 -0.0 + 812070 -0.0 + 816071 -0.0 + 812080 -0.0 + 812090 -0.0 + 812100 -0.0 + 812110 -0.0 + 812120 -0.0 + 821780 -0.0 + 821790 -0.0 + 821800 -0.0 + 821810 -0.0 + 825811 -0.0 + 821820 -0.0 + 821830 -0.0 + 825831 -0.0 + 821840 -0.0 + 821850 -0.0 + 825851 -0.0 + 821860 -0.0 + 821870 -0.0 + 825871 -0.0 + 821880 -0.0 + 821890 -0.0 + 825891 -0.0 + 821900 -0.0 + 821910 -0.0 + 825911 -0.0 + 821920 -0.0 + 821930 -0.0 + 825931 -0.0 + 821940 -0.0 + 821950 -0.0 + 825951 -0.0 + 821960 -0.0 + 821970 -0.0 + 825971 -0.0 + 821980 -0.0 + 821990 -0.0 + 825991 -0.0 + 822000 -0.0 + 822010 -0.0 + 826011 -0.0 + 822020 -0.0 + 826021 -0.0 + 822030 -0.0 + 826031 -0.0 + 827032 -0.0 + 82204.82c -0.0 + 826041 -0.0 + 822050 -0.0 + 826051 -0.0 + 82206.82c -0.0 + 82207.82c -0.0 + 826071 -0.0 + 82208.82c -0.0 + 822090 -0.0 + 822100 -0.0 + 822110 -0.0 + 822120 -0.0 + 822130 -0.0 + 822140 -0.0 + 822150 -0.0 + 831840 -0.0 + 835841 -0.0 + 831850 -0.0 + 831860 -0.0 + 835861 -0.0 + 831870 -0.0 + 835871 -0.0 + 831880 -0.0 + 835881 -0.0 + 831890 -0.0 + 835891 -0.0 + 831900 -0.0 + 835901 -0.0 + 831910 -0.0 + 835911 -0.0 + 831920 -0.0 + 835921 -0.0 + 831930 -0.0 + 835931 -0.0 + 831940 -0.0 + 835941 -0.0 + 836942 -0.0 + 831950 -0.0 + 835951 -0.0 + 831960 -0.0 + 835961 -0.0 + 836962 -0.0 + 831970 -0.0 + 835971 -0.0 + 831980 -0.0 + 835981 -0.0 + 836982 -0.0 + 831990 -0.0 + 835991 -0.0 + 832000 -0.0 + 836001 -0.0 + 837002 -0.0 + 832010 -0.0 + 836011 -0.0 + 832020 -0.0 + 832030 -0.0 + 836031 -0.0 + 832040 -0.0 + 836041 -0.0 + 837042 -0.0 + 832050 -0.0 + 832060 -0.0 + 832070 -0.0 + 832080 -0.0 + 836081 -0.0 + 83209.82c -0.0 + 832100 -0.0 + 836101 -0.0 + 832110 -0.0 + 832120 -0.0 + 836121 -0.0 + 837122 -0.0 + 832130 -0.0 + 832140 -0.0 + 832150 -0.0 + 836151 -0.0 + 832160 -0.0 + 832170 -0.0 + 832180 -0.0 + 841880 -0.0 + 841890 -0.0 + 841900 -0.0 + 841910 -0.0 + 845911 -0.0 + 841920 -0.0 + 841930 -0.0 + 845931 -0.0 + 841940 -0.0 + 841950 -0.0 + 845951 -0.0 + 841960 -0.0 + 841970 -0.0 + 845971 -0.0 + 841980 -0.0 + 841990 -0.0 + 845991 -0.0 + 842000 -0.0 + 842010 -0.0 + 846011 -0.0 + 842020 -0.0 + 842030 -0.0 + 846031 -0.0 + 842040 -0.0 + 842050 -0.0 + 846051 -0.0 + 847052 -0.0 + 842060 -0.0 + 842070 -0.0 + 846071 -0.0 + 842080 -0.0 + 842090 -0.0 + 842100 -0.0 + 842110 -0.0 + 846111 -0.0 + 842120 -0.0 + 846121 -0.0 + 842130 -0.0 + 842140 -0.0 + 842150 -0.0 + 842160 -0.0 + 842170 -0.0 + 842180 -0.0 + 842190 -0.0 + 842200 -0.0 + 851930 -0.0 + 851940 -0.0 + 855941 -0.0 + 851950 -0.0 + 855951 -0.0 + 851960 -0.0 + 855961 -0.0 + 851970 -0.0 + 855971 -0.0 + 851980 -0.0 + 855981 -0.0 + 851990 -0.0 + 852000 -0.0 + 856001 -0.0 + 857002 -0.0 + 852010 -0.0 + 852020 -0.0 + 856021 -0.0 + 857022 -0.0 + 852030 -0.0 + 852040 -0.0 + 856041 -0.0 + 852050 -0.0 + 852060 -0.0 + 852070 -0.0 + 852080 -0.0 + 852090 -0.0 + 852100 -0.0 + 852110 -0.0 + 852120 -0.0 + 856121 -0.0 + 852130 -0.0 + 852140 -0.0 + 852150 -0.0 + 852160 -0.0 + 852170 -0.0 + 852180 -0.0 + 852190 -0.0 + 852200 -0.0 + 852210 -0.0 + 852220 -0.0 + 852230 -0.0 + 861950 -0.0 + 865951 -0.0 + 861960 -0.0 + 861970 -0.0 + 865971 -0.0 + 861980 -0.0 + 861990 -0.0 + 865991 -0.0 + 862000 -0.0 + 862010 -0.0 + 866011 -0.0 + 862020 -0.0 + 862030 -0.0 + 866031 -0.0 + 862040 -0.0 + 862050 -0.0 + 862060 -0.0 + 862070 -0.0 + 862080 -0.0 + 862090 -0.0 + 862100 -0.0 + 862110 -0.0 + 862120 -0.0 + 862130 -0.0 + 862140 -0.0 + 862150 -0.0 + 862160 -0.0 + 862170 -0.0 + 862180 -0.0 + 862190 -0.0 + 862200 -0.0 + 862210 -0.0 + 862220 -0.0 + 862230 -0.0 + 862240 -0.0 + 862250 -0.0 + 862260 -0.0 + 862270 -0.0 + 862280 -0.0 + 871990 -0.0 + 872000 -0.0 + 872010 -0.0 + 872020 -0.0 + 876021 -0.0 + 872030 -0.0 + 872040 -0.0 + 876041 -0.0 + 877042 -0.0 + 872050 -0.0 + 872060 -0.0 + 876061 -0.0 + 877062 -0.0 + 872070 -0.0 + 872080 -0.0 + 872090 -0.0 + 872100 -0.0 + 872110 -0.0 + 872120 -0.0 + 872130 -0.0 + 872140 -0.0 + 876141 -0.0 + 872150 -0.0 + 872160 -0.0 + 872170 -0.0 + 872180 -0.0 + 876181 -0.0 + 872190 -0.0 + 872200 -0.0 + 872210 -0.0 + 872220 -0.0 + 872230 -0.0 + 872240 -0.0 + 872250 -0.0 + 872260 -0.0 + 872270 -0.0 + 872280 -0.0 + 872290 -0.0 + 872300 -0.0 + 872310 -0.0 + 872320 -0.0 + 882020 -0.0 + 882030 -0.0 + 886031 -0.0 + 882040 -0.0 + 882050 -0.0 + 886051 -0.0 + 882060 -0.0 + 882070 -0.0 + 886071 -0.0 + 882080 -0.0 + 882090 -0.0 + 882100 -0.0 + 882110 -0.0 + 882120 -0.0 + 882130 -0.0 + 886131 -0.0 + 882140 -0.0 + 882150 -0.0 + 882160 -0.0 + 882170 -0.0 + 882180 -0.0 + 882190 -0.0 + 882200 -0.0 + 882210 -0.0 + 882220 -0.0 + 88223.82c -0.0 + 88224.82c -0.0 + 88225.82c -0.0 + 88226.82c -0.0 + 882270 -0.0 + 882280 -0.0 + 882290 -0.0 + 882300 -0.0 + 882310 -0.0 + 882320 -0.0 + 882330 -0.0 + 882340 -0.0 + 892060 -0.0 + 896061 -0.0 + 892070 -0.0 + 892080 -0.0 + 896081 -0.0 + 892090 -0.0 + 892100 -0.0 + 892110 -0.0 + 892120 -0.0 + 892130 -0.0 + 892140 -0.0 + 892150 -0.0 + 892160 -0.0 + 896161 -0.0 + 892170 -0.0 + 892180 -0.0 + 892190 -0.0 + 892200 -0.0 + 892210 -0.0 + 892220 -0.0 + 896221 -0.0 + 892230 -0.0 + 892240 -0.0 + 89225.82c -0.0 + 89226.82c -0.0 + 89227.82c -0.0 + 892280 -0.0 + 892290 -0.0 + 892300 -0.0 + 892310 -0.0 + 892320 -0.0 + 892330 -0.0 + 892340 -0.0 + 892350 -0.0 + 892360 -0.0 + 902090 -0.0 + 902100 -0.0 + 902110 -0.0 + 902120 -0.0 + 902130 -0.0 + 902140 -0.0 + 902150 -0.0 + 902160 -0.0 + 902170 -0.0 + 902180 -0.0 + 902190 -0.0 + 902200 -0.0 + 902210 -0.0 + 902220 -0.0 + 902230 -0.0 + 902240 -0.0 + 902250 -0.0 + 902260 -0.0 + 90227.82c -0.0 + 90228.82c -0.0 + 90229.82c -0.0 + 90230.82c -0.0 + 90231.82c -0.0 + 90232.82c -0.43557913048233615 + 90233.82c -0.0 + 90234.82c -0.0 + 902350 -0.0 + 902360 -0.0 + 902370 -0.0 + 902380 -0.0 + 912120 -0.0 + 912130 -0.0 + 912140 -0.0 + 912150 -0.0 + 912160 -0.0 + 912170 -0.0 + 916171 -0.0 + 912180 -0.0 + 912190 -0.0 + 912200 -0.0 + 912210 -0.0 + 912220 -0.0 + 912230 -0.0 + 912240 -0.0 + 912250 -0.0 + 912260 -0.0 + 912270 -0.0 + 912280 -0.0 + 91229.82c -0.0 + 91230.82c -0.0 + 91231.82c -0.0 + 91232.82c -0.0 + 91233.82c -0.0 + 912340 -0.0 + 916341 -0.0 + 912350 -0.0 + 912360 -0.0 + 912370 -0.0 + 912380 -0.0 + 912390 -0.0 + 912400 -0.0 + 922170 -0.0 + 922180 -0.0 + 922190 -0.0 + 922200 -0.0 + 922220 -0.0 + 922230 -0.0 + 922240 -0.0 + 922250 -0.0 + 922260 -0.0 + 922270 -0.0 + 922280 -0.0 + 922290 -0.0 + 92230.82c -0.0 + 92231.82c -0.0 + 92232.82c -0.0 + 92233.82c -0.00911370203663893 + 92234.82c -0.0 + 92235.82c -0.0 + 926351 -0.0 + 92236.82c -0.0 + 92237.82c -0.0 + 92238.82c -0.0 + 92239.82c -0.0 + 92240.82c -0.0 + 92241.82c -0.0 + 922420 -0.0 + 932250 -0.0 + 932260 -0.0 + 932270 -0.0 + 932280 -0.0 + 932290 -0.0 + 932300 -0.0 + 932310 -0.0 + 932320 -0.0 + 932330 -0.0 + 93234.82c -0.0 + 93235.82c -0.0 + 93236.82c -0.0 + 936361 -0.0 + 93237.82c -0.0 + 93238.82c -0.0 + 93239.82c -0.0 + 932400 -0.0 + 936401 -0.0 + 932410 -0.0 + 932420 -0.0 + 936421 -0.0 + 932430 -0.0 + 932440 -0.0 + 942280 -0.0 + 942290 -0.0 + 942300 -0.0 + 942310 -0.0 + 942320 -0.0 + 942330 -0.0 + 942340 -0.0 + 942350 -0.0 + 94236.82c -0.0 + 94237.82c -0.0 + 946371 -0.0 + 94238.82c -0.0 + 94239.82c -0.0 + 94240.82c -0.0 + 94241.82c -0.0 + 94242.82c -0.0 + 94243.82c -0.0 + 94244.82c -0.0 + 942450 -0.0 + 94246.82c -0.0 + 942470 -0.0 + 952310 -0.0 + 952320 -0.0 + 952330 -0.0 + 952340 -0.0 + 952350 -0.0 + 952360 -0.0 + 952370 -0.0 + 952380 -0.0 + 952390 -0.0 + 95240.82c -0.0 + 95241.82c -0.0 + 95242.82c -0.0 + 95642.82c -0.0 + 957422 -0.0 + 95243.82c -0.0 + 95244.82c -0.0 + 95644.82c -0.0 + 952450 -0.0 + 952460 -0.0 + 956461 -0.0 + 952470 -0.0 + 952480 -0.0 + 952490 -0.0 + 962330 -0.0 + 962340 -0.0 + 962350 -0.0 + 962360 -0.0 + 962370 -0.0 + 962380 -0.0 + 962390 -0.0 + 96240.82c -0.0 + 96241.82c -0.0 + 96242.82c -0.0 + 96243.82c -0.0 + 96244.82c -0.0 + 966441 -0.0 + 96245.82c -0.0 + 96246.82c -0.0 + 96247.82c -0.0 + 96248.82c -0.0 + 96249.82c -0.0 + 96250.82c -0.0 + 962510 -0.0 + 972350 -0.0 + 972370 -0.0 + 972380 -0.0 + 972400 -0.0 + 972410 -0.0 + 972420 -0.0 + 972430 -0.0 + 972440 -0.0 + 97245.82c -0.0 + 97246.82c -0.0 + 97247.82c -0.0 + 97248.82c -0.0 + 976481 -0.0 + 97249.82c -0.0 + 97250.82c -0.0 + 972510 -0.0 + 972530 -0.0 + 972540 -0.0 + 982370 -0.0 + 982380 -0.0 + 982390 -0.0 + 982400 -0.0 + 982410 -0.0 + 982420 -0.0 + 982430 -0.0 + 982440 -0.0 + 982450 -0.0 + 98246.82c -0.0 + 982470 -0.0 + 98248.82c -0.0 + 98249.82c -0.0 + 98250.82c -0.0 + 98251.82c -0.0 + 98252.82c -0.0 + 98253.82c -0.0 + 98254.82c -0.0 + 982550 -0.0 + 982560 -0.0 + 992400 -0.0 + 992410 -0.0 + 992420 -0.0 + 992430 -0.0 + 992440 -0.0 + 992450 -0.0 + 992460 -0.0 + 992470 -0.0 + 996471 -0.0 + 992480 -0.0 + 992490 -0.0 + 992500 -0.0 + 996501 -0.0 + 99251.82c -0.0 + 99252.82c -0.0 + 99253.82c -0.0 + 99254.82c -0.0 + 99654.82c -0.0 + 99255.82c -0.0 + 992560 -0.0 + 996561 -0.0 + 992570 -0.0 + 992580 -0.0 + 1002420 -0.0 + 1002430 -0.0 + 1002440 -0.0 + 1002450 -0.0 + 1002460 -0.0 + 1002470 -0.0 + 1002480 -0.0 + 1002490 -0.0 + 1002500 -0.0 + 1006501 -0.0 + 1002510 -0.0 + 1002520 -0.0 + 1002530 -0.0 + 1002540 -0.0 + 100255.82c -0.0 + 1002560 -0.0 + 1002570 -0.0 + 1002580 -0.0 + 1002590 -0.0 + 1002600 -0.0 + 1012450 -0.0 + 1016451 -0.0 + 1012460 -0.0 + 1012470 -0.0 + 1016471 -0.0 + 1012480 -0.0 + 1012490 -0.0 + 1016491 -0.0 + 1012500 -0.0 + 1012510 -0.0 + 1012520 -0.0 + 1012530 -0.0 + 1012540 -0.0 + 1016541 -0.0 + 1012550 -0.0 + 1012560 -0.0 + 1012570 -0.0 + 1012580 -0.0 + 1016581 -0.0 + 1012590 -0.0 + 1012600 -0.0 + 1012610 -0.0 + 1022500 -0.0 + 1022510 -0.0 + 1026511 -0.0 + 1022520 -0.0 + 1022530 -0.0 + 1022540 -0.0 + 1026541 -0.0 + 1022550 -0.0 + 1022560 -0.0 + 1022570 -0.0 + 1022580 -0.0 + 1022590 -0.0 + 1022600 -0.0 + 1022610 -0.0 + 1022620 -0.0 + 1032510 -0.0 + 1032520 -0.0 + 1032530 -0.0 + 1036531 -0.0 + 1032540 -0.0 + 1032550 -0.0 + 1036551 -0.0 + 1032560 -0.0 + 1032570 -0.0 + 1032580 -0.0 + 1032590 -0.0 + 1032600 -0.0 + 1032610 -0.0 + 1032620 -0.0 + 1032630 -0.0 + 1042530 -0.0 + 1042540 -0.0 + 1042550 -0.0 + 1042560 -0.0 + 1042570 -0.0 + 1046571 -0.0 + 1042580 -0.0 + 1042590 -0.0 + 1042600 -0.0 + 1042610 -0.0 + 1046611 -0.0 + 1042620 -0.0 + 1042630 -0.0 + 1042640 -0.0 + 1042650 -0.0 + 1052550 -0.0 + 1052560 -0.0 + 1052570 -0.0 + 1056571 -0.0 + 1052580 -0.0 + 1056581 -0.0 + 1052590 -0.0 + 1052600 -0.0 + 1052610 -0.0 + 1052620 -0.0 + 1052630 -0.0 + 1052640 -0.0 + 1052650 -0.0 + 1062580 -0.0 + 1062590 -0.0 + 1062600 -0.0 + 1062610 -0.0 + 1062620 -0.0 + 1062630 -0.0 + 1066631 -0.0 + 1062640 -0.0 + 1062650 -0.0 + 1062660 -0.0 + 1062690 -0.0 + 1072600 -0.0 + 1072610 -0.0 + 1072620 -0.0 + 1076621 -0.0 + 1072630 -0.0 + 1072640 -0.0 + 1072650 -0.0 + 1072660 -0.0 + 1072670 -0.0 + 1072690 -0.0 + 1082630 -0.0 + 1082640 -0.0 + 1082650 -0.0 + 1086651 -0.0 + 1082660 -0.0 + 1082670 -0.0 + 1082680 -0.0 + 1082690 -0.0 + 1082730 -0.0 + 1092650 -0.0 + 1092660 -0.0 + 1096661 -0.0 + 1092670 -0.0 + 1092680 -0.0 + 1092690 -0.0 + 1092700 -0.0 + 1092710 -0.0 + 1092730 -0.0 + 1102670 -0.0 + 1102680 -0.0 + 1102690 -0.0 + 1102700 -0.0 + 1106701 -0.0 + 1102710 -0.0 + 1106711 -0.0 + 1102720 -0.0 + 1102730 -0.0 + 1106791 -0.0 + 1112720 -0.0 diff --git a/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71_diluted.ini b/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71_diluted.ini new file mode 100644 index 000000000..2360b43b8 --- /dev/null +++ b/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71_diluted.ini @@ -0,0 +1,3822 @@ +% Material compositions (after 0.000000 days) + +mat fuel -3.350000000E+00 rgb 255 255 0 burn 1 fix 82c 900 vol 4.87100E+07 + 1001.82c -4.995620414657497e-22 + 1002.82c -9.983566232286466e-22 + 1003.82c -1.495005272019709e-21 + 10040 -0.0 + 10050 -0.0 + 10060 -0.0 + 10070 -0.0 + 2003.82c -1.4949953785081194e-21 + 2004.82c -1.9840236041432936e-21 + 20050 -0.0 + 20060 -0.0 + 20070 -0.0 + 20080 -0.0 + 20090 -0.0 + 20100 -0.0 + 30040 -0.0 + 30050 -0.0 + 3006.82c -2.9815959846007347e-21 + 3007.82c -0.07874746738790851 + 30080 -0.0 + 30090 -0.0 + 30100 -0.0 + 30110 -0.0 + 30120 -0.0 + 40050 -0.0 + 40060 -0.0 + 40080 -0.0 + 4009.82c -0.02255668791383211 + 40100 -0.0 + 40110 -0.0 + 40120 -0.0 + 40130 -0.0 + 40140 -0.0 + 40150 -0.0 + 40160 -0.0 + 50060 -0.0 + 50070 -0.0 + 50080 -0.0 + 50090 -0.0 + 5010.82c -4.963245622834658e-21 + 5011.82c -5.457128755397568e-21 + 50120 -0.0 + 50130 -0.0 + 50140 -0.0 + 50150 -0.0 + 50160 -0.0 + 50170 -0.0 + 50180 -0.0 + 50190 -0.0 + 60080 -0.0 + 60090 -0.0 + 60100 -0.0 + 60110 -0.0 + 60120 -0.0 + 60130 -0.0 + 60140 -0.0 + 60150 -0.0 + 60160 -0.0 + 60170 -0.0 + 60180 -0.0 + 60190 -0.0 + 60200 -0.0 + 60210 -0.0 + 60220 -0.0 + 70100 -0.0 + 70110 -0.0 + 70120 -0.0 + 70130 -0.0 + 7014.82c -6.941089983561896e-21 + 7015.82c -7.435303533896105e-21 + 70160 -0.0 + 70170 -0.0 + 70180 -0.0 + 70190 -0.0 + 70200 -0.0 + 70210 -0.0 + 70220 -0.0 + 70230 -0.0 + 70240 -0.0 + 70250 -0.0 + 80120 -0.0 + 80130 -0.0 + 80140 -0.0 + 80150 -0.0 + 8016.82c -7.928412119986839e-21 + 8017.82c -8.426185788040688e-21 + 80180 -0.0 + 80190 -0.0 + 80200 -0.0 + 80210 -0.0 + 80220 -0.0 + 80230 -0.0 + 80240 -0.0 + 80250 -0.0 + 80260 -0.0 + 80270 -0.0 + 80280 -0.0 + 90140 -0.0 + 90150 -0.0 + 90160 -0.0 + 90170 -0.0 + 90180 -0.0 + 9019.82c -0.45400301217928424 + 90200 -0.0 + 90210 -0.0 + 90220 -0.0 + 90230 -0.0 + 90240 -0.0 + 90250 -0.0 + 90260 -0.0 + 90270 -0.0 + 90280 -0.0 + 90290 -0.0 + 90300 -0.0 + 90310 -0.0 + 100160 -0.0 + 100170 -0.0 + 100180 -0.0 + 100190 -0.0 + 100200 -0.0 + 100210 -0.0 + 100220 -0.0 + 100230 -0.0 + 100240 -0.0 + 100250 -0.0 + 100260 -0.0 + 100270 -0.0 + 100280 -0.0 + 100290 -0.0 + 100300 -0.0 + 100310 -0.0 + 100320 -0.0 + 100330 -0.0 + 100340 -0.0 + 110180 -0.0 + 110190 -0.0 + 110200 -0.0 + 110210 -0.0 + 11022.82c -1.0902275400925155e-20 + 11023.82c -1.1395644787479889e-20 + 110240 -0.0 + 114241 -0.0 + 110250 -0.0 + 110260 -0.0 + 110270 -0.0 + 110280 -0.0 + 110290 -0.0 + 110300 -0.0 + 110310 -0.0 + 110320 -0.0 + 110330 -0.0 + 110340 -0.0 + 110350 -0.0 + 110360 -0.0 + 110370 -0.0 + 120190 -0.0 + 120200 -0.0 + 120210 -0.0 + 120220 -0.0 + 120230 -0.0 + 12024.82c -1.188898470616782e-20 + 12025.82c -1.2385062210375638e-20 + 12026.82c -1.2879137520842412e-20 + 120270 -0.0 + 120280 -0.0 + 120290 -0.0 + 120300 -0.0 + 120310 -0.0 + 120320 -0.0 + 120330 -0.0 + 120340 -0.0 + 120350 -0.0 + 120360 -0.0 + 120370 -0.0 + 120380 -0.0 + 120390 -0.0 + 120400 -0.0 + 130210 -0.0 + 130220 -0.0 + 130230 -0.0 + 130240 -0.0 + 134241 -0.0 + 130250 -0.0 + 130260 -0.0 + 134261 -0.0 + 13027.82c -1.3374298095204667e-20 + 130280 -0.0 + 130290 -0.0 + 130300 -0.0 + 130310 -0.0 + 130320 -0.0 + 130330 -0.0 + 130340 -0.0 + 130350 -0.0 + 130360 -0.0 + 130370 -0.0 + 130380 -0.0 + 130390 -0.0 + 130400 -0.0 + 130410 -0.0 + 130420 -0.0 + 140220 -0.0 + 140230 -0.0 + 140240 -0.0 + 140250 -0.0 + 140260 -0.0 + 140270 -0.0 + 14028.82c -1.3867695370389118e-20 + 14029.82c -1.4363164603403635e-20 + 14030.82c -1.4857497403378133e-20 + 140310 -0.0 + 140320 -0.0 + 140330 -0.0 + 140340 -0.0 + 140350 -0.0 + 140360 -0.0 + 140370 -0.0 + 140380 -0.0 + 140390 -0.0 + 140400 -0.0 + 140410 -0.0 + 140420 -0.0 + 140430 -0.0 + 140440 -0.0 + 150240 -0.0 + 150250 -0.0 + 150260 -0.0 + 150270 -0.0 + 150280 -0.0 + 150290 -0.0 + 150300 -0.0 + 15031.82c -1.5353176673453676e-20 + 150320 -0.0 + 150330 -0.0 + 150340 -0.0 + 150350 -0.0 + 150360 -0.0 + 150370 -0.0 + 150380 -0.0 + 150390 -0.0 + 150400 -0.0 + 150410 -0.0 + 150420 -0.0 + 150430 -0.0 + 150440 -0.0 + 150450 -0.0 + 150460 -0.0 + 160260 -0.0 + 160270 -0.0 + 160280 -0.0 + 160290 -0.0 + 160300 -0.0 + 160310 -0.0 + 16032.82c -1.5848021863762338e-20 + 16033.82c -1.6343401678066608e-20 + 16034.82c -1.6837304537907988e-20 + 160350 -0.0 + 16036.82c -1.782828138295043e-20 + 160370 -0.0 + 160380 -0.0 + 160390 -0.0 + 160400 -0.0 + 160410 -0.0 + 160420 -0.0 + 160430 -0.0 + 160440 -0.0 + 160450 -0.0 + 160460 -0.0 + 160480 -0.0 + 160490 -0.0 + 170280 -0.0 + 170290 -0.0 + 170300 -0.0 + 170310 -0.0 + 170320 -0.0 + 170330 -0.0 + 170340 -0.0 + 174341 -0.0 + 17035.82c -1.7333476427652064e-20 + 170360 -0.0 + 17037.82c -1.8323380714649152e-20 + 170380 -0.0 + 174381 -0.0 + 170390 -0.0 + 170400 -0.0 + 170410 -0.0 + 170420 -0.0 + 170430 -0.0 + 170440 -0.0 + 170450 -0.0 + 170460 -0.0 + 170470 -0.0 + 170480 -0.0 + 170490 -0.0 + 170500 -0.0 + 170510 -0.0 + 180300 -0.0 + 180310 -0.0 + 180320 -0.0 + 180330 -0.0 + 180340 -0.0 + 180350 -0.0 + 18036.82c -1.7828511581250735e-20 + 180370 -0.0 + 18038.82c -1.881749246428263e-20 + 180390 -0.0 + 18040.82c -1.9808686087882246e-20 + 180410 -0.0 + 180420 -0.0 + 180430 -0.0 + 180440 -0.0 + 180450 -0.0 + 180460 -0.0 + 180470 -0.0 + 180480 -0.0 + 180490 -0.0 + 180500 -0.0 + 180510 -0.0 + 180520 -0.0 + 180530 -0.0 + 190320 -0.0 + 190330 -0.0 + 190340 -0.0 + 190350 -0.0 + 190360 -0.0 + 190370 -0.0 + 190380 -0.0 + 194381 -0.0 + 19039.82c -1.931365875310774e-20 + 19040.82c -1.9809486637345362e-20 + 19041.82c -2.0304092866743586e-20 + 190420 -0.0 + 190430 -0.0 + 190440 -0.0 + 190450 -0.0 + 190460 -0.0 + 190470 -0.0 + 190480 -0.0 + 190490 -0.0 + 190500 -0.0 + 190510 -0.0 + 190520 -0.0 + 190530 -0.0 + 190540 -0.0 + 190550 -0.0 + 200340 -0.0 + 200350 -0.0 + 200360 -0.0 + 200370 -0.0 + 200380 -0.0 + 200390 -0.0 + 20040.82c -1.9808789061736476e-20 + 200410 -0.0 + 20042.82c -2.0798186300898823e-20 + 20043.82c -2.129394326406309e-20 + 20044.82c -2.1787998304056852e-20 + 200450 -0.0 + 20046.82c -2.277847587605717e-20 + 200470 -0.0 + 20048.82c -2.376926497063901e-20 + 200490 -0.0 + 200500 -0.0 + 200510 -0.0 + 200520 -0.0 + 200530 -0.0 + 200540 -0.0 + 200550 -0.0 + 200560 -0.0 + 200570 -0.0 + 210360 -0.0 + 210370 -0.0 + 210380 -0.0 + 210390 -0.0 + 210400 -0.0 + 210410 -0.0 + 210420 -0.0 + 214421 -0.0 + 210430 -0.0 + 210440 -0.0 + 214441 -0.0 + 21045.82c -2.2283892748950852e-20 + 214451 -0.0 + 210460 -0.0 + 214461 -0.0 + 210470 -0.0 + 210480 -0.0 + 210490 -0.0 + 210500 -0.0 + 214501 -0.0 + 210510 -0.0 + 210520 -0.0 + 210530 -0.0 + 210540 -0.0 + 210550 -0.0 + 210560 -0.0 + 210570 -0.0 + 210580 -0.0 + 210590 -0.0 + 210600 -0.0 + 220380 -0.0 + 220390 -0.0 + 220400 -0.0 + 220410 -0.0 + 220420 -0.0 + 220430 -0.0 + 220440 -0.0 + 220450 -0.0 + 22046.82c -2.277794989064182e-20 + 22047.82c -2.3273202393933882e-20 + 22048.82c -2.376699376362089e-20 + 22049.82c -2.4262639244140392e-20 + 22050.82c -2.4756796443967346e-20 + 220510 -0.0 + 220520 -0.0 + 220530 -0.0 + 220540 -0.0 + 220550 -0.0 + 220560 -0.0 + 220570 -0.0 + 220580 -0.0 + 220590 -0.0 + 220600 -0.0 + 220610 -0.0 + 220620 -0.0 + 220630 -0.0 + 230400 -0.0 + 230410 -0.0 + 230420 -0.0 + 230430 -0.0 + 230440 -0.0 + 234441 -0.0 + 230450 -0.0 + 230460 -0.0 + 234461 -0.0 + 230470 -0.0 + 230480 -0.0 + 230490 -0.0 + 23050.82c -2.4757971216371063e-20 + 23051.82c -2.5252068840021753e-20 + 230520 -0.0 + 230530 -0.0 + 230540 -0.0 + 230550 -0.0 + 230560 -0.0 + 230570 -0.0 + 230580 -0.0 + 230590 -0.0 + 230600 -0.0 + 230610 -0.0 + 230620 -0.0 + 230630 -0.0 + 230640 -0.0 + 230650 -0.0 + 240420 -0.0 + 240430 -0.0 + 240440 -0.0 + 240450 -0.0 + 240460 -0.0 + 240470 -0.0 + 240480 -0.0 + 240490 -0.0 + 24050.82c -2.4757418825906122e-20 + 240510 -0.0 + 24052.82c -2.5746041106852005e-20 + 24053.82c -2.624179478214892e-20 + 24054.82c -2.6736601247298627e-20 + 240550 -0.0 + 240560 -0.0 + 240570 -0.0 + 240580 -0.0 + 240590 -0.0 + 240600 -0.0 + 240610 -0.0 + 240620 -0.0 + 240630 -0.0 + 240640 -0.0 + 240650 -0.0 + 240660 -0.0 + 240670 -0.0 + 250440 -0.0 + 250450 -0.0 + 250460 -0.0 + 250470 -0.0 + 250480 -0.0 + 250490 -0.0 + 250500 -0.0 + 254501 -0.0 + 250510 -0.0 + 250520 -0.0 + 254521 -0.0 + 250530 -0.0 + 250540 -0.0 + 25055.82c -2.7231870734683406e-20 + 250560 -0.0 + 250570 -0.0 + 250580 -0.0 + 254581 -0.0 + 250590 -0.0 + 250600 -0.0 + 254601 -0.0 + 250610 -0.0 + 250620 -0.0 + 254621 -0.0 + 250630 -0.0 + 250640 -0.0 + 250650 -0.0 + 250660 -0.0 + 250670 -0.0 + 250680 -0.0 + 250690 -0.0 + 260450 -0.0 + 260460 -0.0 + 260470 -0.0 + 260480 -0.0 + 260490 -0.0 + 260500 -0.0 + 260510 -0.0 + 260520 -0.0 + 264521 -0.0 + 260530 -0.0 + 264531 -0.0 + 26054.82c -2.6736963241841166e-20 + 260550 -0.0 + 26056.82c -2.772601367518877e-20 + 26057.82c -2.8221923266677474e-20 + 26058.82c -2.8716556516783773e-20 + 260590 -0.0 + 260600 -0.0 + 260610 -0.0 + 260620 -0.0 + 260630 -0.0 + 260640 -0.0 + 260650 -0.0 + 264651 -0.0 + 260660 -0.0 + 260670 -0.0 + 260680 -0.0 + 260690 -0.0 + 260700 -0.0 + 260710 -0.0 + 260720 -0.0 + 270490 -0.0 + 270500 -0.0 + 270510 -0.0 + 270520 -0.0 + 270530 -0.0 + 274531 -0.0 + 270540 -0.0 + 274541 -0.0 + 270550 -0.0 + 270560 -0.0 + 270570 -0.0 + 27058.82c -2.871778466684404e-20 + 27458.82c -2.871778466684404e-20 + 27059.82c -2.9212200125107435e-20 + 270600 -0.0 + 274601 -0.0 + 270610 -0.0 + 270620 -0.0 + 274621 -0.0 + 270630 -0.0 + 270640 -0.0 + 270650 -0.0 + 270660 -0.0 + 270670 -0.0 + 270680 -0.0 + 274681 -0.0 + 270690 -0.0 + 270700 -0.0 + 274701 -0.0 + 270710 -0.0 + 270720 -0.0 + 270730 -0.0 + 270740 -0.0 + 270750 -0.0 + 280480 -0.0 + 280490 -0.0 + 280500 -0.0 + 280510 -0.0 + 280520 -0.0 + 280530 -0.0 + 280540 -0.0 + 280550 -0.0 + 280560 -0.0 + 280570 -0.0 + 28058.82c -2.871758161067439e-20 + 28059.82c -2.921277111014014e-20 + 28060.82c -2.970668962507295e-20 + 28061.82c -3.020250660904141e-20 + 28062.82c -3.0696846574241974e-20 + 280630 -0.0 + 28064.82c -3.168802555050902e-20 + 280650 -0.0 + 280660 -0.0 + 280670 -0.0 + 280680 -0.0 + 280690 -0.0 + 284691 -0.0 + 280700 -0.0 + 280710 -0.0 + 280720 -0.0 + 280730 -0.0 + 280740 -0.0 + 280750 -0.0 + 280760 -0.0 + 280770 -0.0 + 280780 -0.0 + 290520 -0.0 + 290530 -0.0 + 290540 -0.0 + 290550 -0.0 + 290560 -0.0 + 290570 -0.0 + 290580 -0.0 + 290590 -0.0 + 290600 -0.0 + 290610 -0.0 + 290620 -0.0 + 29063.82c -3.1193150654296517e-20 + 290640 -0.0 + 29065.82c -3.218362119056802e-20 + 290660 -0.0 + 290670 -0.0 + 290680 -0.0 + 294681 -0.0 + 290690 -0.0 + 290700 -0.0 + 294701 -0.0 + 295702 -0.0 + 290710 -0.0 + 290720 -0.0 + 290730 -0.0 + 290740 -0.0 + 290750 -0.0 + 290760 -0.0 + 294761 -0.0 + 290770 -0.0 + 290780 -0.0 + 290790 -0.0 + 290800 -0.0 + 290810 -0.0 + 300540 -0.0 + 300550 -0.0 + 300560 -0.0 + 300570 -0.0 + 300580 -0.0 + 300590 -0.0 + 300600 -0.0 + 300610 -0.0 + 304611 -0.0 + 305612 -0.0 + 300620 -0.0 + 300630 -0.0 + 30064.82c -3.1688608192030295e-20 + 30065.82c -3.2184340449347343e-20 + 30066.82c -3.267843418188411e-20 + 30067.82c -3.317465965301057e-20 + 30068.82c -3.3669211216986845e-20 + 300690 -0.0 + 304691 -0.0 + 30070.82c -3.4660813219298886e-20 + 300710 -0.0 + 304711 -0.0 + 300720 -0.0 + 300730 -0.0 + 304731 -0.0 + 305732 -0.0 + 300740 -0.0 + 300750 -0.0 + 300760 -0.0 + 300770 -0.0 + 304771 -0.0 + 300780 -0.0 + 300790 -0.0 + 300800 -0.0 + 300810 -0.0 + 300820 -0.0 + 300830 -0.0 + 310560 -0.0 + 310570 -0.0 + 310580 -0.0 + 310590 -0.0 + 310600 -0.0 + 310610 -0.0 + 310620 -0.0 + 310630 -0.0 + 310640 -0.0 + 310650 -0.0 + 310660 -0.0 + 310670 -0.0 + 310680 -0.0 + 31069.82c -3.4165255992713175e-20 + 310700 -0.0 + 31071.82c -3.515619086230209e-20 + 310720 -0.0 + 314721 -0.0 + 310730 -0.0 + 310740 -0.0 + 314741 -0.0 + 310750 -0.0 + 310760 -0.0 + 310770 -0.0 + 310780 -0.0 + 310790 -0.0 + 310800 -0.0 + 310810 -0.0 + 310820 -0.0 + 310830 -0.0 + 310840 -0.0 + 310850 -0.0 + 310860 -0.0 + 320580 -0.0 + 320590 -0.0 + 320600 -0.0 + 320610 -0.0 + 320620 -0.0 + 320630 -0.0 + 320640 -0.0 + 320650 -0.0 + 320660 -0.0 + 320670 -0.0 + 320680 -0.0 + 320690 -0.0 + 32070.82c -3.466028260271442e-20 + 320710 -0.0 + 324711 -0.0 + 32072.82c -3.565057214964559e-20 + 32073.82c -3.6146941047727335e-20 + 324731 -0.0 + 32074.82c -3.6641493601583164e-20 + 320750 -0.0 + 324751 -0.0 + 32076.82c -3.7632971719749844e-20 + 320770 -0.0 + 324771 -0.0 + 320780 -0.0 + 320790 -0.0 + 324791 -0.0 + 320800 -0.0 + 320810 -0.0 + 324811 -0.0 + 320820 -0.0 + 320830 -0.0 + 320840 -0.0 + 320850 -0.0 + 320860 -0.0 + 320870 -0.0 + 320880 -0.0 + 320890 -0.0 + 330600 -0.0 + 330610 -0.0 + 330620 -0.0 + 330630 -0.0 + 330640 -0.0 + 330650 -0.0 + 330660 -0.0 + 330670 -0.0 + 330680 -0.0 + 330690 -0.0 + 330700 -0.0 + 330710 -0.0 + 330720 -0.0 + 330730 -0.0 + 33074.82c -3.66428571450594e-20 + 33075.82c -3.71373835060181e-20 + 334751 -0.0 + 330760 -0.0 + 330770 -0.0 + 330780 -0.0 + 330790 -0.0 + 330800 -0.0 + 330810 -0.0 + 330820 -0.0 + 334821 -0.0 + 330830 -0.0 + 330840 -0.0 + 330850 -0.0 + 330860 -0.0 + 330870 -0.0 + 330880 -0.0 + 330890 -0.0 + 330900 -0.0 + 330910 -0.0 + 330920 -0.0 + 340650 -0.0 + 340660 -0.0 + 340670 -0.0 + 340680 -0.0 + 340690 -0.0 + 340700 -0.0 + 340710 -0.0 + 340720 -0.0 + 340730 -0.0 + 344731 -0.0 + 34074.82c -3.6642137084264486e-20 + 340750 -0.0 + 34076.82c -3.763188665809316e-20 + 34077.82c -3.8127917161114435e-20 + 344771 -0.0 + 34078.82c -3.862230925584101e-20 + 34079.82c -3.9118582426571775e-20 + 344791 -0.0 + 34080.82c -3.9613285533326065e-20 + 340810 -0.0 + 344811 -0.0 + 34082.82c -4.060474024929262e-20 + 340830 -0.0 + 344831 -0.0 + 340840 -0.0 + 340850 -0.0 + 340860 -0.0 + 340870 -0.0 + 340880 -0.0 + 340890 -0.0 + 340900 -0.0 + 340910 -0.0 + 340920 -0.0 + 340930 -0.0 + 340940 -0.0 + 350670 -0.0 + 350680 -0.0 + 350690 -0.0 + 350700 -0.0 + 354701 -0.0 + 350710 -0.0 + 350720 -0.0 + 354721 -0.0 + 350730 -0.0 + 350740 -0.0 + 354741 -0.0 + 350750 -0.0 + 350760 -0.0 + 354761 -0.0 + 350770 -0.0 + 354771 -0.0 + 350780 -0.0 + 35079.82c -3.911850229936575e-20 + 354791 -0.0 + 350800 -0.0 + 354801 -0.0 + 35081.82c -4.010885305574967e-20 + 350820 -0.0 + 354821 -0.0 + 350830 -0.0 + 350840 -0.0 + 354841 -0.0 + 350850 -0.0 + 350860 -0.0 + 350870 -0.0 + 350880 -0.0 + 350890 -0.0 + 350900 -0.0 + 350910 -0.0 + 350920 -0.0 + 350930 -0.0 + 350940 -0.0 + 350950 -0.0 + 350960 -0.0 + 350970 -0.0 + 360690 -0.0 + 360700 -0.0 + 360710 -0.0 + 360720 -0.0 + 360730 -0.0 + 360740 -0.0 + 360750 -0.0 + 360760 -0.0 + 360770 -0.0 + 36078.82c -3.862382460827718e-20 + 360790 -0.0 + 364791 -0.0 + 36080.82c -3.961321428529504e-20 + 360810 -0.0 + 364811 -0.0 + 36082.82c -4.0603144951169635e-20 + 36083.82c -4.109914815036837e-20 + 364831 -0.0 + 36084.82c -4.1593528407002866e-20 + 36085.82c -4.20897220331389e-20 + 364851 -0.0 + 36086.82c -4.258445529244238e-20 + 360870 -0.0 + 360880 -0.0 + 360890 -0.0 + 360900 -0.0 + 360910 -0.0 + 360920 -0.0 + 360930 -0.0 + 360940 -0.0 + 360950 -0.0 + 360960 -0.0 + 360970 -0.0 + 360980 -0.0 + 360990 -0.0 + 361000 -0.0 + 370710 -0.0 + 370720 -0.0 + 370730 -0.0 + 370740 -0.0 + 370750 -0.0 + 370760 -0.0 + 370770 -0.0 + 370780 -0.0 + 374781 -0.0 + 370790 -0.0 + 370800 -0.0 + 370810 -0.0 + 374811 -0.0 + 370820 -0.0 + 374821 -0.0 + 370830 -0.0 + 370840 -0.0 + 374841 -0.0 + 37085.82c -4.20893564546078e-20 + 37086.82c -4.258473129719862e-20 + 374861 -0.0 + 37087.82c -4.307942972172841e-20 + 370880 -0.0 + 370890 -0.0 + 370900 -0.0 + 374901 -0.0 + 370910 -0.0 + 370920 -0.0 + 370930 -0.0 + 370940 -0.0 + 370950 -0.0 + 370960 -0.0 + 370970 -0.0 + 370980 -0.0 + 374981 -0.0 + 370990 -0.0 + 371000 -0.0 + 371010 -0.0 + 371020 -0.0 + 380730 -0.0 + 380740 -0.0 + 380750 -0.0 + 380760 -0.0 + 380770 -0.0 + 380780 -0.0 + 380790 -0.0 + 380800 -0.0 + 380810 -0.0 + 380820 -0.0 + 380830 -0.0 + 384831 -0.0 + 38084.82c -4.159448080862473e-20 + 380850 -0.0 + 384851 -0.0 + 38086.82c -4.258378616957062e-20 + 38087.82c -4.307927951241285e-20 + 384871 -0.0 + 38088.82c -4.3573344290828806e-20 + 38089.82c -4.406993893418537e-20 + 38090.82c -4.456576106731199e-20 + 380910 -0.0 + 380920 -0.0 + 380930 -0.0 + 380940 -0.0 + 380950 -0.0 + 380960 -0.0 + 380970 -0.0 + 380980 -0.0 + 380990 -0.0 + 381000 -0.0 + 381010 -0.0 + 381020 -0.0 + 381030 -0.0 + 381040 -0.0 + 381050 -0.0 + 390760 -0.0 + 390770 -0.0 + 390780 -0.0 + 394781 -0.0 + 390790 -0.0 + 390800 -0.0 + 394801 -0.0 + 390810 -0.0 + 390820 -0.0 + 390830 -0.0 + 394831 -0.0 + 390840 -0.0 + 394841 -0.0 + 390850 -0.0 + 394851 -0.0 + 390860 -0.0 + 394861 -0.0 + 390870 -0.0 + 394871 -0.0 + 390880 -0.0 + 394881 -0.0 + 395882 -0.0 + 39089.82c -4.406914108085279e-20 + 394891 -0.0 + 39090.82c -4.4565470554762975e-20 + 394901 -0.0 + 39091.82c -4.5061229829794174e-20 + 394911 -0.0 + 390920 -0.0 + 390930 -0.0 + 394931 -0.0 + 390940 -0.0 + 390950 -0.0 + 390960 -0.0 + 394961 -0.0 + 390970 -0.0 + 394971 -0.0 + 395972 -0.0 + 390980 -0.0 + 394981 -0.0 + 390990 -0.0 + 391000 -0.0 + 395001 -0.0 + 391010 -0.0 + 391020 -0.0 + 395021 -0.0 + 391030 -0.0 + 391040 -0.0 + 391050 -0.0 + 391060 -0.0 + 391070 -0.0 + 391080 -0.0 + 400780 -0.0 + 400790 -0.0 + 400800 -0.0 + 400810 -0.0 + 400820 -0.0 + 400830 -0.0 + 400840 -0.0 + 400850 -0.0 + 404851 -0.0 + 400860 -0.0 + 400870 -0.0 + 404871 -0.0 + 400880 -0.0 + 400890 -0.0 + 404891 -0.0 + 40090.82c -4.456425809258359e-20 + 404901 -0.0 + 40091.82c -4.506040806469903e-20 + 40092.82c -4.5555791529006965e-20 + 40093.82c -4.605218629878305e-20 + 40094.82c -4.6547791223981704e-20 + 40095.82c -4.704433094097375e-20 + 40096.82c -4.7540131897022584e-20 + 400970 -0.0 + 400980 -0.0 + 400990 -0.0 + 401000 -0.0 + 401010 -0.0 + 401020 -0.0 + 401030 -0.0 + 401040 -0.0 + 401050 -0.0 + 401060 -0.0 + 401070 -0.0 + 401080 -0.0 + 401090 -0.0 + 401100 -0.0 + 410810 -0.0 + 410820 -0.0 + 410830 -0.0 + 410840 -0.0 + 410850 -0.0 + 414851 -0.0 + 410860 -0.0 + 410870 -0.0 + 414871 -0.0 + 410880 -0.0 + 414881 -0.0 + 410890 -0.0 + 414891 -0.0 + 410900 -0.0 + 414901 -0.0 + 415902 -0.0 + 410910 -0.0 + 414911 -0.0 + 410920 -0.0 + 414921 -0.0 + 41093.82c -4.60521379770962e-20 + 414931 -0.0 + 41094.82c -4.654827028603279e-20 + 414941 -0.0 + 41095.82c -4.70437315845158e-20 + 414951 -0.0 + 410960 -0.0 + 410970 -0.0 + 414971 -0.0 + 410980 -0.0 + 414981 -0.0 + 410990 -0.0 + 414991 -0.0 + 411000 -0.0 + 415001 -0.0 + 411010 -0.0 + 411020 -0.0 + 415021 -0.0 + 411030 -0.0 + 411040 -0.0 + 415041 -0.0 + 411050 -0.0 + 411060 -0.0 + 411070 -0.0 + 411080 -0.0 + 411090 -0.0 + 411100 -0.0 + 411110 -0.0 + 411120 -0.0 + 411130 -0.0 + 420830 -0.0 + 420840 -0.0 + 420850 -0.0 + 420860 -0.0 + 420870 -0.0 + 420880 -0.0 + 420890 -0.0 + 424891 -0.0 + 420900 -0.0 + 420910 -0.0 + 424911 -0.0 + 42092.82c -4.555666979704189e-20 + 420930 -0.0 + 424931 -0.0 + 42094.82c -4.654718206290799e-20 + 42095.82c -4.7043239037400424e-20 + 42096.82c -4.7538346025919135e-20 + 42097.82c -4.803469460048974e-20 + 42098.82c -4.853007390403203e-20 + 42099.82c -4.9026899108335756e-20 + 42100.82c -4.952246378405015e-20 + 421010 -0.0 + 421020 -0.0 + 421030 -0.0 + 421040 -0.0 + 421050 -0.0 + 421060 -0.0 + 421070 -0.0 + 421080 -0.0 + 421090 -0.0 + 421100 -0.0 + 421110 -0.0 + 421120 -0.0 + 421130 -0.0 + 421140 -0.0 + 421150 -0.0 + 430850 -0.0 + 430860 -0.0 + 434861 -0.0 + 430870 -0.0 + 430880 -0.0 + 434881 -0.0 + 430890 -0.0 + 434891 -0.0 + 430900 -0.0 + 434901 -0.0 + 430910 -0.0 + 434911 -0.0 + 430920 -0.0 + 430930 -0.0 + 434931 -0.0 + 430940 -0.0 + 434941 -0.0 + 430950 -0.0 + 434951 -0.0 + 430960 -0.0 + 434961 -0.0 + 430970 -0.0 + 434971 -0.0 + 430980 -0.0 + 43099.82c -4.902617659043871e-20 + 434991 -0.0 + 431000 -0.0 + 431010 -0.0 + 431020 -0.0 + 435021 -0.0 + 431030 -0.0 + 431040 -0.0 + 431050 -0.0 + 431060 -0.0 + 431070 -0.0 + 431080 -0.0 + 431090 -0.0 + 431100 -0.0 + 431110 -0.0 + 431120 -0.0 + 431130 -0.0 + 431140 -0.0 + 431150 -0.0 + 431160 -0.0 + 431170 -0.0 + 431180 -0.0 + 440870 -0.0 + 440880 -0.0 + 440890 -0.0 + 440900 -0.0 + 440910 -0.0 + 444911 -0.0 + 440920 -0.0 + 440930 -0.0 + 444931 -0.0 + 440940 -0.0 + 440950 -0.0 + 44096.82c -4.753979051646159e-20 + 440970 -0.0 + 44098.82c -4.8530015961132245e-20 + 44099.82c -4.9026018269191536e-20 + 44100.82c -4.952084908379216e-20 + 44101.82c -5.0017207816896396e-20 + 44102.82c -5.051228005454575e-20 + 44103.82c -5.1008942101220304e-20 + 445031 -0.0 + 44104.82c -5.1504184507939146e-20 + 44105.82c -5.200101787862531e-20 + 44106.82c -5.249649432271166e-20 + 441070 -0.0 + 441080 -0.0 + 441090 -0.0 + 441100 -0.0 + 441110 -0.0 + 441120 -0.0 + 441130 -0.0 + 445131 -0.0 + 441140 -0.0 + 441150 -0.0 + 441160 -0.0 + 441170 -0.0 + 441180 -0.0 + 441190 -0.0 + 441200 -0.0 + 450890 -0.0 + 450900 -0.0 + 454901 -0.0 + 450910 -0.0 + 450920 -0.0 + 450930 -0.0 + 450940 -0.0 + 454941 -0.0 + 450950 -0.0 + 454951 -0.0 + 450960 -0.0 + 454961 -0.0 + 450970 -0.0 + 454971 -0.0 + 450980 -0.0 + 454981 -0.0 + 450990 -0.0 + 454991 -0.0 + 451000 -0.0 + 455001 -0.0 + 451010 -0.0 + 455011 -0.0 + 451020 -0.0 + 455021 -0.0 + 45103.82c -5.100853526171359e-20 + 455031 -0.0 + 451040 -0.0 + 455041 -0.0 + 45105.82c -5.1999997901673445e-20 + 455051 -0.0 + 451060 -0.0 + 455061 -0.0 + 451070 -0.0 + 451080 -0.0 + 455081 -0.0 + 451090 -0.0 + 451100 -0.0 + 455101 -0.0 + 451110 -0.0 + 451120 -0.0 + 455121 -0.0 + 451130 -0.0 + 451140 -0.0 + 451150 -0.0 + 451160 -0.0 + 455161 -0.0 + 451170 -0.0 + 451180 -0.0 + 451190 -0.0 + 451200 -0.0 + 451210 -0.0 + 451220 -0.0 + 451230 -0.0 + 460910 -0.0 + 460920 -0.0 + 460930 -0.0 + 460940 -0.0 + 460950 -0.0 + 464951 -0.0 + 460960 -0.0 + 460970 -0.0 + 460980 -0.0 + 460990 -0.0 + 461000 -0.0 + 461010 -0.0 + 46102.82c -5.051292035741869e-20 + 461030 -0.0 + 46104.82c -5.15034930500536e-20 + 46105.82c -5.1999696368101857e-20 + 46106.82c -5.249458697797077e-20 + 46107.82c -5.299108705417767e-20 + 465071 -0.0 + 46108.82c -5.348615756486639e-20 + 461090 -0.0 + 465091 -0.0 + 46110.82c -5.447815917367435e-20 + 461110 -0.0 + 465111 -0.0 + 461120 -0.0 + 461130 -0.0 + 465131 -0.0 + 461140 -0.0 + 461150 -0.0 + 465151 -0.0 + 461160 -0.0 + 461170 -0.0 + 465171 -0.0 + 461180 -0.0 + 461190 -0.0 + 461200 -0.0 + 461210 -0.0 + 461220 -0.0 + 461230 -0.0 + 461240 -0.0 + 461250 -0.0 + 461260 -0.0 + 470930 -0.0 + 470940 -0.0 + 474941 -0.0 + 475942 -0.0 + 470950 -0.0 + 474951 -0.0 + 475952 -0.0 + 476953 -0.0 + 470960 -0.0 + 474961 -0.0 + 470970 -0.0 + 470980 -0.0 + 470990 -0.0 + 474991 -0.0 + 471000 -0.0 + 475001 -0.0 + 471010 -0.0 + 475011 -0.0 + 471020 -0.0 + 475021 -0.0 + 471030 -0.0 + 475031 -0.0 + 471040 -0.0 + 475041 -0.0 + 471050 -0.0 + 475051 -0.0 + 471060 -0.0 + 475061 -0.0 + 47107.82c -5.2991068945379536e-20 + 475071 -0.0 + 471080 -0.0 + 475081 -0.0 + 47109.82c -5.3982269123012857e-20 + 475091 -0.0 + 471100 -0.0 + 47510.82c -5.447862405075637e-20 + 47111.82c -5.497390391626245e-20 + 475111 -0.0 + 471120 -0.0 + 471130 -0.0 + 475131 -0.0 + 471140 -0.0 + 475141 -0.0 + 471150 -0.0 + 475151 -0.0 + 471160 -0.0 + 475161 -0.0 + 476162 -0.0 + 471170 -0.0 + 475171 -0.0 + 471180 -0.0 + 475181 -0.0 + 471190 -0.0 + 475191 -0.0 + 471200 -0.0 + 475201 -0.0 + 471210 -0.0 + 471220 -0.0 + 475221 -0.0 + 471230 -0.0 + 471240 -0.0 + 471250 -0.0 + 471260 -0.0 + 471270 -0.0 + 471280 -0.0 + 471290 -0.0 + 471300 -0.0 + 480950 -0.0 + 480960 -0.0 + 480970 -0.0 + 480980 -0.0 + 480990 -0.0 + 481000 -0.0 + 481010 -0.0 + 481020 -0.0 + 481030 -0.0 + 481040 -0.0 + 481050 -0.0 + 48106.82c -5.2496063868356674e-20 + 481070 -0.0 + 48108.82c -5.3486302196332096e-20 + 481090 -0.0 + 48110.82c -5.44770858170832e-20 + 48111.82c -5.497335219596136e-20 + 485111 -0.0 + 48112.82c -5.546833168729912e-20 + 48113.82c -5.596483000036051e-20 + 485131 -0.0 + 48114.82c -5.645999625327068e-20 + 481150 -0.0 + 48515.82c -5.695670682436658e-20 + 48116.82c -5.745205594476113e-20 + 481170 -0.0 + 485171 -0.0 + 481180 -0.0 + 481190 -0.0 + 485191 -0.0 + 481200 -0.0 + 481210 -0.0 + 485211 -0.0 + 481220 -0.0 + 481230 -0.0 + 485231 -0.0 + 481240 -0.0 + 481250 -0.0 + 485251 -0.0 + 481260 -0.0 + 481270 -0.0 + 481280 -0.0 + 481290 -0.0 + 481300 -0.0 + 481310 -0.0 + 481320 -0.0 + 490970 -0.0 + 490980 -0.0 + 494981 -0.0 + 490990 -0.0 + 491000 -0.0 + 491010 -0.0 + 491020 -0.0 + 491030 -0.0 + 495031 -0.0 + 491040 -0.0 + 495041 -0.0 + 491050 -0.0 + 495051 -0.0 + 491060 -0.0 + 495061 -0.0 + 491070 -0.0 + 495071 -0.0 + 491080 -0.0 + 495081 -0.0 + 491090 -0.0 + 495091 -0.0 + 496092 -0.0 + 491100 -0.0 + 495101 -0.0 + 491110 -0.0 + 495111 -0.0 + 491120 -0.0 + 495121 -0.0 + 49113.82c -5.596465767655569e-20 + 495131 -0.0 + 491140 -0.0 + 495141 -0.0 + 496142 -0.0 + 49115.82c -5.695593423055947e-20 + 495151 -0.0 + 491160 -0.0 + 495161 -0.0 + 496162 -0.0 + 491170 -0.0 + 495171 -0.0 + 491180 -0.0 + 495181 -0.0 + 496182 -0.0 + 491190 -0.0 + 495191 -0.0 + 491200 -0.0 + 495201 -0.0 + 496202 -0.0 + 491210 -0.0 + 495211 -0.0 + 491220 -0.0 + 495221 -0.0 + 496222 -0.0 + 491230 -0.0 + 495231 -0.0 + 491240 -0.0 + 495241 -0.0 + 491250 -0.0 + 495251 -0.0 + 491260 -0.0 + 495261 -0.0 + 491270 -0.0 + 495271 -0.0 + 491280 -0.0 + 495281 -0.0 + 491290 -0.0 + 495291 -0.0 + 491300 -0.0 + 495301 -0.0 + 496302 -0.0 + 491310 -0.0 + 495311 -0.0 + 496312 -0.0 + 491320 -0.0 + 491330 -0.0 + 495331 -0.0 + 491340 -0.0 + 491350 -0.0 + 500990 -0.0 + 501000 -0.0 + 501010 -0.0 + 501020 -0.0 + 501030 -0.0 + 501040 -0.0 + 501050 -0.0 + 501060 -0.0 + 501070 -0.0 + 501080 -0.0 + 501090 -0.0 + 501100 -0.0 + 501110 -0.0 + 50112.82c -5.546935328761381e-20 + 50113.82c -5.59652105602255e-20 + 505131 -0.0 + 50114.82c -5.645970634892508e-20 + 50115.82c -5.695566949800338e-20 + 50116.82c -5.745055877993673e-20 + 50117.82c -5.79468424517183e-20 + 505171 -0.0 + 50118.82c -5.844185786770349e-20 + 50119.82c -5.893838611656663e-20 + 505191 -0.0 + 50120.82c -5.943351953739752e-20 + 501210 -0.0 + 505211 -0.0 + 50122.82c -6.042550184677606e-20 + 50123.82c -6.09223160246047e-20 + 505231 -0.0 + 50124.82c -6.141777688837346e-20 + 50125.82c -6.191470423317873e-20 + 505251 -0.0 + 50126.82c -6.241032428464907e-20 + 501270 -0.0 + 505271 -0.0 + 501280 -0.0 + 505281 -0.0 + 501290 -0.0 + 505291 -0.0 + 501300 -0.0 + 505301 -0.0 + 501310 -0.0 + 505311 -0.0 + 501320 -0.0 + 501330 -0.0 + 501340 -0.0 + 501350 -0.0 + 501360 -0.0 + 501370 -0.0 + 511030 -0.0 + 511040 -0.0 + 511050 -0.0 + 511060 -0.0 + 511070 -0.0 + 511080 -0.0 + 511090 -0.0 + 511100 -0.0 + 511110 -0.0 + 511120 -0.0 + 511130 -0.0 + 511140 -0.0 + 511150 -0.0 + 511160 -0.0 + 515161 -0.0 + 511170 -0.0 + 511180 -0.0 + 515181 -0.0 + 511190 -0.0 + 515191 -0.0 + 511200 -0.0 + 515201 -0.0 + 51121.82c -5.993000000883408e-20 + 511220 -0.0 + 515221 -0.0 + 51123.82c -6.09215668339891e-20 + 51124.82c -6.141810359175182e-20 + 515241 -0.0 + 516242 -0.0 + 51125.82c -6.191344844183472e-20 + 51126.82c -6.241012313636446e-20 + 515261 -0.0 + 516262 -0.0 + 511270 -0.0 + 511280 -0.0 + 515281 -0.0 + 511290 -0.0 + 515291 -0.0 + 511300 -0.0 + 515301 -0.0 + 511310 -0.0 + 511320 -0.0 + 515321 -0.0 + 511330 -0.0 + 511340 -0.0 + 515341 -0.0 + 511350 -0.0 + 511360 -0.0 + 511370 -0.0 + 511380 -0.0 + 511390 -0.0 + 521050 -0.0 + 521060 -0.0 + 521070 -0.0 + 521080 -0.0 + 521090 -0.0 + 521100 -0.0 + 521110 -0.0 + 521120 -0.0 + 521130 -0.0 + 521140 -0.0 + 521150 -0.0 + 525151 -0.0 + 521160 -0.0 + 521170 -0.0 + 525171 -0.0 + 521180 -0.0 + 521190 -0.0 + 525191 -0.0 + 52120.82c -5.943444033902537e-20 + 521210 -0.0 + 525211 -0.0 + 52122.82c -6.042530329240218e-20 + 52123.82c -6.092159445891528e-20 + 525231 -0.0 + 52124.82c -6.14165576918407e-20 + 52125.82c -6.191304045135138e-20 + 525251 -0.0 + 52126.82c -6.240816906851537e-20 + 521270 -0.0 + 52527.82c -6.290480153033196e-20 + 52128.82c -6.34001059321616e-20 + 521290 -0.0 + 52529.82c -6.389684760936752e-20 + 52130.82c -6.439234565384517e-20 + 521310 -0.0 + 525311 -0.0 + 52132.82c -6.53848642137446e-20 + 521330 -0.0 + 525331 -0.0 + 521340 -0.0 + 521350 -0.0 + 521360 -0.0 + 521370 -0.0 + 521380 -0.0 + 521390 -0.0 + 521400 -0.0 + 521410 -0.0 + 521420 -0.0 + 531080 -0.0 + 531090 -0.0 + 531100 -0.0 + 531110 -0.0 + 531120 -0.0 + 531130 -0.0 + 531140 -0.0 + 535141 -0.0 + 531150 -0.0 + 531160 -0.0 + 531170 -0.0 + 531180 -0.0 + 535181 -0.0 + 531190 -0.0 + 531200 -0.0 + 535201 -0.0 + 531210 -0.0 + 531220 -0.0 + 531230 -0.0 + 531240 -0.0 + 531250 -0.0 + 531260 -0.0 + 53127.82c -6.290442784658575e-20 + 531280 -0.0 + 53129.82c -6.389604816885699e-20 + 53130.82c -6.439256745427896e-20 + 535301 -0.0 + 53131.82c -6.488798119194897e-20 + 531320 -0.0 + 535321 -0.0 + 531330 -0.0 + 535331 -0.0 + 531340 -0.0 + 535341 -0.0 + 53135.82c -6.687266392792673e-20 + 531360 -0.0 + 535361 -0.0 + 531370 -0.0 + 531380 -0.0 + 531390 -0.0 + 531400 -0.0 + 531410 -0.0 + 531420 -0.0 + 531430 -0.0 + 531440 -0.0 + 531450 -0.0 + 541100 -0.0 + 541110 -0.0 + 541120 -0.0 + 541130 -0.0 + 541140 -0.0 + 541150 -0.0 + 541160 -0.0 + 541170 -0.0 + 541180 -0.0 + 541190 -0.0 + 541200 -0.0 + 541210 -0.0 + 541220 -0.0 + 54123.82c -6.092368227847724e-20 + 54124.82c -6.141808168205412e-20 + 541250 -0.0 + 545251 -0.0 + 54126.82c -6.240865777656356e-20 + 541270 -0.0 + 545271 -0.0 + 54128.82c -6.339964479054897e-20 + 54129.82c -6.389594763036422e-20 + 545291 -0.0 + 54130.82c -6.439100066776045e-20 + 54131.82c -6.488746456701713e-20 + 545311 -0.0 + 54132.82c -6.538268735655868e-20 + 545321 -0.0 + 54133.82c -6.587924091304344e-20 + 545331 -0.0 + 54134.82c -6.637466759300451e-20 + 545341 -0.0 + 54135.82c -6.687126227383968e-20 + 545351 -0.0 + 54136.82c -6.736693705915611e-20 + 541370 -0.0 + 541380 -0.0 + 541390 -0.0 + 541400 -0.0 + 541410 -0.0 + 541420 -0.0 + 541430 -0.0 + 541440 -0.0 + 541450 -0.0 + 541460 -0.0 + 541470 -0.0 + 551120 -0.0 + 551130 -0.0 + 551140 -0.0 + 551150 -0.0 + 551160 -0.0 + 555161 -0.0 + 551170 -0.0 + 555171 -0.0 + 551180 -0.0 + 555181 -0.0 + 551190 -0.0 + 555191 -0.0 + 551200 -0.0 + 555201 -0.0 + 551210 -0.0 + 555211 -0.0 + 551220 -0.0 + 555221 -0.0 + 556222 -0.0 + 551230 -0.0 + 555231 -0.0 + 551240 -0.0 + 555241 -0.0 + 551250 -0.0 + 555251 -0.0 + 551260 -0.0 + 551270 -0.0 + 551280 -0.0 + 551290 -0.0 + 551300 -0.0 + 555301 -0.0 + 551310 -0.0 + 551320 -0.0 + 55133.82c -6.587901349899627e-20 + 55134.82c -6.637532460635299e-20 + 555341 -0.0 + 55135.82c -6.687064047532018e-20 + 555351 -0.0 + 55136.82c -6.736698519694447e-20 + 555361 -0.0 + 55137.82c -6.786255839642895e-20 + 551380 -0.0 + 555381 -0.0 + 551390 -0.0 + 551400 -0.0 + 551410 -0.0 + 551420 -0.0 + 551430 -0.0 + 551440 -0.0 + 555441 -0.0 + 551450 -0.0 + 551460 -0.0 + 551470 -0.0 + 551480 -0.0 + 551490 -0.0 + 551500 -0.0 + 551510 -0.0 + 561140 -0.0 + 561150 -0.0 + 561160 -0.0 + 561170 -0.0 + 561180 -0.0 + 561190 -0.0 + 561200 -0.0 + 561210 -0.0 + 561220 -0.0 + 561230 -0.0 + 561240 -0.0 + 561250 -0.0 + 561260 -0.0 + 561270 -0.0 + 565271 -0.0 + 561280 -0.0 + 561290 -0.0 + 565291 -0.0 + 56130.82c -6.439239429376071e-20 + 565301 -0.0 + 561310 -0.0 + 565311 -0.0 + 56132.82c -6.538313645109916e-20 + 56133.82c -6.58792887836585e-20 + 565331 -0.0 + 56134.82c -6.637422909470089e-20 + 56135.82c -6.687049740723962e-20 + 565351 -0.0 + 56136.82c -6.736562919033286e-20 + 565361 -0.0 + 56137.82c -6.786193279998394e-20 + 565371 -0.0 + 56138.82c -6.835732853493205e-20 + 561390 -0.0 + 56140.82c -6.93513517256378e-20 + 561410 -0.0 + 561420 -0.0 + 561430 -0.0 + 561440 -0.0 + 561450 -0.0 + 561460 -0.0 + 561470 -0.0 + 561480 -0.0 + 561490 -0.0 + 561500 -0.0 + 561510 -0.0 + 561520 -0.0 + 561530 -0.0 + 571170 -0.0 + 575171 -0.0 + 571180 -0.0 + 571190 -0.0 + 571200 -0.0 + 571210 -0.0 + 571220 -0.0 + 571230 -0.0 + 571240 -0.0 + 575241 -0.0 + 571250 -0.0 + 575251 -0.0 + 571260 -0.0 + 575261 -0.0 + 571270 -0.0 + 575271 -0.0 + 571280 -0.0 + 575281 -0.0 + 571290 -0.0 + 575291 -0.0 + 571300 -0.0 + 571310 -0.0 + 571320 -0.0 + 575321 -0.0 + 571330 -0.0 + 571340 -0.0 + 571350 -0.0 + 571360 -0.0 + 575361 -0.0 + 571370 -0.0 + 57138.82c -6.835825576259825e-20 + 57139.82c -6.885356282773428e-20 + 57140.82c -6.935079483436847e-20 + 571410 -0.0 + 571420 -0.0 + 571430 -0.0 + 571440 -0.0 + 571450 -0.0 + 571460 -0.0 + 575461 -0.0 + 571470 -0.0 + 571480 -0.0 + 571490 -0.0 + 571500 -0.0 + 571510 -0.0 + 571520 -0.0 + 571530 -0.0 + 571540 -0.0 + 571550 -0.0 + 581190 -0.0 + 581200 -0.0 + 581210 -0.0 + 581220 -0.0 + 581230 -0.0 + 581240 -0.0 + 581250 -0.0 + 581260 -0.0 + 581270 -0.0 + 585271 -0.0 + 581280 -0.0 + 581290 -0.0 + 581300 -0.0 + 581310 -0.0 + 585311 -0.0 + 581320 -0.0 + 585321 -0.0 + 581330 -0.0 + 585331 -0.0 + 581340 -0.0 + 581350 -0.0 + 585351 -0.0 + 58136.82c -6.736689490723934e-20 + 581370 -0.0 + 585371 -0.0 + 58138.82c -6.835769609104126e-20 + 585381 -0.0 + 58139.82c -6.885371094831475e-20 + 585391 -0.0 + 58140.82c -6.934879387983568e-20 + 58141.82c -6.984588371607179e-20 + 58142.82c -7.034204579872168e-20 + 58143.82c -7.083928641339215e-20 + 58144.82c -7.133559487280866e-20 + 581450 -0.0 + 581460 -0.0 + 581470 -0.0 + 581480 -0.0 + 581490 -0.0 + 581500 -0.0 + 581510 -0.0 + 581520 -0.0 + 581530 -0.0 + 581540 -0.0 + 581550 -0.0 + 581560 -0.0 + 581570 -0.0 + 591210 -0.0 + 591220 -0.0 + 591230 -0.0 + 591240 -0.0 + 591250 -0.0 + 591260 -0.0 + 591270 -0.0 + 591280 -0.0 + 591290 -0.0 + 591300 -0.0 + 591310 -0.0 + 595311 -0.0 + 591320 -0.0 + 591330 -0.0 + 591340 -0.0 + 595341 -0.0 + 591350 -0.0 + 591360 -0.0 + 591370 -0.0 + 591380 -0.0 + 595381 -0.0 + 591390 -0.0 + 591400 -0.0 + 59141.82c -6.984557362452796e-20 + 59142.82c -7.034244262096451e-20 + 595421 -0.0 + 59143.82c -7.083850865357364e-20 + 591440 -0.0 + 595441 -0.0 + 591450 -0.0 + 591460 -0.0 + 591470 -0.0 + 591480 -0.0 + 595481 -0.0 + 591490 -0.0 + 591500 -0.0 + 591510 -0.0 + 591520 -0.0 + 591530 -0.0 + 591540 -0.0 + 591550 -0.0 + 591560 -0.0 + 591570 -0.0 + 591580 -0.0 + 591590 -0.0 + 601240 -0.0 + 601250 -0.0 + 601260 -0.0 + 601270 -0.0 + 601280 -0.0 + 601290 -0.0 + 601300 -0.0 + 601310 -0.0 + 601320 -0.0 + 601330 -0.0 + 605331 -0.0 + 601340 -0.0 + 601350 -0.0 + 605351 -0.0 + 601360 -0.0 + 601370 -0.0 + 605371 -0.0 + 601380 -0.0 + 601390 -0.0 + 605391 -0.0 + 601400 -0.0 + 601410 -0.0 + 605411 -0.0 + 60142.82c -7.034129186986939e-20 + 60143.82c -7.083801164332579e-20 + 60144.82c -7.133383025759666e-20 + 60145.82c -7.183074599548168e-20 + 60146.82c -7.232669860583728e-20 + 60147.82c -7.282386078407743e-20 + 60148.82c -7.331993720571292e-20 + 601490 -0.0 + 60150.82c -7.431328775169723e-20 + 601510 -0.0 + 601520 -0.0 + 601530 -0.0 + 601540 -0.0 + 601550 -0.0 + 601560 -0.0 + 601570 -0.0 + 601580 -0.0 + 601590 -0.0 + 601600 -0.0 + 601610 -0.0 + 611260 -0.0 + 611270 -0.0 + 611280 -0.0 + 611290 -0.0 + 611300 -0.0 + 611310 -0.0 + 611320 -0.0 + 611330 -0.0 + 615331 -0.0 + 611340 -0.0 + 615341 -0.0 + 611350 -0.0 + 615351 -0.0 + 611360 -0.0 + 615361 -0.0 + 611370 -0.0 + 611380 -0.0 + 615381 -0.0 + 611390 -0.0 + 615391 -0.0 + 611400 -0.0 + 615401 -0.0 + 611410 -0.0 + 611420 -0.0 + 615421 -0.0 + 611430 -0.0 + 611440 -0.0 + 611450 -0.0 + 611460 -0.0 + 61147.82c -7.282338424802845e-20 + 61148.82c -7.332022577369633e-20 + 61548.82c -7.332022577369633e-20 + 61149.82c -7.38163355647318e-20 + 611500 -0.0 + 61151.82c -7.480912734031137e-20 + 611520 -0.0 + 615521 -0.0 + 616522 -0.0 + 611530 -0.0 + 611540 -0.0 + 615541 -0.0 + 611550 -0.0 + 611560 -0.0 + 611570 -0.0 + 611580 -0.0 + 611590 -0.0 + 611600 -0.0 + 611610 -0.0 + 611620 -0.0 + 611630 -0.0 + 621280 -0.0 + 621290 -0.0 + 621300 -0.0 + 621310 -0.0 + 621320 -0.0 + 621330 -0.0 + 621340 -0.0 + 621350 -0.0 + 621360 -0.0 + 621370 -0.0 + 621380 -0.0 + 621390 -0.0 + 625391 -0.0 + 621400 -0.0 + 621410 -0.0 + 625411 -0.0 + 621420 -0.0 + 621430 -0.0 + 625431 -0.0 + 626432 -0.0 + 62144.82c -7.133477875156362e-20 + 621450 -0.0 + 621460 -0.0 + 62147.82c -7.282326499951337e-20 + 62148.82c -7.331891110112405e-20 + 62149.82c -7.381576538865424e-20 + 62150.82c -7.431149371024589e-20 + 62151.82c -7.480849398047446e-20 + 62152.82c -7.530407813455996e-20 + 62153.82c -7.580093369401351e-20 + 625531 -0.0 + 62154.82c -7.629667261083575e-20 + 621550 -0.0 + 621560 -0.0 + 621570 -0.0 + 621580 -0.0 + 621590 -0.0 + 621600 -0.0 + 621610 -0.0 + 621620 -0.0 + 621630 -0.0 + 621640 -0.0 + 621650 -0.0 + 631300 -0.0 + 631310 -0.0 + 631320 -0.0 + 631330 -0.0 + 631340 -0.0 + 631350 -0.0 + 631360 -0.0 + 635361 -0.0 + 636362 -0.0 + 631370 -0.0 + 631380 -0.0 + 631390 -0.0 + 631400 -0.0 + 635401 -0.0 + 631410 -0.0 + 635411 -0.0 + 631420 -0.0 + 635421 -0.0 + 631430 -0.0 + 631440 -0.0 + 631450 -0.0 + 631460 -0.0 + 631470 -0.0 + 631480 -0.0 + 631490 -0.0 + 631500 -0.0 + 635501 -0.0 + 63151.82c -7.48084532323328e-20 + 63152.82c -7.53050755460251e-20 + 635521 -0.0 + 636522 -0.0 + 63153.82c -7.580050397326981e-20 + 63154.82c -7.629705418338174e-20 + 635541 -0.0 + 63155.82c -7.679269493111705e-20 + 63156.82c -7.728930178345577e-20 + 63157.82c -7.778531695003562e-20 + 631580 -0.0 + 631590 -0.0 + 631600 -0.0 + 631610 -0.0 + 631620 -0.0 + 631630 -0.0 + 631640 -0.0 + 631650 -0.0 + 631660 -0.0 + 631670 -0.0 + 641340 -0.0 + 641350 -0.0 + 641360 -0.0 + 641370 -0.0 + 641380 -0.0 + 641390 -0.0 + 645391 -0.0 + 641400 -0.0 + 641410 -0.0 + 645411 -0.0 + 641420 -0.0 + 641430 -0.0 + 645431 -0.0 + 641440 -0.0 + 641450 -0.0 + 645451 -0.0 + 641460 -0.0 + 641470 -0.0 + 641480 -0.0 + 641490 -0.0 + 641500 -0.0 + 641510 -0.0 + 64152.82c -7.530410776749921e-20 + 64153.82c -7.580076188522364e-20 + 64154.82c -7.629600702414886e-20 + 64155.82c -7.679256094494598e-20 + 645551 -0.0 + 64156.82c -7.728799678662156e-20 + 64157.82c -7.778459081315478e-20 + 64158.82c -7.828034538415143e-20 + 641590 -0.0 + 64160.82c -7.927317420313564e-20 + 641610 -0.0 + 641620 -0.0 + 641630 -0.0 + 641640 -0.0 + 641650 -0.0 + 641660 -0.0 + 641670 -0.0 + 641680 -0.0 + 641690 -0.0 + 651350 -0.0 + 651360 -0.0 + 651370 -0.0 + 651380 -0.0 + 651390 -0.0 + 651400 -0.0 + 651410 -0.0 + 655411 -0.0 + 651420 -0.0 + 655421 -0.0 + 651430 -0.0 + 655431 -0.0 + 651440 -0.0 + 655441 -0.0 + 651450 -0.0 + 655451 -0.0 + 651460 -0.0 + 655461 -0.0 + 656462 -0.0 + 651470 -0.0 + 655471 -0.0 + 651480 -0.0 + 655481 -0.0 + 651490 -0.0 + 655491 -0.0 + 651500 -0.0 + 655501 -0.0 + 651510 -0.0 + 655511 -0.0 + 651520 -0.0 + 655521 -0.0 + 651530 -0.0 + 651540 -0.0 + 655541 -0.0 + 656542 -0.0 + 651550 -0.0 + 651560 -0.0 + 655561 -0.0 + 656562 -0.0 + 651570 -0.0 + 651580 -0.0 + 655581 -0.0 + 65159.82c -7.877664446870964e-20 + 65160.82c -7.927323033480862e-20 + 651610 -0.0 + 651620 -0.0 + 651630 -0.0 + 651640 -0.0 + 651650 -0.0 + 651660 -0.0 + 651670 -0.0 + 651680 -0.0 + 651690 -0.0 + 651700 -0.0 + 651710 -0.0 + 661380 -0.0 + 661390 -0.0 + 661400 -0.0 + 661410 -0.0 + 661420 -0.0 + 661430 -0.0 + 665431 -0.0 + 661440 -0.0 + 661450 -0.0 + 665451 -0.0 + 661460 -0.0 + 665461 -0.0 + 661470 -0.0 + 665471 -0.0 + 661480 -0.0 + 661490 -0.0 + 665491 -0.0 + 661500 -0.0 + 661510 -0.0 + 661520 -0.0 + 661530 -0.0 + 661540 -0.0 + 661550 -0.0 + 66156.82c -7.728906422871954e-20 + 661570 -0.0 + 665571 -0.0 + 66158.82c -7.828049555190396e-20 + 661590 -0.0 + 66160.82c -7.927225307832226e-20 + 66161.82c -7.976879681084478e-20 + 66162.82c -8.026441323688741e-20 + 66163.82c -8.076105455309487e-20 + 66164.82c -8.125695773837258e-20 + 661650 -0.0 + 665651 -0.0 + 661660 -0.0 + 661670 -0.0 + 661680 -0.0 + 661690 -0.0 + 661700 -0.0 + 661710 -0.0 + 661720 -0.0 + 661730 -0.0 + 671400 -0.0 + 671410 -0.0 + 671420 -0.0 + 671430 -0.0 + 671440 -0.0 + 671450 -0.0 + 671460 -0.0 + 671470 -0.0 + 671480 -0.0 + 675481 -0.0 + 676482 -0.0 + 671490 -0.0 + 675491 -0.0 + 671500 -0.0 + 675501 -0.0 + 671510 -0.0 + 675511 -0.0 + 671520 -0.0 + 675521 -0.0 + 671530 -0.0 + 675531 -0.0 + 671540 -0.0 + 675541 -0.0 + 671550 -0.0 + 675551 -0.0 + 671560 -0.0 + 675561 -0.0 + 676562 -0.0 + 671570 -0.0 + 671580 -0.0 + 675581 -0.0 + 676582 -0.0 + 671590 -0.0 + 675591 -0.0 + 671600 -0.0 + 675601 -0.0 + 676602 -0.0 + 671610 -0.0 + 675611 -0.0 + 671620 -0.0 + 675621 -0.0 + 671630 -0.0 + 675631 -0.0 + 671640 -0.0 + 675641 -0.0 + 67165.82c -8.17532098757737e-20 + 671660 -0.0 + 67566.82c -8.224986575565229e-20 + 671670 -0.0 + 671680 -0.0 + 675681 -0.0 + 671690 -0.0 + 671700 -0.0 + 675701 -0.0 + 671710 -0.0 + 671720 -0.0 + 671730 -0.0 + 671740 -0.0 + 671750 -0.0 + 681430 -0.0 + 681440 -0.0 + 681450 -0.0 + 681460 -0.0 + 681470 -0.0 + 685471 -0.0 + 681480 -0.0 + 681490 -0.0 + 685491 -0.0 + 681500 -0.0 + 681510 -0.0 + 685511 -0.0 + 681520 -0.0 + 681530 -0.0 + 681540 -0.0 + 681550 -0.0 + 681560 -0.0 + 681570 -0.0 + 685571 -0.0 + 681580 -0.0 + 681590 -0.0 + 681600 -0.0 + 681610 -0.0 + 68162.82c -8.026539607377641e-20 + 681630 -0.0 + 68164.82c -8.125697108216709e-20 + 681650 -0.0 + 68166.82c -8.224887879269548e-20 + 68167.82c -8.274543206811294e-20 + 685671 -0.0 + 68168.82c -8.324127501795557e-20 + 681690 -0.0 + 68170.82c -8.423417550778866e-20 + 681710 -0.0 + 681720 -0.0 + 681730 -0.0 + 681740 -0.0 + 681750 -0.0 + 681760 -0.0 + 681770 -0.0 + 691450 -0.0 + 691460 -0.0 + 695461 -0.0 + 691470 -0.0 + 691480 -0.0 + 691490 -0.0 + 691500 -0.0 + 695501 -0.0 + 691510 -0.0 + 695511 -0.0 + 691520 -0.0 + 695521 -0.0 + 691530 -0.0 + 695531 -0.0 + 691540 -0.0 + 695541 -0.0 + 691550 -0.0 + 695551 -0.0 + 691560 -0.0 + 691570 -0.0 + 691580 -0.0 + 691590 -0.0 + 691600 -0.0 + 695601 -0.0 + 691610 -0.0 + 691620 -0.0 + 695621 -0.0 + 691630 -0.0 + 691640 -0.0 + 695641 -0.0 + 691650 -0.0 + 691660 -0.0 + 695661 -0.0 + 691670 -0.0 + 69168.82c -8.324216807866736e-20 + 69169.82c -8.373787144855281e-20 + 69170.82c -8.423434197509525e-20 + 691710 -0.0 + 691720 -0.0 + 691730 -0.0 + 691740 -0.0 + 691750 -0.0 + 691760 -0.0 + 691770 -0.0 + 691780 -0.0 + 691790 -0.0 + 701480 -0.0 + 701490 -0.0 + 701500 -0.0 + 701510 -0.0 + 705511 -0.0 + 701520 -0.0 + 701530 -0.0 + 701540 -0.0 + 701550 -0.0 + 701560 -0.0 + 701570 -0.0 + 701580 -0.0 + 701590 -0.0 + 701600 -0.0 + 701610 -0.0 + 701620 -0.0 + 701630 -0.0 + 701640 -0.0 + 701650 -0.0 + 701660 -0.0 + 701670 -0.0 + 701680 -0.0 + 701690 -0.0 + 705691 -0.0 + 701700 -0.0 + 701710 -0.0 + 705711 -0.0 + 701720 -0.0 + 701730 -0.0 + 701740 -0.0 + 701750 -0.0 + 705751 -0.0 + 701760 -0.0 + 705761 -0.0 + 701770 -0.0 + 705771 -0.0 + 701780 -0.0 + 701790 -0.0 + 701800 -0.0 + 701810 -0.0 + 711500 -0.0 + 711510 -0.0 + 711520 -0.0 + 711530 -0.0 + 715531 -0.0 + 711540 -0.0 + 715541 -0.0 + 711550 -0.0 + 715551 -0.0 + 716552 -0.0 + 711560 -0.0 + 715561 -0.0 + 711570 -0.0 + 715571 -0.0 + 711580 -0.0 + 711590 -0.0 + 711600 -0.0 + 715601 -0.0 + 711610 -0.0 + 715611 -0.0 + 711620 -0.0 + 715621 -0.0 + 716622 -0.0 + 711630 -0.0 + 711640 -0.0 + 711650 -0.0 + 711660 -0.0 + 715661 -0.0 + 716662 -0.0 + 711670 -0.0 + 715671 -0.0 + 711680 -0.0 + 715681 -0.0 + 711690 -0.0 + 715691 -0.0 + 711700 -0.0 + 715701 -0.0 + 711710 -0.0 + 715711 -0.0 + 711720 -0.0 + 715721 -0.0 + 711730 -0.0 + 711740 -0.0 + 715741 -0.0 + 71175.82c -8.671522243632657e-20 + 71176.82c -8.721185472614103e-20 + 715761 -0.0 + 711770 -0.0 + 715771 -0.0 + 716772 -0.0 + 711780 -0.0 + 715781 -0.0 + 711790 -0.0 + 715791 -0.0 + 711800 -0.0 + 715801 -0.0 + 711810 -0.0 + 711820 -0.0 + 711830 -0.0 + 711840 -0.0 + 721530 -0.0 + 721540 -0.0 + 721550 -0.0 + 721560 -0.0 + 721570 -0.0 + 721580 -0.0 + 721590 -0.0 + 721600 -0.0 + 721610 -0.0 + 721620 -0.0 + 721630 -0.0 + 721640 -0.0 + 721650 -0.0 + 721660 -0.0 + 721670 -0.0 + 721680 -0.0 + 721690 -0.0 + 721700 -0.0 + 721710 -0.0 + 725711 -0.0 + 721720 -0.0 + 721730 -0.0 + 72174.82c -8.621917786482176e-20 + 721750 -0.0 + 72176.82c -8.721121930773138e-20 + 72177.82c -8.770780496068653e-20 + 725771 -0.0 + 726772 -0.0 + 72178.82c -8.820372526835259e-20 + 725781 -0.0 + 726782 -0.0 + 72179.82c -8.870045812289138e-20 + 725791 -0.0 + 726792 -0.0 + 72180.82c -8.919650517429978e-20 + 725801 -0.0 + 721810 -0.0 + 721820 -0.0 + 725821 -0.0 + 721830 -0.0 + 721840 -0.0 + 725841 -0.0 + 721850 -0.0 + 721860 -0.0 + 721870 -0.0 + 721880 -0.0 + 731550 -0.0 + 731560 -0.0 + 735561 -0.0 + 731570 -0.0 + 735571 -0.0 + 736572 -0.0 + 731580 -0.0 + 735581 -0.0 + 731590 -0.0 + 735591 -0.0 + 731600 -0.0 + 735601 -0.0 + 731610 -0.0 + 731620 -0.0 + 731630 -0.0 + 731640 -0.0 + 731650 -0.0 + 731660 -0.0 + 731670 -0.0 + 731680 -0.0 + 731690 -0.0 + 731700 -0.0 + 731710 -0.0 + 731720 -0.0 + 731730 -0.0 + 731740 -0.0 + 731750 -0.0 + 731760 -0.0 + 735761 -0.0 + 736762 -0.0 + 731770 -0.0 + 731780 -0.0 + 735781 -0.0 + 736782 -0.0 + 731790 -0.0 + 735791 -0.0 + 736792 -0.0 + 73180.82c -8.919695561311848e-20 + 735801 -0.0 + 73181.82c -8.969290209435004e-20 + 73182.82c -9.018965413183268e-20 + 735821 -0.0 + 736822 -0.0 + 731830 -0.0 + 731840 -0.0 + 731850 -0.0 + 735851 -0.0 + 731860 -0.0 + 731870 -0.0 + 731880 -0.0 + 731890 -0.0 + 731900 -0.0 + 741580 -0.0 + 741590 -0.0 + 741600 -0.0 + 741610 -0.0 + 741620 -0.0 + 741630 -0.0 + 741640 -0.0 + 741650 -0.0 + 741660 -0.0 + 741670 -0.0 + 741680 -0.0 + 741690 -0.0 + 741700 -0.0 + 741710 -0.0 + 741720 -0.0 + 741730 -0.0 + 741740 -0.0 + 741750 -0.0 + 741760 -0.0 + 741770 -0.0 + 741780 -0.0 + 741790 -0.0 + 745791 -0.0 + 74180.82c -8.919658139353864e-20 + 745801 -0.0 + 741810 -0.0 + 74182.82c -9.018868770206104e-20 + 74183.82c -9.068537168073907e-20 + 745831 -0.0 + 74184.82c -9.118140630487133e-20 + 741850 -0.0 + 745851 -0.0 + 74186.82c -9.217447407493162e-20 + 745861 -0.0 + 741870 -0.0 + 741880 -0.0 + 741890 -0.0 + 741900 -0.0 + 745901 -0.0 + 741910 -0.0 + 741920 -0.0 + 751600 -0.0 + 751610 -0.0 + 755611 -0.0 + 751620 -0.0 + 755621 -0.0 + 751630 -0.0 + 755631 -0.0 + 751640 -0.0 + 755641 -0.0 + 751650 -0.0 + 755651 -0.0 + 751660 -0.0 + 751670 -0.0 + 755671 -0.0 + 751680 -0.0 + 751690 -0.0 + 755691 -0.0 + 751700 -0.0 + 751710 -0.0 + 751720 -0.0 + 755721 -0.0 + 751730 -0.0 + 751740 -0.0 + 751750 -0.0 + 751760 -0.0 + 751770 -0.0 + 751780 -0.0 + 751790 -0.0 + 751800 -0.0 + 751810 -0.0 + 751820 -0.0 + 755821 -0.0 + 751830 -0.0 + 755831 -0.0 + 751840 -0.0 + 755841 -0.0 + 75185.82c -9.16780934053628e-20 + 751860 -0.0 + 755861 -0.0 + 75187.82c -9.267084492749264e-20 + 751880 -0.0 + 755881 -0.0 + 751890 -0.0 + 751900 -0.0 + 755901 -0.0 + 751910 -0.0 + 751920 -0.0 + 751930 -0.0 + 751940 -0.0 + 761620 -0.0 + 761630 -0.0 + 761640 -0.0 + 761650 -0.0 + 761660 -0.0 + 761670 -0.0 + 761680 -0.0 + 761690 -0.0 + 761700 -0.0 + 761710 -0.0 + 761720 -0.0 + 761730 -0.0 + 761740 -0.0 + 761750 -0.0 + 761760 -0.0 + 761770 -0.0 + 761780 -0.0 + 761790 -0.0 + 761800 -0.0 + 761810 -0.0 + 765811 -0.0 + 761820 -0.0 + 761830 -0.0 + 765831 -0.0 + 761840 -0.0 + 761850 -0.0 + 761860 -0.0 + 761870 -0.0 + 761880 -0.0 + 761890 -0.0 + 765891 -0.0 + 761900 -0.0 + 765901 -0.0 + 761910 -0.0 + 765911 -0.0 + 761920 -0.0 + 765921 -0.0 + 761930 -0.0 + 761940 -0.0 + 761950 -0.0 + 761960 -0.0 + 771640 -0.0 + 775641 -0.0 + 771650 -0.0 + 771660 -0.0 + 775661 -0.0 + 771670 -0.0 + 775671 -0.0 + 771680 -0.0 + 775681 -0.0 + 771690 -0.0 + 775691 -0.0 + 771700 -0.0 + 775701 -0.0 + 771710 -0.0 + 775711 -0.0 + 771720 -0.0 + 775721 -0.0 + 771730 -0.0 + 775731 -0.0 + 771740 -0.0 + 775741 -0.0 + 771750 -0.0 + 771760 -0.0 + 771770 -0.0 + 771780 -0.0 + 771790 -0.0 + 771800 -0.0 + 771810 -0.0 + 771820 -0.0 + 771830 -0.0 + 771840 -0.0 + 771850 -0.0 + 771860 -0.0 + 775861 -0.0 + 771870 -0.0 + 775871 -0.0 + 771880 -0.0 + 775881 -0.0 + 771890 -0.0 + 775891 -0.0 + 776892 -0.0 + 771900 -0.0 + 775901 -0.0 + 776902 -0.0 + 77191.82c -9.465597687200316e-20 + 775911 -0.0 + 776912 -0.0 + 771920 -0.0 + 775921 -0.0 + 776922 -0.0 + 77193.82c -9.564849955995315e-20 + 775931 -0.0 + 771940 -0.0 + 775941 -0.0 + 776942 -0.0 + 771950 -0.0 + 775951 -0.0 + 771960 -0.0 + 775961 -0.0 + 771970 -0.0 + 775971 -0.0 + 771980 -0.0 + 771990 -0.0 + 781660 -0.0 + 781670 -0.0 + 781680 -0.0 + 781690 -0.0 + 781700 -0.0 + 781710 -0.0 + 781720 -0.0 + 781730 -0.0 + 781740 -0.0 + 781750 -0.0 + 781760 -0.0 + 781770 -0.0 + 781780 -0.0 + 781790 -0.0 + 781800 -0.0 + 781810 -0.0 + 781820 -0.0 + 781830 -0.0 + 785831 -0.0 + 781840 -0.0 + 785841 -0.0 + 781850 -0.0 + 785851 -0.0 + 781860 -0.0 + 781870 -0.0 + 781880 -0.0 + 781890 -0.0 + 781900 -0.0 + 781910 -0.0 + 781920 -0.0 + 781930 -0.0 + 785931 -0.0 + 781940 -0.0 + 781950 -0.0 + 785951 -0.0 + 781960 -0.0 + 781970 -0.0 + 785971 -0.0 + 781980 -0.0 + 781990 -0.0 + 785991 -0.0 + 782000 -0.0 + 782010 -0.0 + 782020 -0.0 + 791690 -0.0 + 791700 -0.0 + 795701 -0.0 + 791710 -0.0 + 795711 -0.0 + 791720 -0.0 + 791730 -0.0 + 795731 -0.0 + 791740 -0.0 + 795741 -0.0 + 791750 -0.0 + 795751 -0.0 + 791760 -0.0 + 795761 -0.0 + 791770 -0.0 + 795771 -0.0 + 791780 -0.0 + 791790 -0.0 + 791800 -0.0 + 791810 -0.0 + 791820 -0.0 + 791830 -0.0 + 791840 -0.0 + 795841 -0.0 + 791850 -0.0 + 791860 -0.0 + 791870 -0.0 + 795871 -0.0 + 791880 -0.0 + 791890 -0.0 + 795891 -0.0 + 791900 -0.0 + 795901 -0.0 + 791910 -0.0 + 795911 -0.0 + 791920 -0.0 + 795921 -0.0 + 796922 -0.0 + 791930 -0.0 + 795931 -0.0 + 791940 -0.0 + 795941 -0.0 + 796942 -0.0 + 791950 -0.0 + 795951 -0.0 + 791960 -0.0 + 795961 -0.0 + 796962 -0.0 + 79197.82c -9.763304017956228e-20 + 795971 -0.0 + 791980 -0.0 + 795981 -0.0 + 791990 -0.0 + 792000 -0.0 + 796001 -0.0 + 792010 -0.0 + 792020 -0.0 + 792030 -0.0 + 792040 -0.0 + 792050 -0.0 + 801710 -0.0 + 801720 -0.0 + 801730 -0.0 + 801740 -0.0 + 801750 -0.0 + 801760 -0.0 + 801770 -0.0 + 801780 -0.0 + 801790 -0.0 + 801800 -0.0 + 801810 -0.0 + 801820 -0.0 + 801830 -0.0 + 801840 -0.0 + 801850 -0.0 + 805851 -0.0 + 801860 -0.0 + 801870 -0.0 + 805871 -0.0 + 801880 -0.0 + 801890 -0.0 + 805891 -0.0 + 801900 -0.0 + 801910 -0.0 + 805911 -0.0 + 801920 -0.0 + 801930 -0.0 + 805931 -0.0 + 801940 -0.0 + 801950 -0.0 + 805951 -0.0 + 80196.82c -9.713699172090901e-20 + 801970 -0.0 + 805971 -0.0 + 80198.82c -9.812882215639312e-20 + 80199.82c -9.862525483900235e-20 + 805991 -0.0 + 80200.82c -9.912096091680573e-20 + 80201.82c -9.961762374219877e-20 + 80202.82c -1.0011347584929474e-19 + 802030 -0.0 + 80204.82c -1.0110625537802692e-19 + 802050 -0.0 + 806051 -0.0 + 802060 -0.0 + 802070 -0.0 + 802080 -0.0 + 802090 -0.0 + 802100 -0.0 + 811760 -0.0 + 811770 -0.0 + 811780 -0.0 + 811790 -0.0 + 815791 -0.0 + 811800 -0.0 + 811810 -0.0 + 815811 -0.0 + 811820 -0.0 + 811830 -0.0 + 815831 -0.0 + 811840 -0.0 + 811850 -0.0 + 815851 -0.0 + 811860 -0.0 + 815861 -0.0 + 811870 -0.0 + 815871 -0.0 + 811880 -0.0 + 815881 -0.0 + 816882 -0.0 + 811890 -0.0 + 815891 -0.0 + 811900 -0.0 + 815901 -0.0 + 811910 -0.0 + 815911 -0.0 + 811920 -0.0 + 815921 -0.0 + 811930 -0.0 + 815931 -0.0 + 811940 -0.0 + 815941 -0.0 + 811950 -0.0 + 815951 -0.0 + 811960 -0.0 + 815961 -0.0 + 811970 -0.0 + 815971 -0.0 + 811980 -0.0 + 815981 -0.0 + 816982 -0.0 + 811990 -0.0 + 815991 -0.0 + 812000 -0.0 + 816001 -0.0 + 812010 -0.0 + 816011 -0.0 + 812020 -0.0 + 81203.82c -1.006100020311585e-19 + 812040 -0.0 + 81205.82c -1.0160240125331985e-19 + 812060 -0.0 + 816061 -0.0 + 812070 -0.0 + 816071 -0.0 + 812080 -0.0 + 812090 -0.0 + 812100 -0.0 + 812110 -0.0 + 812120 -0.0 + 821780 -0.0 + 821790 -0.0 + 821800 -0.0 + 821810 -0.0 + 825811 -0.0 + 821820 -0.0 + 821830 -0.0 + 825831 -0.0 + 821840 -0.0 + 821850 -0.0 + 825851 -0.0 + 821860 -0.0 + 821870 -0.0 + 825871 -0.0 + 821880 -0.0 + 821890 -0.0 + 825891 -0.0 + 821900 -0.0 + 821910 -0.0 + 825911 -0.0 + 821920 -0.0 + 821930 -0.0 + 825931 -0.0 + 821940 -0.0 + 821950 -0.0 + 825951 -0.0 + 821960 -0.0 + 821970 -0.0 + 825971 -0.0 + 821980 -0.0 + 821990 -0.0 + 825991 -0.0 + 822000 -0.0 + 822010 -0.0 + 826011 -0.0 + 822020 -0.0 + 826021 -0.0 + 822030 -0.0 + 826031 -0.0 + 827032 -0.0 + 82204.82c -1.0110603201470369e-19 + 826041 -0.0 + 822050 -0.0 + 826051 -0.0 + 82206.82c -1.0209810333690715e-19 + 82207.82c -1.0259449626621115e-19 + 826071 -0.0 + 82208.82c -1.0309055390144942e-19 + 822090 -0.0 + 822100 -0.0 + 822110 -0.0 + 822120 -0.0 + 822130 -0.0 + 822140 -0.0 + 822150 -0.0 + 831840 -0.0 + 835841 -0.0 + 831850 -0.0 + 831860 -0.0 + 835861 -0.0 + 831870 -0.0 + 835871 -0.0 + 831880 -0.0 + 835881 -0.0 + 831890 -0.0 + 835891 -0.0 + 831900 -0.0 + 835901 -0.0 + 831910 -0.0 + 835911 -0.0 + 831920 -0.0 + 835921 -0.0 + 831930 -0.0 + 835931 -0.0 + 831940 -0.0 + 835941 -0.0 + 836942 -0.0 + 831950 -0.0 + 835951 -0.0 + 831960 -0.0 + 835961 -0.0 + 836962 -0.0 + 831970 -0.0 + 835971 -0.0 + 831980 -0.0 + 835981 -0.0 + 836982 -0.0 + 831990 -0.0 + 835991 -0.0 + 832000 -0.0 + 836001 -0.0 + 837002 -0.0 + 832010 -0.0 + 836011 -0.0 + 832020 -0.0 + 832030 -0.0 + 836031 -0.0 + 832040 -0.0 + 836041 -0.0 + 837042 -0.0 + 832050 -0.0 + 832060 -0.0 + 832070 -0.0 + 832080 -0.0 + 836081 -0.0 + 83209.82c -1.0358809433264449e-19 + 832100 -0.0 + 836101 -0.0 + 832110 -0.0 + 832120 -0.0 + 836121 -0.0 + 837122 -0.0 + 832130 -0.0 + 832140 -0.0 + 832150 -0.0 + 836151 -0.0 + 832160 -0.0 + 832170 -0.0 + 832180 -0.0 + 841880 -0.0 + 841890 -0.0 + 841900 -0.0 + 841910 -0.0 + 845911 -0.0 + 841920 -0.0 + 841930 -0.0 + 845931 -0.0 + 841940 -0.0 + 841950 -0.0 + 845951 -0.0 + 841960 -0.0 + 841970 -0.0 + 845971 -0.0 + 841980 -0.0 + 841990 -0.0 + 845991 -0.0 + 842000 -0.0 + 842010 -0.0 + 846011 -0.0 + 842020 -0.0 + 842030 -0.0 + 846031 -0.0 + 842040 -0.0 + 842050 -0.0 + 846051 -0.0 + 847052 -0.0 + 842060 -0.0 + 842070 -0.0 + 846071 -0.0 + 842080 -0.0 + 842090 -0.0 + 842100 -0.0 + 842110 -0.0 + 846111 -0.0 + 842120 -0.0 + 846121 -0.0 + 842130 -0.0 + 842140 -0.0 + 842150 -0.0 + 842160 -0.0 + 842170 -0.0 + 842180 -0.0 + 842190 -0.0 + 842200 -0.0 + 851930 -0.0 + 851940 -0.0 + 855941 -0.0 + 851950 -0.0 + 855951 -0.0 + 851960 -0.0 + 855961 -0.0 + 851970 -0.0 + 855971 -0.0 + 851980 -0.0 + 855981 -0.0 + 851990 -0.0 + 852000 -0.0 + 856001 -0.0 + 857002 -0.0 + 852010 -0.0 + 852020 -0.0 + 856021 -0.0 + 857022 -0.0 + 852030 -0.0 + 852040 -0.0 + 856041 -0.0 + 852050 -0.0 + 852060 -0.0 + 852070 -0.0 + 852080 -0.0 + 852090 -0.0 + 852100 -0.0 + 852110 -0.0 + 852120 -0.0 + 856121 -0.0 + 852130 -0.0 + 852140 -0.0 + 852150 -0.0 + 852160 -0.0 + 852170 -0.0 + 852180 -0.0 + 852190 -0.0 + 852200 -0.0 + 852210 -0.0 + 852220 -0.0 + 852230 -0.0 + 861950 -0.0 + 865951 -0.0 + 861960 -0.0 + 861970 -0.0 + 865971 -0.0 + 861980 -0.0 + 861990 -0.0 + 865991 -0.0 + 862000 -0.0 + 862010 -0.0 + 866011 -0.0 + 862020 -0.0 + 862030 -0.0 + 866031 -0.0 + 862040 -0.0 + 862050 -0.0 + 862060 -0.0 + 862070 -0.0 + 862080 -0.0 + 862090 -0.0 + 862100 -0.0 + 862110 -0.0 + 862120 -0.0 + 862130 -0.0 + 862140 -0.0 + 862150 -0.0 + 862160 -0.0 + 862170 -0.0 + 862180 -0.0 + 862190 -0.0 + 862200 -0.0 + 862210 -0.0 + 862220 -0.0 + 862230 -0.0 + 862240 -0.0 + 862250 -0.0 + 862260 -0.0 + 862270 -0.0 + 862280 -0.0 + 871990 -0.0 + 872000 -0.0 + 872010 -0.0 + 872020 -0.0 + 876021 -0.0 + 872030 -0.0 + 872040 -0.0 + 876041 -0.0 + 877042 -0.0 + 872050 -0.0 + 872060 -0.0 + 876061 -0.0 + 877062 -0.0 + 872070 -0.0 + 872080 -0.0 + 872090 -0.0 + 872100 -0.0 + 872110 -0.0 + 872120 -0.0 + 872130 -0.0 + 872140 -0.0 + 876141 -0.0 + 872150 -0.0 + 872160 -0.0 + 872170 -0.0 + 872180 -0.0 + 876181 -0.0 + 872190 -0.0 + 872200 -0.0 + 872210 -0.0 + 872220 -0.0 + 872230 -0.0 + 872240 -0.0 + 872250 -0.0 + 872260 -0.0 + 872270 -0.0 + 872280 -0.0 + 872290 -0.0 + 872300 -0.0 + 872310 -0.0 + 872320 -0.0 + 882020 -0.0 + 882030 -0.0 + 886031 -0.0 + 882040 -0.0 + 882050 -0.0 + 886051 -0.0 + 882060 -0.0 + 882070 -0.0 + 886071 -0.0 + 882080 -0.0 + 882090 -0.0 + 882100 -0.0 + 882110 -0.0 + 882120 -0.0 + 882130 -0.0 + 886131 -0.0 + 882140 -0.0 + 882150 -0.0 + 882160 -0.0 + 882170 -0.0 + 882180 -0.0 + 882190 -0.0 + 882200 -0.0 + 882210 -0.0 + 882220 -0.0 + 88223.82c -1.1054654720789197e-19 + 88224.82c -1.110430779981234e-19 + 88225.82c -1.1154044668496747e-19 + 88226.82c -1.1203702116819505e-19 + 882270 -0.0 + 882280 -0.0 + 882290 -0.0 + 882300 -0.0 + 882310 -0.0 + 882320 -0.0 + 882330 -0.0 + 882340 -0.0 + 892060 -0.0 + 896061 -0.0 + 892070 -0.0 + 892080 -0.0 + 896081 -0.0 + 892090 -0.0 + 892100 -0.0 + 892110 -0.0 + 892120 -0.0 + 892130 -0.0 + 892140 -0.0 + 892150 -0.0 + 892160 -0.0 + 896161 -0.0 + 892170 -0.0 + 892180 -0.0 + 892190 -0.0 + 892200 -0.0 + 892210 -0.0 + 892220 -0.0 + 896221 -0.0 + 892230 -0.0 + 892240 -0.0 + 89225.82c -1.1154025737013036e-19 + 89226.82c -1.120373625026575e-19 + 89227.82c -1.1253386546671532e-19 + 892280 -0.0 + 892290 -0.0 + 892300 -0.0 + 892310 -0.0 + 892320 -0.0 + 892330 -0.0 + 892340 -0.0 + 892350 -0.0 + 892360 -0.0 + 902090 -0.0 + 902100 -0.0 + 902110 -0.0 + 902120 -0.0 + 902130 -0.0 + 902140 -0.0 + 902150 -0.0 + 902160 -0.0 + 902170 -0.0 + 902180 -0.0 + 902190 -0.0 + 902200 -0.0 + 902210 -0.0 + 902220 -0.0 + 902230 -0.0 + 902240 -0.0 + 902250 -0.0 + 902260 -0.0 + 90227.82c -1.1253384165012396e-19 + 90228.82c -1.130300390849071e-19 + 90229.82c -1.135272201432286e-19 + 90230.82c -1.1402358299248699e-19 + 90231.82c -1.1452083785755672e-19 + 90232.82c -0.43557913048233615 + 90233.82c -1.1551482036158553e-19 + 90234.82c -1.1601150477299508e-19 + 902350 -0.0 + 902360 -0.0 + 902370 -0.0 + 902380 -0.0 + 912120 -0.0 + 912130 -0.0 + 912140 -0.0 + 912150 -0.0 + 912160 -0.0 + 912170 -0.0 + 916171 -0.0 + 912180 -0.0 + 912190 -0.0 + 912200 -0.0 + 912210 -0.0 + 912220 -0.0 + 912230 -0.0 + 912240 -0.0 + 912250 -0.0 + 912260 -0.0 + 912270 -0.0 + 912280 -0.0 + 91229.82c -1.1352738581099802e-19 + 91230.82c -1.140242806325347e-19 + 91231.82c -1.145206295327692e-19 + 91232.82c -1.1501765501047656e-19 + 91233.82c -1.1551415931684476e-19 + 912340 -0.0 + 916341 -0.0 + 912350 -0.0 + 912360 -0.0 + 912370 -0.0 + 912380 -0.0 + 912390 -0.0 + 912400 -0.0 + 922170 -0.0 + 922180 -0.0 + 922190 -0.0 + 922200 -0.0 + 922220 -0.0 + 922230 -0.0 + 922240 -0.0 + 922250 -0.0 + 922260 -0.0 + 922270 -0.0 + 922280 -0.0 + 922290 -0.0 + 92230.82c -1.1402398337770137e-19 + 92231.82c -1.1452083260281802e-19 + 92232.82c -1.1501694348683516e-19 + 92233.82c -0.00911370203663893 + 92234.82c -1.1601019146503893e-19 + 92235.82c -1.1650735082432813e-19 + 926351 -0.0 + 92236.82c -1.1700384606266598e-19 + 92237.82c -1.1750109680563338e-19 + 92238.82c -1.1799780053084715e-19 + 92239.82c -1.184952212302359e-19 + 92240.82c -1.1899204479234085e-19 + 92241.82c -1.194895807494984e-19 + 922420 -0.0 + 932250 -0.0 + 932260 -0.0 + 932270 -0.0 + 932280 -0.0 + 932290 -0.0 + 932300 -0.0 + 932310 -0.0 + 932320 -0.0 + 932330 -0.0 + 93234.82c -1.1601115455291372e-19 + 93235.82c -1.1650741694897652e-19 + 93236.82c -1.1700434283201173e-19 + 936361 -0.0 + 93237.82c -1.1750082087360873e-19 + 93238.82c -1.1799787868771203e-19 + 93239.82c -1.1849454985248098e-19 + 932400 -0.0 + 936401 -0.0 + 932410 -0.0 + 932420 -0.0 + 936421 -0.0 + 932430 -0.0 + 932440 -0.0 + 942280 -0.0 + 942290 -0.0 + 942300 -0.0 + 942310 -0.0 + 942320 -0.0 + 942330 -0.0 + 942340 -0.0 + 942350 -0.0 + 94236.82c -1.17004089222589e-19 + 94237.82c -1.1750093797730216e-19 + 946371 -0.0 + 94238.82c -1.1799719146197055e-19 + 94239.82c -1.1849416523693517e-19 + 94240.82c -1.1899066648890287e-19 + 94241.82c -1.194878556338018e-19 + 94242.82c -1.1998447643466866e-19 + 94243.82c -1.2048177619823637e-19 + 94244.82c -1.2097855114322723e-19 + 942450 -0.0 + 94246.82c -1.2197289174820622e-19 + 942470 -0.0 + 952310 -0.0 + 952320 -0.0 + 952330 -0.0 + 952340 -0.0 + 952350 -0.0 + 952360 -0.0 + 952370 -0.0 + 952380 -0.0 + 952390 -0.0 + 95240.82c -1.1899140338756393e-19 + 95241.82c -1.1948784457560299e-19 + 95242.82c -1.199848761452581e-19 + 95642.82c -1.199848761452581e-19 + 957422 -0.0 + 95243.82c -1.204814677944942e-19 + 95244.82c -1.2097859007865504e-19 + 95644.82c -1.2097859007865504e-19 + 952450 -0.0 + 952460 -0.0 + 956461 -0.0 + 952470 -0.0 + 952480 -0.0 + 952490 -0.0 + 962330 -0.0 + 962340 -0.0 + 962350 -0.0 + 962360 -0.0 + 962370 -0.0 + 962380 -0.0 + 962390 -0.0 + 96240.82c -1.1899151733772019e-19 + 96241.82c -1.1948825295668476e-19 + 96242.82c -1.1998452264127486e-19 + 96243.82c -1.204814714937787e-19 + 96244.82c -1.2097783055799936e-19 + 966441 -0.0 + 96245.82c -1.2147487224157663e-19 + 96246.82c -1.2197141355764302e-19 + 96247.82c -1.2246864866923743e-19 + 96248.82c -1.2296532154262668e-19 + 96249.82c -1.2346279173748035e-19 + 96250.82c -1.2395966644071876e-19 + 962510 -0.0 + 972350 -0.0 + 972370 -0.0 + 972380 -0.0 + 972400 -0.0 + 972410 -0.0 + 972420 -0.0 + 972430 -0.0 + 972440 -0.0 + 97245.82c -1.2147530287735169e-19 + 97246.82c -1.2197213194401973e-19 + 97247.82c -1.2246862547819837e-19 + 97248.82c -1.2296568730684077e-19 + 976481 -0.0 + 97249.82c -1.2346231051623278e-19 + 97250.82c -1.2395964535980357e-19 + 972510 -0.0 + 972530 -0.0 + 972540 -0.0 + 982370 -0.0 + 982380 -0.0 + 982390 -0.0 + 982400 -0.0 + 982410 -0.0 + 982420 -0.0 + 982430 -0.0 + 982440 -0.0 + 982450 -0.0 + 98246.82c -1.219721975700107e-19 + 982470 -0.0 + 98248.82c -1.2296523919822922e-19 + 98249.82c -1.2346224474351956e-19 + 98250.82c -1.2395869837370522e-19 + 98251.82c -1.2445595926777096e-19 + 98252.82c -1.2495265342034882e-19 + 98253.82c -1.2545007519190052e-19 + 98254.82c -1.2594684396860835e-19 + 982550 -0.0 + 982560 -0.0 + 992400 -0.0 + 992410 -0.0 + 992420 -0.0 + 992430 -0.0 + 992440 -0.0 + 992450 -0.0 + 992460 -0.0 + 992470 -0.0 + 996471 -0.0 + 992480 -0.0 + 992490 -0.0 + 992500 -0.0 + 996501 -0.0 + 99251.82c -1.2445616002198736e-19 + 99252.82c -1.2495332391430038e-19 + 99253.82c -1.2544992032407894e-19 + 99254.82c -1.2594718942864292e-19 + 99654.82c -1.2594718942864292e-19 + 99255.82c -1.2644398951964776e-19 + 992560 -0.0 + 996561 -0.0 + 992570 -0.0 + 992580 -0.0 + 1002420 -0.0 + 1002430 -0.0 + 1002440 -0.0 + 1002450 -0.0 + 1002460 -0.0 + 1002470 -0.0 + 1002480 -0.0 + 1002490 -0.0 + 1002500 -0.0 + 1006501 -0.0 + 1002510 -0.0 + 1002520 -0.0 + 1002530 -0.0 + 1002540 -0.0 + 100255.82c -1.2644383540179498e-19 + 1002560 -0.0 + 1002570 -0.0 + 1002580 -0.0 + 1002590 -0.0 + 1002600 -0.0 + 1012450 -0.0 + 1016451 -0.0 + 1012460 -0.0 + 1012470 -0.0 + 1016471 -0.0 + 1012480 -0.0 + 1012490 -0.0 + 1016491 -0.0 + 1012500 -0.0 + 1012510 -0.0 + 1012520 -0.0 + 1012530 -0.0 + 1012540 -0.0 + 1016541 -0.0 + 1012550 -0.0 + 1012560 -0.0 + 1012570 -0.0 + 1012580 -0.0 + 1016581 -0.0 + 1012590 -0.0 + 1012600 -0.0 + 1012610 -0.0 + 1022500 -0.0 + 1022510 -0.0 + 1026511 -0.0 + 1022520 -0.0 + 1022530 -0.0 + 1022540 -0.0 + 1026541 -0.0 + 1022550 -0.0 + 1022560 -0.0 + 1022570 -0.0 + 1022580 -0.0 + 1022590 -0.0 + 1022600 -0.0 + 1022610 -0.0 + 1022620 -0.0 + 1032510 -0.0 + 1032520 -0.0 + 1032530 -0.0 + 1036531 -0.0 + 1032540 -0.0 + 1032550 -0.0 + 1036551 -0.0 + 1032560 -0.0 + 1032570 -0.0 + 1032580 -0.0 + 1032590 -0.0 + 1032600 -0.0 + 1032610 -0.0 + 1032620 -0.0 + 1032630 -0.0 + 1042530 -0.0 + 1042540 -0.0 + 1042550 -0.0 + 1042560 -0.0 + 1042570 -0.0 + 1046571 -0.0 + 1042580 -0.0 + 1042590 -0.0 + 1042600 -0.0 + 1042610 -0.0 + 1046611 -0.0 + 1042620 -0.0 + 1042630 -0.0 + 1042640 -0.0 + 1042650 -0.0 + 1052550 -0.0 + 1052560 -0.0 + 1052570 -0.0 + 1056571 -0.0 + 1052580 -0.0 + 1056581 -0.0 + 1052590 -0.0 + 1052600 -0.0 + 1052610 -0.0 + 1052620 -0.0 + 1052630 -0.0 + 1052640 -0.0 + 1052650 -0.0 + 1062580 -0.0 + 1062590 -0.0 + 1062600 -0.0 + 1062610 -0.0 + 1062620 -0.0 + 1062630 -0.0 + 1066631 -0.0 + 1062640 -0.0 + 1062650 -0.0 + 1062660 -0.0 + 1062690 -0.0 + 1072600 -0.0 + 1072610 -0.0 + 1072620 -0.0 + 1076621 -0.0 + 1072630 -0.0 + 1072640 -0.0 + 1072650 -0.0 + 1072660 -0.0 + 1072670 -0.0 + 1072690 -0.0 + 1082630 -0.0 + 1082640 -0.0 + 1082650 -0.0 + 1086651 -0.0 + 1082660 -0.0 + 1082670 -0.0 + 1082680 -0.0 + 1082690 -0.0 + 1082730 -0.0 + 1092650 -0.0 + 1092660 -0.0 + 1096661 -0.0 + 1092670 -0.0 + 1092680 -0.0 + 1092690 -0.0 + 1092700 -0.0 + 1092710 -0.0 + 1092730 -0.0 + 1102670 -0.0 + 1102680 -0.0 + 1102690 -0.0 + 1102700 -0.0 + 1106701 -0.0 + 1102710 -0.0 + 1106711 -0.0 + 1102720 -0.0 + 1102730 -0.0 + 1106791 -0.0 + 1112720 -0.0 diff --git a/examples/msbr/msbr_endfb71.serpent b/examples/msbr/msbr_endfb71.serpent index 8e9c12e23..0f3c71bec 100644 --- a/examples/msbr/msbr_endfb71.serpent +++ b/examples/msbr/msbr_endfb71.serpent @@ -1,5 +1,6 @@ % Include file with burnable material composition on the line below include "mats/msbr_saltproc_prepr_comp_endfb71.ini" +%%include "mats/msbr_saltproc_prepr_comp_endfb71.ini" % Include file with non-burnable material composition on the line below %include "mats/non_burnable_mats.ini" % Geometry import will be added by SaltProc on the next line From 4e2b6026789f2364eea8bf976adb349fbd4ceb57 Mon Sep 17 00:00:00 2001 From: yardasol Date: Fri, 28 Oct 2022 20:08:59 -0500 Subject: [PATCH 32/62] Revert "fix metastable flag in conversion script" This reverts commit ed0b346d16b653ef7c2ad5ecdcb9ab902bd7e415. --- scripts/xsdata/process_endfb71_to_openmc.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/xsdata/process_endfb71_to_openmc.bash b/scripts/xsdata/process_endfb71_to_openmc.bash index b0f35dda3..6426bebdf 100644 --- a/scripts/xsdata/process_endfb71_to_openmc.bash +++ b/scripts/xsdata/process_endfb71_to_openmc.bash @@ -11,4 +11,4 @@ fi mkdir -p $DATADIR conda activate $OPENMC_ENV -python $OPENMCDIR/scripts/openmc-ace-to-hdf5 -d $DATADIR --xsdir $XSDIR/endfb71_ace/endfb71.xsdir -m nndc +python $OPENMCDIR/scripts/openmc-ace-to-hdf5 -d $DATADIR --xsdir $XSDIR/endfb71_ace/endfb71.xsdir -m mcnp From 1ca5b79b566acfb4cd117c3beac992d45eef5495 Mon Sep 17 00:00:00 2001 From: yardasol Date: Sat, 29 Oct 2022 18:37:50 -0500 Subject: [PATCH 33/62] fix overlapping cells in optimized model --- examples/msbr/_root_geometry.py | 56 ++++++++++++++++++++++++++------- 1 file changed, 44 insertions(+), 12 deletions(-) diff --git a/examples/msbr/_root_geometry.py b/examples/msbr/_root_geometry.py index 0d88508a5..29208ac7b 100644 --- a/examples/msbr/_root_geometry.py +++ b/examples/msbr/_root_geometry.py @@ -136,6 +136,21 @@ def zoneIIB(zone_i_boundary, pos = np.round(pos, 3) r1_big, r2_big = big_radii[i] t1_big = np.round(pos - large_half_w, 3) + if i == 0: + t1_big_0 = t1_big + elif i > 0 and optimized: + cpos = t2_small + (adjacent_angular_offset/2) + cpos = np.round(cpos, 3) + s6 = openmc.model.CylinderSector(r1_small, + r2_small, + t2_small, + t1_big, + name=('inter_element_fuel' + f'_channel_{cpos}')) + elem_cells.append(openmc.Cell(fill=fuel, region=-s6, + name=('inter_element_fuel' + f'_channel_{cpos}'))) + t2_big = np.round(pos + large_half_w, 3) s1 = openmc.model.CylinderSector(r1_big, r2_big, @@ -195,21 +210,38 @@ def zoneIIB(zone_i_boundary, t1_small = np.round(t2_small + adjacent_angular_offset, 3) if optimized: - # inter-element fuel channel - cpos = t2_small + (adjacent_angular_offset/2) - cpos = np.round(cpos, 3) - s6 = openmc.model.CylinderSector(r1_small, - r2_small, - t2_small, - t1_small, - name=('inter_element_fuel' - f'_channel_{cpos}')) - elem_cells.append(openmc.Cell(fill=fuel, region=-s6, - name=('inter_element_fuel' - f'_channel_{cpos}'))) + if i < small_elems_per_octant - 1: + # inter-element fuel channel + cpos = t2_small + (adjacent_angular_offset/2) + cpos = np.round(cpos, 3) + s6 = openmc.model.CylinderSector(r1_small, + r2_small, + t2_small, + t1_small, + name=('inter_element_fuel' + f'_channel_{cpos}')) + elem_cells.append(openmc.Cell(fill=fuel, region=-s6, + name=('inter_element_fuel' + f'_channel_{cpos}'))) else: zone_iib_reg = zone_iib_reg & +s5 + # gotta do this again to fill the last gap with + # fuel material... gonna rewrite this algorithm to make it less verbose, + # but it works for now. + if optimized: + cpos = t2_small + (adjacent_angular_offset/2) + cpos = np.round(cpos, 3) + s6 = openmc.model.CylinderSector(r1_small, + r2_small, + t2_small, + 360 + t1_big_0, + name=('inter_element_fuel' + f'_channel_{cpos}')) + elem_cells.append(openmc.Cell(fill=fuel, region=-s6, + name=('inter_element_fuel' + f'_channel_{cpos}'))) + #universe_id=10 iib = openmc.Universe(name='zone_iib', cells=elem_cells) s1, s2, s3 = zone_i_boundary From b8686121e3a6b19f00b893f83e7f4c8264d59f6e Mon Sep 17 00:00:00 2001 From: yardasol Date: Sat, 29 Oct 2022 19:01:10 -0500 Subject: [PATCH 34/62] syntax fixes in model generation file --- examples/msbr/openmc_msbr_model.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/examples/msbr/openmc_msbr_model.py b/examples/msbr/openmc_msbr_model.py index 8a7a61412..7e689c157 100644 --- a/examples/msbr/openmc_msbr_model.py +++ b/examples/msbr/openmc_msbr_model.py @@ -176,8 +176,8 @@ def shared_elem_geometry(elem_type, iec_l = (+gr_cyl_miny & -gr_cyl_maxy & -gr_minx & +ru_t & +lb & +gr_cyl_lb) iec_lb = (+gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny) & +lb & +ul_t - iec_b = (+gr_cyl_minx & -gr_cyl_maxx & - -gr_miny & +ul_t & +br & +gr_cyl_br) + iec_b = (+gr_cyl_minx & -gr_cyl_maxx & -gr_miny & + +ul_t & +br & +gr_cyl_br) iec_br = (+gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny) & +br & +lb_t inter_elem_channel = [[iec_r, 'outer_r'], [iec_ru, 'outer_ru'], @@ -330,7 +330,7 @@ def shared_elem_geometry(elem_type, [corner_ru, 'corner_ru'], [corner_lb, 'corner_lb']] - gr_extra_regions= slabs + corners + ribs + gr_extra_regions = slabs + corners + ribs else: gr_extra_regions = ribs inter_elem_channel = inter_elem_channel & +ul_t & +br_t & +ru_t & +lb_t From 481f07e876ad5d296a70f41544246e0f5a6d9b35 Mon Sep 17 00:00:00 2001 From: yardasol Date: Tue, 1 Nov 2022 13:40:56 -0500 Subject: [PATCH 35/62] add @samgdotson suggestions --- .../{_control_rods.py => control_rods.py} | 0 .../{_core_elements.py => core_elements.py} | 0 examples/msbr/openmc_msbr_model.py | 481 +++++++----------- .../{_root_geometry.py => root_geometry.py} | 0 4 files changed, 181 insertions(+), 300 deletions(-) rename examples/msbr/{_control_rods.py => control_rods.py} (100%) rename examples/msbr/{_core_elements.py => core_elements.py} (100%) rename examples/msbr/{_root_geometry.py => root_geometry.py} (100%) diff --git a/examples/msbr/_control_rods.py b/examples/msbr/control_rods.py similarity index 100% rename from examples/msbr/_control_rods.py rename to examples/msbr/control_rods.py diff --git a/examples/msbr/_core_elements.py b/examples/msbr/core_elements.py similarity index 100% rename from examples/msbr/_core_elements.py rename to examples/msbr/core_elements.py diff --git a/examples/msbr/openmc_msbr_model.py b/examples/msbr/openmc_msbr_model.py index 7e689c157..7fe097a02 100644 --- a/examples/msbr/openmc_msbr_model.py +++ b/examples/msbr/openmc_msbr_model.py @@ -4,9 +4,9 @@ from openmc.deplete import CoupledOperator, PredictorIntegrator, CELIIntegrator -from _core_elements import * -from _control_rods import * -from _root_geometry import * +import core_elements as ce +import control_rods as cr +import root_geometry as rg # Materials @@ -378,13 +378,13 @@ def cr_lattice(cr_boundary, core_base, core_top, optimized): 'cr_fuel_hole', optimized) - f = control_rod(gr_sq_neg, - gr_extra_regions, - inter_elem_channel, - fuel_hole, - fuel, - moder, - optimized) + f = cr.control_rod(gr_sq_neg, + gr_extra_regions, + inter_elem_channel, + fuel_hole, + fuel, + moder, + optimized) if optimized: # call a second time to have unique surfaces (gr_sq_neg, @@ -402,21 +402,21 @@ def cr_lattice(cr_boundary, core_base, core_top, optimized): optimized) - e = control_rod_channel(gr_sq_neg, - gr_extra_regions, - inter_elem_channel, - fuel_hole, - fuel, - moder, - optimized) + e = cr.control_rod_channel(gr_sq_neg, + gr_extra_regions, + inter_elem_channel, + fuel_hole, + fuel, + moder, + optimized) - cr = openmc.RectLattice() - cr.pitch = np.array([15.24, 15.24]) + cl = openmc.RectLattice() + cl.pitch = np.array([15.24, 15.24]) N = 2 / 2 - cr.lower_left = -1 * cr.pitch * N - cr.universes = [[f, e], + cl.lower_left = -1 * cl.pitch * N + cl.universes = [[f, e], [e, f]] - c1 = openmc.Cell(fill=cr, region=(+core_base & -core_top & cr_boundary), + c1 = openmc.Cell(fill=cl, region=(+core_base & -core_top & cr_boundary), name='cr_lattice') return c1 @@ -459,14 +459,14 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): 2.2225, 'gr_round_4', optimized) - l = zoneIA(gr_sq_neg, - gr_extra_regions, - inter_elem_channel, - gr_round_4, - moder, - fuel, - hast, - optimized) + l = ce.zoneIA(gr_sq_neg, + gr_extra_regions, + inter_elem_channel, + gr_round_4, + moder, + fuel, + hast, + optimized) (gr_sq_neg, gr_extra_regions, inter_elem_channel, @@ -481,16 +481,16 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): 'gr_round_4', optimized) - z = zoneIIA(gr_sq_neg, - gr_extra_regions, - inter_elem_channel, - gr_round_4, - moder, - fuel, - optimized) - v = void_cell() + z = ce.zoneIIA(gr_sq_neg, + gr_extra_regions, + inter_elem_channel, + gr_round_4, + moder, + fuel, + optimized) + v = ce.void_cell() # tres, uno, dos, quatro - t, u, d, q = graphite_triangles(fuel, moder) + t, u, d, q = ce.graphite_triangles(fuel, moder) s1, s2, s3 = zone_i_boundary @@ -630,11 +630,29 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): main_cells = [c1, c2, c3] return main_cells +def plot_geometry(name, + origin=(0.,0.,0.), + pixels=(10000,10000), + width=(686.816, 686.816), + color_by='material', + colormap=colormap, + basis='xy'): + plot = openmc.Plot(name=name) + plot.origin = origin + plot.pixels = pixels + plot.width = width + plot.color_by = color_by + plot.colors = colormap + plot.basis = basis + + return plot + + optimized, deplete = parse_arguments() (zone_bounds, core_bounds, reflector_bounds, - vessel_bounds) = shared_root_geometry() + vessel_bounds) = rg.shared_root_geometry() (cr_boundary, zone_i_boundary, @@ -659,38 +677,38 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): core_base, core_top, optimized) -iib = zoneIIB(zone_i_boundary, - zone_ii_boundary, - core_base, - core_top, - fuel, - moder, - optimized) -a = annulus(zone_ii_boundary, - annulus_boundary, - core_base, - core_top, - fuel) -lp = lower_plenum(core_base, - lower_plenum_boundary, - annulus_boundary, - fuel) - -rr, rb, rt = reflectors(annulus_boundary, - radial_reflector_boundary, - lower_plenum_boundary, - bottom_reflector_boundary, - core_top, - top_reflector_boundary, - moder) - -vr, vb, vt = vessel(radial_reflector_boundary, - radial_vessel_boundary, - bottom_vessel_boundary, - top_vessel_boundary, - top_reflector_boundary, - bottom_reflector_boundary, - hast) +iib = rg.zoneIIB(zone_i_boundary, + zone_ii_boundary, + core_base, + core_top, + fuel, + moder, + optimized) +a = rg.annulus(zone_ii_boundary, + annulus_boundary, + core_base, + core_top, + fuel) +lp = rg.lower_plenum(core_base, + lower_plenum_boundary, + annulus_boundary, + fuel) + +rr, rb, rt = rg.reflectors(annulus_boundary, + radial_reflector_boundary, + lower_plenum_boundary, + bottom_reflector_boundary, + core_top, + top_reflector_boundary, + moder) + +vr, vb, vt = rg.vessel(radial_reflector_boundary, + radial_vessel_boundary, + bottom_vessel_boundary, + top_vessel_boundary, + top_reflector_boundary, + bottom_reflector_boundary, + hast) geo = openmc.Geometry() univ = openmc.Universe(cells=[cr, lp, a, rr, rb, rt, vr, vb, vt]) @@ -712,7 +730,6 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): settings.export_to_xml() # Plots -plots_3d = False detail_pixels = (1000, 1000) full_pixels = (10000, 10000) @@ -720,235 +737,99 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): hast: 'blue', fuel: 'yellow'} ## Slice plots -plots = openmc.Plots() -plot = openmc.Plot(name='serpent-plot1') -plot.origin=(0., 0., 150.5) -plot.pixels=full_pixels -plot.width=(686.816, 686.816) -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='serpent-plot1') -plot.origin=(0.0, -77.5, 306.07) -plot.pixels=(1550, 3400) -plot.width=(155, 612.14) -plot.color_by='material' -plot.colors=colormap -plot.basis='yz' -plots.append(plot) - -plot = openmc.Plot(name='serpent-plot2') -plot.origin=(0, 0, 155) -plot.pixels=(1000, 1000) -plot.width=(40, 40) -plot.color_by='material' -plot.colors=colormap -plot.basis='yz' -plots.append(plot) - -plot = openmc.Plot(name='serpent-plot3') -plot.origin=(16.5, 0, 306.07) -plot.pixels=(2000, 2000) -plot.width=(686.816, 612.14) -plot.color_by='material' -plot.colors=colormap -plot.basis='yz' -plots.append(plot) - -plot = openmc.Plot(name='detail-zoneIA-IIA-lower1') -plot.origin=(215, 0, 10.0) -plot.width=(40, 40) -plot.pixels=detail_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='detail-zoneIA-main') -plot.origin=(215, 0, 23.0) -plot.width=(40, 40) -plot.pixels=detail_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='detail-zoneIIA-upper1') -plot.origin=(215, 0, 435) -plot.width=(40, 40) -plot.pixels=detail_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='detail-zoneIA-upper1') -plot.origin=(215, 0, 420) -plot.width=(40, 40) -plot.pixels=detail_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='detail-zoneIIA-upper2') -plot.origin=(215, 0, 437) -plot.width=(40, 40) -plot.pixels=detail_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='detail-zoneIA-upper2') -plot.origin=(215, 0, 439) -plot.width=(40, 40) -plot.pixels=detail_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='detail-zoneIIA-upper3') -plot.origin=(215, 0, 440) -plot.width=(40, 40) -plot.pixels=detail_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='detail-zoneIA-upper3') -plot.origin=(215, 0, 448) -plot.width=(40, 40) -plot.pixels=detail_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='detail-zoneIIA-upper4') -plot.origin=(215, 0, 442) -plot.width=(40, 40) -plot.pixels=detail_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='full-zoneIA-IIA-lower1') -plot.origin=(0.0, 0, 10.0) -plot.width=(522.232, 522.232) -plot.pixels=full_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='full-zoneIA-main') -plot.origin=(0, 0, 23.0) -plot.width=(522.232, 522.232) -plot.pixels=full_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='full-zoneIIA-upper1') -plot.origin=(0, 0, 435) -plot.width=(522.232, 522.232) -plot.pixels=full_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='full-zoneIA-upper1') -plot.origin=(0, 0, 420) -plot.width=(522.232, 522.232) -plot.pixels=full_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='full-zoneIIA-upper2') -plot.origin=(0, 0, 437) -plot.width=(522.232, 522.232) -plot.pixels=full_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='full-zoneIA-upper2') -plot.origin=(0, 0, 439) -plot.width=(522.232, 522.232) -plot.pixels=full_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='full-zoneIIA-upper3') -plot.origin=(0, 0, 440) -plot.width=(522.232, 522.232) -plot.pixels=full_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='full-zoneIA-upper3') -plot.origin=(0, 0, 448) -plot.width=(522.232, 522.232) -plot.pixels=full_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='full-zoneIIA-upper4') -plot.origin=(0, 0, 442) -plot.width=(522.232, 522.232) -plot.pixels=full_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xy' -plots.append(plot) - -plot = openmc.Plot(name='core-xz-detail-upper') -plot.origin=(215, 0, 440) -plot.width=(100, 100) -plot.pixels=detail_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xz' -plots.append(plot) - -plot = openmc.Plot(name='full-core-xz') -plot.origin=(0, 0, 306.07) -plot.width = (686.816, 612.14) -plot.pixels=full_pixels -plot.color_by='material' -plot.colors=colormap -plot.basis='xz' -plots.append(plot) - -if plots_3d: - plot = openmc.Plot(name='full-core-3d') - plot.origin=(0,0,220) - plot.type = 'voxel' - plot.color_by='materials' - plot.colors=colormap - plot.width = (700., 700., 650.) - plot.pixels = (10000, 10000, 10000) - - plots.append(plot) +plots = openmc.Plots() +plots.append(plot_geometry('serpent-plot1', + origin=(0., 0., 150.5))) +plots.append(plot_geometry('serpent-plot2', + origin=(0., -77.5, 306.07), + pixels=(1550, 3400), + width=(155, 612.14), + basis='yz')) +plots.append(plot_geometry('serpent-plot3', + origin=(0., 0., 155.), + pixels=(1000, 1000), + width=(40, 40), + basis='yz')) +plots.append(plot_geometry('serpent-plot4', + origin=(16.5, 0., 306.07), + pixels=(2000, 2000), + width=(686.816, 612.14), + basis='yz')) +plots.append(plot_geometry('detail-zoneIA-IIA-lower1', + origin=(215, 0., 10.0), + pixels=(1000, 1000), + width=(40, 40))) +plots.append(plot_geometry('detail-zoneIA-main', + origin=(215, 0., 23.0), + pixels=(1000, 1000), + width=(40, 40))) +plots.append(plot_geometry('detail-zoneIA-upper1', + origin=(215, 0., 420), + pixels=(1000, 1000), + width=(40, 40))) +plots.append(plot_geometry('detail-zoneIIA-upper', + origin=(215, 0., 435), + pixels=(1000, 1000), + width=(40, 40))) +plots.append(plot_geometry('detail-zoneIIA-upper2', + origin=(215, 0., 437), + pixels=(1000, 1000), + width=(40, 40))) +plots.append(plot_geometry('detail-zoneIA-upper2', + origin=(215, 0., 439), + pixels=(1000, 1000), + width=(40, 40))) +plots.append(plot_geometry('detail-zoneIIA-upper3', + origin=(215, 0., 440), + pixels=(1000, 1000), + width=(40, 40))) +plots.append(plot_geometry('detail-zoneIIA-upper4', + origin=(215, 0., 442), + pixels=(1000, 1000), + width=(40, 40))) +plots.append(plot_geometry('detail-zoneIA-upper3', + origin=(215, 0., 448), + pixels=(1000, 1000), + width=(40, 40))) +plots.append(plot_geometry('full-zoneIA-IIA-lower1', + origin=(0., 0., 10.0), + width=(522.232, 522.232))) +plots.append(plot_geometry('full-zoneIA-main', + origin=(0., 0., 23.0), + width=(522.232, 522.232))) +plots.append(plot_geometry('full-zoneIA-upper1', + origin=(0., 0., 420), + width=(522.232, 522.232))) +plots.append(plot_geometry('full-zoneIIA-upper', + origin=(0., 0., 435), + width=(522.232, 522.232))) +plots.append(plot_geometry('full-zoneIIA-upper2', + origin=(0., 0., 437), + width=(522.232, 522.232))) +plots.append(plot_geometry('full-zoneIA-upper2', + origin=(0., 0., 439), + width=(522.232, 522.232))) +plots.append(plot_geometry('full-zoneIIA-upper3', + origin=(0., 0., 440), + width=(522.232, 522.232))) +plots.append(plot_geometry('full-zoneIIA-upper4', + origin=(0., 0., 442), + width=(522.232, 522.232))) +plots.append(plot_geometry('full-zoneIA-upper3', + origin=(0., 0., 448), + width=(522.232, 522.232))) +plots.append(plot_geometry('detail-core-xz-upper', + origin=(215, 0., 440), + pixels=(1000, 1000), + width=(100, 100), + basis='xz')) +plots.append(plot_geometry('full-core-xz', + origin=(0., 0., 306.07), + pixels=(10000,10000), + width=(618.816, 612.14), + basis='xz')) plots.export_to_xml() if deplete: diff --git a/examples/msbr/_root_geometry.py b/examples/msbr/root_geometry.py similarity index 100% rename from examples/msbr/_root_geometry.py rename to examples/msbr/root_geometry.py From f2a22c643604c6b135a85e51b561ba7be7fd8318 Mon Sep 17 00:00:00 2001 From: yardasol Date: Tue, 1 Nov 2022 13:59:21 -0500 Subject: [PATCH 36/62] remove optimized geometry code --- examples/msbr/control_rods.py | 71 ++---- examples/msbr/core_elements.py | 126 +++------- examples/msbr/openmc_msbr_model.py | 392 +++++------------------------ examples/msbr/root_geometry.py | 161 +----------- 4 files changed, 134 insertions(+), 616 deletions(-) diff --git a/examples/msbr/control_rods.py b/examples/msbr/control_rods.py index 161fb333a..ee118341a 100644 --- a/examples/msbr/control_rods.py +++ b/examples/msbr/control_rods.py @@ -6,8 +6,7 @@ def control_rod(gr_sq_neg, inter_elem_channel, fuel_hole, fuel, - moder, - optimized): + moder): """Create universe for control rod element with control rod fully inserted. Based on specification in Roberton, 1971. @@ -27,11 +26,6 @@ def control_rod(gr_sq_neg, Fuel salt material moder : openmc.Material Graphite material - optimized : bool - Flag indicating whether or not to construct 'optimized' geometry - with cell regions consiting only of :class:`openmc.Intersection` - objects. This will speed up any calculations by around 50%, and is thus - optimized. Returns ------- @@ -43,25 +37,14 @@ def control_rod(gr_sq_neg, c1 = openmc.Cell(fill=moder, region=-s1, name='control_rod') c2 = openmc.Cell(fill=fuel, region=(+s1 & -fuel_hole), name='cr_fuel_inner') - if optimized: - c3 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg), - name='cr_moderator_core') - - #universe_id=3 - cr = openmc.Universe(name='control_rod', cells=[c1, c2, c3]) - - for (reg, name) in inter_elem_channel: - cr.add_cell(openmc.Cell(fill=fuel, region=reg, - name=f'cr_fuel_outer_{name}')) - else: - c3 = openmc.Cell(fill=moder, region=(+fuel_hole & - gr_sq_neg & - inter_elem_channel), - name='cr_moderator') - c4 = openmc.Cell(fill=fuel, region= (~gr_sq_neg & inter_elem_channel), - name='cr_fuel_outer') - #universe_id=3 - cr = openmc.Universe(name='control_rod', cells=[c1, c2, c3, c4]) + c3 = openmc.Cell(fill=moder, region=(+fuel_hole & + gr_sq_neg & + inter_elem_channel), + name='cr_moderator') + c4 = openmc.Cell(fill=fuel, region= (~gr_sq_neg & inter_elem_channel), + name='cr_fuel_outer') + #universe_id=3 + cr = openmc.Universe(name='control_rod', cells=[c1, c2, c3, c4]) for (reg, name) in gr_extra_regions: cr.add_cell(openmc.Cell(fill=moder, region=reg, @@ -74,8 +57,7 @@ def control_rod_channel(gr_sq_neg, inter_elem_channel, fuel_hole, fuel, - moder, - optimized): + moder): """Create universe for control rod element with control rod fully withdrawn. Based on specification in Roberton, 1971. @@ -95,11 +77,6 @@ def control_rod_channel(gr_sq_neg, Fuel salt material moder : openmc.Material Graphite material - optimized : bool - Flag indicating whether or not to construct 'optimized' geometry - with cell regions consiting only of :class:`openmc.Intersection` - objects. This will speed up any calculations by around 50%, and is thus - optimized. Returns ------- @@ -109,30 +86,18 @@ def control_rod_channel(gr_sq_neg, c1 = openmc.Cell(fill=fuel, region=(-fuel_hole), name='crc_fuel_inner') - if optimized: - c2 = openmc.Cell(fill=moder, region=(+fuel_hole & gr_sq_neg), - name='crc_moderator_core') - - # universe_id=4 - crc = openmc.Universe(name='control_rod_channel', cells=[c1, c2]) + c2 = openmc.Cell(fill=moder, region=(+fuel_hole & + gr_sq_neg & + inter_elem_channel), + name='crc_moderator') + c3 = openmc.Cell(fill=fuel, region=(~gr_sq_neg & inter_elem_channel), + name='crc_fuel_outer') - for (reg, name) in inter_elem_channel: - crc.add_cell(openmc.Cell(fill=fuel, region=reg, - name=f'crc_fuel_outer_{name}')) - else: - c2 = openmc.Cell(fill=moder, region=(+fuel_hole & - gr_sq_neg & - inter_elem_channel), - name='crc_moderator') - c3 = openmc.Cell(fill=fuel, region=(~gr_sq_neg & inter_elem_channel), - name='crc_fuel_outer') - - # universe_id=4 - crc = openmc.Universe(name='control_rod_channel', cells=[c1, c2, c3]) + # universe_id=4 + crc = openmc.Universe(name='control_rod_channel', cells=[c1, c2, c3]) for (reg, name) in gr_extra_regions: crc.add_cell(openmc.Cell(fill=moder, region=reg, name=f'crc_moderator_{name}')) - return crc diff --git a/examples/msbr/core_elements.py b/examples/msbr/core_elements.py index dc75c3e58..7404eea25 100644 --- a/examples/msbr/core_elements.py +++ b/examples/msbr/core_elements.py @@ -32,8 +32,7 @@ def zoneIA(gr_sq_neg, gr_round_4, moder, fuel, - hast, - optimized): + hast): """Create universe for Zone IA element. Based on specification in Robertson, 1971 Fig 3.4 (p. 17) @@ -56,11 +55,6 @@ def zoneIA(gr_sq_neg, Graphite material hast : openmc.Material Hastelloy-N material. - optimized : bool - Flag indicating whether or not to construct 'optimized' geometry - with cell regions consiting only of :class:`openmc.Intersection` - objects. This will speed up any calculations by around 50%, and is thus - optimized. Returns ------- @@ -85,25 +79,17 @@ def zoneIA(gr_sq_neg, ia1 = (c1, c2, c3) # I-A main (lower 2) + #c4 = c1.clone(clone_materials=False, clone_region=False) c4 = c1.clone(clone_materials=False) c4.name = 'ia_fuel_inner_main' - if optimized: - s2 = s2.clone() - c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg), - name='ia_moderator_main_core') - iam = [c4, c5] - for (reg, name) in inter_elem_channel: - iam.append(openmc.Cell(fill=fuel, region=reg, - name=f'ia_fuel_outer_main_{name}')) - else: - c5 = openmc.Cell(fill=moder, region=(+s2 & - gr_sq_neg & - inter_elem_channel), - name='ia_moderator_main') - c6 = openmc.Cell(fill=fuel, region=(~gr_sq_neg & inter_elem_channel), - name='ia_fuel_outer_main') - iam = [c4, c5, c6] + c5 = openmc.Cell(fill=moder, region=(+s2 & + gr_sq_neg & + inter_elem_channel), + name='ia_moderator_main') + c6 = openmc.Cell(fill=fuel, region=(~gr_sq_neg & inter_elem_channel), + name='ia_fuel_outer_main') + iam = [c4, c5, c6] for (reg, name) in gr_extra_regions: iam.append(openmc.Cell(fill=moder, region=reg, @@ -111,18 +97,20 @@ def zoneIA(gr_sq_neg, # I-A 2 (upper 1) + #c7 = c1.clone(clone_materials=False, clone_region=False) + #c8 = c2.clone(clone_materials=False, clone_region=False) + #c9 = c3.clone(clone_materials=False, clone_region=False) c7 = c1.clone(clone_materials=False) - c7.name = 'ia_fuel_inner_2' c8 = c2.clone(clone_materials=False) - c8.name = 'ia_moderator_2' c9 = c3.clone(clone_materials=False) + c7.name = 'ia_fuel_inner_2' + c8.name = 'ia_moderator_2' c9.name = 'ia_fuel_outer_2' + ia2 = (c7, c8, c9) # I-A 3 (upper 2) - if optimized: - s2 = s2.clone() - s3 = s3.clone() + #c10 = c1.clone(clone_materials=False, clone_region=False) c10 = c1.clone(clone_materials=False) c10.name = 'ia_fuel_inner_3' c11 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='ia_moderator_3') @@ -130,8 +118,6 @@ def zoneIA(gr_sq_neg, ia3 = (c10, c11, c12) # I-A 4 (upper 3) - if optimized: - s2 = s2.clone() c13 = openmc.Cell(fill=hast, region=(-s2), name='ia_hast') c14 = openmc.Cell(fill=moder, region=(+s2 & -gr_round_4), @@ -151,8 +137,7 @@ def zoneIIA(gr_sq_neg, inter_elem_channel, gr_round_4, moder, - fuel, - optimized): + fuel): """Create universe for Zone IIA element. Based on specification in Robertson, 1971 Fig 3.5 (p. 18) @@ -175,11 +160,6 @@ def zoneIIA(gr_sq_neg, Graphite material hast : openmc.Material Hastelloy-N material. - optimized : bool - Flag indicating whether or not to construct 'optimized' geometry - with cell regions consiting only of :class:`openmc.Intersection` - objects. This will speed up any calculations by around 50%, and is thus - optimized. Returns ------- @@ -202,60 +182,34 @@ def zoneIIA(gr_sq_neg, # II-A main (lower 1) c1 = openmc.Cell(fill=fuel, region=(-s1), name='iia_fuel_inner_main') + c2 = openmc.Cell(fill=moder, region=(+s1 & + gr_sq_neg & + inter_elem_channel), + name='iia_moderator_main') + c3 = openmc.Cell(fill=fuel, region=(~gr_sq_neg & inter_elem_channel), + name='iia_fuel_outer_main') + iiam = [c1, c2, c3] + # II-A 2 (upper 1) c4 = openmc.Cell(fill=fuel, region=(-s2), name='iia_fuel_inner_2') - if optimized: - # II-A main (lower 1) - c2 = openmc.Cell(fill=moder, region=(+s1 & gr_sq_neg), - name='iia_moderator_main_core') - iiam = [c1, c2] - - # II-A 2 (upper 1) - gr_sq_neg = gr_sq_neg.clone() - c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg), - name='iia_moderator_2_core') - iia2 = [c4, c5] - - for (reg, name) in gr_extra_regions: - iiam.append(openmc.Cell(fill=moder, region=reg, - name=f'iia_moderator_main_{name}')) - iia2.append(openmc.Cell(fill=moder, region=(reg), - name=f'iia_moderator_main_{name}')) - for (reg, name) in inter_elem_channel: - iiam.append(openmc.Cell(fill=fuel, region=reg, - name=f'iia_fuel_outer_main_{name}')) - iia2.append(openmc.Cell(fill=fuel, region=(reg), - name=f'iia_fuel_outer_2_{name}')) - - else: - # II-A main (lower 1) - c2 = openmc.Cell(fill=moder, region=(+s1 & - gr_sq_neg & - inter_elem_channel), - name='iia_moderator_main') - c3 = openmc.Cell(fill=fuel, region=(~gr_sq_neg & inter_elem_channel), - name='iia_fuel_outer_main') - iiam = [c1, c2, c3] - - # II-A 2 (upper 1) - c5 = openmc.Cell(fill=moder, region=(+s2 & - gr_sq_neg & - inter_elem_channel), - name='iia_moderator_2') - c6 = c3.clone(clone_materials=False) - c6.name = 'iia_fuel_outer_2' - iia2 = [c4, c5, c6] - - for (reg, name) in gr_extra_regions: - iiam.append(openmc.Cell(fill=moder, region=reg, - name=f'iia_moderator_main_{name}')) - iia2.append(openmc.Cell(fill=moder, region=reg, - name=f'iia_moderator_2_{name}')) + c5 = openmc.Cell(fill=moder, region=(+s2 & + gr_sq_neg & + inter_elem_channel), + name='iia_moderator_2') + #c6 = c3.clone(clone_materials=False, clone_region=False) + c6 = c3.clone(clone_materials=False) + c6.name = 'iia_fuel_outer_2' + iia2 = [c4, c5, c6] + + for (reg, name) in gr_extra_regions: + iiam.append(openmc.Cell(fill=moder, region=reg, + name=f'iia_moderator_main_{name}')) + iia2.append(openmc.Cell(fill=moder, region=reg, + name=f'iia_moderator_2_{name}')) # II-A 3 (upper 2) - if optimized: - s2 = s2.clone() + #c7 = c4.clone(clone_materials=False, clone_region=False) c7 = c4.clone(clone_materials=False) c7.name = 'iia_fuel_inner_3' c8 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='iia_moderator_3') diff --git a/examples/msbr/openmc_msbr_model.py b/examples/msbr/openmc_msbr_model.py index 7fe097a02..1ccc5704e 100644 --- a/examples/msbr/openmc_msbr_model.py +++ b/examples/msbr/openmc_msbr_model.py @@ -37,32 +37,26 @@ mat = openmc.Materials(materials=[fuel, moder, hast]) mat.export_to_xml() +colormap = {moder: 'purple', + hast: 'blue', + fuel: 'yellow'} + def parse_arguments(): """Parses arguments from command line. Returns ------- - optimized : bool - Flag indicating whether or not to construct 'optimized' geometry - with cell regions consiting only of :class:`openmc.Intersection` - objects. This will speed up any calculations by around 50%, and is thus - optimized. deplete : bool Flag indicated whether or not to run a depletion simulation. """ parser = argparse.ArgumentParser() - parser.add_argument('--optimized', - type=bool, - default=False, - help='flag to generate model \ - with only simple regions') parser.add_argument('--deplete', type=bool, default=False, help='flag for running depletion') args = parser.parse_args() - return bool(args.optimized), bool(args.deplete) + return bool(args.deplete) def shared_elem_geometry(elem_type, gr_sq_d, @@ -72,8 +66,7 @@ def shared_elem_geometry(elem_type, l2, l3, r_es, - es_name, - optimized): + es_name): """Creates surfaces and regions for lattice elements. Parameters @@ -97,11 +90,6 @@ def shared_elem_geometry(elem_type, Radius of extra cylindrical surface used for element es_name : str Name of extra cylindrical surface. - optimized : bool - Flag indicating whether or not to construct 'optimized' geometry - with cell regions consiting only of :class:`openmc.Intersection` - objects. This will speed up any calculations by around 50%, and is thus - optimized. Returns ------- @@ -127,16 +115,6 @@ def shared_elem_geometry(elem_type, ru_t = openmc.ZCylinder(-l3, l1, r_rib, name='rib_ru_tip') lb_t = openmc.ZCylinder(l3, -l1, r_rib, name='rib_lb_tip') - if optimized: - # Split the graphite square region into component surfaces - (gr_minx, gr_maxx, gr_miny, gr_maxy, - gr_cyl_lb, gr_cyl_minx, gr_cyl_miny, - gr_cyl_ul, gr_cyl_maxy, gr_cyl_br, - gr_cyl_maxx, gr_cyl_ru) = list(gr_sq_neg.get_surfaces().values()) - - # The 'core' graphite square region - gr_sq_neg = +gr_minx & -gr_maxx & +gr_cyl_miny & -gr_cyl_maxy - # Graphite element rib tip regions rib_ul_t = -ul_t rib_br_t = -br_t @@ -150,49 +128,14 @@ def shared_elem_geometry(elem_type, lb = openmc.ZCylinder(-l2, -l1, r_rib, name='rib_lb') ru = openmc.ZCylinder(l2, l1, r_rib, name='rib_ru') - if optimized: - # Graphite element rib regions. 'fill' regions fill in the gap between - # the rounded corner and the 'main' rib. - rib_ul = -ul & +gr_maxy - rib_ul_fill = (-ul & +gr_cyl_ul & -gr_maxy & - -gr_cyl_minx & +gr_cyl_maxy) - rib_br = -br & -gr_miny - rib_br_fill = (-br & +gr_cyl_br & +gr_miny & - +gr_cyl_maxx & -gr_cyl_miny) - rib_lb = -lb & -gr_minx - rib_lb_fill = (-lb & +gr_cyl_lb & +gr_minx & - -gr_cyl_minx & -gr_cyl_miny) - rib_ru = -ru & +gr_maxx - rib_ru_fill = (-ru & +gr_cyl_ru & -gr_maxx & - +gr_cyl_maxx & +gr_cyl_maxy) - - # inter-element fuel channel regions - iec_r = (+gr_cyl_miny & -gr_cyl_maxy & +gr_maxx & - +lb_t & +ru & +gr_cyl_ru) - iec_ru = (+gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy) & +ru & +br_t - iec_u = (+gr_cyl_minx & -gr_cyl_maxx & +gr_maxy & - +br_t & +ul & +gr_cyl_ul) - iec_ul = (+gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy) & +ul & +ru_t - iec_l = (+gr_cyl_miny & -gr_cyl_maxy & -gr_minx & - +ru_t & +lb & +gr_cyl_lb) - iec_lb = (+gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny) & +lb & +ul_t - iec_b = (+gr_cyl_minx & -gr_cyl_maxx & -gr_miny & - +ul_t & +br & +gr_cyl_br) - iec_br = (+gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny) & +br & +lb_t - - inter_elem_channel = [[iec_r, 'outer_r'], [iec_ru, 'outer_ru'], - [iec_u, 'outer_u'], [iec_ul, 'outer_ul'], - [iec_l, 'outer_l'], [iec_lb, 'outer_lb'], - [iec_b, 'outer_b'], [iec_br, 'outer_br']] - else: - # Graphite element rib regions. - rib_ul = -ul - rib_br = -br - rib_lb = -lb - rib_ru = -ru - - # inter-element fuel channel region - inter_elem_channel = +ul & +br & +lb & +ru + # Graphite element rib regions. + rib_ul = -ul + rib_br = -br + rib_lb = -lb + rib_ru = -ru + + # inter-element fuel channel region + inter_elem_channel = +ul & +br & +lb & +ru elif elem_type == 'cr': # Parameters for control rod element @@ -210,94 +153,12 @@ def shared_elem_geometry(elem_type, ru = openmc.model.hexagonal_prism(origin=(l2, l1), edge_length=e_d, orientation='y',corner_radius=r_c) - if optimized: - # Split base rib region into component surfaces - (ul_u, ul_b, ul_ur, ul_br, ul_bl, ul_ul, - ul_cyl_bl_in, ul_cyl_bl_out, - ul_cyl_ul_in, ul_cyl_ul_out, - ul_cyl_br_in, ul_cyl_br_out, - ul_cyl_ur_in, ul_cyl_ur_out, - ul_cyl_l_in, ul_cyl_l_out, - ul_cyl_r_in, ul_cyl_r_out)= list(ul.get_surfaces().values()) - (br_u, br_b, br_ur, br_br, br_bl, br_ul, - br_cyl_bl_in, br_cyl_bl_out, - br_cyl_ul_in, br_cyl_ul_out, - br_cyl_br_in, br_cyl_br_out, - br_cyl_ur_in, br_cyl_ur_out, - br_cyl_l_in, br_cyl_l_out, - br_cyl_r_in, br_cyl_r_out)= list(br.get_surfaces().values()) - (lb_r, lb_l, lb_ur, lb_ul, lb_br, lb_bl, - lb_cyl_lb_in, lb_cyl_lb_out, - lb_cyl_lu_in, lb_cyl_lu_out, - lb_cyl_rb_in, lb_cyl_rb_out, - lb_cyl_ru_in, lb_cyl_ru_out, - lb_cyl_b_in, lb_cyl_b_out, - lb_cyl_u_in, lb_cyl_u_out)= list(lb.get_surfaces().values()) - (ru_r, ru_l, ru_ur, ru_ul, ru_br, ru_bl, - ru_cyl_lb_in, ru_cyl_lb_out, - ru_cyl_lu_in, ru_cyl_lu_out, - ru_cyl_rb_in, ru_cyl_rb_out, - ru_cyl_ru_in, ru_cyl_ru_out, - ru_cyl_b_in, ru_cyl_b_out, - ru_cyl_u_in, ru_cyl_u_out)= list(ru.get_surfaces().values()) - - # Graphite element rib regions. 'fill' regions fill in the gap - # between the rounded element corner and the 'main' rib. - rib_ul = -ul_ul & -ul_ur & +gr_maxy - rib_ul_fill = (-ul_ul & +ul_bl & +ul_cyl_l_out & +gr_cyl_ul & - -gr_maxy & -gr_cyl_minx & +gr_cyl_maxy) - rib_lb = +lb_bl & -lb_ul & -gr_minx - rib_lb_fill = (+lb_bl & +lb_br & +lb_cyl_b_out & +gr_cyl_lb & - +gr_minx & -gr_cyl_miny & -gr_cyl_minx) - rib_br = +br_br & +br_bl & -gr_miny - rib_br_fill = (+br_br & -br_ur & +br_cyl_r_out & +gr_cyl_br & - +gr_miny & +gr_cyl_maxx & -gr_cyl_miny) - rib_ru = +ru_br & -ru_ur & +gr_maxx - rib_ru_fill = (-ru_ur & -ru_ul & +ru_cyl_u_out & +gr_cyl_ru & - -gr_maxx & +gr_cyl_maxy & +gr_cyl_maxx) - - # Inter-element channel regions. 'fill' regions fill in the gap - # between the rounded element corner and the 'main' rib - iec_r = +gr_cyl_miny & +gr_maxx & +lb_t & -ru_br - iec_ru_main = +gr_cyl_ru & (+ru_ur) & +br_t - iec_ru_fill1 = +gr_cyl_ru & +gr_cyl_maxx & (+ru_ul & -ru_ur) & +br_t - iec_ru_fill2 = +gr_cyl_ru & ((-ru_cyl_u_out)) & -ru_ul & -ru_ur - iec_u = -gr_cyl_maxx & +gr_maxy & +br_t & +ul_ur - iec_ul_main = +gr_cyl_ul & (+ul_ul) & +ru_t - iec_ul_fill1 = +gr_cyl_ul & +gr_cyl_maxy & (-ul_bl & -ul_ul) & +ru_t - iec_ul_fill2 = +gr_cyl_ul & ((-ul_cyl_l_out)) & +ul_bl & -ul_ul - iec_l = -gr_cyl_maxy & -gr_minx & +ru_t & +lb_ul - iec_lb_main = +gr_cyl_lb & (-lb_bl) & +ul_t - iec_lb_fill1 = +gr_cyl_lb & -gr_cyl_minx & (-lb_br & +lb_bl) & +ul_t - iec_lb_fill2 = +gr_cyl_lb & ((-lb_cyl_b_out)) & +lb_br & +lb_bl - iec_b = +gr_cyl_minx & -gr_miny & +ul_t & -br_bl - iec_br_main = +gr_cyl_br & (-br_br) & +lb_t - iec_br_fill1 = +gr_cyl_br & -gr_cyl_miny & (+br_ur & +br_br) & +lb_t - iec_br_fill2 = +gr_cyl_br & ((-br_cyl_r_out)) & -br_ur & +br_br - inter_elem_channel = [[iec_r, 'outer_r'], - [iec_ru_main, 'outer_ru_main'], - [iec_ru_fill1, 'outer_ru_fill1'], - [iec_ru_fill2, 'outer_ru_fill2'], - [iec_u, 'outer_u'], - [iec_ul_main, 'outer_ul_main'], - [iec_ul_fill1, 'outer_ul_fill1'], - [iec_ul_fill2, 'outer_ul_fill2'], - [iec_l, 'outer_l'], - [iec_lb_main, 'outer_lb_main'], - [iec_lb_fill1, 'outer_lb_fill1'], - [iec_lb_fill2, 'outer_lb_fill2'], - [iec_b, 'outer_b'], - [iec_br_main, 'outer_br_main'], - [iec_br_fill1, 'outer_br_fill1'], - [iec_br_fill2, 'outer_br_fill2']] - - else: - rib_ul = ul - rib_lb = br - rib_br = lb - rib_ru = ru - - inter_elem_channel = ~ul & ~br & ~lb & ~ru + rib_ul = ul + rib_lb = br + rib_br = lb + rib_ru = ru + + inter_elem_channel = ~ul & ~br & ~lb & ~ru ribs = [[rib_ul, 'rib_ul'], [rib_br, 'rib_br'], @@ -308,40 +169,14 @@ def shared_elem_geometry(elem_type, [rib_ru_t, 'rib_ru_t'], [rib_lb_t, 'rib_lb_t']] - if optimized: - ribs += [[rib_ul_fill, 'rib_ul_fill'], - [rib_br_fill, 'rib_br_fill'], - [rib_ru_fill, 'rib_ru_fill'], - [rib_lb_fill, 'rib_lb_fill']] - - # Rectangular slabs regions that line up with rounded corners - slab_u = -gr_maxy & +gr_cyl_maxy & -gr_cyl_maxx & +gr_cyl_minx - slab_b = +gr_miny & -gr_cyl_miny & -gr_cyl_maxx & +gr_cyl_minx - slabs = [[slab_u, 'slab_u'], - [slab_b, 'slab_b']] - - # Rounded corner regions - corner_ul = -gr_cyl_ul & -gr_cyl_minx & +gr_cyl_maxy - corner_br = -gr_cyl_br & +gr_cyl_maxx & -gr_cyl_miny - corner_lb = -gr_cyl_lb & -gr_cyl_minx & -gr_cyl_miny - corner_ru = -gr_cyl_ru & +gr_cyl_maxx & +gr_cyl_maxy - corners = [[corner_ul, 'corner_ul'], - [corner_br, 'corner_br'], - [corner_ru, 'corner_ru'], - [corner_lb, 'corner_lb']] - - gr_extra_regions = slabs + corners + ribs - else: - gr_extra_regions = ribs - inter_elem_channel = inter_elem_channel & +ul_t & +br_t & +ru_t & +lb_t - + gr_extra_regions = ribs + inter_elem_channel = inter_elem_channel & +ul_t & +br_t & +ru_t & +lb_t extra_surf = openmc.ZCylinder(r=r_es, name=es_name) - return gr_sq_neg, gr_extra_regions, inter_elem_channel, extra_surf -def cr_lattice(cr_boundary, core_base, core_top, optimized): +def cr_lattice(cr_boundary, core_base, core_top): """Creates the control rod lattice. Parameters @@ -352,11 +187,6 @@ def cr_lattice(cr_boundary, core_base, core_top, optimized): Core bottom bounding surface. core_top : openmc.ZPlane Core top bounding surface. - optimized : bool - Flag indicating whether or not to construct 'optimized' geometry - with cell regions consiting only of :class:`openmc.Intersection` - objects. This will speed up any calculations by around 50%, and is thus - optimized. Returns ------- @@ -375,40 +205,20 @@ def cr_lattice(cr_boundary, core_base, core_top, optimized): 6.505, 8.03646, 5.08, - 'cr_fuel_hole', - optimized) + 'cr_fuel_hole') f = cr.control_rod(gr_sq_neg, gr_extra_regions, inter_elem_channel, fuel_hole, fuel, - moder, - optimized) - if optimized: - # call a second time to have unique surfaces - (gr_sq_neg, - gr_extra_regions, - inter_elem_channel, - fuel_hole) = shared_elem_geometry('cr', - 7.23645, - 0.99, - 0.8, - 5.8801, - 6.505, - 8.03646, - 5.08, - 'cr_fuel_hole', - optimized) - - + moder) e = cr.control_rod_channel(gr_sq_neg, gr_extra_regions, inter_elem_channel, fuel_hole, fuel, - moder, - optimized) + moder) cl = openmc.RectLattice() cl.pitch = np.array([15.24, 15.24]) @@ -421,7 +231,7 @@ def cr_lattice(cr_boundary, core_base, core_top, optimized): return c1 -def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): +def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): """Creates the core lattice. Parameters @@ -434,11 +244,6 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): Core bottom bounding surface. core_top : openmc.ZPlane Core top bounding surface. - optimized : bool - Flag indicating whether or not to construct 'optimized' geometry - with cell regions consiting only of :class:`openmc.Intersection` - objects. This will speed up any calculations by around 50%, and is thus - optimized. Returns ------- @@ -457,16 +262,14 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): 4.53898, 5.62102, 2.2225, - 'gr_round_4', - optimized) + 'gr_round_4') l = ce.zoneIA(gr_sq_neg, gr_extra_regions, inter_elem_channel, gr_round_4, moder, fuel, - hast, - optimized) + hast) (gr_sq_neg, gr_extra_regions, inter_elem_channel, @@ -478,16 +281,14 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): 4.53898, 5.62102, 2.2225, - 'gr_round_4', - optimized) + 'gr_round_4') z = ce.zoneIIA(gr_sq_neg, gr_extra_regions, inter_elem_channel, gr_round_4, moder, - fuel, - optimized) + fuel) v = ce.void_cell() # tres, uno, dos, quatro t, u, d, q = ce.graphite_triangles(fuel, moder) @@ -543,91 +344,26 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top, optimized): [v, v, v, v, v, v, v, v, v, v, v, t, z, z, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, l, z, z, q, v, v, v, v, v, v, v, v, v, v, v], [v, v, v, v, v, v, v, v, v, v, v, v, v, t, z, z, z, z, l, l, l, l, l, l, l, l, l, z, z, z, z, q, v, v, v, v, v, v, v, v, v, v, v, v, v], [v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, t, z, z, z, z, z, z, z, z, z, q, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v]] - if optimized: - # Octagon subsurfaces - (oct1_maxy, oct1_miny, - oct1_maxx, oct1_minx, - oct1_ur, oct1_br, - oct1_bl, oct1_ul) = list((-s1).get_surfaces().values()) - (oct2_maxy, oct2_miny, - oct2_maxx, oct2_minx, - oct2_ur, oct2_br, - oct2_bl, oct2_ul) = list((-s2).get_surfaces().values()) - (oct3_maxy, oct3_miny, - oct3_maxx, oct3_minx, - oct3_ur, oct3_br, - oct3_bl, oct3_ul) = list((-s3).get_surfaces().values()) - (cb_minx, - cb_maxx, - cb_miny, - cb_maxy) = list(cr_boundary.get_surfaces().values()) - - # Smaller octader subcells - c1_ur = (-oct3_ur & +oct2_ur & -oct2_maxx & -oct2_maxy) - c1_ul = (+oct3_ul & -oct2_ul & +oct2_minx & -oct2_maxy) - c1_bl = (+oct3_bl & -oct2_bl & +oct2_minx & +oct2_miny) - c1_br = (-oct3_br & +oct2_br & -oct2_maxx & +oct2_miny) - c1 = [[c1_ur, 'smaller_octader_ur'], - [c1_ul, 'smaller_octader_ul'], - [c1_bl, 'smaller_octader_bl'], - [c1_br, 'smaller_octader_br']] - - # Smallest octader subcells - c2_r = (+cb_maxx & +cb_miny & -cb_maxy & -oct3_maxx) - c2_ur = (+cb_maxx & +cb_maxy & -oct3_maxx & -oct3_maxy & +oct3_ur) - c2_u = (+cb_maxy & +cb_minx & -cb_maxx & -oct3_maxy) - c2_ul = (-cb_minx & +cb_maxy & +oct3_minx & -oct3_maxy & -oct3_ul) - c2_l = (-cb_minx & +cb_miny & -cb_maxy & +oct3_minx) - c2_bl = (-cb_minx & -cb_miny & +oct3_minx & +oct3_miny & -oct3_bl) - c2_b = (-cb_miny & +cb_minx & -cb_maxx & +oct3_miny) - c2_br = (+cb_maxx & -cb_miny & -oct3_maxx & +oct3_miny & +oct3_br) - c2 = [[c2_r, 'smallest_octader_r'], - [c2_ur, 'smallest_octader_ur'], - [c2_u, 'smallest_octader_u'], - [c2_ul, 'smallest_octader_ul'], - [c2_l, 'smallest_octader_l'], - [c2_bl, 'smallest_octader_bl'], - [c2_b, 'smallest_octader_b'], - [c2_br, 'smallest_octader_br']] - - # Base octader subcells - c3_ur = (-oct2_ur & +oct1_ur & -oct1_maxx & -oct1_maxy) - c3_ul = (+oct2_ul & -oct1_ul & +oct1_minx & -oct1_maxy) - c3_bl = (+oct2_bl & -oct1_bl & +oct1_minx & +oct1_miny) - c3_br = (-oct2_br & +oct1_br & -oct1_maxx & +oct1_miny) - c3 = [[c3_ur, 'base_octader_ur'], - [c3_ul, 'base_octader_ul'], - [c3_bl, 'base_octader_bl'], - [c3_br, 'base_octader_br']] - - regs = c1 + c2 + c3 - main_cells = [] - for reg, name in regs: - main_cells.append(openmc.Cell(fill=main, region=(reg & - +core_base & - -core_top), - name=f'main_lattice_{name}')) - - else: - c1 = openmc.Cell(fill=main, region=(+core_base & - -core_top & - +zone_i_boundary[2] & - -zone_i_boundary[1] & - ~cr_boundary), name='main_lattice_smaller_octader') - c2 = openmc.Cell(fill=main, region=(+core_base & - -core_top & - -zone_i_boundary[2] & - ~cr_boundary), - name='main_lattice_insite_smallest_octader') - c3 = openmc.Cell(fill=main, region=(+core_base & - -core_top & - -zone_i_boundary[0] & - +zone_i_boundary[1] & - +zone_i_boundary[2] & - ~cr_boundary), - name=('main_lattice_inside_base_octader' - '_deducted_smaller_smallest')) - main_cells = [c1, c2, c3] + + c1 = openmc.Cell(fill=main, region=(+core_base & + -core_top & + +zone_i_boundary[2] & + -zone_i_boundary[1] & + ~cr_boundary), name='main_lattice_smaller_octader') + c2 = openmc.Cell(fill=main, region=(+core_base & + -core_top & + -zone_i_boundary[2] & + ~cr_boundary), + name='main_lattice_insite_smallest_octader') + c3 = openmc.Cell(fill=main, region=(+core_base & + -core_top & + -zone_i_boundary[0] & + +zone_i_boundary[1] & + +zone_i_boundary[2] & + ~cr_boundary), + name=('main_lattice_inside_base_octader' + '_deducted_smaller_smallest')) + main_cells = [c1, c2, c3] return main_cells def plot_geometry(name, @@ -648,7 +384,8 @@ def plot_geometry(name, return plot -optimized, deplete = parse_arguments() +deplete = parse_arguments() + (zone_bounds, core_bounds, reflector_bounds, @@ -657,13 +394,16 @@ def plot_geometry(name, (cr_boundary, zone_i_boundary, zone_ii_boundary) = zone_bounds + (annulus_boundary, lower_plenum_boundary, core_base, core_top) = core_bounds + (radial_reflector_boundary, bottom_reflector_boundary, top_reflector_boundary) = reflector_bounds + (radial_vessel_boundary, bottom_vessel_boundary, top_vessel_boundary) = vessel_bounds @@ -671,24 +411,25 @@ def plot_geometry(name, main = main_lattice(zone_i_boundary, cr_boundary, core_base, - core_top, - optimized) + core_top) + cr = cr_lattice(cr_boundary, core_base, - core_top, - optimized) + core_top) + iib = rg.zoneIIB(zone_i_boundary, zone_ii_boundary, core_base, core_top, fuel, - moder, - optimized) + moder) + a = rg.annulus(zone_ii_boundary, annulus_boundary, core_base, core_top, fuel) + lp = rg.lower_plenum(core_base, lower_plenum_boundary, annulus_boundary, @@ -729,13 +470,6 @@ def plot_geometry(name, 'range': (800, 1000)} settings.export_to_xml() -# Plots -detail_pixels = (1000, 1000) -full_pixels = (10000, 10000) - -colormap = {moder: 'purple', - hast: 'blue', - fuel: 'yellow'} ## Slice plots plots = openmc.Plots() diff --git a/examples/msbr/root_geometry.py b/examples/msbr/root_geometry.py index 29208ac7b..199707587 100644 --- a/examples/msbr/root_geometry.py +++ b/examples/msbr/root_geometry.py @@ -72,8 +72,7 @@ def zoneIIB(zone_i_boundary, core_base, core_top, fuel, - moder, - optimized): + moder): """ Creates Zone IIB graphite slab elements. Parameters @@ -90,11 +89,6 @@ def zoneIIB(zone_i_boundary, Fuel salt material moder : openmc.Material Graphite material - optimized : bool - Flag indicating whether or not to construct 'optimized' geometry - with cell regions consiting only of :class:`openmc.Intersection` - objects. This will speed up any calculations by around 50%, and is thus - optimized. Returns ------- @@ -136,21 +130,6 @@ def zoneIIB(zone_i_boundary, pos = np.round(pos, 3) r1_big, r2_big = big_radii[i] t1_big = np.round(pos - large_half_w, 3) - if i == 0: - t1_big_0 = t1_big - elif i > 0 and optimized: - cpos = t2_small + (adjacent_angular_offset/2) - cpos = np.round(cpos, 3) - s6 = openmc.model.CylinderSector(r1_small, - r2_small, - t2_small, - t1_big, - name=('inter_element_fuel' - f'_channel_{cpos}')) - elem_cells.append(openmc.Cell(fill=fuel, region=-s6, - name=('inter_element_fuel' - f'_channel_{cpos}'))) - t2_big = np.round(pos + large_half_w, 3) s1 = openmc.model.CylinderSector(r1_big, r2_big, @@ -168,30 +147,10 @@ def zoneIIB(zone_i_boundary, t1_small = np.round(t2_big + adjacent_angular_offset, 3) r1_small, r2_small = small_radii - if optimized: - # Inter element fuel channel - s3 = openmc.model.CylinderSector(r1_small, - r2_small, - t2_big, - t1_small) - cpos = t2_big + (adjacent_angular_offset / 2) - cpos = np.round(cpos, 3) - elem_cells.append(openmc.Cell(fill=fuel, region=-s3, - name=('inter_element_fuel' - f'_channel_{cpos}'))) - - s4 = openmc.model.CylinderSector(r1_small, - r1_big, - t1_big, - t2_big) - elem_cells.append(openmc.Cell(fill=fuel, region=-s4, - name=('inter_element_fuel' - f'_channel_{pos}'))) + if isinstance(zone_iib_reg, openmc.Region): + zone_iib_reg = zone_iib_reg & +s1 else: - if isinstance(zone_iib_reg, openmc.Region): - zone_iib_reg = zone_iib_reg & +s1 - else: - zone_iib_reg = +s1 + zone_iib_reg = +s1 for i in range(0, small_elems_per_octant): t2_small = np.round(t1_small + small_angular_width, 3) @@ -209,113 +168,19 @@ def zoneIIB(zone_i_boundary, t1_small = np.round(t2_small + adjacent_angular_offset, 3) - if optimized: - if i < small_elems_per_octant - 1: - # inter-element fuel channel - cpos = t2_small + (adjacent_angular_offset/2) - cpos = np.round(cpos, 3) - s6 = openmc.model.CylinderSector(r1_small, - r2_small, - t2_small, - t1_small, - name=('inter_element_fuel' - f'_channel_{cpos}')) - elem_cells.append(openmc.Cell(fill=fuel, region=-s6, - name=('inter_element_fuel' - f'_channel_{cpos}'))) - else: - zone_iib_reg = zone_iib_reg & +s5 - - # gotta do this again to fill the last gap with - # fuel material... gonna rewrite this algorithm to make it less verbose, - # but it works for now. - if optimized: - cpos = t2_small + (adjacent_angular_offset/2) - cpos = np.round(cpos, 3) - s6 = openmc.model.CylinderSector(r1_small, - r2_small, - t2_small, - 360 + t1_big_0, - name=('inter_element_fuel' - f'_channel_{cpos}')) - elem_cells.append(openmc.Cell(fill=fuel, region=-s6, - name=('inter_element_fuel' - f'_channel_{cpos}'))) + zone_iib_reg = zone_iib_reg & +s5 #universe_id=10 iib = openmc.Universe(name='zone_iib', cells=elem_cells) s1, s2, s3 = zone_i_boundary - if optimized: - (oct1_maxy, oct1_miny, - oct1_maxx, oct1_minx, - oct1_ur, oct1_br, - oct1_bl, oct1_ul) = list((-s1).get_surfaces().values()) - (oct2_maxy, oct2_miny, - oct2_maxx, oct2_minx, - oct2_ur, oct2_br, - oct2_bl, oct2_ul) = list((-s2).get_surfaces().values()) - (oct3_maxy, oct3_miny, - oct3_maxx, oct3_minx, - oct3_ur, oct3_br, - oct3_bl, oct3_ul) = list((-s3).get_surfaces().values()) - - cap_r =(+oct3_maxx & -zone_ii_boundary) - - c23_urr = (+oct2_maxx & -oct3_maxx & -oct3_ur & +oct2_ur) - c12_urr = (+oct1_maxx & -oct3_maxx & -oct2_ur & +oct1_ur) - cap_ur = (-oct3_maxy & -oct3_maxx & -oct1_ur & -zone_ii_boundary) - c12_uru = (+oct1_maxy & -oct3_maxy & -oct2_ur & +oct1_ur) - c23_uru = (+oct2_maxy & -oct3_maxy & -oct3_ur & +oct2_ur) - - cap_u = (+oct3_maxy & -zone_ii_boundary) - - c23_ulu = (+oct2_maxy & -oct3_maxy & +oct3_ul & -oct2_ul) - c12_ulu = (+oct1_maxy & -oct3_maxy & +oct2_ul & -oct1_ul) - cap_ul = (-oct3_maxy & +oct3_minx & +oct1_ul & -zone_ii_boundary) - c12_ull = (-oct1_minx & +oct3_minx & +oct2_ul & -oct1_ul) - c23_ull = (-oct2_minx & +oct3_minx & +oct3_ul & -oct2_ul) - - cap_l = (-oct3_minx & -zone_ii_boundary) - - c23_bll = (-oct2_minx & +oct3_minx & +oct3_bl & -oct2_bl) - c12_bll = (-oct1_minx & +oct3_minx & +oct2_bl & -oct1_bl) - cap_bl = (+oct3_minx & +oct3_miny & +oct1_bl & -zone_ii_boundary) - c12_blb = (-oct1_miny & +oct3_miny & +oct2_bl & -oct1_bl) - c23_blb = (-oct2_miny & +oct3_miny & +oct3_bl & -oct2_bl) - - cap_b = (-oct3_miny & -zone_ii_boundary) - - c23_brb = (-oct2_miny & +oct3_miny & -oct3_br & +oct2_br) - c12_brb = (-oct1_miny & +oct3_miny & -oct2_br & +oct1_br) - cap_rb = (-oct3_maxx & +oct3_miny & -oct1_br & -zone_ii_boundary) - c12_brr = (+oct1_maxx & -oct3_maxx & -oct2_br & +oct1_br) - c23_brr = (+oct2_maxx & -oct3_maxx & -oct3_br & +oct2_br) - - regs = ([cap_r, 'cap_r'], [c23_urr, '23_urr'], [c12_urr, '12_urr'], - [cap_ur, 'cap_ur'], [c12_uru, '12_uru'], [c23_uru, '23_uru'], - [cap_u, 'cap_u'], [c23_ulu, '23_ulu'], [c12_ulu, '12_ulu'], - [cap_ul, 'cap_ul'], [c12_ull, '12_ull'], [c23_ull, '23_ull'], - [cap_l, 'cap_l'], [c23_bll, '23_bll'], [c12_bll, '12_bll'], - [cap_bl, 'cap_bl'], [c12_blb, '12_blb'], [c23_blb, '23_blb'], - [cap_b, 'cap_b'], [c23_brb, '23_brb'], [c12_brb, '12_brb'], - [cap_rb, 'cap_rb'], [c12_brr, '12_brr'], [c23_brr, '23_brr']) - - iib_cells = [] - for reg, name in regs: - iib_cells.append(openmc.Cell(fill=iib, region=(reg & - +core_base & - -core_top), - name=f'zone_iib_{name}')) - - - else: - iib.add_cell(openmc.Cell(fill=fuel, region=zone_iib_reg, - name='zone_iib_fuel')) - iib_cells = [openmc.Cell(fill=iib, region=(+s1 & +s2 & +s3 & - -zone_ii_boundary & - +core_base & - -core_top), - name='zone_iib')] + + iib.add_cell(openmc.Cell(fill=fuel, region=zone_iib_reg, + name='zone_iib_fuel')) + iib_cells = [openmc.Cell(fill=iib, region=(+s1 & +s2 & +s3 & + -zone_ii_boundary & + +core_base & + -core_top), + name='zone_iib')] return iib_cells def annulus(zone_ii_boundary, annulus_boundary, core_base, core_top, fuel): From bfeee006ce384575eae74341bcb1bdd97dcb8f60 Mon Sep 17 00:00:00 2001 From: yardasol Date: Tue, 1 Nov 2022 14:15:48 -0500 Subject: [PATCH 37/62] add diluted material serpent file; consistency changes --- .../msbr_saltproc_prepr_comp_endfb71-base.ini | 8 + ...br_saltproc_prepr_comp_endfb71-diluted.ini | 424 ++ ...br_saltproc_prepr_comp_endfb71_diluted.ini | 3822 ----------------- examples/msbr/msbr_endfb71.serpent | 6 +- 4 files changed, 435 insertions(+), 3825 deletions(-) create mode 100644 examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71-base.ini create mode 100644 examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71-diluted.ini delete mode 100644 examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71_diluted.ini diff --git a/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71-base.ini b/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71-base.ini new file mode 100644 index 000000000..2026abf86 --- /dev/null +++ b/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71-base.ini @@ -0,0 +1,8 @@ +% Material compositions (after 0.000000 days) + +mat fuel -3.350000000E+00 rgb 255 255 0 burn 1 fix 82c 900 vol 4.87100E+07 + 3007.82c -0.07874746738790851 + 4009.82c -0.02255668791383211 + 9019.82c -0.45400301217928424 + 90232.82c -0.43557913048233615 + 92233.82c -0.00911370203663893 diff --git a/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71-diluted.ini b/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71-diluted.ini new file mode 100644 index 000000000..7e7abec21 --- /dev/null +++ b/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71-diluted.ini @@ -0,0 +1,424 @@ +% Material compositions (after 0.000000 days) + +mat fuel -3.350000000E+00 rgb 255 255 0 burn 1 fix 82c 900 vol 4.87100E+07 + 1001.82c -4.995620414657497e-22 + 1002.82c -9.983566232286466e-22 + 1003.82c -1.495005272019709e-21 + 2003.82c -1.4949953785081194e-21 + 2004.82c -1.9840236041432936e-21 + 3006.82c -2.9815959846007347e-21 + 3007.82c -0.07874746738790851 + 4009.82c -0.02255668791383211 + 5010.82c -4.963245622834658e-21 + 5011.82c -5.457128755397568e-21 + 7014.82c -6.941089983561896e-21 + 7015.82c -7.435303533896105e-21 + 8016.82c -7.928412119986839e-21 + 8017.82c -8.426185788040688e-21 + 9019.82c -0.45400301217928424 + 11022.82c -1.0902275400925155e-20 + 11023.82c -1.1395644787479889e-20 + 12024.82c -1.188898470616782e-20 + 12025.82c -1.2385062210375638e-20 + 12026.82c -1.2879137520842412e-20 + 13027.82c -1.3374298095204667e-20 + 14028.82c -1.3867695370389118e-20 + 14029.82c -1.4363164603403635e-20 + 14030.82c -1.4857497403378133e-20 + 15031.82c -1.5353176673453676e-20 + 16032.82c -1.5848021863762338e-20 + 16033.82c -1.6343401678066608e-20 + 16034.82c -1.6837304537907988e-20 + 16036.82c -1.782828138295043e-20 + 17035.82c -1.7333476427652064e-20 + 17037.82c -1.8323380714649152e-20 + 18036.82c -1.7828511581250735e-20 + 18038.82c -1.881749246428263e-20 + 18040.82c -1.9808686087882246e-20 + 19039.82c -1.931365875310774e-20 + 19040.82c -1.9809486637345362e-20 + 19041.82c -2.0304092866743586e-20 + 20040.82c -1.9808789061736476e-20 + 20042.82c -2.0798186300898823e-20 + 20043.82c -2.129394326406309e-20 + 20044.82c -2.1787998304056852e-20 + 20046.82c -2.277847587605717e-20 + 20048.82c -2.376926497063901e-20 + 21045.82c -2.2283892748950852e-20 + 22046.82c -2.277794989064182e-20 + 22047.82c -2.3273202393933882e-20 + 22048.82c -2.376699376362089e-20 + 22049.82c -2.4262639244140392e-20 + 22050.82c -2.4756796443967346e-20 + 23050.82c -2.4757971216371063e-20 + 23051.82c -2.5252068840021753e-20 + 24050.82c -2.4757418825906122e-20 + 24052.82c -2.5746041106852005e-20 + 24053.82c -2.624179478214892e-20 + 24054.82c -2.6736601247298627e-20 + 25055.82c -2.7231870734683406e-20 + 26054.82c -2.6736963241841166e-20 + 26056.82c -2.772601367518877e-20 + 26057.82c -2.8221923266677474e-20 + 26058.82c -2.8716556516783773e-20 + 27058.82c -2.871778466684404e-20 + 27458.82c -2.871778466684404e-20 + 27059.82c -2.9212200125107435e-20 + 28058.82c -2.871758161067439e-20 + 28059.82c -2.921277111014014e-20 + 28060.82c -2.970668962507295e-20 + 28061.82c -3.020250660904141e-20 + 28062.82c -3.0696846574241974e-20 + 28064.82c -3.168802555050902e-20 + 29063.82c -3.1193150654296517e-20 + 29065.82c -3.218362119056802e-20 + 30064.82c -3.1688608192030295e-20 + 30065.82c -3.2184340449347343e-20 + 30066.82c -3.267843418188411e-20 + 30067.82c -3.317465965301057e-20 + 30068.82c -3.3669211216986845e-20 + 30070.82c -3.4660813219298886e-20 + 31069.82c -3.4165255992713175e-20 + 31071.82c -3.515619086230209e-20 + 32070.82c -3.466028260271442e-20 + 32072.82c -3.565057214964559e-20 + 32073.82c -3.6146941047727335e-20 + 32074.82c -3.6641493601583164e-20 + 32076.82c -3.7632971719749844e-20 + 33074.82c -3.66428571450594e-20 + 33075.82c -3.71373835060181e-20 + 34074.82c -3.6642137084264486e-20 + 34076.82c -3.763188665809316e-20 + 34077.82c -3.8127917161114435e-20 + 34078.82c -3.862230925584101e-20 + 34079.82c -3.9118582426571775e-20 + 34080.82c -3.9613285533326065e-20 + 34082.82c -4.060474024929262e-20 + 35079.82c -3.911850229936575e-20 + 35081.82c -4.010885305574967e-20 + 36078.82c -3.862382460827718e-20 + 36080.82c -3.961321428529504e-20 + 36082.82c -4.0603144951169635e-20 + 36083.82c -4.109914815036837e-20 + 36084.82c -4.1593528407002866e-20 + 36085.82c -4.20897220331389e-20 + 36086.82c -4.258445529244238e-20 + 37085.82c -4.20893564546078e-20 + 37086.82c -4.258473129719862e-20 + 37087.82c -4.307942972172841e-20 + 38084.82c -4.159448080862473e-20 + 38086.82c -4.258378616957062e-20 + 38087.82c -4.307927951241285e-20 + 38088.82c -4.3573344290828806e-20 + 38089.82c -4.406993893418537e-20 + 38090.82c -4.456576106731199e-20 + 39089.82c -4.406914108085279e-20 + 39090.82c -4.4565470554762975e-20 + 39091.82c -4.5061229829794174e-20 + 40090.82c -4.456425809258359e-20 + 40091.82c -4.506040806469903e-20 + 40092.82c -4.5555791529006965e-20 + 40093.82c -4.605218629878305e-20 + 40094.82c -4.6547791223981704e-20 + 40095.82c -4.704433094097375e-20 + 40096.82c -4.7540131897022584e-20 + 41093.82c -4.60521379770962e-20 + 41094.82c -4.654827028603279e-20 + 41095.82c -4.70437315845158e-20 + 42092.82c -4.555666979704189e-20 + 42094.82c -4.654718206290799e-20 + 42095.82c -4.7043239037400424e-20 + 42096.82c -4.7538346025919135e-20 + 42097.82c -4.803469460048974e-20 + 42098.82c -4.853007390403203e-20 + 42099.82c -4.9026899108335756e-20 + 42100.82c -4.952246378405015e-20 + 43099.82c -4.902617659043871e-20 + 44096.82c -4.753979051646159e-20 + 44098.82c -4.8530015961132245e-20 + 44099.82c -4.9026018269191536e-20 + 44100.82c -4.952084908379216e-20 + 44101.82c -5.0017207816896396e-20 + 44102.82c -5.051228005454575e-20 + 44103.82c -5.1008942101220304e-20 + 44104.82c -5.1504184507939146e-20 + 44105.82c -5.200101787862531e-20 + 44106.82c -5.249649432271166e-20 + 45103.82c -5.100853526171359e-20 + 45105.82c -5.1999997901673445e-20 + 46102.82c -5.051292035741869e-20 + 46104.82c -5.15034930500536e-20 + 46105.82c -5.1999696368101857e-20 + 46106.82c -5.249458697797077e-20 + 46107.82c -5.299108705417767e-20 + 46108.82c -5.348615756486639e-20 + 46110.82c -5.447815917367435e-20 + 47107.82c -5.2991068945379536e-20 + 47109.82c -5.3982269123012857e-20 + 47510.82c -5.447862405075637e-20 + 47111.82c -5.497390391626245e-20 + 48106.82c -5.2496063868356674e-20 + 48108.82c -5.3486302196332096e-20 + 48110.82c -5.44770858170832e-20 + 48111.82c -5.497335219596136e-20 + 48112.82c -5.546833168729912e-20 + 48113.82c -5.596483000036051e-20 + 48114.82c -5.645999625327068e-20 + 48515.82c -5.695670682436658e-20 + 48116.82c -5.745205594476113e-20 + 49113.82c -5.596465767655569e-20 + 49115.82c -5.695593423055947e-20 + 50112.82c -5.546935328761381e-20 + 50113.82c -5.59652105602255e-20 + 50114.82c -5.645970634892508e-20 + 50115.82c -5.695566949800338e-20 + 50116.82c -5.745055877993673e-20 + 50117.82c -5.79468424517183e-20 + 50118.82c -5.844185786770349e-20 + 50119.82c -5.893838611656663e-20 + 50120.82c -5.943351953739752e-20 + 50122.82c -6.042550184677606e-20 + 50123.82c -6.09223160246047e-20 + 50124.82c -6.141777688837346e-20 + 50125.82c -6.191470423317873e-20 + 50126.82c -6.241032428464907e-20 + 51121.82c -5.993000000883408e-20 + 51123.82c -6.09215668339891e-20 + 51124.82c -6.141810359175182e-20 + 51125.82c -6.191344844183472e-20 + 51126.82c -6.241012313636446e-20 + 52120.82c -5.943444033902537e-20 + 52122.82c -6.042530329240218e-20 + 52123.82c -6.092159445891528e-20 + 52124.82c -6.14165576918407e-20 + 52125.82c -6.191304045135138e-20 + 52126.82c -6.240816906851537e-20 + 52527.82c -6.290480153033196e-20 + 52128.82c -6.34001059321616e-20 + 52529.82c -6.389684760936752e-20 + 52130.82c -6.439234565384517e-20 + 52132.82c -6.53848642137446e-20 + 53127.82c -6.290442784658575e-20 + 53129.82c -6.389604816885699e-20 + 53130.82c -6.439256745427896e-20 + 53131.82c -6.488798119194897e-20 + 53135.82c -6.687266392792673e-20 + 54123.82c -6.092368227847724e-20 + 54124.82c -6.141808168205412e-20 + 54126.82c -6.240865777656356e-20 + 54128.82c -6.339964479054897e-20 + 54129.82c -6.389594763036422e-20 + 54130.82c -6.439100066776045e-20 + 54131.82c -6.488746456701713e-20 + 54132.82c -6.538268735655868e-20 + 54133.82c -6.587924091304344e-20 + 54134.82c -6.637466759300451e-20 + 54135.82c -6.687126227383968e-20 + 54136.82c -6.736693705915611e-20 + 55133.82c -6.587901349899627e-20 + 55134.82c -6.637532460635299e-20 + 55135.82c -6.687064047532018e-20 + 55136.82c -6.736698519694447e-20 + 55137.82c -6.786255839642895e-20 + 56130.82c -6.439239429376071e-20 + 56132.82c -6.538313645109916e-20 + 56133.82c -6.58792887836585e-20 + 56134.82c -6.637422909470089e-20 + 56135.82c -6.687049740723962e-20 + 56136.82c -6.736562919033286e-20 + 56137.82c -6.786193279998394e-20 + 56138.82c -6.835732853493205e-20 + 56140.82c -6.93513517256378e-20 + 57138.82c -6.835825576259825e-20 + 57139.82c -6.885356282773428e-20 + 57140.82c -6.935079483436847e-20 + 58136.82c -6.736689490723934e-20 + 58138.82c -6.835769609104126e-20 + 58139.82c -6.885371094831475e-20 + 58140.82c -6.934879387983568e-20 + 58141.82c -6.984588371607179e-20 + 58142.82c -7.034204579872168e-20 + 58143.82c -7.083928641339215e-20 + 58144.82c -7.133559487280866e-20 + 59141.82c -6.984557362452796e-20 + 59142.82c -7.034244262096451e-20 + 59143.82c -7.083850865357364e-20 + 60142.82c -7.034129186986939e-20 + 60143.82c -7.083801164332579e-20 + 60144.82c -7.133383025759666e-20 + 60145.82c -7.183074599548168e-20 + 60146.82c -7.232669860583728e-20 + 60147.82c -7.282386078407743e-20 + 60148.82c -7.331993720571292e-20 + 60150.82c -7.431328775169723e-20 + 61147.82c -7.282338424802845e-20 + 61148.82c -7.332022577369633e-20 + 61548.82c -7.332022577369633e-20 + 61149.82c -7.38163355647318e-20 + 61151.82c -7.480912734031137e-20 + 62144.82c -7.133477875156362e-20 + 62147.82c -7.282326499951337e-20 + 62148.82c -7.331891110112405e-20 + 62149.82c -7.381576538865424e-20 + 62150.82c -7.431149371024589e-20 + 62151.82c -7.480849398047446e-20 + 62152.82c -7.530407813455996e-20 + 62153.82c -7.580093369401351e-20 + 62154.82c -7.629667261083575e-20 + 63151.82c -7.48084532323328e-20 + 63152.82c -7.53050755460251e-20 + 63153.82c -7.580050397326981e-20 + 63154.82c -7.629705418338174e-20 + 63155.82c -7.679269493111705e-20 + 63156.82c -7.728930178345577e-20 + 63157.82c -7.778531695003562e-20 + 64152.82c -7.530410776749921e-20 + 64153.82c -7.580076188522364e-20 + 64154.82c -7.629600702414886e-20 + 64155.82c -7.679256094494598e-20 + 64156.82c -7.728799678662156e-20 + 64157.82c -7.778459081315478e-20 + 64158.82c -7.828034538415143e-20 + 64160.82c -7.927317420313564e-20 + 65159.82c -7.877664446870964e-20 + 65160.82c -7.927323033480862e-20 + 66156.82c -7.728906422871954e-20 + 66158.82c -7.828049555190396e-20 + 66160.82c -7.927225307832226e-20 + 66161.82c -7.976879681084478e-20 + 66162.82c -8.026441323688741e-20 + 66163.82c -8.076105455309487e-20 + 66164.82c -8.125695773837258e-20 + 67165.82c -8.17532098757737e-20 + 67566.82c -8.224986575565229e-20 + 68162.82c -8.026539607377641e-20 + 68164.82c -8.125697108216709e-20 + 68166.82c -8.224887879269548e-20 + 68167.82c -8.274543206811294e-20 + 68168.82c -8.324127501795557e-20 + 68170.82c -8.423417550778866e-20 + 69168.82c -8.324216807866736e-20 + 69169.82c -8.373787144855281e-20 + 69170.82c -8.423434197509525e-20 + 71175.82c -8.671522243632657e-20 + 71176.82c -8.721185472614103e-20 + 72174.82c -8.621917786482176e-20 + 72176.82c -8.721121930773138e-20 + 72177.82c -8.770780496068653e-20 + 72178.82c -8.820372526835259e-20 + 72179.82c -8.870045812289138e-20 + 72180.82c -8.919650517429978e-20 + 73180.82c -8.919695561311848e-20 + 73181.82c -8.969290209435004e-20 + 73182.82c -9.018965413183268e-20 + 74180.82c -8.919658139353864e-20 + 74182.82c -9.018868770206104e-20 + 74183.82c -9.068537168073907e-20 + 74184.82c -9.118140630487133e-20 + 74186.82c -9.217447407493162e-20 + 75185.82c -9.16780934053628e-20 + 75187.82c -9.267084492749264e-20 + 77191.82c -9.465597687200316e-20 + 77193.82c -9.564849955995315e-20 + 79197.82c -9.763304017956228e-20 + 80196.82c -9.713699172090901e-20 + 80198.82c -9.812882215639312e-20 + 80199.82c -9.862525483900235e-20 + 80200.82c -9.912096091680573e-20 + 80201.82c -9.961762374219877e-20 + 80202.82c -1.0011347584929474e-19 + 80204.82c -1.0110625537802692e-19 + 81203.82c -1.006100020311585e-19 + 81205.82c -1.0160240125331985e-19 + 82204.82c -1.0110603201470369e-19 + 82206.82c -1.0209810333690715e-19 + 82207.82c -1.0259449626621115e-19 + 82208.82c -1.0309055390144942e-19 + 83209.82c -1.0358809433264449e-19 + 88223.82c -1.1054654720789197e-19 + 88224.82c -1.110430779981234e-19 + 88225.82c -1.1154044668496747e-19 + 88226.82c -1.1203702116819505e-19 + 89225.82c -1.1154025737013036e-19 + 89226.82c -1.120373625026575e-19 + 89227.82c -1.1253386546671532e-19 + 90227.82c -1.1253384165012396e-19 + 90228.82c -1.130300390849071e-19 + 90229.82c -1.135272201432286e-19 + 90230.82c -1.1402358299248699e-19 + 90231.82c -1.1452083785755672e-19 + 90232.82c -0.43557913048233615 + 90233.82c -1.1551482036158553e-19 + 90234.82c -1.1601150477299508e-19 + 91229.82c -1.1352738581099802e-19 + 91230.82c -1.140242806325347e-19 + 91231.82c -1.145206295327692e-19 + 91232.82c -1.1501765501047656e-19 + 91233.82c -1.1551415931684476e-19 + 92230.82c -1.1402398337770137e-19 + 92231.82c -1.1452083260281802e-19 + 92232.82c -1.1501694348683516e-19 + 92233.82c -0.00911370203663893 + 92234.82c -1.1601019146503893e-19 + 92235.82c -1.1650735082432813e-19 + 92236.82c -1.1700384606266598e-19 + 92237.82c -1.1750109680563338e-19 + 92238.82c -1.1799780053084715e-19 + 92239.82c -1.184952212302359e-19 + 92240.82c -1.1899204479234085e-19 + 92241.82c -1.194895807494984e-19 + 93234.82c -1.1601115455291372e-19 + 93235.82c -1.1650741694897652e-19 + 93236.82c -1.1700434283201173e-19 + 93237.82c -1.1750082087360873e-19 + 93238.82c -1.1799787868771203e-19 + 93239.82c -1.1849454985248098e-19 + 94236.82c -1.17004089222589e-19 + 94237.82c -1.1750093797730216e-19 + 94238.82c -1.1799719146197055e-19 + 94239.82c -1.1849416523693517e-19 + 94240.82c -1.1899066648890287e-19 + 94241.82c -1.194878556338018e-19 + 94242.82c -1.1998447643466866e-19 + 94243.82c -1.2048177619823637e-19 + 94244.82c -1.2097855114322723e-19 + 94246.82c -1.2197289174820622e-19 + 95240.82c -1.1899140338756393e-19 + 95241.82c -1.1948784457560299e-19 + 95242.82c -1.199848761452581e-19 + 95642.82c -1.199848761452581e-19 + 95243.82c -1.204814677944942e-19 + 95244.82c -1.2097859007865504e-19 + 95644.82c -1.2097859007865504e-19 + 96240.82c -1.1899151733772019e-19 + 96241.82c -1.1948825295668476e-19 + 96242.82c -1.1998452264127486e-19 + 96243.82c -1.204814714937787e-19 + 96244.82c -1.2097783055799936e-19 + 96245.82c -1.2147487224157663e-19 + 96246.82c -1.2197141355764302e-19 + 96247.82c -1.2246864866923743e-19 + 96248.82c -1.2296532154262668e-19 + 96249.82c -1.2346279173748035e-19 + 96250.82c -1.2395966644071876e-19 + 97245.82c -1.2147530287735169e-19 + 97246.82c -1.2197213194401973e-19 + 97247.82c -1.2246862547819837e-19 + 97248.82c -1.2296568730684077e-19 + 97249.82c -1.2346231051623278e-19 + 97250.82c -1.2395964535980357e-19 + 98246.82c -1.219721975700107e-19 + 98248.82c -1.2296523919822922e-19 + 98249.82c -1.2346224474351956e-19 + 98250.82c -1.2395869837370522e-19 + 98251.82c -1.2445595926777096e-19 + 98252.82c -1.2495265342034882e-19 + 98253.82c -1.2545007519190052e-19 + 98254.82c -1.2594684396860835e-19 + 99251.82c -1.2445616002198736e-19 + 99252.82c -1.2495332391430038e-19 + 99253.82c -1.2544992032407894e-19 + 99254.82c -1.2594718942864292e-19 + 99654.82c -1.2594718942864292e-19 + 99255.82c -1.2644398951964776e-19 + 100255.82c -1.2644383540179498e-19 diff --git a/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71_diluted.ini b/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71_diluted.ini deleted file mode 100644 index 2360b43b8..000000000 --- a/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71_diluted.ini +++ /dev/null @@ -1,3822 +0,0 @@ -% Material compositions (after 0.000000 days) - -mat fuel -3.350000000E+00 rgb 255 255 0 burn 1 fix 82c 900 vol 4.87100E+07 - 1001.82c -4.995620414657497e-22 - 1002.82c -9.983566232286466e-22 - 1003.82c -1.495005272019709e-21 - 10040 -0.0 - 10050 -0.0 - 10060 -0.0 - 10070 -0.0 - 2003.82c -1.4949953785081194e-21 - 2004.82c -1.9840236041432936e-21 - 20050 -0.0 - 20060 -0.0 - 20070 -0.0 - 20080 -0.0 - 20090 -0.0 - 20100 -0.0 - 30040 -0.0 - 30050 -0.0 - 3006.82c -2.9815959846007347e-21 - 3007.82c -0.07874746738790851 - 30080 -0.0 - 30090 -0.0 - 30100 -0.0 - 30110 -0.0 - 30120 -0.0 - 40050 -0.0 - 40060 -0.0 - 40080 -0.0 - 4009.82c -0.02255668791383211 - 40100 -0.0 - 40110 -0.0 - 40120 -0.0 - 40130 -0.0 - 40140 -0.0 - 40150 -0.0 - 40160 -0.0 - 50060 -0.0 - 50070 -0.0 - 50080 -0.0 - 50090 -0.0 - 5010.82c -4.963245622834658e-21 - 5011.82c -5.457128755397568e-21 - 50120 -0.0 - 50130 -0.0 - 50140 -0.0 - 50150 -0.0 - 50160 -0.0 - 50170 -0.0 - 50180 -0.0 - 50190 -0.0 - 60080 -0.0 - 60090 -0.0 - 60100 -0.0 - 60110 -0.0 - 60120 -0.0 - 60130 -0.0 - 60140 -0.0 - 60150 -0.0 - 60160 -0.0 - 60170 -0.0 - 60180 -0.0 - 60190 -0.0 - 60200 -0.0 - 60210 -0.0 - 60220 -0.0 - 70100 -0.0 - 70110 -0.0 - 70120 -0.0 - 70130 -0.0 - 7014.82c -6.941089983561896e-21 - 7015.82c -7.435303533896105e-21 - 70160 -0.0 - 70170 -0.0 - 70180 -0.0 - 70190 -0.0 - 70200 -0.0 - 70210 -0.0 - 70220 -0.0 - 70230 -0.0 - 70240 -0.0 - 70250 -0.0 - 80120 -0.0 - 80130 -0.0 - 80140 -0.0 - 80150 -0.0 - 8016.82c -7.928412119986839e-21 - 8017.82c -8.426185788040688e-21 - 80180 -0.0 - 80190 -0.0 - 80200 -0.0 - 80210 -0.0 - 80220 -0.0 - 80230 -0.0 - 80240 -0.0 - 80250 -0.0 - 80260 -0.0 - 80270 -0.0 - 80280 -0.0 - 90140 -0.0 - 90150 -0.0 - 90160 -0.0 - 90170 -0.0 - 90180 -0.0 - 9019.82c -0.45400301217928424 - 90200 -0.0 - 90210 -0.0 - 90220 -0.0 - 90230 -0.0 - 90240 -0.0 - 90250 -0.0 - 90260 -0.0 - 90270 -0.0 - 90280 -0.0 - 90290 -0.0 - 90300 -0.0 - 90310 -0.0 - 100160 -0.0 - 100170 -0.0 - 100180 -0.0 - 100190 -0.0 - 100200 -0.0 - 100210 -0.0 - 100220 -0.0 - 100230 -0.0 - 100240 -0.0 - 100250 -0.0 - 100260 -0.0 - 100270 -0.0 - 100280 -0.0 - 100290 -0.0 - 100300 -0.0 - 100310 -0.0 - 100320 -0.0 - 100330 -0.0 - 100340 -0.0 - 110180 -0.0 - 110190 -0.0 - 110200 -0.0 - 110210 -0.0 - 11022.82c -1.0902275400925155e-20 - 11023.82c -1.1395644787479889e-20 - 110240 -0.0 - 114241 -0.0 - 110250 -0.0 - 110260 -0.0 - 110270 -0.0 - 110280 -0.0 - 110290 -0.0 - 110300 -0.0 - 110310 -0.0 - 110320 -0.0 - 110330 -0.0 - 110340 -0.0 - 110350 -0.0 - 110360 -0.0 - 110370 -0.0 - 120190 -0.0 - 120200 -0.0 - 120210 -0.0 - 120220 -0.0 - 120230 -0.0 - 12024.82c -1.188898470616782e-20 - 12025.82c -1.2385062210375638e-20 - 12026.82c -1.2879137520842412e-20 - 120270 -0.0 - 120280 -0.0 - 120290 -0.0 - 120300 -0.0 - 120310 -0.0 - 120320 -0.0 - 120330 -0.0 - 120340 -0.0 - 120350 -0.0 - 120360 -0.0 - 120370 -0.0 - 120380 -0.0 - 120390 -0.0 - 120400 -0.0 - 130210 -0.0 - 130220 -0.0 - 130230 -0.0 - 130240 -0.0 - 134241 -0.0 - 130250 -0.0 - 130260 -0.0 - 134261 -0.0 - 13027.82c -1.3374298095204667e-20 - 130280 -0.0 - 130290 -0.0 - 130300 -0.0 - 130310 -0.0 - 130320 -0.0 - 130330 -0.0 - 130340 -0.0 - 130350 -0.0 - 130360 -0.0 - 130370 -0.0 - 130380 -0.0 - 130390 -0.0 - 130400 -0.0 - 130410 -0.0 - 130420 -0.0 - 140220 -0.0 - 140230 -0.0 - 140240 -0.0 - 140250 -0.0 - 140260 -0.0 - 140270 -0.0 - 14028.82c -1.3867695370389118e-20 - 14029.82c -1.4363164603403635e-20 - 14030.82c -1.4857497403378133e-20 - 140310 -0.0 - 140320 -0.0 - 140330 -0.0 - 140340 -0.0 - 140350 -0.0 - 140360 -0.0 - 140370 -0.0 - 140380 -0.0 - 140390 -0.0 - 140400 -0.0 - 140410 -0.0 - 140420 -0.0 - 140430 -0.0 - 140440 -0.0 - 150240 -0.0 - 150250 -0.0 - 150260 -0.0 - 150270 -0.0 - 150280 -0.0 - 150290 -0.0 - 150300 -0.0 - 15031.82c -1.5353176673453676e-20 - 150320 -0.0 - 150330 -0.0 - 150340 -0.0 - 150350 -0.0 - 150360 -0.0 - 150370 -0.0 - 150380 -0.0 - 150390 -0.0 - 150400 -0.0 - 150410 -0.0 - 150420 -0.0 - 150430 -0.0 - 150440 -0.0 - 150450 -0.0 - 150460 -0.0 - 160260 -0.0 - 160270 -0.0 - 160280 -0.0 - 160290 -0.0 - 160300 -0.0 - 160310 -0.0 - 16032.82c -1.5848021863762338e-20 - 16033.82c -1.6343401678066608e-20 - 16034.82c -1.6837304537907988e-20 - 160350 -0.0 - 16036.82c -1.782828138295043e-20 - 160370 -0.0 - 160380 -0.0 - 160390 -0.0 - 160400 -0.0 - 160410 -0.0 - 160420 -0.0 - 160430 -0.0 - 160440 -0.0 - 160450 -0.0 - 160460 -0.0 - 160480 -0.0 - 160490 -0.0 - 170280 -0.0 - 170290 -0.0 - 170300 -0.0 - 170310 -0.0 - 170320 -0.0 - 170330 -0.0 - 170340 -0.0 - 174341 -0.0 - 17035.82c -1.7333476427652064e-20 - 170360 -0.0 - 17037.82c -1.8323380714649152e-20 - 170380 -0.0 - 174381 -0.0 - 170390 -0.0 - 170400 -0.0 - 170410 -0.0 - 170420 -0.0 - 170430 -0.0 - 170440 -0.0 - 170450 -0.0 - 170460 -0.0 - 170470 -0.0 - 170480 -0.0 - 170490 -0.0 - 170500 -0.0 - 170510 -0.0 - 180300 -0.0 - 180310 -0.0 - 180320 -0.0 - 180330 -0.0 - 180340 -0.0 - 180350 -0.0 - 18036.82c -1.7828511581250735e-20 - 180370 -0.0 - 18038.82c -1.881749246428263e-20 - 180390 -0.0 - 18040.82c -1.9808686087882246e-20 - 180410 -0.0 - 180420 -0.0 - 180430 -0.0 - 180440 -0.0 - 180450 -0.0 - 180460 -0.0 - 180470 -0.0 - 180480 -0.0 - 180490 -0.0 - 180500 -0.0 - 180510 -0.0 - 180520 -0.0 - 180530 -0.0 - 190320 -0.0 - 190330 -0.0 - 190340 -0.0 - 190350 -0.0 - 190360 -0.0 - 190370 -0.0 - 190380 -0.0 - 194381 -0.0 - 19039.82c -1.931365875310774e-20 - 19040.82c -1.9809486637345362e-20 - 19041.82c -2.0304092866743586e-20 - 190420 -0.0 - 190430 -0.0 - 190440 -0.0 - 190450 -0.0 - 190460 -0.0 - 190470 -0.0 - 190480 -0.0 - 190490 -0.0 - 190500 -0.0 - 190510 -0.0 - 190520 -0.0 - 190530 -0.0 - 190540 -0.0 - 190550 -0.0 - 200340 -0.0 - 200350 -0.0 - 200360 -0.0 - 200370 -0.0 - 200380 -0.0 - 200390 -0.0 - 20040.82c -1.9808789061736476e-20 - 200410 -0.0 - 20042.82c -2.0798186300898823e-20 - 20043.82c -2.129394326406309e-20 - 20044.82c -2.1787998304056852e-20 - 200450 -0.0 - 20046.82c -2.277847587605717e-20 - 200470 -0.0 - 20048.82c -2.376926497063901e-20 - 200490 -0.0 - 200500 -0.0 - 200510 -0.0 - 200520 -0.0 - 200530 -0.0 - 200540 -0.0 - 200550 -0.0 - 200560 -0.0 - 200570 -0.0 - 210360 -0.0 - 210370 -0.0 - 210380 -0.0 - 210390 -0.0 - 210400 -0.0 - 210410 -0.0 - 210420 -0.0 - 214421 -0.0 - 210430 -0.0 - 210440 -0.0 - 214441 -0.0 - 21045.82c -2.2283892748950852e-20 - 214451 -0.0 - 210460 -0.0 - 214461 -0.0 - 210470 -0.0 - 210480 -0.0 - 210490 -0.0 - 210500 -0.0 - 214501 -0.0 - 210510 -0.0 - 210520 -0.0 - 210530 -0.0 - 210540 -0.0 - 210550 -0.0 - 210560 -0.0 - 210570 -0.0 - 210580 -0.0 - 210590 -0.0 - 210600 -0.0 - 220380 -0.0 - 220390 -0.0 - 220400 -0.0 - 220410 -0.0 - 220420 -0.0 - 220430 -0.0 - 220440 -0.0 - 220450 -0.0 - 22046.82c -2.277794989064182e-20 - 22047.82c -2.3273202393933882e-20 - 22048.82c -2.376699376362089e-20 - 22049.82c -2.4262639244140392e-20 - 22050.82c -2.4756796443967346e-20 - 220510 -0.0 - 220520 -0.0 - 220530 -0.0 - 220540 -0.0 - 220550 -0.0 - 220560 -0.0 - 220570 -0.0 - 220580 -0.0 - 220590 -0.0 - 220600 -0.0 - 220610 -0.0 - 220620 -0.0 - 220630 -0.0 - 230400 -0.0 - 230410 -0.0 - 230420 -0.0 - 230430 -0.0 - 230440 -0.0 - 234441 -0.0 - 230450 -0.0 - 230460 -0.0 - 234461 -0.0 - 230470 -0.0 - 230480 -0.0 - 230490 -0.0 - 23050.82c -2.4757971216371063e-20 - 23051.82c -2.5252068840021753e-20 - 230520 -0.0 - 230530 -0.0 - 230540 -0.0 - 230550 -0.0 - 230560 -0.0 - 230570 -0.0 - 230580 -0.0 - 230590 -0.0 - 230600 -0.0 - 230610 -0.0 - 230620 -0.0 - 230630 -0.0 - 230640 -0.0 - 230650 -0.0 - 240420 -0.0 - 240430 -0.0 - 240440 -0.0 - 240450 -0.0 - 240460 -0.0 - 240470 -0.0 - 240480 -0.0 - 240490 -0.0 - 24050.82c -2.4757418825906122e-20 - 240510 -0.0 - 24052.82c -2.5746041106852005e-20 - 24053.82c -2.624179478214892e-20 - 24054.82c -2.6736601247298627e-20 - 240550 -0.0 - 240560 -0.0 - 240570 -0.0 - 240580 -0.0 - 240590 -0.0 - 240600 -0.0 - 240610 -0.0 - 240620 -0.0 - 240630 -0.0 - 240640 -0.0 - 240650 -0.0 - 240660 -0.0 - 240670 -0.0 - 250440 -0.0 - 250450 -0.0 - 250460 -0.0 - 250470 -0.0 - 250480 -0.0 - 250490 -0.0 - 250500 -0.0 - 254501 -0.0 - 250510 -0.0 - 250520 -0.0 - 254521 -0.0 - 250530 -0.0 - 250540 -0.0 - 25055.82c -2.7231870734683406e-20 - 250560 -0.0 - 250570 -0.0 - 250580 -0.0 - 254581 -0.0 - 250590 -0.0 - 250600 -0.0 - 254601 -0.0 - 250610 -0.0 - 250620 -0.0 - 254621 -0.0 - 250630 -0.0 - 250640 -0.0 - 250650 -0.0 - 250660 -0.0 - 250670 -0.0 - 250680 -0.0 - 250690 -0.0 - 260450 -0.0 - 260460 -0.0 - 260470 -0.0 - 260480 -0.0 - 260490 -0.0 - 260500 -0.0 - 260510 -0.0 - 260520 -0.0 - 264521 -0.0 - 260530 -0.0 - 264531 -0.0 - 26054.82c -2.6736963241841166e-20 - 260550 -0.0 - 26056.82c -2.772601367518877e-20 - 26057.82c -2.8221923266677474e-20 - 26058.82c -2.8716556516783773e-20 - 260590 -0.0 - 260600 -0.0 - 260610 -0.0 - 260620 -0.0 - 260630 -0.0 - 260640 -0.0 - 260650 -0.0 - 264651 -0.0 - 260660 -0.0 - 260670 -0.0 - 260680 -0.0 - 260690 -0.0 - 260700 -0.0 - 260710 -0.0 - 260720 -0.0 - 270490 -0.0 - 270500 -0.0 - 270510 -0.0 - 270520 -0.0 - 270530 -0.0 - 274531 -0.0 - 270540 -0.0 - 274541 -0.0 - 270550 -0.0 - 270560 -0.0 - 270570 -0.0 - 27058.82c -2.871778466684404e-20 - 27458.82c -2.871778466684404e-20 - 27059.82c -2.9212200125107435e-20 - 270600 -0.0 - 274601 -0.0 - 270610 -0.0 - 270620 -0.0 - 274621 -0.0 - 270630 -0.0 - 270640 -0.0 - 270650 -0.0 - 270660 -0.0 - 270670 -0.0 - 270680 -0.0 - 274681 -0.0 - 270690 -0.0 - 270700 -0.0 - 274701 -0.0 - 270710 -0.0 - 270720 -0.0 - 270730 -0.0 - 270740 -0.0 - 270750 -0.0 - 280480 -0.0 - 280490 -0.0 - 280500 -0.0 - 280510 -0.0 - 280520 -0.0 - 280530 -0.0 - 280540 -0.0 - 280550 -0.0 - 280560 -0.0 - 280570 -0.0 - 28058.82c -2.871758161067439e-20 - 28059.82c -2.921277111014014e-20 - 28060.82c -2.970668962507295e-20 - 28061.82c -3.020250660904141e-20 - 28062.82c -3.0696846574241974e-20 - 280630 -0.0 - 28064.82c -3.168802555050902e-20 - 280650 -0.0 - 280660 -0.0 - 280670 -0.0 - 280680 -0.0 - 280690 -0.0 - 284691 -0.0 - 280700 -0.0 - 280710 -0.0 - 280720 -0.0 - 280730 -0.0 - 280740 -0.0 - 280750 -0.0 - 280760 -0.0 - 280770 -0.0 - 280780 -0.0 - 290520 -0.0 - 290530 -0.0 - 290540 -0.0 - 290550 -0.0 - 290560 -0.0 - 290570 -0.0 - 290580 -0.0 - 290590 -0.0 - 290600 -0.0 - 290610 -0.0 - 290620 -0.0 - 29063.82c -3.1193150654296517e-20 - 290640 -0.0 - 29065.82c -3.218362119056802e-20 - 290660 -0.0 - 290670 -0.0 - 290680 -0.0 - 294681 -0.0 - 290690 -0.0 - 290700 -0.0 - 294701 -0.0 - 295702 -0.0 - 290710 -0.0 - 290720 -0.0 - 290730 -0.0 - 290740 -0.0 - 290750 -0.0 - 290760 -0.0 - 294761 -0.0 - 290770 -0.0 - 290780 -0.0 - 290790 -0.0 - 290800 -0.0 - 290810 -0.0 - 300540 -0.0 - 300550 -0.0 - 300560 -0.0 - 300570 -0.0 - 300580 -0.0 - 300590 -0.0 - 300600 -0.0 - 300610 -0.0 - 304611 -0.0 - 305612 -0.0 - 300620 -0.0 - 300630 -0.0 - 30064.82c -3.1688608192030295e-20 - 30065.82c -3.2184340449347343e-20 - 30066.82c -3.267843418188411e-20 - 30067.82c -3.317465965301057e-20 - 30068.82c -3.3669211216986845e-20 - 300690 -0.0 - 304691 -0.0 - 30070.82c -3.4660813219298886e-20 - 300710 -0.0 - 304711 -0.0 - 300720 -0.0 - 300730 -0.0 - 304731 -0.0 - 305732 -0.0 - 300740 -0.0 - 300750 -0.0 - 300760 -0.0 - 300770 -0.0 - 304771 -0.0 - 300780 -0.0 - 300790 -0.0 - 300800 -0.0 - 300810 -0.0 - 300820 -0.0 - 300830 -0.0 - 310560 -0.0 - 310570 -0.0 - 310580 -0.0 - 310590 -0.0 - 310600 -0.0 - 310610 -0.0 - 310620 -0.0 - 310630 -0.0 - 310640 -0.0 - 310650 -0.0 - 310660 -0.0 - 310670 -0.0 - 310680 -0.0 - 31069.82c -3.4165255992713175e-20 - 310700 -0.0 - 31071.82c -3.515619086230209e-20 - 310720 -0.0 - 314721 -0.0 - 310730 -0.0 - 310740 -0.0 - 314741 -0.0 - 310750 -0.0 - 310760 -0.0 - 310770 -0.0 - 310780 -0.0 - 310790 -0.0 - 310800 -0.0 - 310810 -0.0 - 310820 -0.0 - 310830 -0.0 - 310840 -0.0 - 310850 -0.0 - 310860 -0.0 - 320580 -0.0 - 320590 -0.0 - 320600 -0.0 - 320610 -0.0 - 320620 -0.0 - 320630 -0.0 - 320640 -0.0 - 320650 -0.0 - 320660 -0.0 - 320670 -0.0 - 320680 -0.0 - 320690 -0.0 - 32070.82c -3.466028260271442e-20 - 320710 -0.0 - 324711 -0.0 - 32072.82c -3.565057214964559e-20 - 32073.82c -3.6146941047727335e-20 - 324731 -0.0 - 32074.82c -3.6641493601583164e-20 - 320750 -0.0 - 324751 -0.0 - 32076.82c -3.7632971719749844e-20 - 320770 -0.0 - 324771 -0.0 - 320780 -0.0 - 320790 -0.0 - 324791 -0.0 - 320800 -0.0 - 320810 -0.0 - 324811 -0.0 - 320820 -0.0 - 320830 -0.0 - 320840 -0.0 - 320850 -0.0 - 320860 -0.0 - 320870 -0.0 - 320880 -0.0 - 320890 -0.0 - 330600 -0.0 - 330610 -0.0 - 330620 -0.0 - 330630 -0.0 - 330640 -0.0 - 330650 -0.0 - 330660 -0.0 - 330670 -0.0 - 330680 -0.0 - 330690 -0.0 - 330700 -0.0 - 330710 -0.0 - 330720 -0.0 - 330730 -0.0 - 33074.82c -3.66428571450594e-20 - 33075.82c -3.71373835060181e-20 - 334751 -0.0 - 330760 -0.0 - 330770 -0.0 - 330780 -0.0 - 330790 -0.0 - 330800 -0.0 - 330810 -0.0 - 330820 -0.0 - 334821 -0.0 - 330830 -0.0 - 330840 -0.0 - 330850 -0.0 - 330860 -0.0 - 330870 -0.0 - 330880 -0.0 - 330890 -0.0 - 330900 -0.0 - 330910 -0.0 - 330920 -0.0 - 340650 -0.0 - 340660 -0.0 - 340670 -0.0 - 340680 -0.0 - 340690 -0.0 - 340700 -0.0 - 340710 -0.0 - 340720 -0.0 - 340730 -0.0 - 344731 -0.0 - 34074.82c -3.6642137084264486e-20 - 340750 -0.0 - 34076.82c -3.763188665809316e-20 - 34077.82c -3.8127917161114435e-20 - 344771 -0.0 - 34078.82c -3.862230925584101e-20 - 34079.82c -3.9118582426571775e-20 - 344791 -0.0 - 34080.82c -3.9613285533326065e-20 - 340810 -0.0 - 344811 -0.0 - 34082.82c -4.060474024929262e-20 - 340830 -0.0 - 344831 -0.0 - 340840 -0.0 - 340850 -0.0 - 340860 -0.0 - 340870 -0.0 - 340880 -0.0 - 340890 -0.0 - 340900 -0.0 - 340910 -0.0 - 340920 -0.0 - 340930 -0.0 - 340940 -0.0 - 350670 -0.0 - 350680 -0.0 - 350690 -0.0 - 350700 -0.0 - 354701 -0.0 - 350710 -0.0 - 350720 -0.0 - 354721 -0.0 - 350730 -0.0 - 350740 -0.0 - 354741 -0.0 - 350750 -0.0 - 350760 -0.0 - 354761 -0.0 - 350770 -0.0 - 354771 -0.0 - 350780 -0.0 - 35079.82c -3.911850229936575e-20 - 354791 -0.0 - 350800 -0.0 - 354801 -0.0 - 35081.82c -4.010885305574967e-20 - 350820 -0.0 - 354821 -0.0 - 350830 -0.0 - 350840 -0.0 - 354841 -0.0 - 350850 -0.0 - 350860 -0.0 - 350870 -0.0 - 350880 -0.0 - 350890 -0.0 - 350900 -0.0 - 350910 -0.0 - 350920 -0.0 - 350930 -0.0 - 350940 -0.0 - 350950 -0.0 - 350960 -0.0 - 350970 -0.0 - 360690 -0.0 - 360700 -0.0 - 360710 -0.0 - 360720 -0.0 - 360730 -0.0 - 360740 -0.0 - 360750 -0.0 - 360760 -0.0 - 360770 -0.0 - 36078.82c -3.862382460827718e-20 - 360790 -0.0 - 364791 -0.0 - 36080.82c -3.961321428529504e-20 - 360810 -0.0 - 364811 -0.0 - 36082.82c -4.0603144951169635e-20 - 36083.82c -4.109914815036837e-20 - 364831 -0.0 - 36084.82c -4.1593528407002866e-20 - 36085.82c -4.20897220331389e-20 - 364851 -0.0 - 36086.82c -4.258445529244238e-20 - 360870 -0.0 - 360880 -0.0 - 360890 -0.0 - 360900 -0.0 - 360910 -0.0 - 360920 -0.0 - 360930 -0.0 - 360940 -0.0 - 360950 -0.0 - 360960 -0.0 - 360970 -0.0 - 360980 -0.0 - 360990 -0.0 - 361000 -0.0 - 370710 -0.0 - 370720 -0.0 - 370730 -0.0 - 370740 -0.0 - 370750 -0.0 - 370760 -0.0 - 370770 -0.0 - 370780 -0.0 - 374781 -0.0 - 370790 -0.0 - 370800 -0.0 - 370810 -0.0 - 374811 -0.0 - 370820 -0.0 - 374821 -0.0 - 370830 -0.0 - 370840 -0.0 - 374841 -0.0 - 37085.82c -4.20893564546078e-20 - 37086.82c -4.258473129719862e-20 - 374861 -0.0 - 37087.82c -4.307942972172841e-20 - 370880 -0.0 - 370890 -0.0 - 370900 -0.0 - 374901 -0.0 - 370910 -0.0 - 370920 -0.0 - 370930 -0.0 - 370940 -0.0 - 370950 -0.0 - 370960 -0.0 - 370970 -0.0 - 370980 -0.0 - 374981 -0.0 - 370990 -0.0 - 371000 -0.0 - 371010 -0.0 - 371020 -0.0 - 380730 -0.0 - 380740 -0.0 - 380750 -0.0 - 380760 -0.0 - 380770 -0.0 - 380780 -0.0 - 380790 -0.0 - 380800 -0.0 - 380810 -0.0 - 380820 -0.0 - 380830 -0.0 - 384831 -0.0 - 38084.82c -4.159448080862473e-20 - 380850 -0.0 - 384851 -0.0 - 38086.82c -4.258378616957062e-20 - 38087.82c -4.307927951241285e-20 - 384871 -0.0 - 38088.82c -4.3573344290828806e-20 - 38089.82c -4.406993893418537e-20 - 38090.82c -4.456576106731199e-20 - 380910 -0.0 - 380920 -0.0 - 380930 -0.0 - 380940 -0.0 - 380950 -0.0 - 380960 -0.0 - 380970 -0.0 - 380980 -0.0 - 380990 -0.0 - 381000 -0.0 - 381010 -0.0 - 381020 -0.0 - 381030 -0.0 - 381040 -0.0 - 381050 -0.0 - 390760 -0.0 - 390770 -0.0 - 390780 -0.0 - 394781 -0.0 - 390790 -0.0 - 390800 -0.0 - 394801 -0.0 - 390810 -0.0 - 390820 -0.0 - 390830 -0.0 - 394831 -0.0 - 390840 -0.0 - 394841 -0.0 - 390850 -0.0 - 394851 -0.0 - 390860 -0.0 - 394861 -0.0 - 390870 -0.0 - 394871 -0.0 - 390880 -0.0 - 394881 -0.0 - 395882 -0.0 - 39089.82c -4.406914108085279e-20 - 394891 -0.0 - 39090.82c -4.4565470554762975e-20 - 394901 -0.0 - 39091.82c -4.5061229829794174e-20 - 394911 -0.0 - 390920 -0.0 - 390930 -0.0 - 394931 -0.0 - 390940 -0.0 - 390950 -0.0 - 390960 -0.0 - 394961 -0.0 - 390970 -0.0 - 394971 -0.0 - 395972 -0.0 - 390980 -0.0 - 394981 -0.0 - 390990 -0.0 - 391000 -0.0 - 395001 -0.0 - 391010 -0.0 - 391020 -0.0 - 395021 -0.0 - 391030 -0.0 - 391040 -0.0 - 391050 -0.0 - 391060 -0.0 - 391070 -0.0 - 391080 -0.0 - 400780 -0.0 - 400790 -0.0 - 400800 -0.0 - 400810 -0.0 - 400820 -0.0 - 400830 -0.0 - 400840 -0.0 - 400850 -0.0 - 404851 -0.0 - 400860 -0.0 - 400870 -0.0 - 404871 -0.0 - 400880 -0.0 - 400890 -0.0 - 404891 -0.0 - 40090.82c -4.456425809258359e-20 - 404901 -0.0 - 40091.82c -4.506040806469903e-20 - 40092.82c -4.5555791529006965e-20 - 40093.82c -4.605218629878305e-20 - 40094.82c -4.6547791223981704e-20 - 40095.82c -4.704433094097375e-20 - 40096.82c -4.7540131897022584e-20 - 400970 -0.0 - 400980 -0.0 - 400990 -0.0 - 401000 -0.0 - 401010 -0.0 - 401020 -0.0 - 401030 -0.0 - 401040 -0.0 - 401050 -0.0 - 401060 -0.0 - 401070 -0.0 - 401080 -0.0 - 401090 -0.0 - 401100 -0.0 - 410810 -0.0 - 410820 -0.0 - 410830 -0.0 - 410840 -0.0 - 410850 -0.0 - 414851 -0.0 - 410860 -0.0 - 410870 -0.0 - 414871 -0.0 - 410880 -0.0 - 414881 -0.0 - 410890 -0.0 - 414891 -0.0 - 410900 -0.0 - 414901 -0.0 - 415902 -0.0 - 410910 -0.0 - 414911 -0.0 - 410920 -0.0 - 414921 -0.0 - 41093.82c -4.60521379770962e-20 - 414931 -0.0 - 41094.82c -4.654827028603279e-20 - 414941 -0.0 - 41095.82c -4.70437315845158e-20 - 414951 -0.0 - 410960 -0.0 - 410970 -0.0 - 414971 -0.0 - 410980 -0.0 - 414981 -0.0 - 410990 -0.0 - 414991 -0.0 - 411000 -0.0 - 415001 -0.0 - 411010 -0.0 - 411020 -0.0 - 415021 -0.0 - 411030 -0.0 - 411040 -0.0 - 415041 -0.0 - 411050 -0.0 - 411060 -0.0 - 411070 -0.0 - 411080 -0.0 - 411090 -0.0 - 411100 -0.0 - 411110 -0.0 - 411120 -0.0 - 411130 -0.0 - 420830 -0.0 - 420840 -0.0 - 420850 -0.0 - 420860 -0.0 - 420870 -0.0 - 420880 -0.0 - 420890 -0.0 - 424891 -0.0 - 420900 -0.0 - 420910 -0.0 - 424911 -0.0 - 42092.82c -4.555666979704189e-20 - 420930 -0.0 - 424931 -0.0 - 42094.82c -4.654718206290799e-20 - 42095.82c -4.7043239037400424e-20 - 42096.82c -4.7538346025919135e-20 - 42097.82c -4.803469460048974e-20 - 42098.82c -4.853007390403203e-20 - 42099.82c -4.9026899108335756e-20 - 42100.82c -4.952246378405015e-20 - 421010 -0.0 - 421020 -0.0 - 421030 -0.0 - 421040 -0.0 - 421050 -0.0 - 421060 -0.0 - 421070 -0.0 - 421080 -0.0 - 421090 -0.0 - 421100 -0.0 - 421110 -0.0 - 421120 -0.0 - 421130 -0.0 - 421140 -0.0 - 421150 -0.0 - 430850 -0.0 - 430860 -0.0 - 434861 -0.0 - 430870 -0.0 - 430880 -0.0 - 434881 -0.0 - 430890 -0.0 - 434891 -0.0 - 430900 -0.0 - 434901 -0.0 - 430910 -0.0 - 434911 -0.0 - 430920 -0.0 - 430930 -0.0 - 434931 -0.0 - 430940 -0.0 - 434941 -0.0 - 430950 -0.0 - 434951 -0.0 - 430960 -0.0 - 434961 -0.0 - 430970 -0.0 - 434971 -0.0 - 430980 -0.0 - 43099.82c -4.902617659043871e-20 - 434991 -0.0 - 431000 -0.0 - 431010 -0.0 - 431020 -0.0 - 435021 -0.0 - 431030 -0.0 - 431040 -0.0 - 431050 -0.0 - 431060 -0.0 - 431070 -0.0 - 431080 -0.0 - 431090 -0.0 - 431100 -0.0 - 431110 -0.0 - 431120 -0.0 - 431130 -0.0 - 431140 -0.0 - 431150 -0.0 - 431160 -0.0 - 431170 -0.0 - 431180 -0.0 - 440870 -0.0 - 440880 -0.0 - 440890 -0.0 - 440900 -0.0 - 440910 -0.0 - 444911 -0.0 - 440920 -0.0 - 440930 -0.0 - 444931 -0.0 - 440940 -0.0 - 440950 -0.0 - 44096.82c -4.753979051646159e-20 - 440970 -0.0 - 44098.82c -4.8530015961132245e-20 - 44099.82c -4.9026018269191536e-20 - 44100.82c -4.952084908379216e-20 - 44101.82c -5.0017207816896396e-20 - 44102.82c -5.051228005454575e-20 - 44103.82c -5.1008942101220304e-20 - 445031 -0.0 - 44104.82c -5.1504184507939146e-20 - 44105.82c -5.200101787862531e-20 - 44106.82c -5.249649432271166e-20 - 441070 -0.0 - 441080 -0.0 - 441090 -0.0 - 441100 -0.0 - 441110 -0.0 - 441120 -0.0 - 441130 -0.0 - 445131 -0.0 - 441140 -0.0 - 441150 -0.0 - 441160 -0.0 - 441170 -0.0 - 441180 -0.0 - 441190 -0.0 - 441200 -0.0 - 450890 -0.0 - 450900 -0.0 - 454901 -0.0 - 450910 -0.0 - 450920 -0.0 - 450930 -0.0 - 450940 -0.0 - 454941 -0.0 - 450950 -0.0 - 454951 -0.0 - 450960 -0.0 - 454961 -0.0 - 450970 -0.0 - 454971 -0.0 - 450980 -0.0 - 454981 -0.0 - 450990 -0.0 - 454991 -0.0 - 451000 -0.0 - 455001 -0.0 - 451010 -0.0 - 455011 -0.0 - 451020 -0.0 - 455021 -0.0 - 45103.82c -5.100853526171359e-20 - 455031 -0.0 - 451040 -0.0 - 455041 -0.0 - 45105.82c -5.1999997901673445e-20 - 455051 -0.0 - 451060 -0.0 - 455061 -0.0 - 451070 -0.0 - 451080 -0.0 - 455081 -0.0 - 451090 -0.0 - 451100 -0.0 - 455101 -0.0 - 451110 -0.0 - 451120 -0.0 - 455121 -0.0 - 451130 -0.0 - 451140 -0.0 - 451150 -0.0 - 451160 -0.0 - 455161 -0.0 - 451170 -0.0 - 451180 -0.0 - 451190 -0.0 - 451200 -0.0 - 451210 -0.0 - 451220 -0.0 - 451230 -0.0 - 460910 -0.0 - 460920 -0.0 - 460930 -0.0 - 460940 -0.0 - 460950 -0.0 - 464951 -0.0 - 460960 -0.0 - 460970 -0.0 - 460980 -0.0 - 460990 -0.0 - 461000 -0.0 - 461010 -0.0 - 46102.82c -5.051292035741869e-20 - 461030 -0.0 - 46104.82c -5.15034930500536e-20 - 46105.82c -5.1999696368101857e-20 - 46106.82c -5.249458697797077e-20 - 46107.82c -5.299108705417767e-20 - 465071 -0.0 - 46108.82c -5.348615756486639e-20 - 461090 -0.0 - 465091 -0.0 - 46110.82c -5.447815917367435e-20 - 461110 -0.0 - 465111 -0.0 - 461120 -0.0 - 461130 -0.0 - 465131 -0.0 - 461140 -0.0 - 461150 -0.0 - 465151 -0.0 - 461160 -0.0 - 461170 -0.0 - 465171 -0.0 - 461180 -0.0 - 461190 -0.0 - 461200 -0.0 - 461210 -0.0 - 461220 -0.0 - 461230 -0.0 - 461240 -0.0 - 461250 -0.0 - 461260 -0.0 - 470930 -0.0 - 470940 -0.0 - 474941 -0.0 - 475942 -0.0 - 470950 -0.0 - 474951 -0.0 - 475952 -0.0 - 476953 -0.0 - 470960 -0.0 - 474961 -0.0 - 470970 -0.0 - 470980 -0.0 - 470990 -0.0 - 474991 -0.0 - 471000 -0.0 - 475001 -0.0 - 471010 -0.0 - 475011 -0.0 - 471020 -0.0 - 475021 -0.0 - 471030 -0.0 - 475031 -0.0 - 471040 -0.0 - 475041 -0.0 - 471050 -0.0 - 475051 -0.0 - 471060 -0.0 - 475061 -0.0 - 47107.82c -5.2991068945379536e-20 - 475071 -0.0 - 471080 -0.0 - 475081 -0.0 - 47109.82c -5.3982269123012857e-20 - 475091 -0.0 - 471100 -0.0 - 47510.82c -5.447862405075637e-20 - 47111.82c -5.497390391626245e-20 - 475111 -0.0 - 471120 -0.0 - 471130 -0.0 - 475131 -0.0 - 471140 -0.0 - 475141 -0.0 - 471150 -0.0 - 475151 -0.0 - 471160 -0.0 - 475161 -0.0 - 476162 -0.0 - 471170 -0.0 - 475171 -0.0 - 471180 -0.0 - 475181 -0.0 - 471190 -0.0 - 475191 -0.0 - 471200 -0.0 - 475201 -0.0 - 471210 -0.0 - 471220 -0.0 - 475221 -0.0 - 471230 -0.0 - 471240 -0.0 - 471250 -0.0 - 471260 -0.0 - 471270 -0.0 - 471280 -0.0 - 471290 -0.0 - 471300 -0.0 - 480950 -0.0 - 480960 -0.0 - 480970 -0.0 - 480980 -0.0 - 480990 -0.0 - 481000 -0.0 - 481010 -0.0 - 481020 -0.0 - 481030 -0.0 - 481040 -0.0 - 481050 -0.0 - 48106.82c -5.2496063868356674e-20 - 481070 -0.0 - 48108.82c -5.3486302196332096e-20 - 481090 -0.0 - 48110.82c -5.44770858170832e-20 - 48111.82c -5.497335219596136e-20 - 485111 -0.0 - 48112.82c -5.546833168729912e-20 - 48113.82c -5.596483000036051e-20 - 485131 -0.0 - 48114.82c -5.645999625327068e-20 - 481150 -0.0 - 48515.82c -5.695670682436658e-20 - 48116.82c -5.745205594476113e-20 - 481170 -0.0 - 485171 -0.0 - 481180 -0.0 - 481190 -0.0 - 485191 -0.0 - 481200 -0.0 - 481210 -0.0 - 485211 -0.0 - 481220 -0.0 - 481230 -0.0 - 485231 -0.0 - 481240 -0.0 - 481250 -0.0 - 485251 -0.0 - 481260 -0.0 - 481270 -0.0 - 481280 -0.0 - 481290 -0.0 - 481300 -0.0 - 481310 -0.0 - 481320 -0.0 - 490970 -0.0 - 490980 -0.0 - 494981 -0.0 - 490990 -0.0 - 491000 -0.0 - 491010 -0.0 - 491020 -0.0 - 491030 -0.0 - 495031 -0.0 - 491040 -0.0 - 495041 -0.0 - 491050 -0.0 - 495051 -0.0 - 491060 -0.0 - 495061 -0.0 - 491070 -0.0 - 495071 -0.0 - 491080 -0.0 - 495081 -0.0 - 491090 -0.0 - 495091 -0.0 - 496092 -0.0 - 491100 -0.0 - 495101 -0.0 - 491110 -0.0 - 495111 -0.0 - 491120 -0.0 - 495121 -0.0 - 49113.82c -5.596465767655569e-20 - 495131 -0.0 - 491140 -0.0 - 495141 -0.0 - 496142 -0.0 - 49115.82c -5.695593423055947e-20 - 495151 -0.0 - 491160 -0.0 - 495161 -0.0 - 496162 -0.0 - 491170 -0.0 - 495171 -0.0 - 491180 -0.0 - 495181 -0.0 - 496182 -0.0 - 491190 -0.0 - 495191 -0.0 - 491200 -0.0 - 495201 -0.0 - 496202 -0.0 - 491210 -0.0 - 495211 -0.0 - 491220 -0.0 - 495221 -0.0 - 496222 -0.0 - 491230 -0.0 - 495231 -0.0 - 491240 -0.0 - 495241 -0.0 - 491250 -0.0 - 495251 -0.0 - 491260 -0.0 - 495261 -0.0 - 491270 -0.0 - 495271 -0.0 - 491280 -0.0 - 495281 -0.0 - 491290 -0.0 - 495291 -0.0 - 491300 -0.0 - 495301 -0.0 - 496302 -0.0 - 491310 -0.0 - 495311 -0.0 - 496312 -0.0 - 491320 -0.0 - 491330 -0.0 - 495331 -0.0 - 491340 -0.0 - 491350 -0.0 - 500990 -0.0 - 501000 -0.0 - 501010 -0.0 - 501020 -0.0 - 501030 -0.0 - 501040 -0.0 - 501050 -0.0 - 501060 -0.0 - 501070 -0.0 - 501080 -0.0 - 501090 -0.0 - 501100 -0.0 - 501110 -0.0 - 50112.82c -5.546935328761381e-20 - 50113.82c -5.59652105602255e-20 - 505131 -0.0 - 50114.82c -5.645970634892508e-20 - 50115.82c -5.695566949800338e-20 - 50116.82c -5.745055877993673e-20 - 50117.82c -5.79468424517183e-20 - 505171 -0.0 - 50118.82c -5.844185786770349e-20 - 50119.82c -5.893838611656663e-20 - 505191 -0.0 - 50120.82c -5.943351953739752e-20 - 501210 -0.0 - 505211 -0.0 - 50122.82c -6.042550184677606e-20 - 50123.82c -6.09223160246047e-20 - 505231 -0.0 - 50124.82c -6.141777688837346e-20 - 50125.82c -6.191470423317873e-20 - 505251 -0.0 - 50126.82c -6.241032428464907e-20 - 501270 -0.0 - 505271 -0.0 - 501280 -0.0 - 505281 -0.0 - 501290 -0.0 - 505291 -0.0 - 501300 -0.0 - 505301 -0.0 - 501310 -0.0 - 505311 -0.0 - 501320 -0.0 - 501330 -0.0 - 501340 -0.0 - 501350 -0.0 - 501360 -0.0 - 501370 -0.0 - 511030 -0.0 - 511040 -0.0 - 511050 -0.0 - 511060 -0.0 - 511070 -0.0 - 511080 -0.0 - 511090 -0.0 - 511100 -0.0 - 511110 -0.0 - 511120 -0.0 - 511130 -0.0 - 511140 -0.0 - 511150 -0.0 - 511160 -0.0 - 515161 -0.0 - 511170 -0.0 - 511180 -0.0 - 515181 -0.0 - 511190 -0.0 - 515191 -0.0 - 511200 -0.0 - 515201 -0.0 - 51121.82c -5.993000000883408e-20 - 511220 -0.0 - 515221 -0.0 - 51123.82c -6.09215668339891e-20 - 51124.82c -6.141810359175182e-20 - 515241 -0.0 - 516242 -0.0 - 51125.82c -6.191344844183472e-20 - 51126.82c -6.241012313636446e-20 - 515261 -0.0 - 516262 -0.0 - 511270 -0.0 - 511280 -0.0 - 515281 -0.0 - 511290 -0.0 - 515291 -0.0 - 511300 -0.0 - 515301 -0.0 - 511310 -0.0 - 511320 -0.0 - 515321 -0.0 - 511330 -0.0 - 511340 -0.0 - 515341 -0.0 - 511350 -0.0 - 511360 -0.0 - 511370 -0.0 - 511380 -0.0 - 511390 -0.0 - 521050 -0.0 - 521060 -0.0 - 521070 -0.0 - 521080 -0.0 - 521090 -0.0 - 521100 -0.0 - 521110 -0.0 - 521120 -0.0 - 521130 -0.0 - 521140 -0.0 - 521150 -0.0 - 525151 -0.0 - 521160 -0.0 - 521170 -0.0 - 525171 -0.0 - 521180 -0.0 - 521190 -0.0 - 525191 -0.0 - 52120.82c -5.943444033902537e-20 - 521210 -0.0 - 525211 -0.0 - 52122.82c -6.042530329240218e-20 - 52123.82c -6.092159445891528e-20 - 525231 -0.0 - 52124.82c -6.14165576918407e-20 - 52125.82c -6.191304045135138e-20 - 525251 -0.0 - 52126.82c -6.240816906851537e-20 - 521270 -0.0 - 52527.82c -6.290480153033196e-20 - 52128.82c -6.34001059321616e-20 - 521290 -0.0 - 52529.82c -6.389684760936752e-20 - 52130.82c -6.439234565384517e-20 - 521310 -0.0 - 525311 -0.0 - 52132.82c -6.53848642137446e-20 - 521330 -0.0 - 525331 -0.0 - 521340 -0.0 - 521350 -0.0 - 521360 -0.0 - 521370 -0.0 - 521380 -0.0 - 521390 -0.0 - 521400 -0.0 - 521410 -0.0 - 521420 -0.0 - 531080 -0.0 - 531090 -0.0 - 531100 -0.0 - 531110 -0.0 - 531120 -0.0 - 531130 -0.0 - 531140 -0.0 - 535141 -0.0 - 531150 -0.0 - 531160 -0.0 - 531170 -0.0 - 531180 -0.0 - 535181 -0.0 - 531190 -0.0 - 531200 -0.0 - 535201 -0.0 - 531210 -0.0 - 531220 -0.0 - 531230 -0.0 - 531240 -0.0 - 531250 -0.0 - 531260 -0.0 - 53127.82c -6.290442784658575e-20 - 531280 -0.0 - 53129.82c -6.389604816885699e-20 - 53130.82c -6.439256745427896e-20 - 535301 -0.0 - 53131.82c -6.488798119194897e-20 - 531320 -0.0 - 535321 -0.0 - 531330 -0.0 - 535331 -0.0 - 531340 -0.0 - 535341 -0.0 - 53135.82c -6.687266392792673e-20 - 531360 -0.0 - 535361 -0.0 - 531370 -0.0 - 531380 -0.0 - 531390 -0.0 - 531400 -0.0 - 531410 -0.0 - 531420 -0.0 - 531430 -0.0 - 531440 -0.0 - 531450 -0.0 - 541100 -0.0 - 541110 -0.0 - 541120 -0.0 - 541130 -0.0 - 541140 -0.0 - 541150 -0.0 - 541160 -0.0 - 541170 -0.0 - 541180 -0.0 - 541190 -0.0 - 541200 -0.0 - 541210 -0.0 - 541220 -0.0 - 54123.82c -6.092368227847724e-20 - 54124.82c -6.141808168205412e-20 - 541250 -0.0 - 545251 -0.0 - 54126.82c -6.240865777656356e-20 - 541270 -0.0 - 545271 -0.0 - 54128.82c -6.339964479054897e-20 - 54129.82c -6.389594763036422e-20 - 545291 -0.0 - 54130.82c -6.439100066776045e-20 - 54131.82c -6.488746456701713e-20 - 545311 -0.0 - 54132.82c -6.538268735655868e-20 - 545321 -0.0 - 54133.82c -6.587924091304344e-20 - 545331 -0.0 - 54134.82c -6.637466759300451e-20 - 545341 -0.0 - 54135.82c -6.687126227383968e-20 - 545351 -0.0 - 54136.82c -6.736693705915611e-20 - 541370 -0.0 - 541380 -0.0 - 541390 -0.0 - 541400 -0.0 - 541410 -0.0 - 541420 -0.0 - 541430 -0.0 - 541440 -0.0 - 541450 -0.0 - 541460 -0.0 - 541470 -0.0 - 551120 -0.0 - 551130 -0.0 - 551140 -0.0 - 551150 -0.0 - 551160 -0.0 - 555161 -0.0 - 551170 -0.0 - 555171 -0.0 - 551180 -0.0 - 555181 -0.0 - 551190 -0.0 - 555191 -0.0 - 551200 -0.0 - 555201 -0.0 - 551210 -0.0 - 555211 -0.0 - 551220 -0.0 - 555221 -0.0 - 556222 -0.0 - 551230 -0.0 - 555231 -0.0 - 551240 -0.0 - 555241 -0.0 - 551250 -0.0 - 555251 -0.0 - 551260 -0.0 - 551270 -0.0 - 551280 -0.0 - 551290 -0.0 - 551300 -0.0 - 555301 -0.0 - 551310 -0.0 - 551320 -0.0 - 55133.82c -6.587901349899627e-20 - 55134.82c -6.637532460635299e-20 - 555341 -0.0 - 55135.82c -6.687064047532018e-20 - 555351 -0.0 - 55136.82c -6.736698519694447e-20 - 555361 -0.0 - 55137.82c -6.786255839642895e-20 - 551380 -0.0 - 555381 -0.0 - 551390 -0.0 - 551400 -0.0 - 551410 -0.0 - 551420 -0.0 - 551430 -0.0 - 551440 -0.0 - 555441 -0.0 - 551450 -0.0 - 551460 -0.0 - 551470 -0.0 - 551480 -0.0 - 551490 -0.0 - 551500 -0.0 - 551510 -0.0 - 561140 -0.0 - 561150 -0.0 - 561160 -0.0 - 561170 -0.0 - 561180 -0.0 - 561190 -0.0 - 561200 -0.0 - 561210 -0.0 - 561220 -0.0 - 561230 -0.0 - 561240 -0.0 - 561250 -0.0 - 561260 -0.0 - 561270 -0.0 - 565271 -0.0 - 561280 -0.0 - 561290 -0.0 - 565291 -0.0 - 56130.82c -6.439239429376071e-20 - 565301 -0.0 - 561310 -0.0 - 565311 -0.0 - 56132.82c -6.538313645109916e-20 - 56133.82c -6.58792887836585e-20 - 565331 -0.0 - 56134.82c -6.637422909470089e-20 - 56135.82c -6.687049740723962e-20 - 565351 -0.0 - 56136.82c -6.736562919033286e-20 - 565361 -0.0 - 56137.82c -6.786193279998394e-20 - 565371 -0.0 - 56138.82c -6.835732853493205e-20 - 561390 -0.0 - 56140.82c -6.93513517256378e-20 - 561410 -0.0 - 561420 -0.0 - 561430 -0.0 - 561440 -0.0 - 561450 -0.0 - 561460 -0.0 - 561470 -0.0 - 561480 -0.0 - 561490 -0.0 - 561500 -0.0 - 561510 -0.0 - 561520 -0.0 - 561530 -0.0 - 571170 -0.0 - 575171 -0.0 - 571180 -0.0 - 571190 -0.0 - 571200 -0.0 - 571210 -0.0 - 571220 -0.0 - 571230 -0.0 - 571240 -0.0 - 575241 -0.0 - 571250 -0.0 - 575251 -0.0 - 571260 -0.0 - 575261 -0.0 - 571270 -0.0 - 575271 -0.0 - 571280 -0.0 - 575281 -0.0 - 571290 -0.0 - 575291 -0.0 - 571300 -0.0 - 571310 -0.0 - 571320 -0.0 - 575321 -0.0 - 571330 -0.0 - 571340 -0.0 - 571350 -0.0 - 571360 -0.0 - 575361 -0.0 - 571370 -0.0 - 57138.82c -6.835825576259825e-20 - 57139.82c -6.885356282773428e-20 - 57140.82c -6.935079483436847e-20 - 571410 -0.0 - 571420 -0.0 - 571430 -0.0 - 571440 -0.0 - 571450 -0.0 - 571460 -0.0 - 575461 -0.0 - 571470 -0.0 - 571480 -0.0 - 571490 -0.0 - 571500 -0.0 - 571510 -0.0 - 571520 -0.0 - 571530 -0.0 - 571540 -0.0 - 571550 -0.0 - 581190 -0.0 - 581200 -0.0 - 581210 -0.0 - 581220 -0.0 - 581230 -0.0 - 581240 -0.0 - 581250 -0.0 - 581260 -0.0 - 581270 -0.0 - 585271 -0.0 - 581280 -0.0 - 581290 -0.0 - 581300 -0.0 - 581310 -0.0 - 585311 -0.0 - 581320 -0.0 - 585321 -0.0 - 581330 -0.0 - 585331 -0.0 - 581340 -0.0 - 581350 -0.0 - 585351 -0.0 - 58136.82c -6.736689490723934e-20 - 581370 -0.0 - 585371 -0.0 - 58138.82c -6.835769609104126e-20 - 585381 -0.0 - 58139.82c -6.885371094831475e-20 - 585391 -0.0 - 58140.82c -6.934879387983568e-20 - 58141.82c -6.984588371607179e-20 - 58142.82c -7.034204579872168e-20 - 58143.82c -7.083928641339215e-20 - 58144.82c -7.133559487280866e-20 - 581450 -0.0 - 581460 -0.0 - 581470 -0.0 - 581480 -0.0 - 581490 -0.0 - 581500 -0.0 - 581510 -0.0 - 581520 -0.0 - 581530 -0.0 - 581540 -0.0 - 581550 -0.0 - 581560 -0.0 - 581570 -0.0 - 591210 -0.0 - 591220 -0.0 - 591230 -0.0 - 591240 -0.0 - 591250 -0.0 - 591260 -0.0 - 591270 -0.0 - 591280 -0.0 - 591290 -0.0 - 591300 -0.0 - 591310 -0.0 - 595311 -0.0 - 591320 -0.0 - 591330 -0.0 - 591340 -0.0 - 595341 -0.0 - 591350 -0.0 - 591360 -0.0 - 591370 -0.0 - 591380 -0.0 - 595381 -0.0 - 591390 -0.0 - 591400 -0.0 - 59141.82c -6.984557362452796e-20 - 59142.82c -7.034244262096451e-20 - 595421 -0.0 - 59143.82c -7.083850865357364e-20 - 591440 -0.0 - 595441 -0.0 - 591450 -0.0 - 591460 -0.0 - 591470 -0.0 - 591480 -0.0 - 595481 -0.0 - 591490 -0.0 - 591500 -0.0 - 591510 -0.0 - 591520 -0.0 - 591530 -0.0 - 591540 -0.0 - 591550 -0.0 - 591560 -0.0 - 591570 -0.0 - 591580 -0.0 - 591590 -0.0 - 601240 -0.0 - 601250 -0.0 - 601260 -0.0 - 601270 -0.0 - 601280 -0.0 - 601290 -0.0 - 601300 -0.0 - 601310 -0.0 - 601320 -0.0 - 601330 -0.0 - 605331 -0.0 - 601340 -0.0 - 601350 -0.0 - 605351 -0.0 - 601360 -0.0 - 601370 -0.0 - 605371 -0.0 - 601380 -0.0 - 601390 -0.0 - 605391 -0.0 - 601400 -0.0 - 601410 -0.0 - 605411 -0.0 - 60142.82c -7.034129186986939e-20 - 60143.82c -7.083801164332579e-20 - 60144.82c -7.133383025759666e-20 - 60145.82c -7.183074599548168e-20 - 60146.82c -7.232669860583728e-20 - 60147.82c -7.282386078407743e-20 - 60148.82c -7.331993720571292e-20 - 601490 -0.0 - 60150.82c -7.431328775169723e-20 - 601510 -0.0 - 601520 -0.0 - 601530 -0.0 - 601540 -0.0 - 601550 -0.0 - 601560 -0.0 - 601570 -0.0 - 601580 -0.0 - 601590 -0.0 - 601600 -0.0 - 601610 -0.0 - 611260 -0.0 - 611270 -0.0 - 611280 -0.0 - 611290 -0.0 - 611300 -0.0 - 611310 -0.0 - 611320 -0.0 - 611330 -0.0 - 615331 -0.0 - 611340 -0.0 - 615341 -0.0 - 611350 -0.0 - 615351 -0.0 - 611360 -0.0 - 615361 -0.0 - 611370 -0.0 - 611380 -0.0 - 615381 -0.0 - 611390 -0.0 - 615391 -0.0 - 611400 -0.0 - 615401 -0.0 - 611410 -0.0 - 611420 -0.0 - 615421 -0.0 - 611430 -0.0 - 611440 -0.0 - 611450 -0.0 - 611460 -0.0 - 61147.82c -7.282338424802845e-20 - 61148.82c -7.332022577369633e-20 - 61548.82c -7.332022577369633e-20 - 61149.82c -7.38163355647318e-20 - 611500 -0.0 - 61151.82c -7.480912734031137e-20 - 611520 -0.0 - 615521 -0.0 - 616522 -0.0 - 611530 -0.0 - 611540 -0.0 - 615541 -0.0 - 611550 -0.0 - 611560 -0.0 - 611570 -0.0 - 611580 -0.0 - 611590 -0.0 - 611600 -0.0 - 611610 -0.0 - 611620 -0.0 - 611630 -0.0 - 621280 -0.0 - 621290 -0.0 - 621300 -0.0 - 621310 -0.0 - 621320 -0.0 - 621330 -0.0 - 621340 -0.0 - 621350 -0.0 - 621360 -0.0 - 621370 -0.0 - 621380 -0.0 - 621390 -0.0 - 625391 -0.0 - 621400 -0.0 - 621410 -0.0 - 625411 -0.0 - 621420 -0.0 - 621430 -0.0 - 625431 -0.0 - 626432 -0.0 - 62144.82c -7.133477875156362e-20 - 621450 -0.0 - 621460 -0.0 - 62147.82c -7.282326499951337e-20 - 62148.82c -7.331891110112405e-20 - 62149.82c -7.381576538865424e-20 - 62150.82c -7.431149371024589e-20 - 62151.82c -7.480849398047446e-20 - 62152.82c -7.530407813455996e-20 - 62153.82c -7.580093369401351e-20 - 625531 -0.0 - 62154.82c -7.629667261083575e-20 - 621550 -0.0 - 621560 -0.0 - 621570 -0.0 - 621580 -0.0 - 621590 -0.0 - 621600 -0.0 - 621610 -0.0 - 621620 -0.0 - 621630 -0.0 - 621640 -0.0 - 621650 -0.0 - 631300 -0.0 - 631310 -0.0 - 631320 -0.0 - 631330 -0.0 - 631340 -0.0 - 631350 -0.0 - 631360 -0.0 - 635361 -0.0 - 636362 -0.0 - 631370 -0.0 - 631380 -0.0 - 631390 -0.0 - 631400 -0.0 - 635401 -0.0 - 631410 -0.0 - 635411 -0.0 - 631420 -0.0 - 635421 -0.0 - 631430 -0.0 - 631440 -0.0 - 631450 -0.0 - 631460 -0.0 - 631470 -0.0 - 631480 -0.0 - 631490 -0.0 - 631500 -0.0 - 635501 -0.0 - 63151.82c -7.48084532323328e-20 - 63152.82c -7.53050755460251e-20 - 635521 -0.0 - 636522 -0.0 - 63153.82c -7.580050397326981e-20 - 63154.82c -7.629705418338174e-20 - 635541 -0.0 - 63155.82c -7.679269493111705e-20 - 63156.82c -7.728930178345577e-20 - 63157.82c -7.778531695003562e-20 - 631580 -0.0 - 631590 -0.0 - 631600 -0.0 - 631610 -0.0 - 631620 -0.0 - 631630 -0.0 - 631640 -0.0 - 631650 -0.0 - 631660 -0.0 - 631670 -0.0 - 641340 -0.0 - 641350 -0.0 - 641360 -0.0 - 641370 -0.0 - 641380 -0.0 - 641390 -0.0 - 645391 -0.0 - 641400 -0.0 - 641410 -0.0 - 645411 -0.0 - 641420 -0.0 - 641430 -0.0 - 645431 -0.0 - 641440 -0.0 - 641450 -0.0 - 645451 -0.0 - 641460 -0.0 - 641470 -0.0 - 641480 -0.0 - 641490 -0.0 - 641500 -0.0 - 641510 -0.0 - 64152.82c -7.530410776749921e-20 - 64153.82c -7.580076188522364e-20 - 64154.82c -7.629600702414886e-20 - 64155.82c -7.679256094494598e-20 - 645551 -0.0 - 64156.82c -7.728799678662156e-20 - 64157.82c -7.778459081315478e-20 - 64158.82c -7.828034538415143e-20 - 641590 -0.0 - 64160.82c -7.927317420313564e-20 - 641610 -0.0 - 641620 -0.0 - 641630 -0.0 - 641640 -0.0 - 641650 -0.0 - 641660 -0.0 - 641670 -0.0 - 641680 -0.0 - 641690 -0.0 - 651350 -0.0 - 651360 -0.0 - 651370 -0.0 - 651380 -0.0 - 651390 -0.0 - 651400 -0.0 - 651410 -0.0 - 655411 -0.0 - 651420 -0.0 - 655421 -0.0 - 651430 -0.0 - 655431 -0.0 - 651440 -0.0 - 655441 -0.0 - 651450 -0.0 - 655451 -0.0 - 651460 -0.0 - 655461 -0.0 - 656462 -0.0 - 651470 -0.0 - 655471 -0.0 - 651480 -0.0 - 655481 -0.0 - 651490 -0.0 - 655491 -0.0 - 651500 -0.0 - 655501 -0.0 - 651510 -0.0 - 655511 -0.0 - 651520 -0.0 - 655521 -0.0 - 651530 -0.0 - 651540 -0.0 - 655541 -0.0 - 656542 -0.0 - 651550 -0.0 - 651560 -0.0 - 655561 -0.0 - 656562 -0.0 - 651570 -0.0 - 651580 -0.0 - 655581 -0.0 - 65159.82c -7.877664446870964e-20 - 65160.82c -7.927323033480862e-20 - 651610 -0.0 - 651620 -0.0 - 651630 -0.0 - 651640 -0.0 - 651650 -0.0 - 651660 -0.0 - 651670 -0.0 - 651680 -0.0 - 651690 -0.0 - 651700 -0.0 - 651710 -0.0 - 661380 -0.0 - 661390 -0.0 - 661400 -0.0 - 661410 -0.0 - 661420 -0.0 - 661430 -0.0 - 665431 -0.0 - 661440 -0.0 - 661450 -0.0 - 665451 -0.0 - 661460 -0.0 - 665461 -0.0 - 661470 -0.0 - 665471 -0.0 - 661480 -0.0 - 661490 -0.0 - 665491 -0.0 - 661500 -0.0 - 661510 -0.0 - 661520 -0.0 - 661530 -0.0 - 661540 -0.0 - 661550 -0.0 - 66156.82c -7.728906422871954e-20 - 661570 -0.0 - 665571 -0.0 - 66158.82c -7.828049555190396e-20 - 661590 -0.0 - 66160.82c -7.927225307832226e-20 - 66161.82c -7.976879681084478e-20 - 66162.82c -8.026441323688741e-20 - 66163.82c -8.076105455309487e-20 - 66164.82c -8.125695773837258e-20 - 661650 -0.0 - 665651 -0.0 - 661660 -0.0 - 661670 -0.0 - 661680 -0.0 - 661690 -0.0 - 661700 -0.0 - 661710 -0.0 - 661720 -0.0 - 661730 -0.0 - 671400 -0.0 - 671410 -0.0 - 671420 -0.0 - 671430 -0.0 - 671440 -0.0 - 671450 -0.0 - 671460 -0.0 - 671470 -0.0 - 671480 -0.0 - 675481 -0.0 - 676482 -0.0 - 671490 -0.0 - 675491 -0.0 - 671500 -0.0 - 675501 -0.0 - 671510 -0.0 - 675511 -0.0 - 671520 -0.0 - 675521 -0.0 - 671530 -0.0 - 675531 -0.0 - 671540 -0.0 - 675541 -0.0 - 671550 -0.0 - 675551 -0.0 - 671560 -0.0 - 675561 -0.0 - 676562 -0.0 - 671570 -0.0 - 671580 -0.0 - 675581 -0.0 - 676582 -0.0 - 671590 -0.0 - 675591 -0.0 - 671600 -0.0 - 675601 -0.0 - 676602 -0.0 - 671610 -0.0 - 675611 -0.0 - 671620 -0.0 - 675621 -0.0 - 671630 -0.0 - 675631 -0.0 - 671640 -0.0 - 675641 -0.0 - 67165.82c -8.17532098757737e-20 - 671660 -0.0 - 67566.82c -8.224986575565229e-20 - 671670 -0.0 - 671680 -0.0 - 675681 -0.0 - 671690 -0.0 - 671700 -0.0 - 675701 -0.0 - 671710 -0.0 - 671720 -0.0 - 671730 -0.0 - 671740 -0.0 - 671750 -0.0 - 681430 -0.0 - 681440 -0.0 - 681450 -0.0 - 681460 -0.0 - 681470 -0.0 - 685471 -0.0 - 681480 -0.0 - 681490 -0.0 - 685491 -0.0 - 681500 -0.0 - 681510 -0.0 - 685511 -0.0 - 681520 -0.0 - 681530 -0.0 - 681540 -0.0 - 681550 -0.0 - 681560 -0.0 - 681570 -0.0 - 685571 -0.0 - 681580 -0.0 - 681590 -0.0 - 681600 -0.0 - 681610 -0.0 - 68162.82c -8.026539607377641e-20 - 681630 -0.0 - 68164.82c -8.125697108216709e-20 - 681650 -0.0 - 68166.82c -8.224887879269548e-20 - 68167.82c -8.274543206811294e-20 - 685671 -0.0 - 68168.82c -8.324127501795557e-20 - 681690 -0.0 - 68170.82c -8.423417550778866e-20 - 681710 -0.0 - 681720 -0.0 - 681730 -0.0 - 681740 -0.0 - 681750 -0.0 - 681760 -0.0 - 681770 -0.0 - 691450 -0.0 - 691460 -0.0 - 695461 -0.0 - 691470 -0.0 - 691480 -0.0 - 691490 -0.0 - 691500 -0.0 - 695501 -0.0 - 691510 -0.0 - 695511 -0.0 - 691520 -0.0 - 695521 -0.0 - 691530 -0.0 - 695531 -0.0 - 691540 -0.0 - 695541 -0.0 - 691550 -0.0 - 695551 -0.0 - 691560 -0.0 - 691570 -0.0 - 691580 -0.0 - 691590 -0.0 - 691600 -0.0 - 695601 -0.0 - 691610 -0.0 - 691620 -0.0 - 695621 -0.0 - 691630 -0.0 - 691640 -0.0 - 695641 -0.0 - 691650 -0.0 - 691660 -0.0 - 695661 -0.0 - 691670 -0.0 - 69168.82c -8.324216807866736e-20 - 69169.82c -8.373787144855281e-20 - 69170.82c -8.423434197509525e-20 - 691710 -0.0 - 691720 -0.0 - 691730 -0.0 - 691740 -0.0 - 691750 -0.0 - 691760 -0.0 - 691770 -0.0 - 691780 -0.0 - 691790 -0.0 - 701480 -0.0 - 701490 -0.0 - 701500 -0.0 - 701510 -0.0 - 705511 -0.0 - 701520 -0.0 - 701530 -0.0 - 701540 -0.0 - 701550 -0.0 - 701560 -0.0 - 701570 -0.0 - 701580 -0.0 - 701590 -0.0 - 701600 -0.0 - 701610 -0.0 - 701620 -0.0 - 701630 -0.0 - 701640 -0.0 - 701650 -0.0 - 701660 -0.0 - 701670 -0.0 - 701680 -0.0 - 701690 -0.0 - 705691 -0.0 - 701700 -0.0 - 701710 -0.0 - 705711 -0.0 - 701720 -0.0 - 701730 -0.0 - 701740 -0.0 - 701750 -0.0 - 705751 -0.0 - 701760 -0.0 - 705761 -0.0 - 701770 -0.0 - 705771 -0.0 - 701780 -0.0 - 701790 -0.0 - 701800 -0.0 - 701810 -0.0 - 711500 -0.0 - 711510 -0.0 - 711520 -0.0 - 711530 -0.0 - 715531 -0.0 - 711540 -0.0 - 715541 -0.0 - 711550 -0.0 - 715551 -0.0 - 716552 -0.0 - 711560 -0.0 - 715561 -0.0 - 711570 -0.0 - 715571 -0.0 - 711580 -0.0 - 711590 -0.0 - 711600 -0.0 - 715601 -0.0 - 711610 -0.0 - 715611 -0.0 - 711620 -0.0 - 715621 -0.0 - 716622 -0.0 - 711630 -0.0 - 711640 -0.0 - 711650 -0.0 - 711660 -0.0 - 715661 -0.0 - 716662 -0.0 - 711670 -0.0 - 715671 -0.0 - 711680 -0.0 - 715681 -0.0 - 711690 -0.0 - 715691 -0.0 - 711700 -0.0 - 715701 -0.0 - 711710 -0.0 - 715711 -0.0 - 711720 -0.0 - 715721 -0.0 - 711730 -0.0 - 711740 -0.0 - 715741 -0.0 - 71175.82c -8.671522243632657e-20 - 71176.82c -8.721185472614103e-20 - 715761 -0.0 - 711770 -0.0 - 715771 -0.0 - 716772 -0.0 - 711780 -0.0 - 715781 -0.0 - 711790 -0.0 - 715791 -0.0 - 711800 -0.0 - 715801 -0.0 - 711810 -0.0 - 711820 -0.0 - 711830 -0.0 - 711840 -0.0 - 721530 -0.0 - 721540 -0.0 - 721550 -0.0 - 721560 -0.0 - 721570 -0.0 - 721580 -0.0 - 721590 -0.0 - 721600 -0.0 - 721610 -0.0 - 721620 -0.0 - 721630 -0.0 - 721640 -0.0 - 721650 -0.0 - 721660 -0.0 - 721670 -0.0 - 721680 -0.0 - 721690 -0.0 - 721700 -0.0 - 721710 -0.0 - 725711 -0.0 - 721720 -0.0 - 721730 -0.0 - 72174.82c -8.621917786482176e-20 - 721750 -0.0 - 72176.82c -8.721121930773138e-20 - 72177.82c -8.770780496068653e-20 - 725771 -0.0 - 726772 -0.0 - 72178.82c -8.820372526835259e-20 - 725781 -0.0 - 726782 -0.0 - 72179.82c -8.870045812289138e-20 - 725791 -0.0 - 726792 -0.0 - 72180.82c -8.919650517429978e-20 - 725801 -0.0 - 721810 -0.0 - 721820 -0.0 - 725821 -0.0 - 721830 -0.0 - 721840 -0.0 - 725841 -0.0 - 721850 -0.0 - 721860 -0.0 - 721870 -0.0 - 721880 -0.0 - 731550 -0.0 - 731560 -0.0 - 735561 -0.0 - 731570 -0.0 - 735571 -0.0 - 736572 -0.0 - 731580 -0.0 - 735581 -0.0 - 731590 -0.0 - 735591 -0.0 - 731600 -0.0 - 735601 -0.0 - 731610 -0.0 - 731620 -0.0 - 731630 -0.0 - 731640 -0.0 - 731650 -0.0 - 731660 -0.0 - 731670 -0.0 - 731680 -0.0 - 731690 -0.0 - 731700 -0.0 - 731710 -0.0 - 731720 -0.0 - 731730 -0.0 - 731740 -0.0 - 731750 -0.0 - 731760 -0.0 - 735761 -0.0 - 736762 -0.0 - 731770 -0.0 - 731780 -0.0 - 735781 -0.0 - 736782 -0.0 - 731790 -0.0 - 735791 -0.0 - 736792 -0.0 - 73180.82c -8.919695561311848e-20 - 735801 -0.0 - 73181.82c -8.969290209435004e-20 - 73182.82c -9.018965413183268e-20 - 735821 -0.0 - 736822 -0.0 - 731830 -0.0 - 731840 -0.0 - 731850 -0.0 - 735851 -0.0 - 731860 -0.0 - 731870 -0.0 - 731880 -0.0 - 731890 -0.0 - 731900 -0.0 - 741580 -0.0 - 741590 -0.0 - 741600 -0.0 - 741610 -0.0 - 741620 -0.0 - 741630 -0.0 - 741640 -0.0 - 741650 -0.0 - 741660 -0.0 - 741670 -0.0 - 741680 -0.0 - 741690 -0.0 - 741700 -0.0 - 741710 -0.0 - 741720 -0.0 - 741730 -0.0 - 741740 -0.0 - 741750 -0.0 - 741760 -0.0 - 741770 -0.0 - 741780 -0.0 - 741790 -0.0 - 745791 -0.0 - 74180.82c -8.919658139353864e-20 - 745801 -0.0 - 741810 -0.0 - 74182.82c -9.018868770206104e-20 - 74183.82c -9.068537168073907e-20 - 745831 -0.0 - 74184.82c -9.118140630487133e-20 - 741850 -0.0 - 745851 -0.0 - 74186.82c -9.217447407493162e-20 - 745861 -0.0 - 741870 -0.0 - 741880 -0.0 - 741890 -0.0 - 741900 -0.0 - 745901 -0.0 - 741910 -0.0 - 741920 -0.0 - 751600 -0.0 - 751610 -0.0 - 755611 -0.0 - 751620 -0.0 - 755621 -0.0 - 751630 -0.0 - 755631 -0.0 - 751640 -0.0 - 755641 -0.0 - 751650 -0.0 - 755651 -0.0 - 751660 -0.0 - 751670 -0.0 - 755671 -0.0 - 751680 -0.0 - 751690 -0.0 - 755691 -0.0 - 751700 -0.0 - 751710 -0.0 - 751720 -0.0 - 755721 -0.0 - 751730 -0.0 - 751740 -0.0 - 751750 -0.0 - 751760 -0.0 - 751770 -0.0 - 751780 -0.0 - 751790 -0.0 - 751800 -0.0 - 751810 -0.0 - 751820 -0.0 - 755821 -0.0 - 751830 -0.0 - 755831 -0.0 - 751840 -0.0 - 755841 -0.0 - 75185.82c -9.16780934053628e-20 - 751860 -0.0 - 755861 -0.0 - 75187.82c -9.267084492749264e-20 - 751880 -0.0 - 755881 -0.0 - 751890 -0.0 - 751900 -0.0 - 755901 -0.0 - 751910 -0.0 - 751920 -0.0 - 751930 -0.0 - 751940 -0.0 - 761620 -0.0 - 761630 -0.0 - 761640 -0.0 - 761650 -0.0 - 761660 -0.0 - 761670 -0.0 - 761680 -0.0 - 761690 -0.0 - 761700 -0.0 - 761710 -0.0 - 761720 -0.0 - 761730 -0.0 - 761740 -0.0 - 761750 -0.0 - 761760 -0.0 - 761770 -0.0 - 761780 -0.0 - 761790 -0.0 - 761800 -0.0 - 761810 -0.0 - 765811 -0.0 - 761820 -0.0 - 761830 -0.0 - 765831 -0.0 - 761840 -0.0 - 761850 -0.0 - 761860 -0.0 - 761870 -0.0 - 761880 -0.0 - 761890 -0.0 - 765891 -0.0 - 761900 -0.0 - 765901 -0.0 - 761910 -0.0 - 765911 -0.0 - 761920 -0.0 - 765921 -0.0 - 761930 -0.0 - 761940 -0.0 - 761950 -0.0 - 761960 -0.0 - 771640 -0.0 - 775641 -0.0 - 771650 -0.0 - 771660 -0.0 - 775661 -0.0 - 771670 -0.0 - 775671 -0.0 - 771680 -0.0 - 775681 -0.0 - 771690 -0.0 - 775691 -0.0 - 771700 -0.0 - 775701 -0.0 - 771710 -0.0 - 775711 -0.0 - 771720 -0.0 - 775721 -0.0 - 771730 -0.0 - 775731 -0.0 - 771740 -0.0 - 775741 -0.0 - 771750 -0.0 - 771760 -0.0 - 771770 -0.0 - 771780 -0.0 - 771790 -0.0 - 771800 -0.0 - 771810 -0.0 - 771820 -0.0 - 771830 -0.0 - 771840 -0.0 - 771850 -0.0 - 771860 -0.0 - 775861 -0.0 - 771870 -0.0 - 775871 -0.0 - 771880 -0.0 - 775881 -0.0 - 771890 -0.0 - 775891 -0.0 - 776892 -0.0 - 771900 -0.0 - 775901 -0.0 - 776902 -0.0 - 77191.82c -9.465597687200316e-20 - 775911 -0.0 - 776912 -0.0 - 771920 -0.0 - 775921 -0.0 - 776922 -0.0 - 77193.82c -9.564849955995315e-20 - 775931 -0.0 - 771940 -0.0 - 775941 -0.0 - 776942 -0.0 - 771950 -0.0 - 775951 -0.0 - 771960 -0.0 - 775961 -0.0 - 771970 -0.0 - 775971 -0.0 - 771980 -0.0 - 771990 -0.0 - 781660 -0.0 - 781670 -0.0 - 781680 -0.0 - 781690 -0.0 - 781700 -0.0 - 781710 -0.0 - 781720 -0.0 - 781730 -0.0 - 781740 -0.0 - 781750 -0.0 - 781760 -0.0 - 781770 -0.0 - 781780 -0.0 - 781790 -0.0 - 781800 -0.0 - 781810 -0.0 - 781820 -0.0 - 781830 -0.0 - 785831 -0.0 - 781840 -0.0 - 785841 -0.0 - 781850 -0.0 - 785851 -0.0 - 781860 -0.0 - 781870 -0.0 - 781880 -0.0 - 781890 -0.0 - 781900 -0.0 - 781910 -0.0 - 781920 -0.0 - 781930 -0.0 - 785931 -0.0 - 781940 -0.0 - 781950 -0.0 - 785951 -0.0 - 781960 -0.0 - 781970 -0.0 - 785971 -0.0 - 781980 -0.0 - 781990 -0.0 - 785991 -0.0 - 782000 -0.0 - 782010 -0.0 - 782020 -0.0 - 791690 -0.0 - 791700 -0.0 - 795701 -0.0 - 791710 -0.0 - 795711 -0.0 - 791720 -0.0 - 791730 -0.0 - 795731 -0.0 - 791740 -0.0 - 795741 -0.0 - 791750 -0.0 - 795751 -0.0 - 791760 -0.0 - 795761 -0.0 - 791770 -0.0 - 795771 -0.0 - 791780 -0.0 - 791790 -0.0 - 791800 -0.0 - 791810 -0.0 - 791820 -0.0 - 791830 -0.0 - 791840 -0.0 - 795841 -0.0 - 791850 -0.0 - 791860 -0.0 - 791870 -0.0 - 795871 -0.0 - 791880 -0.0 - 791890 -0.0 - 795891 -0.0 - 791900 -0.0 - 795901 -0.0 - 791910 -0.0 - 795911 -0.0 - 791920 -0.0 - 795921 -0.0 - 796922 -0.0 - 791930 -0.0 - 795931 -0.0 - 791940 -0.0 - 795941 -0.0 - 796942 -0.0 - 791950 -0.0 - 795951 -0.0 - 791960 -0.0 - 795961 -0.0 - 796962 -0.0 - 79197.82c -9.763304017956228e-20 - 795971 -0.0 - 791980 -0.0 - 795981 -0.0 - 791990 -0.0 - 792000 -0.0 - 796001 -0.0 - 792010 -0.0 - 792020 -0.0 - 792030 -0.0 - 792040 -0.0 - 792050 -0.0 - 801710 -0.0 - 801720 -0.0 - 801730 -0.0 - 801740 -0.0 - 801750 -0.0 - 801760 -0.0 - 801770 -0.0 - 801780 -0.0 - 801790 -0.0 - 801800 -0.0 - 801810 -0.0 - 801820 -0.0 - 801830 -0.0 - 801840 -0.0 - 801850 -0.0 - 805851 -0.0 - 801860 -0.0 - 801870 -0.0 - 805871 -0.0 - 801880 -0.0 - 801890 -0.0 - 805891 -0.0 - 801900 -0.0 - 801910 -0.0 - 805911 -0.0 - 801920 -0.0 - 801930 -0.0 - 805931 -0.0 - 801940 -0.0 - 801950 -0.0 - 805951 -0.0 - 80196.82c -9.713699172090901e-20 - 801970 -0.0 - 805971 -0.0 - 80198.82c -9.812882215639312e-20 - 80199.82c -9.862525483900235e-20 - 805991 -0.0 - 80200.82c -9.912096091680573e-20 - 80201.82c -9.961762374219877e-20 - 80202.82c -1.0011347584929474e-19 - 802030 -0.0 - 80204.82c -1.0110625537802692e-19 - 802050 -0.0 - 806051 -0.0 - 802060 -0.0 - 802070 -0.0 - 802080 -0.0 - 802090 -0.0 - 802100 -0.0 - 811760 -0.0 - 811770 -0.0 - 811780 -0.0 - 811790 -0.0 - 815791 -0.0 - 811800 -0.0 - 811810 -0.0 - 815811 -0.0 - 811820 -0.0 - 811830 -0.0 - 815831 -0.0 - 811840 -0.0 - 811850 -0.0 - 815851 -0.0 - 811860 -0.0 - 815861 -0.0 - 811870 -0.0 - 815871 -0.0 - 811880 -0.0 - 815881 -0.0 - 816882 -0.0 - 811890 -0.0 - 815891 -0.0 - 811900 -0.0 - 815901 -0.0 - 811910 -0.0 - 815911 -0.0 - 811920 -0.0 - 815921 -0.0 - 811930 -0.0 - 815931 -0.0 - 811940 -0.0 - 815941 -0.0 - 811950 -0.0 - 815951 -0.0 - 811960 -0.0 - 815961 -0.0 - 811970 -0.0 - 815971 -0.0 - 811980 -0.0 - 815981 -0.0 - 816982 -0.0 - 811990 -0.0 - 815991 -0.0 - 812000 -0.0 - 816001 -0.0 - 812010 -0.0 - 816011 -0.0 - 812020 -0.0 - 81203.82c -1.006100020311585e-19 - 812040 -0.0 - 81205.82c -1.0160240125331985e-19 - 812060 -0.0 - 816061 -0.0 - 812070 -0.0 - 816071 -0.0 - 812080 -0.0 - 812090 -0.0 - 812100 -0.0 - 812110 -0.0 - 812120 -0.0 - 821780 -0.0 - 821790 -0.0 - 821800 -0.0 - 821810 -0.0 - 825811 -0.0 - 821820 -0.0 - 821830 -0.0 - 825831 -0.0 - 821840 -0.0 - 821850 -0.0 - 825851 -0.0 - 821860 -0.0 - 821870 -0.0 - 825871 -0.0 - 821880 -0.0 - 821890 -0.0 - 825891 -0.0 - 821900 -0.0 - 821910 -0.0 - 825911 -0.0 - 821920 -0.0 - 821930 -0.0 - 825931 -0.0 - 821940 -0.0 - 821950 -0.0 - 825951 -0.0 - 821960 -0.0 - 821970 -0.0 - 825971 -0.0 - 821980 -0.0 - 821990 -0.0 - 825991 -0.0 - 822000 -0.0 - 822010 -0.0 - 826011 -0.0 - 822020 -0.0 - 826021 -0.0 - 822030 -0.0 - 826031 -0.0 - 827032 -0.0 - 82204.82c -1.0110603201470369e-19 - 826041 -0.0 - 822050 -0.0 - 826051 -0.0 - 82206.82c -1.0209810333690715e-19 - 82207.82c -1.0259449626621115e-19 - 826071 -0.0 - 82208.82c -1.0309055390144942e-19 - 822090 -0.0 - 822100 -0.0 - 822110 -0.0 - 822120 -0.0 - 822130 -0.0 - 822140 -0.0 - 822150 -0.0 - 831840 -0.0 - 835841 -0.0 - 831850 -0.0 - 831860 -0.0 - 835861 -0.0 - 831870 -0.0 - 835871 -0.0 - 831880 -0.0 - 835881 -0.0 - 831890 -0.0 - 835891 -0.0 - 831900 -0.0 - 835901 -0.0 - 831910 -0.0 - 835911 -0.0 - 831920 -0.0 - 835921 -0.0 - 831930 -0.0 - 835931 -0.0 - 831940 -0.0 - 835941 -0.0 - 836942 -0.0 - 831950 -0.0 - 835951 -0.0 - 831960 -0.0 - 835961 -0.0 - 836962 -0.0 - 831970 -0.0 - 835971 -0.0 - 831980 -0.0 - 835981 -0.0 - 836982 -0.0 - 831990 -0.0 - 835991 -0.0 - 832000 -0.0 - 836001 -0.0 - 837002 -0.0 - 832010 -0.0 - 836011 -0.0 - 832020 -0.0 - 832030 -0.0 - 836031 -0.0 - 832040 -0.0 - 836041 -0.0 - 837042 -0.0 - 832050 -0.0 - 832060 -0.0 - 832070 -0.0 - 832080 -0.0 - 836081 -0.0 - 83209.82c -1.0358809433264449e-19 - 832100 -0.0 - 836101 -0.0 - 832110 -0.0 - 832120 -0.0 - 836121 -0.0 - 837122 -0.0 - 832130 -0.0 - 832140 -0.0 - 832150 -0.0 - 836151 -0.0 - 832160 -0.0 - 832170 -0.0 - 832180 -0.0 - 841880 -0.0 - 841890 -0.0 - 841900 -0.0 - 841910 -0.0 - 845911 -0.0 - 841920 -0.0 - 841930 -0.0 - 845931 -0.0 - 841940 -0.0 - 841950 -0.0 - 845951 -0.0 - 841960 -0.0 - 841970 -0.0 - 845971 -0.0 - 841980 -0.0 - 841990 -0.0 - 845991 -0.0 - 842000 -0.0 - 842010 -0.0 - 846011 -0.0 - 842020 -0.0 - 842030 -0.0 - 846031 -0.0 - 842040 -0.0 - 842050 -0.0 - 846051 -0.0 - 847052 -0.0 - 842060 -0.0 - 842070 -0.0 - 846071 -0.0 - 842080 -0.0 - 842090 -0.0 - 842100 -0.0 - 842110 -0.0 - 846111 -0.0 - 842120 -0.0 - 846121 -0.0 - 842130 -0.0 - 842140 -0.0 - 842150 -0.0 - 842160 -0.0 - 842170 -0.0 - 842180 -0.0 - 842190 -0.0 - 842200 -0.0 - 851930 -0.0 - 851940 -0.0 - 855941 -0.0 - 851950 -0.0 - 855951 -0.0 - 851960 -0.0 - 855961 -0.0 - 851970 -0.0 - 855971 -0.0 - 851980 -0.0 - 855981 -0.0 - 851990 -0.0 - 852000 -0.0 - 856001 -0.0 - 857002 -0.0 - 852010 -0.0 - 852020 -0.0 - 856021 -0.0 - 857022 -0.0 - 852030 -0.0 - 852040 -0.0 - 856041 -0.0 - 852050 -0.0 - 852060 -0.0 - 852070 -0.0 - 852080 -0.0 - 852090 -0.0 - 852100 -0.0 - 852110 -0.0 - 852120 -0.0 - 856121 -0.0 - 852130 -0.0 - 852140 -0.0 - 852150 -0.0 - 852160 -0.0 - 852170 -0.0 - 852180 -0.0 - 852190 -0.0 - 852200 -0.0 - 852210 -0.0 - 852220 -0.0 - 852230 -0.0 - 861950 -0.0 - 865951 -0.0 - 861960 -0.0 - 861970 -0.0 - 865971 -0.0 - 861980 -0.0 - 861990 -0.0 - 865991 -0.0 - 862000 -0.0 - 862010 -0.0 - 866011 -0.0 - 862020 -0.0 - 862030 -0.0 - 866031 -0.0 - 862040 -0.0 - 862050 -0.0 - 862060 -0.0 - 862070 -0.0 - 862080 -0.0 - 862090 -0.0 - 862100 -0.0 - 862110 -0.0 - 862120 -0.0 - 862130 -0.0 - 862140 -0.0 - 862150 -0.0 - 862160 -0.0 - 862170 -0.0 - 862180 -0.0 - 862190 -0.0 - 862200 -0.0 - 862210 -0.0 - 862220 -0.0 - 862230 -0.0 - 862240 -0.0 - 862250 -0.0 - 862260 -0.0 - 862270 -0.0 - 862280 -0.0 - 871990 -0.0 - 872000 -0.0 - 872010 -0.0 - 872020 -0.0 - 876021 -0.0 - 872030 -0.0 - 872040 -0.0 - 876041 -0.0 - 877042 -0.0 - 872050 -0.0 - 872060 -0.0 - 876061 -0.0 - 877062 -0.0 - 872070 -0.0 - 872080 -0.0 - 872090 -0.0 - 872100 -0.0 - 872110 -0.0 - 872120 -0.0 - 872130 -0.0 - 872140 -0.0 - 876141 -0.0 - 872150 -0.0 - 872160 -0.0 - 872170 -0.0 - 872180 -0.0 - 876181 -0.0 - 872190 -0.0 - 872200 -0.0 - 872210 -0.0 - 872220 -0.0 - 872230 -0.0 - 872240 -0.0 - 872250 -0.0 - 872260 -0.0 - 872270 -0.0 - 872280 -0.0 - 872290 -0.0 - 872300 -0.0 - 872310 -0.0 - 872320 -0.0 - 882020 -0.0 - 882030 -0.0 - 886031 -0.0 - 882040 -0.0 - 882050 -0.0 - 886051 -0.0 - 882060 -0.0 - 882070 -0.0 - 886071 -0.0 - 882080 -0.0 - 882090 -0.0 - 882100 -0.0 - 882110 -0.0 - 882120 -0.0 - 882130 -0.0 - 886131 -0.0 - 882140 -0.0 - 882150 -0.0 - 882160 -0.0 - 882170 -0.0 - 882180 -0.0 - 882190 -0.0 - 882200 -0.0 - 882210 -0.0 - 882220 -0.0 - 88223.82c -1.1054654720789197e-19 - 88224.82c -1.110430779981234e-19 - 88225.82c -1.1154044668496747e-19 - 88226.82c -1.1203702116819505e-19 - 882270 -0.0 - 882280 -0.0 - 882290 -0.0 - 882300 -0.0 - 882310 -0.0 - 882320 -0.0 - 882330 -0.0 - 882340 -0.0 - 892060 -0.0 - 896061 -0.0 - 892070 -0.0 - 892080 -0.0 - 896081 -0.0 - 892090 -0.0 - 892100 -0.0 - 892110 -0.0 - 892120 -0.0 - 892130 -0.0 - 892140 -0.0 - 892150 -0.0 - 892160 -0.0 - 896161 -0.0 - 892170 -0.0 - 892180 -0.0 - 892190 -0.0 - 892200 -0.0 - 892210 -0.0 - 892220 -0.0 - 896221 -0.0 - 892230 -0.0 - 892240 -0.0 - 89225.82c -1.1154025737013036e-19 - 89226.82c -1.120373625026575e-19 - 89227.82c -1.1253386546671532e-19 - 892280 -0.0 - 892290 -0.0 - 892300 -0.0 - 892310 -0.0 - 892320 -0.0 - 892330 -0.0 - 892340 -0.0 - 892350 -0.0 - 892360 -0.0 - 902090 -0.0 - 902100 -0.0 - 902110 -0.0 - 902120 -0.0 - 902130 -0.0 - 902140 -0.0 - 902150 -0.0 - 902160 -0.0 - 902170 -0.0 - 902180 -0.0 - 902190 -0.0 - 902200 -0.0 - 902210 -0.0 - 902220 -0.0 - 902230 -0.0 - 902240 -0.0 - 902250 -0.0 - 902260 -0.0 - 90227.82c -1.1253384165012396e-19 - 90228.82c -1.130300390849071e-19 - 90229.82c -1.135272201432286e-19 - 90230.82c -1.1402358299248699e-19 - 90231.82c -1.1452083785755672e-19 - 90232.82c -0.43557913048233615 - 90233.82c -1.1551482036158553e-19 - 90234.82c -1.1601150477299508e-19 - 902350 -0.0 - 902360 -0.0 - 902370 -0.0 - 902380 -0.0 - 912120 -0.0 - 912130 -0.0 - 912140 -0.0 - 912150 -0.0 - 912160 -0.0 - 912170 -0.0 - 916171 -0.0 - 912180 -0.0 - 912190 -0.0 - 912200 -0.0 - 912210 -0.0 - 912220 -0.0 - 912230 -0.0 - 912240 -0.0 - 912250 -0.0 - 912260 -0.0 - 912270 -0.0 - 912280 -0.0 - 91229.82c -1.1352738581099802e-19 - 91230.82c -1.140242806325347e-19 - 91231.82c -1.145206295327692e-19 - 91232.82c -1.1501765501047656e-19 - 91233.82c -1.1551415931684476e-19 - 912340 -0.0 - 916341 -0.0 - 912350 -0.0 - 912360 -0.0 - 912370 -0.0 - 912380 -0.0 - 912390 -0.0 - 912400 -0.0 - 922170 -0.0 - 922180 -0.0 - 922190 -0.0 - 922200 -0.0 - 922220 -0.0 - 922230 -0.0 - 922240 -0.0 - 922250 -0.0 - 922260 -0.0 - 922270 -0.0 - 922280 -0.0 - 922290 -0.0 - 92230.82c -1.1402398337770137e-19 - 92231.82c -1.1452083260281802e-19 - 92232.82c -1.1501694348683516e-19 - 92233.82c -0.00911370203663893 - 92234.82c -1.1601019146503893e-19 - 92235.82c -1.1650735082432813e-19 - 926351 -0.0 - 92236.82c -1.1700384606266598e-19 - 92237.82c -1.1750109680563338e-19 - 92238.82c -1.1799780053084715e-19 - 92239.82c -1.184952212302359e-19 - 92240.82c -1.1899204479234085e-19 - 92241.82c -1.194895807494984e-19 - 922420 -0.0 - 932250 -0.0 - 932260 -0.0 - 932270 -0.0 - 932280 -0.0 - 932290 -0.0 - 932300 -0.0 - 932310 -0.0 - 932320 -0.0 - 932330 -0.0 - 93234.82c -1.1601115455291372e-19 - 93235.82c -1.1650741694897652e-19 - 93236.82c -1.1700434283201173e-19 - 936361 -0.0 - 93237.82c -1.1750082087360873e-19 - 93238.82c -1.1799787868771203e-19 - 93239.82c -1.1849454985248098e-19 - 932400 -0.0 - 936401 -0.0 - 932410 -0.0 - 932420 -0.0 - 936421 -0.0 - 932430 -0.0 - 932440 -0.0 - 942280 -0.0 - 942290 -0.0 - 942300 -0.0 - 942310 -0.0 - 942320 -0.0 - 942330 -0.0 - 942340 -0.0 - 942350 -0.0 - 94236.82c -1.17004089222589e-19 - 94237.82c -1.1750093797730216e-19 - 946371 -0.0 - 94238.82c -1.1799719146197055e-19 - 94239.82c -1.1849416523693517e-19 - 94240.82c -1.1899066648890287e-19 - 94241.82c -1.194878556338018e-19 - 94242.82c -1.1998447643466866e-19 - 94243.82c -1.2048177619823637e-19 - 94244.82c -1.2097855114322723e-19 - 942450 -0.0 - 94246.82c -1.2197289174820622e-19 - 942470 -0.0 - 952310 -0.0 - 952320 -0.0 - 952330 -0.0 - 952340 -0.0 - 952350 -0.0 - 952360 -0.0 - 952370 -0.0 - 952380 -0.0 - 952390 -0.0 - 95240.82c -1.1899140338756393e-19 - 95241.82c -1.1948784457560299e-19 - 95242.82c -1.199848761452581e-19 - 95642.82c -1.199848761452581e-19 - 957422 -0.0 - 95243.82c -1.204814677944942e-19 - 95244.82c -1.2097859007865504e-19 - 95644.82c -1.2097859007865504e-19 - 952450 -0.0 - 952460 -0.0 - 956461 -0.0 - 952470 -0.0 - 952480 -0.0 - 952490 -0.0 - 962330 -0.0 - 962340 -0.0 - 962350 -0.0 - 962360 -0.0 - 962370 -0.0 - 962380 -0.0 - 962390 -0.0 - 96240.82c -1.1899151733772019e-19 - 96241.82c -1.1948825295668476e-19 - 96242.82c -1.1998452264127486e-19 - 96243.82c -1.204814714937787e-19 - 96244.82c -1.2097783055799936e-19 - 966441 -0.0 - 96245.82c -1.2147487224157663e-19 - 96246.82c -1.2197141355764302e-19 - 96247.82c -1.2246864866923743e-19 - 96248.82c -1.2296532154262668e-19 - 96249.82c -1.2346279173748035e-19 - 96250.82c -1.2395966644071876e-19 - 962510 -0.0 - 972350 -0.0 - 972370 -0.0 - 972380 -0.0 - 972400 -0.0 - 972410 -0.0 - 972420 -0.0 - 972430 -0.0 - 972440 -0.0 - 97245.82c -1.2147530287735169e-19 - 97246.82c -1.2197213194401973e-19 - 97247.82c -1.2246862547819837e-19 - 97248.82c -1.2296568730684077e-19 - 976481 -0.0 - 97249.82c -1.2346231051623278e-19 - 97250.82c -1.2395964535980357e-19 - 972510 -0.0 - 972530 -0.0 - 972540 -0.0 - 982370 -0.0 - 982380 -0.0 - 982390 -0.0 - 982400 -0.0 - 982410 -0.0 - 982420 -0.0 - 982430 -0.0 - 982440 -0.0 - 982450 -0.0 - 98246.82c -1.219721975700107e-19 - 982470 -0.0 - 98248.82c -1.2296523919822922e-19 - 98249.82c -1.2346224474351956e-19 - 98250.82c -1.2395869837370522e-19 - 98251.82c -1.2445595926777096e-19 - 98252.82c -1.2495265342034882e-19 - 98253.82c -1.2545007519190052e-19 - 98254.82c -1.2594684396860835e-19 - 982550 -0.0 - 982560 -0.0 - 992400 -0.0 - 992410 -0.0 - 992420 -0.0 - 992430 -0.0 - 992440 -0.0 - 992450 -0.0 - 992460 -0.0 - 992470 -0.0 - 996471 -0.0 - 992480 -0.0 - 992490 -0.0 - 992500 -0.0 - 996501 -0.0 - 99251.82c -1.2445616002198736e-19 - 99252.82c -1.2495332391430038e-19 - 99253.82c -1.2544992032407894e-19 - 99254.82c -1.2594718942864292e-19 - 99654.82c -1.2594718942864292e-19 - 99255.82c -1.2644398951964776e-19 - 992560 -0.0 - 996561 -0.0 - 992570 -0.0 - 992580 -0.0 - 1002420 -0.0 - 1002430 -0.0 - 1002440 -0.0 - 1002450 -0.0 - 1002460 -0.0 - 1002470 -0.0 - 1002480 -0.0 - 1002490 -0.0 - 1002500 -0.0 - 1006501 -0.0 - 1002510 -0.0 - 1002520 -0.0 - 1002530 -0.0 - 1002540 -0.0 - 100255.82c -1.2644383540179498e-19 - 1002560 -0.0 - 1002570 -0.0 - 1002580 -0.0 - 1002590 -0.0 - 1002600 -0.0 - 1012450 -0.0 - 1016451 -0.0 - 1012460 -0.0 - 1012470 -0.0 - 1016471 -0.0 - 1012480 -0.0 - 1012490 -0.0 - 1016491 -0.0 - 1012500 -0.0 - 1012510 -0.0 - 1012520 -0.0 - 1012530 -0.0 - 1012540 -0.0 - 1016541 -0.0 - 1012550 -0.0 - 1012560 -0.0 - 1012570 -0.0 - 1012580 -0.0 - 1016581 -0.0 - 1012590 -0.0 - 1012600 -0.0 - 1012610 -0.0 - 1022500 -0.0 - 1022510 -0.0 - 1026511 -0.0 - 1022520 -0.0 - 1022530 -0.0 - 1022540 -0.0 - 1026541 -0.0 - 1022550 -0.0 - 1022560 -0.0 - 1022570 -0.0 - 1022580 -0.0 - 1022590 -0.0 - 1022600 -0.0 - 1022610 -0.0 - 1022620 -0.0 - 1032510 -0.0 - 1032520 -0.0 - 1032530 -0.0 - 1036531 -0.0 - 1032540 -0.0 - 1032550 -0.0 - 1036551 -0.0 - 1032560 -0.0 - 1032570 -0.0 - 1032580 -0.0 - 1032590 -0.0 - 1032600 -0.0 - 1032610 -0.0 - 1032620 -0.0 - 1032630 -0.0 - 1042530 -0.0 - 1042540 -0.0 - 1042550 -0.0 - 1042560 -0.0 - 1042570 -0.0 - 1046571 -0.0 - 1042580 -0.0 - 1042590 -0.0 - 1042600 -0.0 - 1042610 -0.0 - 1046611 -0.0 - 1042620 -0.0 - 1042630 -0.0 - 1042640 -0.0 - 1042650 -0.0 - 1052550 -0.0 - 1052560 -0.0 - 1052570 -0.0 - 1056571 -0.0 - 1052580 -0.0 - 1056581 -0.0 - 1052590 -0.0 - 1052600 -0.0 - 1052610 -0.0 - 1052620 -0.0 - 1052630 -0.0 - 1052640 -0.0 - 1052650 -0.0 - 1062580 -0.0 - 1062590 -0.0 - 1062600 -0.0 - 1062610 -0.0 - 1062620 -0.0 - 1062630 -0.0 - 1066631 -0.0 - 1062640 -0.0 - 1062650 -0.0 - 1062660 -0.0 - 1062690 -0.0 - 1072600 -0.0 - 1072610 -0.0 - 1072620 -0.0 - 1076621 -0.0 - 1072630 -0.0 - 1072640 -0.0 - 1072650 -0.0 - 1072660 -0.0 - 1072670 -0.0 - 1072690 -0.0 - 1082630 -0.0 - 1082640 -0.0 - 1082650 -0.0 - 1086651 -0.0 - 1082660 -0.0 - 1082670 -0.0 - 1082680 -0.0 - 1082690 -0.0 - 1082730 -0.0 - 1092650 -0.0 - 1092660 -0.0 - 1096661 -0.0 - 1092670 -0.0 - 1092680 -0.0 - 1092690 -0.0 - 1092700 -0.0 - 1092710 -0.0 - 1092730 -0.0 - 1102670 -0.0 - 1102680 -0.0 - 1102690 -0.0 - 1102700 -0.0 - 1106701 -0.0 - 1102710 -0.0 - 1106711 -0.0 - 1102720 -0.0 - 1102730 -0.0 - 1106791 -0.0 - 1112720 -0.0 diff --git a/examples/msbr/msbr_endfb71.serpent b/examples/msbr/msbr_endfb71.serpent index 0f3c71bec..cb844c324 100644 --- a/examples/msbr/msbr_endfb71.serpent +++ b/examples/msbr/msbr_endfb71.serpent @@ -1,6 +1,6 @@ % Include file with burnable material composition on the line below -include "mats/msbr_saltproc_prepr_comp_endfb71.ini" -%%include "mats/msbr_saltproc_prepr_comp_endfb71.ini" +include "mats/msbr_saltproc_prepr_comp_endfb71-base.ini" +%%include "mats/msbr_saltproc_prepr_comp_endfb71-diluted.ini" % Include file with non-burnable material composition on the line below %include "mats/non_burnable_mats.ini" % Geometry import will be added by SaltProc on the next line @@ -97,7 +97,7 @@ set stabcut 1E-12 %set bunorm 2 %set opti 3 -%%set power 2.25E+9 dep daystep 3 3 3 3 3 3 3 3 3 3 3 3 +set power 2.25E+9 dep daystep 3 3 3 3 3 3 3 3 3 3 3 3 %set rfw 1 restart %%set inventory fuel all From f09907b783d718358321b43c9dc01938acdcad5e Mon Sep 17 00:00:00 2001 From: yardasol Date: Tue, 1 Nov 2022 14:21:23 -0500 Subject: [PATCH 38/62] Added README --- examples/msbr/README.md | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 examples/msbr/README.md diff --git a/examples/msbr/README.md b/examples/msbr/README.md new file mode 100644 index 000000000..a8b492924 --- /dev/null +++ b/examples/msbr/README.md @@ -0,0 +1,27 @@ +## MSBR Model + +Based on the design paper by Robertson, 1971 + +Figure 3.27, pg 46 +Figure 3.4, pg 17 +Figure 3.5, pg 18 +Figure 3.3, pg 16 + +Model features: +- Simplified Zone IA (graphite element is idential Zone IIA in the model, does not match original paper spec) +- Simplified Zone IIA (graphite element does not match the original spec) +- Simplified Zone IIB (graphite slabs are constructed from cylindrical sectors, and so do not have a consistent width; the last gap in the ccw direction in each octant is smaller than the other gaps, which all have the same dimension) +- Control rod elements (A Guess, as no spec was provided) +- Radial reflectors. +- Simplified axial reflectors (flat and cover more than what the MSBR does) + +Missing from model: +- Zone IB +- Top part of core (filled with salt?) +- Radial reflector axial ribs +- Radial reflector retaining rings +- Upper salt plenum +- Zone IIB Graphite Dowel pins and Hastelloy N eliptical pins +- Salt inlets and outlest +- Top and bottom dished heads +- Zone I eliptical graphite sealing pins From b7056f85882bc3ff660f8c9672989f9c579bb82a Mon Sep 17 00:00:00 2001 From: yardasol Date: Wed, 2 Nov 2022 16:33:30 -0500 Subject: [PATCH 39/62] add saltproc input file for endfb71 msbr example --- examples/msbr/geometry/msbr_full.ini | 3 --- examples/msbr/msbr_endfb71.serpent | 15 +++++++-------- examples/msbr/msbr_endfb71_main.json | 27 +++++++++++++++++++++++++++ 3 files changed, 34 insertions(+), 11 deletions(-) create mode 100644 examples/msbr/msbr_endfb71_main.json diff --git a/examples/msbr/geometry/msbr_full.ini b/examples/msbr/geometry/msbr_full.ini index 7f2c40a42..58fc7082a 100644 --- a/examples/msbr/geometry/msbr_full.ini +++ b/examples/msbr/geometry/msbr_full.ini @@ -1,7 +1,6 @@ % --- Surfaces (core pitch = 10.16 cm): Zone I-A surf 1 cyl 0.0 0.0 1.71069 % Hole with fuel salt surf 2 sqc 0.0 0.0 4.953 0.46 % Graphite square outer wall 1.07 -%surf 3 sqc 0.0 0.0 5.08 % Outer boundary surf 4 cyl -4.28498 4.53898 0.66802 % Left-upper graphite element 1.15 surf 5 cyl 4.28498 -4.53898 0.66802 % Right-bottom graphite element surf 6 cyl -4.53898 -4.28498 0.66802 % Left-bottom graphite element @@ -54,7 +53,6 @@ lat 1 9 0.0 0.0 5 % --- Surfaces (core pitch = 10.16 cm) - Zone II-A Universe 2: surf 21 cyl 0.0 0.0 3.302 % Hole with fuel salt (Fig.3.5 Robertson) 3.27787 - p. 47 surf 22 sqc 0.0 0.0 4.953 0.46 % Graphite square outer wall 1.07 -%surf 23 sqc 0.0 0.0 5.08 % Outer boundary surf 24 cyl -4.28498 4.53898 0.66802 % Left-upper graphite element 1.15 surf 25 cyl 4.28498 -4.53898 0.66802 % Right-bottom graphite element surf 26 cyl -4.53898 -4.28498 0.66802 % Left-bottom graphite element @@ -113,7 +111,6 @@ lat 2 9 0.0 0.0 5 % --- Surfaces (core pitch = 15.24 cm) - Control rods Universe 3: surf 41 cyl 0.0 0.0 5.08 % Hole with fuel salt surf 42 sqc 0.0 0.0 7.23646 0.99 % Graphite square outer wall 1.07 -%surf 43 sqc 0.0 0.0 7.62 % Outer boundary surf 44 hexyc -5.8801 6.505 1.16 0.18 % Left-upper graphite element 1.15 surf 45 hexyc 5.8801 -6.505 1.16 0.18 % Right-bottom graphite element surf 46 hexxc -6.505 -5.8801 1.16 0.18 % Left-bottom graphite element diff --git a/examples/msbr/msbr_endfb71.serpent b/examples/msbr/msbr_endfb71.serpent index cb844c324..ee9c9bf7a 100644 --- a/examples/msbr/msbr_endfb71.serpent +++ b/examples/msbr/msbr_endfb71.serpent @@ -1,6 +1,5 @@ % Include file with burnable material composition on the line below -include "mats/msbr_saltproc_prepr_comp_endfb71-base.ini" -%%include "mats/msbr_saltproc_prepr_comp_endfb71-diluted.ini" +include "mats/msbr_saltproc_prepr_comp_endfb71-diluted.ini" % Include file with non-burnable material composition on the line below %include "mats/non_burnable_mats.ini" % Geometry import will be added by SaltProc on the next line @@ -11,7 +10,7 @@ include "mats/msbr_saltproc_prepr_comp_endfb71-base.ini" -include "geometry/msbr_full.ini" +%%include "geometry/msbr_full.ini" % --- Moderator graphite: mat moder -1.84 tmp 900 rgb 128 0 128 moder gr 6000 6000.82c -1.0 %tmp 908 % --- Hastelloy N @@ -90,16 +89,16 @@ set stabcut 1E-12 % --- Depletion parameters % --- Options for burnup calculation: -%%set bumode 2 -48 % IPF CRAM-48 method -%%set pcc 0 % Predictor +set bumode 2 -48 % IPF CRAM-48 method +set pcc 0 % Predictor %set pcc 1 % CELI %set xscalc 2 % Cross sections from spectrum %set bunorm 2 %set opti 3 -set power 2.25E+9 dep daystep 3 3 3 3 3 3 3 3 3 3 3 3 +%%set power 2.25E+9 dep daystep 3 3 3 3 3 3 3 3 3 3 3 3 %set rfw 1 restart -%%set inventory fuel all +set inventory fuel all -%set printm 1 0.0%set printm 1 0.0 +%set printm 1 0.0 diff --git a/examples/msbr/msbr_endfb71_main.json b/examples/msbr/msbr_endfb71_main.json new file mode 100644 index 000000000..485692235 --- /dev/null +++ b/examples/msbr/msbr_endfb71_main.json @@ -0,0 +1,27 @@ +{ + "proc_input_file": "msbr_objects.json", + "dot_input_file": "msbr.dot", + "output_path": "./data", + "num_depsteps": 12, + "depcode": { + "codename": "serpent", + "exec_path": "sss2", + "template_input_file_path": "./msbr_endfb71.serpent", + "npop": 50, + "active_cycles": 20, + "inactive_cycles": 20, + "geo_file_paths": ["./geometry/msbr_full.ini"] + }, + "simulation": { + "sim_name": "msbr_example_simulation", + "db_name": "msbr_kl_100_saltproc.h5", + "restart_flag": false, + "adjust_geo": false + }, + "reactor": { + "volume": 1.0, + "mass_flowrate": 9920000, + "power_levels": [ 2250000000 ], + "dep_step_length_cumulative": [ 3 ] + } +} From f3af3d8d87d2c039c2c7a4a2247fa151bba461f8 Mon Sep 17 00:00:00 2001 From: yardasol Date: Wed, 2 Nov 2022 16:37:14 -0500 Subject: [PATCH 40/62] remove duplicate material files --- .../msbr_saltproc_prepr_comp_endfb71-base.ini | 8 - .../mats/msbr_saltproc_prepr_comp_endfb71.ini | 3822 ----------------- 2 files changed, 3830 deletions(-) delete mode 100644 examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71-base.ini delete mode 100644 examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71.ini diff --git a/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71-base.ini b/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71-base.ini deleted file mode 100644 index 2026abf86..000000000 --- a/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71-base.ini +++ /dev/null @@ -1,8 +0,0 @@ -% Material compositions (after 0.000000 days) - -mat fuel -3.350000000E+00 rgb 255 255 0 burn 1 fix 82c 900 vol 4.87100E+07 - 3007.82c -0.07874746738790851 - 4009.82c -0.02255668791383211 - 9019.82c -0.45400301217928424 - 90232.82c -0.43557913048233615 - 92233.82c -0.00911370203663893 diff --git a/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71.ini b/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71.ini deleted file mode 100644 index ba9856c18..000000000 --- a/examples/msbr/mats/msbr_saltproc_prepr_comp_endfb71.ini +++ /dev/null @@ -1,3822 +0,0 @@ -% Material compositions (after 0.000000 days) - -mat fuel -3.350000000E+00 rgb 255 255 0 burn 1 fix 82c 900 vol 4.87100E+07 - 1001.82c -0.0 - 1002.82c -0.0 - 1003.82c -0.0 - 10040 -0.0 - 10050 -0.0 - 10060 -0.0 - 10070 -0.0 - 2003.82c -0.0 - 2004.82c -0.0 - 20050 -0.0 - 20060 -0.0 - 20070 -0.0 - 20080 -0.0 - 20090 -0.0 - 20100 -0.0 - 30040 -0.0 - 30050 -0.0 - 3006.82c -0.0 - 3007.82c -0.07874746738790851 - 30080 -0.0 - 30090 -0.0 - 30100 -0.0 - 30110 -0.0 - 30120 -0.0 - 40050 -0.0 - 40060 -0.0 - 40080 -0.0 - 4009.82c -0.02255668791383211 - 40100 -0.0 - 40110 -0.0 - 40120 -0.0 - 40130 -0.0 - 40140 -0.0 - 40150 -0.0 - 40160 -0.0 - 50060 -0.0 - 50070 -0.0 - 50080 -0.0 - 50090 -0.0 - 5010.82c -0.0 - 5011.82c -0.0 - 50120 -0.0 - 50130 -0.0 - 50140 -0.0 - 50150 -0.0 - 50160 -0.0 - 50170 -0.0 - 50180 -0.0 - 50190 -0.0 - 60080 -0.0 - 60090 -0.0 - 60100 -0.0 - 60110 -0.0 - 60120 -0.0 - 60130 -0.0 - 60140 -0.0 - 60150 -0.0 - 60160 -0.0 - 60170 -0.0 - 60180 -0.0 - 60190 -0.0 - 60200 -0.0 - 60210 -0.0 - 60220 -0.0 - 70100 -0.0 - 70110 -0.0 - 70120 -0.0 - 70130 -0.0 - 7014.82c -0.0 - 7015.82c -0.0 - 70160 -0.0 - 70170 -0.0 - 70180 -0.0 - 70190 -0.0 - 70200 -0.0 - 70210 -0.0 - 70220 -0.0 - 70230 -0.0 - 70240 -0.0 - 70250 -0.0 - 80120 -0.0 - 80130 -0.0 - 80140 -0.0 - 80150 -0.0 - 8016.82c -0.0 - 8017.82c -0.0 - 80180 -0.0 - 80190 -0.0 - 80200 -0.0 - 80210 -0.0 - 80220 -0.0 - 80230 -0.0 - 80240 -0.0 - 80250 -0.0 - 80260 -0.0 - 80270 -0.0 - 80280 -0.0 - 90140 -0.0 - 90150 -0.0 - 90160 -0.0 - 90170 -0.0 - 90180 -0.0 - 9019.82c -0.45400301217928424 - 90200 -0.0 - 90210 -0.0 - 90220 -0.0 - 90230 -0.0 - 90240 -0.0 - 90250 -0.0 - 90260 -0.0 - 90270 -0.0 - 90280 -0.0 - 90290 -0.0 - 90300 -0.0 - 90310 -0.0 - 100160 -0.0 - 100170 -0.0 - 100180 -0.0 - 100190 -0.0 - 100200 -0.0 - 100210 -0.0 - 100220 -0.0 - 100230 -0.0 - 100240 -0.0 - 100250 -0.0 - 100260 -0.0 - 100270 -0.0 - 100280 -0.0 - 100290 -0.0 - 100300 -0.0 - 100310 -0.0 - 100320 -0.0 - 100330 -0.0 - 100340 -0.0 - 110180 -0.0 - 110190 -0.0 - 110200 -0.0 - 110210 -0.0 - 11022.82c -0.0 - 11023.82c -0.0 - 110240 -0.0 - 114241 -0.0 - 110250 -0.0 - 110260 -0.0 - 110270 -0.0 - 110280 -0.0 - 110290 -0.0 - 110300 -0.0 - 110310 -0.0 - 110320 -0.0 - 110330 -0.0 - 110340 -0.0 - 110350 -0.0 - 110360 -0.0 - 110370 -0.0 - 120190 -0.0 - 120200 -0.0 - 120210 -0.0 - 120220 -0.0 - 120230 -0.0 - 12024.82c -0.0 - 12025.82c -0.0 - 12026.82c -0.0 - 120270 -0.0 - 120280 -0.0 - 120290 -0.0 - 120300 -0.0 - 120310 -0.0 - 120320 -0.0 - 120330 -0.0 - 120340 -0.0 - 120350 -0.0 - 120360 -0.0 - 120370 -0.0 - 120380 -0.0 - 120390 -0.0 - 120400 -0.0 - 130210 -0.0 - 130220 -0.0 - 130230 -0.0 - 130240 -0.0 - 134241 -0.0 - 130250 -0.0 - 130260 -0.0 - 134261 -0.0 - 13027.82c -0.0 - 130280 -0.0 - 130290 -0.0 - 130300 -0.0 - 130310 -0.0 - 130320 -0.0 - 130330 -0.0 - 130340 -0.0 - 130350 -0.0 - 130360 -0.0 - 130370 -0.0 - 130380 -0.0 - 130390 -0.0 - 130400 -0.0 - 130410 -0.0 - 130420 -0.0 - 140220 -0.0 - 140230 -0.0 - 140240 -0.0 - 140250 -0.0 - 140260 -0.0 - 140270 -0.0 - 14028.82c -0.0 - 14029.82c -0.0 - 14030.82c -0.0 - 140310 -0.0 - 140320 -0.0 - 140330 -0.0 - 140340 -0.0 - 140350 -0.0 - 140360 -0.0 - 140370 -0.0 - 140380 -0.0 - 140390 -0.0 - 140400 -0.0 - 140410 -0.0 - 140420 -0.0 - 140430 -0.0 - 140440 -0.0 - 150240 -0.0 - 150250 -0.0 - 150260 -0.0 - 150270 -0.0 - 150280 -0.0 - 150290 -0.0 - 150300 -0.0 - 15031.82c -0.0 - 150320 -0.0 - 150330 -0.0 - 150340 -0.0 - 150350 -0.0 - 150360 -0.0 - 150370 -0.0 - 150380 -0.0 - 150390 -0.0 - 150400 -0.0 - 150410 -0.0 - 150420 -0.0 - 150430 -0.0 - 150440 -0.0 - 150450 -0.0 - 150460 -0.0 - 160260 -0.0 - 160270 -0.0 - 160280 -0.0 - 160290 -0.0 - 160300 -0.0 - 160310 -0.0 - 16032.82c -0.0 - 16033.82c -0.0 - 16034.82c -0.0 - 160350 -0.0 - 16036.82c -0.0 - 160370 -0.0 - 160380 -0.0 - 160390 -0.0 - 160400 -0.0 - 160410 -0.0 - 160420 -0.0 - 160430 -0.0 - 160440 -0.0 - 160450 -0.0 - 160460 -0.0 - 160480 -0.0 - 160490 -0.0 - 170280 -0.0 - 170290 -0.0 - 170300 -0.0 - 170310 -0.0 - 170320 -0.0 - 170330 -0.0 - 170340 -0.0 - 174341 -0.0 - 17035.82c -0.0 - 170360 -0.0 - 17037.82c -0.0 - 170380 -0.0 - 174381 -0.0 - 170390 -0.0 - 170400 -0.0 - 170410 -0.0 - 170420 -0.0 - 170430 -0.0 - 170440 -0.0 - 170450 -0.0 - 170460 -0.0 - 170470 -0.0 - 170480 -0.0 - 170490 -0.0 - 170500 -0.0 - 170510 -0.0 - 180300 -0.0 - 180310 -0.0 - 180320 -0.0 - 180330 -0.0 - 180340 -0.0 - 180350 -0.0 - 18036.82c -0.0 - 180370 -0.0 - 18038.82c -0.0 - 180390 -0.0 - 18040.82c -0.0 - 180410 -0.0 - 180420 -0.0 - 180430 -0.0 - 180440 -0.0 - 180450 -0.0 - 180460 -0.0 - 180470 -0.0 - 180480 -0.0 - 180490 -0.0 - 180500 -0.0 - 180510 -0.0 - 180520 -0.0 - 180530 -0.0 - 190320 -0.0 - 190330 -0.0 - 190340 -0.0 - 190350 -0.0 - 190360 -0.0 - 190370 -0.0 - 190380 -0.0 - 194381 -0.0 - 19039.82c -0.0 - 19040.82c -0.0 - 19041.82c -0.0 - 190420 -0.0 - 190430 -0.0 - 190440 -0.0 - 190450 -0.0 - 190460 -0.0 - 190470 -0.0 - 190480 -0.0 - 190490 -0.0 - 190500 -0.0 - 190510 -0.0 - 190520 -0.0 - 190530 -0.0 - 190540 -0.0 - 190550 -0.0 - 200340 -0.0 - 200350 -0.0 - 200360 -0.0 - 200370 -0.0 - 200380 -0.0 - 200390 -0.0 - 20040.82c -0.0 - 200410 -0.0 - 20042.82c -0.0 - 20043.82c -0.0 - 20044.82c -0.0 - 200450 -0.0 - 20046.82c -0.0 - 200470 -0.0 - 20048.82c -0.0 - 200490 -0.0 - 200500 -0.0 - 200510 -0.0 - 200520 -0.0 - 200530 -0.0 - 200540 -0.0 - 200550 -0.0 - 200560 -0.0 - 200570 -0.0 - 210360 -0.0 - 210370 -0.0 - 210380 -0.0 - 210390 -0.0 - 210400 -0.0 - 210410 -0.0 - 210420 -0.0 - 214421 -0.0 - 210430 -0.0 - 210440 -0.0 - 214441 -0.0 - 21045.82c -0.0 - 214451 -0.0 - 210460 -0.0 - 214461 -0.0 - 210470 -0.0 - 210480 -0.0 - 210490 -0.0 - 210500 -0.0 - 214501 -0.0 - 210510 -0.0 - 210520 -0.0 - 210530 -0.0 - 210540 -0.0 - 210550 -0.0 - 210560 -0.0 - 210570 -0.0 - 210580 -0.0 - 210590 -0.0 - 210600 -0.0 - 220380 -0.0 - 220390 -0.0 - 220400 -0.0 - 220410 -0.0 - 220420 -0.0 - 220430 -0.0 - 220440 -0.0 - 220450 -0.0 - 22046.82c -0.0 - 22047.82c -0.0 - 22048.82c -0.0 - 22049.82c -0.0 - 22050.82c -0.0 - 220510 -0.0 - 220520 -0.0 - 220530 -0.0 - 220540 -0.0 - 220550 -0.0 - 220560 -0.0 - 220570 -0.0 - 220580 -0.0 - 220590 -0.0 - 220600 -0.0 - 220610 -0.0 - 220620 -0.0 - 220630 -0.0 - 230400 -0.0 - 230410 -0.0 - 230420 -0.0 - 230430 -0.0 - 230440 -0.0 - 234441 -0.0 - 230450 -0.0 - 230460 -0.0 - 234461 -0.0 - 230470 -0.0 - 230480 -0.0 - 230490 -0.0 - 23050.82c -0.0 - 23051.82c -0.0 - 230520 -0.0 - 230530 -0.0 - 230540 -0.0 - 230550 -0.0 - 230560 -0.0 - 230570 -0.0 - 230580 -0.0 - 230590 -0.0 - 230600 -0.0 - 230610 -0.0 - 230620 -0.0 - 230630 -0.0 - 230640 -0.0 - 230650 -0.0 - 240420 -0.0 - 240430 -0.0 - 240440 -0.0 - 240450 -0.0 - 240460 -0.0 - 240470 -0.0 - 240480 -0.0 - 240490 -0.0 - 24050.82c -0.0 - 240510 -0.0 - 24052.82c -0.0 - 24053.82c -0.0 - 24054.82c -0.0 - 240550 -0.0 - 240560 -0.0 - 240570 -0.0 - 240580 -0.0 - 240590 -0.0 - 240600 -0.0 - 240610 -0.0 - 240620 -0.0 - 240630 -0.0 - 240640 -0.0 - 240650 -0.0 - 240660 -0.0 - 240670 -0.0 - 250440 -0.0 - 250450 -0.0 - 250460 -0.0 - 250470 -0.0 - 250480 -0.0 - 250490 -0.0 - 250500 -0.0 - 254501 -0.0 - 250510 -0.0 - 250520 -0.0 - 254521 -0.0 - 250530 -0.0 - 250540 -0.0 - 25055.82c -0.0 - 250560 -0.0 - 250570 -0.0 - 250580 -0.0 - 254581 -0.0 - 250590 -0.0 - 250600 -0.0 - 254601 -0.0 - 250610 -0.0 - 250620 -0.0 - 254621 -0.0 - 250630 -0.0 - 250640 -0.0 - 250650 -0.0 - 250660 -0.0 - 250670 -0.0 - 250680 -0.0 - 250690 -0.0 - 260450 -0.0 - 260460 -0.0 - 260470 -0.0 - 260480 -0.0 - 260490 -0.0 - 260500 -0.0 - 260510 -0.0 - 260520 -0.0 - 264521 -0.0 - 260530 -0.0 - 264531 -0.0 - 26054.82c -0.0 - 260550 -0.0 - 26056.82c -0.0 - 26057.82c -0.0 - 26058.82c -0.0 - 260590 -0.0 - 260600 -0.0 - 260610 -0.0 - 260620 -0.0 - 260630 -0.0 - 260640 -0.0 - 260650 -0.0 - 264651 -0.0 - 260660 -0.0 - 260670 -0.0 - 260680 -0.0 - 260690 -0.0 - 260700 -0.0 - 260710 -0.0 - 260720 -0.0 - 270490 -0.0 - 270500 -0.0 - 270510 -0.0 - 270520 -0.0 - 270530 -0.0 - 274531 -0.0 - 270540 -0.0 - 274541 -0.0 - 270550 -0.0 - 270560 -0.0 - 270570 -0.0 - 27058.82c -0.0 - 27458.82c -0.0 - 27059.82c -0.0 - 270600 -0.0 - 274601 -0.0 - 270610 -0.0 - 270620 -0.0 - 274621 -0.0 - 270630 -0.0 - 270640 -0.0 - 270650 -0.0 - 270660 -0.0 - 270670 -0.0 - 270680 -0.0 - 274681 -0.0 - 270690 -0.0 - 270700 -0.0 - 274701 -0.0 - 270710 -0.0 - 270720 -0.0 - 270730 -0.0 - 270740 -0.0 - 270750 -0.0 - 280480 -0.0 - 280490 -0.0 - 280500 -0.0 - 280510 -0.0 - 280520 -0.0 - 280530 -0.0 - 280540 -0.0 - 280550 -0.0 - 280560 -0.0 - 280570 -0.0 - 28058.82c -0.0 - 28059.82c -0.0 - 28060.82c -0.0 - 28061.82c -0.0 - 28062.82c -0.0 - 280630 -0.0 - 28064.82c -0.0 - 280650 -0.0 - 280660 -0.0 - 280670 -0.0 - 280680 -0.0 - 280690 -0.0 - 284691 -0.0 - 280700 -0.0 - 280710 -0.0 - 280720 -0.0 - 280730 -0.0 - 280740 -0.0 - 280750 -0.0 - 280760 -0.0 - 280770 -0.0 - 280780 -0.0 - 290520 -0.0 - 290530 -0.0 - 290540 -0.0 - 290550 -0.0 - 290560 -0.0 - 290570 -0.0 - 290580 -0.0 - 290590 -0.0 - 290600 -0.0 - 290610 -0.0 - 290620 -0.0 - 29063.82c -0.0 - 290640 -0.0 - 29065.82c -0.0 - 290660 -0.0 - 290670 -0.0 - 290680 -0.0 - 294681 -0.0 - 290690 -0.0 - 290700 -0.0 - 294701 -0.0 - 295702 -0.0 - 290710 -0.0 - 290720 -0.0 - 290730 -0.0 - 290740 -0.0 - 290750 -0.0 - 290760 -0.0 - 294761 -0.0 - 290770 -0.0 - 290780 -0.0 - 290790 -0.0 - 290800 -0.0 - 290810 -0.0 - 300540 -0.0 - 300550 -0.0 - 300560 -0.0 - 300570 -0.0 - 300580 -0.0 - 300590 -0.0 - 300600 -0.0 - 300610 -0.0 - 304611 -0.0 - 305612 -0.0 - 300620 -0.0 - 300630 -0.0 - 30064.82c -0.0 - 30065.82c -0.0 - 30066.82c -0.0 - 30067.82c -0.0 - 30068.82c -0.0 - 300690 -0.0 - 304691 -0.0 - 30070.82c -0.0 - 300710 -0.0 - 304711 -0.0 - 300720 -0.0 - 300730 -0.0 - 304731 -0.0 - 305732 -0.0 - 300740 -0.0 - 300750 -0.0 - 300760 -0.0 - 300770 -0.0 - 304771 -0.0 - 300780 -0.0 - 300790 -0.0 - 300800 -0.0 - 300810 -0.0 - 300820 -0.0 - 300830 -0.0 - 310560 -0.0 - 310570 -0.0 - 310580 -0.0 - 310590 -0.0 - 310600 -0.0 - 310610 -0.0 - 310620 -0.0 - 310630 -0.0 - 310640 -0.0 - 310650 -0.0 - 310660 -0.0 - 310670 -0.0 - 310680 -0.0 - 31069.82c -0.0 - 310700 -0.0 - 31071.82c -0.0 - 310720 -0.0 - 314721 -0.0 - 310730 -0.0 - 310740 -0.0 - 314741 -0.0 - 310750 -0.0 - 310760 -0.0 - 310770 -0.0 - 310780 -0.0 - 310790 -0.0 - 310800 -0.0 - 310810 -0.0 - 310820 -0.0 - 310830 -0.0 - 310840 -0.0 - 310850 -0.0 - 310860 -0.0 - 320580 -0.0 - 320590 -0.0 - 320600 -0.0 - 320610 -0.0 - 320620 -0.0 - 320630 -0.0 - 320640 -0.0 - 320650 -0.0 - 320660 -0.0 - 320670 -0.0 - 320680 -0.0 - 320690 -0.0 - 32070.82c -0.0 - 320710 -0.0 - 324711 -0.0 - 32072.82c -0.0 - 32073.82c -0.0 - 324731 -0.0 - 32074.82c -0.0 - 320750 -0.0 - 324751 -0.0 - 32076.82c -0.0 - 320770 -0.0 - 324771 -0.0 - 320780 -0.0 - 320790 -0.0 - 324791 -0.0 - 320800 -0.0 - 320810 -0.0 - 324811 -0.0 - 320820 -0.0 - 320830 -0.0 - 320840 -0.0 - 320850 -0.0 - 320860 -0.0 - 320870 -0.0 - 320880 -0.0 - 320890 -0.0 - 330600 -0.0 - 330610 -0.0 - 330620 -0.0 - 330630 -0.0 - 330640 -0.0 - 330650 -0.0 - 330660 -0.0 - 330670 -0.0 - 330680 -0.0 - 330690 -0.0 - 330700 -0.0 - 330710 -0.0 - 330720 -0.0 - 330730 -0.0 - 33074.82c -0.0 - 33075.82c -0.0 - 334751 -0.0 - 330760 -0.0 - 330770 -0.0 - 330780 -0.0 - 330790 -0.0 - 330800 -0.0 - 330810 -0.0 - 330820 -0.0 - 334821 -0.0 - 330830 -0.0 - 330840 -0.0 - 330850 -0.0 - 330860 -0.0 - 330870 -0.0 - 330880 -0.0 - 330890 -0.0 - 330900 -0.0 - 330910 -0.0 - 330920 -0.0 - 340650 -0.0 - 340660 -0.0 - 340670 -0.0 - 340680 -0.0 - 340690 -0.0 - 340700 -0.0 - 340710 -0.0 - 340720 -0.0 - 340730 -0.0 - 344731 -0.0 - 34074.82c -0.0 - 340750 -0.0 - 34076.82c -0.0 - 34077.82c -0.0 - 344771 -0.0 - 34078.82c -0.0 - 34079.82c -0.0 - 344791 -0.0 - 34080.82c -0.0 - 340810 -0.0 - 344811 -0.0 - 34082.82c -0.0 - 340830 -0.0 - 344831 -0.0 - 340840 -0.0 - 340850 -0.0 - 340860 -0.0 - 340870 -0.0 - 340880 -0.0 - 340890 -0.0 - 340900 -0.0 - 340910 -0.0 - 340920 -0.0 - 340930 -0.0 - 340940 -0.0 - 350670 -0.0 - 350680 -0.0 - 350690 -0.0 - 350700 -0.0 - 354701 -0.0 - 350710 -0.0 - 350720 -0.0 - 354721 -0.0 - 350730 -0.0 - 350740 -0.0 - 354741 -0.0 - 350750 -0.0 - 350760 -0.0 - 354761 -0.0 - 350770 -0.0 - 354771 -0.0 - 350780 -0.0 - 35079.82c -0.0 - 354791 -0.0 - 350800 -0.0 - 354801 -0.0 - 35081.82c -0.0 - 350820 -0.0 - 354821 -0.0 - 350830 -0.0 - 350840 -0.0 - 354841 -0.0 - 350850 -0.0 - 350860 -0.0 - 350870 -0.0 - 350880 -0.0 - 350890 -0.0 - 350900 -0.0 - 350910 -0.0 - 350920 -0.0 - 350930 -0.0 - 350940 -0.0 - 350950 -0.0 - 350960 -0.0 - 350970 -0.0 - 360690 -0.0 - 360700 -0.0 - 360710 -0.0 - 360720 -0.0 - 360730 -0.0 - 360740 -0.0 - 360750 -0.0 - 360760 -0.0 - 360770 -0.0 - 36078.82c -0.0 - 360790 -0.0 - 364791 -0.0 - 36080.82c -0.0 - 360810 -0.0 - 364811 -0.0 - 36082.82c -0.0 - 36083.82c -0.0 - 364831 -0.0 - 36084.82c -0.0 - 36085.82c -0.0 - 364851 -0.0 - 36086.82c -0.0 - 360870 -0.0 - 360880 -0.0 - 360890 -0.0 - 360900 -0.0 - 360910 -0.0 - 360920 -0.0 - 360930 -0.0 - 360940 -0.0 - 360950 -0.0 - 360960 -0.0 - 360970 -0.0 - 360980 -0.0 - 360990 -0.0 - 361000 -0.0 - 370710 -0.0 - 370720 -0.0 - 370730 -0.0 - 370740 -0.0 - 370750 -0.0 - 370760 -0.0 - 370770 -0.0 - 370780 -0.0 - 374781 -0.0 - 370790 -0.0 - 370800 -0.0 - 370810 -0.0 - 374811 -0.0 - 370820 -0.0 - 374821 -0.0 - 370830 -0.0 - 370840 -0.0 - 374841 -0.0 - 37085.82c -0.0 - 37086.82c -0.0 - 374861 -0.0 - 37087.82c -0.0 - 370880 -0.0 - 370890 -0.0 - 370900 -0.0 - 374901 -0.0 - 370910 -0.0 - 370920 -0.0 - 370930 -0.0 - 370940 -0.0 - 370950 -0.0 - 370960 -0.0 - 370970 -0.0 - 370980 -0.0 - 374981 -0.0 - 370990 -0.0 - 371000 -0.0 - 371010 -0.0 - 371020 -0.0 - 380730 -0.0 - 380740 -0.0 - 380750 -0.0 - 380760 -0.0 - 380770 -0.0 - 380780 -0.0 - 380790 -0.0 - 380800 -0.0 - 380810 -0.0 - 380820 -0.0 - 380830 -0.0 - 384831 -0.0 - 38084.82c -0.0 - 380850 -0.0 - 384851 -0.0 - 38086.82c -0.0 - 38087.82c -0.0 - 384871 -0.0 - 38088.82c -0.0 - 38089.82c -0.0 - 38090.82c -0.0 - 380910 -0.0 - 380920 -0.0 - 380930 -0.0 - 380940 -0.0 - 380950 -0.0 - 380960 -0.0 - 380970 -0.0 - 380980 -0.0 - 380990 -0.0 - 381000 -0.0 - 381010 -0.0 - 381020 -0.0 - 381030 -0.0 - 381040 -0.0 - 381050 -0.0 - 390760 -0.0 - 390770 -0.0 - 390780 -0.0 - 394781 -0.0 - 390790 -0.0 - 390800 -0.0 - 394801 -0.0 - 390810 -0.0 - 390820 -0.0 - 390830 -0.0 - 394831 -0.0 - 390840 -0.0 - 394841 -0.0 - 390850 -0.0 - 394851 -0.0 - 390860 -0.0 - 394861 -0.0 - 390870 -0.0 - 394871 -0.0 - 390880 -0.0 - 394881 -0.0 - 395882 -0.0 - 39089.82c -0.0 - 394891 -0.0 - 39090.82c -0.0 - 394901 -0.0 - 39091.82c -0.0 - 394911 -0.0 - 390920 -0.0 - 390930 -0.0 - 394931 -0.0 - 390940 -0.0 - 390950 -0.0 - 390960 -0.0 - 394961 -0.0 - 390970 -0.0 - 394971 -0.0 - 395972 -0.0 - 390980 -0.0 - 394981 -0.0 - 390990 -0.0 - 391000 -0.0 - 395001 -0.0 - 391010 -0.0 - 391020 -0.0 - 395021 -0.0 - 391030 -0.0 - 391040 -0.0 - 391050 -0.0 - 391060 -0.0 - 391070 -0.0 - 391080 -0.0 - 400780 -0.0 - 400790 -0.0 - 400800 -0.0 - 400810 -0.0 - 400820 -0.0 - 400830 -0.0 - 400840 -0.0 - 400850 -0.0 - 404851 -0.0 - 400860 -0.0 - 400870 -0.0 - 404871 -0.0 - 400880 -0.0 - 400890 -0.0 - 404891 -0.0 - 40090.82c -0.0 - 404901 -0.0 - 40091.82c -0.0 - 40092.82c -0.0 - 40093.82c -0.0 - 40094.82c -0.0 - 40095.82c -0.0 - 40096.82c -0.0 - 400970 -0.0 - 400980 -0.0 - 400990 -0.0 - 401000 -0.0 - 401010 -0.0 - 401020 -0.0 - 401030 -0.0 - 401040 -0.0 - 401050 -0.0 - 401060 -0.0 - 401070 -0.0 - 401080 -0.0 - 401090 -0.0 - 401100 -0.0 - 410810 -0.0 - 410820 -0.0 - 410830 -0.0 - 410840 -0.0 - 410850 -0.0 - 414851 -0.0 - 410860 -0.0 - 410870 -0.0 - 414871 -0.0 - 410880 -0.0 - 414881 -0.0 - 410890 -0.0 - 414891 -0.0 - 410900 -0.0 - 414901 -0.0 - 415902 -0.0 - 410910 -0.0 - 414911 -0.0 - 410920 -0.0 - 414921 -0.0 - 41093.82c -0.0 - 414931 -0.0 - 41094.82c -0.0 - 414941 -0.0 - 41095.82c -0.0 - 414951 -0.0 - 410960 -0.0 - 410970 -0.0 - 414971 -0.0 - 410980 -0.0 - 414981 -0.0 - 410990 -0.0 - 414991 -0.0 - 411000 -0.0 - 415001 -0.0 - 411010 -0.0 - 411020 -0.0 - 415021 -0.0 - 411030 -0.0 - 411040 -0.0 - 415041 -0.0 - 411050 -0.0 - 411060 -0.0 - 411070 -0.0 - 411080 -0.0 - 411090 -0.0 - 411100 -0.0 - 411110 -0.0 - 411120 -0.0 - 411130 -0.0 - 420830 -0.0 - 420840 -0.0 - 420850 -0.0 - 420860 -0.0 - 420870 -0.0 - 420880 -0.0 - 420890 -0.0 - 424891 -0.0 - 420900 -0.0 - 420910 -0.0 - 424911 -0.0 - 42092.82c -0.0 - 420930 -0.0 - 424931 -0.0 - 42094.82c -0.0 - 42095.82c -0.0 - 42096.82c -0.0 - 42097.82c -0.0 - 42098.82c -0.0 - 42099.82c -0.0 - 42100.82c -0.0 - 421010 -0.0 - 421020 -0.0 - 421030 -0.0 - 421040 -0.0 - 421050 -0.0 - 421060 -0.0 - 421070 -0.0 - 421080 -0.0 - 421090 -0.0 - 421100 -0.0 - 421110 -0.0 - 421120 -0.0 - 421130 -0.0 - 421140 -0.0 - 421150 -0.0 - 430850 -0.0 - 430860 -0.0 - 434861 -0.0 - 430870 -0.0 - 430880 -0.0 - 434881 -0.0 - 430890 -0.0 - 434891 -0.0 - 430900 -0.0 - 434901 -0.0 - 430910 -0.0 - 434911 -0.0 - 430920 -0.0 - 430930 -0.0 - 434931 -0.0 - 430940 -0.0 - 434941 -0.0 - 430950 -0.0 - 434951 -0.0 - 430960 -0.0 - 434961 -0.0 - 430970 -0.0 - 434971 -0.0 - 430980 -0.0 - 43099.82c -0.0 - 434991 -0.0 - 431000 -0.0 - 431010 -0.0 - 431020 -0.0 - 435021 -0.0 - 431030 -0.0 - 431040 -0.0 - 431050 -0.0 - 431060 -0.0 - 431070 -0.0 - 431080 -0.0 - 431090 -0.0 - 431100 -0.0 - 431110 -0.0 - 431120 -0.0 - 431130 -0.0 - 431140 -0.0 - 431150 -0.0 - 431160 -0.0 - 431170 -0.0 - 431180 -0.0 - 440870 -0.0 - 440880 -0.0 - 440890 -0.0 - 440900 -0.0 - 440910 -0.0 - 444911 -0.0 - 440920 -0.0 - 440930 -0.0 - 444931 -0.0 - 440940 -0.0 - 440950 -0.0 - 44096.82c -0.0 - 440970 -0.0 - 44098.82c -0.0 - 44099.82c -0.0 - 44100.82c -0.0 - 44101.82c -0.0 - 44102.82c -0.0 - 44103.82c -0.0 - 445031 -0.0 - 44104.82c -0.0 - 44105.82c -0.0 - 44106.82c -0.0 - 441070 -0.0 - 441080 -0.0 - 441090 -0.0 - 441100 -0.0 - 441110 -0.0 - 441120 -0.0 - 441130 -0.0 - 445131 -0.0 - 441140 -0.0 - 441150 -0.0 - 441160 -0.0 - 441170 -0.0 - 441180 -0.0 - 441190 -0.0 - 441200 -0.0 - 450890 -0.0 - 450900 -0.0 - 454901 -0.0 - 450910 -0.0 - 450920 -0.0 - 450930 -0.0 - 450940 -0.0 - 454941 -0.0 - 450950 -0.0 - 454951 -0.0 - 450960 -0.0 - 454961 -0.0 - 450970 -0.0 - 454971 -0.0 - 450980 -0.0 - 454981 -0.0 - 450990 -0.0 - 454991 -0.0 - 451000 -0.0 - 455001 -0.0 - 451010 -0.0 - 455011 -0.0 - 451020 -0.0 - 455021 -0.0 - 45103.82c -0.0 - 455031 -0.0 - 451040 -0.0 - 455041 -0.0 - 45105.82c -0.0 - 455051 -0.0 - 451060 -0.0 - 455061 -0.0 - 451070 -0.0 - 451080 -0.0 - 455081 -0.0 - 451090 -0.0 - 451100 -0.0 - 455101 -0.0 - 451110 -0.0 - 451120 -0.0 - 455121 -0.0 - 451130 -0.0 - 451140 -0.0 - 451150 -0.0 - 451160 -0.0 - 455161 -0.0 - 451170 -0.0 - 451180 -0.0 - 451190 -0.0 - 451200 -0.0 - 451210 -0.0 - 451220 -0.0 - 451230 -0.0 - 460910 -0.0 - 460920 -0.0 - 460930 -0.0 - 460940 -0.0 - 460950 -0.0 - 464951 -0.0 - 460960 -0.0 - 460970 -0.0 - 460980 -0.0 - 460990 -0.0 - 461000 -0.0 - 461010 -0.0 - 46102.82c -0.0 - 461030 -0.0 - 46104.82c -0.0 - 46105.82c -0.0 - 46106.82c -0.0 - 46107.82c -0.0 - 465071 -0.0 - 46108.82c -0.0 - 461090 -0.0 - 465091 -0.0 - 46110.82c -0.0 - 461110 -0.0 - 465111 -0.0 - 461120 -0.0 - 461130 -0.0 - 465131 -0.0 - 461140 -0.0 - 461150 -0.0 - 465151 -0.0 - 461160 -0.0 - 461170 -0.0 - 465171 -0.0 - 461180 -0.0 - 461190 -0.0 - 461200 -0.0 - 461210 -0.0 - 461220 -0.0 - 461230 -0.0 - 461240 -0.0 - 461250 -0.0 - 461260 -0.0 - 470930 -0.0 - 470940 -0.0 - 474941 -0.0 - 475942 -0.0 - 470950 -0.0 - 474951 -0.0 - 475952 -0.0 - 476953 -0.0 - 470960 -0.0 - 474961 -0.0 - 470970 -0.0 - 470980 -0.0 - 470990 -0.0 - 474991 -0.0 - 471000 -0.0 - 475001 -0.0 - 471010 -0.0 - 475011 -0.0 - 471020 -0.0 - 475021 -0.0 - 471030 -0.0 - 475031 -0.0 - 471040 -0.0 - 475041 -0.0 - 471050 -0.0 - 475051 -0.0 - 471060 -0.0 - 475061 -0.0 - 47107.82c -0.0 - 475071 -0.0 - 471080 -0.0 - 475081 -0.0 - 47109.82c -0.0 - 475091 -0.0 - 471100 -0.0 - 47510.82c -0.0 - 47111.82c -0.0 - 475111 -0.0 - 471120 -0.0 - 471130 -0.0 - 475131 -0.0 - 471140 -0.0 - 475141 -0.0 - 471150 -0.0 - 475151 -0.0 - 471160 -0.0 - 475161 -0.0 - 476162 -0.0 - 471170 -0.0 - 475171 -0.0 - 471180 -0.0 - 475181 -0.0 - 471190 -0.0 - 475191 -0.0 - 471200 -0.0 - 475201 -0.0 - 471210 -0.0 - 471220 -0.0 - 475221 -0.0 - 471230 -0.0 - 471240 -0.0 - 471250 -0.0 - 471260 -0.0 - 471270 -0.0 - 471280 -0.0 - 471290 -0.0 - 471300 -0.0 - 480950 -0.0 - 480960 -0.0 - 480970 -0.0 - 480980 -0.0 - 480990 -0.0 - 481000 -0.0 - 481010 -0.0 - 481020 -0.0 - 481030 -0.0 - 481040 -0.0 - 481050 -0.0 - 48106.82c -0.0 - 481070 -0.0 - 48108.82c -0.0 - 481090 -0.0 - 48110.82c -0.0 - 48111.82c -0.0 - 485111 -0.0 - 48112.82c -0.0 - 48113.82c -0.0 - 485131 -0.0 - 48114.82c -0.0 - 481150 -0.0 - 48515.82c -0.0 - 48116.82c -0.0 - 481170 -0.0 - 485171 -0.0 - 481180 -0.0 - 481190 -0.0 - 485191 -0.0 - 481200 -0.0 - 481210 -0.0 - 485211 -0.0 - 481220 -0.0 - 481230 -0.0 - 485231 -0.0 - 481240 -0.0 - 481250 -0.0 - 485251 -0.0 - 481260 -0.0 - 481270 -0.0 - 481280 -0.0 - 481290 -0.0 - 481300 -0.0 - 481310 -0.0 - 481320 -0.0 - 490970 -0.0 - 490980 -0.0 - 494981 -0.0 - 490990 -0.0 - 491000 -0.0 - 491010 -0.0 - 491020 -0.0 - 491030 -0.0 - 495031 -0.0 - 491040 -0.0 - 495041 -0.0 - 491050 -0.0 - 495051 -0.0 - 491060 -0.0 - 495061 -0.0 - 491070 -0.0 - 495071 -0.0 - 491080 -0.0 - 495081 -0.0 - 491090 -0.0 - 495091 -0.0 - 496092 -0.0 - 491100 -0.0 - 495101 -0.0 - 491110 -0.0 - 495111 -0.0 - 491120 -0.0 - 495121 -0.0 - 49113.82c -0.0 - 495131 -0.0 - 491140 -0.0 - 495141 -0.0 - 496142 -0.0 - 49115.82c -0.0 - 495151 -0.0 - 491160 -0.0 - 495161 -0.0 - 496162 -0.0 - 491170 -0.0 - 495171 -0.0 - 491180 -0.0 - 495181 -0.0 - 496182 -0.0 - 491190 -0.0 - 495191 -0.0 - 491200 -0.0 - 495201 -0.0 - 496202 -0.0 - 491210 -0.0 - 495211 -0.0 - 491220 -0.0 - 495221 -0.0 - 496222 -0.0 - 491230 -0.0 - 495231 -0.0 - 491240 -0.0 - 495241 -0.0 - 491250 -0.0 - 495251 -0.0 - 491260 -0.0 - 495261 -0.0 - 491270 -0.0 - 495271 -0.0 - 491280 -0.0 - 495281 -0.0 - 491290 -0.0 - 495291 -0.0 - 491300 -0.0 - 495301 -0.0 - 496302 -0.0 - 491310 -0.0 - 495311 -0.0 - 496312 -0.0 - 491320 -0.0 - 491330 -0.0 - 495331 -0.0 - 491340 -0.0 - 491350 -0.0 - 500990 -0.0 - 501000 -0.0 - 501010 -0.0 - 501020 -0.0 - 501030 -0.0 - 501040 -0.0 - 501050 -0.0 - 501060 -0.0 - 501070 -0.0 - 501080 -0.0 - 501090 -0.0 - 501100 -0.0 - 501110 -0.0 - 50112.82c -0.0 - 50113.82c -0.0 - 505131 -0.0 - 50114.82c -0.0 - 50115.82c -0.0 - 50116.82c -0.0 - 50117.82c -0.0 - 505171 -0.0 - 50118.82c -0.0 - 50119.82c -0.0 - 505191 -0.0 - 50120.82c -0.0 - 501210 -0.0 - 505211 -0.0 - 50122.82c -0.0 - 50123.82c -0.0 - 505231 -0.0 - 50124.82c -0.0 - 50125.82c -0.0 - 505251 -0.0 - 50126.82c -0.0 - 501270 -0.0 - 505271 -0.0 - 501280 -0.0 - 505281 -0.0 - 501290 -0.0 - 505291 -0.0 - 501300 -0.0 - 505301 -0.0 - 501310 -0.0 - 505311 -0.0 - 501320 -0.0 - 501330 -0.0 - 501340 -0.0 - 501350 -0.0 - 501360 -0.0 - 501370 -0.0 - 511030 -0.0 - 511040 -0.0 - 511050 -0.0 - 511060 -0.0 - 511070 -0.0 - 511080 -0.0 - 511090 -0.0 - 511100 -0.0 - 511110 -0.0 - 511120 -0.0 - 511130 -0.0 - 511140 -0.0 - 511150 -0.0 - 511160 -0.0 - 515161 -0.0 - 511170 -0.0 - 511180 -0.0 - 515181 -0.0 - 511190 -0.0 - 515191 -0.0 - 511200 -0.0 - 515201 -0.0 - 51121.82c -0.0 - 511220 -0.0 - 515221 -0.0 - 51123.82c -0.0 - 51124.82c -0.0 - 515241 -0.0 - 516242 -0.0 - 51125.82c -0.0 - 51126.82c -0.0 - 515261 -0.0 - 516262 -0.0 - 511270 -0.0 - 511280 -0.0 - 515281 -0.0 - 511290 -0.0 - 515291 -0.0 - 511300 -0.0 - 515301 -0.0 - 511310 -0.0 - 511320 -0.0 - 515321 -0.0 - 511330 -0.0 - 511340 -0.0 - 515341 -0.0 - 511350 -0.0 - 511360 -0.0 - 511370 -0.0 - 511380 -0.0 - 511390 -0.0 - 521050 -0.0 - 521060 -0.0 - 521070 -0.0 - 521080 -0.0 - 521090 -0.0 - 521100 -0.0 - 521110 -0.0 - 521120 -0.0 - 521130 -0.0 - 521140 -0.0 - 521150 -0.0 - 525151 -0.0 - 521160 -0.0 - 521170 -0.0 - 525171 -0.0 - 521180 -0.0 - 521190 -0.0 - 525191 -0.0 - 52120.82c -0.0 - 521210 -0.0 - 525211 -0.0 - 52122.82c -0.0 - 52123.82c -0.0 - 525231 -0.0 - 52124.82c -0.0 - 52125.82c -0.0 - 525251 -0.0 - 52126.82c -0.0 - 521270 -0.0 - 52527.82c -0.0 - 52128.82c -0.0 - 521290 -0.0 - 52529.82c -0.0 - 52130.82c -0.0 - 521310 -0.0 - 525311 -0.0 - 52132.82c -0.0 - 521330 -0.0 - 525331 -0.0 - 521340 -0.0 - 521350 -0.0 - 521360 -0.0 - 521370 -0.0 - 521380 -0.0 - 521390 -0.0 - 521400 -0.0 - 521410 -0.0 - 521420 -0.0 - 531080 -0.0 - 531090 -0.0 - 531100 -0.0 - 531110 -0.0 - 531120 -0.0 - 531130 -0.0 - 531140 -0.0 - 535141 -0.0 - 531150 -0.0 - 531160 -0.0 - 531170 -0.0 - 531180 -0.0 - 535181 -0.0 - 531190 -0.0 - 531200 -0.0 - 535201 -0.0 - 531210 -0.0 - 531220 -0.0 - 531230 -0.0 - 531240 -0.0 - 531250 -0.0 - 531260 -0.0 - 53127.82c -0.0 - 531280 -0.0 - 53129.82c -0.0 - 53130.82c -0.0 - 535301 -0.0 - 53131.82c -0.0 - 531320 -0.0 - 535321 -0.0 - 531330 -0.0 - 535331 -0.0 - 531340 -0.0 - 535341 -0.0 - 53135.82c -0.0 - 531360 -0.0 - 535361 -0.0 - 531370 -0.0 - 531380 -0.0 - 531390 -0.0 - 531400 -0.0 - 531410 -0.0 - 531420 -0.0 - 531430 -0.0 - 531440 -0.0 - 531450 -0.0 - 541100 -0.0 - 541110 -0.0 - 541120 -0.0 - 541130 -0.0 - 541140 -0.0 - 541150 -0.0 - 541160 -0.0 - 541170 -0.0 - 541180 -0.0 - 541190 -0.0 - 541200 -0.0 - 541210 -0.0 - 541220 -0.0 - 54123.82c -0.0 - 54124.82c -0.0 - 541250 -0.0 - 545251 -0.0 - 54126.82c -0.0 - 541270 -0.0 - 545271 -0.0 - 54128.82c -0.0 - 54129.82c -0.0 - 545291 -0.0 - 54130.82c -0.0 - 54131.82c -0.0 - 545311 -0.0 - 54132.82c -0.0 - 545321 -0.0 - 54133.82c -0.0 - 545331 -0.0 - 54134.82c -0.0 - 545341 -0.0 - 54135.82c -0.0 - 545351 -0.0 - 54136.82c -0.0 - 541370 -0.0 - 541380 -0.0 - 541390 -0.0 - 541400 -0.0 - 541410 -0.0 - 541420 -0.0 - 541430 -0.0 - 541440 -0.0 - 541450 -0.0 - 541460 -0.0 - 541470 -0.0 - 551120 -0.0 - 551130 -0.0 - 551140 -0.0 - 551150 -0.0 - 551160 -0.0 - 555161 -0.0 - 551170 -0.0 - 555171 -0.0 - 551180 -0.0 - 555181 -0.0 - 551190 -0.0 - 555191 -0.0 - 551200 -0.0 - 555201 -0.0 - 551210 -0.0 - 555211 -0.0 - 551220 -0.0 - 555221 -0.0 - 556222 -0.0 - 551230 -0.0 - 555231 -0.0 - 551240 -0.0 - 555241 -0.0 - 551250 -0.0 - 555251 -0.0 - 551260 -0.0 - 551270 -0.0 - 551280 -0.0 - 551290 -0.0 - 551300 -0.0 - 555301 -0.0 - 551310 -0.0 - 551320 -0.0 - 55133.82c -0.0 - 55134.82c -0.0 - 555341 -0.0 - 55135.82c -0.0 - 555351 -0.0 - 55136.82c -0.0 - 555361 -0.0 - 55137.82c -0.0 - 551380 -0.0 - 555381 -0.0 - 551390 -0.0 - 551400 -0.0 - 551410 -0.0 - 551420 -0.0 - 551430 -0.0 - 551440 -0.0 - 555441 -0.0 - 551450 -0.0 - 551460 -0.0 - 551470 -0.0 - 551480 -0.0 - 551490 -0.0 - 551500 -0.0 - 551510 -0.0 - 561140 -0.0 - 561150 -0.0 - 561160 -0.0 - 561170 -0.0 - 561180 -0.0 - 561190 -0.0 - 561200 -0.0 - 561210 -0.0 - 561220 -0.0 - 561230 -0.0 - 561240 -0.0 - 561250 -0.0 - 561260 -0.0 - 561270 -0.0 - 565271 -0.0 - 561280 -0.0 - 561290 -0.0 - 565291 -0.0 - 56130.82c -0.0 - 565301 -0.0 - 561310 -0.0 - 565311 -0.0 - 56132.82c -0.0 - 56133.82c -0.0 - 565331 -0.0 - 56134.82c -0.0 - 56135.82c -0.0 - 565351 -0.0 - 56136.82c -0.0 - 565361 -0.0 - 56137.82c -0.0 - 565371 -0.0 - 56138.82c -0.0 - 561390 -0.0 - 56140.82c -0.0 - 561410 -0.0 - 561420 -0.0 - 561430 -0.0 - 561440 -0.0 - 561450 -0.0 - 561460 -0.0 - 561470 -0.0 - 561480 -0.0 - 561490 -0.0 - 561500 -0.0 - 561510 -0.0 - 561520 -0.0 - 561530 -0.0 - 571170 -0.0 - 575171 -0.0 - 571180 -0.0 - 571190 -0.0 - 571200 -0.0 - 571210 -0.0 - 571220 -0.0 - 571230 -0.0 - 571240 -0.0 - 575241 -0.0 - 571250 -0.0 - 575251 -0.0 - 571260 -0.0 - 575261 -0.0 - 571270 -0.0 - 575271 -0.0 - 571280 -0.0 - 575281 -0.0 - 571290 -0.0 - 575291 -0.0 - 571300 -0.0 - 571310 -0.0 - 571320 -0.0 - 575321 -0.0 - 571330 -0.0 - 571340 -0.0 - 571350 -0.0 - 571360 -0.0 - 575361 -0.0 - 571370 -0.0 - 57138.82c -0.0 - 57139.82c -0.0 - 57140.82c -0.0 - 571410 -0.0 - 571420 -0.0 - 571430 -0.0 - 571440 -0.0 - 571450 -0.0 - 571460 -0.0 - 575461 -0.0 - 571470 -0.0 - 571480 -0.0 - 571490 -0.0 - 571500 -0.0 - 571510 -0.0 - 571520 -0.0 - 571530 -0.0 - 571540 -0.0 - 571550 -0.0 - 581190 -0.0 - 581200 -0.0 - 581210 -0.0 - 581220 -0.0 - 581230 -0.0 - 581240 -0.0 - 581250 -0.0 - 581260 -0.0 - 581270 -0.0 - 585271 -0.0 - 581280 -0.0 - 581290 -0.0 - 581300 -0.0 - 581310 -0.0 - 585311 -0.0 - 581320 -0.0 - 585321 -0.0 - 581330 -0.0 - 585331 -0.0 - 581340 -0.0 - 581350 -0.0 - 585351 -0.0 - 58136.82c -0.0 - 581370 -0.0 - 585371 -0.0 - 58138.82c -0.0 - 585381 -0.0 - 58139.82c -0.0 - 585391 -0.0 - 58140.82c -0.0 - 58141.82c -0.0 - 58142.82c -0.0 - 58143.82c -0.0 - 58144.82c -0.0 - 581450 -0.0 - 581460 -0.0 - 581470 -0.0 - 581480 -0.0 - 581490 -0.0 - 581500 -0.0 - 581510 -0.0 - 581520 -0.0 - 581530 -0.0 - 581540 -0.0 - 581550 -0.0 - 581560 -0.0 - 581570 -0.0 - 591210 -0.0 - 591220 -0.0 - 591230 -0.0 - 591240 -0.0 - 591250 -0.0 - 591260 -0.0 - 591270 -0.0 - 591280 -0.0 - 591290 -0.0 - 591300 -0.0 - 591310 -0.0 - 595311 -0.0 - 591320 -0.0 - 591330 -0.0 - 591340 -0.0 - 595341 -0.0 - 591350 -0.0 - 591360 -0.0 - 591370 -0.0 - 591380 -0.0 - 595381 -0.0 - 591390 -0.0 - 591400 -0.0 - 59141.82c -0.0 - 59142.82c -0.0 - 595421 -0.0 - 59143.82c -0.0 - 591440 -0.0 - 595441 -0.0 - 591450 -0.0 - 591460 -0.0 - 591470 -0.0 - 591480 -0.0 - 595481 -0.0 - 591490 -0.0 - 591500 -0.0 - 591510 -0.0 - 591520 -0.0 - 591530 -0.0 - 591540 -0.0 - 591550 -0.0 - 591560 -0.0 - 591570 -0.0 - 591580 -0.0 - 591590 -0.0 - 601240 -0.0 - 601250 -0.0 - 601260 -0.0 - 601270 -0.0 - 601280 -0.0 - 601290 -0.0 - 601300 -0.0 - 601310 -0.0 - 601320 -0.0 - 601330 -0.0 - 605331 -0.0 - 601340 -0.0 - 601350 -0.0 - 605351 -0.0 - 601360 -0.0 - 601370 -0.0 - 605371 -0.0 - 601380 -0.0 - 601390 -0.0 - 605391 -0.0 - 601400 -0.0 - 601410 -0.0 - 605411 -0.0 - 60142.82c -0.0 - 60143.82c -0.0 - 60144.82c -0.0 - 60145.82c -0.0 - 60146.82c -0.0 - 60147.82c -0.0 - 60148.82c -0.0 - 601490 -0.0 - 60150.82c -0.0 - 601510 -0.0 - 601520 -0.0 - 601530 -0.0 - 601540 -0.0 - 601550 -0.0 - 601560 -0.0 - 601570 -0.0 - 601580 -0.0 - 601590 -0.0 - 601600 -0.0 - 601610 -0.0 - 611260 -0.0 - 611270 -0.0 - 611280 -0.0 - 611290 -0.0 - 611300 -0.0 - 611310 -0.0 - 611320 -0.0 - 611330 -0.0 - 615331 -0.0 - 611340 -0.0 - 615341 -0.0 - 611350 -0.0 - 615351 -0.0 - 611360 -0.0 - 615361 -0.0 - 611370 -0.0 - 611380 -0.0 - 615381 -0.0 - 611390 -0.0 - 615391 -0.0 - 611400 -0.0 - 615401 -0.0 - 611410 -0.0 - 611420 -0.0 - 615421 -0.0 - 611430 -0.0 - 611440 -0.0 - 611450 -0.0 - 611460 -0.0 - 61147.82c -0.0 - 61148.82c -0.0 - 61548.82c -0.0 - 61149.82c -0.0 - 611500 -0.0 - 61151.82c -0.0 - 611520 -0.0 - 615521 -0.0 - 616522 -0.0 - 611530 -0.0 - 611540 -0.0 - 615541 -0.0 - 611550 -0.0 - 611560 -0.0 - 611570 -0.0 - 611580 -0.0 - 611590 -0.0 - 611600 -0.0 - 611610 -0.0 - 611620 -0.0 - 611630 -0.0 - 621280 -0.0 - 621290 -0.0 - 621300 -0.0 - 621310 -0.0 - 621320 -0.0 - 621330 -0.0 - 621340 -0.0 - 621350 -0.0 - 621360 -0.0 - 621370 -0.0 - 621380 -0.0 - 621390 -0.0 - 625391 -0.0 - 621400 -0.0 - 621410 -0.0 - 625411 -0.0 - 621420 -0.0 - 621430 -0.0 - 625431 -0.0 - 626432 -0.0 - 62144.82c -0.0 - 621450 -0.0 - 621460 -0.0 - 62147.82c -0.0 - 62148.82c -0.0 - 62149.82c -0.0 - 62150.82c -0.0 - 62151.82c -0.0 - 62152.82c -0.0 - 62153.82c -0.0 - 625531 -0.0 - 62154.82c -0.0 - 621550 -0.0 - 621560 -0.0 - 621570 -0.0 - 621580 -0.0 - 621590 -0.0 - 621600 -0.0 - 621610 -0.0 - 621620 -0.0 - 621630 -0.0 - 621640 -0.0 - 621650 -0.0 - 631300 -0.0 - 631310 -0.0 - 631320 -0.0 - 631330 -0.0 - 631340 -0.0 - 631350 -0.0 - 631360 -0.0 - 635361 -0.0 - 636362 -0.0 - 631370 -0.0 - 631380 -0.0 - 631390 -0.0 - 631400 -0.0 - 635401 -0.0 - 631410 -0.0 - 635411 -0.0 - 631420 -0.0 - 635421 -0.0 - 631430 -0.0 - 631440 -0.0 - 631450 -0.0 - 631460 -0.0 - 631470 -0.0 - 631480 -0.0 - 631490 -0.0 - 631500 -0.0 - 635501 -0.0 - 63151.82c -0.0 - 63152.82c -0.0 - 635521 -0.0 - 636522 -0.0 - 63153.82c -0.0 - 63154.82c -0.0 - 635541 -0.0 - 63155.82c -0.0 - 63156.82c -0.0 - 63157.82c -0.0 - 631580 -0.0 - 631590 -0.0 - 631600 -0.0 - 631610 -0.0 - 631620 -0.0 - 631630 -0.0 - 631640 -0.0 - 631650 -0.0 - 631660 -0.0 - 631670 -0.0 - 641340 -0.0 - 641350 -0.0 - 641360 -0.0 - 641370 -0.0 - 641380 -0.0 - 641390 -0.0 - 645391 -0.0 - 641400 -0.0 - 641410 -0.0 - 645411 -0.0 - 641420 -0.0 - 641430 -0.0 - 645431 -0.0 - 641440 -0.0 - 641450 -0.0 - 645451 -0.0 - 641460 -0.0 - 641470 -0.0 - 641480 -0.0 - 641490 -0.0 - 641500 -0.0 - 641510 -0.0 - 64152.82c -0.0 - 64153.82c -0.0 - 64154.82c -0.0 - 64155.82c -0.0 - 645551 -0.0 - 64156.82c -0.0 - 64157.82c -0.0 - 64158.82c -0.0 - 641590 -0.0 - 64160.82c -0.0 - 641610 -0.0 - 641620 -0.0 - 641630 -0.0 - 641640 -0.0 - 641650 -0.0 - 641660 -0.0 - 641670 -0.0 - 641680 -0.0 - 641690 -0.0 - 651350 -0.0 - 651360 -0.0 - 651370 -0.0 - 651380 -0.0 - 651390 -0.0 - 651400 -0.0 - 651410 -0.0 - 655411 -0.0 - 651420 -0.0 - 655421 -0.0 - 651430 -0.0 - 655431 -0.0 - 651440 -0.0 - 655441 -0.0 - 651450 -0.0 - 655451 -0.0 - 651460 -0.0 - 655461 -0.0 - 656462 -0.0 - 651470 -0.0 - 655471 -0.0 - 651480 -0.0 - 655481 -0.0 - 651490 -0.0 - 655491 -0.0 - 651500 -0.0 - 655501 -0.0 - 651510 -0.0 - 655511 -0.0 - 651520 -0.0 - 655521 -0.0 - 651530 -0.0 - 651540 -0.0 - 655541 -0.0 - 656542 -0.0 - 651550 -0.0 - 651560 -0.0 - 655561 -0.0 - 656562 -0.0 - 651570 -0.0 - 651580 -0.0 - 655581 -0.0 - 65159.82c -0.0 - 65160.82c -0.0 - 651610 -0.0 - 651620 -0.0 - 651630 -0.0 - 651640 -0.0 - 651650 -0.0 - 651660 -0.0 - 651670 -0.0 - 651680 -0.0 - 651690 -0.0 - 651700 -0.0 - 651710 -0.0 - 661380 -0.0 - 661390 -0.0 - 661400 -0.0 - 661410 -0.0 - 661420 -0.0 - 661430 -0.0 - 665431 -0.0 - 661440 -0.0 - 661450 -0.0 - 665451 -0.0 - 661460 -0.0 - 665461 -0.0 - 661470 -0.0 - 665471 -0.0 - 661480 -0.0 - 661490 -0.0 - 665491 -0.0 - 661500 -0.0 - 661510 -0.0 - 661520 -0.0 - 661530 -0.0 - 661540 -0.0 - 661550 -0.0 - 66156.82c -0.0 - 661570 -0.0 - 665571 -0.0 - 66158.82c -0.0 - 661590 -0.0 - 66160.82c -0.0 - 66161.82c -0.0 - 66162.82c -0.0 - 66163.82c -0.0 - 66164.82c -0.0 - 661650 -0.0 - 665651 -0.0 - 661660 -0.0 - 661670 -0.0 - 661680 -0.0 - 661690 -0.0 - 661700 -0.0 - 661710 -0.0 - 661720 -0.0 - 661730 -0.0 - 671400 -0.0 - 671410 -0.0 - 671420 -0.0 - 671430 -0.0 - 671440 -0.0 - 671450 -0.0 - 671460 -0.0 - 671470 -0.0 - 671480 -0.0 - 675481 -0.0 - 676482 -0.0 - 671490 -0.0 - 675491 -0.0 - 671500 -0.0 - 675501 -0.0 - 671510 -0.0 - 675511 -0.0 - 671520 -0.0 - 675521 -0.0 - 671530 -0.0 - 675531 -0.0 - 671540 -0.0 - 675541 -0.0 - 671550 -0.0 - 675551 -0.0 - 671560 -0.0 - 675561 -0.0 - 676562 -0.0 - 671570 -0.0 - 671580 -0.0 - 675581 -0.0 - 676582 -0.0 - 671590 -0.0 - 675591 -0.0 - 671600 -0.0 - 675601 -0.0 - 676602 -0.0 - 671610 -0.0 - 675611 -0.0 - 671620 -0.0 - 675621 -0.0 - 671630 -0.0 - 675631 -0.0 - 671640 -0.0 - 675641 -0.0 - 67165.82c -0.0 - 671660 -0.0 - 67566.82c -0.0 - 671670 -0.0 - 671680 -0.0 - 675681 -0.0 - 671690 -0.0 - 671700 -0.0 - 675701 -0.0 - 671710 -0.0 - 671720 -0.0 - 671730 -0.0 - 671740 -0.0 - 671750 -0.0 - 681430 -0.0 - 681440 -0.0 - 681450 -0.0 - 681460 -0.0 - 681470 -0.0 - 685471 -0.0 - 681480 -0.0 - 681490 -0.0 - 685491 -0.0 - 681500 -0.0 - 681510 -0.0 - 685511 -0.0 - 681520 -0.0 - 681530 -0.0 - 681540 -0.0 - 681550 -0.0 - 681560 -0.0 - 681570 -0.0 - 685571 -0.0 - 681580 -0.0 - 681590 -0.0 - 681600 -0.0 - 681610 -0.0 - 68162.82c -0.0 - 681630 -0.0 - 68164.82c -0.0 - 681650 -0.0 - 68166.82c -0.0 - 68167.82c -0.0 - 685671 -0.0 - 68168.82c -0.0 - 681690 -0.0 - 68170.82c -0.0 - 681710 -0.0 - 681720 -0.0 - 681730 -0.0 - 681740 -0.0 - 681750 -0.0 - 681760 -0.0 - 681770 -0.0 - 691450 -0.0 - 691460 -0.0 - 695461 -0.0 - 691470 -0.0 - 691480 -0.0 - 691490 -0.0 - 691500 -0.0 - 695501 -0.0 - 691510 -0.0 - 695511 -0.0 - 691520 -0.0 - 695521 -0.0 - 691530 -0.0 - 695531 -0.0 - 691540 -0.0 - 695541 -0.0 - 691550 -0.0 - 695551 -0.0 - 691560 -0.0 - 691570 -0.0 - 691580 -0.0 - 691590 -0.0 - 691600 -0.0 - 695601 -0.0 - 691610 -0.0 - 691620 -0.0 - 695621 -0.0 - 691630 -0.0 - 691640 -0.0 - 695641 -0.0 - 691650 -0.0 - 691660 -0.0 - 695661 -0.0 - 691670 -0.0 - 69168.82c -0.0 - 69169.82c -0.0 - 69170.82c -0.0 - 691710 -0.0 - 691720 -0.0 - 691730 -0.0 - 691740 -0.0 - 691750 -0.0 - 691760 -0.0 - 691770 -0.0 - 691780 -0.0 - 691790 -0.0 - 701480 -0.0 - 701490 -0.0 - 701500 -0.0 - 701510 -0.0 - 705511 -0.0 - 701520 -0.0 - 701530 -0.0 - 701540 -0.0 - 701550 -0.0 - 701560 -0.0 - 701570 -0.0 - 701580 -0.0 - 701590 -0.0 - 701600 -0.0 - 701610 -0.0 - 701620 -0.0 - 701630 -0.0 - 701640 -0.0 - 701650 -0.0 - 701660 -0.0 - 701670 -0.0 - 701680 -0.0 - 701690 -0.0 - 705691 -0.0 - 701700 -0.0 - 701710 -0.0 - 705711 -0.0 - 701720 -0.0 - 701730 -0.0 - 701740 -0.0 - 701750 -0.0 - 705751 -0.0 - 701760 -0.0 - 705761 -0.0 - 701770 -0.0 - 705771 -0.0 - 701780 -0.0 - 701790 -0.0 - 701800 -0.0 - 701810 -0.0 - 711500 -0.0 - 711510 -0.0 - 711520 -0.0 - 711530 -0.0 - 715531 -0.0 - 711540 -0.0 - 715541 -0.0 - 711550 -0.0 - 715551 -0.0 - 716552 -0.0 - 711560 -0.0 - 715561 -0.0 - 711570 -0.0 - 715571 -0.0 - 711580 -0.0 - 711590 -0.0 - 711600 -0.0 - 715601 -0.0 - 711610 -0.0 - 715611 -0.0 - 711620 -0.0 - 715621 -0.0 - 716622 -0.0 - 711630 -0.0 - 711640 -0.0 - 711650 -0.0 - 711660 -0.0 - 715661 -0.0 - 716662 -0.0 - 711670 -0.0 - 715671 -0.0 - 711680 -0.0 - 715681 -0.0 - 711690 -0.0 - 715691 -0.0 - 711700 -0.0 - 715701 -0.0 - 711710 -0.0 - 715711 -0.0 - 711720 -0.0 - 715721 -0.0 - 711730 -0.0 - 711740 -0.0 - 715741 -0.0 - 71175.82c -0.0 - 71176.82c -0.0 - 715761 -0.0 - 711770 -0.0 - 715771 -0.0 - 716772 -0.0 - 711780 -0.0 - 715781 -0.0 - 711790 -0.0 - 715791 -0.0 - 711800 -0.0 - 715801 -0.0 - 711810 -0.0 - 711820 -0.0 - 711830 -0.0 - 711840 -0.0 - 721530 -0.0 - 721540 -0.0 - 721550 -0.0 - 721560 -0.0 - 721570 -0.0 - 721580 -0.0 - 721590 -0.0 - 721600 -0.0 - 721610 -0.0 - 721620 -0.0 - 721630 -0.0 - 721640 -0.0 - 721650 -0.0 - 721660 -0.0 - 721670 -0.0 - 721680 -0.0 - 721690 -0.0 - 721700 -0.0 - 721710 -0.0 - 725711 -0.0 - 721720 -0.0 - 721730 -0.0 - 72174.82c -0.0 - 721750 -0.0 - 72176.82c -0.0 - 72177.82c -0.0 - 725771 -0.0 - 726772 -0.0 - 72178.82c -0.0 - 725781 -0.0 - 726782 -0.0 - 72179.82c -0.0 - 725791 -0.0 - 726792 -0.0 - 72180.82c -0.0 - 725801 -0.0 - 721810 -0.0 - 721820 -0.0 - 725821 -0.0 - 721830 -0.0 - 721840 -0.0 - 725841 -0.0 - 721850 -0.0 - 721860 -0.0 - 721870 -0.0 - 721880 -0.0 - 731550 -0.0 - 731560 -0.0 - 735561 -0.0 - 731570 -0.0 - 735571 -0.0 - 736572 -0.0 - 731580 -0.0 - 735581 -0.0 - 731590 -0.0 - 735591 -0.0 - 731600 -0.0 - 735601 -0.0 - 731610 -0.0 - 731620 -0.0 - 731630 -0.0 - 731640 -0.0 - 731650 -0.0 - 731660 -0.0 - 731670 -0.0 - 731680 -0.0 - 731690 -0.0 - 731700 -0.0 - 731710 -0.0 - 731720 -0.0 - 731730 -0.0 - 731740 -0.0 - 731750 -0.0 - 731760 -0.0 - 735761 -0.0 - 736762 -0.0 - 731770 -0.0 - 731780 -0.0 - 735781 -0.0 - 736782 -0.0 - 731790 -0.0 - 735791 -0.0 - 736792 -0.0 - 73180.82c -0.0 - 735801 -0.0 - 73181.82c -0.0 - 73182.82c -0.0 - 735821 -0.0 - 736822 -0.0 - 731830 -0.0 - 731840 -0.0 - 731850 -0.0 - 735851 -0.0 - 731860 -0.0 - 731870 -0.0 - 731880 -0.0 - 731890 -0.0 - 731900 -0.0 - 741580 -0.0 - 741590 -0.0 - 741600 -0.0 - 741610 -0.0 - 741620 -0.0 - 741630 -0.0 - 741640 -0.0 - 741650 -0.0 - 741660 -0.0 - 741670 -0.0 - 741680 -0.0 - 741690 -0.0 - 741700 -0.0 - 741710 -0.0 - 741720 -0.0 - 741730 -0.0 - 741740 -0.0 - 741750 -0.0 - 741760 -0.0 - 741770 -0.0 - 741780 -0.0 - 741790 -0.0 - 745791 -0.0 - 74180.82c -0.0 - 745801 -0.0 - 741810 -0.0 - 74182.82c -0.0 - 74183.82c -0.0 - 745831 -0.0 - 74184.82c -0.0 - 741850 -0.0 - 745851 -0.0 - 74186.82c -0.0 - 745861 -0.0 - 741870 -0.0 - 741880 -0.0 - 741890 -0.0 - 741900 -0.0 - 745901 -0.0 - 741910 -0.0 - 741920 -0.0 - 751600 -0.0 - 751610 -0.0 - 755611 -0.0 - 751620 -0.0 - 755621 -0.0 - 751630 -0.0 - 755631 -0.0 - 751640 -0.0 - 755641 -0.0 - 751650 -0.0 - 755651 -0.0 - 751660 -0.0 - 751670 -0.0 - 755671 -0.0 - 751680 -0.0 - 751690 -0.0 - 755691 -0.0 - 751700 -0.0 - 751710 -0.0 - 751720 -0.0 - 755721 -0.0 - 751730 -0.0 - 751740 -0.0 - 751750 -0.0 - 751760 -0.0 - 751770 -0.0 - 751780 -0.0 - 751790 -0.0 - 751800 -0.0 - 751810 -0.0 - 751820 -0.0 - 755821 -0.0 - 751830 -0.0 - 755831 -0.0 - 751840 -0.0 - 755841 -0.0 - 75185.82c -0.0 - 751860 -0.0 - 755861 -0.0 - 75187.82c -0.0 - 751880 -0.0 - 755881 -0.0 - 751890 -0.0 - 751900 -0.0 - 755901 -0.0 - 751910 -0.0 - 751920 -0.0 - 751930 -0.0 - 751940 -0.0 - 761620 -0.0 - 761630 -0.0 - 761640 -0.0 - 761650 -0.0 - 761660 -0.0 - 761670 -0.0 - 761680 -0.0 - 761690 -0.0 - 761700 -0.0 - 761710 -0.0 - 761720 -0.0 - 761730 -0.0 - 761740 -0.0 - 761750 -0.0 - 761760 -0.0 - 761770 -0.0 - 761780 -0.0 - 761790 -0.0 - 761800 -0.0 - 761810 -0.0 - 765811 -0.0 - 761820 -0.0 - 761830 -0.0 - 765831 -0.0 - 761840 -0.0 - 761850 -0.0 - 761860 -0.0 - 761870 -0.0 - 761880 -0.0 - 761890 -0.0 - 765891 -0.0 - 761900 -0.0 - 765901 -0.0 - 761910 -0.0 - 765911 -0.0 - 761920 -0.0 - 765921 -0.0 - 761930 -0.0 - 761940 -0.0 - 761950 -0.0 - 761960 -0.0 - 771640 -0.0 - 775641 -0.0 - 771650 -0.0 - 771660 -0.0 - 775661 -0.0 - 771670 -0.0 - 775671 -0.0 - 771680 -0.0 - 775681 -0.0 - 771690 -0.0 - 775691 -0.0 - 771700 -0.0 - 775701 -0.0 - 771710 -0.0 - 775711 -0.0 - 771720 -0.0 - 775721 -0.0 - 771730 -0.0 - 775731 -0.0 - 771740 -0.0 - 775741 -0.0 - 771750 -0.0 - 771760 -0.0 - 771770 -0.0 - 771780 -0.0 - 771790 -0.0 - 771800 -0.0 - 771810 -0.0 - 771820 -0.0 - 771830 -0.0 - 771840 -0.0 - 771850 -0.0 - 771860 -0.0 - 775861 -0.0 - 771870 -0.0 - 775871 -0.0 - 771880 -0.0 - 775881 -0.0 - 771890 -0.0 - 775891 -0.0 - 776892 -0.0 - 771900 -0.0 - 775901 -0.0 - 776902 -0.0 - 77191.82c -0.0 - 775911 -0.0 - 776912 -0.0 - 771920 -0.0 - 775921 -0.0 - 776922 -0.0 - 77193.82c -0.0 - 775931 -0.0 - 771940 -0.0 - 775941 -0.0 - 776942 -0.0 - 771950 -0.0 - 775951 -0.0 - 771960 -0.0 - 775961 -0.0 - 771970 -0.0 - 775971 -0.0 - 771980 -0.0 - 771990 -0.0 - 781660 -0.0 - 781670 -0.0 - 781680 -0.0 - 781690 -0.0 - 781700 -0.0 - 781710 -0.0 - 781720 -0.0 - 781730 -0.0 - 781740 -0.0 - 781750 -0.0 - 781760 -0.0 - 781770 -0.0 - 781780 -0.0 - 781790 -0.0 - 781800 -0.0 - 781810 -0.0 - 781820 -0.0 - 781830 -0.0 - 785831 -0.0 - 781840 -0.0 - 785841 -0.0 - 781850 -0.0 - 785851 -0.0 - 781860 -0.0 - 781870 -0.0 - 781880 -0.0 - 781890 -0.0 - 781900 -0.0 - 781910 -0.0 - 781920 -0.0 - 781930 -0.0 - 785931 -0.0 - 781940 -0.0 - 781950 -0.0 - 785951 -0.0 - 781960 -0.0 - 781970 -0.0 - 785971 -0.0 - 781980 -0.0 - 781990 -0.0 - 785991 -0.0 - 782000 -0.0 - 782010 -0.0 - 782020 -0.0 - 791690 -0.0 - 791700 -0.0 - 795701 -0.0 - 791710 -0.0 - 795711 -0.0 - 791720 -0.0 - 791730 -0.0 - 795731 -0.0 - 791740 -0.0 - 795741 -0.0 - 791750 -0.0 - 795751 -0.0 - 791760 -0.0 - 795761 -0.0 - 791770 -0.0 - 795771 -0.0 - 791780 -0.0 - 791790 -0.0 - 791800 -0.0 - 791810 -0.0 - 791820 -0.0 - 791830 -0.0 - 791840 -0.0 - 795841 -0.0 - 791850 -0.0 - 791860 -0.0 - 791870 -0.0 - 795871 -0.0 - 791880 -0.0 - 791890 -0.0 - 795891 -0.0 - 791900 -0.0 - 795901 -0.0 - 791910 -0.0 - 795911 -0.0 - 791920 -0.0 - 795921 -0.0 - 796922 -0.0 - 791930 -0.0 - 795931 -0.0 - 791940 -0.0 - 795941 -0.0 - 796942 -0.0 - 791950 -0.0 - 795951 -0.0 - 791960 -0.0 - 795961 -0.0 - 796962 -0.0 - 79197.82c -0.0 - 795971 -0.0 - 791980 -0.0 - 795981 -0.0 - 791990 -0.0 - 792000 -0.0 - 796001 -0.0 - 792010 -0.0 - 792020 -0.0 - 792030 -0.0 - 792040 -0.0 - 792050 -0.0 - 801710 -0.0 - 801720 -0.0 - 801730 -0.0 - 801740 -0.0 - 801750 -0.0 - 801760 -0.0 - 801770 -0.0 - 801780 -0.0 - 801790 -0.0 - 801800 -0.0 - 801810 -0.0 - 801820 -0.0 - 801830 -0.0 - 801840 -0.0 - 801850 -0.0 - 805851 -0.0 - 801860 -0.0 - 801870 -0.0 - 805871 -0.0 - 801880 -0.0 - 801890 -0.0 - 805891 -0.0 - 801900 -0.0 - 801910 -0.0 - 805911 -0.0 - 801920 -0.0 - 801930 -0.0 - 805931 -0.0 - 801940 -0.0 - 801950 -0.0 - 805951 -0.0 - 80196.82c -0.0 - 801970 -0.0 - 805971 -0.0 - 80198.82c -0.0 - 80199.82c -0.0 - 805991 -0.0 - 80200.82c -0.0 - 80201.82c -0.0 - 80202.82c -0.0 - 802030 -0.0 - 80204.82c -0.0 - 802050 -0.0 - 806051 -0.0 - 802060 -0.0 - 802070 -0.0 - 802080 -0.0 - 802090 -0.0 - 802100 -0.0 - 811760 -0.0 - 811770 -0.0 - 811780 -0.0 - 811790 -0.0 - 815791 -0.0 - 811800 -0.0 - 811810 -0.0 - 815811 -0.0 - 811820 -0.0 - 811830 -0.0 - 815831 -0.0 - 811840 -0.0 - 811850 -0.0 - 815851 -0.0 - 811860 -0.0 - 815861 -0.0 - 811870 -0.0 - 815871 -0.0 - 811880 -0.0 - 815881 -0.0 - 816882 -0.0 - 811890 -0.0 - 815891 -0.0 - 811900 -0.0 - 815901 -0.0 - 811910 -0.0 - 815911 -0.0 - 811920 -0.0 - 815921 -0.0 - 811930 -0.0 - 815931 -0.0 - 811940 -0.0 - 815941 -0.0 - 811950 -0.0 - 815951 -0.0 - 811960 -0.0 - 815961 -0.0 - 811970 -0.0 - 815971 -0.0 - 811980 -0.0 - 815981 -0.0 - 816982 -0.0 - 811990 -0.0 - 815991 -0.0 - 812000 -0.0 - 816001 -0.0 - 812010 -0.0 - 816011 -0.0 - 812020 -0.0 - 81203.82c -0.0 - 812040 -0.0 - 81205.82c -0.0 - 812060 -0.0 - 816061 -0.0 - 812070 -0.0 - 816071 -0.0 - 812080 -0.0 - 812090 -0.0 - 812100 -0.0 - 812110 -0.0 - 812120 -0.0 - 821780 -0.0 - 821790 -0.0 - 821800 -0.0 - 821810 -0.0 - 825811 -0.0 - 821820 -0.0 - 821830 -0.0 - 825831 -0.0 - 821840 -0.0 - 821850 -0.0 - 825851 -0.0 - 821860 -0.0 - 821870 -0.0 - 825871 -0.0 - 821880 -0.0 - 821890 -0.0 - 825891 -0.0 - 821900 -0.0 - 821910 -0.0 - 825911 -0.0 - 821920 -0.0 - 821930 -0.0 - 825931 -0.0 - 821940 -0.0 - 821950 -0.0 - 825951 -0.0 - 821960 -0.0 - 821970 -0.0 - 825971 -0.0 - 821980 -0.0 - 821990 -0.0 - 825991 -0.0 - 822000 -0.0 - 822010 -0.0 - 826011 -0.0 - 822020 -0.0 - 826021 -0.0 - 822030 -0.0 - 826031 -0.0 - 827032 -0.0 - 82204.82c -0.0 - 826041 -0.0 - 822050 -0.0 - 826051 -0.0 - 82206.82c -0.0 - 82207.82c -0.0 - 826071 -0.0 - 82208.82c -0.0 - 822090 -0.0 - 822100 -0.0 - 822110 -0.0 - 822120 -0.0 - 822130 -0.0 - 822140 -0.0 - 822150 -0.0 - 831840 -0.0 - 835841 -0.0 - 831850 -0.0 - 831860 -0.0 - 835861 -0.0 - 831870 -0.0 - 835871 -0.0 - 831880 -0.0 - 835881 -0.0 - 831890 -0.0 - 835891 -0.0 - 831900 -0.0 - 835901 -0.0 - 831910 -0.0 - 835911 -0.0 - 831920 -0.0 - 835921 -0.0 - 831930 -0.0 - 835931 -0.0 - 831940 -0.0 - 835941 -0.0 - 836942 -0.0 - 831950 -0.0 - 835951 -0.0 - 831960 -0.0 - 835961 -0.0 - 836962 -0.0 - 831970 -0.0 - 835971 -0.0 - 831980 -0.0 - 835981 -0.0 - 836982 -0.0 - 831990 -0.0 - 835991 -0.0 - 832000 -0.0 - 836001 -0.0 - 837002 -0.0 - 832010 -0.0 - 836011 -0.0 - 832020 -0.0 - 832030 -0.0 - 836031 -0.0 - 832040 -0.0 - 836041 -0.0 - 837042 -0.0 - 832050 -0.0 - 832060 -0.0 - 832070 -0.0 - 832080 -0.0 - 836081 -0.0 - 83209.82c -0.0 - 832100 -0.0 - 836101 -0.0 - 832110 -0.0 - 832120 -0.0 - 836121 -0.0 - 837122 -0.0 - 832130 -0.0 - 832140 -0.0 - 832150 -0.0 - 836151 -0.0 - 832160 -0.0 - 832170 -0.0 - 832180 -0.0 - 841880 -0.0 - 841890 -0.0 - 841900 -0.0 - 841910 -0.0 - 845911 -0.0 - 841920 -0.0 - 841930 -0.0 - 845931 -0.0 - 841940 -0.0 - 841950 -0.0 - 845951 -0.0 - 841960 -0.0 - 841970 -0.0 - 845971 -0.0 - 841980 -0.0 - 841990 -0.0 - 845991 -0.0 - 842000 -0.0 - 842010 -0.0 - 846011 -0.0 - 842020 -0.0 - 842030 -0.0 - 846031 -0.0 - 842040 -0.0 - 842050 -0.0 - 846051 -0.0 - 847052 -0.0 - 842060 -0.0 - 842070 -0.0 - 846071 -0.0 - 842080 -0.0 - 842090 -0.0 - 842100 -0.0 - 842110 -0.0 - 846111 -0.0 - 842120 -0.0 - 846121 -0.0 - 842130 -0.0 - 842140 -0.0 - 842150 -0.0 - 842160 -0.0 - 842170 -0.0 - 842180 -0.0 - 842190 -0.0 - 842200 -0.0 - 851930 -0.0 - 851940 -0.0 - 855941 -0.0 - 851950 -0.0 - 855951 -0.0 - 851960 -0.0 - 855961 -0.0 - 851970 -0.0 - 855971 -0.0 - 851980 -0.0 - 855981 -0.0 - 851990 -0.0 - 852000 -0.0 - 856001 -0.0 - 857002 -0.0 - 852010 -0.0 - 852020 -0.0 - 856021 -0.0 - 857022 -0.0 - 852030 -0.0 - 852040 -0.0 - 856041 -0.0 - 852050 -0.0 - 852060 -0.0 - 852070 -0.0 - 852080 -0.0 - 852090 -0.0 - 852100 -0.0 - 852110 -0.0 - 852120 -0.0 - 856121 -0.0 - 852130 -0.0 - 852140 -0.0 - 852150 -0.0 - 852160 -0.0 - 852170 -0.0 - 852180 -0.0 - 852190 -0.0 - 852200 -0.0 - 852210 -0.0 - 852220 -0.0 - 852230 -0.0 - 861950 -0.0 - 865951 -0.0 - 861960 -0.0 - 861970 -0.0 - 865971 -0.0 - 861980 -0.0 - 861990 -0.0 - 865991 -0.0 - 862000 -0.0 - 862010 -0.0 - 866011 -0.0 - 862020 -0.0 - 862030 -0.0 - 866031 -0.0 - 862040 -0.0 - 862050 -0.0 - 862060 -0.0 - 862070 -0.0 - 862080 -0.0 - 862090 -0.0 - 862100 -0.0 - 862110 -0.0 - 862120 -0.0 - 862130 -0.0 - 862140 -0.0 - 862150 -0.0 - 862160 -0.0 - 862170 -0.0 - 862180 -0.0 - 862190 -0.0 - 862200 -0.0 - 862210 -0.0 - 862220 -0.0 - 862230 -0.0 - 862240 -0.0 - 862250 -0.0 - 862260 -0.0 - 862270 -0.0 - 862280 -0.0 - 871990 -0.0 - 872000 -0.0 - 872010 -0.0 - 872020 -0.0 - 876021 -0.0 - 872030 -0.0 - 872040 -0.0 - 876041 -0.0 - 877042 -0.0 - 872050 -0.0 - 872060 -0.0 - 876061 -0.0 - 877062 -0.0 - 872070 -0.0 - 872080 -0.0 - 872090 -0.0 - 872100 -0.0 - 872110 -0.0 - 872120 -0.0 - 872130 -0.0 - 872140 -0.0 - 876141 -0.0 - 872150 -0.0 - 872160 -0.0 - 872170 -0.0 - 872180 -0.0 - 876181 -0.0 - 872190 -0.0 - 872200 -0.0 - 872210 -0.0 - 872220 -0.0 - 872230 -0.0 - 872240 -0.0 - 872250 -0.0 - 872260 -0.0 - 872270 -0.0 - 872280 -0.0 - 872290 -0.0 - 872300 -0.0 - 872310 -0.0 - 872320 -0.0 - 882020 -0.0 - 882030 -0.0 - 886031 -0.0 - 882040 -0.0 - 882050 -0.0 - 886051 -0.0 - 882060 -0.0 - 882070 -0.0 - 886071 -0.0 - 882080 -0.0 - 882090 -0.0 - 882100 -0.0 - 882110 -0.0 - 882120 -0.0 - 882130 -0.0 - 886131 -0.0 - 882140 -0.0 - 882150 -0.0 - 882160 -0.0 - 882170 -0.0 - 882180 -0.0 - 882190 -0.0 - 882200 -0.0 - 882210 -0.0 - 882220 -0.0 - 88223.82c -0.0 - 88224.82c -0.0 - 88225.82c -0.0 - 88226.82c -0.0 - 882270 -0.0 - 882280 -0.0 - 882290 -0.0 - 882300 -0.0 - 882310 -0.0 - 882320 -0.0 - 882330 -0.0 - 882340 -0.0 - 892060 -0.0 - 896061 -0.0 - 892070 -0.0 - 892080 -0.0 - 896081 -0.0 - 892090 -0.0 - 892100 -0.0 - 892110 -0.0 - 892120 -0.0 - 892130 -0.0 - 892140 -0.0 - 892150 -0.0 - 892160 -0.0 - 896161 -0.0 - 892170 -0.0 - 892180 -0.0 - 892190 -0.0 - 892200 -0.0 - 892210 -0.0 - 892220 -0.0 - 896221 -0.0 - 892230 -0.0 - 892240 -0.0 - 89225.82c -0.0 - 89226.82c -0.0 - 89227.82c -0.0 - 892280 -0.0 - 892290 -0.0 - 892300 -0.0 - 892310 -0.0 - 892320 -0.0 - 892330 -0.0 - 892340 -0.0 - 892350 -0.0 - 892360 -0.0 - 902090 -0.0 - 902100 -0.0 - 902110 -0.0 - 902120 -0.0 - 902130 -0.0 - 902140 -0.0 - 902150 -0.0 - 902160 -0.0 - 902170 -0.0 - 902180 -0.0 - 902190 -0.0 - 902200 -0.0 - 902210 -0.0 - 902220 -0.0 - 902230 -0.0 - 902240 -0.0 - 902250 -0.0 - 902260 -0.0 - 90227.82c -0.0 - 90228.82c -0.0 - 90229.82c -0.0 - 90230.82c -0.0 - 90231.82c -0.0 - 90232.82c -0.43557913048233615 - 90233.82c -0.0 - 90234.82c -0.0 - 902350 -0.0 - 902360 -0.0 - 902370 -0.0 - 902380 -0.0 - 912120 -0.0 - 912130 -0.0 - 912140 -0.0 - 912150 -0.0 - 912160 -0.0 - 912170 -0.0 - 916171 -0.0 - 912180 -0.0 - 912190 -0.0 - 912200 -0.0 - 912210 -0.0 - 912220 -0.0 - 912230 -0.0 - 912240 -0.0 - 912250 -0.0 - 912260 -0.0 - 912270 -0.0 - 912280 -0.0 - 91229.82c -0.0 - 91230.82c -0.0 - 91231.82c -0.0 - 91232.82c -0.0 - 91233.82c -0.0 - 912340 -0.0 - 916341 -0.0 - 912350 -0.0 - 912360 -0.0 - 912370 -0.0 - 912380 -0.0 - 912390 -0.0 - 912400 -0.0 - 922170 -0.0 - 922180 -0.0 - 922190 -0.0 - 922200 -0.0 - 922220 -0.0 - 922230 -0.0 - 922240 -0.0 - 922250 -0.0 - 922260 -0.0 - 922270 -0.0 - 922280 -0.0 - 922290 -0.0 - 92230.82c -0.0 - 92231.82c -0.0 - 92232.82c -0.0 - 92233.82c -0.00911370203663893 - 92234.82c -0.0 - 92235.82c -0.0 - 926351 -0.0 - 92236.82c -0.0 - 92237.82c -0.0 - 92238.82c -0.0 - 92239.82c -0.0 - 92240.82c -0.0 - 92241.82c -0.0 - 922420 -0.0 - 932250 -0.0 - 932260 -0.0 - 932270 -0.0 - 932280 -0.0 - 932290 -0.0 - 932300 -0.0 - 932310 -0.0 - 932320 -0.0 - 932330 -0.0 - 93234.82c -0.0 - 93235.82c -0.0 - 93236.82c -0.0 - 936361 -0.0 - 93237.82c -0.0 - 93238.82c -0.0 - 93239.82c -0.0 - 932400 -0.0 - 936401 -0.0 - 932410 -0.0 - 932420 -0.0 - 936421 -0.0 - 932430 -0.0 - 932440 -0.0 - 942280 -0.0 - 942290 -0.0 - 942300 -0.0 - 942310 -0.0 - 942320 -0.0 - 942330 -0.0 - 942340 -0.0 - 942350 -0.0 - 94236.82c -0.0 - 94237.82c -0.0 - 946371 -0.0 - 94238.82c -0.0 - 94239.82c -0.0 - 94240.82c -0.0 - 94241.82c -0.0 - 94242.82c -0.0 - 94243.82c -0.0 - 94244.82c -0.0 - 942450 -0.0 - 94246.82c -0.0 - 942470 -0.0 - 952310 -0.0 - 952320 -0.0 - 952330 -0.0 - 952340 -0.0 - 952350 -0.0 - 952360 -0.0 - 952370 -0.0 - 952380 -0.0 - 952390 -0.0 - 95240.82c -0.0 - 95241.82c -0.0 - 95242.82c -0.0 - 95642.82c -0.0 - 957422 -0.0 - 95243.82c -0.0 - 95244.82c -0.0 - 95644.82c -0.0 - 952450 -0.0 - 952460 -0.0 - 956461 -0.0 - 952470 -0.0 - 952480 -0.0 - 952490 -0.0 - 962330 -0.0 - 962340 -0.0 - 962350 -0.0 - 962360 -0.0 - 962370 -0.0 - 962380 -0.0 - 962390 -0.0 - 96240.82c -0.0 - 96241.82c -0.0 - 96242.82c -0.0 - 96243.82c -0.0 - 96244.82c -0.0 - 966441 -0.0 - 96245.82c -0.0 - 96246.82c -0.0 - 96247.82c -0.0 - 96248.82c -0.0 - 96249.82c -0.0 - 96250.82c -0.0 - 962510 -0.0 - 972350 -0.0 - 972370 -0.0 - 972380 -0.0 - 972400 -0.0 - 972410 -0.0 - 972420 -0.0 - 972430 -0.0 - 972440 -0.0 - 97245.82c -0.0 - 97246.82c -0.0 - 97247.82c -0.0 - 97248.82c -0.0 - 976481 -0.0 - 97249.82c -0.0 - 97250.82c -0.0 - 972510 -0.0 - 972530 -0.0 - 972540 -0.0 - 982370 -0.0 - 982380 -0.0 - 982390 -0.0 - 982400 -0.0 - 982410 -0.0 - 982420 -0.0 - 982430 -0.0 - 982440 -0.0 - 982450 -0.0 - 98246.82c -0.0 - 982470 -0.0 - 98248.82c -0.0 - 98249.82c -0.0 - 98250.82c -0.0 - 98251.82c -0.0 - 98252.82c -0.0 - 98253.82c -0.0 - 98254.82c -0.0 - 982550 -0.0 - 982560 -0.0 - 992400 -0.0 - 992410 -0.0 - 992420 -0.0 - 992430 -0.0 - 992440 -0.0 - 992450 -0.0 - 992460 -0.0 - 992470 -0.0 - 996471 -0.0 - 992480 -0.0 - 992490 -0.0 - 992500 -0.0 - 996501 -0.0 - 99251.82c -0.0 - 99252.82c -0.0 - 99253.82c -0.0 - 99254.82c -0.0 - 99654.82c -0.0 - 99255.82c -0.0 - 992560 -0.0 - 996561 -0.0 - 992570 -0.0 - 992580 -0.0 - 1002420 -0.0 - 1002430 -0.0 - 1002440 -0.0 - 1002450 -0.0 - 1002460 -0.0 - 1002470 -0.0 - 1002480 -0.0 - 1002490 -0.0 - 1002500 -0.0 - 1006501 -0.0 - 1002510 -0.0 - 1002520 -0.0 - 1002530 -0.0 - 1002540 -0.0 - 100255.82c -0.0 - 1002560 -0.0 - 1002570 -0.0 - 1002580 -0.0 - 1002590 -0.0 - 1002600 -0.0 - 1012450 -0.0 - 1016451 -0.0 - 1012460 -0.0 - 1012470 -0.0 - 1016471 -0.0 - 1012480 -0.0 - 1012490 -0.0 - 1016491 -0.0 - 1012500 -0.0 - 1012510 -0.0 - 1012520 -0.0 - 1012530 -0.0 - 1012540 -0.0 - 1016541 -0.0 - 1012550 -0.0 - 1012560 -0.0 - 1012570 -0.0 - 1012580 -0.0 - 1016581 -0.0 - 1012590 -0.0 - 1012600 -0.0 - 1012610 -0.0 - 1022500 -0.0 - 1022510 -0.0 - 1026511 -0.0 - 1022520 -0.0 - 1022530 -0.0 - 1022540 -0.0 - 1026541 -0.0 - 1022550 -0.0 - 1022560 -0.0 - 1022570 -0.0 - 1022580 -0.0 - 1022590 -0.0 - 1022600 -0.0 - 1022610 -0.0 - 1022620 -0.0 - 1032510 -0.0 - 1032520 -0.0 - 1032530 -0.0 - 1036531 -0.0 - 1032540 -0.0 - 1032550 -0.0 - 1036551 -0.0 - 1032560 -0.0 - 1032570 -0.0 - 1032580 -0.0 - 1032590 -0.0 - 1032600 -0.0 - 1032610 -0.0 - 1032620 -0.0 - 1032630 -0.0 - 1042530 -0.0 - 1042540 -0.0 - 1042550 -0.0 - 1042560 -0.0 - 1042570 -0.0 - 1046571 -0.0 - 1042580 -0.0 - 1042590 -0.0 - 1042600 -0.0 - 1042610 -0.0 - 1046611 -0.0 - 1042620 -0.0 - 1042630 -0.0 - 1042640 -0.0 - 1042650 -0.0 - 1052550 -0.0 - 1052560 -0.0 - 1052570 -0.0 - 1056571 -0.0 - 1052580 -0.0 - 1056581 -0.0 - 1052590 -0.0 - 1052600 -0.0 - 1052610 -0.0 - 1052620 -0.0 - 1052630 -0.0 - 1052640 -0.0 - 1052650 -0.0 - 1062580 -0.0 - 1062590 -0.0 - 1062600 -0.0 - 1062610 -0.0 - 1062620 -0.0 - 1062630 -0.0 - 1066631 -0.0 - 1062640 -0.0 - 1062650 -0.0 - 1062660 -0.0 - 1062690 -0.0 - 1072600 -0.0 - 1072610 -0.0 - 1072620 -0.0 - 1076621 -0.0 - 1072630 -0.0 - 1072640 -0.0 - 1072650 -0.0 - 1072660 -0.0 - 1072670 -0.0 - 1072690 -0.0 - 1082630 -0.0 - 1082640 -0.0 - 1082650 -0.0 - 1086651 -0.0 - 1082660 -0.0 - 1082670 -0.0 - 1082680 -0.0 - 1082690 -0.0 - 1082730 -0.0 - 1092650 -0.0 - 1092660 -0.0 - 1096661 -0.0 - 1092670 -0.0 - 1092680 -0.0 - 1092690 -0.0 - 1092700 -0.0 - 1092710 -0.0 - 1092730 -0.0 - 1102670 -0.0 - 1102680 -0.0 - 1102690 -0.0 - 1102700 -0.0 - 1106701 -0.0 - 1102710 -0.0 - 1106711 -0.0 - 1102720 -0.0 - 1102730 -0.0 - 1106791 -0.0 - 1112720 -0.0 From ea049a9c5c8dfa7021ed89dc1fc6503744287166 Mon Sep 17 00:00:00 2001 From: yardasol Date: Wed, 2 Nov 2022 16:44:47 -0500 Subject: [PATCH 41/62] remove cruft lines from core_elements.py --- examples/msbr/core_elements.py | 7 ------- 1 file changed, 7 deletions(-) diff --git a/examples/msbr/core_elements.py b/examples/msbr/core_elements.py index 7404eea25..985adc25d 100644 --- a/examples/msbr/core_elements.py +++ b/examples/msbr/core_elements.py @@ -79,7 +79,6 @@ def zoneIA(gr_sq_neg, ia1 = (c1, c2, c3) # I-A main (lower 2) - #c4 = c1.clone(clone_materials=False, clone_region=False) c4 = c1.clone(clone_materials=False) c4.name = 'ia_fuel_inner_main' @@ -97,9 +96,6 @@ def zoneIA(gr_sq_neg, # I-A 2 (upper 1) - #c7 = c1.clone(clone_materials=False, clone_region=False) - #c8 = c2.clone(clone_materials=False, clone_region=False) - #c9 = c3.clone(clone_materials=False, clone_region=False) c7 = c1.clone(clone_materials=False) c8 = c2.clone(clone_materials=False) c9 = c3.clone(clone_materials=False) @@ -110,7 +106,6 @@ def zoneIA(gr_sq_neg, ia2 = (c7, c8, c9) # I-A 3 (upper 2) - #c10 = c1.clone(clone_materials=False, clone_region=False) c10 = c1.clone(clone_materials=False) c10.name = 'ia_fuel_inner_3' c11 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='ia_moderator_3') @@ -197,7 +192,6 @@ def zoneIIA(gr_sq_neg, gr_sq_neg & inter_elem_channel), name='iia_moderator_2') - #c6 = c3.clone(clone_materials=False, clone_region=False) c6 = c3.clone(clone_materials=False) c6.name = 'iia_fuel_outer_2' iia2 = [c4, c5, c6] @@ -209,7 +203,6 @@ def zoneIIA(gr_sq_neg, name=f'iia_moderator_2_{name}')) # II-A 3 (upper 2) - #c7 = c4.clone(clone_materials=False, clone_region=False) c7 = c4.clone(clone_materials=False) c7.name = 'iia_fuel_inner_3' c8 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='iia_moderator_3') From d4ba81be45708a7936795fbb56531a217abc0565 Mon Sep 17 00:00:00 2001 From: yardasol Date: Wed, 9 Nov 2022 14:09:55 -0600 Subject: [PATCH 42/62] add lines in endfb71 script to fix Am242 spec --- scripts/xsdata/download_endfb71.bash | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/scripts/xsdata/download_endfb71.bash b/scripts/xsdata/download_endfb71.bash index 8b19d17e2..12032ea8b 100644 --- a/scripts/xsdata/download_endfb71.bash +++ b/scripts/xsdata/download_endfb71.bash @@ -114,3 +114,12 @@ fi # Run the xsdirconvert script perl $XSDIR/xsdirconvert.pl $DATADIR/$XSDIR_FILE > $DATADIR/endfb71.xsdata + +# Fix bad names for Am242 +sed -i "s/Am-242/Am-242m/" $DATADIR/endfb71.xsdata +sed -i "s/ Am-242/Am-242/" $DATADIR/endfb71.xsdata +sed -i "s/Am-242mm/ Am-242/" $DATADIR/endfb71.xsdata +sed -i "s/c 1 95242 0/c 1 95242 2/" $DATADIR/endfb71.xsdata +sed -i "s/c 1 95242 1/c 1 95242 0/" $DATADIR/endfb71.xsdata +sed -i "s/c 1 95242 2/c 1 95242 1/" $DATADIR/endfb71.xsdata +sed -i "s/c 1 95042 0/c 1 95242 0/" $DATADIR/endfb71.xsdata From 82df38e7f9e35fcfe2b0b0339d4f4e33f6fb1ccc Mon Sep 17 00:00:00 2001 From: yardasol Date: Wed, 9 Nov 2022 14:14:17 -0600 Subject: [PATCH 43/62] fix incorrect script name in scripts README --- scripts/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/README.md b/scripts/README.md index fc1258123..261f82051 100644 --- a/scripts/README.md +++ b/scripts/README.md @@ -53,7 +53,7 @@ Information about how to do this can be found [here](https://docs.openmc.org/en/ To run the script, execute ``` -XSDIR=[PATH TO XSDIR] OPENMC_ENV=[NAME OF OPENMC CONDA ENVIRONMENT] OPENMCDIR=[PATH TO OPENMC REPO] bash download_endfb71.bash +XSDIR=[PATH TO XSDIR] OPENMC_ENV=[NAME OF OPENMC CONDA ENVIRONMENT] OPENMCDIR=[PATH TO OPENMC REPO] bash process_endfb71_to_openmc.bash ``` Where `XSDIR` is a path to the directory where you want to store the cross From 069480873088b7296a1128cccd643a321b8a5580 Mon Sep 17 00:00:00 2001 From: yardasol Date: Mon, 14 Nov 2022 15:51:07 -0600 Subject: [PATCH 44/62] fix openmc model material compositons the original model's material compositions did not match what is in the Robertson report. This commit fixes that for the OpenMC version of the model --- examples/msbr/openmc_msbr_model.py | 45 ++++++++++++++++++++++-------- 1 file changed, 33 insertions(+), 12 deletions(-) diff --git a/examples/msbr/openmc_msbr_model.py b/examples/msbr/openmc_msbr_model.py index 1ccc5704e..02ca1bbd2 100644 --- a/examples/msbr/openmc_msbr_model.py +++ b/examples/msbr/openmc_msbr_model.py @@ -11,27 +11,48 @@ # Materials fuel = openmc.Material(name='fuel') -fuel.set_density('g/cm3', density=3.35) -fuel.add_components({'Li7': 0.0787474673879085, - 'Be9': 0.0225566879138321, - 'F19': 0.454003012179284, - 'Th232': 0.435579130482336, - 'U233': 0.00911370203663893}, - percent_type='wo') +fuel.set_density('g/cm3', density=3.3332642) +fuel.add_components({'Li': {'percent': 0.3585, + 'enrichment': 95.995, + 'enrichment_target': 'Li7', + 'percent_type': 'ao'}, + 'F19': 0.5635666666666667, + 'Be9': 0.05333333333333333, + 'Th232': 0.024, + 'U233': 0.0006}, + percent_type='ao') fuel.depletable = True fuel.volume = 48710000.0 moder = openmc.Material(name='graphite') -moder.set_density('g/cm3', density=1.84) +moder.set_density('g/cm3', density=1.843) moder.add_nuclide('C0', 1.000, percent_type='wo') moder.add_s_alpha_beta('c_Graphite') hast = openmc.Material(name='hastelloyN') hast.set_density('g/cm3', density=8.671) -hast.add_components({'Al27': 0.003, - 'Ni': 0.677, - 'W': 0.250, - 'Cr': 0.070}, +#hast.add_components({'Al27': 0.003, +# 'Ni': 0.677, +# 'W': 0.250, +# 'Cr': 0.070}, +# percent_type='wo') +hast.add_components({'Ni': 0.73709, + 'Mo': 0.12, + 'Cr': 0.07, + 'Fe': 0.03, + 'C': 0.0006, + 'Mn': 0.0035, + 'Si': 0.001, + 'W': 0.001, + 'Al': 0.001, + 'Ti': 0.0125, #avg + 'Cu': 0.001, + 'Co': 0.002, + 'P': 0.00015, + 'S': 0.00015, + 'B': 0.000010, + 'Hf': 0.01, + 'Nb': 0.01}, percent_type='wo') mat = openmc.Materials(materials=[fuel, moder, hast]) From 4f8ffd6ca3d67082f2c8e1892c00c07abae6d4bd Mon Sep 17 00:00:00 2001 From: yardasol Date: Wed, 16 Nov 2022 14:51:30 -0600 Subject: [PATCH 45/62] IA elements are actually IB elements --- examples/msbr/core_elements.py | 66 +++++++++++++++--------------- examples/msbr/openmc_msbr_model.py | 26 ++++++------ 2 files changed, 46 insertions(+), 46 deletions(-) diff --git a/examples/msbr/core_elements.py b/examples/msbr/core_elements.py index 985adc25d..464e026a6 100644 --- a/examples/msbr/core_elements.py +++ b/examples/msbr/core_elements.py @@ -2,7 +2,7 @@ import numpy as np def _bound_zone_cells(cells_tuples, levels): - """Helper function that moves Zone IA and Zone IIA cells to the + """Helper function that moves Zone IB and Zone IIA cells to the appropriate height.""" cell_list = [] n_levels = len(cells_tuples) @@ -26,14 +26,14 @@ def _bound_zone_cells(cells_tuples, levels): cell_list.append(cell) return cell_list -def zoneIA(gr_sq_neg, +def zoneIB(gr_sq_neg, gr_extra_regions, inter_elem_channel, gr_round_4, moder, fuel, hast): - """Create universe for Zone IA element. Based on specification in + """Create universe for Zone IB element. Based on specification in Robertson, 1971 Fig 3.4 (p. 17) Parameters @@ -58,74 +58,74 @@ def zoneIA(gr_sq_neg, Returns ------- - ia : openmc.Universe - Universe for Zone IA element. + ib : openmc.Universe + Universe for Zone IB element. """ elem_levels = [22.86, 419.10, 438.15, 445.135] level_bounds = [] for level in elem_levels: level_bounds.append(openmc.ZPlane(z0=level)) - s1 = openmc.ZCylinder(r=4.953, name='ia_gr_round_1') - s2 = openmc.ZCylinder(r=1.71069, name='ia_fuel_hole') + s1 = openmc.ZCylinder(r=4.953, name='ib_gr_round_1') + s2 = openmc.ZCylinder(r=1.71069, name='ib_fuel_hole') h = 12.66 theta = np.arctan(4.953 / h) r2 = (1 / np.cos(theta))**2 - 1 s3 = openmc.ZCone(z0=h + elem_levels[2], r2=r2, name='cone_i') - c1 = openmc.Cell(fill=fuel, region=(-s2), name='ia_fuel_inner_1') - c2 = openmc.Cell(fill=moder, region=(+s2 & -s1), name='ia_moderator_1') - c3 = openmc.Cell(fill=fuel, region=(+s1), name='ia_fuel_outer_1') - ia1 = (c1, c2, c3) + c1 = openmc.Cell(fill=fuel, region=(-s2), name='ib_fuel_inner_1') + c2 = openmc.Cell(fill=moder, region=(+s2 & -s1), name='ib_moderator_1') + c3 = openmc.Cell(fill=fuel, region=(+s1), name='ib_fuel_outer_1') + ib1 = (c1, c2, c3) # I-A main (lower 2) c4 = c1.clone(clone_materials=False) - c4.name = 'ia_fuel_inner_main' + c4.name = 'ib_fuel_inner_main' c5 = openmc.Cell(fill=moder, region=(+s2 & gr_sq_neg & inter_elem_channel), - name='ia_moderator_main') + name='ib_moderator_main') c6 = openmc.Cell(fill=fuel, region=(~gr_sq_neg & inter_elem_channel), - name='ia_fuel_outer_main') - iam = [c4, c5, c6] + name='ib_fuel_outer_main') + ibm = [c4, c5, c6] for (reg, name) in gr_extra_regions: - iam.append(openmc.Cell(fill=moder, region=reg, - name=f'ia_moderator_main_{name}')) + ibm.append(openmc.Cell(fill=moder, region=reg, + name=f'ib_moderator_main_{name}')) # I-A 2 (upper 1) c7 = c1.clone(clone_materials=False) c8 = c2.clone(clone_materials=False) c9 = c3.clone(clone_materials=False) - c7.name = 'ia_fuel_inner_2' - c8.name = 'ia_moderator_2' - c9.name = 'ia_fuel_outer_2' + c7.name = 'ib_fuel_inner_2' + c8.name = 'ib_moderator_2' + c9.name = 'ib_fuel_outer_2' - ia2 = (c7, c8, c9) + ib2 = (c7, c8, c9) # I-A 3 (upper 2) c10 = c1.clone(clone_materials=False) - c10.name = 'ia_fuel_inner_3' - c11 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='ia_moderator_3') - c12 = openmc.Cell(fill=fuel, region=(+s3), name='ia_fuel_outer_3') - ia3 = (c10, c11, c12) + c10.name = 'ib_fuel_inner_3' + c11 = openmc.Cell(fill=moder, region=(+s2 & -s3), name='ib_moderator_3') + c12 = openmc.Cell(fill=fuel, region=(+s3), name='ib_fuel_outer_3') + ib3 = (c10, c11, c12) # I-A 4 (upper 3) c13 = openmc.Cell(fill=hast, region=(-s2), - name='ia_hast') + name='ib_hast') c14 = openmc.Cell(fill=moder, region=(+s2 & -gr_round_4), - name='ia_moderator_4') + name='ib_moderator_4') c15 = openmc.Cell(fill=fuel, region=(+gr_round_4), - name='ia_fuel_outer_4') - ia4 = (c13, c14, c15) + name='ib_fuel_outer_4') + ib4 = (c13, c14, c15) - elem_cells = [ia1, iam, ia2, ia3, ia4] + elem_cells = [ib1, ibm, ib2, ib3, ib4] # universe_id=1 - ia = openmc.Universe(name='zone_ia') - ia.add_cells(_bound_zone_cells(elem_cells, level_bounds)) - return ia + ib = openmc.Universe(name='zone_ib') + ib.add_cells(_bound_zone_cells(elem_cells, level_bounds)) + return ib def zoneIIA(gr_sq_neg, gr_extra_regions, diff --git a/examples/msbr/openmc_msbr_model.py b/examples/msbr/openmc_msbr_model.py index 02ca1bbd2..e3789494a 100644 --- a/examples/msbr/openmc_msbr_model.py +++ b/examples/msbr/openmc_msbr_model.py @@ -93,7 +93,7 @@ def shared_elem_geometry(elem_type, Parameters ---------- elem_type : 'core', 'cr' - Indicates the type of element. 'core' inidcates for Zones IA and IIA. + Indicates the type of element. 'core' inidcates for Zones IB and IIA. 'cr' indicates control rod. gr_sq_d : float Half-width of graphite square element in cm. @@ -143,7 +143,7 @@ def shared_elem_geometry(elem_type, rib_lb_t = -lb_t if elem_type == 'core': - # Graphite element ribs for zones I-A and II-A + # Graphite element ribs for zones I-B and II-A ul = openmc.ZCylinder(-l1, l2, r_rib, name='rib_ul') br = openmc.ZCylinder(l1, -l2, r_rib, name='rib_br') lb = openmc.ZCylinder(-l2, -l1, r_rib, name='rib_lb') @@ -284,7 +284,7 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): 5.62102, 2.2225, 'gr_round_4') - l = ce.zoneIA(gr_sq_neg, + l = ce.zoneIB(gr_sq_neg, gr_extra_regions, inter_elem_channel, gr_round_4, @@ -512,15 +512,15 @@ def plot_geometry(name, pixels=(2000, 2000), width=(686.816, 612.14), basis='yz')) -plots.append(plot_geometry('detail-zoneIA-IIA-lower1', +plots.append(plot_geometry('detail-zoneIB-IIA-lower1', origin=(215, 0., 10.0), pixels=(1000, 1000), width=(40, 40))) -plots.append(plot_geometry('detail-zoneIA-main', +plots.append(plot_geometry('detail-zoneIB-main', origin=(215, 0., 23.0), pixels=(1000, 1000), width=(40, 40))) -plots.append(plot_geometry('detail-zoneIA-upper1', +plots.append(plot_geometry('detail-zoneIB-upper1', origin=(215, 0., 420), pixels=(1000, 1000), width=(40, 40))) @@ -532,7 +532,7 @@ def plot_geometry(name, origin=(215, 0., 437), pixels=(1000, 1000), width=(40, 40))) -plots.append(plot_geometry('detail-zoneIA-upper2', +plots.append(plot_geometry('detail-zoneIB-upper2', origin=(215, 0., 439), pixels=(1000, 1000), width=(40, 40))) @@ -544,17 +544,17 @@ def plot_geometry(name, origin=(215, 0., 442), pixels=(1000, 1000), width=(40, 40))) -plots.append(plot_geometry('detail-zoneIA-upper3', +plots.append(plot_geometry('detail-zoneIB-upper3', origin=(215, 0., 448), pixels=(1000, 1000), width=(40, 40))) -plots.append(plot_geometry('full-zoneIA-IIA-lower1', +plots.append(plot_geometry('full-zoneIB-IIA-lower1', origin=(0., 0., 10.0), width=(522.232, 522.232))) -plots.append(plot_geometry('full-zoneIA-main', +plots.append(plot_geometry('full-zoneIB-main', origin=(0., 0., 23.0), width=(522.232, 522.232))) -plots.append(plot_geometry('full-zoneIA-upper1', +plots.append(plot_geometry('full-zoneIB-upper1', origin=(0., 0., 420), width=(522.232, 522.232))) plots.append(plot_geometry('full-zoneIIA-upper', @@ -563,7 +563,7 @@ def plot_geometry(name, plots.append(plot_geometry('full-zoneIIA-upper2', origin=(0., 0., 437), width=(522.232, 522.232))) -plots.append(plot_geometry('full-zoneIA-upper2', +plots.append(plot_geometry('full-zoneIB-upper2', origin=(0., 0., 439), width=(522.232, 522.232))) plots.append(plot_geometry('full-zoneIIA-upper3', @@ -572,7 +572,7 @@ def plot_geometry(name, plots.append(plot_geometry('full-zoneIIA-upper4', origin=(0., 0., 442), width=(522.232, 522.232))) -plots.append(plot_geometry('full-zoneIA-upper3', +plots.append(plot_geometry('full-zoneIB-upper3', origin=(0., 0., 448), width=(522.232, 522.232))) plots.append(plot_geometry('detail-core-xz-upper', From 70fdb624685a99c667046c2933a45bc924956a2b Mon Sep 17 00:00:00 2001 From: yardasol Date: Thu, 17 Nov 2022 13:06:02 -0600 Subject: [PATCH 46/62] Revert "fix openmc model material compositons" We need more testing before changing the base composition This reverts commit 069480873088b7296a1128cccd643a321b8a5580. --- examples/msbr/openmc_msbr_model.py | 45 ++++++++---------------------- 1 file changed, 12 insertions(+), 33 deletions(-) diff --git a/examples/msbr/openmc_msbr_model.py b/examples/msbr/openmc_msbr_model.py index e3789494a..8f4bbb9ad 100644 --- a/examples/msbr/openmc_msbr_model.py +++ b/examples/msbr/openmc_msbr_model.py @@ -11,48 +11,27 @@ # Materials fuel = openmc.Material(name='fuel') -fuel.set_density('g/cm3', density=3.3332642) -fuel.add_components({'Li': {'percent': 0.3585, - 'enrichment': 95.995, - 'enrichment_target': 'Li7', - 'percent_type': 'ao'}, - 'F19': 0.5635666666666667, - 'Be9': 0.05333333333333333, - 'Th232': 0.024, - 'U233': 0.0006}, - percent_type='ao') +fuel.set_density('g/cm3', density=3.35) +fuel.add_components({'Li7': 0.0787474673879085, + 'Be9': 0.0225566879138321, + 'F19': 0.454003012179284, + 'Th232': 0.435579130482336, + 'U233': 0.00911370203663893}, + percent_type='wo') fuel.depletable = True fuel.volume = 48710000.0 moder = openmc.Material(name='graphite') -moder.set_density('g/cm3', density=1.843) +moder.set_density('g/cm3', density=1.84) moder.add_nuclide('C0', 1.000, percent_type='wo') moder.add_s_alpha_beta('c_Graphite') hast = openmc.Material(name='hastelloyN') hast.set_density('g/cm3', density=8.671) -#hast.add_components({'Al27': 0.003, -# 'Ni': 0.677, -# 'W': 0.250, -# 'Cr': 0.070}, -# percent_type='wo') -hast.add_components({'Ni': 0.73709, - 'Mo': 0.12, - 'Cr': 0.07, - 'Fe': 0.03, - 'C': 0.0006, - 'Mn': 0.0035, - 'Si': 0.001, - 'W': 0.001, - 'Al': 0.001, - 'Ti': 0.0125, #avg - 'Cu': 0.001, - 'Co': 0.002, - 'P': 0.00015, - 'S': 0.00015, - 'B': 0.000010, - 'Hf': 0.01, - 'Nb': 0.01}, +hast.add_components({'Al27': 0.003, + 'Ni': 0.677, + 'W': 0.250, + 'Cr': 0.070}, percent_type='wo') mat = openmc.Materials(materials=[fuel, moder, hast]) From a9ae9692ffc203d8a7097c116d7b855efd4f7f4e Mon Sep 17 00:00:00 2001 From: yardasol Date: Thu, 17 Nov 2022 13:14:46 -0600 Subject: [PATCH 47/62] add default values to shared_elem_geometry --- examples/msbr/openmc_msbr_model.py | 59 +++++++++++------------------- 1 file changed, 22 insertions(+), 37 deletions(-) diff --git a/examples/msbr/openmc_msbr_model.py b/examples/msbr/openmc_msbr_model.py index 8f4bbb9ad..0400f8c69 100644 --- a/examples/msbr/openmc_msbr_model.py +++ b/examples/msbr/openmc_msbr_model.py @@ -58,15 +58,15 @@ def parse_arguments(): args = parser.parse_args() return bool(args.deplete) -def shared_elem_geometry(elem_type, - gr_sq_d, - gr_sq_r, - r_rib, - l1, - l2, - l3, - r_es, - es_name): +def shared_elem_geometry(elem_type='core', + gr_sq_d=4.4953, + gr_sq_r=0.46, + r_rib=0.66802, + l1=4.28498, + l2=4.53898, + l3=5.62102, + r_es=2.2225, + es_name='gr_round_4'): """Creates surfaces and regions for lattice elements. Parameters @@ -197,16 +197,15 @@ def cr_lattice(cr_boundary, core_base, core_top): (gr_sq_neg, gr_extra_regions, inter_elem_channel, - fuel_hole) = shared_elem_geometry('cr', - 7.23645, - 0.99, - 0.8, - 5.8801, - 6.505, - 8.03646, - 5.08, - 'cr_fuel_hole') - + fuel_hole) = shared_elem_geometry(elem_type='cr', + gr_sq_d=7.23645, + gr_sq_r=0.99, + r_rib=0.8, + l1=5.8801, + l2=6.505, + l3=8.03646, + r_es=5.08, + es_name='cr_fuel_hole') f = cr.control_rod(gr_sq_neg, gr_extra_regions, inter_elem_channel, @@ -254,15 +253,8 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): (gr_sq_neg, gr_extra_regions, inter_elem_channel, - gr_round_4) = shared_elem_geometry('core', - 4.953, - 0.46, - 0.66802, - 4.28498, - 4.53898, - 5.62102, - 2.2225, - 'gr_round_4') + gr_round_4) = shared_elem_geometry() + l = ce.zoneIB(gr_sq_neg, gr_extra_regions, inter_elem_channel, @@ -270,18 +262,11 @@ def main_lattice(zone_i_boundary, cr_boundary, core_base, core_top): moder, fuel, hast) + (gr_sq_neg, gr_extra_regions, inter_elem_channel, - gr_round_4) = shared_elem_geometry('core', - 4.953, - 0.46, - 0.66802, - 4.28498, - 4.53898, - 5.62102, - 2.2225, - 'gr_round_4') + gr_round_4) = shared_elem_geometry() z = ce.zoneIIA(gr_sq_neg, gr_extra_regions, From 896f5adc240269d2ac8539f38e2e5486c3cffb81 Mon Sep 17 00:00:00 2001 From: yardasol Date: Fri, 18 Nov 2022 12:19:51 -0600 Subject: [PATCH 48/62] Add stochastic volume calculation to openmc model --- examples/msbr/openmc_msbr_model.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/examples/msbr/openmc_msbr_model.py b/examples/msbr/openmc_msbr_model.py index 0400f8c69..c0dffcb05 100644 --- a/examples/msbr/openmc_msbr_model.py +++ b/examples/msbr/openmc_msbr_model.py @@ -59,7 +59,7 @@ def parse_arguments(): return bool(args.deplete) def shared_elem_geometry(elem_type='core', - gr_sq_d=4.4953, + gr_sq_d=4.953, gr_sq_r=0.46, r_rib=0.66802, l1=4.28498, @@ -453,6 +453,12 @@ def plot_geometry(name, settings.temperature = {'default': 900, 'method': 'interpolation', 'range': (800, 1000)} + +ll, ur = geo.root_universe.bounding_box +msbr_volume_calc = openmc.VolumeCalculation([fuel, moder], 100000000, ll, ur) +msbr_volume_calc.set_trigger(1e-03, 'rel_err') +settings.volume_calculations = [msbr_volume_calc] +#settings.run_mode = 'volume' settings.export_to_xml() ## Slice plots From 4021cf57baa3744e4ebdf2d785b9b5938faf8836 Mon Sep 17 00:00:00 2001 From: yardasol Date: Fri, 18 Nov 2022 12:20:08 -0600 Subject: [PATCH 49/62] fix zone names in serpent model --- examples/msbr/geometry/msbr_full.ini | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/examples/msbr/geometry/msbr_full.ini b/examples/msbr/geometry/msbr_full.ini index 58fc7082a..6f7693ef5 100644 --- a/examples/msbr/geometry/msbr_full.ini +++ b/examples/msbr/geometry/msbr_full.ini @@ -1,4 +1,4 @@ -% --- Surfaces (core pitch = 10.16 cm): Zone I-A +% --- Surfaces (core pitch = 10.16 cm): Zone I-B surf 1 cyl 0.0 0.0 1.71069 % Hole with fuel salt surf 2 sqc 0.0 0.0 4.953 0.46 % Graphite square outer wall 1.07 surf 4 cyl -4.28498 4.53898 0.66802 % Left-upper graphite element 1.15 @@ -9,7 +9,7 @@ surf 8 cyl -4.28498 -5.62102 0.66802 % replay part of left-upper graphite el surf 9 cyl 4.28498 5.62102 0.66802 % replay part of right-bottom graphite element surf 10 cyl -5.62102 4.28498 0.66802 % replay part of right-upper graphite element 0.51 octa surf 11 cyl 5.62102 -4.28498 0.66802 % replay part of left-bottom graphite element -% --- Cells: Universe 11: Zone I-A +% --- Cells: Universe 11: Zone I-B cell 1 11 fuel -1 % Fuel hole cell 2 11 moder 1 -2 4 5 6 7 8 9 10 11 % Graphite block cell 3 11 fuel 2 4 5 6 7 8 9 10 11 % Fuel salt outside graphite block @@ -21,28 +21,28 @@ cell 8 11 moder -8 % replay part of left-upper graphite cell 9 11 moder -9 % replay part of right-bottom graphite element cell 10 11 moder -10 % replay part of right-upper graphite element cell 11 11 moder -11 % replay part of left-bottom graphite element -% ============ Bottom part: Zone I-A (Universe 12) ======================== +% ============ Bottom part: Zone I-B (Universe 12) ======================== surf 12 cyl 0.0 0.0 4.953 % Graphite round outer wall cell 601 12 fuel -1 % Fuel hole cell 602 12 moder 1 -12 % Graphite block cell 603 12 fuel 12 % Fuel salt outside graphite block -% ============ Upper part 1: Zone I-A (Universe 13) ======================== +% ============ Upper part 1: Zone I-B (Universe 13) ======================== surf 13 cyl 0.0 0.0 4.953 % Graphite round outer wall above main 13-feet part cell 604 13 fuel -1 % Fuel hole cell 605 13 moder 1 -13 % Graphite block cell 606 13 fuel 13 % Fuel salt outside graphite block -% ============ Upper part 2: Zone I-A (Universe 14) ======================== +% ============ Upper part 2: Zone I-B (Universe 14) ======================== surf 14 cone 0.0 0.0 0.0 4.953 12.66 % Graphite cone outer wall part cell 607 14 fuel -1 % Fuel hole cell 608 14 moder 1 -14 % Graphite block cell 609 14 fuel 14 % Fuel salt outside graphite block -% ============ Upper part 3: Zone I-A (Universe 15) ======================== +% ============ Upper part 3: Zone I-B (Universe 15) ======================== surf 15 cyl 0.0 0.0 2.2225 % Graphite outer wall part surf 16 cyl 0.0 0.0 0.762 % Fuel hole 0.6 in cell 616 15 hast -1 % Hastelloy N cell 617 15 moder 1 -15 % Graphite block cell 618 15 fuel 15 % Fuel salt outside graphite block -% ======== Vertical stack Zone I-A cell (marked as 1 in main lattice) =========================================== +% ======== Vertical stack Zone I-B cell (marked as 1 in main lattice) =========================================== lat 1 9 0.0 0.0 5 0.0 12 22.86 11 From 6ee2f36a849fdeb9d300d60814047ef788986792 Mon Sep 17 00:00:00 2001 From: yardasol Date: Fri, 18 Nov 2022 14:07:01 -0600 Subject: [PATCH 50/62] fix control rod specs --- examples/msbr/openmc_msbr_model.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/examples/msbr/openmc_msbr_model.py b/examples/msbr/openmc_msbr_model.py index c0dffcb05..e806a7c2b 100644 --- a/examples/msbr/openmc_msbr_model.py +++ b/examples/msbr/openmc_msbr_model.py @@ -198,7 +198,7 @@ def cr_lattice(cr_boundary, core_base, core_top): gr_extra_regions, inter_elem_channel, fuel_hole) = shared_elem_geometry(elem_type='cr', - gr_sq_d=7.23645, + gr_sq_d=7.23646, gr_sq_r=0.99, r_rib=0.8, l1=5.8801, @@ -455,10 +455,10 @@ def plot_geometry(name, 'range': (800, 1000)} ll, ur = geo.root_universe.bounding_box -msbr_volume_calc = openmc.VolumeCalculation([fuel, moder], 100000000, ll, ur) -msbr_volume_calc.set_trigger(1e-03, 'rel_err') +msbr_volume_calc = openmc.VolumeCalculation([fuel, moder], 1000000000, ll, ur) +#msbr_volume_calc.set_trigger(1e-03, 'rel_err') settings.volume_calculations = [msbr_volume_calc] -#settings.run_mode = 'volume' +settings.run_mode = 'volume' settings.export_to_xml() ## Slice plots From f9ac737def8a6090699cff57adfdbb2f164281ce Mon Sep 17 00:00:00 2001 From: yardasol Date: Mon, 7 Nov 2022 11:41:38 -0600 Subject: [PATCH 51/62] update depcode unit test filenames --- .../unit_tests/{test_depcode_openmc.py => test_openmc_depcode.py} | 0 .../{test_depcode_serpent.py => test_serpent_depcode.py} | 0 2 files changed, 0 insertions(+), 0 deletions(-) rename tests/unit_tests/{test_depcode_openmc.py => test_openmc_depcode.py} (100%) rename tests/unit_tests/{test_depcode_serpent.py => test_serpent_depcode.py} (100%) diff --git a/tests/unit_tests/test_depcode_openmc.py b/tests/unit_tests/test_openmc_depcode.py similarity index 100% rename from tests/unit_tests/test_depcode_openmc.py rename to tests/unit_tests/test_openmc_depcode.py diff --git a/tests/unit_tests/test_depcode_serpent.py b/tests/unit_tests/test_serpent_depcode.py similarity index 100% rename from tests/unit_tests/test_depcode_serpent.py rename to tests/unit_tests/test_serpent_depcode.py From 84d12b5cc1e0030c2ab8ac9977761259d6422ff1 Mon Sep 17 00:00:00 2001 From: yardasol Date: Mon, 28 Nov 2022 12:56:21 -0600 Subject: [PATCH 52/62] add missing comma --- saltproc/openmc_depcode.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/saltproc/openmc_depcode.py b/saltproc/openmc_depcode.py index ff8437f52..e3da6cc26 100644 --- a/saltproc/openmc_depcode.py +++ b/saltproc/openmc_depcode.py @@ -129,7 +129,7 @@ def run_depletion_step(self, cores, nodes): '-n', str(nodes), 'python', - self.exec_path + self.exec_path, '--materials', self.runtime_matfile, '--geometry', From 692c418d568da90499667a946805ee2a27a93fc8 Mon Sep 17 00:00:00 2001 From: yardasol Date: Tue, 29 Nov 2022 16:15:29 -0600 Subject: [PATCH 53/62] cleanup create_runtime_matfile() --- saltproc/serpent_depcode.py | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/saltproc/serpent_depcode.py b/saltproc/serpent_depcode.py index b526f5d9c..6034d0174 100644 --- a/saltproc/serpent_depcode.py +++ b/saltproc/serpent_depcode.py @@ -109,17 +109,17 @@ def create_runtime_matfile(self, file_lines): """ runtime_dir = Path(self.template_input_file_path).parents[0] - include_str = [line for line in file_lines if line.startswith("include ")] - if not include_str: + include_card = [line for line in file_lines if line.startswith("include ")] + if not include_card: raise IOError('Template file ' f'{self.template_input_file_path} has no statements') - src_file = include_str[0].split()[1][1:-1] - if not Path(src_file).is_absolute(): - abs_src_matfile = (runtime_dir / src_file) + burnable_materials_path = include_card[0].split()[1][1:-1] + if not Path(burnable_materials_path).is_absolute(): + absolute_path = (runtime_dir / burnable_materials_path) else: - abs_src_matfile = Path(src_file) - with open(abs_src_matfile) as f: + absolute_path = Path(burnable_materials_path) + with open(absolute_path) as f: if 'mat ' not in f.read(): raise IOError('Template file ' f'{self.template_input_file_path} includes ' @@ -128,8 +128,8 @@ def create_runtime_matfile(self, file_lines): Path.mkdir(Path(self.runtime_matfile).parents[0], exist_ok=True) # Create file with path for SaltProc rewritable iterative material file - shutil.copy2(abs_src_matfile, self.runtime_matfile) - return [line.replace(src_file, self.runtime_matfile) for line in file_lines] + shutil.copy2(absolute_path, self.runtime_matfile) + return [line.replace(burnable_materials_path, self.runtime_matfile) for line in file_lines] def convert_nuclide_code_to_name(self, nuc_code): """Converts Serpent2 nuclide code to symbolic nuclide name. From ac78eeca1bf37c9bcb6b6672710f53a5ce74cf9e Mon Sep 17 00:00:00 2001 From: yardasol Date: Tue, 29 Nov 2022 16:32:22 -0600 Subject: [PATCH 54/62] fix integration tests --- examples/msbr/msbr_main.json | 1 + examples/tap/tap_main.json | 1 + tests/integration_tests/run_constant_reprocessing/tap_input.json | 1 + tests/integration_tests/run_no_reprocessing/test_input.json | 1 + 4 files changed, 4 insertions(+) diff --git a/examples/msbr/msbr_main.json b/examples/msbr/msbr_main.json index 063fd4dfe..dccab2b94 100644 --- a/examples/msbr/msbr_main.json +++ b/examples/msbr/msbr_main.json @@ -5,6 +5,7 @@ "num_depsteps": 12, "depcode": { "codename": "serpent", + "exec_path": "sss2", "template_input_file_path": "msbr.serpent", "geo_file_paths": ["geometry/msbr_full.ini"] }, diff --git a/examples/tap/tap_main.json b/examples/tap/tap_main.json index 783516b70..7c2c5b0f4 100644 --- a/examples/tap/tap_main.json +++ b/examples/tap/tap_main.json @@ -5,6 +5,7 @@ "num_depsteps": 3, "depcode": { "codename": "serpent", + "exec_path": "sss2", "template_input_file_path": "tap.serpent", "geo_file_paths": [ "geometry/347_base.ini", diff --git a/tests/integration_tests/run_constant_reprocessing/tap_input.json b/tests/integration_tests/run_constant_reprocessing/tap_input.json index 65e71188b..5c0a45838 100644 --- a/tests/integration_tests/run_constant_reprocessing/tap_input.json +++ b/tests/integration_tests/run_constant_reprocessing/tap_input.json @@ -5,6 +5,7 @@ "num_depsteps": 2, "depcode": { "codename": "serpent", + "exec_path": "sss2", "template_input_file_path": "tap_template.ini", "geo_file_paths": ["tap_geometry_base.ini"] }, diff --git a/tests/integration_tests/run_no_reprocessing/test_input.json b/tests/integration_tests/run_no_reprocessing/test_input.json index ef13cb42f..ff6eb6094 100644 --- a/tests/integration_tests/run_no_reprocessing/test_input.json +++ b/tests/integration_tests/run_no_reprocessing/test_input.json @@ -5,6 +5,7 @@ "num_depsteps": 2, "depcode": { "codename": "serpent", + "exec_path": "sss2", "template_input_file_path": "test_input.ini", "geo_file_paths": ["../../serpent_data/tap_geometry_base.ini"] }, From 4a38449df9d823a83730b460604c8863ef20a588 Mon Sep 17 00:00:00 2001 From: yardasol Date: Tue, 29 Nov 2022 16:41:41 -0600 Subject: [PATCH 55/62] Add test for get_neutron_settings() --- tests/unit_tests/test_serpent_depcode.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/tests/unit_tests/test_serpent_depcode.py b/tests/unit_tests/test_serpent_depcode.py index 7483b4fef..4a5f2d244 100644 --- a/tests/unit_tests/test_serpent_depcode.py +++ b/tests/unit_tests/test_serpent_depcode.py @@ -27,6 +27,15 @@ def test_convert_nuclide_code_to_zam(serpent_depcode): assert serpent_depcode.convert_nuclide_code_to_zam(48315) == 481151 +def test_get_neutron_settings(serpent_depcode): + template_str = serpent_depcode.read_plaintext_file( + serpent_depcode.template_input_file_path) + serpent_depcode.get_neutron_settings(template_str) + assert serpent_depcode.npop == 50 + assert serpent_depcode.active_cycles == 20 + assert serpent_depcode.inactive_cycles == 20 + + def test_read_plaintext_file(serpent_depcode): template_str = serpent_depcode.read_plaintext_file( serpent_depcode.template_input_file_path) From 4db68bf1de72e8a015910664b667bc6d983ea734 Mon Sep 17 00:00:00 2001 From: yardasol Date: Wed, 30 Nov 2022 14:53:28 -0600 Subject: [PATCH 56/62] Path.as_posix() -> str(Path) --- saltproc/app.py | 22 +++++++++---------- saltproc/openmc_depcode.py | 6 ++--- saltproc/serpent_depcode.py | 4 ++-- tests/conftest.py | 14 ++++++------ .../database_storage/test.py | 2 +- .../file_interface_openmc/test.py | 2 +- .../run_constant_reprocessing/test.py | 2 +- .../run_no_reprocessing/test.py | 2 +- tests/unit_tests/test_app.py | 6 ++--- 9 files changed, 30 insertions(+), 30 deletions(-) diff --git a/saltproc/app.py b/saltproc/app.py index 5547901c0..96dd7cae5 100644 --- a/saltproc/app.py +++ b/saltproc/app.py @@ -136,7 +136,7 @@ def read_main_input(main_inp_file): Returns ------- - input_path : PosixPath + input_path : Path Path to main input file process_file : str Path to the `.json` file describing the fuel reprocessing components. @@ -164,11 +164,11 @@ def read_main_input(main_inp_file): input_path = (Path.cwd() / Path(f.name).parents[0]) # Saltproc settings - process_file = (input_path / - j['proc_input_file']).resolve().as_posix() - dot_file = ( + process_file = str((input_path / + j['proc_input_file']).resolve()) + dot_file = str(( input_path / - j['dot_input_file']).resolve().as_posix() + j['dot_input_file']).resolve()) output_path = j['output_path'] num_depsteps = j['num_depsteps'] @@ -182,14 +182,14 @@ def read_main_input(main_inp_file): reactor_input = j['reactor'] if depcode_input['codename'] == 'serpent': - depcode_input['template_input_file_path'] = ( + depcode_input['template_input_file_path'] = str(( input_path / - depcode_input['template_input_file_path']).resolve().as_posix() + depcode_input['template_input_file_path']).resolve()) elif depcode_input['codename'] == 'openmc': for key in depcode_input['template_input_file_path']: value = depcode_input['template_input_file_path'][key] - depcode_input['template_input_file_path'][key] = ( - input_path / value).resolve().as_posix() + depcode_input['template_input_file_path'][key] = str(( + input_path / value).resolve()) else: raise ValueError( f'{depcode_input["codename"]} ' @@ -201,12 +201,12 @@ def read_main_input(main_inp_file): # Global geometry file paths geo_file_paths = [] for g in geo_list: - geo_file_paths += [(input_path / g).resolve().as_posix()] + geo_file_paths += [str((input_path / g).resolve())] depcode_input['geo_file_paths'] = geo_file_paths # Global output file paths db_name = (output_path / simulation_input['db_name']) - simulation_input['db_name'] = db_name.resolve().as_posix() + simulation_input['db_name'] = str(db_name.resolve()) reactor_input = _process_main_input_reactor_params( reactor_input, num_depsteps) diff --git a/saltproc/openmc_depcode.py b/saltproc/openmc_depcode.py index e3da6cc26..e48004ba7 100644 --- a/saltproc/openmc_depcode.py +++ b/saltproc/openmc_depcode.py @@ -73,9 +73,9 @@ def __init__(self, template_input_file_path, geo_files) self.runtime_inputfile = \ - {'geometry': (output_path / 'geometry.xml').resolve().as_posix(), - 'settings': (output_path / 'settings.xml').resolve().as_posix()} - self.runtime_matfile = (output_path / 'materials.xml').resolve().as_posix() + {'geometry': str((output_path / 'geometry.xml').resolve()), + 'settings': str((output_path / 'settings.xml').resolve())} + self.runtime_matfile = str((output_path / 'materials.xml').resolve()) def read_step_metadata(self): """Reads OpenMC's depletion step metadata and stores it in the diff --git a/saltproc/serpent_depcode.py b/saltproc/serpent_depcode.py index 6034d0174..679bff333 100644 --- a/saltproc/serpent_depcode.py +++ b/saltproc/serpent_depcode.py @@ -65,8 +65,8 @@ def __init__(self, template_input_file_path, geo_files) self.runtime_inputfile = \ - (output_path / 'runtime_input.serpent').resolve().as_posix() - self.runtime_matfile = (output_path / 'runtime_mat.ini').resolve().as_posix() + str((output_path / 'runtime_input.serpent').resolve()) + self.runtime_matfile = str((output_path / 'runtime_mat.ini').resolve()) def get_neutron_settings(self, file_lines): """Get neutron settings (no. of neutrons per cycle, no. of active and diff --git a/tests/conftest.py b/tests/conftest.py index 10d55a243..9deb3a466 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -25,10 +25,10 @@ def path_test_file(cwd): @pytest.fixture(scope='session') def serpent_depcode(cwd): """SerpentDepcode object for unit tests""" - saltproc_input = (cwd / 'serpent_data' / 'tap_input.json').as_posix() + saltproc_input = str(cwd / 'serpent_data' / 'tap_input.json') _, _, _, object_input = read_main_input(saltproc_input) depcode = _create_depcode_object(object_input[0]) - depcode.runtime_inputfile = (cwd / 'serpent_data' / 'tap_reference').as_posix() + depcode.runtime_inputfile = str(cwd / 'serpent_data' / 'tap_reference') return depcode @@ -36,7 +36,7 @@ def serpent_depcode(cwd): @pytest.fixture(scope='session') def openmc_depcode(cwd): """OpenMCDepcode object for unit tests""" - saltproc_input = (cwd / 'openmc_data' / 'tap_input.json').as_posix() + saltproc_input = str(cwd / 'openmc_data' / 'tap_input.json') _, _, _, object_input = read_main_input(saltproc_input) depcode = _create_depcode_object(object_input[0]) @@ -50,10 +50,10 @@ def openmc_depcode(cwd): for key in openmc_runtime_inputfiles: openmc_runtime_inputfiles[key] = \ - (openmc_input_path / openmc_runtime_inputfiles[key]).as_posix() + str(openmc_input_path / openmc_runtime_inputfiles[key]) depcode.runtime_inputfile = openmc_runtime_inputfiles - depcode.runtime_matfile = (openmc_input_path / 'materials.xml').as_posix() + depcode.runtime_matfile = str(openmc_input_path / 'materials.xml') return depcode @@ -66,8 +66,8 @@ def simulation(cwd, serpent_depcode): sim_depcode=serpent_depcode, core_number=1, node_number=1, - db_path=( + db_path=str( cwd / 'serpent_data' / - 'tap_reference_db.h5').as_posix()) + 'tap_reference_db.h5')) return simulation diff --git a/tests/integration_tests/database_storage/test.py b/tests/integration_tests/database_storage/test.py index aeec3890e..da291bebc 100644 --- a/tests/integration_tests/database_storage/test.py +++ b/tests/integration_tests/database_storage/test.py @@ -12,7 +12,7 @@ def db_file(simulation): cwd = Path.cwd() db_file = (cwd / (simulation.sim_depcode.codename + '_test.h5')) - return db_file.resolve().as_posix() + return str(db_file.resolve()) def test_store_after_reprocessing( diff --git a/tests/integration_tests/file_interface_openmc/test.py b/tests/integration_tests/file_interface_openmc/test.py index a9f48c0bb..53d5265bd 100644 --- a/tests/integration_tests/file_interface_openmc/test.py +++ b/tests/integration_tests/file_interface_openmc/test.py @@ -77,7 +77,7 @@ def test_write_depletion_settings(openmc_depcode, msr): with open(openmc_depcode.runtime_inputfile['depletion_settings']) as f: j = json.load(f) assert j['directory'] == Path( - openmc_depcode.runtime_inputfile['settings']).parents[0].as_posix() + str(openmc_depcode.runtime_inputfile['settings']).parents[0]) assert j['timesteps'][0] == msr.dep_step_length_cumulative[0] assert j['operator_kwargs']['chain_file'] == \ openmc_depcode.template_input_file_path['chain_file'] diff --git a/tests/integration_tests/run_constant_reprocessing/test.py b/tests/integration_tests/run_constant_reprocessing/test.py index fea774adb..1c12b7a34 100644 --- a/tests/integration_tests/run_constant_reprocessing/test.py +++ b/tests/integration_tests/run_constant_reprocessing/test.py @@ -10,7 +10,7 @@ @pytest.fixture def setup(scope='module'): - cwd = Path(__file__).parents[0].resolve().as_posix() + cwd = str(Path(__file__).parents[0].resolve()) test_db = cwd + '/test_db.h5' ref_db = cwd + '/tap_reference_db.h5' tol = 1e-9 diff --git a/tests/integration_tests/run_no_reprocessing/test.py b/tests/integration_tests/run_no_reprocessing/test.py index fbc1c8f15..fb78e7c5c 100644 --- a/tests/integration_tests/run_no_reprocessing/test.py +++ b/tests/integration_tests/run_no_reprocessing/test.py @@ -13,7 +13,7 @@ @pytest.fixture def setup(): - cwd = Path(__file__).parents[0].resolve().as_posix() + cwd = str(Path(__file__).parents[0].resolve()) main_input = cwd + '/test_input.json' input_path, process_input_file, path_input_file, object_input = \ diff --git a/tests/unit_tests/test_app.py b/tests/unit_tests/test_app.py index ab4a5bcf2..e7cac6104 100644 --- a/tests/unit_tests/test_app.py +++ b/tests/unit_tests/test_app.py @@ -13,7 +13,7 @@ def test_read_main_input(cwd, codename, ext): data_path = codename + '_data' data_path = cwd / data_path - main_input = (data_path / 'tap_input.json').as_posix() + main_input = str(data_path / 'tap_input.json') out = read_main_input(main_input) input_path, process_input_file, path_input_file, object_input = out depcode_input, simulation_input, reactor_input = object_input @@ -22,10 +22,10 @@ def test_read_main_input(cwd, codename, ext): assert depcode_input['codename'] == codename assert depcode_input['geo_file_paths'][0] == \ - (data_path / ('tap_geometry_base' + ext)).as_posix() + str(data_path / ('tap_geometry_base' + ext)) assert simulation_input['db_name'] == \ - (data_path / '../temp_data/db_saltproc.h5').resolve().as_posix() + str((data_path / '../temp_data/db_saltproc.h5').resolve()) assert simulation_input['restart_flag'] is False np.testing.assert_equal( From 660e88f97a73f8086882813709a15da11bb52103 Mon Sep 17 00:00:00 2001 From: yardasol Date: Wed, 30 Nov 2022 14:55:45 -0600 Subject: [PATCH 57/62] set uniqueItems=false for geo_file_paths --- saltproc/input_schema.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/saltproc/input_schema.json b/saltproc/input_schema.json index 6e5e15f98..995557c15 100644 --- a/saltproc/input_schema.json +++ b/saltproc/input_schema.json @@ -41,7 +41,7 @@ "type": "array", "items": { "type": "string"}, "minItems": 1, - "uniqueItems": true + "uniqueItems": false } }, "allOf": [ @@ -100,7 +100,6 @@ "items": { "type": "string", "pattern": "^(.\\/)*(.*)\\.xml$"}, "minItems": 1, - "uniqueItems": true, "default": ["geometry.xml"] } } From 8396c2bad87f3973399f87ad2099d2c5501343b2 Mon Sep 17 00:00:00 2001 From: yardasol Date: Thu, 1 Dec 2022 10:23:42 -0600 Subject: [PATCH 58/62] fix typo in file_interface_openmc --- tests/integration_tests/file_interface_openmc/test.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/integration_tests/file_interface_openmc/test.py b/tests/integration_tests/file_interface_openmc/test.py index 53d5265bd..c5e056967 100644 --- a/tests/integration_tests/file_interface_openmc/test.py +++ b/tests/integration_tests/file_interface_openmc/test.py @@ -76,8 +76,8 @@ def test_write_depletion_settings(openmc_depcode, msr): openmc_depcode.write_depletion_settings(msr, 0) with open(openmc_depcode.runtime_inputfile['depletion_settings']) as f: j = json.load(f) - assert j['directory'] == Path( - str(openmc_depcode.runtime_inputfile['settings']).parents[0]) + assert j['directory'] == str(Path( + openmc_depcode.runtime_inputfile['settings']).parents[0]) assert j['timesteps'][0] == msr.dep_step_length_cumulative[0] assert j['operator_kwargs']['chain_file'] == \ openmc_depcode.template_input_file_path['chain_file'] From 2aac957c68b73ef4b7a0cdbf4a0c4469a260c5d8 Mon Sep 17 00:00:00 2001 From: yardasol Date: Thu, 1 Dec 2022 10:30:41 -0600 Subject: [PATCH 59/62] fix READMEs --- examples/msbr/README.md | 28 ++++++++++++++-------------- scripts/README.md | 2 +- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/examples/msbr/README.md b/examples/msbr/README.md index a8b492924..e63ebf0f0 100644 --- a/examples/msbr/README.md +++ b/examples/msbr/README.md @@ -1,27 +1,27 @@ ## MSBR Model -Based on the design paper by Robertson, 1971 +This model is based on the following technical report: -Figure 3.27, pg 46 -Figure 3.4, pg 17 -Figure 3.5, pg 18 -Figure 3.3, pg 16 +Robertson, R. C. (1971). Conceptual Design Study of a Single-Fluid Molten-Salt Breeder Reactor. (ORNL--4541). ORNL. -Model features: -- Simplified Zone IA (graphite element is idential Zone IIA in the model, does not match original paper spec) -- Simplified Zone IIA (graphite element does not match the original spec) +For a complete discussion of the model, please see Chapter 4 in: + +Yardas, O. (2023). Implementation and validation of OpenMC in SaltProc [MS Thesis, University of Illinois at Urbana-Champaign]. + + +## Key features +- Zone IB +- Zone IIA - Simplified Zone IIB (graphite slabs are constructed from cylindrical sectors, and so do not have a consistent width; the last gap in the ccw direction in each octant is smaller than the other gaps, which all have the same dimension) - Control rod elements (A Guess, as no spec was provided) - Radial reflectors. -- Simplified axial reflectors (flat and cover more than what the MSBR does) +- Simplified axial reflectors (flat as opposed to dished in the reference specification) -Missing from model: -- Zone IB -- Top part of core (filled with salt?) +## Missing from model +- Zone IA +- Support structure above the main core - Radial reflector axial ribs - Radial reflector retaining rings -- Upper salt plenum - Zone IIB Graphite Dowel pins and Hastelloy N eliptical pins - Salt inlets and outlest -- Top and bottom dished heads - Zone I eliptical graphite sealing pins diff --git a/scripts/README.md b/scripts/README.md index 261f82051..7ccb47a6f 100644 --- a/scripts/README.md +++ b/scripts/README.md @@ -3,7 +3,7 @@ This directory contains various scripts to help you set-up and analyze results of your SaltProc simulations. ### `xsdata` -The scripts in this directory downloads and processes cross sections data for +The scripts in this directory download and processe cross section data for use in Serpent and OpenMC #### `process_jeff312.bash` From 4a49c11d5d35f28ecd1e4f8197df3da409758f39 Mon Sep 17 00:00:00 2001 From: Olek <45364492+yardasol@users.noreply.github.com> Date: Mon, 5 Dec 2022 13:40:49 -0600 Subject: [PATCH 60/62] Apply suggestions from @abachma2 code review Co-authored-by: Amanda Bachmann --- doc/releasenotes/v0.5.0.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/releasenotes/v0.5.0.rst b/doc/releasenotes/v0.5.0.rst index 73433cc32..d823581e9 100644 --- a/doc/releasenotes/v0.5.0.rst +++ b/doc/releasenotes/v0.5.0.rst @@ -116,7 +116,7 @@ Python API Changes - ``template_inputfile_path`` → ``template_input_file_path`` - Removed default values for `geo_files` - Changed `iter_inputfile`, `iter_matfile` to be attributes instead of parameters - - Changed `npop`, `active_cycles`, `inactive_cycles` to be attributes instead of + - Changed `npop`, `active_cycles`, `inactive_cycles` to be attributes instead of parameters - ``read_depcode_info()`` → ``read_step_metadata()`` - ``sim_info`` → ``step_metadata`` - ``read_depcode_step_param()`` → ``read_neutronics_parameters()`` @@ -134,7 +134,7 @@ Python API Changes - ``template_inputfile_path`` → ``template_input_file_path`` - Removed default values for `exec_path`, `template_input_file_path`, `geo_files` - Changed `iter_inputfile`, `iter_matfile` to be attributes instead of parameters - - Changed `npop`, `active_cycles`, `inactive_cycles` to be attributes instead of + - Changed `npop`, `active_cycles`, `inactive_cycles` to be attributes instead of parameters - ``read_depcode_info()`` → ``read_depletion_step_metadata()`` - ``sim_info`` → ``step_metadata`` - ``read_depcode_step_param()`` → ``read_neutronics_parameters()`` From c1a2dd2db11ce98c1a468bef52473b5a07312ce8 Mon Sep 17 00:00:00 2001 From: yardasol Date: Mon, 5 Dec 2022 15:24:13 -0600 Subject: [PATCH 61/62] add machinery to obtain fission-q and depletion chain data files from their sources --- examples/msbr/openmc_msbr_model.py | 121 +++++++++-------------------- 1 file changed, 38 insertions(+), 83 deletions(-) diff --git a/examples/msbr/openmc_msbr_model.py b/examples/msbr/openmc_msbr_model.py index e806a7c2b..dfd052bcc 100644 --- a/examples/msbr/openmc_msbr_model.py +++ b/examples/msbr/openmc_msbr_model.py @@ -1,7 +1,10 @@ -import openmc -import numpy as np import argparse +import json +import subprocess +from pathlib import Path +import numpy as np +import openmc from openmc.deplete import CoupledOperator, PredictorIntegrator, CELIIntegrator import core_elements as ce @@ -558,87 +561,39 @@ def plot_geometry(name, plots.export_to_xml() if deplete: - # Serpent fission q values - fiss_q = { - "Am243": 212952778.98135212, - "Cm246": 220179493.9541502, - "U239": 196182721.4907133, - "Np239": 198519429.0542043, - "Th233": 185840570.73897627, - "Cf251": 223166396.6983342, - "Am242": 215146730.16368726, - "Cm245": 214624022.18345505, - "Cf254": 230600814.3619568, - "Am241": 211216798.63643932, - "Th232": 197108389.42449385, - "Cm240": 219583368.40646642, - "Th231": 186918512.14598972, - "Bk246": 224446497.874413, - "Cm247": 218956599.9139631, - "U238": 206851381.70909396, - "Bk250": 225432928.78068554, - "U230": 198841127.68309468, - "Cf249": 221434495.10716867, - "U234": 200632850.9958874, - "Cm250": 219425761.1783332, - "Th229": 192235847.44789958, - "Cm241": 219075406.6897822, - "Pu237": 210593272.23024797, - "Am240": 215272544.02927735, - "Cm249": 218622037.52325428, - "Ac226": 183632605.3770991, - "Cf250": 229685291.02082983, - "Th228": 189488754.50737157, - "Cf248": 229015120.40511796, - "Ac227": 183458264.80025893, - "Pu241": 211237715.32232296, - "Pu240": 208612566.66049656, - "Cf252": 230239896.94703457, - "U231": 197643438.24939737, - "Cm242": 212786491.32857716, - "Bk245": 225023484.65451327, - "Np235": 199435370.72904894, - "Pu243": 207499380.63776916, - "Pu239": 208018532.78140113, - "Am242_m1": 215145370.5791048, - "Pu236": 208679081.72160652, - "Bk249": 224740691.06136644, - "Np236": 198952718.20228392, - "Np234": 200175925.99275926, - "U237": 196429642.96756968, - "Cf253": 231148831.53210822, - "U236": 203404311.87546986, - "Es254": 232527659.46555784, - "Ac225": 183891658.531768, - "Cm243": 213375296.0362017, - "Bk248": 224456537.88363716, - "Cm244": 217926766.88448203, - "Pu242": 212072186.50565082, - "U241": 198266755.4887299, - "Np237": 205370480.34853214, - "Th234": 186385345.82281572, - "Pa231": 194099942.4938497, - "Pa230": 194744699.33621296, - "Pa233": 194162901.71835947, - "U240": 207137940.30569986, - "U233": 199796183.56054175, - "Pu246": 208860847.72193536, - "Pa232": 193654730.8348164, - "U232": 193044277.35730234, - "Am244_m1": 213894761.9301219, - "Pu244": 208427244.82356748, - "Np238": 208699370.90691367, - "Bk247": 224883761.19281054, - "Am244": 213894761.9301219, - "Pa229": 194955644.11334947, - "Cm248": 221723145.3723629, - "Fm255": 238051756.2074275, - "Cf246": 229074942.12674516, - "Th230": 188666101.25156796, - "Pu238": 209540012.5125772, - "U235": 202270000.0, - "Th227": 190640950.14927194 - } + # Get Serpent fission q values + def get_web_file(url, fname=None): + if fname is None: + fname = url.split('/')[-1] + if not(Path(fname).exists()): + args = ('wget', + '-q', + '-O', + f'{fname}', + f'{url}') + try: + subprocess.check_output( + args, + cwd=str(Path(__file__).parents[0]), + stderr=subprocess.STDOUT) + except subprocess.CalledProcessError as error: + print(error.output.decode("utf-8")) + raise RuntimeError(f'Failed to get file {fname} from URL {url}.' + '\n see error message above') + + # Serpent fission-Q values + url = ('https://raw.githubusercontent.com/' + 'openmc-dev/data/master/depletion/serpent_fissq.json') + get_web_file(url) + + # ENDF/B VII.1 Chain + url = ('https://anl.box.com/shared/static/' + 'os1u896bwsbopurpgas72bi6aij2zzdc.xml') + get_web_file(url, fname='chain_endfb71_pwr.xml') + + with open('serpent_fissq.json') as f: + fiss_q = json.load(f) + model = openmc.Model.from_xml() op = CoupledOperator(model, chain_file='chain_endfb71_pwr.xml', From ae1a740e4f9aba4872cf7646a270e62360c1f271 Mon Sep 17 00:00:00 2001 From: Olek <45364492+yardasol@users.noreply.github.com> Date: Mon, 5 Dec 2022 13:40:49 -0600 Subject: [PATCH 62/62] Apply suggestions from @abachma2 code review Co-authored-by: Amanda Bachmann --- doc/releasenotes/v0.5.0.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/releasenotes/v0.5.0.rst b/doc/releasenotes/v0.5.0.rst index 73433cc32..d823581e9 100644 --- a/doc/releasenotes/v0.5.0.rst +++ b/doc/releasenotes/v0.5.0.rst @@ -116,7 +116,7 @@ Python API Changes - ``template_inputfile_path`` → ``template_input_file_path`` - Removed default values for `geo_files` - Changed `iter_inputfile`, `iter_matfile` to be attributes instead of parameters - - Changed `npop`, `active_cycles`, `inactive_cycles` to be attributes instead of + - Changed `npop`, `active_cycles`, `inactive_cycles` to be attributes instead of parameters - ``read_depcode_info()`` → ``read_step_metadata()`` - ``sim_info`` → ``step_metadata`` - ``read_depcode_step_param()`` → ``read_neutronics_parameters()`` @@ -134,7 +134,7 @@ Python API Changes - ``template_inputfile_path`` → ``template_input_file_path`` - Removed default values for `exec_path`, `template_input_file_path`, `geo_files` - Changed `iter_inputfile`, `iter_matfile` to be attributes instead of parameters - - Changed `npop`, `active_cycles`, `inactive_cycles` to be attributes instead of + - Changed `npop`, `active_cycles`, `inactive_cycles` to be attributes instead of parameters - ``read_depcode_info()`` → ``read_depletion_step_metadata()`` - ``sim_info`` → ``step_metadata`` - ``read_depcode_step_param()`` → ``read_neutronics_parameters()``