找回密码
 欢迎注册
楼主: mathe

[求助] 微分方程数值求解

[复制链接]
发表于 2015-1-24 12:33:14 | 显示全部楼层
还有一种情况,在 u(0) = 1.64697321 ~ 1.64697327 的时候,u(t)的导函数的图像貌似做不出来。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2015-1-24 12:41:13 来自手机 | 显示全部楼层
要高精度计算,u(0)微小的变化会导致后面较大的变化

点评

的确。我开始怀疑3-4之间是否真的存在奇点。通过泰勒展开能发现奇点在4左右,但用最小的机器精度值2.22045*10^-16 代替0,发现并没有奇点。  发表于 2015-1-25 19:36
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2015-1-24 12:53:19 | 显示全部楼层
的确。我不太清楚Mathematica的数值计算的精度有多可靠。但整个过程 Mathematica并没有报错

我还发现一个比较有意思的地方,在导函数做不出来的地方(Mathematica没有报错提示,图像显示空白):
在u(0) = 1.646973253-1.646973255的时候,u(t) =u(0) 的函数图像发生重根

2.png

点评

问题找到了。是我的一个画图选项的参数没设置好  发表于 2015-1-24 13:48
嗯嗯,理论功底薄弱,只能借势工具啊~, 汗~  发表于 2015-1-24 13:47
工具不是万能的,奇异的函数工具是很难判断的。  发表于 2015-1-24 13:43
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2015-1-24 13:05:29 | 显示全部楼层
据我的使用经验来看, Mathematica的数值计算都是高精度的。当精度不够的时候,或警告,或报错,没有警告也没有报错的话,基本上就认为是最终的准确答案,
如果也不是最终答案,基本上就可以认定是Mathematica的 bug
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2015-1-24 13:12:58 | 显示全部楼层
嗷,明白了,我作图的时候,加了选项PlotRange -> 1.7,一叶障目啊,  这个选项限定了只做 x:【-1.7,1.7】, y:【-1.7,1.7】 区间的图像
PlotRange -> 5 ,有全貌了, 貌似 是某有名的曲线。导函数做不出来是因为这个范围没有点。
3.png
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2015-1-25 08:00:17 来自手机 | 显示全部楼层
现在还可以考虑一个修改的问题。假设他有一辆车,里面有15个单位的油。正北一公里有东西方向的公路,公路上东侧10公路有个补给站。在公路上每公里耗油一单位,但是公路下每公里耗油俩单位。同样迷失方向,如何才能最大概率找到补给站
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2015-1-25 18:38:21 | 显示全部楼层
查了下,v函数  $\frac{dv}{d\theta}=(1-\frac{v}{\theta})(v^2+1),   v(0) = 0$   属于 第一类阿贝尔ODE,
根据wikipedia的解释, 第一类Abel ODE可以通过变换,
转化成标准形式:$y'(x) = y(x)^3 +F(x)$,而 这种形式是可以解出来的(拆分成两个方程,一个是Riccati 微分方程,一个是代数的约束关系式), 详细过程参考:

http://www.hindawi.com/journals/ijmms/2011/387429/

虽然有了完整的解析思路,但要一块串起来,最终求出 v函数的奇点的闭式表达,还是很复杂的~
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

小黑屋|手机版|数学研发网 ( 苏ICP备07505100号 )

GMT+8, 2024-4-20 06:52 , Processed in 0.055196 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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