"Fork squirrel" to create a new MOOSE-based application.
This application is intended as a light weight and flexible implementation of the PK equation with the ability to capture the change in reactivity caused by the DNP movement and changes in temperature.
If you use the Squirrel app considder citing: 🔗 https://doi.org/10.1080/00295639.2025.2494182
A good derivation of this can be found in Chapter two of Mathematical-Methods-in-Nuclear-Reactor-Dynamics.
For a given power
$$
P (x,t) = P(t) |\psi(x)\rangle
$$
with
The squirrel app solves the PK by weighting the DNP
$$
and for the DNPs:
$$
|\dot C_I(x) \rangle = \frac{\beta_I}{\Lambda}P(t)|\psi(x) \rangle - \lambda_I |C_i(x) \rangle + U \nabla C_I(x)
$$
we are imposing steady state initial conditions so that
For a given temperature field
We can now calculate the change in
with
It is possible that the reactivity change depends on the temperature
In addition, the importance function is different.
The Doppler follows
The ScalarMultiplication AuxKernel implements the multiplication of a scalar variable with a variable. $$ P(t) |P(x)\rangle $$ The ScalarMultiplicationPP AuxKernel does the same for a postprocessor
implements the $$ A_I = \lambda_I \frac{\langle \psi|C_I\rangle}{\text{Norm}} $$ for the $I$th group.
postprocessor implements $$ \rho = \sum_i \frac{\psi_i}{\Delta T} \delta T_i $$
postprocessor implements
Implements
with
Implements
with
implements:
In [[Sanity_checks]] simple tests are preformed. They should confirm the correct implementation of the PK solver.
In [[Problems]] the performance of the PK within a multi physics context is tested. Namely the Lid driven cavity benchmark and the flushing of DNPs in the MSRE.