Grundlagen der Numerischen Mathematik. Heinrich Voß



Ähnliche Dokumente
Interpolation. Heinrich Voss. TUHH Heinrich Voss Kapitel / 49.

Numerische Verfahren

7 Rechnen mit Polynomen

Gleitkommaarithmetik und Pivotsuche bei Gauß-Elimination. Lehrstuhl für Angewandte Mathematik Wintersemester 2009/

Kevin Caldwell. 18.April 2012

Interpolationsproblem. Interpolation. Interpolationsproblem. Interpolationsproblem. Gegeben seien eine Funktion. Φ (x; a 1,...

Im Jahr t = 0 hat eine Stadt Einwohner. Nach 15 Jahren hat sich die Einwohnerzahl verdoppelt. z(t) = at + b

Lineare Gleichungssysteme

Die reellen Lösungen der kubischen Gleichung

Division Für diesen Abschnitt setzen wir voraus, dass der Koeffizientenring ein Körper ist. Betrachte das Schema

Elemente der Analysis I Kapitel 2: Einführung II, Gleichungen

13. Lineare DGL höherer Ordnung. Eine DGL heißt von n-ter Ordnung, wenn Ableitungen y, y, y,... bis zur n-ten Ableitung y (n) darin vorkommen.

50. Mathematik-Olympiade 2. Stufe (Regionalrunde) Klasse Lösung 10 Punkte

DIFFERENTIALGLEICHUNGEN

Lösungsvorschlag für die Probeklausuren und Klausuren zu Algebra für Informations- und Kommunikationstechniker bei Prof. Dr.

Definition 3.1: Ein Differentialgleichungssystem 1. Ordnung

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Die Gleichung A x = a hat für A 0 die eindeutig bestimmte Lösung. Für A=0 und a 0 existiert keine Lösung.

Grundlagen der höheren Mathematik Einige Hinweise zum Lösen von Gleichungen

Optimierung für Wirtschaftsinformatiker: Analytische Optimierung ohne Nebenbedingungen

9.2. DER SATZ ÜBER IMPLIZITE FUNKTIONEN 83

Matrizennorm. Definition 1. Sei A M r,s (R). Dann heißt A := sup die Matrixnorm. Wir wissen zunächst nicht, ob A eine reelle Zahl ist.

Lineare Gleichungssysteme

Fachschaft Mathematik und Informatik (FIM) LA I VORKURS. Herbstsemester gehalten von Harald Baum

Eigenwerte und Eigenvektoren von Matrizen

Approximation durch Taylorpolynome

1 Mathematische Grundlagen

Universität Bonn, Institut für Angewandte Mathematik. WS 2012/2013 Prüfung Angewandte Mathematik und Statistik - Agrarwiss. /ELW

8. Quadratische Reste. Reziprozitätsgesetz

Primzahlen und RSA-Verschlüsselung

11.3 Komplexe Potenzreihen und weitere komplexe Funktionen

Einführung in die Algebra

Lösungsmethoden gewöhnlicher Differentialgleichungen (Dgl.)

Mathematischer Vorbereitungskurs für Ökonomen

5 Eigenwerte und die Jordansche Normalform

Modulabschlussklausur Analysis II

LU-Zerlegung. Zusätze zum Gelben Rechenbuch. Peter Furlan. Verlag Martina Furlan. Inhaltsverzeichnis. 1 Definitionen.

Rekursionen. Georg Anegg 25. November Methoden und Techniken an Beispielen erklärt

Vorkurs Mathematik Übungen zu Differentialgleichungen

TECHNISCHE UNIVERSITÄT MÜNCHEN

!(0) + o 1("). Es ist damit möglich, dass mehrere Familien geschlossener Orbits gleichzeitig abzweigen.

Bestimmung einer ersten

Gleichungen Lösen. Ein graphischer Blick auf Gleichungen

Das Mathematik-Abitur im Saarland

Lösungen zum 3. Aufgabenblatt

Lineare Algebra und Lösung linearer zeitinvarianter Differentialgleichungssysteme

Musterlösungen zur Linearen Algebra II Blatt 5

Nichtlineare Optimierung ohne Nebenbedingungen

6.2 Scan-Konvertierung (Scan Conversion)

Höhere Mathematik 3. Apl. Prof. Dr. Norbert Knarr. Wintersemester 2015/16. FB Mathematik

Klausur Mathematik 2

Mathematik I für Wirtschaftswissenschaftler

Lineare Gleichungssysteme

Austausch- bzw. Übergangsprozesse und Gleichgewichtsverteilungen

2 3 x3 17. x k dx = x k x k+1 k +1. Mit jeder weiteren partiellen Integration reduziert sich der Grad des Faktors x n, induktiv erhalten wir also

Lineare Funktionen. 1 Proportionale Funktionen Definition Eigenschaften Steigungsdreieck 3

Computerarithmetik ( )

Optimierung für Nichtmathematiker

u + v = v + u. u + (v + w) = (u + v) + w. 0 V + v = v + 0 V = v v + u = u + v = 0 V. t (u + v) = t u + t v, (t + s) u = t u + s u.

Extrema von Funktionen in zwei Variablen

H.J. Oberle Analysis II SoSe Interpolation

Ergänzungen zur Analysis I

Informationsblatt Induktionsbeweis

Mathematik für Studierende der Biologie und des Lehramtes Chemie Wintersemester 2013/14. Auswahl vorausgesetzter Vorkenntnisse

ERGÄNZUNGEN ZUR ANALYSIS II MITTELWERTSATZ UND ANWENDUNGEN

3.3 Eigenwerte und Eigenräume, Diagonalisierung

Lineare Gleichungssysteme I (Matrixgleichungen)

Kapitel 15. Lösung linearer Gleichungssysteme

Welche Lagen können zwei Geraden (im Raum) zueinander haben? Welche Lagen kann eine Gerade bezüglich einer Ebene im Raum einnehmen?

a n := ( 1) n 3n n 2. a n := 5n4 + 2n 2 2n n + 1. a n := n 5n 2 n 2 + 7n + 8 b n := ( 1) n

Lineare Algebra und analytische Geometrie II (Unterrichtsfach)

6 Allgemeine Theorie des elektromagnetischen Feldes im Vakuum

Abiturprüfung Mathematik 2008 (Baden-Württemberg) Berufliche Gymnasien ohne TG Analysis, Aufgabe 1

Charakteristikenmethode im Beispiel

Güte von Tests. die Wahrscheinlichkeit für den Fehler 2. Art bei der Testentscheidung, nämlich. falsch ist. Darauf haben wir bereits im Kapitel über

Behörde für Bildung und Sport Abitur 2008 Lehrermaterialien zum Leistungskurs Mathematik

Taschenbuch Versuchsplanung Produkte und Prozesse optimieren

EM-Wellen. david vajda 3. Februar Zu den Physikalischen Größen innerhalb der Elektrodynamik gehören:

2.12 Potenzreihen. 1. Definitionen. 2. Berechnung POTENZREIHEN 207. Der wichtigste Spezialfall von Funktionenreihen sind Potenzreihen.

Vorkurs: Mathematik für Informatiker Steven Köhler, Anja Moldenhauer, Marcel Morisse

Maple-Skripte. A.1 Einleitung. A.2 Explizite Zweischritt-Runge-Kutta-Verfahren. Bei der Ausführung

5 Interpolation und Approximation

Korrelation (II) Korrelation und Kausalität

Übungsklausur. Bitte wählen Sie fünf Aufgaben aus! Aufgabe 1. Übungsklausur zu Mathematik I für BWL und VWL (WS 2008/09) PD Dr.

Rekursionen (Teschl/Teschl )

PD Dr. R. Schätzle Dr. A. Karlsson. Funktionentheorie II SS 2001

Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume?

3.1. Die komplexen Zahlen

Abschlussprüfung Realschule Bayern II / III: 2009 Haupttermin B 1.0 B 1.1

Mathematik für Informatiker II. Beispiellösungen zur Probeklausur. Aufgabe 1. Aufgabe 2 (5+5 Punkte) Christoph Eisinger Sommersemester 2011

1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage:

x 2 2x + = 3 + Es gibt genau ein x R mit ax + b = 0, denn es gilt

Umgekehrte Kurvendiskussion

4. Versicherungsangebot

Lineare Differentialgleichungen erster Ordnung erkennen

Ü b u n g s b l a t t 11

KAPITEL 8. Interpolation

Einführung in die Vektor- und Matrizenrechnung. Matrizen

3. Zusammenhang. 22 Andreas Gathmann

OECD Programme for International Student Assessment PISA Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland

Transkript:

Grundlagen der Numerischen Mathematik Heinrich Voß Technische Universität Hamburg Harburg Arbeitsbereich Mathematik 2004

2

Inhaltsverzeichnis 1 Einleitung 1 1.1 Zahlendarstellung............................ 4 1.2 Rundungsfehler und Gleitpunktrechnung............... 5 2 Interpolation 8 2.1 Problemstellung............................. 8 2.2 Polynominterpolation.......................... 10 2.2.1 Lagrangesche Interpolationsformel............... 10 2.2.2 Die Newtonsche Interpolationsformel............. 14 2.2.3 Fehlerbetrachtungen...................... 18 2.2.4 Hermite Interpolation...................... 24 2.3 Spline Interpolation........................... 26 2.3.1 Stückweise lineare Funktionen................. 27 2.3.2 Kubische Hermite Splines................... 29 2.3.3 Kubische Splines........................ 31 2.4 Bezierkurven.............................. 40 3

4 INHALTSVERZEICHNIS 3 Numerische Integration 45 3.1 Konstruktion von Quadraturformeln................. 45 3.2 Fehler von Quadraturformeln..................... 51 3.3 Romberg Verfahren........................... 56 3.4 Quadraturformeln von Gauß...................... 63 3.5 Adaptive Quadratur.......................... 77 3.6 Numerische Differentiation....................... 87 4 Lineare Systeme 93 4.1 Zerlegung regulärer Matrizen...................... 93 4.2 Modifikationen des Gaußschen Verfahrens............... 99 4.3 Bandmatrizen.............................. 108 4.4 Störungen linearer Systeme...................... 111 4.5 Lineare Systeme mit spezieller Struktur................ 119 4.5.1 Vandermonde Systeme..................... 120 4.5.2 Schnelle Fourier Transformation................ 123 4.5.3 Toeplitz Matrizen........................ 125 4.6 Software für Lineare Gleichungssysteme................ 130 5 Lineare Ausgleichsprobleme 132 5.1 Normalgleichungen........................... 132 5.2 Orthogonale Zerlegung von Matrizen................. 133 5.3 Singulärwertzerlegung......................... 142 5.4 Pseudoinverse.............................. 149 5.5 Störung von Ausgleichsproblemen................... 153 5.6 Regularisierung............................. 155

INHALTSVERZEICHNIS 5 6 Nichtsymmetrische Eigenwertaufgaben 161 6.1 Vorbetrachtungen............................ 161 6.2 Störungssätze.............................. 166 6.3 Potenzmethode............................. 174 6.3.1 Potenzmethode; von Mises Iteration.............. 175 6.3.2 Inverse Iteration........................ 178 6.3.3 Deflation............................. 181 6.3.4 Unterraum Iteration...................... 183 6.4 Der QR Algorithmus.......................... 185 6.4.1 Beschleunigung des QR Algorithmus, explizite Shifts.... 192 6.4.2 Implizite Shifts......................... 198 6.5 Der QZ Algorithmus.......................... 203 7 Symmetrische Eigenwertaufgaben 210 7.1 Charakterisierung von Eigenwerten.................. 210 7.2 QR Algorithmus............................ 218 7.3 Bisektion................................. 221 7.4 Rayleigh Quotienten Iteration..................... 224 7.5 Divide and Conquer Verfahren.................... 226 7.6 Jacobi Verfahren............................ 235 7.7 Berechnung der Singulärwertzerlegung................ 239 7.8 Allgemeine Eigenwertaufgaben..................... 246

8 Nichtlineare Gleichungssysteme 248 8.1 Fixpunktsatz für kontrahierende Abbildungen............ 248 8.2 Nullstellen reeller Funktionen..................... 256 8.2.1 Newton Verfahren........................ 256 8.2.2 Einschließende Verfahren.................... 266 8.3 Newton Verfahren für Systeme..................... 272 8.4 Bairstow Verfahren........................... 281 8.5 Newton ähnliche Verfahren....................... 284 8.6 Quasi-Newton Verfahren........................ 289 8.7 Homotopieverfahren.......................... 299 8.8 Nichtlineare Ausgleichsprobleme.................... 305 Literaturverzeichnis 310

Kapitel 1 Einleitung Aufgabe der Numerischen Mathematik ist, Algorithmen (d.h. Rechenvorschriften) für die näherungsweise numerische Lösung mathematischer Probleme der Naturwissenschaften, Technik, Ökonomie u.s.w. bereitzustellen und zu diskutieren. Gesichtspunkte bei der Bewertung eines Algorithmus (und beim Vergleich von Algorithmen) sind der Aufwand (z.b. Zahl der Operationen), Speicherplatzbedarf und eine Fehleranalyse. Man unterscheidet drei Typen von Fehlern nach ihren Quellen: 1. Datenfehler: Die Eingangsdaten einer Aufgabe können fehlerhaft sein, wenn sie etwa aus vorhergehenden Rechnungen, physikalischen Messungen oder empirischen Untersuchungen stammen. 2. Verfahrensfehler: Dies sind Fehler, die dadurch entstehen, dass man ein Problem diskretisiert. (z.b. eine Differentialgleichung durch eine Differenzengleichung ersetzt) oder ein Iterationsverfahren nach endlich vielen Schritten abbricht. 3. Rundungsfehler: Bei der Ausführung der Rechenoperationen auf einer Rechenanlage entstehen Fehler, da das Ergebnis (aber auch schon alle Zwischenergebnisse) nur im Rahmen eines begrenzten Zahlbereichs (sog. Maschinenzahlen) dargestellt werden kann, also gerundet werden muss. Die Frage, wie sich Datenfehler auf die Lösung einer Aufgabe auswirken, nennt man das Konditionsproblem der Aufgabe.

2 KAPITEL 1. EINLEITUNG Bewirken kleine Eingangsfehler auch nur kleine Ergebnisfehler, so nennt man das Problem gut konditioniert, anderenfalls schlecht konditioniert. Die Kondition eines Problems hängt nicht nur von der Aufgabenstellung (z.b. Lösung eines linearen Gleichungssystems ), sondern auch von den Eingangsdaten ab (z.b. Koeffizienten der Matrix). Beispiel 1.1. Das lineare Gleichungssystem ( ( ) ( 1 a x 1 =, 0 1) y 0) a IR (1.1) besitzt die Lösung x 0 = 1, y 0 = 0. Das gestörte Gleichungssystem ( ( ) 1 a x 0 1) y = ( 1 δ) hat die Lösung x δ = 1 δa, y δ = δ. Damit gilt ( ) x0 y 0 ( ) xδ y δ = δ ( ) a. 1 Änderungen der rechten Seite (1 0) T in der zweiten Komponente werden also mit dem Faktor 1 + a 2 (bzgl. der Euklidischen Norm) verstärkt. Damit ist das Problem für kleine a gut und für große a schlecht konditioniert. Ein numerisches Verfahren heißt gut konditioniert (numerisch stabil), wenn die gelieferte Lösung eines gegebenen Problems die exakte Lösung eines Problems ist, das aus dem ursprünglichen Problem durch geringe Änderung der Eingangsdaten hervorgeht. Anderenfalls heißt das numerische Verfahren schlecht konditioniert (oder numerisch instabil). Beispiel 1.2. Das Integral 1 0 x 20 10 + x dx kann auf folgende Weise berechnet werden: Für y n := 1 0 x n 10 + x dx

3 Tabelle 1.1: Rekursion n vorwärts rückwärts 0 9.53101798043249E 0002 9.53101798043249E 0002 1 4.68982019567514E 0002 4.68982019567514E 0002 2 3.10179804324860E 0002 3.10179804324860E 0002 3 2.31535290084733E 0002 2.31535290084733E 0002 4 1.84647099152673E 0002 1.84647099152671E 0002 5 1.53529008473272E 0002 1.53529008473289E 0002 6 1.31376581933944E 0002 1.31376581933773E 0002 7 1.14805609231986E 0002 1.14805609233700E 0002 8 1.01943907680135E 0002 1.01943907663000E 0002 9 9.16720343097581E 0003 9.16720344811137E 0003 10 8.32796569024192E 0003 8.32796551888631E 0003 11 7.62943400667172E 0003 7.62943572022779E 0003 12 7.03899326661614E 0003 7.03897613105546E 0003 13 6.53314425691553E 0003 6.53331561252233E 0003 14 6.09712885941609E 0003 6.09541530334817E 0003 15 5.69537807250574E 0003 5.71251363318499E 0003 16 5.54621927494255E 0003 5.37486366815006E 0003 17 3.36133666233920E 0003 5.07489273026414E 0003 18 2.19421889321635E 0002 4.80662825291418E 0003 19 1.66790310374267E 0001 4.56529641822660E 0003 20 1.71790310374267E + 0000 4.34703581773402E 0003 21 4.14868944170746E 0003 22 3.96765103747089E 0003 23 3.80175049485636E 0003 24 3.64916171810310E 0003 25 3.50838281896903E 0003 26 3.37771027184820E 0003 27 3.25993431855501E 0003 28 3.11494252873563E 0003 29 3.33333333333333E 0003 30 0.00000000000000E + 0000 gilt y n + 10y n 1 = y 0 = 1 0 1 0 x n + 10x n 1 dx = x + 10 dx 10 + x = ln(1.1). 1 0 x n 1 dx = 1 n, (1.2) Wertet man die Differenzenformel y n = 1 n 10y n 1 erhält man die Werte der Tabelle 1.1. für n = 1,...,20 aus, so Obwohl das Problem, das Integral zu berechnen, gut konditioniert ist, erhält man ein unbrauchbares Resultat. Das Verfahren ist also instabil. Löst man (1.2) nach y n 1 auf: ( ) 1 y n 1 = 0.1 n y n

4 KAPITEL 1. EINLEITUNG und startet man mit der groben Näherung y 30 = 0, so erhält man y 20,...,y 0 mit einer Genauigkeit von wenigstens 10 gültigen Stellen. 1.1 Zahlendarstellung Üblicherweise stellt man Zahlen im Dezimalsystem dar, d.h. eine reelle Zahl x wird durch die Koeffizienten α i der Dezimaldarstellung von x festgelegt: x = ± ( α n 10 n + α n 1 10 n 1 +... + α 0 10 0 + α 1 10 1 +... ) mit α i {0, 1,...,9}. Abgekürzt schreibt man α n α n 1...α 0.α 1 α 2.... Aus technischen Gründen arbeiten digitale Rechenanlagen im Dualsystem (Basis: 2) oder Hexadezimalsystem (Basis: 16). Wir bleiben bei der Basis 10. Für die interne Darstellung einer Zahl in einem Rechner steht nur eine feste Anzahl t (=Wortlänge) von Dezimalstellen zur Verfügung. Diese Wortlänge wird auf zwei Arten zur Darstellung einer Zahl benutzt: Bei der Festpunktdarstellung sind n 1 nach dem Dezimalpunkt, festgelegt: und n 2, die Zahl der Stellen vor und Beispiel 1.3. t = 8,n 1 = 3,n 2 = 5 30.411 030 41100 0.0023 000 00230. Wegen des verhältnismäßig kleinen Bereichs darstellbarer Zahlen wird mit Festpunktzahlen nur dann gearbeitet, wenn keine zu großen Unterschiede in der Größenordnung der auftretenden Zahlen bestehen (kaufmännisch-organisatorischer Bereich: Stückzahlen: n 2 = 0, Preise: n 2 = 2).

1.2. RUNDUNGSFEHLER UND GLEITPUNKTRECHNUNG 5 Schreibt man x in der Gleitpunktdarstellung, so liegt die Mantissenlänge t = n 1 + n 2 fest ; die Lage des Dezimalpunktes wird durch einen Exponenten markiert: x = ± ( α n1 1 10 n 1 1 + α n1 2 10 n 1 2 +... + α 0 10 0 + α 1 10 1 +... + α n2 10 n 2). = ± ( α n1 1 10 1 + α n1 2 10 2 +... + α n2 10 (n 1+n 2 ) ) 10 n 1 = ±0 α n1 1α n1 2...α n2 10 n 1, n 1 : Exponent } {{ } Mantisse Beispiel 1.4. t = 4 0.0023 0.0023 10 0 oder 0.2300 10 2. Die Gleitpunktdarstellung einer Zahl ist i.a. nicht eindeutig. Sie heißt normalisiert, falls x = 0 oder für die erste Ziffer α 1 0 gilt. Wir betrachten von nun an nur noch normalisierte Gleitpunktzahlen. 1.2 Rundungsfehler und Gleitpunktrechnung Die Menge A der in einer Maschine darstellbaren Zahlen ist endlich (endliche Mantissenlänge t, und für die Darstellung des Exponenten stehen auch nur e < viele Stellen zur Verfügung). Für ein gegebenes x IR bezeichnen wir mit fl(x) A eine Maschinenzahl, durch die x am besten approximiert wird, d.h. fl(x) x x a für alle a A. Diese Vorschrift ist noch nicht eindeutig (wird 0.5 auf- oder abgerundet?). Wir setzen fest: Sei x IR mit der normalisierten Gleitpunktdarstellung x = ±0.α 1 α 2...α t α t+1... 10 n, dann wird x durch die folgende Vorschrift gerundet: ±0.α 1 α 2...α t 10 n, falls 0 α t+1 4 fl(x) = ±(0.α 1 α 2...α t + 10 t ) 10 n, falls 5 α t+1 9.

6 KAPITEL 1. EINLEITUNG Für den absoluten Fehler gilt x fl(x) 1 2 10n t und für den relativen Fehler x fl(x) x 1 2 10n t 10 n+1 = 5 10 t (α 1 0!). Mit der Abkürzung εps = 5 10 t (Maschinengenauigkeit) gilt also fl(x) = (1 + ε)x, ε εps. (1.3) fl(x) ist nicht stets eine Maschinenzahl, da nicht beliebig große oder kleine Zahlen dargestellt werden können: Beispiel 1.5. (t = 4, e = 2) fl(0.99997 10 99) = 0.1000 10 100 A (Exponentenüberlauf) fl(0.01234 10 99) = 0.1234 10 100 / A (Exponentenunterlauf). Setzt man im zweiten Fall fl(0.01234 10 99) = 0 oder 0.0123 10 99, so gilt zwar fl (...) A, aber es ist nicht mehr (1.3) erfüllt. Da bei den heutigen Anlagen e genügend groß ist, tritt Exponentenüberlauf oder -unterlauf nur sehr selten auf. Wir nehmen daher für das Weitere e = an, so dass bei der Rundung (1.3) gilt. Offensichtlich gilt x,y A x ± y, x y, x/y A. Statt der Operationen +,,,/ sind daher auf dem Rechner als Ersatz die Gleitpunktoperationen +,,,/ realisiert, die man mit Hilfe von fl so beschreiben kann: (x,y A) x + y := fl(x + y), x y := fl(x y), y y := fl(x y), x/ y := fl(x/y) (In der Maschine wird die Operation exakt ausgeführt, danach wird gerundet). Wegen (1.3) gilt x y = (x y)(1 + ε), ε εps, für jede der Operationen {+,,,/}. (Der relative Fehler hat also die Größenordnung der Maschinengenauigkeit).

1.2. RUNDUNGSFEHLER UND GLEITPUNKTRECHNUNG 7 Waren aber x und y keine Maschinenzahlen, so wird zunächst gerundet und dann fl(x) fl(y) berechnet. Hierfür gilt wegen fl(x) = (1 + ε x )x, fl(y) = (1 + ε y )y fl(x) + fl(y) (x + y) x + y = x x + y ε x + y x + y ε y. Haben also bei der Addition die Summanden entgegengesetztes Vorzeichen, gleichen Exponenten und gleich führende Ziffern der Mantisse, so ist x + y klein gegen x und gegen y und der relative Fehler wird verstärkt. (Man spricht dann von Auslöschung). Beispiel 1.6. t = 6, x = 1234.567, y = 1234.60. Es gilt aber (fl(x) + fl(y)) (x + y) x + y = 0.03 ( 0.033) 0.033 = 1 11, fl(x) x ε x = x = 0.003 1234.567 2.5 10 6,ε y = 0. Die Operationen und / sind wegen fl(x) fl(y) x y x y = ε x + ε y + ε x ε y ε x + ε y für die Fehlerfortpflanzung in einer Rechnung unkritisch.

Kapitel 2 Interpolation 2.1 Problemstellung Wir betrachten in diesem Kapitel das Interpolationsproblem: Gegeben seien eine Funktion Φ (x;a 1,...,a n ) : IR I IR, die auf einem Intervall I erklärt ist und von n Parametern a 1,...,a n abhängt, paarweise verschiedene Knoten (oder Stützstellen) x 1,...,x m I, Vielfachheiten r 1,...,r m IN mit m r i = n und Werte y ij IR, i = 1,...,m, j = 0,...,r i 1. Bestimme die Parameter a 1,...,a n so, dass die Interpolationsbedingungen Φ (j) (x i ;a 1,...,a n ) = y ij, i = 1,...,m,j = 0,...,r i 1, erfüllt sind. Ist Φ linear in den Parametern a i, d.h. n Φ (x;a 1,...,a n ) = a i φ i (x), i=1 so heißt das Interpolationsproblem linear. Gilt r j = 1 für alle j, so spricht man von Lagrange Interpolation, anderenfalls von Hermite Interpolation. i=1

2.1. PROBLEMSTELLUNG 9 Bemerkung 2.1. Bei der Lagrange Interpolation werden nur Funktionswerte, aber keine Ableitungen vorgeschrieben. Man beachte, dass bei der Hermite Interpolation alle Ableitungen der Ordnung 0,...,r i 1 vorgeschrieben werden. Lässt man Lücken bei den vorgeschriebenen Ableitungen zu, so spricht man von einem Hermite Birkhoff Interpolationsproblem. Beispiel 2.2. 1. Polynominterpolation Φ (x;a 0,...,a n ) = 2. trigonometrische Interpolation Φ (x;a 0,...,a 2n ) = a 0 + 3. rationale Interpolation n a j x j j=0 n (a 2j 1 sin(jx) + a 2j cos(jx)) j=1 Φ (x;a 0,...,a n,b 0,...b p ) = n a i x i i=0. p b j x j j=0 4. Spline Interpolation Φ (x;a 1,...,a n ) = n a i φ i (x), i=1 wobei die φ i auf Teilintervallen von I mit Polynomen übereinstimmen. Wir werden uns nur mit der Polynominterpolation und der Interpolation mit Splines beschäftigen. Die trigonometrische und die rationale Interpolation werden ausführlich in Braess [13], Stoer [101] und Schwarz [93] behandelt. Man benötigt die Interpolation zur 1. Bestimmung von Zwischenwerten aus Funktionstafeln (was seit der Verbreitung von elektronischen Taschenrechnern an Bedeutung verloren hat), 2. Herleitung von Formeln zur numerischen Integration, 3. Konvergenzbeschleunigung durch Extrapolation, 4. Numerische Behandlung von gewöhnlichen Differentialgleichungen.

10 KAPITEL 2. INTERPOLATION 2.2 Polynominterpolation Wir betrachten in diesem Abschnitt die Interpolation mit Polynomen. Dabei behandeln wir vor allem das Lagrangesche Interpolationsproblem. Gegeben seien n+1 verschiedene Knoten x j IR, j = 0,...,n, und n+1 nicht notwendig verschiedene Werte y j IR. Gesucht ist ein Polynom p vom Höchstgrade n, so dass gilt p(x j ) = y j für j = 0,...,n. Nur im letzten Unterabschnitt gehen wir kurz auf einen Spezialfall der Hermite Interpolation ein. Bemerkung 2.3. Die Beweise werden zeigen, dass die Existenz- und Eindeutigkeitsresultate und die Algorithmen zur Berechnung des Interpolationspolynoms ohne Änderungen für komplexe Knoten x j und komplexe Daten y j richtig bleiben. Nur die Fehlerabschätzungen beziehen sich ausschließlich auf reelle Probleme. Wir bezeichnen mit Π n die Menge der Polynome von Höchstgrad n (mit reellen oder komplexen Koeffizienten). 2.2.1 Lagrangesche Interpolationsformel Satz 2.4. (Existenz und Eindeutigkeit) Zu beliebigen n + 1 Daten (x j,y j ) IR 2, j = 0,...,n, mit x j x k für j k gibt es genau ein Polynom p Π n mit p(x j ) = y j, j = 0,...,n. (2.1) Beweis: Eindeutigkeit: Angenommen es gibt zwei Polynome p 1,p 2 Π n mit p k (x j ) = y j, j = 0,...,n, k = 1, 2. Dann besitzt das Polynom p := p 1 p 2 Π n die n + 1 Nullstellen x 0,...,x n, und daher folgt aus dem Fundamentalsatz der Algebra p 0. Existenz: Die Existenz zeigen wir konstruktiv. Es sei / n n l j (x) = (x x i ) i=0 i j (x j x i ), j = 0,...,n. (2.2) i=0 i j

2.2. POLYNOMINTERPOLATION 11 Dann gilt l j Π n und l j (x k ) = δ jk für j,k = 0,...,n, und daher erfüllt n p(x) := y j l j (x) Π n (2.3) j=0 die Interpolationsbedingungen (2.1). Definition 2.5. Die Darstellung (2.2), (2.3) des Interpolationspolynoms heißt Lagrangesche Interpolationsformel. Bemerkung 2.6. Prinzipiell kann man bei dem Ansatz p(x) = n a j x j die Koeffizienten a j aus dem linearen Gleichungssystem n a j x j k = y k, k = 0,...,n (2.4) j=0 berechnen. Dies erfordert mit dem in Abschnitt 4.5 gegebenen Algorithmus für Vandermondesche Systeme 2.5n 2 flops. Weniger Aufwand erfordern die folgenden Algorithmen. j=0 Bemerkung 2.7. MATLAB stellt die Funktionen p=polyfit(x,y,n) zur Verfügung, durch die die Koeffizienten p des Ausgleichspolynoms vom Grad n zu den Daten (x,y) bestimmt werden. Ist dimx = n + 1, so erhält man das Interpolationspolynom. Mit y=polyval(p,x) kann man das Polynom dann an der Stelle x (oder den Stellen x(j), falls x ein Vektor ist) auswerten. Verwendet man die Lagrangesche Interpolationsformel (2.3) naiv, so benötigt man zur Auswertung von p an einer festen Stelle ˆx zur Bereitstellung der l j (ˆx) aus (2.2) jeweils 4n flops (berechne (ˆx x i )/(x j x i ) für i = 0,...,n, i j, und das Produkt dieser Quotienten) und zur Auswertung von (2.3) weitere 2n flops, zusammen also 4n 2 + O(n) flops. Wir leiten nun eine Rechentechnik her, mit der dieser Aufwand wesentlich reduziert werden kann. Dazu schreiben wir (2.3) um in n 1 n 1 p(ˆx) = y j ˆx x j x j x i j=0 Hierin sind die Stützkoeffizienten λ j := n i=0 i j i=0 i j n (ˆx x i ). (2.5) i=0 1 x j x i, j = 0,...,n, (2.6)

12 KAPITEL 2. INTERPOLATION nur von den Knoten x 0,...,x n abhängig und unabhängig von der Stelle ˆx, an der das Interpolationspolynom p ausgewertet werden soll. Der Faktor n γ := (ˆx x i ) i=0 hängt zwar von ˆx ab, ist aber unabhängig von den zu interpolierenden Daten y j. Für das Interpolationspolynom q Π n mit q(x j ) = 1 für j = 0,...,n gilt wegen der Eindeutigkeit sicher q(x) 1, und damit insbesondere d.h. n λ q(ˆx) = 1 = j j=0 ˆx x j γ = 1 / n j=0 λ j ˆx x j. n (ˆx x i ), i=0 Damit erhält die Lagrangesche Interpolationsformel die Gestalt n λ j p(x) = y j x x j j=0 / n j=0 λ j x x j. (2.7) Sind also die Stützkoeffizienten λ j bekannt (mit (2.6) benötigt man für ihre Berechnung offenbar 2n 2 + O(n) flops) so kann man das Interpolationspolynom p an jeder gewünschten Stelle ˆx auswerten durch µ j := λ j ˆx x j, j = 0,...,n, und / n n p(ˆx) = y j µ j µ j. j=0 j=0 Jede Auswertung erfordert also zusätzliche 5n flops. Den Aufwand zur Berechnung der Stützkoeffizienten λ j kann man verringern, indem man sie rekursiv berechnet. Es seien die Stützkoeffizienten λ (n 1) j für das Interpolationsproblem mit den n paarweise verschiedenen Knoten x 0,...,x n 1 bekannt, und es sei x n x j, j = 0,...,n des Inter- 1, ein zusätzlicher Knoten. Dann gilt sicher für die Stützkoeffizienten λ (n) j polationsproblems mit den Knoten x 0,...,x n 1,x n λ (n) j Den noch fehlenden Stützkoeffizienten λ (n) n = λ(n 1) j, j = 0,...,n 1. x j x n erhalten wir aus

2.2. POLYNOMINTERPOLATION 13 Lemma 2.8. Es seien λ (n) j, j = 0,..., n, die Stützkoeffizienten zu den (paarweise verschiedenen) Knoten x j, j = 0,...,n. Dann gilt für n 1 n j=0 λ (n) j = 0. Beweis: Wir betrachten wieder das Interpolationspolynom q(x) =: n k=0 α k x k mit den Daten y j = 1 für j = 0,...,n. Dann gilt q(x) = d.h. für den führenden Koeffizienten n j=0 α n = λ (n) j n j=0 n (x x i ), i=0 i j λ (n) j. Da andererseits q(x) 1 ist, folgt für n 1 die Behauptung 0 = α n = n j=0 λ (n) j. Unsere Überlegungen zeigen, dass man die λ (n) j =: l[j] mit dem folgenden Programmteil berechnen kann: Algorithmus 2.9. l(0) = 1; for k = 1 : n l(k) = 0; for i = 0 : k-1 l(i) = l(i)/(x(i) - x(k)); l(k) = l(k) - l(i); end end Mit diesem Algorithmus erhält man alle Stützkoeffizienten mit flops. n k=1 3k = 3 n(n + 1) 2

14 KAPITEL 2. INTERPOLATION 2.2.2 Die Newtonsche Interpolationsformel Wir werden nun eine Form des Interpolationspolynoms herleiten, bei der ebenfalls 1.5n(n + 1) flops zur Vorbereitung (entsprechend der Bereitstellung der Stützkoeffizienten) benötigt werden, die Auswertung an einer festen Stelle dann aber nur noch 3n flops erfordert. Wir behandeln dazu zunächst die folgende Frage: Das Polynom p n (x) Π n interpoliere die Daten (x j,y j ) IR 2,j = 0,...,n. Wir nehmen ein weiteres Zahlenpaar (x n+1,y n+1 ) IR 2, x n+1 x j, j = 0,...,n, hinzu. Kann man dann das Interpolationspolynom p n+1 (x) Π n+1 zu den Daten (x j,y j ), j = 0,...,n + 1, schreiben als p n+1 (x) = p n (x) + f(x) mit einer leicht berechenbaren Funktion f(x)? Wegen p n (x) Π n, p n+1 (x) Π n+1 gilt f(x) = p n+1 (x) p n (x) Π n+1, und wegen y j = p n+1 (x j ) = p n (x j ) + f(x j ) = y j + f(x j ), j = 0,...,n, gilt f(x j ) = 0, j = 0,...,n. Daher hat f(x) mit einem a IR die Gestalt n f(x) = a (x x j ). j=0 a kann man aus der Interpolationsbedingung ermitteln: n y n+1 = p n+1 (x n+1 ) = p n (x n+1 ) + a (x n+1 x j ) j=0 a = y n+1 p n (x n+1 ) (x n+1 x 0 )... (x n+1 x n ). Wir wollen nun ein Verfahren zur Berechnung der Zahl a, des führenden Koeffizienten des Interpolationspolynoms, herleiten. Grundlage dafür ist Satz 2.10. (Aitken Lemma) Es sei zu (x j,y j ) IR 2, j = 0,...,n, x i x j für i j, das Interpolationspolynom gesucht. Seien p [0] Π n 1 durch die Interpolationsbedingungen p [0] (x j ) = y j, j = 0,...,n 1, festgelegt, und sei p [n] Π n 1 definiert durch p [n] (x j ) = y j, j = 1,...,n. Dann gilt p(x) = p [0](x)(x x n ) p [n] (x)(x x 0 ) x 0 x n.

2.2. POLYNOMINTERPOLATION 15 Beweis: Das angegebene Polynom erfüllt offenbar die Interpolationsbedingungen p(x j ) = y j, j = 0,...,n. Für 0 i j n sei nun p ij Π j i das Interpolationspolynom, das p ij (x k ) = y k, k = i,...,j, erfüllt. Dann folgt aus dem Aitken Lemma, dass die p ij rekursiv berechnet werden können durch p ij (x) = p i,j 1(x)(x x j ) p i+1,j (x)(x x i ) x i x j (2.8) = p i+1,j (x) + (p i+1,j (x) p i,j 1 (x)) x x j x j x i Diese Rekursionsformel kann verwendet werden, um den Wert des Interpolationspolynoms an einer festen Stelle x (nicht das Polynom selbst) zu berechnen: Algorithmus 2.11. (Algorithmus von Neville und Aitken) for j = 0 : n t(j) = y(j); xj = x - x(j); if j > 0 for i = j-1 : -1 : 0 t(i) = t(i+1) + (t(i+1) - t(i))*xj / (x(j) - x(i)); end end end p = t(0); Bemerkung 2.12. Mit dem Algorithmus von Neville und Aitken wird das linke Tableau aufgestellt, das die Werte P ij der interpolierenden Polynome p ij an der festen Stelle x enthält. Das rechte Tableau enthält die Reihenfolge, in der die P ij berechnet werden. x 0 y 0 = P 00 x 1 y 1 = P 11 x 2 y 2 = P 22 x 3 y 3 = P 33 x 4 y 4 = P 44 P 01 P 12 P 23 P 34 P 02 P 13 P 24 P 03 P 14 P 04 = p(x) 1 2 4 7 3 5 8 6 9 10

16 KAPITEL 2. INTERPOLATION Bemerkung 2.13. Zur Auswertung des Interpolationspolynoms p an einer festen Stelle benötigt man mit dem Algorithmus von Neville und Aitken offenbar 5 2 n2 +O(n) flops. Man erhält aus der Rekursionsformel (2.8) eine weitere Darstellung des Interpolationspolynoms, die Newtonsche Interpolationsformel. Da a in n 1 p n (x) = p n 1 (x) + a (x x j ) der Koeffizient bei der höchsten Potenz x n in p n (x) ist, liest man aus (2.8) sofort ab: j=0 Satz 2.14. (Newtonsche Interpolationsformel) Das Interpolationspolynom p Π n aus (2.1) hat die Gestalt n j 1 p(x) = [x 0,...,x j ] (x x k ), (2.9) j=0 k=0 wobei die dividierten Differenzen [x 0,...,x j ] rekursiv definiert sind durch [x j ] := y j, [x k,...,x j ] := [x k+1,...,x j ] [x k,...,x j 1 ] x j x k, j > k 0. (2.10) Die dividierten Differenzen c j := [x 0,...,x j ] kann man mit folgendem Algorithmus aus den Wertepaaren (x j,y j ) berechnen: Algorithmus 2.15. (Dividierte Differenzen) for k = 0 : n t(k) = y(k); if k > 0 for i = k-1 : -1 : 0 t(i) = (t(i+1) - t(i)) / (x(k) - x(i)); end end c(k) = t(0); end Danach kann man das Interpolationspolynom an jeder gewünschten Stelle x0 mit einem Horner-ähnlichen Schema auswerten:

2.2. POLYNOMINTERPOLATION 17 Algorithmus 2.16. p = c(n); for i = n-1 : -1 : 0 p = p * (x0 - x(i)) + c(i); end Bemerkung 2.17. Die t(k) in dem Algorithmus enthalten die folgenden dividierten Differenzen, die in derselben Reihenfolge wie im Algorithmus von Neville und Aitken berechnet werden: t(0) = y 0 t(1) = y 1 t(2) = y 2 t(3) = y 3 t(0) = [x 0,x 1 ] t(1) = [x 1,x 2 ] t(2) = [x 2,x 3 ] t(0) = [x 0,x 1,x 2 ] t(1) = [x 1,x 2,x 3 ] t(0) = [x 0,x 1,x 2,x 3 ] Bemerkung 2.18. Man benötigt (wie für die Berechnung der Stützkoeffizienten bei der Lagrangeschen Interpolationsformel) 3 n (n + 1) flops zur Berechnung aller 2 c j, zur Auswertung von p an einer festen Stelle ˆx zusätzlich 3n flops. Die Newtonsche Interpolationsformel liefert also die effizienteste Methode zur Auswertung des Interpolationspolynoms. Selbst wenn man nur an einem Funktionswert interessiert ist, ist der Aufwand geringer als mit dem Algorithmus von Neville und Aitken. Wegen seiner einfachen Gestalt wird der Algorithmus von Neville und Aitken dennoch in der Praxis verwendet. Bemerkung 2.19. Natürlich erhält man für jede Anordnung der Knoten x i (bei rundungsfehlerfreier Rechnung) dasselbe Interpolationspolynom p n (x). Will man p n (x) nur an einer Stelle x (oder in deren Nähe ) auswerten, so kann man den Rundungsfehlereinfluss klein halten, indem man die Knoten so nummeriert, dass gilt x x i x x i+1, i = 0,...,n 1.

18 KAPITEL 2. INTERPOLATION x 10 3 1 0.5 0 0.5 1 1 0.8 0.6 0.4 0.2 0 0.2 0.4 0.6 0.8 1 Abbildung 2.1: Fehlerkurve (äquidistante Knoten) 2.2.3 Fehlerbetrachtungen Wir behandeln nun die Frage, wie gut eine gegebene, auf einem reellen Intervall definierte Funktion f durch das Interpolationspolynom zu vorgegebenen Knoten x i in I approximiert wird (es sei also y i = f(x i )). Beispiel 2.20. Gegeben sei auf dem Intervall I = [ 1, 1] f(x) = sinπx und p 8 (x) Π 8, das Interpolationspolynom zu den Knoten x i = 1 + i 0.25, i = 0,...,8. Dann erhält man die Fehlerkurve aus Abbildung 2.1. Das Interpolationspolynom liefert also am Rande des Intervalls eine ziemlich schlechte Approximation für f, obwohl f sehr gutartig ist (beliebig oft differenzierbar). Das gezeichnete Verhalten ist typisch für die Polynominterpolation mit äquidistanten Knoten bei größerem n. Eine gewisse Erklärung hierfür gibt Satz 2.21. Sei f C n+1 [a,b], seien x j [a,b], j = 0,...,n, paarweise verschiedene Knoten, und sei p Π n das durch p(x j ) = f(x j ), j = 0,...,n, bestimmte Interpolationspolynom. Dann gilt: Zu jedem x [a,b] existiert ξ = ξ(x) aus dem kleinsten Intervall I (x,x 0,...,x n ), das alle x j und x enthält, so dass f(x) p(x) = ω(x) (n + 1)! f(n+1) (ξ), (2.11)

2.2. POLYNOMINTERPOLATION 19 gilt mit n ω(x) = (x x i ). (2.12) i=0 Bemerkung 2.22. ω hat für äquidistante Knoten x j die Gestalt von f p 8 der Skizze aus Abbildung 2.1. Beweis: Für x = x j, j = 0,...,n, ist die Aussage trivial. Für festes x x j betrachten wir die Funktion F(z) := f(z) p(z) αω(z) (2.13) und bestimmen α IR so, dass F(x) = 0 gilt. Dann besitzt F in I (x,x 0,...,x n ) wenigstens n + 2 Nullstellen. Nach dem Satz von Rolle besitzt F dort wenigstens n + 1 Nullstellen, F wenigstens n Nullstellen,... Schließlich hat F (n+1) mindestens eine Nullstelle ξ I (x,x 0,...,x n ). Wegen p Π n erhält man aus (2.13) F (n+1) (ξ) = f (n+1) (ξ) 0 α (n + 1)! = 0. Hiermit folgt wegen F(x) = 0 aus (2.13) die Behauptung. Bemerkung 2.23. Aus Satz 2.21. erhält man die folgende Abschätzung für die Güte der Approximation einer Funktion durch das Interpolationspolynom f p := max f(x) p(x) K(f) x [a,b] (n + 1)! ω, (2.14) wobei K(f) = f (n+1). Bemerkung 2.24. Man erhält ferner aus Satz 2.21. eine Darstellung der dividierten Differenzen. Nimmt man im Newtonschen Interpolationspolynom in Satz 2.14. x als weitere Stützstelle mit dem Wert f(x) hinzu, so erhält man für das in Satz 2.14. definierte Polynom p f(x) p(x) = [x n,x n 1,...,x 0,x] n (x x i ). (2.15) i=0

20 KAPITEL 2. INTERPOLATION Durch Vergleich mit der Abschätzung (2.11) folgt [x n,...,x 0,x] = 1 (n + 1)! f(n+1) (ξ), und damit allgemein für die n te dividierte Differenz [x 0,...,x n ] = 1 n! f(n) (ξ) für ein ξ I (x 0,...x n ). Bei äquidistanten Knoten x i := a + b a i, i = 0,...,n, (2.16) n zeigt ω aus (2.11) einen Verlauf wie f p 8 in Beispiel 2.20. Dies legt die Idee nahe, die Knoten am Rande des Intervalls dichter zu legen. Als beste Wahl (vgl. Satz 2.25.) erweisen sich die Chebyshev Knoten x i := b a 2 ( ) 2i + 1 cos 2n + 2 π + a + b 2, i = 0,...,n. (2.17) Zur näheren Untersuchung nehmen wir a = 1 und b = 1 an und betrachten die Funktionen T n (x) := cos(n arccos x), 1 x 1, n IN 0. (2.18) T n ist ein Polynom vom Grade n, das n te Chebyshev Polynom, denn aus cos((n + 1)z) = 2 cosz cos(nz) cos((n 1)z) und aus (2.18) liest man sofort ab, dass die Chebyshev Polynome die folgende Rekursionsformel erfüllen: T 0 (x) 1,T 1 (x) = x, T n+1 (x) = 2xT n (x) T n 1 (x). (2.19) Aus dieser Darstellung folgt, dass der Koeffizient bei x n+1 in T n+1 gleich 2 n ist. (2.18) liefert, dass T n+1 in [ 1, 1] genau die Nullstellen besitzt. Es gilt also mit diesen x i ( ) 2i + 1 x i = cos 2n + 2 π, i = 0,...,n, n ω(x) = (x x i ) = 2 n T n+1 (x), i=0

2.2. POLYNOMINTERPOLATION 21 und aus der Darstellung (2.18) folgt ω = 2 n. Ferner erhält man aus (2.18), dass T n+1 in [ 1, 1] genau (n + 2) Extrema besitzt, in denen abwechselnd die Werte +1 und 1 angenommen werden. Satz 2.25. Es seien x 0,...,x n [a,b] paarweise verschiedene Knoten, und sei hiermit die Funktion ω wie in (2.12) definiert. Unter allen Knotenwahlen ist ω := max x [a,b] ω(x) für die Chebyshev Knoten (2.17) minimal. Bemerkung 2.26. Wegen Satz 2.25. ist die Abschätzung (2.14) für die Chebyshev-Knoten optimal. Hieraus kann man die Empfehlung ableiten, zur Polynominterpolation in der Regel die Chebyshev Knoten zu verwenden. Beweis: Sei n ω 0 (x) := (x x i ) mit den Chebyshev Knoten x i, i = 0,...,n. Wir nehmen an, dass es bessere Knoten ξ i, i = 0,...,n, gibt, d.h. dass für n ω(x) := (x ξ i ) i=0 i=0 gelte max ω(x) < max ω 0(x) (2.20) x [a,b] x [a,b] Da ω und ω 0 beide den führenden Koeffizienten 1 besitzen, ist p := ω ω 0 Π n. Es seien η j, j = 0,...,n + 1, die der Größe nach geordneten Extremwerte von ω 0 in [a,b] (η 0 = a,η n+1 = b,η 1,...,η n relative Extrema). Dann gilt ω 0 (η j ) + ω 0 (η j+1 ) = 0, j = 0,...,n,

22 KAPITEL 2. INTERPOLATION 2.5 x 10 4 2 1.5 1 0.5 0 0.5 1 1.5 2 2.5 1 0.8 0.6 0.4 0.2 0 0.2 0.4 0.6 0.8 1 Abbildung 2.2 : Fehlerkurve (Chebyshev Knoten) und ω 0 (η j ) = ω 0, j = 0,...,n + 1. Wegen (2.20) hat p in den η j wechselnde Vorzeichen, und daher liegt zwischen η j und η j+1, j = 0,...,n nach dem Zwischenwertsatz eine Nullstelle von p, d.h. p n hat n + 1 Nullstellen im Widerspruch zu p 0. Für Chebyshev Knoten hat die Fehlerkurve des Interpolationspolynoms aus Beispiel 2.20. die ausgeglichene Gestalt aus Abbildung 2.2. Für f C[a,b] definieren wir E n (f) := inf p Π n f p, (2.21) als ein Maß dafür, wie gut die stetige Funktion f durch ein Polynom vom Höchstgrad n approximiert werden kann, und fragen, um wieviel schlechter die Approximation von f durch ein Interpolationspolynom zu vorgegebenen Knoten ist als dieser beste erreichbare Wert in Π n. (Das Infimum in (2.21) wird übrigens angenommen, d.h. zu jedem f C[a,b] gibt es ein ˆp Π n mit f ˆp = E n (f)). Satz 2.27. Sei f C[a,b] und p n Π n mit f (x i ) = p n (x i ), i = 0,...,n. Dann gilt mit den Polynomen l j = l n j aus (2.2) f p n 1 + n l n j E n (f). (2.22) j=0

2.2. POLYNOMINTERPOLATION 23 Beweis: Sicher gilt p(x) = n p (x j ) l n j (x) für alle p Π n. j=0 Sei q k Π n eine Minimalfolge, d.h. es gelte f q k E n (f) für k. Dann gilt p n (x) q k (x) = = n (p n (x j ) q k (x j ))l n j (x) j=0 n (f(x j ) q k (x j ))l n j (x), j=0 und daher f p n f q k + q k p n n f q k + f q k l n j j=0 n = 1 + l n j f q k. j=0 Lässt man in dieser Ungleichung k gehen, so erhält man die Behauptung. Für die Chebyshev Knoten (2.17) wurden die in (2.22) auftretenden Überschätzungsfaktoren c n := 1 + von Powell (1967) berechnet. Es gilt n l n j j=0 1.96 + 2 π ln(n + 1) c n 2 + 2 ln(n + 1) π (insbesondere also c n 4 für n 20, c n 5 für n 100), und man erhält durch Polynominterpolation an den Chebyshev Knoten gute Approximationen, wenn f genügend glatt ist. Obwohl diese Überschätzungsfaktoren nur langsam anwachsen und obwohl man jede stetige Funktion durch Polynome beliebig gut approximieren kann (Satz von Weierstraß), kann man dennoch keine beliebig guten Approximationen durch Interpolation erwarten. Es gilt der überraschende Satz 2.28. (Faber) Zu jeder Folge von Zerlegungen n : a x n 0 < x n 1 <... < x n n b

24 KAPITEL 2. INTERPOLATION von [a, b] mit ( ) max x n i=1,...,n i x n i 1 0 für n gibt es ein f C[a,b], so dass die Folge der zugehörigen Interpolationspolynome p n Π n, die f an den Knoten x n j interpolieren, nicht gleichmäßig gegen f konvergiert. Beweis: s. Werner und Schaback [119], pp. 150 151. 2.2.4 Hermite Interpolation Wir beschränken uns auf den Fall, dass alle Knoten die Vielfachheit 2 besitzen, betrachten also nur das folgende Problem: Sei f C 1 [a,b], und es seien die Knoten x 0,...,x n [a,b] paarweise verschieden. Bestimme p Π 2n+1 mit p(x j ) = f(x j ) =: f j, p (x j ) = f (x j ) =: f j j = 0,...,n. (2.23) Zur Bestimmung von p machen wir ähnlich wie bei der Lagrangeschen Interpolation den Ansatz n n p(x) = f j φ j (x) + f jψ j (x), (2.24) j=0 j=0 wobei φ j,ψ j Π 2n+1 Hermitesche Interpolationspolynome sind, die die Bedingungen erfüllen. φ j (x i ) = δ ij, φ j(x i ) = 0 ψ j (x i ) = 0, ψ j(x i ) = δ ij i,j = 0, 1,...,n (2.25) Existieren solche φ j und ψ j, so ist p aus (2.24) das gesuchte Hermitesche Interpolationspolynom. Man rechnet leicht nach, dass φ j (x) := ( 1 2l j(x j )(x x j ) ) l 2 j(x) ψ j (x) := (x x j )l 2 j(x), (2.26) wobei die l j wie in Satz 2.4. definiert sind, die Bedingungen (2.25) erfüllen.

2.2. POLYNOMINTERPOLATION 25 Daher existiert ein Polynom p Π 2n+1 mit (2.23). Dieses ist eindeutig, denn angenommen p Π 2n+1 ist ein weiteres Polynom, das die Interpolationsbedingungen (2.23) erfüllt, so besitzt p p Π 2n+1 die n+1 doppelten Nullstellen x 0,...,x n, ist also identisch 0. Damit ist gezeigt Satz 2.29. Das Hermite-Interpolationspolynom p Π 2n+1 mit den Eigenschaften ((2.23)) existiert und ist eindeutig bestimmt. Die Darstellung (2.24),(2.26) des Interpolationspolynoms p entspricht der Lagrangeschen Interpolationsformel in Satz 2.4. Ähnlich wie für die Lagrange Interpolation kann man auch eine Newtonsche Interpolationsformel herleiten. Dazu müssen nur die dividierten Differenzen für mehrfache Knoten erklärt werden. Wir setzen [x 0,x 0 ] := lim x x0 [x 0,x] = lim x x0 f(x 0 ) f(x) x 0 x = f (x 0 ). Höhere dividierte Differenzen erhält man dann wie in (2.10), wobei mehrfache Knoten entsprechend ihrer Vielfachheit unmittelbar nacheinander behandelt werden müssen. Näheres findet man in Meinardus und März [78], pp. 57 ff. Für den Fehler gilt (entsprechend Satz 2.21.): Satz 2.30. Sei f C 2n+2 [a,b], seien die Knoten x 0,...,x n [a,b] paarweise verschieden, und sei p Π 2n+1 das Hermitesche Interpolationspolynom, das den Bedingungen (2.23) genügt. Dann gibt es zu jedem x [a,b] ein ξ I (x,x 0,...,x n ) mit f(x) p(x) = Beweis: Für x = x i ist (2.27) trivial. Für x x i für alle i = 0,...,n sei ω2 (x) (2n + 2)! f(2n+2) (ξ). (2.27) h(z) := (f(x) p(x))ω 2 (z) (f(z) p(z))ω 2 (x). Dann besitzt h C 2n+2 [a,b] in jedem x i eine doppelte Nullstelle und in x eine einfache Nullstelle.

26 KAPITEL 2. INTERPOLATION (2n + 2)-fache Anwendung des Satzes von Rolle liefert, dass h (2n+2) eine Nullstelle ξ I (x,x 0,...,x n ) besitzt, und aus h (2n+2) (z) = (2n + 2)!(f(x) p(x)) f (2n+2) (z)ω 2 (x) folgt für z = ξ die Behauptung. 2.3 Spline Interpolation Die in den vorhergehenden Abschnitten behandelte Polynominterpolation ist zwar leicht durchführbar, hat aber den Nachteil, dass bei Verfeinerung der Zerlegung keine Konvergenz zu erwarten ist (vgl. Satz 2.28.). Bessere Konvergenzeigenschaften haben die nun zu besprechenden Spline-Funktionen. Definition 2.31. Sei : a := x 0 < x 1 <... < x n =: b (2.28) eine Zerlegung des Intervalls [a,b]. Dann bezeichnen wir mit S(,p,q), p,q IN 0, 0 q < p, die Menge aller Funktionen s C q [a,b], die auf jedem Teilintervall [x i 1,x i ], i = 1,...,n, mit einem Polynom vom Höchstgrad p übereinstimmen. Jedes s S(, p, q) heißt (Polynom-)Spline vom Grade p der Differenzierbarkeitsklasse q zur Zerlegung. Am häufigsten treten in den Anwendungen (auf Randwertaufgaben) die Räume S(, 3, 2) (kubische Splines) und S(, 3, 1) (kubische Hermite Splines) auf. Daneben untersucht man für spezielle Aufgabenstellungen, bei denen Pole oder verschiedenes Wachstum in verschiedenen Teilen des Intervalls erwartet wird (Grenzschichtprobleme), nichtlineare Splines (rationale oder exponentielle Splines). Wir behandeln nur S(, 3, 2) und S(, 3, 1), sowie zur Motivation S(, 1, 0).

2.3. SPLINE INTERPOLATION 27 x 0 x 1 x 2 x 3 x 4 x 5 x 6 Abbildung 2.3: Stückweise lineare Interpolation 2.3.1 Stückweise lineare Funktionen Es sei : a = x 0 < x 1 <... < x n = b eine gegebene Zerlegung des Intervalls [a,b] und S(, 1, 0) = { s C[a,b] : s [xi 1, x i ] Π 1,i = 1,...,n } die Menge der stückweise linearen Funktionen auf [a,b] zu dieser Zerlegung. Für gegebene Interpolationsdaten y 0,...,y n IR gibt es offenbar genau einen interpolierenden Spline s S(, 1, 0) mit s(x i ) = y i, i = 0,...,n, und dieses s erhält man, indem man in jedem Teilintervall [x i 1,x i ] die Daten (x i 1,y i 1 ) und (x i,y i ) nach Abschnitt 2.2 durch eine lineare Funktion interpoliert. Man erhält in den Teilintervallen s(x) = 1 x i x i 1 (y i (x x i 1 ) + y i 1 (x i x)), x [x i 1,x i ]. (2.29) Gilt y i = f(x i ) für eine Funktion f C 2 [a,b], so erhalten wir aus Satz 2.21. sofort für x [x i 1,x i ] den Fehler f(x) s(x) = 1 2 (x x i 1)(x x i )f (ξ i ), ξ i [x i 1,x i ], und daher f(x) s(x) 1 8 (x i x i 1 ) 2 f (ξ i ). Mit := max i=1,...,n (x i x i 1 ) folgt f s 1 8 2 f. (2.30)

28 KAPITEL 2. INTERPOLATION Ist also n irgendeine Zerlegungsfolge von [a,b] mit lim n = 0 n und f C 2 [a,b], so konvergiert die zugehörige Folge der interpolierenden Splines s n S ( n, 1, 0) gleichmäßig gegen f, und die Konvergenzgeschwindigkeit wird durch (2.30) beschrieben. Für f C 0 [a,b] erhält man für x [x i 1,x i ] aus (2.29) f(x) s(x) = 1 (x x i 1 )(f(x) f(x i )) + (x i x)(f(x) f(x i 1 )) x i x i 1 1 ( (x xi 1 ) f(x) f(x i ) + (x i x) f(x) f(x i 1 ) ) x i x i 1 max ( f(x) f(x i ), f(x) f(x i 1 ) ), und daher folgt f s ω (f, ), wobei ω (f,h) : = sup { f(x) f(y) : x,y [a,b], x y h} den Stetigkeitsmodul von f zur Schrittweite h bezeichnet. Ist n eine Zerlegungsfolge von [a,b] mit lim n n = 0, so konvergieren auch für nur stetiges f die interpolierenden linearen Splines gleichmäßig gegen f. Ähnlich wie bei der Lagrangeschen Interpolation können wir s darstellen als s(x) = mit den Basisfunktionen n f i φ i (x), x [a,b] i=0 (x x i 1 )/(x i x i 1 ), x [x i 1,x i ] φ i (x) := (x i+1 x)/(x i+1 x i ), x [x i,x i+1 ], i = 0,...,n, 0, x [x i 1,x i+1 ] wobei x 1 < a und x n+1 > b beliebig gewählt sind. Die angegebenen φ i heißen Dachfunktionen (engl.: hat functions). Sie besitzen einen lokalen Träger [x i 1,x i+1 ]. Will man also s an einer Stelle x (x i 1,x i ) auswerten, so hat man wegen φ j (x) = 0 für j {i,i 1} nur φ i (x) und φ i 1 (x) zu berechnen (anders als bei den l j (x) in Satz 2.4.).

2.3. SPLINE INTERPOLATION 29 x 0 x 1 x 2 x 3 x 4 x 5 x 6 Abbildung 2.4: Dachfunktionen 2.3.2 Kubische Hermite Splines Nach den Vorüberlegungen im letzten Unterabschnitt ist klar, wie man die Interpolationsaufgabe für kubische Hermite Splines zu stellen hat und welche Konvergenzeigenschaften man erwarten kann. Es seien y 0,...,y n,y 0,...,y n IR gegeben. Man bestimme s S(, 3, 1) so, dass die Interpolationsbedingungen erfüllt sind. s (x i ) = y i, s (x i ) = y i, i = 0,...,n, (2.31) Dieses Problem können wir wie im letzten Unterabschnitt intervallweise behandeln. In jedem Teilintervall [x i 1,x i ] lösen wir die Hermitesche Interpolationsaufgabe (2.23) mit einem kubischen Polynom und den beiden Knoten x i 1 und x i. Die aus diesen Interpolierenden zusammengesetzte Funktion s ist dann sicher in S(, 3, 1) und erfüllt alle Interpolationsbedingungen. Die Approximationseigenschaften ergeben sich aus Satz 2.30. Ist f C 4 [a,b], so gilt für x [x i 1,x i ] f(x) s(x) = 1 4! ((x x i) (x x i 1 )) 2 f (4) (ξ), ξ [x i 1,x i ]. Durch Ausrechnen des Maximums erhält man und daher f(x) s(x) 1 4! 1 16 (x i x i 1 ) 4 f (4) (ξ), f s 1 384 4 f (4). (2.32)

30 KAPITEL 2. INTERPOLATION 1 0.8 φ i 0.6 0.4 0.2 ψ i 0 x i 1 x i x i+1 0.2 1 0.5 0 0.5 1 1.5 2 Abbildung 2.5: Kubische Hermite Splines (Basisfunktionen) Wir erhalten also für f C 4 [a,b] gleichmäßige Konvergenz für jede Zerlegungsfolge n mit n 0, die nun aber von der Ordnung 4 ist. Auch zu den kubischen Hermite Splines existiert eine lokale Basis. Man rechnet leicht nach, dass für i = 0,...,n (mit beliebig gewählten x 1 < a und x n+1 > b), (x x i 1 ) 2 (3x i x i 1 2x) / (x i x i 1 ) 3, x [x i 1,x i ] φ i (x) := (x i+1 x) 2 (x i+1 3x i + 2x) / (x i+1 x i ) 3, x [x i,x i+1 ] 0, x [x i 1,x i+1 ] ψ i (x) := (x x i 1 ) 2 (x x i ) / (x i x i 1 ) 2, x [x i 1,x i ] (x x i+1 ) 2 (x x i ) / (x i+1 x i ) 2, x [x i,x i+1 ] 0, x [x i 1,x +1 ] kubische Hermite Splines sind, die die speziellen Interpolationsbedingungen φ i (x j ) = δ ij, φ i(x j ) = 0 i,j = 0,...,n, ψ i (x j ) = 0, ψ i(x j ) = δ ij erfüllen. Der interpolierende kubische Hermite Spline ist daher gegeben durch n s(x) = (f i φ i (x) + f iψ i (x)). i=0 Jedes φ i und ψ i hat den (lokalen) Träger [x i 1,x i+1 ], so dass man für die Berechnung von s(x) für x (x i 1,x i ) nur die vier Funktionen φ i 1 (x), ψ i 1 (x), φ i (x) und ψ i (x) auszuwerten hat.

2.3. SPLINE INTERPOLATION 31 2.3.3 Kubische Splines Bei den kubischen Splines s S(, 3, 2) sind die Verhältnisse nicht ganz so einfach wie in den Fällen S(, 3, 1) und S(, 1, 0), da man die Interpolationsaufgabe nicht in jedem Teilintervall getrennt ausführen kann. s S(, 3, 2) ist in jedem Teilintervall [x i 1,x i ] ein Polynom dritten Grades, also ist s durch 4n Parameter bestimmt. Durch die Forderung s C 2 [a,b] werden in jedem inneren Knoten x i, i = 1,...,n 1, drei Bedingungen gegeben: s (j) (x i 0) = s (j) (x i + 0), j = 0, 1, 2. Daher besitzt ein kubischer Spline noch (wenigstens) n + 3 Freiheitsgrade, und wir können nicht erwarten, dass s durch die n + 1 Interpolationsbedingungen s(x i ) = y i, i = 0,...,n, festgelegt ist, sondern es müssen noch 2 Randbedingungen hinzugenommen werden. Dies kann (je nach Aufgabenstellung) auf verschiedene Weise geschehen. Satz 2.32. Es sei eine Zerlegung von [a,b], und es seien y 0,...,y n IR gegeben. Dann gibt es für jede der vier folgenden Randbedingungen genau einen interpolierenden kubischen Spline s S(, 3, 2) mit s(x j ) = y j, j = 0,...,n. (2.33) (i) s (x 0 ) = y 0, s (x n ) = y n (y 0,y n IR gegeben) (ii) s (x 0 ) = s (x n ), s (x 0 ) = s (x n ). (iii) s (x 0 ) = s (x n ) = 0. (iv) s (x 0 ) = y 0, s (x n ) = y n (y 0,y n IR gegeben) Bemerkung 2.33. Wird die Interpolation mit kubischen Splines verwendet, um eine Funktion f : [a,b] IR zu approximieren, so wird man die Randbedingungen (i) verwenden, wenn die Ableitung von f in den Randpunkten a und b des Intervalls bekannt sind, die Randbedingung (ii), wenn die Funktion f periodisch mit der Periode b a ist, und die Randbedingung (iv), wenn zusätzlich zu den Lagrangeschen Interpolationsdaten am Rand des Intervalls die zweiten Ableitungen bekannt sind.

32 KAPITEL 2. INTERPOLATION Bemerkung 2.34. Erfüllt s S(, 3, 2) die Randbedingung (iii), so kann man s auf {x : x < x 0 } bzw. {x : x > x n } zweimal stetig differenzierbar als lineare Funktion fortsetzen. Kubische Splines, die man auf diese Weise erhält, heißen natürliche Splines. Bemerkung 2.35. In de Boor [22] werden vier weitere Randbedingungen diskutiert, unter denen die Existenz und Eindeutigkeit des interpolierenden Splines gesichert ist. Unter ihnen besonders wichtig ist die sog. not-a-knot Bedingung. Diese wird verwendet, wenn nichts über das Verhalten der interpolierenden Funktion an den Rändern des Intervalls (außer den Funktionswerten) bekannt ist. Man wählt dann als Knoten für den Spline die Punkte x 0 < x 2 < x 3 <... < x n 3 < x n 2 < x n. Ein Spline zu diesen n 2 Intervallen hat n + 1 Freiheitsgrade und ist durch die n + 1 Interpolationsbedingungen s(x j ) = y j, j = 0,...,n eindeutig bestimmt. Beweis: (von Satz 2.32.) Der Beweis ist konstruktiv, er liefert also ein Verfahren zur Berechnung der jeweiligen interpolierenden Splines. Sei h j+1 := x j+1 x j, j = 0,...,n 1, und m j := s (x j ), j = 0,...,n, die zweite Ableitung der gesuchten Splinefunktion an der Stelle x j. Wir wollen zeigen, dass der Vektor m := (m 0,...,m n ) T für jede der vier Randbedingungen eindeutige Lösung eines linearen Gleichungssystems ist und dass man aus den m j den Spline s(x) an jeder Stelle x [a,b] leicht errechnen kann. s ist in jedem Teilintervall [x j,x j+1 ] ein kubisches Polynom. Also ist s stückweise linear, und man kann s mit Hilfe der m j so beschreiben (vgl. die Überlegungen in Abschnitt 2.3.1 für S(, 1, 0)). s (x) = 1 h j+1 (m j (x j+1 x) + m j+1 (x x j )), x [x j,x j+1 ]. Durch Integration erhält man für x [x j,x j+1 ], j = 0,...,n 1, s (x j+1 x) 2 (x x j ) 2 (x) = m j + m j+1 + α j (2.34) 2h j+1 2h j+1 und s(x) = m j (x j+1 x) 3 6h j+1 + m j+1 (x x j ) 3 6h j+1 + α j (x x j ) + β j. (2.35)

2.3. SPLINE INTERPOLATION 33 Die Integrationskonstanten α j und β j erhält man aus den Interpolationsbedingungen d.h. s(x j ) = m j h 2 j+1 6 s(x j+1 ) = m j+1 h 2 j+1 6 + β j = y j + α j h j+1 + β j = y j+1, β j = y j m j h 2 j+1 6 α j = y j+1 y j h j+1 h j+1 6 (m j+1 m j ). (2.36) Setzt man α j und β j aus (2.36) in (2.35) ein, so erhält man die gewünschte Darstellung von s in Abhängigkeit von den m j. n 1 Bestimmungsgleichungen für die m j erhält man, indem man die Stetigkeit von s ausnutzt: Setzt man α j aus (2.36) in (2.34) ein, so erhält man s (x) = m j (x j+1 x) 2 2h j+1 + m j+1 (x x j ) 2 2h j+1 + y j+1 y j h j+1 h j+1 6 (m j+1 m j ), x [x j,x j+1 ]. (2.37) Also liefert die Forderung s (x j 0) = s (x j + 0) y j y j 1 h j d.h. für j = 1,...,n 1 h j + h j 3 m j + h j 6 m j 1 = y j+1 y j h j+1 h j+1 3 m j h j+1 6 m j+1, 6 m j 1 + h j + h j+1 m j + h j+1 3 6 m j+1 = y j+1 y j h j+1 y j y j 1 h j. (2.38) Die restlichen beiden Bedingungen für die m j erhält man aus den Randbedingungen (i), (ii), (iii) oder (iv). Für die natürlichen Splines hat man in (2.37) s (a) = m 0 = 0 = m n = s (b) zu setzen, im Fall (iv) die inhomogenen Gleichungen m 0 = y 0 und m n = y n. Im Fall (i) hat man wegen (2.37) das System (2.38) zu ergänzen durch h 1 3 m 0 + h 1 6 m 1 = y 1 y 0 y h 0, 1 h n 6 m n 1 + h n 3 m n = y n y n y n 1. h n (2.39)

34 KAPITEL 2. INTERPOLATION Im Falle periodischer Randbedingungen gilt m 0 = m n, und wegen s (a) = s (b) erhält man aus (2.37) h 1 6 m 1 + h n 6 m n 1 + h n + h 1 3 m 0 = y 1 y 0 h 1 y n y n 1 h n. (2.40) In jedem Fall ergeben sich also die m j als Lösung eines linearen Gleichungssystems Ax = b, (2.41) wobei für alle Zeilen der Matrix A gilt: a ii > a ij. j i Die Koeffizientenmatrix ist also strikt diagonaldominant. Nach dem Satz von Gerschgorin ist sie dann regulär, und daher ist das Gleichungssystem (2.41) für jede rechte Seite b eindeutig lösbar. Bemerkung 2.36. Eine andere Möglichkeit, den interpolierenden Spline s zu berechnen, wird in de Boor [22] dargestellt. Es werden dort die Unbekannten η j := s (x j ), j = 0,...,n, eingeführt. Für η := (η 0,...,η n ) IR n+1 sei s(x) der kubische Hermite Spline, der definiert ist durch s(x j ) = y j, s (x j ) = η j, j = 0,...,n, d.h. mit den Basisfunktionen φ i (x) und ψ i (x) aus Abschnitt 2.3.2 gilt für x [x j 1,x j ] s(x) = y j 1 φ j 1 (x) + y j φ j (x) + η j 1 ψ j 1 (x) + η j ψ j (x). Es ist s C 1 [a,b], und die Forderung s (x j 0) = s (x j +0), j = 1,...,n 1, liefert das lineare Gleichungssystem ( 1 1 η j 1 + 2 + 1 ) η j + 1 η j+1 = 3 (y h j h j h j+1 h j+1 h 2 j+1 y j ) + 3 (y j+1 h 2 j y j 1 ), j j = 1,...,n 1, das für die Randbedingungen (i) (Vorgabe der Ableitungen am Rande) ergänzt wird um die Gleichungen s (x 0 ) = y 0, s (x n ) = y n, für die Randbedingungen (ii) (Periodizität) um η 0 = s (x 0 + 0) = s (x n 0) = η n, ( 1 2 + 1 ) η 0 + 1 η 1 + 1 η n 1 = 3 (y h1 hn h 1 h n h 2 1 y 0 ) + 3 (y 1 h 2 n y n 1 ), n

2.3. SPLINE INTERPOLATION 35 und für den natürlichen Spline um 2 η 0 + 1 η 1 = 3 (y h 1 h 1 h 2 1 y 0 ), 2 η n + 1 η n 1 = 3 (y 1 h n h n h 2 n y n 1 ). n In jedem Fall erhält man (wie im Beweis von Satz 2.32.) ein lineares Gleichungssystem mit diagonaldominanter Koeffizientenmatrix. Beide Zugänge erfordern denselben Rechenaufwand. Wir haben den Zugang über die zweiten Ableitungen gewählt, da wir diese Darstellung in dem folgenden Satz bei der Herleitung der Fehlerabschätzung benötigen. Die Approximationseigenschaft der interpolierenden kubischen Splines wird beschrieben durch Satz 2.37. Sei f C 3 [a,b] und sei s S(, 3, 2) der interpolierende Spline, der eine der Randbedingungen (i) oder (ii) oder s (a) = f (a), s (b) = f (b) erfüllt. Dann gilt mit den Konstanten C 0 = 9 8 und C 1 = C 2 = 9 4 s (ν) f (ν) C ν 3 ν ω(f, ), ν = 0, 1, 2, (2.42) wobei ω(g,h) := sup { g(x) g(y) : x,y [a,b], x y h} den Stetigkeitsmodul von g bezeichnet. Genügt f einer Lipschitzbedingung f (x) f (y) L x y für alle x,y [a,b], so gilt s (ν) f (ν) L C ν 4 ν, ν = 0, 1, 2. (2.43) Beweis: Wir beweisen den Satz nur für die Randbedingung s (a) = f (a), s (b) = f (b). die anderen Randbedingungen erfordern nur eine leichte Modifikation des Beweises. Wir bezeichnen wieder mit m j := s (x j ) die zweiten Ableitungen von s in den Knoten. Dann gilt (vgl. (2.38) und (2.39)) h 1 3 m 0 + h 1 6 m 1 = f(x 1) f(x 0 ) h 1 f (x 0 ), (2.44)