主要内容

莱文森

Levinson-Durbin递归

描述

例子

一个=莱文森(rn返回自回归线性有序过程的系数nr为其自相关序列。

例子

一个ek) =莱文森(___也返回预测错误e,和反射系数,k

例子

全部折叠

估计自回归过程的系数由

x n 0 1 x n - 1 - 0 8 x n - 2 - 0 2 7 x n - 3. + w n

A = [1 0.1 -0.8 -0.27];

通过对方差为0.4的白噪声进行滤波生成实现的过程。

v = 0.4;w = sqrt (v) * randn (15000 1);x =过滤器(1一个w);

估计相关函数。丢弃负滞后的相关值。使用Levinson-Durbin递归估计模型系数。验证预测误差对应于输入的方差。

[r, lg] = xcorr (x,“有偏见的”);r (lg < 0) = [];[ar, e] = levinson (r,元素个数(a) (1)
基于“增大化现实”技术的=1×41.0000 0.0772 -0.7954 -0.2493
e = 0.3909

估计一个16阶模型的反射系数。验证唯一不在95%置信范围内的反射系数是符合正确模型顺序的反射系数。看到偏自相关序列的AR阶数选择为更多的细节。

(~ ~ k) = levinson (r, 16);茎(k,“填充”) conf = sqrt(2)*erfinv(0.95)/sqrt(15000); / /配置文件持有[X,Y] = ndgrid(xlim,conf*[-1 1]);情节(X, Y,“——r”)举行

图中包含一个轴对象。轴对象包含三种类型的对象茎,线。

生成自回归过程的系数,给出

x n 0 1 x n - 1 - 0 8 x n - 2 - 0 2 7 x n - 3. + w n

A = [1 0.1 -0.8 -0.27];

通过过滤具有不同方差的白噪声,生成该过程的五种实现。

nr = 5;v =兰特(nr)
v =1×50.8147 0.9058 0.1270 0.9134 0.6324
w = sqrt (v)。* randn(15000年,nr);x =过滤器(1一个w);

估计相关函数。丢弃负滞后的互相关项和相关值。使用Levinson-Durbin递归估计正确模型阶数的预测误差,并验证预测误差与输入噪声信号的方差对应。

[r, lg] = xcorr (x,“有偏见的”);[~ e] = levinson (r (lg > = 0, 1: nr + 1:结束),元素个数(a) (1)
e =5×10.7957 0.9045 0.1255 0.9290 0.6291

输入参数

全部折叠

自相关序列,指定为向量或矩阵。如果r是一个矩阵,函数求出每一列的系数r并以列的形式返回一个

例子:(r, lg) = xcorr (randn(1000 1),“有偏见的”);r (lg < 0) = []估计一个1000样本随机信号的正滞后的自相关序列。

数据类型:|
复数的支持:万博1manbetx是的

模型顺序,指定为正整数标量。

数据类型:|

输出参数

全部折叠

作为行向量或矩阵返回的自回归线性过程系数。滤光系数按的降序幂排列z1

H z 1 一个 z 1 1 + 一个 2 z 1 + + 一个 n + 1 z n

如果r是一个矩阵,那么每一行呢一个对应于列的r

预测错误,作为标量或列向量返回。如果r是一个矩阵,那么每个元素是e对应于列的r

反射系数,返回为长度的列向量n.如果r是一个矩阵,那么每一列是k对应于列的r

请注意

k是在计算一个系数,所以返回k同时比转换更有效一个ktf2latc

算法

Levinson-Durbin递归是一种寻找具有给定确定性自相关序列的全极点IIR滤波器的算法。它在滤波器设计、编码和频谱估计方面都有应用。的过滤器莱文森生产是最小阶段。

莱文森求解对称的Toeplitz线性方程组

r 1 r 2 r n r 2 r 1 r n 1 r n r 2 r 1 一个 2 一个 3. 一个 n + 1 r 2 r 3. r n + 1

在哪里r = (r(1)...rn+ 1)输入是自相关向量,和r的复共轭r).输入r通常是一个自相关系数向量,其中滞后0是第一个元素,r(1).

请注意

如果r不是有效的自相关序列,莱文森函数会返回即使解存在。

该算法需要On2它比MATLAB更有效®反斜杠命令为大n.然而,莱文森函数使用为低订单提供尽可能快的执行。

参考文献

[1] Ljung Lennart。系统识别:用户的理论.第二版。上鞍河,新泽西:普伦提斯霍尔,1999。

扩展功能

之前介绍过的R2006a