function sol = testyours()
sol = ode23s(@vdp3000,[0 10],[0 0 0 0 40 0]);
t = sol.x;
Y = sol.y;
plot(t,Y(3,)
xlabel('t');
ylabel('y');
end
function dy = vdp3000(t,y)
dy = zeros(6,1); % a column vector
dy(1) = y(2);
dy(2) = (1/0.00207)*((3.14e-6)*y(6)-8.15*((4.9e-3)+y(1))-(3.028e-3)*y(1)*y(6));
dy(3) = y(4);
dy(4) = (1/0.031)*((1.206e-3)*y(5)-3.02*((8.02e-3)+y(3))-(1.256e-3)*y(6)-0.0173*y(3)*y(5));
dy(5) = (0.6e7)*((6.15e-4)-0.135*((((0.5e-3)^8)/(5e-3))^(1/3))*((y(5)-y(6))^0.667)-0.0126*y(3)*((2*y(5)/1000)^0.5)-(1.206e-3)*y(4));
dy(6) = (0.662e8)*(0.135*((((0.5e-3)^8)/(5e-3))^(1/3))*((y(5)-y(6))^0.667)-(1.611e-3)*y(1)*((2*y(6)/1000)^0.5)-(3.14e-6)*y(2)+(1.256e-3)*y(4));
end
running results:
Warning: Imaginary parts of complex X and/or Y arguments ignored
图片是一个那样的东西,我不知道怎么发图,你把上面代码复制把,如果出错那就是你matlab的问题了,ode45,15s,23s都能得到结果,