summaryrefslogtreecommitdiff
path: root/doc/IGE335/Section3.09.tex
blob: a19d348097b3b6e6b5d967e3781114653291d21a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
\subsection{The {\tt EVO:} module}\label{sect:EVOData}

The \moc{EVO:} module performs the burnup calculations. The depletion equations
for the various isotope of the {\sc microlib} are solved using the burnup chains
also present in the {\sc microlib}. Both in-core and out-of-core calculations
can be considered. For in-core depletion calculations, one assumes linear flux variation
over each irradiation period (time stage). The initial (and possibly final) flux
distributions are recovered from previous \moc{FLU:} calculations. In-core depletion can
be performed at constant flux or constant power (expressed in MW/Tonne of initial heavy
elements) but these values can undergo step variations from one time stage to another.
All the information required for successive burnup calculation is stored on the PyLCM
\dds{burnup} data structure. Thus it is possible at any point in time to return to a previous
time step and restart the calculations.

\vskip 0.2cm

In each burnup mixture of the unit cell, the depletion of $K$ isotopes over a time
stage $(t_0,t_f)$ follows the following equation:

\begin{equation}
{dN_k \over dt} + N_k(t) \ \Lambda_k(t)=S_k(t) \ \ \ ; \ {k=1,K}
\label{eq:depletion}
\end{equation}
 
\noindent with
 
\begin{equation}
\Lambda_k(t)= \lambda_k + \langle \sigma_{{\rm a},k}(t) \phi(t) \rangle \ ,
\end{equation}

\vskip 0.2cm

\begin{equation}
S_k(t)=\sum^L_{l=1} {Y_{kl} \ \langle \sigma_{{\rm f},l}(t) \phi(t) \rangle } \ N_l(t) +
\sum^K_{l=1} m_{kl}(t) \ {N_l(t)} \ ,
\end{equation}

\vskip 0.2cm

\begin{equation}
\langle \sigma_{{\rm x},l}(t) \phi(t) \rangle = \int_0^\infty {\sigma_{{\rm x},l}(u) \phi(t,u) du}
\end{equation}

\noindent and
 
\begin{equation}
\sigma_{{\rm x},k}(t,u)\phi(t,u)= \sigma_{{\rm x},k}(t_0,u)\phi(t_0,u)+
{\sigma_{{\rm x},k}(t_f,u)\phi(t_f,u)-\sigma_{{\rm x},k}(t_0,u)\phi(t_0,u) \over t_f-t_0}(t-t_0)
\end{equation}

\noindent where
\begin{eqnarray}
\nonumber K &=& \hbox{number of depleting isotopes} 
\\
\nonumber L &=& \hbox{number of fissile isotopes producing fission products} 
\\
\nonumber N_k(t) &=& \hbox{time dependant number density for {\sl k}-th isotope} 
\\
\nonumber \lambda_k &=& \hbox{radioactive decay constant for {\sl k}-th isotope} 
\\
\nonumber \sigma_{{\rm x},k}(t,u) &=& \hbox{time and lethargy dependant microscopic cross section for
nuclear reaction x on} 
\\
\nonumber &~& \hbox{{\sl k}-th isotope. x=a, x=f and x=$\gamma$ respectively stands for absorption, fission and} 
\\
\nonumber &~& \hbox{radiative capture cross sections} 
\\
\nonumber \phi(t,u) &=& \hbox{time and lethargy dependant neutron flux} 
\\
\nonumber Y_{kl} &=& \hbox{fission yield for production of fission product {\sl k} by fissile
isotope {\sl l}} 
\\
\nonumber m_{kl}(t) &=& \hbox{radioactive decay constant or $\langle \sigma_{{\rm x},l}(t)
\phi(t) \rangle$ term for production of isotope {\sl k} by}
\\
\nonumber &~& \hbox{isotope {\sl l}.} 
\end{eqnarray}

Depleting isotopes with $\Lambda_k(t_0)\left[t_f-t_0\right]\geq$\dusa{valexp} and
$\Lambda_k(t_f)\left[t_f-t_0\right]\geq$\dusa{valexp} are considered to be at saturation. They are
described by making ${dN_k \over dt}=0$ in \Eq{depletion} to obtain

\begin{equation}
N_k(t)={S_k(t)\over\Lambda_k(t)} \ \ \ ; \ {{\rm if} \ k \ {\rm is \ at \ saturation.}}
\label{eq:sat1}
\end{equation}

If the keyword \moc{SAT} is set, beginning-of-stage and end-of-stage Dirac contributions are
added to the previous equation:

\begin{equation}
N_k(t)={1\over\Lambda_k(t)}\left[a \delta(t-t_0) +S_k(t)+b \delta(t-t_f)\right] \ \ \ ; \ {{\rm
if} \ k \ {\rm is \ at \ saturation}}
\label{eq:sat2}
\end{equation}
 
\noindent where $a$ and $b$ are chosen in order to satisfy the time integral of \Eq{depletion}:

\begin{equation}
N_k(t_f^+)-N_k(t_0^-) + \int_{t_0^-}^{t_f^+}{N_k(t) \ \Lambda_k(t) \ dt} =
\int_{t_0^-}^{t_f^+}{S_k(t) \ dt}
\end{equation}

It is numerically convenient to chose the following values of $a$ and $b$:

\begin{equation}
a=N_k(t_0^-)-{S_k(t_0^+) \over \Lambda_k(t_0^+)}
\end{equation}

\noindent and

\begin{equation}
b={S_k(t_0^+) \over \Lambda_k(t_0^+)}-{S_k(t_f^+) \over \Lambda_k(t_f^+)}
\end{equation}

\vskip 0.2cm

The numerical solution techniques used in the \moc{EVO:} module are the following.
Very short period isotopes are taken at saturation and are solved apart from non-saturating
isotopes. If an isotope is taken at saturation, all its parent isotopes, other than fissiles
isotopes, are also taken at saturation. Isotopes at saturation can procuce daughter isotopes
using decay {\sl and/or} neutron-induced reactions.

\vskip 0.2cm

The lumped depletion matrix system containing the non-saturating isotopes is solved
using either a fifth order Cash-Karp algorithm or a fourth order Kaps-Rentrop
algorithm\cite{recipie}, taking care to perform all matrix operations in sparse matrix algebra.
Matrices $\left[ m_{kl}(t_0) \right]$ and $\left[ m_{kl}(t_f) \right]$ are therefore
represented in diagonal banded storage and kept apart from the yield matrix
$\left[ Y_{kl}\right]$. Every matrix multiplication or linear system solution is obtained
via the LU algorithm.

\vskip 0.2cm

The solution of burnup equations is affected by the flux normalization factors. DRAGON can
perform out-of-core or in-core depletion with a choice between two normalization techniques:

\begin{enumerate}

\item Constant flux depletion. In this case, the lethargy integrated fluxes at
beginning-of-stage and end-of-stage are set to a constant $F$:

\begin{equation}
\int_0^\infty{\phi(t_0,u) du}=\int_0^\infty{\phi(t_f,u) du}=F
\end{equation}

\item Constant power depletion. In this case, the power released per initial heavy element at
beginning-of-stage and end-of-stage are set to a constant $W$.

\vskip -0.5cm

\begin{eqnarray}
\nonumber \sum^K_{k=1} \big[ \kappa_{{\rm f},k} \ \langle \sigma_{{\rm f},k}(t_0) \phi(t_0) \rangle +\kappa_{\gamma,k} \ \langle
\sigma_{\gamma,k}(t_0) \phi(t_0) \rangle \big]  \ N_k(t_0) &=& \\
\sum^K_{k=1} \big[ \kappa_{{\rm f},k} \ \langle \sigma_{{\rm f},k}(t_f) \phi(t_f) \rangle +\kappa_{\gamma,k} \ \langle \sigma_{\gamma,k}
(t_f) \phi(t_f) \rangle \big]\ N_k(t_f) &=& C_0 \ W
\end{eqnarray}

\noindent where
\begin{eqnarray}
\nonumber \kappa_{{\rm f},k} &=& \hbox{energy (MeV) released per fission of the fissile isotope $k$}
\\
\nonumber \kappa_{\gamma,k} &=& \hbox{energy (MeV) released per radiative capture of isotope $k$}
\\
\nonumber C_0 &=& \hbox{conversion factor (MeV/MJ) multiplied by the mass of initial heavy
elements}
\\
\nonumber &~& \hbox{expressed in metric tonnes} 
\end{eqnarray}

