dirac

Распределение дельты Дирака

Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.

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

Синтаксис

dirac(x)
dirac(x, n)

Описание

dirac(x) представляет распределение дельты Дирака.

dirac(x, n) представляет n-th производная распределения дельты.

Вызовы dirac(x, 0) и dirac(x) эквивалентны.

Если аргумент x представляет ненулевой номер, то 0 возвращен. Если x является невещественным числом доменного типа DOM_COMPLEX, то undefined возвращен. Для всех других аргументов возвращен символьный вызов функции.

dirac не имеет предопределенного значения в начале координат. Использование

unprotect(dirac): dirac(0) := myValue:

и

dirac(float(0)) := myFloatValue: protect(dirac):

присваивать значение (например, infinity).

Для одномерных линейных выражений, правила упрощения

реализован для действительных численных значений a.

Функция интегрирования int обрабатывает dirac как обычное распределение дельты. Cf. Пример 3.

Взаимодействия среды

dirac реагирует на свойства идентификаторов.

Примеры

Пример 1

dirac возвращается 0 для аргументов, представляющих ненулевые вещественные числа:

dirac(-3), dirac(3/2), dirac(2.1, 1), 
dirac(3*PI), dirac(sqrt(3), 3)

Аргументы доменного типа урожай DOM_COMPLEX undefined:

dirac(1 + I), dirac(2/3 + 7*I), dirac(0.1*I, 1), dirac(ln(-5))

На символьный звонок отвечают для других аргументов:

dirac(0), dirac(x), dirac(x + I, 2), dirac(x, n)

dirac(2*x - 1, n)

Естественным значением для dirac(0) является infinity:

unprotect(dirac): dirac(0) := infinity: dirac(0)

delete dirac(0): protect(dirac): dirac(0)

Пример 2

dirac реагирует на предположения, установленные assume:

assume(x < 0): dirac(x)

assume(x, Type::Real): assume(x <> 0, _and): dirac(x)

unassume(x):

Пример 3

Символьная функция интегрирования int обрабатывает dirac как распределение дельты:

int(f(x)*dirac(x - y^2), x = -infinity..infinity)

int(int(f(x, y)*dirac(x - y^2), x = -infinity..infinity),
    y = -1..1)

Неопределенный интеграл dirac включает функцию sign:

int(f(x)*dirac(x), x), int(f(x)*dirac(x, 1), x)

int может обработать распределение, только если аргумент dirac линеен в переменной интегрирования:

int(f(x)*dirac(2*x - 3), x = -10..10),
int(f(x)*dirac(x^2), x = -10..10)

Также обратите внимание, что dirac не должен использоваться для численного интегрирования, поскольку числовой алгоритм обычно не обнаружит пик дельты:

numeric::int(dirac(x - 3), x = -10..10)

Параметры

x

Арифметическое выражение

n

Арифметическое выражение, представляющее неотрицательное целое число

Возвращаемые значения

Арифметическое выражение.

Перегруженный

x

Смотрите также

Функции MuPAD