При n=2 получим уравнение параболы три точки:
|
y |
(x b)(x c) |
y |
|
|
(x a)(x c) |
|
(a b)(a c) |
0 |
(b a)(b c) |
|
|
|
|
|
|
|
|
|
где а, b, c – абсциссы данных точек.
4.9. Вычисление лагранжевых коэффициентов
Укажем схему,
(i = 0, 1, 2, . . . , п) в
коэффициентов
облегчающую вычисление коэффициентов при yi формуле Лагранжа, так называемых лагранжевых
(x x )(x x )...(x x |
)(x x |
)...(x x |
|
) |
, |
(4.36) |
|
|
0 |
1 |
|
i 1 |
|
|
i 1 |
|
|
|
n |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x |
x )(x |
x )...(x |
x |
|
)(x |
x |
|
)...(x |
x |
n |
) |
|
i |
0 |
i |
1 |
i |
i 1 |
i |
i 1 |
i |
|
|
|
|
|
или в более компактной записи
|
Li |
(n) |
(x) |
|
n 1 |
(x) |
, |
|
|
|
|
|
(x x ) |
|
|
|
|
(x ) |
|
|
|
|
i |
|
n 1 |
i |
где |
n 1 (x) (x x0 )...( x xn ) . |
|
|
|
|
|
|
Формула Лагранжа при этом имеет вид
что форма лагранжевых коэффициентов инвариантна относительно целой линейной подстановки x = at+b (а, b постоянны и а ≠ 0). Действительно, положив в формуле (4.36)
после сокращения числителя и знаменателя на a |
n |
, получим |
|
|
(n) |
(t) |
(t t0 )(t t1 )...(t ti 1 )(t ti 1 )...(t tn ) |
, |
|
Li |
|
|
|
|
|
|
|
|
|
|
|
|
|
(ti |
t0 )(ti t1 )...(ti ti 1 )(ti |
ti 1 )...(ti tn ) |
|
|
|
|
или |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Li |
(n) |
(t) |
|
n 1 |
(t) |
|
, |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(t t |
) |
(t |
|
|
|
|
|
|
|
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
|
|
i |
|
n 1 |
i |
|
|
|
|
|
где |
n 1 (t) (t t0 )(t t1 )...(t tn ) . Что и требовалось доказать. |
|
Для вычисления лагранжевых коэффициентов может быть использована приведенная ниже схема, особенно удобная при применении счетной машины. Сначала располагаем в таблицу разности следующим образом:
x- x0 |
x0- x1 |
x0- x2 ... x0- xn, |
x1- x0 |
x- x1 |
x1- x2 ... x1- xn, |
x2- x0 |
x2- x1 |
x- x2 ... x2- xn, |
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
xn- x0 xn- x1 xn- x2 ... x- xn.
111
Обозначим произведение элементов первой строки через D0, второй - через D1 и т. д. Произведение же элементов главной диагонали (в схеме эти элементы подчеркнуты), очевидно, будет Пп+1(х). Отсюда следует, что
(n) |
(x) |
n 1 |
(x) |
(4.39) |
Li |
D |
(i 1,2,...n) . |
|
|
|
|
|
|
i |
|
|
Следовательно,
|
n |
y |
|
|
Ln (x) n 1 (x) |
|
i |
|
D |
|
i 0 |
|
|
i |
В случае равноотстоящих точек лагранжевы коэффициенты могут быть приведены к более простому виду. В самом деле, полагая x=x0 + th,
будем иметь t0=0, t1= 1,..., tn=n.
Отсюда Пn- 1 t t t 1 t 2 t n , |
' |
(i) ( 1) |
n 1 |
i!(n i)!. |
|
|
|
|
n 1 |
|
|
|
Подставив эти выражения в формулу (4.38'), получим
|
|
1 |
|
|
|
|
n i |
i |
n |
t |
П |
|
t |
1 |
Cn |
L |
|
n 1 |
|
|
|
i |
|
n! |
|
|
t |
i |
|
|
|
|
|
|
|
|
|
|
n |
|
i |
|
|
1 |
|
n i C n |
|
Ln (x) |
n 1 (t) |
( 1) |
|
n! |
t i |
|
|
i 0 |
|
.
Задача интерполирования в случае постоянного шага h облегчается еще тем, что имеются таблицы для лагранжевых коэффициентов, так что фактически все вычисления сводятся к умножению табличных коэффициентов на соответствующие значения функции yi и к суммированию.
4.10. Оценка погрешности интерполяционной формулы Лагранжа
Для функции y = f(x) мы построили интерполяционный полином Лагранжа Ln(x), принимающий в точках x0, x1 , ... ,хп заданные значения:
y0=f(x0), y1=f(x1) , ... , yn=f(xn).
Возникает вопрос, насколько близко построенный полином приближается к функции f(x) в других точках, то есть, как велик остаточный член
Rn= f(x) - Ln(x).
Для определения этой степени приближения наложим на функцию у=f(x) дополнительные ограничения. Мы будем предполагать, что в
112
x1, ... ,хп.
(4.43)
коэффициент,
f’(x), f"(x), ...
узлы
рассматриваемой области а≤х≤b изменения х, содержащей интерполирования, функция f(x) имеет все производные
,f(n+1)(x) до (n+1)-гo порядка включительно. Введем вспомогательную функцию
u(x) f (x) Ln
|
n 1 |
(x) (x x |
0 |
)(x x |
)...(x x |
n |
) |
|
|
1 |
|
|
который будет выбран далее.
Функция и(х), очевидно, имеет п+1 корень в точках x0,
Подберем теперь коэффициент k так, чтобы и(х) имела (n+2)-й корень в
любой, но фиксированной точке |
x |
отрезка [а, b], не совпадающей с |
узлами |
интерполирования. |
|
Для |
этого |
достаточно |
положить f (x) Ln (x) k n 1 (x) 0 . |
Отсюда, так как n 1 (x) 0 |
, то |
При этом значении множителя k функция и(х) имеет п+2 корня на отрезке [а, b] и будет обращаться в нуль на концах каждого из отрезков:
[x |
0 |
, x ],[x |
, x |
2 |
],...,[x |
i |
, |
|
1 |
1 |
|
|
|
Применяя теорему Ролля к каждому из этих отрезков, убеждаемся, что производная и'(х) имеет не менее п +1 корня на отрезке [а, b]. Применив теорему Ролля к производной и'(х), мы убедимся, что вторая производная и"(х) обращается в нуль не менее п раз на отрезке [а, b]. Продолжая эти рассуждения, придем к заключению, что на рассматриваемом отрезке [а,b] производная и(п+1)(х) имеет хотя бы один корень, который обозначим через ξ, т. е. и(п+1)(ξ)=0.
Из формулы (4.43), так как Ln(п+1)(x)=0 и Пn+1(п+1)(x)= (n+1)! имеем:
и(п+1)(х)= f(п+1) (х) - k(n+1)!. При х = ξ получаем: 0 =f(п+1) (ξ) - k(n+1)!.
Отсюда
Сравнивая правые части формул (4.44) и (4.45), будем иметь
|
f (x) L (x) |
|
|
|
f (n 1) ξ |
|
|
|
n |
|
|
|
|
|
, |
|
|
|
n 1 (x) |
|
(n 1)! |
|
|
То есть |
|
|
f (n 1) ξ |
|
|
|
|
f (x) Ln (x) |
|
n 1 |
(x) . |
(4.46) |
|
(n 1)! |
|
|
|
|
|
|
|
|
|
113 |
|
|
|
|
|
|
|
|
|
произвольно, то формулу (4.46)
|
|
|
|
|
|
f |
(n 1) |
|
|
|
|
|
|
|
|
|
R |
n |
(x) |
f (x) L |
n |
(x) |
(n 1)! |
|
|
|
|
|
|
|
|
|
|
где ξ зависит от х и лежит внутри отрезка [а,b].
Отметим, что формула (4.47) справедлива для всех точек отрезка [а,b], в том числе и для узлов интерполирования.
(x)
, получаем следующую оценку
для абсолютной погрешности интерполяционной формулы Лагранжа:
Rn
где
)
,
) .
4.11. Оценки погрешностей интерполяционных формул Ньютона
Если узлы интерполирования х0, х1 , . . . ,
хi+1 – хi=h (i = 0, 1, 2, ... , n-1), то, полагая |
q |
хп равноотстоящие, причем
x x |
0 |
, на основании формулы |
|
|
|
h |
|
|
(4.48) из предыдущего параграфа получим
интерполяционной формулы Ньютона
R |
(x) h |
n 1 |
|
q(q 1)...(q n) |
|
|
|
n |
|
|
|
(n 1)! |
|
|
|
|
где ξ некоторое промежуточное значение между узлами интерполирования х0 , х1, ... , хn и рассматриваемой точкой х. Заметим, что
для случая интерполирования в узком смысле слова |
ξ [x0 , xn ] ; при |
экстраполировании возможно, что ξ [x0 , xn ]
Аналогично, полагая в формуле
.
(4.47) q x xn , получим
h
остаточный член второй интерполяционной формулы Ньютона
R (x) hn 1 |
|
q(q 1)...(q n) |
f (n 1) , |
(4.50) |
|
n |
|
(n 1)! |
|
|
|
|
|
|
где ξ некоторое промежуточное значение между узлами интерполирования х0 , х1, ... , хn и точкой х.
Обычно при практических вычислениях интерполяционная формула Ньютона обрывается на членах, содержащих такие разности,
114
которые в пределах заданной точности можно считать постоянными. Предполагая, что ∆n+у почти постоянны для функции у = f(x) и h достаточно мало, и учитывая, что
f n 1 (x) lim n 1 y ,
h 0 hn 1
приближенно можно положить
В этом случае остаточный член первой интерполяционной формулы Ньютона приближенно равен
В этих же условиях для остаточного члена второй интерполяционной формулы Ньютона получаем выражение
4.12. Кусочно-линейное и кусочно-квадратичное интерполирование
Иногда интерполирование по всей совокупности точек бывает недостаточным. В этих случаях можно воспользоваться объединением фрагментов графиков полиномов низкой степени и интерполированием между последовательными узлами. Самый простой в использовании полином первой степени. Он создает ломаную, состоящую из отрезков, которые проходят через две точки. Чтобы представить эту кусочнолинейную кривую, используется полином Лагранжа
|
|
|
|
х х |
|
|
x x |
|
|
S |
(x) y |
|
x |
k 1 |
|
|
у |
x |
|
k |
|
|
|
x |
|
x |
k |
|
|
k |
|
k 1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
k |
k 1 |
|
|
k 1 |
|
|
k |
|
или формулу угла наклона отрезка линии в точке |
|
|
|
|
|
S |
(x) y |
k |
yk 1 yk x x |
, |
|
|
|
k |
|
|
|
xk 1 |
xk |
|
k |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
где Sk (x) – линейный сплайн на отрезке [xk+1, xk]; yk – заданное значение функции, полученное экспериментально в заданных узлах.
Аналогично можно построить кусочно-квадратичный полином. Недостатком этого подхода является резкое изменение кривизны в
общих узлах.
115
4.13. Простейший подход к сглаживанию
Суть процедуры сглаживания состоит в подмене данной функции на каждом из рассматриваемых отрезков наилучшим линейным среднеквадратичным приближением.
На первом этапе для таблично заданной функции найти такую функцию S(x), составленную из линейных функций Si (х) ai bi x xi ,
чтобы f x Si x для всех х в смысле минимума квадрата отклонений, т.е.
|
i 1 |
|
|
|
|
2 |
|
|
f (x |
) S |
(x |
) |
|
|
|
k |
i |
k |
|
|
|
k i 1 |
|
|
|
|
|
В результате решается задача нахождения
коэффициентов ai, bi методом наименьших квадратов:
|
ai |
|
1 |
fi 1 |
fi |
fi 1 , |
bi |
|
1 |
fi 1 |
fi 1 |
|
3 |
2h |
|
|
|
|
|
|
|
|
|
|
Второй этап состоит в пересчете данной таблицы
. |
|
|
|
|
|
|
|
|
|
|
S |
x |
|
1 |
f |
|
f |
|
f |
|
|
|
i 1 |
i |
i 1 |
i |
i |
|
3 |
|
|
|
|
|
|
|
|
|
|
|
|
Доопределим новую табличную функцию значениямиxN fN . В результате этого получаем новую табличную
функцию, в которой сохраняется характер поведения исходной функции. Описанная процедура называется осреднением по трем точкам и является простым частным случаем линейного фильтра.
4.14. Кусочно–кубические сплайны
Определение. Функция S(x) называется кубическим сплайном, если существует N кубических полиномов Sk(x) с коэффициентами sk,0, sk,1, sk,2,
sk,3, |
которые удовлетворяют следующим условиям: |
x xk , xk 1 |
и |
1. |
S x Sk x sk ,0 |
sk ,1 x xk |
sk ,2 x xk |
|
sk ,3 x xk |
|
, для |
|
|
|
|
2 |
|
3 |
|
|
|
k 0, N 1, т.е. кубический сплайн состоит из кубических полиномов.
2.Кусочно-кубическое интерполирование задается совокупностью точек,
т.е. S xk yk |
для |
k 0, N . |
3. Кусочно-кубическое представление состояло из кривых, которые являются гладкими непрерывными функциями. Вторая и первая производные должны быть непрерывны:
S |
k |
x |
S |
|
x |
S |
x |
S |
x |
, |
S |
x |
S |
|
x |
|
k 1 |
|
k 1 k 1 , |
k |
k 1 |
k 1 k 1 |
k |
k 1 |
k 1 |
k 1 . |
Наиболее часто на практике используется кубический сплайн |
следующего вида: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
S |
|
x a b x x |
c |
x x 2 |
d |
x x 3 . |
|
|
|
|
|
3 |
i |
i |
i |
i |
|
i |
i |
|
i |
|
|
Для задания сплайна коэффициенты ai , |
bi |
, ci |
, di |
– подбираются так, |
чтобы S3 xi yi , а первая и вторая производные были непрерывными.
116
4.15.Леммы о сплайнах
1.Смыкающий (чертежный) сплайн. Существует единственный кубический сплайн, который имеет первую производную с граничными
условиями S ( a ) D0 , S ( b ) DN , т.е. смыкающий сплайн имеет определенный наклон в крайних точках.
2. Естественный сплайн. Существует единственный кубический
сплайн |
со свободными граничными условиями S ( a ) 0 |
, |
S ( b ) 0 , т.е. |
сплайн |
допускает свободный наклон на краях для обеспечения |
положения, которое минимизирует осцилляцию кривой. |
|
|
3. Экстраполяционный сплайн. Существует единственный кубический сплайн, который используется для экстраполирования по
внутренним узлам, чтобы определить |
S ( a ) по узлам х1, х2 и |
S ( b ) по узлам |
|
|
|
хN-1, хN-2.
4. Сплайн, заканчивающийся параболой. Существует единственный
кубический сплайн, такой, что |
S (х) 0 |
на интервале [x0, x1] и |
S (х) 0 |
на |
|
|
|
|
|
интервале [xN-1, xN]. |
|
|
|
|
5. Сплайн с заданной кривизной в крайних точках. Существует единственный кубический сплайн с заданными значениями второй производной в крайних точках.
4.16. Аппроксимация
Пусть y является функцией аргумента x. Это означает, что любому значению x из области определения поставлено в соответствие значение y. На практике иногда не возможно записать зависимость y(x) в явном виде. Вместе с тем, не редко эта зависимость задается в табличном виде. Это означает, что дискретному множеству значений {xi} поставлено в соответствие множество значений {yi}, 0 i m. Эти значения – либо результаты расчета, либо набор экспериментальных данных [5].
На практике часто требуется найти некоторую аналитическую функцию, которая приближенно описывает заданную табличную зависимость. Кроме того, иногда требуется определить значения функции в других точках, отличных от узловых. Этой цели служит задача о приближении (аппроксимации). В этом случае находят некоторую функцию (x), такую, чтобы отклонения ее от заданной табличной функции было наименьшим. Функция (x) называется аппроксимирующей.
117
Вид аппроксимирующей функции существенным образом зависит от исходной табличной функции. В разных случаях функцию (x) выбирают в виде экспоненциальной, логарифмической, степенной, синусоидальной и т.д. В каждом конкретном случае подбирают соответствующие параметры таким образом, чтобы достичь максимальной близости аппроксимирующей и табличной функций. Чаще всего, однако, функцию(x) представляют в виде полинома по степеням x. Запишем общий вид полинома n-й степени:
.
Коэффициенты aj подбираются таким образом, чтобы достичь наименьшего отклонения полинома от заданной функции.
Таким образом, аппроксимация – это замена одной функции другой, близкой к исходной и обладающей свойствами, позволяющими легко производить над ней различные операции.
4.17.Метод наименьших квадратов
Вбольшинстве экспериментальных данных, задаваемых с помощью табличной функции, имеется достаточно большой разброс точек. При этом использование кусочной или непрерывной интерполяции не всегда оправдано, поскольку ставится задача исследовать общую тенденцию изменения физической величины. В этом общем случае аппроксимации искомая кривая не обязательно должна проходить через заданные точки.
Рассмотрим рис.4.3, отражающий большой разброс точек. В
простейшем случае будем искать аппроксимирующую функцию (x) в виде полинома первой степени (прямой): (x) = a0 + a1x.
Рис. 4.3. Аппроксимация
Таким образом, данная система точек группируется вокруг искомой прямой. Эту прямую легко провести на глаз так, чтобы она наиболее близко подходила к исходным точкам. Однако можно найти уравнение прямой более строгими математическими методами.
118
Пусть общее количество точек равно m. Обозначим i отклонение i-й точки от искомой прямой: i = (xi ) – yi.
|
Как видно из рис. 4.4, |
|
отклонения |
могут |
быть |
как |
|
положительными, |
так |
и |
|
отрицательными. |
|
Чтобы |
|
определить |
близость |
искомой |
|
функции к табличным точкам, |
|
необходимо |
составить |
сумму |
Рис. 4.4 Отклонения |
квадратов всех отклонений. |
|
|
|
|
|
Метод наименьших квадратов заключается в минимизации суммы квадратов отклонений. В нашем случае эта функция равна:
|
m |
|
|
|
m |
a |
|
|
y |
2 |
S |
|
|
2 |
|
|
|
a x |
|
i |
|
0 |
. |
|
|
|
|
1 i |
i |
|
|
i 1 |
|
|
|
i 1 |
|
|
|
|
|
Для нахождения минимума функции S необходимо приравнять нулю ее частные производные. В результате получим систему уравнений:
Опуская промежуточные преобразования, получим систему уравнений |
для нахождения неизвестных коэффициентов a0 и a1: |
ma |
0 |
|
|
x |
a |
|
|
y |
i |
, |
|
|
|
i |
1 |
|
|
|
|
x a |
|
|
x2 |
a |
x y . |
|
|
|
|
|
0 |
|
i |
1 |
|
|
i i |
i |
|
|
|
где m – количество точек; суммирование здесь и далее предполагается по всем точкам (i = 1, 2,…, m).
Метод наименьших квадратов несложно распространить на общий случай, когда мы будем искать функцию (x) в виде полинома степени n:
.
Отметим, что в случае аппроксимации всегда справедливо следующее соотношение, связывающее количество исходных точек m и степень искомого полинома n m – 1, причем в случае равенства мы приходим к интерполяции (все отклонения равны нулю).
Неизвестные коэффициенты a0, a1, …, an находим из условия минимизации суммы квадратов отклонений искомой функции от исходных точек. По аналогии с полиномом первой степени в нашем случае имеем систему уравнений: ZA = B, где Z - квадратная матрица размерностью (n+1) (n+1), составленная из известных координат точек;
119
A – вектор неизвестных коэффициентов: Y – вектор-столбец свободных членов:
|
|
m |
|
xi |
xi |
... |
xi |
|
a0 |
yi |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
|
|
|
n |
|
|
|
|
|
|
|
|
|
|
|
|
|
i |
i |
i |
|
i |
|
|
|
|
|
i |
|
i |
|
|
|
|
|
1 |
|
|
|
|
|
|
x |
|
|
x |
2 |
|
x |
3 |
... |
|
x |
n 1 |
|
|
a |
|
|
|
x y |
|
Z |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
; A |
|
|
|
; Y |
|
|
|
|
. |
|
... |
|
... |
|
|
... |
|
... |
... |
|
|
... |
|
|
... |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x |
n |
|
x |
n 1 |
|
x |
n 2 |
... |
|
x |
2n |
|
|
a |
|
|
|
|
n |
|
|
|
|
|
i |
|
i |
|
|
i |
|
|
i |
|
|
n |
xi |
yi |
|
|
|
|
|
|
|
|
|
4.18. Примеры
Пример 4.1
|
|
|
|
1 |
|
|
|
|
|
0 |
|
|
|
|
|
|
|
|
|
Даны пять исходных точек: |
x |
|
2 |
|
, |
|
|
|
|
|
|
|
|
|
|
|
|
5,5 |
|
|
|
|
|
|
7,8 |
|
|
|
|
|
|
|
|
интерполяционные многочлены: первой степени, второй степени, четвертой степени. Построить аппроксимирующие многочлены: первой, второй степени.
Построение кусочно-линейной интерполяционной функции. Метод неопределенных коэффициентов. Ручной счет
Расчет по первой и второй точкам: x1 1,
Искомая функция: |
y a0 |
a1 x . |
|
1 |
1 |
6,7 |
|
|
|
1 |
1 |
6,7 |
|
|
|
|
|
|
|
|
|
|
|
|
0 |
1 |
|
1строка |
→ |
0 |
1 |
5,7 |
|
1 |
|
|
|
|
|
|
|
|
|
|
a1 |
5,7 ; |
a0 6,7 1 5,7 1. |
|
|
|
Следовательно, |
y 1 5,7x при |
1 x 0 . |
Расчет по второй и третьей точкам: x2 0 , Искомая функция: y a0 a1 x .
|
1 |
0 |
|
|
|
|
1 |
0 |
1 |
|
|
|
1 |
0 |
1 |
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
2,4 |
|
1строка |
→ |
0 |
2 |
1,4 |
|
2 |
→ |
0 |
1 |
0,7 |
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
a1 0,7 ; a0 1 0 0,7 1 . |
|
|
|
Следовательно, y 1 0,7x при 0 x 2 . |
|
|
|
Расчет по третьей и четвертой точкам: |
x3 |
2 |
, |
Искомая функция: y a0 a1 x . |
|
|
|