[SciPy-dev] lobpcg: removed symeig dependence

Nils Wagner nwagner@iam.uni-stuttgart...
Wed Apr 9 15:10:04 CDT 2008


On Tue, 08 Apr 2008 17:58:21 +0200
  Robert Cimrman <cimrman3@ntc.zcu.cz> wrote:
> Hi Nils,
> 
> Nils Wagner wrote:
>> Oops, I forgot to ask for the possibbility of handling 
>> Hermitian matrices within lobpcg
>> 
>> http://projects.scipy.org/scipy/scipy/ticket/452
> 
> Can you write a (failing) test case for this? You could 
>also help by 
> detecting the places in lobpcg.py causing it not to 
>work, if you can.
> 
> cheers,
> r.
> _______________________________________________
> Scipy-dev mailing list
> Scipy-dev@scipy.org
> http://projects.scipy.org/mailman/listinfo/scipy-dev

  
Robert,

I have added an example to 
http://scipy.org/scipy/scipy/ticket/452.

However, the test matrix is to large and I can't submit it 
as an attachment. Anyway, you can extract it from
http://www.cs.wm.edu/~andreas/software/primme_v1.1.tar.gz

Pearu, is there a chance to support io.mmread('*.mtx.bz2') 
?
So far you can use io.mmread('*.mtx.gz').


The output is

/usr/bin/python -i test_hermitian.py
[[ 0.00000000+0.j          0.00000000+0.j 
         0.00000000+0.j
    0.00000000+0.j          0.00000000+0.j 
         0.00000000+0.j        ]
  [ 0.00000000+0.j          0.00000000+0.j 
         0.00000000+0.j
    0.00000000+0.j          0.00000000+0.j 
         0.00000000+0.j        ]
  [ 0.00000000+0.j          0.00000000+0.j 
         0.00000000+0.j
    0.00000000+0.j          0.00000000+0.j 
         0.00000000+0.j        ]
  [ 0.00000000+0.j          0.00000000+0.j 
         0.00000000+0.j
    0.00000000+0.j          0.08304560-0.00218969j 
-0.00899514+0.0073746j ]
  [ 0.00000000+0.j          0.00000000+0.j 
         0.00000000+0.j
   -0.08304560+0.00218969j  0.00000000+0.j 
         0.01788708+0.00906446j]
  [ 0.00000000+0.j          0.00000000+0.j 
         0.00000000+0.j
    0.00899514-0.0073746j  -0.01788708-0.00906446j 
 0.00000000+0.j        ]]
Traceback (most recent call last):
   File "test_hermitian.py", line 17, in ?
     (eval, blockVectorV, eval_history, resnorm_history) = 
lobpcg(blockVectorX, A, retLambdaHistory=True, 
retResidualNormsHistory=True)
   File 
"/usr/lib/python2.4/site-packages/scipy/sparse/linalg/eigen/lobpcg/lobpcg.py", 
line 424, in lobpcg
     assert nm.allclose( gramA.T, gramA )
AssertionError

Cheers,
            Nils


More information about the Scipy-dev mailing list