友友们求解下列初值问题
的经典四阶 Runge-Kutta 方法,取 h=0.4 进行mathlab数值实验,把计算结果、精确解及误差用表格给出。
可以按照以下步骤在 matlab 中求解初值问题:
% 定义初值问题的函数
f = @(t, u) (u^2 + u)/t;
% 定义精确解函数
exact = @(t) -2./t;
% 定义误差函数
error = @(t, u) abs(u - exact(t));
% 使用 ode45 函数求解初值问题
[t, u] = ode45(f, [1, 3], -2);
% 计算误差
e = error(t, u);
% 使用 uitable 函数展示计算结果、精确解和误差
data = [t, u, e];
columnnames = {'t', 'u', 'error'};
uitable('Data', data, 'ColumnName', columnnames);