The end-of-stage power is function of the number densities $N_k(t_f)$; a few iterations will
therefore be required before the end-of-stage power released can be set equal to the desired
value. Note that there is no warranties that the power released keep its desired value at every time
during the stage; only the beginning-of-stage and end-of-stage are set.

\end{enumerate}

Whatever the normalisation technique used, DRAGON compute the exact burnup of the unit cell
(in MW per tonne of initial heavy element) by adding an additional equation in the depletion
system. This value is the local parameter that should be used to tabulate the output cross
sections.

\vskip 0.2cm

The general format of the data which is used to control
the execution of the \moc{EVO:} module is the following:

\begin{DataStructure}{Structure \dstr{EVO:}}
\dusa{BRNNAM} \dusa{MICNAM} \moc{:=} \moc{EVO:} \\
~~~~~$[$ \dusa{BRNNAM} $]~\{$ \dusa{MICNAM} $|$ \dusa{OLDMIC} $\}~[~\{$ \dusa{FLUNAM} \dusa{TRKNAM} $|$ \dusa{POWNAM} $\}~]$\\
~~~~~\moc{::} \dstr{descevo}
\end{DataStructure}

\noindent where

\begin{ListeDeDescription}{mmmmmmmm}

\item[\dusa{BRNNAM}] {\tt character*12} name of the \dds{burnup} data
structure that will contain the
depletion history as modified by the depletion module. If \dusa{BRNNAM} appears
on both LHS and RHS, it is updated; otherwise, it is created.

\item[\dusa{MICNAM}] {\tt character*12} name of the \dds{microlib} containing
the microscopic cross sections at save point {\sl xts}. \dusa{MICNAM} is modified
to include an embedded \dds{macrolib} containing the updated macroscopic cross
sections at set point {\sl xtr}. If \dusa{MICNAM} appears on both LHS and RHS,
it is updated; otherwise, the internal library \dusa{OLDMIC} is copied in
\dusa{MICNAM} and \dusa{MICNAM} is updated. It is possible to assign different
\dds{microlib} to different save points of the depletion calculation. In this
case, the microscopic reaction rates will be linearly interpolated/extrapolated
between points {\sl xti} and {\sl xtf}.

\item[\dusa{OLDMIC}] {\tt character*12} name of a read-only \dds{microlib}
that is copied in \dusa{MICNAM}.

\item[\dusa{FLUNAM}] {\tt character*12} name of a read-only \dds{fluxunk} at save point
{\sl xts}. This information is used for in-core depletion cases. This information is not required for
out-of-core depletion cases. Otherwise, it is mandatory

\item[\dusa{TRKNAM}] {\tt character*12} name of a read-only \dds{tracking}
constructed for the depleting geometry and consistent with object \dusa{FLUNAM}.

\item[\dusa{POWNAM}] {\tt character*12} name of a read-only \dds{power} object (generated by DONJON) at save point
{\sl xts}. This information is used for micro-depletion cases.

\item[\dstr{descevo}] structure containing the input data to this module
(see \Sect{descevo}).

\end{ListeDeDescription}

For the in-core depletion cases, the tracking \dds{tracking} data structure on which
\dusa{FLUNAM} is based, is automatically recovered in read-only mode from the
generalized driver dependencies.

\subsubsection{Data input for module {\tt EVO:}}\label{sect:descevo}

