Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Photon Transport Simulation with Two Layers of Material & Unstructured Mesh #27

Draft
wants to merge 87 commits into
base: main
Choose a base branch
from
Draft
Changes from 1 commit
Commits
Show all changes
87 commits
Select commit Hold shift + click to select a range
23c1469
Add files via upload
anu1217 Oct 4, 2024
8d1f88b
Deleted unused Energy_List lines
anu1217 Oct 4, 2024
d7e58a3
Update OpenMC_PhotonTransport.py
anu1217 Oct 10, 2024
39e2d4b
Delete unused 'Energy_List.txt' line
anu1217 Oct 10, 2024
3dfb567
Delete print statement
anu1217 Oct 10, 2024
5bb02ff
Remove summed strengths text file as output
anu1217 Oct 10, 2024
1fdb1b1
Read summed photon strengths from Source_Mesh_Reader
anu1217 Oct 10, 2024
569eb28
Add source strengths for each individual mesh element
anu1217 Oct 10, 2024
1008270
Update OpenMC_PhotonTransport.py
anu1217 Oct 15, 2024
19e86ef
Adding materials/geometry files
anu1217 Oct 15, 2024
6fa1367
Import materials/geometry from TwoLayers_Materials & TwoLayers_Geometry
anu1217 Oct 15, 2024
c3cf5db
Delete materials and geometry functions from current script
anu1217 Oct 15, 2024
e217e00
Update OpenMC_PhotonTransport.py
anu1217 Oct 25, 2024
94519f9
Update TwoLayers_Materials.py
anu1217 Nov 8, 2024
3854660
Update TwoLayers_Materials.py
anu1217 Nov 11, 2024
a3db102
Update references to some variables
anu1217 Nov 11, 2024
4199c1b
Update TwoLayers_Geometry.py
anu1217 Nov 11, 2024
fdcb11f
Import variables from TwoLayers_Materials
anu1217 Nov 12, 2024
2e209a6
Update directory of OpenMC_PhotonTransport
anu1217 Nov 14, 2024
e8a305a
Update directory of Photon_Tallytovtk
anu1217 Nov 14, 2024
3aa85b3
Update directory of TwoLayers_Geometry
anu1217 Nov 14, 2024
1cff395
Update directory of TwoLayers_Materials
anu1217 Nov 14, 2024
64d14d5
Update directory of Source_Mesh_Reader
anu1217 Nov 14, 2024
88a9e83
Update TwoLayers_Geometry.py
anu1217 Nov 14, 2024
2259f79
Add functions to read, plot, and save data
anu1217 Nov 14, 2024
84bac07
Fix indentation of return statement
anu1217 Nov 15, 2024
0713d73
Created functions to extract and write relevant data
anu1217 Nov 15, 2024
5c03a21
Define arrange_source_strengths function
anu1217 Nov 15, 2024
d761b1c
Add main function that calls all helper functions
anu1217 Nov 15, 2024
fd3cb83
Rewrite make_source in terms of data_extractor from Source_Mesh_Reader
anu1217 Nov 15, 2024
ed0e05d
Fix summation in make_source loop
anu1217 Nov 15, 2024
c7a0c03
Changed variable name in function definition
anu1217 Nov 15, 2024
4568353
Updated main function that calls helper functions
anu1217 Nov 15, 2024
f91820f
Rename write_source_density
anu1217 Nov 19, 2024
2347332
Rewrite extract_source_data
anu1217 Nov 19, 2024
d3b612e
Change extract_source_data docstring
anu1217 Nov 19, 2024
99af15a
Moved Particle_Filter to tallies
anu1217 Nov 19, 2024
bc4e8d3
Add inner_radius as input
anu1217 Nov 19, 2024
e06fba5
Change inputs required for make_source
anu1217 Nov 19, 2024
7afd568
Remove Mesh_Dist as output of make_source
anu1217 Nov 19, 2024
2b5e67b
Change inputs required for tallies & fix capitalization
anu1217 Nov 20, 2024
4fb3156
Change variable names from uppercase to lowercase
anu1217 Nov 20, 2024
c81e21f
Rewrite export_to_xml as create_openmc_model
anu1217 Nov 20, 2024
1ae47ce
Deleted comments describing self-explanatory code
anu1217 Nov 20, 2024
c3509d6
Add docstrings to functions
anu1217 Nov 21, 2024
6676191
Add input to tallies function
anu1217 Nov 21, 2024
e6c9518
Changed bounds to numpy array
anu1217 Nov 25, 2024
3a09bf8
Change the way upper & lower energy bounds are accessed
anu1217 Nov 26, 2024
0d0418b
Fixed typo in make_source
anu1217 Nov 26, 2024
93d5b56
Add inputs to yaml file
anu1217 Nov 26, 2024
80382a4
Update and rename PhotonTransport_Inputs.yaml to WC_Layers/PhotonTran…
anu1217 Nov 26, 2024
ab1b09b
Remove hard-coded inputs that have been moved to yaml
anu1217 Nov 26, 2024
43270df
Merge branch 'cnerg:main' into mesh_photontransport
anu1217 Nov 27, 2024
8aff672
Add information to calculate effective dose
anu1217 Dec 16, 2024
0679a68
Redefine inputs for make_spherical_shells
anu1217 Dec 16, 2024
fc583b1
Edit function docstring
anu1217 Dec 16, 2024
785511e
Changed inputs for extract_source_data
anu1217 Dec 16, 2024
ee8df5b
Add main function to Source_Mesh_Reader
anu1217 Dec 16, 2024
790db58
Add default to argparse input
anu1217 Dec 16, 2024
3b808c1
Add files via upload
anu1217 Dec 16, 2024
052b312
Merge branch 'cnerg:main' into mesh_photontransport
anu1217 Dec 16, 2024
771b147
Add input to function
anu1217 Dec 16, 2024
7f76500
Add docstrings to functions
anu1217 Dec 16, 2024
2a7d52c
Change variable names and inputs
anu1217 Dec 16, 2024
6b18246
Change variable key
anu1217 Dec 16, 2024
a3a9921
Update PhotonTransport_Inputs.yaml
anu1217 Dec 16, 2024
608adba
Fix typo in run mode
anu1217 Dec 16, 2024
15f64ef
Update and rename Source_Mesh_Reader_Inputs.yaml to WC_Layers/Source_…
anu1217 Dec 16, 2024
8af7f12
Fix variable updating to avoid seg fault
anu1217 Dec 20, 2024
8aad344
Add main() function to compile all functions
anu1217 Dec 20, 2024
3c272b8
Calculate dose and add main() function
anu1217 Dec 20, 2024
95b52b1
Update PhotonTransport_Inputs.yaml
anu1217 Dec 20, 2024
2dde9f3
Update Source_Mesh_Reader.py
anu1217 Dec 20, 2024
d07dd9d
Create README.md
anu1217 Dec 20, 2024
da12a00
Update and rename WC_Layers/Conversion_h5m.py to WC_Layers/R2S_Step1_…
anu1217 Dec 20, 2024
cc2dad7
Update and rename WC_Layers/PyNE_Lib.py to WC_Layers/R2S_Step1_Input/…
anu1217 Dec 20, 2024
589bff0
Modularize main() and change total_mesh to unstructured_mesh
anu1217 Jan 8, 2025
d813414
Modularize main()
anu1217 Jan 8, 2025
2ae754a
Modularize main()
anu1217 Jan 8, 2025
9e8bb76
Change inputs for make_spherical_shells()
anu1217 Jan 8, 2025
d3bc003
Update WC_Layers/Source_Mesh_Reader.py
anu1217 Jan 9, 2025
18ca1b5
Change variable names and function inputs
anu1217 Jan 10, 2025
792717e
Change variable names and function inputs
anu1217 Jan 10, 2025
b1e219d
Add extra parameters
anu1217 Jan 10, 2025
23221bd
Change order of inputs
anu1217 Feb 24, 2025
c1a1076
Change order of inputs to make_spherical_shells()
anu1217 Feb 24, 2025
fadf4ed
Fix typo
anu1217 Feb 25, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Update OpenMC_PhotonTransport.py
Assign material library path to new function and delete unused lines
  • Loading branch information
