Why do two functions in my plot "switch" positions when plotted?
显示 更早的评论
Here is my code:
clear
clc
m1 = 1;
m2 = 2;
m3 = 1;
k1 = 2000:8000;
k2 = 2000;
k3 = 6000;
M = [ m1 0 0; 0 m2 0; 0 0 m3]
for n = 1:length(k1);
K = [k1(n)+k2 -k2 0; -k2 k2+k3+3 -k3; 0 -k3 k3];
EV = eig(-inv(M)*K);
w1(n) = sqrt(abs(EV(1)));
w2(n) = sqrt(abs(EV(2)));
w3(n) = sqrt(abs(EV(3)));
end
figure(1)
plot(k1,w1/(2*pi),k1,w2/(2*pi),k1,w3/(2*pi))
legend w1 w2 w3
title('Varying k1')
ylabel('Frequency (Hz)')
xlabel('k1')
my plot looks like the picture attached. I cannot figure out why w2 and w3 seem to jump to one another after about 7000.
How can I resolve this?

采纳的回答
更多回答(0 个)
类别
在 帮助中心 和 File Exchange 中查找有关 Mathematics 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!