NIntegrate涉及另一个集成的函数

时间:2013-09-19 21:28:11

标签: wolfram-mathematica application-integration

我想使用Mathematica进行数值积分。被积函数是

我= EXP [-z ^ 2] F [Z] ^ 2

其中该F [z]被定义为积分[1 /(q + I)Exp [-c(q + z)^ 2],{q,-Infinity,0}]。由于Mathematica不知道如何进行整合,因此必须以数字方式进行。我必须将集成更改为“NIntegrate”。在我看来,Mathematica拒绝对另一个数值积分进行数值积分。我没有在多变量上使用NIntegrate的原因是实际的被积函数很长且很复杂,涉及F [z]。

我也想知道我们是否可以像Mathematica中的内置函数一样定义我们自己的特殊函数。由于误差函数是一个积分,Mathematica在数值积分误差函数时不会抱怨。我可以在这里像内置函数一样转换F [z]吗?

非常感谢

1 个答案:

答案 0 :(得分:3)

In[1]:= c = 2; (* make sure all variables have constant values assigned *)
F[z_?NumericQ] := NIntegrate[1/(q + I) Exp[-c (q + z)^2], {q, -Infinity, 0}];
NIntegrate[Exp[-z^2] F[z]^2, {z, 1, 3}]

Out[3]= 0.00387755 + 0.0794878 I