Matrix Classification

The section describes a set of functions for analyzing the structural properties of matrices. These methods allow us to determine whether a matrix is symmetric, Hermitian, diagonal, triangular, trapezoidal, Hessenberg, bidiagonal, or scalar. Such a classification simplifies the selection of efficient algorithms for linear algebra and optimization of computations.

Function

Action

MatrixInfo

The method analyzes the matrix contents, determines its structural type (symmetric, Hermitian, triangular, banded, and so on), and fills the MqlMatrixInfo structure

IsSymmetric

Check if a square matrix is symmetric

IsHermitian

Check if a square complex matrix is Hermitian

IsUpperTriangular

Check if a square matrix is upper triangular

IsLowerTriangular

Check if a square matrix is lower triangular

IsUpperTrapezoidal

Check if a rectangular (not square) m-by-n matrix is upper trapezoidal

IsLowerTrapezoidal

Check if a rectangular (not square) m-by-n matrix is lower trapezoidal

IsUpperHessenberg

Check if a square matrix is upper Hessenberg matrix

IsLowerHessenberg

Check if a square matrix is lower Hessenberg matrix

IsTridiagonal

Check if a square matrix is tridiagonal

IsUpperBidiagonal

Check if a square matrix is upper bidiagonal

IsLowerBidiagonal

Check if a square matrix is lower bidiagonal

IsDiagonal

Check if a square matrix is diagonal

IsScalar

Check if a square matrix is scalar matrix