Product documentation — installation, licensing, and integration guides.
SolvFilter
Overview

SolvFilter

Release: Beta — suitable for trial and evaluation; APIs may change before GA

High-dimensional EKF prediction engine for tracking and fusion

SolvFilter is a drop-in EKF prediction step for defense tracking, radar fusion, GN&C, maritime MDA, orbit estimation, and BMS stacks. At high dimension it runs where UKF is computationally infeasible; at dim < 50 the fast-path bypass matches scipy speed.

Replace the integrator inside your predict loop with SolvFilter's adaptive dispatch: SolvSRK engine for high-dim problems, fast-path scipy bypass for small/non-stiff systems. Joseph-form covariance updates with NEES/NIS diagnostics included.

What it does

Tracking and fusion stacks run a predict → update loop. The predict step propagates your state estimate forward in time; the update step fuses a new measurement. SolvFilter is that engine: extended Kalman predict/update with Joseph-form covariance (numerically stable) and NEES/NIS diagnostics so you can see when the filter is lying to you.

At low dimension it matches scipy speed via a fast path. At high dimension (70–140 states) it uses SolvSRK for mean propagation where vanilla EKF integrators struggle — the regime where UKF becomes computationally impossible.

When to use it

Radar track fusion, GN&C, maritime AIS fusion, orbit PV stacks — anywhere you have an EKF predict loop and dimension or stiffness is hurting you.

See Examples for runnable code.

Who it is for

  • Radar track fusion (MTTA, ABMS/JADC2) with state dimension exceeding ~50
  • GN&C formation control and maritime AIS fusion
  • Multi-object orbit PV stacks and offline BMS estimation

What ships

  • C library (libsolvfilter) — dependency-free C11
  • Python wheel (solvfilter)
  • Composable with SolvSRK for high-dim mean propagation

Related products

Underlying integrator: SolvSRK.