Kurs:Numerik I/Interpolation

Aus testwiki
Zur Navigation springen Zur Suche springen

Interpolationsproblem

Das Problem der Interpolation besteht allgemein darin, für m gegebene Stützpunkte bzw. Daten (xi,yi),i=1,,m ein Funktion z𝒵m eines gegebenen endlich-dimensionalen Funktionenraums 𝒵m zu bestimmen, so dass

z(xi)=yi(i=1,,m)

gilt. Dabei können die yi von einer gegebenen, in den xi definierten Funktion f herrühren, d. h. kann

yi:=f(xi)(i=1,,m)

gelten.

Zielsetzung

Ähnlich wie bei der Ausgleichsrechnung geht es also darum, eine große Zahl von Daten durch eine Funktion zu ersetzen bzw. eine Funktion f, die möglicherweise durch eine komplizierte und numerisch aufwendig auszuwertende Vorschrift definiert ist, durch eine Funktion z mit einer einfacheren Vorschrift anzunähern, die ebenfalls die Daten 𝔻:={(xi,yi):i=1,,m} interpoliert.

Unterschied zur Ausgleichsrechnung

Bei bei der Interpolation wird im Unterschied zur Ausgleichsrechnung gefordert, dass der Graph der gesuchten Funktion z genau durch die Punkte (xi,yi) verläuft und nicht nur mit einem möglichst geringen Fehler annähert.

Beispiel - Lineare Regression

Bei der linearen Regression versucht man eine Ausgleichsgerade zu finden, dessen Abstand zu den Daten 𝔻:={(xi,yi):i=1,,m} minimiert. Das aus den Daten entstehende Gleichungssystem ist überbestimmt und daher im Allgemeinen nicht eindeutig lösbar. Eine Interpolation von mehr als zwei Datenpunkten mit einem Polynom 1. Grades ist daher im Allgemeinen nicht möglich.

Ansatzraumes

Für die Wahl des Ansatzraumes 𝒵m gibt es nun wie bei der Ausgleichsrechnung oder anderen Arten der Approximation viele Möglichkeiten. Hier wollen wir nur auf die wichtigste Art der Interpolation eingehen, die Polynominterpolation, bei der

Πn:={p|p ist Polynom vom Gradn}

der Funktionenraum aller Polynome vom Höchstgrad n, also 𝒵m:=Πn mit m:=n+1 ist.

Polynominterpolation

Wir betrachten also jetzt das folgende Problem (IP) der Interpolation durch ein Polynom:

(IP) Für gegebene Stützpunkte
(6.1) (xi,yi),i=0,1,,n
mit Stützstellen
(6.2) xixk,ik
bestimme ein Interpolationspolynom pΠn mit
(6.3) p(xi)=yi(i=0,1,,n).

Die Bedingung (6.2) könnte man an einigen Stellen in diesem Kapitel fortlassen. Sie ist aber sinnvoll und wird insbesondere zum Beweis der Eindeutigkeit des Interpolationspolynoms im nächsten Satz benötigt.

Satz - Eindeutigkeitssatz - Interpolationsproblem

Das Interpolationsproblem (IP) hat eine eindeutige Lösung pΠn.

Beweis.

Sei pΠn in der Form

p(x)=a0+a1x+a2x2++anxn

gegeben. Dann lauten die Gleichungen (6.3)

(6.4) a0+a1xi+a2xi2++anxin=yi(i=0,1,,n).

Dies sind n+1 Gleichungen in den n+1 Unbekannten ai (i=0,1,,n). Die zu diesen Gleichungen gehörende Systemmatrix ist die bereits aus Abschnitt 4.2 bekannte Vandermonde-Matrix

V:=(1x0x0n1x1x1n1xnxnn).

Ihre Determinante, die Vandermonde-Determinante, ist durch

det(V)=0i<kn(xkxi)

gegeben (siehe R. Zurmühl: Matrizen und ihre technischen Anwendungen, Springer, Berlin, 1965). Wegen (6.2) ist det(V)0 und alles gezeigt.

q.e.d.

Der Beweis des letzten Satzes macht deutlich, dass man das Interpolationspolynom bestimmen kann, indem man das System (6.4) löst. Leider ist die zugehörige Systemmatrix, die Vandermonde-Matrix, sehr schlecht konditioniert, wie wir bereits in Abschnitt 4.2 festgestellt hatten. Daher ist von diesem Weg zur Lösung des Interpolationsproblems abzuraten. Wir geben im Folgenden andere Möglichkeiten der Bestimmung an, die aber alle auch Vor- und Nachteile haben.

6.2 Die Lagrangesche Darstellung des Interpolationspolynoms

Wir führen zunächst spezielle Polynome ein:

Definition 6.2

Zu n+1 Stützstellen xi (i=0,1,,n) mit xixk für ik sind die Langrangeschen Basispolynome LiΠn (i=0,1,,n) definiert durch
Li(x):=j=0jinxxjxixj.

Offenbar hat das Lagrangesche Basispolynom Li die n Nullstellen xk (ki) und genügt es den n+1 Bedingungen

(6.5) Li(xk)=δik:={1,k=i,0,ki.

Da i=0naiLi(x)=0 ein Polynom vom Höchstgrad n ist und somit, wenn es nicht das Nullpolynom ist, maximal n Nullstellen hat, folgt:

(6.6) i=0naiLi(x)=0(x)ai=0(i=0,1,,n).

Das heißt, die Li sind linear unabhängig und es ist somit

dim(span{L0,L1,,Ln})=n+1.

Wegen

span{L0,L1,,Ln}Πn

folgt damit

Πn=span{L0,L1,,Ln}.

Die Funktionen L0,L1,,Ln bilden also eine Basis des Polynomraumes Πn, so dass sich jedes Polynom vom Höchstgrad n und damit auch das eindeutig bestimmte Interpolationspolynom als Linearkombination der Li darstellen lässt. Für die nach Satz 6.1 eindeutige Lösung p des Interpolationsproblems (IP) ist diese Darstellung wegen (6.5) besonders einfach. Denn macht man für p den Ansatz

p(x)=i=0naiLi(x),

so folgt mit (6.3) und (6.5)

yk=p(xk)=i=0naiLi(xk)=akLk(xk)=ak(k=0,1,,n)

und damit die Lagrangesche Darstellung des Interpolationspolynoms

(6.7) p(x)=i=0nyiLi(x).

Sie hat den Vorteil, dass man an ihr die Stützwerte yi für die Stützpunkte xi und damit die Interpolationsbedingungen (6.3) sofort ablesen kann.

Beispiel 6.3

Zu den Stützpunkten

i012xi013yi132

lauten die Langrangeschen Basispolynome

L0(x)=(x1)(x3)(01)(03)=13(x1)(x3),
L1(x)=(x0)(x3)(10)(13)=12x(x3),
L2(x)=(x1)(x0)(31)(30)=16x(x1).

Das Interpolationspolynom pΠ2 zu diesen Stützpunkten ist somit gegeben durch

p(x)=13(x1)(x3)32x(x3)+13x(x1).

Zum Beispiel für x=2 berechnet man

p(2)=1L0(2)+3L1(2)+2L2(2)=13+3+23=103.

Man beachte, dass die Abbildung

n+1Πn,(y0,,yn)Tp,

die für vorgegebene, paarweise verschiedene xi jeder Menge von n+1 Stützwerten yi das eindeutige Interpolationspolynom zuordnet, linear ist.

Leider ist aber auch die Lagrangesche Darstellung des Interpolationspolynoms für praktische Rechnungen mit großem n weniger geeignet. Denn die Berechnung von Li(ξ) in einem Punkt ξ für ein i verlangt insgesamt 2(n1) Produkte und 1 Division, so dass für die Auswertung des Interpolationspolynoms an einer Stelle ξ insgesamt (2n1)(n+1)+(n+1), also 2n2+𝒪(n) wesentliche arithmetische Operationen benötigt werden. Außerdem erfordert die Lagrangesche Darstellung des Interpolationspolynomes im Fall der Hinzunahme eines Stützpunktes oder mehrerer Stützpunkte zu der ursprünglichen Stützpunktmenge die Neuberechnung aller Li und damit des gesamten Interpolationspolynoms.

6.3 Das Neville-Schema

Die Lösung für das Problem (IP), d. h. das Interpolationspolynom, kann auch schrittweise aus den Interpolationspolynomen für m=0,1, Stützpunkte berechnet werden. Um dies zu zeigen, benötigen wir:

Definition 6.4

Zu n+1 Stützpunkten (xi,yi) wie in (6.1) und (6.2) bezeichne Pi,i+1,,i+m das (eindeutig bestimmte) Polynom vom Grad m mit
(6.8) Pi,i+1,,i+m(xk)=yk,k=i,i+1,,i+m,
wobei i,m0 und i+mn seien.

Damit können wir die Lösung pΠn des Problems (IP) auch in der Form

p(x)=P0,1,,n(x)

schreiben. Weiter können wir in diesem Zusammenhang beweisen:

Satz 6.5

Für Pi,i+1,,i+m gilt die Rekursionsformel
(6.9) Pi(x)yi,
(6.10) Pi,i+1,,i+m(x)=(xxi)Pi+1,,i+m(x)(xxi+m)Pi,,i+m1(x)xi+mxi, falls m1.

Beweis.

Die Identität (6.9) ist wegen PiΠ0 und Pi(xi)=yi richtig. Nun bezeichne Q(x) die rechte Seite von (6.10), so dass Q=Pi,i+1,,i+m zu zeigen ist.

Es gilt Pi+1,,i+mΠm1 und Pi,i+1,,i+m1Πm1 und demnach QΠm. Weiter gilt

Q(xi)=(xixi+m)yixi+mxi=yi,Q(xi+m)=(xi+mxi)yi+mxi+mxi=yi+m

und für k=i+1,i+2,,i+m1 hat man

Q(xk)=(xkxi)yk(xkxi+m)ykxi+mxi=(xi+xi+m)ykxi+mxi=yk.

Wegen der Eindeutigkeit des Interpolationspolynoms (vgl. Satz 6.1) folgt Q=Pi,i+1,,i+m.

q.e.d.

Die Formel (6.10) ist eine Rekursionsformel, die es ermöglicht, das Polynom Pi,i+1,,i+m(x) vom Grad m aus den beiden Polynomen Pi+1,,i+m(x) und Pi,,i+m1(x) vom Grad m1 zu bestimmen. Sie führt auf das Neville-Schema, bei dem sich die Einträge spaltenweise berechnen lassen:

y0=P0(x)y1=P1(x)P01(x)y2=P2(x)P12(x)P012(x)yn1=Pn1(x)Pn2,n1(x)P0,,n1(x)yn=Pn(x)Pn1,n(x)P1,,n(x)P0,1,,n(x)

Mit diesem Schema lässt sich das Interpolationspolynom p(x)=P0,1,,n(x) an einzelnen Stellen x auswerten. Dazu werden jeweils

3i=1ni=32n(n+1)

Multiplikationen und Divisionen benötigt.

Beispiel 6.6

Wir betrachten wieder die Stützpunkte aus Beispiel 6.3:

i012xi013yi132

Für x=2 berechnet man

P01(2)=(20)P1(2)(21)P0(2)10=23111=5,
P12(2)=(21)P2(2)(23)P1(2)31=12(1)32=52,
P12(2)=(20)P12(2)(23)P01(2)30=2(5/2)(1)53=103.

Demnach sieht das Neville-Schema hier wie folgt aus:

y0=P0(2)=1y1=P1(2)=3P01(2)=5y2=P2(2)=2P12(2)=5/2P012(2)=10/3.

Bei Aufnahme eines neuen Stützpunktes oder mehrerer neuer Stützpunkte und Auswertung des Interpolationspolynoms an derselben Stelle wie zuvor, muss das Neville-Schema, anders als es eine Auswertung über die Lagrangesche Darstellung erfordern würde, nicht vollständig neu aufgestellt werden, sondern müssen nur entsprechende Zeilen am Ende des Schemas hinzugefügt werden. Falls ein Interpolationspolynom jedoch an mehreren Stellen zu bestimmen ist, sind trotzdem andere Methoden vorzuziehen. Eine davon wird im folgenden Abschnitt vorgestellt.

6.4 Die Newtonsche Darstellung des Interpolationspolynoms

Wir definieren zunächst:

Definition 6.7

Zu gegebenen n+1 Stützstellen xi (i=0,1,,n) sind die Newtonschen Basispolynome NiΠi (i=0,1,,n) definiert durch
Ni(x):=j=0i1(xxj).

Man beachte dabei, dass das leere Produkt als 1 definiert, also N0(x)1 ist. Ähnlich wie für die Lagrangeschen Basispolynome in (6.6) schließt man, dass die Newtonschen Basispolynome linear unabhängig sind und

Πn=span{N0(x),,Nn(x)}

ist. Jedes Polynom vom Höchstgrad n lässt sich also auch nach Newtonschen Basispolynomen entwickeln. Insbesondere soll nun eine solche Entwicklung

(6.11) p(x)=i=0naiNi(x)=a0+a1(xx0)+a2(xx0)(xx1)++an(xx0)(xxn1)

d. h., sollen nun zugehörige Koeffizienten ai für das Interpolationspolynom pΠn bestimmt werden.

Die Koeffizienten ai in (6.11) lassen sich nacheinander aus den Gleichungen

y0=p(x0)=a0,
y1=p(x1)=a0+a1(x1x0)a1=(y1y0)/(x1x0),
y2=p(x2)=a0+a1(x2x0)+a2(x2x0)(x2x1)a2=,

gewinnen. Zur Berechnung der Koeffizienten des Interpolationspolynoms wären bei dieser Vorgehensweise

j=1ni=1ji=12j=1nj(j+1)=n(n+1)(2n+1)12+n(n+1)4=16n3+12n2+13n

Multiplikationen und Divisionen und insgesamt n3/3+𝒪(n2) arithmetische Operationen erforderlich. Eine Vorgehensweise, die dafür nur n2/2+n/2 Divisionen und nur insgesamt 𝒪(n2) arithmetische Operationen verlangt, soll im Folgenden vorgestellt werden.

Definition 6.8

Für n+1 Stützpunkte (xi,yi) wie in (6.1) und (6.2) heißen die Zahlen
y[xi]:=yi,
(6.12) y[xi,,xi+k]:=y[xi+1,,xi+k]y[xi,,xi+k1]xi+kxi
dividierte Differenzen, wobei i,k0 und i+kn seien.

Man beachte, dass die dividierte Differenz y[xi,,xi+k] von den Stützstellen xi,,xi+k und den Stützwerten yi,,yi+k abhängt. Die genauen Abhängigkeiten zwischen den einzelnen dividierten Differenzen können dem folgenden Tableau entnommen werden.

y0=y[x0]y1=y[x1]y[x0,x1]y2=y[x2]y[x1,x2]y[x0,x1,x2]yn1=y[xn1]y[xn2,xn1]y[x0,xn1]yn=y[xn]y[xn1,xn]y[x1,,xn]y[x0,,xn]

Zum Beispiel gilt

y[x0,x1]=y[x1]y[x0]x1x0,y[x1,x2]=y[x2]y[x1]x2x1,y[x0,x1,x2]=y[x1,x2]y[x0,x1]x2x0

Zur Berechnung aller dividierten Differenzen für n+1 Stützpunkte werden insgesamt nur

i=1ni=12n(n+1)

Divisionen benötigt. Ferner gilt folgender Satz:

Satz 6.9

Für die Lösung pΠn des Interpolationsproblems (IP) hat man die Darstellung (6.11) mit
(6.13) ai:=y[x0,,xi],i=0,1,,n.

Beweis.

Der Beweis wird per vollständiger Induktion über n geführt. Die Behauptung ist sicher für n=0 richtig. Es sei nun angenommen, dass sie für beliebiges n0 und beliebige Stützpunkte (ui,vi),i=1,,n mit uivk für ik richtig sei.

Seien nun n+2 Stützpunkte (xi,yi),i=0,1,,n+1 mit xixk für ik gegeben und pΠn+1 das zugehörige Interpolationspolynom. Mit den in Definition 6.4 definierten Polynomen gilt dann

pP0,,nΠn+1,p(xk)P0,,n(xk)=0,k=0,1,,n

und daher mit einer Konstanten a (a=0 ist möglich)

p(x)P0,,n(x)=a(xx0)(xxn)

bzw.

(6.14) p(x)=P0,,n(x)+a(xx0)(xxn).

Nach Induktionsvoraussetzung gilt nun ai:=y[x0,,xi],i=0,1,,n, so dass noch

a=y[x0,,xn+1]

zu zeigen bleibt.

Nach Satz 6.5 gilt

(6.15) p(x)=P0,1,,n+1(x)=(xx0)P1,,n+1(x)(xxn+1)P0,,n(x)xn+1x0

so dass die Behauptung per Koeffizientenvergleich folgt: wegen (6.14) muss a der Hauptkoeffizient von p, d. h. muss

p=Q+axn+1

für ein gewisses Polynom QΠn sein. Weiter ist nach Induktionsvoraussetzung bekannt, dass P1,,n+1 und P0,,n die Hauptkoeffizienten y[x1,,xn+1] und y[x0,,xn] haben und damit p den folgenden Hauptkoeffizienten hat:

a=y[x1,,xn+1]y[x0,,xn]xn+1x0=y[x0,,xn+1].

Somit ist alles gezeigt.

q.e.d.

Die Darstellung (6.13) nennt man die Newtonsche Darstellung des Interpolationspolynoms. Nimmt man einen weiteren Stützpunkt zu den ursprünglich n Stützpunkten zusätzlich mit auf, so ändern sich offenbar die ersten n Koeffizienten des Interpolationspolynoms in dieser Darstellung nicht und kann man den Koeffizienten an+1 berechnen, indem man im Schema der dividierten Differenzen unten eine zusätzliche Zeile für diesen Punkt berechnet.

Sind schließlich die Koeffizienten ai der Newtonschen Darstellung (6.11) des Interpolationspolynoms p bekannt, so kann dieses für jedes x:=ξ effizient mit dem Horner-Schema

p(ξ)=[[an(ξxn1)+an1](ξxn2)++a1](ξx0)+a0

ausgewertet werden, wobei die Operationen von links nach rechts auszuführen sind.

Zum Abschluss zeigen wir die Vorgehensweise wieder an unserem Standardbeispiel.

Beispiel 6.10

Gegeben seien die Stützpunkte

i012xi013yi132

Dazu stellen wir das Schema der dividierten Differenzen auf:

y[x0]=1y[x1]=3y[x0,x1]=y[x1]y[x0]x1x0=2y[x2]=2y[x1,x2]=y[x2]y[x1]x2x1=12y[x0,x1,x2]=y[x1,x2]y[x0,x1]x2x0=56

Das Interpolationspolynom pΠ2 zu diesen Stützpunkten lautet somit in der Newtonschen Darstellung:

(6.16) p(x)=1+2x56x(x1).

Nimmt man beispielsweise den Punkt (x3,y3):=(2,52) mit hinzu, so muss man nur das obige Schema um eine Zeile erweitern:

xiyi01132321256252120512

Das Interpolationspolynom pΠ3 zu diesen Stützpunkten ist dann in Bezug auf (6.16) nur um einen Term zu erweitern:

p(x)=1+2x56x(x1)+512x(x1)(x3).

Das Horner-Schema zur Berechnung von letzterem Polynom an der Stelle ξ:=4 lässt sich mit

bn:=an,bi:=ai+(ξxi)bi+1(i=n1,n2,,0)

wie folgt darstellen, wobei hier n:=3 ist:

i3210xi310ξxi134ai5125621bi512512344

Offenbar ist p(2)=b0=4.

6.5 Der Fehler bei der Polynominterpolation

Der folgende Satz gibt für hinreichend oft differenzierbare Funktionen eine Darstellung des bei der Polynominterpolation auftretenden Fehlers an.

Satz 6.11

Es seien fCn+1[a,b],xi[a,b] und yi:=f(xi),i=0,1,,n. Für jedes x[a,b] genügt dann die Lösung pΠn des Interpolationsproblems (IP) der Gleichung
(6.17) f(x)p(x)=f(n+1)(ξx)(n+1)!ω(x)
mit
(6.18) ω(x):=(xx0)(xxn)
und einem ξx[a,b].

Beweis.

Da für x:=xi für i{0,1,,n} nichts zu zeigen ist, nehmen wir xxi für i=0,1,,n an. Sei nun

ψ(t):=f(t)p(t)Kω(t)

mit

K:=f(x)p(x)ω(x),

so dass ψ(x)=0 folgt. Also besitzt ψ in dem Intervall [a,b] mindestens n+2 paarweise verschiedene Nullstellen

x0,,xn,x.

Wiederholte Anwendung des Satzes von Rolle zeigt, dass ψ in dem Intervall [a,b] mindestens n+1 Nullstellen besitzt, ψ mindestens n usw. und somit ψ(n+1) mindestens noch eine Nullstelle ξx. Nun gilt aber

p(n+1)(x)0,ω(n+1)(x)(n+1)!,

wobei die zweite Identität aus der Tatsache folgt, dass ωΠn+1 den Hauptkoeffizienten 1 hat. Insgesamt erhält man damit

ψ(n+1)(ξx)=f(n+1)(ξx)K(n+1)!=0,K=f(n+1)(ξx)(n+1)!,

was den Beweis vervollständigt.

q.e.d.

Eine weitere Darstellung für den bei der Polynominterpolation entstehenden Fehler erhält man mittels dividierter Differenzen.

Satz 6.12

Es seien fCn+1[a,b],xi[a,b] und yi:=f(xi),i=0,1,,n. Für jedes x[a,b]{x0,,xn} genügt dann die Lösung pΠn des Interpolationsproblems (IP) der Gleichung
f(x)p(x)=y[x0,,xn,x]ω(x).

Beweis.

Mit xn+1:=x für x{x0,,xn} hat man nach Satz 6.9

P0,,n+1(t)=P0,,n(t)+y[x0,,xn,x]ω(t)

für alle t, so dass mit der Identität f(x)=P0,,n+1(x) die Behauptung folgt.

q.e.d.

Als Konsequenz aus den Sätzen 6.11 und 6.12 ergibt sich für die dividierten Differenzen:

Korollar 6.13

Es seien fCn[a,b] und yi:=f(xi),i=0,1,,n Stützwerte zu Stützstellen xi[a,b] mit xixk für ik. Dann existiert ein ξ[a,b] mit

y[x0,,xn]=f(n)(ξ)n!.

Beweis.

Für n=0 ist die Behauptung trivial und für n1 folgt sie unmittelbar aus einem Vergleich der rechten Seiten in den Sätzen 6.11 und 6.12, wenn diese auf x0,,xn1 und x:=xn angewandt werden.

q.e.d.

Wir wollen nun der Frage nachgehen, ob die Wahl von mehr Stützstellen automatisch auch zu einer Verringerung des bezüglich [a,b] maximalen Interpolationsfehlers führt oder, anders ausgedrückt, ob der maximale Interpolationsfehler für eine Folge von Interpolationspolynomen zu zunehmend wachsender Zahl von Stützstellen gegen Null strebt. Dazu sei für jedes j0 für den Rest des Unterabschnitts

(6.19) Δj:={xi(j)|a:=x0(j)<x1(j)<<xnj(j):=b}

mit einem nj0 eine Partition von [a,b] und

Δj:=max1inj(xi(j)xi1(j))

ein Maß für die Feinheit der Unterteilung. Weiter sei pjΠnj das Interpolationspolynom zu f mit den Stützstellen (xi(j),f(xi(j))),i=0,1,,nj. Aus Satz 6.11 können wir dann zunächst das folgende Konvergenzergebnis schließen. Man beachte, dass dafür nicht Δj0 (j) gefordert ist.

Satz 6.14

Es sei fC[a,b] und es gelte mit einem M0
maxx[a,b]|f(k)(x)|M,k.
Weiter sei Δj,j0 eine Folge von Partitionen von [a,b] der Form (6.19) mit nj (j). Dann konvergiert die Folge der zugehörigen Interpolationspolynome auf [a,b] gleichmäßig gegen f, d. h., es gilt
limjmaxx[a,b]|f(x)pj(x)|=0.

Beweis.

Aus Satz 6.11 schließt man

maxx[a,b]|f(x)pj(x)|M(nj+1)!maxx[a,b]|(xx0)(xxnj)|M(ba)nj+1(nj+1)!.

Für nj (j) konvergiert der letzte Term für j gegen Null, so dass alles gezeigt ist.

q.e.d.

Beispiel 6.15

Für f(x):=e0.5x hat man

f(x)=12e0.5x,f(x)=122e0.5x,,f(k)(x)=(1)k12ke0.5x

und somit z. B. für [a,b]:=[0,2]

maxx[0,2]|f(k)(x)|12ke012,k.

Allgemein kann man jedoch nicht erwarten, dass eine gegebene Funktion auf einem kompakten Intervall umso besser durch ein Interpolationspolynom approximiert wird, je feiner die Unterteilung der Stützstellen gewählt wird. Wie man zeigen kann, ist dafür die Funktion

f(x):=11+x2,x[5,5]

ein Beispiel. Für deren Ableitungen in x man

f(n)(x)(1)n2nn!O(|x|2n)

zeigen kann, so dass z. B. für x=4 mit einer Konstanten C>0 folgt:

|f(n+1)(x)|C2n+1(n+1)!22(n+3)=C24(n+1)!2n+1+(n).

In diesem Fall ist also auch die Voraussetzung von Satz 6.14 nicht erfüllt. Allgemein hat man in diesem Zusammenhang das folgende „Negativergebnis“, den Satz von Faber, welcher insbesondere für Folgen von Partitionen Δj mit Δj0 (j) von Interesse ist. (Einen Beweis, der allerdings einiges voraussetzt, findet man bei E. W. Cheney: Introduction to Approximation Theory, 2nd edition, Chelsea, New York, 1982.)

Satz 6.16 (Faber)

Zu jeder Folge von Partitionen Δj,j0 von [a,b] der Form (6.19) existiert eine Funktion fC[a,b], so dass für die Folge der zugehörigen Interpolationspolynome auf [a,b] gilt:
limjmaxx[a,b]|f(x)pj(x)|=.

6.6 Tschebyscheff-Polynome

Der Fehler des Interpolationspolynoms zu n+1 vorgegebenen Stützstellen wird durch (6.17) beschrieben. Da der Punkt ξx in (6.17) i. a. unbekannt ist, macht es Sinn, statt der Darstellung (6.17) des Interpolationsfehlers die Abschätzung

(6.20) maxx[a,b]|f(x)p(x)|1(n+1)!maxx[a,b]|f(n+1)(x)|maxx[a,b]|ω(x)|

zu betrachten. In diesem Abschnitt wird der Frage nachgegangen, für welche Stützstellen xi der darin stehende Ausdruck

maxx[a,b]|ω(x)|=maxx[a,b]|(xx0)(xxn)|

am kleinsten wird, d. h. es soll das Minimax-Problem

minx0,,xn[a,b]maxx[a,b]|(xx0)(xxn)|

gelöst werden. Da jedes Polynom vom Grad n+1 mit Hauptkoeffizientem 1 mit Hilfe seiner Nullstellen xi als Produkt (xx0)(xxn) geschrieben werden kann, ist also ein Polynom gesucht, welches unter allen Polynomen vom Grad n+1 mit Hauptkoeffizienten 1 die Maximumnorm bezüglich [a,b] minimal macht. Wählt man die n+1 Nullstellen eines solchen Polynoms als Stützstellen, so erzeugt also das zugehörige Interpolationspolynom p unter allen Interpolationspolynomen zu n+1 Stützpunkten (xi,f(xi)) die kleinste obere Fehlerschranke in (6.20).

Wir betrachten zunächst nur das Intervall [a,b]:=[1,1]. Es wird sich im Folgenden herausstellen, dass die gesuchten „optimalen“ Stützstellen xi[1,1] gerade die Nullstellen des (n+1)-ten Tschebyscheff-Polynoms erster Art sind.

Definition 6.17

Die Funktionen
(6.21) Tn(x):=cos(narccos(x)),x[1,1],n=0,1,
heißen Tschebyscheff-Polynome erster Art.

Im folgenden Satz sind einige Eigenschaften dieser Funktionen aufgeführt.

Satz 6.18

Für Tn wie in (6.21) gelten die folgenden Aussagen:
(i) Tn(cos(θ))=cos(nθ),θ[0,π],n=0,1,
(ii) Für x[1,1] gilt T0(x)=1,T1(x)=x und
(6.22) Tn+1(x)=2xTn(x)Tn1(x),n=1,2,
und Fortsetzung des Definitionsbereichs der so definierten Tn auf ganz liefert
(6.23) TnΠn.
(iii) Tn hat für n1 den Hauptkoeffizienten 2n1.
(iv) Es gilt
maxx[1,1]|Tn(x)|=1.
(v) Tn besitzt die n einfachen Nullstellen
(6.24) xj(n):=cos((2j+1)π2n),j=0,,n1,
welche alle in dem Intervall [1,1] liegen.
(vi) Tn besitzt in dem Intervall [1,1] insgesamt n+1 Extremwerte
Tn(yj(n))=(1)j,j=0,1,,n
für
(6.25) yj(n):=cos(jπn),j=0,1,,n

Beweis.

(i) gilt offensichtlich und die Darstellungen für T0 und T1 in (ii) ergeben sich sofort aus der Definition (6.21). Für die Herleitung der Rekursionsformel (6.22) benötigen wir die Formel

cos(α)+cos(β)=2cos(α+β2)cos(αβ2),α,β.

Mit (i) liefert diese für x=cos(θ),α:=(n+1)θ und β:=(n1)θ

Tn+1(x)=cos[(n+1)θ]=2cos(θ)cos(nθ)cos[(n1)θ]=2xTn(x)Tn1(x).

Weiter folgt (iii) aus der Rekursionsformel (ii) und folgt (iv) mit (i) wegen

maxx[1,1]|Tn(x)|=maxθ[0,π]|Tn(cos(θ))|=maxθ[0,π]|cos(nθ)|=1.

Schließlich sind die Aussagen (v) und (vi) offensichtlich richtig.

q.e.d.

Nach Satz 6.18 (iii) und (v) gilt mit den Nullstellen xj(n+1) von Tn+1 wie in (6.24) die Darstellung

(6.26) [12nTn+1](x)=(xx0(n+1))(xxn(n+1)).

Der folgende Satz besagt nun, dass dieses Polynom unter allen Polynomen vom Grad n+1 mit Hauptkoeffizienten 1 die Maximumnorm auf [1,1] minimal macht und dass man überdies den zugehörigen Wert dieser Norm auch angeben kann.

Satz 6.19

Für n0 und die xj(n+1) wie in (6.24) gilt die folgende Optimalitätseigenschaft:

(6.27) minx0,,xn[1,1]maxx[1,1]|(xx0)(xxn)|=maxx[1,1]|(xx0(n+1))(xxn(n+1))|=12n.

Beweis.

Die zweite Identität folgt aus (6.26) mit Satz 6.18 (iv). Weiter ist bei der ersten Identität in (6.27) die Abschätzung „“ offensichtlich. Die Abschätzung „“ soll nun durch eine Widerspruchsannahme nachgewiesen werden.

Angenommen, es gibt Zahlen x0,,xn[1,1] mit

(6.28) 12n>maxx[1,1]|ω(x)|

für ω(x):=(xx0)(xxn). Also ist insbesondere

(6.29) 12n<ω(x)<12n,x[1,1].

Für das Polynom

q(x):=12nTn+1(x)ω(x)

schließt man mit (6.25) und (6.29)

[12nTn+1](y0(n+1))=12n,ω(y0(n+1))<12nq(y0(n+1))>0,[12nTn+1](y1(n+1))=12n,ω(y1(n+1))>12nq(y1(n+1))<0,[12nTn+1](y2(n+1))=12n,ω(y2(n+1))<12nq(y2(n+1))>0.

Also hat q mindestens n+1 Vorzeichenwechsel in [1,1] und gilt allgemein

q(yj(n+1))q(yj1(n+1))<0,j=1,,n+1.

Das Polynom q besitzt demnach n+1 einfache paarweise verschiedene Nullstellen in [1,1]. Nun ist sowohl Tn+1/2n als auch ω ein Polynom vom Grad n+1 und besitzen beide Funktionen den führenden Koeffizienten 1, so dass notwendigerweise qΠn gilt. Da q im Fall q0 nur höchstens n paarweise verschiedene Nullstellen haben kann, folgt q0 bzw.

12nTn+1ω,

was aber wegen Satz 6.18 (iv) und (6.29) der Annahme (6.28) widerspricht.

q.e.d.

Damit haben wir den Fall [a,b]:=[1,1] behandelt. Abschließend werden wir nun noch allgemeine Intervalle [a,b] betrachten. Dazu verwenden wir die affin-lineare Transformation

(6.30) ψ:[1,1][a,b],ψ(t):=12[a+b+(ba)t],

mit welcher der nachfolgende Satz leicht aus Satz 6.19 zu schließen ist.

Satz 6.20

Mit der Funktion ψ aus (6.30) und den xj(n+1) wie in (6.24) gilt die Optimalitätseigenschaft
minx0,,xn[a,b]maxx[a,b]|(xx0)(xxn)|
(6.31) =maxx[a,b]|(xψ(x0(n+1)))(xψ(xn(n+1)))|
(6.32) =(ba)n+122n+1.

Beweis.

Die Identität (6.32) ergibt sich mit Satz 6.19 unter Verwendung von (6.30) aus

maxx[a,b]|(xψ(x0(n+1)))(xψ(xn(n+1)))|
=maxt[1,1]|(ψ(t)ψ(x0(n+1)))(ψ(t)ψ(xn(n+1)))|
=(ba2)n+1maxt[1,1]|(tx0(n+1))(txn(n+1))|
=(ba2)n+112n=(ba)n+122n+1.

Weiter ist in (6.31) sicher die Ungleichung „“ richtig. Zum Beweis der Ungleichung „“ seien nun x0,,xn[a,b] beliebig. Dann gibt es eindeutig bestimmte Zahlen y0,,yn[1,1] mit ψ(yk)=xk für k=0,,n und mit diesen erhält man ähnlich wie im ersten Teil des Beweises

maxx[a,b]|(xx0)(xxn)|=maxt[1,1]|(ψ(t)ψ(y0))(ψ(t)ψ(yn))|
=(ba2)n+1maxt[1,1]|(ty0)(tyn)|(ba)n+122n+1.

q.e.d.

Korollar 6.21

Sei fCn+1[a,b] und pΠn das Interpolationspolynom zu den Stützpunkten (ξj,f(ξj)),j=0,1,,n mit ξj:=ψ(xj(n+1)) für ψ aus (6.30) und xj(n+1) wie in (6.24). Dann gilt für den Interpolationsfehler
(6.33) maxx[a,b]|f(x)p(x)|(ba)n+122n+1(n+1)!maxx[a,b]|f(n+1)(x)|.

Man beachte aber, dass nach dem Satz von Faber 6.16 auch bei Wahl der Tschebyscheff-Knoten die Interpolationspolynome mit wachsendem n nicht gleichmäßig auf [a,b] gegen f konvergieren müssen.

Beispiel 6.22

Gegeben sei die Funktion f(x):=2e0.75x, welche im Intervall [a,b]:=[2,0] in 5 Punkten durch ein Interpolationspolynom möglichst kleinen Grades so interpoliert werden soll, dass die maximale Schranke für den Approximationsfehler möglichst klein ausfällt. Die Stützstellen sind dann gemäß Korollar 6.21 zu wählen. Da der erste Punkt den Index 0 hat, ist hier n=4. Mit

ψ(t):=12[a+b+(ba)t]=12[2+2t]=t1

und (6.24) lauten die gesuchten Stützstellen

ξj:=ψ(xj(5)):=ψ(cos((2j+1)π2(4+1)))=cos((2j+1)π10)1,j=0,,4.

Demnach errechnet man mit ηj:=f(ξj)=2e0.75ξj

j01234ξj0.0489430.41221511.5877851.951057ηj1.927921.468120.9447330.6079320.462946

Man hat weiter für f(x):=2e0.75x

f(x):=234e34x,f(x):=2(34)2e34x,,f(5)(x):=2(322)5e34x=243512e34x

und damit

maxx[2,0]|f(5)(x)|=243512e340=2435120.4746090.48.

Für das Interpolationspolynom p4(x) zu den berechneten Stützpunkten kann man also gemäß (6.33) die folgende maximale Abweichung von f(x) auf [2,0] vorhersagen:

maxx[2,0]|f(x)p4(x)|25295!maxx[2,0]|f(5)(x)|1161200.48=0.00025.

Abschließend sei noch gesagt, dass ein Nachteil der in diesem gesamten Kapitel dargestellten Form der Interpolation ihrer großen Fehlerempfindlichkeit ist. Fehlerhafte Daten yi+δyi wirken sich nicht nur lokal bei der Stützstelle xi aus, sondern verändern den Verlauf über das ganze Intervall hinweg relativ stark. Dies wird an dem folgenden einfachen Beispiel deutlich.

Beispiel 6.23

Seien

xi:=1+ih(i=0,1,,2m),h:=1/m,
yi:=0(i=0,1,,2m),im,ym:=ε.

Dann hat man xm=0 und somit

p(x)=i=02myiLi(x)=εLm(x)=εj=0jm2mxxjxj=εj=0jm2mxxjxj.

Darstellung des Interpolationspolynoms p(x) und damit des auf f(x):=0 bezogenen Interpolationsfehlers für z. B. m=5 zeigt, dass p(x) durch „Messfehler“ ε:=0.01 und ε:=0.05 an der Stelle xm=0 sehr unterschiedlich verändert wird und zwar keineswegs nur an der Stelle xm.

Sieha auch

Seiteninformation

Diese Lernresource können Sie als Wiki2Reveal-Foliensatz darstellen.

Wiki2Reveal

Dieser Wiki2Reveal Foliensatz wurde für den Lerneinheit Kurs:Numerik I' erstellt der Link für die Wiki2Reveal-Folien wurde mit dem Wiki2Reveal-Linkgenerator erstellt.