# 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 ]
[ 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, or "sum" to use the sum of the constituent nuclide densities) TEMP : material temperature after adjustment, or -1 if no adjustment in temperature THERMn : n:th thermal scattering data associated with the material SABLn : name of the n:th S($\alpha,\beta$) library for temperature below the given value SABHn : name of the n:th S($\alpha,\beta$) library for temperature above the given value TGT : target universe, surface or cell TRANS : applied transformation 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 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 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($\alpha,\beta$) 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.
• 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.

### 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.
• 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 when vacuum boundary conditions are used.
• 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).
• 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 m:th dimension of the burnup matrix BRm,i : name of the i:th branch in the m:th dimension

Notes:

• The coef card creates a multi-dimensional coefficient matrix (of size NBR1 $\times$ NBR2 $\times$ NBR3 $\times$ ... ). 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.
• The coef card is used together with the branch card

### 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]
[ 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]

Detector definition. The first parameter:

 PART : particle type (1 = neutron, 2 = 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.
• 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.

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 mesh detector (dn):

 TYPE : Type of curvilinear mesh - 1 = cylindrical (dimensions r, θ, z), 2 = spherical (dimensions r, θ, φ) MINn : Minimum value of coordinate n for the mesh division. MAXn : Maximum value of coordinate n for the mesh division. Nn : Number of bins in the n coordinate direction (the division will be equal r, not equal volume).

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

Hexagonal mesh detector (dh):

 TYPE : Type of hexagonal mesh (1 = flat face perpendicular to x-axis, 2 = 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.

Detector time binning (di):

 TBIN : time bin structure name

Notes:

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

Surface current detector (ds):

 SURF : surface name DIR : direction with respect to surface normal (-1 = inward, 1 = outward, 0 = total)

Notes:

• With this option the detector calculates the particle current through a give surface.
• Responses are not allowed.

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

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.

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 2 = multiply result with another detector defined by PARAM 3 = divide result with another detector defined by PARAM

Notes:

• Types -1, -2 and -3 are used with energy binning.
• 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 kept and printed in the history output file.
• 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).

### div (divisor definition)

div MAT [ sep LVL ]
[ subx NX XMIN XMAX ]
[ suby NY YMIN YMAX ]
[ subz NZ ZMIN ZMAX ]
[ subr NR RMIN RMAX ]
[ subs NS S0 ]

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) NY : number of y-zones YMIN : minimum y-coordinate (cm) YMAX : maximum y-coordinate (cm) NZ : number of z-zones ZMIN : minimum z-coordinate (cm) ZMAX : maximum z-coordinate (cm) NR : number of radial zones RMIN : minimum radial coordinate (cm) RMAX : maximum radial coordinate (cm) NZ : number of angular sectors S0 : zero position of angular division (degrees)

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.

### 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) X1 F1 ... : are the tabulated variable-value pairs

Notes:

• The defined function is linked to detector response using response number -100 (syntax: dt -100 NAME).

### ifc (interface file)

ifc FILE

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

 FILE : path to the multi-physics interface file

Notes:

### 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 and options, it cannot be used to read the values of another card.

### 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). The input parameters then also include the minimum and maximum importance and the particle energy.
• 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 prodused. Option '-qp' invokes a quick plot mode, which does not check for overlaps.
• Note to developers: particle type should be included as an input parameter in importance map plots.

### 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
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

### 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 (thermal scattering)

therm NAME LIB
therm NAME TEMP LIB1 LIB2
therm NAME 0 LIB1 LIB2 LIB3 ...

Defines thermal scattering data that can be linked to nuclides using input card moder in the material definitions. 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 tms input cards in the material definition or via the multi-physics interface.

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 methodology used in makxsf code
• The interpolation can be performed using the stochastic mixing approach using thermstoch. This interpolation mode is not available for on-the-fly interpolation.

### thermstoch (thermal scattering)

thermstoch NAME TEMP LIB1 LIB2

Interpolation of thermal scattering data using the stochastic mixing approach.

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

### tme (time binning definition)

tme NAME 1 NB 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 : upper time boundary in arbitrary binning Tmin : minimum time boundary in uniform or log-uniform binning Tmax : maximum time boundary in uniform or log-uniform binning

Notes:

### trans (transformations)

