誤差函數

在數學中，誤差函數（Error function）是一個特殊函數，符號$\operatorname{erf}$。誤差函數在機率論，統計學以及偏微分方程中都有廣泛的應用。它的定義如下：

$$\operatorname{erf}(x) = \frac{1}{\sqrt\pi}\int_{-x}^x e^{-t^2} \,\mathrm{d}t=\frac{2}{\sqrt{\pi}}\int_0^x e^{-t^2}\,\mathrm dt.$$

<image>

<image>

## 分類

互補誤差函數，記為 erfc，在誤差函數的基礎上定義：

$$\mbox{erfc}(x) = 1-\mbox{erf}(x) = \frac{2}{\sqrt{\pi}} \int_x^{\infty} e^{-t^2}\,\mathrm dt\,.$$

虛誤差函數，記為 erfi，定義為：

$$\operatorname{erfi}(z) = -i\,\,\operatorname{erf}(i\,z).$$

複誤差函數，記為w(z)，也在誤差函數的基礎上定義：

$$w(z) = e^{-z^2}{\textrm{erfc}}(-iz).$$

## 詞源

誤差函數來自測度論，後來與測量誤差無關的其他領域也用到這一函數，但仍然使用誤差函數這一名字。

誤差函數與標準正態分布的積分累積分布函數$\Phi$的關係為

$$\Phi (x) = \frac{1}{2}+ \frac{1}{2} \operatorname{erf} \left(\frac{x}{\sqrt{2}}\right).$$

## 性質

誤差函數是奇函數：

$$\operatorname{erf} (-z) = -\operatorname{erf} (z)$$

對於任何 複數 z:

$$\operatorname{erf} (\overline{z}) = \overline{\operatorname{erf}(z)}$$

其中 $\overline{z}$ 表示 z的 復共軛。

複平面上，函數 ƒ = exp(−z2) 和 ƒ = erf(z) 如圖所示。粗綠線表示 Im(ƒ) = 0，粗紅線表示 Im(ƒ) 0。細綠線表示 Im(ƒ) = constant，細紅線表示 Re(ƒ) = constant0。

在實軸上， z → ∞時，erf(z) 趨於1，z → −∞時，erf(z) 趨於−1。在虛軸上， erf(z) 趨於 ±i∞。

### 泰勒級數

誤差函數是整函數，沒有奇點（無窮遠處除外），泰勒展開收斂。

誤差函數泰勒級數：

$$\operatorname{erf}(z)= \frac{2}{\sqrt{\pi}}\sum_{n=0}^\infin\frac{(-1)^n z^{2n+1}}{n! (2n+1)} =\frac{2}{\sqrt{\pi}} \left(z-\frac{z^3}{3}+\frac{z^5}{10}-\frac{z^7}{42}+\frac{z^9}{216}-\ \cdots\right)$$

對每個複數 z均成立。

上式可以用迭代形式表示：

$$\operatorname{erf}(z)= \frac{2}{\sqrt{\pi}}\sum_{n=0}^\infin\left(z \prod_{k=1}^n {\frac{-(2k-1) z^2}{k (2k+1)}}\right) = \frac{2}{\sqrt{\pi}} \sum_{n=0}^\infin \frac{z}{2n+1} \prod_{k=1}^n \frac{-z^2}{k}$$

誤差函數的導數：

$$\frac{\rm d}{{\rm d}z}\,\mathrm{erf}(z)=\frac{2}{\sqrt{\pi}}\,e^{-z^2}.$$

誤差函數的 不定積分為：

$$z\,\operatorname{erf}(z) + \frac{e^{-z^2}}{\sqrt{\pi}}$$

### 逆函數

<image>

逆誤差函數 可由 麥克勞林級數表示：

$$\operatorname{erf}^{-1}(z)=\sum_{k=0}^\infin\frac{c_k}{2k+1}\left (\frac{\sqrt{\pi}}{2}z\right )^{2k+1}, \,\!$$

其中， c0 = 1。

$$c_k=\sum_{m=0}^{k-1}\frac{c_m c_{k-1-m}}{(m+1)(2m+1)} = \left\{1,1,\frac{7}{6},\frac{127}{90},\frac{4369}{2520},\ldots\right\}.$$

即：

