|
Das Romberg-Verfahren |
|
- Grundlage des Romberg-Verfahrens ist eine spezielle Eigenschaft der
zusammengesetzten Trapezregel mit äquidistanten Knoten
T(h)= (h/2)(f(a)+2*summe_{i=1,n-1}f(a+i*h)+f(b)), h=(b-a)/n .
Der Fehler dieser Quadraturformel hat für zweimal stetig differenzierbares
f die Form
-(1/12)(b-a)*h2*f"(xs) mit xs in [a,b]
- Beim Rombergverfahren wird dabei die Genauigkeit der Integration durch
Extrapolation verbessert. Grundlage ist eine genauere Fehlerentwicklung der
Form
T(h) = I + summe{i=1,m} pi h2i + O(h2m+2)
.
für 2m+2 mal stetig differenzierbares f.
Wenn f ausserdem periodisch ist mit Periode b-a, dann sind die
pi sogar alle null. Vorsicht: die Konstante im O-Term
ist m-abhängig. Dies ist keine Potenzreihe, sondern eine
asymptotische Entwicklung!
- Nimmt man z.B. T(h) und T(h/2), so kann man
leicht ausrechnen, daß
T(h)+(1/3)*(T(h)-T(2h)) = I + O(h4).
Interpretiert man T(h) als Polynom in h2,
dann sieht man, daß das eindeutige Polynom von Grad <= k, das
die Werte (hj2,T(hj)), j=i-k,..,i
interpoliert, ausgewertet an der Stelle h=0, eine Integralnäherung
von der Fehlerordnung hi-k2k+2 liefert.
Diesen Rechengang nennt man Extrapolation der Schrittweite auf die
Schrittweite 0.
- Man berechnet nun zunächst die Integralnäherungen mit der
summierten Trapezregel zu den Schrittweiten h, h/2, h/4, ...
und berechnet dann den Wert des beschriebenen Interpolationspolynoms an der
Stelle 0 direkt.
- Man erhält also ein ganzes Feld von
Integralnäherungen Ti,k, dessen Werte in Spalte k
die Fehlerordnung 2k+2 besitzen und das nach Spalten und Diagonalen
gegen den wahren Integralwert konvergiert.
- Bei fortgesetzter Schrittweitenhalbierung sind alle Näherungswerte
auch als Riemannsummen darstellbar, das Verfahren konvergiert also auch dann,
wenn f nur Riemannintegrierbar, aber nicht glatt ist.
Allerdings bringt dann die Extrapolation keinen Vorteil.
|
|
|
Die Eingaben |
|
- Eingegeben wird lediglich die Funktion, die integriert werden soll und
das Intervall. In
einer Tabelle sind einige Funktionen zur Auswahl angegeben. Anbei befinden
sich die exakten Integralwerte und evtl. die maximale
Differenzierbarkeitsstufe.
- Es besteht auch die Möglichkeit, eine eigene Funktion
einzugeben (FORTRAN-Konvention). Dazu werden dann Integrationsgrenzen benötigt.
|
|
|
Die Ausgaben |
|
- Ausgegeben wir das sogenannte Romberg-Tableau. In der ersten Spalte stehen
die T(h) für h=b-a, h/2, h/4, ... . In Spalte k
stehen die Werte Ti,k .
Ist tatsächlich f 2k+2 mal differenzierbar, dann sollten die
Quotienten
(Ti,k-Ti-1,k)/(Ti-1,k-Ti-2,k)*4k+1,
das sind die "Kontrollkoeffizienten", alle <=1 sein. Dies ist also
gewissermassen ein Regularitätstest für f. Man muß aber
bedenken, daß für grösseres i deren Auswertung schon durch
Rundungsfehler (Subtraktion fast gleicher Zahlen) so verfälscht sein kann, dass sich unsinnige Werte
ergeben.
- Ist ein Kontrollkoeffizient nicht
auswertbar, wird er 0 gesetzt.
- Hier wird versucht, das Integral mit einem relativen Fehler von
10-14 zu bestimmen. Es werden aber höchstens 20 Halbierungssschritte
ausgeführt, also 220+1 Funktionswerte maximal berechnet.
|
|
|
Fragen ?! |
|
- Vergleichen Sie die erreichten Genauigkeiten in den Spalten mit denen in
den Zeilen. Was fällt auf ?
- Was passiert bei niedrigen Differenzierbarkeitsstufen mit dem
Genauigkeitsverhältnis zwischen Spalten und Zeilen ?
|
|
|
|
|
|
|