anu1217 authored Oct 15, 2024
commit 1008270848ee62a88f3139ea5853453e02baaa45
28 changes: 14 additions & 14 deletions OpenMC_PhotonTransport.py
Original file line number Diff line number Diff line change
Expand Up @@ -65,14 +65,16 @@
2.00e+7]

#ALARA Element Library to read density for specified element:
# with open(""+fp+"") as ALARA_Lib:
with open("elelib.std") as ALARA_Lib:
Lib_Lines = ALARA_Lib.readlines()
def mat_lib(filepath):
with open(""+filepath+"") as ALARA_Lib:
#with open("elelib.std") as ALARA_Lib:
Lib_Lines = ALARA_Lib.readlines()
return Lib_Lines

# Create materials & export to XML:
#Simulating tungsten shell:

def make_W(element_1):
def make_W(element_1, Lib_Lines):
M_1 = openmc.Material(material_id=1, name=element_1)
for line in Lib_Lines:
if line.split()[0].lower() == element_1.lower():
Expand All @@ -81,7 +83,7 @@ def make_W(element_1):
M_1.add_element(element_1, 1.00)
return M_1

def make_C(element_2):
def make_C(element_2, Lib_Lines):
M_2 = openmc.Material(material_id=2, name=element_2)
for line in Lib_Lines:
if line.split()[0].lower() == element_2.lower():
Expand Down Expand Up @@ -135,15 +137,12 @@ def make_source(W_Shell, C_Shell, Cells):

