Создание полиномов генератора для циклического кода
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.