Skip to main content

fpm_rs/reconstruction/
mod.rs

1//! Reconstruction inputs, execution state, schedules, checkpoints, and results.
2//!
3//! Pair a compiled model and measurements in
4//! [`crate::reconstruction::ReconstructionProblem`], then run an
5//! [`crate::algorithms::ReconstructionAlgorithm`] directly or configure
6//! [`crate::reconstruction::Runner`] with [`crate::reconstruction::RunOptions`],
7//! callbacks, and a [`crate::reconstruction::FrameSchedule`]. The owned
8//! [`crate::reconstruction::ReconstructionResult`] contains the reconstructed field and
9//! trace.
10
11mod batch;
12mod checkpoint;
13mod options;
14mod problem;
15mod result;
16mod runner;
17mod schedule;
18mod state;
19mod trace;
20
21#[cfg(feature = "parquet")]
22pub use crate::tabular::parquet::{
23    BUNDLE_FORMAT_VERSION, BundleArrays, BundleArtifact, BundleExportOptions, BundlePreviews,
24    BundleTables, BundleVerificationResult, ResultBundle, read_bundle,
25};
26pub use batch::Batch;
27pub use checkpoint::{CHECKPOINT_FORMAT_VERSION, ReconstructionCheckpoint};
28pub use options::RunOptions;
29pub use problem::ReconstructionProblem;
30pub use result::{ReconstructionResult, RuntimeInfo};
31pub(crate) use result::{save_grayscale, save_signed_grayscale, state_object};
32pub use runner::Runner;
33pub use schedule::FrameSchedule;
34pub use state::{
35    AdaptiveAlternatingProjectionAuxiliaryState, AdmmAuxiliaryState, AlgorithmAuxiliaryState,
36    MpieAuxiliaryState, ReconstructionState,
37};
38pub use trace::{AlgorithmMetricRecord, IterationRecord, ReconstructionTrace};