%%%%%4.1 Cascade SRC
%%%%a) upsampling downsampling
%%%%%4.2 Intech SRC
F= [0,.1,.46,1];
A=[0,1,0,0];
x=fir2(50,F,A);
stem(x)
h=fir1(40,.4);
L=2;
M=2;
x1=upsample(x,2);
y1=filter(h,1,x1);
y=downsample(y1,2);
subplot(4,1,1),stem(x)
subplot(4,1,2),stem(x1)
subplot(4,1,3),stem(y)
subplot(4,1,4),stem(y1)
ho=downsample(h,2);
yy=filter(ho,1,x);
subplot(4,1,1),stem(x)
subplot(4,1,2),stem(h)
subplot(4,1,3),stem(ho)
subplot(4,1,4),stem(yy)
subplot(2,1,1),stem(y)
subplot(2,1,2),stem(yy)
%%%%%%
f=0:1/512:(512-1)/512;
x=fir2(50,F,A);
X=fft(x,1024);
X1=fft(x1,1024);
Y=fft(y,1024);
YY=fft(yy,1024);
subplot(4,1,1),plot(f,abs(X(1:512)))%%%%title'original'
subplot(4,1,2),plot(f,abs(X1(1:512)))%%%
subplot(4,1,3),plot(f,abs(Y1(1:512)))
subplot(4,1,4),plot(f,abs(Y(1:512)))%%%title output
H=fft(h,1024);
Ho=fft(ho,1024);
YY=fft(yy,1024);
subplot(4,1,1),plot(f,abs(X(1:152)))
subplot(4,1,2),plot(f,abs(H(1:152)))
subplot(4,1,3),plot(f,abs(H(1:152)))
subplot(4,1,4),plot(f,abs(YY(1:152)))
N = 41;
n = 0:N-1;
x = 0.8*sin(2*pi*0.0625*n)+0.3*sin(2*pi*0.2*n);
f = 0:1/1024:(152-1)/1024;
x1=downsample(x,2);
y1=filter(h,1,x1);
y=upsample(y1,2);
subplot(4,1,1),stem(x)%%%downsampled sig
subplot(4,1,2),stem(y1)%%%%filter sig
subplot(4,1,3),stem(x1)
subplot(4,1,4),stem(y)%%%output
X1=fft(x1,1024);
Y1=fft(y1,1024);
Y=fft(y,1024);
subplot(4,1,1),plot(f,abs(X(1:152)))
subplot(4,1,1),plot(f,abs(X1(1:152)))
subplot(4,1,1),plot(f,abs(Y1(1:152)))
subplot(4,1,1),plot(f,abs(Y(1:152)))
%%
x2=upsample(x1,2);
hh=upsample(h,2);
yy=filter(hh,1,x2);
subplot(4,1,1),stem(x)
subplot(4,1,1),stem(x1)
subplot(4,1,1),stem(y1)
subplot(4,1,1),stem(yy)
X1=fft(x1,1024);
X2=fft(x2,1024);
H=fft(h,1024);
HH=fft(hh,1024);
YY=fft(yy,1024);
subplot(6,1,1),plot(f,abs(X(1:152)))
subplot(6,1,2),plot(f,abs(X2(1:152)))
subplot(6,1,3),plot(f,abs(H(1:152)))
subplot(6,1,4),plot(f,abs(HH(1:152)))
subplot(6,1,5),plot(f,abs(YY(1:152)))
subplot(6,1,6),stem(yy)
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%SE comprueba que no se puede hacer con
%% numeros 2,4 *b de la libreta
x=fir2(50,F,A);
x1=downsample(x,2);
y=downsample(x1,3);
y1=upsample(x,3);
yy=downsample(y1,2);
subplot(3,1,1),stem(x)
subplot(3,1,2),stem(x1)
subplot(3,1,3),stem(y)
subplot(3,1,1),stem(x)
subplot(3,1,2),stem(y1)
subplot(3,1,3),stem(yy)
%% %%% %%%%%%%%%%%%%%%%%%%%%%%%%%%
f = 0:1/1024:(152-1)/1024;
N = 41;
n = 0:N-1;
x = 0.8*sin(2*pi*0.0625*n)+0.3*sin(2*pi*0.2*n);
%y=resample(x,L,M)%%%%%cambio de tasa de muestreo L/M
y1=resample(x,6,4);%%M=2, L=3
subplot(2,1,1),stem(x),title('señal original')
subplot(2,1,2),stem(y1),title('señal muestreada N=6 y M=4')
%%%%domioniode frecuencia
Y1=fft(y1,1024);
X=fft(x,1024);
figure
subplot(2,1,1),plot(f,abs(X(1:152))),title('señal original en dominio de frecuencia')
subplot(2,1,2),plot(f,abs(Y1(1:152))),title('señal en dominio de frecuencia muestreada')
%% ws
f = 0:1/1024:(152-1)/1024;
N = 41;
n = 0:N-1;
x = 0.8*sin(2*pi*0.0625*n)+0.3*sin(2*pi*0.2*n);
ws=min(1/2,1/3)
ws
wp=1/4;
h1=firgr(80,[0,wp,ws,1] , [1,1,0,0 ]);
x1=downsample(x,2);
y1=filter(3*h1,1,x1);
y=upsample(y1,3);
%subplot(4,1,1),stem(x),title('señal original muestreada')
%subplot(4,1,2),stem(x1),title('señal muestreada con downsample 2')
%subplot(4,1,3),stem(y1),title('señal filtrada con LTI')
%subplot(4,1,4),stem(yy),title('señal muestreada con upsample 3')
%%dominiode frecuencia estructura 2 *b libreta
X=fft(x,1024)
H1=fft(h1,1024);
X1=fft(x1,1024);
Y1=fft(y1,1024);
Y=fft(y,1024);
subplot(4,1,1),plot(f,abs(X(1:152))),title('señal original muestreada en dominio de frecuencia')
subplot(4,1,2),plot(f,abs(X1(1:152))),title('señal muestreada con downsample 2 en domnio de frecuencia')
subplot(4,1,3),plot(f,abs(Y1(1:152))),title('señal filtrada con LTI en dominio de frecuencia')
subplot(4,1,4),plot(f,abs(Y(1:152))),title('señal muestreada con upsample 3 en dominio de frecuencia')