Теоретические сведения. Интерполяционный полином не всегда дает хороший результатИнтерполяционный полином не всегда дает хороший результат. Например, аппроксимация резонансных кривых колебательных систем дает большую погрешность как на концах кривых (крыльях), так и между узлами. При увеличении степени интерполяционного полинома погрешность только возрастает (явление волнистости). Широкое распространение для решения задачи интерполяции получает аппарат сплайнов. Рассмотрим интерполяцию кубическими сплайнами. В отличии от интерполяции полиномом на каждом участке строится отдельный сплайн. Пусть на отрезке [a, b] имеется таблично заданая функция a=x0<x1<…<xn =b.Шаг таблицы может быть непостоянным. Постановка задачи: На отрезке [a, b] необходимо найти функцию g(x), которая удовлетворяет следующим требованиям: 1. Сплайн g(x) классу c2(a,b), т.е. непрерывны на отрезке [a,b], график g(x) не имеет острых углов (т.к. непрерывна), радиус кривизны определен в каждой точке. 2. На каждом участке g(x) является кубическим полиномом III степени, т.е. , где ai(k) – коэффициенты сплайна, которые определимы из дополнительных условий: – номер сплайна. 3. выполняется основное условие интерполяции:
4. вторая производная g''(x) удовлетворяет граничным условиям. В общем случае эти условия зависят от конкретной задачи. Довольно часто используется условие свободных концов сплайнов, а именно g''(a) = g''(b) = 0. В результате построения с соблюдением всех условий будем иметь Для определения неизвестных m0…mn используем непрерывность В результате получим систему для определения mk с n-1 уравнением и n+1 неизвестными. Её нужно доопределить для однозначного решения. Дополняем систему граничными условиями, например условиями свободных концов сплайна m0 = mn = 0. Получаем систему n-1 уравнения с n-1 неизвестными:
В матричном виде систему можно записать следующим образом: , где Матрица А – неособенная матрица, система для определения m имеет единственное решение, следовательно, сплайн-функция g(x) однозначно восстанавливается, т.е. задача о нахождении кусочно-кубической функции g(x) имеет единственное решение. Решение системы может быть найдено с помощью метода прогонки (частный случай метода Гаусса) или каким-либо другим способом. Пример выполнения заданий
|