数量级差别特大且不知道初值的微分方程如何求数值解
方程是这样的:dy(x)2+m**y=0
(0<x<d)
初始条件不知,假设y(0)=r,
y’(0)=t
已知 t=jk(2-r)
参数
:m=0.4144969276722334e37
U=-0.5e-18
E=5U
d=0.1e-9
k=2e10*pi
得到的结果应该满足y’(d)=jky(d)
且|r-1|^2+|y(d)exp(-jkd)|^2约等于1
因为数量级以及不知初值,用maple和MATLAB求的结果差距很大,希望高手给指点一下
回复 楼主 youyoucao_216 的帖子
建议楼主给齐完整代码, 方便有兴趣者试试! 我编写的试解的程序运行到最后出错out of memory,应该和数量级的差别大有关系。不知道有没有可以设置数量级,或者其他的方法可以解决这个问题 原帖由 youyoucao_216 于 2009-5-23 21:13 发表 http://www.chinavib.com/forum/images/common/back.gif...用maple和MATLAB求的结果差距很大...
maple没玩过! 个人水平专业又有限
只是认为若能给齐资讯, 或许较有人愿意帮忙!
回复 板凳 youyoucao_216 的帖子
matlab里面出现这个问题吗?这个应该不是数量级的问题了,我猜的
回复 楼主 youyoucao_216 的帖子
数量级差别很大?是说方程刚性吗?试试ode15s。
页:
[1]