takagi(N, tol=1e-13, rounding=13)[source]

Autonne-Takagi decomposition of a complex symmetric (not Hermitian!) matrix.

Note that singular values of N are considered equal if they are equal after np.round(values, tol).

See [56] and references therein for a derivation.

  • N (array[complex]) – square, symmetric matrix N

  • rounding (int) – the number of decimal places to use when rounding the singular values of N

  • tol (float) – the tolerance used when checking if the input matrix is symmetric: \(|N-N^T| <\) tol


(rl, U), where rl are the (rounded) singular values,

and U is the Takagi unitary, such that \(N = U \diag(rl) U^T\).

Return type

tuple[array, array]