您可以显式求解yp ode15i,所以不需要使用。但Gamma-problem仍然存在。
clc;清晰的所有;关闭所有
% %常数参数
全球我Gs伽马k2 C100 C001 C011 C021 C031 f2_1
k2 = 2.36502037243135201301202405;
C100 = 0.20253735124738893522296764;C001 = -2.2937835087802942891067795;
C011 = 0.6416819172490610458168773;C021 = 1.185226949697087841616967;
C031 = 0.894260611316773729819612;f2_1 = -1.4266400021183172634428127;
B = 1的军医;I = 1飞行;Gs = 1的军医;
γ= 60;
% %解决
t0 = 0;往往= 200;
tspan = 0:0.01:一般;
选择= odeset (“RelTol”1 e-8“AbsTol”1 e-8);
%的初始猜测
y0 = [1 0 0 0];
%计算初始猜测
[t、y] = ode15s (@odefun tspan, y0);%,选项);
a0 = y (: 1);a0p = y (:, 2);
a2 = y (: 3);a2p = y (:, 4);
% %策划
图();
情节(t、a0“o”)
标题(“a0, y (: 1)”)
包含(“t”);ylabel (“y (: 1)”)
图();
情节(t, a2)
标题(“a2,泰(:,2)”)
包含(“t”);ylabel (“y (:, 3)”)
函数yp = odefun (t, y)
全球我Gs伽马k2 C100 C001 C011 C021 C031 f2_1
yp = 0 (4,1);
yp (1) = y (2);
yp (3) = y (4);
yp (2) = ((-0.5 * y (2) c100 * y (4)) * f2_1 /…
(C001 * y (1)。^ 3 + 3 * C011 * y (1) ^ 2。* y (3) + 3 * C021 * y (1)。* y (3)。^ 2 + C031 * y (3)。^ 3)+…
(Gs + g *γ* cos (t))) /我;
yp(4) =((我* yp (2) -Gs-Gs *γ* cos (t)) / f2_1 - B * k2 ^ 4 * y(3)) /我;
% res (1) = yp(1)是(2);
% res (2) = yp (3) - y (4);
% res(3) =我* yp (2) + (B * k2 ^ 4 * y (3) + I * yp (4)) * f2_1 + g + g *γ* cos (t);
% res (4) = -0.5 * (2) c100 * y(4) -((我* yp (2) -Gs-Gs *γ* cos (t)) / f2_1)。*……
% (C001 * y (1)。^ 3 + 3 * C011 * y (1) ^ 2。* y (3) + 3 * C021 * y (1)。* y (3)。^ 2 + C031 * y (3)。^ 3);
结束