- •Вычислительная математика
- •Введение
- •Содержание дисциплины
- •1.1. Интерполяция по Лагранжу
- •1.2. Метод разделённых разностей
- •1.3. Итерационные методы интерполяции
- •1.4. Метод наименьших квадратов для функций
- •1.5. Сглаживание с помощью сплайнов
- •1.6. Дифференцирование с использованием формул разностей
- •1.7. Интегрирование по методу Симпсона
- •1.8. Интегрирование по методу Ромберга
- •1.9.Квадратурные формулы Гаусса
- •2. Список основных рекомендуемых источников
- •3. Рекомендации по изучению дисциплины
- •4. Выполнение контрольной работы
- •4.1 Задания на контрольную работу
- •4.2.Оформление контрольной работы
- •Приложение 1 Задания
- •Приложение 2 Оформление титульного листа
- •Приложение 3 Примеры реализации программ на Бейсике
1.8. Интегрирование по методу Ромберга
Из всех формул Ньютона-Котеса метод трапеций является наиболее простым, однако он не даёт достаточной степени точности. Метод Ромберга получил широкое распространение, поскольку сочетает в себе простоту метода трапеций с высокой точностью вычисления [1]. Он состоит в применении экстраполяционного метода Ричардсона для улучшения результатов, полученных с помощью метода трапеций. Для интегрирования по методу Ромберга вспомним метод трапеций:
,
где h= (b –a)/mиxj=a+jh. Известно, что погрешность усечения уменьшается с увеличением числа шаговm. Один из способов повышения систематического повышенияmсостоит в использовании прогрессии вида:
m = 2k – 1, k = 1, 2, ... , n,
где n– целое положительное число. Шагhдля такой прогрессии уменьшается как:
hk = b – a/2k – 1, k = 1, 2, ..., n.
h1 = b – a/21 – 1 = b – a/1, отсюда m = 1
h2 = b – a/22 – 1= b – a/2, m = 2
h3 = b – a/23 – 1= b – a/4, m = 4
Удобно обозначить Rk,1приближённое значение интеграла, тогда:
R1,1 = (h1/2)[f(a) + f(b)], (k = 1, m = 1);
R2,1 = (h2/2)[f(a) + f(b) + 2f(a + h2)], (k = 2, m = 2);
R3,1 = (h3/2)[f(a) + f(b) + 2[f(a + h3) + f(a + 2h3) + f(a +3h3)]], (k = 3, m = 3).
Можно показать, что эта последовательность записывается в общем виде как:
,
для каждого k = 2, 3, ... ,n. Это выражение можно использовать для ускорения процесса вычисления каждогоRk,1. В то время какkувеличивается, точностьRk,1также увеличивается, однако сходимость к точному значению интеграла очень медленная. Для ускорения процесса сходимости используют экстраполяционную формулу Ричардсона:
Rij= [22(j – 1)Ri,j – 1 –Ri – 1,j – 1]/(22(j – 1)– 1).
для каждого i= 2, 3, ... ,n;j= 1, 2, ... ,i, где экстраполированное значение, отвечающее большему индексуj, соответствует более старшему порядку в формулах Ньютона-Котеса (рис. 2).
Рис. 2. Алгоритм интегрирования по формулам Ньютона-Котеса
Результат аппроксимаций может быть записан в виде треугольной матрицы:
R1,1
R2,1R2,2
R3,1R3,2R3,3
R4,1R4,2R4,3R4,4
. . .
Rn,1Rn,2...Rn,n
Диагональные элементы сходятся к точному значению интеграла быстрее, чем Rn,1. Обычно процедура применения итерационной схемы метода Ромберга заключается в последовательном нахождении элементов в строчках до тех пор, пока для некоторогоnразность междуRn,nиRn – 1,n – 1 меньше некоторой наперёд заданной погрешности.
1.9.Квадратурные формулы Гаусса
Все формулы интегрирования Ньютона-Котеса используют равноотстоящие координаты абсцисс. Если это ограничение снято, расстояние между точками можно выбрать таким образом, чтобы понизить погрешность аппроксимации.
В выражении:
,
wiиxiвзяты неизвестными, подлежащими определению. Таким образом, полное число неизвестных параметров равно 2(n + 1). Полином степени 2n + 1 для своего однозначного определения требует задания 2n + 2 узлов.
Будем аппроксимировать интеграл, используя полином степени 2n + 1, и потребуем, чтобы для всех полиномов со степенями, равными или меньшими этого значения, погрешности аппроксимации были равны нулю. Это условие даст 2n + 2 уравнений для 2n + 2 неизвестных. В общем случае конечные уравнения окажутся линейными относительноwi, но нелинейными относительноxi. Если пределы интегрирования составляют [–1, 1], значениямиxiстанутn+ 1 корней полинома ЛежандраPn + 1(x) = 0. После того как найденыxiвеличиныwiмогут быть найдены методами решения линейных систем. Рассмотрим случай сn = 1. Требование, чтобы равенство
,
удовлетворялось для всех полиномов степени 2n + 1 и меньше, означает, что дляf(x) = 1,x,x2иx3равенство должно строго выполняться. Из этого получаем следующие уравнения:
;
;
;
.
Система четырёх уравнений для четырёх неизвестных может быть решена даже для нелинейных уравнений. Чтобы избежать трудностей, связанных с нелинейностью, возьмём полином Лежандра в виде:
P2(x) = –1 + 3x2.
Преимуществом подобной схемы является то, что корни полиномов Лежандра хорошо известны и табулированы в литературе.
Полином второй степени имеет корни и. Используя эти значения и два любых уравнения из выше приведённых, получим, чтоw0 = 1 иw1=1. Тогда интеграл записывается в виде:
.
Ограничение, связанное с необходимостью выбора промежутка интегрирования от –1 до 1 не настолько затруднительно. Очевидно, что замена переменных z= 2x– (a+b)/(b–a) преобразует интеграл к требуемому виду:
.
Таким образом, применение метода квадратур Гаусса с n= 2 для вычисления интеграла даёт:
I = (b – a)/2 [w1f([(b – a)z1 + b + a]/2) + w2f([(b – a)z2 + b + a]/2)].
Для функции с n= 3 результат окажется следующим:
I = (b – a)/2 [w1f([(b – a)z1 + b + a]/2) + w2f([(b – a)z2 + b + a]/2) +
+ w3f([(b–a)z3+b+a]/2)].
Задача, таким образом, состоит в нахождении коэффициентов wiи корней полинома Лежандраzi. Эти значения приведены в табл.
Таблица
Значения коэффициентов и корней для формул Гаусса [1]
n |
Корни |
Коэффициенты |
n |
Корни |
Коэффициенты |
2 |
0,5773502692 –0,5773502692 |
1,0000000000 1,0000000000 |
8 |
0,9602898565 0,7966664774 0,5255324099 0,1834346425 –0,1834346425 –0,5255324099 –0,7966664774 –0,9602898565 |
0,1012285363 0,2223810345 0,3137066459 0,3626837834 0,3626837834 0,3137066459 0,2223810345 0,1012285363 |
3 |
0,7745966692 0,0000000000 –0,7745966692 |
0,5555555556 0,8888888889 0,5555555556 | |||
4 |
0,8611363116 0,3399810436 –0,3399810436 –0,8611363116 |
0,3478548451 0,6521451549 0,6521451549 0,3478548451 | |||
5 |
0,9061798459 0,5384693101 0,0000000000 –0,5384693101 –0,9061798459 |
0,2369268850 0,4786286705 0,5688888889 0,4786286705 0,2369268850 |
9 |
0,9681602395 0,8360311073 0,6133714327 0,3242534234 0,0000000000 –0,3242534234 –0,6133714327 –0,8360311073 –0,9681602395 |
0,0812743884 0,1806481607 0,2606106964 0,3123470770 0,3302393550 0,3123470770 0,2606106964 0,1806481607 0,0812743884 |
6 |
0,9324695142 0,6612093864 0,2386191861 –0,2386191861 –0,6612093864 –0,9324695142 |
0,1713244924 0,3607615730 0,4679139346 0,4679139346 0,3607615730 0,1713244924 | |||
7 |
0,9491079123 0,7415311856 0,4058451414 0,0000000000 –0,4058451414 –0,7415311856 –0,9491079123 |
0,1294849661 0,2797053914 0,3818300505 0,4179591837 0,3818300505 0,2797053914 0,1294849661 |
10 |
0,9739065285 0,8650633667 0,6794095683 0,4333953941 0,1488743390 –0,1488743390 –0,4333953941 –0,6794095683 –0,8650633667 –0,9739065285 |
0,0666713443 0,1494513492 0,2190863625 0,2692667193 0,2955242247 0,2955242247 0,2692667193 0,2190863625 0,1494513492 0,0666713443 |