BSpar_sym_solve(3) BlockSolve95 BSpar_sym_solve(3)NAMEBSpar_sym_solve - Solve a symmetric positive definite system of equa‐
tions using conjugate gradients preconditioned by one of several pre‐
conditioners. The rhs can be a block of vectors. The user should not
call this function directly, but BSpar_solve().
INPUT PARAMETERS
BS - the number of vectors in the RHS
A - a sparse matrix
fact_A - the incomplete factored version of A, if any
comm_A - the communication structure for A
in_rhs - the contiguous block of vectors forming the rhs
pre_option
- the preconditioner to use
PRE_ICC: incomplete Cholesky factorization
PRE_ILU: incomplete LU factorization
PRE_SSOR: Successive over relaxation
PRE_BJACOBI: Block Jacobi
err_tol
- the tolerance to which to solve the problem stop if the esti‐
mated norm of the residual divided by the norm of the rhs is
less than err_tol
max_iter
- the maximum number of iterations to take
residual
- the final computed residual
guess - if TRUE, then initialize out_x to 0, otherwise the program
assumes that out_x contains an initial guess
procinfo
- the usual processor stuff
OUTPUT PARAMETERS
out_x - the contiguous block of vectors containing the solution
RETURNS
The number of iterations or a negative number indicating the number of
iterations prior to finding that the matrix (or preconditioner) is not
positive definite.
NOTES
The preconditioners must be computed prior to calling BSpar_isolve.
For more information on the preconditioners, see the manual.
SYNOPSIS
int BSpar_sym_solve(int BS, BSpar_mat *A, BSpar_mat *fact_A, BScomm *comm_A,
FLOAT *in_rhs, FLOAT *out_x, int pre_option, FLOAT err_tol, int max_iter,
FLOAT *residual, int guess, BSprocinfo *procinfo)
LOCATION
BlockSolve95/src/BSpar_sym_solve.c
2/12/1996 BSpar_sym_solve(3)