mirror of
https://github.com/openmc-dev/openmc.git
synced 2026-07-21 14:35:27 -04:00
Co-authored-by: GuySten <62616591+GuySten@users.noreply.github.com> Co-authored-by: Amanda Lund <alund1187@gmail.com>
199 lines
10 KiB
ReStructuredText
199 lines
10 KiB
ReStructuredText
.. _io_statepoint:
|
|
|
|
=======================
|
|
State Point File Format
|
|
=======================
|
|
|
|
The current version of the statepoint file format is 18.2.
|
|
|
|
**/**
|
|
|
|
:Attributes: - **filetype** (*char[]*) -- String indicating the type of file.
|
|
- **version** (*int[2]*) -- Major and minor version of the
|
|
statepoint file format.
|
|
- **openmc_version** (*int[3]*) -- Major, minor, and release
|
|
version number for OpenMC.
|
|
- **git_sha1** (*char[40]*) -- Git commit SHA-1 hash.
|
|
- **date_and_time** (*char[]*) -- Date and time the summary was
|
|
written.
|
|
- **path** (*char[]*) -- Path to directory containing input files.
|
|
- **tallies_present** (*int*) -- Flag indicating whether tallies
|
|
are present (1) or not (0).
|
|
- **source_present** (*int*) -- Flag indicating whether the source
|
|
bank is present (1) or not (0).
|
|
|
|
:Datasets: - **seed** (*int8_t*) -- Pseudo-random number generator seed.
|
|
- **stride** (*uint64_t*) -- Pseudo-random number generator stride.
|
|
- **energy_mode** (*char[]*) -- Energy mode of the run, either
|
|
'continuous-energy' or 'multi-group'.
|
|
- **run_mode** (*char[]*) -- Run mode used, either 'eigenvalue' or
|
|
'fixed source'.
|
|
- **n_particles** (*int8_t*) -- Number of particles used per generation.
|
|
- **n_batches** (*int*) -- Number of batches to simulate.
|
|
- **current_batch** (*int*) -- The number of batches already simulated.
|
|
- **n_inactive** (*int*) -- Number of inactive batches. Only present
|
|
when `run_mode` is 'eigenvalue'.
|
|
- **generations_per_batch** (*int*) -- Number of generations per
|
|
batch. Only present when `run_mode` is 'eigenvalue'.
|
|
- **k_generation** (*double[]*) -- k-effective for each generation
|
|
simulated.
|
|
- **entropy** (*double[]*) -- Shannon entropy for each generation
|
|
simulated.
|
|
- **k_col_abs** (*double*) -- Sum of product of collision/absorption
|
|
estimates of k-effective.
|
|
- **k_col_tra** (*double*) -- Sum of product of
|
|
collision/track-length estimates of k-effective.
|
|
- **k_abs_tra** (*double*) -- Sum of product of
|
|
absorption/track-length estimates of k-effective.
|
|
- **k_combined** (*double[2]*) -- Mean and standard deviation of a
|
|
combined estimate of k-effective.
|
|
- **n_realizations** (*int*) -- Number of realizations for global
|
|
tallies.
|
|
- **global_tallies** (*double[][2]*) -- Accumulated sum and
|
|
sum-of-squares for each global tally.
|
|
- **source_bank** (Compound type) -- Source bank information for each
|
|
particle. The compound type has fields ``r``, ``u``, ``E``,
|
|
``time``, ``wgt``, ``delayed_group``, ``surf_id``, and
|
|
``particle``, which represent the position, direction, energy,
|
|
time, weight, delayed group, surface ID, and particle type
|
|
(PDG number), respectively. Only present when `run_mode` is
|
|
'eigenvalue'.
|
|
|
|
**/tallies/**
|
|
|
|
:Attributes: - **n_tallies** (*int*) -- Number of user-defined tallies.
|
|
- **ids** (*int[]*) -- User-defined unique ID of each tally.
|
|
|
|
**/tallies/meshes/**
|
|
|
|
:Attributes: - **n_meshes** (*int*) -- Number of meshes in the problem.
|
|
- **ids** (*int[]*) -- User-defined unique ID of each mesh.
|
|
|
|
.. _mesh-spec-hdf5:
|
|
|
|
**/tallies/meshes/mesh <uid>/**
|
|
|
|
:Attributes: - **id** (*int*) -- ID of the mesh
|
|
|
|
:Datasets: - **name** (*char[]*) -- Name of the mesh.
|
|
- **type** (*char[]*) -- Type of mesh.
|
|
- **dimension** (*int*) -- Number of mesh cells in each dimension.
|
|
- **Regular Mesh Only:**
|
|
- **lower_left** (*double[]*) -- Coordinates of lower-left corner of
|
|
mesh.
|
|
- **upper_right** (*double[]*) -- Coordinates of upper-right corner
|
|
of mesh.
|
|
- **width** (*double[]*) -- Width of each mesh cell in each
|
|
dimension.
|
|
- **Rectilinear Mesh Only:**
|
|
- **x_grid** (*double[]*) -- Mesh divisions along the x-axis.
|
|
- **y_grid** (*double[]*) -- Mesh divisions along the y-axis.
|
|
- **z_grid** (*double[]*) -- Mesh divisions along the z-axis.
|
|
- **Cylindrical & Spherical Mesh Only:**
|
|
- **r_grid** (*double[]*) -- The mesh divisions along the r-axis.
|
|
- **phi_grid** (*double[]*) -- The mesh divisions along the phi-axis.
|
|
- **origin** (*double[]*) -- The origin in cartesian coordinates.
|
|
- **Spherical Mesh Only:**
|
|
- **theta_grid** (*double[]*) -- The mesh divisions along the theta-axis.
|
|
- **Unstructured Mesh Only:**
|
|
- **filename** (*char[]*) -- Name of the mesh file.
|
|
- **library** (*char[]*) -- Mesh library used to represent the
|
|
mesh ("moab" or "libmesh").
|
|
- **length_multiplier** (*double*) Scaling factor applied to the mesh.
|
|
- **options** (*char[]*) -- Special options that control spatial
|
|
search data structures used.
|
|
- **volumes** (*double[]*) -- Volume of each mesh cell.
|
|
- **vertices** (*double[]*) -- x, y, z values of the mesh vertices.
|
|
- **connectivity** (*int[]*) -- Connectivity array for the mesh
|
|
cells.
|
|
- **element_types** (*int[]*) -- Mesh element types.
|
|
|
|
**/tallies/filters/**
|
|
|
|
:Attributes: - **n_filters** (*int*) -- Number of filters in the problem.
|
|
- **ids** (*int[]*) -- User-defined unique ID of each filter.
|
|
|
|
**/tallies/filters/filter <uid>/**
|
|
|
|
:Datasets: - **type** (*char[]*) -- Type of the j-th filter. Can be 'universe',
|
|
'material', 'cell', 'cellborn', 'surface', 'mesh', 'energy',
|
|
'energyout', 'distribcell', 'mu', 'polar', 'azimuthal',
|
|
'delayedgroup', or 'energyfunction'.
|
|
- **n_bins** (*int*) -- Number of bins for the j-th filter. Not
|
|
present for 'energyfunction' filters.
|
|
- **bins** (*int[]* or *double[]*) -- Value for each filter bin of
|
|
this type. Not present for 'energyfunction' filters.
|
|
- **energy** (*double[]*) -- Energy grid points for energyfunction
|
|
interpolation. Only used for 'energyfunction' filters.
|
|
- **y** (*double[]*) -- Interpolant values for energyfunction
|
|
interpolation. Only used for 'energyfunction' filters.
|
|
|
|
:Attributes:
|
|
- **interpolation** (*int*) -- Interpolation type. Only used for
|
|
'energyfunction' filters.
|
|
|
|
**/tallies/derivatives/derivative <id>/**
|
|
|
|
:Datasets: - **independent variable** (*char[]*) -- Independent variable of
|
|
tally derivative.
|
|
- **material** (*int*) -- ID of the perturbed material.
|
|
- **nuclide** (*char[]*) -- Alias of the perturbed nuclide.
|
|
- **estimator** (*char[]*) -- Type of tally estimator, either
|
|
'analog', 'tracklength', or 'collision'.
|
|
|
|
**/tallies/tally <uid>/**
|
|
|
|
:Attributes:
|
|
- **internal** (*int*) -- Flag indicating the presence of tally
|
|
data (0) or absence of tally data (1). All user defined
|
|
tallies will have a value of 0 unless otherwise instructed.
|
|
- **multiply_density** (*int*) -- Flag indicating whether reaction
|
|
rates should be multiplied by atom density (1) or not (0).
|
|
- **higher_moments** (*int*) -- Flag indicating whether
|
|
higher-order tally moments are enabled (1) or not (0).
|
|
|
|
:Datasets: - **n_realizations** (*int*) -- Number of realizations.
|
|
- **n_filters** (*int*) -- Number of filters used.
|
|
- **filters** (*int[]*) -- User-defined unique IDs of the filters on
|
|
the tally
|
|
- **nuclides** (*char[][]*) -- Array of nuclides to tally. Note that
|
|
if no nuclide is specified in the user input, a single 'total'
|
|
nuclide appears here.
|
|
- **derivative** (*int*) -- ID of the derivative applied to the
|
|
tally.
|
|
- **n_score_bins** (*int*) -- Number of scoring bins for a single
|
|
nuclide.
|
|
- **score_bins** (*char[][]*) -- Values of specified scores.
|
|
- **results** (*double[][][2]*) -- Accumulated sum and sum-of-squares
|
|
for each bin of the i-th tally. The first dimension represents
|
|
combinations of filter bins, the second dimensions represents
|
|
scoring bins, and the third dimension has two entries for the sum
|
|
and the sum-of-squares.
|
|
|
|
**/runtime/**
|
|
|
|
All values are given in seconds and are measured on the master process.
|
|
|
|
:Datasets: - **total initialization** (*double*) -- Time spent reading inputs,
|
|
allocating arrays, etc.
|
|
- **reading cross sections** (*double*) -- Time spent loading cross
|
|
section libraries (this is a subset of initialization).
|
|
- **simulation** (*double*) -- Time spent between initialization and
|
|
finalization.
|
|
- **transport** (*double*) -- Time spent transporting particles.
|
|
- **inactive batches** (*double*) -- Time spent in the inactive
|
|
batches (including non-transport activities like communicating
|
|
sites).
|
|
- **active batches** (*double*) -- Time spent in the active batches
|
|
(including non-transport activities like communicating sites).
|
|
- **synchronizing fission bank** (*double*) -- Time spent sampling
|
|
source particles from fission sites and communicating them to other
|
|
processes for load balancing.
|
|
- **sampling source sites** (*double*) -- Time spent sampling source
|
|
particles from fission sites.
|
|
- **SEND-RECV source sites** (*double*) -- Time spent communicating
|
|
source sites between processes for load balancing.
|
|
- **accumulating tallies** (*double*) -- Time spent communicating
|
|
tally results and evaluating their statistics.
|
|
- **writing statepoints** (*double*) -- Time spent writing statepoint
|
|
files
|