Source code for toqito.matrix_props.is_square
"""Checks if the matrix is a square matrix."""
import numpy as np
[docs]
def is_square(mat: np.ndarray) -> bool:
r"""Determine if a matrix is square [@WikiSqMat].
A matrix is square if the dimensions of the rows and columns are equivalent.
Examples:
Consider the following matrix
\[
A = \begin{pmatrix}
1 & 2 & 3 \\
4 & 5 & 6 \\
7 & 8 & 9
\end{pmatrix}
\]
our function indicates that this is indeed a square matrix.
```python exec="1" source="above"
import numpy as np
from toqito.matrix_props import is_square
A = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(is_square(A))
```
Alternatively, the following example matrix \(B\) defined as
\[
B = \begin{pmatrix}
1 & 2 & 3 \\
4 & 5 & 6
\end{pmatrix}
\]
is not square.
```python exec="1" source="above"
import numpy as np
from toqito.matrix_props import is_square
B = np.array([[1, 2, 3], [4, 5, 6]])
print(is_square(B))
```
Raises:
ValueError: If variable is not a matrix.
Args:
mat: The matrix to check.
Returns:
Returns `True` if the matrix is square and `False` otherwise.
"""
if len(mat.shape) != 2:
raise ValueError("The variable is not a matrix.")
return mat.shape[0] == mat.shape[1]