clear all; close all; N = 512; fp = 3*N; fi = pi/4; t = (0:N-1)*1/fp;
x = sin(2pit90 + fi) + sin(2pit180 + fi);
y = (3.5/max(x))*x + 4;
figure(1) subplot(231) plot(t,y) xlabel('czas[s]'); ylabel('sygnal');
f = linspace(0, fp, N); vy = fft(y, N); wy = abs(vy); subplot(232) stem(f, wy) xlabel('czestotliwosc[Hz]') ylabel('widmo amplitudowe')
M = 101; fg = 120; fgu = fg/(fp/2); h = fir1(M-1, fgu, 'high'); th=(0:M-1)*1/fp; subplot(233); plot(th,h) xlabel('czas[s]'); ylabel('Odp. impulsowa');
Nfh=2^nextpow2(M); N21h=Nfh/2+1; fh=linspace(0,fp/2,N21h); vh=fft(h,Nfh); wh=abs(vh); subplot(234) plot(fh,wh(1:N21h)) xlabel('czestotliwosc [Hz]'); ylabel('modul transmitancji');
y2 = filter(h, 1, y); y2 = y2 - mean(y2); subplot(235) plot(t, y2) xlabel('czas[s]'); ylabel('sygnal');
Nf = 2^nextpow2(N); N21 = Nf/2 + 1; f = linspace(0, fp/2, N21); vy2 = fft(y2, Nf); wy2 = abs(vy2); subplot(236) stem(f, wy2(1:N21)) xlabel('czestotliwosc[Hz]') ylabel('widmo amplitudowe')
figure(2) spectrogram(y2, 512, 256, 512, fp);
kmax = 0.25 * fp; r = xcorr(y2,y2,kmax); tr = ((-kmax) / fp) : (1 / fp) : (kmax / fp); figure(3) plot(tr, r)
