pyriemann.geometry.geodesic.geodesic_thompson

pyriemann.geometry.geodesic.geodesic_thompson(A, B, alpha=0.5)[source]

Thompson geodesic between SPD/HPD matrices.

The matrix at position \(\alpha\) on a possible Thompson geodesic between two SPD/HPD matrices \(\mathbf{A}\) and \(\mathbf{B}\) is given in [1].

\(\mathbf{C}\) is equal to \(\mathbf{A}\) if \(\alpha\) = 0, and \(\mathbf{B}\) if \(\alpha\) = 1.

Parameters:
Andarray, shape (…, n, n)

First SPD/HPD matrices.

Bndarray, shape (…, n, n)

Second SPD/HPD matrices.

alphafloat | ndarray, shape (…,), default=0.5

Position on the geodesic. If ndarray, one value per matrix pair.

Changed in version 0.12.

Returns:
Cndarray, shape (…, n, n)

SPD/HPD matrices on the Thompson geodesic.

See also

geodesic

Notes

Added in version 0.10.

Changed in version 0.12: Add support for NumPy and PyTorch. Add support for array-valued alpha.

References

[1]

Differential geometry with extreme eigenvalues in the positive semidefinite cone C. Mostajeran, N. Da Costa, G. Van Goffrier and R. Sepulchre. SIAM Journal on Matrix Analysis and Applications, 2024