主要内容

integral3

数值计算三重积分

描述

例子

= integral3 (有趣的,xmin,xmax,ymin,ymax,zmin,zmax)近似函数的积分z =乐趣(x, y, z)在该地区xminxxmax,ymin (x)yymax (x)zmin (x, y)zzmax (x, y)

例子

= integral3 (有趣的,xmin,xmax,ymin,ymax,zmin,zmax,名称,值)指定一个或多个附加选项名称,值对参数。

例子

全部折叠

定义匿名函数 f ( x , y , z ) = y x + z 因为 x

fun = @(x,y,z) y.* sinx +z.*cos(x)
有趣的=function_handle与价值:@ (x, y, z) y。* sin (x) + z。* cos (x)

区域整合 0 x π , 0 y 1 , - 1 z 1

q = integral3(有趣,0,π,0,1,1,1)
q = 2.0000

定义匿名函数 f ( x , y , z ) = x 因为 y + x 2 因为 z

fun = @(x,y,z) x.*cos(y) + x.^2.*cos(z)
有趣的=function_handle与价值:@ x (x, y, z)。* cos (y) + x ^ 2 * cos (z)。

定义集成的限制。

xmin = 1;xmax = 1;ymin = @(x)-√(1 - x.^2);ymax = @(x)√(1 - x.^2);zmin = @(x,y)-√(1 - x.²- y.²);zmax = @(x,y)√(1 - x.^2 - y.^2);

求定积分“瓦”方法。

q = integral3(乐趣、xmin xmax、ymin ymax, zmin, zmax,“方法”,“瓦”)
q = 0.7796

定义匿名参数化函数 f ( x , y , z ) = 1 0 / ( x 2 + y 2 + z 2 + 一个 )

= 2;f = @(x,y,z) 10。^2 + y ^2 + z ^2 + a)

求这个区域内的三重积分 - x 0 , - 1 0 0 y 0 , - 1 0 0 z 0

格式q1 = integral3 (f负0 -100 0,-100,0)
q1 = 2.734244598320928 e + 03

再次计算积分,并指定精确度约为9位有效数字。

q2 = integral3 (f负0 -100 0,-100,0,“AbsTol”0,“RelTol”1 e-9)
q2 = 2.734244599944285 e + 03

使用嵌套调用integral3积分来计算四维球体的体积。

半径四维球体的体积 r

V 4 ( r ) = 0 2 π 0 π 0 π 0 r r 3. 2 ( θ ) ( ϕ ) 博士 d θ d ϕ d ξ

积分正交函数在MATLAB®中直接支持1-D, 2-D和3-D积分。万博1manbetx然而,为了解决4-D和更高阶的积分,你需要对求解器进行嵌套调用。

创建函数句柄 f ( r , θ , ϕ , ξ ) 对于使用元素操作符的被积函数(。^。*)。

f = @(r,) r ^3 * sin。^ 2。* sin(φ);

接下来,创建一个函数句柄,用于计算使用的三个积分integral3

Q = @ (r) integral3(@(θ,φ,xi) f (r,θ,φ,xi), 0,π,0,π,0,2 * pi);

最后,使用作为调用的被积函数积分。求这个积分需要为半径选择一个值 r ,所以使用 r = 2

我=积分(Q, 0, 2,“ArrayValued”,真正的)
我= 78.9568

确切的答案是 π 2 r 4 2 Γ ( 2 )

I_exact =π^ 2 * 2 ^ 4 /(2 *γ(2))
I_exact = 78.9568

输入参数

全部折叠

被积函数,指定为函数句柄,定义要在区域内积分的函数xminxxmax,ymin(x)≤yymax(x),zmin(x, y)≤zzmax(x, y)。这个函数有趣的必须接受三个相同大小的数组并返回一个包含相应值的数组。它必须执行元素操作。

数据类型:function_handle

下限的x,指定为有限或无限的实标量值。

数据类型:|

的上限x,指定为有限或无限的实标量值。

数据类型:|

下限的y,指定为有限或无限的实标量值。你也可以指定ymin的函数句柄x)在非矩形区域内积分。

数据类型:|function_handle|

的上限y,指定为有限或无限的实标量值。你也可以指定ymax的函数句柄x)在非矩形区域内积分。

数据类型:|function_handle|

