osmose.calibration.uq

Surrogate-based Bayesian UQ for OSMOSE calibration.

Thin subpackage boundary: no eager re-exports and no heavy imports here, so later phases’ optional dependencies (emcee, dynesty, arviz) stay lazy. Import from submodules directly, e.g. from osmose.calibration.uq.emulator import GPEmulator.

Modules

design

Seeded LHS design executed through the Python engine, reduced for the UQ emulator.

emulator

Single-output GP emulator for one OSMOSE output stat.

gate

Probabilistic emulator-calibration gate (Bastos & O'Hagan 2009 style).

keying

Map a calibration target to its distinct UQ emulator output-stat key.

likelihood

Per-target log-likelihoods over the natural-log biomass residual.

output_stats

Reduce one OsmoseResults to a per-species UQ stat dict.

posterior

Compose prior + per-target likelihood into log_posterior(theta).

predictive

Posterior-predictive diagnostic (Goal 2): per-species marginal emulator-predictive ranges from the posterior over theta.

prior

Uniform prior over the FreeParameter sampling-space box.

run

End-to-end surrogate-Bayesian UQ orchestrator.

sampler

Posterior sampling from Phase 2a's log_posterior via nested sampling (dynesty).