在命令行中估计冲激响应模型
在执行此任务之前,您必须具备以下条件:
输入/输出或频率响应数据。请参阅Representing Time- and Frequency-Domain Data Using iddata Objects。有关支持的数据格式,请参阅Supported Estimation Data。
执行任何所需的数据预处理操作。如果使用时域数据,可以在估计之前对其进行去趋势处理。请参阅数据准备。
使用 impulseest 计算冲激响应模型。impulseest 通过相关分析估计高阶非因果 FIR 模型。生成的模型以 idtf 模型对象的形式存储,其模型分子中包含冲激响应系数。
要对模型 m 进行估计并绘制冲激响应或阶跃响应,请使用以下语法:
m=impulseest(data,N); impulse(m,Time); step(m,Time);
其中 data 是单输出或多输出的 iddata 或 idfrd 对象。N 是一个标量值,用于指定与时间范围 0:Ts:(N-1)*Ts 相对应的 FIR 系统的阶数,其中 Ts 是数据采样时间。
您还可以使用 impulseestOptions 指定估计选项(例如正则化核、预白化滤波器阶数和数据偏移量),并将这些选项作为输入传递给 impulseest。例如:
opt = impulseestOptions('RegularizationKernel','TC')); m = impulseest(data,N,opt);
要查看估计响应值的置信域,请使用 impulseplot 和 stepplot 绘制绘图。然后使用 showConfidence。
例如:
h = stepplot(m,Time);
showConfidence(h,3) % 3 std confidence region注意
cra 是一种仅利用时域数据计算冲激响应的替代方法。
后续步骤
执行模型分析。请参阅估计后的模型验证。