2026a
# ellipap
椭圆模拟低通滤波器原型
函数库: TySignalProcessing
# 语法
z,p,k = ellipap(n,Rp,Rs)
# 说明
z,p,k = ellipap(n,Rp,Rs) 返回 n 阶椭圆模拟低通滤波器原型的零点、极点和增益。通带中的纹波为 Rp 分贝,而阻带 Rs 分贝低于通带中的峰值零点和极点以长度 n 列向量 z 和 p 以及标量 k 的增益返回。 如果 n 为奇数,则 z 的长度为 n - 1。示例
因子零极点形式的传递函数为
椭圆滤波器提供比巴特沃斯和切比雪夫滤波器更陡峭的滚降特性,但它们在通带和阻带中都是等波纹的。在四种经典滤波器类型中,椭圆滤波器通常以最低的滤波器阶数满足一组给定的滤波器性能规格。
ellipap 将椭圆滤波器的通带边缘角频率
# 示例
椭圆低通滤波器的频率响应
设计一个 6 阶椭圆模拟低通滤波器,通带纹波为 5 dB,阻带衰减为 50 dB。
using TySignalProcessing
z, p, k = ellipap(6, 5, 50)
将零极增益滤波器参数转换为传递函数形式,显示滤波器的频率响应。
b, a = zp2tf(z, p, k)
freqs(b, a;plotfig=true)

# 输入参数
n-滤波器阶数正整数标量
滤波器阶数,指定为正整数标量。
数据类型: Int64
Rp - 通带纹波正标量
通带波纹,指定为正标量,单位为分贝。
数据类型: Float
Rs — 阻带衰减正标量
阻带衰减,从最大的通带值下降的多少。指定为正标量,单位为分贝。
数据类型: Float
# 输出参数
z-零点向量
滤波器的零点,作为长度为 n 的向量返回。如果 n 为奇数,则 z 的长度为 n - 1。
p-极点向量
滤波器的极点,作为长度为 n 的向量返回。
k-增益标量
滤波器增益,作为标量返回。
# 算法
ellipap 使用 [1] 中概述的算法。 它使用 ellipke 计算第一类完全椭圆积分,使用 ellipj 计算 Jacobi 椭圆函数。
# 参考文献
[1] Parks, T. W., and C. S. Burrus. Digital Filter Design. New York: John Wiley & Sons, 1987, chap. 7.