【发布时间】:2016-06-09 16:17:57
【问题描述】:
我有以下 matlab 脚本:
%sniffer
close all
%initial conditions:
X0=0; R0=0;
x0=[X0 R0];
%parameters:
k1=1; k2=1; k3=1; k4=0.2;
par=[k1 k2 k3 k4];
%input:
tu=[ 0 , 0
1 , 0
1.01, 1
20 , 1
20.01, 0
30 , 0
30.01, 1
40 , 1
40.01, 1.2
50 , 1.2
50.01, 1.4
60 , 1.4
60.01, 0
70 , 0];
[t,x] = ode45(@sniffer_ode,[0 70],x0, [],par,tu);
S = interp1(tu(:,1),tu(:,2),t);
x = [x S];
plot(t,x, 'LineWidth',3);
xlabel('time (t)')
legend('X','R','S')
我希望 k4 以 0.2 的步长从 0.2 变为 2.0,所以 k4=0.2:0.2:2 并绘制每一步的图。所以只有 k4 应该改变,并且应该制作 10 个图。我想使用 for 循环,并且我知道如何制作步长,但我不知道如何使用 for 循环来绘制它。
感谢您的帮助!
【问题讨论】: