API Reference#
PyOED consists of several modular subpackages which can be employed with great flexibility. An important aspect of PyOED’s design is that every class is associated with a validated, introspectable configurations dataclass — see Key Concepts for details.
Find What You Need — by Workflow#
Not sure where to start in the API? Use the table below to jump directly to the relevant subpackage for the task you want to perform.
Task |
Primary subpackage |
Supporting subpackage |
|---|---|---|
Define a forward (simulation) model |
||
Define observation noise / prior distribution |
||
Define an observation operator (sensor map) |
||
Solve an inverse problem (3D-Var, Kalman, etc.) |
||
Run sensor-placement OED (A/D-optimal) |
||
Run robust OED (uncertain hyperparameters) |
||
Optimise a design (SciPy, binary, REINFORCE) |
||
Time-dependent inversion (4D-Var, smoothing) |
||
Sample from a distribution / run MCMC |
||
Extend PyOED (add a new model or criterion) |
||
Add a custom error model or prior |
||
Add a custom observation operator |
||
Add a custom sampler or proposal |
PyOED Subpackages & Modules#
Glossary#
A definition of all key terms (OED, A-optimality, EIG, 3D-Var, sensor placement, REINFORCE, …) is available in the Glossary.