Format: MCNP
Nautilus provides bidirectional conversion between EntityTag and several formats [1] defined by
MCNP (the Monte Carlo N-Particle code): partial zaid, full zaid, and particle symbol.
MCNP Partial Zaid
The MCNP partial zaid is an integer format (datatype int in Nautilus) that primarily represents
nuclides. The conversion routines available for this format are
from_MCNP_partial_zaidthat takes a partial zaid and returns anEntityTagto_MCNP_partial_zaidthat takes anEntityTagand returns a partial zaid
Nuclides, by default, are encoded as \(Z \times 1{,}000 + A\). If the nuclide is not in the ground state, add to that \(300 + m \times 100\), where \(m\) is the metastable state index. Because of this choice for how to encode the metastable state index, the partial zaid format does not support \(m > 4\).
Similarly to other long-lived LANL formats, the partial zaid has issues with americium-242. The ground state (Am-242g) and the first metastable state (Am-242m1) are swapped, so:
95242 should be Am-242g but is actually Am-242m1
95642 should be Am-242m1 but is actually Am-242g
Elementals are encoded as \(Z \times 1{,}000\) (implicitly setting \(A\) and \(m\) to zero).
Particles and user-defined entities are not supported by this format, so they will generate the
invalid value invalid_mcnp_partial_zaid (equal to -1).
MCNP Full Zaid
The MCNP full zaid is a string format (datatype std::string in Nautilus), and is an extension of
the partial zaid format. It consists of a partial zaid, a period, and a suffix. The conversion
routines available for this format are
from_MCNP_full_zaidthat takes a full zaid and returns anEntityTagto_MCNP_full_zaidthat takes anEntityTagand a suffix, and returns a full zaidThe suffix is a string that is appended to the end of the full zaid with no additional processing.
Because the full zaid is an extension of the partial zaid, it follows the same rules as the partial zaid.
Invalid full zaids are given the valid invalid_mcnp_full_zaid, which is equal to “unknown”.
MCNP Particle Symbol
The MCNP particle symbol is a character format (datatype char in Nautilus) that primarily
represents particles. The conversion routines available for this format are
from_MCNP_particle_symbolthat takes a particle symbol and returns anEntityTagto_MCNP_particle_symbolthat takes anEntityTagand returns a particle symbol
Only a few nuclides are supported by this format, shown in the table below:
nuclide |
particle symbol |
|---|---|
H-1 |
H |
H-2 |
D |
H-3 |
T |
He-3 |
S |
He-4 |
A |
all others |
# |
Because “#” is ambiguous, it will generate an unknown EntityTag.
This format does not support elementals or excited states.
The particles supported by this format are shown in the table below:
particle |
particle symbol |
|---|---|
neutron |
N |
photon |
P |
electron |
E |
muon |
| |
antineutron |
Q |
electron neutrino |
U |
muon neutrino |
V |
positron |
F |
proton |
H |
neutral lambda baryon |
L |
positive sigma baryon |
+ |
negative sigma baryon |
- |
neutral xi baryon |
X |
negative xi baryon |
Y |
negative omega baryon |
O |
antimuon |
! |
electron antineutrino |
< |
muon antineutrino |
> |
antiproton |
G |
positive pion |
/ |
neutral pion |
Z |
positive kaon |
K |
short kaon |
% |
long kaon |
^ |
neutral lambda antibaryon |
B |
negative sigma antibaryon |
_ |
positive sigma antibaryon |
~ |
neutral xi antibaryon |
C |
positive xi antibaryon |
W |
positive omega antibaryon |
@ |
negative pion |
* |
negative kaon |
? |
This format is slightly lossy, because H-1 and a proton are both represented by “P”. Because this
format is mostly particle-focused, Nautilus will translate “P” to a proton, meaning that
EntityTag(H-1) becomes particle symbol “P”, which converts back to an EntityTag as a proton
instead of as H-1.
This format does not support user-defined entities.
The “invalid” value for particle symbols is invalid_mcnp_particle_symbol, which has the value
“ “ (a space).
Notes and References
[1]: The MCNP manual (version 6.2, https://mcnp.lanl.gov/pdf_files/TechReport_2017_LANL_LA-UR-17-29981_WernerArmstrongEtAl.pdf) is the primary reference for the MCNP notations discussed here.