Графическое отображение 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
,