Toon, 1) install petsc and slepc, run few examples, e.g. slepc/src/eps/examples/tutorials/ex13.c for generalized symmetric eigenproblem. Run it with option '-eps_view' to understand what method is being used. Use option '-help' to see available methods.
2) replace its matrices with yours, experiment default method, then other methods using runtime options provided by slepc. Hong On Mon, Aug 18, 2014 at 5:46 AM, Toon Weyens <[email protected]> wrote: > Dear all, > > I am using PETSC and SLEPC to simulate a problem in MHD, described in > http://scitation.aip.org/content/aip/journal/pop/21/4/10.1063/1.4871859. > > I have a bit of experience with MPI but not too much with PETSC and SLEPC. > So after reading both user manuals and also the relevant chapters of the > PETSC developers manual, I still can't get it to work. > > The problem that I have to solve is a large generalized eigenvalue system > where the matrices are both Hermitian by blocks and tridiagonal, e.g.: > > ( A11 A12 0 0 0 ) ( B11 B12 0 0 > 0 ) > ( A12* A22 A23 0 0 ) ( B12* B22 B23 0 > 0 ) > ( 0 A23* A33 A34 0 ) = lambda ( 0 B23* B33 B34 0 > ) > ( 0 0 A34* A44 A45) ( 0 0 B34* > B44 B45) > ( 0 0 A45* A55 0 ) ( 0 0 B45* > B55 0 ) > > where Aii = Aii*, with * the Hermitian conjugate. I apologize for the ugly > representation. > > The dimensions of both A and B are around 50 to 100 blocks (as there is a > block per discretized point) and the blocks themselves can vary from 1 to > more than 100x100 as well (as they correspond to a spectral decomposition). > > Now, my question is: how to solve this economically? > > What I have been trying to do is to make use of the fact that the matrices > are Hermitian and by using matcreatesbaij and through the recommended > matcreate, matsettype(matsbaij), etc. > > Could someone help me out? All help would be greatly appreciated! > > Thank you in advance, > Toon > UC3M
