\subsection{The {\tt DREF:} module}\label{sect:DREFData}

This module is used to set fixed sources that can be used in the right hand term of an adjoint
fixed source eigenvalue problem. This type of equation appears in generalized perturbation theory (GPT) applications.
The fixed sources set in {\tt DREF:} are corresponding to the gradient of the RMS functional which is a measure of
the discrepancy between actual and reference (or target) reaction rate distributions. The actual reaction rate distribution
is recovered from a \dusa{MICRO} or \dusa{MACRO} object. The reference reaction rate distribution is recovered from 
a \dusa{MICREF} or \dusa{MACREF} object.

\subsubsection{Minimizing the RMS error of power distribution}

The fixed sources are computed for the case where the \dds{optimize} object was initialized in module {\tt DLEAK:}. This option is used with the {\sl OPTEX
reflector model}.\cite{optex3}

Actual power values are defined as
$$
P_i\{\bff(\phi)(r)\}\equiv \left< H , \phi \right>_i=\int_0^\infty dE \int_{V_i} d^3r \, H(\bff(r),E) \, \phi(\bff(r),E)
$$

\noindent where the power factors $H(\bff(r),E)$ and fluxes $\phi(\bff(r),E)$ are recovered from {\tt H-FACTOR} and 
{\tt FLUX-INTG} records in a {\sc macrolib} object.

\vskip 0.08cm

The RMS error on power distribution is an homogeneous functional of the flux defined as
$$
{\cal F}\{\bff(\phi)(r)\}=\sum_i \left({\left< H , \phi \right>_i\over \left< H , \phi \right>} - {P^*_i\over \sum_j P^*_j} \right)^2
$$
\noindent where the reference (or target) powers $P^*_i$ are obtained from the full-core reference transport calculation.

\vskip 0.08cm

The gradient of functional ${\cal F}\{\bff(\phi)(r)\}$ is a $G$-group function of space defined as
\begin{align*}
\bff(\nabla){\cal F}\{\bff(\phi)(\zeta);\bff(r)\}={2\over \left< H , \phi \right>} \sum_i  \left({\left< H , \phi \right>_i\over \left< H , \phi \right>} -
{P^*_i\over \sum_j P^*_j}\right)\left( \delta_i(\bff(r))-{\left< H , \phi \right>_i\over \left< H , \phi \right>} \right) \left[\begin{matrix}H_1(\bff(r))\cr H_2(\bff(r)) \cr \vdots \cr H_G(\bff(r)) \end{matrix}\right]
\end{align*}

\noindent where $\delta_i(\bff(r))=1$ if $\bff(r) \in V_i$ and $=0$ otherwise.

\vskip 0.08cm

Each fixed source $\bff(\nabla){\cal F}\{\bff(\phi)(\zeta);\bff(r)\}$ is orthogonal to the flux $\bff(\phi)(\bff(r))$.

\subsubsection{Minimizing the RMS error associated with SPH factor calculation}\label{sect:sph_newton}

The fixed sources are computed for the case where the \dds{optimize} object was initialized in module {\tt DSPH:}. Module
{\tt DREF} is call to compute the gradients required for computing SPH factors using an optimization algorithm (OPTEX in
{\tt PLQ:}, quasi-Newton in {\tt LNSR:}, Newton in {\tt FPSPH:}). Module {\tt DREF} computes the direct gradients and the
fixed sources to be used in a fixed-source eigenvalue problem originating from the generalized perturbation theory (GPT).

\vskip 0.08cm

