Русская Википедия:Функция ошибок
Функция ошибок (также называемая функция ошибок Гаусса) — неэлементарная функция, возникающая в теории вероятностей, статистике и теории дифференциальных уравнений в частных производных. Она определяется как
- <math>\operatorname{erf}\,x = \frac{2}{\sqrt{\pi}}\int\limits_0^x e^{-t^2}\,\mathrm dt</math>.
Дополнительная функция ошибок, обозначаемая <math>\operatorname{erfc}\,x</math> (иногда применяется обозначение <math>\operatorname{Erf}\,x</math>), определяется через функцию ошибок:
- <math>\operatorname{erfc}\,x = 1-\operatorname{erf}\,x = \frac{2}{\sqrt{\pi}} \int\limits_x^{\infty} e^{-t^2}\,\mathrm dt</math>.
Комплексная функция ошибок, обозначаемая <math>w(x)</math>, также определяется через функцию ошибок:
- <math>w(x) = e^{-x^2}\operatorname{erfc}\,(-ix)</math>.
Свойства
- Функция ошибок нечётна:
- <math>\operatorname{erf}\,(-x) = -\operatorname{erf}\,x.</math>
- Для любого комплексного <math>x</math> выполняется
- <math>\operatorname{erf}\,\bar{x} = \overline{\operatorname{erf}\,x} </math>
- где черта обозначает комплексное сопряжение числа <math>x</math>.
- Функция ошибок не может быть представлена через элементарные функции, но, разлагая интегрируемое выражение в ряд Тейлора и интегрируя почленно, мы можем получить её представление в виде ряда:
- <math>\operatorname{erf}\,x= \frac{2}{\sqrt{\pi}}\sum_{n=0}^\infin\frac{(-1)^n x^{2n+1}}{n! (2n+1)} =\frac{2}{\sqrt{\pi}} \left(x-\frac{x^3}{3}+\frac{x^5}{10}-\frac{x^7}{42}+\frac{x^9}{216}-\ \cdots\right)</math>
- Это равенство выполняется (и ряд сходится) как для любого вещественного <math>x</math>, так и на всей комплексной плоскости, согласно признаку Д’Аламбера. Последовательность знаменателей образует Шаблон:OEIS.
- Для итеративного вычисления элементов ряда полезно представить его в альтернативном виде:
- <math>\operatorname{erf}\,x= \frac{2}{\sqrt{\pi}}\sum_{n=0}^\infin\left(x \prod_{i=1}^n{\frac{-(2i-1) x^2}{i (2i+1)}}\right) = \frac{2}{\sqrt{\pi}} \sum_{n=0}^\infin \frac{x}{2n+1} \prod_{i=1}^n \frac{-x^2}{i}</math>
- поскольку <math>\frac{-(2i-1) x^2}{i (2i+1)}</math> — сомножитель, превращающий <math>i</math>-й член ряда в <math>(i+1)</math>-й, считая первым членом <math>x</math>.
- Функция ошибок на бесконечности равна единице; однако это справедливо только при приближении к бесконечности по вещественной оси, так как:
- При рассмотрении функции ошибок в комплексной плоскости точка <math>z=\infty</math> будет для неё существенно особой.
- Производная функции ошибок выводится непосредственно из определения функции; она равна удвоенной функции Гаусса с медианой Шаблон:Math и стандартным отклонением Шаблон:Math:
- <math>\frac{d}{dx}\,\operatorname{erf}\,x=\frac{2}{\sqrt{\pi}}\,e^{-x^2}.</math>
- Первообразная функции ошибок, получаемая способом интегрирования по частям:
- <math>\int \operatorname{erf}x\, dx = x\operatorname{erf}\,x + \frac{e^{-x^2}}{\sqrt{\pi}} + C.</math>
- Обратная функция ошибок представляет собой ряд
- <math>\operatorname{erf}^{-1}\,x=\sum_{k=0}^\infin\frac{c_k}{2k+1}\left (\frac{\sqrt{\pi}}{2}x\right )^{2k+1},</math>
- где Шаблон:Math = 1 и
- <math>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},\ldots\right\}.</math>
- Поэтому ряд можно представить в следующем виде (заметим, что дроби сокращены):
- <math>\operatorname{erf}^{-1}\,x=\frac{1}{2}\sqrt{\pi}\left (x+\frac{\pi x^3}{12}+\frac{7\pi^2 x^5}{480}+\frac{127\pi^3 x^7}{40320}+\frac{4369\pi^4 x^9}{5806080}+\frac{34807\pi^5 x^{11}}{182476800}+\dots\right ).</math>[1]
- Последовательности числителей и знаменателей после сокращения — Шаблон:OEIS2C и Шаблон:OEIS2C в OEIS; последовательность числителей до сокращения — Шаблон:OEIS2C в OEIS.
Применение
Если набор случайных величин подчиняется нормальному распределению со стандартным отклонением <math>\sigma</math>, то вероятность, что величина отклонится от среднего не более чем на <math>a</math>, равна <math> \operatorname{erf}\,\frac{a}{\sigma \sqrt{2}}</math>.
Функция ошибок и дополнительная функция ошибок встречаются в решении некоторых дифференциальных уравнений, например, уравнения теплопроводности с начальными условиями, описываемыми функцией Хевисайда («ступенькой»).
В системах цифровой оптической коммуникации, вероятность ошибки на бит также выражается формулой, использующей функцию ошибок.
Асимптотическое разложение
При больших <math>x</math> полезно асимптотическое разложение для дополнительной функции ошибок:
- <math>\operatorname{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)!}{n!(2x)^{2n}}.</math>
Хотя для любого конечного <math>x</math> этот ряд расходится, на практике первых нескольких членов достаточно для вычисления <math>\operatorname{erfc}\,x</math> с хорошей точностью, в то время как ряд Тейлора сходится очень медленно.
Другое приближение даётся формулой
- <math>(\operatorname{erf}\,x)^2\approx 1-\exp\left(-x^2\frac{4/\pi+ax^2}{1+ax^2}\right)</math>
где
- <math> a = \frac{8}{3\pi}\frac{\pi - 3}{4 - \pi}.</math>
Родственные функции
С точностью до масштаба и сдвига, функция ошибок совпадает с функцией Лапласа - интегральной функции распределения нормального распределения с матожиданием 0 и дисперсией 1, обозначаемой <math>\Phi(x)</math>
- <math>\Phi(x) = \frac{1}{2 \sqrt{\pi}} \int\limits_0^x e^{-t^2/2}\,\mathrm dt = \frac{1}{2}\biggl(1+\operatorname{erf}\,\frac{x}{\sqrt{2}}\biggl).</math>
Обратная функция к <math>\Phi</math>, известная как нормальная квантильная функция, иногда обозначается <math>\operatorname{probit}</math> и выражается через нормальную функцию ошибок как
- <math>
\operatorname{probit}\,p = \Phi^{-1}(p) = \sqrt{2}\,\operatorname{erf}^{-1}(2p-1). </math>
Нормальное интегральное распределение чаще применяется в теории вероятностей и математической статистике, в то время как функция ошибок чаще применяется в других разделах математики.
Функция ошибок является частным случаем функции Миттаг-Леффлера, а также может быть представлена как вырожденная гипергеометрическая функция (функция Куммера):
- <math>\operatorname{erf}\,x=
\frac{2x}{\sqrt{\pi}}\,_1F_1\left(\frac{1}{2},\frac{3}{2},-x^2\right).</math>
Функция ошибок выражается также через интеграл Френеля. В терминах регуляризованной неполной гамма-функции P и неполной гамма-функции,
- <math>\operatorname{erf}\,x=\operatorname{sign}\,x\,P\left(\frac{1}{2}, x^2\right)={\operatorname{sign}\,x \over \sqrt{\pi}}\gamma\left(\frac{1}{2}, x^2\right).</math>
Обобщённые функции ошибок
серая линия: <math>E_1(x)=(1-e^{-x})/\sqrt{\pi}</math>
красная линия: <math>E_2(x)=\operatorname{erf}\,x</math>
зелёная линия: <math>E_3(x)</math>
синяя линия: <math>E_4(x)</math>
жёлтая линия: <math>E_5(x)</math>.
Некоторые авторы обсуждают более общие функции
- <math>E_n(x) = \frac{n!}{\sqrt{\pi}} \int\limits_0^x e^{-t^n}\,\mathrm dt
=\frac{n!}{\sqrt{\pi}}\sum_{p=0}^\infin(-1)^p\frac{x^{np+1}}{(np+1)p!}\,.</math>
Примечательными частными случаями являются:
- <math>E_0(x)</math> — прямая линия, проходящая через начало координат: <math>E_0(x)=\frac{x}{e \sqrt{\pi}}</math>
- <math>E_2(x)</math> — функция ошибок <math>\operatorname{erf}\,x</math>.
После деления на <math>n!</math> все <math>E_n</math> с нечётными <math>n</math> выглядят похоже (но не идентично), это же можно сказать про <math>E_n</math> с чётными <math>n</math>. Все обобщённые функции ошибок с <math>n>0</math> выглядят похоже на полуоси <math>x>0</math>.
На полуоси <math>x>0</math> все обобщённые функции могут быть выражены через гамма-функцию:
- <math>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</math>
Следовательно, мы можем выразить функцию ошибок через гамма-функцию:
- <math>\operatorname{erf}\,x = 1 - \frac{\Gamma\left(\frac{1}{2},x^2\right)}{\sqrt\pi}</math>
Повторные интегралы дополнительной функции ошибок
Повторные интегралы <math>\operatorname{I^n erfc}</math> дополнительной функции ошибок определяются как[1]
- <math>\operatorname{I^0 erfc}\,z = \operatorname{erfc}\,z </math>,
- <math>\operatorname{I^n erfc}\,z = \int\limits_z^\infty \operatorname{I^{n-1}erfc}\,\zeta\,d\zeta,</math> для <math>n>0</math>.
Их можно разложить в ряд:
- <math>
\operatorname{I^nerfc}\,z =
\sum_{j=0}^\infty \frac{(-z)^j}{2^{n-j}j!\,\Gamma \left( 1 + \frac{n-j}{2}\right)}\,,
</math> откуда следуют свойства симметрии
- <math>
\operatorname{I^{2m}erfc}\,(-z) = -\operatorname{I^{2m}erfc}\,z + \sum_{q=0}^m \frac{z^{2q}}{2^{2(m-q)-1}(2q)!(m-q)!} </math>
и
- <math>
\operatorname{I^{2m+1}erfc}\,(-z) =\operatorname{I^{2m+1}erfc}\,z + \sum_{q=0}^m \frac{z^{2q+1}}{2^{2(m-q)-1}(2q+1)! (m-q)!}\,. </math>
Реализации
В стандарте языка Си (ISO/IEC 9899:1999, пункт 7.12.8) предусмотрены функция ошибок <math>\operatorname{erf}</math> и дополнительная функция ошибок <math>\operatorname{erfc}</math>. Функции объявлены в заголовочных файлах math.h
(для Си) или cmath
(для C++). Там же объявлены пары функций erff()
, erfcf()
и erfl()
, erfcl()
. Первая пара получает и возвращает значения типа float
, а вторая — значения типа long double
. Соответствующие функции также содержатся в библиотеке Math
проекта «Boost».
В языке Java стандартная библиотека математических функций java.lang.Math
не содержит[2] функцию ошибок. Класс Erf
можно найти в пакете org.apache.commons.math.special
из не стандартной библиотеки, поставляемой[3] Apache Software Foundation.
Системы компьютерной алгебры Maple[2], Matlab[3], Mathematica и Maxima[4] содержат обычную и дополнительную функции ошибок, а также обратные к ним функции.
В языке Python функция ошибок доступна[4] из стандартной библиотеки math
, начиная с версии 2.7. Также функция ошибок, дополнительная функция ошибок и многие другие специальные функции определены в модуле Special
проекта SciPy[5].
В языке Erlang функция ошибок и дополнительная функция ошибок доступны из стандартного модуля math
[5].
В Excel функция ошибок представлена, как ФОШ и ФОШ.ТОЧН[6]
См. также
Примечания
Литература
Ссылки
- MathWorld — Erf
- Онлайновый калькулятор Erf и много других специальных функций (до 6 знаков)
- Онлайновый калькулятор, вычисляющий в том числе Erf
- ↑ Шаблон:Citation, p 484
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ 9.2. math — Mathematical functions — Python 2.7.10rc0 documentation
- ↑ Язык Erlang. Описание Шаблон:Wayback функций стандартного модуля
math
. - ↑ Шаблон:Cite web