Выберите подмножество строк или столбцов от входа
Управление сигнала / Индексация
dspindex
Переменный Селекторный блок извлекает подмножество строк или столбцов от M-by-N входная матрица u
в каждом входном порту. Вы задаете количество портов ввода и вывода в параметре Number of input signals.
Когда параметр Select устанавливается на Rows
, Переменный Селекторный блок извлекает строки из каждой входной матрицы, в то время как, если параметр Select устанавливается на Columns
, блок извлекает столбцы.
Когда параметр Selector mode устанавливается на Variable
, вход вектора длины-L к порту Idx выбирает строки L или столбцы каждого входа, чтобы передать до выхода. Элементы вектора индексации могут быть обновлены в каждом шаге расчета, но длина вектора должна остаться то же самое в течение симуляции.
Когда параметр Selector mode устанавливается на Fixed
, порт Idx отключен, и вектор длины-L, заданный в параметре Elements, выбирает строки L или столбцы каждого входа, чтобы передать до выхода. Параметр Elements является настраиваемым, таким образом, можно изменить значения индексирующих векторных элементов в любое время во время симуляции; однако, длина вектора должна остаться то же самое.
И для переменной и для зафиксированных режимов индексации, операция выбора строки эквивалентна
y = u(idx,:) % Equivalent MATLAB code
и операция выбора столбца эквивалентна
y = u(:,idx) % Equivalent MATLAB code
где idx
вектор индексации длины-L. Выходным размером выбора строки является L-by-N и выбор столбца, выходным размером является M-by-L. Введите строки, или столбцы могут появиться любое число раз в выходе, или нисколько.
Когда вход является неориентированным вектором, параметр Select проигнорирован; выход является неориентированным вектором длины L, содержащий те элементы, указанные вектором индексации длины-L.
Когда элемент индексирующих векторных ссылок несуществующая строка или столбец входа, блок реагирует с действием, вы задаете использование параметра Invalid index .
Когда индексирующие векторные элементы имеют булев тип данных, блок выполняет логическую индексацию. Выберите Fill empty spaces in outputs (for logical indexing), чтобы получить доступ к параметру Fill values. Эти значения добавлены к выходу, чтобы сделать его пока входные элементы.
Переменный Селекторный блок всегда копирует выбранные входные строки в непрерывный блок памяти (различающийся блок Simulink® Selector).
Задайте количество входных сигналов. Входной порт создается на блоке для каждого входного сигнала.
Задайте размерность входа, чтобы выбрать, Rows
или Columns
.
Задайте тип индексации операции, чтобы выполнить, Variable
или Fixed
. Переменная индексация использует вход в порте Idx, чтобы выбрать строки или столбцы от входа в In
порт. Фиксированная индексация использует значение параметров Elements, чтобы выбрать строки из входа в порте In и отключает порт Idx.
Задайте вектор, содержащий индексы входных строк или столбцов, которые появятся в выходной матрице. Этот параметр появляется только, когда вы устанавливаете Selector mode на Fixed
.
Когда установлено в One-based
, значение индекса 1
относится к первой строке или столбцу входа. Когда установлено в Zero-based
, значение индекса 0
относится к первой строке или столбцу входа.
Задайте, как блок обрабатывает недопустимое значение индекса. Можно выбрать одну из следующих опций:
Clip index
— Отсеките индекс к самому близкому допустимому значению и не выпускайте предупреждение.
Например, если блок получает 64
- 4
введите и параметр Select устанавливается на Rows
, блок отсекает индекс 72
к 64
. Для того же входа, если параметр Select устанавливается на Columns
, блок отсекает индекс 72
к 4
. В обоих случаях блок отсекает индекс -2
к 1
.
Clip and warn
— Отсеките индекс к самому близкому допустимому значению и отобразите предупреждающее сообщение в командной строке MATLAB®.
Generate error
— Отобразите ошибочное диалоговое окно и отключите симуляцию.
Этот параметр является настраиваемым (Simulink).
Когда индексирующие векторные элементы имеют булев тип данных, блок выполняет логическую индексацию. Это может вызвать пустые места в выходе. Выберите этот параметр, чтобы определять значения быть добавленными к выходу в параметре Fill values.
Задайте значения заливки, когда блок выполнит логическую индексацию. Этот параметр появляется только, когда вы устанавливаете флажок Fill empty spaces in outputs (for logical indexing).
Порт | Поддерживаемые типы данных |
---|---|
\in |
|
Idx |
|
|
Multiport Selector | DSP System Toolbox |
Permute Matrix | DSP System Toolbox |
Selector | Simulink |
Submatrix | DSP System Toolbox |