Fundamental mode conditions are the cases where no neutron is leaking due to the boundary conditions. In the case where the macro-calculation over macro-group $g$ is done
in non-fundamental mode conditions, it is proposed to apply a SPH correction
on the {\sl albedo functions} corresponding to boundaries with a non-conservative condition in the reference calculation.\cite{sph2019} If the macro calculation is performed in diffusion
or $P_1$ approximation, the albedo function $\Lambda(\beta_g)$ corresponding to a non-conservative boundary is defined as
\begin{equation}
\Lambda(\beta_g)={1\over 2}{1-\beta_g \over 1+\beta_g}
\label{eq:eq1.6}
\end{equation}
\noindent where $\beta_g$ is the albedo in macro-group $g$. The net current $\bff(J)_g(\bff(r))$ escaping the domain at point $\bff(r)$ of the boundary is given by the {\sl albedo boundary condition} as
\begin{equation}
-\bff(J)_g(\bff(r))\cdot\bff(N)(\bff(r))+\Lambda(\beta_g) \, \phi_g(\bff(r))=0 \ \ \ \ {\rm if} \ \bff(r) \in \partial V
\label{eq:eq1.7}
\end{equation}

\noindent where $\partial V$ is the fraction of the domain where the non-conservative boundary condition is applied and $\bff(N)(\bff(r))$ is the outgoing normal unit vector.

\vskip 0.08cm

The integrated flux are defined over the macro-region $m$ and macro-group $g$ as
\begin{equation}
F_{m,g}\equiv \left< \phi \right>_{m,g}=\int_{V_m} d^3r \, \phi_g(\bff(r))
\label{eq:eq1.7a}
\end{equation}

\vskip 0.08cm

The net leakage $L_{g}$ over each macro group due to non conservative boundary conditions is defined as
\begin{equation}
L_{g}\equiv \left< \Lambda\phi\right>_g= \int_{\partial V} d^2r \, \Lambda(\beta_g) \, \phi_g(\bff(r)) =\int_{\partial V} d^2r \,\bff(J)_g(\bff(r))\cdot \bff(N)(\bff(r))\ .
\label{eq:eq1.8}
\end{equation}

\vskip 0.08cm

In order to preserve the neutron balance in macro-group $g$, cross section data and albedo functions must all be SPH corrected. The correction specific to albedo functions is written
\begin{equation}
\tilde\Lambda_g=\mu_{M+1,g}\, \Lambda^*_g
\label{eq:eq1.9}
\end{equation}
\noindent where $M$ is the total number of macro-regions and $\Lambda^*_g$ is the albedo function of the reference calculation in macro-group $g$. This
correction technique is proposed as an alternative to the discontinuity factor correction used by Ref. \citen{inl}.

\vskip 0.08cm

In fundamental mode conditions and in cases where Eq.~(\ref{eq:eq1.9}) is used, an infinity of
SPH factor sets can satisfy the reference reaction rates in each macro-group $g$.
A unique set is selected with the application of an arbitrary normalization condition. The simplest option is to use the {\sl flux-volume normalization condition} which consists to preserve the averaged flux
in the lattice. This normalization condition, satisfied in each macro-group $g$, is written
\begin{equation}
\sum_{m=1}^M \int_{V_m} d^3r \ \widetilde\phi_{g}(\bff(r))=\sum_{m=1}^M F_{m,g}^{*} \ , \ \ g \le G
\label{eq:eq1.10}
\end{equation}
\noindent where $F_{m,g}^{*}$ is the volume-integrated flux in macro-region $V_m$ and macro-group $g$ of the reference calculation.

\vskip 0.08cm

Equation~(\ref{eq:eq1.10}) can be rewritten as
\begin{equation}
\sum_{m=1}^M {F_{m,g}^{*}\over \mu_{m,g}}=\sum_{m=1}^M F_{m,g}^{*}  \ , \ \ g \le G .
\label{eq:eq1.11}
\end{equation}

The absorption rates are defined over the macro-region $m$ and macro-group $g$ as
\begin{equation}
P_{{\rm a},m,g}\equiv \left< \Sigma_{\rm a} , \phi \right>_{m,g}=\int_{V_m} d^3r \, \Sigma_{{\rm a},g}(\bff(r)) \, \phi_g(\bff(r))
\label{eq:eq2.2}
\end{equation}
\noindent where $i\le I$ and $g\le G$ and where

