Prelookup

Вычислите индекс и часть для блока Curve Using Prelookup или Map Using Prelookup

  • Библиотека:
  • AUTOSAR Blockset / Классическая Платформа / Библиотечные подпрограммы / Интерполяция

Описание

Блок Prelookup вычисляет индекс, и фракционируйтесь, которые задают как его входное значение u относится к набору данных точки останова. Блок Prelookup питает получившийся выходной индекс и дробные значения как шина в блок Curve Using Prelookup, чтобы интерполировать одномерную таблицу или блок Map Using Prelookup, чтобы интерполировать двумерную таблицу. Когда блок Prelookup используется или с блоком Curve Using Prelookup или Map Using Prelookup, они выполняют ту же операцию алгоритма как Curve или блоки Map. Использование двух блоков вместе предлагает большую гибкость и более эффективную симуляцию и генерацию кода.

Если вы выбираете заменяющую библиотеку кода (CRL) AUTOSAR 4.0 для своей модели AUTOSAR, код, сгенерированный от этого блока, заменяется библиотечной подпрограммой AUTOSAR, которую вы конфигурируете в диалоговом окне параметров блоков.

Порты

Входной параметр

развернуть все

Блок Prelookup принимает сигналы с действительным знаком любого типа числовых данных, что Simulink™ поддерживает, кроме булевской переменной. Блок Prelookup поддерживает типы данных с фиксированной точкой для данных о точке останова и сигналов.

Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | fixed point | bus

Вывод

развернуть все

Выводит индекс и часть как шина, которая задает интервал, содержащий вход и нормированное положение входа на интервале. bus тип задан автоматически на основе того, если Targeted Routine Library установлен в фиксированную точку (IFX) или с плавающей точкой (IFL) замена кода.

Типы данных: bus

Параметры

развернуть все

Если вы выбираете заменяющую библиотеку кода (CRL) AUTOSAR 4.0 для своей модели, код, сгенерированный от этого блока, заменяется от выбранной стандартной библиотеки AUTOSAR. Этот параметр позволяет вам выбрать или фиксированную точку (IFX) или с плавающей точкой (IFL) замена кода и проверки валидации.

Этот параметр отражает, что имя стандартной программы заменяющей библиотеки кода (CRL) AUTOSAR раньше заменяло код, сгенерированный этим блоком. Соглашение о присвоении имен включает целенаправленную стандартную библиотеку, метод интерполяции и тип блока. Этот параметр только для ссылки и не должен быть отредактирован.

Табличная спецификация

Если вы устанавливаете этот параметр на:

  • Explicit values, Breakpoints и параметр становятся видимыми в диалоговом окне.

  • Breakpoint object, параметр Name отображается в диалоговом окне.

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

Параметры блоков: BreakpointsSpecification
Ввод: символьный вектор
Значения: 'Explicit values' | 'Breakpoint object'
Значение по умолчанию: 'Explicit values'

Явным образом задайте данные о точке останова. Каждый набор данных точки останова должен быть строго монотонно увеличивающимся вектором, который содержит два или больше элемента.

Зависимости

Чтобы включить этот параметр, установите Breakpoints Specification на Explicit values.

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

Параметры блоков: BreakpointsData
Ввод: символьный вектор
Значения: '[1 2 3]'
Значение по умолчанию: '[1 2 3]'

Задайте имя Simulink.Breakpoint объект. Если Simulink.Breakpoint объект не существует, кликает по кнопке действий и выбирает Create. Соответствующие параметры нового объекта точки останова заполняются с информацией о блоке.

Зависимости

Чтобы включить этот параметр, установите Breakpoints Specification на Breakpoint object.

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

Параметры блоков: BreakpointObject
Ввод: символьный вектор
Значения: Simulink.Breakpoint объект
Значение по умолчанию: ''

Алгоритмы

Каждый метод поиска имеет преимущества скорости в различных ситуациях:

  • Если входные значения для u не варьируйтесь значительно между временными шагами, выбор Linear search с Begin index search using previous index result производит лучшую производительность.

  • Если входные значения для u перейдите больше чем один или два табличных интервала на временной шаг, выбор Binary search производит лучшую производительность.

Субоптимальный выбор метода поиска по индексу может вести, чтобы замедлить производительность моделей, которые полагаются в большой степени на интерполяционные таблицы.

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

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

Параметры блоков: IndexSearchMethod
Значения: 'Binary search' | 'Linear search'
Ввод: символьный вектор
Значение по умолчанию: 'Binary search'

Задайте округляющийся режим для фиксированной точки или вычислений интерполяционной таблицы с плавающей точкой, которые происходят в процессе моделирования или подписание кода, сгенерированного из модели.

Эта опция не влияет на округление значений параметров блоков. Simulink округляет такие значения к самому близкому представимому целочисленному значению. Чтобы управлять округлением параметров блоков, введите выражение с помощью функции округления MATLAB™ в поле редактирования на диалоговом окне блока.

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

Параметры блоков: RndMeth
Ввод: символьный вектор
Значения: 'Round' | 'Zero'
Значение по умолчанию: 'Round'

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью Simulink® Coder™.

Введенный в R2019a