数学笔记-数值计算-多重积分(二)

前言

上一篇已经介绍过一维、三角形、四面体区域的积分。如果积分区域为曲线图形,就要对区域分割成大量的近似三角形(或四面体),计算量将陡增。本篇主要介绍最常见的曲线图形-圆/球 为区域的积分,进入多维积分的世界。

圆周积分

∮ ( R ) = ∮ C f ( x , y ) d s ≈ C N ∑ k = 1 N f ( R cos ⁡ 2 π i k N , R sin ⁡ 2 π i k N ) \oint(R)=\oint_{C} f(x, y) ds \approx \frac{C}{N} \sum_{k=1}^N f(R\cos \frac{2\pi i k}{N},R\sin \frac{2\pi i k}{N}) (R)=Cf(x,y)dsNCk=1Nf(RcosN2πik,RsinN2πik)
其中积分区域C为半径为R的圆周,其周长记为 C C C(实际上为 2 π R 2\pi R 2πR)
圆周积分较为简单,只需要在圆周上等距离采样,且权重都相等。
当采样数为 N N N时,上面的公式的精度为 N − 1 N-1 N1.
另外,高斯规则结果等同于等距规则,不再介绍。
在这里插入图片描述

圆内积分

I 2 ( R ) = ∬ D f ( x , y ) d S ≈ S D ∑ i = 1 n A i ∮ ( r i R ) I_2(R)=\iint_D f(x,y)dS \approx S_D \sum_{i=1}^n A_i \oint(r_iR) I2(R)=Df(x,y)dSSDi=1nAi(riR)
其中积分区域D为半径为R的圆,其面积记为 S D S_D SD(实际上为 π R 2 \pi R^2 πR2)
∮ ( R ) \oint(R) (R)表示区域为半径R的圆的积分,如果要求 I 2 ( R ) I_2(R) I2(R)的精度为p,那可以用精度为p的数值积分值作为代替。
下面为了表示方便,将坐标 ( x , y ) (x,y) (x,y)记为对应的复数值 x + y i x+yi x+yi,并且令 f ( x + y i ) = f ( x , y ) f(x+yi)=f(x,y) f(x+yi)=f(x,y)
同时记第k个N次单位根为 w N k = e 2 π i k / N w^k_N=e^{2\pi ik/N} wNk=e2πik/N

牛顿-柯斯特规则

层数精度rA样本数
11011
23 0 1 0\\1 01 1 / 2 1 / 2 1/2\\1/2 1/21/25
35 0 1 / 2 1 0\\1/2\\1 01/21 − 1 / 6 8 / 9 5 / 18 -1/6\\8/9\\5/18 1/68/95/1813
47 0 1 / 3 2 / 3 1 0\\1/3\\2/3\\1 01/32/31 5 / 16 − 9 / 32 63 / 80 29 / 160 5/16\\-9/32\\63/80\\29/160 5/169/3263/8029/16025
59 0 1 / 4 2 / 4 3 / 4 1 0\\1/4\\2/4\\3/4\\1 01/42/43/41 − 47 / 90 704 / 675 − 232 / 675 1088 / 1575 1249 / 9450 -47/90\\704/675\\-232/675\\1088/1575\\1249/9450 47/90704/675232/6751088/15751249/945041
611 0 1 / 5 2 / 5 3 / 5 4 / 5 1 0\\1/5\\2/5\\3/5\\4/5\\1 01/52/53/54/51 8081 / 6912 − 40375 / 20736 54625 / 36288 − 43375 / 96768 269125 / 435456 89581 / 870912 8081/6912\\-40375/20736\\54625/36288\\-43375/96768\\269125/435456\\89581/870912 8081/691240375/2073654625/3628843375/96768269125/43545689581/87091261

备注:

  • 在此规则下,最外2层的符号为正,最外第3次变负号开始,每往内一层都改变符号。
  • 总层数增加时,最外层的权重为正,但向0递减。
  • 采样点如下,其中权重值按 紫红>红>橙>黄>0>绿>蓝 来设置颜色。
    在这里插入图片描述

高斯规则

