Главная Случайная страница


Категории:

ДомЗдоровьеЗоологияИнформатикаИскусствоИскусствоКомпьютерыКулинарияМаркетингМатематикаМедицинаМенеджментОбразованиеПедагогикаПитомцыПрограммированиеПроизводствоПромышленностьПсихологияРазноеРелигияСоциологияСпортСтатистикаТранспортФизикаФилософияФинансыХимияХоббиЭкологияЭкономикаЭлектроника






Интерполяционная формула Лагранжа.

Для произвольно заданных узлов интерполирования, в том числе и для неравноотстоящих узлов, применяется интерполяционная формула Лагранжа.

Пусть на отрезке [a, b] задано n+1 значений аргумента и известны значения функций y=f(x):

.

Требуется построить полином степени не выше n, имеющий в заданных узлах , те же значения, что и функция f(x): , рис. 4.2.

 
 

Рис. 4.2 Построение полинома

Рассмотрим частную задачу: построить полином , такой, чтобы = 0 при и при

То есть (4.13)

Данный полином имеет следующий вид (4.14):

(4.14)

при в силу условия (4.13),

поэтому

и .

В результате получаем:

(4.15)

Теперь ищем интерполяционный полином в виде .

Этот полином вычисляется по формуле:

(4.16)

Подставляем формулу (4.15) в формулу (4.16)

(4.17)

Это и есть интерполяционная формула Лагранжа.

При n=1 имеем:

– уравнение прямой,

