# Difference between revisions of "Input syntax manual"

Serpent has no interactive user interface. All communication between the code and the user is handled through one or several input files and various output files.

The format of the input file is unrestricted. The file consists of white-space (space, tab or newline) separated words, containing alphanumeric characters(’a-z’, ’A-Z’, ’0-9’, ’.’, ’-’). If special characters or white spaces need to be used within the word (file names, etc.), the entire string must be enclosed within quotes.

The input file is divided into separate data blocks, denoted as cards. The file is processed one card at a time and there are no restrictions regarding the order in which the cards should be organized. The input cards are listed below. Additional options are followed by key word "set". All input cards and options are case-insensitive (note to developers: make it so). Each input card is delimited by the beginning of the next card. It is hence important that none of the parameter strings used within the card coincide with the card identifiers.

The percent-sign ('%') is used to define a comment line. Anything from this character to the end of the line is omitted when the input file is read. Unlike Serpent 1, hashtag ('#') can no longer be used to mark comment lines in Serpent 2 input. The alternative is to use C-style comment sections beginning with "/*" and ending with "*/". Everything between these delimiters is omitted, regardless of the number of newlines or special characters.

This page will contain the whole input syntax of Serpent 2, with links to more detailed descriptions where needed. For reference see also the Serpent 1 input manual[1].

## Input cards

NOTE: Serpent command words are in boldface and input parameters entered by the user in CAPITAL ITALIC. Optional input parameters are enclosed in [ square brackets ], and when the number of values is not fixed, the remaining values are marked with three dots (...).

### branch (branch definition)

branch NAME [ repm MAT1 MAT2 ]
[ repu UNI1 UNI2 ]
[ stp MAT DENS TEMP THERM1 SABL1 SABH1 THERM2 SABL2 SABH2 ... ]
[ tra TGT TRANS ]
[ xenon OPT ]
[ samarium OPT ]
[ norm NSF ]
[ gcu UNI2 ]
[ reptrc FILE1 FILE2 ]
[ var VNAME VAL ]


Defines the variations invoked for a branch in the automated burnup sequence. Input values:

 NAME : branch name MAT1 : name of the replaced material MAT2 : name of the replacing material UNI1 : name of the replaced universe UNI2 : name of the replacing universe MAT : name of the material for which density and temperature are adjusted DENS : material density after adjustment (positive entries for atomic, negative entries for mass densities) TEMP : material temperature after adjustment, or -1 if no adjustment in temperature THERMn : nth thermal scattering data associated with the material SABLn : name of the nth S(α, β) library for temperature below the given value SABHn : name of the nth S(α, β) library for temperature above the given value TGT : target universe, surface or cell TRANS : name of the applied transformation OPT : option for setting poison concentrations (0 = set to zero, 1 = use values from restart file) NSF : normalization scaling factor FILE1 : file path of the replaced transport correction curve data FILE2 : file path of the replacing transport correction curve data VNAME : variable name VAL : variable value

Notes:

• The branch name identifies the branch in the coefficient matrix of the coef card
• The input parameters consist of a number variations, which are invoked when the branch is applied. A single branch card may inclued one or several variations.
• The repm variation can be used to replace one material with another, for example, to change coolant boron concentration.
• The material replacement works as if MAT1 were created using the mat or mix card of MAT2.
• The name of the material present in the geometry will still be MAT1 after the replacement, but the material specification (composition, density, tmp, moder, rgb, etc.) will correspond to MAT2.
• This means that all other input-cards that are linked to a specific material name such as det dm, src sm, set trc and set iter nuc can be linked to the original material (MAT1) and they will automatically apply to whatever material MAT2 replaces MAT1 for the branch calculation.
• The repu variation can be used to replace one universe with another, for example, to replace empty control rod guide tubes with rodded tubes for control rod insertion in 2D geometries.
• The name of the universe present in the geometry will still be UNI1 after the replacement, but the universe contents will correspond to UNI2.
• This means that all other input-cards that are linked to a specific universe name such as det du and src su can be linked to the original universe (UNI1) and they will automatically apply to whatever universe UNI2 replaces UNI1 for the branch calculation.
• The stp variation can be used to change material density and temperature. The adjustment is made using the built-in Doppler-broadening preprocessor routine and tabular interpolation for S(α, β) thermal scattering data.
• The last three parameters of the stp entry are provided only if the material has thermal scattering libraries attached to it (see the therm card).
• The tra variation can be used to move or rotate different parts of the geometry, for example, to adjust the position of control rods in 3D geometries. The name of the transformation refers to the unit (universe, cell or surface) entry in the trans card.
• The xenon and samarium options can be set to enforce the concentrations of fission product poisons Xe-135 and Sm-149 to zero. By default the concentrations are read from the restart file.
• The norm variation can be used to change the normalization. The adjustment is made applying the parameter NSF as a multiplicative scaling factor to the given normalization.
• The gcu variation can be used to replace the universe for group constant generation. This variation is limited to a single-valued GCU-list.
• The reptrc variation can be used to replace a transport correction file with another.
• Variables can be used to pass information into output file, which may be convenient for the post-processing of the data.
• The branch card is used together with the coef card.
• For more information, see detailed description on the automated burnup sequence.
• The replaced material MAT1 of repm variation is also replaced inside mixtures. This means one can not replace a material with a mixture defined with mix card containing the replaced material (for example replacing pure water defined with mat card by a mixture of boron and water defined with a mix card containing the same pure water material).
• The replacing material MAT2 of repm variation can not be included in geometry using other cards than the branch card with the repm variation, version 2.1.30.
• The "sum" option to define the material density as the sum of the constituent nuclide densities is not supported from version 2.2.0 and on.

### casematrix (casematrix definition)

casematrix CASE_NAME
NHIS [ HIS_BR1 HIS_BR2 ... HIS_BRNHIS ]
NBU  [ BU1 BU2 ... BUNBU ]
NBR1 [ BR1,1 BR1,2 ... BR1,NBR1 ]
NBR2 [ BR2,1 BR2,2 ... BR1,NBR2 ]
...


Defines the casematrix for the automated burnup sequence. Input values:

 CASE_NAME : name of the casematrix NHIS : number of history variations HIS_BRk : name of the kth history variation branch NBU : number of burnup points BUn : burnup steps at which the momentary variation branches are invoked NBRm : number branches in the mth dimension of the burnup matrix BRm,i : name of the ith branch in the mth dimension

Notes:

• The casematrix card performs multiple depletions with NHIS (different) historical variations and performs restarts similar as the coef input card.
• The casematrix card creates a multi-dimensional coefficient matrix (of size NBR1 × NBR2 × NBR3 × ... ). The automated burnup sequence performs a restart for each of the listed burnup points, and loops over the branch combinations defined by the coefficient matrix. This is repeated for each different depletion history.
• Positive values in the burnup vector are interpreted as (MWd/kgU), negative values are interpreted as time steps in days.
• The casematrix card is used together with the branch card and -casematrix running option.
• Multiple casematrix cards can be given in a single input file.

### cell (cell definition)

cell NAME UNI0 MAT [ SURF1 SURF2 ... ]


Defines a material cell. Input values:

 NAME : cell name UNI0 : universe where the cell belongs to MAT : material that fills the cell SURFn : surface list
cell NAME UNI0 fill UNI1 [ SURF1 SURF2 ... ]


Defines a filled cell. Input values:

 NAME : cell name UNI0 : universe where the cell belongs to UNI1 : universe that fills the cell SURFn : surface list
cell NAME UNI0 outside [ SURF1 SURF2 ... ]


Defines an outside cell. Input values:

 NAME : cell name UNI0 : universe where the cell belongs to SURFn : surface list

Notes:

• There are three types of cells: material cells, filled cells and outside cells. Filled cells are identified by providing the key word fill, followed by the universe filling the cell. If the key word is missing, the third entry is interpreted as the material filling the cell. Outside cells are identified by replacing the material name with key word outside.
• Cells defined without surfaces are treated as infinite, from version 2.1.32 on.
• Void cells can be defined by setting the material name to "void"
• When the geometry is set up, the root universe must always be defined. By default the root universe is named "0", and it can be changed with the set root option.
• Outside cells are used to define the part of the geometry that does not belong to the model. When the particle enters an outside cell, boundary conditions are applied. It is important that the geometry model is non-re-entrant (convex) when vacuum boundary conditions are used. Delta-tracking might miss the boundary conditions in a re-entrant (concave) outer surface.
• Outside cells are allowed only in the root universe. It is important that all space outside the model is defined.
• The surface list defines the boundaries of the cell by listing the surface names (as provided in the surface card), together with the operator identifiers (nothing for intersection, ":" for union, "-" for complement and "#" for cell complement).
• Universes are implicitly declared for example by using the UNI0 key words on cell cards as there is no explicit universe input card.
• For more information, see detailed description on the universe-based geometry type in Serpent.

### coef (coefficient matrix definition)

coef NBU [ BU1 BU2 ... ]
[ NBR1 BR1,1 BR1,2 ... ]
[ NBR2 BR2,1 BR2,2 ... ]
...


Defines the coefficient matrix for the automated burnup sequence. Input values:

 NBU : number of burnup points BUn : burnup steps at which the branches are invoked NBRm : number branches in the mth dimension of the burnup matrix BRm,i : name of the ith branch in the mth dimension

Notes:

• The coef card creates a multi-dimensional coefficient matrix (of size NBR1 × NBR2 × NBR3 × ... ). The automated burnup sequence performs a restart for each of the listed burnup points, and loops over the branch combinations defined by the coefficient matrix.
• Positive values in the burnup vector are interpreted as (MWd/kgU), negative values are interpreted as time steps in days.
• The coef card is used together with the branch card.
• For multiple historical variations or historical conditions defined using a branch card, see the casematrix card.

### datamesh (general data mesh definition)

The datamesh card allows the user to define various meshes that can be used for spatial discretization e.g. in detectors.

datamesh NAME 1 USELC NX XMIN XMAX NY YMIN YMAX NZ ZMIN ZMAX


Defines a regular Cartesian mesh that can be linked to detectors, interfaces etc.

 NAME : mesh name USELC : use lowest level coordinates (1/yes) instead of global coordinates (0/no) for the mesh search NX : number of cells in the x direction XMIN : mesh lower x boundary XMAX : mesh higher x boundary NY : number of cells in the y direction YMIN : mesh lower y boundary YMAX : mesh higher y boundary NZ : number of cells in the z direction ZMIN : mesh lower z boundary ZMAX : mesh higher z boundary
datamesh NAME 2 USELC NR RMIN RMAX NPHI


Defines a regular 2D cylindrical mesh that can be linked to detectors, interfaces etc.

 NAME : mesh name USELC : use lowest level coordinates (1/yes) instead of global coordinates (0/no) for the mesh search NR : number of cells in the radial direction RMIN : mesh inner radial boundary RMAX : mesh outer radial boundary NPHI : number of cells in the polar angle direction
X-type hexagonal mesh horizontal indexing example for NX = NY = 3.
datamesh NAME 4 USELC X0 Y0 PITCH ZMIN ZMAX NX NY NZ


Defines a regular x-type hexagonal mesh that can be linked to detectors, interfaces etc.

 NAME : mesh name USELC : use lowest level coordinates (1/yes) instead of global coordinates (0/no) for the mesh search X0 : mesh horizontal origin x-coordinate Y0 : mesh horizontal origin y-coordinate PITCH : mesh horizontal pitch (equal to cell flat-to-flat width) ZMIN : mesh lower z boundary ZMAX : mesh higher z boundary NX : number of cells in the x direction NY : number of cells in the y direction NZ : number of cells in the z direction
Y-type hexagonal mesh horizontal indexing example for NX = NY = 3.
datamesh NAME 5 USELC X0 Y0 PITCH ZMIN ZMAX NX NY NZ


Defines a regular y-type hexagonal mesh that can be linked to detectors, interfaces etc.

 NAME : mesh name USELC : use lowest level coordinates (1/yes) instead of global coordinates (0/no) for the mesh search X0 : mesh horizontal origin x-coordinate Y0 : mesh horizontal origin y-coordinate PITCH : mesh horizontal pitch (equal to cell flat-to-flat width) ZMIN : mesh lower z boundary ZMAX : mesh higher z boundary NX : number of cells in the x direction NY : number of cells in the y direction NZ : number of cells in the z direction
