[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

回复: Re: About unpreconditioned residuals in Left Preconditioned GMRES



Thank you, Dave. But there is still a question: how can I get the residual vector in each iteration? It seems difficult to get it without modifying the GMRES codes.

Best regards,
Jiaxun
Dave May <dave.mayhem23@xxxxxxxxx> 写道:
Hi,
    You can use the function
PetscErrorCode PETSCKSP_DLLEXPORT KSPSetConvergenceTest(KSP ksp,PetscErrorCode (*converge)(KSP,PetscInt,PetscReal,KSPConvergedReason*,void*),void *cctx)
to define your own convergence test.

Cheers,
    Dave.





2008/2/2 jiaxun hou <jiaxun_hou@xxxxxxxxxxxx>:
Hi everyone,

I want to use the Left Preconditioned GMRES to solve a linear system, and the stopping criterion  must  be  based on the  actual residuals (b-Ax). But the  GMRES codes of PETSc seems to use the preconditioned residuals (B^-1(b-Ax)) only. In addition,  when I set KSPSetNormType(ksp,KSP_NORM_UNPRECONDITIONED), I receive the error message: "Currently can use GMRES with only preconditioned residual (right preconditioning not coded)". So, is there any way to set stopping criterion based on the actual residuals?

Best regards,
Jiaxun

雅虎邮箱传递新年祝福,个性贺卡送亲朋!



雅虎邮箱传递新年祝福,个性贺卡送亲朋!