Переупорядочьте строки матрицы или столбцы
Математические функции / Матрицы и Линейная алгебра / Матричные операции
dspmtrx3
Блок Permute Matrix переупорядочивает строки или столбцы входной матрицы M на n A
, как задано путем индексации входа P
.
Когда параметр Permute устанавливается на Rows
, блок использует строки A
, чтобы создать новую матрицу с той же размерностью столбца. Вход P
является вектором длины-L, элементы которого определяют, куда каждая строка от A
должна быть помещена в L-by-N выходную матрицу.
% Equivalent MATLAB code y = [A(P(1),:) ; A(P(2),:) ; A(P(3),:) ; ... ; A(P(end),:)]
Для перестановки строки блок обрабатывает длину-M, неориентированную на векторный вход в порте A
как матрица M-1.
Когда параметр Permute устанавливается на Columns
, блок использует столбцы A
, чтобы создать новую матрицу с той же размерностью строки. Вход P
является вектором длины-L, элементы которого определяют, куда каждый столбец от A
должен быть помещен в M-by-L выходную матрицу.
% Equivalent MATLAB code y = [A(:,P(1)) A(:,P(2)) A(:,P(3)) ... A(:,P(end))]
Для перестановки столбца блок обрабатывает длину-N, неориентированную на векторный вход в порте A
как матрица 1 на n.
Когда индексное значение во входе P
ссылается на несуществующую строку или столбец матричного A
, блок реагирует с поведением, заданным параметром Invalid permutation index . Следующие опции доступны:
Clip index
— Отсеките индекс к самому близкому допустимому значению (1 или M для перестановки строки, и 1 или N для перестановки столбца), и не выпускайте предупреждение. Пример: Для 3 7 входной матрицы, индекс столбца 9 отсекается к 7, и индекс строки-2 отсекается к 1.
Clip and warn
— Отобразите предупреждающее сообщение в командном окне MATLAB® и отсеките индекс, как описано выше.
Generate error
— Отобразите ошибочное диалоговое окно и отключите симуляцию.
Когда длина вектора перестановки, P
не равен количеству строк или столбцам входной матрицы A
, можно принять решение получить ошибочное диалоговое окно и отключить симуляцию путем выбора Error when length of P is not equal to Permute dimension size.
В модели ниже, главный блок Permute Matrix помещает вторую строку входной матрицы и в первых и в пятых строках выходной матрицы и помещает третью строку входной матрицы в трех средних строках выходной матрицы. Нижний блок Permute Matrix помещает второй столбец входной матрицы и в первых и в пятых колоннах выходной матрицы и помещает третий столбец входной матрицы в трех средних столбцах выходной матрицы.
Как показано в примере выше, строки и столбцы A
могут появиться любое число раз в выводе, или нисколько.
Метод построения выходной матрицы; путем перестановки строк или столбцов входа.
Когда установлено в One-based
, значение 1
в векторе перестановки P
отсылает к первой строке или столбцу входной матрицы A
. Когда установлено в Zero-based
, значение 0
в P
относится к первой строке или столбцу A
.
Ответ на недопустимое индексное значение. Настраиваемый (Simulink).
Опция, чтобы отобразить ошибочное диалоговое окно и отключить симуляцию, когда длина вектора перестановки P
не равен количеству строк или столбцам входной матрицы A
.
Порт | Поддерживаемые типы данных |
---|---|
A |
|
P |
|
Вывод |
|
Субматрица | DSP System Toolbox |
Переменный селектор | DSP System Toolbox |
permute | MATLAB |
Смотрите Каналы Переупорядочивания в Многоканальных Сигналах для сопутствующей информации.