gfroots

Найдите корни полинома по главному Полю Галуа

Синтаксис

rt = gfroots(f,m,p)
rt = gfroots(f,prim_poly,p)
[rt,rt_tuple] = gfroots(...)
[rt,rt_tuple,field] = gfroots(...)

Описание

Примечание

Эта функция выполняет вычисления в GF (pm), где p является главным. Чтобы работать в GF (2 м), используйте функцию roots с массивами Галуа. Для получения дополнительной информации смотрите Корни Полиномов.

Для всех синтаксисов f является полиномиальным вектором символов или вектором - строкой, который дает коэффициенты, в порядке возрастающих степеней, дипломированного полинома.

Примечание

gfroots перечисляет каждый корень точно однажды, игнорируя кратность корней.

rt = gfroots(f,m,p) находит корни в GF (p^m) полинома, который представляет f. rt является вектор-столбцом, каждая из чей записей являются экспоненциальным форматом корня. Экспоненциальный формат относительно корня примитивного полинома по умолчанию для GF (p^m).

rt = gfroots(f,prim_poly,p) находит корни в GF (p m) полинома, который представляет f. rt является вектор-столбцом, каждая из чей записей являются экспоненциальным форматом корня. Экспоненциальный формат является относительно корня степени-m примитивным полиномом для GF (p m), который представляет prim_poly.

[rt,rt_tuple] = gfroots(...) возвращает дополнительный матричный rt_tuple, kth строка которого является полиномиальным форматом корневого rt(k). Полиномиальные и экспоненциальные форматы оба относительно того же примитивного элемента.

[rt,rt_tuple,field] = gfroots(...) возвращает дополнительные матрицы rt_tuple и field. rt_tuple описан в предыдущем абзаце. field дает список элементов дополнительного поля. Список элементов, полиномиального формата и экспоненциального формата - все относительно того же примитивного элемента.

Примечание

Для описания различных форматов, которые использует gfroots, смотрите Элементы Представления Полей Галуа.

Примеры

Корни Полиномов содержат описание и пример использования gfroots.

Код ниже находок полиномиальный формат корней примитивного полинома 2 + x3 + x4 для GF (81). Это затем отображает корни в традиционной форме как полиномы в alph. (Вывод не использован здесь.), Поскольку prim_poly является и примитивным полиномом и полиномом, корни которого разыскиваются, сам alph является корнем.

p = 3; m = 4;
prim_poly = [2 0 0 1 1]; % A primitive polynomial for GF(81)
f = prim_poly; % Find roots of the primitive polynomial.
[rt,rt_tuple] = gfroots(f,prim_poly,p);
% Display roots as polynomials in alpha.
for ii = 1:length(rt_tuple)
  gfpretty(rt_tuple(ii,:),'alpha')
end

Смотрите также

Представлено до R2006a