## How to capture lowest or highest frequencies in modal analys

Open discussion regarding features, bugs, issues, vendors, etc.

### How to capture lowest or highest frequencies in modal analys

DEar All,

I've generalized eigenvalue problem where I've two symmetric matrices A and B, in order to find the lowest or highest frequencies but not all (because its time consuming and unnecessary) which subroutine in Lapack should I use ?

I've used DGGEV subroutine but that outputs all of the eigenvalues which is unnecessary, I'will appreciate your guidance.

Regards,
Eigen_solver

Posts: 17
Joined: Fri Jun 01, 2012 6:08 am

### Re: How to capture lowest or highest frequencies in modal an

1) If one of the matrix is positive definite, you might want to use SSYGST/DSYGST/CHEGST/ZHEGST.

2) If you only want a few of the eigenvalues, then you do not want to use LAPACK. LAPACK uses direct method. So all cost will be O(n^3).
You want to use iterative methods where the cost will be closer from O(n^2) for a few eigenvalues. There are good packages out there.
The standard reference is ARPACK from Lehoucq, Maschhoff, Sorensen and Yang: http://www.caam.rice.edu/software/ARPACK/
It is used by matlab eigs function for example. This starts to be a little outdated and more modern alternatives would be:
PRIMME from Stathopoulos: http://www.cs.wm.edu/~andreas/software/
JDCG and JADAMILU from Notay: http://homepages.ulb.ac.be/~ynotay/
I think all three can solve symmetric generalized eigenvalue problem but one of the matrices need to be positive definite.

Cheers,
Julien.
Julien Langou

Posts: 753
Joined: Thu Dec 09, 2004 12:32 pm
Location: Denver, CO, USA

### Re: How to capture lowest or highest frequencies in modal an

Thanks for the enlightment,

I hardly succeeded to compile and run the Arpack library, can you give me guidance on which subroutine/r or a group of subroutines should I use as a starting point to solve the eigenvalue problem?

Mainly the problem that I'm trying to solve is said to be solved with subspace method in mathematics. I'm not stuck only to the subspace method obligatorily, if there were any more robust and versatile methods I'm free to use them. What can be possibly be the equivalent subroutines or set of subroutines in Arpack ?