Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лабы / Gl_2_Approximatsia_1.docx
Скачиваний:
0
Добавлен:
13.05.2026
Размер:
3.45 Mб
Скачать

Задача интерполяции в точке Постановка задачи

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

Очевидно, что результаты будут неточными, или приближенными. Хотелось бы еще выяснить, как далеки (или близки) эти результаты от неизвестного точного значения функции f(a). Для этого нужно оценить погрешность результатов.

Примеры: Есть таблица зависимости температуры в начале каждого часа за сутки. Какая была температура в 12-20. Или так: известны значения функции Cos(x) в точках 0, 30, 45, 60, 90 градусов. Какое значение Cos(x) при 50 градусах.

Геометрически постановку задачи интерполяции в точке можно представить так:

Рис.2.4

При решении этой задачи возникает несколько вопросов.

Сколько узлов использовать? Неужели все сразу? Может быть удастся получить требуемую точность на меньшем количестве узлов?

Если использовать не все узлы, то как и какие надо выбрать?

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

При использовании универсального, в смысле выбора узлов, полинома Лагранжа ответы на эти вопросы следуют из оценки его погрешности (2.11).

= | | ,

где = (x - ) (x - )… (x - ),

Выбор узлов влияет на значение выражения . Поэтому узлы надо выбирать так, чтобы это выражение принимало наименьшее значение.

Это будет достигнуто, если точка x=a находится внутри таблицы и будут выбраны ближайшими к точке x=a узлы .

Геометрически решение задачи интерполяции в точке можно представить следующим образом

Рис.2.5

Итак, для решения задачи интерполяции в точке надо правильно выбрать узлы, строить последовательность полиномов L1, L2, L3, … и оценивать погрешность. Запишем три первых полинома Лагранжа:

+

+

+ .

Полином Лагранжа – это хорошо, он универсален, то есть может использоваться для любой системы узлов, но в задаче интерполяции в точке, когда надо получать последовательность полиномов L1, L2, L3 и т.д. приходится выполнять много вычислений, причем для каждого полинома все эти вычисления надо делать заново.

Однако есть другое представление интерполяционного полинома, в котором при переходе к полиному следующей степени используется полином предыдущей степени и небольшая поправка, которая делает у получающегося полинома степень на единицу большую, чем была у предыдущего. И это полином Ньютона. Такое построение существенно сокращает объем вычислений при получении семейства полиномов различных степеней. Конечно за это надо будет чем-то «заплатить». Чтобы добиться такого сокращения объема вычислений, узлы интерполяции должны располагаться специальным образом: быть равноотстоящими, то есть расстояние между соседними узлами должно быть одинаковым. Ну а это повлечет за собой ограничения при выборе узлов в задаче интерполяции в точке.

В этом случае, согласно (2.18) и (2.21), справедливы следующие оценки погрешности:

= | |

<= |

Точка x = a, в которой надо получить приближенное значение функции, должна находиться внутри таблицы узлов. Это первое обязательное условие выбора узлов.

Если начинать строить последовательность полиномов с полинома Ньютона первой степени, то узлы должны находиться по разные стороны этой точки a. Выбор двух первых узлов однозначно определит шаг ( h = ) в равноотстоящей таблице узлов. И тогда следующие узлы будут лежать или все правее, или все левее точки a. Получается, что точка a будет находиться в начале таблицы. Если этого не сделать, то построить последовательность полиномов Ньютона не удастся. Но в этом случае узлы не будут ближайшими к точке a, как это рекомендуется для уменьшения погрешности. При таком выборе узлов погрешность полинома будет больше, чем при выборе ближайших узлов.

Что же в итоге - для ускорения получения результатов специально загубили точность результата? Да, именно так! Идет размен точности решения задачи на скорость получения результата. Расчет, очевидно, такой: требуемую точность придется получить на полиноме Ньютона более высокой степени, затратив на это все-таки меньше времени, чем получать результат с использованием «медленного» полинома Лагранжа, но с наилучшим выбором ближайших узлов.

Рис.2.6, 2.7, 2.8 Выбор узлов для решения задачи интерполяции в точке с использованием различных вариантов интерполяционных полиномов.

Нужен пример с cos(x), заданным таблично. С разными вариантами полиномов и разными оценками погрешности. Рис.2.9.

Интерполяционные полиномы имеют особенности, которые существенны при их использовании:

- очень жесткий критерий близости полинома и таблицы с исходными данными – полином должен проходить через все узлы интерполяции;

- степень полинома на единицу меньше их количества.

Очевидно, что второе ограничение есть следствие первого условия.

Возможно ли «развязать» степень полинома и количество исходных данных и, тем не менее, получить функцию, похожую на исходные данные?

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

Другой вариант – разбить таблицу данных на части и на каждой из таких частей решать задачу интерполяции отдельно. Степень полученных полиномов будет меньше. Такая задача получила название сплайн-интерполяция.

Соседние файлы в папке лабы