Nächste: , Vorige: , Nach oben: Integration   [Inhalt][Index]

16.3.3 Einführung in QUADPACK

QUADPACK ist eine Sammlung von Funktionen für die numerische Berechnung von eindimensionalen bestimmten Integralen. QUADPACK hat den Ursprung in einem Projekt von R. Piessens 1, E. de Doncker 2, C. Ueberhuber 3, und D. Kahaner 4.

Die QUADPACK-Bibliothek, die in Maxima enthalten ist, ist eine automatische Übersetzung des Fortran Quellcodes mit dem Programm f2cl wie er in der SLATEC Common Mathematical Library, Version 4.1 5 vorliegt. Die SLATEC Bibliothek datiert auf Juli 1993. Die QUADPACK Funktionen wurden bereits einige Jahre früher programmiert. Es gibt eine weitere Version von QUADPACK bei Netlib 6. Es ist jedoch unklar worin sich diese von der SLATEC Version unterscheidet.

Alle QUADPACK-Funktionen versuchen automatisch, ein bestimmtes Integral numerisch innerhalb eine spezifizierten Genauigkeit zu berechnen. Die Übersetzung nach Lisp enthält einige weitere nicht-automatische Funktionen, die jedoch nicht als Maxima Funktionen zur Verfügung stehen.

Weitere Informationen über das QUADPACK-Paket sind in dem QUADPACK-Buch 7 enthalten.

Übersicht über die Integrationsroutinen

quad_qag

Integration einer allgemeinen Funktion über ein endliches Intervall. quad_qag implementiert einen globalen adaptiven Integrator auf Grundlage der Strategie von Aind (Piessens, 1973). Es kann aus 6 verschiedenen Paaren von Gauß-Kronrad-Quadraturformeln ausgewählt werden. Die Formeln höheren Grades sind für stark oszillierende Integranden geeignet.

quad_qags

Integration einer allgemeinen Funktion über ein endliches Intervall. Die Funktion quad_qags implementiert die Strategie einer globalen adaptiven Unterteilung des Integrationsintervalls mit Extrapolation (de Doncker, 1978). Zusätzlich wird versucht, die Konvergenz der Integralapproximation mit Hilfe des Epsilon-Algorithmus (Wynn, 1956) zu beschleunigen. Dies führt zum Beispiel bei Integranden mit Singularitäten, deren Lage und Typ unbekannt sind, zu einer Effizienzsteigerung.

quad_qagi

Die Funktion quad_qagi führt die Integration einer allgemeinen Funktion über ein unendliches oder halb-unendliches Intervall aus. Das Intervall wird auf ein endliches Intervall transformiert. Das transformierte Integrationsproblem wird dann mit einer geringfügig modifizierten Algorithmus wie in quad_qags gelöst.

quad_qawo

Berechnung von Integralen mit den trigonometrischen Gewichtsfunktionen \(cos(omega x) f(x)\) oder \(sin(omega x) f(x)\) über ein endliches Intervall, wobei \(omega\) eine Konstante ist. Der Algorithmus der Funktion quad_qawo zur basiert auf eine modifizierte Clenshaw-Curtis-Technik. quad_qawo wendet eine adaptive Unterteilung des Integrationsintervalls mit Extrapolation an, die vergleichbar mit dem Algorithmus von quad_qags ist. Zusätzlich wird versucht, die Konvergenz der Integralapproximation mit Hilfe des Epsilon-Algorithmus (Wynn, 1956) zu beschleunigen.

quad_qawf

Die Funktion quad_qawf berechnet die Sinus- oder Kosinus-Fouriertransformation über ein halb-unendliches Intervall. Dabei wird die global adaptive Routine quad_qawo sukzessive auf endliche Teilintervalle angewendet. Zur Konvergenzbeschleunigung der resultierenden alternierenden Reihe wird der Epsilon-Algorithmus (Wynn, 1956) verwendet.

quad_qaws

Integration von \(w(x) f(x)\) über ein endliches Intervall \([a, b]\), wobei \(w\) eine Funktion der Form \((x - a)^alpha (b - x)^beta v(x)\) ist und \(v(x)\) ist 1 oder \(log(x - a)\) oder \(log(b - x)\) oder \(log(x - a) log(b - x)\), und \(alpha > -1\) und \(beta > -1\). quad_qaws ist speziell für die effiziente Berechnung von Integralen über endliche Intervalle mit algebraischen oder algebraisch-logarithmischen Endpunktsingularitäten konzipiert. Eine globale adaptive Strategie mit Unterteilung des Integrationsintervalls wird angewendet. Auf Teilintervalle die keinen Endpunkt des Integrationsintervalls enthalten, kommt ein Gauß-Kronrod-Formelpaar und auf Randintervallen kommen modifizierte Clenshaw-Curtis-Formeln zur Anwendung.

quad_qawc

Die Funktion quad_qawc berechnet den Cauchyschen Hauptwert von \(f(x)(x - c)\) über ein endliches Intervall \((a, b)\) und dem Wert \(c\). Es wird eine modifizierte Clenshaw-Curtis-Formel angewendet, wenn \(c\) im Teilbereich enthalten ist. Andernfalls wird eine globale adaptive Strategie mit einem Gauß-Kronrod-Formelpaar angewendet.

quad_qagp

Basically the same as quad_qags but points of singularity or discontinuity of the integrand must be supplied. This makes it easier for the integrator to produce a good solution.


Fußnoten

(1)

Applied Mathematics and Programming Division, K.U. Leuven

(2)

Applied Mathematics and Programming Division, K.U. Leuven

(3)

Institut für Mathematik, T.U. Wien

(4)

National Bureau of Standards, Washington, D.C., U.S.A

(5)

http://www.netlib.org/slatec

(6)

http://www.netlib.org/quadpack

(7)

R. Piessens, E. de Doncker-Kapenga, C.W. Uberhuber, and D.K. Berlin: Springer-Verlag, 1983, ISBN 0387125531.


Nächste: , Vorige: , Nach oben: Integration   [Inhalt][Index]

JavaScript license information