Prima di tutto, devi porsi la domanda se hai bisogno di una routine di quadratura a tutto tondo che dovrebbe prendere un integrando come una scatola nera. In tal caso, non si può fare a meno di optare per una quadratura adattiva in cui si spera che l'adattabilità colga punti "difficili" nell'integrando. E questo è uno dei motivi per cui Piessens et al. scelto per una regola di Gauss-Kronrod (questo tipo di regola consente di calcolare un'approssimazione dell'integrale e una stima dell'errore di approssimazione utilizzando le stesse valutazioni di funzione) di ordine modesto applicato in uno schema adattivo (con suddivisione dell'intervallo con il errore più elevato) fino al raggiungimento delle tolleranze richieste. L'algoritmo Wynn-epsilon consente di fornire l'accelerazione di convergenza e in genere aiuta nei casi in cui vi sono singolarità end-point.
Ma se conosci la "forma" o il "tipo" del tuo integrando, puoi adattare il tuo metodo a ciò di cui hai bisogno, quindi il costo computazionale è limitato per l'accuratezza di cui hai bisogno. Quindi cosa devi guardare:
integrando:
- Levigatezza: può essere approssimato (bene) da un polinomio proveniente da una famiglia polinomiale ortogonale (in tal caso, la quadratura gaussiana andrà bene)
- Singolarità: l'integrale può essere diviso in integrali con solo singolarità del punto finale (in tal caso, la regola IMT o la doppia quadratura esponenziale andranno bene su ogni sottointervallo)
- Costo computazionale per la valutazione?
- L'integrando può essere calcolato? O sono disponibili solo dati puntuali limitati?
- Integrando altamente oscillatorio: cerca metodi di tipo Levin.
| x-c |- αcα .
Intervallo di integrazione: finito, semi-infinito o infinito. In caso di intervalli semi-infiniti o infiniti, possono essere ridotti a un intervallo finito da una trasformazione variabile? Altrimenti, i polinomi di Laguerre o Hermite possono essere usati nell'approccio di quadratura gaussiana.
Non ho un riferimento per un foglio di flusso reale per la quadratura in generale, ma il libro QUADPACK (non le pagine man di Netlib, ma il libro reale) ha un foglio di flusso per selezionare la routine appropriata in base all'integrale che si desidera valutare. Il libro descrive anche le scelte negli algoritmi fatte da Piessens et al. per le diverse routine.
Per gli integrali a bassa dimensione, si usa in genere la quadratura unidimensionale nidificata. Nel caso speciale di integrali bidimensionali (cubatura), esistono regole di integrazione per diversi casi di domini di integrazione. R. Cools ha raccolto un gran numero di regole nella sua Enciclopedia delle formule cubature ed è l'autore principale del pacchetto Cubpack . Per integrali ad alta dimensione, si ricorre in genere ai metodi di tipo Monte Carlo. Tuttavia, è necessario in genere un numero molto elevato di valutazioni integrand per ottenere una precisione ragionevole. Per integrali a bassa dimensione, i metodi di approssimazione come quadratura / cubatura / quadratura nidificata spesso superano questi metodi stocastici.
Riferimenti interessanti generali:
- Quadpack, Piessens, Robert; de Doncker-Kapenga, Elise; Überhuber, Christoph W .; Kahaner, David (1983). QUADPACK: un pacchetto di subroutine per l'integrazione automatica. Springer-Verlag. ISBN 978-3-540-12553-2
- Metodi di integrazione numerica: Seconda edizione, Ph. Davis e Ph. Rabinowitz, 2007, Dover Books on Mathematics, ISBN 978-0486453392