Computer Programs

NAME, COMPUTER, PROBLEM, SOLUTION, RESTRICTIONS, CPU, AUXILIARIES, STATUS, REFERENCES, REQUIREMENTS, LANGUAGE, OPERATING SYSTEM, OTHER RESTRICTIONS, AUTHOR, MATERIAL, CATEGORIES

[ top ]

[ top ]

To submit a request, click below on the link of the version you wish to order. Rules for end-users are
available here.

Program name | Package id | Status | Status date |
---|---|---|---|

SERPENT 1.1.7 | NEA-1840/02 | Tested | 16-JUN-2010 |

Machines used:

Package ID | Orig. computer | Test computer |
---|---|---|

NEA-1840/02 | Linux-based PC,Macintosh,UNIX W.S. | Linux-based PC |

[ top ]

3. DESCRIPTION OF PROGRAM OR FUNCTION

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.

A complete description of the project is found at the SERPENT website - http://montecarlo.vtt.fi

NEA-1840/02

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

[ top ]

4. METHODS

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).

[ top ]

5. RESTRICTIONS ON THE COMPLEXITY OF THE PROBLEM

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.

[ top ]

6. TYPICAL RUNNING TIME

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.

Problem description | case | Running time (CPU) |

BWR lattice calculation | bwr | 2.60 minutes |

CANDU lattice calculation | candu | 3.29 minutes |

HTGR_BURNUP | pc | 672.99 minutes |

Transport calculation: | Pebble | 1362.33 minutes |

Pin-cell burnup calculation | endfb68 | 42.08 minutes |

Mixed UOX/MOX PWR lattice calculations | pwrmox | 1.89 minutes |

VVER-440 lattice calculation | vver | 2.32 minutes |

PWR assembly burnup calculation | pwr | 657.30 minutes |

[ top ]

8. RELATED OR AUXILIARY PROGRAMS

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.

NEA-1854 ZZ-SERPENT117-ACELIB:

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.

[ top ]

10. REFERENCES

A detailed and constantly updated description and a complete list of documentation and references is found at the SERPENT website - http://montecarlo.vtt.fi

NEA-1840/02, included references:

Documentation included in the distribution package:- Jaakko Leppanen:

PSG2 / Serpent - a Continuous-energy Monte Carlo Reactor Physics Burnup

Calculation Code

Methodology - User's Manual - Validation Report (November 6, 2009)

- PSG2 / Serpent - a Quick Installation Guide

- Serpent 1.1.7 cross section library based on ENDF/B-VI.8

- Serpent 1.1.7 cross section library based on ENDF/B-VII

- Serpent 1.1.7 cross section library based on JEF-2.2

- Serpent 1.1.7 cross section library based on JEFF-3.1

- Serpent 1.1.7 cross section library based on JEFF-3.1.1

- Cross section libraries for Serpent 1.1.7, Documentation (October 27, 2009)

- Serpent 1.1.0 thermal scattering libraries based on JEF-2.2, JEFF3.1,

ENDF/B-VI.8 and ENDF/B-VII

[ top ]

11. HARDWARE REQUIREMENTS

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-1840/02

NEA Data Bank tested the code on a linux-PC Pentiun-Xeon 2.6Ghz-8CPUS.

[ top ]

13. SOFTWARE REQUIREMENTS

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-1840/02

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).

[ top ]

[ top ]

15. NAME AND ESTABLISHMENT OF AUTHORS

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

[ top ]

NEA-1840/02

Serpent 1.1.7 source codexsdirconvert.pl utility script

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 files

Electronic documentation including User's Manual, Installation Guide and

library documentation

Example cases

[ top ]

- B. Spectrum Calculations, Generation of Group Constants and Cell Problems
- C. Static Design Studies
- D. Depletion, Fuel Management, Cost Analysis, and Power Plant Economics

Keywords: Monte Carlo method, burnup calculation, continuous energy, criticality, fuel cycle analysis, fuel depletion, group constant generation, homogenisation, lattice physics, neutron transport.