找回密码
 注册
Simdroid-非首页
查看: 488|回复: 18

[基础概念] 如何得到NIntegrate[sin[1/x],{x,0,Infinity}]的正确结果??

[复制链接]
发表于 2007-6-9 17:42:27 | 显示全部楼层 |阅读模式 来自 北京
如题,积分后总是有一些警告,说明结果不是精确值,虽然有时候相差不大。如何能得出此类函数的正确数值积分结果呢??
 楼主| 发表于 2007-6-10 10:56:29 | 显示全部楼层 来自 北京
Simdroid开发平台
有没有哪位仁兄帮帮我啊?对这个问题我真是思考已久,但想不出什么好办法。
其实被积函数只是快速振荡函数的一个代表而已,我查了一下,如果在布里渊区(Brillouin zones)对函数积分,则收敛。但我只知道这么一个思想,具体操作还希望大家一起讨论!我一直在关注着!谢谢大家!!
回复 不支持

使用道具 举报

 楼主| 发表于 2007-6-11 14:56:56 | 显示全部楼层 来自 北京
难道就没人知道吗?还是大伙都认为这个问题太简单了?
回复 不支持

使用道具 举报

发表于 2007-6-11 20:42:03 | 显示全部楼层 来自 江苏无锡
191613

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复 不支持

使用道具 举报

 楼主| 发表于 2007-6-11 21:50:38 | 显示全部楼层 来自 北京

回复 #4 FreddyMusic 的帖子

我要方法,能否把你的代码贴出来啊!
回复 不支持

使用道具 举报

发表于 2007-6-11 22:13:13 | 显示全部楼层 来自 江苏无锡
方法如下:


游客,本帖隐藏的内容需要积分高于 5 才可浏览,您当前积分为 0
回复 不支持

使用道具 举报

 楼主| 发表于 2007-6-12 09:22:30 | 显示全部楼层 来自 北京
"**** 本内容积分高于 5 才可浏览 ****"

我是个新人,没有积分,能不能重新设置一下让所有人都能看啊!谢谢了!
回复 不支持

使用道具 举报

发表于 2007-6-17 07:54:31 | 显示全部楼层 来自 黑龙江哈尔滨
怎么看不到?看看
回复 不支持

使用道具 举报

 楼主| 发表于 2007-6-17 09:19:43 | 显示全部楼层 来自 北京
就是啊,我也看不到
回复 不支持

使用道具 举报

发表于 2007-6-17 12:47:37 | 显示全部楼层 来自 江苏无锡
How to get score on Fortum FAQ ?
在论坛上如何获得加分常见问题 ?
http://www.simwe.com/forum/thread-249163-1-1.html
回复 不支持

使用道具 举报

发表于 2007-6-22 09:54:07 | 显示全部楼层 来自 安徽芜湖
想看看附件,却看不到,太那个了。

[ 本帖最后由 lcb 于 2007-6-22 09:58 编辑 ]
回复 不支持

使用道具 举报

发表于 2007-8-22 16:51:03 | 显示全部楼层 来自 北京西城
回复一下,别说我顶老贴。。。。
想学习学习结果。。。
回复 不支持

使用道具 举报

发表于 2008-3-18 16:22:05 | 显示全部楼层 来自 北京
我也想学习啊啊 啊
回复 不支持

使用道具 举报

发表于 2008-3-18 17:24:46 | 显示全部楼层 来自 河南郑州
图只是Sin[1/x]的曲线,这个函数有确定的积分值?
回复 不支持

使用道具 举报

发表于 2008-3-19 14:57:57 | 显示全部楼层 来自 北京
可以用Fortran算吧,看图上,被积函数在自变量很大的时候其值很小,所以是否可以将积分上限考虑为一个有限值,如【0,100000】,最后计算结果约为11.935678,库函数为:CALL DQDAG(F,A,B,ERRABS,ERRREL,IRULE,RES,ERREST)

IRULE选6
回复 不支持

使用道具 举报

发表于 2008-5-5 08:10:51 | 显示全部楼层 来自 美国
这个积分不converge,是发散的。
Integrate[Sin[1/x],{x,0,y}], 是可以精确的积分,有解析解,但是让y趋近无穷的时候,是发散的。
Fortran给的值是y=10^5的时候的值。
我学的数学不多,可能回答有错误,因为Mathematica有的积分还是错的。
我用Maple算了一下,结果也是发散,infinity.
回复 不支持

使用道具 举报

发表于 2008-5-6 05:44:13 | 显示全部楼层 来自 美国

Mathematica 重试

NIntegrate[Sin[1/x], {x, 0, 1, 10^10, \[Infinity]},
WorkingPrecision -> 20, Method -> QuasiMonteCarlo,
AccuracyGoal -> 10, MaxPoints -> 50000]

得到: 11.985628401842705080
可能还是有问题。我看了Mathematica的说明,好像最好用解析法最好。
回复 不支持

使用道具 举报

发表于 2008-5-9 13:39:51 | 显示全部楼层 来自 美国

发散的

对原方程进行转换,u = 1/x ==> Integrate[Sin[x]/x^2, {x,0,Infinity}]
可以算到, Integrate[Sin[x]/x^2, {x,1,Infinity}] 或者Integrate[Sin[1/x], {x,0,1}] 是有定积分解的,
用NIntegrate[Sin[x]/x^2, {x, 1, Infinity}, WorkingPrecision -> 50],可以保证前29位是准确的。
但是Integrate[Sin[x]/x^2, {x,0,1}]是发散的。
Sin[x]=Sum[(-1)^(k-1) x^(2k-1)/(2k-1)!, {k,1,Infinity}]. 去除k=1的项(x/x^2=1/x) 是可以直接积分的,
Integrate[Sum[(-1)^(k - 1) x^(2 k - 3)/(2 k - 1)!, {k, 2, \[Infinity]}], {x,  0, 1}] // N
但是积分Integrate[1/x,{x,0,1}] 是发散的,所以整个积分是发散的。

Fortan给的值是在下限为1/(10^5-4)的时候的值。

如果不对,请FreddyMusic帮助。
回复 不支持

使用道具 举报

发表于 2008-5-19 10:43:19 | 显示全部楼层 来自 北京海淀
Integrate[Sin[1/x], x] 得出结果为 -CosIntegral[1/x] + x Sin[1/x]
问题转化为求-CosIntegral[1/x] + x Sin[1/x]分别在x -> 0, Direction -> -1 以及x -> +∞的极限

而 CosIntegral[1/x] 在x -> 0-时极限为0,x -> +∞时,极限为-∞
  x Sin[1/x]在x -> 0-时极限为0,x -> +∞时,极限为1
所以
NIntegrate[sin[1/x],{x,0,Infinity}] 的结果是+∞

[ 本帖最后由 waynebuaa 于 2008-5-19 10:45 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复 不支持

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2026-1-7 04:08 , Processed in 0.060467 second(s), 13 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

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