Графическое отображение Matlab: выравнивание свертки по вектору

Я пытаюсь построить график свертки на основе вектора.

Вот что у меня так далеко:

>> n=[-10:10];
>> x=zeros(1,length(n));
>> x(n==-1)=1;
>> x(n==0)=1;
>> x(n==1)=-1;
>> u=zeros(1,length(n));
>> u(n>=0)=1;
>> h=(1/2).^n .* u;
>> y = conv(x,h)

Теперь я хочу график у, используя stem(n,y) или что-то подобное, но y не будет привязан к n больше, так как они уже разной длины.

Есть ли способ выровнять мой старый вектор n к моему новому уравнению y когда я их графиком? Или, по крайней мере, выровнять мои значения y по правым значениям оси X.

1 ответ

Решение

Использовать:

y= conv(x,h,'same')

Это возвращает центральную часть свертки того же размера, что и x,

Другие вопросы по тегам