Массив полей Галуа
Задайте матрицу 0s и 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. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.