Как построить дискретные сигналы (дельта-уравнение)? - PullRequest
0 голосов
/ 03 июня 2018

График 2 дискретных сигнала:

  1. x[n] = delta[n] - delta[n-1] + delta[n+4]
  2. y[n] = 0.5^n*u[n]

Также нанесите свертку.

Я не знаю, какой должна быть дельта и как подойти к такого рода сигналам.Если у меня есть простой сигнал, я знаю, как это сделать.

n = 0:7; 
x1 = cos(pi*n); 
subplot(1,2,1) 
stem(n,x1)

Ответы [ 2 ]

0 голосов
/ 05 июня 2018

Использование функции dirac (delta) в matlab не будет работать для дискретных функций, поскольку в результате получается Inf при n = 0.Вместо этого используйте значение 1 в нужных местах.Кроме того, u [n] - это ступенчатая функция, а в Matlab - функция Heavyiside.Он равен нулю для отрицательного x и 1 для положительного x, делая шаг точно при x = 0.

Следующий код отобразит все ваши функции:

n = -5:5
x = [0 1 0 0 0 1 1 0 0 0 0]; %x[n] from n =-5 to n=5

%y = 0.5.^n .* heaviside(n); %[y[n] from n =-5 to n=5
y = 0.5.^n .* [0 0 0 0 0 1 1 1 1 1 1]; %stepfunction from n =-5 to n=5 
z = conv(x,y); %z[n] from n = -10 to n=10

subplot(3,1,1);stem(n,y1)
subplot(3,1,2);stem(n,y2)
subplot(3,1,3);stem(-10:10,y3)
0 голосов
/ 04 июня 2018

Похоже, это функция Дирака .Который имеет функцию в Matlab.

x = dirac(n)

Кроме того, свертка двух функций имеет функцию.

w = conv(u,v)

Не зная интервал, который у вас есть для этихЯ не могу сказать.Я мог бы сгенерировать некоторый код.Также функция u неизвестна.

...