Monte Carlo N-Particle Transport Code

Monte Carlo N-Particle Transport (MCNP)[2] is a general-purpose, continuous-energy, generalized-geometry, time-dependent, Monte Carlo radiation transport code designed to track many particle types over broad ranges of energies and is developed by Los Alamos National Laboratory. Specific areas of application include, but are not limited to, radiation protection and dosimetry, radiation shielding, radiography, medical physics, nuclear criticality safety, detector design and analysis, nuclear oil well logging, accelerator target design, fission and fusion reactor design, decontamination and decommissioning. The code treats an arbitrary three-dimensional configuration of materials in geometric cells bounded by first- and second-degree surfaces and fourth-degree elliptical tori.

MCNP
Developer(s)LANL
Stable release
MCNP6.2 / February 5, 2018 (2018-02-05)[1]
Written inFortran 90
Operating systemCross-platform
TypeComputational physics
Licensehttps://rsicc.ornl.gov/
Websitemcnp.lanl.gov

Point-wise cross section data are typically used, although group-wise data also are available. For neutrons, all reactions given in a particular cross-section evaluation (such as ENDF/B-VI) are accounted for. Thermal neutrons are described by both the free gas and S(α,β) models. 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. A continuous-slowing-down model is used for electron transport that includes positrons, k x-rays, and bremsstrahlung but does not include external or self-induced fields.

Important standard features that make MCNP very versatile and easy to use include a powerful general source, criticality source, and surface source; 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.

MCNP contains numerous flexible tallies: surface current & flux, volume flux (track length), point or ring detectors, particle heating, fission heating, pulse height taly for energy or charge deposition, mesh tallies, and radiography tallies.

The key value MCNP provides is a predictive capability that can replace expensive or impossible-to-perform experiments. It is often used to design large-scale measurements providing a significant time and cost savings to the community. LANL's latest version of the MCNP code, version 6.2, represents one piece of a set of synergistic capabilities each developed at LANL; it includes evaluated nuclear data (ENDF) and the data processing code, NJOY. The international user community’s high confidence in MCNP’s predictive capabilities are based on its performance with verification and validation test suites, comparisons to its predecessor codes, automated testing, underling high quality nuclear and atomic databases and significant testing by its users.

History[3]

The Monte Carlo method for radiation particle transport has its origins at LANL dates back to 1946. The creators of these methods were Drs. Stanislaw Ulam, John von Neumann, Robert Richtmyer, and Nicholas Metropolis[4]. Monte Carlo for radiation transport was conceived by Stanislaw Ulam in 1946 while playing Solitaire while recovering from an illness. "After spending a lot of time trying to estimate success by combinatorial calculations, I wondered whether a more practical method...might be to lay it out say one hundred times and simply observe and count the number of successful plays." In 1947, John von Neumann sent a letter to Robert Richtmyer proposing the use of a statistical method to solve neutron diffusion and multiplication problems in fission devices[5]. His letter contained an 81-step pseudo code and was the first formulation of a Monte Carlo computation for an electronic computing machine. Von Neumann's assumptions were: time-dependent, continuous-energy, spherical but radially-varying, one fissionable material, isotropic scattering and fission production, and fission multiplicities of 2, 3, or 4. He suggested 100 neutrons each to be run for 100 collisions and estimated the computational time to be five hours on ENIAC[6]. Richtmyer proposed suggestions to allow for multiple fissionable materials, no fission spectrum energy dependence, single neutron multiplicity, and running the computation for computer time and not for the number of collisions. The code was finalized in December 1947. The first calculations were run in April/May 1948 on ENIAC.

While waiting for ENIAC to be physically relocated, Enrico Fermi invented a mechanical device called FERMIAC[7] to trace neutron movements through fissionable materials by the Monte Carlo method. Monte Carlo methods for particle transport have been driving computational developments since the beginning of modern computers; this continues today.

In the 1950s and 1960s, these new methods were organized into a series of special-purpose Monte Carlo codes, including MCS, MCN, MCP, and MCG. These codes were able to transport neutrons and photons for specialized LANL applications. In 1977, these separate codes were combined to create the first generalized Monte Carlo radiation particle transport code, MCNP[8][9]. In 1977, MCNP was first created by merging MCNG with MCP to create MCNP. The first release of the MCNP code was version 3 and was released in 1983. It is distributed by the Radiation Safety Information Computational Center in Oak Ridge, TN.

Monte Carlo N-Particle eXtended

Monte Carlo N-Particle eXtended (MCNPX) was also developed at Los Alamos National Laboratory, and is capable of simulating particle interactions of 34 different types of particles (nucleons and ions) and 2000+ heavy ions at nearly all energies,[10] including those simulated by MCNP.

Both codes can be used to judge whether or not nuclear systems are critical and to determine doses from sources, among other things.

MCNP6 is a merger of MCNP5 and MCNPX.[10]

gollark: Instead of "wait for X event" it's "set callbacks for X event + promises".
gollark: node.lua is actually quite good, though.
gollark: <4 <5 <6 <7
gollark: I have a brilliant idea. *Networking via sign text adjustment*.
gollark: What you should do is implement *cooler* ethernet.

See also

Notes

  1. "MCNP6.2 Release notes" (PDF). LANL. 2018-02-05. Retrieved 2018-02-15.
  2. "MCNP Website".
  3. Sood, A. (July 2017). "The Monte Carlo Method and MCNP –A Brief Review of Our 40 Year History" (PDF). MCNP Website - references section.
  4. Eckhardt, R. (1987). "Stan Ulam, John Von Neumann, and the Monte Carlo Method" (PDF). MCNP Website - reference section.
  5. von Neumann, J. (1947). "Statistical Methods in Neutron Diffusion" (PDF).
  6. "ENIAC". Wikipedia.
  7. "FERMIAC", Wikipedia, 2019-08-28, retrieved 2020-01-09
  8. Carter, L.L. (March 1975). "Monte Carlo Code Development in Los Alamos" (PDF). MCNP Website - reference section.
  9. "Proceedings of the NEACRP Meeting Of A Monte Carlo Study Group" (PDF). OECD-NEA archives. July 1974.
  10. James, M.R. "MCNPX 2.7.x - New Features Being Developed" (PDF).
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.