function spd_inv_sqrt

deeptime.numeric.spd_inv_sqrt(W, epsilon=1e-10, method='QR', return_rank=False)

Computes W1/2W^{-1/2} of symmetric positive-definite matrix WW.

by first reducing W to a low-rank approximation that is truly spd.

Parameters:
  • W (ndarray((m,m), dtype=float)) – Symmetric positive-definite (spd) matrix.

  • epsilon (float, optional, default=1e-10) – Truncation parameter. Eigenvalues with norms smaller than this cutoff will be removed.

  • method (str, optional, default='QR') –

    Method to perform the decomposition of WW before inverting. Options are:

    • ’QR’: QR-based robust eigenvalue decomposition of W

    • ’schur’: Schur decomposition of W

  • return_rank (bool, optional, default=False) – Whether to return the rank of W.

Returns:

LW1/2W^{-1/2} after reduction of W to a low-rank spd matrix

Return type:

ndarray((n, r))