EXFOR entries contain a variety of keywords, for example:
INSTITUTE (1USALAS) REFERENCE (R,LA-1258,1951) FACILITY (CCW,1USALAS) DETECTOR (THRES) REACTION (2-HE-4(N,2N)2-HE-3,,SIG,,SPA) STATUS (DEP,14737002)
These keywords are defined in the EXFOR dictionary, which is maintained by the IAEA Nuclear Data Section. This repository provides a JSON-converted version of the dictionary: latest file.
The EXFOR dictionary contains approximately 40 categories of identifiers, called DICTION blocks.
The original dictionary is stored in a fixed-width FORTRAN-style format.
Each DICTION block begins with the keyword DICTION and contains a list of EXFOR codes along with descriptions.
For instance, the code 1USALAS corresponds to Los Alamos National Laboratory, NM and is defined in DICTION 3 Institutes.
All dictionary identifiers are summarized in DICTION 950. A shortened example:
DICTION 950 202112 List of Dictionaries
1 System identifiers
2 Information identifiers
3 Institutes
4 Reference types
5 Journals
6 Reports
7 Conferences
8 Elements
15 History
16 Status
18 Facilities
22 Detectors
30 Processes (REACTION SF 3)
33 Particles
37 Results
113 Web quantities
144 Data libraries
227 Nuclides and nat.isot.mixtures
236 Quantities (REACTION SF 5-8)
ENDDICTION 40 0
An example Jupyter notebook is available here: 📓 example.ipynb
If you do not have a local Jupyter environment, you can launch the example directly in Binder:
import json
# Load the latest EXFOR dictionary
with open("src/exfor_dictionary/latest.json") as j:
exfor_dictionary = json.load(j)List all available DICTION categories:
for i, k in exfor_dictionary["definitions"].items():
print(i, "-->", k["description"])Inspect a specific keyword, e.g. INSTITUTE (1USALAS):
import json
print(json.dumps(
exfor_dictionary["dictionaries"]["3"]["codes"]["1USALAS"],
indent=2
))The parser script exfor_dictionary.py automatically downloads the latest EXFOR dictionary from the IAEA NDS website.
It processes the source file into DICTION blocks, storing:
- the original format in the
original/directory - the JSON-converted version in the
json/directory
During conversion, some abbreviations in descriptions are expanded for clarity.
Since the EXFOR dictionary is updated irregularly, you can re-run the conversion using:
python convert_dictionary.pyexport OPENAREA_USER=<username>
export OPENAREA_PWD=<password>- Parsing is still under development.
- JSON files are currently generated only for selected
DICTIONblocks relevant to the EXFOR parser. - Further improvements are ongoing.
For questions or feedback, please contact: 📧 nds.contact-point@iaea.org