\begin{equation}
\Sigma_{{\rm a},g}(\bff(r))=\Sigma_g(\bff(r))-\Sigma_{{\rm s},g}(\bff(r)) .
\label{eq:eq2.3}
\end{equation}

\vskip 0.08cm

The $\nu$-fission rates are defined over the macro-region $m$ and macro-group $g$ as
\begin{equation}
P_{{\rm f},m,g}\equiv \left< \nu\Sigma_{\rm f} , \phi \right>_{m,g}=\int_{V_m} d^3r \, \nu\Sigma_{{\rm f},g}(\bff(r)) \, \phi_g(\bff(r))
\label{eq:eq2.2b}
\end{equation}
\noindent where $i\le I$ and $g\le G$ and where $\nu\Sigma_{{\rm f},g}(\bff(r))$ is the macroscopic fission cross section multiplied by the averaged number of neutrons emitted per fission.

\vskip 0.08cm

The absorption and $\nu$-fission  cross sections are corrected according to
\begin{equation}
\Sigma_{{\rm a},m,g}=\mu_{m,g}\, \Sigma^*_{{\rm a},m,g} =\mu_{m,g}\, {P^*_{{\rm a},m,g} \over F^*_{m,g}}
\label{eq:eq2.4}
\end{equation}

\noindent and
\begin{equation}
\nu\Sigma_{{\rm f},m,g}=\mu_{m,g}\, \nu\Sigma^*_{{\rm f},m,g} =\mu_{m,g}\, {P^*_{{\rm f},m,g} \over F^*_{m,g}}
\label{eq:eq2.4b}
\end{equation}

\noindent where the reference integrated fluxes $F^*_{m,g}$ are also obtained from the full-core reference transport calculation. The SPH factors are normalized in each macro energy group
according to
\begin{equation}
\sum_{j=1}^M{F^*_{j,g} \over \mu_{j,g}} = \sum_j F^*_{j,g}  \ , \ \ g \le G .
\label{eq:eq2.5}
\end{equation}

\vskip 0.08cm

The RMS error on absorption distribution is an homogeneous functional of the flux defined as
\begin{equation}
{\cal F}\{\bff(\phi)(\bff(r))\}=\sum_{m=1}^{M+2} \sum_{g=1}^G \left( f_{m,g}\{\bff(\phi)(\bff(r))\} \right)^2
\label{eq:eq2.6}
\end{equation}
\noindent where the components $f_{m,g}\{\bff(\phi)(\bff(r))\}$ are the $M+2$ conditions to satisfy in each macro-group. They are defined as
\begin{equation}
f_{m,g}\{\bff(\phi)(\bff(r))\}=\begin{cases} {{\displaystyle \left< \Sigma_{\rm a} , \phi \right>_{m,g}\over\displaystyle  \left< \Sigma_{\rm a} , \phi \right>} {\displaystyle P^*_{{\rm a},{\rm tot}}\over \displaystyle  \Delta_{{\rm a},m,g} } - {\displaystyle  P^*_{{\rm a},m,g} \over \displaystyle \Delta_{{\rm a},m,g} }} & \text{if $m\le M$} \\
\sqrt{M}\left( {\displaystyle \left<\Lambda+\Sigma_{\rm a} , \phi\right>_g\over\displaystyle  \left< \nu\Sigma_{\rm f} ,\phi \right>} {\displaystyle P^*_{{\rm f},{\rm tot}}\over\displaystyle  \Delta_{{\rm L},g} } - {\displaystyle L^*_{g}+P^*_{{\rm a},g} \over\displaystyle  \Delta_{{\rm L},g}}\right) & \text{if $m = M+1$} \\
{\displaystyle 1\over \displaystyle F^*_g}\sum\limits_{j=1}^M {\displaystyle F^*_{j,g} \over \displaystyle \mu_{j,g}} - 1  & \text{if $m= M+2$} \end{cases} 
\label{eq:eq2.7}
\end{equation}

