empyrean.GaussianMixture

class GaussianMixture(threshold=1.0, max_depth=3, components_per_split=3)[source]

Bases: object

Adaptive Gaussian mixture (AGM).

The engine recursively splits the input Gaussian into a mixture of sub-Gaussians wherever the local nonlinearity exceeds threshold, propagates each component through the dynamics, and recombines them at the output. Its distinctive product is the mixture-corrected impact probability at close approaches; away from encounters the output-state covariance is the linear Φ·Σ·Φᵀ mapping. Reference: DeMars-Bishop-Jah (JGCD 2013).

Parameters:
  • threshold (float) – Nonlinearity threshold above which the splitter fires. Default 1.0.

  • max_depth (int) – Maximum recursion depth for nested splitting. Default 3.

  • components_per_split (int) – Number of sub-Gaussians produced per split. The DeMars-Bishop-Jah splitting tables are tabulated only for odd counts (3 or 5). Default 3.

Methods

__init__([threshold, max_depth, ...])

Attributes

components_per_split

max_depth

threshold

threshold: float = 1.0
max_depth: int = 3
components_per_split: int = 3