Home Classes FAQ Forum Getting The Code Manual Reference Collection User Symposia Contact the MCNP Team

The MCNP® Code


The MCNP®, Monte Carlo N-Particle®, code can be used for general-purpose transport of many particles including neutrons, photons, electrons, ions, and many other elementary particles, up to 1 TeV/nucleon. The transport of these particles is through a three-dimensional representation of materials defined in a constructive solid geometry, bounded by first-, second-, and fourth-degree user-defined surfaces. In addition, external structured and unstructured meshes can be used to define the problem geometry in a hybrid mode by embedding a mesh within a constructive solid geometry cell, providing an alternate path to defining complex geometry.

Tabulated nuclear and atomic data and/or physics models are used to simulate the physics at each collision a particle undergoes during the transport process. Typically, tabulated nuclear and atomic data are used in the low-energy regime for a subset of projectile particles (e.g., neutrons, photons, light ions) and target nuclei. In particular,

  • For neutrons, the isotope-specific nuclear data is most frequently represented in a continuous-energy form that accounts for all possible reaction channels including many secondary-particle production mechanisms. Additionally, thermal neutrons can make use of supplemental material-based thermal scattering data used to simulate various molecular effects influenced by chemical binding and temperature.
  • For photons, the code accounts for incoherent and coherent scattering, the possibility of fluorescent emission after photoelectric absorption, absorption in pair production with local emission of annihilation radiation, and bremsstrahlung. In photon-only simulations, a thick-target bremsstrahlung model is available to approximately capture some of the physics within the photon-electron-photon cascade while providing faster speed of execution versus fully explicit and coupled photon-electron transport.
  • For electrons and positrons, both a condensed-history and single-event algorithm can be used to transport the particles through materials in the system. A continuous-slowing-down model is used to estimate angular scattering and energy straggling. Knock-on electrons, x-ray production, positron annihilation, Auger electron and photon production, and bremsstrahlung photon production are modeled. For coupled photon-electron physics, electron-photon relaxation data are available, providing more detailed simulations of the ionization and subsequent relaxation process.
  • For protons and other ions, some tabulated data exists for light projectiles. In comparison to neutron, photon, and electron/positron data, the availability of ion data across all possible targets is limited. For protons, several data tables are available spanning much of the chart of the nuclides. For other light-ion projectiles (1 ≤ Z < 3), tabulated data may only exist for light-target interactions (Z < 4). Beyond the tabulated energy ranges, and for interactions with heavier target materials, the light-ion collision physics relies on model physics event generators. Where tabulated data is unavailable, such as for heavy ions and/or particles in the high-energy regime, model physics is used to simulate the physics at each collision. The threshold between low and high energy varies by particle type and tabulated data library. Depending on the projectile particle and its energy, target isotope, and physics model used, the nuclear physics simulations may go through various stages including intranuclear cascade, pre-equilibrium, evaporation, coalescence, and residual decay.

To ultimately simulate the particle tracking through the defined geometry, the collision physics interactions, and variance reduction methods, pseudo-random numbers are used to sample the underlying probability density functions that describe each of the event processes. Each history in the simulation uses a unique sequence of pseudo-random numbers and can therefore be considered independent from other histories in the simulation. Throughout the career of each computational particle, various events that occur can be tallied. The MCNP code contains numerous tallies: surface current and flux, volume flux (track length), point or ring detectors, particle heating, fission heating, pulse height tally for particle counts and energy or charge deposition, mesh tallies, radiography tallies, perturbation/sensitivity tallies, and a collection of specialized tally treatments. These tallies and their statistical uncertainties are calculated across the ensemble of independent history tally contributions.

Important standard features that make the MCNP code versatile and easy to use include a powerful general source, criticality source, and surface source; both a fixed-source and k-eigenvalue solution mode; both geometry and output tally plotters; a rich collection of variance reduction techniques; a flexible tally structure; and an extensive collection of cross-section data. All of the capabilities within the MCNP code can be used on Windows, Linux, and macOS platforms, with the majority of the features capable of parallel execution. The application areas that use the predictions of the MCNP code include (but are not limited to): radiation protection and dosimetry, radiation shielding, radiography, medical physics, nuclear criticality safety, critical and subcritical experiment design and analysis, detector design and analysis, nuclear oil-well logging, accelerator target design, fission and fusion reactor design, decontamination and decommissioning, and nuclear safeguards and nonproliferation.


September 26, 2022

Posted 2023 classes, several older MCNP manuals, and the 2022-Q3 MCNP Site Support newsletter.

September 1, 2022

Published new page describing upcoming and past MCNP User Symposia.

July 7, 2022

A new website is released to support the upcoming MCNP6.3 software release. This new site has its news located here and the former news page is eliminated. The MCNP Site Support newsletters are now available in the reference collection.