Документация Engee

Assignment

Присваивает новые значения указанным элементам сигнала.

assignment

Описание

Блок Assignment назначает значения входных сигналов выбранным элементам сигнала. Индексы элементов, которым будут присвоены значения, задаются либо путем ввода индексов в диалоговом окне блока, либо путем подключения к блоку внешнего источника или источников индексов. Сигнал на порту данных блока, U, задает значения, которые должны быть присвоены Y. Блок заменяет указанные элементы Y0 элементами из сигнала данных.

В зависимости от значения, которое вы вводите для параметра Number of output dimensions, отображается таблица вариантов индексов. Каждая строка таблицы соответствует одному из выходных измерений в параметре Number of output dimensions. Для каждого измерения можно определить элементы сигнала, с которыми нужно работать. Укажите векторный сигнал как одномерный, а матричный – как двумерный. Чтобы включить внешний индексный порт, в соответствующей строке таблицы установите Index Option в значение Index vector (port) или Starting index (port).

Например, рассмотрим двумерный сигнал с режимом индексации с единицы. Таблица в диалоговом окне блока Assignment изменится и будет включать по одной строке для каждого измерения. Если определить каждое измерение с помощью следующих записей:

Row Index Option Index

1

Assign all

2

Index vector (dialog)

[1 3 5]

Присваиваемые значения имеют вид Y[1:end,[1 3 5]]=U.

При использовании блока Assignment в обычном режиме Engee инициализирует выходы блока нулем, даже если в модели они не инициализируются явным образом.

Блок можно использовать для присвоения значений векторным или матричным сигналам.

Порты

Вход

Y0 — входной сигнал инициализации
вектор | матрица

Сигнал инициализации для выходного сигнала. Если элементу не присвоено другое значение, то значение выходного элемента совпадает со значением этого входного сигнала.

Типы данных: Float16, Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64, Bool

U — порт входных данных
скаляр | вектор | матрица

Значение, присваиваемое выходному элементу, если оно указано.

Типы данных: Float16, Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64, Bool

IndxN — сигнал N-го индекса
скаляр | вектор

Внешний порт, задающий индекс для назначения соответствующего выходного элемента.

Зависимости

Чтобы использовать этот порт, установите для параметра Index Option значение Index vector (port) или Starting index (port).

Типы данных: Float16, Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64, Bool

Выход

Y — выходной сигнал с присвоенными значениями
вектор| матрица

Выходной сигнал с присвоенными значениями для указанных элементов.

Типы данных: Float16, Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64, Bool

Параметры

Number of output dimensions — количество обрабатываемых размерностей
1 (по умолчанию) | целое число

Количество обрабатываемых размерностей (N), указанное пользователем, должно совпадать с фактическим количеством размерностей входа.

Программное использование

Параметры блоков

NumberOfDimensions

Значение

Integer

По умолчанию

1

Index mode — укажите начальный номер итерации
One-based (по умолчанию) | Zero-based

Укажите режим индексации как Zero-based или One-based.

Для Zero-based индексации индекс 0 задает первый элемент входного вектора. Индекс 1 определяет второй элемент и так далее.

Для One-based индексации индекс 1 задает первый элемент входного вектора. Индекс 2, указывает второй элемент и так далее.

Программное использование

Параметр блока

IndexMode

Значения

Zero-based |One-based

По умолчанию

One-based

Index option — метод индексации элементов
Index vector (dialog)(по умолчанию) | Assign all | Index vector (port) | Starting index (dialog) | Starting index (port)

Определяет по размерности входного сигнала, как элементы сигнала должны быть проиндексированы. Из списка выберите:

  • Assign all — дальнейшая настройка не требуется. Все элементы выбраны.

  • Index vector (dialog) — включает параметр Index. Введите вектор индексов элементов. Не выбирайте эту опцию, если входной сигнал переменного размера.

  • Index vector (port) — дальнейшая настройка не требуется.

  • Starting index (dialog) — включает параметры Index и Output size. Введите начальный индекс диапазона элементов для выбора в параметре Index и количество элементов для выбора в параметре Output size. Не выбирайте эту опцию, если входной сигнал переменного размера.

  • Starting index (port) — включает параметр Output size. Введите количество элементов, которые необходимо выбрать, в параметре Output size.

При выборе опций Index vector (port) или Starting index (port) у блока появляется соответствующий порт и для параметра Initialize output (Y) можно указать одно из этих значений:

  • Initialize using input port <Y0>

  • Specify size for each dimension in table

В ином случае Y0 всегда инициализирует выходной порт Y.

Параметры Index и Output size, если они не используются для выбранного режима Index option, просто игнорируются.

Программное использование

Параметр блока

IndexOptionArray1

Значение

Index vector (dialog) | Assign all | Index vector (port) | Starting index (dialog) | Starting index (port)

По умолчанию

Index vector (dialog)

Index — индекс элементов
1 (по умолчанию) | целое число

Если параметр Index Option равен Index vector (dialog), введите индекс каждого интересующего вас элемента.

Если параметр Index Option равен Starting index (dialog), введите начальный индекс диапазона элементов, которые необходимо выбрать. Количество элементов от начальной точки определяется размером этого измерения в U.

Программное использование

Параметры блоков

IndexParamArray

Значение

скаляр | вектор | матрица

По умолчанию

1

Output size — ширина выходного сигнала блока
1 (по умолчанию) | целое число

Задает ширину выходного сигнала блока.

Зависимости

Чтобы использовать этот параметр, установите для параметра Initialize output (Y) значение Specify size for each dimension in table.

Программное использование

Параметры блоков

OutputSizeArray1

Значение

скаляр | вектор | матрица

По умолчанию

1

Initialize output (Y) — метод получения входного сигнала
Initialize using input port <Y0> (по умолчанию) | Specify size for each dimension in the table

Укажите, как инициализировать выходной сигнал.

Initialize using input port <Y0> — сигнал на входном порту Y0 инициализирует выходной сигнал.

Specify size for each dimension in the table — требуется указать ширину выходного сигнала блока в параметре Output Size. Если выход имеет не назначенные элементы, значение этих элементов не определено.

Зависимости

Чтобы использовать этот параметр, установите для параметра Index Option значение Index vector (port) или Starting index (port) для одного или нескольких измерений.

Программное использование

Параметр блока

OutputInitialize

Значения

Initialize using input port <Y0> | Specify size for each dimension in the table

По умолчанию

Initialize using input port <Y0>

Action if any output element is not assigned — реакция, если не назначены все выходные элементы
None (по умолчанию) | Error

Укажите, выдавать ли ошибку, если не назначены все выходные элементы. Варианты включают:

  • None — никаких действий.

  • ErrorEngee завершает симуляцию и отображает ошибку.

Зависимости

Чтобы использовать этот параметр, установите для параметра Index Option значение Index vector (port) или Starting index (port) для одного или нескольких измерений, затем установите для параметра Initialize output (Y) значение Specify size for each dimension in the table.

Программное использование

Параметр блока

DiagnosticForDimensions

Значения

None | Error

По умолчанию

None