1-D Lookup Table (mod.)
Приближенная одномерная функция.
Описание
Поддерживаемые операции с блоками
Блок 1-D Lookup Table вычисляет приближенное значение некоторой функции:
,
где функция может быть эмпирической.
Блок сопоставляет входные данные с таблицей выходных значений, используя методы интерполяции и экстраполяции.
Блок поддерживает следующие методы интерполяции: Flat
, Linear point-slope
, Linear Lagrange
, Nearest
, Cubic-spline
и Akima spline
.
Задание опорных точек и таблицы выходных значений
Эти параметры блока задают значения для опорных точек и таблицы выходных значений.
Параметр блока | Назначение |
---|---|
Breakpoints |
Задает вектор опорных точек. |
Table data |
Определяет соответствующий набор выходных значений. |
Как блок генерирует выходные данные
Блок 1-D Lookup Table генерирует выходные данные поиском по таблице или путем оценки значений на основе входных значений.
Входные данные блока | Поведение блока 1-D Lookup Table |
---|---|
Совпадают со значениями в наборах данных опорных точек |
Выводит табличное значение |
Не совпадают со значениями в наборах данных опорных точек, но находятся в пределах диапазона |
Интерполирует соответствующие значения таблицы, используя выбранный Interpolation method |
Не совпадают со значениями в наборах данных опорных точек и находятся вне диапазона |
Экстраполирует выходное значение, используя выбранный Extrapolation method |
Порты
Вход
Port_1 — входной сигнал
скаляр
| вектор
| матрица
Входной сигнал u1
, сопоставляемый с выходным значением путем поиска или интерполяции по таблице значений.
Типы данных: Float16
, Float32
, Float64
, Int8
, Int16
, Int32
, Int64
, Int128
, UInt8
, UInt16
, UInt32
, UInt64
, UInt128
, Fixed-point
, Bool
Выход
Port_1 — выходной сигнал, вычисленный путем поиска или оценки значений таблицы
скаляр
| вектор
| матрица
Выходной сигнал, вычисленный путем поиска или оценки значений таблицы на основе входных значений.
Когда входные данные блока… | То блок 1-D Lookup Table… |
---|---|
Совпадают со значениями в наборах данных опорных точек |
Выводит табличное значение |
Не совпадают со значениями в наборах данных опорных точек, но находятся в пределах диапазона |
Интерполирует соответствующие значения таблицы, используя выбранный Interpolation method |
Не совпадают со значениями в наборах данных опорных точек и находятся вне диапазона |
Экстраполирует выходное значение, используя выбранный Extrapolation method |
Типы данных: Float16
, Float32
, Float64
, Int8
, Int16
, Int32
, Int64
, Int128
, UInt8
, UInt16
, UInt32
, UInt64
, UInt128
, Fixed-point
, Bool
Параметры
Алгоритм
Interpolation method — способ интерполяции между значениями опорных точек
Linear point-slope (по умолчанию)
| Flat
| Nearest
| Linear Lagrange
| Cubic spline
| Akima spline
Когда входной сигнал попадает между значениями опорных точек, блок интерполирует выходное значение, используя соседние точки.
Зависимости
-
Если вы выберете
Akima spline
, методом экстраполяции может быть толькоAkima spline
.
Параметр блока |
|
Значения |
|
По умолчанию |
|
Extrapolation method — способ обработки входных значений, которые выходят за пределы диапазона набора данных опорные точки
Linear (по умолчанию)
| Clip
| Cubic spline
| Akima spline
Если задан метод экстраполяции Linear
, то значение вычисляется путем линейной интерполяции.
Зависимости
-
Чтобы выбрать
Cubic spline
для Extrapolation method, необходимо также выбратьCubic spline
для Interpolation method. -
Чтобы выбрать
Akima spline
для Extrapolation method, вы также должны выбратьAkima spline
для Interpolation method.
Параметр блока |
|
Значения |
|
По умолчанию |
|
Таблица и опорные точки
Number of table dimensions — количество измерений таблицы
1 (по умолчанию)
Введите количество измерений в таблице. Этот параметр определяет:
-
Количество независимых переменных для таблицы и количество входных данных блока
-
Количество полей (параметр Breakpoints <n>) для указания наборов опорных точек.
В настоящий момент блок поддерживает только размерность 1.
Параметр блока |
|
Значения |
|
По умолчанию |
|
Table data — таблица выходных значений
tanh.(collect(-5:5)) (по умолчанию)
Таблица выходных значений.
Во время моделирования размер матрицы должен соответствовать размерам, определенным параметром Number of table dimensions таблицы.
Параметр блока |
|
Значения |
|
По умолчанию |
|
Breakpoints 1 — значения опорных точек для первого измерения
collect(-5:5) (по умолчанию)
Опорные точки для первого измерения.
Параметр блока |
|
Значения |
|
По умолчанию |
|
Типы данных
Table data — тип данных таблицы
Same as output (по умолчанию)
| Float64
| Inherit:auto
| Float16
| Float32
| Int8
| Int16
| Int32
| Int64
| Int128
| UInt8
| UInt16
| UInt32
| UInt64
| UInt128
| Fixed-Point
Укажите тип данных таблицы.
Параметр блока |
|
Тип |
|
Значения |
|
По умолчанию |
|
Table data fixed-point type — тип данных таблицы с фиксированной точкой
Fixed{Int16, 0} (по умолчанию)
| описание типа данных с фиксированной точкой
Укажите тип данных таблицы с фиксированной точкой.
Зависимости
Включается, когда параметр Table data установлен в значение Fixed-point
Параметр блока |
|
Значение |
|
По умолчанию |
|
Breakpoints — тип данных точки останова
Same as input (по умолчанию)
| Inherit:auto
| Float16
| Float32
| Float64
| Int8
| Int16
| Int32
| Int64
| Int128
| UInt8
| UInt16
| UInt32
| UInt64
| UInt128
| Fixed-Point
Укажите тип данных для набора данных точек останова.
Параметр блока |
|
Тип |
|
Значения |
|
По умолчанию |
|
Breakpoints fixed-point type — тип данных точки останова с фиксированной точкой
Fixed{Int16, 0} (по умолчанию)
| описание типа данных с фиксированной точкой
Укажите тип данных для набора данных точек останова с фиксированной точкой.
Зависимости
Включается, когда параметр Breakpoints установлен в значение Fixed-point
Параметр блока |
|
Значение |
|
По умолчанию |
|
Fraction — тип данных дроби
Inherit: auto (по умолчанию)
| Float64
| Float32
| Fixed-point
Укажите тип данных дроби.
Параметр блока |
|
Тип |
|
Значения |
|
По умолчанию |
|
Fraction fixed-point type — тип данных дроби с фиксированной точкой
Fixed{Int16, 0} (по умолчанию)
| описание типа данных с фиксированной точкой
Укажите тип данных дроби с фиксированной точкой.
Зависимости
Включается, когда параметр Fraction установлен в значение Fixed-point
Параметр блока |
|
Значение |
|
По умолчанию |
|
Intermediate results — тип данных промежуточных результатов
Same as output (по умолчанию)
| Float64
| Inherit:auto
| Float32
| Int8
| Int16
| Int32
| Int64
| Int128
| UInt8
| UInt16
| UInt32
| UInt64
| UInt128
| Fixed-Point
Укажите тип данных промежуточных результатов.
Параметр блока |
|
Тип |
|
Значения |
|
По умолчанию |
|
Intermediate results fixed-point type — тип данных промежуточных результатов с фиксированной точкой
Fixed{Int16, 0} (по умолчанию)
| описание типа данных с фиксированной точкой
Укажите тип данных промежуточных результатов с фиксированной точкой.
Зависимости
Включается, когда параметр Intermediate results установлен в значение Fixed-point
Параметр блока |
|
Значение |
|
По умолчанию |
|
Output — тип выходных данных
Same as input (по умолчанию)
| Float64
| Inherit: from 'Table data'
| Float32
| Int8
| Int16
| Int32
| Int64
| Int128
| UInt8
| UInt16
| UInt32
| UInt64
| UInt128
| Fixed-Point
Укажите тип выходных данных.
Параметр блока |
|
Тип |
|
Значения |
|
По умолчанию |
|
Output fixed-point type — тип выходных данных с фиксированной точкой
Fixed{Int16, 0} (по умолчанию)
| описание типа данных с фиксированной точкой
Укажите тип выходных с фиксированной точкой.
Зависимости
Включается, когда параметр Output установлен в значение Fixed-point
Параметр блока |
|
Значение |
|
По умолчанию |
|
Integer rounding mode — режим округления для операций с фиксированной точкой
Floor (по умолчанию)
| Ceiling
| Convergent
| Floor
| Nearest
| Round
| Zero
Укажите режим округления для вычислений в таблице поиска с фиксированной точкой, которые происходят во время моделирования или выполнения кода, сгенерированного на основе модели.
Эта опция не влияет на округление значений параметров блока.
Параметр блока |
|
Тип |
|
Значения |
|
По умолчанию |
|
Saturate on integer overflow — метод действия при переполнении
off (по умолчанию)
| on
Действие | Причины для принятия этого решения | Что происходит при переполнении | Пример |
---|---|---|---|
Установите этот флажок( |
В вашей модели возможно переполнение, и вам нужна явная защита от насыщения в генерируемом коде. |
Переполнения насыщаются до минимального или максимального значения, которое может представлять данный тип данных |
Переполнение, связанное со знаковым 8-битным целым числом, может насытиться до -128 или 127 |
Не устанавливайте этот флажок( |
Вы хотите оптимизировать эффективность генерируемого кода. |
Переполнения оборачиваются в соответствующее значение, которое может быть представлено типом данных |
Число 130 не помещается в знаковое 8-битное целое число и сворачивается в -126 |
При установке этого флажка насыщение применяется ко всем внутренним операциям блока, а не только к выходу или результату.
Параметр блока |
|
Тип |
|
Значения |
|
По умолчанию |
|