Matlab 数学建模算法-微分方程系列 made by howard
一,常微分方程
运用欧拉方法,改进欧拉方法,龙格塔库算法解决问题,如果有精确解的话,并计算误差的最大值,最小值,均值,极差.
以下图为例.
取步长为0.1
代码如下
欧拉函数function文件
% f为句柄,y0为f(0),[x0,xn]为x范围,hh为步长
function [yy] = euler(f,y0, x0, xn, hh)
% 求出离散点个数
len = (xn - x0)/hh;
%初始化
x(1) = x0;
y(1) = y0;
for i=2:len+2
x(i) = x(i-1) + hh;
end
% 计算y
for i=2:len+2
y(i) = y(i-1)+hh*f(x(i-1), y(i-1));
end
%