convmtx

Матрица свертки вектора Поля Галуа

Синтаксис

A = convmtx(c,n)

Описание

Матрица свертки является матрицей, сформированной из вектора, скалярное произведение которого с другим вектором является сверткой этих двух векторов.

A = convmtx(c,n) возвращает матрицу свертки для вектора Галуа c. Вывод A является массивом Галуа, который представляет свертку с c в том смысле, что conv(c,x) равняется

  • A*x, если c является вектор-столбцом и x, является любым вектор-столбцом Галуа длины n. В этом случае A имеет столбцы n и строки m+n-1.

  • x*A, если c является вектором - строкой и 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