Documentation

This is machine translation

Translated by Microsoft
Mouse over text to see original. Click the button below to return to the English verison of the page.

issymmetric

Determine if matrix is symmetric or skew-symmetric

Syntax

Description

example

tf = issymmetric(A) returns logical 1 (true) if square matrix A is symmetric; otherwise, it returns logical 0 (false).

example

tf = issymmetric(A,skewOption) specifies the type of the test. Specify skewOption as 'skew' to determine if A is skew-symmetric.

Examples

collapse all

Test if Hermitian Matrix Is Symmetric

Create a 3-by-3 matrix.

A = [1 0 1i; 0 1 0;-1i 0 1]
A =

   1.0000 + 0.0000i   0.0000 + 0.0000i   0.0000 + 1.0000i
   0.0000 + 0.0000i   1.0000 + 0.0000i   0.0000 + 0.0000i
   0.0000 - 1.0000i   0.0000 + 0.0000i   1.0000 + 0.0000i

The matrix is Hermitian and has a real-valued diagonal.

Test whether the matrix is symmetric.

tf = issymmetric(A)
tf =

     0

The result is logical 0 (false) because A is not symmetric. In this case, A is equal to its complex conjugate transpose, A', but not its nonconjugate transpose, A.'.

Change the element in A(3,1) to be 1i.

A(3,1) = 1i;

Determine whether the modified matrix is symmetric.

tf = issymmetric(A)
tf =

     1

The matrix, A, is now symmetric because it is equal to its nonconjugate transpose, A.'.

Test if Matrix Is Skew-Symmetric

Create a 4-by-4 matrix.

A = [0 1 -2 5; -1 0 3 -4; 2 -3 0 6; -5 4 -6 0]
A =

     0     1    -2     5
    -1     0     3    -4
     2    -3     0     6
    -5     4    -6     0

The matrix is real and has a diagonal of zeros.

Specify skewOption as 'skew' to determine whether the matrix is skew-symmetric.

tf = issymmetric(A,'skew')
tf =

     1

The matrix, A, is skew-symmetric since it is equal to the negation of its nonconjugate transpose, -A.'.

Input Arguments

collapse all

A — Input matrixnumeric matrix

Input matrix, specified as a numeric matrix. If A is not square, then issymmetric returns logical 0 (false).

Data Types: single | double
Complex Number Support: Yes

skewOption — Test type'nonskew' (default) | 'skew'

Test type, specified as 'nonskew' (default) or 'skew'. Specify 'skew' to test whether A is skew-symmetric. Specifying issymmetric(A,'nonskew') is equivalent to issymmetric(A).

Data Types: char

More About

collapse all

Symmetric Matrix

  • A square matrix, A, is symmetric if it is equal to its nonconjugate transpose, A = A.'.

    In terms of the matrix elements, this means that

    ai,j=aj,i.

  • Since real matrices are unaffected by complex conjugation, a real matrix that is symmetric is also Hermitian. For example, the matrix

    A=[100210101]

    is both symmetric and Hermitian.

Skew-Symmetric Matrix

  • A square matrix, A, is skew-symmetric if it is equal to the negation of its nonconjugate transpose, A = -A.'.

    In terms of the matrix elements, this means that

    ai,j=aj,i.

  • Since real matrices are unaffected by complex conjugation, a real matrix that is skew-symmetric is also skew-Hermitian. For example, the matrix

    A=[0110]

    is both skew-symmetric and skew-Hermitian.

Introduced in R2014a

Was this topic helpful?