Merge pull request #2356 from bam241/matrix_func_arg

adding optional arg to matrix_func in Pool.py (for depletion)
This commit is contained in:
Paul Romano 2023-02-10 10:39:38 -06:00 committed by GitHub
commit c0d5efc340
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -15,7 +15,7 @@ USE_MULTIPROCESSING = True
NUM_PROCESSES = None
def deplete(func, chain, x, rates, dt, matrix_func=None):
def deplete(func, chain, x, rates, dt, matrix_func=None, **func_args):
"""Deplete materials using given reaction rates for a specified time
Parameters
@ -37,6 +37,8 @@ def deplete(func, chain, x, rates, dt, matrix_func=None):
``fission_yields = {parent: {product: yield_frac}}``
Expected to return the depletion matrix required by
``func``
func_args : dict
Remaining keyword arguments passed to matrix_func when used
Returns
-------
@ -57,7 +59,8 @@ def deplete(func, chain, x, rates, dt, matrix_func=None):
if matrix_func is None:
matrices = map(chain.form_matrix, rates, fission_yields)
else:
matrices = map(matrix_func, repeat(chain), rates, fission_yields)
matrices = map(matrix_func, repeat(chain), rates, fission_yields,
**func_args)
inputs = zip(matrices, x, repeat(dt))