On Wed, 6 Apr 2011 22:24:50 +0800 (CST), "Gong Ding" <gdiso at ustc.edu> wrote: > Hi, > Can some one gives me advise on how to solve the ill conditioned problem > efficiently with iterative method (since the problem size is big). > > I calculated the smallest eigen values as well as the largest eigen values. > There exist one extremely small eigen value, which made the system ill > conditioned. > I guess method such as Tikhonov regularization may work? > Or there are some cheaper method works, if I can endure some inaccuracy in > the solution. > > > Smallest 0 eigen value: -2.112144e-15 with error 9.452618e-14
Your problem has a null space of dimension 1. Determine the eigenvector associated with this eigenvalue. That is the null space, it might just be a constant. Create a MatNullSpace and use KSPSetNullSpace(). (If it is the constant, you can just use -ksp_constant_null_space.) See the section in the users manual on solving singular systems.
