Обеспечение необходимой точности при численном интегрировании
Пусть имеется метод приближенного вычисления некоторой величины I c использованием шага h. Например, вычисление интеграла, решение дифференциальных уравнений и т.д. Мы рассмотрим вычисление интеграла
.
Функция f(x) задана аналитически, то есть в виде формулы. На практике часто применяется следующий прием вычисления величины I с заданной точностью . Выбираются шаги h1 и h2 (h2 < h1), и с использованием выбранных шагов выполняются приближения I1 и I2 к величине I (т.е. вычисляют значение I1 при заданном шаге h1 и I2 при заданном h2). Затем по некоторому критерию близости сравнивают I1 и I2. Если величины I1 и I2 достаточно близки, то величина I2 принимается за приближенное значение I. Если I1 и I2 не близки, то выбирается шаг h3 ( h3 < h2), вычисляется величина I3, которая сравнивается с I2 и т.д.
На практике, как правило, шаги hk выбираются так, что и величина Ik+1 принимается за приближенное значение I, если выполнено условие
(7.13)
Рассмотрим алгоритм вычисления определенного интеграла методом трапеции с заданной точностью с использованием описанного приема. Пусть требуется вычислить с точностью ε. Функция .
1. Ввод исходных данных: a, b, ε, n (n – начальное число разбиений отрезка [a,b]).
2. Выбор начального шага
3. Вычисление ; ; i = 0, 1, …, n .
4. Вычисление методом трапеций с шагом h величину
5. Вычисление n=n∙2; h=(b-a)/n .
6. Вычисление ; вычисление yi .
7. Вычисление
8. Если , то
9. Если , то
10. Если , то I1 = I2.
11. Если , то идем к п. 5 .
12. Вывод I= I2.
13. Конец вычислений.
Данный алгоритм применим, если функция y=f(x) задана аналитически, т.е. в виде формулы. Если f(x) задана в табличном виде ( например, она является результатом экспериментов), то приходится ограничиваться данным множеством точек, т.е. алгоритм не применим.