datamesh NAME 6 USELC NX NY NZ  X1 ... XNX+1  Y1 ... YNY+1  Z1 ... ZNZ+1


Defines an irregular Cartesian mesh that can be linked to detectors, interfaces etc.

 NAME : mesh name USELC : use lowest level coordinates (1/yes) instead of global coordinates (0/no) for the mesh search NX : number of cells in the x direction NY : number of cells in the y direction NZ : number of cells in the z direction Xi : NX + 1 mesh boundaries in the x direction Yi : NY + 1 mesh boundaries in the y direction Zi : NZ + 1 mesh boundaries in the z direction
datamesh NAME 8 USELC NR NPHI  R1 ... RNR+1


Defines a radially irregular 2D cylindrical mesh that can be linked to detectors, interfaces etc.

 NAME : mesh name USELC : use lowest level coordinates (1/yes) instead of global coordinates (0/no) for the mesh search NR : number of cells in the radial direction NPHI : number of cells in the polar angle direction Ri : NR + 1 mesh boundaries in the r direction
datamesh NAME 9 NLEVEL  MESH1 ... MESHNLEVEL


Defines a regular nested mesh that can be linked to detectors, interfaces etc.

 NAME : mesh name USELC : use lowest level coordinates (1/yes) instead of global coordinates (0/no) for the mesh search NLEVEL : number of nested levels in this mesh MESHi : sub mesh to use at level i

Notes:

• When Serpent makes the mesh search for a specific collision point it will save the collision mesh cell temporarily so that the cell search is conducted at most once even when scoring multiple estimators using the same mesh.

### dep (depletion history)

dep STYPE [ STEP1 STEP2 ... ]


Defines depletion history with steps and activates depletion calculation mode. Input values:

 STYPE : step type STEPn : depletion step list

The possible step types are:

Type Description Quantity Unit
bustep Depletion step Burnup interval MWd/kgHM
butot Depletion step Cumulative burnup MWd/kgHM
daystep Depletion step Time interval d
daytot Depletion step Cumulative time d
decstep Decay step Time interval d
dectot Decay step Cumulative time d
actstep Activation step Time interval d
acttot Activation step Cumulative time d

Notes:

• Transport cycle is omitted with the decstep and dectot options.
• Transport cycle is run only once with the actstep and acttot options.
dep pro REP_NAME STYPE [ STEP1 STEP2 ... ]


Links a reprocessor to the depletion calculation. Input values:

 REP_NAME : reprocessor name STYPE : step type STEPn : depletion step list

Notes:

• The reprocessing system or reprocessor controller is defined using the rep card.
dep bra PTR_BRANCH


### det (detector definition)

det NAME [ PART ]
[ dr MT MAT ]
[ dv VOL ]
[ dc CELL ]
[ du UNI ]
[ dm MAT ]
[ dl LAT ]
[ dx XMIN XMAX NX ]
[ dy YMIN YMAX NY ]
[ dz ZMIN ZMAX NZ ]
[ dn TYPE MIN1 MAX1 N1 MIN2 MAX2 N2 MIN3 MAX3 N3 ] 1/2 [ dn TYPE N1 N2 N3 LIM11...LIM1N+1 LIM21...LIM2N+1 LIM31...LIM3N+1 ] 3/4
[ dh TYPE X0 Y0 PITCH N1 N2 ZMIN ZMAX NZ ]
[ dumsh UNI NC CELL0 BIN0 CELL1 BIN1 ... ]
[ de EGRID ]
[ di TBIN ]
[ ds SURF DIR ]
[ dir COSX COSY COSZ ]
[ dtl SURF ]
[ df FILE FRACTION ]
[ dt TYPE PARAM ]
[ dhis OPT ]
[ dfl FLAG OPT ]
[ da MAT FLX ]
[ dfet TYPE PARAMS ]
[ dphb PHB ]
[ dmesh MESH ]


Detector definition. The first parameter:

 PART : particle type (n = neutron, p = photon)

is optional in single particle simulations. The remaining parameters are defined by separate key words followed by the input values.

Detector response (dr):

 MT : response number MAT : material name or "void" if the material at the collision point is used

Notes:

• If the detector is assigned with multiple responses, the results are divided correspondingly into separate bins.
• The response numbers are ENDF reaction MT's and special reaction types.
• Positive response numbers are associated with microscopic cross sections and the result is independent of material density. Materials for microscopic cross sections must consist of a single nuclide.
• Microscopic reactions to ground and isomeric states can be calculated by adding "g" or "m" at the end of the reaction number (e.g. 102g and 102m refer to radiative capture to ground and isomeric states, respectively). This option is available only for nuclides with branching ratios.
• Negative response numbers are associated with macroscopic cross sections and special types, and the result is multiplied by material density.
• The response material in the dr entry must not be confused with the material in the dm entry. The former defines the material for the response function, while the latter determines the volume of integration.
• By default, Serpent allows a detector to have at most 10,000,000 bins.

Detector volume (dv):

 VOL : volume in cm3 (3D geometry) or cross-sectional area in cm2 (2D geometry)

Notes:

• The results are divided by detector volume, which is by default set to 1.

Detector cell (dc):

 CELL : cell name where the detector is scored

Notes:

• If multiple detector cells are defined, the results are correspondingly divided into multiple bins.

Detector universe (du):

 UNI : universe name where the detector is scored

Notes:

• If multiple detector universes are defined, the results are correspondingly divided into multiple bins.

Detector material (dm):

 MAT : material name where the detector is scored

Notes:

• If multiple detector materials are defined, the results are correspondingly divided into multiple bins.
• The material entry defines the volume of integration, which must not be confused with the response material in the dr entry.

Detector lattice (dl):

 LAT : lattice name where the detector is scored

Notes:

• The lattice detector automatically divides the results into multiple bins corresponding to the lattice cells.

Cartesian mesh detector (dx, dy and dz):

 XMIN : minimum x-coordinate of the detector mesh XMAX : maximum x-coordinate of the detector mesh NX : number of x-bins YMIN : minimum y-coordinate of the detector mesh YMAX : maximum y-coordinate of the detector mesh NY : number of y-bins ZMIN : minimum z-coordinate of the detector mesh ZMAX : maximum z-coordinate of the detector mesh NZ : number of z-bins

Notes:

• The mesh detectors can be used to sub-divide the results into multiple spatial bins. For a Cartesian mesh the division is provided with separate entries in x-, y- and z- locations.

Curvilinear and unevenly-spaced mesh detector (dn):

 TYPE : Type of curvilinear mesh - 1 = cylindrical (dimensions r, θ, z), 2 = spherical (dimensions r, θ, φ), 3 = unevenly-spaced orthogonal (dimensions x, y, z), 4 = unevenly-spaced cylindrical (dimensions r, θ, z) MINn : Minimum value of coordinate n for the mesh division (lengths in cm, angles in degrees). MAXn : Maximum value of coordinate n for the mesh division (lengths in cm, angles in degrees). Nn : Number of bins in the n coordinate direction (the radial division will be equal r, not equal volume, in evenly-spaced types 1/2). LIMnm : Mesh boundary m in the n coordinate direction (lengths in cm, angles in degrees).

Notes:

• All parameters must be provided, even for one- or two-dimensional curvilinear meshes.
• The results are not divided by cell volume (difference to MCNP mesh tally).
• By default, the curvilinear mesh detectors use the global (universe 0) coordinate system for scoring. If the TYPE parameter is given as a negative value (e.g. -1) the lowest level coordinates are used instead.
• The syntax for curvilinear (evenly-spaced) mesh detectors (1/-1, 2/-2) differs from the unevenly-spaced mesh ones (3/-3, 4/-4).

Hexagonal mesh detector (dh):

 TYPE : Type of hexagonal mesh (2 = flat face perpendicular to x-axis, 3 = flat face perpendicular to y-axis) X0, Y0 : coordinates of mesh center PITCH : mesh pitch N1, N1 : mesh size ZMIN : minimum z-coordinate of the detector mesh ZMAX : maximum z-coordinate of the detector mesh NZ : number of z-bins

Notes:

• All parameters must be provided, even for a two-dimensional hexagonal meshes.

Unstructured mesh detector (dumsh):

 UNI : universe of the unstructured mesh based geometry NC : number of mesh cell bins included in the output CELLn, BINn : cell-bin index pairs defining the mapping

Notes:

• The polyhedral cells in unstructured mesh based geometries are indexed.
• This detector option allows collecting results from the cells into an arbitrary number of bins. One or multiple cells can be mapped into a single bin.

Detector energy binning (de):

 EGRID : energy grid name

Notes:

• The results are divided into multiple energy bins based on the grid structure.
• Energy grid structures are defined using the ene card. Pre-defined energy group structures can not be directly used in detectors, they have to be redefined using for example the fourth type of ene card.
• The energy boundaries of photon photon pulse-height and photon heat analog detectors are solely defined by the associated energy grid and not limited by the unionized energy grid defining the model. That means that analog detectors might collect scores below the physics model minimum energy bound, without a cut-off, if the energy grid sets it.

Detector time binning (di):

 TBIN : time bin structure name

Notes:

• The results are divided into multiple time bins.
• Time bin structures are defined using the tme card.
• Time bin division may require adjusting the average collision distance (set cfe option) to achieve sufficient statistical accuracy.

Surface current / flux detector (ds):

 SURF : surface name DIR : direction with respect to surface normal (-2 = flux, -1 = inward current, 1 = outward current, 0 = net current)

Notes:

• With this option the detector calculates the particle flux over or current through a given surface.
• The surface flux mode is invoked by setting the direction parameter to -2, otherwise this parameter defines the current direction with respect to surface normal.
• Responses are not allowed with current detectors, and with flux detectors, the material name at the collision point has to be specified ("void" is not allowed).
• The use of single-bin mesh and cell detectors is allowed to define the integration surface of the detector, from version 2.1.32 on.
• The surface is treated separate from the geometry, and its position is always relative to the origin of the root universe. This is the case even if the surface is part of the geometry in another universe.
• The results are integrated over the surface area (other detectors integrate over volume).

Detector direction vector (dir):

 COSY : component of the direction vector parallel to x-axis COSY : component of the direction vector parallel to y-axis COSZ : component of the direction vector parallel to z-axis

Notes:

• This option multiplies the detector scores with the scalar product between the particle direction of motion and the given direction vector.

Super-imposed track-length detector (dtl):

 SURF : surface inside which the detector is scored

Notes:

• This option can be used to apply the track-length estimator for calculating reaction rates inside regions defined by a single surface (sphere, cylinder, cuboid, etc.)
• The purpose of the track-length detector is to provide better statistics for special applications (activation wire measurements, etc.).
• The surface is treated separate from the geometry, and its position is always relative to the origin of the root universe. This is the case even if the surface is part of the geometry in another universe.

Detector file (df):

 FILE : file name where the scored points are written FRAC : fraction of recorded scores and ascii/binary option (positive value = ascii, negative value = binary)

Notes:

• This option can be used to write the scored points in a file.
• When used with the surface current detector this option can provide surface source distributions for other calculations.
• The fraction parameters gives the probability that the score is written in the file and it can be used to reduce the file size in long simulations.
• Source files can be read using the sf entry of source cards.

Special types (dt):

 TYPE : special type (see below) PARAM : additional parameters

The types are:

 -1 = cumulative spectrum -2 = division by energy width -3 = division by lethargy width -4 = sum over cell or material bins -5 = importance weighting -6 = sum over number of scores 2 = multiply result with another detector defined by PARAM 3 = divide result with another detector defined by PARAM 4 = multiply response function by (local) temperature

Notes:

• Types -1, -2 and -3 are used with energy binning.
• Type -4 can be used to calculate sum over multiple cell or material bins defined using the dc and dm options. By default separate bins are used for each entry.
• Type 3 can be used to calculate flux-weighted averages (microscopic and macroscopic cross sections, etc.).
• When the results are multiplied or divided by another detector, the number of bins must be compatible (single value or matching number of bins).

