matlab中的切比雪夫滤波器

Chebyshev filter in matlab

我必须使用截止频率为 100 Hz 的 cheby1 设计高通滤波器这就是我的结果:

sf=3500;%sampling frequency
T = 1/sf; 
L = 1000; % samples
t = (0:L-1)*T; 
s=sin(2*pi*85*t)+ sin(2*pi*500*t)+ sin(2*pi*1600*t);%signal

t1 = linspace(0,2*pi,200)
[b,a]   = cheby1(4,1,0.1);  
[H,w] = freqz(b,a,512);
fs = filter(b,a,s)
s = fft(s,512);
fs1= fft(fs,512);

它不起作用,有什么帮助吗?

您只是缺少 cheby1 的一个参数。请尝试以下操作:

[b,a]   = cheby1( 4, 1, 0.1, 'high' );