I created the lowpass filter
h = firls(100, [0 .2 .25 1], [ 1 1 0 0],[.001 60]);
My goal is to get four filters $H_{k}(z) = H(W_{4}^{k}z) k =0,1,2,3$
From my knowledge to get the polyphase components you would do the following
$H_{0}(z) = \sum h(4n)z^{-n}$
$H_{1}(z) = \sum h(4n+1)z^{-n}$
$H_{2}(z) = \sum h(4n+2)z^{-n}$
$H_{3}(z) = \sum h(4n+3)z^{-n}$
To do this in matlab i just did\
h0=h(1:4:end);
h1=h(2:4:end);
h2=h(3:4:end);
h3=h(4:4:end);
This doesn't seem to produce the right results.... If anyone can clarify how to do polyphase decomposition in mat lab or tell me what I am doing wrong I would appreciate it
EDIT:
I have a signal x[n] that is a FDM (frequency Division Multiplex) signal made up of four real valued baseband signals interpolated by a value of of 4 and modulated using the complex carrier $e^{j \frac{2*pi*k}{4}n}$ thefour base band signals are added to make the FDM signal x[n].
My goal is to estimate each of the 4 base band signals using the polyphase components of the lowpass filter. The matlab code I am using is:
h = firls(100, [0 ,2 ,.25 1], [ 1 1 0 0],[.001 60]);
h0=h(1:4:end);
h1=h(2:4:end);
h2=h(3:4:end);
h3=h(4:4:end);
%first baseband signal
y0 = conv(x,h0);
y0 = downsample(y0, 4);
y0 = abs(fft(y0));
Here are the 4 estimated baseband signals I get compared to the actual
The polyphase components don't seem to be changing anything
I also tried setting up the filters like this
% Lowpass Filter
h0 = firls(100, [0 .2 .25 1], [1 1 0 0],[.001 60]);
h1 = firls(100, [0 .2 .25 1], [1 1 0 0],[.001 60]);
h2 = firls(100, [0 .2 .25 1], [1 1 0 0],[.001 60]);
h3 = firls(100, [0 .2 .25 1], [1 1 0 0],[.001 60]);
figure(1)
impz(h);
figure(2);
freqz(h);
% PolyPhase Componets
h0(2:4:end)=0;
h0(3:4:end)=0;
h0(4:4:end)=0;
h1(1:4:end)=0;
h1(3:4:end)=0;
h1(4:4:end)=0;
h2(1:4:end)=0;
h2(2:4:end)=0;
h2(4:4:end)=0;
h3(1:4:end)=0;
h3(2:4:end)=0;
h3(3:4:end)=0;
and ended up with these plots
still seems to be something wrong
(NOTE: Orange is actual signals. Blue is my estimate.)