Package architecture#

The package separates the physical model, retrieval, and measurement workflow. The GUI calls the workflow layer; scripts and saved sessions can use that layer without opening a window.

Area

Main responsibilities

Reference

Core physics

Grids, transforms, pulse construction, interactions, propagation, focusing, and collection

Core physics API

Retrieval

Solver selection, objectives, optimisation, progress, and result assembly

Retrieval API

Workflow

Loading, preprocessing, post-processing, uncertainty, persistence, and session replay

Workflow API

Plotting

Plot data and visualisation of traces, fields, and diagnostics

Plotting API

JAX calculations

Differentiable forward models, residuals, and pulse parameterisation

JAX API

Keep physical calculations independent of GUI state and file I/O. Prefer the shared workflow operations when adding a command or GUI control so that the same settings retain the same meaning in scripts and saved sessions.

The forward-model chapter explains the physics; retrieval and numerical methods explains the objectives and derivatives.