|Program name||Package id||Status||Status date|
|Package ID||Orig. computer||Test computer|
|NEA-1840/02||Linux-based PC,Macintosh,UNIX W.S.||Linux-based PC|
SERPENT is a three-dimensional continuous-energy Monte Carlo reactor physics burnup calculation code, specifically designed for lattice physics applications. The code uses built-in calculation routines for generating homogenized multi-group constants for deterministic reactor simulator calculations. The standard output includes effective and infinite multiplication factors, homogenized reaction cross sections, scattering matrices, diffusion coefficients, assembly discontinuity factors, point-kinetic parameters, effective delayed neutron fractions and precursor group decay constants. User-defined tallies can be set up for calculating various integral reaction rates and spectral quantities.
Internal burnup calculation capability allows SERPENT to simulate fuel depletion as a completely stand-alone application. Extensive effort has been put to optimizing the calculation routines and the code is capable of running detailed assembly burnup calculations similar to deterministic lattice codes within a reasonable calculation time. The overall running time can be further reduced by parallelization.
SERPENT can be used for various reactor physics calculations at pin, assembly and core levels. The continuous-energy Monte Carlo method allows the modelling of any critical reactor type, including both thermal and fast neutron systems. The suggested applications of SERPENT include group constant generation, fuel cycle studies, validation of deterministic lattice physics codes and educational, training and demonstration purposes.
Update 1.1.7 (November 6, 2009) contains a few minor bug fixes and changes in some parameter checks to improve compatibility with new cross section libraries (some limiting values were set too low, which caused the execution to stop in the debugging mode).
The bug fixes in update 1.1.7 are:
Multiplier / divider mode in detector calculation failed in some cases (options "dt 2" and "dt 3", Sec. 7.1.1 of the User's Manual).
Unbalanced quotation marks in input resulted in program crash
Actinides without fission channels caused a crash in burnup mode
SERPENT uses the continuous-energy Monte Carlo criticality source method for simulating neutron transport in a self-sustaining system. Cross sections are read from ACE format data libraries and reconstructed on a single unionized energy grid to speed up the calculation. Interaction physics is based classical collision kinematics and ENDF reaction laws.
The geometry description follows the standard Monte Carlo approach based on universes, cells and surfaces, which allows the modelling of practically any two- or three-dimensional fuel or reactor configuration. The tracking routine uses the conventional surface-to-surface ray-tracing together with the Woodcock delta-tracking method. The combination of the two methods has been found efficient and well-suited for lattice physics applications. Special geometry types are available for modeling randomly dispersed particle fuels and pebble distributions in HTGR calculations.
The Bateman depletion equations in the burnup calculation mode are solved using either the Transmutation Trajectory Analysis Method (TTA) or a matrix exponential solution based on the Chebyshev Rational Approximation Method (CRAM). Radioactive decay and fission yield data is read from standard ENDF format data files.
Parallel calculation mode is available using the Message Passing Interface (MPI).
The simulation is limited to neutron transport in self-sustaining systems. External source mode is not available. Memory usage may become a limiting factor in very large burnup calculation problems, especially in the parallel calculation mode. Delta-tracking requires the use of collision flux estimators for calculating integral reaction rate tallies. The poor efficiency of the collision estimator in small and optically thin cells and in regions of low collision density limits the applicability of SERPENT in detector and dosimetry calculations.
The running time depends on the case and the calculation parameters. Two-dimensional infinite-lattice calculations involing 3 million neutron histories usually take some 5 to 20 minutes on a single-processor 3 GHz PC workstation. A test LWR assembly burnup calculation with more than 250 actinide and fission product nuclides, 65 separate depletion zones, 40 burnup steps with predictor-corrector calculation and 3 million neutron histories per transport cycle was completed in 15 hours on the same computer.
Running time (CPU)
BWR lattice calculation
CANDU lattice calculation
Pin-cell burnup calculation
Mixed UOX/MOX PWR lattice calculations
VVER-440 lattice calculation
PWR assembly burnup calculation
A utility script "xsdirconvert.pl" is used for converting ACE format xsdir files to SERPENT directory file format.
The package contains cross section, decay and fission yield libraries based on the JEF-2.2, JEFF-3.1, JEFF-3.1.1, ENDF/B-VI.8 and ENDF/B-VII evaluated nuclear data file.
ZZ-SERPENT117-ACELIB, Continuous-energy Cross-section library in ACE. Radioactive decay and fission yield evaluated files.
Running the "xsdirconvert" utility script in \xsdata folder:
xsdirconvert.pl data.xsdir && data.xsdata
In the input, the data path in the directory file must refer to the absolute, not the relative location of this file.
|Package ID||Status date||Status|
A detailed and constantly updated description and a complete list of documentation and references is found at the SERPENT website - http://montecarlo.vtt.fi
Standard PC, Mac or UNIX workstation. Memory demand may become a limiting factor in burnup calculation. At least 5Gb of RAM is recommended if the code is intended to be used for assembly burnup calculations.
NEA Data Bank tested the code on a linux-PC Pentiun-Xeon 2.6Ghz-8CPUS.
|Package ID||Computer language|
SERPENT has been developed under PC Linux and Mac OS X operating systems. A standard C-compiler (gcc) is needed for building the source code. MPI libraries must be installed to run SERPENT in the parallel calculation mode. The code uses the GD open source graphics library for producing some graphical output. The source code can also be compiled without the MPI and GD functionality.
The output files are basically human-readable, but written in Matlab m-file format to simplify post-processing. To take full advantage of the feature, Matlab, GNU Octave or similar is recommended to be used for reading SERPENT output files.
NEA Data Bank tested the code on PC-linux/Fedora12 using standard GNU C-compiler (gcc). MPI and GD functionality was checked compiling with MPI and GD open source graphics library (www.gd.com).
The SERPENT code is developed at VTT Technical Research Centre of Finland.
Contact information can be found at the SERPENT website - http://montecarlo.vtt.fi
Keywords: Monte Carlo method, burnup calculation, continuous energy, criticality, fuel cycle analysis, fuel depletion, group constant generation, homogenisation, lattice physics, neutron transport.