History collection option (dhis):

 OPT : option to collect histories (0 = no, 1 = yes)

Notes:

• When this option is set, the batch-wise results are printed in the history output file, [input]_stats.m.
• Note to developers: statistical tests should be documented

Detector flagging (dfl):

 FLAG : flag number (between 1 and 64) OPT : flagging option (0 = reset if scored, 1 = set if scored, -2/2 score if set -3/3 score if not set)

Notes:

• Detector flagging allows limiting detector scores to histories which have already contributed to another score.
• The first two options reset or set the flag if the detector is scored, respectively. The remaining options test if the flag is set and score the detector accordingly. Positive values apply OR-type logic (detector is scored if any of the associated flags is set/unset) and negative values AND-type logic (detector is scored if all the associated flags are set/unset).

Activation detector (da):

 MAT : activated material FLX : flux applied to activation

Notes:

• Activation detector allows performing activation calculation for materials that are not part of the geometry. The flux spectrum applied to neutron irradiation is taken from the detector scores. The absolute flux level can be set using the FLX parameter. If this parameter is set to -1, also the flux magnitude is taken from the detector scores.
• Requires neutron transport simulation and burnup mode. The material provided with the entry must be burnable, and cannot part of the actual geometry. Volume of the material must be defined using the dv parameter.
• Since the activated material is not part of the physical geometry, this option should be applied only to small samples and other activation calculations in which the isotopic changes do not significantly affect the neutronics.

Functional Expansion Tally detector (dfet):

 TYPE : functional expansion type PARAMS : other options, specific to each functional expansion type TYPE
Geometry PARAMS TYPE Description Functional Series Indexing
Cartesian XMIN XMAX XORDER YMIN YMAX YORDER ZMIN ZMAX ZORDER 1 Legendre only $\psi(\xi)_n = P_i(\xi_x) P_j(\xi_y) P_k(\xi_z)$ $n = k + J * \left( i * I + j\right)$
Cylindrical RMAX RORDER HMIN HMAX HORDER HORIENTATION 2 .. .. ..

Notes:

• "-1" can be supplied as an ORDER PARAM to use the built-in default values
• It is not recommended to configure a single FET detector to span multiple different material regions—use individual detectors for each region instead
• Specifics of this implementation:
• The FETs are based on nonseparable expansions, i.e. fully-convolved cross terms are included
• For example, the Legendre-based Cartesian FET uses $\psi(\xi)_n = P_i(\xi_x) P_j(\xi_y) P_k(\xi_z)$ with $n$ as a linear indexer of $\{i,j,k\}$
• Due to the properties of orthogonality, these cross terms can be neglected in post-analyses if only separable terms are desired
• A generalization of the Euler formulas for any orthogonal functional series is used
• The generated FET coefficients $a_n$ already have all contributions from the orthonormalization constant pre-included, i.e. $c_n$ from $\frac{1}{c_n} = \lVert \psi_n \rVert^2 = \int_\Gamma \psi_n^2 \omega_n$
• Thus, an FET can be simply reconstructed/sampled from the standard functional series as: $F(\xi) = \sum a_n \psi_n(\xi) \omega_n(\xi)$
• From version 2.2.0 and on, FET-based detectors follow the standard normalization set in the calculation. The volume standards for detectors are set as default value for FET-based detectors, meaning detectors are not divided by the physical volume (allowing the use of volume detector dv).
• In version 2.2.0, the relative error evaluation associated with FET-based detectors has been revisited.

 PHB : user-defined (Gaussian) energy broadening for pulse-height detector function name

Notes:

• User-defined Gaussian energy broadening functions for pulse height detector are defined using the phb card.

Detector spatial integration domain and binning based on a generic data mesh (dmesh):

 MESH : name of the datamesh to use for defining the spatial integration domain and binning for the detector scores

Notes:

• Output mesh index will be flattened (one dimensional).

### div (divisor definition)

div MAT [ sep LVL ]
[ subx NX XMIN XMAX ] equal volume [ subr -NX X1 R2 ... XN+1 ] manually spaced limits
[ suby NY YMIN YMAX ] equal volume [ suby -NY Y1 Y2 ... YN+1 ] manually spaced limits
[ subz NZ ZMIN ZMAX ] equal volume [ subz -NZ Z1 Z2 ... ZN+1 ] manually spaced limits
[ subr NR RMIN RMAX ] equal volume [ subr -NR R1 R2 ... RN+1 ] manually spaced limits
[ subs NS S0 ]       equal volume [ subs -NS S1 S2 ... SN+1 ] manually spaced limits
[ lims FLAG ]


Divides a material into a number of sub-zones. Input values:

 MAT : name of the divided material LVL : geometry level at which the cell-wise division takes place (0 = no division, 1 = last level, 2 = 2nd last level, etc.) NX : number of x-zones XMIN : minimum x-coordinate (cm) XMAX : maximum x-coordinate (cm) Xn : x-coordinate boundaries (cm) NY : number of y-zones YMIN : minimum y-coordinate (cm) YMAX : maximum y-coordinate (cm) Yn : y-coordinate boundaries (cm) NZ : number of z-zones ZMIN : minimum z-coordinate (cm) ZMAX : maximum z-coordinate (cm) Zn : z-coordinate boundaries (cm) NR : number of radial zones RMIN : minimum radial coordinate (cm) RMAX : maximum radial coordinate (cm) Rn : radial coordinate boundaries (cm) NS : number of angular sectors S0 : zero position of angular division (degrees) Sn : angular-sector boundaries (degrees) FLAG : flag for mapping regions outside (material) limits to divide material - on (1/yes) or off (0/no)

Notes:

• The automated divisor feature can be used to sub-divide burnable materials into depletion zones, but the use is not limited to burnup mode.
• The spatial sub-division is based on either Cartesian or cylindrical mesh.
• Volumes of the divided materials must be set manually (see detailed description on the definition of material volumes).
• Using automated instead of manual depletion zone division saves memory, which may become significant in very large burnup calculation problems (see detailed description on memory usage).
• For more information see detailed description on automated depletion zone division.
• The usage of LVL is explained on page automated depletion zone division.
• The feature of mapping regions outside limits is set by default OFF.
• The manually-spaced angular-sector boundaries Sn should cover the full/360 degrees angular space.
• If a material is not divided, all occurrences of it are treated as a single depletion zone. For example, if there are multiple fuel pins with same fuel material type, and no div card is present, all pins are depleted as a single pin.

### dtrans (detector mesh transformation)

See transformations.

### ene (energy grid definition)

ene NAME 1 E0 E1 ...

ene NAME 2 N Emin Emax

ene NAME 3 N Emin Emax

ene NAME 4 GRID


Defines an energy grid structure. Input values:

 NAME : energy grid name Ei : bin boundaries (type 1) N : number of equi-width bins (types 2 and 3) Emin : minimum energy (types 2 and 3) Emax : maximum energy (types 2 and 3) GRID : name of the pre-defined grid (type 4)

Notes:

### ftrans (fill transformation)

See transformations.

### fun (function definition)

fun NAME TYPE [ ... ]


Defines a function that can be used with detector responses. Input values:

 NAME : function name TYPE : function type (currently only supported type is 1 = point-wise tabular data)

The syntax for type 1 is:

fun NAME 1 INTT X1 F1 X2 F2 ...


where:

 INTT : is the interpolation type (1 = histogram, 2 = lin-lin, 3 = lin-log, 4 = log-lin, 5 = log-log) Xi, Fi : are the tabulated variable-value pairs

Notes:

• The defined function is linked to detector response using response number -100 (syntax: dr -100 NAME).
• The defined function currently is only supported as a flux-based function, aka, flux multiplier.

### hisv (history variation matrix definition)

hisv [ BU1 NBR1 BR1,1 BR1,2 ... BR1,NBR1 ]
[ BU2 NBR2 BR2,1 BR2,2 ... BR2,NBR2 ]
...


Defines the history variation matrix for the automated burnup sequence. Input values:

 BUn : burnup steps at which the branches are invoked NBRn : number branches in the n-th burnup step BRn,i : name of the i-th branch in the n-th burnup step

Notes:

• The automated burnup sequence defined by the hisv card follows the same principle as the coef input card.
• The hisv card performs multiple depletions within a single depletion calculation following the historical variation sequence, performing a restart at each of the listed burnup points, where it applies the variations defined in the listed branches for the given burnup point.
• Positive values in the burnup vector are interpreted as (MWd/kgU), negative values are interpreted as time steps in days.
• The hisv card is used together with the branch card.

### ifc (interface file)

ifc FILE [setinmat NMAT MAT1 MAT2 ... MATNMAT ]
[setoutmat NMAT MAT1 MAT2 ... MATNMAT ]


Links a multi-physics interface file to be used with the current input. Input values:

 FILE : path to the multi-physics interface file

The optional cards are explained below.

setinmat adds the possibility to link multiple input materials to the same interface, i.e. the same interface gives temperatures and densities (density factors) for multiple materials.

setoutmat adds the possibility to link multiple output materials to the same interface, i.e. the same interface gives temperatures and densities (density factors) for multiple materials.

 NMAT : number of materials to link to the interface MATi : name of the ith material linked to the interface

Notes:

• If multiple materials are linked to the interface using the setinmat/setoutmat option, the densities in the interface file must be given as density factors, i.e. relative to the material card density (values between 0 and 1).
• If the interface is not updated, setinmat/setoutmat options are not eligible. In the case of regular mesh-based, additionally to not updating the interface: a) the input materials cannot be specified using setinmat if power is tallied in pin-type objects; b) the output materials cannot be specified using setoutmat if power is not tallied on the same mesh.
• Option setinmat was setmat in versions before 2.1.32.

### include (read another input file)

include FILE


Reads another input file. Input values:

 FILE : name of the input file

Notes:

• The include card can be used to simplify the structure of complicated inputs.
• The input parser starts reading and processing the new file from the point where the input card is placed. Processing of the original file continues after the new file is completed.
• The included file must contain complete input cards and options, it cannot be used to read the values of another card.

### lat (regular lattice definition)

lat UNI TYPE X0 Y0 NX NY PITCH UNI1 UNI2 ...


Defines a finite two-dimensional lattice in xy-plane with square or X- or Y-type hexagonal elements. The lattice is infinite in z-direction. Input values:

 UNI : universe name of the lattice TYPE : lattice type X0 : x-coordinate of the lattice origin (origin is in the center of the lattice). Y0 : y-coordinate of the lattice origin (origin is in the center of the lattice). NX : number of lattice elements in x-direction NY : number of lattice elements in y-direction PITCH : lattice pitch UNIn : list of universes filling the lattice positions

Possible lattice types are:

Type Description
1 Square lattice
2 X-type hexagonal lattice
3 Y-type hexagonal lattice
14 X-type triangular lattice
Lattice type 1 indexing example for NX = NY = 3.
Lattice type 2 indexing example for NX = NY = 3.
Lattice type 3 indexing example for NX = NY = 3.

Notes:

• Number of universes in list of universes must be NX × NY.
• For square lattices the x coordinate increases from left to right and the y coordinate increases from top to bottom, so the first NX values in the list of universes create the bottommost (minimum y) row from minimum x to maximum x and the last NX values in the list of universes create the topmost (maximum y) values. Example of the indexing is provided in the attached figure.
• The line breaks usually present in the list of universes are only used to help visualizing the universe order for the user. Serpent ignores them when processing the list of universes.
• The input of X- and Y-type hexagonal lattices is similar to each other, only the directions of the x- and y-axis change. The axis directions can be checked by using the geometry plotter. Examples of the indexing are provided in the attached figures.
lat UNI TYPE X0 Y0 PITCH UNI1


Defines an infinite two-dimensional lattice in xy-plane with infinitely repeating square or X- or Y-type hexagonal element. The lattice is infinite in z-direction.

 UNI : universe name of the lattice TYPE : lattice type X0 : x-coordinate of the lattice origin Y0 : y-coordinate of the lattice origin PITCH : lattice pitch UNI1 : universe name of the universe filling all lattice positions