\noindent with
\begin{description}
\item[$P^*_{{\rm a},m,g}=$] reference (or target) absorption rates obtained from the full-core reference transport calculation
\item[$P^*_{{\rm f},m,g}=$] reference (or target) $\nu$-fission rates obtained from the full-core reference transport calculation
\item[$\Delta_{{\rm a},m,g}=$] low limit absorption rates defined as $\max \left( 10^{-4} P^*_{{\rm a},{\rm tot}},P^*_{{\rm a},m,g}\right)$ in order to avoid
division by small numbers.
\item[$L^*_{g}=$] reference leakage in macro-group $g$
\item[$\Lambda(\bff(r))=$] albedo function defined on the non-conservative boundaries $\partial V$ of the domain
\item[$\Delta_{{\rm L},g}=$] low limit leakage defined as $\max \left( 10^{-4} P^*_{{\rm f},{\rm tot}},L^*_{g}+P^*_{{\rm a},g} \right)$ in order to avoid
division by small numbers.
\end{description}

\noindent and where $P^*_{{\rm a},g}=\sum_m P^*_{{\rm a},m,g}$, $P^*_{{\rm a},{\rm tot}}=\sum_g P^*_{{\rm a},g}$, $P^*_{{\rm f},{\rm tot}}=\sum_m \sum_g P^*_{{\rm f},m,g}$ and $F^*_g=\sum_m F^*_{m,g}$.

\vskip 0.08cm

The condition $m=M+1$ in 
Eq.~(\ref{eq:eq2.7}) is based on the preservation of the effective multiplication factor of the core. The SPH normalization relations~(\ref{eq:eq1.11}) are
included in the RMS error in order to simplify the optimization process.

\vskip 0.08cm

The gradient of functional~(\ref{eq:eq2.6}) with respect to a variation of flux $\phi$ is a $G$-group function of space whose components are defined as
\begin{equation}
\nabla {\cal F}_g\{\bff(\phi)(\bff(\zeta));\bff(r)\}=\left[ {d\over d\epsilon}{\cal F}\{\bff(\phi)(\bff(\zeta))+\epsilon \, \bff(\delta)_g(\bff(\zeta)-\bff(r))\}\right]_{\epsilon=0} ; \ \ g=1,G
\label{eq:eq2.7a}
\end{equation}
\noindent where $\bff(\delta)_g(\bff(\zeta)-\bff(r))$ is a multidimensional Dirac delta distribution defined as
\begin{equation}
\bff(\delta)_g(\bff(\zeta)-\bff(r))={\rm col} \left[\delta_{g,h} \, \delta(\bff(\zeta)-\bff(r)) \, , \, h=1,G \right]
\label{eq:eq2.7b}
\end{equation}
\noindent where $\delta_{g,h}$ is a Kronecker delta function and $\delta(\bff(\zeta)-\bff(r))$ is the classical Dirac delta distribution.

\vskip 0.08cm
Next, we evaluate the gradient of each component $f_{m,g}\{\bff(\phi)(\bff(r))\}$ with respect to the SPH factors and we construct a rectangular matrix $\shadowA$, of size $(M+2)G\times (M+1)G$, defined as
\begin{equation}
\shadowA=\left\{ {\partial f_{m,g}\over \partial \mu_{n,h}}  ; \ \ m\le M+2, \ n \le M+1, \ g\le G, \ h\le G \right\} .
\label{eq:eq2.8}
\end{equation}

\vskip 0.08cm

