Interpolation Using Prelookup
Использование заранее вычисленных значений индексов и дробей для ускорения аппроксимации N-мерной функции.
Описание
Блок Interpolation Using Prelookup наиболее эффективен при использовании блока Prelookup. Блок Prelookup вычисляет индекс и долю интервала, которые определяют, как его входное значение u относится к набору данных точек разрыва. Полученные значения индекса и дроби подаются в блок Interpolation Using Prelookup для интерполяции n-мерной таблицы. Оба блока имеют интегрированные алгоритмы.
Значок блока изменятся в зависимости от выставленных параметров.
Поддерживаемые операции блока
Для использования блока Interpolation Using Prelookup необходимо задать набор значений табличных данных непосредственно в диалоговом окне. Как правило, эти табличные значения соответствуют наборам данных точек разрыва, заданных в блоках Prelookup. Блок Interpolation Using Prelookup формирует выходные данные путем поиска или оценки табличных значений на основе значений индекса и доли интервала, подаваемых из блоков Prelookup. Метки для индекса и долю интервала отображаются как k и f на иконке блока Interpolation Using Prelookup.
При вводе значений индекса и доли интервала… | Блок Interpolation Using Prelookup… |
---|---|
Сопоставление со значениями в наборах данных с точками разрыва |
Выводит значение таблицы на пересечении строк, столбцов и точек разрыва более высокой размерности |
Не сопоставляются со значениями в наборах данных точек разрыва, но находятся в пределах диапазона |
Интерполирует соответствующие табличные значения с помощью выбранного метода интерполяции |
Не сопоставляются со значениями в наборах данных точек разрыва и находятся вне диапазона |
Экстраполирует выходное значение с помощью выбранного метода экстраполяции |
Порты
Вход
k1 — индекс, k, для первой размерности таблицы
скаляр
| вектор
| матрица
Индекс с первым значением, k, задающий интервал, содержащий входное значение u, для первой размерности таблицы.
Типы данных: Float16
, Float32
, Float64
, Int8
, Int16
, Int32
, Int64
, UInt8
, UInt16
, UInt32
, UInt64
f1 — дробь, f, для первой размерности таблицы
скаляр
| вектор
| матрица
Дробь f, представляющая нормированное положение входа в интервале k для первой размерности таблицы.
Типы данных: Float16
, Float32
, Float64
, Int8
, Int16
, Int32
, Int64
, UInt8
, UInt16
, UInt32
, UInt64
kn — индекс, k, для n-й размерности таблицы
скаляр
| вектор
| матрица
Индекс с первым значением, k, задающий интервал, содержащий входное значение u для n-й размерности таблицы.
Типы данных: Float16
, Float32
, Float64
, Int8
, Int16
, Int32
, Int64
, UInt8
, UInt16
, UInt32
, UInt64
fn — дробь, f, для n-й размерности таблицы
скаляр
| вектор
| матрица
Дробь, f, представляющая нормированное положение входа в интервале k для n-й размерности таблицы.
Типы данных: Float16
, Float32
, Float64
, Int8
, Int16
, Int32
, Int64
, UInt8
, UInt16
, UInt32
, UInt64
Параметры
Number of dimensions — размерность данных таблицы
2 (по умолчанию)
| целое число от 1 до 30
Укажите размерность, которую должны иметь данные таблицы. Число измерений определяет количество независимых переменных для таблицы.
Максимальная размерность таблицы, поддерживаемая этим блоком, равна 30
.
Параметр блока |
|
Значения |
|
По умолчанию |
|
Value — значения табличных данных
sqrt.(collect(1:11) * collect(1:11)') (по умолчанию)
| многомерный массив табличных данных
Задание табличных данных в виде N-мерного массива, где N — значение параметра Number of dimensions.
Параметр блока |
|
Значения |
|
По умолчанию |
|
Interpolation method — способ интерполяции
Linear point-slope (по умолчанию)
| Flat
| Nearest
| Linear Lagrange
Метод, которым блок интерполирует данные таблицы.
Параметр блока |
|
Значения |
|
По умолчанию |
|
Extrapolation method — способ обработки входных значений, которые выходят за пределы диапазона набора данных точек разрыва
Linear (по умолчанию)
| Clip
Метод, который используется блоком для экстраполяции значений для всех входов, выходящих за пределы диапазона набора данных точек разрыва.
Варианты: Clip
или Linear
.
Если задан метод экстраполяции Linear
, то значение вычисляется путем линейной интерполяции. Например, если методом интерполяции является Linear Lagrange
, метод экстраполяции наследует уравнение Linear Lagrange
для вычисления экстраполированного значения.
Чтобы блоки Prelookup и Interpolation Using Prelookup повторяли поведение блока n-D Lookup Table, метод экстраполяции для обоих блоков Prelookup и Interpolation Using Prelookup должен быть таким же, как и при использовании только блока n-D Lookup Table.
Например, чтобы получить такое же поведение блока n-D Lookup Table с методом экстраполяции, установленным на Linear
, установите метод экстраполяции на Linear
как для блока Prelookup, так и для блока Interpolation Using Prelookup.
Зависимости
Чтобы использовать параметр Extrapolation method, установите для параметра Interpolation method значение Linear
; в противном случае будет выдаваться специальная ошибка.
Блок Interpolation Using Prelookup не поддерживает линейную экстраполяцию, если входные или выходные сигналы имеют тип данных с фиксированной точкой.
Параметр блока |
|
Значения |
|
По умолчанию |
|