.. _section-12.11:

.. default-role:: sasinp

Input Description
-----------------

:numref:`table-12.11-1` lists the input information that is needed in order to run
the voiding model section of the SASSYS-1 and SAS4A Codes. This
information is of two types: that used directly in the voiding
calculation and that used by models which provide necessary input to the
voiding model. This listing is a subset of the full input listing given
in :numref:`section-12.appendices`. To simplify the discussion of the information displayed
in :numref:`table-12.11-1`, the input variables will not be examined in the order
presented in the table, but rather, they will be presented in groups of
data by category, i.e., all variables pertaining to materials properties
will be discussed together, all which give problem geometry information
will be grouped together, etc. This discussion should be helpful to
users trying to assemble input decks for running their own problems.

The variables which provide information on materials properties will be
described first. Most materials-property information, other than that
for sodium, is provided through input rather than being fixed within the
code in order to allow greater flexibility in the use of SASSYS-1. In
most cases, this information is input in the form of tables; however, in
the case of the solid fuel density and fuel thermal conductivity, either
tables or coefficients for functional relationships can be entered. The
choice between these two options is made on a channel-by-channel basis
and is flagged by the variable `IRHOK`; a positive value of
`IRHOK` indicates that the functional form has been selected, and a
non-positive value means that the tabular format has been chosen. The
variable `COEFDS` contains the coefficients for the fuel
density relationship as a function of temperature, while `RHOTAB` contains a
table of fuel density as a function of temperature
`RHOTEM`. Similarly, the coefficient for the thermal
conductivity function can be read into `COEFK`, while a
table of thermal conductivity values can be used in `XKTAB`
together with a table of temperatures in `XKTEM`. In addition, the
specific heat of the fuel is read into the
table `CPFTAB` as a function of temperature `CPFTEM`.

.. _table-12.11-1:

.. list-table:: List of Input Variables Needed by the Voiding Model
	:header-rows: 1
	:align: center
	:widths: auto

	* - Equation
	    Variable
	  - Reference
	    Equation
	  - Input
	    Variable
	  - Suggested
	    Value
	  - External
	    Reference
	* - \-
	  - \-
	  - `NCHAN`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `IFUEL1`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `ICLAD1`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `IPLUP`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `ITKEL`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `IPOWER`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `IPOWOP`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `MAXSTP`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `IPO`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `IPOBOI`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `IBLPRT`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `NPREAT`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `NPRES`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `IFLOW`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `NT0TAB`
	  - \-
	  -
	* -
	  -
	  -
	  -
	  -
	* - \-
	  - \-
	  - `DT0`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `DTMXB`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `TIMAX`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `DTFUEL`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `DTCLAD`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `DTMMXB`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `DPWMAX`
	  - \-
	  - \-
	* -
	  -
	  -
	  -
	  -
	* -
	  - \-
	  - `POW`
	  - \-
	  - \-
	* -
	  - \-
	  - `PREATB`
	  - \-
	  - \-
	* -
	  - \-
	  - `PREATM`
	  - \-
	  - \-
	* -
	  - \-
	  - `FRPR`
	  - \-
	  - \-
	* -
	  - \-
	  - `FRFLOW`
	  - \-
	  - \-
	* -
	  -
	  -
	  -
	  -
	* - :math:`\rho_{f}`
	  - \-
	  - `COEFDS`
	  - :math:`11.08 x 10^{3}`
	    :math:`2.04 x 10^{-5}`
	    :math:`8.7 x 10^{-9}`
	  - \-
	* - :math:`k_{f}`
	  - \-
	  - `COEFK`
	  - :math:`2.1`,
	    :math:`2.88 x 10^{-3}`
	    :math:`2.52 x 10^{-5}`
	    :math:`5.83 x 10^{-10}`
	    :math:`5.75 x 10^{-2}`
	    :math:`5.03 x 10^{-4}`
	    :math:`2.91 x 10^{-11}`
	  - \-
	* - :math:`k_{c}`
	  - \-
	  - `EXKTB`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `EXKTM`
	  - \-
	  - \-
	* - :math:`\rho_{f}`
	  - \-
	  - `RHOTAB`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `RHOTEM`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `TR`
	  - 300
	  - \-
	* - :math:`k_{f}`
	  - \-
	  - `XKTAB`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `XKTEM`
	  - \-
	  - \-
	* - :math:`C_{f}`
	  - \-
	  - `CPFTAB`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `CPFTEM`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `TFSOL`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `TFLIQ`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `UFMELT`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `TESOL`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `TELIQ`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `UEMELT`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `CPCTAB`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `CPCTEM`
	  - \-
	  - \-
	* - :math:`\left( \rho \right)_{e}`
	  - \-
	  - `CROETB`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `CROETM`
	  - \-
	  - \-
	* - :math:`C_{e}`
	  - \-
	  - `CE`
	  - 690
	  - \-
	* - :math:`\gamma`
	  - 12.7-21
	  - `GAMGAS`
	  - 1.3-1.6
	  - \-
	* - :math:`P_{x}`
	  - \-
	  - `PX`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `PDEC`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `PDEC1`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `PDEC2`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `PRETAB`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `PRETME`
	  - \-
	  - \-
	* - :math:`T_{O}`
	  - \-
	  - `T0TAB`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `T0TME`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `ZPLENL`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `ZPLENU`
	  - \-
	  - \-
	* - :math:`\Delta Z_{bl}`
	  - 12.7-28
	  - `DZBCGL`
	  - .1
	  - \-
	* - :math:`\Delta Z_{bu}`
	  - \-
	  - `DZBCGU`
	  - .25
	  - \-
	* - \-
	  - \-
	  - `IDBUGV`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `IERSTP`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `IRHOK`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `NPLN`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `NREFB`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `NREFT`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `NZNODE`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `NT`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `IFUELV`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `IFUELB`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `ICLADV`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `IHGAP`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `NPIN`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `NSUBAS`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `MZUB`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `MZLB`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `IHEX`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `ISSFUE`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `ILAG`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `ICLADB`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `MFAIL`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `IFAIL`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `JFAIL`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `IDBFLG`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `IDBSTP`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `IEQMAS`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `IBLPRN`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `IDBGBL`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `IDBLST`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `ISSFU2`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `IFILM`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `NZONF`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `IFUELI`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `NODSUM`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `IGASRL`
	  - 0 or 1
	  - \-
	* - \-
	  - \-
	  - `IGRLTM`
	  - 0 or 1
	  - \-
	* - :math:`A_{c}`
	  - 12.2-1
	  - `ACCZ`
	  - \-
	  - \-
	* - :math:`\Delta z`
	  - 12.2-4
	  - `AXHI`
	  - \-
	  - \-
	* - :math:`D_{h}`
	  - 12.2-7
	  - `DHZ`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `DSTIZ`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `DSTOZ`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `PLENL`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `RBR`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `RER`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `RBRPL`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `RERPL`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `RINFP`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `ROUTFP`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `ZONEL`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `SRFSTZ`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `AREAPC`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `DRFO`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `RBR0`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `RER0`
	  - \-
	  - \-
	* - :math:`p_{e}`
	  - 12.3-2
	  - `SER`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `DRFI`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `VFC`
	  - \-
	  - \-
	* - :math:`\gamma_{s}`
	  - \-
	  - `GAMSS`
	  - \-
	  - \-
	* - :math:`\gamma_{c}`
	  - \-
	  - `GAMTNC`
	  - \-
	  - \-
	* - :math:`\gamma_{e}`
	  - \-
	  - `GAMTNE`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `PSHAPE`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `PSHAPR`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `AHBPAR`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `BHBPAR`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `CHBPAR`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `HBMAX`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `HBMIN`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `HBPAR`
	  - \-
	  - \-
	* - :math:`k_{s}`
	  - \-
	  - `XKSTIZ`
	  - \-
	  - \-
	* - :math:`k_{s}`
	  - \-
	  - `XKSTOZ`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `DEL`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `P0GAS`
	  - \-
	  - \-
	* - :math:`k_{f}`
	  - \-
	  - `XKRF`
	  - \-
	  - \-
	* - :math:`\rho_{c}`
	  - \-
	  - `DENSS`
	  - \-
	  - \-
	* - :math:`\left( \rho c \right)_{s}`
	  - \-
	  - `RHOCSI`
	  - \-
	  - \-
	* - :math:`\left( \rho c \right)_{s}`
	  - \-
	  - `RHOCSO`
	  - \-
	  - \-
	* - :math:`\left( \rho c \right)_{r}`
	  - \-
	  - `RHOCR`
	  - \-
	  - \-
	* - :math:`\left( \rho c \right)_{g}`
	  - \-
	  - `RHOCG`
	  - \-
	  - \-
	* - :math:`R_{g}`
	  - \-
	  - `RG`
	  - \-
	  - \-
	* - :math:`A_{fr}`
	  - 12.2-2
	  - `AFR`
	  - 0.1875
	  - 5-22
	* - :math:`b_{fr}`
	  - 12.2-2
	  - `BFR`
	  - -0.2
	  - 5-22
	* - \-
	  - \-
	  - `C1`
	  - \-
	  - 5-22
	* - \-
	  - \-
	  - `C2`
	  - \-
	  - 5-22
	* - \-
	  - \-
	  - `C3`
	  - \-
	  - 5-22
	* - \-
	  - \-
	  - `DWMAX`
	  - 0.2
	  - \-
	* - :math:`w`
	  - \-
	  - `W0`
	  - \-
	  - \-
	* - :math:`K_{or}`
	  - 12.2-9
	  - `XKORI`
	  - \-
	  - 5-23
	* - :math:`\left( \Delta z_{i} / A \right)_{b}`
	  - 12.8-6
	  - `DZIAB`
	  - :math:`\left(D_{h} / 2 A_{c} \right)`
	  - \-
	* - :math:`\left( \Delta z_{i} / A \right)_{t}`
	  - 12.8-6
	  - `DZIAT`
	  - :math:`\left(D_{h} / 2 A_{c} \right)`
	  - \-
	* - :math:`\theta1`
	  - 12.2-15
	  - `THETA1`
	  - \-
	  - \-
	* - :math:`\theta2`
	  - 12.2-15
	  - `THETA2`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `DTLMAX`
	  - -15
	  - \-
	* - \-
	  - \-
	  - `DTVMAX`
	  - 50
	  - \-
	* - \-
	  - \-
	  - `DZIMAX`
	  - 0.1
	  - \-
	* - :math:`h_{cond}`
	  - \-
	  - `HCOND`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `SLMIN`
	  - 0.02
	  - \-
	* - \-
	  - \-
	  - `TUPL`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `WFMIN`
	  - 0.667 x
	  - \-
	* - \-
	  - \-
	  - `WFMINS`
	  - `WFMIN`
	  - \-
	* - :math:`w_{fs}`
	  - 12.5-12
	  - `WFS00`
	  - `WF0`
	  - \-
	* - :math:`f_{m}`
	  - 12.7-1
	  - `FRACP`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `FRUPT`
	  - \-
	  - \-
	* - :math:`w_{fe}`
	  - 12.5-8
	  - `WF0`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `DTSI`
	  - 3
	  - \-
	* - \-
	  - \-
	  - `DTS`
	  - 10
	  - \-
	* - :math:`A_{fr}`
	  - 12.6-9
	  - `AFRV`
	  - 0.316
	  - 5-22
	* - :math:`b_{fr}`
	  - 12.6-9
	  - `BFRV`
	  - -0.25
	  - 5-22
	* - \-
	  - \-
	  - `XMINL`
	  - 0.05
	  - \-
	* - \-
	  - \-
	  - `DTCMIN`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `WFMIND`
	  - \-
	  - \-
	* - \-
	  - \-
	  - `WFMNSD`
	  - \-
	  - \-
	* - :math:`f_{2\phi}`
	  - 12.6-10
	  - `FVAPM`
	  - 0
	  - 5-7
	* - :math:`A_{fr}`
	  - \-
	  - `AFRF`
	  - 0.316
	  - 5-22
	* - :math:`b_{fr}`
	  - \-
	  - `BFRF`
	  - -0.25
	  - 5.7
	* - \-
	  - \-
	  - `TPDMIN`
	  - :math:`1.0 x 10^{-5}`
	  - 5-22
	* - :math:`A^{*}`
	  - 12.7.1
	  - `AGSRLS`
	  - \-
	  - \-
	* - :math:`k_{g}`
	  - 12.7.1
	  - `GASKOR`
	  - 1.5-2
	  - \-
	* -
	  -
	  - `PGRMIN`
	  - \-
	  - \-
	* - :math:`M_{wg}`
	  - 12.7-31
	  - `GASMW`
	  - 100-130
	  - \-
	* -
	  -
	  - `TMFAIL`
	  - \-
	  - \-

