Critical density iteration
This feature has been developed mainly to help in iterating the critical boron concentration for LWR systems, but can be used for various applications as long as the limitations of the methodology are well noted.
A set of nuclides in a set of materials can be flagged for critical density iteration, where the atomic density of the nuclides will be scaled using a multiplicative factor in such a way that the absorption of neutrons to the nuclides will bring the system critical.
Critical density iteration was first implemented in Serpent 2.1.29.
An output variable ITER_FACTOR is included in the main [INPUT]_res.m results file. The output variable gives the mean multiplicative scaling factor applied to the density of the iterated nuclides to achieve a critical system. The critical density of the nuclides can be obtained by reading the nuclide densities (atomic or mass) from the [input].out file for each included material and scaling them with the scaling factor while keeping the densities of other nuclides constant.
If the batch history recording is set on (see set his) the [INPUT]_his[STEP].m history output file will contain batch-wise estimates for the scaling factor, which can be used to ensure the convergence of the scaling factor during the inactive cycles.
- Serpent will first execute the inactive cycles defined using the set pop input option with a multiplicative scaling factor of 1.0.
- After that, the additional inactive cycles defined using set iter nuc will be executed and the multiplicative scaling factor will be updated after each cycle in order to bring the system to criticality.
- Finally, the active cycles will be executed with the scaling factor still updated after each cycle.
During each neutron cycle, Serpent calculates the neutron loss due to absorption by the flagged nuclides and tallies separately various neutron loss and neutron production terms.
Starting from the k-eigenvalue form of the neutron balance equation for the system
ee can separate the absorption rate to two parts
where the first term represents the loss to the flagged nuclides and the second term represents the loss to other nuclides. The neutron balance equation then becomes
The objective is to find a neutron loss rate to the flagged nuclides such that the k-effective of the system is the one we want to obtain , e.g. 1.
This yields the balance equation
The critical absorption rate by the flagged nuclides is solved from
using the values tallied for each term during the previous transport cycle.
By assuming a linear dependence between the atomic densities of the flagged nuclides and their absorption rate, we see that the atomic densities should be scaled for the next cycle (relative to densities during previous cycle) with a factor of
If the results for the previous cycle were obtained using a scaling factor of , the absolute scaling factor (relative to the initial densities) is