Skip to content

Allow passing filters to IFP tallies to compute coupled coefficients #3684

@meltawila

Description

@meltawila

Description

I want to score coupled IFP coefficients for multipoint/coupled kinetics, where:

IFP denominator is:
$D_{ij} = \sum_{n \in (j\to i)} w_n I_n^{(g)}$
IFP time numerator is:
$T_{ij} = \sum_{n \in (j\to i)} w_n \ell_n\ I_n^{(g)}$
IFP beta numerator is:
$B_{ij,d} = \sum_{n \in (j\to i)} w_n \delta_{n,d}\ I_n^{(g)} $

where $I_n^{(g)}$ is the IFP importance after $g$ latent generations, $i$ is the response region index, and $j$ is the source region index

such that the effective generation time is
$\Lambda_{ij} = \frac{T_{ij}}{D_{ij}k_{eff}}$
and the effective delayed neutron fraction is
$\beta_{ij,d} = \frac{B_{ij,d}}{D_{ij}}$

Compatibility

To do this, I need to apply CellFilter and CellBornFilter to IFP tallies.

Currently Model.add_kinetics_parameters_tallies() creates the IFP tallies without a way to attach user-provided filters. This prevents a supported workflow for computing $D_{ij}, T_{ij}, B_{ij,g}$.

I will add an optional filters attribute so that a user can use:
model.add_kinetics_parameters_tallies(num_groups=6, filters=[cell_born_filter, cell_filter])

cc @aprilnovak

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions