[petsc-users] Solving tridiagonal hermitian generalized eigenvalue problem with SLEPC
hong at aspiritech.org
hong at aspiritech.org
Mon Aug 18 09:34:56 CDT 2014
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 <tweyens at fis.uc3m.es> 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
More information about the petsc-users
mailing list