Используйте предварительно вычисленный индекс и дробные значения, чтобы ускорить приближение N-мерной функции
Simulink / Интерполяционные таблицы
Блок Interpolation Using Prelookup является самым эффективным, когда используется с блоком Prelookup. Блок Prelookup вычисляет индекс и часть интервала, которые задают, как ее входное значение u
относится к набору данных точки останова. Подайте получившийся индекс и дробные значения в блок Interpolation Using Prelookup, чтобы интерполировать n-мерную таблицу. Эти два блока распределили алгоритмы. Когда объединено вместе, они выполняют ту же операцию как интегрированный алгоритм в n-D блоке Lookup Table. Однако Предварительный поиск и Интерполяция Используя блоки Перед поиском предлагают большую гибкость, которая может обеспечить более эффективное моделирование и генерацию кода. Для получения дополнительной информации смотрите Эффективность Производительности.
Чтобы использовать блок Interpolation Using Prelookup, вы задаете набор табличных значений данных непосредственно на диалоговом окне или значениях канала во входной порт T. Как правило, эти табличные значения соответствуют наборам данных точки останова, заданным в блоках Перед поиском. Блок Interpolation Using Prelookup генерирует выведенный путем поиска или оценки табличных значений на основе индекса и значений части интервала, питаемых от блоков Перед поиском. Метки для индекса и части интервала появляются как k
и f
на значке блока Interpolation Using Prelookup.
Когда входные параметры для индекса и части интервала... | Блок Interpolation Using Prelookup... |
---|---|
Сопоставьте со значениями в наборах данных точки останова | Выводит табличное значение на пересечении строки, столбца и более высоких точек останова размерности |
Не сопоставляйте со значениями в наборах данных точки останова, но в области значений | Интерполирует соответствующие табличные значения с помощью Метода интерполяции, который вы выбираете |
Не сопоставляйте со значениями в наборах данных точки останова, и вне области значений | Экстраполирует выходное значение с помощью метода Экстраполяции, который вы выбираете |
Можно использовать Количество подтабличного параметра размерностей выбора, чтобы указать, что интерполяция происходит только на подмножестве табличных данных. Чтобы активировать этот режим интерполяции, установите этот параметр на положительное целое число. Это значение задает количество размерностей, чтобы выбрать, начинающий с самой высокой размерности табличных данных для главного столбцом алгоритма по умолчанию. Поэтому значение должно быть меньше чем или равно Количеству табличных размерностей.
Для главных строкой алгоритмов интерполяция начинает с первой или самой низкой размерности табличных данных.
Для ненулевых значений подтабличное поведение выбора оптимизировано для главного строкой размещения, когда вы выбираете Math и Data Types> алгоритмы Use, оптимизированные для параметра конфигурации размещения главного массива строки.
Предположим, что у вас есть 3-D табличные данные в вашем блоке Interpolation Using Prelookup. Это поведение запрашивает главный столбцом алгоритм.
Количество размерностей выбора | Действие блоком | Блокируйте внешний вид |
---|---|---|
0 | Интерполирует целую таблицу и не активирует подтабличный выбор | Не изменяется |
1 | Интерполирует первые две размерности и выбирает третью размерность | Отображает входной порт с маркировать s3 , который вы используете, чтобы выбрать и интерполировать 2D таблицы |
2 | Интерполирует первую размерность и выбирает вторые и третьи размерности | Отображения, которые два входных порта с маркируют s2 и s3 , который вы используете, чтобы выбрать и интерполировать 1D таблицы |
Подтабличный выбор использует основанную на нуле индексацию. Для примера интерполяции подмножества табличных данных введите sldemo_bpcheck
в командной строке MATLAB®.
Для 2D или n-D интерполяции без подтабличного выбора главные столбцом и главные строкой алгоритмы могут отличаться по порядку выходных вычислений, вызывая небольшие различные числовые результаты.
k1
— Индекс, k
, для первой размерности таблицыОснованный на нуле индекс, k
, задавая интервал, содержащий входной параметр u
для первой размерности таблицы.
Типы данных: единственный
| удваиваются
| int8
| int16
| int32
| uint8
| uint16
| uint32
| фиксированная точка
f1
— Часть, f
, для первой размерности таблицыЧасть, f
, представляя нормализованное положение входного параметра в интервале, k
, для первой размерности таблицы.
Типы данных: единственный
| удваиваются
| int8
| int16
| int32
| uint8
| uint16
| uint32
| фиксированная точка
kn
— Индекс, k
, для n
-th размерность таблицыОснованный на нуле индекс, k
, задавая интервал, содержащий входной параметр u
для n
-th размерность таблицы.
Типы данных: единственный
| удваиваются
| int8
| int16
| int32
| uint8
| uint16
| uint32
| фиксированная точка
fn
— Часть, f
, для n
-th размерность таблицыЧасть, f
, представляя нормализованное положение входного параметра в интервале, k
, для n
-th размерность таблицы.
Типы данных: единственный
| удваиваются
| int8
| int16
| int32
| uint8
| uint16
| uint32
| фиксированная точка
kf1
— Введите содержащий индекс k
и фракционируйте f
bus object
Вводы к kf1 порту содержат, индексируют k
и фракционировали f
, заданный как объект шины.
Чтобы включить этот порт, выберите индекс Require и часть как флажок шины.
Количество доступных входных портов kf
зависит от значения Количества размерностей и Количества подтабличных параметров размерностей выбора.
Типы данных: единственный
| удваиваются
| int8
| int16
| int32
| uint8
| uint16
| uint32
| фиксированная точка
| шина
kfn
— Введите содержащий индекс k
и фракционируйте f
bus object
Вводы к kfn порту содержат, индексируют k
и фракционировали f
для энной размерности входного параметра, заданного как объект шины.
Чтобы включить этот порт, выберите индекс Require и часть как флажок шины.
Количество доступных kf входных портов зависит от значения Количества размерностей и Количества подтабличных параметров размерностей выбора.
Типы данных: единственный
| удваиваются
| int8
| int16
| int32
| uint8
| uint16
| uint32
| фиксированная точка
| шина
sm
— Выберите и интерполируйте подмножество табличных данныхБлок использует входные параметры для sm
, sm-1
... порт, чтобы выполнить выбор и интерполяцию в рамках подтаблиц. m
равняется Количеству размерностей - Количество подтабличных размерностей выбора.
Чтобы включить этот порт, Количество подтабличных размерностей выбора должно быть положительным целым числом, меньше чем или равным Количеству размерностей.
Типы данных: единственный
| удваиваются
| int8
| int16
| int32
| uint8
| uint16
| uint32
| булевская переменная
| фиксированная точка
| перечисленный
| шина
T
Табличные данныеТабличные значения данных, предоставленные, как введено порту T. Как правило, эти табличные значения соответствуют наборам данных точки останова, заданным в блоках Перед поиском. Блок Interpolation Using Prelookup генерирует выведенный путем поиска или оценки табличных значений на основе индекса (k
) и часть интервала (f
) значения, питаемые от блоков Перед поиском.
Чтобы включить этот порт, установите Источник на Input port
.
Типы данных: единственный
| удваиваются
| int8
| int16
| int32
| uint8
| uint16
| uint32
| фиксированная точка
Port_1
— Приближение N-мерной функцииПриближение N-мерной функции, вычисленной путем интерполяции (или экстраполирования) табличные данные с помощью значений от входного индекса, k
, и части, f
.
Типы данных: единственный
| удваиваются
| int8
| int16
| int32
| uint8
| uint16
| uint32
| фиксированная точка
Number of dimensions
— Количество табличных размерностей данных2
(значение по умолчанию) | целое число между 1 и 30Задайте количество размерностей, которые должны иметь табличные данные. Количество размерностей задает количество независимых переменных для таблицы.
Задавать... | Сделайте это... |
---|---|
1, 2, 3, или 4 |
Выберите значение из выпадающего списка. |
Более высокое количество табличных размерностей |
Введите положительное целое число непосредственно в поле. Максимальное количество табличных размерностей, которые поддерживает этот блок, равняется 30. |
Блочный параметр:
NumberOfTableDimensions |
Ввод: символьный вектор |
Значения:
'1' | '2' | '3' | '4' |... | '30' |
Значение по умолчанию:
'2' |
Require index and fraction as bus
— Индексируйте и фракционируйтесь, входные параметры могут быть объединены в шинеoff
(значение по умолчанию) | on
Если вы выбираете этот параметр, подтабличные порты выбора продолжают работать в режиме нешины.
Чтобы позволить блоку Prelookup предоставить входной параметр к блоку Interpolation Using Prelookup, установите:
Выведите выбор к Index and fraction as bus
Выведите к Bus: <object name>
, где <object name>
должен быть допустимым именем объекта шины, доступным для модели
Блочный параметр:
RequireIndexFractionAsBus |
Ввод: символьный вектор |
Значения:
'off' | 'on' |
Значение по умолчанию:
'off' |
Specification
— Выберите, как ввести табличные данныеExplicit values
(значение по умолчанию) | Lookup table object
Задайте, ввести ли табличные данные непосредственно или использовать объект интерполяционной таблицы. Если вы устанавливаете этот параметр на:
Explicit values
, Источник и Параметры, передаваемые по значению видимы на диалоговом окне.
Lookup table object
, параметр Имени видим на диалоговом окне.
Блочный параметр:
TableSpecification |
Ввод: символьный вектор |
Значения:
'Явные значения' | 'Объект интерполяционной таблицы' |
Значение по умолчанию:
'Explicit values' |
Source
— Источник табличных данныхDialog
(значение по умолчанию) | Input port
Задайте, ввести ли табличные данные в диалоговое окно или наследовать данные от входного порта. Если вы устанавливаете Источник на:
Dialog
, введите табличные данные в текстовое поле под Значением
Input port
, проверьте, что восходящий сигнал снабжает табличными данными к табличному входному порту
Чтобы включить этот параметр, установите Спецификацию на Explicit values
.
Блочный параметр:
TableSource |
Ввод: символьный вектор |
Значения:
'Диалоговое окно' | 'Входной порт' |
Значение по умолчанию:
диалоговое окно |
Value
— Specifysqrt([1:11]' * [1:11])
(значение по умолчанию) | многомерный массив табличных данныхЗадайте табличные данные как N
-D массив, где N
является значением Количества параметра размерностей. Можно отредактировать блок-схему, не задавая правильно определенную размеры матрицу путем ввода пустой матрицы ([]
) или неопределенная переменная рабочей области в поле редактирования Значения. Для получения информации о том, как создать многомерные массивы в MATLAB, смотрите Многомерные массивы (MATLAB).
Если вы устанавливаете Источник на Input port
, проверяете, что восходящий сигнал снабжает табличными данными к входному порту T. Размер табличных данных должен совпадать с Количеством табличных размерностей. Для этой опции блок наследовал табличные атрибуты от входного порта T.
Чтобы отредактировать интерполяционные таблицы с помощью Редактора Интерполяционной таблицы, нажмите Edit (см. Интерполяционные таблицы Редактирования).
Чтобы включить этот параметр и явным образом задать табличные значения на диалоговом окне, необходимо установить Спецификацию на Explicit values
и Источник к Dialog
.
Блочный параметр:
Таблица |
Ввод: символьный вектор |
Значения:
скаляр, вектор, матрица или массив N-D |
Значение по умолчанию:
'sqrt([1:11]' * [1:11])' |
Имя
Имя существующего объекта Simulink.LookupTable
Simulink.LookupTable object
Задайте имя существующего объекта Simulink.LookupTable
. Существующая интерполяционная таблица ссылки на объект объекты точки останова Simulink®.
Чтобы включить этот параметр, установите Спецификацию на Lookup table object
.
Блочный параметр:
LookupTableObject |
Ввод: символьный вектор |
Значение:
Simulink. Объект LookupTable |
Значение по умолчанию:
'' |
Метод интерполяции
Выберите Linear point-slope
, Flat
, Nearest
или Linear Lagrange
Linear point-slope
(значение по умолчанию) | Nearest
| Flat
| Linear Lagrange
Задайте метод блочное использование, чтобы интерполировать табличные данные. Можно выбрать Linear point-slope
, Flat
, Nearest
или Linear Lagrange
. Смотрите Методы интерполяции для получения дополнительной информации.
Блочный параметр:
InterpMethod |
Ввод: символьный вектор |
Значения:
'Плоский' | 'Линейный наклон точки' | 'Самый близкий' | 'Линейный Лагранж' |
Значение по умолчанию:
'Linear point-slope' |
ExtrapolationMethod
Метод обработки ввел, который выходит за пределы области значений набора данных точки остановаLinear
(значение по умолчанию) | Clip
Задайте метод блочное использование, чтобы экстраполировать значения для всех входных параметров, которые выходят за пределы области значений набора данных точки останова. Можно выбрать Clip
или Linear
. См. Методы Экстраполяции для получения дополнительной информации.
Если методом экстраполяции является Linear
, значение экстраполяции вычисляется на основе выбранного метода линейной интерполяции. Например, если методом интерполяции является Линейный Лагранж, метод экстраполяции наследовал Линейное Лагранжево уравнение, чтобы вычислить экстраполируемое значение.
Чтобы включить параметр метода Экстраполяции, установите Метод интерполяции для Linear
.
Блок Interpolation Using Prelookup не поддерживает экстраполяцию Linear
, когда сигналы ввода или вывода задают типы данных целочисленной или фиксированной точки.
Блочный параметр:
ExtrapMethod |
Ввод: символьный вектор |
Значения:
'Отсеките' | 'Линейный' |
Значение по умолчанию:
'Linear' |
Valid index input may reach last index
— Позвольте входным параметрам получать доступ к последним элементам табличных данныхoff
(значение по умолчанию) | on
Задайте, как блочные входные параметры для индекса (k
) и часть интервала (f
) получают доступ к последним элементам n-мерных табличных данных. Индексные значения являются базирующимся нулем.
Флажок | Блокируйте поведение |
---|---|
|
Возвращает значение последнего элемента в размерности его таблицы когда:
|
|
Возвращает значение последнего элемента в размерности его таблицы когда:
|
Этот флажок видим только когда:
Методом интерполяции является Linear
Методом экстраполяции является Clip
То, когда вы выбираете Valid index input, может достигнуть последнего индекса для блока Interpolation Using Prelookup, необходимо также выбрать Use последняя точка останова для входного параметра в или выше верхнего предела для всех блоков Перед поиском, которые подают его. Это действие позволяет блокам использовать то же соглашение индексации при доступе к последним элементам их точки останова и табличных наборов данных.
Блочный параметр:
ValidIndexMayReachLast |
Ввод: символьный вектор |
Значения:
'off' | 'on' |
Значение по умолчанию:
'off' |
Diagnostic for out-of-range input
— Блокируйте действие, когда введенный будет вне области значенийNone
(значение по умолчанию) | Warning
| Error
Задайте, произвести ли предупреждение или ошибку, когда входной параметр вне области значений. Опции включают:
'none'
Не произведите ответ.
Предупреждение
Отобразите предупреждение и продолжите моделирование.
Ошибка
Отключите моделирование и отобразите ошибку.
Блочный параметр: DiagnosticForOutOfRangeInput |
Ввод: символьный вектор |
Значения: 'Ни один' | 'Предупреждение' | 'Ошибка' |
Значение по умолчанию: 'none' |
Number of sub-table selection dimensions
— Количество размерностей выходной подтаблицы вычисления0
(значение по умолчанию) | положительное целое число, меньше чем или равное количеству табличных размерностейЗадайте количество размерностей подтаблицы что блочное использование, чтобы вычислить вывод. Следуйте этим правилам:
Чтобы включить подтабличный выбор, введите положительное целое число.
Это целое число должно быть меньше чем или равно Количеству табличных размерностей.
Чтобы отключить подтабличный выбор, введите 0
, чтобы интерполировать целую таблицу.
Для ненулевых значений подтабличное поведение выбора оптимизировано для главного строкой размещения, когда вы выбираете Math и Data Types> алгоритмы Use, оптимизированные для параметра конфигурации размещения главного массива строки.
Для получения дополнительной информации смотрите, Как Блок Интерполирует Подмножество Табличных Данных.
Блочный параметр:
NumSelectionDims |
Ввод: символьный вектор |
Значения:
'0' | '1' | '2' | '3' | '4' |... | Количество табличных размерностей |
Значение по умолчанию:
'0' |
Remove protection against out-of-range index in generated code
— Удалите код, который проверяет на индексные входные параметры из области значенийoff
(значение по умолчанию) | on
Флажок | Результат | Когда использовать |
---|---|---|
|
Сгенерированный код не включает условные операторы, чтобы проверить на индексные входные параметры из области значений. Когда входной параметр |
Для эффективности кода |
|
Сгенерированный код включает условные операторы, чтобы проверить на индексные входные параметры из области значений. |
Для важных приложений безопасности |
Если ваш входной параметр не вне области значений, можно выбрать защиту Remove от индекса из области значений во флажке сгенерированного кода для эффективности кода. По умолчанию этот флажок снимается. Для важных приложений безопасности не устанавливайте этот флажок. Если вы хотите выбрать защиту Remove от индекса из области значений во флажке сгенерированного кода, сначала проверьте, что ваши образцовые входные параметры находятся в области значений. Например:
Очистите Удалить защиту от индекса из области значений во флажке сгенерированного кода.
Установите Диагностику для входного параметра из области значений к Error
.
Моделируйте модель в режиме normal mode.
Если существуют ошибки из области значений, фиксируют их, чтобы быть в области значений и запустить моделирование снова.
Когда моделирование больше не сгенерирует из области значений входные ошибки, выберите защиту Remove от индекса из области значений во флажке сгенерированного кода.
Когда вы выбираете защиту Remove от индекса из области значений во флажке сгенерированного кода и входном параметре, k
или f
вне области значений, поведение не определено для сгенерированного кода и моделирований с помощью режима Accelerator.
В зависимости от вашего приложения можно осуществить следующие Образцовые проверки Советника, чтобы проверить использование этого флажка:
Продуктом> Embedded Coder> Идентифицирует блоки интерполяционной таблицы, которые генерируют дорогой код проверки из области значений
Продуктом> Simulink Check> Моделирование Стандартов> DO-178C/DO-331 Проверки> использование Проверки блоков интерполяционной таблицы
Для получения дополнительной информации об Образцовом Советнике, смотрите Осуществленные Образцовые Проверки.
Этот флажок не имеет никакого эффекта на сгенерированный код, когда одно из следующего верно:
Блок Prelookup подает индексные значения к блоку Interpolation Using Prelookup.
Поскольку индексные значения от блока Prelookup всегда допустимы, никакой контрольный код не необходим.
Тип данных входного параметра k
ограничивает данные допустимыми индексными значениями.
Например, типы данных беззнаковых целых чисел гарантируют неотрицательные индексные значения. Поэтому входные значения без знака k
не требуют контрольного кода для отрицательных величин.
Блочный параметр:
RemoveProtectionIndex |
Ввод: символьный вектор |
Значения:
'off' | 'on' |
Значение по умолчанию:
'off' |
'SampleTime'
Задайте частоту дискретизации как значение кроме -1
-1
(значение по умолчанию) | скалярЗадайте частоту дискретизации как значение кроме-1. Для получения дополнительной информации см. Настройку времени выборки.
Этот параметр не видим, если он явным образом не установлен в значение кроме -1
. Чтобы узнать больше, смотрите Блоки, для Которых Не Рекомендуется Частота дискретизации.
Блочный параметр:
'SampleTime' |
Ввод: символьный вектор |
Значения: скаляр |
Значение по умолчанию:
'-1' |
Табличные данные
Тип данных табличных значенийInherit: Same as output
(значение по умолчанию) | Inherit: Inherit from 'Table data'
| double
| single
| int8
| uint8
| int16
| uint16
| int32
| uint32
| fixdt(1,16)
| fixdt(1,16,0)
| fixdt(1,16,2^0,0)
| <data type expression>
Задайте тип данных table. Можно установить его на:
Правило, которое наследовало тип данных, например, Inherit: Same as output
Имя встроенного типа данных, например, single
Имя объекта типа данных, например, объекта Simulink.NumericType
Выражение, которое оценивает к типу данных, например, fixdt(1,16,0)
Нажмите ассистент типа данных Show кнопка, чтобы отобразить Ассистент Типа данных, который помогает вам установить тип данных table.
Задайте тип данных table, отличающийся от типа выходных данных для этих случаев:
Более низкие требования к памяти для того, чтобы хранить табличные данные, который использует меньший тип, чем выходной сигнал
Совместное использование предмасштабированных табличных данных между двумя Интерполяциями Используя Предварительный поиск блокируется с различными типами выходных данных
Совместное использование пользовательских данных стола с возможностью хранения в сгенерированном коде Simulink Coder™ для блоков с различными типами выходных данных
Блочный параметр:
TableDataTypeStr |
Ввод: символьный вектор |
Значения:
'Наследуйтесь: Наследуйтесь табличным данным' |, 'Наследуйтесь: То же самое, как выведено' | 'удваивается' | 'single' | 'int8' | 'uint8' | 'int16' | 'uint16' | 'int32' | 'uint32' | 'fixdt (1,16)' | 'fixdt (1,16,0)' | 'fixdt (1,16,2^0,0)' |' <выражение типа данных>' |
Значение по умолчанию:
'Inherit: Same as input' |
Table minimum
— Минимальное значение табличных данных[]
(значение по умолчанию) | скалярЗадайте минимальное значение для табличных данных как конечное, действительное, дважды, скалярное. Значением по умолчанию является (незаданный) []
.
Блочный параметр:
TableMin |
Ввод: символьный вектор |
Значения: скаляр |
Значение по умолчанию:
'[]' |
Table maximum
— Максимальное значение табличных данных[]
(значение по умолчанию) | скалярЗадайте максимальное значение для табличных данных как конечное, действительное, дважды, скалярное. Значением по умолчанию является (незаданный) []
.
Блочный параметр:
TableMax |
Ввод: символьный вектор |
Значения: скаляр |
Значение по умолчанию:
'[]' |
Intermediate results
— Тип данных промежуточных результатовInherit: Inherit via internal rule
(значение по умолчанию) | Inherit: Same as output
| double
| single
| int8
| uint8
| int16
| uint16
| int32
| uint32
| fixdt(1,16)
| fixdt(1,16,0)
| fixdt(1,16,2^0,0)
| <data type expression>
Задайте промежуточный тип данных результатов. Можно установить его на:
Правило, которое наследовало тип данных, например, Inherit: Same as output
Имя встроенного типа данных, например, single
Имя объекта типа данных, например, объекта Simulink.NumericType
Выражение, которое оценивает к типу данных, например, fixdt(1,16,0)
Нажмите ассистент типа данных Show кнопка, чтобы отобразить Ассистент Типа данных, который помогает вам установить атрибуты типа данных. Для получения дополнительной информации смотрите, Задают Типы данных Используя Ассистент Типа данных.
Используйте этот параметр, чтобы задать более высокую точность для внутренних вычислений, чем для табличных данных или выходных данных.
Блочный параметр:
IntermediateResultsDataTypeStr |
Ввод: символьный вектор |
Значения:
'Наследуйтесь: Наследуйтесь через внутреннее правило' |, 'Наследуйтесь: То же самое, как выведено' | 'удваивается' | 'single' | 'int8' | 'uint8' | 'int16' | 'uint16' | 'int32' | 'uint32' | 'fixdt (1,16)' | 'fixdt (1,16,0)' | 'fixdt (1,16,2^0,0)' |' <выражение типа данных>' |
Значение по умолчанию:
'Inherit: Same as input' |
Вывод
Тип выходных данныхInherit: Inherit from 'Table data'
(значение по умолчанию) | Inherit: Inherit via back propagation
| double
| single
| int8
| uint8
| int16
| uint16
| int32
| uint32
| fixdt(1,16)
| fixdt(1,16,0)
| fixdt(1,16,2^0,0)
| <data type expression>
Задайте тип выходных данных. Можно установить его на:
Правило, которое наследовало тип данных, например, Inherit: Inherit via back propagation
Имя встроенного типа данных, например, single
Имя объекта типа данных, например, объекта Simulink.NumericType
Выражение, которое оценивает к типу данных, например, fixdt(1,16,0)
Нажмите ассистент типа данных Show кнопка, чтобы отобразить Ассистент Типа данных, который помогает вам установить тип выходных данных.
Смотрите Типы данных Управляющего сигнала для получения дополнительной информации.
Блочный параметр:
OutDataTypeStr |
Ввод: символьный вектор |
Значения:
'Наследуйтесь: Наследуйтесь через обратное распространение' |, 'Наследуйтесь: Наследуйтесь табличным данным' | 'дважды' | 'single' | 'int8' | 'uint8' | 'int16' | 'uint16' | 'int32' | 'uint32' | 'fixdt (1,16,0)' | 'fixdt (1,16,2^0,0)' | 'fixdt (1,16,2^0,0)' |' <выражение типа данных>' |
Значение по умолчанию:
'Inherit: Inherit from table data' |
Output minimum
— Минимальное значение блок может вывести[]
(значение по умолчанию) | скалярЗадайте минимальное значение, которое блок должен вывести как конечный, скаляр с действительным знаком. Значением по умолчанию является (незаданный) []
. Программное обеспечение Simulink использует это значение, чтобы выполнить:
Проверка диапазона параметра (см., Задает Минимальные и Максимальные значения для Блочных Параметров).
Проверка диапазона моделирования (см. Диапазоны сигнала).
Автоматическое масштабирование типов данных фиксированной точки.
Оптимизация кода, который вы генерируете от модели. Эта оптимизация может удалить алгоритмический код и влиять на результаты некоторых режимов моделирования, такие как SIL или режим external mode. Для получения дополнительной информации смотрите, Оптимизируют использование заданных минимальных и максимальных значений (Simulink Coder).
Блочный параметр:
OutMin |
Ввод: символьный вектор |
Значения: скаляр |
Значение по умолчанию:
'[]' |
Output maximum
— Максимальное значение блок может вывести[]
(значение по умолчанию) | скалярЗадайте максимальное значение, которое блок должен вывести как конечный, скаляр с действительным знаком. Значением по умолчанию является (незаданный) []
. Программное обеспечение Simulink использует это значение, чтобы выполнить:
Проверка диапазона параметра (см., Задает Минимальные и Максимальные значения для Блочных Параметров).
Проверка диапазона моделирования (см. Диапазоны сигнала).
Автоматическое масштабирование типов данных фиксированной точки.
Оптимизация кода, который вы генерируете от модели. Эта оптимизация может удалить алгоритмический код и влиять на результаты некоторых режимов моделирования, такие как SIL или режим external mode. Для получения дополнительной информации смотрите, Оптимизируют использование заданных минимальных и максимальных значений (Simulink Coder).
Блочный параметр:
OutMax |
Ввод: символьный вектор |
Значения: скаляр |
Значение по умолчанию:
'[]' |
Internal rule priority
— Внутреннее правило для промежуточных вычисленийSpeed
(значение по умолчанию) | Precision
Задайте внутреннее правило для промежуточных вычислений. Выберите Speed
для более быстрых вычислений. Если вы делаете, потеря точности может произойти, обычно до 2 битов.
Блочный параметр:
InternalRulePriority |
Ввод: символьный вектор |
Значения:
'Скорость' | 'Точность' |
Значение по умолчанию:
'Speed' |
Lock data type settings against changes by the fixed-point tools
— Препятствуйте тому, чтобы Fixed-Point Tool заменили типы данныхoff
(значение по умолчанию) | on
Выберите этот параметр, чтобы препятствовать тому, чтобы Fixed-Point Tool заменили типы данных, которые вы задаете на этом блоке. Для получения дополнительной информации смотрите Блокировку Установка Типа Выходных данных (Fixed-Point Designer).
Блочный параметр: LockScale |
Ввод: символьный вектор |
Значения: 'off' | 'on' |
Значение по умолчанию: 'off' |
Integer rounding mode
— Rounding для операций фиксированной точкиFloor
(значение по умолчанию) | Convergent
| Ceiling
| Nearest
| Round
| Simplest
| Zero
Задайте округляющийся режим для операций фиксированной точки. Для получения дополнительной информации смотрите Округление (Fixed-Point Designer).
Блокируйте параметры всегда вокруг к самому близкому представимому значению. Чтобы управлять округлением блочного параметра, введите выражение с помощью MATLAB, округляющего функцию в поле маски.
Блочный параметр:
RndMeth |
Ввод: символьный вектор |
Значения:
'Потолок' | 'Конвергентный' | 'Пол' | 'Самый близкий' | 'Вокруг' | 'Самый Простой' | 'Нуль' |
Значение по умолчанию:
пол |
Saturate on integer overflow
— Метод действия переполненияoff
(значение по умолчанию) | on
Задайте, насыщает ли переполнение или переносится.
Действие | Объяснение | Повлияйте на переполнении | Пример |
---|---|---|---|
Установите этот флажок ( |
Ваша модель имеет возможное переполнение, и вы хотите явную защиту насыщенности в сгенерированном коде. |
Переполнение насыщает или к минимальному или к максимальному значению, которое может представлять тип данных. |
Максимальное значение, которое может представлять |
Не устанавливайте этот флажок ( |
Вы хотите оптимизировать эффективность своего сгенерированного кода. Вы не хотите чрезмерно определять, как блок обрабатывает сигналы из области значений. Для получения дополнительной информации смотрите Проверку на Ошибки Диапазона сигнала. |
Переполнение переносится к соответствующему значению, которое является представимым, по условию вводят. |
Максимальное значение, которое может представлять |
Когда вы устанавливаете этот флажок, насыщенность применяется к каждой внутренней операции на блоке, не только выводу или результату. Обычно, процесс генерации кода может обнаружить, когда переполнение не возможно. В этом случае генератор кода не производит код насыщенности.
Блочный параметр: SaturateOnIntegerOverflow |
Ввод: символьный вектор |
Значения:
'off' | 'on' |
Значение по умолчанию: 'off' |
Типы данных |
|
Прямое сквозное соединение |
|
Многомерные сигналы |
|
Сигналы переменного размера |
|
Обнаружение пересечения нулем |
|
Для получения дополнительной информации о генерации HDL-кода, смотрите Поддерживаемые Блоки (HDL Coder).
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.