MATLAB: anti-crossing eigenvalues

  • Context: MATLAB 
  • Thread starter Thread starter phy127
  • Start date Start date
  • Tags Tags
    Eigenvalues Matlab
Click For Summary
SUMMARY

The discussion centers on solving an eigenvalue problem related to Hamiltonian mechanics using MATLAB. It highlights that eigenvalues of a Hermitian matrix typically exhibit anti-crossing behavior, but this behavior can be disrupted when zero off-diagonal elements are present, leading to potential eigenvalue crossings. The solution proposed involves employing the Jacobi iterative method to maintain the initial sorting of eigenvalues as variables change, ensuring consistent eigenvalue ordering throughout the process.

PREREQUISITES
  • Understanding of eigenvalue problems in quantum mechanics
  • Familiarity with Hermitian matrices and their properties
  • Knowledge of MATLAB for numerical computations
  • Experience with iterative methods, specifically the Jacobi iterative method
NEXT STEPS
  • Research the implementation of the Jacobi iterative method in MATLAB
  • Explore the properties of Hermitian matrices and their eigenvalues
  • Study the effects of zero off-diagonal elements on eigenvalue behavior
  • Learn about other iterative methods for eigenvalue problems, such as the QR algorithm
USEFUL FOR

Quantum mechanics researchers, MATLAB users, and anyone involved in numerical linear algebra, particularly those addressing eigenvalue problems with specific matrix characteristics.

phy127
Messages
12
Reaction score
0
I am solving an eigenvalue problem -- Hamiltonian problem in Quantum Mechanics. The matrix is 8x8 with off-diagonal terms, but some are zero.

It is well known that the eigenvalues of a Hermitian matrix anti-cross as it nears each other. This is very easy see if the matrix have an independent variable.

However, if the matrix have some zero off-diagonal elements, the anti-crossing is lost and some eigenvalues could cross. Then, the problem arises.

Correct me if I'm wrong. When a matrix is diagonalized, MATLAB sorted the eigenvalues. Now, if there is anti-crossing, I have no problem since the initial sorting of eigenvalues will not change as I vary my variable.

If there are eigenvalues that crosses each other, then at the instant there is crossing, the sorting of eigenvalues will be different. Please have a look at my attached image. Look at the yellow and purple lines, at their crossing, the initial sorting of eigenvalues is broken.

QUESTION:
Is there any way such that the initial sorting of eigenvalues, e.g. when my variable is zero, will not change as I vary my variable?
Back in my mind, it should be possible if during the sorting of eigenvalues, in each step, it will consider the previous eigenvalues. The changes are small anyway. But I don't know exactly how to implement it.

Please help! :)
 

Attachments

  • untitled.jpg
    untitled.jpg
    26.4 KB · Views: 635
Physics news on Phys.org
The answer to your question is yes, it is possible to keep the initial sorting of eigenvalues as you vary your variable. The easiest way to do this is to use an iterative method such as the Jacobi iterative method. This method works by successively finding the eigenvalues and eigenvectors of the matrix. In each iteration, the eigenvalues and eigenvectors are re-computed using the current values of the eigenvalues and eigenvectors. This ensures that the sorting of the eigenvalues remains consistent as the matrix changes.
 

Similar threads

  • · Replies 32 ·
2
Replies
32
Views
4K
  • · Replies 6 ·
Replies
6
Views
3K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 3 ·
Replies
3
Views
4K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 1 ·
Replies
1
Views
1K
  • · Replies 2 ·
Replies
2
Views
3K
  • · Replies 4 ·
Replies
4
Views
4K
Replies
11
Views
6K
  • · Replies 3 ·
Replies
3
Views
3K