In discussing #1611, some additional items arose related to how openmc.deplete could support decay depletion steps, e.g. a step with zero reactor power. This is different enough from changes required for activation calculations (subject of #1611) that I felt it merited it's own issue for tracking / discussion. Summarizing comments from that PR
#1611 (comment)
With respect to the decay mode, setting a normalization target of zero will result in the zero-valued reaction rates necessary to build a pure-decay depletion matrix. The downside is a full transport solution would still be performed at BOS to compute those unused reaction rates. Possible implementations for creating / emulating zero reaction rates w/o running a full transport solve
1. Make a list of zero-valued reaction_rates to be passed to Chain.form_matrix during the decay solver.
2. Exploit some duck-typing and make a class that looks like an array of reaction rates but always returns zero upon indexing
3. Add a dedicated Chain.build_decay_matrix method that doesn't accept reaction rates. Since this is only dependent on nuclear data, we could store it for later steps, assuming all materials track the same nuclides which I'm pretty sure they do. Then we don't have to re-build it at every step for all materials.
#1611 (comment)
I would add one other note which is that we always perform a transport calculation at the last time point, which is not desirable in an activation calculation.
In discussing #1611, some additional items arose related to how
openmc.depletecould support decay depletion steps, e.g. a step with zero reactor power. This is different enough from changes required for activation calculations (subject of #1611) that I felt it merited it's own issue for tracking / discussion. Summarizing comments from that PR#1611 (comment)
#1611 (comment)