Kurs:Gewöhnliche Differentialgleichungen/4.3.1 Kollokationsverfahren

Aus testwiki
Zur Navigation springen Zur Suche springen

Kollokationsverfahren

Der Ausdruck Kollokaltion kommt vom Wort collocate - übereinstimmen, und ist ein eleganter Weg zur Konstruktion impliziter Runge-Kutta Verfahren höherer Konsistenzordnung. Die Grundidee des Kollokationsverfahren ist die Konstruktion eines Polynoms (Kollokationspolynom u(t)), dessen Ableitungen u(ζ) an bestimmten Stellen zwischen ti,ti+1 mit den Ableitungen der gesuchten Funktion, y(ζ)=f(ζ,y(ζ)) übereinstimmen. Anschließend wird das Interpolationspolynom u zwischen ti,ti+1 numerisch integriert, um den Wert u(ti+1) zu erhalten- der approximiet die neue Lösung y(ti+1).


Definition 4.3 (Kollokationsverfahren)
Seien c1,cs[0,1] s positive, paarweise verschiedene Zahlen (Stützstellen) zwischen 0 und 1, sei i=0,1,Nh. Das Kollokationspolynom u ist definiert durch u(ti)=ηi,u(ti+cjh)=f(ti+cjh,u(ti+cjh)), die neue numerische Lösung wid bestimmt als

ηi+1:=u(ti+1).


Im Kollokationverfahren wird das Polynom u in der Praxis nicht explizit berechnet, sondern als Interpolationsaufgabe (4.15), kombiniert mit anschließender numerischen Integration (intepolatorische Quadratur) realisiert. Bei diesem Vorgehen, unter Anwendung des Lagrange Interpolationspolynom in (4.15), und nach der Integration dieses Interpolationspolynoms ergibt sich ein numerisches Verfahren, das sich als Runge-Kutta Verfahren mit den s Stützstellen c1,,cs formulieren lässt. Dieses Erkenntniss ermöglicht eine praktische Umsetzung des Kollokationsverfahrens als ein (implizites) Runge-Kutta Verfahren und wird später als Satz formuliert und konstruktiv bewiesen. Somit wird die Verbindung des Kollokationsverfahren zu iRKV deutlich, in dem das Kollokationsverfahren auf ein Runge-Kutta Verfahren mit speziellen Gewichten und Koeffizienten überführt wird. Das Kollokationsvefahren kann man daher als einen Weg zur Konstuktion spezieller iRKV auffassen.

Bevor wir den Satz über die praktische Umsetzung des Kollokationsverfahren formulieren und beweisen, machen wir einen Exkurs zu den Grundsätzen der numerischen Interpolation und Integration.


Interpolation

Gegeben sei ein Intervall [a,b] die n+1 Knoten x0,x1,,xn[a,b] und die Funktionswerte f(x0),,f(xn).
Gesucht wird ein Polynom pintn des Grades n, sodass pint(xi)=!f(xi) für i=0,1,n. Das bekannteste Interploationspolynom ist das Lagrange-Interpolationspolynom, das sich als die Kombination der Lagrange-Grundpolynome in zusammensetzt: pint(x)=i=0nf(xi)i(x)n, miti(x)=k=1,kinxxkxixk={1 falls x=xi,0 x=xj,ji(4.16)


Beispiel 4.3 (Lagrange Interpolationspolynom mit zwei Knoten)
Sei n=1 und die Knoten der Interpolation x0,x1. Die Lagrange-Grudpolynome zu diesen Knoten sind lineare Funktionen 0(x)=xx1x0x1  und  1(x)=xx0x1x0.

Demzufolge ist das Lagrange-Interpolationspolynom für zwei Knoten pint(x)=f(x0)0(x)+f(x1)1(x)=f(x0)xx1x0x1+f(x1)xx0x1x0.

Für das lineare Polynom pint, stimmt in den Knoten x0,x1 mit der zu interpolierenden Funktion f überein, denn 0(x0)=1,1(x0)=0 und 1(x1)=1,0(x1)=0.



Beispiel 4.4 (Lagrange Interpolationspolynom mit drei Knoten)
Sei n=2 und x0,x1,x2 die Knoten der Interpolation. Die Lagrange Grundpolynome zu diesen Knoten sind quadratische Funktionen 0(x)=(xx1)(xx2)(x0x1)(x0x2), 1(x)=(xx0)(xx2)(x1x0)(x1x2), 2(x)=(xx0)(xx1)(x2x0)(x2x1).

Das Lagrange-Interpolationspolynom für drei Knoten ist die quadratische Funktion pint(x)=f(x0)0(x)+f(x1)1(x)+f(x2)2(x)=f(x0)(xx1)(xx2)(x0x1)(x0x2)+f(x1)(xx0)(xx2)(x1x0)(x1x2)+f(x2)(xx0)(xx1)(x2x0)(x2x1).

In den Knoten x0,x1,x2 stimmt pint mit f überein, da i(xi)=1,i=1,2,3 und i(xj)=0 falls ij.

Abbildung 4.2: Interpolation im Intervall [a,b] mit drei Knoten: die Lagrange Grundpolynome 0, 1, 2 und die zu interpolierende Funktion f.

Numerische Integration

Numerische Integration - die Quadratur - ist ein Weg das bestimmte Integral einer Funktion mit einer Summe, d.h., mit einer linearen Kombination bestimmter Funktionwerte zu approximieren und somit algoritmisch zu berechnen, Q[f]:=i=0nαif(xi)abf(s)ds.(4.17)

xi sind die Knoten, αi die Gewichte der Quadratur genannt.
Ein natürlicher Weg ein Integral durch Summe zu approximieren ist die Interpolatorische Quadratur: die Integration des Interpolationspolynom. Beispiel einer interpolatorischen Quadratur ist die Newton-Cotes Quadratur, hierbei wird das Lagrange-Interpolationspolynom für die zu integrierende Funktion gebildet und integriert, abf(s)dsabpint(s)ds=abi=0nf(xi)i(s)=i=0nf(xi)abi(s)ds:=αi.(4.18)

Somit is die Newton-Cotes Quadratur zu den beliebigen, paarweise verschiedenen Knoten x0,x1,,xn definiert durch (4.17) mit speziellen Gewichten Q[f]:=i=0nαif(xi),αi=abi(s)ds.(4.19)


Abbildung 4.3: Interpolatorische Quadratur von f im Intervall [a,b] als Integral des Lagrange Interpolationspolynom (Beispiel 4.4). Hier Q[f]=abpint in blau und abf in rot- gestreift.


Exaktheitsgrad einer Quadratur
ist der Grad der Polynome, für welchen die Quadratur das Integral noch exakt berechnet.

Im Falle von interpolatorischer Quadratur hängt die Exakheit der Quadratur direkt mit der Exaktheit der Interpolation zusammen. Bei n+1 Knoten wird ein Interpolationspolynom n-ten Grades eindeutig bestimmt und somit werden alle Polynome n-ten Grades, die in n+1 Knoten übereinstimmen identisch. Beispielsweise wird eine lineare Funktion durch Interpolationspolynom mit zwei Knoten, siehe Beispiel 4.3, eindeutig und exakt (ohne Fehler) dargestellt, eine quadratische Funktion ist durch Interpolationspolynom mit drei Knoten, siehe Beispiel 4.4 eindeutig und exakt bestimmt usw. Da es sich bei interpolatorische Quadratur um anschließende (exakte) Integration handelt, ist der Exakhteisgrad dieser Quadraur für frei wählbare Knotnen x0x1xn[a,b] dadurch mindestens n. Sind die Knoten xi der interpolatorischen Quadratur speziell gewählt, kann sogar noch höherer Exaktheitsgrad erreicht werden. Dies ist der Fall bei der Gauss-Quadraur, die bei n+1 speziell gewählten Knoten den maximalen Exaktheitsgrad 2n+1 erreicht, mehr zu Gauss-Quadraur findet man z. B. in [3].

Die Anwendung der numerischen Interpolation und der Newton-Cotes (interpolatorischen) Quadratur (4.17)–(4.19) für die Ableitung des Kollokationspolynoms u führt zu folgendem Satz über die prakische Anwendung des Kollokationsverfahren, wie vorher avisiert.



Satz 4.3 (Kollokationsverfahren als iRKV)
Das Kollokationsverfahren (4.15) ist äquivalent zu einem s-stufigem Runge-Kutta Verfahren mit den Stützstellen c1,,cs und folgenden Koeffizienten: ajm=0cjm(t)dtbm=01m(t)dt, m,j=1,,s,wobeim(t)=k=1,kmstckcmcks1(4.20) das Lagrange Grundpolynom ist.

Beweis
In (4.15) bezeichne u(ti+cjh)=f(ti+cjh,u(ti+cjh)):=kj und bilde das Interpolationspolynom auf [ti,ti+h] für die Ableitung u über den s Knoten ti+cjh, j=1,,s, cj[0,1], u(t)=m=1skm~m(t),~j(t)=k=1,kjst(ti+hck)ti+hcj(ti+hck)s1.(4.21)
Nach der Integration titi+cjhdt erhält man mit Hilfe von u(ti)=ηi aus obiger Gleichung: u(ti+cjh)=u(ti)+m=1skmtiti+cjh~m(t)dt=ηi+hm=1skm0cjm(c)dc,(4.22)
wobei hier die Variable-Substitution c:=ttih, c[0,1] vewendet wurde und m wie im (4.20) definier ist. Integriert man nun in (4.21) bis zu ti+h, so erhalten wir mit derselben Substitution, u(ti+h)%=u(ti)+m=1skmtiti+cjh~m(t)dt=ηi+hm=1skm01m(c)dc.(4.23)
Bezeichnet man nun bm:=01m(c)dc,
so berechnet sich nach dem Kollokationsverfahren der neue numerische Wert ηi+1 als u(ti+h) und somit anhand von (4.23) als ηi+1=ηi+hm=1skmbm, was der Form eines RK-Update entspricht, siehe (4.2).
Um das Kollokationsverfahren vollständig mit einem Runge-Kutta Verfahren zu identifizieren, müssen noch die kj:=f(ti+cjh,u(ti+cjh)), j=1,,s aus dem Anfang des Beweises mit den Funktionsauswertungen kj in den Zwischenstufen (4.1) (kj berechnet anhand einer Koeffizientenmatrix) übereinstimmen. Hierzu braucht man nur die Werte u(ti+cjh) im Argument von f mit Hilfe von (4.22) zu ersetzten und man erhält kj:=f(ti+cjh,u(ti+cjh))=f(ti+cjh,ηi+hm=1skm0cjm(c)dc), was mit der Bezeichnung ajm:=0cjm(c)dc
die Stufen kj eines (impliziten) Runge-Kutta Verfahren, (4.1), mit Koeffizientenmatrix (A)jm=ajm definiert. ◻