0

我正在尝试将此功能与mathematica 9集成

NIntegrate[
 c4[u, v, w] Cos[ 2*w] , {u, -\[Infinity],
   0}, {v, -\[Infinity], u}, {w, -\[Infinity], v]

with
c4[x_, y_, z_] := 
  E^(-((x^2 + y^2 + z^2)/
    4 )) (E^((x y)/2 ) + E^((x z)/2 ) + E^((y z)/2));

我有这个错误:

NIntegrate::ncvb:在 {u,v,w} = {0.0000318293,2.37147*10^-13,0.0000318293} 附近的 v 中进行 27 次递归二等分后,NIntegrate 未能收敛到规定的精度。NIntegrate 获得 -6.039603923653673*10^7640189323695 和 6.039603923653673`15.954589770191005*^7640189323695 用于积分和误差估计。>>

NIntegrate 尝试评估积分区域外的被积函数。这怎么可能?

4

1 回答 1

1

怀疑不是,而是 NIntegrate 在内部对正域进行了变量替换,因此错误消息令人困惑:

请注意,如果您自己进行此更改,您会收到完全相同的错误消息。

 NIntegrate[c4[-u, -v, -w] Cos[-2 w], {u, 0, \[Infinity]}, {v,  u, \[Infinity]}, {w, v, \[Infinity]}]

如果你看看有限边界会发生什么:

ListPlot[Table[ {s,
  NIntegrate[
   c4[u, v, w] Cos[2 w],
            {u, -s, 0}, 
             {v, -s, u}, 
             {w, -s, v}]} ,   {s, 1, 8, .25}], Joined -> True]

在此处输入图像描述

我想你会看到这件事不太可能在无穷大处收敛..

于 2013-06-06T20:35:39.310 回答