Previous Up Next

14.4.2  Defining sparse matrices

A matrix is sparse if most of its elements are 0. To specify a sparse matrix, it is easier to define the non-zero elements. This can be done with a table (see Section 14.4.1). The matrix command (see Section 14.2.4) or the convert command (see Section 10.1.10) can then turn the table into a matrix.

Example

First, define the non-zero elements.

A:=table((0,0)=1,(1,1)=2,(2,2)=3,(3,3)=4,(4,4)=5)

or:

purge(A); A[0..4,0..4]:=[1,2,3,4,5]
     
KeyValue
⎛
⎝
0,0⎞
⎠
1
⎛
⎝
1,1⎞
⎠
2
⎛
⎝
2,2⎞
⎠
3
⎛
⎝
3,3⎞
⎠
4
⎛
⎝
4,4⎞
⎠
5
          

This table can be converted to a matrix with either the convert command or the matrix command.

a:=convert(A,array)

or:

a:=matrix(A)
     
⎡
⎢
⎢
⎢
⎢
⎢
⎣
10000
02000
00300
00040
00005
⎤
⎥
⎥
⎥
⎥
⎥
⎦
          

Previous Up Next