下限的z,指定为有限或无限的实标量值。你也可以指定zmin的函数句柄x,y)在非矩形区域内积分。

数据类型:|function_handle|

的上限z,指定为有限或无限的实标量值。你也可以指定zmax的函数句柄x,y)在非矩形区域内积分。

数据类型:|function_handle|

名称-值对的观点

指定可选的,以逗号分隔的对名称,值参数。的名字参数name和价值是对应的值。的名字必须出现在引号内。可以按任意顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:e-12 AbsTol, 1将绝对误差公差设置为大约精度小数点后12位。

绝对容错,指定为逗号分隔的对,由“AbsTol”一个非负实数。integral3使用绝对误差容错来限制对绝对误差|的估计- - - - - -|,和的计算值是多少是(未知的)精确值。integral3如果您减少绝对误差容忍度,可能会提供更多的小数位数精度。默认值为1平台以及

请注意

AbsTolRelTol一起工作。integral3可能满足绝对容错或相对容错,但不一定两者都满足。有关使用这些公差的更多信息,请参见提示部分。

例子:e-12 AbsTol, 1将绝对误差公差设置为大约精度小数点后12位。

数据类型:|

相对容错,指定为逗号分隔的对,由“RelTol”一个非负实数。integral3使用相对误差公差来限制相对误差|的估计- - - - - -|/||,和的计算值是多少是(未知的)精确值。integral3如果您降低了相对误差容忍度,可能会提供更有效的精度数字。默认值为1 e-6

请注意

RelTolAbsTol一起工作。integral3可以满足相对容错或绝对容错,但不一定两者都满足。有关使用这些公差的更多信息,请参见提示部分。

例子:e-9 RelTol, 1将相对容错性设置为大约9个有效数字。

数据类型:|

集成方法,指定为逗号分隔的对,由“方法”和下面描述的方法之一。

积分法 描述
“汽车” 在大多数情况下,integral3使用“瓦”方法。它使用“迭代”方法任一积分限为无穷时。这是默认方法。
“瓦” integral3调用积分集成在xminxxmax。它调用integral2“瓦”求二重积分的方法ymin (x)yymax (x)zmin (x, y)zzmax (x, y)
“迭代” integral3调用积分集成在xminxxmax。它调用integral2“迭代”求二重积分的方法ymin (x)yymax (x)zmin (x, y)zzmax (x, y)。积分限可以是无限的。

例子:“方法”,“瓦”指定平铺集成方法。

数据类型:字符|字符串

提示

  • integral3函数尝试满足:

    abs(q - q) <= max(AbsTol,RelTol*abs(q))
    在哪里和的计算值是多少是(未知的)精确值。绝对公差和相对公差提供了一种权衡精度和计算时间的方法。通常,相对公差决定了积分精度。然而,如果abs (q)足够小时,绝对公差决定了积分的精度。通常应该同时指定绝对公差和相对公差。

  • “迭代”当函数在积分区域内有不连续点时,方法会更有效。然而,当你在不连续点分割积分并对多个积分的结果求和时,性能和精度会达到最佳。

  • 当对非矩形区域进行积分时,当有以下任一或全部限制时,性能和精度最佳:ymin,ymax,zmin,zmax函数处理。避免将被积函数值设置为零以在非矩形区域内进行积分。如果必须这样做,请指定“迭代”方法。

  • 使用“迭代”方法中任何或所有的限制:ymin (x),ymax (x),zmin (x, y),zmax (x, y)是无界函数。

  • 当参数化匿名函数时,要注意参数值在函数句柄的生命周期内保持不变。例如,函数fun = @(x,y,z) x + y + z + a使用的价值一个当时有趣的被创建。如果您稍后决定更改的值一个,您必须用新值重新定义匿名函数。

  • 如果指定了积分的单精度限制,或者有趣的返回单精度结果时,可能需要指定更大的绝对和相对误差容限。

  • 为了解决4-D和更高阶的积分,你可以嵌套调用积分,integral2,integral3。另一种选择是使用integralNMATLAB中的函数®文件交换,它解决了订单4 - 6的积分。

参考文献

[1] L.F.洗发水"MATLAB中的矢量自适应求积”,计算与应用数学杂志, 211, 2008,页131 - 140。

[2] L.F.洗发水"二维求积的MATLAB程序。应用数学和计算。第202卷,2008年第1期,266-274页。

介绍了R2012a