trans TYPE UNIT LVL
trans TYPE UNIT X Y Z
trans TYPE UNIT X Y Z θx θy θz
trans TYPE UNIT X Y Z α1 α2 α3 α4 α5 α6 α7 α8 α9

Defines surface, universe or fill transformation. Input values:

 TYPE : type of transformation (S = surface transformation, F = fill transformation, U = universe transformation) UNIT : surface, cell or universe name to which the transformation is applied 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

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.
• Rotations are applied before translations.
• 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" and "ftrans" without the following type identifier are also accepted for defining surface, universe and fill transformations, respectively. To preserve compatibility with Serpent 1, parameter "trans" without type identifier defines a universe transformation.

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

transv TYPE UNIT [tlim T0 T1 TTYPE] VX VY VZ
transa TYPE UNIT [tlim T0 T1 TTYPE] AX AY AZ

Defines surface, universe or fill transformation. Input values:

 TYPE : type of transformation (S = surface transformation, F = fill transformation, U = universe transformation) UNIT : surface, cell or universe name to which the transformation is applied 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:

• Fill transformation is applied in the universe filling the given cell.
• The transformation is updated at the simulation time-interval boundaries.
• See UGM 2016 Moving geometry.

### utrans (universe transformation)

See transformations.

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

wwgen NAME NI F ERG MSH
MIN1 MAX1 SZ1
MIN2 MAX2 SZ2
MIN3 MAX3 SZ3
DET1 w1 [ DET2 w2 ... ]

Defines the parameters for importance map calculation. Input values:

 NAME : a unique name to identify the calculation NI : maximum number of iterations F : normalization factor / weighing flag ERG : energy group structure (or -1 if no energy dependence is included) MSH : mesh type (1 = Cartesian, 2 = Cylindrical) MINn : minimum mesh boundary (n:th coordinate) MAXn : maximum mesh boundary (n:th coordinate) SZn : number of mesh cells (n:th coordinate) DETi : detectors used as target response functions wi : weight factors for detector scores

Notes:

• Multiple energy groups not yet supported (input value must be set to -1).
• The importances are normalized in such way that the maximum importance in cells with source points is set to F.
• If the the normalization factor is given with a negative sign, inverse detector scores are used in the importance calculation.
• 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 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.
• Works only with external source simulations.
• May not work if source distribution is biased with weight.
• The importance mesh is printed in file [input].msh.
• 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 ]

Defines a weight window mesh for variance reduction. Input values:

 NAME : a unique name to identify the mesh FILE : file path and name of the importance mesh file FMT : file format (1 = mesh produced by Serpent importance map generator, 2 = MCNP weight window mesh file) F : importance for renormalization X,Y,Z : coordinates of point used for renormalization E : energy used for renormalization C : constant multiplier for adjusting importances G : exponential for adjusting importances

Notes:

• By default the importance map is read from the mesh file and used as-is, the additional options are provided for adjustments.
• The importances can be renormalized using the wn option by fixing the value at a given position and energy.
• The importances can be adjusted using the wx option by constant multiplier C and exponential factor G such that $F' = CF^G$.
• Only works in external source simulation mode.
• No source biasing is currently applied.
• Importance (weight window) meshes can be generated by running the response matrix based solver.
• Importance maps can be visualized using the geometry plotter.
• This capability is still very much under development. The input syntax may be revised at some point.

## Input options

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

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

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

 UNI : universe where spatial homogenization is performed SURF : surface enclosing the universe SYM : symmetry option (see separate list)

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.
• When the universe is surrounded by zero net-current (reflective) boundary conditions, the ADF's 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 ADF's is currently allowed only for planes and infinite square and hexagonal prisms.
• Symmetry options are used to average out the statistical variation in the ADF's, 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.

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

### 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.
• See detailed description on the reaction rate output file.

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

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

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

### 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 in the [input]_res.m output file is set to 1.

### set csw

set csw FILE

Writes source points in criticality source simulation into a file. Input values:

 FILE : file name where the source points are written

Notes:

• Only source points from active cycles are included.

### set declib

set declib LIB1 [ LIB2 LIB3 ... ]

Sets the decay data library file paths. Input values:

 LIBn : library file paths

Notes:

• Decay libraries are standard ENDF format files containing decay data.
• 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.

### set delnu

set delnu OPT

Sets delayed neutron emission on or off. Input values:

 OPT : option to switch delayed neutron emission on (1/yes) or off (0/no)

Notes:

