Интерполяция полиномами Лагранжа и Ньютона

Материал из MachineLearning.

(Различия между версиями)
Перейти к: навигация, поиск
м (Постановка задачи)
Строка 8: Строка 8:
Пусть значения функции <tex> f </tex> известны только в этих точках.<br>
Пусть значения функции <tex> f </tex> известны только в этих точках.<br>
Точки <tex> \bf{x} </tex> называют узлами интерполяции.<br>
Точки <tex> \bf{x} </tex> называют узлами интерполяции.<br>
-
<tex> \delta x_i = x_i - x_{i-1}</tex> - шагом интерполяционной сетки.<br>
+
<tex> \delta x_i = x_i - x_{i-1}</tex> - шаг интерполяционной сетки.<br>
Задача интерполяции состоит в поиске такой функции <tex> F </tex> из заданного класса функций, что
Задача интерполяции состоит в поиске такой функции <tex> F </tex> из заданного класса функций, что
<tex> F(x_i) = y_i</tex>
<tex> F(x_i) = y_i</tex>
== Метод решения задачи ==
== Метод решения задачи ==
-
 
+
===Полином Лагранжа===
 +
Представим интерполяционную функцию в виде полинома<br>
 +
<tex>P_n(x) = \sum_{i=0}^n y_i Q_{n,i}(x)</tex><br>
 +
где <tex>Q_{n,i}(x)</tex> - полиномы степели n вида:<br>
 +
<tex>Q_{n,i}(x) = \prod_{j=0, j\neq i}^{n} \frac{(x-x_j)}{(x_i-x_j)}</tex><br>
 +
Очевидно, что <tex>Q_{n,i}(x)</tex> принимает значение 1 в точке <tex>x_i</tex> и 0 в остальных узлах интерполяции. Следовательно в точке <tex>x_i</tex> исходный полином принимает значение <tex>y_i</tex><br>
 +
Таким образом, построенный полином <tex>P_n(x)</tex> является интерполяционным полиномом для функции
 +
<tex> y = f(x) </tex> на сетке <tex> \bf{x} </tex>. <br>
 +
===Полином Ньютона===
 +
Интерполяционный полином в форме Лагранжа не удобен для вычислений тем, что при увеличении числа узло интерполции приходится перестраивать весь полином заного.<br>
 +
Перепишем полином Лагранжа в другом виде:<br>
 +
<tex>P_n(x) = P_0(x) + \sum_{i=1}^n{(P_i(x) - P_{i-1}(x))} </tex><br>
== Пример ==
== Пример ==
== Литература ==
== Литература ==

Версия 13:49, 19 октября 2008

Содержание

Постановка задачи

Пусть задана функция  y = f(x) .
Пусть заданы точки  \bf{x} = \{ x_i | i = 1..n \} из некоторой области  \bf D .
Пусть значения функции  f известны только в этих точках.
Точки  \bf{x} называют узлами интерполяции.
 \delta x_i = x_i - x_{i-1} - шаг интерполяционной сетки.
Задача интерполяции состоит в поиске такой функции  F из заданного класса функций, что  F(x_i) = y_i

Метод решения задачи

Полином Лагранжа

Представим интерполяционную функцию в виде полинома
P_n(x) = \sum_{i=0}^n y_i Q_{n,i}(x)
где Q_{n,i}(x) - полиномы степели n вида:
Q_{n,i}(x) = \prod_{j=0, j\neq i}^{n} \frac{(x-x_j)}{(x_i-x_j)}
Очевидно, что Q_{n,i}(x) принимает значение 1 в точке x_i и 0 в остальных узлах интерполяции. Следовательно в точке x_i исходный полином принимает значение y_i
Таким образом, построенный полином P_n(x) является интерполяционным полиномом для функции  y = f(x) на сетке  \bf{x} .

Полином Ньютона

Интерполяционный полином в форме Лагранжа не удобен для вычислений тем, что при увеличении числа узло интерполции приходится перестраивать весь полином заного.
Перепишем полином Лагранжа в другом виде:
P_n(x) = P_0(x) + \sum_{i=1}^n{(P_i(x) - P_{i-1}(x))}

Пример

Литература

Личные инструменты