Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

arburg

自己回帰全極モデルパラメーター — バーグ法

説明

a = arburg(x,p) は、入力配列 x の次数 p のモデルに対応する正規化された自己回帰 (AR) パラメーターを返します。

[a,e,rc] = arburg(x,p) は、ホワイト ノイズ入力および反射係数 rc の推定分散 e も返します。

すべて折りたたむ

多項式係数のベクトルを使用し、1024 サンプルのホワイト ノイズをフィルター処理することで AR(4) を生成します。再現可能な結果が必要な場合は、乱数発生器をリセットします。バーグ法を使用して係数を推定します。

rng default

A = [1 -2.7607 3.8106 -2.6535 0.9238];

y = filter(1,A,0.2*randn(1024,1));

arcoeffs = arburg(y,4)
arcoeffs = 1×5

    1.0000   -2.7743    3.8408   -2.6843    0.9360

毎回入力ノイズの分散を変えながら過程の実現を 50 件作成します。バーグ法で推定した分散と実際の値を比較します。

nrealiz = 50;

noisestdz = rand(1,nrealiz)+0.5;

randnoise = randn(1024,nrealiz);
noisevar = zeros(1,nrealiz);

for k = 1:nrealiz
    y = filter(1,A,noisestdz(k) * randnoise(:,k));
    [arcoeffs,noisevar(k)] = arburg(y,4);
end

plot(noisestdz.^2,noisevar,'*')
title('Noise Variance')
xlabel('Input')
ylabel('Estimated')

Figure contains an axes object. The axes object with title Noise Variance, xlabel Input, ylabel Estimated contains a line object which displays its values using only markers.

関数のマルチチャネル構文を使用して手順を繰り返します。

Y = filter(1,A,noisestdz.*randnoise);

[coeffs,variances] = arburg(Y,4);

hold on
plot(noisestdz.^2,variances,'o')
hold off
legend('Single channel loop','Multichannel','Location','best')

Figure contains an axes object. The axes object with title Noise Variance, xlabel Input, ylabel Estimated contains 2 objects of type line. One or more of the lines displays its values using only markers These objects represent Single channel loop, Multichannel.

入力引数

すべて折りたたむ

入力配列。ベクトルまたは行列として指定します。

例: filter(1,[1 -0.75 0.5],0.2*randn(1024,1)) は 2 次の自己回帰過程を指定します。

データ型: single | double
複素数のサポート: あり

モデル次数。正の整数スカラーとして指定します。px の要素または行の数よりも小さくなければなりません。

データ型: single | double

出力引数

すべて折りたたむ

正規化された自己回帰パラメーター。ベクトルまたは行列として返されます。x が行列の場合、a の各行は x の列に対応します。ap + 1 列をもち、z の降べきの順で AR システム パラメーター A(z) が含まれます。

ホワイト ノイズ入力分散。スカラーまたは行ベクトルとして返されます。x が行列の場合、e の各要素は x の列に対応します。

反射係数。列ベクトルまたは行列として返されます。x が行列の場合、rc の各列は x の列に対応します。rcp 行をもちます。

詳細

すべて折りたたむ

AR(p) モデル

p 次の AR モデルにおいて、現在の出力は、それ以前の p の出力とホワイト ノイズ入力の線形結合になります。

p の過去の出力に重み付けを行うことで、自己回帰の平均二乗の予測誤差が最小になります。y(n) が出力の現在の値で、x(n) がゼロ平均ホワイト ノイズ入力の場合、AR(p) モデルは次のようになります。

y(n)+k=1pa(k)y(nk)=x(n).

反射係数

"反射係数" は、–1 でスケーリングした部分自己相関係数です。反射係数では、間にある k – 1 回のステップに基づく予測を差し引いた後の、y(n)y(n – k) 間の時間依存性が示されます。

アルゴリズム

バーグ法では、反射係数が推定され、この反射係数を使って再帰的に AR パラメーターが推定されます。前方予測誤差と後方予測誤差に関する最新情報を掲載した、再帰法とラティス フィルターの関係については、[1]を参照してください。

参照

[1] Kay, Steven M. Modern Spectral Estimation: Theory and Application. Englewood Cliffs, NJ: Prentice Hall, 1988.

拡張機能

C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。

バージョン履歴

R2006a より前に導入