.. _sect-arp: ========== ARP Module ========== The ARP module performs multidimensional interpolation on a set of specially prepared ORIGEN libraries using interpolation methods discussed in :numref:`origen-lib-interp`, with available interpolators listed in :numref:`table-interp-opts`. The ORIGEN reactor libraries distributed with this version of SCALE are described in the ORIGEN Reactor Libraries chapter, as well as details on how users can generate their own libraries. The ARP module has been validated extensively for light water reactor (LWR) spent fuel :cite:`ORIGEN-lhbp1998`. Benchmarking studies for MOX fuel were also conducted :cite:`ORIGEN-gauld2003`. .. tabularcolumns:: |\Y{0.2}|\Y{0.3}|\Y{0.5}| .. table:: Interpolation options in ARP :widths: 20 30 50 :class: longtable :name: table-interp-opts +--------------------+----------------------------+----------------------------+ | **Type** | **Interpolation keyword** | **Comments** | +====================+============================+============================+ | Nearest value | nearest | Searches for closest value | | | | to the desired value | +--------------------+----------------------------+----------------------------+ | Linear | linear | Uses nearest two values | | interpolation | | bounding the desired value | +--------------------+----------------------------+----------------------------+ | Lagrangian | lagrange(N) | Uses N points near desired | | interpolation | | value and creates a | | | | polynomial of order N-1 | | | *with order N from 1 to 4* | using | | | | :eq:`eq-origen-lag-interp` | | +----------------------------+----------------------------+ | | lagrange | The specification of | | | | lagrange(1) is equivalent | | | *same as lagrange(4)* | to nearest and | | | | lagrange(2) to linear. | +--------------------+----------------------------+----------------------------+ | Standard cubic | stdspline | Standard, natural cubic | | spline | | spline (without | | | | monotonicity fix-up). | +--------------------+----------------------------+----------------------------+ | Monotonic cubic | spline | Natural cubic spline with | | spline | | a monotonicity fix-up | | | | designed to prevent | | | | nonphysical oscillations | | | | that in some cases may | | | | result in negative | | | | interpolated cross | | | | sections. | +--------------------+----------------------------+----------------------------+ Parametrizations for three types of problems have been developed: uranium-based fuel, mixed-oxide (MOX) fuel, and general activation. - The parametrization for uranium-based fuel (e.g., UO:sub:`2`), as would be found in most LWRs, can interpolate on - fuel enrichment, - moderator density, and - burnup. - The parametrization for MOX fuel contains a mixture of plutonium and uranium oxide and can interpolate on - total plutonium content in the heavy metal, - plutonium isotopic vector (Pu vector) that defines the relative concentrations of the Pu isotopes, - moderator density, and - burnup. - The parametrization for general activation problems has only one-dimensional interpolation on fluence. Variation of the absorption cross sections was observed to be near linear as a function of Pu content. Interpolation on the Pu vector is more complex than the uranium enrichment for UO\ :sub:`2` fuel since the vector is composed of five different isotopes: :sup:`238`\ Pu, :sup:`239`\ Pu, :sup:`240`\ Pu, :sup:`241`\ Pu, and :sup:`242`\ Pu. Furthermore, the elements in the vector depend on one another and can therefore not be evaluated independently of one another since the entire vector must sum to 100%. The scheme developed for the Pu vector was based on an evaluation of a large database of plutonium compositions from actual MOX fuel assemblies of European origin. It might be expect edthat the parametrization would need to include all Pu isotopes. However, an evaluation of the MOX fuel database indicated that there is a strong correlation between :sup:`239`\ Pu and the other isotopes in the vector that permits cross sections for the MOX fuel to be determined to sufficient accuracy using only the :sup:`239`\ Pu concentration. .. _input-description-1: Input Description ================= ARP has a simple input scheme, a different line-by-line input expected for each of the three problem types---uranium, MOX, or activation---with the input required for each type shown in :numref:`table-uox-params`, :numref:`table-mox-params`, and :numref:`table-act-params`. Available input depends on what is available in the relevant arpdata.txt file and the arplibs directory. .. tabularcolumns:: |\Y{0.08}|\Y{0.22}|\Y{0.22}|\Y{0.48}| .. table:: Input description for uranium fuels :widths: 8 22 22 48 :name: table-uox-params :class: longtable +-----------+---------------+------------------+----------------------------------------+ | **Entry** | **Data type** | **Entry** | **Comment** | | | | | | | **#** | | **requirements** | | +===========+===============+==================+========================================+ | 1 | Data set name | Line 1 | Enter a uranium CONFIGNAM | | | | always | from the active arpdata.txt | | | | required | | | | | | (see :numref:`table-arpdata-uox`). | +-----------+---------------+------------------+----------------------------------------+ | 2 | Enrichment | New line | Enter the wt % | | | | always | :sup:`235`\ U in toal U | +-----------+---------------+------------------+----------------------------------------+ | 3 | Number of | Always | Enter the number of | | | cycles | | irradiation cycles | | | | | :math:`N`. | +-----------+---------------+------------------+----------------------------------------+ | 4 | Fuel | Always | Enter the irradiation time | | | irradiation | | for each cycle in days | | | period | | :math:`\Delta T_{i}`, | | | | | for | | | | | :math:`i = 1,\ 2,\ldots,N`. | +-----------+---------------+------------------+----------------------------------------+ | 5 | Average power | Always | Enter the specific fission | | | | | power (MW/MTHM) for each | | | | | cycle :math:`P_{i}`, | | | | | for | | | | | :math:`i = 1,\ 2,\ldots,N`. | +-----------+---------------+------------------+----------------------------------------+ | 6 | Data | Always | Enter the nummber of cross | | | interpolations| | section sets to interpolate | | | per cycle | | during each cycle | | | | | :math:`m_{i}`, for | | | | | :math:`i = 1,\ 2,\ldots,N`. | +-----------+---------------+------------------+----------------------------------------+ | 7 | Moderator | Always | Enter the moderator density | | | density | | (g/cm\ :sup:`3`). | | | | | | | | | | Enter only one value | +-----------+---------------+------------------+----------------------------------------+ | 8 | New library | New line | Enter the filename of the | | | name | | new ORIGEN library created | | | | always | from interpolation. | +-----------+---------------+------------------+----------------------------------------+ | 9 | Interpolation | Optional | Enter the interpolation algorithm | | | keyword | | which will be used from | | | | | :numref:`table-interp-opts` | | | | | | | | | | (**DEFAULT: spline**) | +-----------+---------------+------------------+----------------------------------------+ .. tabularcolumns:: |\Y{0.08}|\Y{0.22}|\Y{0.22}|\Y{0.48}| .. table:: Input description for MOX fuels :widths: 8 22 22 48 :name: table-mox-params :class: longtable +-----------+----------------------+------------------+----------------------------------------+ | **Entry** | **Data type** | **Entry** | **Comment** | | | | | | | **#** | | **requirements** | | +===========+======================+==================+========================================+ | 1 | Data set name | Line 1 | Enter a MOX CONFIGNAM | | | | | from the active arpdata.txt | | | *(starts with MOX)* | Always | | | | | required | (see :numref:`table-arpdata-mox`) | +-----------+----------------------+------------------+----------------------------------------+ | 2 | Plutonium content | New line | Enter the Pu content | | | | | as wt % Pu in total | | | | always | heavy metal. | +-----------+----------------------+------------------+----------------------------------------+ | 3 | :sup:`239`\ Pu | Always | Enter the :sup:`239`\ Pu | | | isotopic vector | | isotopic concentration as | | | | | wt % :sup:`239`\ Pu in total | | | | | Pu. | +-----------+----------------------+------------------+----------------------------------------+ | 4 | Reserved parameter | Always | Enter a dummy value | | | (not used) | | (e.g., 1.0) | +-----------+----------------------+------------------+----------------------------------------+ | 5 | Number of cycles | Always | Enter the number of | | | | | irradiation cycles | | | | | :math:`N`. | +-----------+----------------------+------------------+----------------------------------------+ | 6 | Fuel irradiation | Always | Enter the irradiation | | | period (days) | | time for each cycle | | | | | days | | | | | :math:`\Delta T_{i}`, | | | | | for | | | | | :math:`i = 1,\ 2,\ldots,N`. | +-----------+----------------------+------------------+----------------------------------------+ | 7 | Average power | Always | Enter the specific fission | | | (MW/MTHM) | | power (MW/MTHM) for each | | | | | cycle, :math:`P_{i}`, for | | | | | :math:`i = 1,\ 2,\ldots,N`. | +-----------+----------------------+------------------+----------------------------------------+ | 8 | Data interpolations | Always | Enter the number of cross | | | per cycle | | section sets to interpolate | | | | | during each cycle, | | | | | :math:`m_{i}` for | | | | | :math:`i = 1,\ 2,\ldots,N`. | +-----------+----------------------+------------------+----------------------------------------+ | 9 | Moderator | Always | Enter the water moderator | | | density | | density (g/cm\ :sup:`3`). | | | | | | | | | | Enter only one value. | +-----------+----------------------+------------------+----------------------------------------+ | 10 | New library name | New line | Enter the name of the new interpolated | | | | always | library created by ARP. | +-----------+----------------------+------------------+----------------------------------------+ | 11 | Interpolation | Optional | Enter the interpolation algorithm | | | keyword | | which will be used from | | | | | :numref:`table-interp-opts` | | | | | | | | | | (**DEFAULT: spline**) | +-----------+----------------------+------------------+----------------------------------------+ .. tabularcolumns:: |\Y{0.08}|\Y{0.22}|\Y{0.22}|\Y{0.48}| .. table:: Input description for activaiton problems :widths: 8 22 22 48 :class: longtable :name: table-act-params +-----------+---------------------+------------------+----------------------------------------+ | **Entry** | **Data type** | **Entry** | **Comment** | | **no.** | | **requirements** | | +===========+=====================+==================+========================================+ | 1 | Data set name | Line 1 | Enter an activation | | | | always | CONFIGNAM from the active | | | | required | arpdata.txt | | | *(starts with ACT)* | | | | | | | see :numref:`table-arpdata-act` | +-----------+---------------------+------------------+----------------------------------------+ | 2 | Dummy parameter | Always | Enter 1. | +-----------+---------------------+------------------+----------------------------------------+ | 3 | Number of cycles | Always | Enter the number of | | | | | irradiation cycles | | | | | :math:`N`. | +-----------+---------------------+------------------+----------------------------------------+ | 4 | Fuel irradiation | Always | Enter the irradiation time for each | | | period | | cyce time in days :math:`\Delta T_{i}`,| | | | | :math:`i = 1,\ 2,\ldots,N`. | +-----------+---------------------+------------------+----------------------------------------+ | 5 | Average neutron | Always | Enter the average flux level | | | flux | | (n/cm\ :sup:`2`-s) for each cycle, | | | | | :math:`\Phi_{i}`, for | | | | | :math:`i = 1,\ 2,\ldots,N`. | +-----------+---------------------+------------------+----------------------------------------+ | 6 | Data | Always | Enter the number of cross section sets | | | interpolations | | to interpolate during each cycle, | | | per cycle | | :math:`m_{i}`, for | | | | | :math:`i = 1,\ 2,\ldots,N`. | +-----------+---------------------+------------------+----------------------------------------+ | 7 | Flux type (flag) | Always | Enter 1. | +-----------+---------------------+------------------+----------------------------------------+ | 8 | New library name | New line | Enter the name of the new interpolated | | | | always | library created by ARP. | +-----------+---------------------+------------------+----------------------------------------+ | 9 | Interpolation | Optional | Enter the interpolation algorithm | | | keyword | | which will be used from | | | | | :numref:`table-interp-opts` | | | | | | | | | | (**DEFAULT: spline**) | +-----------+---------------------+------------------+----------------------------------------+ ARPDATA.TXT listing file ======================== In addition to the user input file, ARP also reads a file named arpdata.txt when it runs. This file describes the parametrization of the ORIGEN libraries. The file is required because the cross section libraries contain no imbedded information on the reactor type, fuel type, or irradiation conditions. Both the file arpdata.txt and the directory of ORIGEN libraries named arplibs is searched for, first in the working directory so that a user can override the default libraries, and then to the SCALE data directory. An example arpdata.txt file is shown in :numref:`fig-arpdata` .. code-block:: scale :caption: Examples of arpdata.txt entries. :name: fig-arpdata !ce14x14 6 1 11 1.5 2.0 3.0 4.0 5.0 6.0 0.7332 'ce14_e15.f33' 'ce14_e20.f33' 'ce14_e30.f33' 'ce14_e40.f33' 'ce14_e50.f33' 'ce14_e60.f33' 0. 1500. 4500. 7500. 10500. 13500. 16500. 31500. 46500. 58500. 70500. !mox_bw15x15 3 5 1 1 10 4.0000 7.0000 10.0000 50.0000 55.0000 60.0000 65.0000 70.0000 1.0 0.7135 'mox_bw15_e40v50.f33' 'mox_bw15_e70v50.f33' 'mox_bw15_e10v50.f33' 'mox_bw15_e40v55.f33' 'mox_bw15_e70v55.f33' 'mox_bw15_e10v55.f33' 'mox_bw15_e40v60.f33' 'mox_bw15_e70v60.f33' 'mox_bw15_e10v60.f33' 'mox_bw15_e40v65.f33' 'mox_bw15_e70v65.f33' 'mox_bw15_e10v65.f33' 'mox_bw15_e40v70.f33' 'mox_bw15_e70v70.f33' 'mox_bw15_e10v70.f33' 0.00 1040.00 3000.00 5000.00 7500.00 !w17x17 6 1 11 1.5 2.0 3.0 4.0 5.0 6.0 0.723 'w17_e15.f33' 'w17_e20.f33' 'w17_e30.f33' 'w17_e40.f33' 'w17_e50.f33' 'w17_e60.f33' 0. 1500. 4500. 7500. 10500. 13500. 16500. 31500. 46500. 58500. 70500. As shown in :numref:`Example %s, ` the :file:`arpdata.txt` is simply a list of entries, each beginning with a ``!CONFIGNAM``, where CONFIGNAM is the name to be used to reference the entire data set. Whether the entry is for a uranium, MOX, or activation problem is dictated by the actual CONFIGNAM. If it begins with MOX, it is a MOX entry, and if it begins with ACT, it is an activation entry. Otherwise it is uranium. The ORIGEN libraries listed must reside next to :file:`arpdata.txt`:, in a directory called arplibs. Each type of entry is described fully in :numref:`table-arpdata-uox`, :numref:`table-arpdata-mox`, and :numref:`table-arpdata-act` for uranium, MOX, and activation, respectively. .. tabularcolumns:: |\Y{0.08}|\Y{0.22}|\Y{0.22}|\Y{0.48}| .. table:: ARPDATA.TXT uranium-type entry :widths: 8 22 22 48 :name: table-arpdata-uox :class: longtable +----------+---------------+------------------+--------------------------------+ | **Line** | **Data name** | **Description** | **Comments** | | **no.** | | | | +==========+===============+==================+================================+ | 1 | CONFIGNAM | Data set name | Must begin with "!" in column | | | +------------------+ one, followed by the | | | | (40-character | alphanumeric name this data | | | | maximum) | will be referenced by. | | | | +--------------------------------+ | | | | May not begin with ACT or MOX | +----------+---------------+------------------+--------------------------------+ | 2 | N1 | Number of | Entries pertain to the number | | | | enrichments | of parameterized cross section | | +---------------+------------------+ data points for each variable | | | N2 | Number of water | type. | | | | densities | | | +---------------+------------------+ | | | N3 | Number of | | | | | burnup steps | | +----------+---------------+------------------+--------------------------------+ | 3 | ENR | Enrichment | N1 entries defining the | | | | values (wt % | discrete enrichment values for | | | | :sup:`235`\ U); | each library | | | | values at which | | | | | ARP libraries | | | | | were generated | | +----------+---------------+------------------+--------------------------------+ | 4 | DENS | Water density | N2 entries defining the | | | | values | discrete moderator density | | | | (g/cm\ :sup:`3`) | values for each library | +----------+---------------+------------------+--------------------------------+ | 5 | FILES | Filenames of | N1 :math:`\times` N2 entries | | | | ORIGEN libraries | | | | | for this fuel | | | | | assembly type | | | | +------------------+--------------------------------+ | | | (Enclose each | Filenames are ordered first by | | | | filename in | density values, then by | | | | single quotes | enrichment values. | | | | with at least | | | | | one space | | | | | between each | | | | | name.) | | +----------+---------------+------------------+--------------------------------+ | 6 | BURN | Burnups | N3 entries | | | | (MWd/MTU) +--------------------------------+ | | | corresponding | Each set of burnup-dependent | | | | to each position | cross sections is stored | | | | on the ORIGEN | within a single ORIGEN binary | | | | library | library file (the first burnup | | | | | is usually zero). | +----------+---------------+------------------+--------------------------------+ | **NOTE:** Repeat all of the above entries for each fuel assembly | | configuration type | +------------------------------------------------------------------------------+ .. tabularcolumns:: |\Y{0.08}|\Y{0.22}|\Y{0.22}|\Y{0.48}| .. table:: ARPDATA.TXT MOX-type entry :widths: 8 22 22 48 :name: table-arpdata-mox :class: longtable +----------------+---------------+-----------------+----------------+ | **Line no** | **Data name** | **Description** | **Comments** | +================+===============+=================+================+ | 1 | CONFIGNAM | Data set name | Must begin | | | +-----------------+ with "!" in | | | | (40-character | column one, | | | | maximum) | followed by | | | | | the | | | | | alphanumeric | | | | | name by which | | | | | this data set | | | | | will be | | | | | referenced. | | | | +----------------+ | | | | Must begin | | | | | with MOX | | | | | (e.g., | | | | | !mox_bw15x15). | +----------------+---------------+-----------------+----------------+ | 2 | N1 | Number of Pu | Entries | | | | content values | pertain to the | | +---------------+-----------------+ number of | | | N2 | Number of | separate cross | | | | :sup:`239`\ Pu | section sets | | | | values | generated for | | +---------------+-----------------+ each | | | N3 | Not used | parameter. | | | | (enter 1) | | | +---------------+-----------------+ | | | N4 | Number of | | | | | water | | | | | densities | | | +---------------+-----------------+ | | | N5 | Number of | | | | | burnup steps | | +----------------+---------------+-----------------+----------------+ | 3 | PU | Pu content | N1 entries | | | | values | | | | | (wt % Pu in | | | | | heavy metal) | | +----------------+---------------+-----------------+----------------+ | 4 | VECT | :sup:`239`\ Pu | N2 entries | | | | vector values | | | | | (wt % :sup:`239`\ Pu/Pu) | | +----------------+---------------+-----------------+----------------+ | 5 | RESRV | Not used | N3 entries; | | | | (enter 1) | dummy entry | | | | | required. | +----------------+---------------+-----------------+----------------+ | 6 | DENS | Water density | N4 entries | | | | values | | | | | (g/cm\ :sup:`3`) | | +----------------+---------------+-----------------+----------------+ | 7 | FILE | Filenames of | N1 × N2 × N3 × | | | | ORIGEN | N4 entries | | | | libraries for +----------------+ | | | this fuel | Increment FILE | | | | assembly type. | names in the | | | | Enclose each | order of N1, | | | | filename in | then N2, then | | | | single quotes | N3, and then | | | | with at least | N4 values | | | | one space | | | | | between each | | | | | name. | | +----------------+---------------+-----------------+----------------+ | 8 | BURN | Burnups | N5 entries | | | | (MWd/MTU) +----------------+ | | | corresponding | (first burnup | | | | to each | is usually | | | | position on | zero) | | | | the ORIGEN | | | | | library | | +----------------+---------------+-----------------+----------------+ | **NOTE:** Repeat all of the above entries for each fuel assembly | | configuration type | +-------------------------------------------------------------------+ .. tabularcolumns:: |\Y{0.08}|\Y{0.22}|\Y{0.22}|\Y{0.48}| .. table:: ARPDATA.TXT activation-type entry :widths: 8 22 22 48 :name: table-arpdata-act :class: longtable +----------------+---------------+-----------------+--------------------------+ | **Line no.** | **Data name** | **Description** | **Comments** | +================+===============+=================+==========================+ | 1 | CONFIGNAM | Data set name | Must begin in colummn | | | +-----------------+ one followed by the | | | | (40-character | alphanumeric name by | | | | maximum) | which this data set will | | | | | referenced. | | | | +--------------------------+ | | | | Must begin with ACT | | | | | (e.g., !actcntlrod). | +----------------+---------------+-----------------+--------------------------+ | 2 | N1 | Reserved | The first two entries | | | | (enter 1) | pertain to the number of | | +---------------+-----------------+ separate cross section | | | N2 | Not used | sets generated for each | | | | (enter 1) | variable parameter. | | +---------------+-----------------+--------------------------+ | | N3 | Number of | These are usually set to | | | | fluence values | 1. | | | +-----------------+--------------------------+ | | | | The variable N3 | | | | | corresponds to the | | | | | number of | | | | | fluence-dependent | | | | | cross section sets | | | | | available in the library.| +----------------+---------------+-----------------+--------------------------+ | 3 | RESRV | Not used | Enter 1. | | | | (enter 1) | | +----------------+---------------+-----------------+--------------------------+ | 4 | FTYPE | Neutron flux | Enter 1. | | | | type (flag) | | +----------------+---------------+-----------------+--------------------------+ | 5 | FILES | Filenames of | Generally only one | | | | ORIGEN | one library name is | | | | library. | required. | | | | Enclose | | | | | filename in | | | | | single quotes. | | +----------------+---------------+-----------------+--------------------------+ | 6 | FLUENCE | Neutron | N3 entries | | | | fluence values +--------------------------+ | | | (n/cm\ :sup`2`) | **The fluence values** | | | | at each of the | **are reduced by the** | | | | ORIGEN | **factor** | | | | libraries | :math:`10^{-24}` | | | | | **to avoid numerical** | | | | | **problems during the** | | | | | **interpolation** | | | | +--------------------------+ | | | | (First value is usually | | | | | zero.) | +----------------+---------------+-----------------+--------------------------+ | **NOTE:** Repeat all of the above entries for each fuel assembly | | configuration type | +-----------------------------------------------------------------------------+