主要内容

tf

将离散时间滤波器 System object 转换为传递函数

说明

[num,den] = tf(sysobj) 将离散时间滤波器 System object™ 转换为等效传递函数的分子系数和分母系数向量。

示例

[num,den] = tf(sysobj,Arithmetic=arithType) 根据 arithType 中指定的算术分析滤波器 System object。

有关更多输入选项,请参阅 Signal Processing Toolbox™ 中的 tf

示例

全部折叠

使用 tf 函数计算 SOS 滤波器的传递函数。

创建一个四阶低通 SOS 滤波器对象,归一化截止频率为 0.4。

[z,p,k] = ellip(4,1,60,0.4);    % Set up the filter
[sosMatrix,scaleValues] = zp2sos(z,p,k);
[num,den] = sos2ctf(sosMatrix);
sosFilt = dsp.SOSFilter(Structure='Direct form I',...
    Numerator=num,Denominator=den,...
    ScaleValues=scaleValues)
sosFilt = 
  dsp.SOSFilter with properties:

            Structure: 'Direct form I'
    CoefficientSource: 'Property'
            Numerator: [2×3 double]
          Denominator: [2×3 double]
       HasScaleValues: true
          ScaleValues: [0.0351 1 1]

  Show all properties

计算设计的 SOS 滤波器的传递函数。tf 函数返回滤波器的分子系数和分母系数向量。

[numTF,denTF] = tf(sosFilt)
numTF = 1×5

    0.0351    0.1038    0.1432    0.1038    0.0351

denTF = 1×5

    1.0000   -1.5676    1.7412   -1.0104    0.3093

输入参数

全部折叠

滤波器分析中使用的算术,指定为 'double''single''Fixed'。当未指定算术输入且滤波器 System object 未锁定时,分析工具假定为双精度滤波器。当未指定算术输入且 System object 锁定时,该函数基于锁定输入的数据类型执行分析。

'Fixed' 值仅适用于具有定点属性的滤波器 System object。

'Arithmetic' 输入参量指定为 'Fixed' 且滤波器对象的系数数据类型设置为 'Same word length as input' 时,算术分析取决于 System object 是未锁定还是锁定。

  • 未锁定 - 分析对象函数无法确定系数数据类型。该函数假定系数数据类型为有符号,具有 16 位字长,并且是自动定标的。该函数基于此假设执行定点分析。

  • 锁定 - 当输入数据类型为 'double''single' 时,分析对象函数无法确定系数数据类型。该函数假定系数的数据类型为有符号,具有 16 位字长,并且是自动定标的。该函数基于此假设执行定点分析。

要检查 System object 是锁定还是未锁定,请使用 isLocked 函数。

当算术输入指定为 'Fixed' 且滤波器对象的系数数据类型设置为自定义数值类型时,对象函数基于自定义数值数据类型执行定点分析。

输出参量

全部折叠

滤波器的分子系数,以行向量形式返回。

数据类型: double

滤波器的分母系数,以行向量形式返回。

数据类型: double

版本历史记录

在 R2011a 中推出

全部展开