Skip to main content

Module poisson

Module poisson 

Source
Expand description

Poisson-likelihood optimizer for low-count neutron data (transmission path).

Minimizes the single-arm Poisson negative log-likelihood

L(θ) = Σᵢ [y_model(θ)ᵢ − y_obs,ᵢ · ln(y_model(θ)ᵢ)]

using a projected damped Gauss-Newton / Fisher optimizer with backtracking line search and finite-difference fallback.

Scope note. In the current pipeline this solver is only reached for the transmission + PoissonKL path (via crate::transmission_model::TransmissionKLBackgroundModel). The counts path uses the joint-Poisson conditional-binomial-deviance solver in crate::joint_poisson (memo 35 §P1/§P2), which replaces the older fixed-flux counts NLL that lived here before the P2.2 / counts-KL collapse. The helpers CountsModel and CountsBackgroundScaleModel exposed from this module are retained for the Fisher-info research helper crate::lm-side evaluate_jacobian_and_fisher and the spatial- regularization prototype scripts (Epic #394); they are not part of the production fit path.

§TRINIDI Reference

  • trinidi/reconstruct.py — Poisson NLL and APGM optimizer

Structs§

CountsBackgroundScaleModel
Fixed-flux counts model with optional α₁ / α₂ nuisance scaling of signal and detector background.
CountsModel
Fixed-flux counts-domain forward model: Y_model = flux × T_model(θ) + background.
PoissonConfig
Configuration for the Poisson optimizer.
PoissonResult
Result of Poisson-likelihood optimization.
TransmissionKLBackgroundModel
KL-compatible background model for transmission data.

Functions§

poisson_fit
Run Poisson-likelihood optimization using a projected KL optimizer.