Дельта-функция Кронекера
Примечание
Для kroneckerDelta с числовыми входами, используйте eq вместо этого функция.
Задать символьную переменную m равно символьной переменной n и проверить их равенство с помощью kroneckerDelta.
syms m n m = n; kroneckerDelta(m,n)
ans = 1
kroneckerDelta прибыль 1 указывает, что входные данные равны.
Сравнение символьных переменных p и q.
syms p q kroneckerDelta(p,q)
ans = kroneckerDelta(p - q, 0)
kroneckerDelta не может решить, p == q и возвращает вызов функции с неопределиваемым входом. Обратите внимание, что kroneckerDelta(p, q) равно kroneckerDelta(p - q, 0).
Чтобы принудительно получить логический результат для неопределившихся входных данных, используйте isAlways. isAlways функция выдает предупреждение и возвращает логическое 0 (false) для неопределившихся входных сигналов. Установите Unknown опция для false для подавления предупреждения.
isAlways(kroneckerDelta(p, q), 'Unknown', 'false')
ans = logical 0
Задать символьную переменную m кому 0 и испытания m за равенство с 0. kroneckerDelta ошибки функции, поскольку она не принимает числовые входы типа double.
m = 0; kroneckerDelta(m)
Undefined function 'kroneckerDelta' for input arguments of type 'double'.
Использовать sym преобразовать 0 к символическому объекту перед назначением его m. Это потому, что kroneckerDelta принимает только символьные входные данные.
syms m m = sym(0); kroneckerDelta(m)
ans = 1
kroneckerDelta прибыль 1 указывая, что m равно 0. Обратите внимание, что kroneckerDelta(m) равно kroneckerDelta(m, 0).
Сравнение вектора чисел [1 2 3 4] с символьной переменной m. Набор m кому 3.
V = 1:4 syms m m = sym(3) sol = kroneckerDelta(V,m)
V =
1 2 3 4
m =
3
sol =
[ 0, 0, 1, 0]kroneckerDelta действия в отношении V по элементам для возврата вектора, sol, который имеет тот же размер, что и V. Третий элемент sol является 1 указывая, что третий элемент V равняется m.
Сравнение матриц A и B.
Объявить матрицы A и B.
syms m A = [m m+1 m+2;m-2 m-1 m] B = [m m+3 m+2;m-1 m-1 m+1]
A = [ m, m + 1, m + 2] [ m - 2, m - 1, m] B = [ m, m + 3, m + 2] [ m - 1, m - 1, m + 1]
Выдержать сравнение A и B использование kroneckerDelta.
sol = kroneckerDelta(A,B)
sol = [ 1, 0, 1] [ 0, 1, 0]
kroneckerDelta действия в отношении A и B для возврата матрицы sol который имеет тот же размер, что и A и B. Элементы sol которые являются 1 указать, что соответствующие элементы A и B равны. Элементы sol которые являются 0 указать, что соответствующие элементы A и B не равны.
kroneckerDelta во входах для других функцийkroneckerDelta появляется в выходных данных iztrans.
syms z n sol = iztrans(1/(z-1), z, n)
sol = 1 - kroneckerDelta(n, 0)
Использовать эти выходные данные в качестве входных данных для ztrans для возврата начального входного выражения.
ztrans(sol, n, z)
ans = z/(z - 1) - 1
Использовать filter чтобы найти отклик фильтра, когда входным сигналом является функция дельты Кронекера. Новообращенный k к символьному вектору с использованием sym потому что kroneckerDelta принимает только символьные входные данные и преобразует их обратно в двойные с помощью double. Предоставить произвольные коэффициенты фильтра a и b для простоты.
b = [0 1 1]; a = [1 -0.5 0.3]; k = -20:20; x = double(kroneckerDelta(sym(k))); y = filter(b,a,x); plot(k,y)
