Skip to content

Commit 7b93af8

Browse files
updated model
1 parent 1267743 commit 7b93af8

File tree

4 files changed

+111
-78
lines changed

4 files changed

+111
-78
lines changed

analysis/neutron/openmc_model.py

Lines changed: 38 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import openmc
22
from libra_toolbox.neutronics.neutron_source import A325_generator_diamond
3-
from libra_toolbox.neutronics import vault
43
from libra_toolbox.neutronics.materials import *
4+
from libra_toolbox.neutronics import vault
55

66

77
def baby_geometry(x_c: float, y_c: float, z_c: float):
@@ -167,15 +167,15 @@ def baby_geometry(x_c: float, y_c: float, z_c: float):
167167
sphere = openmc.Sphere(x0=x_c, y0=y_c, z0=z_c, r=50.00) # before r=50.00
168168

169169
######## Lead bricks positioned under the source #################
170-
positions = [
170+
lead_positions = [
171171
(x_c - 13.50, y_c, z_c - z_tab),
172-
(x_c - 4.50, y_c, z_c - z_tab),
172+
(x_c - 2.96, y_c, z_c - z_tab),
173173
(x_c + 36.50, y_c, z_c - z_tab),
174-
(x_c + 27.50, y_c, z_c - z_tab),
174+
(x_c + 25.96, y_c, z_c - z_tab),
175175
]
176176

177177
lead_blocks = []
178-
for position in positions:
178+
for position in lead_positions:
179179
lead_block_region = openmc.model.RectangularParallelepiped(
180180
position[0] - lead_width / 2,
181181
position[0] + lead_width / 2,
@@ -186,6 +186,25 @@ def baby_geometry(x_c: float, y_c: float, z_c: float):
186186
)
187187
lead_blocks.append(lead_block_region)
188188

189+
src_supp_length = 40.00
190+
src_supp_height = 20.00
191+
src_supp_width = 2.54
192+
src_supp_position = [
193+
(x_c - 13.50 + lead_width / 2, y_c, z_c - z_tab),
194+
(x_c + 25.96 + lead_width / 2, y_c, z_c - z_tab),
195+
]
196+
src_supports = []
197+
for position in src_supp_position:
198+
source_support = openmc.model.RectangularParallelepiped(
199+
position[0],
200+
position[0] + src_supp_width,
201+
position[1] - src_supp_length / 2,
202+
position[1] + src_supp_length / 2,
203+
position[2],
204+
position[2] + src_supp_height,
205+
)
206+
src_supports.append(source_support)
207+
189208
# regions
190209
source_wall_region = -ext_cyl_source & +source_region
191210
source_region = -source_region
@@ -209,6 +228,8 @@ def baby_geometry(x_c: float, y_c: float, z_c: float):
209228
lead_block_2_region = -lead_blocks[1]
210229
lead_block_3_region = -lead_blocks[2]
211230
lead_block_4_region = -lead_blocks[3]
231+
src_supp_1_region = -src_supports[0] & ~source_wall_region & ~source_region
232+
src_supp_2_region = -src_supports[1] & ~source_wall_region & ~source_region
212233
he_region = (
213234
+z_plane_5
214235
& -z_plane_12
@@ -228,6 +249,8 @@ def baby_geometry(x_c: float, y_c: float, z_c: float):
228249
& ~lead_block_2_region
229250
& ~lead_block_3_region
230251
& ~lead_block_4_region
252+
& ~src_supp_1_region
253+
& ~src_supp_2_region
231254
)
232255
sphere_region = (
233256
-sphere
@@ -248,6 +271,8 @@ def baby_geometry(x_c: float, y_c: float, z_c: float):
248271
& ~lead_block_2_region
249272
& ~lead_block_3_region
250273
& ~lead_block_4_region
274+
& ~src_supp_1_region
275+
& ~src_supp_2_region
251276
)
252277

253278
# cells
@@ -264,7 +289,7 @@ def baby_geometry(x_c: float, y_c: float, z_c: float):
264289
alumina_cell = openmc.Cell(region=alumina_region)
265290
alumina_cell.fill = Alumina
266291
cllif_cell = openmc.Cell(region=cllif_region)
267-
cllif_cell.fill = Cllif # cllif_nat or lithium_lead
292+
cllif_cell.fill = Cllif # Cllif or lithium_lead
268293
gap_cell = openmc.Cell(region=gap_region)
269294
gap_cell.fill = Helium
270295
cap_cell = openmc.Cell(region=cap_region)
@@ -287,6 +312,10 @@ def baby_geometry(x_c: float, y_c: float, z_c: float):
287312
lead_block_3_cell.fill = Lead
288313
lead_block_4_cell = openmc.Cell(region=lead_block_4_region)
289314
lead_block_4_cell.fill = Lead
315+
src_supp_1_cell = openmc.Cell(region=src_supp_1_region)
316+
src_supp_1_cell.fill = HDPE
317+
src_supp_2_cell = openmc.Cell(region=src_supp_2_region)
318+
src_supp_2_cell.fill = HDPE
290319

291320
cells = [
292321
source_wall_cell_1,
@@ -307,6 +336,8 @@ def baby_geometry(x_c: float, y_c: float, z_c: float):
307336
lead_block_2_cell,
308337
lead_block_3_cell,
309338
lead_block_4_cell,
339+
src_supp_1_cell,
340+
src_supp_2_cell,
310341
]
311342

312343
return sphere, cllif_cell, cells
@@ -330,6 +361,7 @@ def baby_model():
330361
Air,
331362
Epoxy,
332363
Helium,
364+
HDPE,
333365
]
334366

335367
# BABY coordinates

analysis/neutron/postprocessing.ipynb

Lines changed: 4 additions & 4 deletions
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)