S = spconvert(D)
load
and save
commands handle sparse matrices, so there is no need for a special sparse load
or save
command. However, conversion between the external form and internal form of a sparse matrix is needed after loading from an ASCII text file.
S = spconvert(D)
converts a matrix D
with rows containing [i,j,s]
or [i,j,r,s]
to the corresponding sparse matrix. D
must have an nnz
or nnz+1
row and three or four columns. Three elements per row generate a real matrix and four elements per row generate a complex matrix. A row of the form [m n 0]
or [m n 0 0]
anywhere in D
can be used to specify size(S)
. If D
is already sparse, no conversion is done, so spconvert
can be used after D
is loaded from either a MAT-file or an ASCII file.
uphill.dat
contains
Then the statements1 1 1.000000000000000
1 2 0.500000000000000
2 2 0.333333333333333
1 3 0.333333333333333
2 3 0.250000000000000
3 3 0.200000000000000
1 4 0.250000000000000
2 4 0.200000000000000
3 4 0.166666666666667
4 4 0.142857142857143
4 4 0.000000000000000
recreateload uphill.dat
H = spconvert(uphill)
sparse(triu(hilb(4)))
, possibly with roundoff errors. In this case, the last line of the input file is not necessary because the earlier lines already specify that the matrix is at least 4-by-4.(c) Copyright 1994 by The MathWorks, Inc.