openmc-data 0.1.4__py3-none-any.whl → 0.2.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- openmc_data/__init__.py +1 -0
- openmc_data/_version.py +2 -2
- openmc_data/convert/{convert_nndc71.py → convert_endf.py} +2 -2
- openmc_data/depletion/{chain_endf_vii.1.xml → chain_endf_b7.1.xml} +1854 -317
- openmc_data/depletion/{chain_endf_viii.0.xml → chain_endf_b8.0.xml} +2829 -398
- openmc_data/depletion/generate_endf_chain.py +15 -41
- openmc_data/depletion/generate_tendl_chain.py +86 -65
- openmc_data/download/{download_nndc.py → download_endf.py} +1 -1
- openmc_data/download/{download_nndc_chain.py → download_endf_chain.py} +1 -1
- openmc_data/generate/generate_jendl.py +8 -8
- openmc_data/other/sample_sandy.py +2 -2
- openmc_data/urls.py +11 -1
- openmc_data/urls_chain.py +58 -0
- openmc_data/urls_h5.py +1 -1
- openmc_data/urls_xml.py +3 -3
- {openmc_data-0.1.4.dist-info → openmc_data-0.2.1.dist-info}/METADATA +7 -9
- {openmc_data-0.1.4.dist-info → openmc_data-0.2.1.dist-info}/RECORD +21 -20
- {openmc_data-0.1.4.dist-info → openmc_data-0.2.1.dist-info}/entry_points.txt +3 -3
- {openmc_data-0.1.4.dist-info → openmc_data-0.2.1.dist-info}/LICENSE +0 -0
- {openmc_data-0.1.4.dist-info → openmc_data-0.2.1.dist-info}/WHEEL +0 -0
- {openmc_data-0.1.4.dist-info → openmc_data-0.2.1.dist-info}/top_level.txt +0 -0
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env python3
|
|
2
2
|
|
|
3
|
-
import os
|
|
4
3
|
from argparse import ArgumentParser
|
|
5
4
|
from pathlib import Path
|
|
6
5
|
from urllib.parse import urljoin
|
|
@@ -8,15 +7,14 @@ from urllib.parse import urljoin
|
|
|
8
7
|
import openmc.deplete
|
|
9
8
|
|
|
10
9
|
from openmc_data.utils import download, extract
|
|
11
|
-
|
|
10
|
+
from openmc_data import all_decay_release_details
|
|
12
11
|
|
|
13
12
|
|
|
14
13
|
# Parse command line arguments
|
|
15
14
|
parser = ArgumentParser()
|
|
16
|
-
parser.add_argument('-r', '--release', choices=['
|
|
17
|
-
default='
|
|
18
|
-
"version. The currently supported options are
|
|
19
|
-
"viii.0")
|
|
15
|
+
parser.add_argument('-r', '--release', choices=['b7.1', 'b8.0'],
|
|
16
|
+
default='b8.0', help="The nuclear data library release "
|
|
17
|
+
"version. The currently supported options are b7.1, b8.0")
|
|
20
18
|
parser.add_argument(
|
|
21
19
|
"-d",
|
|
22
20
|
"--destination",
|
|
@@ -43,39 +41,9 @@ def main():
|
|
|
43
41
|
|
|
44
42
|
# This dictionary contains all the unique information about each release.
|
|
45
43
|
# This can be extended to accommodated new releases
|
|
46
|
-
release_details = {
|
|
47
|
-
'vii.1': {
|
|
48
|
-
'neutron': {
|
|
49
|
-
'base_url': ['https://www.nndc.bnl.gov/endf-b7.1/zips/'],
|
|
50
|
-
'compressed_files': ['ENDF-B-VII.1-neutrons.zip'],
|
|
51
|
-
},
|
|
52
|
-
'decay': {
|
|
53
|
-
'base_url': ['https://www.nndc.bnl.gov/endf-b7.1/zips/'],
|
|
54
|
-
'compressed_files': ['ENDF-B-VII.1-decay.zip']
|
|
55
|
-
},
|
|
56
|
-
'nfy': {
|
|
57
|
-
'base_url': ['https://www.nndc.bnl.gov/endf-b7.1/zips/'],
|
|
58
|
-
'compressed_files': ['ENDF-B-VII.1-nfy.zip']
|
|
59
|
-
}
|
|
60
|
-
},
|
|
61
|
-
'viii.0': {
|
|
62
|
-
'neutron': {
|
|
63
|
-
'base_url': ['https://www.nndc.bnl.gov/endf-b8.0/zips/'],
|
|
64
|
-
'compressed_files': ['ENDF-B-VIII.0_neutrons.zip'],
|
|
65
|
-
},
|
|
66
|
-
'decay': {
|
|
67
|
-
'base_url': ['https://www.nndc.bnl.gov/endf-b8.0/zips/'],
|
|
68
|
-
'compressed_files': ['ENDF-B-VIII.0_decay.zip']
|
|
69
|
-
},
|
|
70
|
-
'nfy': {
|
|
71
|
-
'base_url': ['https://www.nndc.bnl.gov/endf-b8.0/zips/'],
|
|
72
|
-
'compressed_files': ['ENDF-B-VIII.0_nfy.zip']
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
44
|
|
|
77
45
|
for file_type, extract_dir in zip(['neutron', 'decay', 'nfy'], [neutron_dir, decay_dir, nfy_dir]):
|
|
78
|
-
details =
|
|
46
|
+
details = all_decay_release_details[library_name][args.release][file_type]
|
|
79
47
|
for base_url, file in zip(details['base_url'], details['compressed_files']):
|
|
80
48
|
downloaded_file = download(
|
|
81
49
|
url=urljoin(base_url, file),
|
|
@@ -86,7 +54,7 @@ def main():
|
|
|
86
54
|
|
|
87
55
|
neutron_files = list(neutron_dir.rglob("*endf"))
|
|
88
56
|
decay_files = list(decay_dir.rglob("*endf"))
|
|
89
|
-
|
|
57
|
+
fpy_files = list(nfy_dir.rglob("*endf"))
|
|
90
58
|
|
|
91
59
|
if args.release == 'vii.1':
|
|
92
60
|
# Remove erroneous Be7 evaluation from vii.1 that can cause problems
|
|
@@ -95,11 +63,16 @@ def main():
|
|
|
95
63
|
|
|
96
64
|
# check files exist
|
|
97
65
|
for flist, ftype in [(decay_files, "decay"), (neutron_files, "neutron"),
|
|
98
|
-
(
|
|
66
|
+
(fpy_files, "neutron fission product yield")]:
|
|
99
67
|
if not flist:
|
|
100
|
-
raise IOError("No {} endf files found in {}"
|
|
68
|
+
raise IOError(f"No {ftype} endf files found in {endf_files_dir}")
|
|
101
69
|
|
|
102
|
-
chain = openmc.deplete.Chain.from_endf(
|
|
70
|
+
chain = openmc.deplete.Chain.from_endf(
|
|
71
|
+
decay_files=decay_files,
|
|
72
|
+
fpy_files=fpy_files,
|
|
73
|
+
neutron_files=neutron_files,
|
|
74
|
+
reactions=list(openmc.deplete.chain.REACTIONS.keys())
|
|
75
|
+
)
|
|
103
76
|
|
|
104
77
|
if args.destination is None:
|
|
105
78
|
args.destination = f'chain_{library_name}_{args.release}.xml'
|
|
@@ -107,5 +80,6 @@ def main():
|
|
|
107
80
|
chain.export_to_xml(args.destination)
|
|
108
81
|
print(f'Chain file written to {args.destination}')
|
|
109
82
|
|
|
83
|
+
|
|
110
84
|
if __name__ == '__main__':
|
|
111
85
|
main()
|
|
@@ -7,27 +7,33 @@ be borrowed from another library. The --lib flag for this script indicates what
|
|
|
7
7
|
library should be used for decay and FPY evaluations and defaults to JEFF 3.3.
|
|
8
8
|
"""
|
|
9
9
|
|
|
10
|
-
import json
|
|
11
|
-
import tarfile
|
|
12
10
|
from argparse import ArgumentParser
|
|
13
11
|
from pathlib import Path
|
|
14
12
|
from urllib.parse import urljoin
|
|
15
|
-
from zipfile import ZipFile
|
|
16
|
-
import openmc_data
|
|
17
13
|
|
|
18
14
|
import openmc.data
|
|
19
15
|
import openmc.deplete as dep
|
|
20
16
|
|
|
21
17
|
from openmc_data.utils import download, extract
|
|
18
|
+
from openmc_data import all_decay_release_details
|
|
22
19
|
|
|
23
20
|
# Parse command line arguments
|
|
24
21
|
parser = ArgumentParser()
|
|
25
|
-
parser.add_argument(
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
22
|
+
parser.add_argument(
|
|
23
|
+
"--lib",
|
|
24
|
+
choices=("jeff33", "endf80"),
|
|
25
|
+
default="jeff33",
|
|
26
|
+
help="Library to use for decay and fission product yields",
|
|
27
|
+
)
|
|
28
|
+
parser.add_argument(
|
|
29
|
+
"-r",
|
|
30
|
+
"--release",
|
|
31
|
+
choices=["2015", "2017", "2019", "2021"],
|
|
32
|
+
default="2021",
|
|
33
|
+
help="The nuclear data library release "
|
|
34
|
+
"version. The currently supported options are 2019, "
|
|
35
|
+
"and 2021.",
|
|
36
|
+
)
|
|
31
37
|
parser.add_argument(
|
|
32
38
|
"-d",
|
|
33
39
|
"--destination",
|
|
@@ -36,111 +42,126 @@ parser.add_argument(
|
|
|
36
42
|
help="filename of the chain file xml file produced. If left as None then "
|
|
37
43
|
"the filename will follow this format 'chain_tendl_{release}_{lib}.xml'",
|
|
38
44
|
)
|
|
45
|
+
parser.add_argument("--extract", action="store_true", help="Extract tar/zip files")
|
|
46
|
+
parser.add_argument(
|
|
47
|
+
"--no-extract",
|
|
48
|
+
dest="extract",
|
|
49
|
+
action="store_false",
|
|
50
|
+
help="Do not extract tar/zip files",
|
|
51
|
+
)
|
|
52
|
+
parser.set_defaults(extract=True)
|
|
39
53
|
args = parser.parse_args()
|
|
40
54
|
|
|
41
55
|
|
|
42
56
|
def fix_jeff33_nfy(path):
|
|
43
|
-
print(f
|
|
44
|
-
new_path = path.with_name(path.name +
|
|
57
|
+
print(f"Fixing TPID in {path.name}...")
|
|
58
|
+
new_path = path.with_name(path.name + "_fixed")
|
|
45
59
|
if not new_path.exists():
|
|
46
|
-
with path.open(
|
|
60
|
+
with path.open("r") as f:
|
|
47
61
|
data = f.read()
|
|
48
|
-
with new_path.open(
|
|
62
|
+
with new_path.open("w") as f:
|
|
49
63
|
# Write missing TPID line
|
|
50
|
-
f.write(" "*66 + " 1 0 0 0\n")
|
|
64
|
+
f.write(" " * 66 + " 1 0 0 0\n")
|
|
51
65
|
f.write(data)
|
|
52
66
|
return new_path
|
|
53
67
|
|
|
54
68
|
|
|
55
69
|
def main():
|
|
56
70
|
|
|
57
|
-
library_name =
|
|
71
|
+
library_name = "tendl"
|
|
58
72
|
|
|
59
73
|
cwd = Path.cwd()
|
|
60
74
|
|
|
61
|
-
endf_files_dir = cwd.joinpath(
|
|
62
|
-
download_path = cwd.joinpath(
|
|
75
|
+
endf_files_dir = cwd.joinpath("-".join([library_name, args.release, "endf"]))
|
|
76
|
+
download_path = cwd.joinpath("-".join([library_name, args.release, "download"]))
|
|
63
77
|
|
|
64
|
-
neutron_dir = endf_files_dir / "
|
|
78
|
+
neutron_dir = endf_files_dir / "neutron"
|
|
65
79
|
decay_dir = endf_files_dir / "decay"
|
|
66
80
|
nfy_dir = endf_files_dir / "nfy"
|
|
67
81
|
|
|
68
82
|
# This dictionary contains all the unique information about each release.
|
|
69
83
|
# This can be extended to accommodated new releases
|
|
70
|
-
release_details =
|
|
71
|
-
'2019': {
|
|
72
|
-
'base_url': 'https://tendl.web.psi.ch/tendl_2019/tar_files/',
|
|
73
|
-
'compressed_files': ['TENDL-n.tgz'],
|
|
74
|
-
'transport_nuclides': 'depletion/tendl2019_nuclides.json',
|
|
75
|
-
'neutron_files': endf_files_dir.glob('tendl19c/*'),
|
|
76
|
-
},
|
|
77
|
-
'2021': {
|
|
78
|
-
'base_url': 'https://tendl.web.psi.ch/tendl_2021/tar_files/',
|
|
79
|
-
'compressed_files': ['TENDL-n.tgz'],
|
|
80
|
-
'transport_nuclides': 'depletion/tendl2021_nuclides.json',
|
|
81
|
-
'neutron_files': endf_files_dir.glob('tendl21c/*'),
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
DECAY_LIB = {
|
|
86
|
-
'jeff33': 'https://www.oecd-nea.org/dbdata/jeff/jeff33/downloads/JEFF33-rdd.zip',
|
|
87
|
-
'endf80': 'https://www.nndc.bnl.gov/endf-b8.0/zips/ENDF-B-VIII.0_decay.zip',
|
|
88
|
-
}
|
|
89
|
-
NFY_LIB = {
|
|
90
|
-
'jeff33': 'https://www.oecd-nea.org/dbdata/jeff/jeff33/downloads/JEFF33-nfy.asc',
|
|
91
|
-
'endf80': 'https://www.nndc.bnl.gov/endf-b8.0/zips/ENDF-B-VIII.0_nfy.zip',
|
|
92
|
-
}
|
|
84
|
+
release_details = all_decay_release_details["tendl"][args.release]
|
|
93
85
|
|
|
86
|
+
# adds in either jeff or endf neutron fission yields and decay data
|
|
87
|
+
if args.lib == "jeff33":
|
|
88
|
+
release_details["decay"] = {
|
|
89
|
+
"base_url": "https://www.oecd-nea.org/dbdata/jeff/jeff33/downloads/",
|
|
90
|
+
"compressed_files": ["JEFF33-rdd.zip"],
|
|
91
|
+
}
|
|
92
|
+
release_details["nfy"] = {
|
|
93
|
+
"base_url": "https://www.oecd-nea.org/dbdata/jeff/jeff33/downloads/",
|
|
94
|
+
"compressed_files": ["JEFF33-nfy.asc"],
|
|
95
|
+
}
|
|
96
|
+
elif args.lib == "endf80":
|
|
97
|
+
release_details["decay"] = {
|
|
98
|
+
"base_url": "https://www.nndc.bnl.gov/endf-b8.0/zips/",
|
|
99
|
+
"compressed_files": ["ENDF-B-VIII.0_decay.zip"],
|
|
100
|
+
}
|
|
101
|
+
release_details["nfy"] = {
|
|
102
|
+
"base_url": "https://www.nndc.bnl.gov/endf-b8.0/zips/",
|
|
103
|
+
"compressed_files": ["ENDF-B-VIII.0_nfy.zip"],
|
|
104
|
+
}
|
|
105
|
+
else:
|
|
106
|
+
raise ValueError(
|
|
107
|
+
f"lib argument must be either jeff33 or endf80 and can not be {args.lib}"
|
|
108
|
+
)
|
|
94
109
|
|
|
95
110
|
# ==========================================================================
|
|
96
111
|
# Incident neutron data
|
|
97
|
-
for f in release_details[
|
|
112
|
+
for f in release_details["neutron"]["compressed_files"]:
|
|
98
113
|
downloaded_file = download(
|
|
99
|
-
url=urljoin(release_details[
|
|
100
|
-
output_path=download_path
|
|
114
|
+
url=urljoin(release_details["neutron"]["base_url"], f),
|
|
115
|
+
output_path=download_path,
|
|
101
116
|
)
|
|
102
117
|
|
|
103
118
|
extract(downloaded_file, neutron_dir)
|
|
104
119
|
|
|
105
|
-
# Get list of transport nuclides in TENDL-2019
|
|
106
|
-
with open(Path(openmc_data.__path__[0])/release_details[args.release]['transport_nuclides'], 'r') as fh:
|
|
107
|
-
transport_nuclides = set(json.load(fh))
|
|
108
|
-
|
|
109
120
|
neutron_files = [
|
|
110
121
|
p
|
|
111
|
-
for p in
|
|
112
|
-
if p.name[2:-6] in transport_nuclides # filename is n-XXNNN.tendl
|
|
122
|
+
for p in list(neutron_dir.rglob("*.tendl"))
|
|
113
123
|
]
|
|
114
|
-
|
|
124
|
+
print(neutron_files)
|
|
115
125
|
# ==========================================================================
|
|
116
126
|
# Decay and fission product yield data
|
|
117
127
|
|
|
118
|
-
decay_zip = download(
|
|
119
|
-
|
|
128
|
+
decay_zip = download(
|
|
129
|
+
urljoin(
|
|
130
|
+
release_details["decay"]["base_url"],
|
|
131
|
+
release_details["decay"]["compressed_files"][0],
|
|
132
|
+
),
|
|
133
|
+
output_path=decay_dir,
|
|
134
|
+
)
|
|
135
|
+
nfy_zip = download(
|
|
136
|
+
urljoin(
|
|
137
|
+
release_details["nfy"]["base_url"],
|
|
138
|
+
release_details["nfy"]["compressed_files"][0],
|
|
139
|
+
),
|
|
140
|
+
output_path=nfy_dir,
|
|
141
|
+
)
|
|
120
142
|
|
|
121
143
|
extract(decay_zip, decay_dir)
|
|
122
|
-
if args.lib == 'jeff33':
|
|
123
|
-
decay_files = list(decay_dir.glob('*.ASC'))
|
|
124
144
|
|
|
145
|
+
if args.lib == "jeff33":
|
|
146
|
+
nfy_file = nfy_zip # file is already uncompressed
|
|
147
|
+
decay_files = list(decay_dir.glob("*.ASC"))
|
|
125
148
|
nfy_file_fixed = fix_jeff33_nfy(nfy_file)
|
|
126
149
|
nfy_files = openmc.data.endf.get_evaluations(nfy_file_fixed)
|
|
127
150
|
|
|
128
|
-
elif args.lib ==
|
|
129
|
-
decay_files = list(decay_dir.rglob(
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
nfy_files = list(nfy_dir.rglob('*.endf'))
|
|
151
|
+
elif args.lib == "endf80":
|
|
152
|
+
decay_files = list(decay_dir.rglob("*.endf"))
|
|
153
|
+
extract(nfy_zip, nfy_dir)
|
|
154
|
+
nfy_files = list(nfy_dir.rglob("*.endf"))
|
|
133
155
|
|
|
134
156
|
chain = dep.Chain.from_endf(
|
|
135
|
-
decay_files, nfy_files, neutron_files,
|
|
136
|
-
reactions=dep.chain.REACTIONS.keys()
|
|
157
|
+
decay_files, nfy_files, neutron_files, reactions=dep.chain.REACTIONS.keys()
|
|
137
158
|
)
|
|
138
159
|
|
|
139
160
|
if args.destination is None:
|
|
140
|
-
args.destination=f
|
|
161
|
+
args.destination = f"chain_{library_name}_{args.release}_{args.lib}.xml"
|
|
141
162
|
|
|
142
163
|
chain.export_to_xml(args.destination)
|
|
143
|
-
print(f
|
|
164
|
+
print(f"Chain file written to {args.destination}")
|
|
144
165
|
|
|
145
166
|
|
|
146
167
|
if __name__ == "__main__":
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env python3
|
|
2
2
|
|
|
3
3
|
"""
|
|
4
|
-
Download JENDL
|
|
4
|
+
Download JENDL data from JAEA and convert it to a HDF5 library for
|
|
5
5
|
use with OpenMC.
|
|
6
6
|
"""
|
|
7
7
|
|
|
@@ -38,9 +38,9 @@ parser.add_argument('--libver', choices=['earliest', 'latest'],
|
|
|
38
38
|
default='latest', help="Output HDF5 versioning. Use "
|
|
39
39
|
"'earliest' for backwards compatibility or 'latest' for "
|
|
40
40
|
"performance")
|
|
41
|
-
parser.add_argument('-r', '--release', choices=['4.0'], default='4.0',
|
|
41
|
+
parser.add_argument('-r', '--release', choices=['4.0', '5.0'], default='4.0',
|
|
42
42
|
help="The nuclear data library release version. "
|
|
43
|
-
"The
|
|
43
|
+
"The options currently supported are 4.0 and 5.0")
|
|
44
44
|
parser.add_argument('--cleanup', action='store_true',
|
|
45
45
|
help="Remove download directories when data has "
|
|
46
46
|
"been processed")
|
|
@@ -75,9 +75,11 @@ def main():
|
|
|
75
75
|
state_download_size(details['compressed_file_size'], details['uncompressed_file_size'], 'GB')
|
|
76
76
|
for f in details['compressed_files']:
|
|
77
77
|
# Establish connection to URL
|
|
78
|
-
download(
|
|
79
|
-
|
|
80
|
-
|
|
78
|
+
download(
|
|
79
|
+
urljoin(details['base_url'], f),
|
|
80
|
+
context=ssl._create_unverified_context(),
|
|
81
|
+
output_path=download_path
|
|
82
|
+
)
|
|
81
83
|
|
|
82
84
|
# ==============================================================================
|
|
83
85
|
# EXTRACT FILES FROM TGZ
|
|
@@ -88,7 +90,6 @@ def main():
|
|
|
88
90
|
del_compressed_file=args.cleanup
|
|
89
91
|
)
|
|
90
92
|
|
|
91
|
-
|
|
92
93
|
# ==============================================================================
|
|
93
94
|
# GENERATE HDF5 LIBRARY -- NEUTRON FILES
|
|
94
95
|
|
|
@@ -100,7 +101,6 @@ def main():
|
|
|
100
101
|
|
|
101
102
|
library = openmc.data.DataLibrary()
|
|
102
103
|
|
|
103
|
-
|
|
104
104
|
with Pool() as pool:
|
|
105
105
|
results = []
|
|
106
106
|
for filename in sorted(neutron_files):
|
|
@@ -32,7 +32,7 @@ parser.add_argument("-n", "--nuclides", nargs="+",
|
|
|
32
32
|
parser.add_argument("-d", "--destination", default=None,
|
|
33
33
|
help="Directory to create new library in")
|
|
34
34
|
parser.add_argument("-l", "--libdir", default=None,
|
|
35
|
-
help="Directory of endf library to sample
|
|
35
|
+
help="Directory of endf library to sample")
|
|
36
36
|
parser.add_argument("-x", "--xlib", default=None,
|
|
37
37
|
help="cross_section.xml library to add random evaluations to. Default is OPENMC_CROSS_SECTIONS")
|
|
38
38
|
parser.add_argument("-s", "--samples", default=200,
|
|
@@ -60,7 +60,7 @@ def main():
|
|
|
60
60
|
|
|
61
61
|
libdir = args.libdir
|
|
62
62
|
if libdir == None:
|
|
63
|
-
raise Exception("Directory of ENDF library required for sampling
|
|
63
|
+
raise Exception("Directory of ENDF library required for sampling. Use -l prefix to specify")
|
|
64
64
|
else:
|
|
65
65
|
libdir = Path(libdir).resolve()
|
|
66
66
|
|
openmc_data/urls.py
CHANGED
|
@@ -205,7 +205,7 @@ all_release_details = {
|
|
|
205
205
|
},
|
|
206
206
|
},
|
|
207
207
|
},
|
|
208
|
-
'
|
|
208
|
+
'endf': {
|
|
209
209
|
"b7.1": {
|
|
210
210
|
"neutron": {
|
|
211
211
|
"base_url": "http://www.nndc.bnl.gov/endf-b7.1/aceFiles/",
|
|
@@ -318,6 +318,16 @@ all_release_details = {
|
|
|
318
318
|
'compressed_file_size': '0.2',
|
|
319
319
|
'uncompressed_file_size': '2'
|
|
320
320
|
}
|
|
321
|
+
},
|
|
322
|
+
'5.0': {
|
|
323
|
+
'neutron': {
|
|
324
|
+
'base_url': 'https://wwwndc.jaea.go.jp/ftpnd/ftp/JENDL/',
|
|
325
|
+
'compressed_files': ['jendl5-n.tar.gz'],
|
|
326
|
+
'endf_files': 'jendl5-n/*.dat',
|
|
327
|
+
'metastables': 'jendl5-n/*m1.dat',
|
|
328
|
+
'compressed_file_size': '4.1',
|
|
329
|
+
'uncompressed_file_size': '16'
|
|
330
|
+
}
|
|
321
331
|
}
|
|
322
332
|
}
|
|
323
333
|
}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
all_decay_release_details = {
|
|
2
|
+
'endf': {
|
|
3
|
+
'b7.1': {
|
|
4
|
+
'neutron': {
|
|
5
|
+
'base_url': ['https://www.nndc.bnl.gov/endf-b7.1/zips/'],
|
|
6
|
+
'compressed_files': ['ENDF-B-VII.1-neutrons.zip'],
|
|
7
|
+
},
|
|
8
|
+
'decay': {
|
|
9
|
+
'base_url': ['https://www.nndc.bnl.gov/endf-b7.1/zips/'],
|
|
10
|
+
'compressed_files': ['ENDF-B-VII.1-decay.zip']
|
|
11
|
+
},
|
|
12
|
+
'nfy': {
|
|
13
|
+
'base_url': ['https://www.nndc.bnl.gov/endf-b7.1/zips/'],
|
|
14
|
+
'compressed_files': ['ENDF-B-VII.1-nfy.zip']
|
|
15
|
+
}
|
|
16
|
+
},
|
|
17
|
+
'b8.0': {
|
|
18
|
+
'neutron': {
|
|
19
|
+
'base_url': ['https://www.nndc.bnl.gov/endf-b8.0/zips/'],
|
|
20
|
+
'compressed_files': ['ENDF-B-VIII.0_neutrons.zip'],
|
|
21
|
+
},
|
|
22
|
+
'decay': {
|
|
23
|
+
'base_url': ['https://www.nndc.bnl.gov/endf-b8.0/zips/'],
|
|
24
|
+
'compressed_files': ['ENDF-B-VIII.0_decay.zip']
|
|
25
|
+
},
|
|
26
|
+
'nfy': {
|
|
27
|
+
'base_url': ['https://www.nndc.bnl.gov/endf-b8.0/zips/'],
|
|
28
|
+
'compressed_files': ['ENDF-B-VIII.0_nfy.zip']
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
'tendl': {
|
|
33
|
+
'2015': {
|
|
34
|
+
'neutron':{
|
|
35
|
+
'base_url': 'https://tendl.web.psi.ch/tendl_2015/tar_files/',
|
|
36
|
+
'compressed_files': ['TENDL-n.tgz'],
|
|
37
|
+
}
|
|
38
|
+
},
|
|
39
|
+
'2017': {
|
|
40
|
+
'neutron':{
|
|
41
|
+
'base_url': 'https://tendl.web.psi.ch/tendl_2017/tar_files/',
|
|
42
|
+
'compressed_files': ['TENDL-n.tgz'],
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
'2019': {
|
|
46
|
+
'neutron':{
|
|
47
|
+
'base_url': 'https://tendl.web.psi.ch/tendl_2019/tar_files/',
|
|
48
|
+
'compressed_files': ['TENDL-n.tgz'],
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
'2021': {
|
|
52
|
+
'neutron':{
|
|
53
|
+
'base_url': 'https://tendl.web.psi.ch/tendl_2021/tar_files/',
|
|
54
|
+
'compressed_files': ['TENDL-n.tgz'],
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}
|
openmc_data/urls_h5.py
CHANGED
openmc_data/urls_xml.py
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
all_chain_release_details = {
|
|
2
|
-
"
|
|
2
|
+
"endf": {
|
|
3
3
|
"b7.1": {
|
|
4
4
|
"chain": {
|
|
5
|
-
"url": "https://github.com/openmc-data-storage/openmc_data/raw/main/src/openmc_data/depletion/
|
|
5
|
+
"url": "https://github.com/openmc-data-storage/openmc_data/raw/main/src/openmc_data/depletion/chain_endf_7.1.xml",
|
|
6
6
|
}
|
|
7
7
|
},
|
|
8
8
|
"b8.0": {
|
|
9
9
|
"chain": {
|
|
10
|
-
"url": "https://github.com/openmc-data-storage/openmc_data/raw/main/src/openmc_data/depletion/
|
|
10
|
+
"url": "https://github.com/openmc-data-storage/openmc_data/raw/main/src/openmc_data/depletion/chain_endf_8.0.xml",
|
|
11
11
|
}
|
|
12
12
|
},
|
|
13
13
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: openmc-data
|
|
3
|
-
Version: 0.1
|
|
3
|
+
Version: 0.2.1
|
|
4
4
|
Summary: A Python package containing a collection of scripts for producing and downloading data for OpenMC
|
|
5
5
|
Author-email: Jonathan Shimwell <mail@jshimwell.com>
|
|
6
6
|
License: Copyright (c) 2019-2022 UChicago Argonne LLC and contributors
|
|
@@ -64,8 +64,6 @@ Currently the package can be installed from this temporary repository.
|
|
|
64
64
|
pip install openmc_data
|
|
65
65
|
```
|
|
66
66
|
|
|
67
|
-
In the future pip installing from PyPi or Conda could be provided
|
|
68
|
-
|
|
69
67
|
# Usage
|
|
70
68
|
|
|
71
69
|
Once installed several scripts are available in your terminal that are able to
|
|
@@ -75,7 +73,7 @@ The scripts accept input arguments, to find out the input arguments available
|
|
|
75
73
|
for a particular script run the script name with ```--help``` after the name.
|
|
76
74
|
For example:
|
|
77
75
|
|
|
78
|
-
```
|
|
76
|
+
```convert_endf --help```
|
|
79
77
|
|
|
80
78
|
Some scripts (mainly the generate scripts) require NJOY to be installed and
|
|
81
79
|
added to your path.
|
|
@@ -104,7 +102,7 @@ A few categories of scripts are available:
|
|
|
104
102
|
|-|-|-|-|
|
|
105
103
|
|convert_mcnp70 | ENDF/B | VII.0 | LANL |
|
|
106
104
|
|convert_mcnp71 | ENDF/B | VII.1 | LANL |
|
|
107
|
-
|
|
|
105
|
+
|convert_endf | ENDF/B | VII.1 | NNDC |
|
|
108
106
|
|convert_lib80x | ENDF/B | VIII.0 | LANL |
|
|
109
107
|
|convert_fendl | FENDL | 2.1<br>3.0<br>3.1a<br>3.1d<br>3.2|
|
|
110
108
|
|convert_jeff32 | JEFF | 3.2 |
|
|
@@ -117,13 +115,13 @@ A few categories of scripts are available:
|
|
|
117
115
|
|-|-|-|-|
|
|
118
116
|
| generate_cendl | CENDL | 3.1<br>3.2 | |
|
|
119
117
|
| generate_endf | ENDF/B | VII.1<br>VIII.0 | NNDC |
|
|
120
|
-
| generate_jendl | JENDL | 4.0 | |
|
|
118
|
+
| generate_jendl | JENDL | 4.0<br>5.0 | |
|
|
121
119
|
|
|
122
120
|
### Download cross sections
|
|
123
121
|
|
|
124
122
|
| Script name | Library | Release | Processed by |
|
|
125
123
|
|-|-|-|-|
|
|
126
|
-
|
|
|
124
|
+
| download_endf | ENDF/B | VII.1<br>VIII.0 | NNDC |
|
|
127
125
|
|
|
128
126
|
<!-- | Script name | Library | Release | Processed by | Download available | Downloads ACE files and convert to HDF5 | Downloads ENDF files and convert to HDF5 | Convert local ACE files |
|
|
129
127
|
|-|-|-|-|-|-|-|-|
|
|
@@ -131,7 +129,7 @@ A few categories of scripts are available:
|
|
|
131
129
|
|convert_mcnp70| ENDF/B | VII.0 | LANL | [openmc.org](https://anl.box.com/shared/static/t25g7g6v0emygu50lr2ych1cf6o7454b.xz) | | | :heavy_check_mark: |
|
|
132
130
|
|convert_mcnp71| ENDF/B | VII.1 | LANL | [openmc.org](https://anl.box.com/shared/static/d359skd2w6wrm86om2997a1bxgigc8pu.xz) | | | :heavy_check_mark: |
|
|
133
131
|
|generate_endf| ENDF/B | VII.1 | NNDC | [openmc.org](https://anl.box.com/shared/static/9igk353zpy8fn9ttvtrqgzvw1vtejoz6.xz) | | :heavy_check_mark: | |
|
|
134
|
-
|
|
|
132
|
+
|convert_endf| ENDF/B | VII.1 | NNDC | [openmc.org](https://anl.box.com/shared/static/9igk353zpy8fn9ttvtrqgzvw1vtejoz6.xz) | :heavy_check_mark: | :heavy_check_mark: | |
|
|
135
133
|
|convert_lib80x| ENDF/B | VIII.0 | LANL | [openmc.org](https://anl.box.com/shared/static/nd7p4jherolkx4b1rfaw5uqp58nxtstr.xz) | | | :heavy_check_mark: |
|
|
136
134
|
|generate_endf| ENDF/B | VIII.0 | NNDC | [openmc.org](https://anl.box.com/shared/static/uhbxlrx7hvxqw27psymfbhi7bx7s6u6a.xz) | | :heavy_check_mark: | |
|
|
137
135
|
|convert_fendl| FENDL | 2.1<br>3.0<br>3.1a<br>3.1d<br>3.2 | | [openmc.org 3.2](https://anl.box.com/shared/static/3cb7jetw7tmxaw6nvn77x6c578jnm2ey.xz) | :heavy_check_mark: | | |
|
|
@@ -155,7 +153,7 @@ A few categories of scripts are available:
|
|
|
155
153
|
|
|
156
154
|
| Script name | Library | Release | Processed by |
|
|
157
155
|
|-|-|-|-|
|
|
158
|
-
|
|
|
156
|
+
|download_endf_chain | ENDF/B | VII.1<br>VIII.0 | NNDC |
|
|
159
157
|
|
|
160
158
|
<!-- | Sctipt name | Library | Release | Download available | Download ENDF files and generates XML chain files |
|
|
161
159
|
|-|-|-|-|-|
|