Generalized eigenvalue problem

4 visualizzazioni (ultimi 30 giorni)
Sara
Sara il 19 Lug 2011
Hi!
I'm trying to convert a generalized eigenvalue problem into a normal eigenvalue calculation.
I have this code:
[V,D,flag] = eigs(A, T);
Now I convert it into:
A1 = inv(T)*A;
[V1,D1,flag1] = eigs(A1);
Shouldn't I get the same result? From what I understand in the Matlab documentation, the first equation solves:
A*V = B*V*D
and the second one solves:
A*V = V*D
am I missing something?
Thanks!!
  2 Commenti
the cyclist
the cyclist il 19 Lug 2011
Including a small example showing the difference might help.
Sara
Sara il 19 Lug 2011
First, thanks for your help.
This is not the example I have been working with, but it still doesn't give me the same result.
A = [1 2 3; 4 5 6; 7 8 9];
T = [2 0 0; 0 5 0; 0 0 3];
[V,D,flag] = eigs(A, T);
TT = inv(T);
A1 = inv(T)*A;
[V1,D1,flag1] = eigs(A1);
Thanks again!!

Accedi per commentare.

Risposte (1)

Walter Roberson
Walter Roberson il 19 Lug 2011
Is there a particular reason you are using eigs() instead of eig() ? eigs() is intended for large sparse matrices, and by default only returns the first 6 eigenvalues.
  1 Commento
Sara
Sara il 19 Lug 2011
Yes, I'm working with a sparse matrix.

Accedi per commentare.

Categorie

Scopri di più su Creating and Concatenating Matrices in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by