Sie sind auf Seite 1von 15

Numerische Mathematik 6, 413 -- 427 (1964)

Fehlerabsch~itzungen

und Extrapolation

mit rationalen Funktionen


bei Verfahren

vom Richardson-Typus
Yon

ROLAND BULIRSCH und JOSEF STOER


1.

Sei T(h) die zu einem Diskretisierungsparameter h gewonnene numerische


N/iherung eines exakten Problems, definiert durch lim T(h)= T(0). Von RIh--~0
CHARDSON [8] stammt folgende Idee einer Verbesserung der T(h): Man berechne
T(h3 f a r v e r s c h i e d e n e hi, i = 0 . . . . . m, lege durch die Stiitzpunkte (hi, T(hi) )
ein interpolierendes Polynom Tin(h) und nehme T~,(0) als N/iherungswert fiir
T(0). LAURENT[7] hat ktirzlich in einem allgemeinen Rahmen gezeigt, dab
unter geeigneten Voraussetzungen Tin(0) mit wachsendem m gegen T(0) konvergiert.
RICHARDSONs Methode, verbunden mit einem von NEVILLE bzw. AITKEN
stammenden Interpolationsalgorithmus zur Ermittlung von Tm(0), liefert im allgemeinen mit geringem Aufwand sehr gute numerische Resultate. Beispiel daf~lr
ist das bekannte, nach ROMBERG[91 benannte Quadraturverfahren; vgl. dazu
die Arbeit [1] von BAUER, RUTISHAUSERund STIEFELund die Arbeit [3]. Weitere
Anwendungen finden sich in Arbeiten yon RUTISHAUSER[103, BOLTON and
SCOINS [23 u.a. Siehe dazu auch die Arbeiten [13, 14, 15, 1611.
Voraussetzung ftir die numerische Brauchbarkeit der Extrapolationsmethode
ist atlerdings die Existenz einer Entwicklung der Form

(l)

T(h) = ~0 + ~1h~'+ ... + ~kh~ + R~+I (h) h~

mit [R~
fiir alle h > 0 , % . . . . . z~ unabh/tngig von h und 0 < 7 ~ < .-.
<7k+1- STETTER [11] hat im Anschlug an GRAGG[4] gezeigt, dab solche Entwicklungen bei groBen Klassen praktisch wichtiger Diskretisierungsverfahren (Differenzenmethoden) existieren. Spezielle Probleme hat NAVOT [17] untersucht 1.
Die vorliegende Arbeit gliedert sich in zwei Teile. Im ersten Tell werden
unter der Voraussetzung (t) Absch~ttzungen ffir den Extrapolationsfehler
i T , ( 0 ) - T(0)[ hergeleitet. Der zweite Teil gibt eine neue Version des Extrapolationsgedankens: Legt man durch die Stfitzstellen (ho T(h~)) eine interpolierende rationale Funktion T~,~(h) (Z~hlergrad #, Nennergrad v, / ~ + v = m ) ,
so kann auch T,,, (0) als Naherungswert ftir T(0) genommen werden. Die Extrapolation auf T~,, (0) wird bier mit einem in [121 beschriebenen Algorithmus durchgefiihrt. Fiir den Fall der Trapezsummen-Extrapolation kann der Extrapolationsfehler wegen der speziellen Gestalt des Restgliedes der Euler-McLaurinschen
1 Erst nach AbschluB dieser Arbeit zur Kenntnis gelangt.

4t4

ROLAND BULIRSCHund JOSEF STOER:

Formel angegeben werden. Beispiele zeigen die ~3berlegenheit dieses Verfahrens,


das, obwohl nur geringftigig komplizierter, in allen untersuchten Fiillen nicht
schlechter, meistens sogar erheblich besser konvergierte als entsprechende Polynom-Verfahren.
2.

Zun~chst sollen lineare Extrapolationsoperatoren A~ mit den Eigenschaften


i+m

a)
(2)

A ~ T = T(mi) -- ~ c(O T(hj)


9

b)

A~ t = 1

c)

A~h~'=O,

. ~ml

'='
i

1..... m

rekursiv konstruiert werden. Dabei gelte h o > h a : > - . . > 0 .


Ausdruck (in Spezialffillen das Polynom)
i

Definiert man den

'hJ

durch die Forderung


T,,,(hi)= T(hi),

j=i, i + i ..... i +m,

so ist die Bestimmung yon A ~ T gleichwertig der Berechnung von T~(0). Ist
n~imlich T,,(h) ein solcher Ausdruck, so gilt wegen (2)
AmT,,=A,,T=ao=T,,(O).

Zur Konstruktion der A~mlRl3t sich also die Theorie der Interpolation heranziehen.
Fiir den Fall Yi=/'Y liefern die Nevilleschen Interpolationsformeln, angewandt
auf ein Polynom in hv (s. [5], ~6]), die L6sung
A~ T---- T0(0= T(hi),
A~ T---- T~~)= h~T'(i+i)-h~i+m T'(i)
~ m--1
m--1

h~- hL r~

(3)
__

T ( i + I )

m~

t.

(2,o)'-'
Ordnet man die T~ ) in dem Schema an
T(%) = To(~

T:( ~ )
T(h:) = 1"(o:1

T(2~

T1(1)
(4)

T(h2) = To(~)

7~~)

T~(:)
TI(2)

T(ha) = T~~)

so lassen sich die T~ ) ausgehend v o n d e r ersten Spalte rekursiv berechnen.


Fiir die c(~)/ aus G1. (2) liefert die Interpolationsformel yon LAGRANGE

(~)

~=H'

i+m

h~

Fehlerabsch~itzungen und Extrapolation mit rationalen Funktionen

415

Die Formeln (3) und (5) gelten fiir beliebige hi, soferne nur Yi=/'Y ist. Fiir allgemeinere Sequenzen yi ist eine dem Nevilleschen Algorithmus entsprechende,
einfache Interpolationsformel nicht bekannt.
Im Falle allgemeiner Sequenzen yj .lassen sich jedoch die Operatoren A~
fiir die speziellen Schrittweiten h j = h o Y , 0 < b < t , leicht rekursiv konstruieren
(vgl. hierzu auch [10], w 4):
Aus 2a) und 2c) ergibt sich n~imlich
A ~ hY~=

i+m

~.

c,,,J
~ h~o
= h~*
bit* v/ , c(O
IbY*~i-O,
J
o
m,j+i~
j-

j ~*

Q=I,.

j=0

.,m;

daher sind die be* gerade die Nullstellen des Polynoms


m,j+i

und wegen 2b) hat P(~O(x) die Gestalt


(6)

bY,
x
p(0) (x) =p~O (x) = / I
Q=I 1 ~ "

Damit gilt ~,~,j+~--/0


--c(~ fiir alle i, und die c(~ sind his auf einen gemeinsamen
Faktor die elementarsymmetrischen Funktionen der bra, # = t , . . . , m.
Wegen
P 2 / (x) -

~ - by~

t - by~ P~% (~)

erNilt man fiir A~ T die einfachen Rekursionsformeln


Aio T = To(0 = T(hi),
(7)

Aim T = T,~) = T ~ ) -

be,'`T(miL1
t --

b y~

m >_ t
'

--

"

Ftir y m = m y geht (7) in (3) fiber.


3.
Existiert fiir T(h) eine Entwicklung der Form (1) und wendet man auf T
den Operator A ~ an, so 1/il3t sich der Fehler ]T~(~ --T(0)] wegen (2) leicht absch/itzen. Man erh/ilt

(8)

[T~~ -- T(0) I <Mk+~ ~, Ic~}[ h~*+,,


j=o

wobei

Mk+ , = s~p {I R k + l (~])l} "

Ist T(h) Element eines Banach-Raums, so k6nnen die Absch/itzungen im Sinne


der Norm des Banach-Raums interpretiert werden. Es gilt nun der
i T sei
Satz 1. F#r T(h) existiere eine Entwicklung der Form (1). T(O--A
_,~ --._,~_
der aus den T(hi), j = i . . . . . i + m extrapolierte Ngherungswert [i~r T(O). Dann
gilt [i~r die Extrapolationsver/ahren (3) und (7), /alls hi+l <=b < t ,
Y i + ~ - Y i >= Y > O, Yo = O, ist, die A bschiitzung
Ic
IT~ ) - T(O)[

~Mk+xC(bY)h~k+tb

mit Konstanten C(b e) und M~+ 1.

,-x

m>_k und

ROLAND BULIRSCH u n d Jos~v STOER :

416

Satz t gibt fiber das Konvergenzverhalten dieser Extrapolationsverfahren


Auskunff. Besitzt T(h) eine asymptotische Entwicklung (1) von h6chstens k
Gliedern ( k = oo ist m6glich), so konvergiert der Fehler in der n-ten Spalte
yon (4) fiir n - - < k + l wie h~- gegen 0, fiir n > k + l
wie h~k+l. AuBerdem
sieht man, dab die Absch/itzungen ftir den Extrapolationsfehler I~ Cm-i)- T(0)[,
1"= k, k + t . . . . . m, dieselbe obere Schranke liefern. Das legt die Vermutung nahe,
dab nur die Berechnung der ersten k + l Spalten von (4) sinnvoll ist. Dies wird
durch die Erfahrung best/itigt. Existiert ferner ftir jedes k das Restglied Rk+ l(h)
in (t) und bleiben die R k + l ( h ) gleichm~i6ig beschriinkt, so zeigt Satz t, dab
ra

]T~) - T(0)I fiir m-+oo superlinear, n/imlich wie h,?m+t b~--1


-x~j gegen 0 strebt.
Zum Beweise yon Satz t werden zwei Hilfss~itze vorausgeschickt. Zun~ichst
folgt fiir das Extrapolationsverfahren (3), das auf dem Neville-Algorithmus beruht, das
hi4-1 ~ b < 1, dann ist [iir k<=m
7 > O, und -[,j

L e m m a 1. F a l l s / i i r alle i Y i : ] 7 ,

~ Ic~~

i=o

hl~+ "~ <: h,,,~_~

h~,oq (~, k)

m i t K o n s t a n t e n -C1 (b~, k) <=Ct (b~).


F # r h~-- 1h~
+j , y=2
2 I C {0).

und k = m

gilt noch

h~m.Z(m@t)_-

h}m+l)?<h~

i=o m~
Beweis. Man hat

. . . . . .

1'=0

i=0

2h2o'n+*
m!(m+l)l

i--m--k

Nun l~tBt sich absch~itzen


m--k--1 m--k--1

m-k--1
m1

--

m--k "'"

j=o

j=o

.=o

Ih~-h~l

.....
t,=m_

1
Iz
h~--h~

m--k--1

: h~_k . . . h~ ~

J[
"][-/~=0

......

__ 1. . . . . . . . . . .
hVm-k-i -1
!
h~-k- i
. . . . .

t - ~m---k-j-~l-

1
hVm-k-i - x
h~m-k-1

t~=m--k
~1
1

h~

h,~

m--k--1
Z

h~_~_i_ 1
1

i=o

m--k-i-X
p=0

1
~I
1
t__b(m_k_i_t_v) ~ X
t__b(U+k+i+t_ra)y
~=m--k

_-<~;-~ ... ~mC~ (bL ~) < ~m--~ " ~ C; (b~),


weil der Faktor yon h~_~.., h~m fiir alle m u n d k beschrlinkt bleibt.

FehlerabschAtzungen und Extrapolation mit rationalen Funktionen

41 7

Analog erh~ilt man

i=m-~

i=o

X
h~-k+i-x

h~_a

h~-k+ i

h~-k+ i

ml

m--k--1

h~

#=m--k+~+l t

/z~O

h~_~+~
1

< h~m_~... ~t ~ m t~"~'~


-,l~,
, k) <
= h2_~.., h~ C';(bV) 9
:-

Die erste Behauptung ergibt sich jetzt mit

-C1(b~/, k) = C l

~,, k) 21--,,C1(b'V, k) ~ C 1 (bY).

Weiter gilt mit Hilfe der Produktdarstellung von sin z

~ __ ,(J+~
j + 2 , ,'t~[ "

~j +- +~l

1 '
I " ] -- 2 '

\ rn~/

woraus
~n

"

11

i=o

i=o ~=o

/ J + ~ ~l ~ h~ . . . . .

"--

~#+l)

m~(m-+~S.~"

i=o

Auf Verallgemeinerungen wird verzichtet.

FfirdiespaterhaufigbenutzteF~

h~176 h~ h o , 68,' 1 2hoh ~ ho . . . . }

ergibt sich mit V : 2


C1-'~ 5 .

Ffir den Algorithmus (7), wo hi=hobi, gilt das schiirfere


L e m m a 2. Ist hi-~hobi und die Sequenz der Vi in (1) so bescha/ten, daft /Sir

testes q2 < a
br~,-~J~q~< ~ ,

b e ~ q 2(t+1),

l>~0 ganz,

so gilt tier k ~ m

~',lcmi[

~-C2(q2, k,

.(m-k)vk+,+XVJ

i=0
WO

~ ( q ~ , k, z) = 1. (1 - q2)... (t - q~') E~(o, q)~,(o, q ) ] - ~

I,

2(l+q~)...(i+qZ("~-~-l)),

[2(1 + q~) ... (t + q2*),

tails k = m
falls m - - k - - ~
/alls k test

test

und allgemein /Sir beliebiges k <: m


-d,(q,,k,l)< l.(t_q~)...(t_q,,)(2,l~
=

Oi(z, q) Jacobische Theta/unktionen.

~ q/

~_:(o,q)

t a~ (o, q) al (o, q)

l~=C,(q,,l),

4t8

ROLAND BULIRSCHund JosEF STOER:


Ftir q_>89 gelten die ftir diese Zwecke ausreichenden N~iherungsformeln
[v~3(0' q)va4 (0' q)]-89 ~ .]/--~n~- 2 exp
~ (

(2./,. l

8~q)

g--'nq

61nq

Beweis. Man hat

(by*+,)J=
2 I c~}l by,+,: h~*+, y, l c(o~
"~

i=o

i=o

(l--b~,)

ao~*+'(1 --bYe,) (by*+, + bY=)... (bY*+, + bY,)


"" '

= (1 +bYk+,-rk+x) ... (1 +by=-r*+,) . (t +br*+,-y*) ... (1 -[-byk+,-r,) X


(1 --bY,)... (1 --bvm)
k

h~k+l b I'~-k) rk+l+X=oyj


< (1 -- q2) ... (1 -- q2~) 2 (! q_qU)... (t +q,(~-k-x)) (t +q2) ... (1 +q2k)
(!-q~)

... (1 _ q 2 ( ~ + ~ ) )

hgk+, b("-k)v~+,+~Xo~j.
Das Weitere folgt ]etzt aus den Beziehungen

Oi(O,q)=2q 88
und

3,

a2(O,q)=2qt~l(l+q2")2(l--q

n=l

~')

n=l

0;(0, q)=02(0, q) Oa(O, q) Oa(O, q).


Am Rande sei vermerkt, dab fiir y i = (l + ] ) y , (q= by12)
lim ~=
~,[c~}[
= Il " O( l-+- qq 2=)).'.". O
- qq~ O2t) [Oa(O' q) O4(O' q)]-~"
,,,-+~o
o
O+
In diesem Fall sind die Absch~itzungen in Lemma 2 scharf. Speziell ftir q = 8 9
(s. z.B. Romberg-Verfahren) ist
[0 a (0, ~) ~4 (0, ~)]- ~= t , 9 6 9 . . .
und
02s (0,- ~-)~ , (o, q) ] = 5,3 . . . "
letztere Absch~ttzung ftir C2(~, k, 0) ist scharf, falls m i t m auch m - - k und k
nach e~ strebt.
Der Beweis yon Satz t ist jetzt einfach.
Ftir das Extrapolationsverfahren (3) ergibt sich aus L e m m a I wegen hi<= bJho

c(~ hik+x)V =

m - k . . . . . l,,Y "'~1 ~II~Y' k ) ~

1=0

h(ok+t)Vb('n-k+~-k+l+'"+'n)v'Cl(bY, k)
~

= "C1 ( by,

k) h(ok+x)v b(m-k)(k+l)v+i~x iv __~C 1 (by) hYo~+~O'(m--k)Yk+~+,=*ZY'

und ftir das Extrapolationsverfahren (7) mit q2__ by und /----0 u n m i t t d b a r aus
Lemma 2
m
.(m--k)yk+l+ ~k y~
Y I c(~

i~o ~ ' ~

h ~ + , < C2(b:" , O) h'~+, O

,=~

Fehlerabsch/~tzungen und Extrapolation mit rationalen Funktionen

4t 9

(8) liefert jetzt


k

(m--k)~'k+l+ l~ '/j

T(o)l ~M~+lC(bV)h~~+'b

IT&~

t=1 ,

womit der Beweis yon Satz I erbracht ist, denn der Ubergang yon (ho, T~~
nach (h i, T~ I) kann als , , U m n u m e r i e r u n g " der h s interpretiert werden.
Als letztes last Satz t die Frage nach dem Konvergenzverhalten von T~~
often, wenn von T(h) nut bekannt ist, dab lira T ( h : ) = T(0). Es gilt hier
]--+co

Satz 2. E s sei lira T(hi) = T(O). Ist /iir alle f entweder Yi = ] ~ und hi+~ < b < 1
i~oo

hf-i - -

oo

(Rekursion#ormel (3)) oa : hi= h # , 0 < b < ~ . . d Z= b" kon~.'g~nt (R~k.rsio~s/ormel (7)), so gilt lirnooT2)= T(0), i = t , 2 . . . .

Beweis. Ftir den Fall y / = ] y ist dieser Satz bekannt ([1], [7], [3]). Ftir den
Rest t folgt aus G1. (2a) nach TOEPLITZ (S. [3], Satz t) l i r n T~0= .lim T(h:), falls
l-+OO

i -t -m

1.

.2 4~ =1,
i+m

2.

21~l----<c~

3.

lirnooc~----0,

f~r alle m
iG/,

ifest.

Diese Bedingungen sind erftillt, denn t. folgt aus G1. (2b), 2. ergibt sich aus (6) zu
i +m

+ b~'I

~][

~,

1~51 = 1 1

j=i

j=l

co

_ z H

l--bri

j=l

+ b~'t

oo

--const,

t--bVt

da ~. bv' konvergiert,
i= ~

und 3. folgt schlieglich daraus, dab hi-~ ~~(o


_m/ jo ) irn wesentlichen die elementarm,j+i--V
symmetrischen Funktionen der bXe sind, ~ = t . . . . . m, was zu der Absch~tzung
fiihrt
oo

1~51 -<-m:-' b:"("+'-i)~t=l


H (I -

b:")-x.

Die folgenden Beispiele illustrieren das Konvergenzverhalten bei der E x t r a polation. Im ersten Beispiel einer Quadratur wurde T~(~ aus der Trapezsumme
(s. [3], G1. (14))
1

r(h) = f V;cdx + ,qha + ~h~ + ~h~ + . . . + n (h)


0

fiir h ~ = 2 - ~ einmal nach G1. (3) mit y = 2 und einmal nach (7) mit b = - ~ , Yl=~-,
y : = 2 (f-- 1), f > t, berechnet (vgl. auch [10]).
Tabelle I
m

T0(m)= T(hm)

T(m0),y=')'

T(m0), y, = ~ ....

3
4

o,65813o221626
0,663581196876

o,6636o756 9117
0,665592865132

0,666666147251
0,666666663132

0,6655 5893 6282

0,6662 8769 9043

0,6666 6666 6667

1 Fiir die Folge {Yi}= {~, ~, 2, 3,5 3,7 4, .. .} findet sich allerdings eine entsprechende
Bemerkung in [10], w 4.
Numer. Math. Bd. 6

29

420

ROLAND BULIRSCH und JOSEF STOER:

Das nAchste Beispiel betrifft die Integration der Differentialgleichung y ' = y,


y ( 0 ) = t, m i t Hilfe der R u n g e - K u t t a - F o r m e l n . I n diesem Fall lautet die E n t -

v cmung

(vgl.

E4])

T(h, x) = y (x) + h" za (x) + h 5 ~ (x) + . . .

+ R (x, h).

Zur E x t r a p o l a t i o n wurde fiir Am=2 -m G1. (7) m i t b = ~ ,

Y i = 3 + ] verwendet.

Tabelle 2
~=o)

#o.)= T(~.,X)

2,7083 3333 33t


2,71734619139
2,71820993 9t9
2,7t82 7684440
2,71828150036

2
3
4

2,7t 79 4704 860


2,7182 7786025
2,71828181 110
2,71828182844

2,71828182 844
(e = 2, 7182 8182 846)
,

Die bisher untersuchten Verfahren b e r u h t e n auf der Interpolation durch


polynomartige Ausdrticke. Es liegt nun nahe, im Fall Y i = J Y s t a t t dessen rationale F u n k t i o n e n zu benutzen und als Niiherungswert ftir T(0) den W e f t
T~(~)= Tv(~) (0) derjenigen rationalen F u n k t i o n in h v

~.(o ( h ~ - ~)~(h)

(9)

P !O
u + - ,~!Oh:"+ " " +p~)hm,

zu nehmen, ftir welche gilt

(tO)

T(v~(hj)=T(hi),

j=i,i+l

..... i+#+v=i+m.

In [19] wurde gezeigt, wie m a n die Werte T~,


"(0~(8) an einer festen SteUe 8 aus den
gegebenen Werten T(hi) rekursiv berechnen kann, ohne die rationale F u n k t i o n
(i) (h) selbst, d.h. ihre Koeffizienten, zu bestimmen. Setzt m a n in die in F12]
Tvt~
angegebenen F o n n e l n ~ = 0 ein, so erhalt m a n

To(i)
, o -_- T(hi)
,'/',(1)_

~,u,o--

u n d ffir/z, v ~ t
=

T.(~)

I,~,n

hVTfl+
a) -- hv;~+p 7"(0
i /.*--1,o
.U--l,0

To!~+xx)
-

To!'~)-x
(

h~T.(i+x)
tT(i) _ T.(i+I)
~ _ h ~i + l ~ + V T..(i)
iT(i+ 1) _ T(i+I)
i /~,V--ll /*,t'--I
.U--l,t'--l,'
.u,~'--I ~, I * , V - - 1
I~--l,v--l!
h~(T(i)_l_T(i+l)
,
~,
(T(i+I)_T{i+I)
~
-/a--l,y--l/
-- '~+/~+v
~-p,v--1
IJ--l,v--l]

FehlerabschAtzungen und Extrapolation mit rationalen Funktionen

42t

W/ihlt man fiir die Extrapolation folgende Sequenz der (/z, v) : (0, 0) --> (0, 1) -+
(t, t) ---> (l, 2) ---> .-- -+ (i,i) -+ ( i , i + l ) -+ ( i + 1 , i + 1 ) -+ .--. (Z/ihlergrad ---Nennergrad (-- 1)) und schreibt man T(0,v+~ftir T(0_~,,,,(# + v = m ) , so reduzieren sich
die obigen Formeln auf
-(01 = 0
T~oO = T(h~)
(1 t)

T(i+ ~) _ Tj0

T(i)
-- T(i+
~)
m-m - - 1 "~-

~ 2 ~ )

J --t

Man erkennt die forlnale Ahnlichkeit m i t dem Neville-A]gorithmus (3)- Verwendet man die Formeln (11), so muB man a11erdings prtifen, ob die auftretenden
Nenner nieht zu klein sind. Insbesondere besteht diese Gefahr bei gr6Beren m,
da T.~(i+1)
(i+~) tI bald sehr klein wird. Dieses Verhalten ist jedoch ungeffihr- i - - T.,~-~

lich, weil es nur die schnelle Konvergenz des Verfahrens best~ttigt und in der
Regel nicht auf algebraischen Ausnahmesituationen beruht, wie sie in [12] ausfiihrlich beschrieben sind.
Bei der Extrapolation durch rationale Funktionen 1/iBt sieh nun ebenfalls
ein Ausdruck ffir den Fehler T~(~- T(0) angeben. Ist n/imlich k G # , so gilt
wegen (9) und (10)
p !a~vk
lO (h.~
: T(hi) Q~!~(hi) ~
11

f : i, i + 1,

".'1

i + tz + v : i + m .

Multipliziert man diese Gleichungen mit den Lagrange-Koeffizienten c~}/ (s. (5))
u n d summiert fiber ], so erhltlt man wegen (1) und (2)
i+m

~(o) = ~(o) 0.~(o) + .X f~.h~ ~+~ &+~ (hj) O.~'),(hj)


oder falls Q~), (0) = q(~)4 =0
,

(t2)

T(0
_ . , , -- T(0) =

i+m

~(i) L(/~+l)y/~
~ " x-~ ,.,,,;,oj
..~+.(h;) 9~!~ (hi).
9

~=i

Leider enth/ilt dieser Ausdruck ftir den Extrapolationsfehler noch das Nennerpolynom Q(~I(hi) , so dab er zun~tchst nur bedingten Wert hat. WAre allerdings
R k + l ( h i ) = c o n s t , ~ = i . . . . . i + m , so erg~be sich ftir k = #

T(i)-u,
~ -- T(0) : ( - t)*~h~ """ h~+" q-~00Rk+t'

Iz + v : m "

Gilt lediglich lira T(hi)---- T(0), so konvergiert TJ~)~ ftir # + v - + oo gegen T(0)
~--~ oo

(vgl. Satz 2), falls ~

~ b < tund
(2~i')"(hi) < Ci,

fiir

T(i)
t
-~"* : Q~),(O)
~' dO.n(O [h.~ T(hi)

i+m

(13)

O~.~,(o)

alle /z, v, ].

Denn wie in (t2) folgt


i+m
~=i

~,3~.T(hi)
=i

Q~),(o)
29*

ROLAND BULIRSCH und J O S E F STOER"

422

und mit den c~} (s. [8], Satz t) erftillen wegen (t3) auch die ~-~ die Bedingungen
von TOEPLITZ

i+m

~-.

3.

=<const,
lirnog~ = 0,

ftir alle m

i :< j,

]" fest.

~3berschaubare Verh~ltnisse bei der Extrapolation mit rationalen Funktionen


erh~lt man bei der Quadratur durch Trapezsummenextrapolation. Hier ist mit
~'--=2 u n d / , = k
1

T(h) = f l(x) dx + ~lh ~ + . . . + ~kh~k +


0

oo

2 (1--cos2n

~-x/

dx,
0

n=l

woraus
1

f /,**-)(x)

fi+m

oo

l--cos2nn~

Wenn die Funktion S(x) in der geschweiften Klammer ihr Vorzeichen nicht
~ndert, liefern Mittelwertsatz und Formel (2)
I

(14) T~,~_~ --

d x = ( - - t ) ,. hi...hi+m
~
~ q~Lk
B,~+, /{~k+~l(8)
q~l (2k+~)!

0<8<1,

B2k+~ Bernoulli-Zahlen.
Ftir k = m (Nennergrad 0) erhXlt man die bereits in [3] abgeleitete Beziehung
1

1) h~

hi+~

(2m+2)!

/c~+~/(8)

zurfick.
Im Gegensatz zum Fall k = m i s t ftir k < m eine a priori Entscheidung tiber
Vorzeichenwechsel yon S (x) nicht m6glich, weil S (x) von dem zu berechnenden
Nennerpolynom tlIi)
'rSk, m--k abh~tngt. Trotzdem erlaubt die Beziehung (t4) wenigstens einen qualitativen l~berblick fiber den zu erwartenden Fehler: Da n~tmlich
im allgemeinen ]

(2k+2)[B~k+~
/(~k+~)(x)mit k fiber alle Grenzen wchst,

scheint (14)

Fehlerabsch~tzungen und Extrapolation m i t rationalen Funktionen

423

zun~ichst den SchluB nahezulegen, dab k = 0 den kleinsten Fehler bei der Extrapolation liefert. Andererseits gehen jedoch in
Ableitungen bis zur Ordnung/(2,+~) (x),

"T
qq~k,

wie sich zeigen l~tl3t,

r= max {k, m - k}, in komplizierter Weise


r

ein. Man wird also in der Regel am gtinstigsten mit k=/gm/ (Z~ihlergrad ~
L~3

Nennergrad) arbeiten. Die numerische Erfahrung auf der Rechenanlage PERM


(TH Mtinchen) hat diesen SchluB best~itigt.
In den folgenden Beispieten zur Trapezsummen-Extrapolation sind die Ergebnisse bei unterschiedlicher Extrapolation gegeniibergestellt. Als Sehrittweitenfolgewurde die bereits in [31 erw/ihnteFolge~

{L, L 2 , 3 , 4L, 6 ,L8 , t L2 L

L .... }

gew~thlt (L L~tnge des Integrationsintervalls), die auch hier in bezug auf Arbeitsaufwand und Genauigkeit die besten Resultate liefert. In der folgenden Tabelle
gibt m die Anzahl der Extrapolationsschritte, A,~ die Anzahl der bis zur Schrittweite h~ zu berechnenden Funktionswerte und T(hm) die berechneten Trapezsummen an. Die weiteren Spalten enthalten in der Reihenfolge die extrapolierten
Werte bei der Interpolation durch
a) Polynome,
b) rationale Funktionen (Z~ihlergrad = Nennergrad (--!)),
c) reziproke Polynome.
(Es wurden zwei ,,sehlechte" und ein ,,gutes" Beispiel ausgew/ihlt l)
Tabelle 3
m

f sin x dx
0

Am

T(hm)

1,00585652083
1,00330707022
1,0014 7397628
1,00082994518
1,00036913108

~!o
1,0000 0281 498
1,0000 0014667
1,0000 0000488
1,0000 0000010
1,0000 0000000

T'(~
[m121, m - - Eml 2 ]

t,00000100 964
1,00000003 995
1,00000000080
1,00000000000

0,97704861 6664 0,0999984959951o~; 0,0999 9957021010,


t,00000000656
o,9871t58oo974 t,00000005825
0,994281888297 0,09999999999210, 1,0000 0000000
0,996785171887 1,0000 0000000

0,9985716979o7

- - f xsin3xdx
6

0,2741 5567 7808 0,1882 34799393


0,249811161476 0,223744283778
0,23400650 8335 0,222t 93662180
0,228760775525 0,222222514134
0,2251 00165925 0,222222220926
0,223835594426 0,222222222186
0,22293754 7635 0,222222222213

T(O)
o,m

1,00000356225
1,000000t7065
!,00000000541
1,00000000010
!,00000000000
i 0,9994 8556 0817
1,00000816914
0,9999 9994 2886
t , 0 0 0 0 0000 021
t ,0000 0000 000

0,2226 5227 5416


0,22222326 8686
0,22222221 7815
0,222222222178
0,2222 22222223

0,2223 4864 0655


0,2222 2334 67O8
0,2222 2222 5452
0,2222 2222 2186
0, 2222 2222 2223

Man sieht, dab die Werte T,tO}~l,m_E,~/21jeweils am schnellsten konvergieren.


Ein weiteres interessantes Beispiel liefert die Integration der Differentialgleichung y'=/(x, y) nach dem Euler-Verfahren y,+l=y,+h/(x,, y,). Das

424

ROLAND BULIRSCHund JosEF STOER:

Fehlerverhalten ist bier gegeben durch

T(h, x)=y(x) + hzl(x) + h***(x)+ Mz3(x) +....

(t5)

y'= y, y (0) = 1 gew~hlt, vgl. dazu


T(h, x)=e*--h2eX+h~(3 + x-~)e~+...).

Als spezielles Beispiel wurde wieder


w

(In diesem Fall ist

auch [1],

Mit der Schrittweite h,~=2 -m ergibt sich


Tabelle 4
T(hm, 1)

T(mO~O

T[(~/21,m-- [m/~]

2,56578451393
2,63792849736
2,67699012937
2,6973 4495258

2 , 7 t 3 8 7899486
2,718o2983460
2,71827434380
2 , 7 i 8 2 8 1 7 t 514

2,7t81 5 5 i 6 t 7 3
2,71828078589
2,71828181 79i
2,71828182855

2,71563200012

2,7i828182855

Man erhitlt also mit der einfachen Eulerschen Methode for m = 6 dutch Bildung
yon T~~ praktisch dieselbe Genauigkeit wie mit den Runge-Kutta-Formeln mit
anschlieBender Extrapolation (vgl. das Beispiel am Ende von w3). Die Anzahl
der zu berechnenden Funktionswerte /(x~, Yn) betriigt in diesen beiden F~tllen
121 bzw. t20. Das Verh~iltnis verschiebt sich sogar noch zugunsten der EulerIntegration, falls die Schrittweitenfolge ~ benutzt wird. In diesem Fall erhiilt
man durch Berechnung yon nur 30 Funktionswerten das Ergebnis T~,~
2,71828182652. H6here Genauigkeiten k6nnen hier mit ~ im Gegensatz zur
Trapezsummen-Extrapolation leider nicht erzielt werden, da wegen der lediglich
nach Potenzen yon h fortschreitenden Entwicklung (15) dutch die nahe bei 1
liegenden Q u o t i e n t e n hi+l
~ - - . die
" Rundungsfehler stark ins Gewicht fallen.
9

OG

Das folgende AzGoz-Programm zur Berechnung von

f/(x)dx

benutzt zur

UG

Trapezsummen-Extrapolation rationale Funktionen (Z~thlergrad ~ Nennergrad,


s. Formel (1t)). Verwendet wird die Folge

~={ L'L2'3'4'6'8L
L L L . . . . },

OG--UG.

L=

Das Programm ist optimal konstruiert, bereits berechnete [(n hi)


werden zur Ermittlung neuer ToC'~) wieder verwendet. Bezeichnet A m die Anzahl
der [(n hi) zur Berechnung von To~~. . . . . To(ml, so ist
2 -+l,
Am = t + | m+l

~2 ~- + 2
(vgl. Tabelle 1 in

E3]).

m gerade
m_>_2

m-1
~- ,

m ungerade

Fehlerabschi~tzungen und Extrapolation mit rationalen Funktionen

425

Das Programm ermittelt zu vorgegebenem ord die T~(0_i ffir


m = 0 , t, ..., ord
i = m, m -- 1 . . . . . r (m)

mit

r (m) = m a x {0, m -- 7}

Oa

und liefert als NAherung ffir f / ( x ) d x den Wert To(~'~o~)al.


va
(Tocie Erfahrung zeigt, dab es keinen Sinn hat, fiber mehr als 8 Stfitzpunkte
(hi, 1"1) zu extrapolieren.)
Voraussetzung ffir die schnelle Konvergenz der T~_i ist allerdings die Existenz
OG

einer Entwicklung (1) ffir T(h) mit 7i-----2j und k>=7 (trifft zu, falls f [/~ze)(x)] dx
existiert),
ua

reol procedure Trapezsummenextrapolation (ug, og, ord, eps) procedure : ([) ;


c o m m e n t Die Prozedur Trapezsummenextrapolation liefert den N~herungswert
ffir das Integral der Funktion [ (x) zwischen der unteren Grenze ug
und der oberen Grenze og, den man durch ein Extrapolationsverfahren mit rationalen Funktionen v o n d e r Ordnung oral (>--_2) erh~ilt.
Die Extrapolation wird vor ihrem natfirlichen Ende abgebrochen,
wenn sich zwei aufeinanderfolgende Niiherungswerte t [i] und t [i + 1]
ffir das Integral um weniger als eps abs (t [i + 1]) unterscheiden;
volue ug, og, ord, eps ;
real ug, og, eps ;
integer ord;
real procedure [;
begin real h, e, tO, t2a, t2, tn, tS, ha, hg;
integer m, nn, i;
integer arroy n [0 : ord I ;
arroy t [0 : 71 ;
boolean bo ;

procedure extr (m) ;


value m,
integer m;
begin real v, d, u, by, hu;
integer i, mr;
v:---0; u:--rE0]; h:----rE0] :----tn;
if m > 7 then m r : = 7 else m r : = m ;
for i:----t step I until mrdo
begin d : = n [ m l / n [ m - - i ] ;
d :---d
hv:=h--v; hu::h--u;
if hv :~0 then
begin h : = h + h u / ( d x ( l - - h u / h v ) - - 1 ) ;

v : = u ; u : = t [ i ] ; t[i] : = h ;
end
else go to ende;
end;
end ex~r ;

426

ROLAND BULIRSCH u n d JOSEF STOER :

n [ O ] : = 1 ; n[I] :-----2; n [ 2 ] : = 3 ;
f o r i : ---- 3 s t e p I u n t i l ord d o n [i] : = n [i - - 2] 2;

e :-~ o g - - u g ; bo : = true; tO :-----([(og) + / ( u g ) ) / 2 ;


[ [0] : = tO e; tea : = te : = [ (ug + e/2) ; tn : = (~0 + t2) e/2 ;
extr (t) ;
t3 : = / (ug + e / 3) + / (og - e / 3) ; tn : = (tO + tB) e / 3 ;
extr (2) ; ha : = h;
for m : = 3 step I until ord do
begin n n :----n [m]; hg :----e / n n ;

if bo then
b e g i n f o r i :---- 1 s t e p 2 u n t i l n n d o
t2:---- t 2 + [ (ug + i x hg) ;
tn : = (~2 + tO) hg;
end

else
begin for i : = t step 6 until nn, i:---- 5 step 6 until nn do
t B : = tB + /(ug + i x h g ) ;
tn : ---- (t3 + t2a + tO) hg; t2a : ~- t2;

end;
extr (m) ; bo : = 7 bo ;
if abs (ha - - h) < abs (h) x eps t h e n g o t o ende;
ha :----h;

end;
ende : ~rapezsummenextrapolation : ---- h;
e n d trapezsummenextrapolation
Literatur
[1] BAUER, F. L., H. RUTISHAUSER, and E. STIEFEL" New Aspects in Numerical
Quadrature. Proc. of Symposia in Applied Mathematics 15, Am. Math.
Soc. (1963).
[2] BOLTON, H. C., and H . I . Scoll~S: Eigenvalues of Differential Equations b y
Finite-Difference Methods. Proc. of the Cambridge Phil. Soc. 52, 2 t 5 - - 2 2 9
(1956).
[3] BULIRSCH, R.: Bemerkungen zur Romberg-Integration. Num. Math. 6, 6--16
(t964).
[4] GRAGG, W. : Repeated Extrapolation to the Limit in the Numerical Solution of
Ordinary Differential Equations. Thesis UCLA (1963).
[5] HARTREE, D. R.: Numerical Analysis. Oxford: A t the Clarendon Press 1958.
[6] KUNTZMANN, J.: M6thodes num6riques, interpolation-dgriv6es. Paris: Dunod
1959.
[7] LAURE~T, P . - J . : Un th6or~me de convergence pour le proc6d~ d'extrapolation
de RICHARDSON. Comptes Rendus de l'Aead6mie des Sciences (Paris) 256,
1435--1437 (t963).
[8] RICHARDSOn, C., and J. GAUNT: The Deferred Approach to the Limit. Trans.
Roy. Soe. Lond. 226, 300--361 (1927).
[9] ROMBERG, W. : Vereinfachte numerische Integration. Det. Kong. Norske Videnskabers Selskab Forhandlinger 28, Nr. 7, Trondheim t 955.
[10] RUXlSHAUSER, H. : Ausdehnung des Rombergsehen Prinzips. Num. Math. 5,
48--54 (1963).

Fehlerabsch~tzungen und Extrapolation mit rationalen Funktionen

427

[11] STETTER,H.-J.: Asymptotic Expansions for the Error of Discretisation Algorithms for Non-linear Functional Equations. Erscheint in Num. Math.

[12] STOER, J. : Uber zwei Algorithmen zur Interpolation mit rationalen Funktionen.
Num. Math. 3, 285--304 (1961).

[13] COREY: The American math. Monthly 13 (1906).

[143 SALVADORI,M. G., and M. L. BARON: Numerical Methods in Engineering. Englewood Cliffs, N.J.: Prentice-Hall 1952.

[15] LVNESS, J. N., and B. J. J. McHuoH: Integration over multidimensional Hypercubes, I. A progressive Procedure. The Computer J. 6, 2 6 4 - 2 7 0 (1963).

[16] LAURENT,P.-J. : Formules de quadrature approch6e sur domaines rectangulaires


convergentes pour route fonction int6grable Riemann. Comptes Rendus de
l'Acad6mie des Sciences (Paris) 2S8, 798--801 (1964).
[17] NAVOT, I.: The Euler-Maclaurin Functional for Functions with a Quasi-Step
Discontinuity. Math. Comp. 17, 337--345 (1963).
Mathematisches I n s t i t u t der
Technischen Hochschule
8 Miinchen 2, Arcisstr. 21

(Eingegangen am 26. Mtirz 1964)