# Define tallies
def tallies(W_Shell, C_Shell, Particle_Filter, Total_Mesh):
# global Total_Mesh
# global Total_Filter
Total_Filter = openmc.MeshFilter(Total_Mesh)

neutron_tally = openmc.Tally(tally_id=1, name="Neutron tally")
neutron_tally.scores = ['flux', 'elastic', 'absorption']

# Implementing filter for neutron tally through W shell
global cell_filter
cell_filter = openmc.CellFilter([W_Shell, C_Shell])
neutron_tally.filters = [cell_filter, Total_Filter]

Expand Down Expand Up @@ -179,16 +178,17 @@ def plot_universe(Void, W_Shell, C_Shell, Cells):
return universe_ss

# Exporting materials, geometry, and tallies to .xml
def export_to_xml(element_1, element_2, inner_radius_W, outer_radius_W, inner_radius_C):
OpenMC_W = make_W(element_1)
OpenMC_C = make_C(element_2)
def export_to_xml(filepath, element_1, element_2, inner_radius_W, outer_radius_W, inner_radius_C):
OpenMC_SF = mat_lib(filepath)
OpenMC_W = make_W(element_1, OpenMC_SF)
OpenMC_C = make_C(element_2, OpenMC_SF)
OpenMC_Mat = all_mat(OpenMC_W, OpenMC_C)
OpenMC_Geometry = make_spherical_shell(inner_radius_W, outer_radius_W, inner_radius_C, OpenMC_W, OpenMC_C)
OpenMC_Source = make_source(OpenMC_Geometry[2], OpenMC_Geometry[3], OpenMC_Geometry[4])
OpenMC_Settings = settings(OpenMC_Source[0])
OpenMC_Tallies = tallies(OpenMC_Geometry[2], OpenMC_Geometry[3], OpenMC_Source[1], OpenMC_Source[2])
OpenMC_Universe = plot_universe(OpenMC_Geometry[1], OpenMC_Geometry[2], OpenMC_Geometry[3], OpenMC_Geometry[4])
#return OpenMC_Materials, OpenMC_Geometry, OpenMC_Source, OpenMC_Settings, OpenMC_Tallies, OpenMC_Universe
return OpenMC_W, OpenMC_C, *OpenMC_Geometry, *OpenMC_Source, OpenMC_Settings, *OpenMC_Tallies

M_1, M_2, geometry, Void, W_Shell, C_Shell, Cells, Source_List, Particle_Filter, Total_Mesh, Mesh_Dist, tall, neutron_tally, spectrum_tally, Total_Filter, cell_filter, sets = export_to_xml(E_1, E_2, R_W_1, R_W_2, R_C_1)
return OpenMC_SF, OpenMC_W, OpenMC_C, *OpenMC_Geometry, *OpenMC_Source, OpenMC_Settings, *OpenMC_Tallies
Lib_Lines, M_1, M_2, geometry, Void, W_Shell, C_Shell, Cells, Source_List, Particle_Filter, Total_Mesh, Mesh_Dist, tall, neutron_tally, spectrum_tally, Total_Filter, cell_filter, sets = export_to_xml(fp, E_1, E_2, R_W_1, R_W_2, R_C_1)