В некоторых случаях размерности вашего набора данных диктуют, какой из блоков интерполяционной таблицы является правильным для вашего приложения. Если вы аппроксимируете одномерную функцию, рассматриваете использование любого блок 1-D Lookup Table или Lookup Table Dynamic. Если вы аппроксимируете двумерную функцию, рассматриваете блок 2-D Lookup Table. Блокируется, такие как n-D Lookup Table, и Direct Lookup Table (n-D) позволяют вам аппроксимировать функцию переменных N.
Числовое и типы данных вашего набора данных влияют на решение, которого блок интерполяционной таблицы является самым соответствующим. Несмотря на то, что все блоки интерполяционной таблицы поддерживают вещественные числа, Direct Lookup Table (n-D), 1-D Lookup Table, 2-D Lookup Table, и блоки n-D Lookup Table также поддерживают данные о сложной таблице. Все блоки интерполяционной таблицы поддерживают данные целочисленной и фиксированной точки в дополнение к double
и single
типы данных.
Примечание
Для Прямой Интерполяционной таблицы (n-D) блок, фиксированные точки поддерживаются для табличных данных, выходного порта и входного порта необязательной таблицы.
Желаемая точность и гладкость данных, возвращенных интерполяционной таблицей, определяют, какой из блоков необходимо использовать. Большинство блоков предоставляет возможности выполнять интерполяцию и экстраполяцию, улучшая точность значений, которые падают между или за пределами табличных данных, соответственно. Например, блок Lookup Table Dynamic выполняет линейную интерполяцию и экстраполяцию, в то время как блок n-D Lookup Table выполняет или линейную, интерполяцию кубическим сплайном и экстраполяцию, или интерполяцию сплайна Акима и экстраполяцию. В отличие от этого блок Direct Lookup Table (n-D) выполняет поиск по таблице без любой интерполяции или экстраполяции. Можно достигнуть соединения методов интерполяции и экстраполяции при помощи блока Prelookup с блоком Interpolation Using Prelookup.
Динамика интерполяционной таблицы вводит удар, который из блоков интерполяционной таблицы идеален для вашего приложения. Блоки используют множество методов поиска по индексу, чтобы связать входные параметры интерполяционной таблицы с наборами данных точки останова таблицы. Большинство блоков интерполяционной таблицы предлагает алгоритм двоичного поиска, который выполняет хорошо, если входные параметры значительно изменяются от одного временного шага до следующего. 1-D Lookup Table, 2-D Lookup Table, n-D Lookup Table и блоки Prelookup предлагают линейный алгоритм поиска. Используя этот алгоритм с опцией, которая продолжает искать от предыдущего результата, выполняет хорошо, если входные параметры медленно изменяются. Некоторые блоки интерполяционной таблицы также обеспечивают алгоритм поиска, который работает лучше всего на наборы данных точки останова, состоявшие из равномерно расположенных с интервалами точек останова. Можно достигнуть соединения методов поиска по индексу при помощи блока Prelookup с блоком Interpolation Using Prelookup.
Когда КПД, с которым действуют интерполяционные таблицы, важен, рассмотрите использование блока Prelookup с блоком Interpolation Using Prelookup. Эти блоки разделяют процесс поиска по таблице на два компонента — поиск по индексу, который связывает входные параметры с табличными данными, сопровождаемыми этапом интерполяции и экстраполяции, который вычисляет выходные параметры. Эти блоки позволяют вам выполнить один поиск по индексу и затем снова использовать результаты искать данные в нескольких таблицах. Кроме того, блок Interpolation Using Prelookup может выполнить подтабличный выбор, где блок интерполирует фрагмент табличных данных вместо целой таблицы. Например, если ваши 3-D табличные данные составляют стек 2D таблиц, которые будут интерполированы, можно задать вход порта выбора, чтобы выбрать один или несколько 2D таблиц от стека для интерполяции. Полная 3-D интерполяция имеет 7 подынтерполяций, но 2D интерполяция требует только 3 подынтерполяций. В результате значительные улучшения скорости возможны, когда некоторые размерности таблицы используются для укладки данных и не предназначаются для интерполяции. Эти функции делают операции поиска по таблице более эффективным, уменьшающим вычислительным усилием и временем симуляции.
Используйте следующую таблицу, чтобы идентифицировать функции, которые соответствуют конкретным блокам интерполяционной таблицы, затем выбирают блок, который лучше всего удовлетворяет ваши требования.
Функция | 1-D Lookup Table | 2-D Lookup Table | Lookup Table Dynamic | n-D Lookup Table | Direct Lookup Table (n-D) | Prelookup | Interpolation Using Prelookup |
---|---|---|---|---|---|---|---|
Методы интерполяции | |||||||
Плоский | • | • | • | • | • | ||
Самый близкий | • | • | • | • | |||
Линейный | • | ||||||
Линейный наклон точки | • | • | • | • | |||
Линейный Лагранж | • | • | • | • | |||
Кубический сплайн | • | • | • | ||||
Сплайн Акима | • | • | • | ||||
Методы экстраполяции | |||||||
Клип | • | • | • | • | • | • | |
Линейный | • | • | • | • | • | • | |
Кубический сплайн | • | • | • | ||||
Сплайн Акима | • | • | |||||
Numeric & Data Type Support | |||||||
Комплекс | • | • | • | • | |||
Двойной, один | • | • | • | • | • | • | • |
Целое число | • | • | • | • | • | • | • |
Фиксированная точка | • | • | • | • | • | • | • |
Методы поиска по индексу | |||||||
Двоичный файл | • | • | • | • | • | ||
Линейный | • | • | • | • | |||
Равномерно разнесенные точки | • | • | • | • | • | ||
Запустите в предыдущем индексе | • | • | • | • | |||
Разное | |||||||
Подтабличный выбор | • | • | |||||
Динамические данные о точке останова | • | ||||||
Динамические табличные данные | • | • | • | ||||
Проверка входного диапазона | • | • | • | • | • | • |