tolerance for diagonal entries + Slepc

Hong Zhang hzhang at mcs.anl.gov
Mon Aug 3 11:28:38 CDT 2009


Umut,

The data file Mshell.mm has incorrect nnz = 14865.
'wc -l Mshell.mm' displays

17571 Mshell.mm
i.e., nnz = 17571 - 2 ( num of lines - 2 header lines)

I add
if (i == nnz-1) printf("i %d, row %d, col %d\n",i,row,col);
in line 58 of ex72.c, and get

./ex72 -fin Mshell.mm -fout mat.out
%% Matrix Market Real Matrix
m = 1848, n = 1848, nnz = 14865
i 14864, row 1553, col 1487
Reading matrix completes.

As you see, you only read matrix upto row 1553, missing
many entries.

I notice that the matrix does not have any entry
in row 1846:
1845 1839 0.0006074348926
1845 1845 0.00242973957
1847 925 -1.207013266e-06
1847 1027 -4.828053065e-06

This is a singular matrix.
Petsc solver will complain about it.

Hong
On Mon, 3 Aug 2009, Umut Tabak wrote:

> Hong Zhang wrote:
>> 
>> May I have this matrix to test ex72.c?
>> Hong
> Thanks, in the attach you find the matrix...
>


More information about the petsc-users mailing list