Since the SASSYS-1 or SAS4A calculation can accommodate up to eight
different types of fuel material, the number of fuel types used in a
given data deck must be specified. This is done through the variable
`IFUEL1`. The fuel types must then each be designated as
belonging to the core or the blankets. If, in a given channel, the
blankets are of one homogeneous material and the core is of another, the
quantity `IFUELV` specifies which of the `IFUEL1` fuel types
is assigned to the core, while `IFUELB` (Bloc 51, 16) indicates which is
assigned to the radial blankets. If, on the other hand, the core and/or
blankets each consist of radial bands of different types of fuel, the
variable `IFUEL1` is used to match up each radial zone
with the appropriate fuel type in both the core and the blankets.

The cladding properties are used only in tabular form by the code.
Although only one type of cladding material is used in any one channel,
different types may be used in different channels. The total number of
types (maximum of three) for a particular run is designated in `ICLAD1`,
and the type assigned to each channel is specified in
`ICLADV`. The cladding thermal conductivity values are
input to `EXKTB` as a function of temperature `EXKTM`.
The specific heats are entered in `CPCTAB` with the corresponding temperatures `CPCTEM`.
The product of the cladding specific heat and the density is entered as
a variable in `CROETB` as a function of temperature
`CROETM`. In addition, the specific heat of the
cladding at the solidus temperature is specified in `CE`.
Finally, the density of the solid cladding at an input
reference temperature is given for each channel in `DENSS`.