• Delayed neutron emission is on by default in neutron criticality source and off by default in external source simulation mode.
• See separate description of physics options in Serpent for differences to other codes.

### set depout

set depout MODE

Controls which burnable material compositions are printed into the _dep.m output file in case of divided materials. Input values:

 MODE : value indicating, which materials to output to the _dep.m file (1 = only partials, 2 = only parents, 3 = both)

Notes:

• Default is 2 (only parents)

### set dfsol

set dfsol MODE [ DC NP ]

Options for homogeneous diffusion flux solver. Input values:

 MODE : boundary conditions for solver (1 = include net currents at boundary surfaces and corners, 2 = include only surface currents) DC : type of diffusion coefficient used in the calculation (1 = INF_DIFFCOEF, 2 = TRC_DIFFCOEF) NP : number of points for trapezoidal integration for homogeneous flux

Notes:

• This input option is used to control how the deterministic diffusion flux solver used to obtain assembly discontinuity factors (set adf) and pin power distributions (set ppw) is run
• Default mode is 1 (include both surfaces and corners in solution)
• Default diffusion coefficient is INF_DIFFCOEF, option 2 requires the set trc option.
• Default number of points for trapezoidal integration is 100
• The format was revised in update 2.1.27 (DC option was added between MODE and NP).

### set dynsrc

set dynsrc PATH [ MODE ]

Links previously generated steady state source distributions to be used in a transient simulation with delayed neutron emission.

 PATH : The path of the previously generated source file (without the .main suffix) MODE : Precursor tracking mode (0 = mesh based, 1 = point-wise)

Notes:

• Four source files will be required PATH.main, PATH.prec, PATH.live and PATH.precpoints

### set dt

set dt NTRSH [ GTRSH ]

Sets probability threshold for delta-tracking. Input values:

 NTRSH : probability threshold for neutrons GTRSH : probability threshold for photons

Notes:

• Serpent uses delta-tracking by default for both neutrons and photons, but switches to surface-tracking if the probability of sampling virtual collisions (ratio between material total cross section and the majorant) exceeds the given threshold.
• Default probability threshold for both particle types is 0.9, i.e. delta-tracking is used if the ratio between total cross section and majorant is above 0.1.
• set dt 1 means that delta-tracking is always used and set dt 0 that it is never used.
• Use of delta-tracking can be enforced or blocked in individual materials using the set forcedt and set blockdt options
• Integral reaction rates are scored using the collision estimator of neutron flux, which has a few adjustable parameters (see set minxs).
• For more information on tracking modes, see the detailed description on delta- and surface-tracking.

### set entr

set entr NX NY NZ [ XMIN XMAX YMIN YMAX ZMIN ZMAX ]

Defines the mesh structure used for calculating fission source entropy. Input values:

 NX : number of mesh cells in x-direction NY : number of mesh cells in y-direction NZ : number of mesh cells in z-direction XMIN : minimum mesh boundary in x-direction XMAX : maximum mesh boundary in x-direction YMIN : minimum mesh boundary in y-direction YMAX : maximum mesh boundary in y-direction ZMIN : minimum mesh boundary in z-direction ZMAX : maximum mesh boundary in z-direction

Notes:

• Shannon entropy is used to monitor fission source convergence by recording the distribution of source points on mesh.
• The calculation is invoked by setting the generation history record option on (set his).
• The default mesh size is 5x5x5, extending over the entire geometry.
• Monitoring fission source convergence make sense only in criticality source mode.

### set fininitfile

set fininitfile FILEPATH

Links a file containing an initial fuel behavior solution used as a starting point for a coupled calculation with the FINIX fuel behavior module. Input values:

 FILEPATH : path to the file

Notes:

• The file should be a type 6 fuel behavior interface containing a previous solution from a coupled FINIX calculation.
• The axial and radial nodalization as well as the included fuel rods should be the same in the file as in the calculation.

### set forcedt

set forcedt MAT1 MAT2 ...

Defines the list of materials where delta-tracking is always 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 blocked in individual materials using set blockdt.
• 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 fsp

set fsp OPT NSKIP

Sets fission source passing between two transport simulations in burnup or coupled calculation. The fission source at the end of one transport calculation is used as the initial source for the next transport calculation.

 OPT : option to switch fission source passing on (1/yes) or off (0/no) NSKIP : number of inactive generations on subsequent steps

Notes:

