# ellip
使用规格对象的椭圆滤波器
函数库: TyDSPSystem
# 语法
ellipFilter = ellip(designSpecs, "SystemObject", true)
ellipFilter = ellip(designSpecs, designoption, value, ..., "SystemObject", true)
ellipFilter = design(designSpecs, "ellip", "SystemObject", true)
# 说明
ellipFilter = ellip(designSpecs, "SystemObject", true) 使用对象 designSpecs 中的规格设计一个椭圆 IIR 数字滤波器。
根据滤波器规格对象 designSpecs 的不同,ellip 设计方法可能是无效的。将 designmethods 与滤波器规格对象一起使用,以确定椭圆 IIR 滤波器的设计是否可行。
designmethods(designSpecs, "SystemObject", true)
ellipFilter = ellip(designSpecs, designoption, value, ..., "SystemObject", true) 返回一个椭圆 IIR 数字滤波器,有一个或多个指定的设计选项和相应的值。
要查看可用的设计选项的列表,请在规格对象上运行 designoptions 函数。该函数还列出了滤波器使用的默认设计选项。
designoptions(designSpecs, "ellip")
ellipFilter = design(designSpecs, "ellip", "SystemObject", true) 是一种设计椭圆 IIR 数字滤波器的可选语法。
# 示例
设计椭圆滤波器
设计一个具有带通频率响应的椭圆数字滤波器。
使用 fdesign_lowpass 构建一个低通滤波器设计规格对象。
using TyDSPSystem
designSpecs = fdesign_lowpass("n,fp,fst,ap", 6, 20, 25, 0.8, 80)
lowpass - Property:
Response: Lowpass
Specification: "N,Fp,Fst,Ap"
Description: 4×1 Tuple
NormalizedFrequency: false
Fs: 80.0
FilterOrder: 6
Fpass: 20.0
Fstop: 25.0
Apass: 0.8
使用 design 函数来设计滤波器。将 "ellip" 和变量 designSpecs 给出的规格作为输入参数。
lpFilter = design(designSpecs, "ellip", "SystemObject", true)
dsp_BiquadFilter with properties:
Structure: Direct form II
SOSMatrixSource: Property
SOSMatrix: [3 × 6 Float64]
ScaleValues: [4 × 1 Float64]
InitialConditions: 0
OptimizeUnityScaleValues: true
使用 fvtool 来查看所设计的滤波器的频率响应。
fvtool(lpFilter.SOSMatrix)

# 输入参数
designSpecs - 滤波器规格对象对象
滤波器规格对象,目前仅支持 fdesign_lowpass( )。
# 输出参数
ellipFilter - 椭圆数字滤波器系统对象
椭圆数字滤波器,作为一个滤波器系统对象返回。系统对象及其属性值取决于输入的 designSpecs 对象和指定给该函数的其他设计选项。
# 另请参阅
design | designmethods | designoptions | fdesign_response struct