re-us 发表于 2008-1-6 10:45

用ode积分的时候,不同的初值得到不同的结果的问题?

这个帖子已经在matlab版发过了,不过感觉发在这里合适一点

用ode积分的时候,从两个不同的初值积分,比如一个初值是-1,一个初值是1,(选的区间是0-8000),积分到稳定以后,由两个初得到的结果总是差了0.01左右?

有没有办法解决这个问题呢?

谢谢

咕噜噜 发表于 2008-1-6 10:52

为了消除初值对系统的影响,通常初始位移不为零,而初始速度为零
不知道你的是具体情况,是几自由度等,描述一下吧

re-us 发表于 2008-1-6 11:33

我的方程组有6个未知数,就是有六个一阶的微分方程。
不知道这样说清楚没有,如果不行我下午把具体的方程写出来。

无水1324 发表于 2008-1-6 11:33

回复 #1 re-us 的帖子

确实存在的话,也是合理的,不同的初值可以得到不同的解,就是解对初值的依赖性

咕噜噜 发表于 2008-1-6 14:18

六个一阶微分方程而不存在二阶微分方程的话很大情况下是算法造成的初值依赖性

octopussheng 发表于 2008-1-6 14:32

回复 #5 咕噜噜 的帖子

这种情况是正常的吧!

咕噜噜 发表于 2008-1-6 20:43

这是正常的,理论上方法选择恰当的话是可以消除对初值的依赖的

octopussheng 发表于 2008-1-6 21:14

嗯,这是数值积分的固有缺陷!
页: [1]
查看完整版本: 用ode积分的时候,不同的初值得到不同的结果的问题?