Commit 5d265e48 authored by 袁通's avatar 袁通
Browse files
parents cd77d98e 2f139731
Loading
Loading
Loading
Loading
+21 −17
Original line number Diff line number Diff line
@@ -4,29 +4,31 @@ load inputs/lineup.mat
A = [1 zeros(1, 999) 0.5];
B = [1];
z = filter(B, A, y);
z=z';
rxx=conv(z, fliplr(z));
stem(rxx);


% For y1 ----------------------------------------
ryy1 = conv(y, flip(y));
nryy1 = -(length(y)-1):(length(y)-1);

figure;
plot(nryy1, ryy1);
title('y[n]*y[-n]');
saveas(gcf, "plots/P2_10_f_out1_1.png");

%! Here N is equal to the distance of tow peak.
a1=rxx(7000);b1=2*rxx(8000);c1=rxx(7000)-ryy1(7000);
d1=b1^2-4*a1*c1;
x1=(-b1+d1^0.5)/(2*a1);

%! Here N is equal to the distance of tow peak.
% N:1000
% Peak 1: 9976
% Peak 2: 3957
% alpha: 0.5

N = 1000;
alpha = 0.5;
yo1 = filter(1, [1 zeros(1, N-1) alpha], y);
% sound(yo1, 8192); 
yo1 = filter(1, [1 zeros(1, N-1) x1], y);
sound(yo1, 8192); 

% For y2 ----------------------------------------
ryy2 = conv(y2, flip(y2));
@@ -37,16 +39,18 @@ plot(nryy2, ryy2);
title('y_2[n]*y_2[-n]');
saveas(gcf, "plots/P2_10_f_out1_2.png");

a2=rxx(7000);b2=2*rxx(7501);c2=rxx(7000)-ryy2(7000);
d2=b2^2-4*a2*c2;
x2=(-b2+d2^0.5)/(2*a2);

% N: 501
% Peak 1: 13160
% Peak 2: 6938
% alpha: 0.1 Too small, the peak is fake !!!!!
% alpha: 0.7

N = 500;
alpha = 0.1;
yo2 = filter(1, [1 zeros(1, N-1) alpha], y);
% sound(yo2, 8192);
N = 501;
yo2 = filter(1, [1 zeros(1, N-1) x2], y2);
sound(yo2, 8192);

% For y3 ----------------------------------------
ryy3 = conv(y3, flip(y3));
@@ -59,17 +63,17 @@ saveas(gcf, "plots/P2_10_f_out1_3.png");


% N1: 751
% alpha1: 0.4
% alpha1: 0.75
% N2: 2252
% alpha2: 0.28
% alpha2: 0.6
% Peak 1: 14010
% Peak 2: 4884
% Peak 3: 3597

N = 751;
N1 = 2252;
alpha = 0.4;
alpha1 = 0.28;
b = [1 zeros(1, N-1) alpha zeros(1, N1-1)] + [1 zeros(1, N1-1) alpha1 zeros(1, N-1)];
yo3 = filter(1, b, y);
alpha1 = 0.75;
alpha2 = 0.6;
b = [1 zeros(1, 750) alpha1 zeros(1, 1500) alpha2] ;
yo3 = filter(1, b, y3);
sound(yo3, 8192);
 No newline at end of file
+1 −1
Original line number Diff line number Diff line
% Problem 2.4(e)
% Problem 2.4(g)

x1 = [1 1 1 1 0 0 0 0 0 0];
nx1 = 0:1:9;
+1 −1
Original line number Diff line number Diff line
% Problem 2.5(a) - 1
% Problem 2.5(a) - 2

x1 = [1 0 0 0 0 0];
x2 = [0 1 0 0 0 0];
+1 −1
Original line number Diff line number Diff line
% Problem 2.5(a) - 1
% Problem 2.5(a) - 3

x1 = [1 0 0 0 0 0];
x2 = [0 1 0 0 0 0];
(22.1 KiB)
Loading image diff...
Loading