98 std::vector<BinnedObservableId>
ids;
130 const std::vector<BinnedObservableId>& ids,
131 double ridge_rel = 1e-8,
132 double ridge_abs = 1e-12
181 : model_(model), sampler_(sampler), cfg_(cfg) {}
209 const std::shared_ptr<IModel>& model_;
Utilities for summarizing observable samples with Gaussian approximations.
Abstract model interface used by the statistical layer.
Interface for nuisance-parameter random samplers.
Helpers for converting between indexed maps and dense containers.
std::vector< BinnedObservableId > covariance_ids_from_first_sample(const ObsSamples &S)
Extracts the observable ordering from the first Monte Carlo sample.
MCObservableCovariance covariance_from_obs_samples(const ObsSamples &S, const std::vector< BinnedObservableId > &ids, double ridge_rel=1e-8, double ridge_abs=1e-12)
Builds a regularized empirical covariance matrix from observable samples.
Statistical helpers for Monte Carlo observable samples.
std::vector< std::map< BinnedObservableId, double > > ObsSamples
std::vector< std::map< ParamId, double > > NuisanceSamples
Abstract source of nuisance-parameter samples.
Samples nuisance parameters and propagates them through a model.
MCRealization sample_predictions(const std::map< ParamId, double > &p) const
Generates accepted model predictions for a fixed fit-parameter point.
MonteCarloEngine(const std::shared_ptr< IModel > &model, const INuisanceSampler &sampler, MCConfig cfg)
Constructs the Monte Carlo engine.
MCResult summarize(const std::map< ParamId, double > &p) const
Runs Monte Carlo propagation and computes summary statistics.
MCRealization sample_predictions_parallel(const std::map< ParamId, double > &p) const
MCRealization sample_predictions_serial(const std::map< ParamId, double > &p) const
Runtime configuration for Monte Carlo nuisance propagation.
bool force_decay_threads_to_one
std::size_t progress_probe_draws
std::size_t max_prediction_failures
double skew_abs_threshold
std::size_t forced_decay_threads
double covariance_ridge_rel
std::size_t progress_update_every
bool retry_failed_predictions
std::string samples_csv_path
std::shared_ptr< StatisticProgressMonitor > progress_monitor
double covariance_ridge_abs
Empirical observable covariance and its inverse.
std::vector< double > mean
std::vector< BinnedObservableId > ids
RealMatrix covariance_inv
Raw Monte Carlo samples accepted by the engine.
NuisanceSamples sampled_params
MCObservableCovariance covariance
std::vector< GaussianSummary > summary