谁知道这个数值分析题的matlab程序,感激不尽!用四阶经典的龙格-库塔方法求初值问题y‘=8-3y ,y(0)=2 ,试取步长h=0.2计算y(0.4)的近似值,要求小数点保留4位数字.在线等,谢谢.我需要在matlab里
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/19 00:34:34
![谁知道这个数值分析题的matlab程序,感激不尽!用四阶经典的龙格-库塔方法求初值问题y‘=8-3y ,y(0)=2 ,试取步长h=0.2计算y(0.4)的近似值,要求小数点保留4位数字.在线等,谢谢.我需要在matlab里](/uploads/image/z/14605325-53-5.jpg?t=%E8%B0%81%E7%9F%A5%E9%81%93%E8%BF%99%E4%B8%AA%E6%95%B0%E5%80%BC%E5%88%86%E6%9E%90%E9%A2%98%E7%9A%84matlab%E7%A8%8B%E5%BA%8F%2C%E6%84%9F%E6%BF%80%E4%B8%8D%E5%B0%BD%21%E7%94%A8%E5%9B%9B%E9%98%B6%E7%BB%8F%E5%85%B8%E7%9A%84%E9%BE%99%E6%A0%BC-%E5%BA%93%E5%A1%94%E6%96%B9%E6%B3%95%E6%B1%82%E5%88%9D%E5%80%BC%E9%97%AE%E9%A2%98y%E2%80%98%3D8-3y+%2Cy%EF%BC%880%EF%BC%89%3D2+%2C%E8%AF%95%E5%8F%96%E6%AD%A5%E9%95%BFh%3D0.2%E8%AE%A1%E7%AE%97y%EF%BC%880.4%EF%BC%89%E7%9A%84%E8%BF%91%E4%BC%BC%E5%80%BC%2C%E8%A6%81%E6%B1%82%E5%B0%8F%E6%95%B0%E7%82%B9%E4%BF%9D%E7%95%994%E4%BD%8D%E6%95%B0%E5%AD%97.%E5%9C%A8%E7%BA%BF%E7%AD%89%2C%E8%B0%A2%E8%B0%A2.%E6%88%91%E9%9C%80%E8%A6%81%E5%9C%A8matlab%E9%87%8C)
谁知道这个数值分析题的matlab程序,感激不尽!用四阶经典的龙格-库塔方法求初值问题y‘=8-3y ,y(0)=2 ,试取步长h=0.2计算y(0.4)的近似值,要求小数点保留4位数字.在线等,谢谢.我需要在matlab里
谁知道这个数值分析题的matlab程序,感激不尽!
用四阶经典的龙格-库塔方法求初值问题y‘=8-3y ,y(0)=2 ,试取步长h=0.2计算y(0.4)的近似值,要求小数点保留4位数字.在线等,谢谢.
我需要在matlab里运行,谢谢,我还有180财富值,可以都给你
谁知道这个数值分析题的matlab程序,感激不尽!用四阶经典的龙格-库塔方法求初值问题y‘=8-3y ,y(0)=2 ,试取步长h=0.2计算y(0.4)的近似值,要求小数点保留4位数字.在线等,谢谢.我需要在matlab里
子函数,四阶经典的龙格-库塔函数:
function [x,y]=Classical_RK4(odefun,xspan,y0,h,varargin)
% 经典Runge-Kutta法求解常微分方程
% 输入参数:
% ---odefun:微分方程的函数描述
% ---xspan:求解区间[x0,xn]
% ---y0:初始条件
% ---h:迭代步长
% ---p1,p2,…:odefun函数的附加参数
% 输出参数:
% ---x:返回的节点,即x=xspan(1):h:xspan(2)
% ---y:微分方程的数值解
x=xspan(1):h:xspan(2);
y(1)=y0;
for k=1:length(x)-1
K1=feval(odefun,x(k),y(k),varargin{:});
K2=feval(odefun,x(k)+h/2,y(k)+h/2*K1,varargin{:});
K3=feval(odefun,x(k)+h/2,y(k)+h/2*K2,varargin{:});
K4=feval(odefun,x(k)+h,y(k)+h*K3,varargin{:});
y(k+1)=y(k)+h/6*(K1+2*K2+2*K3+K4);
end
x=x';y=y';
2.主函数:
>> f=@(t,y)8-3*y;
>> xspan=[0 4];
>> h=0.2;
>> y0=2;
>> [t,y]=Classical_RK4(f,xspan,y0,h)
t =
0
0.2000
0.4000
0.6000
0.8000
1.0000
1.2000
1.4000
1.6000
1.8000
2.0000
2.2000
2.4000
2.6000
2.8000
3.0000
3.2000
3.4000
3.6000
3.8000
4.0000
y =
2.0000
2.3004
2.4654
2.5561
2.6059
2.6333
2.6483
2.6566
2.6611
2.6636
2.6650
2.6657
2.6662
2.6664
2.6665
2.6666
2.6666
2.6666
2.6667
2.6667
2.6667