Why engineers choose Serpent
Serpent is a continuous-energy Monte Carlo code optimized for reactor physics and fuel cycle analysis. Developed by VTT, it blends high-fidelity transport with fast burnup, perturbation, and lattice-physics tooling.
Burnup-ready
Integrated depletion solver with detailed isotopic tracking and group constant generation for core simulators.
Efficient engine
Optimized algorithms and parallelism enable large lattice and core models without massive compute budgets.
Lattice physics output
Produce cross sections, diffusion coefficients, and perturbation data directly for deterministic workflows.
Flexible geometry
Rich CSG modeling with pin/lattice helpers plus CAD-based mesh imports for advanced studies.
Frequently Asked Questions
How do I obtain a Serpent license?
Licensing is handled by VTT. Academic institutions can request access through the official Serpent site, while commercial entities purchase supported seats that include updates and user support.
Which operating systems support Serpent?
Serpent compiles on Linux and runs on Windows via WSL2. Most production teams build on Linux clusters to take advantage of MPI scaling.
How does Serpent differ from MCNP or OpenMC?
Serpent specializes in reactor physics with integrated burnup, lattice physics, and perturbation capabilities. MCNP remains the general-purpose transport standard, and OpenMC focuses on a Python-first API.
Quick start guides
Sample Serpent Input
Here's a basic 17×17 PWR fuel assembly model demonstrating Serpent's input structure:
% --- Simple PWR fuel assembly model ---
% --- Materials:
mat fuel -10.4
92235.03c -0.04
92238.03c -0.96
8016.03c -0.12
mat clad -6.55
40090.03c 1.0
mat water -1.0 moder lwtr 1001
1001.03c 2.0
8016.03c 1.0
% --- Geometry:
pin 1
fuel 0.4096
clad 0.4750
water
pin 2
water 0.6120
lat 10 1 0.0 0.0 17 17 1.26
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 2 1 1 2 1 1 2 1 1 1 1 1
1 1 1 2 1 1 1 1 1 1 1 1 1 2 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 2 1 1 2 1 1 2 1 1 2 1 1 2 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 2 1 1 2 1 1 2 1 1 2 1 1 2 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 2 1 1 2 1 1 2 1 1 2 1 1 2 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 2 1 1 1 1 1 1 1 1 1 2 1 1 1
1 1 1 1 1 2 1 1 2 1 1 2 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
cell 10 0 fill 10 -20
cell 20 0 outside 1
% --- Run parameters:
set pop 10000 100 40Key Features Shown
- Material definitions with ENDF/B identifiers
- Pin cell geometry with fuel, clad, and water
- Lattice structure for assembly layout
- Population settings for Monte Carlo
Try Modifications
- Change fuel enrichment (U-235 fraction)
- Modify pin pitch in lattice definition
- Add burnable absorber pins
- Increase population for better statistics
Advanced capabilities
Burnup & depletion
Create montage burnup chains, branch cases, and depletion histories for realistic cycle studies.
Group constant generation
Export homogenized constants for nodal or diffusion solvers directly from Serpent tallies.
Serpent applications
Reactor physics
- k-effective benchmarking and lattice physics
- Control rod worth & temperature coefficient analysis
- SMR and advanced reactor concept evaluation
- Fuel performance coupling via homogenized data
Fuel cycle analysis
- Isotopic depletion and radiotoxicity tracking
- Waste characterization and storage planning
- Burnable absorber optimization
- Cycle length and reload strategy studies
Ready to Master Serpent?
Start with our step-by-step tutorials and become proficient in advanced Monte Carlo reactor simulations.