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

# PCApplyRichardson

Applies several steps of Richardson iteration with the particular preconditioner. This routine is usually used by the Krylov solvers and not the application code directly.

### Synopsis

    #include "petscksp.h"
    PetscErrorCode  PCApplyRichardson(PC pc,Vec b,Vec y,Vec w,PetscReal rtol,PetscReal abstol, PetscReal dtol,PetscInt its,PetscBool guesszero,PetscInt *outits,PCRichardsonConvergedReason *reason)

Collective on PC Many br

### Input Parameters

| pc | - the preconditioner context Many br
| b | - the right hand side Many br
| w | - one work vector Many br
| rtol | - relative decrease in residual norm convergence criteria Many br
| abstol | - absolute residual norm convergence criteria Many br
| dtol | - divergence residual norm increase criteria Many br
| its | - the number of iterations to apply. Many br
| guesszero | - if the input x contains nonzero initial guess Many br

### Output Parameter

| outits | - number of iterations actually used (for SOR this always equals its) Many br
| reason | - the reason the apply terminated Many br
| y | - the solution (also contains initial guess if guesszero is PETSC_FALSE Many br

### Notes

Most preconditioners do not support this function. Use the command Many brPCApplyRichardsonExists() to determine if one does. Many br

Except for the multigrid PC this routine ignores the convergence tolerances Many brand always runs for the number of iterations Many br

Many br

### Keywords

PC, apply, Richardson

### See Also

PCApplyRichardsonExists()

Level:developer
Location:src/ksp/pc/interface/precon.c
Index of all PC routines
Table of Contents for all manual pages
Index of all manual pages