Перш за все, вам потрібно задати собі питання, чи потрібен вам загальний квадратурний режим, який повинен сприймати інтеграл як чорний ящик. Якщо це так, ви не можете не скористатися адаптивною квадратурою, де ви сподіваєтесь, що адаптивність знайде «важкі» місця в інтеграді. І це одна з причин Piessens et al. обрали для правила Гаусса-Кронрода (цей тип правила дозволяє обчислити наближення інтеграла та оцінку помилки наближення за допомогою тих же оцінок функції) скромного порядку, застосованого в адаптивній схемі (з підрозділом інтервалу на найвища похибка) до досягнення необхідних допусків. Алгоритм Вінна-Епсілона дозволяє забезпечити прискорення конвергенції і, як правило, допомагає у випадках, коли є особливості кінцевої точки.
Але якщо ви знаєте "форму" або "тип" вашого інтегранда, ви можете пристосувати свій метод до того, що вам потрібно, щоб обчислювальні витрати були обмеженими для потрібної точності. Отже, на що потрібно звернути увагу:
Інтеграл:
- Гладкість: чи можна її наблизити (добре) поліномом з ортогональної сімейства поліномів (якщо так, квадратура Гаусса буде добре)
- Сингулярності: чи може інтеграл розбиватися на інтеграли лише з сингулярностями кінцевих точок (якщо так, правило IMT або подвійна експоненціальна квадратура буде добре на кожному під інтервалі)
- Обчислювальні витрати на оцінку?
- Чи можна обчислити інтегранд? Або доступні лише обмежені точки?
- Сильно коливальний інтегранд: шукайте методи типу Левіна.
Що стосується сингулярностей, то, як правило, вважають за краще, щоб вони знаходилися в кінцевій точці інтегралів (див. IMT, подвійний показник). Якщо це не так, можна вдатися до інтеграції Кленшо-Кертіса, де ви захоплюєте особливості вагової функції. Типово визначають форми сингулярностей на зразок і встановлюють вирази для ваг квадратури як функції і .| х-с |- αcα
Інтервал інтеграції: скінченний, напівскінченний або нескінченний. У разі напівнескінченних чи нескінченних інтервалів, чи можна їх зменшити до кінцевого інтервалу змінним перетворенням? Якщо ні, то поліноми Лагера або Ерміта можуть бути використані в квадратурному підході Гаусса.
У мене взагалі немає посилання на реальну таблицю потоків для квадратури в цілому, але книга КВАДПАК (не manliges Netlib, а реальна книга) має таблицю з переліком, щоб вибрати відповідну процедуру на основі інтеграла, який ви хочете оцінити. У книзі також описані варіанти алгоритмів, зроблені Piessens та співавт. для різних процедур.
Для низькомірних інтегралів зазвичай ідеться для вкладеної одновимірної квадратури. У спеціальному випадку двовимірних інтегралів (кубатура) існують правила інтеграції для різних випадків областей інтеграції. Р. Кулс зібрав велику кількість правил у своїй Енциклопедії кубатурних формул і є головним автором пакету Cubpack . Для інтегралів високих розмірів, як правило, вдаються до методів типу Монте-Карло. Однак для отримання розумної точності потрібно мати дуже велику кількість інтегральних оцінок. Для низькомірних інтегралів такі методи апроксимації, як квадратура / кубатура / вкладена квадратура, часто перевищують ці стохастичні методи.
Загальні цікаві посилання:
- Квадрат, Піссенс, Роберт; де Донкер-Капенга, Еліза; Юберхубер, Крістоф В.; Каханер, Девід (1983). QUADPACK: Пакет підпрограми для автоматичної інтеграції. Спрингер-Верлаг. ISBN 978-3-540-12553-2
- Методи чисельної інтеграції: друге видання, доктор Девіс та доктор Рабіновіц, 2007 р., Доверські книги з математики, ISBN 978-0486453392