From 7dfcc480ba1e19bd3232349fc733caef94034292 Mon Sep 17 00:00:00 2001 From: stainer_t Date: Mon, 8 Sep 2025 13:48:49 +0200 Subject: Initial commit from Polytechnique Montreal --- doc/IGE344/SectAFM.tex | 255 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 255 insertions(+) create mode 100644 doc/IGE344/SectAFM.tex (limited to 'doc/IGE344/SectAFM.tex') diff --git a/doc/IGE344/SectAFM.tex b/doc/IGE344/SectAFM.tex new file mode 100644 index 0000000..cdd4e8b --- /dev/null +++ b/doc/IGE344/SectAFM.tex @@ -0,0 +1,255 @@ +\subsection{The \moc{AFM:} module} + +The \moc{AFM:} module is used to create an extended \dds{macrolib} +containing set of interpolated nuclear properties +from a feedback model database.\cite{sissaoui} +The \dds{database} information are obtained by previous DRAGON calculations +using module \moc{CFC:}.\cite{dragstruc} + +There are two possible utilizations: +\begin{itemize} +\item Construction of an extended \dds{macrolib} for fuel properties +directly from \dds{database} information with respect to local parameters +contained in the fuel map object or directly input. +\item Construction of an extended \dds{macrolib} containing only one set +of cross sections derivated from the \dds{database} information. +Properties can be obtained for fuel or reflector. +\end{itemize} + +The calling specifications are: + +\begin{DataStructure}{Structure \moc{AFM:}} +\dusa{MACRO} \moc{:=} \moc{AFM:} $[$ \dusa{MACRO} $]$ \dusa{DBASE} +$[$ \dusa{MAPFL} $]$ +\moc{::} \dstr{descafm} +\end{DataStructure} + +\noindent where +\begin{ListeDeDescription}{mmmmmmmm} + +\item[\dusa{MACRO}] \texttt{character*12} name of +the extended \dds{macrolib}. The \dds{macrolib} can be in modification +mode. + +\item[\dusa{DBASE}] \texttt{character*12} name of the \dds{database} +object containing fuel properties with respect to local parameters. + +\item[\dusa{MAPFL}] \texttt{character*12} name of the \dds{map} +object containing fuel regions description and burnup +informations. This file is only required when a \dds{MACRO} is created +for fuel area. + +\item[\dstr{descafm}] structure containing the data to module \moc{AFM:}. + +\end{ListeDeDescription} + +\vskip 0.2cm + +\subsubsection{Input data to the \moc{AFM:} module} + +\begin{DataStructure}{Structure \dstr{descafm}} +$\{$ \moc{MAP} $|$ \moc{MCR} \dusa{mmix} $\}$ +\moc{INFOR} \dusa{NAMDB} \\ +\moc{DNAME} \dusa{ntyp} ( \dusa{NAMTYP}(i), i=1,\dusa{ntyp} ) \\ +\moc{REFT} ( \dusa{imix}(i) \dusa{NAMTYP}(i), i=1,\dusa{ntyp} ) \\ +$[$ \moc{EDIT} \dusa{iprint} $]$ \\ +$[$ \moc{FIXP} $\{$ \moc{INIT} $|$ \dusa{pow} $\}~]$ \\ +$[~\{$ \moc{PWF} $|$ \moc{NPWF} $\}~]$ \\ +$[$ \moc{TFUEL} \dusa{tfuel} $]$ \\ +$[$ \moc{TCOOL} \dusa{tcool} $]$ \\ +$[$ \moc{TMOD} \dusa{tmod} $]$ \\ +$[$ \moc{BORON} \dusa{nB} $]$ \\ +$[$ \moc{RDCL} \dusa{dcool} $]$ \\ +$[$ \moc{RDMD} \dusa{dmod} $]$ \\ +$[$ \moc{PUR} \dusa{purity} $]$ \\ +$[$ \moc{BURN} \dusa{bval} $]$ \\ +$[$ $\{$ \moc{XENON} \dusa{nXe} $|$ \moc{XEREF} $\}$ $]$ \\ +$[$ $\{$ \moc{NEP} \dusa{nNp} $|$ \moc{NREF} $\}$ $]$ \\ +$[$ \moc{SAM} \dusa{nSm} $]$ \\ +$[$ \moc{IMET} \dusa{imet} $]$ \\ +$[$ \moc{BLIN} $]$ \\ +; +\end{DataStructure} + +\noindent where +\begin{ListeDeDescription}{mmmmmmmm} + +\item[\moc{MAP}] keyword to specify that a \dds{macrolib} for fuel properties +will be computed. + +\item[\moc{MCR}] keyword to specify that a \dds{macrolib} containing only +one non-zero mixture will be created. + +\item[\dusa{mmix}] maximum number of mixtures in the \dds{macrolib}. + +\item[\moc{INFOR}] keyword to specify the data base name. + +\item[\dusa{NAMDB}] \texttt{character*72} title of the database as it has been +created. + +\item[\moc{DNAME}] keyword to specify the number of fuel types and their +names as stored in the data base. + +\item[\dusa{ntyp}] number of fuel types. For \moc{MCR} option, \dusa{ntyp} +must be 1. + +\item[\dusa{NAMTYP}(i)] \texttt{character*12} name of the directory where each +fuel type information has been stored. +\item[\moc{REFT}] keyword to specify a number associated with +a fuel type name. + +\item[\dusa{imix}(i)] fuel type index as specified for the fuel map or a +non-zero mixture number for the single-property {sc macrolib}. + +\item[\moc{EDIT}] keyword used to set \dusa{iprint}. + +\item[\dusa{iprint}] index used to control the printing in module {\tt +AFM:}. =0 for no print(default value); =1 for minimum printing; +larger values produce increasing amounts of output. + +\item[\moc{FIXP}] keyword used to set the power used for cross-section interpolation. + +\item[\moc{INIT}] a distributed beginning-of-transient bundle power in kW is used. This power distribution has to be pre-calculated +in the \moc{FLPOW:} module using the \moc{INIT} keyword. + +\item[\dusa{pow}] uniform bundle power in kW. If this data is omitted, the +reference value in the data base is used or the bundle powers present +in a \dds{map}. The reference value is 615 kW if none were provided at the +database computation time. + +\item[\moc{PWF}] keyword used to activate power bundle feedback on fuel properties using powers +recovered from {\tt 'BUND-PW'} record in \dusa{MAPFL}. This is the default option +if \moc{MAP} is selected. + +\item[\moc{NPWF}] keyword used to deactivate \moc{PWF} feedback. This is the only possible option +if \moc{MCR} is selected. + +\item[\moc{TFUEL}] keyword used to set \dusa{tfuel}. + +\item[\dusa{tfuel}] fuel temperature in K. If this data is omitted and +the bundle powers present in a \dds{map}, fuel temperatures are +computed with respect to powers. +If this data is omitted and there is no bundle power, the +reference value in the data base is used, where it is 941.29 K if none were provided at the database computation time. + +\item[\moc{TCOOL}] keyword used to set \dusa{tcool}. + +\item[\dusa{tcool}] coolant temperature in K. If this data is omitted, the +reference value in the data base is used. The reference value is 560.66 K if none were provided at the database computation time. + +\item[\moc{TMOD}] keyword used to set \dusa{tmod}. + +\item[\dusa{tmod}] moderator temperature in K. If this data is omitted, the +reference value in the data base is used. The reference value is 345.66 K if none were provided at the database computation time. + +\item[\moc{BORON}] keyword used to set \dusa{nB}. + +\item[\dusa{nB}] Boron concentration in ppm. If this data is omitted, the +reference value in the data base is used. The reference value is 0.0 ppm. See note below for inside equations. + +\item[\moc{RDCL}] keyword used to set \dusa{dcool}. + +\item[\dusa{dcool}] coolant density in $g/cm^3$. +If this data is omitted, the +reference value in the data base is used. The reference value is +0.81212 $g/cm^3$ if none were provided at the database computation time. + +\item[\moc{RDMD}] keyword used to set \dusa{dmod}. + +\item[\dusa{dmod}] moderator density in $g/cm^3$. +If this data is omitted, the +reference value in the data base is used. The reference value is +1.082885 $g/cm^3$ if none were provided at the database computation time. + +\item[\moc{PUR}] keyword used to set \dusa{purity}. + +\item[\dusa{purity}] moderator purity in atm\%. +If this data is omitted, the +reference value in the data base is used. The reference value is +99.911 atm\% if none were provided at the database computation time. + +\item[\moc{BURN}] keyword used to set \dusa{bval}. This option is +valid only when \moc{MCR} is used and can not be omitted. + +\item[\dusa{bval}] fuel burnup in MWd/t. This value must be positive. + +\item[\moc{XENON}] keyword used to set \dusa{nXe}. + +\item[\dusa{nXe}] Xenon concentration in $10^{24} at/cm^3$. +This concentration will be applied to every bundle. + +\item[\moc{XEREF}] keyword used to specify that the Xenon concentrations +as computed with DRAGON will be taken. If this option is omitted and \dds{map} +contains bundle fluxes, new Xenon concentrations will be computed and used. +\item[\moc{NEP}] keyword used to set \dusa{nNp}. + +\item[\dusa{nNp}] Neptunium concentration in $10^{24} at/cm^3$. + +\item[\moc{XEREF}] keyword used to specify that the Neptunium concentrations +as computed with DRAGON will be taken. If this option is omitted and \dds{map} +contains bundle fluxes, new Neptunium concentrations will be computed and used. + +\item[\moc{SAM}] keyword used to set \dusa{nSm}. + +\item[\dusa{nSm}] Samarium concentration in $10^{24} at/cm^3$. +If this data is omitted, bundle concentrations as computed by DRAGON is used. + +\item[\moc{IMET}] keyword used to set \dusa{imet}. + +\item[\dusa{imet}] interpolation type for time-average calculations. +\dusa{imet} = 1: using Lagrange approximations; \dusa{imet} = 2: using +spline approximations; \dusa{imet} = 3: using Hermite approximations +(default value). + +\item[\moc{BLIN}] keyword used to linear interpolation for burnup instead of the Lagrangian +interpolation method. + +\end{ListeDeDescription} + +\vskip 0.2cm + +Note: The concentration of boron is provided in terms of $10^{24}at/cm^3$ in the database. However, the usual units are $ppm (wt)$ of Boron. Thus, the input asks for $ppm$ of Boron ($n_B$), and automatically transform the units into $10^{24}at/cm^3$ using the following equations: +\begin{eqnarray*} +\rho_B(g/cm^3) & = & n_B \ . \ \rho_{\rm water}(g/cm^3)\\ + {\rm and} & & \\ + \rho_{\rm water}(at/cm^3) & = & 3 \rho_{\rm water}(molecule/cm^3) =\frac{3.N}{M_{\rm water}} \rho_{\rm water}(g/cm^3)\\ + \rho_{B}(at/cm^3) & = & \rho_{B}(molecule/cm^3) =\frac{N}{M_{B}} \rho_{}(g/cm^3)\\ + {\rm thus} & & \\ + \rho_{B}(10^{24}at/cm^3) & = & n_B \ . \ \frac{M_{\rm water}}{3.M_{B}} \rho_{\rm water}(10^{24}at/cm^3) +\end{eqnarray*} +where $M$ molar mass and $N$ the Avogadro number. + +They are many options on how to use the module {\tt AFM:} for its different purposes. A compact summary is presented on Tab. \ref{tabAFM}. + +\begin{table}[!h] +\caption{AFM options summary} +\begin{center} +\begin{tabular}{|p{0.15\textwidth}|p{0.28\textwidth}|p{0.45\textwidth}|} +\hline +Option & Keywords & Parameter values \\ +\hline +MCR & REFT & Nominal values \\ + & REFT + \{TFUEL, TCOOL, ...\} & Nominal values except for specified parameters \\ +\hline +TAB & REFT & Nominal values except for TFUEL parameter which is computed according to the Rozon correlation using nominal power\\ + & REFT + \{TFUEL, TCOOL, ...\} & Same as above except for specified parameters which will have a constant value \\ +\hline +MAP with local parameters & REFT & Nominal values except for local parameters included in MAP\\ + & REFT + \{TFUEL, TCOOL, ...\} & Same as above except for specified parameters which will have a constant value\\ +\hline +MAP without local parameters & REFT & Nominal values except for TFUEL parameter which is computed according to the Rozon correlation if power distribution is available\\ + & REFT + \{TFUEL, TCOOL, ...\} & Same as above except for specified parameters which will have a constant value\\ +\hline + +\end{tabular} +\end{center} +\label{tabAFM} +\end{table} + +The Rozon correlation for fuel temperature as a function of bundle power is: +$$ +T_{\rm fuel}= T_{\rm cool} + 0.476 \, P + 2.267 \, P^2 \times 10^{-4} +$$ +where $P$ is in kW and temperatures are in Kelvin. + +\clearpage -- cgit v1.2.3