|Program name||Package id||Status||Status date|
|Package ID||Orig. computer||Test computer|
|NEA-1683/02||Linux-based PC||Linux-based PC|
The European Reactor ANalysis Optimized calculation System, ERANOS, has been developed and validated with the aim of providing a suitable basis for reliable neutronic calculations of current as well as advanced fast reactor cores. It consists of data libraries, deterministic codes and calculation procedures which have been developed within the European Collaboration on Fast Reactors over the past 20 years or so, in order to answer the needs of both industrial and R&D organisations. The whole system counts roughly 250 functions and 3000 subroutines totalling 450000 lines of FORTRAN-77 and ESOPE instructions.
ERANOS is written using the ALOS software which requires only standard FORTRAN compilers and includes advanced programming features. A modular structure was adopted for easier evolution and incorporation of new functionalities. Blocks of data (SETs) can be created or used by the modules themselves or by the user via the LU control language. Programming, and dynamic memory allocation, are performed by means of the ESOPE language. External temporary storage and permanent storage capabilities are provided by the GEMAT and ARCHIVE functions, respectively. ESOPE, LU, GEMAT and ARCHIVE are all part of the ALOS software. This modular structure allows different modules to be linked together in procedures corresponding to recommended calculation routes ranging from fast-running and moderately-accurate "routine" procedures to slow-running but highly-accurate "reference" procedures.
The main contents of the ERANOS-2.3 package are: nuclear data libraries (multigroup cross-sections from the JEF-2.2 evaluated nuclear data file, and other specific data files), a cell and lattice code (ECCO), reactor flux solvers (diffusion, Sn transport, nodal variational transport), a burn-up module, various processing modules (material and neutron balance, breeding gains,…), tools related to perturbation theory and sensitivity analysis, core follow-up modules (connected in the PROJERIX procedures), a fine burn-up analysis subset named MECCYCO (mass balances, activities, decay heat, dose rates). Coupled neutron/gamma calculations are also possible using specific libraries.
Nuclear data libraries:
The ECCO/ERANOS 2.3 code package contains four neutron cross section libraries derived from the JEF-3.1 nuclear data evaluated files. They are:
a 1968-group library (112 nuclides)
a 33-group library (446 nuclides, including pseudo fission products)
a 172-group library (XMAS energy group scheme, 389 nuclides).
These libraries were obtained by processing the JEF-3.1 files with the NJOY and CALENDF codes. Probability tables are included for the main 37 resonant nuclides. The 172-group library (XMAS energy scheme) may be used for thermal spectrum calculations
Other nuclear data (fission yields and energies, decay constants, gamma production and interaction libraries, etc.) are provided in separate files.
The ECCO cell/lattice code in the ERANOS-2.3 package uses the subgroup method to treat resonance self-shielding effects. This method is particularly suitable for calculations involving complex heterogeneous structures. ECCO prepares self-shielded cross sections and matrices by combining a slowing-down treatment in many groups (1968 groups) with the subgroup method within each fine group. The subgroup method takes into account the resonance structure of cross-sections by means of probability tables and by assuming that the neutron source is uniform in lethargy within a given fine group. Flux calculations in heterogeneous geometry are performed by means of the collision probability method.
In the reference calculation scheme, ECCO treats the heterogeneous geometry in fine groups (1968) for the most important nuclides while broad group libraries (33 or 172 groups) are used for the less important nuclides. These calculations are very accurate as the fine group plus sub-group scheme have been set up to represent accurately the reaction thresholds and the resonances in any situation, narrow or wide. One usually distinguishes wide and narrow resonances depending on their width compared to the neutron energy loss by scattering, which is smallest for scattering by heavy nuclides. Translated into lethargy gain, the value for U238 is almost constant and is equal to 0.008. This compares well with the fine group width of 1/120 = 0.0083 and explains the fact that 3/4 of the neutrons having a collision in a given fine group escape from that group. Wide resonances are treated explicitly, the resonances in that case having a width larger than the fine group width. On the other hand, narrow resonances are represented by probability tables, and hence use of the subgroup method can be applied in a very accurate way.
Self-shielded cross sections and matrices are condensed and smeared to provide effective cross sections and matrices in the user required broad group scheme. The neutron balance is preserved in ECCO after condensation and smearing. The effective cross-sections and matrices produced by ECCO are subsequently used in full-core ERANOS calculations.
Many types of geometries are available within the ECCO code: 1D (plane or cylindrical: exact collision probabilities), 2D (rectangular lattice of cylindrical and/or square pins within a square tube, hexagonal lattice of cylindrical pins within an hexagonal wrapper: approximate collision probabilities by Roth and double step methods), 3-D (slab with the sides of the boxes and the tube described explicitly: approximate collision probabilities).
The user can chain several calculation steps so as to produce design (less accurate, faster) or reference (more accurate, slower) calculations, or even to use specific capabilities, according to the needs of a given study.
Three main classes of flux solvers are available. In each case, external sources, up-scattering and adjoint calculations can be addressed. Anisotropic scattering is available for transport calculations.
Finite difference diffusion solvers can be used in any geometry: 1D (plane, cylindrical, spherical), 2D (RZ, R-theta, rectangular lattice XY, hexagonal lattice), and 3D (rectangular lattice XYZ, hexagonal-Z). An efficient solution of the diffusion equation is obtained by using either the successive line over-relaxation method (SLOR), the alternating direction implicit method (ADI) or the strongly implicit method (SIM).
Finite difference Sn transport calculations are performed by the BISTRO code, using a highly efficient convergence algorithm. It can be used in 1D geometry (plane, cylindrical, spherical) and some 2D geometries (RZ, XY). Different algorithms (step, diamond and "-weighted") and a negative flux fix-up capability exist. The inner iterations are accelerated by the DSA method using the source correction scheme.
Calculation of isotopic concentration evolution is possible in the ERANOS system for actinides as well as fission and activation products. The Bateman equations governing the time dependence of concentrations are solved with various techniques related to the type of nuclide (actinide, fission product or activation product). Burn-up can be performed at the full core scale, with suitable “burnable zones” subdividing the fuel and fertile regions, or in elementary cells/lattices.
Besides the modules related to basic data preparation (creation of medium, geometry, and burn-up chain SETs, modelling of operating conditions, etc.), a variety of modules computes and/or extracts specific information from the code output (fluxes, concentrations, etc.). Here is a non-exhaustive sample of such modules:
Traverse extraction and processing
Mass and atom balances by region
Neutron balance by region, reaction and energy group
Integrated reaction rate processing
Equivalence coefficients and Breeding gain
Linear and bilinear integrals (with respect to the forward and possibly adjoint fluxes)
Perturbation theory and sensitivity analysis:
The reactor physicist is often interested in the breakdown of the variation (or of the first order derivative) of integral parameters such as the multiplication factor, reaction rates and more generally ratios of bilinear integrals, nuclide concentrations, reactivity coefficients, etc., with respect to input data such as multigroup cross-sections, decay constants, or initial concentrations. This can be readily obtained through the use of adjoint (standard or generalized) flux calculations and the computation of suitable bilinear integrals. Several modules of ERANOS are available for a modular processing of such problems : calculation of perturbation integrals, of cross-section variations, sensitivity analysis, perturbation analysis.
As a matter of fact, sensitivity analyses, and first-order or exact perturbation analyses can be performed for the multiplication factor (standard perturbation theory, SPT), ratios of linear or bilinear integrals (generalized perturbation theory, GPT), and reactivity effects (equivalent generalized perturbation theory, EGPT). If a dispersion (variance/covariance) matrix is provided, a specific module can be used to perform uncertainty and representativeness calculations.
Specific ERANOS modules and appropriate complex subroutines written in the LU user’s language (the PROJERIX package) are available to perform a detailed core follow-up. Each individual sub-assembly can be followed through its entire life (moves during shuffles and batch reloadings, time spent in internal storage, etc.).
For sub-assemblies burnt in significant flux gradients (e.g. fertile sub-assemblies) a detailed burn-up capability is available through specific ERANOS modules.
Several other features are available:
Coupled neutron/gamma Sn transport calculations (with specific libraries)
Detailed treatment of damage and kerma (with specific libraries)
Detailed burn-up with computation of decay (, , and neutron) activities, energies, energy spectra of emitted particles, dose rates (for simple geometries), decay heat (the MECCYCO package, with specific libraries).
The methods used in the ERANOS modules have been mentioned shortly above. The user can feed and connect these modules in a variety of ways to produce specific analytic sequences. Conditional chaining (IF, FOR, WHILE instructions) is possible with the user’s language. This allows a great deal of flexibility in the use of the code system.
|Package ID||Status date||Status|
J.Y. Doriath et al., “ERANOS1: the Advanced European System of Codes for Reactor Physics”, Proc. Int. Conf. on Mathematical Methods and Supercomputing in Nuclear Applications, Karlsruhe, Germany, 1993
G. Rimpault et al. “The ERANOS Code and Data System for Fast Reactor Neutronic Analyses”, Proc. Int. Conf. PHYSOR 2002, Seoul, Korea, October 7-10, 2002
“The JEF-2.2 Nuclear Data Library”, JEF Report 17, OECD/NEA, April 2000.
G. Rimpault, M.J. Grimstone, “Validation of New Subgroup Algorithms for Resonance Self-Shielding in Heterogeneous Structures”, Proc. Int. Top. Meet. on Advances in Nuclear Engineering Computation and Radiation Shielding, Santa Fe, New Mexico, USA, April 9-13, 1989
C.J. Dean et al., “Production of Fine Group Data for the ECCO Code”, Proc. Int. Conf. PHYSOR 1990, Marseille, France, April 23-27, 1990
G. Rimpault, “Algorithmic Features of the ECCO Cell code for Treating Heterogeneous Fast Reactor Subassemblies”, Proc. Int. Top. Meet. on Reactor Physics and Computations, Portland, Oregon, May 1-5, 1995
G. Palmiotti et al., “Optimized Two-Dimensional Sn Transport (BISTRO)”, Nuclear Science and Engineering 104, 1, 26-33 (1990)
G. Rimpault, P. Smith, T. Newton, “Advanced Methods for Treating Heterogeneity and Streaming Effects in Gas-Cooled Fast reactors”, Proc. Int. Conf. M&C’99, Madrid, Spain, September 27-30, 1999
Lüthi, R. Chawla, G. Rimpault, “Improved Gamma-Heating Calculational Methods for Fast Reactors and their Validation for Plutonium Burning Configurations”, Annals of Nuclear Energy, Vol. 138, Number 3, 233-255 (2001)
ERANOS 2.3 sources and installation procedures are provided for PC under linux 64 bits architectures.
To install the whole ERANOS package, make sure there is enough free disk space. The required amounts are 1600 Mb for installing the cross-section libraries JEFF3.1, 700 Mb for installing the code, and 60 Mb for the code documentation (html and PDF files).
At least 128 Megabytes of Random Access Memory (RAM) are needed to compile the code and run the test cases.
|Package ID||Computer language|
At the CEA, the installation on Linux has only been tested with the following characteristics of linux system:
DEBIAN7 gcc 4.7.2
The portability of the ERANOS 2.3 package on other linux system is not guaranteed.
GFORTRAN 90 and C compilers are required on linux 64 bits gcc4.7.2
TESTED AT THE NEA DATA BANK ON:
- COMPUTER: Dell Precision M6800 with Intel(R) Core (TM) i7-4800MQ CPU at 2.70 GHz x 8, RAM: 16.0 GB
- OPERATING SYSTEM: Debian GNU/Linux 10
- GCC ver. 8.3, gfortran ver. 8.3
The programming language is ESOPE, an extension of FORTRAN 77 specific to CEA, and treated by a built-in pre-compiler. The main objective of this extension is to make the management of the data used by the various subroutines easier. The data structuration is made by using new entities called SEGMENTs. A segment is a collection of simple variables and/or arrays, addressed by a POINTER. Segments can be connected with each other by pointers in such a way as to produce tree-like or graph-like structures. The basic data structures exchanged by the ERANOS modules are SETs (for Structured ERANOS Tree), which are arborescent structures made of connected segments, and related to basic logical entities (e.g. geometry, concentrations, fluxes, etc.). All these structures are manipulated by a memory manager called GEMAT (creation, destruction, updating, swaps between RAM and disk, etc.).
ERANOS modules can be chained by means of the LU user’s language. LU capabilities include the manipulation of variables/arrays of different types, the use of logical, arithmetical and character operators/functions, and of a variety of special functions. Conditional structures of various types can be used (e.g. IF, FOR; WHILE), and LU subroutines, called LU procedures, can be written, stored and used. A specific data manager, called ARCHIVE, is used for data structures such as SETs and procedures. A database manager is available, connected to the LU language, producing and managing structures (various operators available). The execution of LU scripts is made by a built-in interpreter.
Keywords: burnup, cell calculation, core follow-up, diffusion equations, discrete ordinate method, fast reactors, fine group, lattice, neutronics, perturbation theory, sensitivity, spherical harmonics, subgroup.