From 7dfcc480ba1e19bd3232349fc733caef94034292 Mon Sep 17 00:00:00 2001
From: stainer_t <thomas.stainer@oecd-nea.org>
Date: Mon, 8 Sep 2025 13:48:49 +0200
Subject: Initial commit from Polytechnique Montreal

---
 doc/IGE344/SectDREF.tex | 386 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 386 insertions(+)
 create mode 100644 doc/IGE344/SectDREF.tex

(limited to 'doc/IGE344/SectDREF.tex')

diff --git a/doc/IGE344/SectDREF.tex b/doc/IGE344/SectDREF.tex
new file mode 100644
index 0000000..1f0668a
--- /dev/null
+++ b/doc/IGE344/SectDREF.tex
@@ -0,0 +1,386 @@
+\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
-- 
cgit v1.2.3