Possible lattice types are:

Type Description
6 Square lattice
7 Y-type hexagonal lattice
8 X-type hexagonal lattice

Notes:

• The order of X- and Y-type hexagonal lattice type numbers is reversed when compared with finite hexagonal lattices.
lat UNI TYPE X0 Y0 NR NS,1 RADIUS1 THETA1 UNI1,1 UNI2,1 ... NS,2 RADIUS2 THETA2 UNI1,2 UNI2,2 ... ...


Defines a finite two-dimensional circular cluster array lattice in xy-plane. The lattice is infinite in z-direction.

 UNI : universe name of the lattice TYPE : lattice type X0 : x-coordinate of the lattice origin Y0 : y-coordinate of the lattice origin NR : number of rings in the array NS,R : number of sectors in Rth ring RADIUSR : central radius of Rth ring THETAR : angle of rotation of Rth ring in degrees UNIN,R : list of universes filling the sector positions in Rth ring

Possible lattice type is:

Type Description
4 Circular cluster array

Notes:

• The circular cluster array can be used to define fuel assemblies used for example in AGR, CANDU, MAGNOX and RBMK reactors. It can also be used to define fuel rod layout used for example in TRIGA reactors.
lat UNI TYPE X0 Y0 NL Z1 UNI1 Z2 UNI2 ...


Defines a finite one-dimensional vertical stack in z-direction. The stack is infinite in xy-plane.

 UNI : universe name of the lattice TYPE : lattice type X0 : x-coordinate of the lattice origin Y0 : y-coordinate of the lattice origin NL : number of lattice elements in z-direction (number of axial layers) Zn : z-coordinate of the nth lattice element (lower boundary of the axial layer) UNIn : universe name filling the nth lattice position

Possible lattice type is:

Type Description
9 Vertical stack

Notes:

• The z-coordinates must be given in ascending order.
• Space below the lowest z-coordinate is not defined.
• The top layer fills the entire space above the highest z-coordinate.
• The number of Zn-UNIn pairs must be NL.
lat UNI TYPE X0 Y0 Z0 NX NY NZ PITCHX PITCHY PITCHZ UNI1 UNI2 ...


Defines a finite three-dimensional lattice in xyz-space with cuboidal or X- or Y-type hexagonal prism elements.

 UNI : universe name of the lattice TYPE : lattice type X0 : x-coordinate of the lattice origin Y0 : y-coordinate of the lattice origin Z0 : z-coordinate of the lattice origin NX : number of lattice elements in x-direction NY : number of lattice elements in y-direction NZ : number of lattice elements in z-direction PITCHX : lattice pitch in x-direction PITCHY : lattice pitch in y-direction PITCHZ : lattice pitch in z-direction UNIn : list of universes filling the lattice positions

Possible lattice types are:

Type Description
11 Cuboidal lattice
12 X-type hexagonal prism lattice
13 Y-type hexagonal prism lattice

Notes:

• Number of universes in list of universes must be NX × NY × NZ.
• For hexagonal prism lattices the x- and y-direction pitches must be equal.
• The universe indexing is the similar as with lattice types 1-3. The lowermost z-level is given first, and the uppermost z-level is given last.

### ltrans (lattice transformation)

See transformations.

### mat (material definition)

See Chapter 4 of Serpent 1 User Manual.

mat NAME DENS [ tmp TEMP ]
[ tms TEMP ]
[ tft TMIN TMAX ]
[ rgb R G B ]
[ vol VOL ]
[ mass MASS ]
[ burn NR ]
[ fix ID TEMP ]
[ moder THNAME ZA ]
NUC1 FRAC1
[ NUC2 FRAC2 ]
[    ...     ]


Mandatory information:

 NAME : Name of the material DENS : Density of the material (positive for atomic, negative for mass density) or sum to calculate the density from given nuclide fractions NUCn : Identifier of nth nuclide in composition, e.g. "92235.03c" or "U-235.03c". FRACn : Fraction of nth nuclide in composition, positive values are interpreted as atomic fractions/densities, negative values as mass fractions/densities.

Optional cards:

tmp: Material temperature for Doppler-preprocessor

 TEMP : Temperature (in Kelvin) of the material for Doppler-broadening preprocessor

tms: Material temperature for on-the-fly TMS temperature treatment

 TEMP : Temperature (in Kelvin) of the material for on-the-fly TMS temperature treatment

tft: Temperature limits for material for coupled multi-physics calculations

 TMIN : Lower limit for material temperature TMAX : Upper limit for material temperature

rgb: Material color for geometry plots

 R : Value for the red channel of geometry plots (between 0 and 255) G : Value for the green channel of geometry plots (between 0 and 255) B : Value for the blue channel of geometry plots (between 0 and 255)

vol: Material volume

 VOL : Volume of the material in cm3 (3D geometry) or cross-sectional area in cm2 (2D geometry)

mass: Material mass

 MASS : Mass of the material in grams

burn: Flag material for depletion

 NR : Set to 1 in order to deplete material. The depletion zone division should be done using the div-card.

fix: Library information for decay nuclides

 LIB : Library ID (e.g. "09c") for nuclides without cross section data. TEMP : Temperature (in Kelvin) for nuclides without cross section data.

moder: Use thermal scattering data library for a nuclide. The moder entry can be used several times to define thermal scattering libraries for multiple nuclides, such as hydrogen and deuterium in heavy water.

 THNAME : Name of the thermal scattering data library defined using the therm card. ZA : Nuclide ZA of the thermal scatterer (e.g. 1001 for H-1).

Notes:

• This description is incomplete for both the descriptions and optional settings.
• See defining material volumes and set mvol regarding other ways to set the material volumes for example in burnup calculations.
• The nuclide identifier for nuclides with associated cross-sections corresponds to ZZAAA.ID and, for nuclides without associated cross-sections, e.g., decay nuclides, to ZZAAAI. The identifiers include Z, the atomic number; A, the mass number of the nuclide; I, the isomeric state (0 = ground state, 1 = metastable state); and ID, the library identifier. For nuclides without associated cross-sections, include the fix option to indicate the library and temperature of the given nuclides.

### mesh (mesh plot definition)

mesh ORI XPIX YPIX [ SYM MIN1 MAX1 MIN2 MAX2 MIN3 MAX3 ]

mesh 8 CMAP DET ORI XPIX YPIX [ SYM MIN1 MAX1 MIN2 MAX2 MIN3 MAX3 ]

mesh 10 ORI XPIX YPIX


Produces a png-format mesh plot of various results. Input values:

 ORI : orientation with respect to coordinate axes XPIX : horizontal image size in pixels YPIX : vertical image size in pixels SYM : symmetry option (not used in Serpent 2) MINn MAXn : boundaries of the plotted region CMAP : color map used for plotting detector scores (positive entry for linear, negative for log-scale) DET : detector name

Notes:

• The first format produces a mesh plot where fission rate and thermal flux distribution are plotted using hot and cold color schemes, respectively. This type of mesh plot is convenient for illustrating the neutronics of thermal systems. The orientation parameter defines the coordinate axis perpendicular to the plot plane: 1 - x-axis (projection on yz-plane); 2 - y-axis (projection on xz-plane); 3 - z-axis (projection on xy-plane).
• The second format can be used for plotting scores that contribute to a detector. The additional input parameters are the detector name and the color map used in the plot.
• The third format generates a mesh-plot of the temperature distribution. This can be a good way to check the temperature distribution, provided by an external solver, during a coupled calculation.
• The color maps are: 1 - hot; 2 - cold; 4 - jet; 5 - black and white; 6 - hsv; 7 - spring; 8 - summer; 9 - autumn; 10 - winter; 11 - green-purple; 12 - purple-orange; 13 - blue-red. Many of these correspond to what is used in Matlab. Logarithmic scale is used if the number is given with a minus sign.
• Detector scores are collected in the mesh cells (see the detector card and the list of ENDF reaction MT's and special reaction types for more information). The distribution is scaled according to the minimum and maximum values.
• Some special detector types, such as pulse-height detectors and analog photon heating detectors cannot be associated with mesh plots.
• The mesh plot always produces results that are integrated over space. If no boundaries are provided, the integration is carried over the entire geometry.
• Setting the orientation parameter of a detector mesh plot to 4 produces a plot in cylindrical coordinates. Instead of Cartesian boundaries the entered values are then the radius, angle and axial coordinate.
• The symmetry option was used in Serpent 1. The parameter must be provided for Serpent 2 as well, even though it is not used. The value can be set to zero.
• Mesh plot produced by the nth mesh-card is written in file [input]_mesh[n].png.

### mflow (material flow definition)

mflow NAME
NUC1 λ1
[ NUC2 λ2 ]
[   ...   ]


Defines the material flow. Input values:

 NAME : name of the material flow NUCn : identifier of nth nuclide in composition λn : reprocessing constant of nth nuclide in composition (in s-1)

Notes:

• The nuclide ID can be replaced with "all", in which case all nuclides are included with the same reprocessing fraction λ.
• The nuclide ID should follow the ZAI or ISO format (e.g., 922350 or U-235).

### mix (mixture definition)

mix NAME [ rgb R G B ]
[ vol VOL ]
[ mass MASS ]
MAT1 F1
MAT2 F2
...


Defines a mixture of two or several materials. Input values:

Mandatory information:

 MATn : material name Fn : material fraction (positive values for volume, negative values for mass fractions)

Optional cards:

rgb: Material color for geometry plots

 R : Value for the red channel of geometry plots (between 0 and 255) G : Value for the green channel of geometry plots (between 0 and 255) B : Value for the blue channel of geometry plots (between 0 and 255)

vol: Material volume

 VOL : Volume of the material in cm3 (3D geometry) or cross-sectional area in cm2 (2D geometry)

mass: Material mass

 MASS : Mass of the material in g

Notes:

• Mixtures can be used to define complicated material definitions consisting of two or more physical materials mixed homogeneously.
• Serpent decomposes these mixtures into standard materials before running the transport simulation.
• The decomposed material compositions can be written into file using the -mix command line option.
• Nuclide specific thermal scattering data is automatically brought from component materials to the mixture.
• Many other input cards such as set trc, set iter nuc, sens pert matlist are not automatically inherited by the mixture from the components and should be directly defined using the mixture material name (opposed to component material names) if they are to be applied to the mixture.

### nest (nested universe definition)

nest U TYPE
[ MAT1 R1 ]
[ MAT2 R2 ]
...
[ MATN ]

nest U
[ MAT1 TYPE1 PARAM11 PARAM12 ... ]
[ MAT2 TYPE2 PARAM21 PARAM22 ... ]
...
[ MATN ]


Defines a universe consisting of nested regions. Input values:

 U : universe name TYPE : nested surface type (single surface for all regions) MAT1 ... MATN : material regions R1 ... RN-1 : outer radii TYPE1 ... TYPEN-1 : nested surface type (different surfaces for each region) PARAMnm ... : surface parameters

Notes:

• The nest card defines an entire universe consisting of nested material regions. The boundaries are defined by surfaces nested inside each other. The outermost region is infinite.
• The material entries can be replaced by fill U0, in which case the region is filled by another universe.
• The first format allows defining nests in which all surfaces are of same type and centred at the origin. Only surfaces that are characterized by a single outer radius are accepted (cylinders, spheres and some regular prisms). The pin and particle definitions are short-hand notations of the nest card.
• The second format allows mixing different surface types. In this case all surface parameters need to be provided after the surface type.

### particle (particle geometry definition)

particle U
[ MAT1 R1 ]
[ MAT2 R2 ]
...
[ MATN ]


Defines a particle universe. Input values:

 U : universe name MAT1 ... MATN : material regions R1 ... RN-1 : outer radii

Notes:

• The particle card defines an entire universe consisting of nested spherical shells. The boundaries are defined by sphere surfaces. The outermost region is radially infinite.
• The material entries can be replaced by fill U0, in which case the region is filled by another universe.
• Most typically used for defining TRISO fuel particles.
• The particle card is special case of a nested universe type.

### pbed (explicit stochastic (pebble bed) geometry)

pbed U0 Ubg FILE [ OPT ]


Defines a stochastic particle / pebble-bed geometry. Input values:

 U0 : universe name for the dispersed medium Ubg : background universe, i.e. universe filling the space between particles / pebbles FILE : input file containing the particle/pebble data OPT : additional options (currently only pow to produce power distribution in a separate output file)

The syntax of the file containing the particle/pebble data is:

X1 Y1 Z1 R1 U1

X2 Y2 Z2 R2 U2

...

Where:

 Xn, Yn, Zn : are the coordinates Rn : is the radius Un : is the universe

Notes:

• Creates a universe (U0), which is filled with spherical sub-universes for which the coordinates are read from a separate file.
• The coordinates can be defined manually, or using the automated disperser routine.
• Can be used for modelling stochastic particle / pebble-bed geometries in multiple levels.
• If the power distribution option is set, the pebble/particle-wise distribution is written in file [U0].out.

### phb (pulse-height Gaussian energy broadening definition)

phb NAME TYPE [ ... ]


Defines a user-defined (Gaussian) energy broadening function for pulse-height detector (dphb). Input values:

 NAME : pulse-height (Gaussian) energy broadening function name TYPE : pulse-height function type (1 = energy-resolution interpolation, 2 = energy-FWHM interpolation, 3 = energy-resolution fitting, 4 = energy-FWHM fitting)

The syntax for the different types is as follows:

phb NAME 1 INTT Emax,1 R1 Emax,2 R2 ...


where:

 INTT : is the interpolation type (currently only supported type is 2 = lin-lin interpolation data) Emax,i, Ri : are the maximum energy-resolution tabulated pairs

Notes:

• Full width at half maximum is calculated as: $FWHM(E_{max,i}) = R(E_{max,i}) E_{max,i}$
• Energies should be given in ascending order.
phb NAME 2 INTT Emax,1 FWHM1 Emax,2 FWHM2 ...


where:

 INTT : is the interpolation type (currently only supported type is 2 = lin-lin interpolation data) Emax,i, FWHMi : are the maximum energy-full width at half maximum pairs

Notes:

• Energies should be given in ascending order.
phb NAME 3 a b


where:

 a, b : are the parameters to define the energy resolution fit: $R = aE^b$
phb NAME 4 a b c


where:

 a, b, c : are the parameters to define the energy full width at half maximum fit: $FWHM = a + b\sqrt{(E + cE^2)}$

### pin (pin geometry definition)

pin U
[ MAT1 R1 ]
[ MAT2 R2 ]
...
[ MATN ]


Defines a pin universe. Input values:

 U : universe name MAT1 ... MATN : material regions R1 ... RN-1 : outer radii

Notes:

• The pin card defines an entire universe consisting of nested annular material regions. The boundaries are defined by axially infinite cylindrical surfaces. The outermost region is radially infinite.
• The material entries can be replaced by fill U0, in which case the region is filled by another universe.
• Most typically used for defining fuel pins, but can also be applied to guide tubes, control rods, etc.
• The pin card is special case of a nested universe type.

### plot (geometry plot definition)

plot TYPE XPIX YPIX [ POS MIN1 MAX1 MIN2 MAX2 ]

plot TYPE Fmin Fmax E XPIX YPIX [ POS MIN1 MAX1 MIN2 MAX2 ]


Produces a png-format geometry plot. Input values:

 TYPE : defines the plot type (orientation and plotting of boundaries) XPIX : horizontal image size in pixels YPIX : vertical image size in pixels POS : position of plot plane MIN1 : minimum horizontal coordinate of plotted region MAX1 : maximum horizontal coordinate of plotted region MIN2 : minimum vertical coordinate of plotted region MAX2 : maximum vertical coordinate of plotted region Fmin : minimum importance for importance map plots Fmax : maximum importance for importance map plots E : particle energy for importance map plots

Notes:

• The TYPE parameter consists of one or two concatenated values ('AB'):
1. The first value ('A') defines the plot plane (1 = yz, 2 = xz, 3 = xy).
2. The second value ('B') defines which boundaries are plotted (0 = no boundaries, 1 = cell boundaries, 2 = material boundaries, 3 = both). If the second value in is not provided, material boundaries are plotted.
• Importance maps read using the wwin card can be plotted on top of the geometry by setting the second value ('B') of the type parameter to 4 (linear color scheme) or 5 (logarithmic color scheme) for cell importances, and to 6 (linear color scheme) or 7 (logarithmic color scheme) for source importances. The input parameters then also include the minimum and maximum importance and the particle energy. If importance maps are provided for both neutrons and photons, they can be plotted by entering positive and negative energy values, respectively.
• If both, minimum and maximum importance values are set to "-1", Serpent automatically adjusts them based on the weight-window mesh data, from version 2.2.0 and on.
• Each material plotted with different color. The colors are sampled randomly, unless defined using the rgb entry in the material card.
• Void is plotted in black and special colors are used to plot geometry errors (red = overlap, green = undefined region).
• The position parameter defines the location of the plot plane on the axis perpendicular to it (e.g. z-coordinate for xy-type plot).
• The minimum and maximum coordinates define the boundaries of the plotted region (e.g. minimum and maximum x- and y-coordinates for xy-type plot). If these coordinates are not provided, the plot is extended to the maximum dimensions of the geometry.
• The relative dimensions of image size in pixels should match that of the plotted region. Otherwise the image gets distorted.
• Geometry plotter requires compiling the source code with GD Graphics libraries.
• Command line parameter -plot stops the execution after the geometry plots are produced. Option -qp invokes a quick plot mode, which does not check for overlaps. Option -noplot skips the geometry plots altogether.
• Geometry plot produced by the nth plot-card is written in file [input]_geom[n].png.
• Note to developers: particle type should be included as an input parameter in importance map plots.

### rep (reprocessor definition)

rep NAME
[ rc SRC TGT MFLOW MODE ]
[ rm MAT1 MAT2 ]
[ ru UNI1 UNI2 ]


Defines the reprocessing controllers. Input values:

 NAME : name of the reprocessor. SRC : name of the source material, from which the flow is moved TGT : name of the target material, to which the flow is moved MFLOW : name of the material flow MODE : continuous reprocessing mode MAT1 : name of the replaced material MAT2 : name of the replacing material UNI1 : name of the replaced universe UNI2 : name of the replacing universe

Notes:

• The reprocessor name identifies the reprocessing regime in the depletion calculation dep card. The syntax corresponds to dep pro NAME.
• The nuclides identifier of those included in both source SRC and target TGT materials in reprocessors should follow the same format, either ZA.ID or ISO.ID (for nuclides with cross sections), or ZAI (for nuclides without associated cross sections, and adding the fix entry to the mat card).
• The (continuous) reprocessing implementation works with materials, not universes. Therefore, define the universes associated with those burnable materials as surface-cell type universes.
• Multiple reprocessing controllers/regimes can be defined within the same reprocessor definition.
• The rc continuous reprocessing option can be used to define the material flow between the source and the target materials.
• The material flow is defined using the mflow card.
• The continuous reprocessing MODE defines how to incorporate the material flow into the Bateman equations:
MODE Material source Material target Material flow
0 $N_{src}(t)=N_{src}(0)$ $N_{tgt}(t)=N_{tgt}(0)+t\lambda N_{src}(0)$ $\dot{N}(t)=\lambda N_{src}(0)$
1 $N_{src}(t)=N_{src}(0)e^{-\lambda t}$ $N_{tgt}(t) = N_{tgt}(0) + (1-e^{-\lambda t})N_{src}(0)$ $\dot{N}(t)=\lambda N_{src}(t)$
2 $N_{src}(n+1)=(1-\Delta t_{n}\lambda)N_{src}(n)$ $N_{tgt}(n+1)=N_{tgt}(n)+\Delta t_{n}\lambda N_{src}(n)$ $\dot{N}(n)=\lambda N_{src}(n)$
• MODE 0 : no changes at the source material and adds λN0 from the source material to the target material when solving the Bateman equations (N0 are initial compositions).
• MODE 1 : subtracts λN from the source material and adds it to the target material when solving the Bateman equations.
• MODE 2 : subtracts λNn from the source material and adds it to the target material when solving the Bateman equations (compositions updated with each burnup step, n).
• The rm material reprocessing option replaces one material with another, MAT1 by MAT2.
• The ru universe reprocessing option replaces one universe with another, UNI1 by UNI2.

### sample (Temperature / density data sample definition)

sample  NX XMIN XMAX  NY YMIN YMAX  NZ ZMIN ZMAX


Samples values from the initial material temperatures and densities to a file using a Cartesian grid.

Input values:

 NX : Number of values to sample in the x-direction. XMIN : Minimum coordinate to sample from in the x-direction. XMAX : Maximum coordinate to sample from in the x-direction. NY : Number of values to sample in the y-direction. YMIN : Minimum coordinate to sample from in the y-direction. YMAX : Maximum coordinate to sample from in the y-direction. NZ : Number of values to sample in the z-direction. ZMIN : Minimum coordinate to sample from in the z-direction. ZMAX : Maximum coordinate to sample from in the z-direction.

Notes:

• The data from each sample is written in a separate [input]_sampleN.m file.
• Positive values for the density data correspond to atomic densities, while negative values correspond to mass densities.
• Materials with no temperature specified either in their mat-card or through an interface definition will show a temperature of 0.

### sens (sensitivity calculation definition)

sens pert

sens resp

sens opt


Definitions for the perturbations, responses and options for sensitivity calculations.

### solid (irregular 3D geometry definition)

solid 1 UNI BGUNI
MESH_SPLIT MESH_DIM SZ1 SZ2 ... SZMESH_DIM
POINTS_FILE
FACES_FILE
OWNER_FILE
NEIGHBOUR_FILE
MATERIALS_FILE


Creates an unstructured mesh-based geometry universe. Input values are:

 UNI : universe name for the irregular geometry BGUNI : name of the background universe filling all undefined space MESH_SPLIT : Splitting criterion for the adaptive search mesh (maximum number of geometry cells in search mesh cell) MESH_DIM : number of levels in the adaptive search mesh SZi : Size of the search mesh at level i POINTS_FILE : Path to the unstructured mesh points file FACES_FILE : Path to the unstructured mesh faces file OWNER_FILE : Path to the unstructured mesh owner file NEIGHBOUR_FILE : Path to the unstructured mesh neighbour file MATERIALS_FILE : Path to the unstructured mesh materials file
solid 2 UNI BGUNI
MESH_SPLIT MESH_DIM SZ1 SZ2 ... SZMESH_DIM
MODE R0
body BODY1 CELL1 MAT1
file BODY1 FILE1 SCALE1 X1 Y1 Z1
file BODY1 FILE2 SCALE2 X2 Y2 Z2
...
body BODY2 CELL2 MAT2
file BODY2 FILE3 SCALE3 X3 Y3 Z3
file BODY2 FILE4 SCALE4 X4 Y4 Z4
...


Creates an STL-based geometry universe. Input values are:

 UNI : universe name for the irregular geometry BGUNI : name of the background universe filling all undefined space MESH_SPLIT : Splitting criterion for the adaptive search mesh (maximum number of geometry cells in search mesh cell) MESH_DIM : number of levels in the adaptive search mesh SZi : Size of the search mesh at level i MODE : Mode for handling the triangulated geometry (1 = "fast", 2 = "safe"). R0 : Radius inside which two points of the STL-geometry are joined into one. BODYi : Name of solid body i CELLi : Name of geometry cell i linked with body i MATi : Material filling cell i FILEi : Path to a file containing an STL solid model, multiple files can be linked to one body SCALEi : Scaling factor for the STL model in FILEi Xi : Shift in x-direction to the STL model in FILEi Yi : Shift in y-direction to the STL model in FILEi Zi : Shift in z-direction to the STL model in FILEi

Notes:

• The material entries can be replaced by fill UNIi, in which case the cell i is filled by the given universe.
solid 3
INTERFACE_FILE


Creates an unstructured mesh-based geometry universe with unstructured mesh-based temperature and/or density distributions. Input values are:

 INTERFACE_FILE : Path to the interface file containing the rest of the parameters

Notes:

### src (source definition)

src NAME [ PART ]
[ sw WGT ]
[ sc CELL ]
[ su UNI ]
[ sm MAT ]
[ sp X Y Z ]
[ sx XMIN XMAX ]
[ sy YMIN YMAX ]
[ sz ZMIN ZMAX ]
[ ss SURF ]
[ sd U V W ]
[ se E ]
[ sb N INTT E1 WGT1 E2 WGT2 ... ]
[ sr NUC MT ]
[ st TMIN TMIN ]
[ sf FILE TYPE ]
[ si N P1 P2 ... ]
[ sg MAT MODE ]


Source definition. The first parameter:

 PART : particle type (n = neutron, p = photon)

is optional in single particle simulations. The remaining parameters are defined by separate key words followed by the input values.

Source weight (sw):

 WGT : relative source weight

Notes:

• When multiple sources are defined, each definition is sampled with equal probability. This probability can be changed by assigning different weights for each source.
• The weights are automatically normalized before the calculation is started.

Source cell (sc):

 CELL : cell inside which the source points are sampled

Notes:

• Setting a source cell is one of the options that can be applied to define the spatial distribution of source particles.
• The selection is based on rejection sampling, and if the source cell occupies a small volume of the geometry, the sampling efficiency can be increased by defining a bounding box/(vertical) cylinder around the cell (using the sx, sy and sz or sp, srad and sz options, respectively).
• If no spatial distribution is defined, particles are sampled uniformly over the geometry.

Source universe (su):

 UNI : universe inside which the source points are sampled

Source material (sm):

 MAT : material inside which the source points are sampled

Notes:

• Setting a source material is one of the options that can be applied to define the spatial distribution of source particles.
• The selection is based on rejection sampling, and if the source material occupies a small volume of the geometry, the sampling efficiency can be increased by defining a bounding box/(vertical) cylinder around the cell (using the sx, sy and sz or sp, srad and sz options, respectively).
• If no spatial distribution is defined, particles are sampled uniformly over the geometry.

Source point (sp):

 X, Y, Z, : coordinates of the source point

Notes:

• Setting a point source is one of the options that can be applied to define the spatial distribution of source particles.
• If no spatial distribution is defined, particles are sampled uniformly over the geometry.

Source boundaries (sx, sy, sz and srad):

 XMIN, XMAX : Boundaries on X-axis YMIN, YMAX : Boundaries on Y-axis ZMIN, ZMAX : Boundaries on Z-axis RMIN, RMAX : Radial boundaries

Notes:

• Source boundaries are used to define a bounding box/(vertical) cylinder inside which the source particles are sampled.
• The radial boundaries are centered around the point defined by sp and can be used in combination with sz.
• Can be used in combination with cell and material sources to increase the sampling efficiency.
• If no bounding box is defined, particles are sampled uniformly over the geometry.

Surface source (ss):

 SURF : surface on which the source particles are sampled

Notes:

• The surface source is currently limited to infinite vertical cylinder (cyl) and sphere (sph) surface types.
• Particles are started in the direction of the inward surface normal.

Source direction (sd):

 U, V, W, : direction vector of source particles

Notes:

• The source direction option can be set to define a unidirectional source.
• If no directional dependence is defined, the direction of source particles is sampled isotropically.

Source energy (se):

 E : energy of source particles

Notes:

• The source energy option can be used to define a monoenergetic source.
• The default energy of neutrons and photons is 1 MeV.
• This option can also be used together with the source reaction option (sr).

Source energy bins (sb):

 N : number of bins INTT : interpolation (0 = line spectrum, 1 = histogram, 2 = lin-lin, 4 = log-lin) En : upper boundary of the energy bin WGTn : weight of the energy bin

Notes:

• This option allows defining an arbitrary source spectrum in the form of tabular data.
• The bins are entered in the order of ascending energy, and weight of the first bin must be set to zero.
• Interpolation is given in a separate parameter from version 2.1.31 on.
• Here, a simple test input that demonstrates the source spectrum definition.

Source reaction (sr):

 NUC : nuclide name MT : reaction number

Notes:

• The source reaction determines a distribution function for source energy (for example, 235U fission spectrum can be defined as: sr 92235.09c 18).
• The reaction numbers are ENDF reaction MT's, and the data is obtained from standard cross section libraries.
• Applies to neutrons only.
• When the source energy parameter (se) is defined, the value is used as the energy of the incoming neutrons.

Source time (st):

 TMIN, TMAX : time boundaries

Notes:

• This parameter defines a time interval for the sampled source particles. The starting time is sampled uniformly between the given minimum and maximum.
• All source particles are started at time zero by default.

Source file (sf):

 FILE : file path to source file TYPE : file type (-1 = binary, 1 = ASCII)

Notes:

• Source files allow defining arbitrary distributions by reading the particle coordinates, direction, energy, weight and time from a file.
• Source files can be produced using the df entry of detector cards, or the set csw or set gsw options.

User-defined source routine (si):

 N : number of parameters Pn : parameters passed as arguments into the subroutine

Notes:

• This option allows defining an arbitrary source distributions with a user-defined subroutine.
• The source parameters are passed as arguments into the subroutine, together, with sampled position, direction energy, weight and time.
• For complete description see source file "usersrc.c".
• The subroutine may be overwritten with the blank template file when installing updates.

 MAT : material name or -1 MODE : sampling mode (1 = analog, 2 = implicit)

Notes:

• Radioactive decay source combines material compositions to decay data read from ENDF format libraries and forms the normalized source distribution automatically.
• Material compositions can be defined manually, or read from binary restart files produced by a burnup or activation calculation (see the set rfw and set rfr options).
• If the material name is replaced by -1, source points are started from all radioactive materials.
• The analog sampling mode preserves the average number of particles produced in radioactive decay, but may lead to poor sampling efficiency in geometries with both low and high-active materials.
• The implicit sampling mode preserves the total statistical weight of emitted particles and produces a uniform source distribution over activated materials.
• In version 2.1.28 the source is limited to photon line spectra.
• The calculation produces an additional output file [input]_gsrc.m or [input]_nsrc.m that contains the gamma/neutron source spectra, respectively.

### srtrans (source transformation)

See transformations.

### strans (surface transformation)

See transformations.

### surf (surface definition)

surf NAME TYPE [ PARAM1 PARAM2 ... ]


Defines a surface. Input values:

 NAME : is the surface name TYPE : is the surface type PARAMn : are the surface parameters

Notes:

### therm and thermstoch (thermal scattering)

therm NAME LIB

therm NAME TEMP LIB1 LIB2

therm NAME 0 LIB1 LIB2 LIB3 ...

thermstoch NAME TEMP LIB1 LIB2


Defines thermal scattering data that can be linked to nuclides using input entry moder in the material cards. When using thermal scattering data together with TMS on-the-fly temperature treatment, the third input value of the therm card is 0. In this case, Serpent interpolates the thermal scattering data automatically to the local temperature, as defined either using the tms input entry in the material definition (mat card) or via the multi-physics interface (ifc card).

Input values:

 NAME : name of the thermal scattering data LIBi : thermal scattering data identifiers as defined in the directory file (acelib) TEMP : temperature to which the thermal scattering data is interpolated

Notes:

• When using on-the-fly interpolation of thermal scattering data, LIBi must cover the whole temperature range in which the materials appear in the geometry. I.e. extrapolation of the data is not supported.
• Thermal scattering data is interpolated using the methodology of makxsf code
• The interpolation can be performed using the stochastic mixing approach with thermstoch. This interpolation mode is not available for on-the-fly interpolation.
• The continuous S(α, β) formalism is available from version 2.1.32 on.
• Version 2.2.0 includes the on-the-fly temperature treatment for the continuous S(α,β) formalism.

### tme (time binning definition)

tme NAME 1 LIM1 LIM2 ...

tme NAME 2 NB Tmin Tmax

tme NAME 3 NB Tmin Tmax


Defines a time binning structure. The second entry sets the binning type (1 = arbitrary, 2 = uniform, 3 = log-uniform). Remaining values:

 NAME : name of the time binning NB : number of bins LIMn : time bin boundaries in arbitrary binning Tmin : minimum time boundary in uniform or log-uniform binning Tmax : maximum time boundary in uniform or log-uniform binning

Notes:

• The entered values are in seconds
• The first limit in the arbitrary type (type = 1), is the lower bound of the first bin. The second limit is the upper bound of the first bin and so on.
• Time binning is used with detectors and dynamic simulation mode.

### trans (transformations)

trans TYPE UNIT [ IDX ] LVL

trans TYPE UNIT [ IDX ] X Y Z

trans TYPE UNIT [ IDX ] X Y Z θx θy θz ORD

trans TYPE UNIT [ IDX ] X Y Z α1 α2 α3 α4 α5 α6 α7 α8 α9 ORD

trans TYPE UNIT [ IDX ] rot X0 Y0 Z0 I J K β


Defines surface, universe, fill, lattice, detector mesh or source transformation. Input values:

 TYPE : type of transformation (S = surface, F = fill, U = universe, L = lattice, D = detector mesh, SR = source) UNIT : surface, cell, universe, lattice, detector mesh or source name to which the transformation is applied IDX : index number in lattice transformation (type L) LVL : level number in universe level transformation X,Y,Z : translation vector θx θy θz : rotation angles with respect to x-, y- and z-axes (in degrees) α1 ... α9 : coefficients of the rotation matrix ORD : order in which translations and rotations are applied (1 = rotations first, 2 = translations first) X0,Y0,Z0 : Origin of vector defining rotation axis. I,J,K : Components of vector defining rotation axis. β : Angle around rotation axis defined by a vector (in degrees). NB: In Serpent 2.1.29 positive values correspond to rotation to the negative mathematical direction and vice versa.

Notes:

• Fill transformation is applied in the universe filling the given cell.
• Level transformation is a special type of universe transformation, in which the coordinates in the given universe are obtained relative to geometry level LVL.
• Lattice transformation requires to provide the index for the transformation IDX.
• Source transformation is inverted. transformation is inverted compared to how surface, universe, etc. are handled.
• By default translations are applied before rotations, and the order can be switched using the ORD parameter.
• Rotations can be defined either by providing the three angles with respect to the three coordinate axes, or by defining the rotation matrix. In the second case Serpent applies vector multiplication $\vec{r'} = \bold{A} \vec{r}$ where $\vec{r}$ and $\vec{r'}$ are the position vectors before and after the operation and coefficients α1 ... α9 define the 3 by 3 matrix $\bold{A}$.
• To preserve backwards compatibility, input parameters "strans", "utrans", "ftrans", "ltrans", "dtrans" and "srtrans" without the following type identifier are also accepted for defining surface, universe, fill, lattice, detector mesh and source transformations, respectively. To preserve compatibility with Serpent 1, parameter "trans" without type identifier defines a universe transformation.

### transb (burnup transformation)

transb STEP [ <trans> ]


Defines burnup-dependent surface, universe or fill transformation. Input values:

 STEP : step in units of burnup (positive values) or days (negative values) : list of parameters associated with the transformation

Notes:

• The parameters associated with the transformation follow the standard transformation cards syntax without "trans" identifier.

### transv and transa (velocity and acceleration transformations)

transv TYPE UNIT [ IDX ] [ tlim T0 T1 TTYPE ] VX VY VZ

transa TYPE UNIT [ IDX ] [ tlim T0 T1 TTYPE ] AX AY AZ


Defines surface, universe, fill, lattice, detector mesh or source transformation. Input values:

 TYPE : type of transformation (S = surface, F = fill, U = universe, L = lattice, D = detector mesh, SR = source) UNIT : surface, cell, universe, lattice, detector mesh or source name to which the transformation is applied IDX : index number in lattice transformation (type L) T0 : beginning time of the transformation T1 : end time of the transformation TTYPE : transformation type after end time (1 = movement stops, 2 = transformation removed, 3 = initial acceleration and velocity removed, but velocity accumulated due to acceleration remains) VX,VY,VZ : Initial velocity vector AX,AY,AZ : Initial acceleration vector

Notes:

### umsh (unstructured mesh-based geometry definition)

UNI BGUNI
MESH_SPLIT MESH_DIM SZ1 SZ2 ... SZMESH_DIM
POINTS_FILE
FACES_FILE
OWNER_FILE
NEIGHBOUR_FILE
MATERIALS_FILE


Defines an unstructured mesh-based geometry. Input values:

 UNI : universe name for the unstructured mesh-based geometry BGUNI : name of the background universe filling all undefined space MESH_SPLIT : splitting criterion for the adaptive search mesh (maximum number of geometry cells in search mesh cell) MESH_DIM : number of levels in the adaptive search mesh SZi : size of the search mesh at level i POINTS_FILE : path to the unstructured mesh points file FACES_FILE : path to the unstructured mesh faces file OWNER_FILE : path to the unstructured mesh owner file NEIGHBOUR_FILE : path to the unstructured mesh neighbour file MATERIALS_FILE : path to the unstructured mesh materials file

Notes:

### utrans (universe transformation)

See transformations.

### wwgen (response matrix based importance map solver)

wwgen NAME LIM NI MOD ERG MSH
MIN1 MAX1 SZ1
MIN2 MAX2 SZ2
MIN3 MAX3 SZ3
DET1 W1 [ DET2 W2 ... ]

wwgen NAME LIM NI MOD ERG MSH
SZ1 SZ2 SZ3
LIM11 LIM12 ...
LIM21 LIM22 ...
LIM31 LIM32 ...
DET1 W1 [ DET2 W2 ... ]

wwgen NAME LIM NI MOD ERG MSH
X0 Y0
P NX NY
MIN3 MAX3 SZ3
DET1 W1 [ DET2 W2 ... ]


Defines the parameters for importance map calculation. Input values:

 NAME : a unique name to identify the calculation LIM : convergence criterion (typical value 1E-12) NI : maximum number of iterations MOD : solution mode (1 = single detector, 2 = multiple detectors, 3 = global variance reduction) ERG : energy group structure (or -1 if no energy dependence is included) MSH : mesh type (1 = Cartesian, 2 = Cylindrical, 4 = x-type hexagonal, 5 = y-type hexagonal, 6 = unevenly-spaced xyz, 8 = unevenly spaced cylindrical) MINn : minimum mesh boundary (nth coordinate) MAXn : maximum mesh boundary (nth coordinate) SZn : number of mesh cells (nth coordinate) LIMnm : mesh boundary mth (nth coordinate) X0, Y0 : mesh center of hexagonal mesh (currently must be centered at the origin) P : hexagonal cell pitch NX, NY : hexagonal mesh size DETi : detectors used as target response functions Wi : weight factors for detector scores

Notes:

• The solution mode provides various options on how the responses are used for calculating the importances.
• The detector entries can be left out in global variance reduction mode (MOD = 3), in which case the mesh is optimized to uniformly populate the entire geometry.
• Cartesian and cylindrical mesh are defined by outer mesh boundaries and number of mesh cells.
• Unevenly-spaced meshes are defined by providing the mesh cell boundaries separately.
• The coordinate axes 1, 2 and 3 in Cartesian mesh refer to (x,y,z) and in cylindrical mesh to (r,θ,z), with θ given in degrees.
• The hexagonal mesh is defined by mesh center, cell pitch, number of cells in the radial dimensions (similar to the hexagonal lattice) and axial binning.
• The mesh must be defined slightly larger than the geometry (the mesh boundaries should not coincide with the geometry boundaries).
• Source points located on mesh cell boundaries cause fatal errors.
• May not work if source distribution is biased with weight.
• The importance mesh is printed in file [input].wwd.
• Importance (weight window) meshes are read using the wwin card.
• This capability is still very much under development. The input syntax may be revised at some point.

### wwin (weight window mesh definition)

wwin NAME
[ wf FILE FMT ]
[ wn F X Y Z E ]
[ wx C G ]
[ wt SB TYPE MIN MAX ]
[ wi ITP NI WWG1 DF1 WWG2 DF2 ... ]
[ wi ITP NI WWG NX NY NZ NLOOP NTRK ISPL NSPL DSPL1 SX1 SY1 SZ1 DSPL2 SX2 SY2 SZ2 ...]


Defines a weight window mesh for variance reduction. The first parameter:

 NAME : a unique name to identify the mesh

identifies the mesh. The remaining parameters are defined by separate key words followed by the input values.

Notes:

• Only works in external source simulation mode.
• Importance (weight window) meshes can be generated by running the response matrix based solver, or read in MCNP WWINP format.
• Importance maps can be visualized using the geometry plotter.
• See also set wwb and set maxsplit for setting options for weight windows, splitting and Russian roulette.
• This capability is still very much under development. The input syntax may be revised at some point.

Mesh file (wf):

 FILE : file path and name of the importance mesh file FMT : file format (1 = mesh produced by Serpent importance map generator, 2 = MCNP WWINP format weight window mesh file)

Notes:

• By default the importance map is read from the mesh file and used as-is, the additional options are provided for adjustments.
• Currently the MCNP format only supports simple mesh types (no sub-mesh).

Mesh normalization (wn):

 F : importance for renormalization X,Y,Z : coordinates of point used for renormalization E : energy used for renormalization

Notes:

• The importances can be renormalized by fixing the value at a given position and energy.

 C : constant multiplier for adjusting importances G : exponential for adjusting importances

Notes:

• The importances can be adjusted by constant multiplier C and exponential factor G such that $F' = CF^G$.

Types and options (wt):

 SB : option to set source biasing on (1/yes) or off (0/no) with Serpent-generated importance maps TYPE : bounds type for Serpent-generated weight-windows (1 = averaged, 2 = segment-wise) MIN : minimum truncation limit for importances MAX : maximum truncation limit for importances

Notes:

• Source biasing is currently not available

Weight-window iterations, fixed mesh (wi):

 ITP : iteration type (1 = fixed mesh) NI : number of iterations between Monte Carlo simulation and the response matrix solver WWGi : name of the WWG-structure used in the iteration DFi : global density factor

Notes:

• The fixed mesh option (ITP = 1) allows performing iterations using a single or multiple meshes generated using the response matrix based solver.
• The global density factor is a multiplier applied to all material densities.

 ITP : iteration type (2 = geometry-based adaptation, 3 = tracking-based adaptation) NI : number of iterations between Monte Carlo simulation and the response matrix solver WWG : name of the WWG-structure used in the iteration NX : number of x-divisions for the adaptive mesh NY : number of y-divisions for the adaptive mesh NZ : number of z-divisions for the adaptive mesh NLOOP : number of outer iteration loops in generation of adaptive mesh NTRK : number of tracks per loop in generation of adaptive mesh ISPL : importance split criterion NSPL : neighbor split criterion DSPLi : density split criterion (negative values for mass, positive values for atomic density) SZi : minimum cell dimension

Notes:

• The adaptive mesh option (ITP = 2 or 3) starts with a coarse base mesh, and refines the resolution iteratively.
• There are two adaptive mesh options. In the geometry-based option (ITP = 2) Serpent covers the geometry with NTRK random tracks and splits cells according to density criteria. In the tracking-based option (ITP = 3) the tracks are started from the source instead. The procedure is repeated NLOOP times.
• Cell splitting is defined using the NX, NY and NZ options. For example NX = 2, NY = 2, NZ = 2 results in each cell being split to 8 sub-cells (octree mesh). For 2D meshes the NZ parameter must be set to 1.
• Splitting is carried out recursively, until limiting criteria are met. The DSPL parameters define upper density boundaries and minimum cell sizes for stopping the splits.
• The importance split criterion defines the maximum relative difference between the importances of two adjacent cells. If the criterion is not met, both cells are split.
• The neighbor split criterion defines the maximum number of neighbor allowed for a cell. If the criterion is not met, the cell is split.

## Input options

Input options are used to set various calculation parameters that are not included in the main input cards. Each option is identified by key word "set". Optional values are enclosed within square brackets.

### set absrate

set absrate A [ MAT ]


Sets normalization to total absorption rate.

 F : number of neutrons absorbed per second (neutrons/s) MAT : dummy parameter

Notes:

• Normalization is needed to relate the Monte Carlo reaction rate estimates to a user-given parameter.
• Absorption includes all reactions in which the incident neutron is lost, i.e. all capture reactions and fission.
• Neutron transport simulations are by default normalized to unit total loss rate.
• Photon transport simulations are by default normalized to unit total source rate.
• For other normalization options, see: set power, set powdens, set flux, set genrate, set fissrate, set lossrate, set srcrate, set sfrate.

### set acelib

set acelib LIB1 [ LIB2 LIB3 ... ]


Sets the cross section directory file paths. Input values:

 LIBn : file paths to directory files

Notes:

• If the file path contains special characters it is advised to enclose it within quotes.
• A default directory path can be set by defining environment variable SERPENT_DATA. The code looks for cross section directory files in this path if not found at the absolute.
• A default cross section directory file can be set by defining environment variable SERPENT_ACELIB. This file will be used if no other path is given with set acelib.

set adf UNI SURF SYM [ENF]


Sets parameters for the calculation of assembly discontinuity factors (ADFs). Input values:

 UNI : universe where spatial homogenization is performed SURF : surface enclosing the universe SYM : symmetry option (see separate list) ENF : option to skip diffusion flux solver and enforce flat homogeneous flux distribution based on mean heterogeneous flux (1/yes). Default is (0/no).

Notes:

• The surface enclosing the universe can be super-imposed (i.e. not part of the geometry definition), but it must enclose the entire universe.
• The surface is super-imposed on the geometry, i.e. its parameters (coordinates) are relative to the root universe (default 0)
• When the universe is surrounded by zero net-current (reflective) boundary conditions, the ADFs are calculated as the ratios of surface- and volume-averaged heterogeneous flux.
• When the net current is non-zero, the calculation is based on the ratio of surface-averaged homogeneous and heterogeneous flux. The homogeneous flux is obtained from a built-in diffusion flux solver.
• Calculation parameters for the diffusion flux solver can be set using the set dfsol option.
• Calculation of ADFs is currently allowed only for planes and infinite square and hexagonal prisms.
• Symmetry options are used to average out the statistical variation in the ADFs, which might otherwise lead to systematic errors in core calculations. It is important that the options are used only when the geometry has the corresponding symmetry.
• See separate description of output parameters in the [input]_res.m.
• The ADFs can be printed to the group constant output with set coefpara.
• ADFs are calculated in the few-group structure used for group constant generation.
• The ENF parameter should be switched on only in rare cases (and you should know what you are doing).

### set alb

set alb UNI SURF DIR


Sets parameters for calculating albedos. Input values:

 UNI : universe where spatial homogenization is performed SURF : surface for which the albedos are calculated DIR : current direction (-1 = inward, 1 = outward)

Notes:

• When this option is set, Serpent calculates both total albedos (ratio of currents) and partial albedos (response matrix).
• The surface enclosing the universe can be super-imposed (i.e. not part of the geometry definition), but it must enclose the entire universe.
• The surface is super-imposed on the geometry, i.e. its parameters (coordinates) are relative to the root universe (default 0)
• The current direction is given relative to the surface normal vectors
• The universe is needed only for labelling the results in the output files.
• See separate description of output parameters.
• Albedos are calculated in the few-group structure used for group constant generation.

### set arr

set arr MODEN [ MODEG ]


Sets analog reaction rate calculation on or off. Input values:

 MODEN : mode for neutrons (0 = no reactions included, 1 = include only reactions that affect neutron balance, 2 = include all reactions) MODEG : mode for photons (0 = no reactions included, 1 = include all reactions)

Notes:

• Analog reaction rates are calculated by counting sampled events and printed in a separate output file [input]_arr[bu].m, where "bu" is the burnup step.
• See detailed description on the reaction rate output file.

### set ba

set ba ZAI1 ZAI2 ...


Defines isotopes handled separately as burnable absorbers. Input values:

 ZAIn : nuclide identifiers (ZAI)

Notes:

• Some burnup applications require separate treatment for isotopes that are used as burnable absorbers but also produced in fission. This input parameter can be used to separate the transmutation chains.
• Isotope handled as the burnable absorber is created by duplicating the original and renaming it as ZAIn + 1000.
• For Gd-155, for example, the fission product isotope would be assigned ZAI 641550 and the burnable absorber ZAI 642550.
• The input parameter defines the entire transmutation chain. Listing Gd-isotopes 641540 641550 641560 641570 641580 creates a transmutation path from Gd-154 to Gd-158. Listing only the main absorbers (641550 641570) produces a different result, since the capture products of Gd-155 and Gd-157 are lost.

### set bala

set bala OPT


Sets OpenMP load balancing on or off. Input values:

 OPT : probability to store particles in common queue (0 = off, >0 = on)

Notes:

• Load balancing may improve OpenMP parallel scalability in calculations with significant branching (most typically related to coupled neutron/photon calculations or variance reduction).
• The option is ON with OPT= 1 with weight-window/variance reduction calculations and dynamic/time-dependent calculation modes. Otherwise, it is set OFF by default. Before version 2.2.0, the default behavior was always OFF.
• When this option is set, the random number sequence is no longer preserved.

### set bc

set bc MODE


Sets the boundary conditions for all outer boundaries of the geometry. Input values:

 MODE : boundary type (1 = vacuum, 2 = reflective, 3 = periodic)
set bc MODE ALB


Sets the boundary conditions with albedo for all outer boundaries of the geometry. Input values:

 MODE : boundary type (1 = vacuum, 2 = reflective, 3 = periodic) ALB : albedo
set bc MODEX MODEY MODEZ


Sets the boundary conditions separately for x-, y- and z-directions. Input values:

 MODEX : boundary type in x-direction (1 = vacuum, 2 = reflective, 3 = periodic) MODEY : boundary type in y-direction (1 = vacuum, 2 = reflective, 3 = periodic) MODEZ : boundary type in z-direction (1 = vacuum, 2 = reflective, 3 = periodic)
set bc MODEX MODEY MODEZ ALB


Sets the boundary conditions with albedo separately for x-, y- and z-directions. Input values:

 MODEX : boundary type in x-direction (1 = vacuum, 2 = reflective, 3 = periodic) MODEY : boundary type in y-direction (1 = vacuum, 2 = reflective, 3 = periodic) MODEZ : boundary type in z-direction (1 = vacuum, 2 = reflective, 3 = periodic) ALB : albedo

Notes:

• The boundary conditions can be set either for all directions at once (single parameter) or x-, y- and z-directions separately (three parameters). Albedos are provided by adding one more parameter in the list.
• The default boundary condition is vacuum (= 1) in all directions.
• Albedo boundary conditions are invoked by multiplying the particle weight with factor ALB each time a reflective or periodic boundary is hit.
• Repeated boundary conditions (reflective or periodic) are based on universe transformations, which limits outer boundary to surfaces that form regular lattices (square and hexagonal prisms, rectangles, cubes and cuboids).
• Repeated boundary conditions are applied on the first surface of outside cells (see definition of outside cells in the cell card)
• For symmetry purposes Serpent provides the universe symmetry option.
• The boundary condition type numbers can also be given as strings, with black = 1, reflective = 2 and periodic = 3.

### set blockdt

set blockdt MAT1 MAT2 ...


Defines the list of materials where delta-tracking is never used. Input values:

 MATn : material names

Notes:

• This option is used to override selection of tracking mode based on the probability threshold (see set dt) in individual materials.
• Use of delta-tracking can be forced in individual materials using set forcedt.
• For more information on tracking modes, see the detailed description on delta- and surface-tracking.
• Note to developers: should have different lists for neutrons and photons?

### set bralib

set bralib LIB1 [ LIB2 LIB3 ... ]


Sets isomeric branching data library file paths. Input values:

 LIBn : library file paths

Notes:

• Isomeric branching data libraries are standard ENDF format files containing energy-dependent branching ratios. The data is read from ENDF files 9 and 10.
• Serpent uses constant branching ratios by default. The default values can be overridden using the set isobra option. Energy-dependent data read read from ENDF format files overrides the constant ratios.
• If the file path contains special characters it is advised to enclose it within quotes.
• A default directory path can be set by defining environment variable SERPENT_DATA. The code looks for decay data files in this path if not found at the absolute.
• Example data from the JEFF-3.1 activation file

### set branchless

set branchless OPT [ WGT_LOW WGT_HIGH ]


Option that enables the branchless collision method for variance reduction. Input values:

 OPT : option to switch calculation on (1/yes) or off (0/no). Default is off. WGT_LOW : weight lower-boundary (default value: 0.2) WGT_HIGH : weight upper-boundary (default value: 10.0)

Notes:

• The branchless algorithm suppresses the variability due to the simultaneous propagation of the several branches associated to a fission event
• The branchless method uses analog scattering combined with forced fission so that after each collision, the neutron is either a scattering neutron or a fission neutron. In a non-multiplying method, the branchless method behaves as implicit capture.

### set bumode

set bumode MODE [ ORDER SSD ]


Sets the burnup calculation mode. Input values:

 MODE : burnup calculation mode ORDER : CRAM order SSD : number of substeps for CRAM decay steps (default or 0: use TTA)

The possible settings for mode are:

Mode Description
1, tta Transmutation Trajectory Analysis (TTA)
2, cram Chebyshev Rational Approximation Method (CRAM)

The CRAM order parameter can only be given when choosing the CRAM mode. The possible settings for CRAM order are:

CRAM order
2
4
6
8
10
12
14
16
-16
-48

Notes:

• The default setting for the burnup calculation mode is CRAM.
• Default value for the CRAM order is 14 resulting in order 14 PFD CRAM.
• Negative values of CRAM order mean using IPF form of CRAM with order of the absolute value of the parameter.
• Positive values refer to PFD form of CRAM.
• Decay calculations (see dep (depletion history)) and burnup calculations with very low flux are always calculated with TTA disregarding this input before version 2.1.32. The latter, very low flux condition, only applies to calculations not involving continuous reprocessing.
• Positive values of SSD enforce usage of CRAM with given number of substeps.
• The Serpent 1 MODE 3, a variation TTA method, in which cyclic transmutation chains are handled by inducing small variations in the coefficients instead of solving the extended TTA equations, is overwritten by the standard TTA method MODE 1.
• Version 2.2.0 includes the sub-step method for depletion calculations involving continuous reprocessing.

### set bunorm

set bunorm NORM


Sets the burnup calculation normalization mode if it is not bound to a single material. Input values:

 NORM : burnup calculation normalization mode (1 = all materials, 2 = burnable materials, 3 = non-burnable materials)

Notes:

• The default normalization for burnup calculations includes all materials.

### set ccmaxiter

set ccmaxiter NITER


Sets the maximum number of coupled calculation iterations. Input values:

 NITER : number of iterations.

Notes:

• Default maximum number of iterations is 1 (no iteration).
• The iteration is stopped when either the maximum number of iterations or the maximum active neutron population (set with set ccmaxpop) has been simulated.
• See Coupled multi-physics calculations for further information.

### set ccmaxpop

set ccmaxpop CPOP


Sets the maximum total live population to simulate in a coupled calculation. Input values:

 CPOP : total active population to simulate.

Notes:

• Default maximum population is INFTY/1e6.
• The iteration is stopped when either the maximum number of iterations (set with set ccmaxiter) or the maximum active neutron population has been simulated.
• Only the population simulated during active cycles is included in this amount.
• This is mostly useful if the neutron population per iteration is not constant.
• See Coupled multi-physics calculations for further information.

### set cdop

set cdop OPT


Sets the Doppler broadening method for the energy spectrum of the scattered photons. Input values:

 OPT : option to set Doppler broadening method off (0/no) or on (1/yes). The default option is on.

Notes:

• If the Doppler broadening method is switched off, the incoherent scattering function approximation is used for calculating the energy.
• In both cases, the direction of the photon is calculated using the incoherent scattering function.

### set cea

set cea OPT


Sets the Compton electron angular distribution model on and off. Input values:

 OPT : option to set the Compton electron angular distribution model off (0/no) or on (1/yes). The default option is on.

Notes:

• Electron travels in the direction of the momentum transfer vector. This is equal to the free-electron scattering angle when Doppler broadening is not used.

### set cfe

set cfe LN [ TN LG TG ]


Defines the minimum mean distance for scoring the collision flux estimator (CFE) for photons and neutrons. Input values:

 LN : minimum mean distance for scoring the CFE for neutrons TN : minimum mean time interval for scoring the CFE for neutrons LG : minimum mean distance for scoring the CFE for photons TG : minimum mean time interval for scoring the CFE for photons

Notes:

• The use of delta-tracking necessitates the use of CFE for scoring the integral reaction rates. The scoring is based on both real and virtual collision to improve the statistics in low density regions (and short time intervals).
• The minimum mean distance is the statistical mean-free-path (mfp) of collisions that contribute to the CFE. Collisions are more frequent if the physical mfp is shorter.
• In time-dependent simulations it may be more convenient to define the minimum mean time between two collisions, to get sufficient statistics for short time bins.
• The default minimum mean scoring distance is 20 cm for both neutrons and photons. Adjusting the distance affects both statistics and running time, but it should be noted that no studies have been performed on what the optimal value should be.
• Only one criterion can be provided for each particle type. If distance is given, time must be set to -1 and vice versa.
• For more information on tracking modes and CFE, see the detailed descriptions on delta- and surface-tracking and result estimators.
• The collision flux estimator in Serpent is described in an article in Annals of Nuclear energy from 2017.[2]
• In version 2.1.27 and earlier the name of this input option was "set minxs".

### set cmm

set cmm OPT


Sets calculation of diffusion coefficients using the cumulative migration method (CMM) on or off. Input values:

 OPT : option to switch CMM calculation on (1/yes) or off (0/no)

Notes:

• Calculation of diffusion coefficients using CMM might take considerable time. This option allows switching the calculation off if the data is not needed.
• The calculation of CMM diffusion coefficients was revised in version 2.1.31 so that the calculated values may be different than with previous versions.
• CMM diffusion coefficients can be calculated also when using implicit capture reactions beginning from version 2.1.31.
• CMM diffusion coefficients and transport cross sections are reasonable only when they are calculated over entire geometry (homogenized region covers the entire geometry and is surrounded by periodic or reflective boundary conditions).
• This means that e.g. pin cell diffusion coefficients can not be calculated from a 2D fuel assembly calculation.
• One may try to approximate the CMM diffusion coefficients with TRC diffusion coefficients with transport correction for hydrogen for light water reactor applications.
• Using private results array may be recommended when CMM diffusion coefficients are calculated.

### set coefpara

set coefpara FMT [ PARAM1 PARAM2 ... ]


Defines the parameters included in the separate group constant output file. Input values:

 FMT : output format, currently used for including or excluding statistical errors (0 = not included, 1 = included) PARAMn : list of parameters or detectors included in the file

Notes:

### set combing

set combing MODE


Option that enables the combing approach for precursors population control as an alternative to Russian roulette and splitting in dynamic source simulations. Input values:

 MODE : combing population-control mode (0 = none, 1 = weight-based, 2 = emission-based)

Notes:

• The combing method can achieve variance reduction and save computer time by keeping the population size approximately constant over time steps. In super-critical systems, it prevents the population from growing without bound while, in sub-critical systems, it does it from dying. In critical systems, it avoids the divergence of the variance of the population due to fluctuations of fission chains.

### set comfile

set comfile INFILE OUTFILE


Defines the communication files used in the file-based coupled calculation communications. Input values:

 INFILE : Path to inwards communication file (signals to Serpent). OUTFILE : Path to outwards communication file (signals from Serpent).

Notes:

• Setting up a communication mode will enable the coupled calculation mode.
• The communication options set comfile, set ppid and set pport are mutually exclusive, aka, multiple signalling modes are not allowed.

### set confi

set confi OPT


Sets confidentiality flag on or off. Input values:

 OPT : option to set confidentiality flag on (1/yes) or off (0/no)

Notes:

• This option can be used to label calculations as confidential. If the option is set, text "(CONFIDENTIAL)" is printed in the run-time output next to the calculation title and the value of variable CONFIDENTIAL_DATA