人人终身学习知识网~是各类综合知识资源信息分享,提升综合素质与提高知识技能的终身学习网络平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信登录

微信扫码,快速开始

用matlab解微分方程,有了边界条件求利用matlab解微分方程:y#39;#39;=y*(z+y#39;^2)^(3/2)初始条件:y=0处,y#39;=0;x=0处,y=0.

[复制链接]

问题:用matlab解微分方程,有了边界条件求利用matlab解微分方程:y#39;#39;=y*(z+y#39;^2)^(3/2)初始条件:y=0处,y#39;=0;x=0处,y=0.

答案:↓↓↓

网友采纳  y=dsolve('D2y=y*(z+Dy*Dy)^(3/2)','y(0)=1','Dy(0)=0.8')  结果是:  y=  piecewise([-z=16/25,{(4*t)/5+1}],[-z16/25,{}])  也就是说,只有z=-16/25时有解析解,解析解为y=4t/5+1,换成x就是y=4x/5+1.  其它情况没有解析解,至少matlab找不到解析解.  在无法求得解析解的情况下,可以用matlab的ode45等函数求解微分方程.
网友采纳  我也知道求不出解析解,主要是能用ode45求出数值解吗?因为用ode系列函数求,貌似都要两个边界条件,一个是y(0)=,y'(0)=...,而我现在只有y=0处,y'=0;x=0处,y=0.8这样的边界条件,所以不知道如何去求他的数值解。。
网友采纳  。。。转化为微分方程组求解啊。这。。。令h=[y,y']然后变成关于h的微分方程,这样ode就可以解了。数学功底不够的话可以去查相关的资料,有时间我再详细给你说。
回复

使用道具 举报

小黑屋/人人终身学习知识网~是各类综合知识资源信息分享,提升综合素质与提高知识技能的终身学习网络平台

Powered by 5wangxiao

© 2007-2021 5wangxiao.Com Inc.

快速回复 返回顶部 返回列表