Интерполяция полиномами Лагранжа и Ньютона
Материал из MachineLearning.
| Строка 25: | Строка 25: | ||
| Перепишем полином Лагранжа в другом виде:<br> | Перепишем полином Лагранжа в другом виде:<br> | ||
| <tex>P_n(x) = P_0(x) + \sum_{i=1}^n{(P_i(x) - P_{i-1}(x))} </tex><br> | <tex>P_n(x) = P_0(x) + \sum_{i=1}^n{(P_i(x) - P_{i-1}(x))} </tex><br> | ||
| + | где <tex>P_i(x)</tex> - полиномы Лагранжа степени i ≤ n.<br> | ||
| + | Пусть <tex>Q_i(x) = P_i(x) - P_{i-1}(x) \qquad(*)</tex> <br>. Этот полином инеет степень i и обращается в нуль при  | ||
| + | <tex>x = x_0, x = x_1, ..., x = x_{i-1}{</tex>. <br> | ||
| + | Поэтому он представим в виде:<br> | ||
| + | <tex>Q_i(x) = A_i(x - x_0)...(x - x_{i-1})</tex>, | ||
| + | где <tex>A_i</tex> - коэффициент при <tex>x^i</tex>. Так как <tex>x^i</tex> не входити в <tex>P_{i-1}(x)</tex>, то <tex>A_i</tex> совпадает с коэффициентом при <tex>x^i</tex> в полиноме <tex>P_i(x)</tex>. Таким образом из определения <tex>P_i(x)</tex> получаем:<br> | ||
| + | <tex> A_i = \sum_{k=0}^i\frac{f(x_k)}{w_{k,i}}</tex><br> | ||
| + | где <br> | ||
| + | <tex> w_{k,i} = (x_k - x_0)...(x_k - x_{k-1})(x_k - x_{k+1})...(x_k - x_i)</tex><br> | ||
| + | Препишем формулу <tex>\qquad(*)</tex> в виде <br> | ||
| + | <tex>P_n(x) = P_{n-1} + A_n(x - x_0)...(x - x_{n-1})</tex><br> | ||
| + | Рекуррентно выражая <tex>P_i(x)</tex> пролучам окончательную формулу для полинома: <br> | ||
| + | <tex>P_n(x) = A_0 + A_1(x-x_0) + ...+ A_n(x - x_0)...(x - x_{n-1})</tex><br> | ||
| + | Такое представление полинома удобно для вычисления, почтому что увеличение числа узлов на единицу требует добавления только одного слагаемого.<br> | ||
| + | |||
| + | |||
| + | |||
| + | ==Погрешность интерполирования== | ||
| + | |||
| == Пример == | == Пример == | ||
| == Литература == | == Литература == | ||
Версия 18:52, 19 октября 2008
| Содержание | 
Постановка задачи
Пусть задана функция
. 
Пусть заданы точки 
из некоторой области 
.
Пусть значения функции  известны только в этих точках.
Точки  называют узлами интерполяции.
 - шаг интерполяционной сетки.
Задача интерполяции состоит в поиске такой функции  из заданного класса функций, что
Метод решения задачи
Полином Лагранжа
Представим интерполяционную функцию в виде полинома
где  - полиномы степели n вида:
Очевидно, что  принимает значение 1 в точке 
 и 0 в остальных узлах интерполяции. Следовательно в точке 
 исходный полином принимает значение 
Таким образом, построенный полином  является интерполяционным полиномом для функции
 на сетке 
. 
Полином Ньютона
Интерполяционный полином в форме Лагранжа не удобен для вычислений тем, что при увеличении числа узло интерполции приходится перестраивать весь полином заного.
Перепишем полином Лагранжа в другом виде:
где  - полиномы Лагранжа степени i ≤ n.
Пусть  
. Этот полином инеет степень i и обращается в нуль при 
. 
Поэтому он представим в виде:
,
где 
 - коэффициент при 
. Так как 
 не входити в 
, то 
 совпадает с коэффициентом при 
 в полиноме 
. Таким образом из определения 
 получаем:
где 
Препишем формулу  в виде 
Рекуррентно выражая  пролучам окончательную формулу для полинома: 
Такое представление полинома удобно для вычисления, почтому что увеличение числа узлов на единицу требует добавления только одного слагаемого.

