# spparms

Set parameters for sparse matrix routines

## Syntax

```spparms('key',value) spparms values = spparms [keys,values] = spparms spparms(values) value = spparms('key') spparms('default') spparms('tight') ```

## Description

`spparms('key',value)` sets one or more of the tunable parameters used in the sparse routines. In ordinary use, you should never need to deal with this function.

The meanings of the `key` parameters are

 `'spumoni'` Sparse Monitor flag: `0` Produces no diagnostic output, the default `1` Produces information about choice of algorithm based on matrix structure, and about storage allocation `2` Also produces very detailed information about the sparse matrix algorithms ```'thr_rel', 'thr_abs'``` Minimum degree threshold is ```thr_rel*mindegree + thr_abs```. `'exact_d'` Nonzero to use exact degrees in minimum degree. Zero to use approximate degrees. `'supernd'` If positive, minimum degree amalgamates the supernodes every `supernd` stages. `'rreduce'` If positive, minimum degree does row reduction every `rreduce` stages. `'wh_frac'` Rows with `density > wh_frac` are ignored in `colmmd`. `'autommd'` Nonzero to use minimum degree (MMD) orderings with QR-based \ and `/`. `'autoamd'` Nonzero to use `colamd` ordering with the LU-based \ and /, and to use `amd` with Cholesky-based \ and /. `'piv_tol'` Pivot tolerance used by the LU-based \ and /. `'bandden'` Band density used by \ and / for banded matrices. Band density is defined as (# nonzeros in the band)/(# nonzeros in a full band). If `bandden = 1.0`, never use band solver. If `bandden = 0.0`, always use band solver. Default is `0.5`. `'umfpack'` Nonzero to use UMFPACK instead of the v4 LU-based solver in `\` and `/`. `'sym_tol'` Symmetric pivot tolerance. See `lu` for more information about the role of the symmetric pivot tolerance.

`spparms`, by itself, prints a description of the current settings.

`values = spparms` returns a vector whose components give the current settings.

`[keys,values] = spparms` returns that vector, and also returns a character matrix whose rows are the keywords for the parameters.

`spparms(values)`, with no output argument, sets all the parameters to the values specified by the argument vector.

`value = spparms('key')` returns the current setting of one parameter.

`spparms('default')` sets all the parameters to their default settings.

`spparms('tight')` sets the minimum degree ordering parameters to their tight settings, which can lead to orderings with less fill-in, but which make the ordering functions themselves use more execution time.

The key parameters for `default` and `tight` settings are

Keyword

Default

Tight

`values(1)``'spumoni' `

`0.0`

`values(2)``'thr_rel' `

`1.1`

`1.0`

`values(3)``'thr_abs' `

`1.0`

`0.0`

`values(4)``'exact_d' `

`0.0`

`1.0`

`values(5)``'supernd' `

`3.0`

`1.0`

`values(6) ``'rreduce' `

`3.0`

`1.0`

`values(7) ``'wh_frac' `

`0.5`

`0.5`

`values(8) ``'autommd' `

`1.0`

`values(9)``'autoamd'`

`1.0`

`values(10)``'piv_tol'`

`0.1`

`values(11)``'bandden'`

`0.5`

`values(12)``'umfpack'`

`1.0`

`values(13)``'sym_tol'`

`0.001`

## Version History

Introduced before R2006a