$$\operatorname{erf}^{-1}(z)=\tfrac{1}{2}\sqrt{\pi}\left (z+\frac{\pi}{12}z^3+\frac{7\pi^2}{480}z^5+\frac{127\pi^3}{40320}z^7+\frac{4369\pi^4}{5806080}z^9+\frac{34807\pi^5}{182476800}z^{11}+\cdots\right ).\ $$

逆互補誤差函數定義為：

$$\operatorname{erfc}^{-1}(1-z) = \operatorname{erf}^{-1}(z).$$

### 漸近展開

互補誤差函數的漸近展開。

$$\mathrm{erfc}(x) = \frac{e^{-x^2}}{x\sqrt{\pi}}\left [1+\sum_{n=1}^\infty (-1)^n \frac{1\cdot3\cdot5\cdots(2n-1)}{(2x^2)^n}\right ]=\frac{e^{-x^2}}{x\sqrt{\pi}}\sum_{n=0}^\infty (-1)^n \frac{(2n-1)

}{(2x^2)^n},\,$$

其中 (2n – 1)

為 雙階乘，x為實數，該級數對有限 x發散。對於$N\in\N$，有

$$\mathrm{erfc}(x) = \frac{e^{-x^2}}{x\sqrt{\pi}}\sum_{n=0}^{N-1} (-1)^n \frac{(2n-1)

}{(2x^2)^n}+ R_N(x) \,$$ 其中餘項用以 大O符號表示為

$R_N(x)=O(x^{-2N+1} e^{-x^2})$ as $x\to\infty$.

餘項的精確形式為：

$$R_N(x):= \frac{(-1)^N}{\sqrt{\pi}}2^{-2N+1}\frac{(2N)!}{N!}\int_x^\infty t^{-2N}e^{-t^2}\,\mathrm dt,$$

對於比較大的 x, 只需漸近展開中開始的幾項就可以得到 erfc(x)很好的近似值。

### 連分式展開

互補誤差函數的連分式展開形式：

$$\mathrm{erfc}(z) = \frac{z}{\sqrt{\pi}}e^{-z^2} \cfrac{a_1}{z^2+ \cfrac{a_2}{1+ \cfrac{a_3}{z^2+ \cfrac{a_4}{1+\dotsb}}}} \qquad a_1 = 1,\quad a_m = \frac{m-1}{2},\quad m \geq 2.$$

## 初等函數近似表達式

$\operatorname{erf}(x)\approx 1-\frac{1}{(1+a_1x+a_2x^2+a_3x^3+a_4x^4)^4}$ (最大誤差： 5·10−4)

其中， a1 = 0.278393, a2 = 0.230389, a3 = 0.000972, a4 = 0.078108

$\operatorname{erf}(x)\approx 1-(a_1t+a_2t^2+a_3t^3)e^{-x^2},\quad t=\frac{1}{1+px}$ (最大誤差：2.5·10−5)

其中， p = 0.47047, a1 = 0.3480242, a2 = −0.0958798, a3 = 0.7478556

$\operatorname{erf}(x)\approx 1-\frac{1}{(1+a_1x+a_2x^2+\cdots+a_6x^6)^{16}}$ (最大誤差： 3·10−7)

其中， a1 = 0.0705230784, a2 = 0.0422820123, a3 = 0.0092705272, a4 = 0.0001520143, a5 = 0.0002765672, a6 = 0.0000430638

$\operatorname{erf}(x)\approx 1-(a_1t+a_2t^2+\cdots+a_5t^5)e^{-x^2},\quad t=\frac{1}{1+px}$ (最大誤差： 1.5·10−7)

其中， p = 0.3275911, a1 = 0.254829592, a2 = −0.284496736, a3 = 1.421413741, a4 = −1.453152027, a5 = 1.061405429

以上所有近似式適用範圍是： x ≥ 0. 對於負的 x, 誤差函數是奇函數這一性質得到誤差函數的值， erf(x) = −erf(−x).

另有近似式：

$$\operatorname{erf}(x)\approx \sgn(x) \sqrt{1-\exp\left(-x^2\frac{4/\pi+ax^2}{1+ax^2}\right)}$$

其中。

$$a = \frac{8(\pi-3)}{3\pi(4-\pi)} \approx 0.140012.$$

該近似式在0或無窮的鄰域非常準確，x整個定義域上，近似式最大誤差小於0.00035，取 a ≈ 0.147，最大誤差可減小到0.00012。

逆誤差函數近似式:

