[petsc-users] Solving Ill Conditioned Problems

Nachiket Gokhale gokhalen at gmail.com
Thu Oct 18 13:07:21 CDT 2012


Hi,

I am solving a Piezoelectric problem using Petsc. The structure is

[ K_uu        K_uv ]
[K_uv ^T   -K_v,v ]

More details about the formulation:  http://tinyurl.com/9hlbp4u

K_uu  has elements O(1E9)  because the stiffnesses are in GPa,
K_uv   has elements O(1) because piezoelectric coefficients are of that order
K_v,v  has  elements O(1E-9) because the dielectric constants are of
that order.

I am using Petsc, with pc_type LU and MUMPS for the factorization,
-ksp_type gmres. I am not sure if my solution is converging. A typical
solve seems to be doing this:

28 KSP preconditioned resid norm 5.642364260456e-06 true resid norm
1.228976487745e-03 ||r(i)||/||b|| 3.317409023627e-14
 29 KSP preconditioned resid norm 5.540718271043e-06 true resid norm
1.228453548651e-03 ||r(i)||/||b|| 3.315997440178e-14
 30 KSP preconditioned resid norm 1.973052106578e-03 true resid norm
1.220399172500e-03 ||r(i)||/||b|| 3.294256047735e-14
 31 KSP preconditioned resid norm 1.155762663956e-17 true resid norm
2.447631111938e-04 ||r(i)||/||b|| 6.606955965570e-15

Is there a right way to solve this set of equations? Is PCFieldSplit
the recommended way?

Thanks,

-Nachiket


More information about the petsc-users mailing list