Main Content

convmtx

ガロア体ベクトルの畳み込み行列

構文

A = convmtx(c,n)

説明

"畳み込み行列" は、他のベクトルとの内積がその 2 つのベクトルの畳み込みであるベクトルで形成される行列です。

A = convmtx(c,n) は、ガロア ベクトル c の畳み込み行列を返します。出力 A は、conv(c,x) が以下と等しいという意味で、c によって畳み込みを表すガロア配列です。

  • A*xc が列ベクトルで、x が長さ n の任意のガロア列ベクトルである場合。この場合、A には n 個の列と m+n-1 個の行があります。

  • x*Ac が行ベクトルで、x が長さ n の任意のガロア行ベクトルである場合。この場合、A には n 個の行と m+n-1 個の列があります。

下記のコードは、関数 conv の利用と、convmtx の出力の乗算の間の等価性を説明します。

m = 4;
c = gf([1; 9; 3],m); % Column vector
n = 6;
x = gf(randi([0 2^m-1],n,1),m);
ck1 = isequal(conv(c,x), convmtx(c,n)*x) % True
ck2 = isequal(conv(c',x'),x'*convmtx(c',n)) % True

出力は以下のようになります。

ck1 =

     1


ck2 =

     1

バージョン履歴

R2006a より前に導入