delayest
根据数据估计时间延迟(死区时间)
语法
nk = delayest(Data)
nk = delayest(Data,na,nb,nkmin,nkmax,maxtest)
nk = delayest(___,Name,Value)
说明
nk = delayest(Data)
从单输出数目据 Data
估计时间延迟。data
可以是 timetable
的形式,也可以是逗号分隔的一对数值矩阵,或者 iddata
对象。它也可以是定义频率响应数据的 idfrd
对象。
如果 data
是一个时间表,软件会假定最后一个变量是单个输出。如果时间表包含的变量多于您想要使用的变量,或者单个输出通道不是最后一个时间表变量,请通过指定 InputName
和 OutputName
名称-值参量来选择特定的输入和输出通道进行延迟估计。
如果 data
的形式是数值矩阵对 u,y,则 u 必须是 Ns×Nu 矩阵,而 y 必须是 Ns 长度的列向量。这里,Ns 是采样数,Nu 是输入数目。由于 u,y 不包含采样时间信息,因此还指定名称-值参量 Ts
和 TimeUnit
nk
以整数或整数行向量的形式返回,包含从输入到 Data
中的输出的采样估计时间延迟。
该估计基于对不同延迟的 ARX 模型的比较:
nk = delayest(Data,na,nb,nkmin,nkmax,maxtest)
指定附加选项。整数 na
是 A 多项式的阶数(默认值为 2)。nb
是一个长度等于输入数目量的行向量,包含 B 多项式的阶数(默认值均为 2)。nkmin
和 nkmax
是长度与输入数目量相同的行向量,包含待测试的最小和最大延迟。默认值为 nkmin = 0
和 nkmax = nkmin+20
。如果在多输入情况下将 nb
、nkmax
和/或 nkmin
作为标量输入,则所有输入都将被分配相同的值。maxtest
是允许的最大测试数(默认值为 10,000)。
nk = delayest(___,
使用由一个或多个名称-值参量指定的附加模型选项。 Name,Value)
可用的参量包括 InputName
和 OutputName
,它们是输入和输出通道名称。尤其当 data
是一个包含比您想要使用的变量更多的变量的时间表时,请使用这些参量。当时间表 data
包含多个输出变量时,也可以使用 OutputName
来辨识输出通道。否则,软件仅将最后一个变量解释为输出通道。
例如,使用 sys = delayest(data,'InputName',["u1","u3"],'OutputName',"y1")
指定输入和输出信号变量名称。