gpt4 book ai didi

wolfram-mathematica - 如何在 Mathematica 中以数值方式计算二重积分?

转载 作者:行者123 更新时间:2023-12-01 11:52:56 31 4
gpt4 key购买 nike

如何在 Mathematica 中数值计算二重积分?

Integrate[Exp[-0.099308 s]
* Integrate[Exp[0.041657423 u] Exp[-3.1413 s + 3.12 u]
* ((u/(s - u))^(1/2) BesselI[1,2 (u (s - u))^(1/2)]
+ 0.293 BesselI[0,2 (u (s - u))^(1/2)]),{u,0,s}],{s,0,10}]

enter image description here

最佳答案

两件事。首先,Integrate接受多个“迭代器”,即 {x, x1, x2},因此您可以在不嵌套它们的情况下指定一个多重积分,如下所示

Integrate[x y, {x, 0, 1}, {y, 0, x}]

在由 y == xx == 0x == 1< 界定的三角形上对 x y 进行积分。注意,极限的顺序是从外到内,所以积分是从右到左进行的。那么,你的积分就变成了

Integrate[Exp[-0.099308 s] Exp[0.041657423 u] Exp[-3.1413 s + 3.12 u]
* ((u/(s - u))^(1/2) BesselI[1,2 (u (s - u))^(1/2)]
+ 0.293 BesselI[0,2 (u (s - u))^(1/2)]),
{s,0,10}, {u,0,s}]

其次,Mathematica 有许多与其标准算法等效的数值,例如 NSolve , NDSolve , NSum , 和 NIntegrate .它们都可以通过前导 N 来识别,这是一个 function就其本身而言,也是。这些函数的好处在于它们与它们的解析等效函数具有相同的签名。因此,要对积分进行数值积分,只需将 Integrate 更改为 NIntegrate,如下所示

NIntegrate[Exp[-0.099308 s] Exp[0.041657423 u] Exp[-3.1413 s + 3.12 u]
* ((u/(s - u))^(1/2) BesselI[1,2 (u (s - u))^(1/2)]
+ 0.293 BesselI[0,2 (u (s - u))^(1/2)]),
{s,0,10}, {u,0,s}]

给出 27.4182,如 tkott 所述,但没有生成任何警告。

关于wolfram-mathematica - 如何在 Mathematica 中以数值方式计算二重积分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9585230/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com