matlab中remezord函数用法
时间: 2024-03-08 07:46:00 浏览: 207
Matlab中remezord函数是用来计算最小阶数的函数,可以用于设计数字滤波器。其基本用法为:
```matlab
[n,fo,mo,w] = remezord(f,m,dev,fs)
```
其中,f是频率向量,m是响应向量,dev是误差向量,fs是采样频率。
函数返回四个参数:n是所需滤波器的最小阶数,fo是滤波器的通带和阻带边缘频率,mo是滤波器通带和阻带的对应增益,w是通带和阻带的对应权重。
例如,要设计一个带通滤波器,通带范围为0.2~0.4Hz,阻带范围为0~0.1Hz和0.6~1Hz,通带和阻带的最大误差分别为0.05和0.01,采样频率为2Hz,可以使用如下代码:
```matlab
f = [0 0.1 0.2 0.4 0.6 1];
m = [0 0 1 1 0 0];
dev = [0.01 0.05 0.01];
fs = 2;
[n,fo,mo,w] = remezord(f,m,dev,fs);
```
执行后,得到n=9,即所需滤波器的最小阶数为9。
阅读全文