11. Executables and Scripts¶
11.1. openmc
¶
Once you have a model built (see Basics of Using OpenMC), you can either run the openmc executable directly from the directory containing your XML input files, or you can specify as a command-line argument the directory containing the XML input files.
Warning
OpenMC models should be treated as code, and it is important to be careful with code from untrusted sources.
For example, if your XML input files are in the directory
/home/username/somemodel/
, one way to run the simulation would be:
cd /home/username/somemodel
openmc
Alternatively, you could run from any directory:
openmc /home/username/somemodel
Note that in the latter case, any output files will be placed in the present
working directory which may be different from
/home/username/somemodel
. openmc
accepts the following command line
flags:
- -c, --volume
Run in stochastic volume calculation mode
- -e, --event
Run using event-based parallelism
- -g, --geometry-debug
Run in geometry debugging mode, where cell overlaps are checked for after each move of a particle
- -n, --particles N
Use N particles per generation or batch
- -p, --plot
Run in plotting mode
- -r, --restart file
Restart a previous run from a state point or a particle restart file
- -s, --threads N
Run with N OpenMP threads
- -t, --track
Write tracks for all particles (up to max_tracks)
- -v, --version
Show version information
- -h, --help
Show help message
Note
If you’re using the Python API, openmc.run()
is equivalent to
running openmc
from the command line.
11.2. openmc-ace-to-hdf5
¶
This script can be used to create HDF5 nuclear data libraries used by OpenMC if you have existing ACE files. There are four different ways you can specify ACE libraries that are to be converted:
List each ACE library as a positional argument. This is very useful in conjunction with the usual shell utilities (
ls
,find
, etc.).Use the
--xml
option to specify a pre-v0.9 cross_sections.xml file.Use the
--xsdir
option to specify a MCNP xsdir file.Use the
--xsdata
option to specify a Serpent xsdata file.
The script does not use any extra information from cross_sections.xml/ xsdir/
xsdata files to determine whether the nuclide is metastable. Instead, the
--metastable
argument can be used to specify whether the ZAID naming convention
follows the NNDC data convention (1000*Z + A + 300 + 100*m), or the MCNP data
convention (essentially the same as NNDC, except that the first metastable state
of Am242 is 95242 and the ground state is 95642).
The optional --fission_energy_release
argument will accept an HDF5 file
containing a library of fission energy release (ENDF MF=1 MT=458) data. A
library built from ENDF/B-VII.1 data is released with OpenMC and can be found at
openmc/data/fission_Q_data_endb71.h5. This data is necessary for
‘fission-q-prompt’ and ‘fission-q-recoverable’ tallies, but is not needed
otherwise.
- -h, --help
show help message and exit
- -d DESTINATION, --destination DESTINATION
Directory to create new library in
- -m META, --metastable META
How to interpret ZAIDs for metastable nuclides. META can be either ‘nndc’ or ‘mcnp’. (default: nndc)
- --xml XML
Old-style cross_sections.xml that lists ACE libraries
- --xsdir XSDIR
MCNP xsdir file that lists ACE libraries
- --xsdata XSDATA
Serpent xsdata file that lists ACE libraries
- --fission_energy_release FISSION_ENERGY_RELEASE
HDF5 file containing fission energy release data
11.3. openmc-plot-mesh-tally
¶
openmc-plot-mesh-tally
provides a graphical user interface for plotting mesh
tallies. The path to the statepoint file can be provided as an optional arugment
(if omitted, a file dialog will be presented).
11.4. openmc-track-combine
¶
This script combines multiple HDF5 particle track files into a single HDF5 particle track file. The filenames of the
particle track files should be given as posititional arguments. The output
filename can also be changed with the -o
flag:
- -o OUT, --out OUT
Output HDF5 particle track file
11.5. openmc-track-to-vtk
¶
This script converts HDF5 particle track files to VTK
poly data that can be viewed with ParaView or VisIt. The filenames of the
particle track files should be given as posititional arguments. The output
filename can also be changed with the -o
flag:
- -o OUT, --out OUT
Output VTK poly filename
11.6. openmc-update-inputs
¶
If you have existing XML files that worked in a previous version of OpenMC that
no longer work with the current version, you can try to update these files using
openmc-update-inputs
. If any of the given files do not match the most
up-to-date formatting, then they will be automatically rewritten. The old
out-of-date files will not be deleted; they will be moved to a new file with
‘.original’ appended to their name.
Formatting changes that will be made:
- geometry.xml
Lattices containing ‘outside’ attributes/tags will be replaced with lattices containing ‘outer’ attributes, and the appropriate cells/universes will be added. Any ‘surfaces’ attributes/elements on a cell will be renamed ‘region’.
- materials.xml
Nuclide names will be changed from ACE aliases (e.g., Am-242m) to HDF5/GNDS names (e.g., Am242_m1). Thermal scattering table names will be changed from ACE aliases (e.g., HH2O) to HDF5/GNDS names (e.g., c_H_in_H2O).
11.7. openmc-update-mgxs
¶
This script updates OpenMC’s deprecated multi-group cross section XML files to the latest HDF5-based format.
- -i IN, --input IN
Input XML file
- -o OUT, --output OUT
Output file in HDF5 format
11.8. openmc-voxel-to-vtk
¶
When OpenMC generates voxel plots, they are in an
HDF5 format that is not terribly useful by itself. The
openmc-voxel-to-vtk
script converts a voxel HDF5 file to a VTK file. To run this script, you will need to have the VTK
Python bindings installed. To convert a voxel file, simply provide the path to
the file:
openmc-voxel-to-vtk voxel_1.h5
The openmc-voxel-to-vtk
script also takes the following optional
command-line arguments:
- -o, --output
Path to output VTK file