nook.decay¶
Decay datasets: parent, normalisation and feeding records.
Kept out of LevelScheme on purpose – a feeding
intensity belongs to a decay, and the same level carries different feedings
depending on which parent populated it.
Normalization is the part that matters. ENSDF intensities are relative
to whatever the evaluator called 100 within one dataset, and only become
comparable across datasets once scaled by NR * BR or NB * BR.
- class nook.decay.Parent(nuclide=None, energy=<factory>, spin_parity=<factory>, half_life=<factory>, q_value=<factory>, ionisation=None, raw=<factory>)[source]¶
Bases:
objectThe decaying state, from a
Precord.- spin_parity: SpinParity¶
- class nook.decay.Normalization(photon=None, transition=None, branching=None, feeding=None, delayed=None, raw=<factory>)[source]¶
Bases:
objectAn
Nrecord: multipliers onto an absolute per-decay scale.- factor_for(kind='photon')[source]¶
The multiplier taking
kindonto a per-parent-decay scale."photon"givesNR * BR,"feeding"givesNB * BR."delayed"givesNPalone – it is already defined against total parent decays, so applyingBRagain would double-count the branch. That last one is inferred from a single dataset; seedocs/limitations.md.
- class nook.decay.Feeding(kind, level_index=None, energy=<factory>, intensity=<factory>, ec_intensity=None, total_intensity=None, log_ft=None, hindrance_factor=None, forbiddenness=None, particle=None, intermediate_energy=None, width=None, transfer_l=(), questionable=False, properties=<factory>, raw=<factory>)[source]¶
Bases:
objectA
B,E,AorDrecord feeding one daughter level.Which fields carry information depends on
kind:"B"beta-minus:
intensity(IB),log_ft,forbiddenness"E"EC/beta-plus:
intensity(IB, positron branch),ec_intensity(IE),total_intensity,log_ft"A"alpha:
energy,intensity(IA),hindrance_factor"D"delayed particle:
particle,energy,intensity
- class nook.decay.DecayScheme(nuclide, dsid, levels, parents=(), normalization=None, feedings=(), metadata=<factory>)[source]¶
Bases:
objectOne decay dataset: parents, normalisation, feedings and the daughter.
- levels: LevelScheme¶
- normalization: Normalization | None = None¶
- total_feeding(kind=None)[source]¶
Summed feeding per 100 parent decays, correlations handled.
Every feeding shares the same
NB * BR, so quadrature over the scaled values would understate the total. Summing first and scaling once is exact and needs no correlation tracking.
- total_photon_intensity()[source]¶
Summed gamma intensity per 100 parent decays, correlations handled.
Same argument as
total_feeding():NR * BRis common to every gamma in the dataset, so it is applied once to the summed relative intensities rather than to each term.