Skip to main content

evaluate_jacobian_and_fisher

Function evaluate_jacobian_and_fisher 

Source
pub fn evaluate_jacobian_and_fisher(
    config: &UnifiedFitConfig,
    flux: &[f64],
    background: &[f64],
) -> Result<ModelJacobianResult, PipelineError>
Expand description

Evaluate the exact resolved analytical Jacobian and expected Poisson Fisher at given parameter values, using the same model construction as the production counts-domain fitting pipeline.

This is a research-oriented function: it builds the full model chain (transmission model → optional background wrappers → counts model), evaluates once at the provided parameters, computes the analytical Jacobian, and assembles the expected Fisher information matrix.

No optimisation is performed.

§Arguments

  • config — Unified fit configuration (energies, resonance data, resolution, initial_densities used as evaluation densities, etc.)
  • flux — Open-beam counts Φ(E) (length = n_energy)
  • background — Detector background B(E) (length = n_energy, zeros if none)

Density evaluation values come from config.initial_densities. Temperature evaluation value comes from config.temperature_k. α₁/α₂ evaluation values come from config.counts_background init fields.

§Errors

Returns PipelineError::ShapeMismatch if config.precomputed_cross_sections is set but malformed (empty, wrong row count, wrong row length, or contains a non-finite σ), consistent with fit_spectrum_typed and spatial_map_typed.