проходящей через две заданные точки: (

При n=2 получаем уравнение параболы, проходящей через три точки:

то есть точки

Пример: Для функции построить интерполяционный полином Лагранжа, выбрав узлы: , , .

Решение: Вычисляем .

По формуле (4.17)

Точность не велика, так как синусоиду мы интерполируем квадратичной параболой.

 

Оценка погрешности интерполяционной формулы Лагранжа

(4.18)

где

Пример: с какой точностью можно вычислить с помощью интерполяционной формулы Лагранжа для функции , выбрав узлы интерполирования три точки n=2.

Решение:

Отсюда ( .

Подставляем в формулу (4.18) числовые значения

Обратное интерполирование.

Задача обратного интерполирования: по заданному значению функции найти аргумент , при котором . Функция y=f(x) задана таблично.

Предположим, что на отрезке [a, b], содержащем узлы интерполяции, функция f(x) монотонна. Тогда существует однозначная обратная функция x=F(y). Она задана той же таблицей, что и y=f(x), только теперь аргументом будет значение , а – соответствующее значение функции.

В этом случае обратное интерполирование сводится к обычному интерполированию для функции x=F(y). Следовательно, строится интерполяционный многочлен (например, по формуле Лагранжа): многочлен . При подстановке в значения , получаем .

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

 

7. Сплайн – интерполяция (spline – рейка, планка).

Механические сплайны – гибкие деревянные рейки, закрепленные на концах. В узлах (точках) интерполяции подвешивают грузила. Сплайн принимает форму, минимизирующую его потенциальную энергию. Если сплайн представить функцией S(x) , то S и непрерывны на [ ].

Кубическая сплайн – функция, удовлетворяющая условиям называется естественным кубическим сплайном. С математической точки зрения кубическая сплайн (функция) единственная функция, обладающая свойством минимальной кривизны, среди всех функций, интерполирующих данные точки и имеющих квадратичную интегрируемую вторую производную.

Значит кубический сплайн есть самая гладкая из функций, интерполирующих заданные точки.

Пусть отрезок [a, b] разбит на n частей точками .

Сплайном k-й степени называется функция, представляющая собой многочлен не выше k-й степени на каждом из последовательно примыкающих друг к другу интервалов причем в точках стыка двух интервалов функция непрерывна вместе со своими производными до порядка не выше k.

Сплайн 1-й степени – кусочно-линейная функция (непрерывная). Производная терпит разрыв в точках излома.

Задача интерполяции функции на отрезке [a, b] кубическим сплайном (сплайном 3-й степени) состоит в нахождении функции S(x), равной многочлену третьей степени на каждом отрезке , , то есть

(4.19)

Значения сплайна в узлах интерполяции равны и сплайн-функция S(x) непрерывна в узлах интерполяции вместе с производными первого и второго порядков.

В сплайне (4.19) неизвестные (p = 0, 1, 2, 3). Интервал [a, b] разбит на n участков. Следовательно, имеем 4n неизвестных: (i*p) = 4n.

Уравнения (4.20)–(4.23) дают 4n – 2 уравнения. Таким образом для определения величин необходимо ввести еще каких-либо два уравнения (ограничения). В качестве ограничений выбирается одна из трех пар краевых условий:

Построим сплайн, удовлетворяющий краевым условиям 1 типа.

Введем величины , называемые наклонами сплайна в узлах (i=0,1,..,n). Интерполяционный кубический сплайн вида

(4.24)

где удовлетворяет условиям [по формулам (4.20)–(4.23)] для любых

Из условия (4.23) и краевых условий можно определить параметры .

Действительно, легко проверить, подставляя в уравнение (4.24), и т.д., что

Если взять вторые производные от S(x) по х и подставить и , получим

(4.25)

И краевых условий и условий (4.25) получим систему из n+1 линейных уравнений относительно неизвестных .

Из равенства получаем (4.26)

.(4.26)

В результате имеем

 

. (4.27)

Решая систему (4.27) методом Гаусса, получаем в результате прямого хода коэффициенты:

; (4.28)

После обратного хода (обратной прогонки) получаем результат:

. (4.29)

Результаты (4.28) и (4.29) позволяют построить кубический сплайн.

Построение сплайна с учетом краевых условий (II) производится аналогично.

Точность интерполяционной функции f(x), имеющей на отрезке [a, b] непрерывные производные до третьего порядка включительно, кубическим сплайном S(x) по точкам равномерного разбиения отрезка с шагом h при любых краевых условиях , оценивается неравенством:

где (4.30)

Неравенство (4.30) дает завышенную оценку точности.

Пример: На отрезке [0, ] построить кубический сплайн с шагом , интерполирующий функцию , если заданы значения функции в трех узлах интерполяции:

x ; ; ;
Sin(x) ; ; .

С помощью интерполяционной формулы вычислить приближенное значение и сравнить с точным значением 0,5.

Решение: Задано два отрезка, поэтому представим сплайн в виде

.

Первые краевые условия имеют вид:

Из системы уравнений (4.27) получаем:

Находим

Подставляем значения в (4.24), получаем:

,

так как и числа, содержащие .

Аналогично

.

Получаем для (

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

Погрешность меньше, чем !

Можно получить значение по формулам (4.28), (4.39):

Далее находим

Блок-схема программы построения кубического сплайна и построения полинома Лагранжа (рис. 4.3, 4.4).

Пусть отрезок [a,b] разбит на n равных частей и в точках xi (i=0,1,2,...,n; x0=a, хn=b) некоторая функция принимает значения yi.Для пере-менной x, принадлежащей части разбиения [xi-1, xi] (i=1,... ,n), определена функция (кубический многочлен):

здесь – шаг разбиения отрезка.

Неизвестные mi определяются рекуррентными соотношениями

n0 = A; mn = В; mi = Limi+1 + Mi (i=n-1,n-2,...,0)

после предварительного вычисления вспомогательных величин Mi, Li

по рекуррентным формулам

L0 = 0, M0 = m0, Mi = Li(Mi-1bi),

где (i=1,2,...,n-1);

Величины А и В должны быть заданы. При построении кубичес­кого сплайна, интерполирующего дифференцируемую функцию y = f (x) по системе точек, полагают A = f ' (a), S = f ' (b), то есть краевые условия 1 типа. Выбор необходимой формулы Si (x) для заданного значения переменной x определяется целым числом i:

В соот­ветствии c условиями задачи для рассмотренного примера в программах принято m0 = 1, mn = 0.

 
 

 

 


Рис 4.3. Блок-схема программы построения кубического сплайна

 

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

 

Рис.4.4. Блок-схема программы построения интерполяционного многочлена Лагранжа

Последнее изменение этой страницы: 2016-06-10

lectmania.ru. Все права принадлежат авторам данных материалов. В случае нарушения авторского права напишите нам сюда...