\subsection{The {\tt DLEAK:} module}

The {\tt DLEAK:} module is used to create a delta {\sc macrolib} (type {\tt L\_MACROLIB}) with respect to leakage information.
Derivatives of leakage-related information (recovered from the input {\sc macrolib}) are stored in the {\tt STEP} heteroneneous list components
present in the output {\sc macrolib}. Derivatives can be taken with respect to a leakage parameter itself
($D_{g,i}$ or $\Sigma_{1,g,i}$) or relative to factor $\mu$ in $\mu D_{g,i}$ or $\mu\Sigma_{1,g,i}$. Note that factor $\mu$ is not a
SPH factor because it multiplies only leakage-related parameters. One component of the
{\tt STEP} heteroneneous list is created for each value of energy group $g$ and for each value of mixture $i$.

\vskip 0.08cm

The calling specifications are:

\begin{DataStructure}{Structure \dstr{DLEAK:}}
\dusa{DMACRO} \dusa{OPTIM} \moc{:=} \moc{DLEAK:} \dusa{MACRO} \moc{::} \dstr{dleak\_data}
\end{DataStructure}

\goodbreak
\noindent where

\begin{ListeDeDescription}{mmmmmm}

\item[\dusa{DMACRO}] {\tt character*12} name of a {\sc lcm} object (type {\tt L\_MACROLIB}) containing the delta {\sc macrolib}
information. \dusa{DMACRO} is created by the module. A {\tt STEP} heteroneneous list is present in \dusa{DMACRO}.

\item[\dusa{OPTIM}] {\tt character*12} name of a second {\sc lcm} object (type {\tt L\_OPTIMIZE}) created by the module. Leakage-related parameters are saved
in the the control variable record {\tt 'VAR-VALUE'} of \dusa{OPTIM} object. Input data defined in Sect.~\ref{sect:dleak_data} is
also saved in \dusa{OPTIM} object.

\item[\dusa{MACRO}] {\tt character*12} name of the {\sc lcm} object (type {\tt L\_MACROLIB}) containing the input {\sc macrolib}.

\item[\dstr{dleak\_data}] structure containing the data to module {\tt DLEAK:} (see Sect.~\ref{sect:dleak_data}).

\end{ListeDeDescription}

\vskip 0.2cm

\subsubsection{Data input for module {\tt DLEAK:}}\label{sect:dleak_data}

\begin{DataStructure}{Structure \dstr{dleak\_data}}
$[$ \moc{EDIT} \dusa{iprint} $]$ \\
\moc{TYPE} $\{$ \moc{DIFF} $|$ \moc{NTOT1} $\}$ \\
\moc{DELTA} $\{$ \moc{VALUE} $|$ \moc{FACTOR} $\}$ \\
$[$ \moc{MIXMIN} \dusa{ibm1} $]~[$ \moc{MIXMAX} \dusa{ibm2} $]$\\
$[$ \moc{GRPMIN} \dusa{ngr1} $]~[$ \moc{GRPMAX} \dusa{ngr2} $]$\\
;
\end{DataStructure}

\noindent where
\begin{ListeDeDescription}{mmmmmm}

\item[\moc{EDIT}] keyword used to set \dusa{iprint}.

\item[\dusa{iprint}] index used to control the printing in module {\tt DLEAK:}.

\item[\moc{TYPE}] keyword used to set the leakage parameter that is differentiated.

\item[\moc{DIFF}] differentiation with respect to diffusion coefficients.

\item[\moc{NTOT1}] differentiation with respect to $P_1$-weighted macroscopic total cross sections.

\item[\moc{DELTA}] keyword used to set the type of differentiation.

\item[\moc{VALUE}] differentiation with respect to the leakage parameter itself.

\item[\moc{FACTOR}] differentiation with respect to the correction factor $\mu$.

\item[\moc{MIXMIN}] keyword used to set the first mixture where leakage parameters are differentiated. By default,
the first mixture index is used.

\item[\dusa{ibm1}] minimum mixture index where leakage parameters are differentiated.

\item[\moc{MIXMAX}] keyword used to set the last mixture where leakage parameters are differentiated. By default,
the total number of mixtures in \dusa{MACRO} is used.

\item[\dusa{ibm2}] maximum mixture index where leakage parameters are differentiated.

\item[\moc{GRPMIN}] keyword used to set the first energy group where leakage parameters are differentiated. By default,
the first energy group index is used.

\item[\dusa{ngr1}] minimum energy group index where leakage parameters are differentiated.

\item[\moc{GRPMAX}] keyword used to set the last energy group where leakage parameters are differentiated. By default,
the total number of energy groups in \dusa{MACRO} is used.

\item[\dusa{ngr2}] maximum energy group index where leakage parameters are differentiated.

\end{ListeDeDescription}
\clearpage