• Fission source passing is turned off by default.
• Number of inactive generations is taken from set pop card on the first step and from set fsp on all later steps.

### set gbuf

set gbuf FAC [ BNK ]

Sets the size of photon buffer and event bank. Input values:

 FAC : factor (> 1) defining the buffer size BNK : event bank size

Notes:

• Photon buffer refers to pre-allocated memory block used to store photon particle data. This memory is needed for putting secondary photons in que, etc..
• The buffer factor defines the buffer size relative to simulated batch size.
• The event bank refers to pre-allocated memory block used to store history data on particle events. This bank is used only with certain special options, such as importance detectors and track plotter.
• The default values depend on simulation mode, and there is no need to adjust the values unless the calculation terminates with an error.
• Note to developers: event bank is now the same for both neutrons and photons.

### set gcut

set gcut GMAX

Sets generation cut-off for neutrons. Input values:

 gmax : number of simulated generations before cut-off

Notes:

• The generation cut-off can be used in neutron external source simulations, to limit the length of fission chains.
• Applicable only to neutron external source simulation (invoked using set nps)
• Generation or time cut-off (set tcut) is always needed for neutron external source simulations in super-critical systems.

### set his

set his OPT

Sets batch history record on or off. Input values:

 OPT : option to switch batch history record on (1/yes) or off (0/no)

Notes:

• When invoked, Serpent collects batch-wise data on keff, fission source entropy etc. and produces a separate output file.
• Setting the history option also invokes the calculation of fission source (Shannon) entropy. The entropy mesh parameters can be adjusted using set entr.
• See detailed description on the history output file.

### set impl

set impl ICAPT [INXN INUBAR]

Sets implicit reaction modes on or off.

 ICAPT : option to switch implicit capture reactions on (1/yes) or off (0/no) INXN : option to switch implicit nxn reactions on (1/yes) or off (0/no) INUBAR : number of fission neutrons to emit in each fission (nonzero = implicit treatment, 0 = analog treatment)

Notes:

• Group constant generation requires implicit nxn reactions to be set on.
• If an implicit nubar is given, the weights of the fission neutrons are scaled to conserve the physical number of fission neutrons.
• See separate description of physics options in Serpent for differences to other codes.

### set inventory

set inventory MAT1
MAT2
...

Specifies which nuclides or elements to include in the [input]_dep.m output file. Input values:

 MATn : Nuclide or element to include

Notes:

• MAT can be: an isotope, e.g. "U-235"; an element, e.g. "Zr"; or a special entry. Special entries include:
• "act" actinides (Z>89)
• "fp" fission products
• "dp" decay products below thorium in the natural actinide decay series
• "ng" noble gases (in the fission product range, He and Rn excluded)

### set isobra

set isobra ZAI1 MT1 FG1
ZAI2 MT2 FG2
...

Defines constant branching ratios to isomeric states. Input values:

 ZAIn : isotope ZAI (10000 x Z + 10 x A + I) MTn : ENDF reaction MT FGn : fraction of reactions leading to the ground state of the product nuclide

Notes:

• Serpent uses constant branching ratios by default. This option overrides the default values.
• Energy-dependent data read read from ENDF format files defined by the set bralib overrides the constant ratios.

### set lost

set lost LIM

Option to treat undefined geometry regions as void. Input values:

 LIM : maximum number of collisions allowed in undefined regions or -1 if no limit is set.

Notes:

• This option allows the calculation to proceed even if the geometry routine encounters undefined cells.
• The option is intended for complex geometries in which the boundaries of adjacent cells may not fully coincide.
• The option should not be used to get away with errors in incomplete or poorly defined geometries.

### set mcvol

set mcvol NP

Runs the Monte Carlo volume-checker routine to set material volumes before running the transport simulation. Input values:

 NP : number of points sampled in the geometry

Notes:

• The Monte Carlo based volume calculation routine works by sampling random points in the geometry, and counting the number of hits in every material.
• When invoked, all material volumes are overridden by the results given by the checker routine.
• The volume checker can also be used to produce a separate input file for the volume entries (see detailed description on defining material volumes).

### set memfrac

set memfrac FRAC

Defines the fraction of total system memory Serpent can allocate to its use. If the fraction is exceeded, the simulation will abort. This is mainly to avert the use of swap-memory, which can make the system unresponsive. Input values:

 FRAC : the fraction of system memory that Serpent is allowed to use (between 0 and 1)

