Vorlesungs-Skript Mathematik für Wirtschaftsinformatiker Rüdiger Seydel Universität zu Köln Mathematisches Institut Version 2009 c R. Seydel, Köln 2009 www.mi.uni-koeln.de/∼seydel Vorwort Dies ist das Skript zu meiner Vorlesung Mathematik für Wirtschaftsinformatiker, gelesen im Wintersemester 2008/2009 und im Sommersemester 2009. Im ersten Semester ist die Vorlesung vierstündig, im zweiten Semester zweistündig. Dazu gehören jeweils Übungen, welche ein wichtiger Teil der Veranstaltung sind. Das Skript gibt nur den wesentlichen Inhalt der Vorlesung wieder. Zusätzliche Erklärungen und Ergänzungen werden während der Vorlesung gegeben; das Skript ersetzt nicht den Besuch der Vorlesung! Für Korrekturlesen bin ich Herrn Markus Lücking dankbar. Köln, Juli 2009 Seydel: Mathematik I, Inhalt, WS 2008/09 Inhalt Prolog 1 Kapitel 1: Elemente Praktischer Mathematik 1.1 Messen in der Ebene 3 1.2 Gleichungen, Ungleichungen 5 1.3 Mengen in der Ebene 6 1.4 Zahlen 7 1.5 Fehler 10 Kapitel 2: Lineare Algebra 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 Vektoren, Matrizen, Gleichungssysteme 17 Der Algorithmus von Gauß 22 Arbeiten mit Matrizen 23 Vektorräume 26 Dimension und Basis von Vektorräumen 28 Determinanten 31 Eigenwerte 33 Normen 35 Householder Matrizen 37 Kapitel 3: Analysis 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 3.10 3.11 3.12 Vollständige Induktion 41 Komplexe Zahlen 42 Polynome und Rationale Funktionen 45 Der Euklidische Algorithmus; Kettenoperationen Funktionen 50 Spezielle Funktionen 55 Grenzwert 59 Differentialrechnung 63 Integrale 69 Logarithmus und Exponentialfunktion 73 Reihen und Potenzreihen 74 Funktionen von mehreren Veränderlichen 79 49 Seydel: Mathematik II, Inhalt, SoSe 2009 Kapitel 4: Approximation mit Kurven 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 Approximation und Interpolation 81 Interpolation mit Polynomen 82 Interpolation mit Splines 87 Bézier-Kurven 91 Integration mit Trapezsummen; Extrapolation Diskrete Fourier-Transformation 96 Fast Fourier-Transformation 99 Ausgleichsprobleme, data fit 103 93 Kapitel 5: Nichtlineare Gleichungssysteme und Iterationen 5.1 Lösen einer skalaren Gleichung 107 5.2 Zur Konvergenz 108 5.3 Das allgemeine Newtonverfahren 110 5.4 Approximation der Jacobi-Matrix 111 Kapitel 6: Optimierung 6.1 Optimierungsprobleme 113 6.2 Methoden der Analysis 114 6.3 Lineare Optimierung 116 6.4 Konvexe Optimierung 120 Seydel: Mathematik II, Inhalt, SoSe 2009 Literatur Als weiterführende Literatur sind unter anderem fast alle Titel mit Höherer Mathematik oder auch Ingenieurmathematik geeignet. Es ist nicht möglich, der Vielzahl hervorragender Werke gerecht zu werden. Deswegen hier nur exemplarisch drei Werke: R. Ansorge, H.J. Oberle: Mathematik für Ingenieure I. Wiley-VCH K. Meyberg, P. Vachenauer: Höhere Mathematik. Band 1. Springer-Verlag, Berlin R. Sauer: Ingenieurmathematik. Springer-Verlag Eine Formelsammlung ist nützlich. Seydel: Mathematik I, Kap. 1, WS 2008/09 Prolog Charakterisierung Wissenschaftlicher Arbeit: Modellierung & Simulation ‘‘Wirklichkeit’’ Modellierung Modell (Gleichung) klassisches Experiment Zustands− Prognose Simulation Lösung Interpretation ⋆ Modellierung = Beschreibung von Vorgängen in Natur, Wirtschaft und Technik durch Gleichungen ⋆ Simulation = Anwendung mathematisch/numerischer Methoden zur Lösung der Gleichungen → “mathware” Der Doppelschritt “Modellierung & Simulation” ist zwingend! Beispiele “Experiment unmöglich” da - zu gefährlich (Umweltrisiken, Wirtschaftsentwicklung) - zu groß, experimentelle Restriktionen (Ozeanströmungen) - zu lange Zeiträume (Bevölkerungsentwicklung, Klima) - zu teuer (Windkanal wird durch Computer–Simulationen ersetzt.) - existiert nicht (Saurier etc. im Kino) Mathematik: Sprache unserer wissenschaftlich-technischen Welt, Schlüsseldisziplin der Hochtechnologie! 1 Seydel: Mathematik I, Kap. 1, WS 2008/09 2 Seydel: Mathematik I, Kap. 1, WS 2008/09 Kapitel 1 Elemente Praktischer Mathematik 1.1 Messen in der Ebene die Ebene: der Ort aller mathematischen Erklärungen. einfache mathematische Objekte: Punkt, Gerade(nstück), Kurve, Kreis, “Winkel” (Haken), Flächenstück. A. Messung / Zahlen Charakterisierung obiger Objekte: Punkt: Lage (zu einem Referenzpunkt) Kurve, Geradenstück: Länge, Neigung Kreis: Durchmesser, Umfang Schnitt von Geraden: Winkel Flächenstück: Inhalt Zur Quantifizierung sind Zahlen erforderlich. historisch: z.B. 2 Fuß, 3 Fingerbreit: Körpersystem, mit Anzahl der Wiederholungen. −→ “Natürliche Zahlen” 1,2,3,... Bezeichnung: IN Umfang Durchmesser Hinweis: := meint: die “linke Seite” wird durch die “rechte Seite” definiert. Obiges π definiert die Kreiszahl. Frage: Ist π ∈ IN ? (Antwort: nein! IN reicht nicht. Hierzu und zu Zahlen vgl. späteren Abschnitt 1.4) π := Verhältnisse: z.B. beim Kreis: B. Größe eines Winkels 1.) Messung in Grad: Teilung des Kreises in 360 Teile (willkürlich). Ein Teil wird als Grad bezeichnet, 1◦ , Grad/Min/Sek: 1◦ = 60′ , 1′ = 60′′ z.B. 40◦ 36′ 12′′ 2.) im Bogenmaß (natürliches Maß) Kreisbögen r Bogenlänge b = r ϕ Bogenlänge ϕ ϕ 1 3 Seydel: Mathematik I, Kap. 1, WS 2008/09 Winkel im Bogenmaß= am Radius r ausgeschnittene Bogenlänge b r dimensionslos, unabhängig vom Maßstab. Umfang Vollkreis mit Radius r ist 2rπ ⇒ (“daraus folgt”) im Gradmaß im Bogenmaß 360◦ 2π 180◦ π 90◦ 60◦ 45◦ 30◦ 1◦ π 2 π 3 π 4 π 6 π 180 ≈ 0.01745 . . . (Dezimal-Punkt !) Orientierung: math. posit. Sinn math. neg. Sinn b>0 b<0 C. Koordinaten 1.) Kartesische Koordinaten eines Punktes P0 Vorgabe eines Punktes O und einer (x-)Achse; positive Drehung um 90◦ um O erzeugt y-Achse (Schnittpunkt O). Lote von P0 auf die Achsen −→ Fußpunkte bestimmen xund y-Koordinate x0 , y0 y P o y o Lot auf x−Achse x o 0 x Man schreibt P0 = (x0 , y0 ); O = (0, 0) heißt “Nullpunkt”. Eindeutige Zuordnung zwischen der Ebene und allen Zahlenpaaren. 2.) Polarkoordinaten Jeder Punkt 6= O kann eindeutig durch den Abstand r zum Nullpunkt und den Winkel zwischen der positiven x-Achse und dieser Geraden dargestellt werden. y P 1 0 0 1 r ϕ Lot 0 x Zusammenhang zu kartesischen Koordinaten x = r cos ϕ p r = x2 + y 2 , , y = rsin ϕ , arccos xr ϕ= 2π − arccos xr 4 falls y ≥ 0 falls y < 0 Seydel: Mathematik I, Kap. 1, WS 2008/09 1.2 Gleichungen, Ungleichungen “=” seit dem späten 16. Jahrhundert Arten von Gleichungen 1. Identität: z.B. 3 − 4x + 5x = 3 + x oder: 1 + 2 + . . . + n = 21 n(n + 1) 2. Abbildungsgleichung: z.B. y = f (x) := (x + 3)2 − 4 Jedem x in einem gewissen Bereich wird ein y zugeordnet: “Funktion”. 3. Bestimmungsgleichung: z.B. x2 − 4 + 2x = 0 oder |x| − x2 = 0. Hier heißt x “Unbekannte”. Def. Absolutbetrag: n x falls x ≥ 0 |x| = −x falls x < 0 (Fallunterscheidungen notwendig, interessant oft dann, wenn komplizierter Ausdruck |A(x)|) 4. Differentialgleichungen: dy = −2y (oder y ′ = −2y) z.B. dx ist Gleichung für eine Funktion y(x). In der Gleichung tritt y mit der ersten oder höheren Ableitungen auf. (Lösung: y(x) = ce−2x für beliebige Konstanten c) (Probe: ...) Ungleichungen Größenvergleich x < y (x ist kleiner y und nicht gleich y) x ≤ y (x ist “kleiner gleich” y) bzw. x>y , x≥y Die Ungleichung x < y gibt eine Abschätzung der Zahl x nach oben durch y an; y ist Schranke (obere) zu x. Beispiel (für Ungleichungen, Abschätzungen, untere und obere Schranken) Zeige: π ist keine natürliche Zahl! Beweis: umschreibendes Viereck mit Umfang 8 (Figur ...) inneres 8-Eck mit Umfang d “Einheitskreis” mit Radius 1 und Umfang c. Offenbar gilt: c < 8 (8 ist obere Schranke zu c) und: d < c (d ist untere Schranke); leicht zu zeigen: d > 6. Beide Ungleichungen zusammengefaßt: 6<d<c<8 , es folgt: 6<c<8 c c π= = ⇒ c = 2π ⇒ 2r 2 6 < 2π < 8 ⇒ 3 < π < 4 Also: π ist keine natürliche Zahl. Def. Intervall: Durch das Ungleichungspaar a ≤ x ≤ b ist ein “Intervall” definiert als die Menge aller x für welche sowohl a ≤ x und x ≤ b gilt (gleichzeitig!). Das Intervall ist nicht-leer, wenn a ≤ b. 5 Seydel: Mathematik I, Kap. 1, WS 2008/09 Mengen-Schreibweise: [a, b] := {x|a ≤ x ≤ b} Bei Einschluß der Randpunkte spricht man von abgeschlossenem Intervall. Sonst: offenes Intervall: {x|a < x < b}; Bezeichnung auch ]a, b[ oder (a, b). Varianten: “halboffen”, a ≤ x < b, a < x ≤ b, falls nur ein Endpunkt zum Intervall gehört. Rechenregeln zu Betrag und Ungleichungen x≤y , a≤b x≤y , 0≤a x≤y , a<0 ⇒ x+a≤ y+b ⇒ ax ≤ ay ⇒ ax ≥ ay ! x≤y ⇒ −y ≤ −x 1 1 ⇔ 0< ≤ y x 0<x≤y − |a| ≤ a ≤ |a| , | − a| = |a| , |a| a (falls b 6= 0) |ab| = |a| |b| , | | = b |b| |a| ≤ |b| ⇔ −b ≤ a ≤ b ! weiter gilt die “Dreiecksungleichung” |a + b| ≤ |a| + |b| Beweis: −|a| ≤ a −|b| ≤ b ≤ |a| ≤ |b| Addition: −(|a| + |b|) ≤ a+b | {z } (Abk.)=:A Also −B ≤ A ≤ B ; ⇔ |A| ≤ B ⇔ |a + b| ≤ |a| + |b| ≤ |a| + |b| | {z } =:B 1.3 Mengen in der Ebene geometrische Bedeutung von Gleichungen und Ungleichungen, wenn sowohl x als auch y variabel sind. Beispiele: 1.) a ≤ x ≤ b {(x, y) | a ≤ x ≤ b}, d.h. y bleibt frei (Hinweis: In 3-dim. (x, y, z)-Raum wäre durch a ≤ x ≤ b eine Scheibe definiert. Also: Angabe (x, y) des einbettenden Raumes wichtig!) 2.) {(x, y) | a ≤ x ≤ b , y = −2} 6 Seydel: Mathematik I, Kap. 1, WS 2008/09 3.) 4.) 5.) 6.) 7.) 8.) x ≥ −4 und 0 ≤ y ≤ 6 d.h. 3 Ungleichungen gleichzeitig! (Hinweis zur Vorgehensweise: zuerst die Gleichungen aufmalen (ergibt potentielle Ränder), dann die richtige Seite feststellen (z.B. mit Testpunkten). Halbstreifen als Schnitt von drei Halbebenen. 0 = x − y + 1 ist eine Gerade, y = x + 1 y = −x2 + 1 und −1 ≤ x ≤ 3 √ √ y 2 ≤ x < 4 sind 3 Ungleichungen x < 4, − x ≤ y, y ≤ + x x2 + y 2 ≤ 1 (⇔ r 2 ≤ 1) (x − 2)2 + (y + 1)2 = 4 , y ≥ −x + 1 ′ x := x − 2, y ′ := y + 1 Allgemein: Kreisgleichung (x − a)2 + (y − b)2 = r 2 ist Kreis mit Mittelpunkt (x, y) = (a, b) ((Vorsicht: Vorzeichen!)) Schnitt von 2 Geraden allg. Gerade in der Ebene: ax + by + c = 0 Also: eine Gleichung in 2 Unbekannten x und y. x und y treten “linear” auf; lineare Gleichung in x und y; zwei Geraden in der Ebene: a1 x + b1 y + c1 a2 x + b2 y + c2 = 0 = 0 1. Gerade 2. Gerade 2 Möglichkeiten: 1.) Die Geraden schneiden sich in einem Punkt 2.) Die Geraden sind “parallel” (sie schneiden sich nicht oder sind identisch) Berechnung des Schnittpunktes Addiere geeignete Vielfache der Gleichungen. “geeignet”: so dass eine Gleichung mit nur einer Unbekannten entsteht. allgemeines Verfahren: Gaußscher Eliminations-Algorithmus 1.4 Zahlen A.) Natürliche Zahlen 1, 2, 3, 4, . . . (IN ist “abgeschlossen” bzgl. Addition und Multiplikation.) Abschließung bzgl. der Subtraktion führt zu: B.) Ganze Zahlen ZZ := IN ∪ 0 ∪ negative natürliche Zahlen = {. . . , −4, −3, −2, −1, 0, 1, 2, 3, . . .} C.) Rationale Zahlen Q I := { Brüche } = nm 7 n | m ∈ ZZ , n ∈ IN o Seydel: Mathematik I, Kap. 1, WS 2008/09 Division (außer durch 0) in Q I unbeschränkt ausführbar. Satz: Q I ist abzählbar! Denn: alle q ∈ Q I sind enthalten im Schema... D.) Irrationale Zahlen = Zahlen, die nicht rational sind. Satz: Es gibt irrationale Zahlen! “Indirekter Beweis”: Annahme des Gegenteils; hieraus Herleitung eines Widerspruchs zu den Annahmen. Prinzip (A ⇒ B) ⇔ (¬B ⇒ ¬A) Hier: Annahme s = m n , ohne Einschränkung m und n teilerfremd (sonst kürzen) (vgl. Übung) E.) Reelle Zahlen Exponenten-Schreibweise (n ∈ IN): an = a | · a ·{z. . . · a} n mal a−n = 1 an , ao = 1 7 9 + 1000 = 3 · 100 + 9 · 10−1 + 7 · 10−3 ist “endlicher” Motiv./Bsp.: 3.907 = 3 + 10 Dezimalbruch, d.h. bricht nach endlich vielen Stellen ab. reelle Zahlen: IR := { alle endlichen und unendlichen Dezimalbrüche} = {p1 10k−1 + p2 10k−2 + . . . + pk 100 + q1 10−1 + q2 10−2 + . . . | pi , qi ∈ {0, 1, 2, . . . , 9}} = {p1 p2 . . . pk . q1 q2 q3 . . .} “Positionssystem” Beschränkung auf p, q ≤ 9 wegen der Eindeutigkeit der Darstellung. geometrisch auf der Zahlengerade: Intervallschachtelung: bricht man eine Zahl nach der m-ten Stelle hinter Dezimalpunkt ab, so liegt die Zahl im Intervall der Breite 10−m . Hinzufügen der nächsten Ziffer ((m + 1)te Ziffer) −→ Breite des Intervalles 10−m−1 u.s.w. Intervall-Längen werden beliebig klein. −→ konvergiert gegen Punkt. Damit äquivalente Definition von IR: alle Punkte auf der Zahlengerade −→ IR. Bei den Dezimalzahlen ist 10 die “Basis”. Die reellen Zahlen können auch mit jeder anderen Basis aufgebaut werden. F.) Komplexe Zahlen Der Zahlenbereich IR kann erweitert werden zu den Komplexen Zahlen, in denen auch √ i := −1 etc. möglich ist. (−→ später in Abschnitt 3.2) G.) Maschinenzahlen Def.: Gleitpunktdarstellung x = σ · m · BE σ: Vorzeichen m: Mantisse B: Basis E: Exponent (floating-point representation): 8 Seydel: Mathematik I, Kap. 1, WS 2008/09 Def.: Normalisierte Gleitpunktzahl (6= 0): Gleitpunktzahl mit Eigenschaft B −1 ≤ m < 1. Darstellung der Mantisse: m = d1 B −1 + d2 B −2 + d3 B −3 + . . . mit Ziffern (digits) di ∈ {0, 1, . . . , B − 1} und d1 6= 0 für normalisierte Zahl. Beispiel: 18.5 als Dezimalzahl [= (18.5)10 ], umrechnen in Dualzahl: 1 2 = 1 ·24 + 0 ·23 + 0 · 22 + 1 · 21 + 0 · 20 + 1 · 2−1 ↑ ↑ ↑ Ziffern Binärpunkt = 10010.1 18.5 = 16 + 2 + Schreibweise mit Basis gekennzeichnet: (18.5)10 = (10010.1)2 normalisiert: 0.185 · 102 = 0.100101 · 25 Bemerkung: Bei diesem Beispiel wurden sowohl bei B = 10 als auch bei B = 2 nur endlich viele Ziffern benötigt. Im Allgemeinen gibt es keine derartige Entsprechung! Im Rechner stehen nur endlich viele Stellen zur Verfügung! Definition: Die Zahlen, die in einem Rechner dargestellt werden können, heißen Maschinenzahlen. “Genauigkeit” misst letztlich den Abstand von Zahlen. Frage: Was ist der kleinste Abstand zwischen zwei Maschinenzahlen? Gedankenexperiment: mit 53 bit-Mantisse 0.1111 . . . . . 11 = 1/2 + . . . + 2−53 = 1 − 2−53 = 1 − 2−k 1.0000 . . . . . 00 = 1 (Die Binär-Ziffern heißen bit = binary digit.) Definition: Es sei k die Anzahl der bit der Mantisse. Die Zahl 2−k heißt relative Maschinengenauigkeit des Binär-Rechners. Bezeichnung: ǫmach (oder eps, oder ǫ0 ) Bedeutung: ǫmach ist der kleinste relative Abstand zwischen zwei Maschinenzahlen, und damit unterste Schranke für alle mit einem Rechner erreichbaren (rel.) Genauigkeiten! Beispiel: von oben: ǫmach = 2−53 = exp(−53 log 2) = 1.11 . . ∗ 10−16 d.h., bei k = 53 ist eine relative Genauigkeit von maximal ca. 16 dezimalen Stellen möglich. 9 Seydel: Mathematik I, Kap. 1, WS 2008/09 Die Maschinenzahlen sind ungleichmäßig verteilt. Schematisch: 0 kleinste positive M.Z. Zahlengerade größte positive M.Z. Jede Zahl (Eingabe oder Resultat einer Rechnung) muss im Rechner durch eine Maschinenzahl ersetzt werden: x → f l(x) Der Einfluss der dabei entstehenden Fehler kann groß sein. 1.5 Fehler A.) relativer / absoluter Fehler 1 − cos x Motivation: Berechne f (x) = für x = 0.0001 x Taschenrechner: f¯(x) = 0.00004900000000... exakt: f (x) = 0.00004999999995... Definition/Bezeichnung: Es bezeichne x̄ eine Näherung zum exakten x (oder f¯ zu f , usw.) x − x̄ (oder x̄ − x oder |x − x̄|) heißt absoluter Fehler. x−x̄ x (oder ...) heißt relativer Fehler. Praxis: x (exakt) ist unbekannt, bekannt ist nur x̄, und eine Schätzung ξ für den absoluten Fehler. Dann: Schätzung für den relativen Fehler ist | x̄ξ | Hinweis: Nur die Größenordnung des Fehlers ist von Interesse. obiges Beispiel: maximal 2 Stellen sind exakt. |f − f¯| = 0.00000099... f − f¯ −2 f = 2 · 10 ≈ 10−6 Sprechweise (Dezimalsystem): “Genauigkeit von j (dezimalen) Stellen” heißt: | relativer Fehler | < 10−j (im Sinne von maximalem ganzzahligem j) j “significant digits” 10 Seydel: Mathematik I, Kap. 1, WS 2008/09 Beispiel: Äquatorumfang x̄ = 40000000 m x = 40075161 m 75 ⇒ relativer Fehler 40075 ≈ 0.0019 ≈ 10−3 , d.h. knapp 3 Stellen genau. Absoluter Fehler hier: 75161, gibt keinen Hinweis auf Genauigkeit. Schlimmer noch: Übergang zu anderer Skalierung (z.B. km) ändert nicht die Genauigkeit, und auch nicht den relativen Fehler, leider aber den absoluten Fehler. Merke: Der absolute Fehler ist nicht skalierungsunabhängig und kann leicht manipuliert werden. Zur Beschreibung der Genauigkeit ist i.A. (nur) der relative Fehler von Bedeutung. Problem: Grenzen des relativen Fehlers, wenn exaktes Resultat = 0. x → f l(x) B.) Erzeugen einer Maschinenzahl Beispiel: (k = 4 Dezimalstellen) π = 3.1415926 . . . ↓ Normalisieren 0.31415926 · 101 ւ ց 0.3141 · 101 Abschneiden (round to zero) 0.3142 · 101 Runden (round to nearest) benachbarte Maschinenzahlen Satz 1: f l(x) − x ≤ ǫmach x (falls kein overflow/underflow) (folgt aus Definition von ǫmach ) Dabei gilt ǫmach = B 1−k beim Abbrechen und ǫmach = 21 B 1−k beim Runden. Kommentar: Bereits bei der Eingabe muss man einen Fehler der Größe ǫmach erwarten! C.) Grundrechenarten: + Satz 2: − ∗ Symbol : ◦ ÷ Es seien x und y Maschinenzahlen. (!) Falls kein overflow/underflow: Der relative Fehler bei jeder der 4 Grundrechenarten ist durch ǫmach beschränkt. (folgt aus Satz 1: zuerst x ◦ y exakt als Zwischenresultat, danach f l(x ◦ y)) 11 Seydel: Mathematik I, Kap. 1, WS 2008/09 Das heißt f l(x ◦ y) − (x ◦ y) ≤ ǫmach x◦y Im Rechner gelten einige grundlegende mathematische Gesetze nicht! So gibt es Maschinenzahlen x und y 6= 0 mit f l(x + y) = x. (z.B. x = 1, |y| < ǫmach ). Die Gesetze (a + b) + c = a + (b + c) (Assoziativität) und a(b + c) = ab + ac (Distributivität) gelten im Rechner i.A. nicht. Merke: Algebraisch äquivalente Umformungen können im Rechner zu verschiedenen Resultaten führen! D.) Spezielle Funktionen Auch bei der Berechnung der speziellen Funktion wie z.B. √ x, sin x, ex , arctan x werden im Rechner durch Anwendung scharfsinniger Algorithmen der Mathematik meist die gleichen Genauigkeiten (wie oben ǫmach ) erreicht. Gelegentlich ist allerdings nur der absolute Fehler beschränkt. Zum Beispiel ist für x ≈ 1 die Version ln(1 + x) (mit x ≈ 0) besser als ln(x). E.) Algorithmen Im Allgemeinen ist jede eingegebene Zahl x1 , x2 , . . . , xn fehlerbehaftet. (zumindest Rundungsfehler; Fehler meist noch größer wegen Mess- und Modellfehlern!) Die Resultate y1 , y2 , . . . , ym hängen von der Eingabe ab: x1 x2 . .. xn Zuordnung −−−−−−−→ ϕ y1 y2 . . . ym Frage: Wie pflanzen sich Fehler in der Eingabe (oder in den Zwischenschritten) bis zum Resultat fort? Beispiel: Berechne a2 − b2 Eingabe x1 = a, x2 = b, d.h. n = 2, y(= y1 ) = x21 − x22 , d.h. m = 1 1. Möglichkeit: y = x21 − x22 =: ϕ(x1 , x2 ) 2. Möglichkeit: y = (x1 − x2 ) · (x1 + x2 ) =: ϕ̃(x1 , x2 ) 12 Seydel: Mathematik I, Kap. 1, WS 2008/09 Zahlenbeispiel: a = .3237, b = .3134 (B = 10, k = 4) 1. Möglichkeit liefert: 0.6580 ∗ 10−2 2. Möglichkeit liefert: 0.6562 ∗ 10−2 exaktes Resultat: 0.656213 ∗ 10−2 Definition: Ein Algorithmus ist eine der Reihenfolge nach eindeutig festgelegte Sequenz von endlich oder unendlich vielen “elementaren” Operationen. Frage: Was sind “gute” Algorithmen, wie lässt sich die “Güte” verbessern? Vorbemerkungen: 1. Eine bequeme äquivalente Schreibweise für den relativen Fehler ǫ= x̄ − x x ist x̄ = x(1 + ǫ). 2. ∆ als Symbol für absoluten Fehler: z.B. ∆x = x̄ − x 3. Vernachlässigen kleiner Terme: a + bǫ + cǫ2 =a ˙ + bǫ wenn nur |ǫ| klein genug ist. (Schreibweise = ˙ für “in 1. Näherung”) analog z.B. a + bǫ + cǫ1 ǫ2 =a ˙ + bǫ Schreibweise für Terme höherer Ordnung: O(ǫ2 ) , oder T.h.O. F.) Auslöschung Analyse der Subtraktion positiver Zahlen: y = x 1 − x2 ȳ = f l(x̄1 − x̄2 ) mit x̄1 = x1 (1 + ǫ1 ) x̄2 = x2 (1 + ǫ2 ) ǫ1 , ǫ2 sind die relativen Fehler von x̄1 , x̄2 , ǫ3 für Subtraktion. |ǫ3 | ist klein (Satz 2 in A.3), aber ǫ1 und ǫ2 können größer sein! ȳ = (x1 (1 + ǫ1 ) − x2 (1 + ǫ2 ))(1 + ǫ3 ) = (x1 − x2 + x1 ǫ1 − x2 ǫ2 )(1 + ǫ3 ) = x1 − x2 +x1 ǫ1 − x2 ǫ2 + (x1 − x2 )ǫ3 + O(ǫi ǫmach ) | {z } y . = y(1 + ǫ3 + x2 x1 ǫ1 − ǫ2 ) = y(1 + ǫsub ) x1 − x2 x1 − x2 Der relative Fehler im Resultat der Subtraktion, verursacht durch Eingangsfehler ǫ1 , ǫ2 ist 1 (x1 ǫ1 − x2 ǫ2 ) x1 − x2 also abhängig von x1 und x2 . 13 Seydel: Mathematik I, Kap. 1, WS 2008/09 1 2 Folgerung: Wenn x1 ≈ x2 , dann ist wenigstens einer der Faktoren | x1x−x |, | x1x−x | sehr 2 2 groß und verstärkt ǫ1 , ǫ2 . Damit ist der relative Fehler im Ergebnis der Subtraktion ≫ ǫmach Bezeichnung: Bei Subtraktion von 2 Zahlen x1 , x2 gleichen Vorzeichens (Addition bei verschiedenen Vorzeichen!) passiert Auslöschung, wenn x1 ≈ x2 . Merke: Versuche, gefährliche Subtraktion durch Umformung zu vermeiden! Beispiel: 1 − cos x für x ≈ 0. modellhafte Überlegung: x1 = 1 : −x2 = − cos x, z.B. : 1.0000000000000 mit ǫ1 = 0 −0. 9999998391 234 | {z }|{z} korrekt mit ǫ2 = 10−10 falsch = .0000001608766 . . . . .}. normalisiert = 0. 1608 | {z | {z }766 ǫx1 −x2 = 10−4 korrekt “Schmutz” völlig falsch! (wird als Resultat mit ausgedruckt und leider häufig geglaubt.) Abhilfe: einige Terme der Taylorentwicklung von cos x (Übung!). G.) Kondition Vorbemerkung: “Linearisierung” als Approximation einer Funktion, d.h. Ersetzen der Funktion durch Tangente. (Figur ...) Allgemein: y = ϕ(x) ȳ = ϕ(x̄) ) Linearisierung/Taylorentwicklung ∆x + T.h.O. ȳ = ϕ(x̄) = ϕ(x + ∆x) = ϕ(x) + dϕ(x) dx ↓ y ⇒ ȳ − y = ϕ(x̄) − ϕ(x) = Hinweis: dϕ(x) dx dϕ(x) · (x̄ − x) + O((x̄ − x)2 ) {z } | dx T.h.O. ist eine symbolische Schreibweise für die erste Ableitung. . Kurzfassung für den skalaren Fall (n = m = 1): ∆y = dϕ(x) dx ∆x . Das beschreibt die Verstärkung des absoluten Eingangsfehlers ∆x. Es folgt für den relativen Eingangsfehler ∆y . dϕ(x) x ∆x = y dx y x Die Konditionszahl des relativen Fehlers ist ist dϕ(x) dx . 14 dϕ(x) x , dx y (∗) diejenige des absoluten Fehlers Seydel: Mathematik I, Kap. 1, WS 2008/09 Definition: Ein Problem heißt schlecht konditioniert, wenn die |Konditionszahlen| “groß” sind, sonst gut konditioniert. (“groß” heißt z.B. > 10). Für den Vektorfall y1 = ϕ1 (x1 , . . . , xn ) .. . ym = ϕm (x1 , . . . , xn ) heißt das in erster Näherung: ∂ϕ1 (x) . ∂ϕ1 (x) ∆y1 = ∆x1 + . . . + ∆xn ∂x1 ∂xn .. . ∂ϕm (x) . ∂ϕm (x) ∆ym = ∆x1 + . . . + ∆xn ∂x1 ∂xn (∗∗) Dabei steht ∂ als Symbol für (erste) partielle Ableitungen (siehe z.B. Abschnitt 3.12). Die hier benötigten Vektoren, Matrizen, partiellen Ableitungen, Taylorentwicklung werden in den folgenden beiden Kapiteln der Vorlesung eingeführt und diskutiert. Beispiel: y = ϕ(x1 , x2 ), d.h. m = 1, n = 2 ∂ϕ(x1 , x2 ) ∂x1 ist die Ableitung nach x1 , wobei für diese Ableitung x2 als Konstante angesehen wird; ∂ϕ(x1 , x2 ) ∂x2 ist die Ableitung nach x2 , wobei für diese Ableitung x1 als Konstante angesehen wird. (∗∗) in Summenschreibweise: n . X ∂ϕi (x) ∆yi = ∆xj ∂x j j=1 | {z } messen Einfluss des absoluten Fehlers ∆xj auf yi Relativer Fehler analog wie in (∗) (für xj , yi 6= 0): n ∆yi . X = yi j=1 ∂ϕi (x) xj ∂xj yi | {z } ∆xj xj “Konditionszahlen” des relativen Fehlers Die Konditionszahlen des relativen Fehlers geben an, wie stark der (relative) Eingangsfehler ǫxj = ∆xj xj ǫyi = ∆yi yi den (relativen) Resultatfehler beeinflusst. (Fehler von Zwischenoperationen sind hierin noch nicht enthalten!) 15 Seydel: Mathematik I, Kap. 1, WS 2008/09 Beispiel: (Übungen, sowie:) √ √ x ist gut konditioniert! Denn für y = ϕ(x) = x ergibt sich 1 x 1 dϕ(x) x · = √ √ = dx y 2 x x 2 dϕ x Merke: Die “Kondition” dϕ dx bzw. dx y hängt nicht vom Algorithmus ab, der das Problem lösen soll: Der Beitrag ungenauer Eingabedaten lässt sich durch keine noch so scharfsinnige Wahl eines Algorithmus beeinflussen! (zu Rundungsfehlern siehe Abschnitt 2.9) 16 Seydel: Mathematik I, Kap. 2, WS 2008/09 Kapitel 2 Lineare Algebra 2.1 Vektoren, Matrizen, Gleichungssysteme Ein rechteckiges Schema, in welches in “Zeilen” und “Spalten” Variablen oder Zahlen eingetragen sind, heißt Matrix. A.) Beispiele Beispiel 1 Lineares Gleichungssystem, z.B. ( 7x − 3y = −5 2x + 4y = 3 . Die Koeffizienten, mit denen die Unbekannten x und y in die Gleichungen eingehen, lassen sich in einer (2 × 2)-Matrix darstellen: 7 −3 2 4 (2 Zeilen, 2 Spalten) Spezialfälle: Eine Matrix, die nur aus einer Zeile besteht, heißt Zeilenvektor. Eine Matrix, die nur aus einer Spalte besteht, heißt Spaltenvektor. Konvention: Wenn man von “Vektor” spricht, meint man Spaltenvektor. obiges Beispiel: −5 ist der Vektor der “rechten Seite” 3 x ist der Vektor der Unbekannten y Beispiel 2 (vgl. Kondition im Abschnitt 1.5G) ∂ϕ1 ∂ϕ1 . . . ∂x ∂x1 n . . .. .. ∂ϕm m . . . ∂ϕ ∂x1 ∂xn Mit m Zeilen und n Spalten ist dies eine m × n-Matrix. Die 1.) 2.) 3.) drei Teile eines Gleichungssystems: Vektor der Unbekannten Matrix der Koeffizienten (Faktoren der Unbekannten) Vektor der “rechten Seite” 17 Seydel: Mathematik I, Kap. 2, WS 2008/09 Hinweis: Die Reihenfolge der Unbekannten und Gleichungen spiegelt sich in der KoeffizientenMatrix bzw. im Vektor der rechten Seite wider! Bem.: Ein Term wie 7x ist “linear” in x, Terme wie x2 , sin x, x1 sind nichtlinear in x. Allgemein ist ein additver Term αx1 (= αx) ein linearer Term (linear in x). Bsp.: xy 2 ist linear in x und nichtlinear in y, und xy ist nichtlinear, wenn x und y Unbekannte sind. Die Gleichungen von Bsp. 1 und Bsp. 2 sind Systeme linearer Gleichungen (linear in allen Variablen, hier x und y). B.) Allgemeine Schreibweise 1.) Vektor der Unbekannten: x1 x2 . =: ~x =: x .. xn Die Anzahl n der Unbekannten heißt die “Dimension” des Gleichungssystems. Im Beispiel 1 gilt n = 2. 2.) Matrix der Koeffizienten: a11 a21 . .. an1 a1n a2n =: A .. . a12 a22 ... ... an2 . . . ann aij ist das “Element” in der i-ten Zeile, j-ten Spalte. (ij ist hier kein Produkt, sondern zwei nebeneinandergestellte Indices) 3.) Vektor der “rechten Seite”: b1 b2 . =: ~b =: b .. bn Definition: Ein Skalar ist eine einzelne Zahl, kein Vektor. (schöner) Brauch: Schreibe Matrizen als große Buchstaben (A, B, C, . . .) und Vektoren als kleine Buchstaben (x, y, c, b, . . .), evtl. mit “Pfeil” (~x, ~b), und Skalare mit griechischen Buchstaben (α, β, γ, . . .). Bezeichnung: Die Elemente eines Vektors heißen Komponenten. Hierarchie: Skalar, Vektor, Matrix (0-dim. / 1-dim. / 2-dim. “Feld”) 18 Seydel: Mathematik I, Kap. 2, WS 2008/09 C.) Rechnen mit Vektoren a1 b1 a2 b , ~b = .2 zwei Vektoren. Es seien ~a = . .. .. an bn a1 + b1 a2 + b2 , also komponentenweise. Addition: a + b = ~a + ~b := .. . an + bn analog: Subtraktion ~a − ~b Vektor ∗ Skalar Es sei α ein Skalar. αa1 αa2 αa = α~a := ... , also wiederum komponentenweise αar Vektor ∗ Vektor : geht das ? Definition: Skalarprodukt ~a · ~b := a1 b1 + a2 b2 + . . . + an bn klar: Das Skalarprodukt ist ein Skalar! andere Bezeichnungen: atr b, < a, b >, . . . 1. Hinweis: Division durch einen Vektor gibt es nicht! 2. Hinweis: Aufwand: n + (n − 1) = 2n − 1 = O(n) Operationen 3. Hinweis: Für den Spezialfall n = 3 gibt es auch ein anderes Produkt von Vektoren, das einen Vektor liefert (“Vektorprodukt”). Aus jedem Zeilenvektor entsteht ein Spaltenvektor durch “Kippen”, und umgekehrt. Diesen Prozess des “Kippens” nennt man Transponieren. Schreibweise z.B. ~a′ , ~aT , ~atr sind Zeilenvektoren; ~a (ohne Transponierungsmarkierung) ist immer ein Spaltenvektor. D.) Längen und Winkel geometrische Bedeutung von Vektoren: Jedem Vektor u entspricht ein “Pfeil” (gerichtetes Geradenstück) mit Fußpunkt im Koordinatenursprung und Spitze im Punkt mit den Koordinaten u (Illustration für n = 2 in der (x1 , x2 )-Ebene ...). So macht es Sinn, nach Längen von Vektoren und Winkeln zwischen Vektoren zu fragen. √ Definition: (Euklidische) Länge eines Vektors ||v|| := v tr v (“Norm”, Bezeichnung auch ||v||2 im Unterschied zu anderen Normen) 1 u Definition: Einheitsvektor ||u|| = 1 Beispiele: v = , v := ||u|| 0 Definition: Winkel ϕ zwischen v und w: cos ϕ = v tr w ||v|| ||w|| 19 Seydel: Mathematik I, Kap. 2, WS 2008/09 Kriterium für aufeinander senkrecht stehende Vektoren (ϕ = π/2): utr v = 0 ⇔ u und v orthogonal Schwarz’sche Ungleichung |v tr w| ≤ ||v|| ||w|| E.) Matrizen sind aus Vektoren aufgebaut Jede Matrix kann man sich aus Zeilen- oder Spaltenvektoren aufgebaut denken: a11 ... an1 ... a1n .. = ( s~1 . s~2 z~1 tr z~2 tr s~n ) = ... ... . . . ann z~n tr n Spaltenvektoren a12 a22 a32 z.B. s~2 = . .. n Zeilenvektoren (nur der “Zeilenindex läuft”), oder z~6 tr = (a61 , a62 , . . . , a6n ). an2 F.) lineares Gleichungssystem in Matrizenschreibweise: a11 x1 + a12 x2 + . . . + a1n xn a21 x1 + a22 x2 + . . . + a2n xn = = b1 b2 .. . an1 x1 + an2 x2 + . . . + ann xn = bn (1) Das sind n skalare Gleichungen. Nach obigen Rechenregeln gibt es zwei äquivalente Schreibweisen: b1 a1n a12 a11 b a a a21 xn = .2 x2 + . . . + 2n . x1 + 22 . . .. .. .. .. bn ann an2 an1 (2) (eine Vektorgleichung; Summe von Spaltenvektoren), oder, da jede skalare Gleichung in (1) ein Skalarprodukt beinhaltet: (a11 , a12 , . . . , a1n) (a21 , a22 , . . . , a2n) · ~x · ~x .. . (an1 , an2 , . . . , ann ) · ~x (n skalare Gleichungen) 20 = = b1 b2 = bn (3) Seydel: Mathematik I, Kap. 2, WS 2008/09 Definiton: Matrix ∗ Spaltenvektor a11 a1n a21 a x1 + . . . + 2n Ax := . .. ... xn an1 ann (also über Version (2), oder, äquivalent, über Version (3)) Mit diesen Konventionen lassen sich lineare Gleichungssysteme so schreiben: A~x = ~b oder Ax = b (4) (oder andere Buchstaben, oder Angabe von Zahlen wie im Übungsblatt) Die “Matrix-Vektor-Schreibweise” (4) dominiert die Literatur. Inhaltlich identisch wie (1), (2) oder (3). In Literatur meist Fettdruck statt Pfeilen Ax = b (Fettdruck für Matrizen und Vektoren, Normaldruck für Skalare). weiteres Beispiel für Matrix ∗ Vektor (vgl. Abschnitt 1.5G): ∂ϕ1 ∂x1 ... ∂ϕm ∂x1 ... {z . . ∆y = .. | ∂ϕ1 ∂xn .. . ∆x ∂ϕm ∂xn =:Dϕ } Definition: transponierte Matrix: Vertauscht man die Zeilen mit den Spalten von A, dann erhält man Atr . Beispiele: 2 5 2 3 tr 1.) A = 3 −1 , A = 5 −1 0 1 2.) Vektor a ⇒ atr ist Zeile 0 1 Definition: symmetrische Matrix, wenn A = Atr (d.h. aij = aji für alle i, j) Definition: Nullmatrix 0: enthält nur Nullen Definition: Einheitsmatrix: 1 0 0 1 I := ... ... 0 0 21 ... 0 0 . .. . .. ... 1 Seydel: Mathematik I, Kap. 2, WS 2008/09 2.2 Der Algorithmus von Gauß Gegeben: n skalare, lineare Gleichungen für n Unbekannte x1 , . . ., xn : a11 . . . a1n x1 b1 . . . .. .. .. = ... oder Ax = b an1 . . . ann xn bn Die i-te Gleichung lautet n X aij xj = bi j=1 Idee: Addiere geeignete Vielfache von Zeile k auf Zeile i, derart, dass Nullen entstehen. Strategie der Wahl von i, k, so dass ein mit Ax = b äquivalentes Gleichungsystem Ãx = b̃ entsteht, bei dem à obere “Dreiecksmatrix” ist. Dies geschieht i.A. “vorwärts”, vgl. Algorithmus unten. Resultat dieser ersten Phase: . . . . . . . . . . . . . . . x = b̃ . . . 0 . . . Danach 2. Phase: Rückwärtselimination: b̃n 1 xn = ⇒ xn−1 = (b̃n−1 − xn ãn−1,n ) ãnn ãn−1,n−1 u.s.w. erhält man xn−2 , . . . , bis x2 , x1 Kosten der ersten Phase: O(n3 ) Operation, s.u. Kosten der zweiten Phase: in jeder Zeile i.W. ein Skalarprodukt (von zunehmender Länge), also jeweils O(n) Operationen. Macht zusammen O(n2 ) Operationen für die Rückwärtselimination. Für die Zusammenfassung lasse die Tilde ( ˜ ) weg. Die Restmatrizen werden jeweils verändert; aktuelle Version mit hochgestellten Indices: j-ter Hauptschritt: (j) (j) bj a j+1,j . . . . (j) bj+1 . . . . a (j) n,j bn a jj 0 (j) (j) j-1 Ziel: =0! 22 Seydel: Mathematik I, Kap. 2, WS 2008/09 Algorithmus Für k = 1, 2, . . . , n − 1: Annahme akk 6= 0 (anderenfalls Zeilenvertauschung von Zeile k mit Zeile “unterhalb”: Pivotstrategie) für i = k + 1, k + 2, . . . , n: für j = k + 1, k + 2, . . . , n: ik akj aij := aij − aakk aik bi := bi − akk bk n xn := abnn Für i = n − 1, nP − 2, . . . , 1: n xi := (bi − j=i+1 aij xj )/aii Hinweis: Die ursprüngliche Matrix A wird dabei überschrieben. Pivotstrategie: Wichtige Klassen von Matrizen brauchen keine Pivotstrategie, da akk 6= 0 jeweils garantiert werden kann. Solche Matrizen Pn sind z.B. (1) die diagonal-dominanten Matrizen (|akk | > i6=k |aki | für alle k) (2) die positiv-definiten Matrizen (Atr = A und xtr Ax > 0 für x 6= 0) Kosten: Drei ineinandergeschachtelte Schleifen deuten auf O(n3 ) hin. Konkret: 23 n3 + O(n2 ) Operationen (+, −, ·, /). Ein kompaktes Programm ist möglich mit ai,n+1 := bi , d.h. Anhängen von b an A. Es können auch mehrere Vektoren b gleichzeitig bearbeitet werden. Warnung: Für n > 3 nicht die Cramersche Regel benutzen, da viel zu teuer bzw. nicht durchführbar! 2.3 Arbeiten mit Matrizen Bezeichnung der Elemente der Matrizen A, B, C: A = ((aij )) , B = ((bij )) , C = ((cij )) A.) Addition von Matrizen erfolgt komponentenweise: C = A + B mit cij := aij + bij für alle i, j . Voraussetzung: Die Matrizen müssen gleich groß sein. Analog: Subtraktion. Regeln: A+B =B+A (A + B) + C = A + (B + C) B.) Multiplikation von Matrizen Matrizen A und B müssen für das Produkt AB wie folgt zusammenpassen: A sei m × n und 23 B sei n × l . Seydel: Mathematik I, Kap. 2, WS 2008/09 Dann ist C := AB definiert über cij := n X aik bkj für i = 1, . . . , m , j = 1, . . . , l . k=1 Also: Skalarprodukt der i-ten Zeile der Matrix A mit der j-ten Spalte von B. Vorsicht mit der Bezeichnung: In dieser Formel steht A für den linken Faktor und B für den rechten Faktor. (gegebenenfalls an andere Bezeichnungen anpassen) Die Produktmatrix C ist also m × l. Spezialfall m = l = 1: Zeile ∗ Vektor, d.h. Skalarprodukt, z.B. utr v Rechenregeln: A(BC) = (AB)C = ABC (Klammern hier unnötig) C(A + B) = CA + CB (AB)tr = B tr Atr aber: i.A. AB 6= BA ! möglich ist: Matrix ∗ Spaltenvektor (z.B. Ax) Zeilenvektor ∗ Matrix (z.B. y tr A) y tr Ax ist Skalar nicht möglich: Matrix ∗ Zeile , Spalte ∗ Matrix , Division durch Matrix. C.) Inverse Matrix Voraussetzung: A ist quadratisch: n × n. Falls es eine Matrix B gibt mit AB = I, dann heißt B inverse Matrix von A. Bezeichnung: A−1 Dann gilt AA−1 = I = A−1 A Vorsicht: Die Inverse existiert nicht zu jeder Matrix! Matrizen, zu denen es keine Inverse gibt, heißen singulär. Notwendiges und hinreichendes Kriterium für Singularität von A: Es gibt Vektor x 6= 0 mit Ax = 0 . Die nichtsingulären Matrizen heißen auch regulär. Spezialfall 2 × 2 Matrix: −1 1 = ad − bc a b ad − bc heißt die Determinante von . c d a b c d 24 d −c −b a Seydel: Mathematik I, Kap. 2, WS 2008/09 A invertierbar ⇔ Determinate 6= 0. Rechenregeln: (AB)−1 = B −1 A−1 (A−1 )tr = (Atr )−1 Falls A−1 exisitiert (A nichtsingulär), dann muss A n Pivotelemente 6= 0 haben. D.) Permutationsmatrizen Definition: Eine n × n-Matrix P heißt Permutationsmatrix, wenn in jeder Zeile und in jeder Spalte von P genau eine 1 steht und sonst nur Nullen. (Beispiel einer Permutationsmatrix...) Anwendung:: P A vertauscht Zeilen von A, AP vertauscht Spalten von A. E.) Orthogonale Matrizen Eine quadratische Matrix Q mit der Eigenschaft Qtr Q = I heißt orthogonal. Es gilt also Qtr = Q−1 . Die Spalten von Q sind “orthonormal”, d.h. orthogonal mit Einheitslänge. cos ϕ − sin ϕ Beispiel 1: Drehmatrix sin ϕ cos ϕ Die Multiplikation cos ϕ − sin ϕ u1 sin ϕ cos ϕ u2 u1 bewirkt eine Drehung des Vektors um den Winkel ϕ im mathematisch posu2 itiven Sinn (d.h. gegen den Uhrzeigersinn). 1 Illustration am Beispiel mit u = , ϕ = π2 . 2 Beispiel 2: Jede Permutationsmatrix, weil die Spalten orthonormal sind. Beispiel 3: Reflexionen, Householder-Matrizen, vgl. §2.9, z.B. 1 0 0 Q := 0 1 0 0 0 −1 Qx vermittelt eine Spiegelung an der Ebene x3 = 0. LU-Zerlegung: Falls A faktorisiert ist in A = LU , . .. .. .. .. .. .. 1. 1 0 . .. .. .. .. wobei L = ... ... 1.. 1. 1 , U = . .. .. , 0 .. .. .. .. .. 1. 1 . dann ist das Lösen von Ax = b einfach: Wegen F.) Ax = LU x = b = Ly |{z} =y 1. Schritt: Löse Ly = b: “Vorwärtssubstitution” 2. Schritt: Löse U x = y: “Rückwärtselimination” (Häufige Bezeichnung R statt U , dann also LR-Zerlegung.) 25 Seydel: Mathematik I, Kap. 2, WS 2008/09 Frage: Existiert eine Zerlegung A = LU immer? Antwort: Nur wenn A nichtsingulär (also “regulär”) ist und man Zeilenvertauschungen von A zulässt. Zur Formalisierung benutze Permutationsmatrizen. Satz: Für jede nichtsinguläre (= reguläre) Matrix A gibt es eine Permutationsmatrix P sowie Dreiecksmatrizen L und U von obigem Typ, so dass P A = LU Ausführung der LU -Zerlegung ist äquivalent zum Gaußschen Algorithmus. G.) Qualität der Lösung Definition: Residuum: Es sei x̄ eine berechnete “Lösung”, dann heißt der Vektor r := b − Ax̄ das Residuum von Ax = b. Das Residuum ist durch Zeilenskalierung DAx = Db beliebig manipulierbar (D: Diagonalmatrix). Denn: neues Residuum = Db − DAx = Dr . Warnung: kleines Residuum 6⇒ genaue Lösung 2.4 Vektorräume IRn := { Spaltenvektoren mit n Komponenten} Definition: Ein Vektorraum ist eine Menge, deren Elemente durch zwei Operationen verknüpft werden können, hier Addition und Multiplikation. Dabei gelten die üblichen (Vektor-)Rechenregeln, und Addition u + v und Multiplikation mit Skalaren αu führen nicht aus dem Raum heraus. D.h. das Ergebnis gehört zu dem gleichen Raum. “Reeller” Vektorraum, weil α ∈ IR. Beispiele: 1.) IRn 2.) der Raum aller reellen Funktionen. Unterräume von Vektorräumen enthalten immer die 0, u + v und αu. Beispiele: x1 .. . 1.) | x ∈ IR i xn−1 0 2.) Spaltenraum einer Matrix (“Bild einer Matrix”) := {Ax | x ∈ IRn } = { Linearkombinationen der Spalten von A} Nachweis: A · 0 = 0, u, v im Spaltenraum ⇒ ∃x, y mit u = Ax, v = Ay (usw.) 26 Seydel: Mathematik I, Kap. 2, WS 2008/09 1 0 2a) speziell mit A = 4 3 2 3 Ebene, aufgespannt von den Spalten: 1 0 u = α4 + β 3 2 3 Bemerkung: Wenn A eine m × n-Matrix ist (m Zeilen, n Spalten) und x ∈ IRn , dann ist Ax ∈ IRm . Das Ergebnis Ax kann man als “Bild” von x ansehen. (Illustration Urbildraum, Bildraum . . .) Wie das Beispiel 2a) mit m = 3 zeigt, muss der Bildraum nicht der “volle” IRm sein. 3.) Kern von A Kern(A) := {Lösung x von Ax = 0} Für alle invertierbaren Matrizen ist dies nur der Nullvektor. Kern(A) ist Unterraum, denn: Es gelte Ax = 0 und Ay = 0. dann folgt A(x + y) = Ax + Ay = 0 A(αx) = αAx = 0 3a) x + 2y + 3z = 0 im IR3 beschreibt Ebene durch Koordinaten-Ursprung. A = (1 2 3) x + 2y + 3z = 6 ist auch Ebene, aber kein Unterraum, weil die 0 nicht enthalten ist. Zurück zu Ax = b: Frage: Zählen identische Gleichungen oder 0 = 0 mit? Definition: Rang einer Matrix ist die Anzahl ihrer Pivotelemente (6= 0). Bezeichnung: r Definition: Treppenmatrix, auch “Zeilenstufenform” ∗ 0 U = 0 0 0 ∗ 0 0 0 ∗ 0 0 0 0 ∗ 0 0 ∗ 0 0 0 0 0 0 Diese Beispiel-(5 × 9)-Matrix hat 4 Pivotelmente. ∗ bedeutet: Zahl 6= 0; der Rest der Zeilen ist mit beliebigen Zahlen gefüllt. Auftreten: Wie beim Gaußschen Algorithmus gezeigt, lassen sich Treppenmatrizen durch Zeilenoperationen aus jeder Matrix A erzeugen! (einschließlich Zeilenvertauschungen) Beispiel: Bei obiger 5 × 9-Matrix U ist r = 4. 0 α 0 0 1 0 β 0 1 0 Spaltenraum: α 0 + β 0 + γ 1 + δ 0 = γ ⊂ IR5 1 0 0 0 δ 0 0 0 0 0 27 Seydel: Mathematik I, Kap. 2, WS 2008/09 Kern(U ): “Pivotvariablen” sind diejenigen xj , bei denen Pivotelemente stehen, also hier x1 , x2 , x5 , x6 . “Freie Variablen”: alle anderen, hier also: x3 , x4 , x7 , x8 , x9 . Die freien Variablen können beliebig gesetzt werden! (Z.B. mit Nullen und Einsen.) Anschließend erhält man die Pivotvariablen durch Lösen von U x = 0. Jede Setzung der freien Variablen führt auf eine “spezielle Lösung”. Z.B. setze willkürlich x3 = 1, x4 = x7 = x8 = x9 = 0. Vereinbarung: In jeder speziellen Lösung der Gleichung Ax = 0 bzw. U x = 0 wird eine der freien Variablen auf 1, die anderen auf 0 gesetzt. 1 5 7 Zahlenbeispiel [Strang] U = 0 0 9 freie Variable: x2 (z.B. setze x2 = 1) allgemeine Lösung von U x = 0: x3 = 0 ⇒ x1 + 5x2 + 0 = 0 x1 −5x2 −5 ⇒ x2 = x2 = x 2 1 x3 0 0 (Gerade im (x, y, z) − Raum) −5 spezielle Lösung: 1 0 Bei jeder m × n-Matrix gilt Rang ≤ m und Rang ≤ n. Man sagt, der Rang ist “voll”, wenn er maximal ist, d.h. r = min(n, m). Lösungen von Ax = b: Für Ax = 0 gibt es n − Rang(A) viele spezielle Lösungen. Homogene Lösung xh löst Ax = 0. (Ax = 0 heißt auch “homogenes Gleichungssystem”.) Eine partikuläre Lösung xp erhält man, wenn alle freien Variablen = 0 gesetzt werden: Axp = b. allgemeine Lösung: x = xh + xp (denn: Ax = 0 + Axp = b) 2.5 Dimension und Basis von Vektorräumen Definition: Die Spalten einer Matrix heißen linear unabhängig, wenn x = 0 die einzige Lösung von Ax = 0 ist. (d.h. A ist regulär) Noch allgemeiner (nicht nur bei Matrizen): n Vektoren ~v1 , . . . , ~vn heißen linear unabhängig, wenn x1~v1 + . . . + xn~vn = ~0 ⇒ x1 = . . . = xn = 0 . 28 Seydel: Mathematik I, Kap. 2, WS 2008/09 (D.h. der Nullvektor lässt sich nur durch die triviale Kombination 0 · ~v1 + . . . + 0 · ~vn darstellen.) Anderenfalls heißen die Vektoren linear abhängig. Beispiel im IR2 : 1 0 1 1 1 1 1 1 0 sind linear unabhängig 1 0 sind linear unabhängig 1.01 2 sind linear abhängig 2 0 sind linear abhängig 0 und und und und Im IRn gibt es maximal n linear unabhängige Vektoren. 1 5 3 Beispiel: Sind die Vektoren v1 = −2 , v2 = 6 , v3 = 2 linear unabhängig? 3 −1 1 x1 v1 + x2 v2 + x3 v3 = 0 → 1 5 3 0 ⇔ x1 −2 + x2 6 + x3 2 = 0 3 −1 1 0 ⇔ 1 5 −2 6 3 −1 | {z =:A allgemeine Lösung von Ax = 0: 3 x1 0 2 x2 = 0 1 x3 0 } − 12 c x = − 21 c , c c ∈ IR beliebig Insbesondere ist x1 = − 12 , x2 = − 12 , x3 = 1 eine Lösung. ⇒ v1 , v2 , v3 sind linear abhängig. Definition: Eine Menge von Vektoren erzeugt einen Raum, wenn die Menge der Linearkombinationen den Raum genau ausfüllt. (auch “aufspannen” statt “erzeugen”) Menge der Linearkombinationen von n Vektoren ~v1 , . . . , ~vn : ( n X ) αi~vi | αi ∈ IR i=1 Bezeichung: span(~v1 , . . . , ~vn ) oder “lineare Hülle” 29 Seydel: Mathematik I, Kap. 2, WS 2008/09 Beispiel: Der Spaltenraum einer Matrix A wird von den Spalten erzeugt. Defintion: Eine Basis eines Vektorraumes ist eine Menge von Vektoren mit den beiden Eigenschaften: 1.) Die Vektoren sind linear unabhängig. 2.) Die Vektoren erzeugen den Vektorraum. 1 0 0 Beispiel: 0 , 1 , 0 bilden die sogenannte “Standard-Basis” des IR3 (analog 0 0 1 n IR ) Beispiel: Die Spalten jeder invertierbaren n × n-Matrix bilden eine Basis des IRn . Sind ~v1 , . . . , ~vm und w ~ 1, . . . , w ~ n zwei Basen desselben Vektorraumes, so gilt m = n. Defintion: Die Dimension eines Vektorraumes ist durch die Anzahl der Vektoren in jeder Basis des Raums definiert. Beispiel: IRn ist n-dimensional. Beispiel: {1, x, x2 } ist Basis des Raumes aller Polynome vom Grad ≤ 2 {α0 + α1 x + α2 x2 | αi ∈ IR} Beispiel: Der Kern von A hat die Dimension n − Rang(A), und die speziellen Lösungen bilden eine Basis von Kern(A). Beispiel: Matrix vom Rang 1: A = uv tr = Spalte ∗ Zeile Wichtige Eigenschaften: Satz: Es sei A eine reelle m × n Matrix (m Zeilen, n Spalten). Dann gelten die Eigenschaften: 1.) Rang(A) = Rang(Atr ) 2.) dim(Bild(A)) + dim(Kern(A)) = n 3.) dim(Bild(Atr )) + dim(Kern(Atr )) = m 4.) Rang(A) = dim(Bild(A)) Beispiel: lineares Gleichungssystem x1 + 2x2 + 3x3 = 6 x2 + 2x4 = 3 3x1 − x4 = 2 x1 + 3x2 + 3x3 + 2x4 = 9 1 0 ⇔ Ax = b mit A = 3 1 2 1 0 3 30 3 0 0 3 0 2 , −1 2 6 3 b= 2 9 Seydel: Mathematik I, Kap. 2, WS 2008/09 Anwendung des Gaußschen Algorithmus liefert: 1 0 3 1 2 1 0 3 3 0 0 3 6 1 3 0 → ... → 2 0 0 9 0 2 −1 2 2 1 0 0 3 0 −9 0 0 2 11 0 6 3 2 0 → Rang(A) = 3, Kern(A) = {x ∈ IR4 |x4 = a , x3 = 11 a 9 , x2 = −2a , x1 = 31 a , a ∈ IR} 1 1 3 3 −2 −2 = a · 11 a ∈ IR = span 11 9 9 1 1 → Lösungsmenge des homogenen Gleichungssystems x4 ist freie Variable, dim(Kern(A)) = 1. partikuläre Lösung von Ax = b : 2 3 ⇒ allgemeine Lösung von Ax = b: 3 xp = 2 −9 0 + 13 c 3 − 2c x = xh + xp = 2 11 , c ∈ IR −9 + 9 c c 2 3 2.6 Determinanten • A ∈ IR 2×2 : det(A) = det Schema: siehe Vorlesung a11 a21 a12 a22 = a11 a22 − a12 a21 • A ∈ IR3×3 : a11 det(A) = det a21 a31 a12 a22 a32 a13 a23 a33 = a11 a22 a33 + a12 a23 a31 + a13 a21 a32 − a13 a22 a31 − a11 a23 a32 − a12 a21 a33 Schema: siehe Vorlesung (Regel von Sarrus) 31 Seydel: Mathematik I, Kap. 2, WS 2008/09 Definition: Sei A ∈ IRn×n . Der Minor Mij des Elements aij ist als Determinate derjenigen Untermatrix definiert, die sich durch Streichen der i-ten Zeile und j-ten Spalte aus A ergibt. Die Zahl Cij := (−1)i+j Mij heißt Kofaktor des Elements aij . Beispiel: 1 −4 5 6 4 8 3 −4 = det = 26 , C32 = (−1)3+2 M32 = −26 2 6 3 A= 2 1 M32 Vorzeichen für Cij aus Schema: + − + − .. . − + − + − + − + + − + − ... ... ... ... Satz: Sei A ∈ IRn×n . Dann gilt für jedes 1 ≤ i ≤ n und jedes 1 ≤ j ≤ n: det(A) = a1j C1j + a2j C2j + · · · + anj Cnj = n X akj Ckj k=1 (Entwicklung nach der j-ten Spalte) und det(A) = ai1 Ci1 + ai2 Ci2 + · · · + ain Cin = n X aik Cik k=1 (Entwicklung nach der i-ten Zeile) Beispiel: Entwicklung nach der 1. Zeile 3 1 det −2 −4 5 4 0 −4 3 = 3 · det 4 −2 3 −2 − 1 · det −2 5 3 −2 + 0 · det −2 5 −4 4 = . . . = −1 Beispiel: Entwicklung nach der 1. Spalte 0 1 det 0 1 2 −1 3 4 −1 1 0 3 1 2 −1 2 −1 1 = −1 · det −3 0 3 −2 = . . . = 15 32 1 2 −3 − 1 · det 3 −2 −1 −1 4 1 1 2 −3 Seydel: Mathematik I, Kap. 2, WS 2008/09 Satz: Es seien A ∈ IRn×n und b ∈ IRn . Dann sind folgende Aussagen äquivalent: (1) Ax = b ist eindeutig lösbar. (2) A ist regulär. (3) Kern(A) = {0} . (4) det(A) 6= 0 . Satz: (1) det(AB) = det(A) det(B) (2) det(Atr ) = det(A) Orthogonale Matrizen Q haben die Determinante +1 oder −1, denn: 1 = det(I) = det(Qtr Q) = det(Qtr )det(Q) = det(Q) det(Q) = (det(Q))2 2.7 Eigenwerte A n × n Matrix, A = ((aij ))i=1,...,n, j=1,...,n x n-Vektor (Komponenten evtl. komplexe Zahlen; vgl. späteren Abschnitt 3.2) Definition: Falls es ein x 6= 0 gibt mit einem λ, so dass Ax = λx gilt, dann heißt x Eigenvektor und λ Eigenwert (wiederum evtl. komplexe Zahlen). Erste Eigenschaften: (1) A hat höchstens n verschiedene Eigenwerte. (2) Wenn A symmetrisch (akj = ajk ) ist, dann sind die Eigenwerte reell. (3) Eigenvektoren zu verschiedenen Eigenwerten sind linear unabhängig. (Hinweis: Jeder n-Vektor y kann eindeutig durch n linear unabhängige Vektoren n X (1) (n) ck x(k) . Insbesondere wenn A n verx ,...,x dargestellt werden: y = k=1 schiedene Eigenwerte hat, können die x(k) als Eigenvektoren gewählt werden.) (4) Eigenwerte sind Nullstellen des charakteristischen Polynoms ϕ(λ) := det(A − λI) , wobei I die Einheitsmatrix ist. [denn: ∃ x 6= 0 : Ax = λx ⇔ ∃ x 6= 0 : (A − λI)x = 0 ⇔ det(A − λI) = 0] Definition: Mehrfacher Eigenwert: λk ist ein mehrfacher Eigenwert, wenn es eine mehrfache Nullstelle des charakteristischen Polynoms ϕ(λ) ist. (entsprechend: “einfacher Eigenwert”) 33 Seydel: Mathematik I, Kap. 2, WS 2008/09 −7 Beispiel: A = 13 −16 13 −10 13 −16 13 −7 charakteristisches Polynom ϕ(λ) = −7 − λ det 13 −16 13 −10 − λ 13 −16 13 −7 − λ (entwickelt nach erster Zeile:) = − (7 + λ){(10 + λ)(7 + λ) − 132 } − 13{−13(7 + λ) + 13 · 16} − 16{132 − 16(10 + λ)} = . . . = −λ3 − 24λ2 + 405λ − 972 = − (λ − 3)(λ − 9)(λ + 36) ⇒ λ1 = 3, λ2 = 9, λ3 = −36 sind die Eigenwerte Berechnung der Eigenvektoren über lineare Gleichungssysteme: z.B. für λ3 : 29 13 −16 x1 ! (A − λ3 I)x = (A + 36I)x = 13 26 13 x2 = 0 −16 13 29 x3 Bemerkung: (1) Wegen der Singularität von (A − λI) ist wenigstens eine der drei skalaren Gleichungen redundant. (2) Falls x Eigenvektor ist, dann auch αx für alle Faktoren α 6= 0. Also ist x so normierbar, dass eine Komponente = 1 ist. obiges Beispiel: Versuch mit 1. Komponente: x1 = 0 ⇒ x2 = x3 = 0, also: x1 6= 0. Setze x1 = 1. Es bleibt: 13x2 − 16x3 = −29 26x2 + 13x3 = −13 → 3. Gleich. – 1. Gleich. 13x2 + 29x3 = 16 45x3 = 45 ⇒ x3 = 1 ⇒ x2 = Also: −13 = −1 13 1 x(3) = −1 ist Eigenvektor zum Eigenwert λ3 = 36; 1 analoges Vorgehen für λ1 , λ2 . 34 Seydel: Mathematik I, Kap. 2, WS 2008/09 2.8 Normen Abstand von skalaren Zahlen |x − x|; Ziel: Verallgemeinern auf Vektoren und Matrizen. A.) Matrix-Normen: Vektor-Normen kxk haben die “Norm-Eigenschaften” (V 1) kxk ≥ 0 (V 2) (V 3) (V 4) kxk = 0 ⇔ x = 0 kαxk = |α|kxk für Skalar α kx + yk ≤ kxk + kyk (Dreiecksungleichung) (geometrische Bedeutung der Dreiecksungleichung im IR2 ...) Beispiele: v u n uX x2i kxk2 :=t “Euklidische Norm”, Länge, “2-Norm” i=1 kxk∞ (Folgerung: kxk22 = xtr x) := max |xi | “Maximum-Norm”, “Unendlich-Norm” 1≤i≤n x x 2 2 1 1 1 1 x 1 x 1 kxk2 ≤ 1 (Erklärung der Indices 2, ∞ über p-Norm...) kxk∞ ≤ 1 Die zur Vektornorm kxk passende “natürliche” Matrixnorm ist definiert als kAk := max x6=0 kAxk kxk (Von der ursprünglichen Definition als “supremum” auch der Name least upper bound; heißt auch “lub-Norm”.) Es gilt wegen (V3) kAk = max kAyk, kyk=1 weil y := x . kxk Die natürliche Matrixnorm hat die vier Eigenschaften analog zu den Vektornormen, und zusätzlich die Eigenschaften (M 5) kABk ≤ kAkkBk (Submultiplikativität) (M 6) kAxk ≤ kAkkxk (Verträglichkeit) (M 7) kIk = 1 . 35 Seydel: Mathematik I, Kap. 2, WS 2008/09 Vorbemerkungen zur Herleitung von kAk2 : Bx = λx Eigenwertproblem mit x 6= 0 (x Eigenvektor, λ Eigenwert) Bx = λx ⇒ λ = tr x Bx tr . x x Dieser Quotient heißt Rayleigh-Quotient. B := Atr A ist symmetrisch. (weil wegen (CD)tr = Dtr C tr gilt: B tr = B) B symmetrisch ⇒ max. Rayleigh-Quotient ist der maximale Eigenwert Beispiele: r q p xtr Atr Ax kAxk2 tr =max = λ (A A) = größter Eigenwert von Atr A kAk2 :=max max x6=0 kxk2 xtr x Folgerung: kHk2 = 1 für orthogonale Matrizen H. (H orthogonal :⇔ H tr = H −1 ) n X kAk∞ := max kAyk∞ =max |aik | = größte Zeilensumme i kyk∞ =1 k=1 B.) Störungen in b: Im Folgenden sei die Matrixnorm immer die zur Vektornorm passende. Frage: Was ist die Auswirkung ∆x auf die Lösung x von Ax = b, wenn b um ∆b verändert wird? A(x + ∆x) = b + ∆b ⇒ A∆x = ∆b ⇒ k∆xk = kA−1 ∆bk ≤ kA−1 kk∆bk andererseits: b = Ax ⇒ kbk ≤ kAkkxk ⇒ zusammen: kAk 1 ≤ kxk kbk k∆xk k∆bk ≤ kAkkA−1 k kxk kbk Definition: Konditionszahl einer Matrix cond(A) := kAkkA−1 k Also ist der Einfluss relativer Fehler in b auf den relativen Fehler in x durch den Faktor cond(A) beschränkt. (relative Fehler in obigem Sinne, nicht komponentenweise) Es gilt: cond(A) ≥ 1, denn 1 = kIk = kAA−1 k ≤ kAkkA−1 k = condA Also: Für eine gut-konditionierte Matrix gilt: cond(A) “nahe” bei 1 (z.B. < 10). C.) Änderungen in A: A → A + ∆A Man kann zeigen: Falls die Störung ∆A klein ist im Sinne kA−1 kk∆Ak < 1, dann gilt cond(A) k∆Ak k∆xk ≤ , k∆Ak kxk 1 − cond(A) kAk kAk also ist auch hier die Konditionszahl cond(A) entscheidend. 36 Seydel: Mathematik I, Kap. 2, WS 2008/09 2.9 Householder-Matrizen Wie wirken sich Rundungsfehler aus? Die Rundungsfehler jedes Zwischenschrittes wirken sich auf den gesamten restlichen Algorithmus aus! elementare Operationen 0 1 2 ... r Datenfehler ... Rundungsfehler Wenn ϕi die einzelnen Operationen sind, kann ein Algorithmus y = ϕ(x) mir r Operationen dargestellt werden als x → ϕ0 (x) → ϕ1 (ϕ0 (x)) → . . . → y = ϕ(x) Die jeweiligen Rundungsfehler können als Eingangsfehler des Rest-Algorithmus angesehen werden. Sie werden mit der Kondition der jeweiligen Restabbildung verstärkt. (vgl. Abschnitt 2.8 C.) Definition: Ein Algorithmus I heißt stabiler als Algorithmus II, wenn der Rundungsfehlereinfluss bei Algorithmus I kleiner ist. Ein Algorithmus heißt numerisch stabil oder gutartig, wenn die Rundungsfehler das Ergebnis nicht stärker als die Eingangsfehler beeinflussen. Frage: Gibt es eine bessere Alternative zur Lösung von Ax = b als den Gaußschen Algorithmus? (Bemerkung zur Bezeichnung: Bei Ax = b sind A und b die Daten und x ist das Resultat.) Situation beim Gauß-Algorithmus: Die Transformation der Matrix A auf Dreiecksform U mit Zeilenoperationen erzeugt eine Kette von Zwischenmatrizen: A =: A(0) → A(1) → A(2) → . . . → A(n−1) = U. Rundungsfehler der Zwischenschritte (bei der Berechnung von A(j) ) wirken sich als Störungen ∆A auf das Ergebnis aus, sie werden mit den Faktoren cond(A(j) ) verstärkt. Forderung/gesucht: Alternative zum Gauß-Algorithmus derart, dass (1) cond(A(j) ) = cond(A(j−1) ) für alle j (2) A(n−1) = obere Dreicksmatrix. [(1) ⇒ Verfahren ist gutartig, d.h. stabil für alle Matrizen A.] Zur Ausführung verwende geeignete Matrizen H (j) und A(j) := H (j) A(j−1) . 1. Idee: Man nehme orthogonale Matrizen H (d.h. H tr H = I). Folgerung für k · k2 : kAk2 = kH tr HAk2 ≤ kH tr k2 kHAk2 ≤ kHk2 kAk2 = kAk2 | {z } =1 ⇒ kHAk2 = kAk2 . Analog: kA−1 k2 = kA−1 H tr k2 . tr ⇒ cond(A) = kAk2 kA−1 k2 = kHAk2 k |A−1 {zH } k2 = cond(HA) (HA)−1 A(j) = H (j) A(j−1) ⇒ Forderung (1) ist erfüllt. 37 Seydel: Mathematik I, Kap. 2, WS 2008/09 2. Idee: Definition der Householder-Matrix: H := I − 2wwtr mit beliebigem Einheitsvektor w, d.h. wtr w = 1 zur Erinnerung: wwtr ist Matrix (vom Rang 1)! (AB)tr = B tr Atr Eigenschaften von H: 1. H ist symmetrisch, denn: H tr = I tr − 2(wwtr )tr = I − 2wwtr = H tr tr 2. H ist orthogonal, denn: H tr H = HH = I − 2wwtr − 2wwtr + 4w w | {zw} w = I =1 3. y = Hx ist Spiegelung an der (Hyper-)Ebene, die senkrecht zu w ist und den Nullpunkt enthält. (−→ Illustration...) p 4. kHxk2 = kxk2 (denn kHxk2 = (Hx)tr Hx = . . .) Hinweis: H = I − tr uu κ mit κ = 21 utr u, u beliebig 6= 0 ist Householder-Matrix. γ 0 ! 3. Idee: Man wähle w so, dass Ha = γe1 = ... 0 (Anwendung z.B. a die 1. Spalte von A = A(0) ) Konstruktion von w (bzw. u): Eigenschaft 4. ⇒ kHak22 = γ 2 = kak22 , also γ = ±kak2 . Es folgt 1 ! ±kak2 e1 = Ha = a − u(utr a) κ ⇒ u utr a = a ∓ kak2 e1 κ und also u = const · (a ± kak2 e1 ). Da bei u nur die Richtung wichtig ist, setze const := 1. Wähle Vorzeichen so, dass keine Auslöschung auftritt. Resultat: für gegebenen Vektor a 6= 0 setze u := a + a1 kak2 e1 = |a1 | a1 + a1 = 1) |a1 | κ := kak2 (kak2 + |a1 |) (falls a1 = 0, setze H := I − uutr κ 38 a1 kak2 |a1 | a2 .. . an Seydel: Mathematik I, Kap. 2, WS 2008/09 Anwendung auf Ax = b: Es sei a die erste Spalte von A, H (1) wie oben konstruiert. (A (1) b (1) ) :=H (1) ( A (0) (0) b * 0 )= 0 Restmatrix 2. Schritt T (2) 0 1 := 0 H (2) wobei H (2) diejenige Householder-Matrix der Größe (n − 1) × (n − 1) ist, welche die 1. Spalte der Restmatrix “behandelt” wie oben erklärt. (A(2) |b(2) ) = T (2) (A(1) |b(1) ) usw. T 0 1 (j) := 0 0 1 H (j) 0 Die T (j) sind orthogonal und symmetrisch. Allgemein: ( A(j) am Ende: b (j) ) :=T (j) ( A (j-1) b (j-1) ) (R =)U =T (n−1) · . . . · T (2) H (1) A (1) (2) ⇒ H T ·{z . . . · T (n−1)} U = A | =: Q orthogonal und vollbesetzt Diese Zerlegung heißt auch QR-Zerlegung, A = QR . Wegen Ax = QRx = b gilt Rx = Qtr b = b(n−1) . Lösen von Rx = b(n−1) wie beim Gauß-Algorithmus. Praxis: Keine Matrizen H (j) speichern, sondern nur die Vektoren u; sie passen in das untere Dreieck hinein (siehe auf die Diagonalelemente. Pfeil), bis . .. .. .. .. .. .. . .=. .U. R . .. .. . −→ Aufwand der QR-Zerlegung: O( 34 n3 ) Operationen, also zweimal so teuer wie die GaußElimination. 39 Seydel: Mathematik I, Kap. 2, WS 2008/09 Seydel: Mathematik I, Kap. 3, WS 2008/09 Kapitel 3 Analysis 3.1 Vollständige Induktion Häufig in der Mathematik: Aussagen, die für eine beliebige natürliche Zahl gelten. 2 Beispiel: 13 + 23 + . . . + n3 = n(n+1) ist die Aussage A(n) für beliebige n ∈ IN. 2 Beweisverfahren hierfür: “Vollständige Induktion” 1. Schritt: Beweis der Aussage für eine kleinste natürliche Zahl, meist für n = 1 (“Induktionsanfang” - “Verankerung”). D.h. Nachprüfen von A(1). 2. Schritt: Nachweis der Gültigkeit für n + 1, falls Aussage für n richtig ist. (“Induktionsschluss”) Schluss von n auf n + 1. Folgerung aus beiden Schritten: gilt für n = 1, für n = 2, n = 3, . . . gilt also für alle n ∈ IN. obiges Beispiel: 1. Schritt: n = 1: 2. Schritt: 13 = h 1·(1+1) 2 i2 : O.K. {13 + 23 + . . . + n3 } + (n + 1)3 durch Benutzung der Induktionsannahme A(n) h n(n + 1) i2 = + (n + 1)3 2 2 h i h (n + 1)(n + 2) i2 n+1 = · n2 + 4(n + 1) = {z } | 2 2 (n+2)2 das ist die Aussage A(n + 1) Bemerkungen: 1.) kein konstruktiver Beweis 2.) häufiger Fehler: in der Aussage statt n einfach n + 1 setzen; das ist kein Beweis. Weitere Formeln, die sich z.B. mit vollständiger Induktion beweisen lassen: 1 n(n + 1) 2 1 − xn+1 1 + x + x2 + . . . + xn = (abgebrochene geometrische Reihe) 1−x n+1 n n = + für die Binomialkoeffizienten k+1 k k+1 n! n n mit := 1 ; Fakultät n! := 1 · 2 · . . . · n := 0 k k!(n − k)! 1+2+3+...+n = 41 Seydel: Mathematik I, Kap. 3, WS 2008/09 3.2 Komplexe Zahlen In Abschnitt 1.4 hatten wir die Erweiterung der Zahlenbereiche IN → ZZ → Q I → IR (natürliche Zahlen → ganze Zahlen → rationale Zahlen → reelle Zahlen) betrachtet. Erneute Erweiterung des Zahlenbereichs: Die Gleichung x2 + 1 = 0 (z.B.) besitzt im Bereich der reellen Zahlen keine Lösung. Wir führen neue, künstliche Zahlen ein, welche diese Gleichung (per definitionem) lösen sollen. Zunächst ist formal/symbolisch √ x = ± −1 (sinnlos im Bereich der reellen Zahlen) neues Symbol x = ±i dann ist i2 + 1 = 0 (−i)2 + 1 = 0 , woraus i2 = (−i)2 = −1 symbolisch: i = √ −1 Definition: Sind a und b zwei beliebige reelle Zahlen, so definiert das Zahlenpaar (a, b) die komplexe Zahl z = a + ib a heißt Realteil von z , a = Re{z} b heißt Imaginärteil von z , b = Im{z}, b ∈ IR i heißt imaginäre Einheit. Es gilt: i1 = i i2 = −1 i3 = ii2 = −i i4 = i2 i2 = 1 i5 = i i6 = −1 i7 = −i i8 = 1 Rechenregeln für komplexe Zahlen z1 = a1 + ib1 und z2 = a2 + ib2 : Addition: z1 + z2 = (a1 + a2 ) + i(b1 + b2 ) Subtraktion: z1 − z2 = (a1 − a2 ) + i(b1 − b2 ) Multiplikation: z1 z2 = a1 a2 + a1 ib2 + ib1 a2 + i2 b1 b2 = (a1 a2 − b1 b2 ) + i(a1 b2 + a2 b1 ) Division: a1 + ib1 (a1 + ib1 )(a2 − ib2 ) z1 = = z2 a2 + ib2 (a2 + ib2 )(a2 − ib2 ) a1 a2 + b1 b2 + i(a2 b1 − a1 b2 ) = ; a22 + b22 > 0 a22 + b22 42 Seydel: Mathematik I, Kap. 3, WS 2008/09 Falls in z = a + ib der Imaginärteil b = 0 ist, dann z = a (Reduktion der komplexen Zahlen auf reelle Zahlen). D.h. die reellen Zahlen sind in den komplexen Zahlen enthalten. Falls a = 0, dann z = ib (Reduktion auf rein imaginäre Zahlen). Speziell ist i eine komplexe Zahl (a = 0, b = 1). Definition Für z = a + ib heißt z := a − ib konjugiert zu z. Es gilt zz = a2 + b2 ≥ 0 . (zz ist also reell.) Gleichung zwischen komplexen Zahlen: z1 = z2 ist äquivalent zu zwei reellen Gleichungen: a1 + ib1 = a2 + ib2 ⇔ a1 = a2 b1 = b2 und Insbesondere: z = a + ib = 0 (komplexe Null) a = 0 und b = 0 ⇔ Symbol für Menge der komplexen Zahlen: C I := {z = a + ib | a, b ∈ IR} Geometrische Darstellung der komplexen Zahlen z = x + iy , z↔ x ∈ IR, y ∈ IR reelles Zahlenpaar (x, y) ↔ Punkt in Ebene Definiton: (Gaußsche) Zahlenebene der komplexen Zahlen: eindeutige Zuordnung zwischen allen komplexen Zahlen z und allen Punkten (x, y) der Ebene durch x = Re(z), y = Im(z). Im (z) −z y r sin ϕ z r=IzI ϕ x Re (z) r cos ϕ −z −y z Folgerung: 1.) z = x − iy entsteht aus z durch Spiegelung an x-Achse. 2.) −z durch Spiegelung am Nullpunkt. 3.) komplexe Zahlen auch mit Polarkoordinaten darstellbar: z = r(cos ϕ + i sin ϕ) p x2 + y 2 ist der Betrag einer komplexen Zahl. y y x arg(z) = arc(z) = ϕ = arccos = arcsin = arctan r r x (je nach Vorzeichen; vgl. Abschnitt 1.1C oder Formelsammlung) ist das Argument oder der Arcus von z. Bezeichnung: |z| := r = 43 Seydel: Mathematik I, Kap. 3, WS 2008/09 Deutung der Rechenregeln: Addition: Parallelogramm: z1 + z2 durch Parallelverschiebung von z2 oder z1 y z1 + z2 z2 z1 x Subtraktion: z1 − z2 = z1 + (−z2 ) Vektoren lassen sich parallel verschieben. Verabredung: Alle durch Parallelverschiebung ineinander überführbare Vektoren (d.h. gleiche Länge und Richtung) sind identisch. Der “Ortsvektor” ist der spezielle Vektor, dessen Fußpunkt in 0 ist. Also: Die Addition von komplexen Zahlen ist geometrisch als Hintereinandersetzen von Vektoren deutbar. z 1 + z 2 + z3 z1 + z3 z1 z2 z3 (geometrische Darstellung der) Multiplikation: z1 = r1 (cos ϕ1 + i sin ϕ1 ) , z2 = r2 (cos ϕ2 + i sin ϕ2 ) z1 z2 = r1 (cos ϕ1 + i sin ϕ1 ) · r2 (cos ϕ2 + i sin ϕ2 ) = r1 r2 · [cos ϕ1 cos ϕ2 − sin ϕ1 sin ϕ2 + i(sin ϕ1 cos ϕ2 + sin ϕ2 cos ϕ1 )] = r1 r2 · [cos(ϕ1 + ϕ2 ) + i sin(ϕ1 + ϕ2 )] Es folgt: |z1 z2 | = r1 r2 = |z1 | |z2 | arc(z1 z2 ) = ϕ1 + ϕ2 = arc(z1 ) + arc(z2 ) D.h. bei der Multiplikation werden die Beträge multipliziert und die Winkel addiert: y z z 1 2 r .r 1 2 ϕ +ϕ 1 2 11111111 00000000 0 1 00000000 11111111 0z2 1 r2 00000000 11111111 00000000 11111111 00000000 11111111 00000000 11111111 00000000 11111111 00000000 11111111 ϕ 00000000 11111111 11 ϕ2 00000000 11111111 00000000 11111111 r1 z 1 ϕ 1 x 44 Seydel: Mathematik I, Kap. 3, WS 2008/09 Hinweis: Insbesondere bei grafischen Darstellungen macht ein Winkel nur Sinn im Bereich 0 ≤ ϕ ≤ 2π, darüberhinaus fängt der Winkel wieder bei 0 an. Deswegen wird bei ϕ1 +ϕ2 > 2π die Zahl 2π subtrahiert. Spezialfälle: |z 2 | = |z|2 , arc(z 2 ) = 2 arc(z); |z m | = |z|m , arc(z m ) = m arc(z) zur Division: Für Quotienten ergibt sich: also: z1 r1 = · cos(ϕ1 − ϕ2 ) + i sin(ϕ1 − ϕ2 ) , (r2 6= 0) z2 r2 |z1 | z1 , arc | |= z2 |z2 | z1 z2 = arc(z1 ) − arc(z2 ) Anwendung/Folgerungen für z = i: wegen |i| = 1, arc(i) = π2 vermittelt iz eine Drehung um + π2 bzw. 90◦ , denn iz = −y + ix. Dreiecksungleichung gilt auch in C: I kz1 | − |z2 k ≤ |z1 ± z2 | ≤ |z1 | + |z2 | 3.3 Polynome und Rationale Funktionen A.) Polynome (im Reellen) Definition: Polynom vom Grad m ist die Funktion 2 a0 + a1 x + a2 x + . . . + am x m = m X ak xk , mit am 6= 0 k=0 Polynome sind von größter Wichtigkeit. In Abschnitt 2.7 traten sie auf als charakteristisches Polynom von Matrizen. Wichtig sind Polynome auch zur Approximation von 2 Funktionen, z.B. cos x ≈ 1 − x2 für x ≈ 0 (vgl. u.a. Abschnitt 3.11). Bezeichnung: Pm (x) := m P ak xk . Die ak heißen “Koeffizienten”. k=0 Gleichheit von Polynomen: m X k=0 k ak x = m X bk xk für alle x ⇔ ak = bk für alle k k=0 (Beweis: x = 0 ⇒ a0 = b0 . Dividiere durch x. x können beliebig klein werden ⇒ a1 = b1 ⇒ . . .) Folgerung: Koeffizentenvergleich z.B.: x3 + ax2 + bx + c = [Suche Beziehung zwischen (angenommenen) Nullstellen x1 , x2 , x3 . Falls solche Nullstellen existieren (s.u.), ist dies von der Form] = (x − x1 )(x − x2 )(x − x3 ) 45 Seydel: Mathematik I, Kap. 3, WS 2008/09 Ausmultiplizieren ⇒ . . . = x3 − (x1 + x2 + x3 )x2 + (x1 x2 + x2 x3 + x3 x1 )x − x1 x2 x3 Koeffizientenvergleich ⇒ a = −x1 − x2 − x3 b = x 1 x2 + x2 x3 + x3 x1 Satz von Vieta, hier für m = 3 c = −x1 x2 x3 Auswertung von Polynomen mit “Horner-Schema” Pm (x) = (. . . ((am · x + am−1 ) · x + am−2 ) · x + . . . + a1 ) · x + a0 . (m Multiplikationen, m Additionen) B.) Nullstellen von Polynomen Pm (x) = 0 heißt eine “algebraische Gleichung”, und Nullstellen heißen auch ”Wurzeln”. Annahme: Pm (x) = 0 für x = x1 , also: Pm (x1 ) = 0 ⇒ Pm (x) = Pm (x) − Pm (x1 ) = a0 + a1 x + . . . + am xm − a0 − a1 x1 − . . . − am xm 1 = a1 (x − x1 ) + a2 (x2 − x21 ) + . . . + am (xm − xm 1 ) = a1 (x − x1 ) + a2 (x − x1 )(x + x1 ) + a3 (x − x1 )(x2 + xx1 + x21 )+ + . . . + am (x − x1 )(xm−1 + xm−2 x1 + . . .) = (x − x1 ) · a1 + a2 (x + x1 ) + a3 (x2 + xx1 + x21 ) + . . . = (x − x1 ) c0 + c1 x + c2 x2 + . . . + cm−1 xm−1 mit cm−1 = am 6= 0 D.h. das Polynom Pm (x) kann ohne Rest durch x−xk dividiert werden, wenn xk Nullstelle ist. Definition: Der Faktor x − xk heißt Linearfaktor. Die Berechnung von Pm−1 (x) = Pm (x) x−x1 heißt Abdividieren. Falls auch Pm−1 eine Nullstelle hat, für x = x2 , dann kann der Linearfaktor (x − x2 ) abgespalten werden, und es entsteht Pm−2 (x). u.s.w. ... Dieser Prozess kann fortgeführt werden, solange das jeweils entstehende Polynom niederen Grades eine Nullstelle hat, längstens also bis Pm (x) = (x − x1 )(x − x2 ) · . . . · (x − xm ) · am Damit haben wir gezeigt: Ein Polynom m-ten Grades kann höchstens m Nullstellen haben. Also gilt: Satz: Hat ein Polynom Pm (x) mehr als m Nullstellen, so muss Pm (x) ≡ 0 gelten, also a0 = a1 = . . . = am = 0. x1 heißt k-fache Nullstelle, wenn Pn (x) ohne Rest durch (x − x1 )k teilbar ist, nicht aber durch (x − x1 )k+1 . C.) Zur Existenz von Lösungen algebraischer Gleichungen Über den reellen Zahlen, d.h. x ∈ IR, ist eine Zerlegung von Pm (x) in Linearfaktoren nicht immer möglich. 46 Seydel: Mathematik I, Kap. 3, WS 2008/09 Beispiel: 1 + x2 = 0 hat keine Lösung für x ∈ IR. Aber: Über den komplexen Zahlen, d.h. x ∈ C, I ist jede algebraische Gleichung lösbar! Fundamentalsatz der Algebra: Ein Polynom vom Grad m hat genau m Wurzeln ∈ C, I wobei k-fache Nullstellen k mal gezählt werden. Beispiel: x4 + 1 = 0 keine Lösung in IR . x4 + 1 = 0 in C I : Erste Überlegung: (z 2 )2 = −1 ⇒ z 2 = ±i ergibt 4 Lösungen mit √ Was ist i? andere Überlegung mit dem Argument “Drehung”: √ i. zzzz = −1 Die Zahl z1 := √12 (1 + i) mit |z1 | = 1, ϕ = arc(z1 ) = π/4 ergibt z12 = i, z13 = z14 = −1 mit 2ϕ, 3ϕ, 4ϕ. Für 4ϕ = π wird −1 erreicht. Analog: √1 (−1 2 + i), 3 π 4 5 mit arc(z3 ) = π 4 7 mit arc(z4 ) = π 4 1 z2 := √ (−1 + i) 2 1 z3 := √ (−1 − i) 2 1 z4 := √ (1 − i) 2 mit arc(z2 ) = Illustration: jeweils Drehungen; alle 4 Nullstellen liegen auf dem Einheitskreis; arc(z24 ) = 3π entspricht π arc(z34 ) = 5π entspricht π arc(z44 ) = 7π entspricht π Für Winkel > 2π werden ganzzahlige Vielfache von 2π abgezogen. Satz: Wenn eine algebraische Gleichung reelle Koeffizienten hat und z1 = x1 + iy1 Wurzel ist, dann ist auch z 1 = x1 − iy1 Wurzel. Anwendung: Eigenwerte von reellen Matrizen als Nullstellen des charakteristischen Polynoms. Die Linearfaktoren (z−z1 ) und (z−z 1 ) können jeweils zu einem quadratischen Faktor mit reellen Koeeffizienten zusammengefasst werden. obiges Beispiel: z4 = z 1 , z3 = z 2 , und z 4 + 1 = (z − z1 )(z − z 1 )(z − z2 )(z − z 2 ) Produkt der ersten beiden Linearfaktoren: 1 1 (z − √ (1 + i))(z − √ (1 − i)) 2 2 2 1 i =((z − √ )2 − ) 2 2 1 1 2 =(z 2 − √ z + + ) 2 2 2 √ =(z 2 − 2z + 1) 47 Seydel: Mathematik I, Kap. 3, WS 2008/09 insgesamt z 4 + 1 = (z 2 − √ 2z + 1)(z 2 + √ 2z + 1) Zusammenfassend: Die folgende reelle Darstellung ist möglich: Jedes Polynom mit reellen Koeffizienten lässt sich in reelle lineare und reelle quadratische Faktoren (bzw. ihre Potenzen) zerlegen. Dabei haben die quadratischen Faktoren keine reelle Nullstelle. D.) Rationale Funktionen Quotienten zweier Polynome f (x) = Pm (x) a m xm + . . . + a 1 x + a 0 = , am 6= 0, bn 6= 0 Qn (x) b n xn + . . . + b 1 x + b 0 heißen rationale Funktionen. Polynome ergeben sich als Spezialfall für n = 0 und heißen auch “ganze” rationale Funktionen. n > 0: “gebrochen” rationale Funktionen. Ohne Einschränkung: Pm und Qn seien teilerfremd. Anderenfalls Zähler und Nenner durch gemeinsames Teilerpolynom kürzen. Methode: Euklidischer Algorithmus (−→ Abschnitt 3.4) Nach Kürzen: keine gemeinsamen Nullstellen mehr. Die Nullstellen des Zählers sind die Nullstellen von f (x). Die Nullstellen des Nenners sind die Unendlichkeitsstellen. (“vertikale Asymptoten” oder “Polstellen”) asymptotisches Verhalten (für x → +∞ und x → −∞) am−1 1 a 1 am xm (1 + am x + . . . + am0 xm ) Pm (x) = · f (x) = 1 Qn (x) b n xn 1 + bn−1 + . . . + bbn0 x1n ) bn x Der zweite Faktor geht gegen 1 für |x| → ∞. Der erste Faktor beschreibt das asymptotische Verhalten. Fälle: m < n m=n m>n ⇒ f (x) → 0 ⇒ f (x) → abm n ⇒ f (x) → ∞ Weitere Untersuchungen zu m > n: Durch Ausdividieren ist stets eine Zerlegung in Summe von einer ganzrationalen Funktion plus einer gebrochenen rationalen Funktion möglich. Beispiel: 2x − 1 2x3 + 5x2 + x − 7 = 2x + 3 + 2 2 x +x−2 x +x−2 Durch 2x + 3 ist eine schräge Asymptote definiert. Der Bruch auf der rechten Seite hat als Nenner (x − 1)(x + 2) und damit gibt es senkrechte Asymptoten bei x1 = 1 und x2 = −2. Illustration siehe Vorlesung. 48 Seydel: Mathematik I, Kap. 3, WS 2008/09 3.4 Der Euklidische Algorithmus; Kettenoperationen In diesem Abschnitt: Fast alle Zahlen seien ∈ IN, z.B. a, b, c, s ∈ IN. a und b heißen Teiler von c, wenn c = ab weitere Anwendung: Polynomdivision. Kettendivision: a > b, teile a durch b ... a b r1 rn−3 rn−2 rn−1 = bs0 + r1 = r1 s 1 + r2 = r2 s 2 + r3 .. . (mit r1 < b) (mit r2 < r1 ) .. . = rn−2 sn−2 + rn−1 = rn−1 sn−1 + rn = rn sn (+0) Rückwärts-Folgerung: rn teilt rn−1 ⇒ rn teilt rn−2 ⇒ . . . ⇒ rn teilt b und rn teilt a rn ist also gemeinsamer Teiler von a und b. Frage: Gibt es einen größeren Teiler? Vorwärts-Folgerung: t teile a und b ... ⇒ t teilt r1 ⇒ t teilt rn ⇒ t teilt r2 ⇒ t ≤ rn ⇒ Also: Die mit obiger Kettendivision berechnete Zahl rn ist der größte gemeinsame Teiler von a und b. Euklidischer Algorithmus für natürliche Zahlen (iterierte Division, Kettendivision) r0 := a , r1 := b, für j = 1, 2 . . .: rj−1 = rj · sj + rj+1 mit 0 ≤ rj+1 < rj Der Algorithmus bricht ab bei k mit rk+1 = 0. Resultat: rk = ggT(a, b) Wegen ggT (a, b) · kgV (a, b) = a · b gilt: kgV (a, b) = a·b rk (vgl. Vorlesung über Informatik) Obige Kettendivision ist auf Polynome anwendbar. Beispiel: x3 − x2 − x + 1 P3 (x) = 3 f (x) = Q3 (x) x + 2x2 − x − 2 Was ist der größte gemeinsame Teiler? 49 Seydel: Mathematik I, Kap. 3, WS 2008/09 Bei der Polynomdivision kommt es auf Zahlenfaktoren nicht an. P3 : Q3 = 1 mit Rest r1 = −3x2 + 3 = −3(x2 − 1) Also: P3 = Q 3 · 1 − 3x2 + 3 Der Rest kann durch Multiplikation mit beliebiger Zahl vereinfacht werden zu r̃1 . (hier: r̃1 = x2 − 1) Q3 = (x2 − 1) · (x + 2) + 0 Folgerung: x2 − 1 ist größtes gemeinsames Teilerpolynom. Kürzen ⇒ P3 (x) x−1 = Q3 (x) x+2 Es bleibt eine senkrechte Asymptote für x = −2. In der ursprünglichen Version hatte der Nenner die weiteren Nullstellen x = +1 und x = −1. Da diese beiden auch Nullstellen des Zählers waren, ist f (x) durch das Kürzen an den Stellen x = ±1 “repariert”. 3.5 Funktionen A.) Der Funktionsbegriff Wird jeder Zahl x ∈ IR eines vorgegebenen Bereiches eindeutig eine Zahl y ∈ IR zugeordnet, so heißt y eine Funktion der “Veränderlichen” x. Schreibweise y = f (x) (oder y = y(x)) , dabei: y: “abhängige” Variable, x: “unabhängige” Variable, “Argument der Funktion” Vorsicht: auch andere Bezeichnungen! z.B. ψ = sin ϕ oder r = cos t. Die Menge derjenigen x, für die f (x) definiert ist, heißt Definitionsbereich. Die Menge der zugehörigen Werte f (x), für x im Definitionsbereich, heißt Wertebereich. Fasst man x und y als Koordinaten auf, dann ist eine graphische Darstellung möglich. Jedem Paar x, y entspricht ein Punkt in der (x, y)-Ebene. Für alle x im Definitionsbereich beschreibt der Punkt (x, y(x)) typischerweise ein Kurvenstück. Die Punktmenge {(x, f (x))|x ∈ Definitionsbereich} heißt Graph der Funktion f (x). y Werte− bereich Definitionsbereich x Die Definitionsbereiche sind meist “offene” Intervalle “abgeschlossene” Intervalle “halboffene” Intervalle “unendliche” Intervalle “einseitig unendliche” Intervalle a<x<b a≤x≤b a≤x<b −∞ < x < ∞ z.B. a ≤ x < ∞ 50 oder oder oder a < x ≤ b oder oder Seydel: Mathematik I, Kap. 3, WS 2008/09 Bemerkung: Nicht jede Kurve entspricht einer Funktion! z.B. y keine Funktion, weil nicht eindeutig x Beispiele: f (x) = sin x für − ∞ < x < ∞ √ f (x) = + x für 0 ≤ x < ∞ p f (x) = + r 2 − x2 für − r ≤ x ≤ r n 1 für x > 0 f (x) = −1 für x < 0 f (x) = x für x ∈ IN (kein Kurvenstück, sondern diskrete Punkte) f (x) = log x für x > 0 Hintereinanderausführung oder “Verkettung” von Funktionen: Falls der Wertebereich von f im Definitionsbereich von g enthalten ist, dann ist h(x) = g(f (x)) eine Funktion. Beispiel: h(x) := √ √ 1 + x2 , mit f (x) = 1 + x2 und g(y) = y. B.) Umkehrfunktionen, Monotonie Wenn auch jedem Funktionswert y = f (x) eindeutig ein Urbild x entspricht, dann kann x als Funktion von y betrachtet werden: x = g(y). Dann heißt x = g(y) die Umkehrfunktion von y = f (x). Bezeichnet man bei der Umkehrfunktion x = g(y) die unabhängige Veränderliche mit x und die abhängige Veränderliche mit y, dann spricht man von der inversen Funktion y = g(x) = f −1 (x). (Vorsicht: Die symbolische Schreibweise f −1 bedeutet hier nicht Division, sondern Inversion einer Funktion.) Umkehrfunktionen gibt es also, wenn in beiden Richtungen x ↔ y Eindeutigkeit vorliegt. Zuordnung x → y eindeutig ⇔ jede Parallele zur y-Achse wird von f (x) genau einmal geschnitten. Zuordnung y → x eindeutig ⇔ jede Parallele zur x-Achse wird von g(y) genau einmal geschnitten. Hinreichend für die Existenz einer Umkehrfunktion ist strenge Monotonie von f . Definition: f (x) (streng) monoton wachsend auf einem Intervall, wenn x1 < x2 ⇒ f (x1 ) < f (x2 ) für alle x1 , x2 in dem Intervall. 51 Seydel: Mathematik I, Kap. 3, WS 2008/09 f (x) monoton fallend auf Intervall, wenn x1 < x2 ⇒ f (x1 ) > f (x2 ) f (x) monoton auf einem Intervall, wenn f auf dem gesamten Intervall entweder monoton wachsend oder monoton fallend ist (ausschließlich). Beispiel β f(x) α x a auf b c a≤x≤b: f monoton wachsend b≤x≤c: a≤x≤c: α≤y≤β: f monoton fallend f ist nicht monoton keine eindeutige Zuordnung y → x also: Für f (x) auf a ≤ x ≤ c gibt es keine Umkehrfunktion! Umkehrfunktionen existieren aber stückweise, d.h. für Teilintervalle. Die genaue Angabe der jeweiligen (Teil-)Intervalle ist also bei Monotonie-Angaben wichtig. Definition: Eine Funktion f (x), für die auch die Zuordnung y → x eindeutig ist, heißt eineindeutig oder injektiv. Zusammen: Die folgenden Kriterien für eine Funktion f (x) sind äquivalent zur Injektivität: (a) Die Gleichung f (x) = y hat für alle y höchstens eine Lösung. (b) für alle x1 , x2 ∈ Definitionsbereich: f (x1 ) = f (x2 ) ⇒ x1 = x2 (c) für alle x1 , x2 ∈ Definitionsbereich: x1 6= x2 ⇒ f (x1 ) 6= f (x2 ) (d) f ist über dem Definitionsbereich umkehrbar. Geometrische Konstruktion: Die Kurven y = f (x) und y = f −1 (x) gehen durch Spiegelung an der Winkelhalbierenden auseinander hervor. y −1 y=g(x)=f (x) a y= f(x) 1 0 0 1 g(y)=x = f−1 (y) 1 0 0 1 a x Nach Definition der Umkehrfunktion gilt die Identität f (f und f −1 (f (x)) = x für alle x ∈Definitionsbereich. 52 −1 (y)) = y für alle y ∈Wertebereich, Seydel: Mathematik I, Kap. 3, WS 2008/09 Implizite Darstellung von Funktionen: Bisher: nach y aufgelöste Gleichungen y = f (x). Beispiele: y = sin x oder y = 1 1−x . Falls nach x aufgelöst: x = g(y) oder x = f −1 (y). Derartige Darstellungen von Funktionen nennt man explizit. Alternative: Funktionen können implizit definiert werden durch eine Gleichung F (x, y) = 0. Durch Auflösen der Gleichung F (x, y) = 0 nach x oder nach y können in vielen Fällen explizite Funktionen hergeleitet werden. Umgekehrt kann eine explizite Darstellung y = f (x) immer als F (x, y) = 0 geschrieben werden: F = y − f (x). Beispiel: F (x, y) = x2 + y 2 − 1 = 0 Auflösen z.B. nach y liefert zwei Funktionen: p y1 (x) := + 1 − x2 p y2 (x) := − 1 − x2 Stückweise existieren Umkehrfunktionen: p x1 (y) := + 1 − y 2 , p x2 (y) := − 1 − y 2 (Abbildungen vgl. Vorlesung) Beachte: Eine Gleichung F (x, y) = 0 definiert implizit entweder (1) keine Funktion (Beispiel F (x, y) = x2 + y 2 + 1 = 0), oder (2) eine eindeutige Funktion (Beispiel F (x, y) = y − ex = 0), oder (3) mehrere Funktionen (Beispiel Kreis). Parameterdarstellung Eine weitere Alternative zur Definition von Kurven (außer mit expliziten oder impliziten Funktionen) ist die Parameterdarstellung: Dabei werden zwei Funktionen x(t) und y(t) als Komponenten zu einem Vektor x(t) y(t) zusammengefasst. Die den beiden Komponenten gemeinsame unabhängige Variable t heißt hier Parameter. r cos t Beispiel: beschreibt für wachsende t den Weg eines Punktes in der (x, y)-Ebene, r sin t der einen Kreis mit Radius r entlangwandert. Für 0 ≤ t ≤ 2π wird dieser Kreis genau einmal durchlaufen. (vgl. Polarkoordinaten in Abschnitt 1.1B.) C.) Stetigkeit Anschaulich: Eine Funktion ist “stetig”, wenn man sie zeichnen kann, ohne den Stift abzusetzen. 53 Seydel: Mathematik I, Kap. 3, WS 2008/09 Beispiele für unstetige Funktionen: 1.) y f(x) Sprungstelle hier noch "stückweise stetig" a b x 2.) Rationale Funktionen mit Nullstellen des Nenners: Pol-Verhalten, vgl. Abschnitt 3.3D. 3.) n 0 für rationale x y= 1 für irrationale x Definition: “Umgebung” Eine ǫ-Umgebung von x0 ist die Menge aller x ∈ IR mit |x − x0 | < ǫ, für ǫ > 0. x 0 −ε x x+ε 0 0 meist: kleine Umgebungen, d.h. ε ist ein kleiner “Radius”. Stetigkeit: Die Funktionswerte f (x) in einer Umgebung von x0 ändern sich beliebig wenig, wenn die Umgebung genügend klein ist. y y+ε 0 y 0 y −ε 0 x −δ 0 x 0 x+δ 0 x Für jeden beliebig schmalen Streifen um y0 = f (x0 ) gibt es eine Umgebung um x0 , so dass der Graph von f (x) für das Intervall x0 − δ ≤ x ≤ x0 + δ in dem horizontalen Streifen liegt. formale Definition: f (x) ist stetig an der Stelle x0 , wenn man zu jedem ε > 0 eine Zahl δ > 0 angeben kann, so dass |x − x0 | < δ ⇒ |f (x) − f (x0 )| < ε . Und: f ist stetig in einem Intervall, wenn f (x) für ∀ x ∈Intervall stetig ist. Bemerkung: δ hängt i.A. ab von ε und von x0 : δ = δ(ε, x0 ) Bedeutung stetiger Funktionen: Für sie gelten wichtige Eigenschaften! 1.) Zwischenwertsatz: Ist f (x) stetig für a ≤ x ≤ b, und f (a) < c < f (b), so gibt es ein x∗ in a < x∗ < b mit f (x∗ ) = c. (analog f (a) > c > f (b)) 54 Seydel: Mathematik I, Kap. 3, WS 2008/09 Weitere Eigenschaften stetiger Funktionen: Für jede auf einem abgeschlossenen Intervall a ≤ x ≤ b stetige Funktion f (x) gilt: 2.) f ist auf dem Intervall beschränkt, d.h. es gibt eine Schranke K, so dass |f (x)| < K für a ≤ x ≤ b . 3.) f nimmt auf a ≤ x ≤ b ein Maximum und ein Minimum an, d.h. ∃ x1 , x2 in a ≤ x ≤ b so dass f (x1 ) ≤ f (x) ≤ f (x2 ) für alle a ≤ x ≤ b . Zur Wichtigkeit der Abgeschlossenheit: f (x) = nicht beschränkt. 1 x auf dem offenen Intervall 0 < x < ∞ ist Für allgemeine Intervalle gilt: Sind f und g stetig, dann sind auch f ± g, α · f , f · g stetig, sowie fg in jedem Teilintervall von x, auf dem g(x) 6= 0, und ebenso die Hintereinanderausführung h(x) := f (g(x)) stetig. Beispiel: p(x) = an xn + · · · + a1 x + a0 (Polynom) ist stetig. Praktische Abkürzungen (zur Erinnerung): ∃ für: “es existieren”, z.B. ∃ x∗ ∀ für: “Für alle”, z.B. ∀ x 3.6 Spezielle Funktionen A.) Kreisfunktionen (auch Trigonometrische Funktionen) sin, cos, tan, cot (in der Geometrie zunächst nur Seitenverhältnisse im rechtwinkligem Dreieck, dann Ausdehnung über den Kreis, schließlich für ganz IR.) y sinϕ > 0 cos ϕ < 0 sin ϕ > 0 cosϕ >0 P r y ϕ x cos ϕ < 0 cos ϕ > 0 sin ϕ < 0 sin ϕ < 0 x Definitionen: y (“Gegenkathete zu Hypothenuse”) y = r sin ϕ r x (“Ankathete zu Hypothenuse”) x = r cos ϕ cos ϕ := r y sin ϕ = (“Steigung”) tan ϕ := cos ϕ x 1 cos ϕ x cot ϕ := = = tan ϕ sin ϕ y sin ϕ := 55 Seydel: Mathematik I, Kap. 3, WS 2008/09 (Für Illustrationen sei auf die Vorlesung verwiesen, oder auf Literatur wie Formelsammlungen.) Vorzeichen von cos ϕ = Vorzeichen von x Vorzeichen von sin ϕ = Vorzeichen von y Nach Erweiterung der trigonometrischen Funktionen auf den Kreis als nächster Schritt periodische Fortsetzung auf ganz IR: cos(ϕ + n · 2π) = cos ϕ sin(ϕ + n · 2π) = sin ϕ für ∀ n ∈ ZZ für ∀ n ∈ ZZ . Damit sind sin, cos überall definiert. Bezeichnung für die unabhängige Variable: ϕ oder t oder x (anderes x als oben!!): z.B. sin x, cos x, für x ∈ IR. einige Eigenschaften der Kreisfunktionen cos(−ϕ) = cos ϕ , cos(π − ϕ) = − cos ϕ sin(−ϕ) = − sin ϕ , sin(π − ϕ) = sin ϕ cos(ϕ + π) = − cos ϕ , cos( π2 − ϕ) = sin ϕ sin(ϕ + π) = − sin ϕ , sin( π2 − ϕ) = cos ϕ , cos(ϕ + π2 ) = − sin ϕ sin(ϕ + π2 ) = + cos ϕ , cos2 ϕ + sin2 ϕ = 1 (Pythagoras) . cos x und sin x sind stetig für alle x; | cos x| ≤ 1 , | sin x| ≤ 1 cos x = 0 für x = (2n + 1) π2 , n ∈ ZZ sin x = 0 für x = n · π , n ∈ ZZ. (Additionstheoreme, z.B. sin(x + y) = . . .: s.u. bzw. Formelsammlung) ) tan(ϕ ± nπ) = tan ϕ n = 0, 1, 2 . . . cot(ϕ ± nπ) = cot ϕ tan(−ϕ) = − tan ϕ cot(−ϕ) = − cot ϕ tan x und cot x sind nur stückweise stetig! Exkurs: Bezeichnungen/Definitionen ∗ Eine Funktion f (x) heißt periodisch mit Periode p, wenn für jedes x und jedes n ∈ ZZ gilt: f (x + np) = f (x) Beispiele: sin x, cos x : Periode 2π tan x, cot x : Periode π ∗ Eine Funktion f (x) heißt gerade, wenn f (−x) = f (x) Beispiele: cos x, x2 . geometrische Bedeutung: Symmetrie zur y-Achse. ∗ Eine Funktion f (x) heißt ungerade, wenn f (−x) = −f (x) Beispiele: sin x, tan x, cot x, x3 . geometrische Bedeutung: Symmetrie zum Nullpunkt. Weitere Beispiele für gerade Funktionen: f (x) := sin |x|, denn: f (−x) = sin | − x| = sin |x| = f (x) f (x) := | sin x|, denn: f (−x) = | sin(−x)| = | − sin x| = | sin x| = f (x) 56 Seydel: Mathematik I, Kap. 3, WS 2008/09 B.) Weitere Formeln zu trigonometrischen Funktionen Multiplikation von komplexen Zahlen (vgl. Abschnitt 3.2) z1 und z2 ∈ C I mit |z1 | = |z2 | = 1: (cos ϕ + i sin ϕ) · (cos ψ + i sin ψ) = cos(ϕ + ψ) + i sin(ϕ + ψ) Andererseits, mit Ausmultiplizieren erhalte (cos ϕ cos ψ − sin ϕ sin ψ) + i(sin ϕ cos ψ + cos ϕ sin ψ) Folgerung mit “Koeffizientenvergleich”: sin(ϕ + ψ) = sin ϕ cos ψ + cos ϕ sin ψ cos(ϕ + ψ) = cos ϕ cos ψ − sin ϕ sin ψ Diese Formeln heißen Additionstheoreme. Hieraus folgen andere wichtige Formeln, siehe Formelsammlung! z.B. für sin(ϕ − ψ), sin(2ϕ), cos(ϕ − ψ), tan(ϕ ± ψ) ; sin α ± sin β, cos(2ϕ), cos α ± cos β C.) Anwendungen trigonometrischer Funktionen: 1.) überall im Alltag (vom Regenbogen zum Farbfernsehen) 2.) Lösungen einfacher Schwingungsgleichungen 3.) Fourier: Für periodische Funktionen y(t) mit Periode T ∞ y(t) = a0 X 2π (ak cos(k 2π + T t) + bk sin(k T t)) 2 k=1 Fourier-Koeffizienten: 2 ak = T ZT y(t) cos(k 2π t)dt T ZT y(t) sin(k 2π T t)dt 0 2 bk = T 0 y −→ ak , bk : Fourier-Analyse ak , bk −→ y : Fourier-Synthese D.) Potenzen und Wurzeln von reellen Zahlen (≥ 0) Schulstoff: x0 := 1 für x 6= 0, xn := x · . . . · x}, | · x {z x−n := 1 xn n−mal ⇒ xn xm = xn+m , xmn = (xm )n = (xn )m Es seien x > 0, y > 0 reelle Zahlen, n ∈ ZZ. 57 für n, m ∈ ZZ , x ∈ IR Seydel: Mathematik I, Kap. 3, WS 2008/09 Die Funktion x = y n ist für x ≥ 0 monoton und stetig ⇒ Dann existiert Umkehrfunktion (vgl. Abschnitt 3.4.B). D.h. für jedes x > 0 gibt es genau ein y > 0 so dass x = y n . √ Schreibweisen: y = (x)1/n = x1/n = n x “n-te Wurzel” Sei nun q ∈ Q, I q= m . n Dann gilt für x ≥ 0: m xq := x n = √ n √ xm = ( n x)m ⇒ xq xp = xq+p auch für rationale Exponenten. Potenzen mit reellen Exponenten: → SPÄTER Funktionen y = xq : alle gehen durch den Punkt (1, 1). y q =x q=− + infty (q=1) 1<q< infty 0<q<1 (q=0) 1 q<0 x 1 Bsp. y = x Bsp. y = x4 0.5 1 Bsp. y = x = x−1 Die Kurven von y = xq , x ≥ 0, q ∈ Q I “überdecken” den Quadranten. E.) Weitere spezielle Funktionen Umkehrfunktionen der trigonometrischen Funktionen: arcsin, arccos, arctan, arcot vgl. Formelsammlungen. Exponentialfunktion exp(x) := ex und log(x) werden in Abschnitt 3.10 formal definiert. Sie sind Umkehrfunktionen zueinander (Verlauf und Achsenschnittpunkte: vgl. Figur) weitere wichtige Eigenschaften: ex1 ex2 = ex1 +x2 ; log x1 + log x2 = log(x1 x2 ) F.) Kurvendiskussionen zu diskutieren: y = f (x) Programm: 1.) Feststellung des Definitionsbereiches und des Wertebereiches 2.) Bestimmung der Achsenschnittpunkte x = αi , wo f (αi ) = 0 , 58 Seydel: Mathematik I, Kap. 3, WS 2008/09 sowie f (0). 3.) Bei rationalen Funktionen: Teiler-Fremdheit herstellen (Euklidischer Algorithmus), und bei m ≥ n Ausdividieren 4.) Asymptotisches Verhalten für x → ±∞; Bestimmung von Unendlichkeitsstellen x = βi (f (x) → ±∞ 5.) 6.) 7.) 8.) für y → βi ) mit Bestimmung des Vorzeichens von f (x) für βi+ , βi− Auffinden evtl. Symmetrien (f gerade oder ungerade?) Monotonie, Maxima, Minima, Wendepunkte (Schule, bzw. Abschnitt 3.8) evtl. weitere Kurvenpunkte berechnen. (qualitative) Skizze Bemerkung: Es sind nicht immer alle Punkte des obigen Programms sinnvoll oder machbar. 3.7 Grenzwert A.) Folgen und Reihen Eine Folge von Zahlen a1 , a2 , a3 , . . . , aν , . . . nennt man (Zahlen-)Folge. Dargestellt auf der Zahlengerade entspricht dies einer Punktfolge. Beispiele: (a) 1, 2, 3, 4, . . . d.h. aν = ν (b) 1, − 21 , 31 , − 41 , . . . d.h. aν = (−1)ν−1 ν1 ν d.h. aν = 1+ν (c) 21 , 23 , 43 , 45 , . . . ν P (d) 0.2, 0.22, 0.222, . . . d.h. aν = 2 · 10−k k=1 Bemerkung: Der Index ν kann z.B. auch bei 0 loslaufen. Abkürzende Bezeichnung für ∞ Folgen: {aν } oder {aν }∞ ν=1 oder evtl. {aν }ν=0 Definition: Eine Folge heißt beschränkt, wenn es eine Zahl M gibt, so dass |aν | ≤ M für alle ν; oder äquivalent: M1 ≤ aν ≤ M2 (M1 =“untere Schranke”, M2 =“obere Schranke”) M “Schranke” obige Beispiele: (b), (c) beschränkt durch jede Zahl M ≥ 1 (d) z.B. M = 92 (kleinste aller oberen Schranken) (a) ubeschränkt Definition: Monotonie einer Folge: Eine Folge heißt monoton, wenn eine der folgenden Bedingungen für alle ν zutrifft: aν+1 > aν : monoton wachsend aν+1 < aν : monoton abnehmend oder fallend aν+1 ≥ aν : monoton nicht abnehmend aν+1 ≤ aν : monoton nicht wachsend 59 Seydel: Mathematik I, Kap. 3, WS 2008/09 Beispiel: (a), (c), (d): monoton wachsend (b): nicht monoton (aber |aν | ist monoton abnehmend) Definition: h heißt Häufungspunkt oder Häufungsstelle der Folge {aν }, wenn in jeder noch so kleinen Umgebung von h unendliche viele aν liegen. d.h.: für alle ε > 0 gilt |h − aν | < ε für unendlich viele aν . obige (b) : (c) : (d) : Beispiele: Häufungsstelle: h = 0 Häufungsstelle: h = 1 Häufungsstelle: h = 2/9 ν Das Beispiel (−1)ν−1 1+ν hat 2 Häufungstellen: h = +1 und h = −1. Satz [Bolzano & Weierstraß] Jede beschränkte Folge hat mindestens eine Häufungsstelle. (unendliche Folgen, d.h. ν → ∞) Beweis: |aν | ≤ M definiert ein Intervall I1 der Länge 2M mit unendlich vielen aν . Intervallhalbierung ⇒ in wenigstens einem Teilintervall liegen ∞-viele aν : Intervall I2 . (usw.) → “Intervallschachtelung”: I1 ⊃ I2 ⊃ I3 ⊃ . . ., Breite der Ik geht gegen 0. In jedem Ik liegen ∞-viele aν . Ik konvergieren gegen einen Punkt, der die Voraussetzungen des Häufungspunktes erfüllt. Definition: Reihe: Es sei {aν } eine Zahlenfolge. Die Folge der Partialsummen {sν }, ν P definiert durch s1 := a1 , s2 := a1 + a2 , . . . , sν := ak , . . . , heißt unendliche Reihe. k=1 Bezeichnung: ∞ P aν . ν=1 B.) Konvergenz von Folgen Definition: a heißt Grenzwert der Folge {aν }, wenn in jeder noch so kleinen Umgebung von a alle aν mit Ausnahme von endlich vielen liegen. D.h. für alle ε > 0 gibt es N = N (ε) ∈ IN, so dass |a − aν | < ε für alle ν > N (ε). Folgerungen: 1.) Jeder Grenzwert ist Häufungspunkt. 2.) Falls 2 Häufungspunkte existieren, gibt es keinen Grenzwert. 3.) Also ist nicht jeder Häufungspunkt auch Grenzwert. (Beispiel: 1, −1, 1, −1, . . .) Definition: Hat eine Folge {aν } einen Grenzwert a, so heißt sie konvergent. Bezeichnung: lim aν = a (“limes”) ν→∞ oder: aν −→ a für ν → ∞ Definition: Nichtkonvergente Folgen heißen divergent. Konvergenzkriterium von Cauchy Eine Folge {aν } ist “dann und nur dann” (d.h. ⇔) konvergent, wenn für alle hinreichend großen n ∈ IN und beliebige m ∈ IN die Differenzbeträge |an+m − an | beliebig klein werden. 60 Seydel: Mathematik I, Kap. 3, WS 2008/09 D.h. äquivalent zur Konvergenz der {aν } ist: ∀ ε > 0 ∃ N (ε) so dass ∀ n > N (ε) und ∀ m ∈ IN gilt |am+n − an | < ε Bemerkung: Der Grenzwert a wird hier nicht explizit benötigt! Beispiele: ν P 1.) 0.2, 0.22, . . . , aν = 2 · 10−k ⇒ k=1 am+n − an = n+m X 2 · 10−k = 2 · 10−(n+1) · ( k=n+1 | m {z } Terme 1 1 + + . . . + 10−(m−1) ) 1+ | 10 100 {z } Mit x:= 1 ist dies eine Partialsumme 10 1+x+x2 +...+xm−1 =:sm Herleitung einer Formel für sm : xsm = x + x2 + . . . + xm xsm − sm = xm − 1 ⇒ sm ⇒ 1 − xm = 1−x Es folgt für das Beispiel: 10 1 ⇒ 1 = 9 1 − 10 1 10 < 10−n am+n − an < 2 · 10−n 10 9 sm < Für genügend großes n wird dies kleiner als jedes ε > 0. 2.) sm := 1 + x + x2 + . . . + xm−1 heißt endliche geometrische Reihe. m sm = 1−x 1−x Für |x| < 1 ⇒ xm −→ 0 für m → ∞ 1 für m → ∞ ⇒ sm → 1−x ∞ P 1 für |x| < 1 ⇒ xν = 1−x ν=0 heißt (unendliche) geometrische Reihe. Regeln aν → a, bν → b (aν ± bν ) → (a ± b) ⇒ (a ν ·bν ) → (a · b) aν → a falls bν 6= 0 und b 6= 0 bν b aν → a ⇒ |aν | → |a| aν → a ⇒ αaν → αa aν → a, bν → b, aν < bν ⇒ a ≤ b !! 1 1 (Beispiel: aν = (ν+1)2 , bν = ν+1 , a = b = 0) einfaches hinreichendes Kriterium: {aν } monoton und beschränkt ⇒ Konvergenz 61 Seydel: Mathematik I, Kap. 3, WS 2008/09 C.) Grenzwert einer Funktion; Stetigkeit Definition: g ist Grenzwert der Funktion f (x) an der Stelle x = x0 , wenn für jede Folge xν → x0 , für die f (x) definiert ist, die Folge {f (xν )} gegen g konvergiert. Schreibweise: lim f (x) = g. x→x0 → alternative Definition der Stetigkeit von f in x0 Die Funktion f (x) ist an x = x0 stetig, wenn (g = f (x0 )): f (x) → f (x0 ) für x → x0 (im Sinne: für alle Folgen xν → x0 ) Folgerung: f stetig ⇒ f und Limes vertauschbar: lim f (x) = f ( lim x) (= f (x0 )) x→x0 z.B. √ x→x0 √ lim aν = lim aν Beispiel: f (x) = zu zeigen ist: sin x x 1 sin x x für x = 0 für x = 6 0 ist stetig, denn: → 1 für x → 0. 1 x 1 Kreis mit Radius 1. x im Bogenmaß ⇒ Fläche des Kreissektors ist x2 . Vergleich mit den Flächen des “inneren” und des “äußeren” Dreiecks: x 1 x 1 1 sin x cos x < < tan x ⇒ cos x < < 2 2 2 sin x cos x Also: x → 0 ⇒ cos x → 1 62 Seydel: Mathematik I, Kap. 3, WS 2008/09 3.8 Differentialrechnung A.) Differentialquotient y = f (x) Funktion. Es sei |h| eine kleine Änderung von x. Wie verhält sich f (x + h) ? praktische Bezeichnung: h = ∆x (“Inkrement”. Dies ist kein Produkt, sondern Symbol für “kleine” Änderungen.) Definition: Differenzenquotient ∆y f (x + ∆x) − f (x) := = tan σ ∆x ∆x Tangente in (x,f(x)) y Sehne durch (x,f(x)) und (x+ ∆x, f(x+∆x )) (’’Sekante’’) σ τ ∆y dy x x x+ ∆x Bemerkung: f (x) stetig ⇒ ∆y → 0 für ∆x → 0 ∆y “existiert” (d.h. Definition: Falls der Grenzwert lim ∆x ∆x→0 ∆y ∆x konvergiert für ∆x → 0 gegen einen endlichen Grenzwert), nennen wir ihn Differentialquotienten, oder Ableitung, und bezeichnen ihn mit y ′ (x) oder dy dx geometrisch: Die Sekante strebt gegen die Tangente mit Steigung y ′ (x) = tan τ . Beispiele: 1.) y = f (x) = a + bx + cx2 ⇒ ∆y = a + b(x + ∆x) + c(x + ∆x)2 − a − bx − cx2 = b∆x + c∆x2 + 2c∆x · x ⇒ ∆y ⇒ lim = b + 2cx ∆x→0 ∆x ∆y = b + 2cx + c∆x ∆x 63 Seydel: Mathematik I, Kap. 3, WS 2008/09 2.) y = sin x ∆y = sin(x + ∆x) − sin x = 2 sin ∆x cos(x + 2 ⇒ ∆y ∆x da = lim ξ→0 ∆x 2 ∆x 2 sin sin ξ ξ · cos(x + ∆x 2 ) ∆x ) 2 −→ cos x für ∆x → 0, = 1. B.) Differenzierbare Funktionen f (x+∆x)−f (x) ∆x ∆x→0 Falls lim existiert (d.h. Konvergenz für ∆x → 0), nennen wir f in x differenzierbar. lim f (x + ∆x) = f (x), d.h. f ist stetig. Folgerung: ∆x→0 Also ist Differenzierbarkeit eine stärkere Forderung: f differenzierbar in x ⇒ f stetig in x Gilt die Umkehrung? Nein! √ 1. Beispiel: y = x an x = 0: Differenzenquotient: √ 0 + ∆x − ∆x √ 0 √ = ∆x 1 =√ −→ ∞ ∆x ∆x für ∆x → 0+ also in x = 0 nicht differenzierbar (Bezeichnung 0+ : siehe unten). für x > 0: √ x + ∆x − ∆x √ x = ∆x √ ∆x( x + ∆x + x) √ −→ 1 √ 2 x für ∆x → 0 d.h. differenzierbar in x > 0. 2. Beispiel: f (x) = |x| an x = 0: ⇒ Differenzenquotient |∆x| |0 + ∆x| − |0| = = ∆x ∆x +1 für ∆x → 0+ −1 für ∆x → 0− Hinter dem ∆x → 0 können wir uns eine beliebige Folge xν → 0 vorstellen. Da also nicht für alle Folgen xν → 0 ein einheitlicher Grenzwert existiert, ist |x| in x = 0 nicht differenzierbar. Aber: Man kann einseitige Grenzwerte definieren, wenn man in der Definition zu Beginn von Abschnitt 3.7C das “jede Folge xν → x0 ” einschränkt durch xν < x0 oder xν > x0 . Schreibweise: lim− (. . .) bzw. lim+ (. . .) x→x0 x→x0 Bei Beispiel 2 gibt es sowohl einen linksseitigen wie einen rechtsseitigen Grenzwert. 64 Seydel: Mathematik I, Kap. 3, WS 2008/09 Bemerkung: Es gibt sogar stetige Funktionen, die nirgends differenzierbar sind (z.B. Aktienkurse). Die meisten praktisch auftretenden Funktionen sind stückweise differenzierbar. D.h. f (x) ist differenzierbar bis auf endlich viele Ausnahmepunkte x1 , x2 , x3 , . . . , xn . (Illustration an Figur) Allgemein gilt: f (x) nicht stetig an x0 f (x) nicht differenzierbar an x0 . ⇒ C.) Höhere Ableitung (für Funktionen y(x)) y ′ (x) ist wiederum Funktion, v(x) := y ′ (x) v(x) existiert für diejenigen x, für die y(x) differenzierbar ist. Auch für v(x) = y ′ (x) können der Differenzen- und der Differentialquotient betrachtet ′ dv werden. Existiert letzterer, so nennen wir v ′ (x) = dx = dydx(x) die 2. Ableitung von y(x). y ′′ (x) , Schreibweisen: d2 y dx2 (Diese “2” bedeutet keine Quadratur! d2 dx2 ist Symbol für die 2. Ableitung nach x.) Definition: y(x) heißt glatt (oder stetig differenzierbar), wenn y(x) differenzierbar ist und y ′ (x) stetig ist. (Dann hat y(x) keinen “Knick”; die Tangente an die Kurve variiert stetig.) [Hinweis für Spezialisten: Es gibt Funktionen, welche in x differenzierbar sind, aber y ′ (x) ist nicht stetig. (z.B. y(x) = x2 sin x1 für x 6= 0, y(0) := 0)] Auch y ′′ (x) ist Funktion, deren Ableitung analog definiert werden kann y ′′′ (x) (3. Ableitung). u.s.w. n-te Ableitung Bezeichnung y (n) = dn y dxn := d (n−1) dx y −→ (“rekursiv” definiert). praktische Definition: Eine Funktion f (x) heißt Ck -Funktion auf [a, b], wenn f (x) auf [a, b] k-mal “stetig differenzierbar” ist. D.h. die Ableitungen f ′ , . . . , f (k) existieren und f (k) ist stetig für a ≤ x ≤ b. d.h. y(x) C k -Funktion ⇔ y(x), y ′ (x), . . . , y (k) (x) stetig. C 0 bezeichnet die Menge aller stetigen Funktionen. f ∈ C0 heißt : f f ∈ C2 heißt : f, f ′ und f ′′ ist stetig. existieren und sind stetig. f (x) ist “glatt”, wenn f wenigstens C 1 ist. D.) Ableitungsregeln elementare Regeln: y(x) = cu(x) mit c konstant ⇒ y ′ = cu′ y(x) = u(x) ± v(x) ⇒ y ′ = u′ ± v ′ y(x) = u(x)v(x) ⇒ 65 y ′ = u′ v + uv ′ Seydel: Mathematik I, Kap. 3, WS 2008/09 y= u(x) v(x) y = y(x), Umkehrfunktion x = x(y) y′ = ⇒ dx dy ⇒ = u′ v − uv ′ v2 1 dy dx = 1 y′ falls y ′ 6= 0 (d.h. monoton!) Kettenregel: Hintereinanderausführung von Funktionen y = y(x), x = x(t), y(x(t)) ⇒ dy dy dx = dt dx dt Beispiel: h(x) = (x4 + 6x + 5)3 Anwenden der Kettenregel: Definition: f (x) = x4 + 6x + 5 und g(x) = x3 ⇒ h(x) = (f (x))3 = g(f (x)) dg(f (x)) df (x) · = 3(f (x))2 (4x3 + 6) df dx = 3(4x3 + 6)(x4 + 6x + 5)2 h′ (x) = (“Nachdifferenzieren”. Hinweis zu dem Beispiel: Ergebnis kann man sofort hinschreiben.) Beispiel: f (x) = sin(ax + b) f ′ (x) = cos(ax + b) · a = a cos(ax + b) (a vom Nachdifferenzieren) E.) Mittelwertsatz y(x) 11 00 00 11 a x ξ b Mittelwertsatz der Differentialrechnung (für eine Funktion): Falls y(x) stetig in a ≤ x ≤ b und differenzierbar in a < x < b ist, dann gibt es . (mindestens) ein ξ in a < ξ < b, so dass y ′ (ξ) = y(b)−y(a) b−a Folgerung für Fehlerrechnung y = f (x) , x : Eingangsgröße, y : Ausgangsgröße. Es sei ∆x Fehler in x, was ist ∆y? Mit Mittelwertsatz, falls Voraussetzung erfüllt ist: ∆y = f ′ (ξ)∆x ⇒ |∆y| ≤ M |∆x|, wobei M Schranke für f ′ (x) im jeweiligen x-Bereich ist. Folgerungen bzgl. Monotonie Es sei y ′ (x) > 0 in a ≤ x ≤ b und x1 < x2 beliebig im Intervall. Mittelwertsatz ⇒ ∃ ξ mit x1 < ξ < x2 , so dass y(x2 )−y(x1 ) x2 −x1 = y ′ (ξ) > 0 ⇒ y(x2 ) > y(x1 ) Also gilt der Satz: (Die Voraussetzungen des Mittelwertsatzes seien erfüllt.) y ′ (x) > 0 ⇒ y streng monoton wachsend (jeweils auf dem ganzen Intervall) analog: y ′ (x) < 0 ⇒ y monoton fallend. 66 Seydel: Mathematik I, Kap. 3, WS 2008/09 (mit jeweiliger Intervall-Angabe) abgeschwächt: y ′ (x) ≥ 0 y ′ (x) = 0 ⇔ monoton wachsend ⇔ y ist konstant F.) Regeln nach l’Hospital Für Ausdrücke in unbestimmter Form Beispiel: lim x→0 sin x x ist von der Form “ 00 ” Schreibe f (x) für den Zähler und g(x) für den Nenner. Es gelte entweder (d.h. von der Form “ 00 ”) Voraussetzung (1): lim f (x) = lim g(x) = 0 x→a x→a ∞ (d.h. Form “ ∞ ”) Voraussetzung (2): lim f (x) = lim g(x) = ∞ x→a x→a Bei jeder der beiden Voraussetzungen gilt die Aussage f ′ (x) f (x) = lim ′ x→a g (x) x→a g(x) lim (sofern der rechte Grenzwert existiert). sin x Ho = lim cos1 x x→0 x x→0 Beispiel: lim =1 (Typ 00 ) Ausdrücke der Form “0 · ∞” und “∞ − ∞” lassen sich in obige Ausdrücke umformen! Beispiel: lim (x cot x) x→0 (Typ “0 · ∞”) = lim x x→0 tan x (Typ 00 ) Ho = lim x→0 1 1 cos2 x =1 G.) Maxima und Minima Gegeben: Funktion y = f (x) auf einem Intervall I : a ≤ x ≤ b. Definition: f (x0 ) ist ein Maximum von f (x), wenn es eine Umgebung U um x0 gibt, so dass für alle x 6= x0 in I und in U gilt: f (x) < f (x0 ). Analog: Minimum. (Beide heißen Extremum) y Max Max Max Min Min Min x a b Satz: Es sei x0 im Inneren eines Teil-Intervalls, auf dem f (x) differenzierbar ist, und f (x0 ) ein Extremum. Dann gilt f ′ (x0 ) = 0. 67 Seydel: Mathematik I, Kap. 3, WS 2008/09 Bemerkung: Der Satz sagt nichts über Extrema an Intervallenden und Stellen, an welchen f (x) nicht glatt ist. Folgerung: Kandidaten für Extrema in I sind 1.) die Randpunkte des Intervalls, 2.) die Punkte x, an denen f nicht glatt ist, 3.) die Stellen x mit f ′ (x) = 0. Test, ob Maximum oder Minimum: Es sei x in einer (kleinen) Umgebung von x0 . 1. Kriterium: Gilt f ′ (x) > 0 für x < x0 und f ′ (x) < 0 für x > 0, dann ist f (x0 ) ein lokales Maximum. y f’>0 f’<0 x 0 x Umgebung Gilt f ′ (x) < 0 für x < x0 und f ′ (x) > 0 für x > x0 , dann ist f (x0 ) ein lokales Minimum. (Dieses Kriterium kann an Randextrema angepasst werden.) 2. Kriterium: Es sei x0 im Inneren und f ′ (x0 ) = 0. Für f ∈ C 2 gilt: f ′′ (x0 ) < 0 ′′ f (x0 ) > 0 ⇒ f (x0 ) lokales Maximum ⇒ f (x0 ) lokales Minimum Zur Kurvendiskussion (vgl. Abschnitt 3.6F) hinzufügen: Stetigkeit und Differenzierbarkeit prüfen, eventuell Monotonie-Bereiche feststellen. 68 Seydel: Mathematik I, Kap. 3, WS 2008/09 3.9 Integrale A.) Bestimmtes Integral; Flächeninhalt Es sei f (x) stetig auf a ≤ x ≤ b. y f(x) a ξ x 1 1 x ... 2 b x Für f > 0 betrachten wir den Flächeninhalt, der durch y = 0, x = a, x = b, y = f (x) (∗) begrenzt wird. Näherung durch Fläche von Rechtecken: Einteilung des Intervalles [a, b] in n Teilintervalle durch Zwischenpunkte a := x0 < x1 < x2 < . . . < xn−1 < xn := b Dies definiert parallele Streifen der Breiten xi − xi−1 Das i-te Rechteck habe die Länge f (ξi ) für ein ξi in xi−1 ≤ x ≤ xi . ⇒ Gesamtfläche der Rechtecke: n X f (ξi )(xi − xi−1 ) Sn := i=1 Für n = 1, 2, 3, . . . ist Sn eine Folge von Zahlen. Was ist, wenn n → ∞ und gleichzeitig xi − xi−1 → 0? (z.B. xi = a + i b−a n ) Satz: Für alle stetigen f (x) (auch negativ) hat die Folge Sn einen Grenzwert, egal wie die Teilintervalle und die ξi darin gewählt werden. n Rb P f (ξi )(xi − xi−1 ) (heißt auch “Riemann-Integral”) Definiton: a f (x)dx := lim n→∞ i=1 Der Beweis des Satzes verwendet mi := Min von f auf xi−1 ≤ x ≤ xi Mi := Max von f auf xi−1 ≤ x ≤ xi und “Obersumme” Sn := n P Mi (xi − xi−1 ) i=1 n P “Untersumme” Sn := mi (xi − xi−1 ) i=1 Klar ist Sn ≤ Sn ≤ Sn . Es folgen Konvergenz-Betrachtungen für n → ∞, die hier nicht durchgeführt werden. 69 Seydel: Mathematik I, Kap. 3, WS 2008/09 Bemerkung: Rb 1.) a f (x)dx heißt bestimmtes Integral, a und b heißen Integrationsgrenzen, f (x) heißt Integrand. 2.) Die “Integrationsvariable” ist intern und kann beliebig bezeichnet werden: Zb f (x)dx = a Zb f (α)dα = . . . a 3.) Das obige bestimmte Integral ist eine Zahl, keine Funktion. Rb 4.) a f (x)dx ist nur dann der (positive) Flächeninhalt des Bereiches (*), wenn f (x) ≥ 0 Rb für a ≤ x ≤ b. Falls f (x) ≤ 0 für alle a ≤ x ≤ b wäre der Flächeninhalt − a f (x)dx. Bei verschiedenen Vorzeichen von f : Nullstellen aufsuchen und Teilintegrale berechnen! y f(x) + α β − a + x b Rb Rβ Rα Gesamtfläche = a f (x)dx − α f (x)dx + β f (x)dx 5.) Aus der Definition des Integrals folgen diverse einfache Regeln, wie Zb 1 dx = b − a , usw. (s.u.) a B.) Mittelwertsatz der Integralrechnung Es seien f und g stetig und g(x) ≥ 0 auf a ≤ x ≤ b. Dann ∃ ein ξ mit a ≤ ξ ≤ b, so dass Zb f (x)g(x)dx = f (ξ) Rb g(x)dx a a Speziell für g = 1: Zb f (x)dx = f (ξ)(b − a) a Integrations-Regeln Zb dx = b − a a f (x) ≤ g(x) für a ≤ x ≤ b ⇒ Zb a 70 f (x)dx ≤ Zb a g(x)dx (∗) Seydel: Mathematik I, Kap. 3, WS 2008/09 (Spezialfälle f = 0 oder g = 0!) α konstant Zb ⇒ αy(x)dx = α a Zb (f (x) ± g(x))dx = a Zb y(x)dx a Zb f (x)dx ± a Zb g(x)dx a (“Linearität des Integrations-Operators”) Zb y(x)dx + a Zc y(x)dx = Zc y(x)dx für a ≤ b ≤ c a b Zb y(x)dx = − a m ≤ f (x) ≤ M Za y(x)dx b ⇒ (∗) m(b − a) ≤ Zb f (x)dx ≤ M (b − a) a (rechtes “≤”: wegen g := M und Rb dx = b − a) a b Zb Z f (x)dx ≤ |f (x)|dx (für a ≤ b) a a (folgt mit −|f (x)| ≤ f (x) ≤ |f (x)| aus (∗)) C.) Unbestimmtes Integral und Differentiation jetzt: Integration als “Umkehrung” der Differentiation. In Zb f (t)dt a fasse b als variabel auf: F (b) := Rb f (t)dt. a schreibe b → x, d.h. F (x) := Zx f (t)dt a mit Mittelwertsatz: F (x + ∆x) − F (x) = x+∆x Z f (t)dt − a = x+∆x Z x ⇒ f (t)dt = f (ξ) x+∆x Z Zx f (t)dt = a dt = f (ξ)∆x x F (x + ∆x) − F (x) = f (ξ) mit x ≤ ξ ≤ x + ∆x ∆x 71 Seydel: Mathematik I, Kap. 3, WS 2008/09 Das ist der Hauptsatz der Differential- und Integralrechnung: Die Integralfunktion F (x) einer stetigen Funktion f (x) ist differenzierbar, und es gilt x Z dF (x) d f (t)dt = f (x) = dx dx a und Zb f (x)dx = F (b) − F (a) . a (zum 2.Teil der Aussage:) Übergang zu einer anderen Konstanten ã statt a ändert F (x) nur um einen konstanten Wert. Man schreibt deshalb auch Z f (x)dx = F (x) + const. R Bezeichnung: f (x)dx heißt unbestimmtes Integral und ist eine Funktion! Jede Funktion F (x) mit dFdx(x) = f (x) heißt Stammfunktion von f (x). D.) Uneigentliche Integrale Beispiel: Z∞ f (x)dx := lim b→∞ a Zb f (x)dx a Integrale mit unendlichen Integrationsintervallen oder Unendlichkeitsstellen der Integranden heißen uneigentlich. Hinweis: Integrations-Methoden wie partielle Integration oder Substitution: Schulstoff bzw. Literatur. 72 Seydel: Mathematik I, Kap. 3, WS 2008/09 3.10 Logarithmus und Exponentialfunktionen A.) Der natürliche Logarithmus Integriere 1 x : Die Stammfunktion ist: Definition: ln x := Rx 1 1 t dt für x > 0 heißt “natürlicher Logarithmus”. Folgerungen: d 1.) Definition ⇒ Ableitung dx (ln x) = 2.) ln x ist nur für x > 0 definiert. im Folgenden seien x, x1 , x2 > 0 3.) ln(x1 · x2 ) = xZ 1 x2 dt = t 1 Zx1 dt + t 1 1 x für x > 0. xZ 1 x2 du u (Substitution: u = x1 t, x1 du x1 dt = ) u x1 t = ln x1 + ln x2 4.) 1/x Z dt 1 = ln x t 1 (Substitution u = ) t 1 = Zx 1 Zx dt 1 = − ln x u − 2 du = − u t 1 5.) ln(xq ) = q ln x für x > 0 und rationales q (folgt aus 3.), 4.)) (gilt auch für q ∈ IR) B.) Exponentialfunktionen ln x streng monoton ⇒ Umkehrfunktion existiert, nenne sie exp(x) y 1 exp (x) ln x 1 x (sehr grobe Skizze) x = ln y ⇔ y = exp(x) Besondere Zahl: e := exp(1) = 2.71828... In Abschnitt 3.6D: xq mit q = m n rational. Setze speziell x = e. Was ist eq ? Aus den ln-Eigenschaften folgt ln eq = q ln e = q 73 Seydel: Mathematik I, Kap. 3, WS 2008/09 Umkehrfunktion exp anwenden ergibt: exp(q) ≡ eq (Synonyme) Als Umkehrung von ln x ist ex jetzt auch für nichtrationale x definiert. Eigenschaften 1.) e0 = 1; negative x-Achse ist waagerechte Asymptote; ex ≥ 1 + x ; 2.) Ableitung: dx dy x = ln y ⇒ = 1 y = 1 ex , ex > 0 also dy d x = e = ex dx dx Die Exponentialfunktion ist die einzige Funktion mit der Eigenschaft y ′ = y. 3.) ex+y = ex ey ; e−x = e1x 4.) e−x ist exponentiell abfallender Prozeß. 5.) Wegen 3.) (ean∆t = ea(n−1)∆t · ea∆t ) gilt für exponentielles Wachstum/Abnahme: Der Wert nach gleichen Zeitabständen ergibt sich durch Multiplikation mit immer dem gleichen problemabhängigen Faktor. Halbwertszeit: dasjenige ∆t, für das ea∆t = 12 . C.) Allgemeine Exponentialfunktionen und Logarithmen Analog wie ex auch ax mit a > 0. ln(ax ) = x ln a ⇒ exp(ln ax ) = ax = ex ln a D.h. ax wird (zum Ausrechnen) auf exp und ln zurückgeführt. Mit y := ax ist ln y = x ln a. Es folgt ln y Umkehrfunktion für 0 < a < 1 und 1 < a x= ln a Definition/Bezeichnung: a log x, oder loga x := ln x ln a heißt “Logarithmus zur Basis a” für x > 0, a > 0, a 6= 1 e Speziell a = e: log x = ln x 10 a = 10: log x =Briggscher Logarithmus a immer gilt: a log a = 1 , log 1 = 0, Rechenregeln wie beim natürlichen Logarithmus. 3.11 Reihen und Potenzreihen Motivation: sin x = x − x3 3! + A.) Konvergenzkriterien n P Zur Erinnerung: sn = aν x5 5! − x7 7! ±... Partialsummen ν=1 74 Seydel: Mathematik I, Kap. 3, WS 2008/09 ∞ P Definition: aν := lim sn heißt Reihe. ν=1 n→∞ Beispiel: geometrische Reihe 1 + x + x2 + . . . = ∞ P xν = ν=0 Die geometrische Reihe divergiert für |x| ≥ 1! 1 1−x für |x| < 1. Definition: alternierende Reihe: aν sind abwechselnd positiv und negativ. Beispiel: geometrische Reihe für x = − 12 : 1 1 1 1 + − ±... = 2 4 8 1+ 1− Definition: Reihe heißt absolut konvergent, wenn 1 2 ∞ P = 2 3 |aν | konvergiert. ν=1 Folgerungen aus Cauchys Konvergenzkriterium (Abschnitt 3.7B): 1.) Reihe konvergiert absolut ⇒ Reihe konvergiert. zum Beweis: |an+1 + . . . + an+m | ≤ |an+1 | + . . . + |an+m | 2.) Reihe konvergiert ⇒ aν → 0 für ν → ∞ Warnung: Umkehrung gilt nicht! z.B. divergiert 1+ 21 + 13 + 41 + 15 +. . . (“harmonische Reihe”). 3.) Reihe sei alternierend und es gelte für ein N und ∀ν ≥ N die Ungleichung |aν | > |aν+1 |. Dann gilt: ⇔ Reihe konvergiert aν → 0 Beweis: sn bilden Intervall-Schachtelung. sn sn+2 s für sn+3 ν→∞ sn+1 an+2 a n+1 B.) Rechenregeln Die Reihen ∞ P ν aν und ∞ P bν seien konvergent. Dann gilt: ν ∞ X aν ± ν α ∞ X ν ∞ X ν aν = ∞ X bν = (aν ± bν ) ν ∞ X αaν ν Warnung: Klammern setzen oder fortlassen oder Umordnen ist i.A. nicht erlaubt!! ∞ P (−1)ν+1 ν1 = ln 2 (→ später: vergleiche Taylorentwicklungen) Beispiel: ν=1 75 Seydel: Mathematik I, Kap. 3, WS 2008/09 Umordnen: 1 + 1 3 − 1 2 + 1 5 1 7 + − 1 4 + 1 9 1 11 + + 1 13 − 1 6 +... = 3 2 ln 2 C.) Konvergenzbedingungen durch Reihenvergleich ∞ P Eine Reihe bν heißt Majorante von ν (2) aν , wenn 0 ≤ |ak | ≤ bk für k ≥ N . Dann gilt: ν Majoranten-Kriterium: ∞ P (1) bν konvergent ⇒ ν ∞ P ∞ P |aν | = ∞ ν aν konvergiert absolut ν ∞ P ⇒ ∞ P bν = ∞ ν Anwendung: Vergleich mit bekannter Reihe. Folgerung ist Quotienten-Kriterium: Falls | absolut. Wurzelkriterium: Falls p ν aν+1 aν | ≤ q < 1 ist ∀ ν > N , dann konvergiert Reihe |aν | ≤ q < 1 ∀ ν > N , dann absolute Konvergenz. Bemerkungen: 1.) Jede endliche Teilsumme a0 + a1 + . . . + aN spielt für Konvergenz oder Divergenz keine Rolle. 2.) Insbesondere liegt Konvergenz vor, falls: aν+1 =q<1 lim ν→∞ aν bzw. lim ν→∞ 3.) Falls lim | aaν+1 | > 1, dann Divergenz. ν Beispiel: ∞ P ν=0 xν ν! = 1+x+ Quotientenkriterium: alle x Beispiel: ∞ P ν=1 x2 2! + aν+1 aν x2 3! = p ν |aν | = q < 1 +... xν+1 (ν+1)! xν ν! = x ν+1 −→ 0 für ν → ∞ ⇒ konvergiert für 1 : ν ν Quotientenkriterium: aaν+1 = ν+1 −→ 1, Kriterium nicht anwendbar da q = 1, ν aν+1 d.h. | aν | < 1 genügt nicht für Konvergenz. D.) Potenzreihen Falls bei einer Reihe ∞ P bν die Koeffizienten Funktionen bν = fν (x) sind, dann heißt die ν=0 Reihe Funktionenreihe. Wichtigstes Beispiel: fν (x) = aν xν 76 Seydel: Mathematik I, Kap. 3, WS 2008/09 Eine solche Reihe ∞ X a ν xν = a 0 + a 1 x + a 2 x2 + . . . ν=0 heißt Potenzreihe. Alle ihre Teilsummen sind Polynome. Konvergenz: bν+1 aν+1 xν+1 aν+1 = = x bν a ν xν aν aν+1 |<1 hinreichend: lim |x| | ν→∞ aν aν+1 |<1 äquivalent: |x| lim | ν aν ν D.h. für alle x mit |x| < lim | aaν+1 | konvergiert Potenzreihe absolut. ν→∞ aν | heißt Konvergenzradius der Potenzreihe (falls aν 6= 0). Definition: ρ := lim | aν+1 ν→∞ Zusammen: |x| < ρ ⇒ absolute Konvergenz |x| > ρ ⇒ Divergenz Der Konvergenzradius ρ kann auch 0 oder ∞ sein; Fall ρ = 0 : Konvergenz nur für x = 0 Fall ρ = ∞ : Konvergenz für alle x Für |x| = ρ 6= 0 Divergenz oder Konvergenz möglich; dann gibt es keine allgemeine Aussage. P∞ ν allgemeine Potenzreihe: ν aν (x − α) Konvergenzbereich |x − α| < ρ (Inneres eines Kreises um x = α mit Radius ρ) E.) Die Taylor-Formel Approximation von Funktionen durch Polynome (Approximation = Näherung) gegeben: Funktion f (x) auf Intervall. gesucht: Polynom a0 + a1 x + a2 x2 + . . . + an xn =: Pn (x) mit Koeffizienten ai derart, dass auf dem Intervall gilt f (x) ≈ Pn (x). Ziel: Das Polynom soll für x = α mit f in allen Ableitungen bis zur n-ten Ordnung übereinstimmen. D.h. di di P (α) = f (α) für i = 0, 1, . . . , n n dxi dxi 77 (∗) Seydel: Mathematik I, Kap. 3, WS 2008/09 y f(x) Pn (x) x α Lösung: Taylor-Polynom: Pn (x) = n X f (k) (α) k! k=0 = f (α) + (x − α)k f ′ (α) f ′′ (α) f (n) (α) (x − α) + (x − α)2 + . . . + (x − α)n 1! 2! n! Probe: (∗) stimmt. (0! := 1) Fehler beim Taylor-Polynom f (x) − Pn (x)? Frage: Wie groß ist der Fehler Bezeichnung: Rn (x, α) := f (x) − Pn (x) heißt Restglied. Es gilt für (n + 1)-mal stetig differenzierbare Funktionen f : Rn (x, α) = f (n+1) (ξ) (x − α)n+1 (n + 1)! für ξ zwischen x und α Folgerung: Der Fehler f (x) − Pn (x) ist umso kleiner, je näher x an α liegt. Beispiel: f (x) = ex , α=0. ex = 1 + x + ⇒ f (i) (α) = 1 ∀ i und: x2 x3 xn eξ + +...+ + xn+1 2! 3! n! (n + 1)! F.) Taylor-Entwicklung Annahme: f (x) für x = α beliebig oft stetig differenzierbar. beliebige n gültig. ⇒ Taylor-Formel für Es gilt: Restglied Rn (x, α) −→ 0 für n → ∞ und |x − α| < ρ m ∞ X f (k) (α) k=0 k! (x − α)k konvergiert gegen f (x) für |x − α| < ρ 78 Seydel: Mathematik I, Kap. 3, WS 2008/09 Definition: Die Potenzreihe ∞ X f (k) (α) k=0 k! (x − α)k heißt Taylorreihe von f (x) mit Entwicklungspunkt x = α. Man sagt, f (x) läßt sich um (den Entwicklungspunkt) α in eine Taylorreihe entwickeln. f (x) wird in Potenzreihe entwickelt. Wird kein Entwicklungspunkt α angegeben, ∞ P f (k) (0) k x . so ist meist α = 0 gemeint: k! oder: k=0 Beispiel: f (x) = sin x in Potenzreihe, α = 0 f ′ (x) = cos x f ′′ (x) = − sin x f ′′′ (x) = − cos x f (4) (x) = sin x f ′ (0) = 1 f ′′ (0) = 0 f ′′′ (0) = −1 f (4) (0) = 0 (danach periodisch) allgemein für f (x) = sin x : |Rn | ≤ f (2k) (0) = 0 ; 1 xn+1 −→ 0 (n + 1)! Zusammen: sin x = f (2k+1) (0) = (−1)k für n → ∞ für beliebige x x x3 x5 − + ±... 1! 3! 5! für alle x 3.12 Funktionen von mehreren Veränderlichen f (x1 , x2 , . . . , xn ) ist eine reellwertige Funktion von n Veränderlichen x1 , x2 , . . . , xn . Der Definitionsbereich ist der IRn oder ein Teil vom IRn . Beispiel: f (x1 , x2 ) kann gedeutet werden als Höhe über der (x1 , x2 )-Ebene. (Illustration: Höhenlinien f (x1 , x2 ) = c) Schreibweise x für (x1 , . . . , xn ) Partielle Ableitung erster Ordnung ∂f (x1 , . . . , xk−1 , xk , xk+1 , . . . , xn ) ∂f (x) = ∂xk ∂xk entspricht der gewöhnlichen ersten Ableitung von g(t) := f (x1 , . . . , xk−1 , t, xk+1 , . . . , xn ) , wobei beim Differenzieren nach xk die anderen Veränderlichen x1 , . . . , xk−1 , xk+1 , . . . , xn als konstant angesehen werden. 79 Seydel: Mathematik I, Kap. 3, WS 2008/09 Beispiel: f (x1 , x2 ) = x1 x22 =⇒ ∂f = x22 ∂x1 , ∂f = x1 2x2 ∂x2 Definition: Der Vektor aller 1. partiellen Ableitungen heißt Gradient: gradf (x) := ∂f (x) ∂f (x) ,..., ∂x1 ∂xn (als Spaltenvektor) Maximum oder Minimum von f : Notwendig für Extremum im Inneren des Definitionsbereiches von f ist gradf (x) = 0 . Diese Vektorgleichung ist ein System von n Gleichungen. (Analogie zu f ′ (x) = 0 in Abschnitt 3.8G) Analog zum eindimensionalen Fall gibt es Taylorentwicklungen. Beispiel: Kondition (zu Abschnitt 1.5 G) ∂f (x) . ∂f (x) ∆x1 + . . . + ∆xn ∆f = ∂x1 ∂xn = (gradf (x))tr ∆x wobei ∆x der Vektor mit den Komponenten ∆x1 , . . . , ∆xn ist. Partielle Ableitungen höherer Ordnung: analog! Bezeichnungen z.B. ∂ 2 f (x1 , x2 ) für die zweite partielle Ableitung nach x1 ∂x21 Anwendung: Abschnitt 6.2 80 Seydel: Mathematik II, Kap. 4, SoSe 2009 Kapitel 4 Approximation mit Kurven 4.1 Approximation und Interpolation Problem 1: gegeben: Punkte / Zahlenpaare (xi , yi ), i = 0, 1, . . . , n (z.B. aus Messungen oder Berechnungen) y y Φ 0 x x 0 Frage: Welche Funktion Φ(x) passt sich “am besten” den Punkten an? Problem 2: gegeben: Funktion f (x), die nicht elementar auswertbar ist (z.B. sin x) y f(x)+ ε f(x) Φ f(x)− ε x Aufgabe: Finde (einfachere) Ersatzfunktion Φ, so dass Φ(x) ≈ f (x), d.h. |Φ − f | < ǫ für eine vorgegebene Fehlerschranke ǫ Problem 3: gegeben: Punkte (xi , yi ). Aufgabe: Φ soll die Punkte interpolieren, d.h. Φ(xi ) = yi für alle i. y x Problem 4: gegeben: Integrationsproblem (“Quadratur”) Z b f (x)dx a 81 Seydel: Mathematik II, Kap. 4, SoSe 2009 Gesucht: Φ(x), so dass Rb Rb 1.) a Φ(x) dx ≈ a f (x) dx (Genauigkeit) Rb 2.) a Φ(x) dx einfach auszuwerten (Effizienz) Problem 5: Φ soll Lösungsfunktionen von Differentialgleichungen approximieren −→ Literatur Das Resultat einer Approximation hängt entscheidend von dem Typ von Funktion Φ(x) ab, den wir zulassen werden (“Funktionenklasse”). Beispiele für Funktionenklassen: 1.) Polynome Φ(x) = pn (x) = a0 + a1 x + . . . + an xn mit Koeffizienten a0 , . . . , an (Beispiele: Taylor-Polynome) 2.) Streckenzug Φ x (d.h. intervallweise Polynome 1. Grades) 3.) trigonometrische Funktionen Φ(x) = a0 + n X (ak cos kx + bk sin kx) k=1 (Beispiel: Fourier-Reihen) 4.2 Interpolation mit Polynomen zugelassene Funktionenklasse für Φ pn (x) = a0 + a1 x + . . . + an xn speziell n = 1 : Gerade n = 2 : Parabel a0 + a1 x a 0 + a 1 x + a 2 x2 A. Lineare Interpolation nur Geraden zugelassen: Φ = a0 + a1 x gegeben: 2 “Stützpunkte” (x1 , y1 ), (x2 , y2 ). 82 Seydel: Mathematik II, Kap. 4, SoSe 2009 y y y f(x) Φ 2 1 x x 1 2 x Lösung ist Φ(x) = y1 + = y2 − y1 (x − x1 ) x2 − x1 f (x1 )(x2 − x) + f (x2 )(x − x1 ) x2 − x1 (früher häufig angewandt, um Zwischenwerte bei Tabellen zu approximieren.) klassische “Interpolation”: für ein x “Extrapolation”: für ein x mit x1 < x < x2 außerhalb berechne Φ(x) als Näherung zu f (x) B. Lagrange-Polynome Gegeben: n + 1 Stützpunkte (x0 , y0 ), . . . , (xn , yn ), xi verschieden, d.h. xi 6= xj für i 6= j Definition: Lagrange-Polynom: Lk (x) := (x − x0 ) · . . . · (x − xk−1 ) · (x − xk+1 ) · . . . · (x − xn ) (xk − x0 ) · . . . · (xk − xk−1 ) · (xk − xk+1 ) · . . . · (xk − xn ) Eigenschaften: Lk (xk ) = 1 Lk (xi ) = 0 für i 6= k Polynom n-ten Grades Folgerung: Φ(x) := L0 (x)y0 + L1 (x)y1 + . . . + Ln (x)yn interpoliert: Φ(xk ) = yk für k = 0, . . . , n Beispiel: x0 = 2, x1 = 2.5, x2 = 4, yi = 1 xi 83 Seydel: Mathematik II, Kap. 4, SoSe 2009 (x − 2.5)(x − 4) = x2 − 6.5x + 10 (2 − 2.5)(2 − 4) 4 L1 (x) = − (x2 − 6x + 8) 3 1 2 9 L2 (x) = (x − x + 5) 3 2 1 2 1 Φ(x) = L0 + L1 + L2 = 2 5 4 2 = 0.05x − 0.425x + 1.15 L0 (x) = L i L 1 1 L 2 0 x 1 2 3 4 L 0 4 f(x) 2 Φ (x) x 1 2 3 4 C. Eigenschaften 1.) Es seien x0 , x1 , . . . , xn voneinander verschieden. Dann gibt es genau ein Polynom pn vom Grad ≤ n, das interpoliert: pn (xi ) = yi (Beweis: Annahme es gibt zwei...) 2.) Fehler: Annahme: Die Punkte “liegen auf” f (d.h. f (xi ) = yi ∀ i). Frage: Wie “weit” ist pn von f entfernt? f (x) − pn (x) = f (n+1) (ξ) (x − x0 )(x − x1 ) · . . . · (x − xn ) (n + 1)! hierbei ist ξ im Intervall, welches x, x0 , . . . , xn umfasst. Formel brauchbar, wenn f (n+1) wenigstens in der Größenordnung bekannt ist oder abschätzbar: |f (n+1) (ξ)| ≤ C. (Beispiel f (x) = sin x −→ C = 1). 3.) gute Eigenschaften: einfache Theorie und Konstruktion sehr schlechte Eigenschaften: 4.) Außerhalb von x0 , . . . , xn steigt Fehler stark an ⇒ Extrapolation ist i.a. nicht sinnvoll. 5.) n groß: schlecht konditioniert (pn (x) hängt empfindlich von Werten yi ab.) 6.) n groß und (beliebig) vorgegebene (z.B. äquidistante) xi : starke Oszillationen zum Rand des Intervalls 84 Seydel: Mathematik II, Kap. 4, SoSe 2009 p (x) n f(x) x (Abhilfe möglich, wenn xi “optimal” gelegt werden können, d.h. zunehmend dichter zu den “Rändern” x0 und xn . → Chebyshev-nodes, Čebyšev-Polynom) Empfehlung: Benutze Polynom-Interpolation nur bei kleinem Grad! (sagen wir n < 6), d.h. bei wenig Stützpunkten. D. Rekursionsformel von Neville zur Auswertung eines Interpolations-Polynoms pn (x) für einen vorgegebenen Wert von x. Ziel/Idee: Konstruiere Polynom höheren Grades billig aus Polynomen niederen Grades. Es sei Qi,j (x) das Polynom j-ten Grades (für i ≥ j), welches die Stützpunkte (xi−j , yi−j ),. . .,(xi , yi ) interpoliert. Dann gilt die Rekursion Qi,0 := yi (Startwerte), i = 0, 1, 2, . . . Qi,j (x) := Qi,j−1 + Qi,j−1 − Qi−1,j−1 x−xi−j x−xi −1 für 1 ≤ j ≤ i, und i = 1, 2, . . . Schema/Anordnung im Tableau: x 0 y0 = Q 00 x 1 y = Q 1 10 Q 11 x y 2= Q 20 y3 = Q 30 Q 21 Q 31 x 2 3 Q 22 Q 32 Q 33 u.s.w. Beispiel: (xi , yi ) = (0, 1), (1, 3), (3, 2). Wert des Interpolations-Polynomes für x = 2? 85 Seydel: Mathematik II, Kap. 4, SoSe 2009 i x 0 0 1 1 2 3 i y i 1 = Q 00 3 = Q 10 2 = Q 20 5 1 5/ 2 -2 10/ 3 -3 P ( 2 ) = 10/3 2 (die Nenner in Kreisen) Praxis: Für anderes x von vorne beginnen. Nur die letzte Zeile des Tableaus speichern. Stützstellen brauchen nicht geordnet zu sein, Hinzunahme weiterer Stützpunkte/Zeilen problemlos. E. Konstruktion der Koeffizienten Anstatt pn (x) = a0 + a1 x + . . . + an xn besser der Ansatz von Newton: pn (x) = b0 + b1 (x − x0 ) + b2 (x − x0 )(x − x1 ) + . . . + bn (x − x0 )(x − x1 ) · . . . · (x − xn−1 ) Vorteil gegenüber dem bisherigen Ansatz pn (x) = a0 + a1 x + . . . + an xn : Koeffizienten bi folgen mit geringerem Aufwand: y0 = pn (x0 ) = b0 + 0 → b 0 = y0 y1 − y0 y1 = pn (x1 ) = b0 + b1 (x1 − x0 ) + 0 → b1 = x1 − x0 ··· y2 = pn (x2 ) = b0 + b1 (x2 − x0 ) + b2 (x2 − x0 )(x2 − x1 ) → b2 = ··· .. . jeweils nur eine Unbekannte pro Gleichung, rekursives Vorgehen! Wegen der Eindeutigkeit der Interpolation sind beide Interpolations-Polynome identisch. (i.a. ai 6= bi !) Rekursion und Definition für “dividierte Differenzen”: f [xi ] := yi (Startwerte) f [xi , xi+1 , . . . , xi+k−1 , xi+k ] := f [xi+1 , . . . , xi+k ] − f [xi , . . . , xi+k−1 ] xi+k − xi Damit gilt: b0 = f [x0 ], b1 = f [x0 , x1 ] (s.o.), b2 = f [x0 , x1 , x2 ], . . . , bn = f [x0 , x1 , . . . , xn ] Tableau für einfaches Rechnen: 86 Seydel: Mathematik II, Kap. 4, SoSe 2009 x 0 y0 x1 y1 x2 y2 f[x 0 ,x 1 ] f[x0 ,x1 ,x2 ] f[x1 ,x 2 ] u.s.w. d.h.: Koeffizienten bi befinden sich in der oberen Diagonale. Anwendung der Rekursion: Die Koeffizienten des Polynoms werden benötigt, wenn z.B. ein Interpolations-Polynom für viele x auszuwerten ist. Auswertung dann mit Horner-Schema: p(x) = (((bn (x − xn−1 ) + bn−1 )(x − xn−2 ) + . . . + b1 )(x − x0 ) + b0 Beispiel: (von oben) 0 1 1 3 3 2 Φ (x ) = p2 ( x ) = 1 + 2 x - 5/6 x(x-1) -5/6 -1/2 2 4.3 Interpolation mit Splines Polynominterpolation von § 4.2: brauchbar nur bei geringer Anzahl von Punkten. gesucht: Interpolation, auch wenn viele Punkte (x0 , f0 ), . . . , (xn , fn ) vorgegeben sind! A. Definition des Splines Idee: S(x) S (x) 3 S (x) 2 f S (x) 0 0 S (x) n-1 S (x) 1 x 0 x 1 x 2 x 3 x 4 x n-1 x x n Berechne in jedem Teilintervall ein eigenes Polynom derart, dass die Polynom–Stücke an den “Nahtstellen” xj möglichst glatt zusammenstoßen. Wähle Polynome von jeweils 3. Grad, d.h. 87 Seydel: Mathematik II, Kap. 4, SoSe 2009 Ansatz für “kubischen Spline”: Sj (x) = aj + bj (x − xj ) + cj (x − xj )2 + dj (x − xj )3 für xj ≤ x < xj+1 und j = 0, 1, . . . , n − 1 In jedem Teilintervall benötige aj , bj , cj , dj , also insgesamt 4n Unbekannte. Der GesamtSpline S(x) besteht stückweise aus S0 (x), S1 (x), . . . , Sn−1 (x). Forderungen an S(x): Anzahl der Bedingungen (1) interpoliert: j = 0, 1, . . . , n − 1 (2) ist stetig: (j = 1, . . . , n − 1) (3) 1. Ableitung ist stetig: (4) 2. Ableitung ist stetig: Sj (xj ) = fj , dazu Sn−1 (xn ) = fn Sj (xj ) = Sj−1 (xj ) ′ Sj′ (xj ) = Sj−1 (xj ) ′′ ′′ Sj (xj ) = Sj−1 (xj ) n+1 n−1 n−1 n−1 4n − 2 Brauche 4n Gleichungen; noch 2 Bedingungen frei. Wichtige Beispiele für zwei noch fehlende “Randbedingungen”: ′′ (5a) freier Rand: S0′′ (x0 ) = 0, Sn−1 (xn ) = 0, “natürlicher Spline” (Mechanik: Krümmung an Endpunkten = 0) oder ′ (xn ) = fn′ für vorgeschriebene Werte (5b) eingespannter Rand: S0′ (x0 ) = f0′ , Sn−1 ′ ′ f0 , fn ; eventuell vorher Näherungen für f0′ , fn′ berechnen. (Z.B. am linken Rand: Ein “kurzes” Polynom Plinks (x) ist so zu berechnen, dass es die “linkesten” ′ drei oder vier Punkte interpoliert. Dann y0′ := Plinks (x0 ). Analog am rechten Rand.) oder ′ (5c) periodische Bedingungen: (Vor.: f0 = fn ): S0′ (x0 ) = Sn−1 (xn ), S0′′ (x0 ) = ′′ Sn−1 (xn ) oder (5d) not a knot: Stetigkeit von S ′′′ an x1 und xn−1 . Die obigen 4n Bedingungen (1)–(5) definieren eindeutig die Konstanten aj , bj , cj , dj , und damit den kubischen Spline. B. Berechnung des kubischen Splines Sj (x) = aj + bj (x − xj ) + cj (x − xj )2 + dj (x − xj )3 Interpolation (1) ⇒ Sj (xj ) = aj = fj , d.h. aj sind bekannt! Bezeichnung: hj := xj − xj−1 (2) ⇒ fj = Sj (xj ) = Sj−1 (xj ) = fj−1 + bj−1 hj + cj−1 h2j + dj−1 h3j ′ (xj ) = bj−1 + 2cj−1 hj + 3dj−1 h2j (3) ⇒ Sj′ (xj ) = bj = Sj−1 (4) ⇒ cj = cj−1 + 3dj−1 hj (gekürzt mit 2) (4′ ) 88 (3′ ) (2′ ) Seydel: Mathematik II, Kap. 4, SoSe 2009 Elimination der dj aus (4’) und bj führt auf hj cj−1 + 2(hj + hj+1 )cj + hj+1 cj+1 = 3 fj − fj−1 fj+1 − fj −3 hj+1 hj für j = 1, 2, . . . , n − 1 (∗) Dies ist ein System von n − 1 linearen Gleichungen für die n + 1 Unbekannten cj = Sj′′ (xj ) 2 (wird gleich wieder mit 2 multipliziert) Die Randbedingungen können durch zwei zusätzliche Gleichungen definiert werden. Abkürzungen: für j = 1, 2, . . . , n − 1 Mj :=Sj′′ (xj ) hj+1 λj := hj + hj+1 hj = 1 − λj µj := hj + hj+1 6 fj+1 − fj fj − fj−1 rj := · − hj + hj+1 hj+1 hj und für Fall (5a) (c0 = cn = M0 := Mn := 0) zusätzlich : λ0 :=0, r0 := 0, µn := 0, rn := 0 Damit lautet (∗) mit Randbedingungen in Matrix-Schreibweise: 2 µ1 0 λ0 2 .. . 0 λ1 .. . µn−1 .. . 2 µn λn−1 2 M0 M1 .. . M n−1 Mn = r r0 r1 .. . n−1 rn Die Matrix ist tridiagonal, die Lösung mit dem Gaußschen Verfahren ist hier extrem billig (Aufwand O(n) statt O(n3 )). Algorithmus (natürlicher kubischer Spline): Eingabe: (x0 , f0 ), (x1 , f1 ), . . . , (xn , fn ) berechne hj , λj , µj , rj löse Gleichungssystem mit Vorwärts-/Rückwärts-Schleife, ergibt Mj Koeffizienten aus aj =yj = fj cj =Mj /2 Mj+1 − Mj (aus (4′ )) dj = 6hj+1 fj+1 − fj hj+1 bj = − (2Mj + Mj+1 ) (aus (2′ )) hj+1 6 89 Seydel: Mathematik II, Kap. 4, SoSe 2009 Hinweise: 1.) keine Matrix speichern, nur Vektoren! 2.) Für (5a) hätte ein System der Größe n − 1 ausgereicht, weil c0 = cn = 0; in obigem größeren Rahmen lässt sich mit anderen λ0 , µn , r0 , rn auch (5b) leicht realisieren. 3.) Aus der Struktur der Matrix folgt ihre Nichtsingularität. Es folgt, dass der Spline eindeutig definiert ist. C. Weitere Eigenschaften Glattheit: nach Konstruktion S ∈ C 2 [x0 , xn ], und glatt auch im folgenden Sinn: Es gilt Z xn 2 ′′ (S (x)) dx ≤ x0 Z xn (f ′′ (x))2 dx x0 für alle beliebigen anderen interpolierenden Funktionen f (x), welche 2-mal stetig differenzierbar sind und die Randbedingung erfüllen. Folgerung: Splines haben geringe “Krümmung” und oszillieren deswegen relativ wenig. y Spline Polynom (qualitativ) x Ergänzungen zur Vorlesung: 1.) Vorwärts- / Rückwärtsschleife: δi “neue” Diagonalelemente, δ0 := 2, r̃0 := r0 , r̃i “neue” rechte Seite: für i = 0, 1, ..., n − 1: µi+1 µi+1 , r̃i+1 = ri+1 − r̃i δi+1 = 2 − λi δi δi r̃n Mn := δn für k = n − 1, n − 2, ..., 0 : 1 Mk = (r̃k − λk Mk+1 ) δk 2.) eingespannter Rand: λ0 := 1, µn := 1, 6 f1 − f0 ′ − f0 , r0 := h1 h1 fn − fn−1 6 ′ fn − rn := hn hn 90 Seydel: Mathematik II, Kap. 4, SoSe 2009 4.4 Bézier-Kurven 1962 Bézier (Renault); Casteljau (Citroën) Bernstein-Polynome: für allgemeines Intervall a ≤ x ≤ b: Bin (x; a, b) := n (b − x)n−i (x − a)i (b − a)n i für i = 0, 1, . . . , n ist i-tes vom Grad n. Bernstein-Polynom n n! (Binomialkoeffizient i = i!(n−i)! ) oder speziell für 0 ≤ t ≤ 1: Bin (t) := Bin (t; 0, 1) = Beispiel n = 2: n i (1 − t)n−i ti B02 (t) =(1 − t)2 B12 (t) =2(1 − t)t B22 (t) =t2 Eigenschaften für Bin (t): n X (1) Bin (t) = 1 (“Zerlegung der 1”) i=0 (2) (3) (4) (5) t = 0 ist i-fache Nullstelle (i > 0), t = 1 ist (n − i)-fache Nullstelle (i < n) Bin (t) ≥ 0 für 0 ≤ t ≤ 1 Bin (t) hat genau ein Maximum, bei t = ni n−1 (t) + (1 − t)Bin−1 (t) Rekursion: Bin (t) = tBi−1 d Vektorwertiges Polynom: Es seien Pn a0 , ai 1 , . . . , an Vektoren im IR (CAD: d = 2 oder d = 3), dann ist P (t) := i=0 ai t ein vektorwertiges Polynom (“polynomiale Kurve”). Für z.B. 0 ≤ t ≤ 1 beschreibt P (t) ein Kurvenstück im IRd , dabei ist t der Parameter der Kurve. Es seien p0 , p1 , . . . , pn Punkte im IRd . Bernstein-Bézier-Kurven: P (t) := n X pi Bin (t) i=0 Die Punkte p0 , p1 , . . . , pn heißen Bézier-Punkte oder Kontrollpunkte. Der Streckenzug p0 ↔ p1 ↔ . . . ↔ pn heißt B-B-Polygon. Eigenschaften der B-B-Kurven: (a) P (0) = p0 , P (1) = pn 91 Seydel: Mathematik II, Kap. 4, SoSe 2009 (b) In den Endpunkten sind die B-B-Kurven tangential zum Polygon durch die Kontrollpunkte. (zeige hierzu P ′ (0) =Steigung der Gerade p0 → p1 , analog P ′ (1)....) (c) Die Kurve liegt in der durch p0 , p1 , . . . , pn aufgespannten konvexen Hülle ) ( n n X X si = 1 si pi mit si ≥ 0, i=0 i=0 (folgt mit si = Bin (t) aus (3) und (1) “Zerlegung der 1”.) [konvexe Menge: Mit je zwei Punkten ist auch ihre Geraden-Verbindung enthalten.] (d) Die Kurve geht “relativ nahe” an den Kontrollpunkten vorbei. (folgt aus (4): für t = i/n ist si = Bin maximal, die anderen sk (für k 6= i) eher klein) Beispiel (im IR2 ): (Reihenfolge der Numerierung ist wichtig!) P 2 Polygon P 1 P 3 konvexe Hülle P 0 Beispiel (qualitativ): (Reihenfolge der Numerierung ist wichtig!) 1 P 0 3 2 5 4 Berechnung: erfolgt rekursiv. Hierzu werden die vektorwertigen Teilpolynome bki definiert: k X k pi+j Bjk (t). bi (t) := j=0 Es gehen die Punkte pi , pi+1 , . . . , pi+k ein. Man zeigt leicht + tbk−1 bki (t) = (1 − t)bk−1 i i+1 bn0 (t) = P (t) . und Anordnung der bki in Tableau (Einträge sind Vektoren). Literatur: Algorithmus von Casteljau, startet mit b0i = pi . 1 0 b1 b1 = P1 P2 = b0 2 2 2 b0 3 b0 1 b1 1 b2 b0 P3 = b0 3 0 b0 = P0 92 Seydel: Mathematik II, Kap. 4, SoSe 2009 Hinweis: Mit B-Splines können ähnliche Kurven erzeugt werden. (“B” ← Basis) 4.5 Integration mit Trapezsummen; Extrapolation Rb Aufgabe: Berechne a f (x)dx, wobei a, b und f gegeben, f genügend glatt auf a ≤ x ≤ b. 1. Idee: Approximiere f (x) durch interpolierendes Polynom pn (x). Dann Z b f (x)dx ≈ Z b pn (x)dx = n bX f (xi )Li (x)dx = a i=0 a a Z n X Z b f (xi ) Li (x)dx = i=0 | a {z } hängen nicht von f ab. Falls xi äquidistant mit h = xj+1 − xj = b−a n , xj := a + jh; dann =hci (Li : Lagrange Polynome; Letzteres wird mit der Substitution x = a + ht gezeigt.) Die “Gewichte” ci können in der Literatur gefunden werden, bzw. in den folgenden Beispielen. Zusammenfassung: Es gelten die Newton-Cotes-Formeln: Z Z b f (x)dx ≈ a b pn (x)dx = h a n X ci f (xi ) i=0 1. Beispiel: Trapezregel n = 1, d.h. ersetze f durch Gerade p1 (x) f(x) p (x) 1 a b x1 x0 c0 = c1 = Z a b x 1 2 x1 − x0 (f (x0 ) + f (x1 )) 2 = Fläche des Trapezes f (x)dx ≈ 93 Seydel: Mathematik II, Kap. 4, SoSe 2009 2. Beispiel: “Simpsons Regel”, “Keplersche Faßregel” n = 2, d.h. ersetze f durch Parabel p2 Definiere h := b−a n = b−a , 2 x0 = a, x1 = b+a , 2 x2 = b p (x) 2 f(x) a b x0 Es gilt: x1 x2 x c0 = 13 , c1 = 43 , c2 = 31 . Es folgt: Z b h (f (x0 ) + 4f (x1 ) + f (x2 )) 3 = Fläche unter der Parabel f (x)dx ≈ a absoluter Fehler: 3 Trapezregel: h12 f ′′ (ξ) = O(h3 ) für ein ξ im Intervall. Simpson: O(h5 ) Man erhält diese Fehlerordnungen durch Integration des Fehlers f (x) − p(x) (vgl. § 4.2 C) und Anwendung des Mittelwertsatzes. Genauigkeitssteigerung nicht durch Polynom höherer Ordnung, sondern mit 2. Idee: stückweiser Zugang f(x) F2 b a x 0 x 1 x x xn 2 h := b−a , xi = a + ih n f (a + ih) + f (a + (i + 1)h) führt auf Trapez-Summe 2 T (h) := F0 + F1 + . . . + Fn−1 , also: Fläche des i-ten Trapezes: Fi = h f (b) f (a) + f (a + h) + f (a + 2h) + . . . . . . + f (b − h) + T (h) = h 2 2 94 Seydel: Mathematik II, Kap. 4, SoSe 2009 Fehler: T (h) − Z b f (x)dx = a b − a 2 ′′ h f (ξ) = O(h2 ) 12 für a < ξ < b und f zweimal stetig differenzierbar auf a ≤ x ≤ b (d.h. f ∈ C 2 [a, b]) d.h. eine Ordnung der Trapezregel geht durch das Aufsummieren verloren. Hinweis: Wenn f (x) nur stückweise glatt ist, dann aufspalten in Teilintervalle und Z b Z c Z d Z b + + = getrennt integrieren: a d c a f(x) a 3. c d b x Idee: (Asymptotische) Entwicklung des Fehlers: Man kann für genügend glattes f beweisen: T (h) = τ0 + τ1 h2 + τ2 h4 + ... + τm h2m + Rm+1 h2m+2 Rb (∗) wobei τ0 = a f (x)dx der exakte Wert ist, τ1 , τ2 . . . von h unabhängig (Nachweis vgl. Literatur.) (∗) heißt auch “quadratische” Entwicklung, da Polynom bzw. Reihe in h2 ; Restglied Rm+1 ist beschränkt; enthält obige Fehlerformel für m = 0. Wegen (∗) verhält sich T (h) für kleine h wie ein Polynom in h2 . 4. Idee: Extrapolation (Richardson 1927, Romberg 1955) Ziel: Berechnung von T (0) := limh→0 T (h), dies ist der exakte Wert des Integrals. Kann aber wegen n → ∞ nicht direkt ausgewertet werden (wäre auch nicht effizient). möglich: T (h) kann ausgewertet werden für einige ausgewählte h > 0, z.B. T (h0 ), T (h1 ), T (h2 ), eventuell auch mehr. Idee: Lege durch T (h0 ), T (h1 ),. . . interpolierendes Polynom T̃ (h) und werte Rb T̃ (0) aus (einfach!), und nehme T̃ (0) als Näherung zu T (0) = a f (x)dx. T(h) exaktes T(h) (unbekannt) Interpolation exakter Wert Näherung h h 2 h 1 h 0 (Da T̃ (h) Polynom in h2 ist, ist die “Extrapolation” auf h = 0 problemlos.) 95 Seydel: Mathematik II, Kap. 4, SoSe 2009 Algorithmus “Romberg Integration”: (1) Lege “Schrittweitenfolge” hi fest, z.B. Halbierungsfolge h0 := b − a, h1 = hi−1 h0 2 ,. . . , hi = 2 , . . . (2) Berechne Trapezsummen Ti0 := T (hi ) für i = 0, 1, . . . , m (3) Mit Neville-Schema, welches sich hier schreiben lässt als Tik := Ti,k−1 + Ti,k−1 − Ti−1,k−1 hi−k 2 −1 hi berechne den Wert T̃ (0) des Interpolationspolynoms für h = 0 als Näherung zum Integral. Praxis: Mit x := h2 , xi := h2i braucht Neville-Programm nicht geändert zu werden. Eingabe: h2i , T (hi ). [T (h), nicht T (h2 )!!] Bei Halbierungsfolge rechentechnische Vergünstigungen: T (hi ) = T (hi−1 ) · 12 + hi [f (a + hi ) + f (a + 3hi ) + . . .]; 1 sind 1/3, 1/15, 1/63, 1/255 . . . (dezimal abszuspeichern) die Faktoren h 2 i−k − 1 hi Beispiel: (6-stellige Rechnung) 2 Z 1 x5 dx, h0 = 1, h1 = 0 1 , 2 h0 = 1 T00= 0.500000 h 12 2 T10= 0.265625 T = 0.187500 T = 0.192383 T = 0.167969 = 1/4 h = 1/16 2 h2 = 1 4 11 T = 0.166666 21 20 22 Fehler: O(h20 h21 h22 ) 4.6 Diskrete Fourier-Transformation gegeben: Daten einer Zeitreihe. gesucht: Struktur, insbesondere zyklische Strukturen. Dazu benötige Frequenzen mit ihren Amplituten. A. Grundlagen C: I komplexe Zahlen. Es sei i die imaginäre Einheit, vgl. Abschnitt 3.2. Setzt man in der Potenzreihe (vgl. Abschnitt 3.11) für ex statt des x ∈ IR die rein imaginäre Veränderliche iϕ ein, so ergibt sich ϕ3 ϕ4 ϕ5 ϕ2 + ∓ . . .) +i (ϕ − + ∓ . . .) eiϕ = (1 − 2! {z 4! 3! {z 5! } | } | cos ϕ sin ϕ 96 Seydel: Mathematik II, Kap. 4, SoSe 2009 Das ist die Eulersche Formel eiϕ = cos ϕ + i sin ϕ Für 0 ≤ ϕ ≤ 2π beschreibt eiϕ demnach den Einheitskreis in der komplexen Ebene C. I Wegen den Eigenschaften der Multiplikation in C I (vgl. Abschnitte 3.2, 3.3C) gilt zum Beispiel für die Gleichung (eiϕ )4 = ei4ϕ = 1 , dass ϕ = 0, π2 , π, 3π die Lösungen sind. D.h. mit ϕj := 2 eiϕj die vier vierten Einheitswurzeln der komplexen 1. 2π j 4 für j = 0, 1, 2, 3 sind die 2π Allgemein: ei n ist n-te Einheitswurzel der komplexen 1. 2π Abkürzung: zj := ei n j , j = 0, 1, . . . , n − 1, sind alle n-ten Wurzeln der 1. Für diese zj gilt: zjν = zνj sowie Orthogonalität: n−1 X zνj zν−l = ν=0 n 0 für l = j für l = 6 j für l, j ∈ {0, . . . , n − 1} Beweis der Orthogonalität: zνn = 1 für alle ν ⇒ 0 = zνn − 1 = (zν − 1) (zνn−1 + zνn−2 + . . . + zν + 1) | {z } 6=0 für ν6=0, ν6=±n,... ⇒ n−1 X zνj = j=0 ⇒ n−1 X zjk zj−l j=0 n 0 = für ν = 0, ±n, . . . für ν = 6 0, ±n, . . . X zjk−l = X j zk−l = (denn dann zν = 1) n 0 für k − l = 0 für k − l 6= 0 B. Komplexe Diskrete Fourier-Transformation: Satz: Es seien g0 , . . . , gn−1 , c0 , . . . , cn−1 ∈ C. I Dann gilt: cν = n−1 n−1 X 2π 2π 1X gj e−iνj n ⇐⇒ gj = cν eiνj n n j=0 ν=0 (1) Die Formeln in (1) vermitteln die komplexe diskrete Fourier-Transformation zwischen den jeweils n komplexen Zahlen cν und gν . 97 Seydel: Mathematik II, Kap. 4, SoSe 2009 Beweis von (1): (eine Richtung ⇐, die andere analog) X gj zj−ν = j n−1 X j (c0 z0j + . . . + cν zνj + . . . + cn−1 zn−1 ) · zj−ν j=0 = X (c0 zj0 + . . . + cν zjν + . . . + cn−1 zjn−1 )zj−ν j X X X = c0 zj0 zj−ν + . . . + cν zjν zj−ν + . . . + cn−1 zjn−1 zj−ν j | j {z =0 = cν · n } | j {z =n (wegen Lemma) } | {z =0 } C. Übergang zwischen reeller und komplexer Version: Gegeben f0 , f1 , . . . , fN−1 reelle Daten (z.B. Zeitreihe) (N gerade). Gesucht: reelle Fourier Koeffizienten A0 , A1 , . . . , A N , B1 , . . . , B N −1 . (Diese entsprechen den stetigen Fourier2 2 Koeffizienten ak , bk von Abschnitt 3.6C.) Statt einer direkten Transformation (unten in (4)) “Umweg” über n := N2 komplexe Zahlen: f0 , ..., fN−1 (2) −→ g0 , g1 , ..., g N −1 2 ↓ (1) A0 , ..., B N −1 2 ←− (3) c0 , c1 , ..., c N −1 2 (oder bei Bedarf andersherum) Transformation im Datenraum: gj werden künstlich gesetzt aus aufeinanderfolgenden f -Werten: gj := f2j + if2j+1 für j = 0, . . . , n − 1 (2) Übergang zwischen den Koeffizienten: Es sei B0 := Bn := 0 und cn := c0 . Dann gilt: Aν − iBν = 1 π 1 (cν + c̄n−ν ) + (cν − c̄n−ν )e−iν n für ν = 0, 1, . . . , n 2 2i (3) 98 Seydel: Mathematik II, Kap. 4, SoSe 2009 (Das “Quer” in c bedeutet die konjugiert-komplexe Version.) Algorithmus: rechte Seite ausrechnen, nach Real- und Imaginärteil trennen und Aν , −Bν ablesen. Ergänzung: Für die Koeffizienten der reellen diskreten Fourier-Transformation gilt der direkte Zusammenhang Aν = N−1 2π 2 X fj cos(νj ), N j=0 N Bν = 2π 2 X fj sin(νj ) N N (4) D. Zwei Anwendungen Es sei f (t) periodisch mit Periode T und stückweise stetig. ω := 2π T Interpolation: Das trigonometrische Polynom n−1 A0 X An fn (t) := + (Aν cos νωt + Bν sin νωt) + cos nωt 2 2 ν=1 interpoliert f an den Stützstellen tj := j T T =j , N 2n j = 0, 1, . . . , 2n. Trigonometrisches Ausgleichsproblem: Das trigonometrische Polynom m fm (t) := für m < N 2 A0 X + (Aν cos νωt + Bν sin νωt) 2 ν=1 = n minimiert N X (fm (tj ) − f (tj ))2 . j=1 (f (tj )) können äquidistant erhobene Daten sein, f muss nicht bekannt sein.) 4.7 Fast Fourier-Transformation zur Berechnung von Summen der Form 1 cν = · n n−1 X gj e−iνj 2π n für ν = 0, . . . , n − 1, j=0 99 gν ∈ C I Seydel: Mathematik II, Kap. 4, SoSe 2009 A. Aufwand Aufwand bei naivem Vorgehen: pro ν n trigonometrische Funktionen (ExponentialFunktionen auswerten), und n Multiplikationen, dazu n − 1 Additionen. Das sind für alle Koeffizienten O(n2 ) Operationen. n meist sehr groß! (z.B. n = 10000 oder viel mehr) Idee 1965 Cooley & Tukey, ähnlich früher Gauß, oder Runge: Fast Fourier-Transformation (FFT): Aufwand O(n log2 n) Operationen n 103 104 105 n log2 n ≈ 10 · 103 ≈ 13 · 104 ≈ 17 · 105 Ersparnis-Faktor 100 700 6000 n log2 n Annahme: n ist Zweierpotenz, d.h. n = 2p d.h. Folge n2 , n4 , n8 , . . . ist wohldefiniert und besteht aus natürlichen Zahlen. Abkürzung: n m := . Für jedes ν gilt: 2 cν = m−1 2π 1 X g2k e−iν2k n n + k=0 1 = n | m−1 X −iνk 2π m g2k e k=0 {z ↓ } ↓ m−1 2π 1 X g2k+1 e−iν(2k+1) n n k=0 + 2π e−iν n | {z } w ν mit Abkürzung w:=e−i 2π n m−1 2π 1 X ⋆ g2k+1 e−iνk m n k=0 {z } | ↓ ց ↓ ւ Zwei Summen von der gleichen FFT-Struktur Jede Summe hat 2p−1 = m Terme. An der 2. Summe ist eine Multiplikation ⋆ erforderlich 2π (mit e−iν n ), für alle cν insgesamt m viele (nur m, nicht n; s.u.). Jede der beiden FFT-Summen kann analog reduziert werden; es treten weitere 2 · Multiplikationen auf. m 2 u.s.w.: Mit m Multiplikationen ⋆ −→ 21 = 2 Summen mit je 2p−1 Termen. Mit 2 · Mit 4 · m 2 m 4 Multiplikationen −→ 22 Summen mit je 2p−2 Termen. Multiplikationen −→ 23 Summen mit je 2p−3 Termen. .. . Mit m Multiplikationen −→ 2p “Summen” mit je 1 Term. D.h. nach p Reduktionsschritten bleibt in den Summen nichts mehr zu tun! n Multiplikationen ergibt insgesamt O(n log2 n) p = log2 n Reduktionen mit je m = 2 Operationen. 100 Seydel: Mathematik II, Kap. 4, SoSe 2009 B. Analyse Analyse eines Reduktionsschrittes: Die Summen m−1 X 2π g · e−iνk m k=0 sind periodisch mit Periode m und brauchen deshalb für cm , . . . , cn−1 nicht neu berechnet zu werden. ( ist hier Platzhalter für 2k bzw. 2k + 1) Es gilt nämlich (ν durch m + j ersetzt): (↓1 ) cm+j (↓2 ) (↓1 ) m−1 X 1 m−1 2π 1 X −i(m+j)k 2π −i(m+j) 2π m n g2k e g2k+1 e−i(m+j)k m + e = n n k=0 2π (↓1 ) e−imk m = e−ik2π = +1 o 2π (↓2 ) cm+j k=0 e−im n = e−iπ = −1 =⇒ m−1 X 1 m−1 2π 1 X −ij 2π −ijk 2π m n = − e| {z } ⋆ g2k e g2k+1 e−ijk m n n k=0 k=0 wj Das bedeutet Aufspalten der g nach geraden und ungeraden Nummern (der 1. Schritt). Definiere zwei m-Vektoren y ′ und y ′′ für j = 0, 1, . . . , m − 1 über ihre Komponenten yj yj′ m−1 1 X 2π := g2k e−ijk m , n yj′′ k=0 m−1 2π 1 X g2k+1 e−ijk m := n k=0 D.h. wegen n = 2m sind y ′ = 21 FFT(g0 , g2 , g4 , . . .) FFTs der halben Größe (2. Schritt). Dann gilt (der 3. Schritt): cj = yj′ + wj ⋆ yj′′ j = 0, 1, . . . , m−1 cm+j = yj′ − (wj yj′′ ) und y ′′ = 1 2 FFT(g1 , g3 , g5 , . . .) Aufwand: m Multiplikationen wj ⋆ yj′′ , m + m = n Additionen/Subtraktionen. (Dazu kommt die rekursive FFT-Berechnung von y ′ , y ′′ , s.o.) Zusammenfassung/rekursive Definition von FFTn aus FFTn/2 : (m = n/2) g0 g0 g2 .. → y ′ = 21 FFTm (g0 , g2 , . . .) → g1 ր . . ց ր . ց g1 1 ′′ . g3 → y = 2 FFTm (g1 , g3 , . . .) → gn−1 .. . 1. Schritt 2. Schritt 101 Seydel: Mathematik II, Kap. 4, SoSe 2009 c0 .. . ′ j ′′ yj + w ⋆ yj → cm−1 ......... . . . . . . =: FFTn (g0 , g1 , . . . , gn−1 ) yj′ − wj yj′′ → cm . .. cn−1 3. Schritt Illustration eines Rekursions-Schrittes für n = 8: FFT 8 Bestimme w g0 y’ g2 y’ g4 c 0 FFT 4 1 1 w y’ 2 2 w c c g6 y’ 3 3 w g1 y ’’ −1 g3 y ’’ g5 0 FFT 4 g7 c c c 1 −w y ’’ 2 y ’’ 3 *w (Faktoren) 2 −w c 3 −w c 0 1 2 3 4 5 6 7 Ersetze rekursiv die FFT-Boxen durch analoge Schemata! (d.h. der linke Teil der Illustration ist vorläufig.) Der Input von FFT4 wird wiederum nach geraden und ungeraden Positionen sortiert ... Es ist eine einfache Buchhaltung (ohne Umspeichern) möglich, wenn die gj gleich “richtig” angeordnet werden! Hierzu verwende die Bit-Umkehrabbildung, vgl. Illustration. Es werden dann jeweils benachbarte Paare von Untervektoren kombiniert, ausgehend von Zweiergruppen, dann Viergruppen etc. Illustration n = 8: g0 c 100 g4 c 010 g2 c 110 g6 c 001 g1 c 101 g5 c 011 g3 c 111 g7 c 000 Bit−Umkehrabbildung 0 000 1 001 2 010 3 011 4 100 5 101 6 110 7 111 Binärmuster des Index 102 Seydel: Mathematik II, Kap. 4, SoSe 2009 Praktischer Hinweis: Es wird nur ein komplexer n-Vektor benötigt als Arbeitsvektor; zu Beginn zu besetzen mit (g0 , g4 , g2 , . . . , g7 ) (Beispiel n = 8). Am Ende enthält der Vektor die gesuchten Koeffizienten. Die komplexen Zahlen wj können als Wurzeln der komplexen 1 mit Winkelhalbierung berechnet werden oder durch Rekursionen der trigonometrischen Funktionen (vgl. [Stoer I, Paragraph 1.4]). Falls n keine Zweier-Potenz ist: Es gibt analoge FFTs, die mit Primfaktor-Zerlegung arbeiten. Programm in den “Recipes” [Press et al.] 4.8 Ausgleichsprobleme, data fit Mess-Reihe (tk , yk ), k = 1, . . . , m Man nimmt ein Verteilungsgesetz an (“Modell”): y = g(t) mit noch zu bestimmenden Parametern x1 , . . . , xn , also: g(t; x1 , . . . , xn ) Beispiel: g(t) = x1 + x2 t + x3 t2 Annahme: mehr Daten als Parameter, d.h. m > n . Gesucht: x1 , . . . , xn , so dass ( y1 = g(t1 ; x1 , . . . , xn ) =: f1 (x1 , . . . , xn ) .. .. . . ym = g(tm ; x1 , . . . , xn ) =: fm (x1 , . . . , xn ) “möglichst gut” erfüllt sind. Wegen m > n ist dies ein “überbestimmtes” Gleichungssystem. Schreibe die Messdaten yk nun als Vektor y, also Vektor-Schreibweise: y = f (x) g(t) t Spezialfall g(t) = x1 + x2 t: Regressions–Gerade. [ Fall m < n: Es gibt ∞-viele Lösungen. → Kapitel Optimierung.] 103 Seydel: Mathematik II, Kap. 4, SoSe 2009 Methode der kleinsten Quadrate, “Gauß-Approximation”: minimiere über x1 , . . . , xn die Funktion m X φ(x) := (yk − fk (x1 , . . . , xn ))2 k=1 Für den minimierenden Vektor x müssen alle partiellen Ableitungen 1. Ordnung von φ verschwinden, vergleiche Abschnitt 3.12. Also gilt mit der Kettenregel 2 m X (yk − fk (x)) k=1 ∂fk (x) =0 ∂xi für i = 1, . . . , n Annahme: g linear in x1 , . . . , xn (nicht unbedingt in t)! Dann gibt es eine Matrix A mit f (x) = Ax, 1 1 A (m × n) Matrix, obiges Beispiel: A = t1 t2 .. . t21 t22 und φ(x) := (y − Ax)tr (y − Ax) = ky − Axk22 ist zu minimieren. Es gilt φ(x) := xtr Atr Ax − 2xtr Atr y + y tr y , und man kann zeigen: grad φ = 2Atr Ax − 2Atr y . tr tr gradient [φ(x)] = 0 ⇒ A Ax = A y “Normalengleichung” des linearen Problems (notwendige Bedingung für Minimum) Der Gedanke, das Gleichungssystem (Atr A)x = Atr y (∗) numerisch zu lösen, ist nicht gut: Der Übergang auf (∗) verschlechtert die Kondition (im Vergleich zum ursprünglichen Minimierungsproblem)! Gute Methode: n Householder Transformationen H (j) direkt auf das überbestimmte Gleichungssystem Ax = y anwenden, so dass A und y simultan transformiert werden auf n A(n) }| . .. .. .. .. .. . .. .U. . .. 0 = z 0 { .. .. ... ← n , ← m−n 104 y (n) = h1 h2 ← n Seydel: Mathematik II, Kap. 4, SoSe 2009 (Zu Householder-Matrizen vgl. Abschnitt 2.9.) Die Matrix H := H (n) · . . . · H (1) ist orthogonal. Es folgt die Beziehung (für alle x) h1 − U x ≥ kh2 k2 ky − Axk2 = kH(y − Ax)k2 = ky (n) − A(n) xk2 = h2 2 Also: ky − Axk2 wird minimal für die Lösung x von U x = h1 (äquivalent zur Minimierung von ky − Axk22 ) Methode: 1. Berechne U und h1 mit Householder-Transformationen; 2. erhalte x aus U x = h1 durch Rückwärtselimination. Hinweis: Nichtlineare Ausgleichsprobleme werden linearisiert und iterativ gelöst. 105 Seydel: Mathematik II, Kap. 4, SoSe 2009 Seydel: Mathematik II, Kap. 5, SoSe 2009 Kapitel 5 Nichtlineare Gleichungssysteme und Iterationen Wir betrachten das System f (x) = 0 von n skalaren Gleichungen fi (x1 , . . . , xn ) = 0, i = 1, . . . , n. Gesucht: Nullstelle x∗ von f (x) = 0. Es sei x(0) eine Näherung zu x∗ , oder einfach ein “Startvektor”. 5.1 Lösen einer skalaren Gleichung Zunächst n = 1. Für skalare Gleichungen gibt es viele Verfahren. Z.B. Bisektion: Intervall auf x-Achse, welches genau die Nullstelle enthält −→ fortgesetzte IntervallHalbierung... Newton-Verfahren: f(x) * x x (2) (1) x x (0) x Erhalte bessere Näherung durch Anlegen der Tangente an (x(0) , f (x(0) )), und durch f (x(0) ) Aufsuchen der Nullstelle der Tangente mit f ′ (x(0) ) = (0) ; die Auflösung ergibt x − x(1) x(1) = x(0) − f (x(0) )/f ′ (x(0) ) . Wiederholung: Tangente an (x(1) , f (x(1))) −→ x(2) u.s.w. x(3) , x(4) , ... Dieses Verfahren ist das klassische Newton-Verfahren. [Herleiten einer Iterationsfolge x(1) , x(2) , . . . aus abgebrochener Taylor-Entwicklung: 0 = f (x∗ ) = f (x) + (x∗ − x)f ′ (x) + T.h.O. , also 0 = f (x) + (x∗ − x)f ′ (x), mit geeigneter Interpretation von x und x∗ .] x(k+1) = x(k) − f (x(k) ) f ′ (x(k) ) 107 für k = 0, 1, 2, . . . Seydel: Mathematik II, Kap. 5, SoSe 2009 Die Iteration ist von der Form x(k+1) = Φ(x(k) ) , mit Φ(x) = x − f (x) f ′ (x) “Fixpunkt-Iteration”. Es gilt die Fixpunkt-Gleichung Φ(x∗ ) = x∗ . 5.2 Zur Konvergenz Beispiel: Newton-Verfahren zur Wurzelberechnung: √ −→ f (x) = x2 − a x∗ = a x(k+1) = x(k) − ⇒ Also Φ(x) = √ 2? x(0) = 1, a=2 k 0 1 2 3 4 (x(k) )2 − a 2x(k) 1 a x+ 2 x x(k) 1 1.5 1.416666666 1.414215686 1.414213562 Wir beobachten “lokal” (d.h. in der Nähe von x∗ ) eine Verdoppelung der korrekten Stellenzahl in jedem Schritt. Man sagt deshalb auch, dass die Konvergenz des NewtonVerfahrens quadratisch ist. Definition: Konvergenzordnung p ≥ 1 der Folge x(k) gegen x∗ , wenn es ein C gibt, so dass für alle k kx(k+1) − x∗ k ≤ Ckx(k) − x∗ kp mit 0 < C für p > 1, und 0 < C < 1 für p = 1. Folgerung: x(k) −→ x∗ für k → ∞. Newton-Verfahren: p = 2. p = 1: “lineare Konvergenz” (langsam!) “Superlineare Konvergenz” wenn C = Ck −→ 0 für k → ∞. Praxis: Im Rechner ist kx(k+1) − x(k) k keine Nullfolge! Grund: Es stehen nur endlich viele Maschinenzahlen zu Verfügung, besonders wenige in einer Umgebung U(x∗ ). Am Ende i.A. periodisches Verhalten. Umgebung Iteration Maschinen− Zahlen Nullstelle 108 Seydel: Mathematik II, Kap. 5, SoSe 2009 Probleme: (1) “Wann” Konvergenz ? (2) Wie schnell? (3) Übertragbarkeit auf Vektorfunktionen (4) Technische Probleme: Abbruchkriterium Beispiel für Divergenz f(x) Konvergenzbereich x * (0) x Divergenz: für das gewählte x(0) . Es gibt ein kleines Intervall um x∗ mit Konvergenz. Wie “trifft” man hinein? Dämpfung des Newtonverfahrens x(k+1) = x(k) − λ f (x(k) ) f ′ (x(k) ) mit “Dämpfungsfaktor” λ derart, dass die “Testfunktion” T (x) := (f (x))2 minimal wird. Hintergrund: T (x∗ ) = (f (x∗ ))2 = 0, und T (x) > 0 für x 6= x∗ . Für λ = 1 ist das klassische Newtonverfahren enthalten. Das Minimum bzw. ein optimales λ in jedem Iterationsschritt ist i.a. schwer zu finden, deshalb Ersatzmethode (hier nur Grundprinzip): Gedämpftes Newton-Verfahren: λ=1,k=0 (1) k → k + 1 Auswerten von f (x(k) )/f ′ (x(k) ) [= x(k) − x(k+1) = Newton-Schritt] (k) ) (2) berechne x̄ := x(k) − λ ff′(x (x(k) ) [Versuchskandidat] falls T (x̄) ≥ T (x(k) ) und λ ≥ λmin , dann λ := 12 λ; goto (2) [λ-Halbierung] falls T (x̄) ≥ T (x(k) ) und λ < λmin : STOP “no convergence” [Fehlausgang] x(k+1) := x̄ [ T (x̄) < T (x(k) ), x̄ wird akzeptiert] falls λ ≤ 21 setze λ := 2λ [λ möglichst in die Nähe von 1] Konvergenzabfrage und -Ausgang goto (1) (enthält Divergenz-Abbruch-Kriterium!) z.B. λmin = 0.01 Die Dämpfung beinhaltet keine Garantie für Konvergenz! Abbruchkriterium, Prüfen der Konvergenz vorgebene Fehlerschranke sei ǫ (z.B. ǫ = 10−6 ) Möglichkeit |f (x(k+1) )| < ǫ genügt i.A. nicht, da dieses Kriterium eher von der Skalierung von f abhängt als vom Fehler. 109 Seydel: Mathematik II, Kap. 5, SoSe 2009 Möglichkeit |x(k+1) − x(k) | < ǫ genügt i.A. auch nicht, da dieses Kriterium nur einen Hinweis auf den absoluten Fehler |x(k+1) − x∗ | darstellt; es ist wiederum skalierungsabhängig. Besser ist ein Maß für den relativen Fehler. Professionelle Programme verlangen für den “Konvergenz-Ausgang” das Unterschreiten mehrerer Fehlerschranken, z.B. |f (x(k+1) )| < ǫ und |x(k+1) − x(k) | < ǫ · |x(k) | 5.3 Das allgemeine Newtonverfahren x1 . x = .. xn , f1 (x1 , . . . , xn ) 0 . . .. f (x) = = .. = 0 0 fn (x1 , . . . , xn ) Linearisierung [bzw. Taylorentwicklung um x(0) ]: 0 = f (x∗ ) ≈ f (x(0) ) + Df (x(0) )(x∗ − x(0) ) | {z } (∗) “Jacobi-Matrix”, ∂f1 ∂x1 ... ∂fn ∂x1 ... Df (x) := ... ∂f1 ∂xn .. . ∂fn ∂xn Aus (∗) erhalte ein lineares Gleichungssystem Df (x(0) ) (x(1) − x(0) ) = −f (x(0) ) für den ersten Korrekturvektor ∆x = x(1) − x(0) . Analog wie im Fall n = 1 erhalten wir das allgemeine (gedämpfte) Newton-Verfahren: Newton-Algorithmus für k = 0, 1, 2, . . .: Schritt 1: Berechne oder approximiere Df (x(k) ) Schritt 2: Löse das lineare Gleichungssystem Df (x(k) )∆x = −f (x(k) ) z.B. mit Gauß Algorithmus → ∆x Schritt 3: Dämpfungs-Strategie: Ermittle λ derart, dass T (x(k) + λ∆x) < T (x(k) ), Pn wo T (x) := i=1 (fi (x))2 Schritt 4: x(k+1) = x(k) + λ∆x k → k+1 goto Schritt 1 110 Seydel: Mathematik II, Kap. 5, SoSe 2009 Beispiel: f (x) = f1 (x1 , x2 ) f2 (x1 , x2 ) = (x2 − 2)2 − x1 + 1 3x1 x32 − 3x1 + 1 =0 geometrisch: Nullstelle x∗ ist in (x1 , x2 )-Ebene Schnittpunkt der Kurven, die durch f1 (x1 , x2 ) = 0 und f2 (x1 , x2 ) = 0 definiert sind. Jacobi-Matrix: −1 2(x2 − 2) 3x32 − 3 9x1 x22 1. Iteration für Startpunkt x(0) := (2, 1): Gleichungssystem für den Newton-Schritt: −1 −2 ∆x1 0 = = −f (x(0) ) 0 18 ∆x2 −1 Lösung: ∆x2 = −1/18 ∆x1 = −2∆x2 = 1/9 ⇒ 2 + 1/9 2.11 (0) = x + ∆x = ≈ 1 − 1/18 0.944 ⇒ x(1) Skizze: Schnitt von Parabel x1 = 1 + (x2 − 2)2 mit der “hyperbel-ähnlichen” Kurve 3x1 (1 − x32 ) = 1. 5.4 Approximation der Jacobi-Matrix Die exakte Berechnung von ∂fi /∂xj ist meist zu schwierig, oft sogar unmöglich! Motivation im skalaren Fall: 1. Möglichkeit: 2. Möglichkeit “numerische Approximation” (im engeren Sinn) “Sekantenverfahren” f ′ (x(k) ) ≈ f (x(k) + h) − f (x(k) ) h f ′ (x(k) ) ≈ für kleines |h|, z.B. h = 10−4 (nicht zu klein wegen Auslöschung !) f (x(k) ) − f (x(k−1) ) x(k) − x(k−1) hier kein Extra-FunktionsAufruf; vergleiche Figur. Genauigkeit hängt vom Iterationsverlauf ab. f(x) Sekante x (2) (1) 111 x x (0) x Seydel: Mathematik II, Kap. 5, SoSe 2009 Numerische Differentiation im Vektor-Fall: (Es geht um Schritt 1 des Newton-Algorithmus.) Es sei v (j) der Vektor der j-ten Spalte der Jacobi-Matrix Df , ∂f1 ∂xj v (j) ∂f (x) := ... = ∂xj ∂f n ∂xj Er wird ersetzt durch die Näherung f (x1 , . . . , xj−1 , xj + h, xj+1 , . . . , xn ) − f (x) h Also: spaltenweises Vorgehen. Für jede Spalte von Df ist eine Auswertung von f notwendig, insgesamt also n Auswertungen von f zuzüglich der von f (x). Algorithmus: (f (x) sei schon berechnet und als F gespeichert.) η := 10−4 (z.B.) Für j = 1, . . . , n: h = η · max{1, |xj |} · sign(xj ) xj := xj + h werte f aus → Vektor G v (j) := h1 (G − F ) xj := xj − h [Restauration von x] Hinweise: 1. Auch eine Verallgemeinerung der 2. Möglichkeit ist möglich: “Rang-1 Verfahren”, “Broyden Approximation”. Solche Verfahren benötigen mehr Iterationen als Newton; jede Iteration ist aber billiger. 2. Im IR1 ist eine Kombination von Bisektion, Sekante und inverser Interpolation sinnvoll: Alg.v.Dekker-Brent, MATLAB fzero. 112 Seydel: Mathematik II, Kap. 6, SoSe 2009 Kapitel 6 Optimierung 6.1 Optimierungsprobleme Bezeichnungen: x ∈ IRn , f (x) reellwertig, ebenso g1 (x), . . . , gm (x) , h1 (x), . . . , hl (x) Mit der Forderung x ∈ M für geeignetes M ⊂ IRn kann z.B. auf alle ganzzahligen Vektoren eingeschränkt werden. Dieses Kapitel: M = IRn . mathematische Optimierungsaufgabe: gesucht ist Vektor x so dass f (x) → Max (oder Min) gi (x) = 0 , 1 ≤ i ≤ m , (OA) hj (x) ≤ 0 , 1 ≤ j ≤ l x∈M (“endlich-dimensionale” Optimierung, weil Optimierung im IRn ) Vektor-Schreibweise g1 (x) g(x) = ... gm (x) , h1 (x) h(x) = ... , hl (x) 0 ist passender Vektor, und ≤ ist komponentenweise zu verstehen. dann: f (x) →Max/Min unter den Nebenbedingungen g(x) = 0, h(x) ≤ 0, x ∈ M. f heißt Zielfunktion. Ein x welches die Nebenbedingungen (N.B.) erfüllt, heißt zulässig. Beispiele (1) f (x1 , x2 ) := x1 + x2 (d.h. linear), ohne Nebenbedingungen. OA hat keine Lösung, weil f unbeschränkt. (2) f wie eben, unter der N.B. x21 + x22 ≤ 1. (Einheitskreis-Scheibe) OA hat Lösung. h(x1 , x2 ) := x21 + x22 − 1 (vergleiche Figur) (3) f wie eben, unter x21 + x22 ≤ 1 und x1 − x2 + 3 = 0. OA hat keine Lösung, weil keine zulässigen Punkte existieren. (4) f (x1 , x2 ) := 2x21 + x22 (d.h. nichtlinear, speziell: quadratisch) unter den N.B. xi ≥ 0 (i = 1, 2) x1 ≤ 1 x2 ≤ 2 − x 1 (vergleiche Figur) 113 Seydel: Mathematik II, Kap. 6, SoSe 2009 x2 1 Max x1 1 Min f=0 f=−1 x 2 Max 1 1 0 2 x 1 f=1 f=4 6.2 Methoden der Analysis A. Freie Optimierung Suche Min (Max) von f (x) ohne Nebenbedingung! (Annahmen: f sei C 2 , x ∈ IRn ) Am Extremum gilt gradf (x) = 0, d.h. ∂f (x) ∂f (x) = ... = =0 ∂x1 ∂xn Der Gradient-Vektor F (x) := gradf (x) wird oft mit fx bezeichnet. Die Komponenten von F sind also Fi = ∂f (x) ∂xi Dann kann das Newton-Verfahren verwendet werden zur Berechnung einer Nullstelle von F . Benötige dazu die Jacobi-Matrix von F : ∂ 2 f (x) ∂ 2 f (x) · · · 2 ∂x1 ∂xn ∂x1 .. .. . . ∂ 2 f (x) ∂ 2 f (x) ··· ∂xn ∂x1 ∂x2 n 114 Seydel: Mathematik II, Kap. 6, SoSe 2009 Das ist die Matrix aller zweiten partiellen Ableitungen von f , auch Hesse-Matrix benannt, oft bezeichnet mit fxx . VORSICHT: Hier bezeichnet f die zu minimierende Funktion, während F die Funktion ist, deren Nullstelle gesucht wird! Es resultiert das folgende Iterative Verfahren für k = 0, 1, 2, ...: (DF · ∆x = −F ) fxx (x(k) )∆x = −fx (x(k) ) x(k+1) = x(k) + ∆x für geeigneten Startvektor x(0) . Der Vektor der jeweiligen “Suchrichtung” ∆x ergibt sich also aus der Newton-Methode für F (x) = 0. Beispiel: (n = 2, hier mit Bezeichnung x1 → x, x2 → y) Suche Maximum von f (x, y) = 1 3 x − 2y 2 + 2xy − x − 2y . 3 Das Newton-Gleichungssystem zur iterativen Berechnung einer Nullstelle von F ist hier (k) (k) 2 2x 2 ∆x (x ) + 2y (k) − 1 =− 2 −4 ∆y −4y (k) + 2x(k) − 2 Startet man mit Vektor (x(0) , y (0) ) = (−1, 0) und verwendet die Newton-Richtungen (∆x, ∆y), dann ergibt sich (x(1) , y (1) ) = (−3, −2), und (x(2) , y (2) ) = (−2.2, −1.6). (Hinweis: exaktes Maximum für (−2, −1.5); vgl. Figur) y −2 x −1 Start Gradienten−Iteration 2 −1 1 Newton−Iteration Maximum 2 . −2 1 Allgemeinere Betrachtung: Ein Vektor v heißt Abstiegsrichtung im Punkt x, wenn es ein ε > 0 gibt mit f (x + tv) < f (x) für 0 < t < ε . Beispiel: negativer Gradient: v = −gradf (x) Wenn ein Maximum gesucht wird, dann Aufstiegsrichtung, z.B. +gradf . Der Gradient ist diejenige Richtung, in der f maximal ansteigt! Und −grad f ist die Richtung des maximalen Gefälles! 115 Seydel: Mathematik II, Kap. 6, SoSe 2009 Algorithmus (erläutert für Minimierung): 1.) Konstruiere in x(k) eine Abstiegsrichtung v (k) . 2.) Führe ein-dimensionale Minimierung durch in Richtung v (k) . Bei dieser “line search” wird das Minimum von f (x(k) + tv (k) ) näherungsweise ermittelt. Wenn das Minimum dieser line search für ein t = tk erreicht wird, dann setze x(k+1) = x(k) + tk v (k) . Man nennt diese iterative Minimierung Gradientenverfahren, wenn v = −grad f . 0 0 (0) (0) obiges Beispiel: (gleicher Startvektor) Wegen gradf (x ) = ist v = −4 −1 eine Aufstiegsrichtung. Zu maximieren ist also in Richtung −1 0 0 −1 −t = 1 −t für t > 0. Eingesetzt in f : f (−1, −t) = 2 − 2t2 + 4t 3 hat√Maximum für t = 1. Also (x(1) , y (1)) = (−1, −1). (Die nächste Iteration ergibt (− 3, −1), vgl. Figur) Hinweis: Die Newton-Richtung ist i.A. “schneller” als die Gradienten-Richtung, weil sie auch Informationen der zweiten Ableitung berücksichtigt. B. Optimierung mit Gleichungen als Nebenbedingungen f (x) → Min unter N.B. gi (x) = 0, i = 1, . . . , m (g sei wie f differenzierbar) mit “Lagrange-Multiplikatoren” λ1 , . . . , λm (Vektor λ) L(x, λ) := f (x) + m X λj gj (x) j=1 n + m Unbekannte x1 , . . . , xn , λ1 , . . . , λm . Satz: x∗ minimiere das Optimierungsproblem. Dann gibt es λ , so dass grad [L(x∗ , λ)] = 0. (Das sind n + m Gleichungen.) C. Konvexe Optimierung vgl. Abschnitt 6.4. 6.3 Lineare Optimierung f, g, h seien alle linear in x: f (x) =c1 x1 + . . . + cn xn = ctr x gi (x) =di1 x1 + . . . + din xn − ri , i = 1, . . . , m hj (x) =bj1 x1 + . . . + bjn xn − sj 116 , j = 1, . . . , l Seydel: Mathematik II, Kap. 6, SoSe 2009 Matrix-Vektor-Schreibweise: Mit (ci ) → c ((dik )) → D ((bjk )) → B , , , n Vektor , analog r ∈ IRm , s ∈ IRl m × n Matrix l × n Matrix ergibt sich aus dem Problem von § 6.1 speziell das Lineare Programm (LP) ( f (x) = ctr x → Min (oder Max) Dx = r Bx ≤ s (LP) Unter den diversen möglichen Formen von Problemen linearer Optimierung wird ein Typ als Standardform oder Normalform bezeichnet: f (x) = ctr x → Min (oder Max) unter den N.B. Ax = b und x ≥ 0 (NF) (Vektoren x, c gegenüber (LP) modifiziert, ebenso wie die Dimension n !) “Tricks” zur Überführung von (LP) in Normalform (NF): 1.) Bx ≤ s ⇔ y := s − Bx ≥ 0 y heißt Schlupf-Variable (slack variable) Füge y als weitere Variable und Bx + y = s als weitere Gleichung hinzu. 2.) Realisierung “freier” xi (im Sinne xi < 0 ist erlaubt): Definiere ≥0 x+ i := max{xi , 0} − xi := max{−xi , 0} ≥ 0 − Dann gilt: xi = x+ i − xi − Füge x+ i und xi als neue Variable hinzu, nehme xi heraus, und ersetze in den − Gleichungen xi = x+ i − xi . eventuell noch 3.) f (x) → Max ⇔ −f (x) → Min Beispiel → → → → → → (LP) x1 + 2x3 ≤ 30 2x2 − 3x4 ≤ 0 x2 − x3 + 2x4 ≥ 1 x1 + x 2 + x3 + x4 = 4 xi ≥ 0 (NF) x1 + 2x3 + y1 = 30 2x2 − 3x4 + y2 = 0 x2 − x3 + 2x4 − y3 = 1 bleibt bleibt, hinzu kommt yi ≥ 0 neue Variable für die Optimierung: x1 , . . . , x4 , y1 , y2 , y3 , alle ≥ 0 (nenne sie etwa x̃). Dann gilt Ax̃ = b mit x̃ ∈ IR7 und 1 0 A= 0 1 0 2 1 1 2 0 −1 1 0 −3 2 1 1 0 0 0 117 0 0 1 0 0 −1 0 0 , 30 0 b= 1 4 Seydel: Mathematik II, Kap. 6, SoSe 2009 Die k-te Spalte von A ergibt sich aus den Koeffizienten zu xk in (NF). Die 4 Gleichungen im IR7 (falls überhaupt lösbar) definieren eine Menge, welche mindestens die Dimension 3 hat. (siehe unten) Die Menge ist nicht leer, denn zum Beispiel mit x4 = 4, x1 = x2 = x3 = 0 sind die Ungleichungen erfüllt, d.h. x̃ = (0, 0, 0, 4, 30, 12, 7)tr erfüllt die Gleichungen und ist also zulässiger Punkt. Allgemeine Analyse der Menge der zulässigen Punkte Hierzu betrachte ohne Einschränkung nur die Standardform (NF). A sei m × n Matrix, n > m, Ax = b, x ≥ 0. (D.h. n ist anders als in (LP). Das x hier entspricht dem x̃.) D.h. x ∈ IRn , b ∈ IRm ; m ist die Anzahl der Gleichungen. Die Menge der zulässigen Punkte, also die Lösungen von Ax = b mit x ≥ 0, ist ein Polyeder (polyhedron) [1]. Polyeder sind konvex (sofern nicht leer). Ax = b bedeutet: Der Vektor b ist Linearkombination der Spalten von A. Wenn Ax = b lösbar ist, dann ist die Menge der Lösungen ein Teilraum des IRn von der Dimension n − Rang(A) , siehe auch Abschnitt 2.5. Die Funktion ctr x nimmt ihr Minimum (Max), falls es existiert, in mindestens einem endlichen Eckpunkt des Polyeders an. Die Ecken heißen Basislösungen. Ein zulässiger Punkt xB ist Basislösung genau dann, wenn diejenigen Spalten von A, die zu positiven Komponenten von xB gehören, linear unabhängig sind. Folgerungen für Rang(A) = m: ⇒ Es gibt m linear unabhängige Spalten. ⇒ Maximal m Komponenten von xB sind positiv. ⇒ Mindestens n − m Komponenten von xB sind = 0. Setzt man n−m Komponenten von x zu Null, so definiert das n−m Gleichungen/Ebenen xi = 0. Zusammen mit den m Gleichungen von Ax = b sind dies insgesamt n Gleichungen/Ebenen, diese definieren i.A. einen Eckpunkt des Polyeders. Wechsel der Ecke: Gibt man eines derjenigen xi = 0 “frei”, etwa xk , welches nun erhöht wird (xk > 0), dann läuft man eine Kante des Polyeders entlang, bis eine andere Komponente der freien Komponenten von x (z.B. xj ) Null wird. Dann hat man eine andere Ecke erreicht, und einen Austausch-Schritt vollzogen. Da die Zielfunktion ctr x im nicht-degenerierten Fall ihr Optimum in einer Ecke annimmt, geht es bei der linearen Optimierung um die Konstruktion geeigneter Austausch-Schritte. [1] Ein Polyeder ist definiert als Lösungsmenge einer endlichen Anzahl von linearen Gleichungen und Ungleichungen. 118 Seydel: Mathematik II, Kap. 6, SoSe 2009 Beispiel: x2 x2 x2 ≥ 1 − x1 ≤ 2 − 2x1 ≤ 1 (I) (II) (III) Zielfunktion z.B. −x1 − x2 = Min! (graphische Lösung...) x 2 2 (II) (I) (III) 1 0 1 x1 Die zugehörige Normalform ist gegeben durch −1 A= 2 0 −1 1 1 0 1 0 0 0 1 0 0 1 , −1 b= 2 1 Also: n = 5, m = 3. Es gibt mehrere Möglichkeiten, 2 (= n − m) der 5 Komponenten zu Null zu setzen. Wählen wir als Null-Kandidaten die Schlupf-Variablen x3 , x4 , x5 aus, so ergeben sich 3 Möglichkeiten und also 3 Eckpunkte. Diese haben die Koordinaten (1, 0, 0, 0, 1) ( 21 , 1, 21 , 0, 0) (0, 1, 0, 1, 0) (Die beiden fettgedruckten Nullen sind jeweils gesetzt, und die übrigen 3 Komponenten ergeben sich aus Ax = b.) Algorithmus (Simplex-Verfahren): Das Simplex-Verfahren läuft am Rand des Polyeders entlang der Kanten von einer Ecke zur nächsten, so dass sich der Wert der Zielfunktion ctr x verbessert. Dies bedeutet jeweils einen planmäßigen Austausch der Basislösung derart, dass eine Null-Komponente positiv wird und gleichzeitig eine positive Komponente im Vektor x Null wird. Ziel dabei: minimieren (oder max.) von ctr x. Ausführung des Simplex-Verfahrens: vgl. Vorlesung oder Literatur zu Operations Research. 119 Seydel: Mathematik II, Kap. 6, SoSe 2009 6.4 Konvexe Optimierung (Vorgehen ähnlich wie in Abschnitt 6.2B) Konvexe Mengen Für x, y ∈ IRn ist θx + (1 − θ)y eine Gerade durch x und y (für θ ∈ IR). Definition: Eine Menge C heißt konvex, wenn für alle x, y ∈ C und alle θ mit 0 ≤ θ ≤ 1 gilt: θx + (1 − θ)y ∈ C . Vgl. Abschnitt 4.4: Die konvexe Hülle von p1 , . . . , pk ∈ IRn ist ( k X si pi für si ≥ 0 ∀i , k X i=1 i=1 si = 1 ) . Konvexe Funktionen Der Definitionsbereich D einer Funktion f sei konvex. f heißt dann konvex, wenn für alle x, y ∈ D und θ mit 0 ≤ θ ≤ 1 gilt f (θx + (1 − θ)y) ≤ θf (x) + (1 − θ)f (y) (KO) Konvexes Optimierungsproblem f (x) → Min. unter N.B. hj (x) ≤ 0 (j = 1, . . . , l), wobei f, h1 , . . . , hl alle konvex seien. Vorteile dieser Annahmen: 1. Jedes lokale Minimum einer konvexen Funktion f ist auch globales Minimum. 2. Die Menge, welche durch hj (x) ≤ 0 (j = 1, . . . , l) definiert ist, ist konvex (sofern nicht leer). Beispiele • Beispiel (4) in Abschnitt 6.1 • Methode der kleinsten Quadrate, vgl. Abschnitt 4.8 (dort f = φ; keine N.B.) • Wenn A eine symmetrische und positiv-definite Matrix (xtr Ax > 0 für x 6= 0) ist, dann ist die Funktion xtr Ax konvex. • Lineare Programmierung: wichtiger Spezialfall, vgl. Abschnitt 6.3 Einfacher Fall von (KO): Wenn für ein x gilt grad f (x) = 0 und N.B. ist erfüllt, dann ist x∗ := x das Minimum. (vgl. Abschnitt 6.2) Ansonsten: Anwenden der Karush-Kuhn-Tucker-Bedingungen. 120 Seydel: Mathematik II, Kap. 6, SoSe 2009 Karush-Kuhn-Tucker-Bedingungen (KKT, manchmal auch nur Kuhn-Tucker-Bedingungen genannt) Betrachte (KO) mit der zusätzlichen Voraussetzung, dass die Funktionen f, h1 , . . . , hl alle differenzierbar sind. x∗ sei ein Minimum. Dies ist äquivalent zur Aussage: Es gibt l Lagrange-Multiplikatoren yj ≥ 0 (j = 1, . . . , l), so dass l ∂f (x∗ ) X ∂hj (x∗ ) + yj = 0 für i = 1, . . . , n ∂xi ∂x i j=1 l X yj hj (x∗ ) = 0 j=1 Wegen h ≤ 0 und y ≥ 0 ist letztere Gleichung äquivalent zu l skalaren Gleichungen yj hj (x∗ ) = 0, für j = 1, . . . , l. Also bestehen die KKT-Bedingungen aus n+l Gleichungen für die n + l Unbekannten x1 , . . . , xn , y1 , . . . , yl . In Vektorschreibweise lassen sich die KKT-Bedingungen kurz schreiben y ≥ 0, gradf + (Dh)tr y = 0, y tr h = 0 dabei bezeichnet Dh die Jacobi-Matrix des Vektors h; (Dh)tr y = Beispiel (4) in Abschnitt 6.1: P j f (x1 , x2 ) := 2x21 + x22 = max! h1 (x1 , x2 ) := −x1 ≤ 0 h2 (x1 , x2 ) := −x2 ≤ 0 h3 (x1 , x2 ) := x1 − 1 ≤ 0 h4 (x1 , x2 ) := x1 + x2 − 2 ≤ 0 Die Voraussetzungen sind erfüllt; n = 2 und l = 4. Die ersten zwei (i = 1, 2) Gleichungen von KKT sind: 4x1 + y1 · (−1) + y2 · 0 + y3 · 1 + y4 · 1 = 0 2x2 + y1 · 0 + y2 · (−1) + y3 · 0 + y4 · 1 = 0 Die weiteren 4 Gleichungen sind klar. Als Lösung ergibt sich (x1 , . . . , xn , y1 , . . . , yl ) = (2, 0, 0, −8, 0, −8) . 121 yj grad gj .