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]}
Contents
- 1 Input cards
- 1.1 branch (branch definition)
- 1.2 cell (cell definition)
- 1.3 coef (coefficient matrix definition)
- 1.4 det (detector definition)
- 1.5 div (divisor definition)
- 1.6 ftrans (fill transformation)
- 1.7 fun (function definition)
- 1.8 ifc (interface file)
- 1.9 include (read another input file)
- 1.10 lat (regular lattice definition)
- 1.11 mat (material definition)
- 1.12 mesh (mesh plot definition)
- 1.13 pin (pin geometry definition)
- 1.14 plot (geometry plot definition)
- 1.15 solid (irregular 3D geometry definition)
- 1.16 src (source definition)
- 1.17 strans (surface transformation)
- 1.18 surf (surface definition)
- 1.19 therm (thermal scattering)
- 1.20 thermstoch (thermal scattering)
- 1.21 tme (time binning definition)
- 1.22 trans (transformations)
- 1.23 transv and transa (velocity and acceleration transformations)
- 1.24 utrans (universe transformation)
- 1.25 wwgen (response matrix based importance map solver)
- 1.26 wwin (weight window mesh definition)
- 2 Input options
- 2.1 set acelib
- 2.2 set adf
- 2.3 set alb
- 2.4 set arr
- 2.5 set bc
- 2.6 set blockdt
- 2.7 set bralib
- 2.8 set ccmaxiter
- 2.9 set ccmaxpop
- 2.10 set coefpara
- 2.11 set comfile
- 2.12 set confi
- 2.13 set csw
- 2.14 set declib
- 2.15 set delnu
- 2.16 set depout
- 2.17 set dfsol
- 2.18 set dynsrc
- 2.19 set dt
- 2.20 set entr
- 2.21 set fininitfile
- 2.22 set forcedt
- 2.23 set fsp
- 2.24 set fum
- 2.25 set gbuf
- 2.26 set gcu
- 2.27 set gcut
- 2.28 set his
- 2.29 set impl
- 2.30 set inventory
- 2.31 set isobra
- 2.32 set lost
- 2.33 set mcvol
- 2.34 set micro
- 2.35 set memfrac
- 2.36 set minxs
- 2.37 set mvol
- 2.38 set nbuf
- 2.39 set nfg
- 2.40 set nfylib
- 2.41 set nphys
- 2.42 set nps
- 2.43 set outp
- 2.44 set poi
- 2.45 set pop
- 2.46 set ppid
- 2.47 set ppw
- 2.48 set relfactor
- 2.49 set rfr
- 2.50 set rfw
- 2.51 set root
- 2.52 set savesrc
- 2.53 set seed
- 2.54 set spd
- 2.55 set sfylib
- 2.56 set title
- 2.57 set tcut
- 2.58 set tpa
- 2.59 set transnorm
- 2.60 set trc
- 2.61 set ures
- 2.62 set usym
- 3 References
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 MAT_{1} MAT_{2} ] [ repu UNI_{1} UNI_{2} ] [ stp MAT DENS TEMP THERM_{1} SABL_{1} SABH_{1} THERM_{2} SABL_{2} SABH_{2} ... ] [ tra TGT TRANS ] [ var VNAME VAL ]
Defines the variations invoked for a branch in the automated burnup sequence. Input values:
NAME | : branch name |
MAT_{1} | : name of the replaced material |
MAT_{2} | : name of the replacing material |
UNI_{1} | : name of the replaced universe |
UNI_{2} | : 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 |
THERM_{n} | : n:th thermal scattering data associated with the material |
SABL_{n} | : name of the n:th S() library for temperature below the given value |
SABH_{n} | : name of the n:th S() 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() 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 UNI_{0} MAT [ SURF_{1} SURF_{2} ... ]
Defines a material cell. Input values:
NAME | : cell name |
UNI_{0} | : universe where the cell belongs to |
MAT | : material that fills the cell |
SURF_{n} | : surface list |
cell NAME UNI_{0} fill UNI_{1} [ SURF_{1} SURF_{2} ... ]
Defines a filled cell. Input values:
NAME | : cell name |
UNI_{0} | : universe where the cell belongs to |
UNI_{1} | : universe that fills the cell |
SURF_{n} | : surface list |
cell NAME UNI_{0} outside [ SURF_{1} SURF_{2} ... ]
Defines an outside cell. Input values:
NAME | : cell name |
UNI_{0} | : universe where the cell belongs to |
SURF_{n} | : 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 [ BU_{1} BU_{2} ... ] [ NBR_{1} BR_{1,1} BR_{1,2} ... ] [ NBR_{2} BR_{2,1} BR_{2,2} ... ] ...
Defines the coefficient matrix for the automated burnup sequence. Input values:
NBU | : number of burnup points |
BU_{n} | : burnup steps at which the branches are invoked |
NBR_{m} | : number branches in the m:th dimension of the burnup matrix |
BR_{m,i} | : name of the i:th branch in the m:th dimension |
Notes:
- The coef card creates a multi-dimensional coefficient matrix (of size NBR_{1} NBR_{2} NBR_{3} ... ). 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
- For more information, see detailed description on automated burnup sequence.
det (detector definition)
det NAME [ PART] [ dr MT MAT] [ dv VOL] [ dc CELL] [ du UNI] [ dm MAT] [ dl LAT] [ dx X_{MIN} X_{MAX} N_{X}] [ dy Y_{MIN} Y_{MAX} N_{Y}] [ dz Z_{MIN} Z_{MAX} N_{Z}] [ dn TYPE MIN_{1} MAX_{1} N_{1} MIN_{2} MAX_{2} N_{2} MIN_{3} MAX_{3} N_{3}] [ dh TYPE X_{0} Y_{0} PITCH N_{1} N_{2} Z_{MIN} Z_{MAX} N_{Z}] [ dumsh UNI N_{C} CELL_{0} BIN_{0} CELL_{1} BIN_{1} ...] [ de EGRID] [ di TBIN] [ ds SURF DIR] [ dir COS_{X} COS_{Y} COS_{Z}] [ 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 cm^{3} (3D geometry) or cross-sectional area in cm^{2} (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):
X_{MIN} | : minimum x-coordinate of the detector mesh |
X_{MAX} | : maximum x-coordinate of the detector mesh |
N_{X} | : number of x-bins |
Y_{MIN} | : minimum y-coordinate of the detector mesh |
Y_{MAX} | : maximum y-coordinate of the detector mesh |
N_{Y} | : number of y-bins |
Z_{MIN} | : minimum z-coordinate of the detector mesh |
Z_{MAX} | : maximum z-coordinate of the detector mesh |
N_{Z} | : 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, θ, φ) |
MIN_{n} | : Minimum value of coordinate n for the mesh division. |
MAX_{n} | : Maximum value of coordinate n for the mesh division. |
N_{n} | : 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) |
X_{0}, Y_{0} | : coordinates of mesh center |
PITCH | : mesh pitch |
N_{1}, N_{1} | : mesh size |
Z_{MIN} | : minimum z-coordinate of the detector mesh |
Z_{MAX} | : maximum z-coordinate of the detector mesh |
N_{Z} | : 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 |
N_{C} | : number of mesh cell bins included in the output |
CELL_{n}, BIN_{n} | : 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):
COS_{Y} | : component of the direction vector parallel to x-axis |
COS_{Y} | : component of the direction vector parallel to y-axis |
COS_{Z} | : 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 X_{1} F_{1} X_{2} F_{2} ...
where:
INTT | : is the interpolation type (1 = histogram, 2 = lin-lin, 3 = lin-log, 4 = log-lin, 5 = log-log) |
X_{1} F_{1} ... | : 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:
- See also Coupled multi-physics calculations.
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.
lat (regular lattice definition)
mat (material definition)
mesh (mesh plot definition)
pin (pin geometry definition)
plot (geometry plot definition)
plot TYPE XPIX YPIX [ POS MIN_{1} MAX_{1} MIN_{2} MAX_{2} ]
plot TYPE F_{min} F_{max} E XPIX YPIX [ POS MIN_{1} MAX_{1} MIN_{2} MAX_{2} ]
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 |
MIN_{1} | : minimum horizontal coordinate of plotted region |
MAX_{1} | : maximum horizontal coordinate of plotted region |
MIN_{2} | : minimum vertical coordinate of plotted region |
MAX_{2} | : maximum vertical coordinate of plotted region |
F_{min} | : minimum importance for importance map plots |
F_{max} | : 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'):
- The first value ('A') defines the plot plane (1 = yz, 2 = xz, 3 = xy).
- 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.
- See also detailed description on geometry plotter.
- 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 SZ_{1} SZ_{2} ... SZ_{MESH_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 |
SZ_{i} | : 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 SZ_{1} SZ_{2} ... SZ_{MESH_DIM} MODE R0 body BODY_{1} CELL_{1} MAT_{1} file BODY_{1} FILE_{1} SCALE_{1} X_{1} Y_{1} Z_{1} file BODY_{1} FILE_{2} SCALE_{2} X_{2} Y_{2} Z_{2} ... body BODY_{2} CELL_{2} MAT_{2} file BODY_{2} FILE_{3} SCALE_{3} X_{3} Y_{3} Z_{3} file BODY_{2} FILE_{4} SCALE_{4} X_{4} Y_{4} Z_{4} ...
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 |
SZ_{i} | : 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. |
BODY_{i} | : Name of solid body i |
CELL_{i} | : Name of geometry cell i linked with body i |
MAT_{i} | : Material filling cell i |
FILE_{i} | : Path to a file containing an STL solid model, multiple files can be linked to one body |
SCALE_{i} | : Scaling factor for the STL model in FILE_{i} |
X_{i} | : Shift in x-direction to the STL model in FILE_{i} |
Y_{i} | : Shift in y-direction to the STL model in FILE_{i} |
Z_{i} | : Shift in z-direction to the STL model in FILE_{i} |
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 |
src (source definition)
strans (surface transformation)
See transformations.
surf (surface definition)
surf NAME TYPE [ PARAM_{1} PARAM_{2} ... ]
Defines a surface. Input values:
NAME | : is the surface name |
TYPE | : is the surface type |
PARAM_{n} | : are the surface parameters |
Notes:
- The name is used to identify the surface, for example, in the cell card.
- See separate description on surface types.
- Surfaces can be moved and rotated using transformations.
therm (thermal scattering)
therm NAME LIB
therm NAME TEMP LIB_{1} LIB_{2}
therm NAME 0 LIB_{1} LIB_{2} LIB_{3} ...
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 |
LIB_{i} | : 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, LIB_{i} 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.
thermstoch (thermal scattering)
thermstoch NAME TEMP LIB_{1} LIB_{2}
Interpolation of thermal scattering data using the stochastic mixing approach.
Input values:
NAME | : name of the thermal scattering data |
LIB_{i} | : 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 LIM_{1} LIM_{2} ...
tme NAME 2 NB T_{min} T_{max}
tme NAME 3 NB T_{min} T_{max}
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 |
LIM_{n} | : upper time boundary in arbitrary binning |
T_{min} | : minimum time boundary in uniform or log-uniform binning |
T_{max} | : maximum time boundary in uniform or log-uniform binning |
Notes:
- The entered values are in seconds
- Time binning is used with detectors and dynamic simulation mode.
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 where and are the position vectors before and after the operation and coefficients α_{1} ... α_{9} define the 3 by 3 matrix .
- 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 T_{0} T_{1} T_{TYPE}] V_{X} V_{Y} V_{Z}
transa TYPE UNIT [tlim T_{0} T_{1} T_{TYPE}] A_{X} A_{Y} A_{Z}
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 |
T_{0} | : beginning time of the transformation |
T_{1} | : end time of the transformation |
T_{TYPE} | : transformation type after end time (1 = movement stops, 2 = transformation removed, 3 = initial acceleration and velocity removed, but velocity accumulated due to acceleration remains) |
V_{X},V_{Y},V_{Z} | : Initial velocity vector |
A_{X},A_{Y},A_{Z} | : 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 LIM NI F ERG MSH MIN_{1} MAX_{1} SZ_{1} MIN_{2} MAX_{2} SZ_{2} MIN_{3} MAX_{3} SZ_{3} DET_{1} w_{1} [ DET_{2} w_{2} ... ]
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 |
F | : normalization factor / weighing flag |
ERG | : energy group structure (or -1 if no energy dependence is included) |
MSH | : mesh type (1 = Cartesian, 2 = Cylindrical) |
MIN_{n} | : minimum mesh boundary (n:th coordinate) |
MAX_{n} | : maximum mesh boundary (n:th coordinate) |
SZ_{n} | : number of mesh cells (n:th coordinate) |
DET_{i} | : detectors used as target response functions |
w_{i} | : 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 .
- 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 LIB_{1} [ LIB_{2} LIB_{3} ... ]
Sets the cross section directory file paths. Input values:
LIB_{n} | : 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.
set adf
set adf UNI SURF SYM
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.
- For more information, see detailed description on boundary conditions.
set blockdt
set blockdt MAT_{1} MAT_{2} ...
Defines the list of materials where delta-tracking is never used. Input values:
MAT_{n} | : 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 LIB_{1} [ LIB_{2} LIB_{3} ... ]
Sets isomeric branching data library file paths. Input values:
LIB_{n} | : 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 [ PARAM_{1} PARAM_{2} ... ]
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) |
PARAM_{n} | : list of parameters or detectors included in the file |
Notes:
- The group constant output file "<input>.coe" is produced when the automated burnup sequence is invoked.
- The available parameters are listed under homogenized group constants in the description of the _res.m output file.
- Detectors are identified by the name assigned to them in the detector card.
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.
- For more information see: External coupling
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 LIB_{1} [ LIB_{2} LIB_{3} ... ]
Sets the decay data library file paths. Input values:
LIB_{n} | : 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
- See also separate description of the built-in diffusion flux solver.
- 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.
- For more information, see detailed description on fission source convergence.
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 MAT_{1} MAT_{2} ...
Defines the list of materials where delta-tracking is always used. Input values:
MAT_{n} | : 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 fum
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 gcu
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 k_{eff}, 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 MAT_{1} MAT_{2} ...
Specifies which nuclides or elements to include in the [input]_dep.m output file. Input values:
MAT_{n} | : 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 ZAI_{1} MT_{1} FG_{1} ZAI_{2} MT_{2} FG_{2} ...
Defines constant branching ratios to isomeric states. Input values:
ZAI_{n} | : isotope ZAI (10000 x Z + 10 x A + I) |
MT_{n} | : ENDF reaction MT |
FG_{n} | : 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 micro
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 MAT_{1} ZONE_{1,1} VOL_{1,1} MAT_{1} ZONE_{1,2} VOL_{1,2} ... MAT_{2} ZONE_{2,1} VOL_{2,1} ...
Sets the volumes of material regions. Input values:
MAT_{m} | : name of material m |
ZONE_{m,n} | : index of zone n in material m |
VOL_{m,n} | : volume of zone n in material m |
Notes:
- This option is used to define material volumes manually. The input card is also produced when the Monte Carlo based volume checker routine is invoked.
- The zone index is related to automated depletion zone division, invoked by the div card. If no division is used, the index must be set to zero.
- Another option to define material volumes is to use the vol entry in the material card.
- For more infomation, see detailed description on the definition of material volumes.
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 nfg
set nfylib
set nfylib LIB_{1} [ LIB_{2} LIB_{3} ... ]
Sets the neutron-induced fission yield library file paths. Input values:
LIB_{n} | : 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 ^{135}Xe and ^{149}Sm, 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 k_{eff} |
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 k_{eff} 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.
- For more information see: External coupling
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:
- The peaking factors can be printed to the group constant output with set coefpara.
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 V_{n} V_{p}
Overrides the speed of simulated particles. Input values:
V_{n} | : speed of neutrons (cm/s) |
V_{p} | : 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 LIB_{1} [ LIB_{2} LIB_{3} ... ]
Sets the spontaneous fission yield library file paths. Input values:
LIB_{n} | : 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 T_{max}
Sets time cut-off for neutrons and photons. Input values:
T_{max} | : 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 T_{min} T_{max} TAIL NF EVB
Sets parameters for track plot animation. Input values:
T_{min} | : starting time of track plot animation (in seconds) |
T_{max} | : 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 E_{min}
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 |
E_{min} | : 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: .
- 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 [ NUC_{1} NUC_{2} ... ]
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) |
NUC_{n} | : 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 X_{0} Y_{0} θ_{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) |
X_{0} | : x-coordinate of the origin |
Y_{0} | : y-coordinate of the origin |
θ_{0} | : azimuthal position where the symmetry segment starts (degrees) |
θ_{w} | : width of the segment (degrees) |
Notes:
- Universe symmetries can be used to simplify construction of complex geometries.
- Symmetries can also be used to reduce the number of burnable material zones when automated depletion zone division is applied.
- When symmetries are used, it is important to pay attention to the definition of material volumes.
- For more information, see examples on universe symmetries.
References
- ^ Leppänen, J. "Serpent – a Continuous-energy Monte Carlo Reactor Physics Burnup Calculation Code." User manual, June 18, 2015.