\begin{DataStructure}{Structure \dstr{descevo}}
$[$ \moc{EDIT} \dusa{iprint} $]$ \\
$[$ $\{$ \moc{SAVE} \dusa{xts} $\{$ \moc{S} $|$ \moc{DAY} $|$ \moc{YEAR} $\}~\{$
\moc{FLUX} \dusa{flux} $|$ \moc{POWR} \dusa{fpower} $|$ \moc{W/CC} \dusa{apower} $\}~|$
\moc{NOSA} $\}$ $]$ \\
$[$ \moc{EPS1} \dusa{valeps1} $]~~[$ \moc{EPS2} \dusa{valeps2} $]~~[~\{$ \moc{EXPM} \dusa{valexp} $|$ \moc{SATOFF} $\}~]$ \\
$[$ \moc{H1} \dusa{valh1} $]~[$ $\{$ \moc{RUNG} $|$ \moc{KAPS} $\}$ $]$ \\
$[~\{$ \moc{TIXS} $|$ \moc{TDXS} $\}~]~[~\{$\moc{NOEX} $|$ \moc{EXTR} $[$ \dusa{iextr} $]~\}~]$ \\
$[~\{$ \moc{EDP0} $|$ \moc{NOGL} $|$ \moc{GLOB}$\}~]~[~\{$\moc{NSAT} $|$ \moc{SAT}$\}~]~[~\{$\moc{NODI} $|$ \moc{DIRA}$\}~]$ \\
$[~\{$ \moc{FLUX\_FLUX} $|$ \moc{FLUX\_MAC} $|$ \moc{FLUX\_POW} $\}~]~[~\{$ \moc{CHAIN} $|$ \moc{PIFI} $\}~]$ \\
$[$ \moc{DEPL} $\{$\dusa{xti} \dusa{xtf} $|$ \dusa{dxt} $\}~\{$ \moc{S} $|$ \moc{DAY} $|$ \moc{YEAR} $\}$ $\{$ \moc{COOL} $|$
\moc{FLUX} \dusa{flux} $|$ \moc{POWR} \dusa{fpower} $|$ \moc{W/CC} \dusa{apower} $|$ \moc{KEEP} $\}$ $]$ \\
$[$ \moc{SET} \dusa{xtr} $\{$ \moc{S} $|$ \moc{DAY} $|$ \moc{YEAR} $\}$ $]$ \\
$[$ \moc{MIXB} $[[$ \dusa{mixbrn} $]] ~]~~~[$ \moc{MIXP} $[[$ \dusa{mixpwr} $]] ~]$ \\
$[$ \moc{PICK}  {\tt >>} \dusa{burnup} {\tt <<} $]$ \\
{\tt ;}
\end{DataStructure}

\noindent
where

\begin{ListeDeDescription}{mmmmmmm}

\item[\moc{EDIT}] keyword used to modify the print level \dusa{iprint}.

\item[\dusa{iprint}] index used to control the printing of the module. The
amount of output produced by this tracking module will vary substantially
depending on the print level specified.

\item[\moc{SAVE}] keyword to specify that the current isotopic concentration
and the microscopic reaction rates resulting from the last transport calculation
will be normalized and stored on \dusa{BRNNAM} in a sub-directory corresponding
to a specific time. By default this data is stored at a time corresponding to
\dusa{xti}.

\item[\moc{NOSA}] keyword to specify that the current isotopic concentration
and the results of the last transport calculation will not be stored on
\dusa{BRNNAM}. By default this data is stored at a time corresponding to
\dusa{xti}.

\item[\moc{SET}] keyword used to recover the isotopic concentration already
stored on \dusa{BRNNAM} from a sub-directory corresponding to a specific time. By
default this data is recovered from a time corresponding to \dusa{xtf}.

\item[\moc{DEPL}] keyword to specify that a burnup calculation between an
initial and a final time must be performed. In the case where the \moc{SAVE}
keyword is absent, the initial isotopic concentration will be stored on
\dusa{BRNNAM} on a sub-directory corresponding to the initial time. If the
\moc{SET} keyword is absent, the isotopic concentration corresponding to the
final burnup time will be used to update \moc{MICNAM}.

