Матрица свертки вектора Поля Галуа
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