Дополнительная функция ошибок
erfc(
представляет дополнительную функцию ошибок X
)X
, то есть, erfc(X) = 1 - erf(X)
.
erfc(
представляет повторный интеграл дополнительной функции ошибок K
,X
)X
, то есть, erfc(K, X) = int(erfc(K - 1, y), y, X, inf)
.
В зависимости от его аргументов, erfc
может возвратить или точные символьные результаты с плавающей точкой.
Вычислите дополнительную функцию ошибок для этих чисел. Поскольку эти числа не являются символьными объектами, вы получаете результаты с плавающей точкой:
A = [erfc(1/2), erfc(1.41), erfc(sqrt(2))]
A = 0.4795 0.0461 0.0455
Вычислите дополнительную функцию ошибок для тех же чисел, преобразованных в символьные объекты. Для большинства символьных (точных) чисел, erfc
отвечает на неразрешенные символьные звонки:
symA = [erfc(sym(1/2)), erfc(sym(1.41)), erfc(sqrt(sym(2)))]
symA = [ erfc(1/2), erfc(141/100), erfc(2^(1/2))]
Использование vpa
аппроксимировать символьные результаты необходимым количеством цифр:
d = digits(10); vpa(symA) digits(d)
ans = [ 0.4795001222, 0.04614756064, 0.0455002639]
Для большинства символьных переменных и выражений, erfc
отвечает на неразрешенные символьные звонки.
Вычислите дополнительную функцию ошибок для x
и sin(x) + x*exp(x)
:
syms x f = sin(x) + x*exp(x); erfc(x) erfc(f)
ans = erfc(x) ans = erfc(sin(x) + x*exp(x))
Если входной параметр является вектором или матрицей, erfc
возвращает дополнительную функцию ошибок для каждого элемента того вектора или матрицы.
Вычислите дополнительную функцию ошибок для элементов матричного M
и векторный V
:
M = sym([0 inf; 1/3 -inf]); V = sym([1; -i*inf]); erfc(M) erfc(V)
ans = [ 1, 0] [ erfc(1/3), 2] ans = erfc(1) 1 + Inf*1i
Вычислите повторный интеграл дополнительной функции ошибок для элементов V
и M
, и целочисленный -1
:
erfc(-1, M) erfc(-1, V)
ans = [ 2/pi^(1/2), 0] [ (2*exp(-1/9))/pi^(1/2), 0] ans = (2*exp(-1))/pi^(1/2) Inf
erfc
возвращает специальные значения для конкретных параметров.
Вычислите дополнительную функцию ошибок для x = 0, x = ∞, и x = – ∞. Дополнительная функция ошибок имеет специальные значения для этих параметров:
[erfc(0), erfc(Inf), erfc(-Inf)]
ans = 1 0 2
Вычислите дополнительную функцию ошибок для комплексных бесконечностей. Использование sym
преобразовывать комплексные бесконечности в символьные объекты:
[erfc(sym(i*Inf)), erfc(sym(-i*Inf))]
ans = [ 1 - Inf*1i, 1 + Inf*1i]
Много функций, такой как diff
и int
, может обработать выражения, содержащие erfc
.
Вычислите первые и вторые производные дополнительной функции ошибок:
syms x diff(erfc(x), x) diff(erfc(x), x, 2)
ans = -(2*exp(-x^2))/pi^(1/2) ans = (4*x*exp(-x^2))/pi^(1/2)
Вычислите интегралы этих выражений:
syms x int(erfc(-1, x), x)
ans = erf(x)
int(erfc(x), x)
ans = x*erfc(x) - exp(-x^2)/pi^(1/2)
int(erfc(2, x), x)
ans = (x^3*erfc(x))/6 - exp(-x^2)/(6*pi^(1/2)) +... (x*erfc(x))/4 - (x^2*exp(-x^2))/(6*pi^(1/2))
Постройте дополнительную функцию ошибок на интервале от-5 до 5.
syms x fplot(erfc(x),[-5 5]) grid on
Вызов erfc
для номера, который не является символьным объектом, вызывает MATLAB® erfc
функция. Эта функция принимает действительные аргументы только. Если вы хотите вычислить дополнительную функцию ошибок для комплексного числа, используйте sym
преобразовывать тот номер в символьный объект, и затем вызывать erfc
для того символьного объекта.
Для большинства символьных (точных) чисел, erfc
отвечает на неразрешенные символьные звонки. Можно аппроксимировать такие результаты использованием чисел с плавающей запятой vpa
.
По крайней мере один входной параметр должен быть скаляром, или оба аргумента должны быть векторами или матрицами, одного размера. Если один входной параметр является скаляром, и другой является вектором или матрицей, то erfc
расширяет скаляр в вектор или матрицу одного размера с другим аргументом со всеми элементами, равными тому скаляру.
Тулбокс может упростить выражения, которые содержат функции ошибок и их инверсии. Для действительных значений 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] Gautschi, W. “Функция ошибок и Интегралы Френели”. Руководство Математических функций с Формулами, Графиками и Математическими Таблицами. (М. Абрамовиц и я. А. Стегун, редакторы). Нью-Йорк: Дувр, 1972.