Input syntax manual

From Serpent Wiki
Revision as of 13:03, 23 November 2015 by Ville Valtavirta (Talk | contribs) (Input options)

Jump to: navigation, search

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 quotation marks.

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

cell (cell definition)

det (detector definition)

div (divisor definition)

div <mat> [ sep <lvl> ] 
          [ 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.)
<nz>  : number of axial zones
<zmin>  : minimum axial coordinate (cm)
<zmax>  : maximum axial coordinate (cm)
<nr>  : number of radial zones
<rmin>  : minimum radial coordinate (cm)
<rmax>  : maximum radial coordinate (cm)
<ns>  : 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.
  • 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.

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.

mat (material definition)

surf (surface definition)

src (source definition)

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

set ccmaxiter <niter>

Sets the maximum number of coupled calculation iterations.

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

set ccmaxpop <pop>

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

<pop>  : 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.
  • See Coupled multi-physics calculations for further information.

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.

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

<his>  : 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 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 100 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 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 mvol

set mvol
<mat_1> <zone_11> <vol_11>
<mat_1> <zone_12> <vol_12>
...
<mat_2> <zone_21> <vol_21>
...

Sets the volumes of material regions. Input values:

<mat_m>  : name of material m
<zone_mn>  : index of zone n in material m
<vol_mn>  : 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 nps

set nps <ppb> [ <btch> ] 

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

<ppb>  : number of particles per batch
<btch>  : number of batches

Notes:

  • The simulation is run for a number batches using the given batch size.
  • Using the nps card sets the mode to external source simulation. Criticality source simulation for neutrons is invoked using set pop.
  • 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 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.

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
<ncyc>  : 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 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.
  • Note to developers: this should take independent values for photons and neutrons
  • Note to developers: add links to description of dynamic mode

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

References

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