Адаптивная квадратура
Эта статья включает список литературы , связанную литературу или внешние ссылки , но ее источники остаются неясными, поскольку в ней отсутствуют встроенные цитаты . ( Август 2019 г. ) |
Адаптивная квадратура — это метод численного интегрирования , в котором интеграл от функции аппроксимируется с использованием правил статических квадратур на адаптивно уточненных подинтервалах области интегрирования. Как правило, адаптивные алгоритмы так же эффективны и действенны, как и традиционные алгоритмы для подынтегральных выражений с «хорошим поведением», но также эффективны для подынтегральных выражений с «плохим поведением», для которых традиционные алгоритмы могут дать сбой.
Общая схема
[ редактировать ]Адаптивная квадратура следует общей схеме.
1. procedure integrate ( f, a, b, τ ) 2. 3. 4. if ε > τ then 5. m = (a + b) / 2 6. Q = integrate(f, a, m, τ/2) + integrate(f, m, b, τ/2) 7. endif 8. return Q
Приближение к интегралу за интервал вычисляется (строка 2), а также оценка ошибки (строка 3). Если предполагаемая погрешность превышает требуемый допуск (строка 4), интервал подразделяется (строка 5) и квадратура наносится на обе половины отдельно (строка 6). Возвращается либо первоначальная оценка, либо сумма рекурсивно вычисленных половин (строка 7).
Важными компонентами являются квадратур само правило .
оценщик ошибок
и логика принятия решения о том, какой интервал разделить и когда завершить.
Существует несколько вариантов этой схемы. Самые распространенные будут рассмотрены позже.
Основные правила
[ редактировать ]Правила квадратур обычно имеют вид
где узлы и веса обычно рассчитываются заранее.
В простейшем случае формулы Ньютона–Котеса четной степени, где узлы используются расположены равномерно в интервале:
При использовании таких правил точки, в которых было оценено, может быть повторно использовано при рекурсии:
Аналогичная стратегия используется с квадратурой Кленшоу – Кертиса , где узлы выбираются как
Или, когда квадратура Фейера используется ,
Также могут использоваться другие правила квадратуры, такие как квадратура Гаусса или квадратура Гаусса-Кронрода .
Алгоритм может решить использовать разные квадратурные методы на разных подинтервалах, например, используя метод высокого порядка только там, где подынтегральная функция является гладкой.
Оценка ошибки
[ редактировать ]Некоторые квадратурные алгоритмы генерируют последовательность результатов, которая должна приближаться к правильному значению. В противном случае можно использовать «нулевое правило», которое имеет форму приведенного выше правила квадратур, но значение которого будет равно нулю для простого подынтегрального выражения (например, если подынтегральное выражение было многочленом соответствующей степени).
Видеть:
- Экстраполяция Ричардсона (см. также метод Ромберга )
- Нулевые правила
- Алгоритм Эпсилон
Логика подразделения
[ редактировать ]«Локальная» адаптивная квадратура делает допустимую ошибку для данного интервала пропорциональной длине этого интервала. Этому критерию может быть трудно удовлетворить, если подынтегральные выражения плохо ведут себя только в нескольких точках, например, с разрывами в несколько шагов. В качестве альтернативы можно потребовать только того, чтобы сумма ошибок на каждом из подинтервалов была меньше, чем требует пользователь. Это будет «глобальная» адаптивная квадратура. Глобальная адаптивная квадратура может быть более эффективной (с использованием меньшего количества вычислений подынтегральной функции), но, как правило, ее сложнее программировать и может потребоваться больше рабочего пространства для записи информации о текущем наборе интервалов.
См. также
[ редактировать ]- Адаптивное числовое дифференцирование
- Адаптивный размер шага в ODE
- Адаптивный метод Симпсона на примере адаптивной квадратуры
- QUADPACK — библиотека FORTRAN, использующая глобальную адаптивную квадратуру.
Примечания
[ редактировать ]Ссылки
[ редактировать ]- Маккиман, Уильям (декабрь 1962 г.). Готлиб, Кальвин (ред.). «Алгоритм 145: Адаптивное численное интегрирование по правилу Симпсона» . Сообщения ACM (периодическое издание). 5 (12). Нью-Йорк : ACM : 604–605. дои : 10.1145/355580.369102 . eISSN 1557-7317 . ISSN 0001-0782 . OCLC 1011805770 .
- Джон Р. Райс. Металгоритм для адаптивной квадратуры. Журнал ACM 22 (1), стр. 61–82 (январь 1975 г.).
- Пресс, WH; Теукольский, С.А.; Феттерлинг, WT; Фланнери, BP (2007), «Раздел 4.7. Адаптивная квадратура» , Численные рецепты: искусство научных вычислений (3-е изд.), Нью-Йорк: Cambridge University Press, ISBN 978-0-521-88068-8