spparms

Purpose

Set parameters for sparse matrix ordering algorithms and direct linear equation solvers.

Synopsis

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

Description

Most users of the sparse matrix facilities in MATLAB need not use this function. It is intended for users wanting to see and possibly modify the detailed behavior of the minimum degree ordering algorithms and the built-in direct sparse linear equations solvers.

spparms('key',value) sets one or more of the tunable parameters used in the sparse linear equation operators, \ and /, and the minimum degree orderings, colmmd and symmmd.

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 alloca    
                      tion.                                                  
                      2 also produces very detailed information about the    
                      minimum degree 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 super      
                      nodes 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 orderings with \ and         
                      /.                                                     
'aug_rel',            Residual scaling parameter for augmented equations     
'aug_abs'             is                                                     
                      aug_rel*max(max(abs(A))) + aug_abs                     
                      For example, aug_rel = 0, aug_abs = 1 puts an un       
                      scaled identity matrix in the (1,1) block of the aug   
                      mented matrix.                                         
---------------------------------------------------------------------------
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 with the default and tight values 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)      'aug_rel'        0.001                                 
values(10)     'aug_abs'        0.0                                   
-------------------------------------------------------------------

See Also

\, colmmd, spaugment, symmmd

References

[1] John R. Gilbert, Cleve Moler and Robert Schreiber, "Sparse Matrices in MATLAB: Design and Implementation," SIAM Journal on Matrix Analysis and Applications 13, pp. 333-356, 1992.

(c) Copyright 1994 by The MathWorks, Inc.