matrix_props.is_anti_hermitian

Checks if the matrix is an anti-Hermitian matrix.

Functions

is_anti_hermitian(mat[, rtol, atol])

Check if matrix is anti-Hermitian (a.k.a. skew-Hermitian) [1].

Module Contents

matrix_props.is_anti_hermitian.is_anti_hermitian(mat, rtol=1e-05, atol=1e-08)

Check if matrix is anti-Hermitian (a.k.a. skew-Hermitian) [1].

An anti-Hermitian matrix is a complex square matrix that is equal to the negative of its own conjugate transpose.

Examples

Consider the following matrix:

\[\begin{split}A = \begin{pmatrix} 2j & -1 + 2j & 4j \\ 1 + 2j & 3j & -1 \\ 4j & 1 & 1j \end{pmatrix}\end{split}\]

our function indicates that this is indeed an anti-Hermitian matrix as it holds that

\[A = -A^*.\]
>>> from toqito.matrix_props import is_anti_hermitian
>>> import numpy as np
>>> mat = np.array([[2j, -1 + 2j, 4j], [1 + 2j, 3j, -1], [4j, 1, 1j]])
>>> is_anti_hermitian(mat)
True

Alternatively, the following example matrix \(B\) defined as

\[\begin{split}B = \begin{pmatrix} 1 & 2 & 3 \\ 4 & 5 & 6 \\ 7 & 8 & 9 \end{pmatrix}\end{split}\]

is not anti-Hermitian.

>>> from toqito.matrix_props import is_anti_hermitian
>>> import numpy as np
>>> mat = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
>>> is_anti_hermitian(mat)
False

References

[1] (1,2)

Wikipedia. Skew-hermitian matrix. URL: https://en.wikipedia.org/wiki/Skew-Hermitian_matrix.

Parameters:
  • mat (numpy.ndarray) – Matrix to check.

  • rtol (float) – The relative tolerance parameter (default 1e-05).

  • atol (float) – The absolute tolerance parameter (default 1e-08).

Returns:

Return True if matrix is anti-Hermitian, and False otherwise.

Return type:

bool