dgssfs
dgssfs - One call interface.
SUBROUTINE DGSSFS ( MTXTYP, PIVOT , NEQNS, COLSTR, ROWIND,
VALUES, NRHS , RHS , LDRHS , ORDMTHD,
OUTUNT, MSGLVL, HANDLE, IER )
CHARACTER*2 MTXTYP
CHARACTER*1 PIVOT
INTEGER NEQNS, COLSTR(*), ROWIND(*), NRHS, LDRHS,
OUTUNT, MSGLVL, IER
CHARACTER*3 ORDMTHD
DOUBLE PRECISION VALUES(*), RHS(*)
DOUBLE PRECISION HANDLE(150)
DGSSFS - Numeric factorization of a sparse matrix.
-
MTXTYP - CHARACTER*2
-
On entry, MTXTYP specifies the coefficient matrix type.
Specifically, the valid options are:
'ss' or 'SS' - symmetric structure, symmetric values
'su' or 'SU' - symmetric structure, unsymmetric values
'uu' or 'UU' - unsymmetric structure, unsymmetric values
Unchanged on exit.
-
PIVOT - CHARACTER*1
-
On entry, pivot specifies whether or not pivoting is used
in the course of the numeric factorization. The valid
options are:
'n' or 'N' - no pivoting is used
(Pivoting is not supported for this release).
Unchanged on exit.
-
NEQNS - INTEGER
-
On entry, NEQNS specifies the number of equations in
coefficient matrix. Unchanged on exit.
-
COLSTR(*) - INTEGER array
-
On entry, COLSTR(*) is an array of size (NEQNS+1),
containing the pointers of the matrix structure.
Unchanged on exit.
-
ROWIND(*) - INTEGER array
-
On entry, ROWIND(*) is an array of size COLSTR(NEQNS+1)-1,
containing the indices of the matrix structure.
Unchanged on exit.
-
VALUES(*) - DOUBLE PRECISION array
-
On entry, VALUES(*) is an array of size COLSTR(NEQNS+1)-1,
containing the non-zero numeric values of the sparse matrix
to be factored.
Unchanged on exit.
-
NRHS - INTEGER
-
On entry, NRHS specifies the number of right hand sides
to solve for. Unchanged on exit.
-
RHS(*) - DOUBLE PRECISION array
-
On entry, RHS(LDRHS,NRHS) contains the NRHS right hand
sides. On exit, it contains the solutions.
-
LDRHS - INTEGER
-
On entry, LDRHS specifies the leading dimension of the
RHS array. Unchanged on exit.
-
ORDMTHD - CHARACTER*3
-
On entry, ORDMTHD specifies the fill-reducing ordering to
be used by the sparse solver.
Specifically, the valid options are:
'nat' or 'NAT' - natural ordering (no ordering)
'mmd' or 'MMD' - multiple minimum degree
'uso' or 'USO' - user specified ordering (see DGSSUO)
Unchanged on exit.
-
OUTUNT - INTEGER
-
Output unit. Unchanged on exit.
-
MSGLVL - INTEGER
-
Message level.
0 - no output from solver.
(No messages supported for this release.)
Unchanged on exit.
-
HANDLE(150) - DOUBLE PRECISION array
-
On entry, HANDLE(*) is an array of containing information
needed by the solver, and must be passed unchanged to each
sparse solver subroutine.
Modified on exit.
-
IER - INTEGER
-
Error number. If no error encountered, unchanged on exit.
If error encountered, it is set to a non-zero integer.
Error numbers set by this subroutine:
-101 : Failure to dynamically allocate memory.
-102 : Invalid matrix type.
-103 : Invalid pivot option.
-104 : Number of nonzeros is less than NEQNS.
-201 : Failure to dynamically allocate memory.
-301 : Failure to dynamically allocate memory.
-401 : Failure to dynamically allocate memory.
-402 : NRHS < 1
-403 : NEQNS > LDRHS
-666 : Internal error.
.