petsc-3.7.1 2016-05-15
Report Typos and Errors

PCSOR

(S)SOR (successive over relaxation, Gauss-Seidel) preconditioning

Options Database Keys

-pc_sor_symmetric - Activates symmetric version Many br
-pc_sor_backward - Activates backward version Many br
-pc_sor_forward - Activates forward version Many br
-pc_sor_local_forward - Activates local forward version Many br
-pc_sor_local_symmetric - Activates local symmetric version (default version) Many br
-pc_sor_local_backward - Activates local backward version Many br
-pc_sor_omega <omega> - Sets omega Many br
-pc_sor_diagonal_shift <shift> - shift the diagonal entries; useful if the matrix has zeros on the diagonal Many br
-pc_sor_its <its> - Sets number of iterations (default 1) Many br
-pc_sor_lits <lits> - Sets number of local iterations (default 1) Many br

Many br

Notes: Only implemented for the AIJ and SeqBAIJ matrix formats. Many brNot a true parallel SOR, in parallel this implementation corresponds to block Many brJacobi with SOR on each block. Many br

For AIJ matrix if a diagonal entry is zero (and the diagonal shift is zero) then by default the inverse of that Many brzero will be used and hence the KSPSolve() will terminate with KSP_DIVERGED_NANORIF. If the option Many brKSPSetErrorIfNotConverged() or -ksp_error_if_not_converged the code will terminate as soon as it detects the Many brzero pivot. Many br

For SeqBAIJ matrices this implements point-block SOR, but the omega, its, lits options are not supported. Many br

For SeqBAIJ the diagonal blocks are inverted using dense LU with partial pivoting. If a zero pivot is detected Many brthe computation is stopped with an error Many br

See Also

PCCreate(), PCSetType(), PCType (for list of available types), PC,
PCSORSetIterations(), PCSORSetSymmetric(), PCSORSetOmega(), PCEISENSTAT Many br

Level:beginner
Location:
src/ksp/pc/impls/sor/sor.c
Index of all PC routines
Table of Contents for all manual pages
Index of all manual pages

Examples

src/ksp/ksp/examples/tutorials/ex21f.F.html