Массив поля Галуа
Задайте матрицу 0
s и 1
s.
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
в области значений [(2 м + 1), (2m+1 – 1)].
Если prim_poly
не задан, смотрите Примитивные Полиномы По умолчанию для списка примитивного полинома по умолчанию, используемого для каждого GF Поля Галуа массивов (2m
).
Типы данных: double |
char
| string
x_gf
— Массив поля ГалуаМассив поля Галуа, возвращенный как переменная, которую MATLAB распознает массивом Поля Галуа, а не массивом целых чисел. В результате, когда вы управляете переменной, MATLAB работает в Поле Галуа, которое задает переменная. Например, если вы применяете log
функционируйте к массиву Галуа, MATLAB вычисляет логарифм в Поле Галуа для что массив Галуа а не в области вещественных или комплексных чисел.
Эта таблица приводит примитивный полином по умолчанию, используемый для каждого GF Поля Галуа массивов (2m
). Чтобы использовать различный примитивный полином, задайте prim_poly
как входной параметр. prim_poly
должен быть в области значений [(2m
+ 1), (2m
+1 – 1)] и должен указать на неприводимый полином. Для получения дополнительной информации смотрите Примитивные Полиномы и Представления Элемента.
Значение m | Примитивный полином по умолчанию | Целочисленное представление |
---|---|---|
1
| D + 1 | 3 |
2
| D 2 + D + 1 | 7 |
3
| D 3 + D + 1 | 11 |
4
| D 4 + D + 1 | 19 |
5
| D 5 + D 2 + 1 | 37 |
6
| D 6 + D + 1 | 67 |
7
| D 7 + D 3 + 1 | 137 |
8
| D 8 + D 4 + D 3 + D 2 + 1 | 285 |
9
| D 9 + D 4 + 1 | 529 |
10
| D 10 + D 3 + 1 | 1033 |
11
| D 11 + D 2 + 1 | 2053 |
12
| D 12 + D 6 + D 4 + D + 1 | 4179 |
13
| D 13 + D 4 + D 3 + D + 1 | 8219 |
14
| D 14 + D 10 + D 6 + D + 1 | 17475 |
15
| D 15 + D + 1 | 32771 |
16
| D 16 + D 12 + D 3 + D + 1 | 69643 |
Эта таблица приводит операции, поддержанные для массивов Поля Галуа.
Операция | Описание |
---|---|
+ - | Сложение и вычитание массивов Галуа |
* / \ | Умножение матриц и деление массивов Галуа |
.* ./ .\ | Поэлементное умножение и деление массивов Галуа |
^ | Матричное возведение в степень массива Галуа |
.^ | Поэлементное возведение в степень массива Галуа |
' .' | Транспонируйте массива Галуа |
==, ~= | Операторы отношения для массивов Галуа |
все | Верный, если все элементы вектора Галуа являются ненулевыми |
любой | Верный, если какой-либо элемент вектора Галуа является ненулевым |
conv | Свертка векторов Галуа |
convmtx | Матрица свертки вектора Поля Галуа |
deconv | Развертка и полиномиальное деление |
det | Определитель квадрата матрица Галуа |
dftmtx | Дискретная матрица преобразования Фурье в Поле Галуа |
diag | Диагональные матрицы Галуа и диагонали матрицы Галуа |
fft | Дискретное преобразование Фурье |
filter (gf) | Одномерный цифровой фильтр по Полю Галуа |
ifft | Обратное дискретное преобразование Фурье |
inv | Инверсия матрицы Галуа |
длина | Длина вектора Галуа |
log | Логарифм в Поле Галуа |
лютеций | Факторизация более низкой Верхней треугольной массива Галуа |
minpol | Найдите минимальный полином для элемента Галуа |
mldivide | Матричное левое деление \массивов Галуа |
polyval | Оцените полином в Поле Галуа |
ранг | Ранг массива Галуа |
изменение | Измените размерность массива Галуа |
корни | Найдите полиномиальные корни через Поле Галуа |
размер | Размер массива Галуа |
tril | Извлеките нижнюю треугольную часть массива Галуа |
triu | Извлеките верхнюю треугольную часть массива Галуа |
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.