Повысить точность результата вычисления определённого интеграла можно, если заменить линейную аппроксимацию, используемую в методе трапеций, кусочной аппроксимацией кривыми, например, параболой второго порядка. Для проведения каждой параболы требуется три точки. Аппроксимируя подынтегральную функцию параболами, получаем формулу Симпсона:
, или
.
В этой формуле число интервалов должно быть чётное.
Таким образом, для вычисления определённого интеграла методом Симпсона надо вычислить отдельно суммы значений подынтегральной функции в узлах интегрирования между a и b в чётных и нечётных точках. Сумма, полученная для нечётных точек, умножается на 4, а сумма для чётных точек – на 2. К полученным двум суммам прибавляется сумма значений подынтегральной функции на концах отрезка. Полученный итог умножается на 1/3 шага интегрирования.
Все вышеприведённые алгоритмы вычисления определённого интеграла используют заданный шаг интегрирования. Кроме этого, существуют итерационные алгоритмы, в которых вычисления выполняются до заданной точности e результата. При каждой итерации количество узлов интегрирования n удваивается, а затем новый результат сравнивается с результатом, полученным на предыдущем шаге. Вычисления повторяются в цикле, пока разница между результатами не станет меньше e.
Задания
1. Набрать текст программы Integral1. Провести вычисления и вывести на принтер (экран) результаты расчётов при n=10; 100; 1000; 10000. Сравнить точность и скорость вычислений.
2. Сохранить под другим именем и модифицировать программу, чтобы она вычисляла значение интеграла методом трапеций. Сравнить точность и скорость вычислений при n=10; 100; 1000; 10000.
3. Сохранить под другим именем и модифицировать программу, чтобы она вычисляла значение интеграла методом парабол. Сравнить точность и скорость вычислений при n=10; 100; 1000; 10000.
4. Сохранить под другим именем и используя три предыдущих примера модифицировать программу, чтобы она последовательно вычисляла значение интеграла методом прямоугольников, трапеций и парабол. Сравнить точность и скорость вычислений при n=10; 100; 1000; 10000. Для этого результаты должны выводиться в виде таблицы:
Результаты вычисления определённого интеграла методами