The material properties for the structure and reflector regions are also
input in tabular form. In the case of the structure, the code allows
different sets of properties to be used for the inner and outer
structure nodes. However, the properties are constant for each node
within a particular zone and are independent of temperature. The thermal
conductivity for the inner structure node is stored in `XKSTIZ`,
and that for the outer node is input to `XKSTOZ`.
Similarly, the product of the density and the heat capacity for
the inner node is read into `RHOCSI`, and for the outer
node, this quantity is stored in `RHOCSO`. Of course,
the structure properties can vary from channel to channel.

The materials properties for the reflectors are also considered to be
constant within a given zone and independent of temperature. However,
unlike the case of the structure, the reflector variables are not
allowed to differ between the inner and outer segments. The thermal
conductivity is given in `XKRF`, and the product of
density and heat capacity is input to `RHOCR`. These,
too, may be different in different channels.

A couple of properties are input for the gas plenum. The product of
density and heat capacity for the plenum gas is found in `RHOCG`,
and the thermal resistance of the gas is given in `RG`.
These are both independent of temperature and variable form channel
to channel.

As indicated earlier in the text, several fluid heat-transfer
coefficients are required in order to model the heat transfer to the
sodium. For the bond which exists between the fuel and the cladding, the
heat-transfer coefficient is given by a correlation for which the
coefficients are read into `AHBPAR`, `BHBPAR`, `CHBPAR`, and
`HBPAR`. The limits on the bond heat-transfer coefficient
are set in `HBMAX` and `HBMIN`. Also, the option exists for
calculating the coefficient by the method used in the SAS3D code; this
option is invoked by setting the variable `IHGAP` to zero.
The convective heat-transfer coefficient of the sodium is given by the
Dittus-Boettler correlation, for which the coefficients `C1`, `C2`, and `C3` must be input.
If condensation of sodium vapor onto the
cladding or structure is occurring, the user-supplied condensation
heat-transfer coefficient `HCOND` must be employed.

