problem with polyeig
10 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Hi everyone, I'm Giacomo Perfetti. I'm a mechatronic engineer and i'm doing my work of thesis at the univerity of Padova. I have a problem using the function Polyeig. Starting from a mechanical system and three matrices (13x13): M for the masses, K for stiffness and C for dumping, i find the eigenstructure(eigenvalues and eigenvectors) of the system by 2 ways: -using the state rappresentation of the problem. im' sure abuout this solution(i have checked the solution with my university professor) -using polyeig, but the eigenvalues and the eigenvectors calculated are different.
This fact doesn't happen when the matrices are simmetric. Contact me and i'll show the code and matrices
I have also found an article "the quadratic eigenvalue problem" of the Society for Industrial and applied Mathematics. The authors are Francoise Tisseur and Karl Meerbergen. In this article (page 269) the authors use the Van Loan's square reduced algorithm against polyeig(you can find this article easily on the web). Someone has implemented this algorithm in matlab?
Thank you Giacomo Perfetti
0 Commenti
Risposte (1)
Pavl M.
il 24 Ott 2024 alle 11:28
I corrected the question post:
Hi everyone, I'm Giacomo Perfetti. I'm a mechatronic engineer and I'm doing my work of thesis at the univerity of Padova. I have a problem using the function Polyeig. Starting from a mechanical system and three matrices (13x13): M for the masses, K for stiffness and C for dumping, I find the eigenstructure (eigenvalues and eigenvectors) of the system by 2 ways: -using the state representation of the problem. I'm sure about this solution (I have checked the solution with my university Professor) -using polyeig, but the eigenvalues and the eigenvectors calculated are different.
This fact doesn't happen when the matrices are simmetric. Contact me and I'll show the code and matrices
I have also found an article "the quadratic eigenvalue problem" of the Society for Industrial and applied Mathematics. The authors are Francoise Tisseur and Karl Meerbergen. In this article (page 269) the authors use the Van Loan's square reduced algorithm against polyeig (you can find this article easily on the web). Someone has implemented this algorithm in matlab?
Thank you Giacomo Perfetti.
Answer:
The key can be in factorization-decomposition using LU or Choleski instead of QZ.
[___] = eig(A,balanceOption), where balanceOption is "nobalance", disables the preliminary balancing step in the algorithm. The default for balanceOption is "balance", which enables balancing. The eig function can return any of the output arguments in previous syntaxes.
[___] = eig(A,B,algorithm), where algorithm is "chol", uses the Cholesky factorization of B to compute the generalized eigenvalues. The default for algorithm depends on the properties of A and B, but is "qz", which uses the QZ algorithm, when A or B are not symmetric.
The polyeig function uses the QZ factorization to find intermediate results in the computation of generalized eigenvalues. polyeig uses the intermediate results to determine if the eigenvalues are well-determined. See the descriptions of eig and qz for more information.
The computed solutions might not exist or be unique, and can also be computationally inaccurate. If both A0 and Ap are singular matrices, then the problem might be ill-posed. If only one of A0 and Ap is singular, then some of the eigenvalues might be 0 or Inf.
Scaling A0,A1,...,Ap to have norm(Ai) roughly equal to 1 might increase the accuracy of polyeig. In general, however, this improved accuracy is not achievable. (See Tisseur [3] for details).
Occam's Razor:
Can we transform the M,C,K matrices to A,B matrices?
What do you get on your system when:
A= M+C;
B = -K;
[a b v] = eig(A,B)
or (if to differentiate the polynom):
A = M;
B = -C/2;
[eiga,eigb] = eig(A,B)
and from what eig eigenvectors and eigenvalues returned to reconstruct the original problem eigenvectors and eigenvalues?
Let's update indeed the important concern:
In mentioned article it is stated:
Figure 5.2 compares the spectrum of the QEP associated with (5.3) when computed by the MATLAB 6 function polyeig and our implementation of Van Loan’s square-reduced algorithm [146]. Not surprisingly, the eigenvalues computed by polyeig (which uses a companion linearization and the QZ algorithm) do not have a Hamiltonian structure, and some of them have positive real part, suggesting incorrectly that the system described by (5.3) is unstable. In contrast, Van Loan’s squarereduced algorithm together with the Hamiltonian/skew-Hamiltonian linearization preserves the Hamiltonian structure, yielding pure imaginary computed eigenvalues that confirm the system’s stability.
What in Matlab 2024?
Does matlab has interface to next:
This is the most close answer to the original question:
In LAPACK [2], the routine xGGEV computes generalized eigenvalues and optionally the left and/or right generalized eigenvectors. LAPACK is freely available at http://www.netlib.org/lapack/
Have you tried iterative procedures?
The question also requires deep time intensive study of the 2 relatively large and math dense manuscripts. I would do it, please understand the specific work at hand takes many time and effort and requires substantial investment.
How much who can invest to doing it and similar IT and Math. architectures for business position?
0 Commenti
Vedere anche
Categorie
Scopri di più su Operating on Diagonal 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!