MC/DC is an open-source, Python-based Monte Carlo radiation transport code that combines rapid methods development with scalable, high-performance execution on modern computing systems. Originally initiated by the Center for Exascale Monte Carlo Neutron Transport (CEMeNT), MC/DC development is now led by the Center for Advancing the Radiation Resilience of Electronics (CARRE).
- Monte Carlo neutron transport (with photon and charged-particle capabilities under development)
- Time-dependent, steady-state, and eigenvalue simulations
- Multiple physics fidelities (continuous-energy/multi-group, single-scattering/condensed-history)
- Distributed-memory parallel execution with MPI
- Machine-portable Python implementation accelerated by Numba JIT compilation
- Extensible architecture for rapid methods development and prototyping
Install the latest stable release from PyPI:
pip install mcdcFor development installation and additional options, see the Installation Guide.
Complete documentation is available on Read the Docs, including:
If you use MC/DC in published work, please cite one or more of the following references as appropriate:
-
MC/DC Origins
I. Variansyah, et al. (2023). Development of MC/DC: a performant, scalable, and portable Python-based Monte Carlo neutron transport code. Proceedings of the ANS Mathematics & Computation Conference 2025, Niagara Falls, Canada. https://doi.org/10.48550/arXiv.2305.07636 -
MC/DC JOSS Article
J. Morgan, et al. (2024). Monte Carlo / Dynamic Code (MC/DC): An accelerated Python package for fully transient neutron transport and rapid methods development. Journal of Open Source Software, 9(96), 6415. https://doi.org/10.21105/joss.06415
To report bugs, request features, or ask questions, please open a GitHub Issue.