Notes:

• The default fraction is 0.8.
• The fraction can also be set via a SERPENT_MEM_FRAC environmental variable.
• Serpent tries to read the system total memory from the first line of the file /proc/meminfo

### set minxs

set minxs 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.

### set mvol

set mvol MAT1 ZONE1,1 VOL1,1
MAT1 ZONE1,2 VOL1,2
...
MAT2 ZONE2,1 VOL2,1
...

Sets the volumes of material regions. Input values:

 MATm : name of material m ZONEm,n : index of zone n in material m VOLm,n : volume of zone n in material m

Notes:

### set nbuf

set nbuf FAC [ BNK ]

Sets the size of neutron buffer and event bank. Input values:

 FAC : factor (> 1) defining the buffer size BNK : event bank size

Notes:

• Neutron buffer refers to pre-allocated memory block used to store neutron particle data. This memory is needed for banking fission neutrons for the next generation and putting secondary neutrons in que.
• The buffer factor defines the buffer size relative to simulated batch size.
• The event bank refers to pre-allocated memory block used to store history data on particle events. This bank is used only with certain special options, such as importance detectors and track plotter.
• The default values depend on simulation mode, and there is no need to adjust the values unless the calculation terminates with an error.
• Note to developers: event bank is now the same for both neutrons and photons.

### set nfylib

set nfylib LIB1 [ LIB2 LIB3 ... ]

Sets the neutron-induced fission yield library file paths. Input values:

 LIBn : library file paths

Notes:

• Fission yield libraries are standard ENDF format files containing neutron-induced fission yield data.
• 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 fission yield data files in this path if not found at the absolute.

### set nphys

set nphys FISS [ CAPT SCATT ]

Option to set reaction modes for neutrons on and off. Input values:

 FISS : option to handle fission (0 = not handled, 1 = handled) CAPT : option to handle capture (0 = not handled, 1 = handled) SCATT : option to handle scattering (0 = not handled, 1 = handled)

Notes:

• All reaction modes are handled by default.
• If fission is switched off, it is handled as capture.

### set nps

set nps PP [ BTCH TBI ]

Sets parameters for simulated particle population in external source mode. Input values:

 PP : total number of particles BTCH : number of batches TBI : time binning for dynamic mode

Notes:

• The total number of particles is divided by the given number of batches to give the number of particles per batch.
• Using the nps card sets the mode to external source simulation. Criticality source simulation for neutrons is invoked using set pop.
• If time binning is provided, the simulation is run in the dynamic mode with sequential population control. The bin structure is defined using the tme card.
• Running an external source simulation requires a source, defined by the src card. Source definition also sets the transported particle type.
• Neutron external source simulations are limited to sub-critical systems, unless dynamic mode, time cut-off (set tcut) or generation cut-off (set gcut) is invoked.
• Neutron external source simulations in multiplying systems may require adjusting the neutron buffer (set nbuf).
• Delayed neutron emission is switched off by default in neutron external source simulation (for compatibility with MCNP). Delayed neutrons can be included with set delnu.
• In transient simulations, where an initial transient source is linked using the set dynsrc option, PP particles are sampled for each time interval.

### set outp

set outp INT

Sets the interval (in cycles) for writing simulation output to files. Input values:

 INT : number of cycles after which the output-files are updated

Notes:

• Default value is 50.
• In coupled transient simulations the interval refers to time steps rather than batches. By default, the output is written after every 50th time step.
• Affects files such as _res.m, _det.m as well as mesh plots.

### set poi

set poi OPT

Switches the calculation of poison cross sections on or off. Input values:

 OPT : option to switch the calculation of poison cross sections on (1/yes) or off (0/no)

Notes:

• Poison cross sections include the fission yields and microscopic and macroscopic absorption cross sections of fission product poisons 135Xe and 149Sm, as well as their precursors. The data is part of the homogenized group constant output.
• The calculation requires setting the decay and fission yield library file paths.

### set pop

set pop NPG NGEN NSKIP [ K0 BTCH  ]

Sets parameters for simulated neutron population in criticality source mode. Input values:

 NPG : number of neutrons per generation NGEN : number of active generations NSKIP : number of inactive generations K0 : initial guess for keff BTCH : batching interval

Notes:

