Квадратурные формулы наивысшей алгебраической

advertisement
Варианты задания
7.
Приближенное вычисление интегралов от функций,
недостаточно гладких на промежутке интегрирования
7.1.
Общие сведения
Требуется вычислить приближенно интеграл
Zb
ϕ(x) dx,
a
где подынтегральная функция не является достаточно гладкой на промежутке интегрирования и, значит, не допускает хорошего приближения многочленами. Естественно представить подынтегральную функцию в виде ϕ(x) = ρ(x)f (x), ρ(x) содержит особенности
функции ϕ(x), а f (x) является достаточно гладкой функцией. Далее будем рассматривать
квадратурную формулу вида
Zb
ρ(x)f (x) dx ≈
n
X
Ak f (xk ),
(1)
k=1
a
где xk — узлы квадратурной формулы, Ak — коэффициенты,
ρ(x) — весовая функция и должна удовлетворять следующим условиям:
• ρ(x)≥0 при x ∈ [a, b];
• существуют моменты весовой функции
Rb
µk = ρ(x)xk dx < ∞, k = 0, 1, 2, . . .;
a
• µ0 >0.
Квадратурная формула будет интерполяционной, если
Zb
Ak =
ρ(x)
ω(x)
dx,
(x − xk )ω 0 (xk )
(2)
a
где ω(x) =
n
Q
(x − xi ).
i=1
Примеры:
Z1
α
Z1
x cos x dx,
0
7.2.
(1 − x)α ex dx (α > −1).
0
Квадратурные формулы наивысшей алгебраической степени
точности (формулы типа Гаусса)
Теорема 1. Для того чтобы квадратурная формула (1) была точна для любого многочлена степени не выше 2n − 1, необходимо и достаточно, чтобы:
• узлы x1 , x2 , . . . , xn являлись корнями ортогонального относительно веса ρ(x) и
отрезка [a, b] многочлена w(x) = (x − x1 )(x − x2 ) · · · (x − xn );
• формула (1) была интерполяционной.
1
Теорема 2 (О погрешности). Пусть отрезок интегрирования [a, b] конечен. Если функция f (x) имеет непрерывную на [a, b] производную порядка 2n, то существует точка
η ∈ [a, b], такая что погрешность квадратурной формулы (1) гауссова типа имеет представление
Z
f (2n) (η) b
ρ(x)ω 2 (x)dx.
Rn (f ) =
(2n)! a
Построение квадратурной формулы типа Гаусса
Узлы находим из первого условия теоремы
Zb
ρ(x)ωn (x)ωi (x) dx = 0, i = 0, 1, . . . , (n − 1).
a
Очевидно, что достаточно потребовать ортогональности многочлена wn (x) относительно
веса ρ(x) и отрезка [a, b] к одночленам xi , i = 0, 1, . . . , (n − 1). Таким образом, коэффициенты искомого многочлена wn (x) являются решением системы
Zb
ρ(x)(xn + a1 xn−1 + a2 xn−2 + · · · + an ) xi dx = 0, i = 0, 1, . . . , (n − 1).
a
Учитывая обозначения
Zb
µk =
ρ(x)xk dx,
a
получим следующую систему линейных уравнений относительно

+a2 µn−2 + · · · +an µ0
=
1 µn−1
 a
a1 µn
+a2 µn−1 + · · · +an µ1
=
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.....