We first evaluate the direct contribution of these derivatives for a variation of the SPH factors assigned to cross sections (i.e., for $n\le M$). Direct contributions are the chain rule terms not involving a variation in flux. These direct
gradients are
\begin{equation}
\left.{\partial f_{m,g}\over \partial \mu_{n,h}}\right|^{\rm direct} \negthinspace\negthinspace ={\left< \Sigma_{\rm a} , \phi \right>_{m,g}\over \mu_{n,h} \left< \Sigma_{\rm a} , \phi \right>} {P^*_{{\rm a},{\rm tot}}\over \Delta_{{\rm a},m,g} } \left( \delta_{m,n}\delta_{g,h}-{\left< \Sigma_{\rm a} , \phi \right>_{n,h}\over \left< \Sigma_{\rm a} , \phi \right>} \right) \ \ {\rm if} \ m\le M
\label{eq:eq2.9}
\end{equation}

\begin{equation}
\left.{\partial f_{M+1,g}\over \partial \mu_{n,h}}\right|^{\rm direct} \negthinspace\negthinspace =   { \sqrt{M} \over  \mu_{n,h}  \left< \nu\Sigma_{\rm f},\phi\right>}  {P^*_{{\rm f},{\rm tot}}\over  \Delta_{{\rm L},g} } 
\left( \delta_{g,h}\left<\Sigma_{\rm a} ,\phi\right>_{n,h}-\left<\Lambda+\Sigma_{\rm a}  ,\phi\right>_g {\left< \nu\Sigma_{\rm f} ,\phi \right>_{n,h} \over  \left< \nu\Sigma_{\rm f},\phi\right>}\right)
\label{eq:eq2.10}
\end{equation}

\noindent and
\begin{equation}
\left.{\partial f_{M+2,g}\over \partial \mu_{n,h}}\right|^{\rm direct} \negthinspace\negthinspace = -\delta_{g,h}\, {F^*_{n,g} \over \mu_{n,g}^2 F^*_g} .
\label{eq:eq2.11}
\end{equation}

\vskip 0.08cm

The SPH factors assigned to the albedo functions are not responsible for any direct contributions to the derivatives of component $f_{m,g}\{\bff(\phi)(\bff(r))\}$. Consequently,
\begin{equation}
\left.{\partial f_{m,g}\over \partial \mu_{M+1,h}}\right|^{\rm direct}=0 .
\label{eq:eq2.11a}
\end{equation}

\vskip 0.08cm

The indirect gradient of each component $f_{m,g}\{\bff(\phi)(\bff(r))\}$ with respect to the SPH factors are an effect of {\sl flux variation} and are obtained using {\sl generalized perturbation theory} (GPT). The gradient of functional $f_{m,g}\{\bff(\phi)(\bff(r))\}$ with respect to a variation of flux is a $G$-group function of space defined as
\begin{equation}
\bff(\nabla)f_{m,g}\{\bff(\phi)(\bff(\zeta));\bff(r)\}=\left[\begin{matrix}f_{m,g,1}\{\bff(\phi)(\bff(\zeta));\bff(r)\} \cr f_{m,g,2}\{\bff(\phi)(\bff(\zeta));\bff(r)\}  \cr \vdots\cr f_{m,g,G}\{\bff(\phi)(\bff(\zeta));\bff(r)\} \end{matrix}\right]
\label{eq:eq2.12}
\end{equation}

\noindent where the group-$h$ components are
\begin{equation}
\nabla f_{m,g,h}\{\bff(\phi)(\bff(\zeta));\bff(r)\} = {\Sigma_{{\rm a},h}(\bff(r))\over \left< \Sigma_{\rm a} , \phi \right>} {P^*_{{\rm a},{\rm tot}}\over \Delta_{{\rm a},m,g} } \left( \delta_m(\bff(r)) \, \delta_{g,h}-
{\left< \Sigma_{\rm a} , \phi \right>_{m,g}\over \left< \Sigma_{\rm a} , \phi \right>} \right) \ \ {\rm if} \ m\le M
\label{eq:eq2.13}
\end{equation}
\noindent where $\delta_m(\bff(r))=1$ if $\bff(r) \in V_m$ and $=0$ otherwise,

