% 定義變量
a = -5; % alpha0
h = 0.1; % 步長
x = 0; % 左端點
y = 2; % 右端點
num = (y-x)/h+1; % 端點數(shù)
t = linspace(x,y,num); % 時間變量
u = zeros(num,1); % 解變量
u(1) = 1; % u0
u(2) = (1+h*h)^2; % 附加u1
% 線性二步法
for i = 2 : (num-1)
u(i+1) = (1+a)*u(i)-a*u(i-1)+0.5*h*((3-a)*f_function(t(i),u(i))-(1+a)*f_function(t(i-1),u(i-1)));
end
% 輸出
for i = 1 : num
fprintf("u(%f)=%.7f\n",t(i),u(i));
end
matlab 運行上述代碼結(jié)果:
北太天元軟件運行上訴代碼結(jié)果: