[petsc-users] algorithm to get pure real eigen valule for general eigenvalue problem(Non-hermitian type)
Jose E. Roman
jroman at dsic.upv.es
Mon Apr 15 10:00:54 CDT 2013
El 15/04/2013, a las 16:50, Zhang Wei escribió:
> Hi
> Since the case is not that big(size of matrix is 9600x9600. ). I have done test in the first way, which gives me a 2.1 Gb ASCII file. The eigen values I get from matlab are :
>> In eigs>processEUPDinfo at 1340
> In eigs at 357
>>> c
>
> c =
>
> 0
> 0
> 0
> 0
> 1.9405 - 0.4733i
> 1.9405 + 0.4733i
>
> And what I got from slepc are :
>
> 0 1.99988
> 1 1.99974
> 2 1.99971
> 3 1.99913+0.0370552j
> 4 1.99913+-0.0370552j
> 5 1.99894+0.0370115j
>
> Non of them is right one. And on the other hand there are lots of small values in the matrix which are almost in order of 1e-7 and even smaller.
> Could it be the reason resulting such problem?
Note that if you are trasferring the matrix via a text file, then the matrix loaded in Matlab will differ slightly form the one being handled by SLEPc, so you can expect differences in eigenvalues. For a more equivalent computation you should transfer the matrix in binary format.
Anyway, my impression is that you have a bug in the code that generates the matrix, so I would suggest checking that. Having small nonzero entries in the matrix should not be a problem for the eigensolver.
Jose
More information about the petsc-users
mailing list