Интерполяция функций двух переменных, проблема выбора узлов
Материал из MachineLearning.
Содержание |
Введение
Постановка математической задачи
Интерполя́ция — в вычислительной математике способ нахождения промежуточных значений величины по имеющемуся дискретному набору известных значений.
Рассмотрим систему несовпадающих точек () из некоторой области . Пусть значения функции известны только в этих точках:
Задача интерполяции состоит в поиске такой функции из заданного класса функций, что
- Точки называют узлами интерполяции, а их совокупность — интерполяционной сеткой.
- Тройки называют точками данных или базовыми точками.
- Разность между «соседними» значениями — шагом интерполяционной сетки. Он может быть как переменным так и постоянным.
- Функцию — называют интерполирующей функцией .
Изложение метода
Билинейная интерполяция
Билинейной интерполяцией называют расширение линейной интерполяции для функций двух переменных.
Пусть сетка образована пересечением прямых x = xn, n = 0, ..., N и y = ym, m = 0, ..., M, fnm = f(xn, ym) — значение функции в узле {xn, ym }.
Для начала реализуется линейная интерполяция по x на каждой прямой y = ym . Затем при каждом значении x = xn реализуется линейная интерполяция по y с учетом значений функции, полученных на первом шаге.
Пусть
Результат билинейной интерполяции не зависит от порядка шагов: можно сначала интерполировать вдоль оси абсцисс а затем вдоль оси ординат, так и наоборот, результат будет одним и тем же.
Интерполяционный многочлен Лагранжа
Интерполяционный многочлен Лагранжа - многочлен минимальной степени, принимающий данные значения в данном наборе точек. Для двумерного случая: для (n+1)x(m+1) троек чисел (xi,yj,f(x_i,y_j)) i=0..n, j=0..m, где все пары (x_i,y_j) различны, существует единственный многочлен L(x,y) степени не более n^2, для которого L(x_i,y_i) = f(x_i,y_i)