summaryrefslogtreecommitdiff
path: root/doc/IGE351/SectDsaphyb.tex
diff options
context:
space:
mode:
Diffstat (limited to 'doc/IGE351/SectDsaphyb.tex')
-rw-r--r--doc/IGE351/SectDsaphyb.tex783
1 files changed, 783 insertions, 0 deletions
diff --git a/doc/IGE351/SectDsaphyb.tex b/doc/IGE351/SectDsaphyb.tex
new file mode 100644
index 0000000..a0b1536
--- /dev/null
+++ b/doc/IGE351/SectDsaphyb.tex
@@ -0,0 +1,783 @@
+\section{Contents of a \dir{saphyb} directory}\label{sect:sapdir}
+
+This object is used to collect information gathered
+from many DRAGON {\sl elementary calculations} performed under various conditions.
+Each elementary calculation is characterized by a tuple of {\sl global parameters}.
+These global parameters are of different types, depending on the nature of the
+study under consideration: type of assembly, power, temperature in a mixture,
+concentration of an isotope, time, burnup or exposure rate in a depletion calculation,
+etc. Each step of a depletion calculation represents an elementay calculation.
+The {\sc saphyb} object is often presented as a {\sl multi-parameter reactor database}.
+It is used in the SAPHYR code system.
+
+\vskip 0.1cm
+
+The {\sc saphyb} object contains table-of-content information apart from a set of specific
+{\sl elementary calculation} directories. These directories are themselve subdivided
+into {\sl homogenized mixture} directories. The localization of an elementary calculation
+is done using a tuple of global parameters. The elementary calculation indices are
+stored in a tree with the number of levels equal to the number of global parameters.
+An example of a tree with three global parameters is shown in \Fig{tree}. Each node
+of this tree is associated with the index of the corresponding global parameter and with the
+reference to the daughter nodes if they exist. The number if leafs is equal to the number
+of nodes for the last (third) parameter and is equal to the number of elementary
+calculations stored in the {\sc saphyb} object. The index of each elementary calculation is
+therefore an attribute of each leaf.
+
+\begin{figure}[h!]
+\begin{center}
+\epsfxsize=12cm
+\centerline{ \epsffile{tree.eps}}
+\parbox{14cm}{\caption{Global parameter tree in a {\sc saphyb} object}\label{fig:tree}}
+\end{center}
+\end{figure}
+
+\vskip 0.1cm
+
+In each homogenized mixture directory, the {\tt SAP:} module recovers
+cross sections for a number of {\sl particularized isotopes} and {\sl macroscopic
+sets}, a collection of isotopic cross sections weighted by isotopic number densities.
+Cross sections for particularized isotopes and macroscopic sets are recovered for
+{\sl selected reactions}. Other information is also recovered: multigroup neutron
+fluxes, isotopic number densities, fission spectrum and a set
+of {\sl local variables}. The local variables are values that characterize each
+homogenized mixture: local power, burnup, exposure rate, etc. Some local variables
+are arrays of values (eg: SPH equivalence factors). Finally, note that cross section
+information written on the {\sc saphyb} is {\sl not} transport corrected and {\sl not}
+SPH corrected.
+
+\subsection{The main \dir{saphyb} directory}\label{sect:sapdirmain}
+
+On its first level, the
+following records and sub-directories will be found in the \dir{saphyb} directory:
+
+\begin{DescriptionEnregistrement}{Main records and sub-directories in \dir{saphyb}}{8.0cm}
+\CharEnr
+ {SIGNATURE\blank{3}}{$*12$}
+ {Signature of the data structure $\mathsf{SIGNA}$}
+\CharEnr
+ {TITLE\blank{7}}{$*80$}
+ {Signature of the data structure (for this level of specification,$=${\tt'SAPHYB LIBRARY VER, 0.02'})}
+\CharEnr
+ {NOMLIB\blank{6}}{$*80$}
+ {User--defined name of the data structure}
+\IntEnr
+ {DIMSAP\blank{6}}{$50$}
+ {Vector describing the various parameters associated with this data structure $\mathcal{S}^{\tt sap}_{i}$}
+\OptCharEnr
+ {COMMEN\blank{6}}{$(N^{\tt sap}_1)*80$}{$\mathcal{S}^{\tt sap}_1> 0$}
+ {User--defined comments about the data structure}
+\DirEnr
+ {constphysiq\blank{1}}
+ {General physical data}
+\DirEnr
+ {contenu\blank{5}}
+ {Content description}
+\DirEnr
+ {geom\blank{8}}
+ {Geometric data}
+\DirEnr
+ {adresses\blank{4}}
+ {General localization data for the cross sections}
+\DirEnr
+ {paramdescrip}
+ {General localization data for the global parameters}
+\DirEnr
+ {paramarbre\blank{2}}
+ {Global parameter tree}
+\DirEnr
+ {paramvaleurs}
+ {Global parameter values}
+\DirEnr
+ {varlocdescri}
+ {General localization data for the local variables}
+\DirVar
+ {\listedir{caldir}}
+ {Set of $\mathcal{S}^{\tt sap}_{19}$ sub-directories containing the cross section information
+ associated with a specific elementary calculation.}
+\end{DescriptionEnregistrement}
+
+The signature variable for this data structure must be $\mathsf{SIGNA}$=\verb*|L_SAPHYB |.
+
+\vskip 0.1cm
+
+The name of each \listedir{caldir} directory is a {\tt character*12} variable ({\tt text12})
+composed using the following FORTRAN instruction:
+$$
+\mathtt{WRITE(}\mathsf{text12}\mathtt{,'(''calc'',I8)')}\: J
+$$
+where $J$ is the index of the calculation with $1 \leq J \leq \mathcal{S}^{\tt sap}_{19}$.
+
+\vskip 0.1cm
+
+The dimensioning parameters for this data structure, which are stored in the state vector
+$\mathcal{S}^{\tt sap}$ named {\tt DIMSAP}, are defined in the following table:
+
+\vskip 0.1cm
+
+\noindent\begin{tabular}{ p{1cm} p{2cm} p{11cm} }
+\multicolumn{3}{ c }{Values in \moc{DIMSAP} } \\
+\hline
+ & {\tt DIMSAP} & \\
+\hline
+$\mathcal{S}^{\tt sap}_1$ & \moc{NCOMLI} & Number of lines of comment \\
+$\mathcal{S}^{\tt sap}_2$ & \moc{NISOTA} & Number of isotopes in the reference cross section library \\
+$\mathcal{S}^{\tt sap}_3$ & \moc{NCHANN}$^{*}$ & Number of types of radioactive decay reactions \\
+$\mathcal{S}^{\tt sap}_4$ & \moc{NREA}$^{*}$ & Number of neutron--induced reaction \\
+$\mathcal{S}^{\tt sap}_5$ & \moc{NISO}$^{*}$ & Number of particularized isotopes \\
+$\mathcal{S}^{\tt sap}_6$ & \moc{NMAC}$^{*}$ & Number of macroscopic sets. \\
+$\mathcal{S}^{\tt sap}_7$ & \moc{NMIL} & Number of mixtures in the {\sc saphyb} \\
+$\mathcal{S}^{\tt sap}_8$ & \moc{NPAR} & Number of global parameters \\
+$\mathcal{S}^{\tt sap}_9$ & \moc{NPCHR} & Number of global parameters linked with isotopes \\
+$\mathcal{S}^{\tt sap}_{10}$ & \moc{NPPNT} & Number of global parameters linked with {\sc microlib} objects \\
+$\mathcal{S}^{\tt sap}_{11}$ & \moc{NPARL}$^{*}$ & Number of local variables. \\
+\hline
+\end{tabular}
+\goodbreak
+\noindent\begin{tabular}{ p{1cm} p{2cm} p{11cm} }
+\multicolumn{3}{ c }{Values in \moc{DIMSAP} (cntd.)} \\
+\hline
+ & {\tt DIMSAP} & \\
+\hline
+$\mathcal{S}^{\tt sap}_{12}$ & \moc{NPCHRL}$^{*}$ & Number of local variables linked with isotopes \\
+$\mathcal{S}^{\tt sap}_{13}$ & \moc{NPPNTL}$^{*}$ & Number of local variables linked with {\sc microlib} objects\\
+$\mathcal{S}^{\tt sap}_{14}$ & \moc{NISOF}$^{*}$ & Number of particularized fissile isotopes \\
+$\mathcal{S}^{\tt sap}_{15}$ & \moc{NISOP}$^{*}$ & Number of particularized fission products \\
+$\mathcal{S}^{\tt sap}_{16}$ & \moc{NMGY} & Number of macrogroups for the fission yields ($=1$) \\
+$\mathcal{S}^{\tt sap}_{17}$ & \moc{NVP} & Number of nodes in the global parameter tree \\
+$\mathcal{S}^{\tt sap}_{18}$ & \moc{NADRX}$^{*}$ & Number of address sets in array {\tt ADRX} \\
+$\mathcal{S}^{\tt sap}_{19}$ & \moc{NCALS} & Number of elementary calculations \\
+$\mathcal{S}^{\tt sap}_{20}$ & \moc{NG} & Number of energy groups in the {\sc saphyb} \\
+$\mathcal{S}^{\tt sap}_{21}$ & \moc{NISOY}$^{*}$ & Number of particularized isotopes and macroscopic
+sets for which fission yields are provided. \\
+$\mathcal{S}^{\tt sap}_{22}$ & \moc{NVERS} & Level of {\sc saphyb} specification ($=2$) \\
+$\mathcal{S}^{\tt sap}_{23}$ & & (not used) \\
+$\mathcal{S}^{\tt sap}_{24}$ & \moc{NSURFS} & Number of surfaces in the {\sc saphyb} \\
+$\mathcal{S}^{\tt sap}_{25}$ & & (not used) \\
+$\mathcal{S}^{\tt sap}_{26}$ & & (not used) \\
+$\mathcal{S}^{\tt sap}_{27}$ & & (not used) \\
+$\mathcal{S}^{\tt sap}_{28}$ & \moc{NRT} & Number of unknowns in the reference geometry \\
+$\mathcal{S}^{\tt sap}_{29}$ & & (not used) \\
+$\mathcal{S}^{\tt sap}_{30}$ & \moc{NGA} & Number of energy groups in the reference {\sc microlib} \\
+$\mathcal{S}^{\tt sap}_{31}$ & \moc{NPRC}$^{*}$ & Number of delayed neutron precursors groups \\
+$\mathcal{S}^{\tt sap}_{32}$ & \moc{NISOTS} & Maximum number of isotopes in output tables ({\tt NISOTS~$\leq$~NISOTA}) \\
+$\mathcal{S}^{\tt sap}_{33}$ & \moc{NMILNR}$^{*}$ & Number of mixtures in the {\sc saphyb} with delayed neutron data \\
+\hline
+\end{tabular}
+
+\vskip 0.1cm
+
+Elements of array {\tt DIMSAP} identified with ``{\tt *}" may be equal to zero. Consequently,
+any array using these dimensions is optional.
+
+\clearpage
+
+\subsection{The {\tt constphysiq} sub-directory in \dir{saphyb}}\label{sect:sapdircons}
+
+\vskip -0.5cm
+
+\begin{DescriptionEnregistrement}{Contents of sub-directory {\tt constphysiq} in \dir{saphyb}}{7.0cm}
+\CharEnr
+ {ISOTA\blank{7}}{$(\mathcal{S}^{\tt sap}_2)*8$}
+ {Alias names of isotopes in the reference {\sc microlib}.}
+\CharEnr
+ {ISOTYP\blank{6}}{$(\mathcal{S}^{\tt sap}_2)*4$}
+ {Types of isotopes in the reference {\sc microlib}. $=${\tt 'FISS'}: fissile isotope;
+ $=${\tt 'F.P.'}: fission product; $=${\tt '~'}: otherwise.}
+\OptCharEnr
+ {NOMLAM\blank{6}}{$(\mathcal{S}^{\tt sap}_3)*8$}{$\mathcal{S}^{\tt sap}_3\ge 1$}
+ {Character identification of the available radioactive decay reactions.}
+\RealEnr
+ {ENRGA\blank{7}}{$\mathcal{S}^{\tt sap}_{30}+1$}{MeV}
+ {Limits of the reference multigroup energy mesh.}
+\RealEnr
+ {ENRGS\blank{7}}{$\mathcal{S}^{\tt sap}_{20}+1$}{MeV}
+ {Limits of the {\sc saphyb} multigroup energy mesh.}
+\IntEnr
+ {FGYS\blank{8}}{$\mathcal{S}^{\tt sap}_{16}+1$}
+ {Indices limits in array {\tt ENERGS} of the multigroup energy mesh for the fission yields.}
+\end{DescriptionEnregistrement}
+
+\subsection{The {\tt contenu} sub-directory in \dir{saphyb}}\label{sect:sapdircont}
+
+\vskip -0.5cm
+
+\begin{DescriptionEnregistrement}{Contents of sub-directory {\tt contenu} in \dir{saphyb}}{7.0cm}
+\OptCharEnr
+ {NOMISO\blank{6}}{$(\mathcal{S}^{\tt sap}_5)*8$}{$\mathcal{S}^{\tt sap}_5\ge 1$}
+ {Names of the particularized isotopes.}
+\OptCharEnr
+ {NOMMAC\blank{6}}{$(\mathcal{S}^{\tt sap}_6)*8$}{$\mathcal{S}^{\tt sap}_6\ge 1$}
+ {Names of the macroscopic sets.}
+\OptIntEnr
+ {TYPMAC\blank{6}}{$\mathcal{S}^{\tt sap}_6$}{$\mathcal{S}^{\tt sap}_6\ge 1$}
+ {Types of the macroscopic sets. $=1$: select all the available isotopes in the macroscopic set;
+ $=2$: remove all the particularized isotope contributions from the macroscopic set.}
+\OptCharEnr
+ {NOMREA\blank{6}}{$(\mathcal{S}^{\tt sap}_4)*12$}{$\mathcal{S}^{\tt sap}_4\ge 1$}
+ {Names of the neutron--induced reactions (e.g.: {\tt TOTALE}, {\tt ABSORPTION}, {\tt FISSION}, etc.).}
+\IntEnr
+ {TOTMAC\blank{6}}{$\mathcal{S}^{\tt sap}_7$}
+ {Indices in array {\tt NOMMAC} corresponding to total macroscopic sets (with {\sl all}
+ isotopic contributions). $=0$ if a total macroscopic set is not defined.}
+\IntEnr
+ {RESMAC\blank{6}}{$\mathcal{S}^{\tt sap}_7$}
+ {Indices in array {\tt NOMMAC} corresponding to residual macroscopic sets (with isotopic
+ contributions for the non--particularized isotopes). $=0$ if a residual macroscopic set is not defined.}
+\end{DescriptionEnregistrement}
+
+\newpage
+\subsection{The {\tt adresses} sub-directory in \dir{saphyb}}\label{sect:sapdirad}
+
+\vskip -0.5cm
+
+\begin{DescriptionEnregistrement}{Contents of sub-directory {\tt adresses} in \dir{saphyb}}{7.0cm}
+\IntEnr
+ {ISADRC\blank{6}}{$\mathcal{S}^{\tt sap}_7$}
+ {Equal to array {\tt ISADRX} (in directory {\tt info}) for the last elementary calculation.}
+\IntEnr
+ {NISOMN\blank{6}}{$\mathcal{S}^{\tt sap}_7$}
+ {Number of particularized isotopes in each output mixture for which cross section information
+ is available in at least one elementary calculation.}
+\OptIntEnr
+ {ISOMIL\blank{6}}{$N^{\rm iso}$}{$N^{\rm iso}\ge 1$}
+ {Array containing the particularized isotope indices in each output mixture.
+ \hbox{$N^{\rm iso}=(\mathcal{S}^{\tt sap}_5+\mathcal{S}^{\tt sap}_6) \times \mathcal{S}^{\tt sap}_7$}}
+\OptIntEnr
+ {ADRX\blank{8}}{$N^{\rm adrx}$}{$N^{\rm adrx}\ge 1$}
+ {Offsets in the array {\tt RDATAX} containing cross
+ section information. If the first index corresponds to reaction {\tt PROFILE}, then {\tt ADRX}
+ is the offset in the array {\tt IDATAP} containing
+ the profile information of the transfer matrix.
+ \hbox{$N^{\rm adrx}=(\mathcal{S}^{\tt sap}_4+2)\times(\mathcal{S}^{\tt sap}_5+\mathcal{S}^{\tt sap}_6)
+ \times \mathcal{S}^{\tt sap}_{18}$}}
+\end{DescriptionEnregistrement}
+
+The array {\tt ADRX} gives the position of the first value of a cross section in array {\tt RDATAX}
+or the first value of profile information in array {\tt IDATAP}. {\tt RDATAX} and {\tt IDATAP} are
+located in sub-directory {\tt mili//'~~m'} of the sub-directory {\tt calc//'~~n'}.
+For a given reaction with index {\tt irea} in array {\tt NOMREA} (in sub-directory {\tt contenu}),
+for a particularized isotope with index {\tt isot} in array {\tt NOMISO} (in sub-directory {\tt contenu}),
+and for an output mixture with index {\tt imil}, the first cross section value is located at position
+{\tt ADRX(irea,isot,ISADRX(imil))} of array {\tt RDATAX}. {\tt ISADRX} is defined in the sub-directory
+{\tt info} of an elementary calculation. If the address is zero, then the corresponding cross sections
+are not defined.
+
+\vskip 0.1cm
+
+Information related to Legendre--dependent scattering information is given in the two
+extra locations of the {\tt ADRX} array: {\tt ADRX(NREA+1,:,:)} contains the number of components for the
+vectorial scattering cross sections (order of anisotropy $+1$); {\tt ADRX(NREA+2,:,:)} contains the
+num\-ber of components for the (matrix) transfer cross sections (order of anisotropy $+1$).
+
+\vskip 0.1cm
+
+This system is designed in such a way to keep the value of $\mathcal{S}^{\tt sap}_{18}=${\tt NADRX} as
+small as possible.
+
+\newpage
+\subsection{The {\tt geom} sub-directory in \dir{saphyb}}\label{sect:sapdirgeom}
+
+\vskip -0.5cm
+
+\begin{DescriptionEnregistrement}{Contents of sub-directory {\tt geom} in \dir{saphyb}}{7.0cm}
+\CharEnr
+ {NOMMIL\blank{6}}{$(\mathcal{S}^{\tt sap}_7)*20$}
+ {Names of the output mixtures.}
+\RealEnr
+ {XVOLMT\blank{6}}{$\mathcal{S}^{\tt sap}_7$}{cm$^3$}
+ {Volumes of the output mixtures.}
+\OptRealEnr
+ {SURFS\blank{7}}{$\mathcal{S}^{\tt sap}_{24}$}{$\mathcal{S}^{\tt sap}_{24}\ge 1$}{cm$^2$}
+ {Surfaces of the output geometry.}
+\OptDirEnr
+ {outgeom\blank{5}}{*}
+ {Surfacic data related to discontinuity factor information.}
+\end{DescriptionEnregistrement}
+
+\vskip -0.5cm
+
+\begin{DescriptionEnregistrement}{Contents of sub-directory {\tt outgeom} in \dir{geom}}{7.0cm}
+\RealEnr
+ {SURF\blank{8}}{$N_{\rm nsurfd}$}{cm$^2$}
+ {Surface assigned to each discontinuity factor.}
+\end{DescriptionEnregistrement}
+
+\subsection{The {\tt paramdescrip} sub-directory in \dir{saphyb}}\label{sect:sapdirparam}
+
+\vskip -0.5cm
+
+\begin{DescriptionEnregistrement}{Contents of sub-directory {\tt paramdescrip} in \dir{saphyb}}{7.0cm}
+\IntEnr
+ {NPAR\blank{8}}{$1$}
+ {Number of global parameters.}
+\IntEnr
+ {NPCHR\blank{7}}{$1$}
+ {Number of global parameters linked with isotopes.}
+\CharEnr
+ {PARNAM\blank{6}}{$(\mathcal{S}^{\tt sap}_8)*80$}
+ {User--defined names for the global parameters.}
+\CharEnr
+ {PARKEY\blank{6}}{$(\mathcal{S}^{\tt sap}_8)*4$}
+ {User--defined key-words for the global parameters.}
+\CharEnr
+ {PARTYP\blank{6}}{$(\mathcal{S}^{\tt sap}_8)*4$}
+ {Character identification for the types of global parameters (eg: {\tt TEMP}, {\tt CONC}, {\tt IRRA}, etc.).}
+\CharEnr
+ {PARFMT\blank{6}}{$(\mathcal{S}^{\tt sap}_8)*8$}
+ {User--defined names for the global parameters (eg: {\tt FLOTTANT}, {\tt CHAINE}, {\tt ENTIER}, etc.).}
+\OptCharEnr
+ {PARCHR\blank{6}}{$(\mathcal{S}^{\tt sap}_9)*8$}{$\mathcal{S}^{\tt sap}_9\ge 1$}
+ {Isotope names linked to type--{\tt CONC} global parameters.}
+\IntEnr
+ {NVALUE\blank{6}}{$\mathcal{S}^{\tt sap}_8$}
+ {Number of specific values for a global parameters.}
+\IntEnr
+ {PARCAD\blank{6}}{$\mathcal{S}^{\tt sap}_8+1$}
+ {Address of the first element in array {\tt PARCHR}.}
+\IntEnr
+ {PARPAD\blank{6}}{$\mathcal{S}^{\tt sap}_8+1$}
+ {Address of the first element in array {\tt PARBIB}.}
+\OptIntEnr
+ {PARMIL\blank{6}}{$\mathcal{S}^{\tt sap}_{10}$}{$\mathcal{S}^{\tt sap}_{10}\ge 1$}
+ {Mixture indices linked to type--{\tt TEMP} or --{\tt CONC} global parameters.}
+\OptCharEnr
+ {PARBIB\blank{6}}{$(\mathcal{S}^{\tt sap}_{10})*12$}{$\mathcal{S}^{\tt sap}_{10}\ge 1$}
+ {{\sc microlib} names linked to type--{\tt TEMP} or --{\tt CONC} global parameters.}
+\end{DescriptionEnregistrement}
+\goodbreak
+
+Types and units of global parameters are defined as follows:
+
+\noindent\begin{tabular}{ p{1cm} p{3cm} p{7cm} }
+\hline
+ & unit & description \\
+\hline
+{\tt TEMP} & $^{\rm o}$C & Temperature \\
+{\tt CONC} & $10^{24}$/cm$^3$ & Number density \\
+{\tt IRRA} & MW-day/tonne & Burnup \\
+{\tt FLUB} & n/kb & Neutron exposure \\
+{\tt TIME} & s & Time \\
+{\tt PUIS} & MeV/s & Normalization power \\
+{\tt MASL} & g/cm$^3$ & Mass density of heavy elements \\
+{\tt FLUX} & & Volume-averaged, energy-integrated flux \\
+{\tt VALE} & (not defined) & User-defined parameter \\
+\hline
+\end{tabular}
+
+\subsection{The {\tt paramvaleurs} sub-directory in \dir{saphyb}}\label{sect:sapdirparval}
+
+\vskip -0.5cm
+
+\begin{DescriptionEnregistrement}{Contents of sub-directory {\tt paramvaleurs} in \dir{saphyb}}{7.0cm}
+\OptRealVar
+ {\listedir{pvaldir}}{\tt NVALUE(J)}{*}{}
+ {Set of real global parameter arrays. Each element of \listedir{pvaldir} contains a
+ real array containing the tabulated values of the $J$--th global parameter.}
+\OptIntVar
+ {\listedir{pvaldir}}{\tt NVALUE(J)}{*}
+ {Set of integer global parameter arrays. Each element of \listedir{pvaldir} contains an
+ integer array containing the tabulated values of the $J$--th global parameter.}
+\OptCharVar
+ {\listedir{pvaldir}}{$({\tt NVALUE(J)})*12$}{*}
+ {Set of character$*12$ global parameter arrays. Each element of \listedir{pvaldir} contains a
+ character$*12$ array containing the tabulated values of the $J$--th global parameter.}
+\end{DescriptionEnregistrement}
+
+\listedir{pvaldir} is a set of $\mathcal{S}^{\tt sap}_8$ real,
+integer or character*$12$ records. The name of each
+\listedir{pvaldir} record is a {\tt character*12} variable ({\tt text12})
+composed using the following FORTRAN instruction:
+$$
+\mathtt{WRITE(}\mathsf{text12}\mathtt{,'(''pval'',I8)')}\: J
+$$
+where $J$ is the index of the global parameter with $1 \leq J \leq \mathcal{S}^{\tt sap}_8$. The global
+parameter values of type {\tt REAL} or {\tt INTEGER} are sorted.
+
+\subsection{The {\tt paramarbre} sub-directory in \dir{saphyb}}\label{sect:sapdirarbre}
+
+The global parameter tree has the same number of stages as global parameters. For each value of
+the $i$--th global parameter, the tree indicates the beginning position of the $(i+1)$--th parameter.
+The arrays {\tt DEBARB} and {\tt ARBVAL} are set to localize the results of an elementary calculation
+identified by a specific parameter tuple.
+
+\begin{DescriptionEnregistrement}{Contents of sub-directory {\tt paramarbre} in \dir{saphyb}}{7.0cm}
+\label{tabl:tabtree}
+\IntEnr
+ {NCALS\blank{7}}{$1$}
+ {Number of elementary calculations.}
+\IntEnr
+ {DEBARB\blank{6}}{$\mathcal{S}^{\tt sap}_{17}+1$}
+ {- If the node does not correspond to the last parameter:
+ index in {\tt DEBARB} of the first daughter of the node.
+ - If the node correspond to the last parameter: index in
+ {\tt DEBARB} where we recover the index of an elementary
+ calculation.}
+\IntEnr
+ {ARBVAL\blank{6}}{$\mathcal{S}^{\tt sap}_{17}$}
+ {Index of the corresponding parameter in the {\tt pval//'~~n'} record.}
+\IntEnr
+ {ORIGIN\blank{6}}{$\mathcal{S}^{\tt sap}_{19}$}
+ {Index of the mother elementary calculation. This information is useful to follow the
+ historical relation between calculations.}
+\end{DescriptionEnregistrement}
+
+An example of a global parameter tree is represented here:
+\begin{verbatim}
+ dn = value in DEBARB, (m) = value in ARBVAL
+
+ Root *(0)
+ !
+ Param. Nb 1 d2(1)
+ -------------------
+ ! !
+ Param. Nb 2 d3(1) 4(2)
+ --------- ---------
+ ! ! ! ! !
+ Param. Nb 3 d5(1) 6(3) d7(1) 8(2) 9(3) d10
+
+ Calculation Nb: 4 5 1 2 3
+
+ DEBARB: 2 3 5 7 10 4 5 1 2 3
+ ARBVAL: 0 1 1 2 1 3 1 2 3
+\end{verbatim}
+
+The dimensions of variables {\tt DEBARB}, {\tt ARBVAL} and {\tt ORIGIN} in Table~\ref{tabl:tabtree} represent
+the useful size, not the allocated size which may be bigger. The allocated size of these arrays may be obtained
+using the LCM API ({\tt LCMLEN} with the Fortran API).
+
+\vskip 0.1cm
+
+Each elementary calculation is fully identified by a global parameter tuple, an integer array of dimension
+$\mathcal{S}^{\tt sap}_8=${\tt NPAR}. A recursive program can be used to search the elementary calculation
+index {\tt ICAL} corresponding to a parameter tuple represented in the Fortran array {\tt MUPLET(NPAR)}.
+The recursive function is called using
+\begin{verbatim}
+ ICAL=NICAL(1,NVP,NPAR,DEBARB,ARBVAL,MUPLET)
+\end{verbatim}
+
+\noindent and is implemented in Fortran-90 as
+\begin{verbatim}
+RECURSIVE INTEGER FUNCTION NICAL(II,NVP,NPAR,DEBARB,ARBVAL,MUPLET) RESULT(ICAL)
+ INTEGER II,NVP,NPAR,DEBARB(NVP+1),ARBVAL(NVP),MUPLET(NPAR)
+ IF(NPAR==0) THEN
+ ICAL=DEBARB(II+1)
+ RETURN
+ ENDIF
+ NBOK=0
+ IKEEP=0
+ DO I=DEBARB(II),DEBARB(II+1)-1
+ IF((MUPLET(1)==0).OR.(MUPLET(1)==ARBVAL(I))) THEN
+ JICAL=NICAL(I,NVP,NPAR-1,DEBARB,ARBVAL,MUPLET(2))
+ IF(JICAL > 0) THEN
+ IKEEP=JICAL
+ NBOK=NBOK+1
+ ELSE IF(JICAL==-1) THEN
+ NBOK=2
+ ENDIF
+ ENDIF
+ ENDDO
+ IF(NBOK > 1) THEN
+ ! Many elementary calculation exist for this tuple.
+ ICAL=-1
+ ELSE IF(NBOK==0) THEN
+ ! No elementary calculation exists for this tuple.
+ ICAL=0
+ ELSE
+ ICAL=IKEEP
+ ENDIF
+END FUNCTION NICAL
+\end{verbatim}
+
+\vskip 0.1cm
+
+Similarly, a Fortran program can be used to search the global parameter tuple corresponding to
+the elementary calculation index {\tt ICAL}:
+
+\begin{verbatim}
+ SUBROUTINE COMUPL(NVP,NPAR,ICAL,NCALS,DEBARB,ARBVAL,MUPLET)
+ INTEGER DEBARB(NVP+1),ARBVAL(NVP),MUPLET(NPAR)
+ DO I=NVP-NCALS+1,NVP
+ IF(DEBARB(I+1).EQ.ICAL) THEN
+ I0=I
+ EXIT
+ ENDIF
+ ENDDO
+ MUPLET(NPAR)=ARBVAL(I0)
+ DO IPAR=NPAR-1,1,-1
+ DO I=1,NVP-NCALS
+ IF(DEBARB(I+1).GT.I0) THEN
+ I0=I
+ EXIT
+ ENDIF
+ ENDDO
+ MUPLET(IPAR)=ARBVAL(I0)
+ ENDDO
+ END
+\end{verbatim}
+
+\subsection{The {\tt varlocdescri} sub-directory in \dir{saphyb}}\label{sect:sapdirlocvar}
+
+\vskip -0.5cm
+
+\begin{DescriptionEnregistrement}{Contents of sub-directory {\tt varlocdescri} in \dir{saphyb}}{7.0cm}
+\IntEnr
+ {NPAR\blank{8}}{$1$}
+ {Number of local variables.}
+\IntEnr
+ {NPCHR\blank{7}}{$1$}
+ {Number of local variables linked with isotopes.}
+\OptCharEnr
+ {PARNAM\blank{6}}{$(\mathcal{S}^{\tt sap}_{11})*80$}{$\mathcal{S}^{\tt sap}_{11}\ge 1$}
+ {User--defined names for the local variables.}
+\OptCharEnr
+ {PARKEY\blank{6}}{$(\mathcal{S}^{\tt sap}_{11})*4$}{$\mathcal{S}^{\tt sap}_{11}\ge 1$}
+ {User--defined key-words for the local variables.}
+\OptCharEnr
+ {PARTYP\blank{6}}{$(\mathcal{S}^{\tt sap}_{11})*4$}{$\mathcal{S}^{\tt sap}_{11}\ge 1$}
+ {Character identification for the types of local variables (eg: {\tt TEMP}, {\tt IRRA}, {\tt FLUB},
+ {\tt EQUI}, etc.).}
+\OptCharEnr
+ {PARFMT\blank{6}}{$(\mathcal{S}^{\tt sap}_{11})*8$}{$\mathcal{S}^{\tt sap}_{11}\ge 1$}
+ {User--defined names for the local variables (eg: {\tt FLOTTANT}, {\tt CHAINE}, {\tt ENTIER}, etc.).}
+\OptCharEnr
+ {PARCHR\blank{6}}{$(\mathcal{S}^{\tt sap}_{12})*8$}{$\mathcal{S}^{\tt sap}_{12}\ge 1$}
+ {Isotope names linked to type--{\tt CONC} local variables.}
+\OptIntEnr
+ {PARCAD\blank{6}}{$\mathcal{S}^{\tt sap}_{11}+1$}{$\mathcal{S}^{\tt sap}_{11}\ge 1$}
+ {Address of the first element in array {\tt PARCHR}.}
+\end{DescriptionEnregistrement}
+
+\subsection{The elementary calculation sub-directory \dir{caldir} in \dir{saphyb}}\label{sect:sapdircalc}
+
+For each elementary calculation, we define a directory {\tt calc//'~~n'}, where {\tt n} is the index
+of the calculation in the global parameter tree. The results for each output mixture are stored in a
+directory {\tt mili//'~~m'} where {\tt m} is the position index of the mixture in the array {\tt NOMMIL}
+of the sub-directory {\tt geom}. Inside each elementary calculation directory \dir{caldir}, the following
+records and sub-directories will be found:
+
+\begin{DescriptionEnregistrement}{Contents of sub-directory \dir{caldir} in \dir{saphyb}}{7.0cm}
+\DirEnr
+ {info\blank{8}}
+ {General informations about the elementary calculation}
+\DirEnr
+ {divers\blank{6}}
+ {Results not related to a specific mixture: interface currents, $k_\infty$, $k_{\rm eff}$, $B^2$, etc.}
+\OptDirEnr
+ {outflx\blank{6}}{$N_{\rm nsurfd}>0$}
+ {Discontinuity factor information.}
+\DirVar
+ {\listedir{mixdir}}
+ {Set of $\mathcal{S}^{\tt sap}_{7}$ sub-directories containing the cross section information
+ associated with a specific mixture.}
+\end{DescriptionEnregistrement}
+
+The name of each \listedir{mixdir} directory is a {\tt character*12} variable ({\tt text12})
+composed using the following FORTRAN instruction:
+$$
+\mathtt{WRITE(}\mathsf{text12}\mathtt{,'(''mili'',I8)')}\: J
+$$
+where $J$ is the index of the mixture with $1 \leq J \leq \mathcal{S}^{\tt sap}_{7}$.
+
+\subsubsection{The {\tt info} sub-directory in \dir{caldir}}\label{sect:sapdirinfo}
+
+\vskip -0.5cm
+
+\begin{DescriptionEnregistrement}{Contents of sub-directory {\tt info} in \dir{caldir}}{7.0cm}
+\IntEnr
+ {NLOC\blank{8}}{$1$}
+ {Number of local variables ($0\le${\tt NLOC}$\le${\tt NPARL}).}
+\IntEnr
+ {NISOTS\blank{6}}{$1$}
+ {Number of isotopes in output tables ($\mathcal{S}^{\tt sap}_{32}\equiv$ {\tt NISOTS}$\le${\tt NISOTA}).}
+\IntEnr
+ {NISF\blank{8}}{$1$}
+ {Number of particularized fissile isotopes ({\tt NISF}$\le${\tt NISOF}).}
+\IntEnr
+ {NISP\blank{8}}{$1$}
+ {Number of particularized fission products ({\tt NISP}$\le${\tt NISOP}).}
+\IntEnr
+ {NISY\blank{8}}{$1$}
+ {Number of particularized isotopes and macroscopic sets used for computing the fission
+ yields ({\tt NISY}$\le${\tt NISOY}).}
+\OptCharEnr
+ {LOCNAM\blank{6}}{$({\tt NLOC})*80$}{{\tt NLOC}$\ge 1$}
+ {User--defined names for the local variables.}
+\OptCharEnr
+ {LOCKEY\blank{6}}{$({\tt NLOC})*4$}{{\tt NLOC}$\ge 1$}
+ {User--defined key-words for the local variables.}
+\OptCharEnr
+ {LOCTYP\blank{6}}{$({\tt NLOC})*4$}{{\tt NLOC}$\ge 1$}
+ {Character identification for the types of local variables (eg: {\tt TEMP}, {\tt IRRA}, {\tt FLUB},
+ {\tt EQUI}, etc.).}
+\OptIntEnr
+ {LOCADR\blank{6}}{{\tt NLOC}$+1$}{{\tt NLOC}$\ge 1$}
+ {Address of the first element in array {\tt RVALOC} (sub-directory {\tt mili//'~~m'}) corresponding
+ to a local variable.}
+\CharEnr
+ {ISOTS\blank{7}}{$(\mathcal{S}^{\tt sap}_{32})*8$}
+ {Alias names of isotopes in output tables.}
+\OptIntEnr
+ {ADRY\blank{8}}{{\tt NISY}}{{\tt NISY}$\ge 1$}
+ {Indices of fissile isotopes (positive values) and fission products (negative values) in array
+ {\tt YLDS} (sub-directory {\tt mili//'~~m'}).}
+\IntEnr
+ {ISADRX\blank{6}}{$\mathcal{S}^{\tt sap}_7$}
+ {Used to recover the third index in array {\tt ADRX} (sub-directory {\tt adresses}).}
+\IntEnr
+ {LENGDX\blank{6}}{$\mathcal{S}^{\tt sap}_7$}
+ {Length of the cross section array {\tt RDATAX} (sub-directory {\tt mili//'~~m'}).}
+\IntEnr
+ {LENGDP\blank{6}}{$\mathcal{S}^{\tt sap}_7$}
+ {Length of the transfer matrix profile array {\tt IDATAP} (sub-directory {\tt mili//'~~m'}).}
+\end{DescriptionEnregistrement}
+
+\subsubsection{The {\tt divers} sub-directory in \dir{caldir}}\label{sect:sapdirdiv}
+
+\vskip -0.5cm
+
+\begin{DescriptionEnregistrement}{Contents of sub-directory {\tt divers} in \dir{caldir}}{7.0cm}
+\IntEnr
+ {NVDIV\blank{7}}{$1$}
+ {Number of values in arrays {\tt IDVAL} and {\tt VALDIV}.}
+\OptCharEnr
+ {IDVAL\blank{7}}{$({\tt NVDIV})*4$}{{\tt NVDIV}$\ge 1$}
+ {Character identification for the values in array {\tt VALDIV} ({\tt KEFF}, {\tt KINF} or {\tt B2}).}
+\OptRealEnr
+ {VALDIV\blank{6}}{{\tt NVDIV}}{{\tt NVDIV}$\ge 1$}{~}
+ {Values given in the order of the {\tt IDVAL} array.}
+\OptRealEnr
+ {FLXREF\blank{6}}{$\mathcal{S}^{\tt sap}_{28}\times \mathcal{S}^{\tt sap}_{30}$}{$\mathcal{S}^{\tt sap}_{28}\ge 1$}{~}
+ {Neutron flux values (region-- and group--ordered) in the reference calculation.}
+\OptRealEnr
+ {SCURM\blank{7}}{$\mathcal{S}^{\tt sap}_{24}\times \mathcal{S}^{\tt sap}_{20}$}{$\mathcal{S}^{\tt sap}_{24}\ge 1$}{~}
+ {Entering partial currents on the surfaces surrounding the geometry. The values are given in the order of
+ the {\tt SURF} array (in sub-directory {\tt geom}).}
+\end{DescriptionEnregistrement}
+
+\vskip -0.5cm
+\clearpage
+
+\begin{DescriptionEnregistrement}{Contents of sub-directory {\tt outflx} in \dir{caldir}}{7.0cm}
+\RealEnr
+ {REGFLX\blank{6}}{{\tt NG}}{~}
+ {Averaged flux in the complete geometry.}
+\RealEnr
+ {SURFLX\blank{6}}{$N_{\rm nsurfd}\times${\tt NG}}{~}
+ {Surfacic fluxes ($N_{\rm nsurfd}$ values per energy group) integrated over surface. The averaged values are obtained by dividing these
+ components by those of {\tt SURF} record in {\tt outgeom} sub-directory (see \Sect{sapdirgeom}).}
+\end{DescriptionEnregistrement}
+
+\subsubsection{The mixture sub-directory \dir{mixdir} in \dir{caldir}}\label{sect:sapdirmix}
+
+\vskip -0.5cm
+
+\begin{DescriptionEnregistrement}{Contents of mixture sub-directory \dir{mixdir} in \dir{caldir}}{7.0cm}
+\RealEnr
+ {CONCES\blank{6}}{$\mathcal{S}^{\tt sap}_{32}$}{$10^{24}cm^{-3}$}
+ {Number density of each isotope in the output tables. Correspond to isotopes names {\tt ISOTS}
+ in Sect.~\ref{sect:sapdirinfo}.}
+\OptRealEnr
+ {RVALOC\blank{6}}{\tt NVLC}{{\tt NLOC}$\ge 1$}{~}
+ {Values of the local variables. {\tt NVLC}$=${\tt LOCADR(NLOC+1)-1}}
+\RealEnr
+ {FLUXS\blank{7}}{$\mathcal{S}^{\tt sap}_{20}$}{~}
+ {Volume-- and energy--integrated neutron fluxes in the output tables.}
+\OptRealEnr
+ {YLDS\blank{8}}{$N^{\rm ylds}$}{{\tt NISP}$\ge 1$}{~}
+ {The fission product {\tt i} yield from fissile isotope {\tt k} is given as {\tt YLDS(ADRY(k),-ADRY(i))}.
+ Indices {\tt i} and {\tt k} are given in the order of array {\tt NOMISO} (in sub-directory {\tt contenu}).
+ A macroscopic set with a non--vanishing fission cross section is considered as an averaged fissile isotope.
+ \hbox{$N^{\rm ylds}=(${\tt NISF}$+\mathcal{S}^{\tt sap}_6)\times ${\tt NISP}}.}
+\OptRealEnr
+ {DECAYC\blank{6}}{$\mathcal{S}^{\tt sap}_{3}\times \mathcal{S}^{\tt sap}_{32}$}{$\mathcal{S}^{\tt sap}_3\ge 1$}{$s^{-1}$}
+ {Radioactive decay constants for each type of decay reaction and each isotope of the output tables.}
+\OptRealEnr
+ {RDATAX\blank{6}}{$N^{\rm datax}$}{$N^{\rm datax}\ge 1$}{~}
+ {Cross section data.
+ \hbox{$N^{\rm datax}=${\tt LENGDX(m)}} where {\tt m} is the mixture index.}
+\OptIntEnr
+ {IDATAP\blank{6}}{$N^{\rm datap}$}{$N^{\rm datap}\ge 1$}
+ {Profile information of the transfer matrix.
+ \hbox{$N^{\rm datap}=${\tt LENGDP(m)}} where {\tt m} is the mixture index.}
+\OptDirEnr
+ {cinetique\blank{3}}{$\mathcal{S}^{\tt sap}_{33}\ge 1$}
+ {Delayed neutron data for the mixture.}
+\end{DescriptionEnregistrement}
+
+{\tt ADRX} (in sub-directory {\tt adresses}) contains the offset used to recover information from
+arrays {\tt RDATAX} and {\tt IDATAP}:
+\begin{itemize}
+\item Starting from this offset, we recover $\mathcal{S}^{\tt sap}_{20}$ cross section values in {\tt RDATAX},
+except for the scattering cross section where we recover $\mathcal{S}^{\tt sap}_{20}$ values for each available
+Legendre order, and except for the scattering transfer matrix where we recover $N^{\rm scat}$ values
+for each available Legendre order. $N^{\rm scat}$ is defined with the {\tt IDATAP} array.
+\item For a {\tt PROFILE}--type reaction, starting from this offset, we recover $2\times \mathcal{S}^{\tt sap}_{20}+7$
+integer values in {\tt IDATAP}.
+\end{itemize}
+
+\vskip 0.1cm
+
+The transfer matrix elements are stored in the following way. The non-zero values are stored in the order
+of the secondary group and, for each secondary group, in the order of the primary groups.
+The $2\times \mathcal{S}^{\tt sap}_{20}+7$ values describing the profile of the transfer matrix
+are stored in the following order:
+
+\vskip 0.1cm
+
+{\tt FAGG, LAGG, FDGG, WGAL, FAG, LAG, (FDG(g),g=1,NG), (ADR(g),g=1,NG+1)}
+
+\vskip 0.1cm
+
+\noindent where
+
+\vskip 0.1cm
+
+\begin{tabular}{ p{2cm} p{13cm} }
+{\tt FAGG} & (not used) \\
+{\tt LAGG} & (not used) \\
+{\tt FDGG} & (not used) \\
+{\tt WGAL} & set to 0 \\
+{\tt FAG} & First secondary group \\
+{\tt LAG} & Last secondary group \\
+{\tt FDG} & First primary group in each secondary group \\
+{\tt ADR} & Address in the cross section array where data for secondary group $g$
+ is beginning (the address is relative to the isotope). The number of elements in
+ a transfer matrix is $N^{\rm scat}=${\tt ADR(NG+1)-1}.
+\end{tabular}
+
+\vskip 0.1cm
+
+For an energy transfer {\tt g'} $\rightarrow$ {\tt g} and for a Legendre order {\tt L}($\geq 0$),
+the transfer cross section is identified in the cross section array {\tt RDATAX} as
+
+\centerline{$\sigma_{s\ell}^{g' \rightarrow g}$ =
+{\tt RDATAX( ADRX(irea,isot,ISADRX(imil)) + L*(ADR(NG+1)-1) + I-1 )}}
+
+\noindent with {\tt I = ADR(g)+g'-FDG(g)}.
+\clearpage
+
+\subsubsection{The {\tt cinetique} sub-directory in \dir{mixdir}}\label{sect:sapdircine}
+
+\vskip -0.5cm
+
+\begin{DescriptionEnregistrement}{Contents of sub-directory {\tt cinetique} in \dir{mixdir}}{7.0cm}
+\IntEnr
+ {NPR\blank{9}}{$1$}
+ {Number of delayed neutron precursors groups in the mixture.}
+\OptRealEnr
+ {LAMBRS\blank{6}}{\tt NPR}{{\tt NPR}$\ge 1$}{$s^{-1}$}
+ {Radioactive decay constants of the delayed neutron precursors groups.}
+\OptRealEnr
+ {CHIRS\blank{7}}{$\mathcal{S}^{\tt sap}_{20}\times${\tt NPR}}{{\tt NPR}$\ge 1$}{$1$}
+ {Delayed neutron emission spectrums.}
+\OptRealEnr
+ {BETARS\blank{6}}{\tt NPR}{{\tt NPR}$\ge 1$}{$1$}
+ {Delayed neutron fractions.}
+\OptRealEnr
+ {INVELS\blank{6}}{$\mathcal{S}^{\tt sap}_{20}$}{{\tt NPR}$\ge 1$}{$cm^{-1}s$}
+ {Group average of the inverse neutron velocity.}
+\OptRealEnr
+ {TGENRS\blank{6}}{$1$}{{\tt NPR}$\ge 1$}{$s$}
+ {Prompt--neutron lifetime.}
+\end{DescriptionEnregistrement}