• The simulation is first run for a number of inactive generations to allow the fission source to converge. This is followed by a number of active generations, during which the results are collected. The statistics are divided in batches, and by default each generation forms its own batch.
• Using the pop card sets the mode to criticality source simulation. External source simulation is invoked using set nps.
• Convergence of fission source can be monitored using Shannon entropy (input parameters set his and set entr).
• Initial guess for keff is 1.0 by default. Setting the value manually may get the simulation going if it terminates on the first generation because of poor initial guess. The value does not affect fission source convergence.
• See detailed descriptions on fission source convergence and statistical effects of batching.

### set ppid

set ppid PID

Defines the external code process identifier (PID) number to be used for communication in the POSIX-based coupled calculation communications. Input values:

 PID : Process identifier (PID) of the (parent) process that Serpent should communicate with.

Notes:

• Setting up a communication mode will enable the coupled calculation mode.

### set ppw

set ppw UNI LAT

Turns on the calculation of pin-wise peaking factors. The results are printed in variable PPW_POW_FRAC in the [input]_res.m output file. Input values:

 UNI : The universe where the power distribution is calculated. LAT : The lattice where the calculation is performed.

Notes:

### set relfactor

set relfactor FAC

Sets the underrelaxation factor for the power relaxation used in coupled multi-physics calculations. Input values:

 FAC : underrelaxation factor

Notes:

• Setting the underrelaxation factor to 0, disables power relaxation altogether. The power distribution written to the output-files will be unrelaxed and only based on the most recent iteration.

### set rfr

set rfr STEP FILE
set rfr idx I FILE

Reads material compositions from a binary restart file. Input values:

 STEP : burnup step from which the compositions are obtained I : burnup step index from which the compositions are obtained FILE : name of the binary restart file

Notes:

• Positive values for step are interpreted as burnup units (MWd/kgU) and negative values as time units (days)
• This option can be used together with the set rfw feature for applying changes in the modeled system during burnup calculation

### set rfw

set rfw OPT FILE

Writes material compositions in burnup calculation into a binary restart file. Input values:

 OPT : option to switch writing on (1/yes) or off (0/no) FILE : name of the binary restart file

Notes:

• Restart file writing is switched off by default.
• This option can be used together with the set rfr feature for applying changes in the modeled system during burnup calculation

### set root

set root UNI

Sets the root universe. Input values:

 UNI : universe name

Notes:

• Root universe is the universe at the lowest level of the geometry hierarchy, and must always be defined. By default the root is set to "0".
• For more information, see detailed description on the universe-based geometry type in Serpent.

### set savesrc

set savesrc PATH [ PN PP NX NY NZ ]

Sets up the creation of an initial source to be used in a dynamic simulation with delayed neutron emission.

 PATH : The path of the source file to be created PN : Proportion of tentative neutrons to save (default 1.0) PP : Proportion of tentative precursors to save (default 1.0) NX : Precursor mesh size in x-direction (default 1) NY : Precursor mesh size in y-direction (default 1) NZ : Precursor mesh size in z-direction (default 1)

Notes:

• Four source files will be generated PATH.main, PATH.prec, PATH.live and PATH.precpoints
• If used in criticality source simulation, the system should be critical and the values will correspond to steady state values.
• If used in a dynamic simulation, the values will correspond to end-of-simulation values
• If you are getting a warning from function WriteSourceFile "P larger than 1", you should lower the PN value.
• See Transient simulations.

### set seed

set seed RNG

Sets the seed value for the random number sequence. Input values:

 RNG : seed value used for the random number sequence

Notes:

• By default, Serpent gets the RNG seed from system time. This option overrides the value.

### set spd

set spd Vn Vp

Overrides the speed of simulated particles. Input values:

 Vn : speed of neutrons (cm/s) Vp : speed of photons (cm/s)

Notes:

• This option is intended for adjusting particle speeds for better visualization in track plot animations.
• Adjusting the speed (obviously) results in incorrect estimates for all time constants.
• Exceeding the speed of light causes a fatal error in debug mode.

### set sfylib

set sfylib LIB1 [ LIB2 LIB3 ... ]

Sets the spontaneous fission yield library file paths. Input values:

 LIBn : library file paths

Notes:

• Spontaneous fission yield libraries are standard ENDF format files containing spontaneous fission yield data.
• If the file path contains special characters it is advised to enclose it within quotes

### set title

set title NAME

Sets a title for the calculation. Input values:

 NAME : title used for the calculation

