mma8中的Integrate vs NIntegrate中的Bug

|| 这是怎么回事(Mathematica版本8.x):
NIntegrate[Log[1/2 + Sqrt[1/4 - 1/(4 x^2)]]/x, {x, 1, Infinity}]
--> -0.171007

Integrate[Log[1/2 + Sqrt[1/4 - 1/(4 x^2)]]/x, {x, 1, Infinity}] // N
--> 0.171007
NIntegrate[]
值正确。我之前遇到过关于
PrincipalValue
选择的问题,但是a)已经在mma8中修复了,b)这个积分在积分区域中没有或至少不应该有极点。 编辑:由于人们建议解决这个问题,所以一般的解决方案是,例如,仅使用ѭ3exclusively。但是,我有兴趣了解为什么会发生这种情况,以及这种错误是否可以预测。     
已邀请:
恐怕这是ѭ4a中的错误。解决方法是更改​​变量
x->u^(-1/2)
In[12]:= Log[1/2 + Sqrt[1/4 - 1/(4*x^2)]]/x Dt[x]/Dt[u] /. 
 x -> 1/Sqrt[u]

Out[12]= Log[1/2 + Sqrt[1/4 - u/4]]/(2 u)
然后
In[14]:= Integrate[%, {u, 1, 0}]

Out[14]= 1/24 (-\\[Pi]^2 + Log[8] Log[16])

In[15]:= N[%]

Out[15]= -0.171007
这与
NIntegrate
一致。     

要回复问题请先登录注册