Problem in assigning proper eigevalues in a for-loop

조회 수: 5 (최근 30일)
Tsz Tsun
Tsz Tsun 2024년 12월 12일
답변: Christine Tobler 2025년 1월 8일
Dear all, I encounter a problem in assigning and plotting the eigenvalues, the final graphs shown 3 separate cosine bands but the locations get some serious problems, causing many discontinuities. I have no idea how to fix it, but I think the problem goes to the fact that matlab does not know how to allocate the eigenvalues correctly for each k in the loop. Here is my code:
theta1= 0.4;
theta2= 0.2;
theta3= 0.4;
theta4= 0.5;
theta5= 0.4;
theta6= 0.3;
theta7= 0.8;
theta8= 0.5;
GellMann1 = [0 1 0; 1 0 0; 0 0 0];
GellMann2 = [0 -1i 0; 1i 0 0; 0 0 0];
GellMann3 = [1 0 0; 0 -1 0; 0 0 0];
GellMann4 = [0 0 1; 0 0 0; 1 0 0];
GellMann5 = [0 0 -1i; 0 0 0; 1i 0 0];
GellMann6 = [0 0 0; 0 0 1; 0 1 0];
GellMann7 = [0 0 0; 0 0 -1i; 0 1i 0];
GellMann8 = [1/sqrt(3) 0 0; 0 1/sqrt(3) 0; 0 0 -2/sqrt(3) ];
normtheta= sqrt(theta1^2 + theta2^2 + theta3^2 + theta4^2 + theta5^2 + theta6^2 + theta6^2 + theta8^2);
PhaseMatrix = theta1*GellMann1 + theta2*GellMann2 + theta3*GellMann3 + theta4*GellMann4 + theta5*GellMann5 + theta6*GellMann6+ theta7*GellMann7 + theta8*GellMann8 ;
J=0.8;
omega_1 = 0.08;
omega_2 = 0.1;
counter_Eigenvalues1_vector =1;
counter_Eigenvalues2_vector =1;
counter_Eigenvalues3_vector =1;
for k = -2*pi : 4*pi/500 : 2*pi
fprintf('The corresponding k is %d \n', k);
Hamiltonian= J*(expm(1i*(k*eye(3) - PhaseMatrix)) + expm(-1i*(k*eye(3) - PhaseMatrix)));
eig_Correct = eig(Hamiltonian);
e1correct = eig_Correct(1);
e2correct = eig_Correct(2);
e3correct = eig_Correct(3);
%%%Save the three eigenvalues into an array%%%%
Eigenvalues1_vector(1, counter_Eigenvalues1_vector) = (e1correct);
counter_Eigenvalues1_vector = counter_Eigenvalues1_vector +1;
Eigenvalues2_vector(1, counter_Eigenvalues2_vector) = (e2correct);
counter_Eigenvalues2_vector = counter_Eigenvalues2_vector +1;
Eigenvalues3_vector(1, counter_Eigenvalues3_vector) = (e3correct);
counter_Eigenvalues3_vector = counter_Eigenvalues3_vector +1;
end
The corresponding k is -6.283185e+00 The corresponding k is -6.258053e+00 The corresponding k is -6.232920e+00 The corresponding k is -6.207787e+00 The corresponding k is -6.182654e+00 The corresponding k is -6.157522e+00 The corresponding k is -6.132389e+00 The corresponding k is -6.107256e+00 The corresponding k is -6.082123e+00 The corresponding k is -6.056991e+00 The corresponding k is -6.031858e+00 The corresponding k is -6.006725e+00 The corresponding k is -5.981592e+00 The corresponding k is -5.956460e+00 The corresponding k is -5.931327e+00 The corresponding k is -5.906194e+00 The corresponding k is -5.881061e+00 The corresponding k is -5.855929e+00 The corresponding k is -5.830796e+00 The corresponding k is -5.805663e+00 The corresponding k is -5.780530e+00 The corresponding k is -5.755398e+00 The corresponding k is -5.730265e+00 The corresponding k is -5.705132e+00 The corresponding k is -5.680000e+00 The corresponding k is -5.654867e+00 The corresponding k is -5.629734e+00 The corresponding k is -5.604601e+00 The corresponding k is -5.579469e+00 The corresponding k is -5.554336e+00 The corresponding k is -5.529203e+00 The corresponding k is -5.504070e+00 The corresponding k is -5.478938e+00 The corresponding k is -5.453805e+00 The corresponding k is -5.428672e+00 The corresponding k is -5.403539e+00 The corresponding k is -5.378407e+00 The corresponding k is -5.353274e+00 The corresponding k is -5.328141e+00 The corresponding k is -5.303008e+00 The corresponding k is -5.277876e+00 The corresponding k is -5.252743e+00 The corresponding k is -5.227610e+00 The corresponding k is -5.202477e+00 The corresponding k is -5.177345e+00 The corresponding k is -5.152212e+00 The corresponding k is -5.127079e+00 The corresponding k is -5.101946e+00 The corresponding k is -5.076814e+00 The corresponding k is -5.051681e+00 The corresponding k is -5.026548e+00 The corresponding k is -5.001416e+00 The corresponding k is -4.976283e+00 The corresponding k is -4.951150e+00 The corresponding k is -4.926017e+00 The corresponding k is -4.900885e+00 The corresponding k is -4.875752e+00 The corresponding k is -4.850619e+00 The corresponding k is -4.825486e+00 The corresponding k is -4.800354e+00 The corresponding k is -4.775221e+00 The corresponding k is -4.750088e+00 The corresponding k is -4.724955e+00 The corresponding k is -4.699823e+00 The corresponding k is -4.674690e+00 The corresponding k is -4.649557e+00 The corresponding k is -4.624424e+00 The corresponding k is -4.599292e+00 The corresponding k is -4.574159e+00 The corresponding k is -4.549026e+00 The corresponding k is -4.523893e+00 The corresponding k is -4.498761e+00 The corresponding k is -4.473628e+00 The corresponding k is -4.448495e+00 The corresponding k is -4.423362e+00 The corresponding k is -4.398230e+00 The corresponding k is -4.373097e+00 The corresponding k is -4.347964e+00 The corresponding k is -4.322831e+00 The corresponding k is -4.297699e+00 The corresponding k is -4.272566e+00 The corresponding k is -4.247433e+00 The corresponding k is -4.222301e+00 The corresponding k is -4.197168e+00 The corresponding k is -4.172035e+00 The corresponding k is -4.146902e+00 The corresponding k is -4.121770e+00 The corresponding k is -4.096637e+00 The corresponding k is -4.071504e+00 The corresponding k is -4.046371e+00 The corresponding k is -4.021239e+00 The corresponding k is -3.996106e+00 The corresponding k is -3.970973e+00 The corresponding k is -3.945840e+00 The corresponding k is -3.920708e+00 The corresponding k is -3.895575e+00 The corresponding k is -3.870442e+00 The corresponding k is -3.845309e+00 The corresponding k is -3.820177e+00 The corresponding k is -3.795044e+00 The corresponding k is -3.769911e+00 The corresponding k is -3.744778e+00 The corresponding k is -3.719646e+00 The corresponding k is -3.694513e+00 The corresponding k is -3.669380e+00 The corresponding k is -3.644247e+00 The corresponding k is -3.619115e+00 The corresponding k is -3.593982e+00 The corresponding k is -3.568849e+00 The corresponding k is -3.543717e+00 The corresponding k is -3.518584e+00 The corresponding k is -3.493451e+00 The corresponding k is -3.468318e+00 The corresponding k is -3.443186e+00 The corresponding k is -3.418053e+00 The corresponding k is -3.392920e+00 The corresponding k is -3.367787e+00 The corresponding k is -3.342655e+00 The corresponding k is -3.317522e+00 The corresponding k is -3.292389e+00 The corresponding k is -3.267256e+00 The corresponding k is -3.242124e+00 The corresponding k is -3.216991e+00 The corresponding k is -3.191858e+00 The corresponding k is -3.166725e+00 The corresponding k is -3.141593e+00 The corresponding k is -3.116460e+00 The corresponding k is -3.091327e+00 The corresponding k is -3.066194e+00 The corresponding k is -3.041062e+00 The corresponding k is -3.015929e+00 The corresponding k is -2.990796e+00 The corresponding k is -2.965663e+00 The corresponding k is -2.940531e+00 The corresponding k is -2.915398e+00 The corresponding k is -2.890265e+00 The corresponding k is -2.865133e+00 The corresponding k is -2.840000e+00 The corresponding k is -2.814867e+00 The corresponding k is -2.789734e+00 The corresponding k is -2.764602e+00 The corresponding k is -2.739469e+00 The corresponding k is -2.714336e+00 The corresponding k is -2.689203e+00 The corresponding k is -2.664071e+00 The corresponding k is -2.638938e+00 The corresponding k is -2.613805e+00 The corresponding k is -2.588672e+00 The corresponding k is -2.563540e+00 The corresponding k is -2.538407e+00 The corresponding k is -2.513274e+00 The corresponding k is -2.488141e+00 The corresponding k is -2.463009e+00 The corresponding k is -2.437876e+00 The corresponding k is -2.412743e+00 The corresponding k is -2.387610e+00 The corresponding k is -2.362478e+00 The corresponding k is -2.337345e+00 The corresponding k is -2.312212e+00 The corresponding k is -2.287079e+00 The corresponding k is -2.261947e+00 The corresponding k is -2.236814e+00 The corresponding k is -2.211681e+00 The corresponding k is -2.186548e+00 The corresponding k is -2.161416e+00 The corresponding k is -2.136283e+00 The corresponding k is -2.111150e+00 The corresponding k is -2.086018e+00 The corresponding k is -2.060885e+00 The corresponding k is -2.035752e+00 The corresponding k is -2.010619e+00 The corresponding k is -1.985487e+00 The corresponding k is -1.960354e+00 The corresponding k is -1.935221e+00 The corresponding k is -1.910088e+00 The corresponding k is -1.884956e+00 The corresponding k is -1.859823e+00 The corresponding k is -1.834690e+00 The corresponding k is -1.809557e+00 The corresponding k is -1.784425e+00 The corresponding k is -1.759292e+00 The corresponding k is -1.734159e+00 The corresponding k is -1.709026e+00 The corresponding k is -1.683894e+00 The corresponding k is -1.658761e+00 The corresponding k is -1.633628e+00 The corresponding k is -1.608495e+00 The corresponding k is -1.583363e+00 The corresponding k is -1.558230e+00 The corresponding k is -1.533097e+00 The corresponding k is -1.507964e+00 The corresponding k is -1.482832e+00 The corresponding k is -1.457699e+00 The corresponding k is -1.432566e+00 The corresponding k is -1.407434e+00 The corresponding k is -1.382301e+00 The corresponding k is -1.357168e+00 The corresponding k is -1.332035e+00 The corresponding k is -1.306903e+00 The corresponding k is -1.281770e+00 The corresponding k is -1.256637e+00 The corresponding k is -1.231504e+00 The corresponding k is -1.206372e+00 The corresponding k is -1.181239e+00 The corresponding k is -1.156106e+00 The corresponding k is -1.130973e+00 The corresponding k is -1.105841e+00 The corresponding k is -1.080708e+00 The corresponding k is -1.055575e+00 The corresponding k is -1.030442e+00 The corresponding k is -1.005310e+00 The corresponding k is -9.801769e-01 The corresponding k is -9.550442e-01 The corresponding k is -9.299114e-01 The corresponding k is -9.047787e-01 The corresponding k is -8.796459e-01 The corresponding k is -8.545132e-01 The corresponding k is -8.293805e-01 The corresponding k is -8.042477e-01 The corresponding k is -7.791150e-01 The corresponding k is -7.539822e-01 The corresponding k is -7.288495e-01 The corresponding k is -7.037168e-01 The corresponding k is -6.785840e-01 The corresponding k is -6.534513e-01 The corresponding k is -6.283185e-01 The corresponding k is -6.031858e-01 The corresponding k is -5.780530e-01 The corresponding k is -5.529203e-01 The corresponding k is -5.277876e-01 The corresponding k is -5.026548e-01 The corresponding k is -4.775221e-01 The corresponding k is -4.523893e-01 The corresponding k is -4.272566e-01 The corresponding k is -4.021239e-01 The corresponding k is -3.769911e-01 The corresponding k is -3.518584e-01 The corresponding k is -3.267256e-01 The corresponding k is -3.015929e-01 The corresponding k is -2.764602e-01 The corresponding k is -2.513274e-01 The corresponding k is -2.261947e-01 The corresponding k is -2.010619e-01 The corresponding k is -1.759292e-01 The corresponding k is -1.507964e-01 The corresponding k is -1.256637e-01 The corresponding k is -1.005310e-01 The corresponding k is -7.539822e-02 The corresponding k is -5.026548e-02 The corresponding k is -2.513274e-02 The corresponding k is 0 The corresponding k is 2.513274e-02 The corresponding k is 5.026548e-02 The corresponding k is 7.539822e-02 The corresponding k is 1.005310e-01 The corresponding k is 1.256637e-01 The corresponding k is 1.507964e-01 The corresponding k is 1.759292e-01 The corresponding k is 2.010619e-01 The corresponding k is 2.261947e-01 The corresponding k is 2.513274e-01 The corresponding k is 2.764602e-01 The corresponding k is 3.015929e-01 The corresponding k is 3.267256e-01 The corresponding k is 3.518584e-01 The corresponding k is 3.769911e-01 The corresponding k is 4.021239e-01 The corresponding k is 4.272566e-01 The corresponding k is 4.523893e-01 The corresponding k is 4.775221e-01 The corresponding k is 5.026548e-01 The corresponding k is 5.277876e-01 The corresponding k is 5.529203e-01 The corresponding k is 5.780530e-01 The corresponding k is 6.031858e-01 The corresponding k is 6.283185e-01 The corresponding k is 6.534513e-01 The corresponding k is 6.785840e-01 The corresponding k is 7.037168e-01 The corresponding k is 7.288495e-01 The corresponding k is 7.539822e-01 The corresponding k is 7.791150e-01 The corresponding k is 8.042477e-01 The corresponding k is 8.293805e-01 The corresponding k is 8.545132e-01 The corresponding k is 8.796459e-01 The corresponding k is 9.047787e-01 The corresponding k is 9.299114e-01 The corresponding k is 9.550442e-01 The corresponding k is 9.801769e-01 The corresponding k is 1.005310e+00 The corresponding k is 1.030442e+00 The corresponding k is 1.055575e+00 The corresponding k is 1.080708e+00 The corresponding k is 1.105841e+00 The corresponding k is 1.130973e+00 The corresponding k is 1.156106e+00 The corresponding k is 1.181239e+00 The corresponding k is 1.206372e+00 The corresponding k is 1.231504e+00 The corresponding k is 1.256637e+00 The corresponding k is 1.281770e+00 The corresponding k is 1.306903e+00 The corresponding k is 1.332035e+00 The corresponding k is 1.357168e+00 The corresponding k is 1.382301e+00 The corresponding k is 1.407434e+00 The corresponding k is 1.432566e+00 The corresponding k is 1.457699e+00 The corresponding k is 1.482832e+00 The corresponding k is 1.507964e+00 The corresponding k is 1.533097e+00 The corresponding k is 1.558230e+00 The corresponding k is 1.583363e+00 The corresponding k is 1.608495e+00 The corresponding k is 1.633628e+00 The corresponding k is 1.658761e+00 The corresponding k is 1.683894e+00 The corresponding k is 1.709026e+00 The corresponding k is 1.734159e+00 The corresponding k is 1.759292e+00 The corresponding k is 1.784425e+00 The corresponding k is 1.809557e+00 The corresponding k is 1.834690e+00 The corresponding k is 1.859823e+00 The corresponding k is 1.884956e+00 The corresponding k is 1.910088e+00 The corresponding k is 1.935221e+00 The corresponding k is 1.960354e+00 The corresponding k is 1.985487e+00 The corresponding k is 2.010619e+00 The corresponding k is 2.035752e+00 The corresponding k is 2.060885e+00 The corresponding k is 2.086018e+00 The corresponding k is 2.111150e+00 The corresponding k is 2.136283e+00 The corresponding k is 2.161416e+00 The corresponding k is 2.186548e+00 The corresponding k is 2.211681e+00 The corresponding k is 2.236814e+00 The corresponding k is 2.261947e+00 The corresponding k is 2.287079e+00 The corresponding k is 2.312212e+00 The corresponding k is 2.337345e+00 The corresponding k is 2.362478e+00 The corresponding k is 2.387610e+00 The corresponding k is 2.412743e+00 The corresponding k is 2.437876e+00 The corresponding k is 2.463009e+00 The corresponding k is 2.488141e+00 The corresponding k is 2.513274e+00 The corresponding k is 2.538407e+00 The corresponding k is 2.563540e+00 The corresponding k is 2.588672e+00 The corresponding k is 2.613805e+00 The corresponding k is 2.638938e+00 The corresponding k is 2.664071e+00 The corresponding k is 2.689203e+00 The corresponding k is 2.714336e+00 The corresponding k is 2.739469e+00 The corresponding k is 2.764602e+00 The corresponding k is 2.789734e+00 The corresponding k is 2.814867e+00 The corresponding k is 2.840000e+00 The corresponding k is 2.865133e+00 The corresponding k is 2.890265e+00 The corresponding k is 2.915398e+00 The corresponding k is 2.940531e+00 The corresponding k is 2.965663e+00 The corresponding k is 2.990796e+00 The corresponding k is 3.015929e+00 The corresponding k is 3.041062e+00 The corresponding k is 3.066194e+00 The corresponding k is 3.091327e+00 The corresponding k is 3.116460e+00 The corresponding k is 3.141593e+00 The corresponding k is 3.166725e+00 The corresponding k is 3.191858e+00 The corresponding k is 3.216991e+00 The corresponding k is 3.242124e+00 The corresponding k is 3.267256e+00 The corresponding k is 3.292389e+00 The corresponding k is 3.317522e+00 The corresponding k is 3.342655e+00 The corresponding k is 3.367787e+00 The corresponding k is 3.392920e+00 The corresponding k is 3.418053e+00 The corresponding k is 3.443186e+00 The corresponding k is 3.468318e+00 The corresponding k is 3.493451e+00 The corresponding k is 3.518584e+00 The corresponding k is 3.543717e+00 The corresponding k is 3.568849e+00 The corresponding k is 3.593982e+00 The corresponding k is 3.619115e+00 The corresponding k is 3.644247e+00 The corresponding k is 3.669380e+00 The corresponding k is 3.694513e+00 The corresponding k is 3.719646e+00 The corresponding k is 3.744778e+00 The corresponding k is 3.769911e+00 The corresponding k is 3.795044e+00 The corresponding k is 3.820177e+00 The corresponding k is 3.845309e+00 The corresponding k is 3.870442e+00 The corresponding k is 3.895575e+00 The corresponding k is 3.920708e+00 The corresponding k is 3.945840e+00 The corresponding k is 3.970973e+00 The corresponding k is 3.996106e+00 The corresponding k is 4.021239e+00 The corresponding k is 4.046371e+00 The corresponding k is 4.071504e+00 The corresponding k is 4.096637e+00 The corresponding k is 4.121770e+00 The corresponding k is 4.146902e+00 The corresponding k is 4.172035e+00 The corresponding k is 4.197168e+00 The corresponding k is 4.222301e+00 The corresponding k is 4.247433e+00 The corresponding k is 4.272566e+00 The corresponding k is 4.297699e+00 The corresponding k is 4.322831e+00 The corresponding k is 4.347964e+00 The corresponding k is 4.373097e+00 The corresponding k is 4.398230e+00 The corresponding k is 4.423362e+00 The corresponding k is 4.448495e+00 The corresponding k is 4.473628e+00 The corresponding k is 4.498761e+00 The corresponding k is 4.523893e+00 The corresponding k is 4.549026e+00 The corresponding k is 4.574159e+00 The corresponding k is 4.599292e+00 The corresponding k is 4.624424e+00 The corresponding k is 4.649557e+00 The corresponding k is 4.674690e+00 The corresponding k is 4.699823e+00 The corresponding k is 4.724955e+00 The corresponding k is 4.750088e+00 The corresponding k is 4.775221e+00 The corresponding k is 4.800354e+00 The corresponding k is 4.825486e+00 The corresponding k is 4.850619e+00 The corresponding k is 4.875752e+00 The corresponding k is 4.900885e+00 The corresponding k is 4.926017e+00 The corresponding k is 4.951150e+00 The corresponding k is 4.976283e+00 The corresponding k is 5.001416e+00 The corresponding k is 5.026548e+00 The corresponding k is 5.051681e+00 The corresponding k is 5.076814e+00 The corresponding k is 5.101946e+00 The corresponding k is 5.127079e+00 The corresponding k is 5.152212e+00 The corresponding k is 5.177345e+00 The corresponding k is 5.202477e+00 The corresponding k is 5.227610e+00 The corresponding k is 5.252743e+00 The corresponding k is 5.277876e+00 The corresponding k is 5.303008e+00 The corresponding k is 5.328141e+00 The corresponding k is 5.353274e+00 The corresponding k is 5.378407e+00 The corresponding k is 5.403539e+00 The corresponding k is 5.428672e+00 The corresponding k is 5.453805e+00 The corresponding k is 5.478938e+00 The corresponding k is 5.504070e+00 The corresponding k is 5.529203e+00 The corresponding k is 5.554336e+00 The corresponding k is 5.579469e+00 The corresponding k is 5.604601e+00 The corresponding k is 5.629734e+00 The corresponding k is 5.654867e+00 The corresponding k is 5.680000e+00 The corresponding k is 5.705132e+00 The corresponding k is 5.730265e+00 The corresponding k is 5.755398e+00 The corresponding k is 5.780530e+00 The corresponding k is 5.805663e+00 The corresponding k is 5.830796e+00 The corresponding k is 5.855929e+00 The corresponding k is 5.881061e+00 The corresponding k is 5.906194e+00 The corresponding k is 5.931327e+00 The corresponding k is 5.956460e+00 The corresponding k is 5.981592e+00 The corresponding k is 6.006725e+00 The corresponding k is 6.031858e+00 The corresponding k is 6.056991e+00 The corresponding k is 6.082123e+00 The corresponding k is 6.107256e+00 The corresponding k is 6.132389e+00 The corresponding k is 6.157522e+00 The corresponding k is 6.182654e+00 The corresponding k is 6.207787e+00 The corresponding k is 6.232920e+00 The corresponding k is 6.258053e+00 The corresponding k is 6.283185e+00
%%%Plotting
figure(1)
k = -2*pi : 4*pi/500 : 2*pi
k = 1×501
-6.2832 -6.2581 -6.2329 -6.2078 -6.1827 -6.1575 -6.1324 -6.1073 -6.0821 -6.0570 -6.0319 -6.0067 -5.9816 -5.9565 -5.9313 -5.9062 -5.8811 -5.8559 -5.8308 -5.8057 -5.7805 -5.7554 -5.7303 -5.7051 -5.6800 -5.6549 -5.6297 -5.6046 -5.5795 -5.5543
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
plot(k, Eigenvalues1_vector,k, Eigenvalues2_vector,k,Eigenvalues3_vector)
Warning: Imaginary parts of complex X and/or Y arguments ignored.
axis([-2*pi 2*pi -3 3])
xlabel('k')
ylabel('E_k')

채택된 답변

Christine Tobler
Christine Tobler 2025년 1월 8일
Sorting the returned eigenvalues by their real part (since you are plotting only the real part of the eigenvalues) should help. You will avoid the discontinuities, but will have a line in the plot that's always the largest real part of the eigenvalues, another for the smallest, and a third for the middle.
If you're looking for smooth tracing of the eigenvalues, you could try https://www.mathworks.com/matlabcentral/fileexchange/22885-eigenshuffle from the File Exchange, which shuffles the eigenvalues in a sequence to form smooth curves.

추가 답변 (1개)

Sameer
Sameer 2024년 12월 12일
편집: Sameer 2024년 12월 12일
It looks like the issue you are encountering is due to the discontinuities in the eigenvalues, which can happen if the eigenvalues are not sorted consistently for each value of "k". This can cause the plot to jump between different eigenvalues, leading to the discontinuities you are seeing.
To fix this, you can sort the eigenvalues at each step of the loop to ensure they are consistently ordered.
Hope this helps!

카테고리

Help CenterFile Exchange에서 Linear Algebra에 대해 자세히 알아보기

제품


릴리스

R2023a

Community Treasure Hunt

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

Start Hunting!

Translated by