cartan

Wishart Process

The Wishart process is the canonical SPD-valued diffusion. It has Itô dynamics

where is a standard matrix Brownian motion and is the shape parameter.

Closed-form mean

Taking expectations of the Itô SDE and using the Itô-isometry vanishing of the martingale increment,

giving a clean integration-test invariant: starting from with shape , the ensemble mean at horizon is .

API

use cartan_stochastic::wishart_step;
use nalgebra::SMatrix;
 
let mut x = SMatrix::<f64, 3, 3>::identity();
for _ in 0..n_steps {
    x = wishart_step(&x, /* shape = */ 3.0, /* dt = */ 0.01, &mut rng);
}

The helper is metric-agnostic: it does not assume which Riemannian structure SPD is equipped with. Under the affine-invariant metric the drift term is the Christoffel correction that makes a Brownian motion on SPD(N) with the Laplace-Beltrami generator; under the Bures-Wasserstein metric the same SDE is a Riemannian BM up to a tangent-space re-parameterisation. Use the combinator alongside stochastic_development when a metric-consistent BM on SPD is required.

Performance

wishart_step
2170 ns
3451 ns
51.06 µs

Cost is dominated by the symmetric-eigendecomposition of used to compute .

Implementation notes

  • The returned matrix is symmetrised at every step ((next + next^T) / 2); the SDE preserves symmetry in principle but accumulated rounding would otherwise drift.
  • The drift keeps in the interior of the cone almost surely on short horizons. For long runs near the boundary, project each step onto SPD via Manifold::project_point on the affine-invariant or Bures-Wasserstein variants of SPD.

References

  • Bru, M.-F. Wishart processes. J. Theor. Probab. 4 (1991).
  • Graczyk, P., Malecki, J. Multidimensional Yamada-Watanabe theorem and its applications to particle systems. J. Math. Phys. 54 (2013).