Методические указания к выполнению лабораторных работ по дисциплине Численные методы. Часть 1
.pdf
max |
|
h2 |
(b a) max |
|
|
|
. |
(2.11) |
|
|
|
||||||||
|
|||||||||
12 |
|
y (x) |
|
||||||
Трап. |
|
x [a,b] |
|
|
|
|
|
Оценка теоретической погрешности метода трапеций оказалась в два раза больше оценки метода средних прямоугольников.
2.3. Метод Симпсона (метод парабол)
Функция y(x) на каждом элементарном отрезке заменяется вписанной в
нее |
параболой, |
т.е. |
интерполяционным |
полиномом |
|
второй |
степени: |
||||||||
y(x) a |
2 |
x2 a x a |
0 |
R (x) |
(где R (x) – остаточный член интерполяционно- |
||||||||||
|
|
|
1 |
|
|
2 |
2 |
|
|
|
|
|
|
||
го полинома, см. раздел 3). Уравнение параболы y0 (x) a |
2 |
x2 a x a |
0 |
ищет- |
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
||
ся |
по трем |
точкам. |
Если |
искать это уравнение на |
|
отрезке |
[xi 1 , xi ], |
||||||||
( i 1, 2,...,N ) то нужно взять точки xi 1 , xi 1/ 2 |
xi 1 h 2, xi . Обычно поступа- |
||||||||||||||
ют таким образом: уравнение параболы строят по точкам x0 , x1 , x2 на отрезке
[x0 , x2 ] . |
В этом |
случае число отрезков N берут четным, тогда |
||
N |
b a |
2M , где |
M – число элементарных отрезков, на которых функция |
|
h |
||||
|
|
|
||
y(x) заменяется параболой. Можно показать, что на отрезке интегрирования
[x |
, x |
i 1 |
] ( i 1, 2,...,N ) значение I (n) |
( n 1,...,N ) интеграла будет равно: |
||||||||
i 1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
I |
(i) |
h |
y |
|
4 y |
|
y |
|
. |
|
|
|
|
i 1 |
i |
i 1 |
|
|||||||
|
|
|
3 |
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
||
Суммируя все элементарные площади на отрезке [a,b] , получим формулу Симпсона численного интегрирования для N отрезков:
I |
|
|
|
|
h |
y |
|
y |
|
4 y |
y |
|
... y |
|
2 y |
|
y |
|
... y |
|
|
|
Симп |
|
0 |
N |
3 |
N 1 |
2 |
4 |
N 2 |
||||||||||||||
|
|
3 |
|
|
1 |
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(2.12) |
|
|
|
|
|
|
|
|
|
|
|
M |
|
M 1 |
|
|
|
|
|
|
|
|
||
|
|
h |
|
|
|
|
4 y2n 1 |
2 y |
|
|
|
|
|
|
|
|
||||||
|
|
|
yN |
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|||||||||||||
3 |
y0 |
2n . |
|
|
|
|
|
|
|
|||||||||||||
|
|
|
|
|
|
|
|
n 1 |
|
|
n 1 |
|
|
|
|
|
|
|
|
|
||
Можно записать следующую программу для метода Симпсона на универсальном языке:
1S y0 yN ; p 4;
2цикл по n от 1 до N 1
3{S S p yn ; p 6 p;}
4S S h
3 .
Теоретическая абсолютная погрешность метода Симпсона на отрезке [a, b] равна
|
|
|
1 |
|
|
|
||
|
Симп |
|
(b a)h4 max |
y IV (x) |
. |
(2.13) |
||
|
||||||||
|
180 |
x [a,b] |
|
|
|
|||
|
|
|
|
|
||||
11
2.4. Практическая оценка погрешности и экстраполирование по Ричардсону
При интегрировании функции, заданной таблично в равноотстоящих узлах сетки, оценка погрешности производится по формулам:
метод средних прямо- |
метод трапеций |
метод Симпсона |
||||||||||||||||
угольников |
||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
b a |
|
|
|
|
|
b a |
|
|
|
|
|
b a |
|
|
|
|
|
|
|
2 y |
|
|
|
2 y |
|
|
|
4 y |
|
|||||||
|
|
|
|
|
|
|
||||||||||||
24 |
|
|
|
|
12 |
|
|
|
|
180 |
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
Здесь 2 y и 4 y – среднеарифметические значения вторых и четвертых ко-
нечных разностей (см. раздел 3), вычисленных по заданной таблице сеточной функции.
Вычисление значений I ( N ) при различных значениях N элементарных отрезков позволяет получить более точное значение интеграла. Это позволяет практическим способом оценить погрешность и повысить на единицу порядок точности численного метода путем двойного (и т.д.) просчета.
Пусть используется какой-либо метод численного интегрирования с шагами h и 2h , при этом пусть число отрезков разбиения в методе с шагом h равно N , тогда в методе с шагом 2h – N / 2 . Далее, пусть порядок выбранно-
го метода равен k , тогда точное значение I |
интеграла (2.1) равно: |
I I ( N ) C hk O(hk 1 ), |
(2.14) |
I I ( N / 2) C 2k hk O(hk 1 ), |
(2.15) |
где I ( N / 2) и I ( N ) – численные значения интеграла, вычисленные по методу с шагом h и 2h , C hk и C 2k hk – главные члены погрешности численного метода, C – константа.
1, для методов левых и правых прямоугольников,
k 2, для методов средних прямоугольников и трапеций,4, для метода Симпсона.
Используя формулы (2.14)-(2.15), получим абсолютную практическую погрешность по методу двойного просчета (метод Рунге)
~ |
|
|
I ( N ) I ( N / 2) |
|
|
|
|
|
|
|
|
|
|
. |
(2.16) |
|
|
||||||
|
|
|
|
|
|||
|
|
|
2k 1 |
|
|||
Подставляя формулу (2.16) в (2.14), получим формулу численного интегрирования с точностью порядка k 1
|
2k I ( N ) I ( N / 2) |
|
|
I |
|
O(hk 1 ) . |
(2.17) |
|
|||
|
2k 1 |
|
|
Формула (2.17) называется экстраполяцией по Ричардсону.
Если порядок погрешности k метода не известен, можно, используя ту же методику, что и выше, получить оценку этого числа. Для этого нужно
12
иметь три приближенных значения интеграла, чтобы исключить член C hk с двумя неизвестными.
Для этого добавим к уравнениям (2.14)-(2.15) еще одно вида:
I I ( N / 4) C k 4k hk |
O(hk 1 ) . |
(2.18) |
|||
Тогда на основании (2.14)-(2.15) и (2.18) имеем: |
|
||||
2k |
I ( N / 4) |
I ( N / 2) |
. |
|
(2.19) |
I ( N / 2) |
I ( N ) |
|
|||
|
|
|
|
||
2.5.Задание на лабораторную работу № 1: Численное интегрирование
1.Вычислить интеграл (№ вар. по списку в журнале) аналитически, методами
средних прямоугольников, трапеций и Симпсона для N 4 вручную (ЭВМ: N 16 ) и N 8 (ЭВМ: N 32 ). Для каждого метода вычислить экстраполированное по Ричардсону значение интеграла.
2. Определить теоретическую погрешность каждого метода, а также погреш-
ность вычисления, исходя из принципа двойного пересчета ( N 4 и |
N 8 |
||||||||||||||||
(для ЭВМ: N 16 и N 32 )), и сравнить с истинной погрешностью. |
|
||||||||||||||||
3. Сделать выводы и сравнение методов. |
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
№ вар. |
|
интеграл |
№ вар. |
|
интеграл |
|
|
|||||||||
|
|
2 |
|
|
|
|
|
|
|
|
3 |
|
|
|
|
|
|
|
1 |
(e x |
2 cos x)dx |
16 |
(2sin x sin 2x)dx |
|
|
||||||||||
|
|
2 |
|
|
|
|
|
|
|
|
3 |
|
|
|
|
|
|
|
|
|
4 |
|
|
dx |
|
2 |
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
2 |
|
2 x |
17 |
(3x5 4x3 1)dx |
|
|
||||||||||
|
|
|
0 |
|
|
|
|
|
|
0 |
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
4 |
|
|
|
|
|
|
3 |
( 25x4 |
|
45x2 8)dx |
18 |
|
2x ln 2 dx |
|
|
||||||||
|
|
1 |
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
1 |
|
|
dx |
|
|
3 |
|
|
|
|
|
|||
|
4 |
|
|
|
|
19 |
|
|
ln x dx |
|
|
||||||
|
|
1 x2 |
|
|
|
||||||||||||
|
|
|
0 |
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
5 |
(3x5 |
|
x3 x)dx |
20 |
|
(x2 cos x)dx |
|
|
||||||||
|
|
0 |
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
9 |
|
|
|
|
|
|
|
/ 2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(cos x x3 )dx |
|
|
|||||||
|
6 |
|
6x 5 dx |
21 |
|
|
|
||||||||||
|
|
|
1 |
|
|
|
|
|
|
|
|
0 |
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
2 dx |
|
|
||
|
7 |
|
(sin 2x x)dx |
22 |
|
|
x 2 |
|
|
||||||||
|
|
|
|
|
|
|
|
|
|||||||||
|
|
2 |
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
13
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
8 |
(1 2sin x)dx |
23 |
ln(1 x) dx |
||||||||||||||||||
|
0 |
|
|
|
|
|
|
|
|
0 |
|
|
|
|
|
|
|
|
|
|
|
|
/ 2 |
|
|
|
|
|
|
|
|
1 |
|
|
xdx |
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
9 |
(sin x x4 )dx |
24 |
|
1 x |
|||||||||||||||||
|
0 |
|
|
|
|
|
|
|
|
|
0 |
|
|
|
|
|
|
|
|
||
|
|
4,5 |
|
|
|
|
|
|
|
|
2 |
dx |
|
|
|
||||||
10 |
|
|
|
2x dx |
25 |
|
|
|
|
|
|||||||||||
|
|
|
x |
|
|
|
|||||||||||||||
|
|
0 |
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
||||
|
2 |
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
|
|
11 |
(1 x2 x3 )dx |
26 |
1 x2 2 dx |
||||||||||||||||||
|
0 |
|
|
|
|
|
|
|
|
0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
sin 2x dx |
|
|
|
|
|
|
|
|
|||||||||||
12 |
|
27 |
1 x2 dx |
||||||||||||||||||
|
|
0 |
|
|
|
|
|
|
|
0 |
|
|
|
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
|
|
13 |
(1 sin x)dx |
28 |
x exp( x 2 / 2)dx |
||||||||||||||||||
|
0 |
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
3 |
|
|
|
|
|
|
|
|
1 |
|
|
|
x |
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
14 |
(4 sin x x )dx |
29 |
|
|
|
|
dx |
||||||||||||||
|
|
|
|
|
|
|
|||||||||||||||
|
|
|
|
|
|
|
|||||||||||||||
1 |
x |
||||||||||||||||||||
|
7 |
|
|
|
|
|
|
|
|
0 |
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
5 |
|
dx |
|
4 |
|
|
|
|
|
|
|
|
|
|
|||||
15 |
|
|
|
30 |
|
cos2 x dx |
|||||||||||||||
|
2x 3 |
||||||||||||||||||||
|
|
2 |
|
|
|
|
|
|
|
0 |
|
|
|
|
|
|
|
|
|
|
|
Дополнительное задание: (по выбору)
4. Написать программу, осуществляющую с помощью подпрограммы вычисление интеграла с заданной точностью ( взять равным 0.001). Заданная точность достигается методом двойного просчета для N и 2N элементарных интервалов интегрирования, начиная с N 1. Завершение программы двойного просчета должно выполняться либо при достижении заданной точности, либо при проведении заданного количества итераций kmax (не более 15
итераций). Использовать методы трапеций и Симпсона.
3. АППРОКСИМАЦИЯ И ИНТЕРПОЛЯЦИЯ ФУНКЦИЙ
3.1. Аппроксимация и интерполяция
Аппроксимация – это замена (приближение) одной функции f (x) более простой функцией y(x) , близкой к функции f (x) .
В качестве аппроксимирующих (приближенных) функций y(x) очень
часто выбираются многочлены, или функции, составленные из многочленов. В таком случае говорят о полиномиальной аппроксимации или кусочно-
14
полиномиальной аппроксимации. По сравнению с тригонометрическими и экспоненциальными функциями, многочлены привлекательны тем, что они являются линейными функциями своих коэффициентов и их вычисление сводится к выполнению простейших операций – сложения, вычитания и умножения.
В зависимости от выбранного критерия аппроксимации и от количества точек согласования f (x) и y(x) , можно рассмотреть различные конкретные
способы аппроксимации.
Возьмем в качестве аппроксимирующих функций y(x) обобщенные полиномы, составленные по системе функций n (x) , вида:
N |
|
y(x) a0 0 (x) a1 1 (x) ... aN N (x) an n (x) , |
(3.1) |
n 0 |
|
где an – неизвестные коэффициенты, которые подбираются. В качестве
функций n (x) |
обычно берут полиномы: 1, x , x2 , …, x n , …. Тогда функция |
||||||||
y(x) примет вид обычного полинома степени N : |
|
||||||||
y(x) a |
0 |
a x a |
2 |
x2 ... a |
N |
x N . |
(3.2) |
||
|
1 |
|
|
|
|
|
|||
Рассмотрим частный случай аппроксимации функции – интерполяцию. |
|
||||||||
Пусть на отрезке [a, b] |
задана аппроксимируемая функция f (x) и из- |
||||||||
вестны значения |
функции |
f (x) |
в некоторых попарно различных |
точках |
|||||
a x0 , x1 , …, xN b .
Задача интерполирования функции f (x) состоит в том, чтобы найти зна-
чение f (x) |
в точках |
x xi ( i 0, 1,..., N ), если известны значения функции |
f (x) в узлах интерполирования x0 , x1 , …, xN . |
||
Пусть |
f (xi ) yi |
( i 0, 1,..., N ), тогда совокупность значений xi и yi |
( i 0, 1,..., N ) называют сеточной функцией, заданной на отрезке [a, b]. Задача интерполирования решается следующим образом: выбирается
система функций n (x) , строится обобщенный полином (3.1), а коэффициенты an подбираются таким образом, чтобы в узлах интерполяции значения обобщенного полинома совпадали со значениями данной функции f (x) :
f (xi ) y(xi ) , i 0, 1,..., N . |
|
(3.3) |
Обобщенный полином (3.1), обладающий свойством (3.3), называется |
||
обобщенным интерполяционным полиномом, а функция y(x) |
– интерполяци- |
|
онной функцией для функции f (x) на отрезке [a, b]. |
|
|
Если требуется вычислить значение |
f (x) в точках x , которые лежат вне |
|
отрезка [ 1 , 2 ] ( 1 min( x0 , x1 ,...,xN ) , 2 |
max(x0 , x1 ,...,xN ) ), |
то такую задачу |
называют задачей экстраполяции. |
|
|
Если y(x) определяется формулой (3.2), то говорят о полиномиальной (параболической) интерполяции.
15
Задача полиномиальной интерполяции для функции f (x) , заданной в виде таблицы:{xi , f (xi ) , i 0, 1, ..., N} состоит в следующем: найти многочлен
P (x) a |
0 |
a x a |
2 |
x2 ... a |
N |
x N |
такой, что: |
|
N |
1 |
|
|
|
|
|||
PN (xi ) f (xi ) , |
i 0, 1, ..., N , |
|
(3.4) |
|||||
т.е. найти коэффициенты a0 , |
a1 , …, aN |
полинома PN (x) . |
||||||
Из математического анализа известно, что существует только один полином PN (x) на заданном отрезке [a, b] для несовпадающих узлов сетки.
При практическом построении интерполяционного полинома обычно используют два метода: метод Лагранжа и метод Ньютона.
3.2. Интерполяционный полином Лагранжа
Построим многочлен N -ой степени в виде линейной комбинации многочленов N -ой же степени:
LN (x) y0l0 (x) y1l1 (x) ... yN lN (x) , |
(3.5) |
|||
где yn |
y(xn ) , n 0,1,...,N , ln (x) – это многочлены N -ой степени такие, что: |
|||
|
1, если n m, |
|
|
|
ln |
(xm ) |
|
n, m 0,1,..., N. |
(3.6) |
|
0, если n m, |
|
|
|
Тогда для каждого xn , |
n 0,1,...,N справедливо равенство: |
|
||
LN (xn ) yn . |
|
|
|
|
По свойству (3.6) многочленов ln (x) получаем: |
|
|||
ln (x) = cn (x x0 )(x x1 )...(x xn 1 )(x xn 1 )...(x xN ) . |
(3.7) |
|||
Коэффициенты cn можно получить из условия: ln (xn ) 1.
На основании (3.5)-(3.7) получим интерполяционный полином Лагранжа
|
|
|
|
N |
|
|
|
|
|
|
|
N |
|
|
|
|
N |
|
|
|
xk |
|
|
|
|
|
|
|
|
|
|
||
L |
|
(x) |
|
y l |
|
(x) |
|
y |
|
|
|
|
|
x |
. |
|
|
|
|
|
|
|
|
(3.8) |
|||||||||
N |
n |
n |
x |
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||
|
|
|
|
|
n |
|
|
|
|
x |
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
n |
k |
|
|
|
|
|
|
|
|
|
|||||||||||
|
|
|
|
n 0 |
|
|
|
|
|
|
n 0 |
|
|
|
k 0 |
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
k n |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Выпишем явный вид многочленов Лагранжа при N 1 и N 2 : |
|
||||||||||||||||||||||||||||||||
L (x) |
x x1 |
|
y |
|
|
x x0 |
y |
|
|
(линейная интерполяция), |
|
|
|
||||||||||||||||||||
|
|
|
|
0 |
|
|
|
|
|
|
|||||||||||||||||||||||
1 |
|
|
x0 x1 |
|
|
|
x1 x0 |
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
L2 (x) |
(x x1 )(x x2 ) |
|
y0 |
|
(x x0 )(x x2 ) |
y1 |
(x x0 )(x x1 ) |
y2 |
|||||||||||||||||||||||||
(x x )(x x |
) |
|
(x x )(x x |
) |
(x |
2 |
x )(x |
2 |
x ) |
||||||||||||||||||||||||
|
|
|
|
0 |
|
1 |
|
0 |
|
2 |
|
|
|
|
|
|
|
1 |
|
|
0 |
1 |
2 |
|
|
|
0 |
1 |
|
||||
(квадратичная интерполяция).
3.3. Интерполяционный полином Ньютона
Другим способом задания интерполяционного полинома является метод Ньютона. Построим сначала полином Ньютона для равноотстоящих точек (для равномерной сетки узлов) на отрезке [a,b] :
16
|
|
x |
|
|
x |
|
nh |
, |
|
x |
|
a , |
h |
b a |
, x |
|
b , |
n 0,1,...,N 1 |
|
(3.9) |
|||||||||||||||||||||||
|
|
n |
0 |
|
0 |
|
N |
|
|||||||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
N |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Полином Ньютона N -ой степени строится по следующей формуле: |
||||||||||||||||||||||||||||||||||||||||||
|
|
N (x) a0 |
a1 (x x0 ) a2 |
(x x0 )(x x1 ) ... |
|
|
|
|
(3.10) |
||||||||||||||||||||||||||||||||||
|
|
aN (x x0 )(x x1 )...(x xN 1 ). |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||||||||
|
Коэффициенты an |
в (3.10) ищутся из интерполяционного условия: |
|||||||||||||||||||||||||||||||||||||||||
|
|
N(xn ) yn , |
n 0,1,...,N . |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||
|
Начнем с коэффициента a0 : N(x0 ) y0 a0 |
a0 |
y0 . |
|
|
||||||||||||||||||||||||||||||||||||||
Далее: N(x ) a |
|
a (x x ) y |
|
a |
|
y1 |
y0 |
|
y1 |
y0 |
, |
|
|
||||||||||||||||||||||||||||||
0 |
|
|
|
|
|
|
|
|
|||||||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
1 |
1 |
|
0 |
|
|
|
1 |
|
|
|
|
1 |
|
x1 x0 |
|
|
|
h |
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
N (x2 ) a0 a1 (x2 |
x0 ) a2 |
(x2 |
x1 )(x2 x0 ) y2 |
|
|
||||||||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2h |
|
|
|
|
|
|
|
|
h |
|
|
|
2h |
|
|
|
|
|
|
|
|
|
|
|
|
a |
|
|
|
y2 2 y1 y0 |
, … |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
|
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2h2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
По индукции можно показать, что |
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||||||||||
|
|
a |
k |
k y0 |
, k 0,1,...,N |
|
. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(3.11) |
||||||||||||||||||
|
|
|
|
|
k!hk |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
В (3.11) k y0 |
|
– это конечные разности k -го порядка узла x0 . |
|
|
|||||||||||||||||||||||||||||||||||||||
|
Конечные |
разности |
определяются |
следующим |
образом: y0 |
y1 y0 , |
|||||||||||||||||||||||||||||||||||||
2 y |
0 |
( y |
0 |
) y y |
0 |
, 3 y |
0 |
2 y 2 y |
0 |
, …, k y |
0 |
k 1 y k 1 y |
0 |
. |
|||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
1 |
|
|||||||||||
yn yn 1 yn , |
2 yn yn 1 yn , ... , k yn |
k 1 yn 1 k 1 yn , n 0,1, 2,.... |
|||||||||||||||||||||||||||||||||||||||||
|
Таким образом, полином Ньютона N -ой степени для равноотстоящих уз- |
||||||||||||||||||||||||||||||||||||||||||
лов имеет следующий вид: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||||
|
|
N (x) y |
0 |
|
y0 (x x ) |
2 y0 |
(x x )(x x ) ... |
|
|
||||||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1!h |
|
|
|
0 |
|
2!h2 |
|
|
|
|
0 |
|
|
|
1 |
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(3.12) |
||||||||
|
|
|
|
|
N y0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
(x x )(x x )...(x x |
|
|
|
). |
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||
|
|
|
N!hN |
|
|
N 1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
0 |
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||
Полином Ньютона совпадает с полиномом Лагранжа (в силу теоремы существования и единственности), но по способу построения получается более просто. Так слагаемые в полиноме Ньютона убывают и располагаются, как и в ряде Тейлора, в порядке их значимости.
Если в (3.12) ввести замену переменной t (x x0 )
h , тогда
xx0 th , (x x1 )
h t 1, …, (x xN 1 )
h t (N 1) .
Сучетом этих соотношений формула (3.12) примет следующий вид:
N (x) y |
0 |
y0 |
t 2 y0 |
t(t 1) ... N y0 t(t 1)(t 2)...(t (N 1)). (3.13) |
|
1! |
2! |
N! |
|
|
|
Формула (3.13) называется первым интерполяционным полиномом Ньютона для интерполирования вперед.
17
Для правой половины отрезка [a,b] разности лучше вычислять справа налево. Это достигается заменой t (x xN )
h . Тогда из (3.12) получим
N (x) y |
N |
yN 1 |
t 2 yN 2 |
t(t 1) ... N y0 t(t 1)(t 2)...(t N 1). (3.14) |
|
1! |
2! |
N! |
|
|
|
Формула (3.14) называется вторым интерполяционным полиномом Ньютона для интерполирования назад.
3.4. Интерполяционный полином Ньютона для неравноотстоящих узлов
Пусть функция y f (x) задана таблично на неравномерной сетке узлов
a x0 , x1 , …, xN b , при этом y0 , y1 ,…, yN – значения функции f (x) , и разности xn 1 xn ( n 0,1,...,N 1) не равны между собой. Введем следующие
определения.
Отношения |
f (xi , xi 1 ) |
|
yi 1 |
yi |
(i 0,1, 2,...) |
называются разделенными |
|||
|
xi 1 |
xi |
|||||||
|
|
|
|
|
|
|
|||
разностями первого порядка. |
|
|
|
|
|
|
|
||
Аналогично, |
f (xi , xi 1, xi 2 ) |
f (xi 1, xi 2 ) f (xi |
, xi 1 ) |
– разделенные разно- |
|||||
|
xi 2 |
xi |
|
||||||
|
|
|
|
|
|
|
|
||
сти второго порядка.
Разделенные разности n -го порядка определяются из разделенных разностей n 1-го порядка по следующей формуле:
f (x , x |
,...,x |
) |
f (xi 1,...,xi n ) f (xi ,...,xi n 1 ) |
, (n, i 0,1, 2,...). |
(3.15) |
||||
|
|
|
|||||||
i i 1 |
|
i n |
|
|
|
xi n xi |
|
|
|
|
|
|
|
|
|
|
|
||
Пусть P(x) – полином Лагранжа степени N такой, что: |
|
||||||||
P(xi ) f (xi ) yi , (i 0,1, 2,...,N) . |
|
(3.16) |
|||||||
Тогда по формуле первой разделенной разности получим |
|
||||||||
P(x, x0 ) |
P(x) P(x0 ) |
|
|
(3.17) |
|||||
|
|
x x0 |
|
||||||
|
|
|
|
|
|
||||
полином ( N 1)-й степени относительно x . |
|
|
|||||||
Далее, |
|
|
|
|
|
|
|
|
|
P(x, x0 , x1 ) |
|
P(x, x0 ) P(x0 , x1 ) |
|
|
(3.18) |
||||
|
|
x x1 |
|
||||||
|
|
|
|
|
|
|
|||
полином ( N 2 )-й степени относительно x . Тогда, разделенная разность вида
P(x, x0 , x1,...,xN 1 ) есть полином нулевой степени, т.е. |
P(x, x0 , x1,...,xN 1 ) С . |
Отсюда P(x, x0 , x1 ,...,xN ) 0 . |
|
Из формулы (3.17) имеем: |
|
P(x) P(x0 ) P(x, x0 )(x x0 ) . |
(3.19) |
Из определения разделенных разностей следует, что |
|
18
P(x, x |
|
,...,x |
|
) |
P(x, x0 ,...,xm 1 ) P(x0 ,...,xm ) |
, |
|
0 |
m |
x xm |
|
||||
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
поэтому |
|
|
|
|
|
|
|
P(x, x0 ,...,xm 1 ) P(x0 ,...,xm ) P(x, x0 ,...,xm )(x xm ) . |
(3.20) |
||||||
Используя формулы (3.18)-(3.19) и интерполяционные условия (3.15), получим интерполяционный полином Ньютона для неравноотстоящих узлов:
f (x) y0 |
f (x0 |
, x1 )(x x0 ) f (x0 |
, x1 |
, x2 )(x x0 )(x x1 ) ... |
(3.21) |
|
f (x0 , x1 ,...,xN )(x x0 )(x x1 )...(x xN 1 ). |
||||||
|
||||||
3.5. Погрешность многочленной интерполяции
Ясно, что в узлах интерполяции погрешности интерполяционных многочленов Лагранжа и Ньютона равны нулю. Погрешность RN (x) f (x) LN (x)
в точке x , не совпадающей с узлом интерполяции, определяется по формуле:
|
|
|
|
|
|
|
|
max |
f ( N 1) (x) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
R |
N |
(x) |
|
x [a,b] |
|
|
|
|
|
|
|
| (x x |
)(x x )...(x x |
N |
) | , |
(3.22) |
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||||
|
|
|
|
|
|
|
|
(N 1)! |
0 |
|
|
|
1 |
|
|
|
||||||||||||||||
или |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
max |
|
f ( N 1) (x) |
|
|
|
|
|
|
|
|
|
|
|
|||||||||
|
Rmax (x) |
|
x [a,b] |
|
|
|
|
|
|
|
|
|
|
(x |
N |
x |
0 |
) N 1 . |
|
|
(3.23) |
|||||||||||
|
|
|
|
|
|
|
||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||
|
|
|
N |
|
|
|
|
|
|
|
|
|
(N |
1)! |
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
В случае равномерной сетки узлов из (3.23) имеем |
|
|||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
max |
|
f ( N 1) (x) |
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
R |
N |
(x) |
|
|
x [a,b] |
|
|
|
|
|
|
|
h N 1 . |
|
|
|
|
|
(3.24) |
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
(N 1) |
|
|
|
|
|
|
|
|
||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||
Если аналитическое выражение функции f (x) не известно, то, добавляя к
таблице значений функции еще один узел интерполяции, можно записать верхнюю оценку погрешности с помощью отношения конечных разностей ( N 1)-го порядка:
|
RN |
(x) |
|
|
|
|
|
|
( N 1) |
y0 |
|
|
| (x x0 )(x x1 )...(x xN ) |. |
(3.25) |
|||||||
|
|
|
|||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
h N 1 (N |
|
1)! |
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||
В случае равномерной сетки |
|
||||||||||||||||||||
|
R |
N |
(x) |
|
|
|
|
|
|
. |
|
|
|
(3.26) |
|||||||
|
|
|
|
|
( N 1) y0 |
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
||||||||||||||
|
|
|
|
|
|
|
|
||||||||||||||
|
|
|
|
|
(N 1) |
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
Формулы (3.22)-(3.26) определяют также погрешность интерполяционных формул Ньютона.
Аналогично можно определить погрешность экстраполяции при удале-
нии x от [a x0 ,b xN ]. Так, |
в случае равномерной сетки, при x [x0 |
h, x0 ] |
|||||||||||||
или x [xN , xN h] имеем |
|
|
|
||||||||||||
|
R |
|
(x) |
|
|
max |
|
f |
( N 1) |
|
|
h |
N 1 |
. |
(3.27) |
|
|
|
|
|
|||||||||||
|
N |
|
|
|
(x ) |
|
|
||||||||
|
|
|
|
|
|
x [ x ,x] |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
|
|
|
|
|
|
|
||
19
3.6. Метод наименьших квадратов
Еще одним методом отыскания аппроксимирующего полинома (не интерполяционного) является метод наименьших квадратов (МНК). Суть его заключается в следующем: требуется провести полином N -ой степени a0 a1 x a2 x2 ... aN x N через ( M 1) заданную точку (M N ) так, чтобы этот полином в среднеквадратичном хорошо описывал исходную функцию f (x) . Такой метод полезен в том случае, если не удается обеспечить при
больших M гладкость интерполяции (по M -ой производной), что на практики очень сложно сделать.
Подберем аппроксимирующую функцию y(x) так, чтобы сумма квадратов отклонений значений функции f (xm ) от заданных значений ym y(xm ) в xm , m 0,1,...,M была бы минимальной. Такая функция будет наилучшей в
смысле метода наименьших квадратов. Составим следующую функцию (функционал):
|
M |
|
|
|
S(a0 , a1 ,...,aN ) f (xm ) ym |
2 |
|
|
|
|
m 0 |
|
|
|
M |
|
|
|
|
a0 |
a1 xm a2 xm2 ... aN xmN ym 2 . |
(3.28) |
||
m 0 |
|
|
|
|
Найдем |
минимум функции S(a0 , a1 ,...,aN ) |
в (3.28) по переменным |
||
a0 , a1 ,...,aN . |
Необходимые и |
|
достаточные |
условия минимизации |
S(a0 , a1 ,...,aN ) выражаются условиями:
S |
0, |
n 0,...,N |
(3.29) |
|
an |
||||
|
|
|
– это система из ( N 1) уравнения с ( N 1) неизвестными коэффициентами a0 , a1 ,...,aN . Подставляя в (3.29) формулу (3.28), получим систему линейных
алгебраических уравнений вида:
|
M |
|
|
|
|
|
|
|
|
|
M |
|
|
|
|
|
xmk a0 |
xmk 1a1 |
xmk 2 a2 ... xmk N aN ym xmk |
, k 0,1,...,N . |
(3.30) |
||||||||||||
m 0 |
|
|
|
|
|
|
|
|
|
m 0 |
|
|
|
|
|
|
В матричной форме система (3.30) метода наименьших квадратов имеет |
||||||||||||||||
вид: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
M |
|
M |
|
|
M |
|
|
|
|
M |
|
|
|
|
|
|
|
0 |
|
1 |
|
|
N |
a0 |
|
|
|
|
0 |
|
|
|
|
xm |
xm ... |
xm |
|
|
|
ym xm |
|
|
|||||||
m 0 |
|
m 0 |
|
m 0 |
|
|
|
m 0 |
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
||||||
M |
|
M |
|
|
M |
|
|
|
M |
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
2 |
|
|
N 1 |
a1 |
|
|
|
|
1 |
|
|||
|
xm |
xm ... |
xm |
|
|
ym xm |
. |
(3.31) |
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
m 0 |
|
m 0 |
|
m 0 |
|
... |
|
m 0 |
|
|
|
|
|
||
... |
... |
... |
... |
|
|
|
... |
|
|
|||||||
|
|
|
|
|
|
|
||||||||||
M |
|
M |
|
|
M |
|
|
|
M |
|
|
|
|
|||
|
|
x N |
|
x N 1 ... |
|
x2 N |
|
|
|
y |
|
x N |
|
|
||
|
|
|
|
|||||||||||||
|
m |
m |
|
m |
aN |
|
|
|
m |
m |
|
|
||||
m 0 |
|
m 0 |
|
|
m 0 |
|
|
|
m 0 |
|
|
|
|
|
||
20
