\subsection{The \moc{CRE:} module}\label{sect:cre} The \moc{CRE:} module is used for the recovering and interpolation of nuclear properties from one or many \dds{compo} objects, originated from the transport calculations using lattice code DRAGON. A resulting \dds{macrolib} will be created (or updated) by the \moc{CRE:} module, it will contain the nuclear properties of some selected reactor materials.\\ \noindent Two types of \dds{macrolib} can be constructed using the \moc{CRE:} module: \begin{itemize} \item A \dds{macrolib} that will be constructed for the few reactor materials, namely for the devices and/or reflector properties. It can also be created for the few fuel regions defined in the reactor core. This \dds{macrolib} is permitted to be updated for the new properties in the subsequent calls to the \moc{CRE:} module. \item A fuel-map \dds{macrolib} that will be constructed over the fuel lattice only. This \dds{macrolib} will contain a set of interpolated fuel properties with respect to the burnup distribution over the fuel lattice and according to the interpolation option defined in the \dds{fmap} object. The total number of mixtures in the resulting \dds{macrolib} will equal to the total number of fuel bundles. \end{itemize} \noindent Note that the \moc{CRE:} module can be used only with the mono-parameter \dds{compo} objects and the nuclear properties can be interpolated only with respect to the burnup data. In case of the \dds{macrolib} construction from a multi-parameter database, the \moc{NCR:} module should be used instead. In this case, the interpolation of nuclear properties can be made with respect to global and local parameters, if they were previously specified in the fuel-map (see \Sect{resiniaram}).\\ \noindent The \moc{CRE:} module specifications are: \begin{DataStructure}{Structure \moc{CRE:}} $\{$ \dusa{MACRO} \moc{:=} \moc{CRE:} $[$ \dusa{MACRO} $]$ $[[$ \dusa{CPO} $]]$ \moc{::} \dstr{desccre1} $|$ \\ ~~~\dusa{MACFL} \moc{:=} \moc{CRE:} $[[$ \dusa{CPO} $]]$ \dusa{FMAP} \moc{::} \dstr{desccre2} $\}$ \end{DataStructure} \noindent where \begin{ListeDeDescription}{mmmmmmmm} \item[\dusa{MACRO}] \texttt{character*12} name of the \dds{macrolib} object to be created or updated for the few reactor material properties. Note that if \dusa{MACRO} appears on the RHS, the information previously stored in \dusa{MACRO} is kept. \item[\dusa{CPO}] \texttt{character*12} name of the \dds{compo} object containing the mono-parameter database from transport calculations. \item[\dusa{MACFL}] \texttt{character*12} name of the fuel-map \dds{macrolib} that will be created only for the fuel properties over the fuel lattice. \item[\dusa{FMAP}] \texttt{character*12} name of the \dds{fmap} object containing the fuel-map specification and burnup informations. \item[\dstr{desccre1}] structure describing the input data to the \moc{CRE:} module when the \dds{fmap} object is not specified. \item[\dstr{desccre2}] structure describing the input data to the \moc{CRE:} module for the fuel-map \dds{macrolib} construction. \end{ListeDeDescription} \subsubsection{Input data for the \moc{CRE:} module} \begin{DataStructure}{Structure \dstr{desccre1}} $[$ \moc{EDIT} \dusa{iprint} $]$ \\ $[$ \moc{NMIX} \dusa{nmix} $]$ \\ \moc{READ} $[[$ \moc{COMPO} \dusa{CPO} \dstr{descdata1} $]]$ \\ ; \end{DataStructure} \begin{DataStructure}{Structure \dstr{desccre2}} $[$ \moc{EDIT} \dusa{iprint} $]$ \\ \moc{READ} $[[$ \moc{TABLE} \dusa{CPO} \dstr{descdata2} $]]$ \\ ; \end{DataStructure} \goodbreak \noindent where \begin{ListeDeDescription}{mmmmmmmm} \item[\moc{EDIT}] keyword used to set \dusa{iprint}. \item[\dusa{iprint}] integer index used to control the printing of information on screen: = 0 for no print; = 1 for minimum printing; larger values will produce increasing amounts of output. \item[\moc{NMIX}] keyword used to define the number of material mixtures \dusa{nmix}. This data must be given only if \dusa{MACRO} is created and the \dds{fmap} object is not specified. \item[\dusa{nmix}] integer maximum number of reactor material mixtures, as defined in the reactor geometry. \item[\moc{READ}] keyword used to read the \dds{macrolib} specification from the input data file. \item[\moc{COMPO}] keyword used to indicate a simple \dds{macrolib} creation, i.e. according to the first calling specification when \dds{fmap} object is not specified. \item[\moc{TABLE}] keyword used to indicate a fuel-map \dds{macrolib} creation, i.e. according to the second calling specification with \dds{fmap} object specified. \item[\dusa{CPO}] \texttt{character*12} name of the selected \dds{compo} object. This name must appear in the calling specification to the \moc{CRE:} module. \item[\dstr{descdata1}] structure containing the interpolation specification if \moc{COMPO} is the selected option. \item[\dstr{descdata2}] structure containing the interpolation specification if \moc{TABLE} is the selected option. \end{ListeDeDescription} \begin{DataStructure}{Structure \dstr{descdata1}} $[[$ \moc{MIX} \dusa{mix} \dusa{NAMDIR} $~[$ \moc{DERIV} $]~[$ \moc{UPS} $]$ \\ ~~~~$[$ $\{$ \moc{I-BURNUP} \dusa{burn} $|$ \moc{T-BURNUP} \dusa{burn0} \dusa{burn1} $\}$ $]$ \\ ~~~~$[$ \moc{MICRO} $\{$ $[[$ \dusa{HISO} $\{$ \dusa{conc} $|$ \moc{*} $\}$ $]]~|$ \moc{ALL} $\}$ $]$ \\ \moc{ENDMIX} $]]$ \end{DataStructure} \begin{DataStructure}{Structure \dstr{descdata2}} $[[$ \moc{MIX} \dusa{mix} \dusa{NAMDIR} $~[$ \moc{DERIV} $]~[$ \moc{UPS} $]$ \\ ~~~~$[~\{$~\moc{TIMAV-BURN} $|$ \moc{INST-BURN} $|$ \moc{AVG-EX-BURN}~\dusa{ivarty}~$\}~]$ \\ ~~~~$[$ \moc{MICRO} $\{$ $[[$ \dusa{HISO} $\{$ \dusa{conc} $|$ \moc{*} $\}$ $]]~|$ \moc{ALL} $\}$ $]$ \\ \moc{ENDMIX} $]]$ \end{DataStructure} \noindent where \begin{ListeDeDescription}{mmmmmmmm} \item[\moc{MIX}] keyword used to set the material mixture \dusa{mix}. \item[\dusa{mix}] integer identifier for the material mixture that will be included in the \dds{macrolib}. The maximum number of identifiers permitted is \dusa{nmix} and the maximum value that \dusa{mix} may have is \dusa{nmix}. Note that if \moc{TABLE} is the selected option, then \dusa{mix} identifies the fuel type as defined in the reactor geometry. \item[\dusa{NAMDIR}] \texttt{character*12} directory name in the \dusa{CPO} object from which the nuclear properties for material mixture \dusa{mix} are to be recovered. \item[\moc{DERIV}] keyword used to compute the derivative of the \dds{macrolib} information with respect to \dusa{burn} or \dusa{burn1} value. By default, the \dds{macrolib} information is not differentiated. \item[\moc{UPS}] keyword used to compute properties with no up-scattering contribution. \item[\moc{TIMAV-BURN}] keyword used to compute time-averaged cross-section information. This option is available {\sl only if} \moc{TABLE} is the selected option. By default, the type of calculation (\moc{TIMAV-BURN} or \moc{INST-BURN}) is recovered from the \dusa{FMAP} object. \item[\moc{INST-BURN}] keyword used to compute cross-section information at specific bundle burnups. This option is available {\sl only if} \moc{TABLE} is the selected option. By default, the type of calculation (\moc{TIMAV-BURN} or \moc{INST-BURN}) is recovered from the \dusa{FMAP} object. \item[\moc{AVG-EX-BURN}] keyword used to compute the derivatives of cross-section information relative to the exit burnup of a single combustion zone. The derivatives are computed using Eq.~(3.3) of Ref.~\citen{chambon}, written as $$ {\partial \bar\Sigma_x\over \partial B_j^{\rm e}}={1\over B_j^{\rm e}\, (B_{j,k}^{\rm eoc}-B_{j,k}^{\rm boc})} \left[- \int_{B_{j,k}^{\rm boc}}^{B_{j,k}^{\rm eoc}}dB \, \Sigma_x(B)+B_{j,k}^{\rm eoc}\, \Sigma_x(B_{j,k}^{\rm eoc})-B_{j,k}^{\rm boc}\, \Sigma_x(B_{j,k}^{\rm boc})\right] $$ \noindent where $B_{j,k}^{\rm boc}$, $B_{j,k}^{\rm eoc}$, and $B_j^{\rm e}$ are the beginning of cycle burnup of bundle $\{j,k\}$, end of cycle burnup of bundle $\{j,k\}$ and exit burnup of channel $j$. This option is available {\sl only if} \moc{TABLE} is the selected option. \item[\dusa{ivarty}] index of the combustion zone for differentiation of cross-section information. \item[\moc{I-BURNUP}] keyword used to perform a single interpolation and to set the burnup interpolation value \dusa{burn}. \item[\dusa{burn}] real interpolation value of the burnup, given in MW$\cdot$day per tonne of initial heavy elements. \item[\moc{T-BURNUP}] keyword used to perform a time-average \dds{macrolib} evaluation between the burnup values \dusa{burn0} and \dusa{burn1}. \item[\dusa{burn0}] real initial value of the burnup, given in MW$\cdot$day per tonne of initial heavy elements. \item[\dusa{burn1}] real final value of the burnup, given in MW$\cdot$day per tonne of initial heavy elements. \item[\moc{MICRO}] keyword used to set the number densities of the extracted isotopes present in the \dds{compo} linked list or \dds{xsm} file. By default, the extracted isotopes are not added to the resulting \dds{macrolib}. \item[\dusa{HISO}] \texttt{character*12} name of an extracted isotope. \item[\dusa{conc}] user-defined real number density of the extracted isotope, given in $10^{24}$ particles per ${\rm cm}^3$. \item[\moc{*}] keyword used to indicate that the number density for the isotope \dusa{HISO} will be recovered from the \dds{compo} object. \item[\moc{ALL}] keyword used to indicate that all the number densities are to be recovered from the \dds{compo} object. \item[\moc{ENDMIX}] keyword used to indicate the end of data specification for the material mixture \dusa{mix}. \end{ListeDeDescription} \clearpage