Lagrange-Interpolation

Lagrange-Interpolation

Studium
p(x)=∑i=0nyi Li(x),Li(x)=∏j=0j≠inx−xjxi−xjp(x) = \sum_{i=0}^{n} y_i \, L_i(x), \qquad L_i(x) = \prod_{\substack{j=0 \\ j \neq i}}^{n} \frac{x - x_j}{x_i - x_j}

Voraussetzung: x0,…,xnx_0, \ldots, x_n paarweise verschieden

p(x)p(x)
Interpolationspolynom vom Grad höchstens n
xi,yix_i, y_i
Stützstellen und zugehörige Stützwerte
Li(x)L_i(x)
Lagrange-Basispolynom, 1 bei x_i und 0 bei allen anderen Stützstellen
nn
Anzahl der Stützstellen minus 1

Die Lagrange-Formel liefert das eindeutige Polynom vom Grad höchstens n durch n + 1 Punkte mit verschiedenen x-Werten.

Erklärung

Gegeben sind n+1n + 1 Punkte (xi∣yi)(x_i \mid y_i) mit paarweise verschiedenen xix_i. Dann gibt es genau ein Polynom pp vom Grad höchstens nn, das durch alle Punkte geht. Die Lagrange-Form schreibt es direkt hin.

Der Trick sind die Basispolynome LiL_i: Jedes LiL_i hat an der Stelle xix_i den Wert 11 und an allen anderen Stützstellen den Wert 00. Der Zähler sorgt für die Nullstellen, der Nenner normiert auf 11. Multipliziert man mit yiy_i und addiert, trifft pp jeden Punkt.

Für die Abweichung von einer (n+1)(n + 1)-mal stetig differenzierbaren Funktion ff mit yi=f(xi)y_i = f(x_i) gilt

f(x)−p(x)=f(n+1)(ξ)(n+1)!∏j=0n(x−xj)f(x) - p(x) = \frac{f^{(n+1)}(\xi)}{(n + 1)!} \prod_{j=0}^{n} (x - x_j)

für ein ξ\xi im kleinsten Intervall, das xx und alle Stützstellen enthält.

Die Lagrange-Form eignet sich gut für Theorie und Herleitungen, z.B. von Quadraturformeln wie der Simpsonregel. Zum Rechnen mit vielen oder neu hinzukommenden Punkten ist die Newton-Form oder die baryzentrische Form günstiger. Bei vielen äquidistanten Stützstellen schwingt das Polynom am Rand stark (Runge-Phänomen); dann sind Tschebyschow-Stützstellen oder Splines besser.

Beispiele

Polynom durch (0∣1)(0 \mid 1), (1∣3)(1 \mid 3) und (2∣7)(2 \mid 7):

L0(x)=(x−1)(x−2)(0−1)(0−2)=(x−1)(x−2)2L1(x)=(x−0)(x−2)(1−0)(1−2)=−x(x−2)L2(x)=(x−0)(x−1)(2−0)(2−1)=x(x−1)2\begin{aligned} L_0(x) &= \frac{(x - 1)(x - 2)}{(0 - 1)(0 - 2)} = \frac{(x - 1)(x - 2)}{2} \\ L_1(x) &= \frac{(x - 0)(x - 2)}{(1 - 0)(1 - 2)} = -x(x - 2) \\ L_2(x) &= \frac{(x - 0)(x - 1)}{(2 - 0)(2 - 1)} = \frac{x(x - 1)}{2} \end{aligned}p(x)=1⋅L0(x)+3⋅L1(x)+7⋅L2(x)=x2+x+1p(x) = 1 \cdot L_0(x) + 3 \cdot L_1(x) + 7 \cdot L_2(x) = x^2 + x + 1

Zwischenwert: p(1,5)=4,75p(1{,}5) = 4{,}75.

5\sqrt{5} aus den Werten 4=2\sqrt{4} = 2, 9=3\sqrt{9} = 3 und 16=4\sqrt{16} = 4:

p(5)=2⋅(5−9)(5−16)(4−9)(4−16)+3⋅(5−4)(5−16)(9−4)(9−16)+4⋅(5−4)(5−9)(16−4)(16−9)≈2,2190p(5) = 2 \cdot \frac{(5 - 9)(5 - 16)}{(4 - 9)(4 - 16)} + 3 \cdot \frac{(5 - 4)(5 - 16)}{(9 - 4)(9 - 16)} + 4 \cdot \frac{(5 - 4)(5 - 9)}{(16 - 4)(16 - 9)} \approx 2{,}2190

Der genaue Wert ist 5≈2,2361\sqrt{5} \approx 2{,}2361. Die Stützstellen liegen weit auseinander, deshalb ist die Näherung grob.

Typische Fehler

  • Im Produkt den Faktor mit j=ij = i nicht weglassen. Er wäre x−xixi−xi\frac{x - x_i}{x_i - x_i} und damit eine Division durch 00.
  • Im Nenner x−xjx - x_j statt xi−xjx_i - x_j schreiben.
  • Annehmen, mehr Stützstellen verbesserten die Näherung immer. Bei äquidistanten Stützstellen kann der Fehler am Rand wachsen.
  • Das Polynom außerhalb der Stützstellen (Extrapolation) für zuverlässig halten.

Verwandte Formeln