ИНТЕРПОЛЯЦИОННЫЙ ПОЛИНОМ ЛАГРАНЖА


Если при построении интерполяционного полинома выбрать в качестве базиса одночлены, например, 1, х, х2,...,хn , как это было сделано выше, то во многих случаях система линейных уравнений для нахождения коэффициентов, получается плохо обусловленной (см. главу 4). Например, в случае равномерного распределения узлов на отрезке [0, 1] последовательные степени х, х2, ... почти линейно зависимы (отчасти потому, что все они положительны и графики всех идут от точки (0, 0) к точке (1, 1). Эта близость к линейной зависимости делает решение линейной системы при нормальной рабочей точности крайне трудным делом для порядка n, превышающего 10.

Более удобный способ построения интерполяционного полинома основан на выборе в качестве базиса лагранжевых полиномов.

Пусть задана таблица {xi, yi}, i = 0, ..., n c произвольным расположением узлов x0 < x1 <...< xn .

Построим вспомогательный полином n-ой степени, который равнялся бы единице в узловой точке x=xi , а во всех других узловых точках равнялся бы нулю:

.

Если ввести обозначение , то вспомогательный (лагранжев) полином запишется в виде:

.

Тогда интерполяционный полином Лагранжа будет представлять собой линейную комбинацию этих вспомогательных полиномов:

Очевидно, что основное условие интерполяции выполняется: Ln(xi)=yi .

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

В любой точке, не являющейся узлом интерполяции, функция y будет отличаться от полинома Ln. Рассмотрим погрешность интерполяционной формулы Лагранжа Rn(x)=f(x) – Ln(x).

Теорема. Если f(x) – непрерывная дифференцируемая n+1 раз на отрезке [a, b] функция, содержащая узловые точки x0, x1,..., xn , то для любого xÎ[a, b] найдется такая точка xÎ[a, b], что погрешность

. (2.5)

Доказательство. Введем в рассмотрение функцию

u(z) = f(z) – Ln(z) – kw(z),

где k – неизвестный пока коэффициент.

Очевидно, что при z=x0, x1,...,xn функция u(z) обращается в нуль, то есть функция u(z) на интервале [a,b] имеет n+1 корень.

Выберем k таким образом, чтобы u(x)=0 в точке, не совпадающей с узлом. Для этого достаточно положить

f(x) – Ln(x) – kw(x) = 0, то есть k = Rn(x)/w(x).

Таким образом, функция u(z)=Rn(z) – Rn(x)w(z)/w(x) равна нулю в n+2 точках x0, x1,..., xn, x.

Тогда по теореме Ролля[5] ее производная u¢(z) обращается в нуль по крайней мере в n+1 точке. Применяя теорему Ролля к функции u¢(z), получаем, что ее производная u¢¢(z) обращается в нуль по крайней мере в n точках. Продолжая эти рассуждения дальше, получаем, что

обращается в нуль по крайней мере в одной точке xÎ[a, b].

Так как , а , то

.

Следовательно, ,

где .

Таким образом,

. (2.6)

Пример. Построить интерполяционный полином Лагранжа для функции f(x)=x1/2 c узлами интерполяции х0=100; х1=121; х2=144. Оценить погрешность интерполяции в точке х=116.

1. Оценим погрешность.

так как на отрезке [100,144] функция f (3)(x)убывающая. Поэтому

2. Построим полином.

Таблица имеет вид

 

хк
ук

Тогда

Примечание 1. Если относительно функции f ничего неизвестно, кроме ее значений в узлах интерполяции, то никаких полезных суждений относительно погрешности Rn(x) сделать нельзя.

Конец примечания 1.

Примечание 2.Как видно из примера, оценку погрешности можно провести до вычисления интерполяционного многочлена, то есть это априорная оценка погрешности. Ранее мы проводили оценку погрешности по первому отброшенному члену ряда после выполнения вычислений на каждом шаге. Это была апостериорная оценка.

Строгие априорные оценки используются в основном при теоретическом исследовании численных методов. При практическом контроле точности расчетов обычно употребляют менее строгие, но более удобные апостериорные оценки.

Конец примечания 2.

Теперь рассмотрим следующую задачу. Пусть задана некоторая функция (то есть принадлежащая классу непрерывных и n+1 раз дифференцируемых функций). Требуется заменить эту функцию интерполяционным полиномом Ln(x), причем имеется свобода выбора узловых точек.

Возникает вопрос, как выбрать узлы, чтобы максимальная погрешность интерполяции функции f на этом отрезке была минимальной. Это довольно сложная задача, и ее удается решить лишь для некоторых частных функций. Ограничимся решением более простой задачи, а именно, нахождением такого расположения узлов, при котором минимальна величина max½w(x)½ и поэтому минимальна правая часть оценки погрешности.

Для этого полином w(х) должен быть полиномом Чебышева (именно этот полином на отрезке [–1, 1] имеет наименьшее значение максимума модуля), а в качестве узлов интерполяции необходимо взять корни полинома Чебышева Tn+1(x) (формула (2.2)), то есть точки

k=1, ..., n+1.

Тогда w(х)=2–nTn+1(x) и .

В силу вышеупомянутого свойства полиномов Чебышева улучшить эту оценку за счет другого выбора узлов нельзя.

Для произвольного отрезка [a, b] оптимальные узлы интерполяции в соответствии с формулой (2.3) имеют вид

.

Они расположены сравнительно редко в середине рассматриваемого отрезка и сгущаются у его концов.



Дата добавления: 2020-10-25; просмотров: 577;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.01 сек.