Adding chain.get_daughter_products#3904
Conversation
paulromano
left a comment
There was a problem hiding this comment.
@shimwell Can you elaborate on what the use case is for this method? My other question is why it excludes stable nuclides but perhaps understanding the use case will explain that too.
|
I would be keen to add clearance ratings for Germany via this PR As part of that PR i could do with getting the list of daughter nuclides as some nuclides in the table have + sign „+“ kennzeichnet Mutternuklide, für die die in Tabelle 2 gelisteten Tochternuklide vollständig durch das Mutternuklid abgedeckt sind; die Expositionen durch diese Tochternuklide sind bei den Freigrenzen, Freigabewerten oder Werten der Oberflächenkontamination bereits berücksichtigt, +” indicates parent nuclides for which the daughter nuclides listed in Table 2 are fully covered by the parent nuclide; exposures from these daughter nuclides are already taken into account in the exemption limits, clearance levels, or surface contamination values. I thought stable nuclides don't have daughter products. happy to do all this strlschv elsewhere but wanted to offer it up as we have the US clearance scheme (fetter) in the source code |
Summary
Add
Chain.get_decay_daughters()method that returns all radioactive nuclides reachable via decay from a given parent nuclide.Details
Unlike
Chain.reduce(), this method follows only decay paths (not reactions like neutron capture) and returns asetof nuclide names rather than a newChain.Stable nuclides are excluded from the result. Cyclic decay chains are handled without infinite loops.
Fixes # (issue)
Checklist
- [ ] I have run clang-format (version 18) on any C++ source files (if applicable)