Произведите полиномы генератора для циклического кода
pol = cyclpoly(n,k)
pol = cyclpoly(n,k,opt
)
Для всех синтаксисов полином представлен как строка, содержащая коэффициенты в порядке возрастания степеней.
pol = cyclpoly(n,k)
возвращает вектор-строку, представляющую один нетривиальный полином генератора для циклического кода, имеющего длину кодового слова n
и длина сообщения k
.
pol = cyclpoly(n,k,
ищет один или несколько нетривиальных полиномов генератора для циклических кодов, имеющих длину кодового слова opt
) n
и длина сообщения k
. Область выхода pol
зависит от аргумента opt
как показано в таблице ниже.
выбрать | Значимость pol | Формат pol |
---|---|---|
'min' | Один полином генератора, имеющий наименьший возможный вес | Вектор-строка, представляющий полином |
'max' | Один полином генератора, имеющий максимально возможный вес | Вектор-строка, представляющий полином |
'all' | Все полиномы генератора | Матрица, каждая строка которой представляет один такой полином |
положительное целое число, L | Все полиномы генератора, имеющие L веса | Матрица, каждая строка которой представляет один такой полином |
Вес двоичного полинома является количеством ненулевых членов, которые он имеет. Если ни один полином генератора не удовлетворяет заданным условиям, выход pol
пуст, отображается предупреждающее сообщение.
Если opt
является 'min'
, 'max'
или опущенные полиномы строятся путем преобразования десятичных целых чисел в базовые p
. На основе десятичного упорядоченного расположения, gfprimfd
возвращает первый полином, который он находит, удовлетворяющий соответствующим условиям. Этот алгоритм похож на тот, который используется в gfprimfd
.