Массив полей Галуа
Задайте матрицу 0
s и 1
с.
x = [0 1 1; 0 1 0; 1 1 1];
Создайте массив GF (2) из x
.
x_gf = gf(x)
x_gf = GF(2) array. Array elements = 0 1 1 0 1 0 1 1 1
Установите порядок поля Галуа равным 16, где порядок равен . Задайте матрицу элементов, которая варьируется от 0 до . Создайте массив полей Галуа.
m = 4; x = [3 2 9; 1 2 1]; y = gf(x,m)
y = GF(2^4) array. Primitive polynomial = D^4+D+1 (19 decimal) Array elements = 3 2 9 1 2 1
Создайте последовательность целых чисел. Создайте массив полей Галуа в GF ().
x = [17 8 11 27]; y = gf(x,5)
y = GF(2^5) array. Primitive polynomial = D^5+D^2+1 (37 decimal) Array elements = 17 8 11 27
Определите все возможные примитивные полиномы для GF ().
pp = primpoly(5,'all')
Primitive polynomial(s) = D^5+D^2+1 D^5+D^3+1 D^5+D^3+D^2+D^1+1 D^5+D^4+D^2+D^1+1 D^5+D^4+D^3+D^1+1 D^5+D^4+D^3+D^2+1
pp = 6×1
37
41
47
55
59
61
Создайте массив поля Галуа с помощью примитивного полинома, который имеет десятичный эквивалент 59.
z = gf(x,5,'D5+D4+D3+D+1')
z = GF(2^5) array. Primitive polynomial = D^5+D^4+D^3+D+1 (59 decimal) Array elements = 17 8 11 27
x
- Входная матрицаВходная матрица, заданная как матрица со значениями, большими или равными нулю. Функция использует это значение, чтобы создать массив GF.
Типы данных: double
m
- Порядок примитивного полиномаПорядок примитивного полинома, заданный как положительное целое число от 1 до 16. Функция использует это значение, чтобы вычислить различное количество элементов в GF.
Типы данных: double
prim_poly
- Примитивный полиномm
) (по умолчанию) | двоичный вектор-строка | вектор символов | строковый скаляр | положительное целое числоПримитивный полином, заданный как один из следующих опций:
Двоичный вектор-строка - Этот вектор задает коэффициенты prim_poly
в порядке возрастающих степеней.
Вектор символов или строковый скаляр - Это значение определяет prim_poly
в текстовом представлении. Для получения дополнительной информации см. полиномиальный вектор символов.
Положительное целое число - Это значение определяет prim_poly
в области значений [(2m + 1), (2m+1 – 1)].
Если prim_poly
не задан, см. «Примитивные полиномы по умолчанию» для списка примитивных полиномов по умолчанию, используемых для каждого массива полей Галуа GF (2m
).
Типы данных: double
| char
| string
x_gf
- массив поля ГалуаМассив поля Галуа, возвращенный как переменная, которую MATLAB распознает как массив поля Галуа, а не как массив целых чисел. В результате, когда вы манипулируете переменной, MATLAB работает в поле Galois, которое задает переменная. Для примера, если вы применяете log
функция для массива Галуа, MATLAB вычисляет логарифм в поле Галуа для этого массива Галуа, а не в поле вещественных или комплексных чисел.
Эта таблица приводит примитивный полином по умолчанию, используемый для каждого массива полей Галуа GF (2m
). Чтобы использовать другой примитивный полином, задайте prim_poly
как входной параметр. prim_poly
должно быть в области значений [(2m
+ 1), (2m
+1 - 1)] и должен указать неприводимый полином. Для получения дополнительной информации см. «Примитивные полиномы» и «Представления элемента».
Значение m | Примитив полинома по умолчанию | Целочисленное представление |
---|---|---|
1 | D + 1 | 3 |
2 | D2 + D + 1 | 7 |
3 | D3 + D + 1 | 11 |
4 | D4 + D + 1 | 19 |
5 | D5 + D2 + 1 | 37 |
6 | D6 + D + 1 | 67 |
7 | D7 + D3 + 1 | 137 |
8 | D8 + D4 + D3 + D2 + 1 | 285 |
9 | D9 + D4 + 1 | 529 |
10 | D10 + D3 + 1 | 1033 |
11 | D11 + D2 + 1 | 2053 |
12 | D12 + D6 + D4 + D + 1 | 4179 |
13 | D13 + D4 + D3 + D + 1 | 8219 |
14 | D14 + D10 + D6 + D + 1 | 17475 |
15 | D15 + D + 1 | 32771 |
16 | D16 + D12 + D3 + D + 1 | 69643 |
В этой таблице перечислены операции, поддерживаемые для полевых массивов Galois.
Операция | Описание |
---|---|
+ - | Сложение и вычитание массивов Галуа |
* / \ | Матричное умножение и деление массивов Галуа |
.* ./ .\ | Элементарное умножение и деление массивов Галуа |
^ | Матричная экспоненция массива Галуа |
.^ | Элементная экспоненция массива Галуа |
' .' | Транспонирование массива Галуа |
==, ~= | Реляционные операторы для массивов Галуа |
все | True, если все элементы массива вектора Галуа ненулевые |
любой | True, если любой элемент массива вектора Галуа ненулевой |
conv | Свертка векторов Галуа |
convmtx | Матрица свертки вектора поля Галуа |
deconv | Деконволюция и полиномиальное деление |
det | Определяющий квадратной матрицы Галуа |
dftmtx | Дискретная матрица преобразования Фурье в поле Галуа |
diag | Диагональные матрицы Галуа и диагонали матрицы Галуа |
fft | Дискретное преобразование Фурье |
filter (gf) | Одномерный цифровой фильтр по полю Галуа |
ifft | Обратное дискретное преобразование Фурье |
inv | Обратная матрица Галуа |
длина | Длина вектора Галуа |
log | Логарифм в поле Галуа |
лютеций | Нижне-Верхняя треугольная факторизация массива Галуа |
minpol | Найдите минимальный полином для элемента Галуа |
mldivide | Матричное левое деление\массивов Галуа |
polyval | Вычислите полином в поле Галуа |
ранг | Ранг массива Галуа |
измениться | Перестроить массив Галуа |
корни | Найдите полиномиальные корни через поле Галуа |
размер | Размер массива Галуа |
tril | Извлечение нижней треугольной части массива Галуа |
triu | Извлечение верхней треугольной части массива Галуа |
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.