SCONE Tutorial & Guide

Open-source Fortran Monte Carlo from the University of Cambridge — built for methods research and teaching. Tutorials track the official SCONE documentation.

Start Learning SCONE →

Last Updated: April 2026

Why engineers choose SCONE

SCONE favors clarity and extensibility over raw throughput — ideal for methods work, graduate training, and extending physics in Fortran. For how this ReactorMC guide relates to upstream docs, see the Introduction. Full-core patterns appear on BEAVRS and Advanced. Runnable tutorial decks mirrored for download live in caalh/ReactorMC (scone-examples/).

SCONE (the code) was developed at the University of Cambridge, overseen by Dr. Eugene Shwageraus. Contributors include Dr. Mikolaj Kowalski, Dr. Valeria Raffuzzi, Dr. Paul Cosgrove, and Alex Bland, among others in the Cambridge Nuclear Energy group. SCONE on GitHub · Cambridge Nuclear Energy Centre

Modern Fortran Architecture

Fortran 2008+ with modular interfaces—good for extending physics and methods.

OpenMP Parallelism

Shared-memory runs via OMP_NUM_THREADS; optional MPI builds use the same input.

Extensible by Design

New tallies, surfaces, and operators live in source—no deck-only workarounds.

Open Source (MIT License)

GitHub + CMake/gfortran; no export-control restrictions on the code.

Quick start guides

Sample SCONE Input File

Below is the same deck as scone-examples/verify/tutorial_scone_tsx_testlib (continuous-energy pin cell with IntegrationTestFiles/testLib nuclides). Swap aceLibrary and ZAIDs for your library. A line-by-line walkthrough is on Basics.

tutorial_scone_tsx_testlib
// SCONE.tsx sampleInput - equivalent pin cell using pinUniverse (avoids cellUniverse geometry issues)
type eigenPhysicsPackage;
pop 10000;
active 50;
inactive 20;
XSdata ce;
dataType ce;
collisionOperator { neutronCE { type neutronCEstd; } }
transportOperator { type transportOperatorDT; }
geometry {
  type geometryStd;
  boundary (0 0 0 0 0 0);
  graph { type shrunk; }
  surfaces {
    bound { id 5; type zSquareCylinder; origin (0.0 0.0 0.0); halfwidth (0.63 0.63 0.0); }
  }
  cells {}
  universes {
    root { id 1; type rootUniverse; border 5; fill u<2>; }
    pin { id 2; type pinUniverse; radii (0.4096 0.4750 0.0); fills (fuel clad water); }
  }
}
inactiveTally {}
activeTally {
  fissionRate { type collisionClerk; response (fission); fission { type macroResponse; MT -6; } }
}
nuclearData {
  handles { ce { type aceNeutronDatabase; aceLibrary $SCONE_ACE; } }
  materials {
    fuel { temp 900; composition { 92235.03 4.50e-02; } }
    clad { temp 600; composition { 1001.03 6.67e-02; 8016.03 3.33e-02; } }
    water { temp 600; composition { 1001.03 6.67e-02; 8016.03 3.33e-02; } }
  }
}

Nuclear data tips

SCONE reads standard ACE files. Point aceLibrary at your processed library (ENDF/B, JEFF, JENDL). Tutorial decks that ship in scone-examples/verify/ use SCONE's bundled testLib when SCONE_ACE=IntegrationTestFiles/testLib — swap paths and ZAIDs for production evaluations.

Match nuclide suffixes to the evaluation embedded in your ACE tables. See Materials and Cross Section Data for composition and library notes.

$ export OMP_NUM_THREADS=4

$ ./build/scone.out pin_cell.inp

MPI-capable builds use the same input; see Parallel. Output includes k-effective and tallies; add viz for geometry plots.

Verify syntax and nuclide lists against the official manual before long runs or publication-style results.

Frequently Asked Questions

How do I get SCONE?
MIT license — clone github.com/CambridgeNuclear/SCONE, build with CMake + gfortran. Details: official documentation. No export-control restrictions on the code.
What nuclear data does SCONE use?
Standard ACE files. Set aceLibrary to your processed library (e.g. JEF311.aceXS from ENDF/B, JEFF, or JENDL).
Is SCONE suitable for production reactor calculations?
SCONE is designed primarily for research and education. It excels at method development and prototyping. For production licensing calculations, established codes like MCNP or Serpent are more appropriate.

Ready to Master SCONE?

Start with our step-by-step tutorials and build your first Monte Carlo model with a modern, open-source code.