# NormalMatrixQ

gives True if m is an explicitly normal matrix, and False otherwise.

# Details and Options • A matrix m is normal if m.ConjugateTranspose[m]ConjugateTranspose[m].m.
• NormalMatrixQ works for symbolic as well as numerical matrices.
• The following options can be given:
•  SameTest Automatic function to test equality of expressions Tolerance Automatic tolerance for approximate numbers
• For exact and symbolic matrices, the option SameTest->f indicates that two entries aij and bij are taken to be equal if f[aij,bij] gives True where a=m.m and b=m.m.
• For approximate matrices, the option Tolerance->t can be used to indicate that the norm γ=m.m-m.m satisfying γt γ is taken to be zero where γ is the infinity norm of the matrix m.

# Examples

open allclose all

## Basic Examples(1)

Test if a matrix is normal:

## Scope(5)

A real matrix:

A complex matrix:

A sparse matrix:

An approximate MachinePrecision matrix:

An approximate arbitrary-precision matrix:

A matrix with exact numeric entries:

A matrix with symbolic entries:

## Options(2)

### SameTest(1)

This matrix is normal for a positive real , but NormalMatrixQ gives False:

Use the option SameTest to get the correct answer:

### Tolerance(1)

Generate a normal complex-valued matrix with some random perturbation of order :

m.m-m.m is not exactly zero outside the main diagonal:

Adjust the option Tolerance for accepting a matrix as normal:

Tolerance is applied to the following value:

## Applications(2)

Generate a normal matrix by using the fact that any normal matrix can be represented in the form with unitary and diagonal:

In general, the matrix is not Hermitian, antihermitian, or unitary:

SchurDecomposition for normal matrices is always equivalent to Eigensystem:

The triangular matrix t is effectively diagonal, although it may contain roundoff errors:

The off-diagonal elements of t are roundoff errors:

The eigenvalues on the diagonal of t are not sorted:

## Properties & Relations(9)

is effectively equivalent to m.mm.m:

Any symmetric matrix is normal:

Any Hermitian matrix is normal:

Any antisymmetric matrix is normal:

Any antihermitian matrix is normal:

For any normal matrix, where are eigenvalues of :

Absolute values of eigenvalues of a normal matrix are equal to singular values of the matrix:

A normal matrix has a full set of eigenvectors:

The eigenvectors are often complex valued for real-valued matrices:

The eigenvectors v are orthogonal/unitary and therefore linearly independent:

A normal matrix is always diagonalizable as tested with DiagonalizableMatrixQ: