Fixed-Source Subcritical Multiplication Factors #3696
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
This feature adds a new setting for calculating subcritical multiplication factors in fixed source mode in a way analogous to eigenvalue mode. The relevant theory is contained in the added documentation, but this is generally useful for modeling accelerator driven systems. This involves:
simulation.cppeigenvalue.cppfor computing generation, average, and combined multiplication factor estimatesstatepoint.pyto read statepoint files in a more permissive way usingtry-exceptrather than explicitly checking therun_modefor eigenvaluesoutput.cppto be slightly more generic and accept a different `eigenvalue_namesimulation::keffis used in this mode, needed to updatephysics.cppto no longer weightnu_tbysimulation::keffincalculate_subcritical_kmode.subcritical.cpp,subcritical.hto contain necessary code for calculatingkq. Major code duplication fromeigenvalue.cpp, but was done in favor of generalizing code ineigenvalue.cppand creating a much larger interface. This code is not expected to change anyways.PyAPITestHarnessto accept a genericresults_truefilename as an input argument, and asubcritical_k_resultsflag for adding subcritical k parameters to the results digest. Necessary for performing tests.Checklist