$$\operatorname{erf}^{-1}(x)\approx \sgn(x) \sqrt{\sqrt{\left(\frac{2}{\pi a}+\frac{\ln(1-x^2)}{2}\right)^2 - \frac{\ln(1-x^2)}{a}} -\left(\frac{2}{\pi a}+\frac{\ln(1-x^2)}{2}\right)}.$$

## 數值近似

下式在整個定義域上，最大誤差可低至 $1.2\cdot10^{-7}$：

$$\operatorname{erf}(x)=\begin{cases} 1-\tau & \mathrm{for\;}x\ge 0\\ \tau-1 & \mathrm{for\;}x < 0 \end{cases}$$

其中。

$$\begin{array}{rcl} \tau & = & t\cdot\exp\left(-x^{2}-1.26551223+1.00002368\cdot t+0.37409196\cdot t^{2}+0.09678418\cdot t^{3}\right.\\ <pre> & & \qquad-0.18628806\cdot t^{4}+0.27886807\cdot t^{5}-1.13520398\cdot t^{6}+1.48851587\cdot t^7\\ & & \qquad\left.-0.82215223\cdot t^{8}+0.17087277\cdot t^{9}\right) </pre> \end{array}$$

$$t=\frac{1}{1+0.5\,|x|}$$

## 與其他函數的關係

誤差函數本質上與標準正態累積分布函數$\Phi$是等價的。

$$\Phi(x) =\frac{1}{\sqrt{2\pi}}\int_{-\infty}^x e^\tfrac{-t^2}{2}\,\mathrm dt = \frac{1}{2}\left[1+\operatorname{erf}\left(\frac{x}{\sqrt{2}}\right)\right]=\frac{1}{2}\,\operatorname{erfc}\left(-\frac{x}{\sqrt{2}}\right)$$

可整理為如下形式：

$$\begin{align} \mathrm{erf}(x) &= 2 \Phi \left ( x \sqrt{2} \right ) - 1 \\ \mathrm{erfc}(x) &= 2 \Phi \left ( - x \sqrt{2} \right )=2\left(1-\Phi \left ( x \sqrt{2} \right)\right). \end{align}$$

$\Phi$的逆函數為正態分位函數，即機率單位函數。

$$\operatorname{probit}(p) = \Phi^{-1}(p) = \sqrt{2}\,\operatorname{erf}^{-1}(2p-1) = -\sqrt{2}\,\operatorname{erfc}^{-1}(2p).$$

誤差函數為標準正態分布的尾機率Q函數的關係為。

$$Q(x) =\frac{1}{2} - \frac{1}{2} \operatorname{erf} \left( \frac{x}{\sqrt{2}} \right)=\frac{1}{2}\operatorname{erfc}\left(\frac{x}{\sqrt{2}}\right).$$

誤差函數是米塔-列夫勒函數的特例，可以表示為合流超幾何函數。

$$\mathrm{erf}(x)= \frac{2x}{\sqrt{\pi}}\,_1F_1\left(\tfrac12,\tfrac32,-x^2\right).$$

誤差函數用正則Γ函數P和 不完全Γ函數表示為

$$\operatorname{erf}(x)=\operatorname{sgn}(x) P\left(\tfrac12, x^2\right)={\operatorname{sgn}(x) \over \sqrt{\pi}}\gamma\left(\tfrac12, x^2\right).$$

$\scriptstyle\operatorname{sgn}(x) \ $ 為 符號函數.

### 廣義誤差函數

<image>

廣義誤差函數為：

$$E_n(x) = \frac{n!}{\sqrt{\pi}} \int_0^x e^{-t^n}\,\mathrm dt =\frac{n!}{\sqrt{\pi}}\sum_{p=0}^\infin(-1)^p\frac{x^{np+1}}{(np+1)p!}\,.$$

其中，E0(x)為通過原點的直線， $\scriptstyle E_0(x)=\frac{x}{e \sqrt{\pi}}$。E2(x) 即為誤差函數 erf(x)。

x > 0時，廣義誤差函數可以用Γ函數和 不完全Γ函數表示。

$$E_n(x) = \frac{\Gamma(n)\left(\Gamma\left(\frac{1}{n}\right)-\Gamma\left(\frac{1}{n},x^n\right)\right)}{\sqrt\pi}, \quad \quad x>0.\ $$

因此，誤差函數可以用不完全Γ函數表示為：

