这个问题与另一个问题有关: 尝试对简单的二阶 ODE 建模。
在另一个问题上,我得到了一些有用的评论,说明为什么模拟如此糟糕。
但是,我还有一个问题:为什么时间步越小不是越好?先感谢您。
h=0.05 %h=0.5;
max=100;
np=max/h;
u=[];
y=[];
u(1)=0;
u(2)=-h^2/2-h;
y(1)=0;
y(2)=-h^2/2-h;
x=[0:h:max];
for i=3:np+1;
u(i)=u(i-1)*(h+2)+u(i-2)*(-h-1)+h^2*x(i);
y(i)=-(x(i))^2/2-(x(i));
end
close all
plot(x,u)
hold on
plot(x,y,'r')

