Hi all, I have seen the comments on eigenvalues in the CG solver class and the step-36 tutorial which solves an eigenvalue problem, so I know that deal.II has capabilities to solve eigenvalue problems. I am wondering whether it would be straight forward to solve a problem of this type:
>From a combination of a finite element model and the ODE boundary conditions applied we obtain a system x'(t) = Ax(t) + Bu(t). The eigenvalues of A are useful for determining stability of the overall system. However, A is not symmetrical (because of the boundary terms) and its sparsity pattern is not typical for FEM since it is a combination of the boundary conditions (represented by state-space models) and the inverse of a FEM matrix. It would be nice to be able to avoid explicitly forming A, and perhaps a trick similar to the SchurComplement in step-22 could be used to create a vmult method that does not require A. Then CG could be used to extract coefficients that can then be used to estimate the eigenvalues (which also requires finding eigenvalues of another matrix, but presumably a smaller matrix and tri-diagonal so less computationally intensive). However the matrix is not symmetrical so this idea fails. Step-36 uses wrappers to SLEPc (PETSc underlying) and if A can be formed as a sparse matrix (with a suitable sparsity pattern), then it appears that the approach taken there would work. It appears that SLEPc can handle non-symmetric matrices. Lapack also can find eigenvalues of real nonsymmetric matrices and presumably also requires the matrix up front since it first converts it to an upper Hessenberg form. I see that LAPACKFullMatrix already provides two methods to compute eigenvalues, I presume that one of these could be used or at least looked at for the implementation of a suitable method. Am I correct in thinking that the idea of avoiding assembling A is a non-starter, but that either SLEPc or LAPACK are viable options for finding the eigenvalues of A in deal.II? Thanks for you help, Michael _______________________________________________ dealii mailing list http://poisson.dealii.org/mailman/listinfo/dealii
