写在前面:本文中涉及的函数的使用场景为matlab
https://www.vfe.cc/NewsDetail-765.aspx
傅里叶级数ak其实也是权重,可以用于合成信号(合成效果和谐波次数N有关,N越大越接近原信号),合成公式:
3)周期信号的频谱是离散的,非周期信号的频谱是连续的;
离散信号的频谱是周期的,连续信号的频谱是非周期的。
因此X(z)的系数即序列x(n)的值(只有离散时间信号即序列可以不用计算直接写!)
注意是从高次幂到低次幂排列,原点即z^0的系数。但是对应的n1 = [0:2]是从小到大排列(注意原点位置)
1)函数与格式:[r,p,k] = residuez(b,a)
2)用法:设返回参数r,p,k分别是:
注意同一个极点p3出现了两次,说明是二重极点
3)用于数字滤波器的并联型是通过系统函数(传递函数)H(z)的部分展开式实现的,所以该函数也可以用于实现数字滤波器的并联型
4)用residuez实现数字滤波器的并联型时,由于输出的r,p可能会有共轭复系数,需要转换成实数:
[b1,a1] = resideuz(R1,P1,0)
1)定义:当输入序列是有界的,则输出序列也有界,称系统是稳定的。
2)判断:
① 通过零极点的分布来判断:(对于因果系统)
稳定:H(z)的全部极点都落在单位圆内,即收敛域应该包含单位圆在内
临界稳定:一阶极点位于单位圆上(若有其他阶的,都在单位圆内),单位圆外无极点
不稳定:有极点落在单位圆外,或者单位圆上有重极点
1)函数与格式:[H,w] = freqz(b,a,N)
2)用法:输入b和a分别为系统函数H(z)的分子和分母系数矩阵,N为正整数,默认为512;
输出w包含了0-pi范围内的N个频率等分点,H是w对应的值
3)也可以通过手算出系统函数H(exp(j*w))实现
1)函数与格式:y = filter(b,a,Xn)
2)用法:实现差分方程的求解,因此这个只能用于离散系统(连续系统对应微分方程)求响应。其中b和a分别是差分方程的输出y和输入x的系数,Xn是输入信号,y是通过该系统的输出信号
3)当输入信号Xn为单位冲激信号(即单位脉冲信号)或单位阶跃信号时,可以用该函数求系统的单位冲激响应(即单位脉冲响应)或单位阶跃响应。
1)可以通过上面的filter函数求
2)函数与格式:y = impz(b,a,N)
3)用法:b和a同上,N表示冲激响应输出的序列个数,输出y是N个时域点对应的响应值。如果直接输出impz(b,a,N)可以直接画图,不用stem([0:N-1],y)
1)函数与格式:[z,p,k] = tf2zp(b,a)
2)用法:其中输入参数b是系统函数H(z)中分子的系数向量,a是分母的系数向量。输出的z为零点,p为极点,k为常数
3)也可以用roots函数分别求分子和分母的方程根,来求出系统的零极点
1)函数与格式:sos = zp2sps(z,p,k)
2)用法:其中z是零点,p是极点,k是常数项,输出的sos是矩阵:
(注意这里的a就是分母的系数,写成系统函数时直接代数相加即可,但是在画图时级联型中的a是需要改变符号的)
3)由于数字滤波器的级联型是通过H(z)的基本二阶形式实现的,所以该函数也可以用于实现级联型
1)如果窗的宽度越大,即时间序列截取的越长,其频谱的旁瓣占的比例越小。当窗口宽度无限大时,即截取所有的时间序列,则只有主瓣,没有旁瓣。
2)频谱泄露是不可避免的,因为任何窗函数都不可能满足宽度无限大。但是选择好的窗函数,可以尽可能减少能量的泄露。
3)好的窗函数,是窗函数的频谱尽可能衰减的快,即主瓣和旁瓣的比例尽可能大。
补零对原信号来说并没有增加任何信息,但是补零相当于对原信号的频谱做插值(时域增加采样点的个数,频域中频谱分辨率减小),能够减少频谱泄露。
1)三角窗:bartlett、triang
2)布莱克曼窗:blackman
3)矩形窗:boxcar
4)汉明窗:hamming
5)汉宁窗:hanning
6)切比雪夫窗:chebwin
7)凯塞窗:kaiser
(待补充)
(待补充)
补充:脉冲响应不变法存在频谱混叠现象的原因是:数字滤波器频响是模拟滤波器频响的周期延拓。解决办法:
2)双线性变换法:
优点:通过实现Z平面到S平面的映射,解决了脉冲响应不变法的混叠失真问题
缺点:频率之间的非线性变换问题,会产生新的问题:
1)一个线性相位的模拟滤波器经双线性变换后得到非线性相位的数字滤波器,不再保持原有的线性相位了。
2)这种非线性关系要求模拟滤波器的幅频响应必须是分段常数型的,不然变换所产生的数字滤波器幅频响应相对于原模拟滤波器的幅频响应会有畸变。
切比雪夫型: