- publishing free software manuals
 GNU Octave Manual Version 3 by John W. Eaton, David Bateman, Søren HaubergPaperback (6"x9"), 568 pagesISBN 095461206XRRP £24.95 (\$39.95)

20.1.6.1 Sparse Functions

Many of the internal functions of Octave, such as `diag`, cannot accept sparse matrices as an input directly. The sparse implementation uses the `dispatch` function to overload these functions with equivalent functions that work with sparse matrices. The sparse matrix version of any function can be also used explicitly calling its function name.

The table below lists all of the sparse functions of Octave. The names of the sparse forms of the functions are typically the same as the general versions with a `sp` prefix. In the table below, and the rest of this chapter the sparse versions of the function names are used.

Generate sparse matrices:
`spalloc`, `spdiags`, `speye`, `sprand`, `sprandn`, `sprandsym`
Sparse matrix conversion:
`full`, `sparse`, `spconvert`
Manipulate sparse matrices
`issparse`, `nnz`, `nonzeros`, `nzmax`, `spfun`, `spones`, `spy`
Graph Theory:
`etree`, `etreeplot`, `gplot`, `treeplot`
Sparse matrix reordering:
`amd`, `ccolamd`, `colamd`, `colperm`, `csymamd`, `dmperm`, `symamd`, `randperm`, `symrcm`
Linear algebra:
`matrix_type`, `normest`, `condest`, `sprank` `spaugment`
Iterative techniques:
`luinc`, `pcg`, `pcr`
Miscellaneous:
`spparms`, `symbfact`, `spstats`

Note that all of the standard Octave math functions that take a single argument, such as `abs`, etc can accept sparse matrices.

 ISBN 095461206X GNU Octave Manual Version 3 See the print edition