Интерполяция

Материал из Википедии — свободной энциклопедии

Перейти к: навигация, поиск

О функции см. статью Интерполянт.

Интерполя́ция — в вычислительной математике способ нахождения промежуточных значений величины по имеющемуся дискретному набору известных значений.

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

Существует также близкая к интерполяции задача, которая заключается в аппроксимации какой-либо сложной функции другой, более простой функцией. Если некоторая функция слишком сложна для производительных вычислений, можно попытаться вычислить её значение в нескольких точках, а по ним построить, то есть интерполировать, более простую функцию. Разумеется, использование упрощенной функции не позволяет получить такие же точные результаты, какие давала бы первоначальная функция. Но в некоторых классах задач достигнутый выигрыш в простоте и скорости вычислений может перевесить получаемую погрешность в результатах.

Следует также упомянуть и совершенно другую разновидность математической интерполяции, известную под названием «интерполяция операторов». К классическим работам по интерполяции операторов относятся теорема Рисса-Торина (Riesz-Thorin theorem) и теорема Марцинкевича (Marcinkiewicz theorem), являющиеся основой для множества других работ.

Содержание

[править] Определения

Рассмотрим систему несовпадающих точек ~x_i (i\in{0,1,\dots,N}) из некоторой области ~D. Пусть значения функции ~f известны только в этих точках:

y_i = f(x_i),\quad i=1,\ldots,N.

Задача интерполяции состоит в поиске такой функции ~F из заданного класса функций, что

F(x_i) = y_i,\quad i=1,\ldots,N.
  • Точки ~x_i называют узлами интерполяции, а их совокупность — интерполяционной сеткой.
  • Пары ~(x_i,y_i) называют точками данных или базовыми точками.
  • Разность между «соседними» значениями ~\Delta x_i=x_i-x_{i-1}шагом интерполяционной сетки. Он может быть как переменным так и постоянным.
  • Функцию ~F(x)интерполирующей функцией или интерполянтом.

[править] Пример

Точки данных (из приведённой таблицы), в системе координат.
Точки данных (из приведённой таблицы), в системе координат.

Пусть мы имеем табличную функцию, наподобие описанной ниже, которая для нескольких значений ~x определяет соответствующие значения ~f:

~x ~f(x)
0 0
1 0,8415
2 0,9093
3 0,1411
4 −0,7568
5 −0,9589
6 −0,2794

Интерполяция помогает нам узнать какое значение может иметь такая функция в точке, отличной от указанных, например, при x = 2,5?

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

[править] Способы интерполяции

[править] Интерполяция полиномами

На практике чаще всего применяют интерполяцию полиномами. Это связано прежде всего с тем, что полиномы легко вычислять, легко аналитически находить их производные и множество полиномов плотно в пространстве непрерывных функций (теорема Вейерштрасса).

[править] Обратное интерполирование (вычисление x при заданном y)

[править] Интерполяция функции нескольких переменных

[править] Смежные концепции

  • Экстраполяция — методы нахождения точек за пределами заданного интервала (продление кривой)
  • Аппроксимация — методы построения приближённых кривых

[править] См. также