\item[\dusa{xti}] initial time associated with the burnup calculation. The
name of the sub-directory where this information is stored will be given by
`{\tt DEPL-DAT}'//{\tt CNN} where {\tt CNN} is a  {\tt character*4} variable
defined by  {\tt WRITE(CNN,'(I4.4)') INN} where {\tt INN} is an index associated
with the time \dusa{xti}. The initial values  are recovered from this
sub-directory in \dusa{BRNNAM}.

\item[\dusa{xtf}] end of time for the burnup calculation. The results of the
isotopic depletion calculations are stored in the tables associated with a
sub-directory whose name is constructed in the same manner as the \dusa{xti}
input.

\item[\dusa{dxt}] time interval for the burnup calculation. The initial time \dusa{xti} in
this case is taken as the final time reached at the last depletion step. If this is the first
depletion step, \dusa{xti} $=0$.

\item[\dusa{xts}] time associated with the last transport calculation. The
name  of the sub-directory where this information is to be stored is constructed
in the same manner as the for \dusa{xti} input. By default  (fixed default)
\dusa{xts}=\dusa{xti}.

\item[\dusa{xtr}] time associated with the next flux calculation. The name of
the sub-directory where this information is to be stored is constructed in the
same manner as for the \dusa{xti} input. By default (fixed default)
\dusa{xtr}=\dusa{xtf}.

\item[\moc{S}] keyword to specify that the time is given in seconds.

\item[\moc{DAY}] keyword to specify that the time is given in days.

\item[\moc{YEAR}] keyword to specify that the time is given in years.

\item[\moc{COOL}] keyword to specify that a zero flux burnup calculation is to
be performed. 

\item[\moc{FLUX}] keyword to specify that a constant flux burnup
calculation is to be performed.  

\item[\dusa{flux}] flux expressed in $cm^{-2}s^{-1}$. 

\item[\moc{POWR}] keyword to specify that a constant fuel power depletion
calculation is to be performed. The energy released outside the fuel (e.g., by
(n,$\gamma$) reactions) is {\sl not} taken into account in the flux normalization,
unless the \moc{GLOB} option is set.

\item[\dusa{fpower}] fuel power expressed in $KW\;Kg^{-1}=MW\;{\it tonne}^{-1}$.

\item[\moc{W/CC}] keyword to specify that a constant assembly power depletion
calculation is to be performed. The energy released outside the fuel (e.g., by
(n,$\gamma$) reactions) is always taken into account in the flux normalization.

\item[\dusa{apower}] assembly power density expressed in $W/cm^3$ (Power per
unit assembly volume).

\item[\moc{KEEP}] keyword to specify that the flux is used without been normalized.
This option is useful in cases where the flux was already normalized before the call to
\moc{EVO:} module.

\item[\moc{EPS1}] keyword to specify the tolerance used in the algorithm for
the solution of the depletion equations.

\item[\dusa{valeps1}] the tolerance used in the algorithm for the solution of the
depletion equations. The default value is \dusa{valeps1}=$1.0\times 10^{-5}$.

\item[\moc{EPS2}] keyword to specify the tolerance used in the search
algorithm for a final fixed power (used if the \moc{POWR} or \moc{W/CC} option is activated).

\item[\dusa{valeps2}] the tolerance used in the search algorithm for a final
fixed power. The default value is \dusa{valeps2}=$1.0\times 10^{-4}$.

\item[\moc{EXPM}] keyword to specify the selection criterion for non-fissile
isotopes that are at saturation.

\item[\dusa{valexp}] the isotopes for which $\lambda \times($\dusa{xtf}$-$
\dusa{xti})$ \ge $\dusa{valexp} will be treated by a saturation approximation. Here,
$\lambda$ is the sum of the radioactive decay constant and microscopic neutron
absorption rate. The default value is \dusa{valexp}=80.0. In order to remove the
saturation approximation for all isotopes set \dusa{valexp} to a very large number
such as $1.0\times 10^{5}$. On the other way, the saturation approximation can be set
for a specific isotope by using the keyword \moc{SAT} in Sect.~\ref{sect:descmix1}
(module \moc{LIB:}).

\item[\moc{SATOFF}] keyword to remove the saturation approximation for all isotopes
even if \moc{SAT} keyword was set in Sect.~\ref{sect:descmix1} (module \moc{LIB:}).

\item[\moc{H1}] keyword to specify an estimate of the relative width of the
time step used in the solution of burnup equations.

\item[\dusa{valh1}] relative width of the time step used in the solution of
burnup equations. An initial time step of 
$\Delta_{t}=$\dusa{valh1}$\times ($\dusa{xtf}$-$\dusa{xti}$)$ 
is used. This value is optimized dynamically by the program. The
default value is \dusa{valh1}=$1.0\times 10^{-4}$.

\item[\moc{RUNG}] keyword to specify that the solution will be obtained using
the $5^{th}$ order Cash-Karp algorithm.

\item[\moc{KAPS}] keyword to specify that the solution will be obtained using
the $4^{th}$ order Kaps-Rentrop algorithm. This is the default value.

\item[\moc{TIXS}] keyword that specified that time independent cross sections will be used.
This is the default option when no time dependent cross sections are provided.

\item[\moc{TDXS}] keyword that specified that time dependent cross sections will be used if available.
This is the default option when time dependent cross sections are provided.

\item[\moc{NOEX}] keyword to supress the linear extrapolation of the
microscopic reaction rates in
the solution of the burnup equations.

\item[\moc{EXTR}] keyword to perform an extrapolation of the microscopic reaction rates, using
the available information preceding the initial time \dusa{xti}. This is the
default option.

\item[\dusa{iextr}] extrapolation order ($=1$: linear (default value); $=2$: parabolic).

\item[\moc{EDP0}] keyword to compute the burnup using the energy released by heavy isotopes in
fuel only using the Serpent empirical formula ({\tt edepmode} $= 0$ in Serpent).\cite{edep}
In this mode, all energy is deposited locally at fission sites and the energy deposition per
fission for fissile nuclide $i$ is calculated as
$$E_{{\rm fiss},i}={Q_i \over Q_{\rm 235}} H_{\rm 235}$$
\noindent where $Q_i$ is the fission pseudo-Q value for fissile nuclide $i$; $Q_{\rm 235}$ is the fission
pseudo-Q value for U235 and $H_{\rm 235} = 202.27$ MeV is an estimate for the energy deposition per
fission (including the additional energy released in capture reactions) in a typical light water reactor. This option
assumes that {\tt H-FACTOR} is defined for all heavy isotopes.

\item[\moc{NOGL}] keyword to compute the burnup using the energy released by all isotopes present in
fuel only. This is the default option.

\item[\moc{GLOB}]  keyword to compute the burnup using the energy released in
the complete geometry. This option has an effect only in cases where some
energy is released outside the fuel (e.g., due to (n,$\gamma$) reactions).
This option affects both the meaning of \dusa{fpower} (given after the
key-word \moc{POWR}) and the value of the burnup, as computed by {\tt EVO:}.

\item[\moc{NSAT}] save the non--saturated initial number densities in the {\sc burnup}
object \dusa{BRNNAM} (default value)

\item[\moc{SAT}]  save the saturated initial number densities in the {\sc burnup}
object \dusa{BRNNAM}

\item[\moc{NODI}]  select \Eq{sat1} to compute the saturated number densities
(default value)

\item[\moc{DIRA}]  select \Eq{sat2} to compute the saturated number densities

\item[\moc{FLUX\_FLUX}]  recover the neutron flux from \dusa{FLUNAM} object (default option)

\item[\moc{FLUX\_MAC}]  recover the neutron flux from embedded macrolib present in \dusa{MICNAM} or \dusa{OLDMIC}
object. This option is useful to deplete in cases where the neutron flux is obtained from a Monte Carlo
calculation.

\item[\moc{FLUX\_POW}]  recover the neutron flux from the \dds{power} object named \dusa{POWNAM} generated in DONJON. This option is useful in
micro-depletion cases. The neutron flux recovered from \dusa{POWNAM} is generally normalized to the power of the full core. It is therefore
recommended to use the \moc{KEEP} option in \moc{DEPL} data structure.

\item[\moc{CHAIN}]  recover the fission yield data from {\tt 'DEPL-CHAIN'} directory of \dusa{MICNAM} or \dusa{OLDMIC}
object (default option). With this option, the fission yield data is the same in all material mixtures.

\item[\moc{PIFI}]  recover the fission yield data from {\tt 'PIFI'} and {\tt 'PYIELD'} records present in isotopic directories
of \dusa{MICNAM} or \dusa{OLDMIC} object. With this option, the fission yield data is mixture-dependent. This option is useful
in micro-depletion cases.

\item[\moc{MIXB}]  keyword to select depleting material mixtures. By default, all mixtures
with depleting isotopes are set as depleting.

\item[\dusa{mixbrn}] indices of depleting material mixtures.

\item[\moc{MIXP}]  keyword to select material mixtures producing power. By default, 
\begin{itemize}
\item if \moc{MIXB} is not set, all mixtures with isotopes producing power are set as producing power
\item if \moc{MIXB} is set, the same mixtures \dusa{mixbrn} are set as producing power.
\end{itemize}

\item[\dusa{mixpwr}] indices of material mixtures producing power.

\item[\moc{PICK}]  keyword used to recover the final burnup value (in MW-day/tonne) in a CLE-2000 variable.

\item[\dusa{burnup}] \texttt{character*12} CLE-2000 variable name in which the extracted burnup value will be placed.

\end{ListeDeDescription}

\subsubsection{Power normalization in {\tt EVO:}}\label{sect:powerevo}

Flux-induced depletion is dependent of the flux or power normalization factor
given after key-words \moc{FLUX}, \moc{POWR} or \moc{W/CC}. The depletion
steps, given after key-words \moc{SAVE}, \moc{DEPL} or \moc{SET}, are set
in time units. Traditionally, the power normalization factor is given in
${\it MW}\;{\it tonne}^{-1}$ and the depletion steps are given in
${\it MWday}\;{\it tonne}^{-1}$. However, a confusion appear in cases where
some energy is released outside the fuel (e.g., due to (n,$\gamma$) reactions).

\vskip 0.2cm

The accepted rule and default option in {\tt EVO:} is to compute the burnup
steps in units of $MWday\;{\it tonne}^{-1}$ by considering only the energy
released in fuel (and only the initial mass of the heavy elements present
in fuel). However, it is also recommended to provide a normalization power
taking into account the {\sl total} energy released in the global geometry.
The \moc{GLOB} option can be use to change this rule and to use
the energy released in the complete geometry to compute the burnup. However,
this is not a
common practice, as it implies a non-usual definition of the burnup.
A more acceptable solution consists in setting the normalization power
in power per unit volume of the complete geometry using the key-word
\moc{W/CC}. The value of \dusa{apower} can be computed from the linear
power $f_{\rm lin}$ (expressed in ${\it Mev}\;{\it s}^{-1}\;{\it cm}^{-1}$)
using:

\begin{equation}
{\it apower}={f_{\rm lin} \ 1.60207 \times 10^{-13} \over V_{\rm assmb}}
\label{eq:eq1}
\end{equation}

\noindent where $V_{\rm assmb}$ is the 2--D lumped volume of the assembly expressed in $cm^2$.

\vskip 0.2cm

The corresponding normalization factor $f_{\rm burnup}$ in
${\it MW}\;{\it tonne}^{-1}$ is given as

\begin{equation}
f_{\rm burnup}={ {\it apower} \over D_{\rm g} \ F_{\rm power}}
\label{eq:eq2}
\end{equation}

\noindent where $D_{\rm g}$ is the mass of heavy elements per unit volume
of the complete geometry ($g\; {\it cm}^{-3}$) and $F_{\rm power}$ is the
ratio of the energy released in the complete geometry over the energy
released in fuel. Numerical values of $D_{\rm g}$ and $f_{\rm power}$ are
computed by {\tt EVO:} when the parameter \dusa{iprint} is greater or
equal to 2. The burnup $B$ corresponding to an elapsed time $\Delta t$ is
therefore given as

\begin{equation}
B=f_{\rm burnup} \ \Delta t
\label{eq:eq3}
\end{equation}

\noindent where $B$ is expressed in ${\it MWday}\;{\it tonne}^{-1}$ and $\Delta t$
is expressed in ${\it day}$.

\vskip 0.2cm

The unit of the reaction rates depends on the normalization applied to the flux. This normalization
takes place after the flux calculation, using the \moc{EVO:} module. Here is an example:

\begin{verbatim}
INTEGER istep := 1 ;
REAL Tend  := 0.0  ;
REAL Fuelpwr := 38.4 ; ! expressed in MW/tonne

BURN MICROLIB := EVO: MICROLIB FLUX TRACKN ::
  EDIT 0
  SAVE <<Tend>> DAY POWR <<Fuelpwr>>
;
\end{verbatim}

\noindent where \moc{BURN} is the burnup object, \moc{MICROLIB} is the Microlib used to compute the flux, \moc{FLUX} is the flux
object and \moc{TRACKN} is the tracking object used to compute the flux. After this call, the record
{\tt 'FLUX-NORM'} in \moc{BURN} contains a unique real number, equal to the flux normalization factor. If \moc{MICROLIB} is
obtained using the \moc{LIB:} module, the \moc{DEPL} keyword with following data must be set (see \Sect{desclib}).
Unfortunately, the normalization factor is kept aside and is not applied to the flux present in object \moc{FLUX}. In
fact, only the advanced post-processing modules \moc{COMPO:} (see \Sect{COMPOData}) and \moc{SAP:} (see \Sect{SAPHYBData})
are making use of this normalization factor.

\eject