Polynominterpolation

 
  • Unter Interpolation einer gegebenen Funktion f versteht man die Bestimmung einer "einfachen" Funktion p, deren Werte in einer gegebenen Anzahl von Stützstellen xi, i=0,...,n, mit denen von f übereinstimmen. Bei der Polynominterpolation ist diese interpolierende Funktion ein Polynom vom Grade <= n, falls n+1 paarweise verschiedene Stützstellen xi, i=0,...,n, gegeben sind.
  • Zur Bestimmung des Interpolationspolynoms gibt es mehrere Methoden. Die Form nach Lagrange wird eher in theoretischem Zusammenhang benutzt, da sie berechnungsaufwendiger ist. Das Interpolationspolynom nach Newton ist in der Praxis die bessere Variante. Beide Polynome sind identisch, da die Interpolation mit Polynomen eindeutig ist.
  • Das hier berechnete Newton'sche Interpolationspolynom wird dabei mit dem Schema der dividierten Differenzen bestimmt. Der Berechnungsaufwand ist O(n2) für die Polynomkoeffizienten und O(n) für einen Polynomwert. Der Interpolationsfehler ist
    f(n+1)(x~)/((n+1)!)*(x-x0)*...*(x-xn)
    wo x~ eine Stelle zwischen x und den xi ist und deshalb
    <= Mn+1/((n+1)!)*(b-a)n+1
    für beliebige Anordnung dieser Werte in [a,b], wo Mn+1 das Maximum der n+1-ten Ableitung von f ist. Ist diese Ableitung auf dem ganzen Intervall nach unten betragsmässig durch mn+1>0 beschränkt, dann gibt es mindestens eine Stelle x in [a,b] sodaß
    |f(x)-p(x)| >= mn+1/((n+1)!)*2*((b-a)/4)n+1
    ist, auch für die bestmögliche Anordnung der xi. Daran erkennt man, daß diese Art von Approximation auf kleinen Intervallen immer gute Resultate liefern wird, aber nicht, wenn es eine (eventuell komplexe) singuläre Stelle von f gibt, die einen Abstand < 1/(b-a) vom Intervall hat.
 

Die Eingaben

 
  • Sie haben die Möglichkeit, einen eigenen Datensatz interpolieren zu lassen oder aber Daten mit Hilfe einer Funktion erst zu generieren und diese dann zu interpolieren.
  • Für die Wahl der zu interpolierenden Funktion f gibt es die Möglichkeit, zwischen 5 vordefinierten Funktionen zu wählen oder eine eigene Funktion zu definieren. Die Eingabe dieser eigenen Funktion folgt den Konventionen der Programmiersprache FORTRAN.
  • Der Grad n der Interpolation, also der Höchstgrad des Interpolationspolynoms muß eingegeben werden. Wichtig : 1 <= n <= 50 !
  • Wenn Sie eigene Daten vorgeben, eine Liste von (x,y)-Daten.
  • Andernfalls:
  • Das Intervall, in dem die Funktion f interpoliert werden soll, muß angegeben werden.
  • Die Stützstellen können dann entweder äquidistant in diesem Intervall genommen werden,also
    a+i*(b-a)/n
    oder gemäß den transformierten Tschebyscheff-Abszissen, also
    (a+b)/2+((b-a)/2)*cos(((2*i+1)/(2*n+2))*pi)
    .
  • Sie haben die Wahl, die Polynomauswertungsformel anzuzeigen und ebenso die Tabelle der dividierten Differenzen.
 

Die Ausgaben

 
  • Bei eigenen (x,y)-Daten eine Grafik mit dem Interpolationspolynom
  • Haben Sie die Daten generieren lassen so gibt eine Grafik den Verlauf der Funktion f und eine weitere den Verlauf des Fehlers f(x) - p(x) an.
  • Falls angefordert, die Auswertungsformel des Polynoms in der Form des verallgemeinerten Hornerschemas und die Tabelle der dividierten Differenzen.
 

Fragen ?!

 
  • Bei welchen Funktionen wird der Fehler mit steigendem Grad der Interpolation kleiner und warum ?
  • Bei welchen wird er größer und warum ?
  • Wie verhält sich dies bei den Tschebyscheff-Abszissen ?
  • Was passiert bei der Interpolation von nicht differenzierbaren Funktionen ?
 

Das Eingabeformular

 
 

Zurück: Interpolation

 
Back to the top!

18.11.2010