a1 µ2n−2 +a2 µ2n−3 + · · · +an µn−1 =
a1 , a2 , . . . , an :
−µn ,
−µn+1 ,
.........
−µ2n−1 .
Система имеет единственное решение.
Узлы — решения уравнения xn + a1 xn−1 + · · · + an−1 x + an = 0 вещественны, различны и
лежат внутри промежутка [a, b].
Коэффициенты Ak находятся по формуле (2).
Известно, что Ak > 0, k = 1, . . . , n.
Алгебраическая степень точности формулы d = 2 n − 1, формула точно интегрирует многочлены 0-ой степени, следовательно
n
X
Zb
Ak =
k=1
ρ(x) dx = µ0 .
a
Приведем алгоритм построения формулы типа Гаусса для n = 2.
1. Вычислить моменты µ0 , µ1 , µ2 , µ3 .
2. Построить систему
n
a1 µ1 + a2 µ0 = −µ2 ,
a1 µ2 + a2 µ1 = −µ3 .
3. Вычислить a1 , a2 , например, по правилу Крамера
−µ2 µ0 −µ3 µ1 µ0 µ3 − µ2 µ1
a1 = µ1 µ0 =
,
µ µ µ21 − µ2 µ0
2
1
2
µ1 −µ2 µ2 −µ3 µ2 − µ3 µ1
a2 = µ1 µ0 = 22
.
µ µ µ1 − µ2 µ0
2
1
4. Решить уравнение x2 + a1 x + a2 = 0. Узлы должны быть вещественны, различны и
должны принадлежать (a, b).
5. Вычислить коэффициенты квадратурной формулы.
Zb
A1 =
ρ(x)
x − x2
1
dx =
(µ1 − x2 µ0 ),
(x1 − x2 )
x1 − x2
ρ(x)
x − x1
1
dx =
(µ1 − x1 µ0 ).
(x2 − x1 )
x2 − x1
a
Zb
A2 =
a
Проверка: коэффициенты должны быть положительны и A1 + A2 = µ0 .
Построена формула:
Zb
ρ(x)f (x) dx ≈
n
X
Ak f (xk ),
k=1
a
которая должна быть точна для f (x) = 1, x, x2 , x3 .
7.3.
7.3.1.
Частные случаи формулы типа Гаусса
Формула Гаусса
ρ(x) ≡ 1, [a, b] = [−1, 1]. Узлы — корни многочлена Лежандра
Pn (x) =
1 dn 2
(x − 1)n ,
2n n! dxn
а коэффициенты могут быть вычислены по формуле
Ak =
2
(1 −
.
x2k )[Pn0 (xk )]2
Приведем формулы Гаусса для n = 1, 2, 3.
R1
f (x) dx ≈ 2f (0),
−1
R1
!
!
1
1
f (x) dx ≈ f − √
+f √ ,
3 !
3
−1
r
1
R
5
3
8
5
f (x) dx ≈ f −
+ f (0) + f
9
5
9
9
−1
r !
3
.
5
Погрешность формулы Гаусса имеет оценку
|Rn (f )| ≤
22n+1 (n!)4
M2n = Cn M2n ,
(2n + 1)[(2n)!]3
M2n = max |f 2n (ξ)|, ξ ∈ [−1, 1].
Отметим, что коэффициенты Cn быстро убывают:
1
1
1
1
C1 = , C2 =
, C3 =
, C4 =
.
3
135
15750
3472875
3
Замечание 1. При вычислении интеграла по промежутку [a, b] следует выполнить замену
(b − a)
(b + a)
(b − a)
переменной x =
t+
, dx =
dt, так что
2
2
2
Zb
b−a
f (x) dx =
2
Z1
f
!
n
b−a
b+a
b−a X
b−a
b+a
dt ≈
t+
Ak f
tk +
.
2
2
2
2
2
k=1
−1
a
Здесь tk , Ak — соответственно узлы и коэффициенты формулы Гаусса для [−1, 1].
Для погрешности формулы Гаусса на промежутке [a, b] имеем оценку
(b − a) 22n+1 (n!)4
|Rn (f )| ≤
2 (2n + 1)[(2n)!]3
Cn[a,b]
= Cn
(b − a)
2
!2n
M2n = Cn[a,b] M2n ,
!2n+1
b−a
, M2n = max |f 2n (ξ)|, ξ ∈ [a, b].
2
Замечание 2. Для составной формулы Гаусса с m разбиениями погрешность
|Rn (f )| ≤
Cn[0,1] (b
− a)
b−a
m
!2n
M2n ,
то есть при уменьшении длины частичного промежутка вдвое погрешность уменьшается
в 22n раз.
7.3.2.
Формула Мелера
ρ(x) = √
1
, [a, b] = [−1, 1].
1 − x2
Узлы — корни многочлена Чебышева Tn (x) = cos(n arccos(x)).
Z1
−1
n
πX
√
f (x) dx ≈
f
n
1 − x2
1
cos
k=1
Варианты задания
4
2k − 1
π
2n
!!
.
Download