誤差関数

誤差関数 (Error Function)



誤差関数は、数学におけるシグモイド形状の特殊関数であり、確率論、統計学、物質科学、偏微分方程式など、広範な分野で重要な役割を果たします。ガウスの誤差関数とも呼ばれます。

定義



誤差関数は、一般に `erf(x)` と表記され、以下の積分で定義されます。

math
\operatorname{erf}(x) = \frac{2}{\sqrt{\pi}} \int_{0}^{x} e^{-t^2} dt


また、相補誤差関数 (complementary error function) は `erfc(x)` と表記され、誤差関数を用いて以下のように定義されます。

math
\operatorname{erfc}(x) = 1 - \operatorname{erf}(x)


スケーリング相補誤差関数 (scaled complementary error function) `erfcx(x)` も定義され、アンダーフローを避けるために `erfc(x)` の代わりに用いられます。

複素誤差関数 (complex error function) は `w(x)` と表記され、次のように定義されます(Faddeeva関数とも呼ばれます)。

特性



奇関数: 誤差関数は奇関数であり、`erf(-z) = -erf(z)` が成り立ちます。
複素共役: 任意の複素数 `z` について、`erf(z) = erf(z)` が成り立ちます。ここで `z` は `z` の複素共役を表します。
漸近挙動: 実軸上では、`z → ∞` で `erf(z)` は 1 に漸近し、`z → -∞` で -1 に漸近します。虚軸上では、`±i∞` となります。

テイラー級数



誤差関数は整関数であり、特異点を持ちません。テイラー展開は常に収束し、以下のようになります。

math
\operatorname{erf}(z) = \frac{2}{\sqrt{\pi}} \sum_{n=0}^{\infty} \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} + \cdots\right)


この級数は、反復的に計算することで効率的に求めることができます。

逆関数



逆誤差関数は、次の級数で表されます。

応用



確率論・統計学: 正規分布に従う測定値の誤差範囲の確率を求める際に用いられます。
熱方程式: 境界条件が階段関数で与えられた熱方程式の解として現れます。
エバルトの方法: クーロン力などの長距離相互作用を短距離成分と長距離成分に分割する際に用いられます。

漸近展開



相補誤差関数の大きな `x` についての漸近展開は以下のようになります。

math
\operatorname{erfc}(x) \sim \frac{e^{-x^2}}{x\sqrt{\pi}} \left[1 + \sum_{n=1}^{\infty} (-1)^n \frac{1 \cdot 3 \cdot 5 \cdots (2n-1)}{(2x^2)^n} \right]


この級数は発散しますが、最初の数項で良い近似が得られます。

関連する関数



正規分布累積分布関数 (CDF): 誤差関数と密接な関係があり、スケールと解釈が異なるだけです。
Q関数: 正規分布におけるテール確率を表し、誤差関数を用いて表現できます。
ミッタク=レフラー関数: 誤差関数はミッタク=レフラー関数の特殊ケースです。
フレネル積分: 誤差関数を使った表現が可能です。

一般化された誤差関数



より一般化された誤差関数も存在し、`n` の値によって異なる関数が得られます。

実装



多くのプログラミング言語で、誤差関数を計算するための関数が提供されています。

C言語: C99規格で `` ヘッダファイルに `erf(double x)` および `erfc(double x)` 関数が宣言されています。
C++: C++11規格で `` ヘッダファイルに `erf` および `erfc` が宣言されており、`double`、`float`、`long double` 型がオーバーロードされています。
FORTRAN: GFortran が `ERF(X)` と倍精度の `DERF(X)` を提供しています。

数表



誤差関数の値は、数表としてまとめられていることもあります。

まとめ



誤差関数は、数学、物理学、工学など、様々な分野で応用される重要な特殊関数です。その定義、特性、級数展開、関連関数を理解することで、より高度な問題解決に役立てることができます。

もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。