\begin{eqnarray}
\nonumber \nabla f_{M+1,g,h}\{\bff(\phi)(\bff(\zeta));\bff(r)\} \negthinspace &=& \negthinspace { \sqrt{M} \over \left< \nu\Sigma_{\rm f} , \phi \right>} {P^*_{{\rm f},{\rm tot}}\over \Delta_{{\rm L},g} } \bigg[ \left(\Lambda_{h}(\bff(r))+\Sigma_{{\rm a},h}(\bff(r))\right) \, \delta_{g,h} \\
&-& \negthinspace \nu\Sigma_{{\rm f},h}(\bff(r))\, {\left< \Lambda+\Sigma_{\rm a} , \phi \right>_{g}\over \left< \nu\Sigma_{\rm f} , \phi \right>} \bigg]
\label{eq:eq2.14}
\end{eqnarray}

\noindent and
\begin{equation}
\nabla f_{M+2,g,h}\{\bff(\phi)(\bff(\zeta));\bff(r)\} = 0 .
\label{eq:eq2.15}
\end{equation}

\vskip 0.08cm

We first compute the gradient $\bff(g)$ of the RMS error with respect to a variation of the SPH factors. We define three column vectors as
\begin{equation}
\bff(f)={\rm col} \left\{ f_{m,g}\{\bff(\phi)(\bff(r))\} \ ; \ \ m\le M+2, \ g\le G \right\} ,
\label{eq:eq2.16}
\end{equation}

\begin{equation}
\bff(\nabla)\bff(f)={\rm col} \left\{ \bff(\nabla)f_{m,g}\{\bff(\phi)(\bff(\zeta));\bff(r)\} \ ; \ \ m\le M+2, \ g\le G \right\} 
\label{eq:eq2.17}
\end{equation}

\noindent and
\begin{equation}
\bff(g)={\rm col} \left\{ {\partial {\cal F}\{\bff(\phi)(\bff(r))\} \over \partial \mu_{n,h}} ; \ \ n\le M+1, \ h\le G \right\} .
\label{eq:eq2.18}
\end{equation}

\vskip 0.08cm

From Eqs.~(\ref{eq:eq2.6}) and~(\ref{eq:eq2.7a}), we have
\begin{equation}
{\cal F}\{\bff(\phi)(\bff(r))\}=\bff(f)^\top \bff(f)
\label{eq:eq2.19}
\end{equation}

\noindent and
\begin{equation}
\bff(\nabla){\cal F}\{\bff(\phi)(\bff(\zeta));\bff(r)\}=2\bff(f)^\top \bff(\nabla)\bff(f)
\label{eq:eq2.20}
\end{equation}

\noindent so that
\begin{equation}
{\partial {\cal F} \over \partial \mu_{n,h}} =2\sum_{m=1}^{M+2} \sum_{g=1}^G  f_{m,g}\,  {\partial  f_{m,g} \over  \partial \mu_{n,h}}
\label{eq:eq2.21}
\end{equation}

\noindent where the derivatives of $f_{m,g}$ are computed taking into account both direct and indirect contributions:
\begin{equation}
{\partial  f_{m,g} \over  \partial \mu_{n,h}}=\left.{\partial  f_{m,g} \over  \partial \mu_{n,h}}\right|^{\rm direct}+\left< \bff(\nabla) f_{m,g}\{\bff(\phi)(\bff(\zeta));\bff(r)\},{\partial\over \partial\mu_{n,h}}\bff(\phi)(\bff(r))\right>
\label{eq:eq2.22}
\end{equation}

\noindent and where the bracket stands for a summation over the $G$ energy groups and an integration over the domain. The flux derivatives $\partial\bff(\phi) / \partial\mu_{n,h}$ are $G$-group functions obtained using generalized perturbation theory.

\vskip 0.08cm

Equation~(\ref{eq:eq2.21}) can be rewritten in matrix form as
\begin{equation}
\bff(g)=2 \shadowA^\top \bff(f) .
\label{eq:eq2.23}
\end{equation}

\vskip 0.08cm