Notes:

• The title is printed in the run-time output. If the title is not set, the input file name is printed instead.

### set tcut

set tcut Tmax

Sets time cut-off for neutrons and photons. Input values:

 Tmax : time limit for simulated particle histories (in seconds)

Notes:

• The time cut-off can be used in both neutron and photon external source simulations, to limit the length of particle histories.
• Time or generation cut-off (set gcut) is always needed for neutron external source simulations in super-critical systems.
• Time cut-off is automatically set in the dynamic external source simulation mode.
• Note to developers: this should take independent values for photons and neutrons

### set tpa

set tpa Tmin Tmax TAIL NF EVB

Sets parameters for track plot animation. Input values:

 Tmin : starting time of track plot animation (in seconds) Tmax : end time of track plot animation (in seconds) TAIL : tail length of plotted particles (in cm) NF : number of frames EVB : event bank size

Notes:

• The track plot animation works with the geometry plotter by creating a number of frames that visualize the motion of particles through the geometry.
• The track plotter is invoked using the "-tracks N" command line option, where N is the number of simulated particle histories (if the set tpa option is not defined, the code plots particle tracks in a geometry plot output).
• The routine produces NF frames [input]_trck[n]_frame[m].png, where [input] is the input file name, [n] is an index corresponding to the geometry plot and [m] is the frame index. The frames can be converted into a gif animation using tools like Imagemagick.
• The plotted particles have a tail to better visualize their movement from one collision to the next. The length of this tail is given in centimeters (similar to geometry dimensions). Neutrons are plotted in magenta, photons are plotted in green.
• Storing the simulated collision points requires additional memory, determined by the event bank size. If the given size is insufficient the calculation is terminated with an error message ("Event bank is empty").
• Producing track plot animations may require adjusting the particle buffers (set nbuf and set gbuf).
• The calculation may require a lot of memory for storing the complete simulated histories in neutron-multiplying systems or when particles are split by variance reduction.
• Motion of thermal and fast neutrons cannot be captured simultaneously because of the several orders of magnitude difference in their speed. Thermal systems are best visualized by enforcing all neutrons to travel at the same speed using the set spd option.
• See also detailed description on track plotter and track plot animation.

### set transnorm

set transnorm FACTOR

Mulitplies the normalization from a transient source linked with set dynsrc by a factor. Input values:

 FACTOR : factor to multiply the normalization with.

Notes:

• The normalization in transient simulations is, by default, same as in the transient source generation calculation.
• See separate description of transient simulations.

### set trc

set trc MAT FILE Emin

Defines transport correction for the calculation of diffusion parameters. Input values:

 MAT : material to which the correction is applied FILE : file path to correction curve data Emin : minimum energy above which the correction is applied

Notes:

• The method calculates transport cross sections by multiplying material total cross sections by a user-defined energy-dependent transport correction ratio before collapsing the energy variable. These transport cross sections are used for calculating diffusion coefficients: $D = 1/3\Sigma_\mathrm{tr}$.
• If the correction ratios are properly defined, the transport cross section is equivalent with the in-scattering approximation.
• The out-scattering approximation is used for materials without defined correction factors and energies below the cut-off.
• The produced homogenized cross sections are written in variables TRC_TRANSPXS and TRC_DIFFCOEF in the [input]_res.m and [input].coe output files.
• See separate description of correction factor file format.

### set ures

set ures OPT [ NUC1 NUC2 ... ]

Sets unresolved resonance probability table sampling on or off. Input values:

 OPT : option to switch probability table sampling on (1/yes) or off (0/no) NUCn : list of nuclides to which the option is applied to

Notes:

• Probability table sampling is switched off by default
• Note to developers: add description of dilution cut-off
• See separate description of physics options in Serpent for differences to other codes.

### set usym

set usym UNI AX BC X0 Y0 θ0 θw

Defines a universe symmetry. Input values:

 UNI : universe name AX : symmetry axis (1 = x, 2 = y, 3 = z) BC : boundary condition (2 = reflective, 3 = periodic) X0 : x-coordinate of the origin Y0 : y-coordinate of the origin θ0 : azimuthal position where the symmetry segment starts (degrees) θw : width of the segment (degrees)

Notes:

## References

1. ^ Leppänen, J. "Serpent – a Continuous-energy Monte Carlo Reactor Physics Burnup Calculation Code." User manual, June 18, 2015.