Методы для приближения значений функции

О приближении значений функции

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

Методы интерполяции

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

  • Flat — Отключает интерполяцию и использует округляющуюся операцию, названную Use Input Below. Для получения дополнительной информации смотрите Округление Методов.

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

  • Linear point-slope — Соответствует строке между смежными точками останова и возвращает точку на той строке, соответствующей входу. Это - уравнение для линейного наклона точки, где x является входными данными, y является выходными табличными данными (xi, yi является координатой табличных данных), и f является частью. Для получения дополнительной информации о xi, yi, занимаются Блоками Интерполяционной таблицы.

  • Cubic spline — Соответствует кубическому сплайну к смежным точкам останова и возвращает точку на том сплайне, соответствующем входу.

  • Linear Lagrange — Соответствует строке между смежными точками останова с помощью Лагранжевой интерполяции первого порядка и возвращает точку на той строке, соответствующей входу. Это - уравнение для линейного Лагранжа, где x является входными данными, y является выходными табличными данными, и f является частью. f ограничивается колебаться от 0 до меньше чем 1 ([0,1)). Для получения дополнительной информации о x и y, займитесь Блоками Интерполяционной таблицы.

    Если методом экстраполяции является Linear, значение экстраполяции вычисляется на основе выбранного метода линейной интерполяции. Например, если методом интерполяции является Линейный Лагранж, метод экстраполяции наследовал Линейное Лагранжево уравнение, чтобы вычислить экстраполируемое значение.

Примечание

Блок Lookup Table Dynamic не позволяет вам выбрать метод интерполяции. Опция Interpolation-Extrapolation в поле Lookup Method диалогового окна параметров блоков выполняет линейную интерполяцию.

Каждый метод интерполяции включает компромисс между временем вычисления и гладкостью результата. Несмотря на то, что округление является самым быстрым, это наименее сглаженно. Линейная интерполяция медленнее, чем округление, но генерирует более сглаженные результаты, кроме в точках останова, где наклон изменяется. Интерполяция кубическим сплайном является самым медленным методом, но приводит к самым сглаженным результатам.

Методы экстраполяции

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

  • Clip — Отключает экстраполяцию и возвращает табличные данные, соответствующие в конец области значений набора данных точки останова. Это не обеспечивает защиту против значений из области значений.

  • Linear — Если методом интерполяции является Linear, этот метод экстраполяции соответствует строке между первой или последней парой точек останова, в зависимости от того, является ли вход меньше, чем первое или большим, чем последняя точка останова. Если методом интерполяции является Cubic spline, этот метод экстраполяции соответствует линейной поверхности с помощью наклона interpolant в первой или последней точке останова, в зависимости от того, является ли вход меньше, чем первое или большим, чем последняя точка останова. Метод экстраполяции возвращает точку на сгенерированной линейной поверхности, соответствующей входу.

    Если методом экстраполяции является Linear, значение экстраполяции вычисляется на основе выбранного метода линейной интерполяции. Например, если методом интерполяции является Линейный Лагранж, метод экстраполяции наследовал Линейное Лагранжево уравнение, чтобы вычислить экстраполируемое значение.

  • Cubic spline — Соответствует кубическому сплайну к первой или последней паре точек останова, завися, если вход является меньше, чем первое или большим, чем последняя точка останова, соответственно. Этот метод возвращает точку на том сплайне, соответствующем входу.

Примечание

Блок Lookup Table Dynamic не позволяет вам выбрать метод экстраполяции. Опция Interpolation-Extrapolation в поле Lookup Method диалогового окна параметров блоков выполняет линейную экстраполяцию.

В дополнение к этим методам некоторые блоки интерполяционной таблицы, такие как n-D блок Lookup Table, позволяют вам выбирать действие, чтобы выполнить при обнаружении с ситуациями, которые требуют экстраполяции. Например, можно указать, что Simulink генерирует или предупреждение или ошибку, когда входные параметры интерполяционной таблицы вне областей значений наборов данных точки останова. Чтобы задать такое действие, выберите его из списка Diagnostic for out-of-range input на диалоговом окне параметров блоков.

Округление методов

Если вход падает между значениями точки останова или вне области значений набора данных точки останова, и вы не задаете интерполяцию или экстраполяцию, блок округляет значение к смежной точке останова и возвращает соответствующее выходное значение. Например, блок Lookup Table Dynamic позволяет вам выбрать один из следующих методов округления:

  • Use Input Nearest — Возвращает выходное значение, соответствующее самому близкому входному значению.

  • Use Input Below — Возвращает выходное значение, соответствующее значению точки останова, которое сразу является меньше, чем входное значение. Если никакое значение точки останова не существует ниже входного значения, оно возвращает значение точки останова, самое близкое входное значение.

  • Use Input Above — Возвращает выходное значение, соответствующее значению точки останова, которое сразу больше, чем входное значение. Если никакое значение точки останова не существует выше входного значения, оно возвращает значение точки останова, самое близкое входное значение.

Пример Вывод для методов поиска

В следующей модели блок Lookup Table Dynamic принимает вектор данных о точке останова, данных [-5:5] и вектором табличных данных, данных sinh([-5:5]).

Блок Lookup Table Dynamic выводит следующие значения при использовании заданных методов поиска и входных параметров.

Метод поискаВходной параметрВывод Комментарий

Интерполяция-
Экстраполяция

1.4

2.156

Нет данных

5.2

83.59

Нет данных

Интерполяция-
Используйте значения конца

1.4

2.156

Нет данных

5.2

74.2

Блок использует значение для sinh(5.0).

Use Input Above

1.4

3.627

Блок использует значение для sinh(2.0).

5.2

74.2

Блок использует значение для sinh(5.0).

Use Input Below

1.4

1.175

Блок использует значение для sinh(1.0).

-5.2

-74.2

Блок использует значение для sinh(-5.0).

Use Input Nearest

1.4

1.175

Блок использует значение для sinh(1.0).

Похожие темы