$$\operatorname{erf}(x) = 1 - \frac{\Gamma\left(\frac{1}{2},x^2\right)}{\sqrt\pi}.\ $$

### 互補誤差函數的迭代積分

互補誤差函數的迭代積分定義為：

$$\mathrm i^n \operatorname{erfc}\, (z) = \int_z^\infty \mathrm i^{n-1} \operatorname{erfc}\, (\zeta)\;\mathrm d \zeta.\,$$

可以展開成冪級數：

$$\mathrm i^n \operatorname{erfc}\, (z) = <pre> \sum_{j=0}^\infty \frac{(-z)^j}{2^{n-j}j! \Gamma \left( 1 + \frac{n-j}{2}\right)}\,, </pre>$$

滿足如下對稱性質：

$$\mathrm i^{2m} \operatorname{erfc} (-z) = - \mathrm i^{2m} \operatorname{erfc}\, (z) + \sum_{q=0}^m \frac{z^{2q}}{2^{2(m-q)-1}(2q)! (m-q)!}$$

和

$$\mathrm i^{2m+1} \operatorname{erfc} (-z) = \mathrm i^{2m+1} \operatorname{erfc}\, (z) + \sum_{q=0}^m \frac{z^{2q+1}}{2^{2(m-q)-1}(2q+1)! (m-q)!}\,.$$

## 函數表

x｜erf(x)｜erfc(x)｜x｜erf(x)｜erfc(x) 0.00｜0.0000000｜1.0000000｜1.30｜0.9340079｜0.0659921 0.05｜0.0563720｜0.9436280｜1.40｜0.9522851｜0.0477149 0.10｜0.1124629｜0.8875371｜1.50｜0.9661051｜0.0338949 0.15｜0.1679960｜0.8320040｜1.60｜0.9763484｜0.0236516 0.20｜0.2227026｜0.7772974｜1.70｜0.9837905｜0.0162095 0.25｜0.2763264｜0.7236736｜1.80｜0.9890905｜0.0109095 0.30｜0.3286268｜0.6713732｜1.90｜0.9927904｜0.0072096 0.35｜0.3793821｜0.6206179｜2.00｜0.9953223｜0.0046777 0.40｜0.4283924｜0.5716076｜2.10｜0.9970205｜0.0029795 0.45｜0.4754817｜0.5245183｜2.20｜0.9981372｜0.0018628 0.50｜0.5204999｜0.4795001｜2.30｜0.9988568｜0.0011432 0.55｜0.5633234｜0.4366766｜2.40｜0.9993115｜0.0006885 0.60｜0.6038561｜0.3961439｜2.50｜0.9995930｜0.0004070 0.65｜0.6420293｜0.3579707｜2.60｜0.9997640｜0.0002360 0.70｜0.6778012｜0.3221988｜2.70｜0.9998657｜0.0001343 0.75｜0.7111556｜0.2888444｜2.80｜0.9999250｜0.0000750 0.80｜0.7421010｜0.2578990｜2.90｜0.9999589｜0.0000411 0.85｜0.7706681｜0.2293319｜3.00｜0.9999779｜0.0000221 0.90｜0.7969082｜0.2030918｜3.10｜0.9999884｜0.0000116 0.95｜0.8208908｜0.1791092｜3.20｜0.9999940｜0.0000060 1.00｜0.8427008｜0.1572992｜3.30｜0.9999969｜0.0000031 1.10｜0.8802051｜0.1197949｜3.40｜0.9999985｜0.0000015 1.20｜0.9103140｜0.0896860｜3.50｜0.9999993｜0.0000007 : x｜erfc(x)/2 1｜7.86496e−2 2｜2.33887e−3 3｜1.10452e−5 4｜7.70863e−9 5｜7.6873e−13 6｜1.07599e−17 7｜2.09191e−23 8｜5.61215e−30 9｜2.06852e−37 10｜1.04424e−45 11｜7.20433e−55 12｜6.78131e−65 13｜8.69779e−76 14｜1.51861e−87 15｜3.6065e−100 16｜1.16424e−113 17｜5.10614e−128 18｜3.04118e−143 19｜2.45886e−159 20｜2.69793e−176 21｜4.01623e−194 22｜8.10953e−213 23｜2.22063e−232 24｜8.24491e−253 25｜4.15009e−274 26｜2.8316e−296 27｜2.61855e−319