用 四阶龙格库塔 解三阶微分方程 公式和程序0.001y'''+0.11y''+y'+10y=10初值X=0,y=0要三阶微分方程的推导公式,如果有程序可以加分.
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/06 17:53:19
![用 四阶龙格库塔 解三阶微分方程 公式和程序0.001y'''+0.11y''+y'+10y=10初值X=0,y=0要三阶微分方程的推导公式,如果有程序可以加分.](/uploads/image/z/8554300-52-0.jpg?t=%E7%94%A8+%E5%9B%9B%E9%98%B6%E9%BE%99%E6%A0%BC%E5%BA%93%E5%A1%94+%E8%A7%A3%E4%B8%89%E9%98%B6%E5%BE%AE%E5%88%86%E6%96%B9%E7%A8%8B+%E5%85%AC%E5%BC%8F%E5%92%8C%E7%A8%8B%E5%BA%8F0.001y%27%27%27%2B0.11y%27%27%2By%27%2B10y%3D10%E5%88%9D%E5%80%BCX%3D0%2Cy%3D0%E8%A6%81%E4%B8%89%E9%98%B6%E5%BE%AE%E5%88%86%E6%96%B9%E7%A8%8B%E7%9A%84%E6%8E%A8%E5%AF%BC%E5%85%AC%E5%BC%8F%2C%E5%A6%82%E6%9E%9C%E6%9C%89%E7%A8%8B%E5%BA%8F%E5%8F%AF%E4%BB%A5%E5%8A%A0%E5%88%86.)
用 四阶龙格库塔 解三阶微分方程 公式和程序0.001y'''+0.11y''+y'+10y=10初值X=0,y=0要三阶微分方程的推导公式,如果有程序可以加分.
用 四阶龙格库塔 解三阶微分方程 公式和程序
0.001y'''+0.11y''+y'+10y=10
初值X=0,y=0
要三阶微分方程的推导公式,如果有程序可以加分.
用 四阶龙格库塔 解三阶微分方程 公式和程序0.001y'''+0.11y''+y'+10y=10初值X=0,y=0要三阶微分方程的推导公式,如果有程序可以加分.
初值给的不够啊.
不仅要给y,还要给y的一阶导和二阶导.否则数值解没法弄.
理论解的话,可能还可以含有一些系数.
在Matlab下输入:edit,然后将下面两行百分号之间的内容,复制进去,保存
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function DYDt=zhidao_amanm(t,Y)
y=Y(1);
dydt=Y(2);
d2ydt2=Y(3);
DYDt=[Y(2);Y(3);(10-10*y-dydt-0.11d2ydt2)/0.001];
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
在Matlab命令行下面输入:
t_start=0;
t_end=1;
yy0=[0.1;0;0]; %初值
[t,y]=ode45('zhidao_amanm',[0,t_end],yy0);
plot(t,y(:,1));
xlabel('t');
ylabel('y')
y(end,1)
得到的结果:
ans =
1.0056
用昨天给的C代码计算出来的结果是:
1.005630