Much of the input to the voiding model is concerned with the geometry of
the problem. Most of this information can be varied from channel to
channel, but a few geometry-related features are consistent throughout
the system. First, of course, the number of channels must be specified
in `NCHAN`. The location of the gas plenum must also be set
through the variable `IPLUP`; `IPLUP`\=0 fixes the plenum above
the core, while `IPLUP`\=1 designates that it does below the core. The
heights of the lower coolant plenum inlet and the upper coolant plenum
outlet (`ZPLENL` and `ZPLENU`) must be input. Finally,
because modeling exists in SASSYS-1 to allow material expansion with
temperature, the temperature at which the input geometry information is
measured must be known; this is specified in `TR`.

Much of the geometric information is initially assumed constant within
each axial zone and therefore is read in zone by zone. This requires
specification of the number of zones. The pin section always constitutes
ne axial zone, and each reflector contains from one to five zones. The
number of zones in the lower axial reflector is read into `NREFB`,
while that for the upper reflector is given in `NREFT`.
The data which are input on a zonal basis are the coolant flow area
per fuel pin `ACCZ`, the hydraulic diameter `DHZ`, and the length of each zone `ZONEL`. The
structure variables designating the thickness of the inner node (`DSTIZ`) and the outer node
(`DSTOZ`) are read in
by zone, as is the structure perimeter `SRFSTZ`.
Finally, the thicknesses of the outer and inner reflector segments
(`DRFO` and `DRFI`, respectively)
and the reflector perimeter `SER` are all input by
zone.

Some of the remaining geometric information is read in by axial mesh
segment. The input information required about the axial mesh structure
includes the number of mesh segments in the gas plenum `NPLN`,
the number of segments in the upper and lower blankets (`MZUB` and
`MZLB`, respectively), and the total number of segments
in each axial zone (`NZNODE`). Quantities for which a
value must be entered for each axial mesh segment in the pin region
include `AXHI`, the length of each axial segment; `RBR`,
the inner radius of the cladding; `RER`, the outer
radius of the cladding; `RINFP`, the fuel inner radius; and `ROUTFP`, the fuel outer radius.

Some geometric variables define the radial composition of the problem.
These include data such as the number of radial temperature segments in
the fuel (`NT`), the number of concentric rings of different
types of fuel in the core and blankets (`NZONF`), the
radial mesh boundaries of the fuel rings (`NODSUM`),
and a flag to specify whether the radial mesh is set up on an equal
radius or equal mass basis (`IEQMAS`).

A few additional pieces of information on the problem geometry must be
input. The cladding inner and outer radii in the gas plenum (`RBRPL` and
`RERPL`) must be specified separately from the values
in the pin region (`RBR` and `RER`, mentioned above), as must values for the
nominal cladding inner and outer radii (`RBR0` and `RER0`).
The nominal radii simply represent average values in the pin
region; usually the cladding radii in the pin are all equal at the
beginning of a run, and the nominal radii are just set to these values.
The length of the fission-gas plenum is given in `PLENL`,
the area of the coolant channel plus the pin is set in `AREAPC`,
and the volume fraction of the coolant in the channel is
represented in `VFC`. The inertial terms below and above
the subassembly are read into `DZIAB` and `DZIAT`, and the
orifice coefficients at the entrance and exit of each axial zone are
stored in `XKORI`. The number of pins per subassembly is
given in `NPIN`, and the number of subassemblies
represented by the channel is designated in `NSUBAS`.

Another category of input data is that of temperature initialization.
The inlet temperature `T0TAB` must be specified as a
function of time `T0TME`, with `NT0TAB`
being the number of entries in the inlet temperature table. The
temperature of any liquid sodium which reenters the subassembly from the
top is fixed at `TUPL`. The solidus and liquidus
temperatures of the fuel are given in `TFSOL` and `TFLIQ`, respectively,
while those for the cladding are
defined in `TESOL` and `TELIQ`. The flag
which directs whether an Eulerian or a Lagrangian liquid temperature
calculation is performed prior to flow reversal is set in `ILAG`,
and the amount of superheat required before boiling can begin
is fixed in `DTS`. The superheat required for formation of
new bubbles after voiding has begun is given by `DTSI`.

