exponenta event banner

erf

Синтаксис

Описание

пример

erf(X) представляет функцию ошибки X. Если X - вектор или матрица, erf(X) вычисляет функцию ошибки каждого элемента X.

Примеры

Функция ошибки для чисел с плавающей запятой и символьных чисел

В зависимости от его аргументов, erf может возвращать результаты с плавающей запятой или точные символьные результаты.

Вычислите функцию ошибки для этих чисел. Поскольку эти числа не являются символическими объектами, получаются результаты с плавающей запятой:

A = [erf(1/2), erf(1.41), erf(sqrt(2))]
A =
    0.5205    0.9539    0.9545

Вычислите функцию ошибки для тех же чисел, преобразованных в символьные объекты. Для большинства символических (точных) чисел, erf возвращает неразрешенные символьные вызовы:

symA = [erf(sym(1/2)), erf(sym(1.41)), erf(sqrt(sym(2)))]
symA =
[ erf(1/2), erf(141/100), erf(2^(1/2))]

Использовать vpa для аппроксимации символьных результатов требуемым количеством цифр:

d = digits(10);
vpa(symA)
digits(d)
ans =
[ 0.5204998778, 0.9538524394, 0.9544997361]

Функция ошибки для переменных и выражений

Для большинства символьных переменных и выражений: erf возвращает неразрешенные символьные вызовы.

Вычислить функцию ошибки для x и sin(x) + x*exp(x):

syms x
f = sin(x) + x*exp(x);
erf(x)
erf(f)
ans =
erf(x)
 
ans =
erf(sin(x) + x*exp(x))

Функция ошибки для векторов и матриц

Если входной аргумент является вектором или матрицей, erf возвращает функцию ошибки для каждого элемента этого вектора или матрицы.

Вычислить функцию ошибки для элементов матрицы M и вектор V:

M = sym([0 inf; 1/3 -inf]);
V = sym([1; -i*inf]);
erf(M)
erf(V)
ans =
[        0,  1]
[ erf(1/3), -1]
 
ans =
 erf(1)
 -Inf*1i

Специальные значения функции ошибок

erf возвращает специальные значения для определенных параметров.

Вычислите функцию ошибки для x = 0, x = ∞ и x = - ∞. Использоватьsym преобразовать 0 и бесконечности к символическим объектам. Функция ошибок имеет специальные значения для следующих параметров:

[erf(sym(0)), erf(sym(Inf)), erf(sym(-Inf))]
ans =
[ 0, 1, -1]

Вычислите функцию ошибки для сложных бесконечностей. Использовать sym для преобразования комплексных бесконечностей в символические объекты:

[erf(sym(i*Inf)), erf(sym(-i*Inf))]
ans =
[ Inf*1i, -Inf*1i]

Обработка выражений, содержащих функцию ошибки

Многие функции, такие как diff и int, может обрабатывать выражения, содержащие erf.

Вычислите первую и вторую производные функции ошибки:

syms x
diff(erf(x), x)
diff(erf(x), x, 2)
ans =
(2*exp(-x^2))/pi^(1/2)
 
ans =
-(4*x*exp(-x^2))/pi^(1/2)

Вычислите интегралы этих выражений:

int(erf(x), x)
int(erf(log(x)), x)
ans =
exp(-x^2)/pi^(1/2) + x*erf(x)
 
ans =
x*erf(log(x)) - int((2*exp(-log(x)^2))/pi^(1/2), x)

Функция ошибки графика

Постройте график функции ошибки на интервале от -5 до 5.

syms x
fplot(erf(x),[-5 5])
grid on

Figure contains an axes. The axes contains an object of type functionline.

Входные аргументы

свернуть все

Ввод, определяемый как символьное число, переменная, выражение или функция, либо как вектор или матрица символьных чисел, переменных, выражений или функций.

Подробнее

свернуть все

Функция ошибки

Функция ошибки определяется следующим интегралом:

erf (x) =2π∫0xe−t2dt

Совет

  • Запрос erf для числа, которое не является символическим объектом, вызывает MATLAB ®erf функция. Эта функция принимает только вещественные аргументы. Если вы хотите вычислить функцию ошибки для комплексного числа, используйте sym чтобы преобразовать этот номер в символический объект, а затем вызовите erf для этого символического объекта.

  • Для большинства символических (точных) чисел, erf возвращает неразрешенные символьные вызовы. Аппроксимировать такие результаты с числами с плавающей запятой можно с помощью vpa.

Алгоритмы

Панель инструментов позволяет упростить выражения, содержащие функции ошибок и их инверсию. Для реальных значений x, панель инструментов применяет следующие правила упрощения:

  • erfinv(erf(x)) = erfinv(1 - erfc(x)) = erfcinv(1 - erf(x)) = erfcinv(erfc(x)) = x

  • erfinv(-erf(x)) = erfinv(erfc(x) - 1) = erfcinv(1 + erf(x)) = erfcinv(2 - erfc(x)) = -x

Для любого значения x, система применяет следующие правила упрощения:

  • erfcinv(x) = erfinv(1 - x)

  • erfinv(-x) = -erfinv(x)

  • erfcinv(2 - x) = -erfcinv(x)

  • erf(erfinv(x)) = erfc(erfcinv(x)) = x

  • erf(erfcinv(x)) = erfc(erfinv(x)) = 1 - x

Ссылки

[1] Гаутши, В. «Функция ошибки и интегралы Френеля». Справочник по математическим функциям с формулами, графиками и математическими таблицами. (М. Абрамовиц и И. А. Стегун, ред.). Нью-Йорк: Дувр, 1972.

См. также

| | |

Представлен до R2006a