[Trilinos-Users] [EXTERNAL] Belos PCG with ML preconditioner problem

Raymond Tuminaro rstumin at sandia.gov
Mon Jul 21 12:52:50 MDT 2014


Jozsef,
   Sorry for the delay. I was away on  vacation. The major problem with the matrix is that it is
singular. It has one  eigenvalue that is near zero.  Thus, I believe that Belos sees that the matrix
is not positive definite and the CG solver complains. Basically, when you provide a singular
matrix, the behavior of the code is somewhat unpredictable. Sometimes it might be ok ...
and sometime it might fail. It appears to me that the vector jof all ones is in the null space
of A. That is,

     A v ~ 0 when v = ones(3704,1)/sqrt(3704)

It is a little hard for me to be completely sure as the matrix and rhs are printed out
with limited precision. It does appear that your rhs is consistent with this singularity. That is,

    b^T v ~ 0. This means that the linear system

A u = b

has an infinite number of possible solutions. That is, A (u + alpha v) is also
equal to b, if A u = b. This means that you could alter a single row/column
and still have a solution. Could you try to change your matrix so that it is no longer
singular? For example, just remove the first row and column (as well as the first
entry of b). This gives us   Ahat uhat = bhat. Solve this system and assign
u(2:3704) = uhat with u(1) = 0. This should be a solution to the original system.

-Ray

On 07/15/14 10:53, Bakosi, Jozsef wrote:
> Ray,
>
> Thanks for the input. Indeed, the problem setup for that case resulted in a
> close-to-zero rhs and I should not have tried to solve the system in that case.
> Now I'm checking the L2 norm of the rhs before attempting to pass the system to
> Belos.
>
> However, there seems to be still an issue somewhere I don't understand since the
> new matrix and rhs I attached to this email still gives the same error, even
> though the rhs norm I now get is 2.1993e-01.
>
> Do you have an idea what I'm doing wrong? (I also attach the screen output on
> the settings and error). If I only do a single level with ML, it solves the
> system fine with 1 CPU.  However, even with max levels 1 but on 2 CPUs, I get
> the same error:
>
> pAp(0,0) <= zero.
>
> Thanks,
> Jozsef
>

-- 
Ray Tuminaro                      phone: (925) 294-2564
MS 9159                           fax:   (925) 294-2234
Sandia National Laboratories      email: rstumin at sandia.gov
PO Box 969                        http://www.cs.sandia.gov/~rstumin
Livermore, CA 94551




More information about the Trilinos-Users mailing list