PS Lookup Table (4D)

Аппроксимируйте четырехмерную функцию с помощью заданного метода поиска

  • Библиотека:
  • Simscape / Библиотека Основы / Физические сигналы / Интерполяционные таблицы

  • PS Lookup Table (4D) block

Описание

Блок PS Lookup Table (4D) вычисляет приближение к некоторому функциональному f=f(x1,x2,x3,x4) учитывая x1x2 , x3, x4F точки данных. Четыре входных параметров и выход являются физическими сигналами.

Вы задаете интерполяционную таблицу путем определения параметра Table grid vector 1 (вектор из точек данных вдоль первой оси), параметр Table grid vector 2 (вектор из точек данных вдоль второй оси), параметр Table grid vector 3 (вектор из точек данных вдоль третьей оси), параметр Table grid vector 4 (вектор из точек данных вдоль четвертой оси) и параметр 4D array of table values (массив выходных значений).

x1x2 , x3, и x4 векторы данных должны быть строго монотонными, или увеличение или уменьшение. Размер массивов сведенных в таблицу значений функции должен совпадать с размерами исходных векторов. Таким образом, если эти четыре входных вектора имеют размеры 1 m, 1 n, 1 p, и 1 q, соответственно, предоставьте m- n- p- q массив выходных значений.

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

Порты

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

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

Введите точку запроса, или строку или вектор-столбец точек запроса, вдоль первой оси. Размер сигнала является любой скаляром (для точки единого запроса), или строка или вектор-столбец, представляющий координаты точек запроса вдоль первой оси.

Введите точку запроса, или строку или вектор-столбец точек запроса, вдоль второй оси. Размер сигнала должен совпадать с размером сигнала вдоль первой оси.

Введите точку запроса, или строку или вектор-столбец точек запроса, вдоль третьей оси. Размер сигнала должен совпадать с размером сигнала вдоль первой оси.

Введите точку запроса, или строку или вектор-столбец точек запроса, вдоль четвертой оси. Размер сигнала должен совпадать с размером сигнала вдоль первой оси.

Вывод

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

Значение выходной функции, на основе применения интерполяционной таблицы к этим четырем входным значениям. Размер выходного сигнала совпадает с размером входного сигнала вдоль первой оси. Модуль выходного сигнала определяется модулем параметра 4D array of table values.

Параметры

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

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

Модуль параметра должен быть соразмерным с модулем входного сигнала в порте x1. По умолчанию модулем является 1 (безразмерный). Можно выбрать различный модуль из выпадающего списка или ввести желаемое модульное имя, такое как rpm, или допустимое выражение, такое как rad/s. Для получения дополнительной информации и список модульных сокращений, смотрите, Как Задать Модули в Диалоговых окнах Блока и Модульных Определениях.

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

Модуль параметра должен быть соразмерным с модулем входного сигнала в порте x2. По умолчанию модулем является 1 (безразмерный). Можно выбрать различный модуль из выпадающего списка или ввести желаемое модульное имя, такое как rpm, или допустимое выражение, такое как rad/s. Для получения дополнительной информации и список модульных сокращений, смотрите, Как Задать Модули в Диалоговых окнах Блока и Модульных Определениях.

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

Модуль параметра должен быть соразмерным с модулем входного сигнала в порте x3. По умолчанию модулем является 1 (безразмерный). Можно выбрать различный модуль из выпадающего списка или ввести желаемое модульное имя, такое как rpm, или допустимое выражение, такое как rad/s. Для получения дополнительной информации и список модульных сокращений, смотрите, Как Задать Модули в Диалоговых окнах Блока и Модульных Определениях.

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

Модуль параметра должен быть соразмерным с модулем входного сигнала в порте x4. По умолчанию модулем является 1 (безразмерный). Можно выбрать различный модуль из выпадающего списка или ввести желаемое модульное имя, такое как rpm, или допустимое выражение, такое как rad/s. Для получения дополнительной информации и список модульных сокращений, смотрите, Как Задать Модули в Диалоговых окнах Блока и Модульных Определениях.

Задайте выходные значения как m- n- p- q массив, задавая значения функции во входных вершинах сетки. Размер выходного массива должен совпадать с размерами исходных векторов.

Модуль параметра определяет модуль выходного сигнала в порте f. По умолчанию модулем является 1 (безразмерный). Можно выбрать различный модуль из выпадающего списка или ввести желаемое модульное имя, такое как rpm, или допустимое выражение, такое как rad/s. Для получения дополнительной информации и список модульных сокращений, смотрите, Как Задать Модули в Диалоговых окнах Блока и Модульных Определениях.

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

  • Linear — Использует расширение линейного алгоритма для многомерной интерполяции. Метод выполняет линейную интерполяцию сначала в x1- направление, затем в x2- направление, затем в x3- направление, и затем в x4- направление. Выберите эту опцию, чтобы получить лучшую эффективность.

  • Smooth — Использует модифицированный алгоритм Интерполяции Акима. Для получения дополнительной информации смотрите tablelookup. Выберите эту опцию, чтобы создать непрерывную поверхность с непрерывными производными первого порядка.

Выберите один из следующих методов экстраполяции для определения выходного значения, когда входное значение найдется вне диапазона, указанного в списке аргументов:

  • Linear — Расширяет от ребра области интерполяции линейно. Наклон линейной экстраполяции равен наклону интерполированной поверхности в ребре области интерполяции.

  • Nearest — Расширяет от ребра области интерполяции как константа. Значение самой близкой экстраполяции равно значению интерполированной поверхности в ребре области интерполяции. Выберите эту опцию, чтобы произвести экстраполяцию, которая не выше самой высокой или ниже самой низкой точки в области данных.

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

Вопросы совместимости

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

Поведение изменяется в R2019a

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

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

Введенный в R2017b
Для просмотра документации необходимо авторизоваться на сайте