r 是 Zernike多项式 的零点,且有:
Z n ( x ) = ∑ k = 0 ⌊ n / 2 ⌋ ( − 1 ) k ( n − k ) !   x n − 2 k k ! ( ⌈ n 2 ⌉ − k ) ! ( ⌊ n 2 ⌋ − k ) ! = ∑ k = 0 n Z n k x k A 2 n ( x ) = 2 Z n ′ ( x ) ∑ k = 0 n − 1 ∑ m = 1 n − k Z 2 n 2 m + 2 k m x 2 k + 1 A 2 n + 1 ( x ) = 2 Z n ′ ( x ) ∑ k = 0 n − 1 ∑ m = 1 n − k Z 2 n + 1 2 m + 2 k + 1 m + 1 x 2 k , ( x ≠ 0 ) A 2 n + 1 ( 0 ) = 4 ( n + 1 ) 2 Z_n(x)=\sum_{k=0}^{\lfloor n/2\rfloor}\frac{(-1)^k(n-k)!\ x^{n-2k}}{k!(\lceil \frac{n}{2} \rceil-k)!( \lfloor \frac{n}{2}\rfloor -k)!}=\sum_{k=0}^nZ_n^k x^k\\ A_{2n}(x)=\frac{2}{Z'_n(x)}\sum_{k=0}^{n-1}\sum_{m=1}^{n-k}\frac{Z_{2n}^{2m+2k}}{m}x^{2k+1}\\ A_{2n+1}(x)=\frac{2}{Z'_n(x)}\sum_{k=0}^{n-1}\sum_{m=1}^{n-k}\frac{Z_{2n+1}^{2m+2k+1}}{m+1}x^{2k},(x\ne 0)\\A_{2n+1}(0)=\frac{4}{(n+1)^2} Zn(x)=k=0n/2k!(⌈2nk)!(⌊2nk)!(1)k(nk)! xn2k=k=0nZnkxkA2n(x)=Zn(x)2k=0n1m=1nkmZ2n2m+2kx2k+1A2n+1(x)=Zn(x)2k=0n1m=1nkm+1Z2n+12m+2k+1x2k,(x=0)A2n+1(0)=(n+1)24
这里有

  • A n ( x ) = 4 ( 1 − x 2 ) F n ′ ( x ) 2 , A 2 n − 1 ( 0 ) = 1 / n 2 A_n(x)=\frac{4}{(1-x^2)F'_n(x)^2},A_{2n-1}(0)=1/n^2 An(x)=(1x2)Fn(x)24,A2n1(0)=1/n2
  • ∫ 0 1 x Z n ( x ) Z n + 2 k ( x ) d x = 0 , ( k ∈ Z , k ≠ 0 ) \int_0^1 x Z_n(x) Z_{n+2k}(x) dx=0,(k\in Z,k\ne 0) 01xZn(x)Zn+2k(x)dx=0,(kZ,k=0)
  • ∫ 0 1 x Z n ( x ) 2 d x = 1 2 n + 2 \int_0^1 x Z_n(x)^2 dx=\frac{1}{2n+2} 01xZn(x)2dx=2n+21

这里要求 N ≥ 2 n N \ge 2n N2n, 此时公式的精度为 2 n − 1 2n-1 2n1。如果 N = 2 n − 1 N=2n-1 N=2n1,则公式精度为 2 n − 2 2n-2 2n2

例如 n=3时,取N=6,有
I ≈ S D [ 1 4 f ( 0 ) + 3 4 × 6 ∑ k = 1 6 f ( 6 3 e 2 π i k / 6 ) ] I \approx S_D [\frac{1}{4}f(0)+ \frac{3}{4 \times 6}\sum_{k=1}^{6}f( \frac{\sqrt{6}}{3}e^{2\pi ik/6})] ISD[41f(0)+4×63k=16f(36 e2πik/6)]
需要7个采样点,精度为5,即 f ( x , y ) f(x,y) f(x,y)的次数不大于5时,公式的误差为0。
另外,因为N并不固定,当n=4时,还可以有以下形式:
I ≈ S D [ 1 2 × 8 ∑ k = 1 8 f ( 3 − 3 6 e 2 π i k / 8 ) + 1 2 × 9 ∑ k = 1 9 f ( 3 + 3 6 e 2 π i k / 9 ) ] I \approx S_D [\frac{1}{2 \times 8}\sum_{k=1}^{8}f( \sqrt{\frac{3-\sqrt{3}}{6}}e^{2\pi ik/8})+\frac{1}{2 \times 9}\sum_{k=1}^{9}f( \sqrt{\frac{3+\sqrt{3}}{6}}e^{2\pi ik/9})] ISD[2×81k=18f(633 e2πik/8)+2×91k=19f(63+3 e2πik/9)]
但这样就需要采集8+9=17个样本。而且因为不论N取多大,精度都不会提升,所以不如直接取(8,8),这样就需要最少的样本数16。

更多数值如下:

nZernike多项式 r i r_i ri A i A_i Ai最少采样数精度
1 Z = r Z=r Z=r0111
2 Z = 2 r 2 − 1 Z=2r^2-1 Z=2r21 2 / 2 = 0.7071067812 \sqrt{2}/2=0.707 106 781 2 2 /2=0.7071067812143
3 Z = 3 r 3 − 2 r Z=3r^3-2r Z=3r32r 0 6 / 3 = 0.8164965809 0\\\sqrt{6}/3=0.816 496 580 9 06 /3=0.8164965809 1 / 4 3 / 4 1/4\\3/4 1/43/475
4 Z = 6 r 4 − 6 r 2 + 1 Z=6r^4-6r^2+1 Z=6r46r2+1 ( 3 − 3 ) / 6 = 0.4597008434 ( 3 + 3 ) / 6 = 0.8880738340 \sqrt{(3-\sqrt{3})/6}=0.459 700 843 4\\\sqrt{(3+\sqrt{3})/6}=0.888 073 834 0 (33 )/6 =0.4597008434(3+3 )/6 =0.8880738340 1 / 2 1 / 2 1/2\\1/2 1/21/2167
5 Z = 10 r 5 − 12 r 3 + 3 r Z=10r^5 - 12r^3 + 3r Z=10r512r3+3r 0 ( 6 − 6 ) / 10 = 0.5958615827 ( 6 + 6 ) / 10 = 0.9192110608 0\\\sqrt{(6-\sqrt{6})/10}=0.595 861 582 7\\\sqrt{(6+\sqrt{6})/10}=0.919 211 060 8 0(66 )/10 =0.5958615827(6+6 )/10 =0.9192110608 1 / 9 = 0.1111111111 ( 16 + 6 ) / 36 = 0.5124858262 ( 16 − 6 ) / 36 = 0.3764030627 1/9=0.111 111 111 1\\(16+\sqrt{6})/36=0.512 485 826 2\\(16-\sqrt{6})/36=0.376 403 062 7 1/9=0.1111111111(16+6 )/36=0.5124858262(166 )/36=0.3764030627219
6 Z = 20 r 6 − 30 r 4 + 12 r 2 − 1 Z=20r^6-30r^4+12r^2-1 Z=20r630r4+12r21 ( 5 − 15 ) / 10 = 0.3357106870 2 / 2 = 0.7071067812 ( 5 + 15 ) / 10 = 0.9419651451 \sqrt{(5-\sqrt{15})/10}=0.335 710 687 0\\\sqrt{2}/2=0.707 106 781 2\\\sqrt{(5+\sqrt{15})/10}=0.941 965 145 1 (515 )/10 =0.33571068702 /2=0.7071067812(5+15 )/10 =0.9419651451 5 / 18 = 0.2777777777 4 / 9 = 0.4444444444 5 / 18 = 0.2777777777 5/18=0.277 777 777 7\\4/9=0.444 444 444 4\\5/18=0.277 777 777 7 5/18=0.27777777774/9=0.44444444445/18=0.27777777773611
7 Z = 35 r 7 − 60 r 5 + 30 r 3 − 4 r Z=35 r^7 - 60 r^5 + 30 r^3 - 4 r Z=35r760r5+30r34r 0 0.4608042298 0.7684615381 0.9546790248 0\\0.460 804 229 8\\0.768 461 538 1\\0.954 679 024 8 00.46080422980.76846153810.9546790248 1 / 16 = 0.0625 0.3288443200 0.3881934688 0.2204622112 1/16=0.0625\\0.328 844 320 0\\0.388 193 468 8\\0.220 462 211 2 1/16=0.06250.32884432000.38819346880.22046221124313
8 Z = 70 r 8 − 140 r 6 + 90 r 4 − 20 r 2 + 1 Z=70r^8-140r^6+90r^4-20r^2+1 Z=70r8140r6+90r420r2+1 0.2634992300 0.5744645143 0.8185294874 0.9646596062 0.263 499 230 0\\0.574 464 514 3\\0.818 529 487 4\\0.964 659 606 2 0.26349923000.57446451430.81852948740.9646596062 ( 18 − 30 ) / 72 = 0.1739274226 ( 18 + 30 ) / 72 = 0.3260725774 ( 18 + 30 ) / 72 = 0.3260725774 ( 18 − 30 ) / 72 = 0.1739274226 (18-\sqrt{30})/72=0.173 927 422 6\\(18+\sqrt{30})/72=0.326 072 577 4\\(18+\sqrt{30})/72=0.326 072 577 4\\(18-\sqrt{30})/72=0.173 927 422 6 (1830 )/72=0.1739274226(18+30 )/72=0.3260725774(18+30 )/72=0.3260725774(1830 )/72=0.17392742266415

在这里插入图片描述

球面积分

∯ ( R ) = ∯ D f ( x , y ) d S = S D ∑ k = 1 N A k f ( x k , y k , z k ) \oiint(R)=\oiint_{D} f(x, y) dS= S_D \sum_{k=1}^N A_kf(x_k,y_k,z_k) (R)= Df(x,y)dS=SDk=1NAkf(xk,yk,zk)
其中积分区域D为半径为R的球面,其面积记为 S D S_D SD(实际上为 4 π R 2 4\pi R^2 4πR2)

牛顿-柯斯特规则

精度经度纬度权重最少样本数
3 2 π k / 4 2 \pi k/4 2πk/4 0 ± π / 2 0\\\pm \pi/2 0±π/2 2 / 3 1 / 6 2/3\\1/6 2/31/66
5 2 π k / 6 2 \pi k/6 2πk/6 0 ± π / 4 ± 2 π / 4 0\\\pm \pi/4\\\pm 2\pi/4 0±π/4±2π/4 2 / 5 = 0.4 4 / 15 = 0.2666667 1 / 30 = 0.0333333 2/5=0.4\\4/15=0.266 6667\\1/30=0.033 3333 2/5=0.44/15=0.26666671/30=0.033333320
7 2 π k / 8 2 \pi k/8 2πk/8 0 ± π / 6 ± 2 π / 6 ± 3 π / 6 0\\\pm \pi/6\\\pm 2\pi/6\\\pm 3\pi/6 0±π/6±2π/6±3π/6 82 / 315 = 0.2603175 8 / 35 = 0.2285714 8 / 63 = 0.1269841 1 / 70 = 0.0142857 82/315=0.260 3175\\8/35=0.228 5714\\8/63=0.126 9841\\1/70=0.014 2857 82/315=0.26031758/35=0.22857148/63=0.12698411/70=0.014285742
9 2 π k / 10 2 \pi k/10 2πk/10 0 ± π / 8 ± 2 π / 8 ± 3 π / 8 ± 4 π / 8 0\\\pm \pi/8\\\pm 2\pi/8\\\pm 3\pi/8\\\pm 4\pi/8 0±π/8±2π/8±3π/8±4π/8 62 / 315 = 0.1968254 ( 40 + 12 2 ) / 315 = 0.1808589 44 / 315 = 0.1396825 ( 40 − 12 2 ) / 315 = 0.0731093 1 / 126 = 0.0079365 62/315=0.196 825 4\\(40+12\sqrt{2})/315=0.180 8589\\44/315=0.139 6825\\(40-12\sqrt{2})/315=0.073 1093\\1/126=0.007 9365 62/315=0.1968254(40+122 )/315=0.180858944/315=0.1396825(40122 )/315=0.07310931/126=0.007936572
11 2 π k / 12 2 \pi k/12 2πk/12 0 ± π / 10 ± 2 π / 10 ± 3 π / 10 ± 4 π / 10 ± 5 π / 10 0\\\pm \pi/10\\\pm 2\pi/10\\\pm 3\pi/10\\\pm 4\pi/10\\\pm 5\pi/10 0±π/10±2π/10±3π/10±4π/10±5π/10 302 / 1925 = 0.1568831 ( 420 + 44 5 ) / 3465 = 0.1496066 ( 1508 + 308 5 ) / 17325 = 0.1267942 ( 420 − 44 5 ) / 3465 = 0.0928176 ( 1508 − 308 5 ) / 17325 = 0.0472895 1 / 198 = 0.0050505 302/1925=0.156 8831\\(420+44\sqrt{5})/3465=0.149 6066\\(1508+308\sqrt{5})/17325=0.126 7942\\(420-44\sqrt{5})/3465=0.092 8176\\(1508-308\sqrt{5})/17325=0.047 2895\\1/198=0.005 0505 302/1925=0.1568831(420+445 )/3465=0.1496066(1508+3085 )/17325=0.1267942(420445 )/3465=0.0928176(15083085 )/17325=0.04728951/198=0.0050505101
13 2 π k / 14 2 \pi k/14 2πk/14 0 ± π / 12 ± 2 π / 12 ± 3 π / 12 ± 4 π / 12 ± 5 π / 12 ± 6 π / 12 0\\\pm \pi/12\\\pm 2\pi/12\\\pm 3\pi/12\\\pm 4\pi/12\\\pm 5\pi/12\\\pm 6\pi/12 0±π/12±2π/12±3π/12±4π/12±5π/12±6π/12 17702 / 135135 = 0.1309949 8 ( 1346 + 455 3 ) / 135135 = 0.1263378 568 / 5005 = 0.1134865 12484 / 135135 = 0.0923817 808 / 12285 = 0.0657713 8 ( 1346 − 455 3 ) / 135135 = 0.0330287 1 / 286 = 0.0034965 17702/135135=0.130 9949\\8(1346+455\sqrt{3})/135135=0.126 3378\\568/5005=0.113 4865\\12484/135135=0.092 3817\\808/12285=0.065 7713\\8(1346 - 455\sqrt{3})/135135=0.033 0287\\1/286=0.003 4965 17702/135135=0.13099498(1346+4553 )/135135=0.1263378568/5005=0.113486512484/135135=0.0923817808/12285=0.06577138(13464553 )/135135=0.03302871/286=0.0034965145

备注:

  1. 上表中, 经度数=精度+1。
  2. 选择不同的经度数,实际权重(两个极点除外)需要除以经度数。例如:精度=3时,取经度数=4,两个极点权重保持不变(1/6), 其他的节点的权重 = 2 / 3 ÷ 4 = 1 / 6 =2/3 \div4=1/6 =2/3÷4=1/6, 这时节点刚好构成正八面体,且所有节点权重都相等。

在这里插入图片描述

高斯规则(平行同心圆)

n特征多项式 F n ( x ) F_n(x) Fn(x)纬度w权重A经度样本数精度
1 x x x 0 ± π / 2 0\\\pm \pi/2 0±π/2 2 / 3 1 / 6 2/3\\1/6 2/31/6 2 k π / 4 2k\pi/4 2/463
2 ( 5 x 2 − 1 ) / 4 (5 x^2-1)/4 (5x21)/4 ± 0.4636476090 = 26.56 5 ∘ ± π / 2 \pm0.463 647 6090=26.565^\circ\\\pm \pi/2 ±0.4636476090=26.565±π/2 5 / 12 1 / 12 5/12\\1/12 5/121/12 2 k π / 5 ∗ 2k\pi/5^* 2/5125
3 ( 7 x 3 − 3 x ) / 4 (7 x^3 - 3 x)/4 (7x33x)/4 0 ± 0.7137243789 = 40.89 3 ∘ ± π / 2 0\\\pm0.713 724 3789=40.893^\circ\\\pm \pi/2 0±0.7137243789=40.893±π/2 16 / 45 49 / 180 1 / 20 16/45\\49/180\\1/20 16/4549/1801/20 2 k π / 8 2k\pi/8 2/8267
4 ( 21 x 4 − 14 x 2 + 1 ) / 8 (21 x^4 - 14 x^2 + 1)/8 (21x414x2+1)/8 ± 0.2892479703 = 16.57 3 ∘ ± 0.8711272375 = 49.91 2 ∘ ± π / 2 \pm0.289 247 9703=16.573^\circ\\\pm0.871 127 237 5=49.912^\circ\\\pm\pi/2 ±0.2892479703=16.573±0.8711272375=49.912±π/2 0.2774291885 0.1892374781 1 / 30 = 0.0333333333 0.277 429 1885\\0.189 237 4781\\1/30=0.033 333 3333 0.27742918850.18923747811/30=0.0333333333 2 k π / 9 ∗ 2k\pi/9^* 2/9389
5 ( 33 x 5 − 30 x 3 + 5 x ) / 8 (33 x^5 - 30 x^3 + 5 x)/8 (33x530x3+5x)/8 0 ± 0.4879869928 = 27.96 0 ∘ ± 0.9795092224 = 56.12 2 ∘ ± π / 2 0\\\pm0.487 986 992 8=27.960^\circ\\\pm0.979 509 222 4=56.122^\circ\\\pm \pi/2 0±0.4879869928=27.960±0.9795092224=56.122±π/2 128 / 525 = 0.2438095238 0.2158726906 0.1384130237 1 / 42 = 0.0238095238 128/525=0.243 809 523 8\\0.215 872 6906\\0.138 413 023 7\\1/42=0.023 809 5238 128/525=0.24380952380.21587269060.13841302371/42=0.0238095238 2 k π / 12 2k\pi/12 2/126211
6 ( 429 x 6 − 495 x 4 + 135 x 2 − 5 ) / 64 (429 x^6 - 495 x^4 + 135 x^2 - 5)/64 (429x6495x4+135x25)/64 ± 0.2108582499 = 12.08 1 ∘ ± 0.6331662051 = 36.27 8 ∘ ± 1.0587427294 = 60.66 1 ∘ ± π / 2 \pm0.210 858 2499=12.081^\circ\\\pm0.633 166 2051=36.278^\circ\\\pm1.058 742 7294=60.661^\circ\\\pm\pi/2 ±0.2108582499=12.081±0.6331662051=36.278±1.0587427294=60.661±π/2 0.2062293973 0.1705613462 0.1053521136 1 / 56 = 0.01785714286 0.206 229 3973\\0.170 561 346 2\\0.105 352 1136\\1/56=0.017 857 14286 0.20622939730.17056134620.10535211361/56=0.01785714286 2 k π / 1 3 ∗ 2k\pi/13^* 2/138013
7 ( 715 x 7 − 1001 x 5 + 385 x 3 − 35 x ) / 64 (715 x^7 - 1001 x^5 + 385 x^3 - 35 x)/64 (715x71001x5+385x335x)/64 0 ± 0.3716115607 = 21.29 2 ∘ ± 0.7439319041 = 42.62 4 ∘ ± 1.1192146362 = 64.12 6 ∘ ± π / 2 0\\\pm0.371 611 560 7=21.292^\circ\\\pm0.743 931 9041=42.624^\circ\\\pm1.119 214 6362=64.126^\circ\\\pm \pi/2 0±0.3716115607=21.292±0.7439319041=42.624±1.1192146362=64.126±π/2 2048 / 11025 = 0.1857596372 0.1732142555 0.1372693563 0.0827476808 1 / 72 = 0.0138888889 2048/11025=0.185 759 6372\\0.173 214 2555\\0.137 269 3563\\0.082 747 6808\\1/72=0.013 888 8889 2048/11025=0.18575963720.17321425550.13726935630.08274768081/72=0.0138888889 2 k π / 16 2k\pi/16 2/1611415
8 ( 2431 x 8 − 4004 x 6 + 2002 x 4 − 308 x 2 + 7 ) / 128 (2431 x^8 - 4004 x^6 + 2002 x^4 - 308 x^2 + 7)/128 (2431x84004x6+2002x4308x2+7)/128 ± 0.1660408523 = 9.51 3 ∘ ± 0.4982908852 = 28.55 0 ∘ ± 0.8312492225 = 47.62 7 ∘ ± 1.1668928829 = 66.85 8 ∘ ± π / 2 \pm0.166 040 8523=9.513^\circ\\\pm0.498 290 8852=28.550^\circ\\\pm0.831 249 2225=47.627^\circ\\\pm1.166 892 8829=66.858^\circ\\\pm\pi/2 ±0.1660408523=9.513±0.4982908852=28.550±0.8312492225=47.627±1.1668928829=66.858±π/2 0.1637698806 0.1460213418 0.1124446710 0.0666529954 1 / 90 = 0.0111111111 0.163 769 8806\\0.146 021 3418\\0.112 444 6710\\0.066 652 9954\\1/90=0.011 111 1111 0.16376988060.14602134180.11244467100.06665299541/90=0.0111111111 2 k π / 1 7 ∗ 2k\pi/17^* 2/1713817
9 ( 4199 x 9 − 7956 x 7 + 4914 x 5 − 1092 x 3 + 63 x ) / 128 (4199 x^9 - 7956 x^7 + 4914 x^5 - 1092 x^3 + 63 x)/128 (4199x97956x7+4914x51092x3+63x)/128 0 ± 0.3002490621 = 17.20 3 ∘ ± 0.6007184949 = 34.41 9 ∘ ± 0.9018627818 = 51.67 3 ∘ ± 1.2054537685 = 69.06 7 ∘ ± π / 2 0\\\pm0.300 249 0621=17.203^\circ\\\pm0.600 718 4949=34.419^\circ\\\pm0.901 862 7818=51.673^\circ\\\pm1.205 453 7685=69.067^\circ\\\pm \pi/2 0±0.3002490621=17.203±0.6007184949=34.419±0.9018627818=51.673±1.2054537685=69.067±π/2 32768 / 218295 = 0.1501087977 0.1434395624 0.1240240521 0.0935849409 0.0548061366 1 / 110 = 0.0090909091 32768/218295=0.150 108 797 7\\0.143 439 5624\\0.124 024 0521\\0.093 584 9409\\0.054 806 1366\\1/110=0.009 090 9091 32768/218295=0.15010879770.14343956240.12402405210.09358494090.05480613661/110=0.0090909091 2 k π / 20 2k\pi/20 2/2018219

备注:

  • 纬度值w为方程 F ( sin ⁡ ( w ) ) = 0 F(\sin(w))=0 F(sin(w))=0 的解,例如 5 sin ⁡ 2 ( 26.56 5 ∘ ) − 1 = 0 5 \sin^2(26.565^\circ)-1=0 5sin2(26.565)1=0
  • 经度数j至少为精度p。如果 p = 4 Z + 1 p=4Z+1 p=4Z+1,那么可以使经度数 j = p − 1 j=p-1 j=p1,此时要求当纬度值为正时,取经度 2 k π / j 2k\pi/j 2/j,为负时取经度 ( 2 k + 1 ) π / j (2k+1)\pi/j (2k+1)π/j
  • 上述表格中,精度3对应正八面体,精度5对应正二十面体。
  • A n ( x ) = 4 ( n + 1 ) ( n + 2 ) [ ( x 2 − 1 ) F n ′ ( x ) ] 2 , A n ( ± 1 ) = 1 ( n + 1 ) ( n + 2 ) A_n(x)=\frac{4}{(n+1)(n+2)[(x^2-1)F'_n(x)]^2},A_n(\pm 1)=\frac{1}{(n+1)(n+2)} An(x)=(n+1)(n+2)[(x21)Fn(x)]24An(±1)=(n+1)(n+2)1
  • ∫ − 1 1 ( 1 − x 2 ) F k ( x ) F n ( x ) d x = 0 , ( k ≠ n ) \int_{-1}^1 (1-x^2)F_k(x)F_n(x) dx = 0,(k \ne n) 11(1x2)Fk(x)Fn(x)dx=0,(k=n)
  • ∫ − 1 1 ( 1 − x 2 ) F n ( x ) 2 d x = 32 ( 2 n + 2 ) ( 2 n + 3 ) ( 2 n + 4 ) \int_{-1}^1 (1-x^2)F_n(x)^2 dx = \frac{32}{(2n+2)(2n+3)(2n+4)} 11(1x2)Fn(x)2dx=(2n+2)(2n+3)(2n+4)32
  • 这里强制带上了2个极点,如果不带极点,那结论会和 高斯-勒让德 规则一样,但样本数要多于带极点情况,因此不做讨论。

在这里插入图片描述

正多面体规则

如果按正多面体的顶点来采样,因对称性,每个顶点的权重都相等。

正四面体正八面体正方体正二十面体正十二面体截角正八面体
顶点数468122048
精度233557

备注:

  • 正多面体只有5种,无法扩展,无法得到更高精度的公式。
  • 表中的截角正八面体,顶点为 p e r m ( ± 0.2666354015 , ± 0.4225186538 , ± 0.8662468181 ) perm(\pm 0.266 635 401 5, \pm 0.422 518 653 8, \pm 0.866 246 8181) perm(±0.2666354015,±0.4225186538,±0.8662468181) (perm表示对参数全排列),这些分量都为方程 105 x 6 − 105 x 4 + 21 x 2 − 1 = 0 105x^6 - 105x^4+ 21x^2 - 1=0 105x6105x4+21x21=0的根。

Lebedev 规则

此规则由 Vyacheslav Lebedev 提出,具体可以查看以下文献:
Quadrature Cubed Sphere
sphere_lebedev_rule

精度样本数子样本数坐标权重
366 0 , 0 , 1 0,0,1 0,0,1 1 / 6 = 0.166666667 1/6=0.166 666 667 1/6=0.166666667
514 6 8 6\\8 68 0 , 0 , 1 0.577350269 , 0.577350269 , 0.577350269 0,0,1\\0.577350269,0.577350269,0.577350269 0,0,10.577350269,0.577350269,0.577350269 1 / 15 = 0.066666667 3 / 40 = 0.075 1/15=0.066 666 667\\3/40=0.075 1/15=0.0666666673/40=0.075
726 6 8 12 6\\8\\12 6812 0 , 0 , 1 0.577350269 , 0.577350269 , 0.577350269 0 , 0.707106781 , 0.707106781 0,0,1\\0.577350269,0.577350269,0.577350269\\0,0.707106781,0.707106781 0,0,10.577350269,0.577350269,0.5773502690,0.707106781,0.707106781 1 / 21 = 0.047619048 4 / 105 = 0.038095238 9 / 280 = 0.032142857 1/21=0.047 619 048\\4/105=0.038 095 238\\9/280=0.032 142 857 1/21=0.0476190484/105=0.0380952389/280=0.032142857
938 6 8 24 6\\8\\24 6824 0 , 0 , 1 0.577350269 , 0.577350269 , 0.577350269 0 , 0.459700843 , 0.888073834 0,0,1\\0.577350269,0.577350269,0.577350269\\0,0.459700843,0.888073834 0,0,10.577350269,0.577350269,0.5773502690,0.459700843,0.888073834 1 / 105 = 0.009523810 9 / 280 = 0.032142857 1 / 35 = 0.028571429 1/105=0.009 523 810\\9/280=0.032 142 857\\1/35=0.028 571 429 1/105=0.0095238109/280=0.0321428571/35=0.028571429
1150 6 8 12 24 6\\8\\12\\24 681224 0 , 0 , 1 0.577350269 , 0.577350269 , 0.577350269 0 , 0.707106781 , 0.707106781 0.301511345 , 0.301511345 , 0.904534034 0,0,1\\0.577350269,0.577350269,0.577350269\\0,0.707106781,0.707106781\\0.301511345 ,0.301511345,0.904534034 0,0,10.577350269,0.577350269,0.5773502690,0.707106781,0.7071067810.301511345,0.301511345,0.904534034 8 / 630 = 0.012698413 27 / 1280 = 0.021093750 64 / 2835 = 0.022574956 14641 / 725760 = 0.020173336 8/630=0.012698413\\27/1280=0.021093750\\64/2835=0.022574956\\14641/725760=0.020173336 8/630=0.01269841327/1280=0.02109375064/2835=0.02257495614641/725760=0.020173336
1374 6 8 12 24 24 6\\8\\12\\24\\24 68122424 0 , 0 , 1 0.577350269 , 0.577350269 , 0.577350269 0 , 0.707106781 , 0.707106781 0.480384461 , 0.480384461 , 0.733799386 0 , 0.320772649 , 0.947156221 0,0,1\\0.577350269,0.577350269,0.577350269\\0,0.707106781,0.707106781\\0.480384461 ,0.480384461,0.733799386\\0, 0.320772649, 0.947156221 0,0,10.577350269,0.577350269,0.5773502690,0.707106781,0.7071067810.480384461,0.480384461,0.7337993860,0.320772649,0.947156221 0.00051306718 − 0.02958603896 0.01660406957 0.02657620708 0.01652217099 0.000 513 06718\\-0.029 586 03896\\0.016 604 06957\\0.026 576 20708\\0.016 522 17099 0.000513067180.029586038960.016604069570.026576207080.01652217099
1586 6 8 24 24 24 6\\8\\24\\24\\24 68242424 0 , 0 , 1 0.577350269 , 0.577350269 , 0.577350269 0.369602846 , 0.369602846 , 0.852518312 0.694354007 , 0.694354007 , 0.189063553 0 , 0.374243039 , 0.927330657 0,0,1\\0.577350269,0.577350269,0.577350269\\0.369602846,0.369602846,0.852518312\\0.694354007,0.694354007,0.189063553\\0,0.374243039,0.927330657 0,0,10.577350269,0.577350269,0.5773502690.369602846,0.369602846,0.8525183120.694354007,0.694354007,0.1890635530,0.374243039,0.927330657 0.01154401154 0.01194390909 0.01111055571 0.01187650129 0.01181230375 0.011 544 011 54\\0.011 943 909 09\\0.011 110 55571\\0.011 876 50129\\0.011 812 30375 0.011544011540.011943909090.011110555710.011876501290.01181230375

备注:

  • 对所有精度: 0.577350269 = 1 / 3 , 0.707106781 = 1 / 2 0.577350269=\sqrt{1/3},0.707106781=\sqrt{1/2} 0.577350269=1/3 ,0.707106781=1/2
  • 精度9: 0.459700843 , 0.888073834 = ( 3 ∓ 3 ) / 6 0.459700843,0.888073834=\sqrt{(3\mp\sqrt{3})/6} 0.459700843,0.888073834=(33 )/6
  • 精度11: 0.301511345 = 1 / 11 , 0.904534034 = 3 / 11 0.301511345=\sqrt{1/11},0.904534034=\sqrt{3/11} 0.301511345=1/11 ,0.904534034=3/11
  • 精度13: 0.480384461 = 3 / 13 , 0.733799386 = 7 / 13 0.480384461=\sqrt{3/13},0.733799386=\sqrt{7/13} 0.480384461=3/13 ,0.733799386=7/13
    0.320772649 , 0.947156221 = ( 65 ∓ 2665 ) / 130 0.320772649,0.947156221=\sqrt{(65 \mp \sqrt{2665}) / 130} 0.320772649,0.947156221=(652665 )/130
  • 精度15: 0.374243039 , 0.927330657 = ( 39 ∓ 78 13 + 507 ) / 78 0.374243039,0.927330657=\sqrt{(39\mp\sqrt{78\sqrt{13} + 507})/78} 0.374243039,0.927330657=(397813 +507 )/78

在这里插入图片描述
与前面的其他积分规则相比, Lebedev 规则在同等精度下(除了精度5),所需要的样本数都是最少的。这也是后面球内积分首选的球内积分规则。

球内积分

I 3 ( R ) = ∭ D f ( x , y , z ) d V = V D ∑ i = 1 n A i ∯ ( r i R ) I_3(R)=\iiint_D f(x,y,z)dV=V_D\sum_{i=1}^n A_i \oiint(r_i R) I3(R)=Df(x,y,z)dV=VDi=1nAi (riR)
其中积分区域D为半径为R的球,其体积记为 V D V_D VD(实际上为 4 π R 3 / 3 4\pi R^3/3 4πR3/3)
∯ ( R ) \oiint(R) (R)表示区域为半径R的球面的积分,可以用与 I 3 ( R ) I_3(R) I3(R)精度相同的数值积分值作为代替。根据上述结论,可以用Lebedev 规则来计算球面积分。

牛顿-柯斯特规则

层数精度rA采样数
11011
23 0 1 0\\1 01 2 / 5 3 / 5 2/5\\3/5 2/53/57
35 0 1 / 2 1 0\\1/2\\1 01/21 − 2 / 7 32 / 35 13 / 35 -2/7\\32/35\\13/35 2/732/3513/3525
47 0 1 / 3 2 / 3 1 0\\1/3\\2/3\\1 01/32/31 2 / 5 − 81 / 140 162 / 175 177 / 700 2/5\\-81/140\\162/175\\177/700 2/581/140162/175177/70079
59 0 1 / 4 2 / 4 3 / 4 1 0\\1/4\\2/4\\3/4\\1 01/42/43/41 − 74 / 99 69376 / 51975 − 33632 / 51975 15104 / 17325 9769 / 51975 -74/99\\69376/51975\\-33632/51975\\15104/17325\\9769/51975 74/9969376/5197533632/5197515104/173259769/51975153
611 0 1 / 5 2 / 5 3 / 5 4 / 5 1 0\\1/5\\2/5\\3/5\\4/5\\1 01/52/53/54/51 26927 / 16380 − 614975 / 216216 126275 / 63063 − 769025 / 1009008 1843925 / 2270268 6718091 / 45405360 26927/16380\\-614975/216216\\126275/63063\\-769025/1009008\\1843925/2270268\\6718091/45405360 26927/16380614975/216216126275/63063769025/10090081843925/22702686718091/45405360251

高斯规则

n特征多项式 F n ( r ) F_n(r) Fn(r) r i r_i ri A i A_i Ai精度最少采样数
1 r r r0111
2 ( 5 r 2 − 3 ) / 2 (5 r^2-3)/2 (5r23)/2 0.7745966692 0.774 596 669 2 0.7745966692136
3 ( 7 r 3 − 5 r ) / 2 (7 r^3-5r)/2 (7r35r)/2 0 0.8451542547 0\\0.845 154 254 7 00.8451542547 4 / 25 = 0.16 21 / 25 = 0.84 4/25=0.16\\21/25=0.84 4/25=0.1621/25=0.84513
4 ( 63 r 4 − 70 r 2 + 15 ) / 8 (63 r^4-70 r^2+15)/8 (63r470r2+15)/8 0.5384693101 0.9061798459 0.538 469 310 1\\0.906 179 845 9 0.53846931010.9061798459 0.4163339973 0.5836660027 0.416 333 997 3\\0.583 666 002 7 0.41633399730.5836660027752
5 ( 99 r 5 − 126 r 3 + 35 r ) / 8 (99 r^5 - 126 r^3 + 35 r)/8 (99r5126r3+35r)/8 0 0.6399972828 0.9290483038 0\\0.639 997 282 8\\0.929 048 303 8 00.63999728280.9290483038 64 / 1225 = 0.0522448980 0.4807499830 0.4670051191 64/1225=0.052 244 898 0\\0.480 749 983 0\\0.467 005 119 1 64/1225=0.05224489800.48074998300.4670051191977
6 ( 429 r 6 − 693 r 4 + 315 r 2 − 35 ) / 16 (429 r^6-693 r^4+315 r^2-35)/16 (429r6693r4+315r235)/16 0.4058451514 0.7415311856 0.9491079123 0.405 845 151 4\\0.741 531 185 6\\0.949 107 912 3 0.40584515140.74153118560.9491079123 0.1886740115 0.4614035515 0.3499224370 0.188 674 011 5\\0.461 403 551 5\\0.349 922 437 0 0.18867401150.46140355150.349922437011150
7 ( 715 r 7 − 1287 r 5 + 693 r 3 − 105 r ) / 16 (715 r^7-1287 r^5 + 693 r^3-105 r)/16 (715r71287r5+693r3105r)/16 0 0.5056316101 0.7901728521 0.9591472977 0\\0.505 631 610 1\\0.790 172 852 1\\0.959 147 297 7 00.50563161010.79017285210.9591472977 256 / 11025 = 0.0232199546 0.2573443778 0.4318411585 0.2875945090 256/11025=0.023 219 954 6\\0.257 344 377 8\\0.431 841 158 5\\0.287 594 509 0 256/11025=0.02321995460.25734437780.43184115850.287594509013223
8 ( 12155 r 8 − 25740 r 6 + 18018 r 4 − 4620 r 2 + 315 ) / 128 (12155 r^8-25740 r^6+18018 r^4-4620 r^2+315)/128 (12155r825740r6+18018r44620r2+315)/128 0.3242534234 0.6133714327 0.8360311073 0.9681602395 0.324 253 423 4\\0.613 371 432 7\\0.836 031 107 3\\0.968 160 239 5 0.32425342340.61337143270.83603110730.9681602395 0.0985207798 0.2941443981 0.3787910186 0.2285438034 0.098 520 779 8\\0.294 144 398 1\\0.378 791 018 6\\0.228 543 803 4 0.09852077980.29414439810.37879101860.228543803415344

这里有:

  • A n ( x ) = 6 ( 1 − x 2 ) F n ′ ( x ) 2 A_n(x)=\frac{6}{(1-x^2)F'_n(x)^2} An(x)=(1x2)Fn(x)26
  • ∫ 0 1 x 2 F n ( x ) F n + 2 k ( x ) d x = 0 , ( k ∈ Z , k ≠ 0 ) \int_0^1 x^2 F_n(x) F_{n+2k}(x) dx=0,(k\in Z,k\ne 0) 01x2Fn(x)Fn+2k(x)dx=0,(kZ,k=0)
  • ∫ 0 1 x 2 F n ( x ) 2 d x = 1 2 n + 3 \int_0^1 x^2 F_n(x)^2 dx=\frac{1}{2n+3} 01x2Fn(x)2dx=2n+31

附录:相关定积分公式

单位圆周

I Ω ( p , q ) = ∬ Ω x p y q d s I_Ω(p,q)=\iint_\Omega x^py^q ds IΩ(p,q)=Ωxpyqds, Ω \Omega Ω是单位圆周。有:
I Ω ( p , q ) = I Ω ( q , p ) I Ω ( p , q ) = p − 1 p + q I Ω ( p − 2 , q ) , p ≥ 2 I Ω ( 0 , 0 ) = 2 π I_Ω(p,q)=I_Ω(q,p)\\ I_Ω(p,q)=\frac{p-1}{p+q}I_Ω(p-2,q),p\ge 2\\ I_Ω(0,0)=2\pi IΩ(p,q)=IΩ(q,p)IΩ(p,q)=p+qp1IΩ(p2,q),p2IΩ(0,0)=2π
如果 p , q p,q p,q 存在奇数,则 I Ω ( p , q ) = 0 I_Ω(p,q)=0 IΩ(p,q)=0

单位球面

I Ω ( p , q , r ) = ∬ Ω x p y q z r d S I_Ω(p,q,r)=\iint_\Omega x^py^qz^r dS IΩ(p,q,r)=ΩxpyqzrdS, Ω \Omega Ω是单位球面。有:
I Ω ( p , q , r ) = I Ω ( q , p , r ) = I Ω ( p , r , q ) I Ω ( p , q , r ) = p − 1 p + q + r + 1 I Ω ( p − 2 , q , r ) , p ≥ 2 I Ω ( 0 , 0 , 0 ) = 4 π I_Ω(p,q,r)=I_Ω(q,p,r)=I_Ω(p,r,q)\\ I_Ω(p,q,r)=\frac{p-1}{p+q+r+1}I_Ω(p-2,q,r),p\ge 2\\ I_Ω(0,0,0)=4\pi IΩ(p,q,r)=IΩ(q,p,r)=IΩ(p,r,q)IΩ(p,q,r)=p+q+r+1p1IΩ(p2,q,r),p2IΩ(0,0,0)=4π
如果 p , q , r p,q,r p,q,r 存在奇数,则 I Ω ( p , q , r ) = 0 I_Ω(p,q,r)=0 IΩ(p,q,r)=0

单位圆

I ⊙ ( p , q ) = ∬ ⊙ x p y q d S I_\odot (p,q)=\iint_\odot x^py^q dS I(p,q)=xpyqdS, ⊙ \odot 是单位圆。有:
I ⊙ ( p , q ) = I ⊙ ( q , p ) I ⊙ ( p , q ) = p − 1 p + q + 2 I Ω ( p − 2 , q ) , p ≥ 2 I ⊙ ( 0 , 0 ) = π I_\odot(p,q)=I_\odot(q,p)\\ I_\odot(p,q)=\frac{p-1}{p+q+2}I_Ω(p-2,q),p \ge 2\\ I_\odot(0,0)=\pi I(p,q)=I(q,p)I(p,q)=p+q+2p1IΩ(p2,q)p2I(0,0)=π
如果 p , q p,q p,q 存在奇数,则 I ⊙ ( p , q ) = 0 I_\odot(p,q)=0 I(p,q)=0

单位球

I ⊙ ( p , q , r ) = ∭ ⊙ x p y q z r d V I_\odot (p,q,r)=\iiint_\odot x^py^qz^r dV I(p,q,r)=xpyqzrdV, ⊙ \odot 是单位球。有:
I ⊙ ( p , q , r ) = I ⊙ ( q , p , r ) = I ⊙ ( p , r , q ) I_\odot (p,q,r)=I_\odot(q,p,r)=I_\odot(p,r,q) I(p,q,r)=I(q,p,r)=I(p,r,q)
I ⊙ ( p , q , r ) = p − 1 p + q + r + 3 I ⊙ ( p − 2 , q , r ) , p ≥ 2 I_\odot(p,q,r)=\frac{p-1}{p+q+r+3}I_\odot(p-2,q,r),p \ge 2 I(p,q,r)=p+q+r+3p1I(p2,q,r)p2
I ⊙ ( 0 , 0 , 0 ) = 4 π / 3 I_\odot(0,0,0)=4\pi/3 I(0,0,0)=4π/3
如果 p , q , r p,q,r p,q,r 存在奇数,则 I ⊙ ( p , q , r ) = 0 I_\odot(p,q,r)=0 I(p,q,r)=0

相关Python代码如下:

import sympy

# 圆周
def integrate_circle(p, q):
    if p % 2 == 1 or q % 2 == 1:
    	return 0
    if p == 0:
        if q == 0:
        	return sympy.pi*2
        return integrate_circle(q, 0)
    return integrate_circle(p-2, q)*(p-1)/(p+q)

# 球面
def integrate_sphere_face(p, q, r):
    if p % 2 == 1 or q % 2 == 1 or r % 2 == 1:
    	return 0
    if p == 0:
        if q == 0 and r == 0:
            return sympy.pi*4
        return integrate_sphere_face(q, r, 0)
    return integrate_sphere_face(p-2, q, r)*(p-1)/(p+q+r+1)

# 圆内
def integrate_disk(p, q):
    if p % 2 == 1 or q % 2 == 1:
    	return 0
    if p == 0:
        if q == 0:
        	return sympy.pi
        return integrate_disk(q, 0)
    return integrate_disk(p-2, q)*(p-1)/(p+q+2)

# 球内
def integrate_sphere(p, q, r):
    if p % 2 == 1 or q % 2 == 1 or r % 2 == 1:
    	return 0
    if p == 0:
        if q == 0 and r == 0:
            return sympy.pi*4/3
        return integrate_sphere(q, r, 0)
    return integrate_sphere(p-2, q, r)*(p-1)/(p+q+r+3)
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值