[petsc-users] slepc eigenvectors

Jose E. Roman jroman at dsic.upv.es
Tue Jan 3 01:59:45 CST 2012


On 03/01/2012, Dharmendar Reddy wrote:

> Hello,
>          I have a query regarding the eigenvectors computed in slepc. I am solving a genralized eigenvalue problem. I have attached the A and B matrices with this email.  If i run slepc solver with default options are arpack, i get one set of vectors (complex) as solution. If i run with eps_type lapack I get real vectors. A is hermitian, and B is positive definite. ( the actual problem is a schrodinger equation for particle in infinite potential well, so the solution will be of the form sin(x)). I check the solution in matlab using eig(A,B) i get real vectors. Looks like there is some unitary transformation involved here, can you tell me what could be going on. 
> 
> i copy a small portion of the eigen vector of the lowest magnitude eigenvlaue (=0.0887)
> ---Method: (slepc and eps_type lapack) or matlab-----
> (-0.101596582735892,0.000000000000000E+000)
>  (-0.200421875537261,0.000000000000000E+000)
>  (-0.293780182034781,0.000000000000000E+000)
>  (-0.379124930994127,0.000000000000000E+000)
>  ...
>  ...
>  ...
>   (-0.293780182033444,0.000000000000000E+000)
>  (-0.200421875536298,0.000000000000000E+000)
>  (-0.101596582735387,0.000000000000000E+000)
> ------------------------------------------------------------------------------
> ---Method: (slepc and eps_type defualt or arpack) ----
> 
> 
>   (5.602609025416389E-002,8.475224384072830E-002)
>  (0.110523934800485,0.167192667375096) (0.162006974547097,0.245072510835553)
>  (0.209070886310831,0.316267414979582) (0.250431889351034,0.378835368586700)
>  (0.284961763219882,0.431069680779720) (0.311718623092706,0.471545535910556)
>  (0.329972611445050,0.499158857936955) (0.339225807211469,0.513156427631836)
>  (0.339225807166595,0.513156427588630) (0.329972611486755,0.499158857980068)
>  (0.311718623054404,0.471545535864886) (0.284961763251251,0.431069680822535)
>  (0.250431889322221,0.378835368543795) (0.209070886332945,0.316267415014661)
>  (0.162006974528570,0.245072510805346) (0.110523934811968,0.167192667394530)
>  (5.602609024797538E-002,8.475224382992022E-002)

I cannot reproduce the problem. I always get the correct eigenvector. Are you doing the computation in real arithmetic? Are you setting the problem type to EPS_GHEP?

Jose





More information about the petsc-users mailing list