Several pieces of information concerning reactor power must be input.
The code contains an option for specifying either the power or the
external reactivity as a function of time, and the flag `IPOWER`
indicates which quantity is chosen. A total of `NPREAT`
values of the power are read into the array `PREATB`,
with the corresponding times read into array `PREATM`.
The flag `IPOWOP` determines whether the total steady-state
reactor power is computed form the power in the peak axial segment, or
vice versa, and the power in the peak axial segment is entered in `POW`.
The fraction of the total reactor power represented by
all the SASSYS-1 channels must be given, since some possible channel
configurations omit a few low power channels which must be given, since
some possible channel configurations omit a few low channels which have
a minimal impact on the calculation, and this number is input to `FRPR`.

The remaining power-related data must be inserted channel by channel.
The fraction of the total power due to direct gamma heating must be
specified for the structure (`GAMSS`), coolant (`GAMTNC`), and cladding
(`GAMTNE`). In addition, the axial and radial
shapes of the power distribution are read into `PSHAPE`
and `PSHAPR`, respectively.

Several conditions concerning the coolant pressure must be designated
through the input. The coolant exit pressure is held constant throughout
the calculation and is read into variable `PX`. The
magnitude of the coolant inlet pressure at steady state is computed by
the code, but, if the PRIMAR-4 option is not invoked, the variation of
the normalized inlet pressure with time is either read from a table or
calculated from a simple equation. The flag `NPRES`
determines whether the table or the equation will be used. If the
equation is chosen, the coefficients `PDEC`, `PDEC1`, and `PDEC2` must be entered.
If the inlet pressure is to be determined from a
table, the values are entered in `PRETAB`, with the
corresponding times specified in `PRETME`. There is also
an option to enter the coolant flow rather than the driving pressure in
`PRETAB`. This option is indicated by the flag `IFLOW`. The
user specified coolant flow vs. time is only available if the PRIMAR-1
option is used, `IPRION` ≠ 4. With this option, the coolant
flow rate in channel `IFLOW` is specified as a function of time. The
outlet plenum pressure is also specified as a function of time. The code
back-calculates the inlet plenum pressure required to give the specified
flow rate, and this inlet plenum pressure drives the coolant flow in all
other channels. Currently, this option does not work after the onset of
boiling in channel `IFLOW`. Finally, the initial gas pressure in the gas
plenum at the reference temperature `TR` is input through `P0GAS`.

Two other areas for which input data are needed are the expressions for
calculation of friction discussed earlier and the determination of
sodium film thickness in voided regions. The coefficients :math:`A_{fr}` and :math:`b_{fr}`
which are used in the friction expressions are user-input rather
than fixed within the code to allow greater flexibility. These include
coefficients for the liquid slugs (`AFR` and `BFR`), the
sodium vapor (`AFRV` and `BFRV`), and the liquid sodium
film (`AFRF` and `BFRF`). Also, the fraction of the
two-phase friction factor to be used in voided regions is set in `FVAPM`.
The calculation of film thickness requires information
about the initial film thickness left on cladding and structure as the
voiding front passes by; these numbers are stored in `WF0`
for the cladding and `WFS00` for the structure. In
addition, the SASSYS-1 model does not try to predict when the sodium
films will evaporate completely (zero film thickness); rather, the films
are considered to be evaporated when the calculated estimates them to be
less than user-input values. In the early part of the calculation, these
minimum values are `WFMIN` for the cladding and `WFMINS` for the structure,
but after `IFILM` axial segments have
experienced dryout, the values in `WFMIND` and `WFMNSD`
are used instead.

A few additional pieces fo information are needed inorder to run the
calculation. The steady-state coolant mass flow rate is input to `W0`
and the fraction of the total reactor flow which is
actually represented by core channels is read into `FRFLOW`
(again, to accommodate channel maps which do not include all the
subassemblies in the reactor; see the discussion of `FRPR` given above).
The heat of fusion for the fuel is given in `UFMELT`,
and that for the cladding is read into `UEMELT`. Also,
the product of the Stefan-Boltzmann constant and the emissivity is
assigned to the variable `DEL`.

