- refactored
This commit is contained in:
Executable
+40
@@ -0,0 +1,40 @@
|
||||
% ##################################################################################
|
||||
% ## Loesung: Entwurf eines Hilbert-Transformators (Remez-Verfahren) ##
|
||||
% ##################################################################################
|
||||
|
||||
% ##### Teilaufgabe a: Hilbert-Transformator entwerfen #####
|
||||
b1 = remez(30,[0.05 0.95],[1 1],'h');
|
||||
b2 = remez(31,[0.05 1],[1 1],'h');
|
||||
|
||||
figure; [H1 W] = freqz(b1,1,512);plot(W/pi,abs(H1)); grid; xlabel('Omega/pi');
|
||||
ylabel('|H_H(exp(j*Omega))|'); title('Filterordnung: 30 Typ II');
|
||||
figure; [H2 W] = freqz(b2,1,512);plot(W/pi,abs(H2)); grid; xlabel('Omega/pi');
|
||||
ylabel('|H_H(exp(j*Omega))|'); title('Filterordnung: 31 Typ IV');
|
||||
figure; stem([0:30], b1); axis([0 30 -0.8 0.8]); grid; xlabel('k');
|
||||
ylabel('Impulsantwort'); title('Filterordnung: 30 Typ II');
|
||||
figure; stem([0:31], b2); axis([0 31 -0.8 0.8]); grid; xlabel('k');
|
||||
ylabel('Impulsantwort'); title('Filterordnung: 31 Typ IV');
|
||||
|
||||
% ##### Teilaufgabe b: Ausgangssignal filtern #####
|
||||
b = remez(30,[0.05 0.95],[1 1],'h');
|
||||
Fs = 1000;
|
||||
t = (0:1/Fs:2)';
|
||||
x = sin(2*pi*50*t);
|
||||
xh = filter(b,1,x);
|
||||
|
||||
figure, zplane(b); xlabel('Realteil'); ylabel('Imaginaerteil');
|
||||
title('Pol-Nullstellen-Diagramm');
|
||||
xd = [zeros(15,1); x(1:length(x)-15)]; % delay 15 samples
|
||||
figure; plot(t(1:50),xd(1:50),t(1:50),xh(1:50),'--'); grid; xlabel('Zeit (sek)');
|
||||
ylabel('Amplitude'); title(' - Eingangssig. -- Ausgangssig.');
|
||||
|
||||
% ##### Teilaufgabe c: Hilbert-Tranformierte berechnen #####
|
||||
Fs = 1000;
|
||||
t = (0:1/Fs:2)';
|
||||
x = sin(2*pi*50*t);
|
||||
y = hilbert(x);
|
||||
|
||||
figure; plot(t(1:50), real(y(1:50))); grid; hold on;
|
||||
plot(t(1:50), imag(y(1:50)),'--'); xlabel('Zeit (sek)'); ylabel('Amplitude');
|
||||
title('-- Hilbert-Transform. - Original');
|
||||
% ##### EOF #####
|
||||
Reference in New Issue
Block a user