誤差関数
誤差関数（ごさかんすう、）は、数学におけるシグモイド形状の特殊関数（非初等関数）の一種で、確率論、統計学、物質科学、偏微分方程式などで使われる。ガウスの誤差関数とも。定義は以下の通り。
相補誤差関数 (complementary error function) は "erfc" と表記され、誤差関数を使って以下のように定義される。
スケーリング相補誤差関数(scaled complementary error function) "erfcx"も定義される
(アンダーフローを避けるために、 erfc の代わりに用いる)。
複素誤差関数 (complex error function) はformula_1と表記され、やはり誤差関数を使って次のように定義される（Faddeeva関数とも呼ぶ）。
誤差関数は奇関数である。
任意の複素数formula_2について、
また、次が成り立つ。
ここでformula_3はformula_2の複素共役である。
被積分関数formula_5とformula_6を複素formula_7平面にプロットしたものを図2と図3に示す。
虚部formula_8となる点を結んだ線を太い緑色の線で表している。formula_9が負の整数となる点を結んだ線を太い赤色の線で表し、正の整数となる点を結んだ線を太い青色の線で表している。
formula_9が整数と整数の中間の一定値になる点を結んだ線を細い緑色の線で表し、実部formula_11が一定値になる点を結んだ線は、正の場合は青い細い線、負の場合は赤い細い線で表している。
実軸では、formula_12でformula_13は単位元(1)に漸近し、formula_14で単位元(-1)に漸近する。虚軸では、formula_15 となる。
誤差関数は整関数である。（無限大以外で）特異点を持たず、テイラー展開は常に収束する。
定義にある積分は初等関数を使った閉形式では評価できないが、被積分関数formula_16 を対応するテイラー級数に展開して、項単位で積分すると、誤差関数のテイラー級数が以下のように得られる。
これは全ての複素数formula_2について成り立つ。項の分母はOEISにある A007680 の数列である。
これを反復的に計算するには、以下のように定式化するのが扱い易い。
formula_18はformula_19番目の項からformula_20番目の項を得る係数を表している。
formula_13やformula_22とformula_5を比較するには、次の級数が利用できる。
formula_24において誤差関数は正確に1になる（ガウス積分を参照）。
誤差関数の導関数は定義から即座に求められる。
誤差関数の不定積分は次のようになる。
逆誤差関数は次のような級数となる。
ここで、formula_25であり、
となる。従って、次のような級数の展開が得られる（分子と分母に共通して出現する係数は省いてある）。
（約分後の分子/分母の係数はOEISの A092676/A132467 と同じで、約分していない分子は A002067 となる。）
なお、誤差関数の正と負の無限大での値はそれぞれ正と負のformula_26となる。
一連の何らかの測定値が正規分布になっていて、標準偏差が formula_27、期待値がformula_28の場合、1つの測定値の誤差がformula_29とformula_30の間になる確率はformula_31である。これは、例えば、デジタル通信システムでの符号誤り率の特定などに使える。
誤差関数と相補誤差関数は例えば、境界条件をヘヴィサイドの階段関数で与えたときの熱方程式の解に出現する。
相補誤差関数（および誤差関数）の大きなformula_32についての漸近展開は次のようになる。
この級数は有限なformula_32については発散する。しかし、最初の方の幾つかの項だけでformula_34のよい近似が得られ、テイラー展開よりも収束が早い。
次のような近似がある。
このような近似（曲線あてはめ）は、実軸付近の誤差関数の値について、少なくとも十進で1桁の精度はある。
誤差関数は正規分布の累積分布関数(CDF)formula_35と基本的には同じであり、単にスケールと解釈が異なるだけである。実際、標準正規分布について次の関係が成り立つ。
また、formula_36およびformula_37について変形すると次のようになる。
従って、誤差関数は、正規分布におけるテール確率であるQ関数とも密接に関連する。Q関数は誤差関数を使って次のように表現できる。
formula_38の逆関数は標準分位関数またはプロビット関数として知られており、逆誤差関数を使って次のように表現できる。
確率論や統計学では標準正規分布の累積分布関数の方がよく使われ、誤差関数は他の数学の分野で使われる傾向がある。
誤差関数はミッタク＝レフラー関数の特殊ケースであり、合流型超幾何微分方程式としても以下のように表現できる。
フレネル積分を使った単純な表現法もある。正規化ガンマ関数formula_39と不完全ガンマ関数を使うと、次のように表せる。
formula_40 は符号関数である。
書籍によっては、より一般化した関数を論じている場合もある。
formula_45で割ると、奇数のformula_46についてのformula_47は互いに似たようなものになる（完全に一致する事は無い）。
同様に、偶数のformula_46についてのformula_47もformula_45で割ると互いに似たものになる（完全に一致する事は無い）。
formula_51での全ての一般化された誤差関数のformula_32が正のときのグラフは互いに似ている。
これらの一般化された誤差関数も "x" > 0 の場合にガンマ関数と不完全ガンマ関数を使って次のように表せる。
従って、誤差関数は不完全ガンマ関数を使って次のように表せる。
相補誤差関数の累次積分は次のように定義される。
これらには次のような冪級数がある。
ここから次のような対称性が得られる。
C言語の場合、C99でヘッダファイルのcodice_1にcodice_2およびcodice_3という関数が宣言されている。
C++でも、C++11でcodice_10のヘッダファイルにcodice_11およびcodice_12が宣言されている。codice_13、codice_6およびcodice_9型がオーバーロードされている。
複素数を扱える誤差関数の実装は少ない。例えば、図2のようなグラフの描画は、Mathematicaを一般的な性能のコンピュータで実行した場合に数分かかる。
FORTRANでは、例えば、GFortran がcodice_16と倍精度のcodice_17を提供している。