[petsc-users] SNES convergence conditons

Dharmendar Reddy dharmareddy84 at gmail.com
Mon Jan 20 12:46:39 CST 2014


Hello,
        I have a doubt regarding error condition for SNES. For F(X) =
0, where X is a vector X = [x1 x2 x3 ....]', my understanding is, for
convergence criteria based on X, SNES checks for

1) norm2(dX)/(rTol*norm2(X) + absTol) < 1 and converged if true.

I have two other options to consider,

2)  1/N * norm1 ( dX/ (rTol*abs(X)+aTol)) < 1 where N is the size of (X)

3)  norm_infinity ( dX/  (rTol*abs(X)+aTol) ) < 1

Which is a better option ? rather how should one decide which one to
use ? I am trying to solve the semiconductor transport equations
(poisson + particle convection). I use a comercial solver called
synopsys TCAD, and it uses option 2 to test the convergence along with
option 1 applied for testing convergence based on Function norm.

I am inclined towards option 3 is more local and a stronger condition than 1.

If i solve a set of couple equation

F1(X1,X2,X3) = 0,
F2(X1,X2,X3) = 0,
F3(X1,X2,X3) = 0

How do i use different absTol for X1, X2, and X3 to test the
convergence criteria.

Thanks
Reddy


More information about the petsc-users mailing list