Computes the Affine-Invariant Riemannian Metric (AIRM) distance between two
symmetric positive-definite (SPD) matrices S1 and S2.
The distance is defined as: `||logm(S1^(-1/2)
where `||.||_F` is the Frobenius norm.
Usage
airm_distance(S1, S2, regularize_epsilon = 1e-06)
Arguments
- S1
A numeric, symmetric positive-definite matrix.
- S2
A numeric, symmetric positive-definite matrix.
- regularize_epsilon
Epsilon for regularization. Default 1e-6.
Value
The AIRM distance (a non-negative scalar).
Examples
S1 <- matrix(c(2.3, -0.3, -0.3, 3.6), 2, 2)
S2 <- matrix(c(3.7, 1.9, 1.9, 2.8), 2, 2)
# dist_airm <- airm_distance(S1, S2)
# print(dist_airm)
# dist_logeuclidean <- riemannian_distance_spd(S1, S2)
# print(dist_logeuclidean) # Note: AIRM and LogEuclidean are different metrics.