Help With Matrix Statistics

The following is an explanation of the items presented as Matrix Statistics on individual matrix home pages.

Size

This gives the number of rows (M) and columns (N) in the matrix, expressed as N x M. The number of entries in the matrix files is also given The number of entries is equal to the number of nonzeros except when zeros are explicity represented in the matrix files. Such structural zeros are counted as entries, but not as nonzeros (see Nonzeros).

Type

This gives the field from which its elements are drawn, and its symmetry properties.

Nonzeros

This provides the number of nonzero elements on the diagonal, below the diagonal and above the diagonal, as well as their total, n(A). Note that the value of n(A) is the number of nonzero elements in the full matrix, and is independent of storage mode. Also provided is the number of nonzeros in the matrix minus its own transpose, n(A-AT). This number, provides a measure of symmetry: a symmetric matrix will have n(A-AT)=0, while a matrix with no symmetric elements will have n(A-AT)=n(A). Note: In the notation on this page, A' denotes the transpose of A, while A* denotes the conjugate transpose of A.

Column Statistics

This provides the average and standard deviation of the number of nonzeros per column, without regard to storage format. Also provided is the index and number of nonzeros in the longest and shortest columns, i.e. the columns with the largest and smallest number of nonzeros.

Row Statistics

This provides the average and standard deviation of the number of nonzeros per row, without regard to storage format. Also provided is the index and number of nonzeros in the longest and shortest rows, i.e., the rows with the largest and smallest number of nonzeros.

Bandwidths

This provides the lower and upper bandwidths, as well as the average and standard deviation of the distance of nonzero matrix elements from the main diagonal. The lower bandwidth, l, of a matrix A is the largest | i-j | such that i<j and Aij is nonzero. The upper bandwidth, u, of a matrix A is the largest | i-j | such that i>j and Aij is nonzero.

The number of diagonal bands required to represent the lower triangle of A in band storage mode is l, while the number of diagonal bands required to represent the upper triangle in band storage mode is u. Thus, the amount of storage necessary to represent an n x n nonsymmetric matrix in band storage mode is approximately (l+u+1)n. For a symmetric matrix, i=u and the requirement drops to (l+1)n.

The average and standard deviation of | i-j | for nonzero Aij provides a measure of the clustering of nonzeros about the main diagonal.

Profile Storage

This data presents information related to the use of profile or skyline storage mode. In this mode, all matrix elements from the first nonzero in each row to the last nonzero in the row are explicitly stored. The quantities relevant to this storage mode are based on the rowwise upper and lower bandwidths. We define li to be the lower bandwidth of row i,

li = maxj i-j for nonzero Aij with j<i.
and ui to be the upper bandwidth of row i,
ui = maxj j-i for nonzero Aij with j>i.
The skyline storage requirement for an n x n matrix is sumi [ li + ui ] - n. For symmetric skyline storage only the upper triangle need new stored, which reduces this to sumi [ ui ].

We provide the following additional summary statistics.

• minimum lower bandwidth : mini [ li ]
• minimum upper bandwidth : mini [ ui ]
• maximum lower bandwidth : maxi [ li ]
• maximum upper bandwidth : maxi [ ui ]
• average lower bandwidth : average li
• average upper bandwidth : average ui
• standard deviation of lower bandwidths li
• standard deviation of upper bandwidths ui

Heaviest Diagonals

This section provides an indication of which matrix diagonals contain the most nonzeros. These are the so-call "heaviest" diagonals. We list the 10 heaviest diagonals. The diagonal is indicated by its offset from the main diagonal; thus 0 is the main diagonal, -1 is the first lower diagonal and 2 is the second upper diagonal. For each of these diagonals we list the number of nonzeros, and the accumulated percent of matrix nonzeros found on this diagonal and all heavier ones. The number of nonvoid diagonals is also given. (A nonvoid diagonal is a diagonal with at least one nonzero entried.)

Conditioning

In this section we provide numerical indicators relating to the values of matrix elements rather than nonzero structure. In particular, we give

• Frobenius norm : ||A||F = Sqrt ( sumij | Aij |2 )
• 2-norm : ||A||2 = sup [ ||Ax||2 ] over all vectors ||x||2=1
• condition number : ||A-1|| ||A||
• diagonal dominance : 2|Aii| > sumj |Aij|.
In the Matrix Market we provide estimates of the 2-norm and the condition number. These are provided by the Matlab functions normest and condest. Note that condest computes a condition number estimate based on the 1-norm.

The Matrix Market is a service of the Mathematical and Computational Sciences Division / Information Technology Laboratory / National Institute of Standards and Technology

[ Home ] [ Search ] [ Browse ] [ Resources ]