The options for gas release due to pin failure are determined by `IGASRL`
and `IGRLTM`. If IGASRL=0, this option is
not used. The method in which pin failure is determined is specified by
`IGRLTM`. If `IGRLTM`\=0, then DEFORM-5 triggers pin failure in pin group M
when the cladding life fraction exceeds `FRUPT`\(M). If
`IGRLTM`\=1, then gas release in pin group M occurs in node `IFAIL` at time
`TMFAIL`\(M). In addition, the gas
release model requires input values for `DZBCGL` and `DZBCGU`
for cutting off bubbles after they flow out the top of
the subassembly. `GAMGAS` and `GASMW`
provide properties of the gas. `FRACP`\(M) specifies the
fraction of the pins in each group. `AGSRLS` and `GASKOR`
determine the gas flow rate through the cladding rip,
and `PGRMIN` specifies when gas release will be shut off. The initial
plenum gas pressure is determined by `P0GAS` if it is not
calculated by DEFORM.

Time-step control involves specification of a number of input variables.
The maximum number of main time steps is given in `MAXSTP`,
and the maximum problem time is `TIMAX`. The initial main
time-step size is `DT0`, and the maximum size after the
initiation of voiding is `DTMMXB`. The maximum
heat-transfer time-step length after boiling has begun is `DTMXB`.
The minimum coolant time-step size before voiding is `DTCMIN`;
after the onset of boiling, it is `TPDMIN`.

The different time-step sizes are limited by several input criteria. The
main time step must be small enough so that the power does not make a
fractional change greater than that specified in `DPWMAX`
during the step. The heat-transfer time step must be limited so that,
over its span, the fuel temperature does not change by more than `DTFUEL`,
the cladding temperature by more than `DTCLAD`,
and, prior to voiding, the coolant flow rate by `DWMAX`.
The coolant time-step size must be small enough so that the liquid
temperature does not change by more than `DTLMAX`, the vapor temperature
by more than `DTVMAX`, and the position of any liquid-vapor interface by
more than `DZIMAX`.

Printout of results is guided by several input variables. Normally, a
standard printout pertaining just to the voiding model is output at the
end of designated coolant time steps, and a general standard printout is
given at the end of designated main time steps. Boiling printout occurs
every `IBLPRN` coolant time steps. General printout is
done every `IPO` main time steps up until main time step
`IBLPRT`; after step `IBLPRT`, general printout is given
every `IPOBOI` time steps. The temperatures in the general
printout may be listed in units of degrees Kelvin or degrees centigrade
at the discretion of the user through the variable `ITKEL`;
however, the user is advised that the labels in the printout will state
that temperatures are listed in degrees Kelvin regardless of which
option is chosen.

If desired, more detailed output can be obtained through several of the
input variables. This is intended primarily for the use of the code
developers and outside users who wish to modify the code, but it may on
occasion be helpful if problems are encountered in simply running the
code. The simplest of this additional output is flagged by the variable
`IHEX`. This number will activate a hexadecimal printout of
the sum of the coolant temperatures in a channel. The hexadecimal print
is an exact representation of the sum (without truncation) and is
therefore useful when comparing two different runs of similar data decks
to indicate at what point the two calculations began to diverge. A more
extensive output is invoked by the variable `IDBUGV`. Many different printout options are
incorporated into `IDBUGV`. The print selected will begin at step `IERSTP`.
Prints specialized to the voiding model are also
available. The variable `IDBGBL` will trigger the same
extensive voiding-related output as the `IDBUGV`\=4 option, but it will
begin the output on coolant time step `IDBLST` rather than
on main time step `IERSTP`. This allows the user to begin a lengthy
printout much closer to the time at which the difficulty develops than
is possible with `IDBUGV`. The array `IDBFLG` initiates
more specialized voiding points. The coolant time step on which each of
these prints starts is stored in array `IDBSTP`.

A few additional input variables remain to be discussed. The remaining
quantities include `THETA1` and `THETA2`, the coefficients
which determine the degree of implicitness of the liquid slug
calculation; `SLMIN`, the minimum length of a liquid slug
in between two vapor bubbles (minimum slug length is required to
stabilize the calculation); and `XMINL`, the bubble length
above which the pressure gradient voiding model is used and below which
the pressure gradient voiding model is used.