The bracket term in Eq.~(\ref{eq:eq2.22}) is computed by module {\tt GRAD:}, outside module {\tt DREF:}. Module
{\tt GRAD:} compute only the {\sl direct contributions} of the gradients:
\begin{itemize}
\item By default, the objective function ${\cal F}\{\bff(\phi)(\bff(r))\}$ and direct components of vector $\bff(g)$ are computed.
\item If keyword {\tt NEWTON} is set, individual components $f_{m,g}\{\bff(\phi)(\bff(r))\}$ and direct components of matrix $\shadowA$ are computed.
\end{itemize}

\subsubsection{Calling specifications}

The calling specifications for module {\tt DREF:} are:

\begin{DataStructure}{Structure \dstr{DREF:}}
\dusa{SOURCE}~\dusa{OPTIM}~\moc{:=}~\moc{DREF:}~\dusa{OPTIM}~\dusa{FLUX}~\dusa{TRACK}~$\{$~\dusa{MICRO}~$|$~\dusa{MACRO}~$\}$ \\
~~~~~~$\{$~\dusa{MICREF}~$|$~\dusa{MACREF}~$\}$ \\
~~~~~~$[$ \moc{::}~$[$ \moc{EDIT}~\dusa{iprint} $]~[$ \moc{NODERIV} $]~[$ \moc{NEWTON} $]~[$ \moc{RMS} {\tt>>}\dusa{RMS\_VAL}{\tt <<}~$]~~]$~;
\end{DataStructure}

\noindent where
\begin{ListeDeDescription}{mmmmmmm}

\item[\dusa{SOURCE}] {\tt character*12} name of a {\sc fixed sources} (type {\tt L\_SOURCE}) object open in creation
mode. This object contains the adjoint fixed source corresponding to the RMS error on power distribution.

\item[\dusa{OPTIM}] \texttt{character*12} name of the \dds{optimize} object ({\tt L\_OPTIMIZE} signature) containing the
optimization informations. Object \dusa{OPTIM} must appear on both LHS and RHS to be able to update the previous values.

\item[\dusa{FLUX}] {\tt character*12} name of the actual {\sc flux} (type {\tt L\_FLUX}) object open in read-only mode.

\item[\dusa{TRACK}] {\tt character*12} name of the actual {\sc tracking} (type {\tt L\_TRACK}) object open in read-only mode.

\item[\dusa{MICRO}] {\tt character*12} name of the actual {\sc microlib} (type {\tt L\_LIBRARY}) object open in read-only mode. The information on
the embedded macrolib is used.

\item[\dusa{MACRO}] {\tt character*12} name of the actual {\sc macrolib} (type {\tt L\_MACROLIB}) object open in read-only mode.

\item[\dusa{MICREF}] {\tt character*12} name of reference (or target) {\sc microlib} (type {\tt L\_LIBRARY}) object open in read-only mode. The
information contained in the embedded macrolib is used to compute $P^*_i$ values.

\item[\dusa{MACREF}] {\tt character*12} name of reference (or target) {\sc macrolib} (type {\tt L\_MACROLIB}) object open in read-only mode. This
information is used to compute $P^*_i$ values.

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

\item[\dusa{iprint}] index used to control the printing in module {\tt DREF:}. =0 for no print; =1 for minimum printing (default value).

\item[\moc{NODERIV}] keyword used to stop processing of {\tt DREF:} module after calculation of objective function. By default, information
related to the gradient of the RMS functional is also computed.

\item[\moc{NEWTON}] keyword used to enable the detailed calculation of gradient for all components of the objective function, as required by a
full Newtonian approach. By default, only the gradient of the objective function is computed.

\item[\moc{RMS}] keyword used to recover the RMS error on power or absorption distribution in a CLE-2000 variable.

\item[\dusa{RMS\_VAL}] {\tt character*12} CLE-2000 variable name in which the extracted RMS value will be placed. This variable should be
declared real or double precision.

\end{ListeDeDescription}

\eject
