Numerische Analysis I WS 2012/13 Prof. Dr. Wolfgang Dahmen – Dipl.-Ing. Markus Bachmayr Übungsblatt 2 für Mittwoch, 24. Oktober 2012 Aufgabe 4. (a) Sei k·k eine beliebige Norm auf Rn , und für M ∈ Rm×n seien kM k = supkxk=1 kM xk die induzierte Matrixnorm und κ(M ) = kM k/ inf kxk=1 kM xk die dazugehörige Konditionszahl. Es seien A ∈ Rn×n regulär und x, b, ∆x, ∆b ∈ Rn mit Ax = b und A(x + ∆x) = b + ∆b . Zeigen oder widerlegen Sie die folgenden beiden Aussagen: k∆xk k∆bk ≤ κ(A) , kxk kbk k∆bk k∆xk ≤ κ(A) . kbk kxk (b) Seien k·k∗ und k·k∗∗ zwei beliebige Normen auf Rn mit c, C > 0 sodass ckxk∗ ≤ kxk∗∗ ≤ Ckxk∗ für alle x. Die induzierten Matrixnormen auf Rn×n seien ebenfalls mit k·k∗ bzw. k·k∗∗ bezeichnet, die jeweiligen Konditionszahlen mit κ∗ (·) und κ∗∗ (·). Geben Sie von c, C abhängige c̃, C̃ > 0 und ĉ, Ĉ > 0 an, sodass c̃kAk∗ ≤ kAk∗∗ ≤ C̃kAk∗ für alle A ∈ Rn×n , sowie ĉ κ∗ (A) ≤ κ∗∗ (A) ≤ Ĉ κ∗ (A) für reguläre A. Geben Sie c̃, C̃, ĉ, Ĉ in Abhängigkeit von n für k·k∗ = k·k2 und k·k∗∗ = k·k1 , k·k∞ an. 2+3=5 Punkte Aufgabe 5. (a) Zeigen Sie, dass die von der 2-Norm induzierte Matrixnorm (Spektralnorm) für A ∈ Rm×n gegeben ist durch √ kAk2 = max{ λ : λ ist Eigenwert von AT A} . (Hinweis: Für symmetrische n × n-Matrizen existieren n orthogonale Eigenvektoren.) (b) Es sei A ∈ Rn×n symmetrisch und regulär, und es bezeichne κ2 (A) = kAk2 kA−1 k2 die Konditionzahl zur Spektralnorm. Zeigen Sie κ2 (A) = |λmax /λmin |, wobei λmax der betragsgrößte und λmin der betragskleinste Eigenwert von A sind. 4+3=7 Punkte Aufgabe 6. Es sei b ≥ 2 eine gerade ganze Zahl. Jede reelle Zahl x 6= 0 lässt sich in der normalisierten Darstellung ∞ X x=± dj b−j be (1) j=1 mit dj ∈ {0, 1, . . . , b − 1}, e ∈ Z und d1 6= 0 schreiben. Für ganze Zahlen m > 0, r < 0 und R > 0 bezeichne M(b, m, r, R) die Menge der Maschinenzahlen zur Basis b, mit Mantissenlänge m und Exponentenbereich {r, . . . , R}, also m X M(b, m, r, R) = ±f be : f = 0 ∨ f = dj b−j mit dj ∈ {0, 1, . . . , b − 1}, d1 6= 0 , r ≤ e ≤ R . j=1 (a) Wieviele Zahlen können in M(b, m, r, R) dargestellt werden? (b) Zeigen Sie: Die betragskleinsten von Null verschiedenen, in M(b, m, r, R) darstellbaren Zahlen haben den Betrag xMIN = br−1 , die betragsgrößten in dieser Menge darstellbaren Zahlen haben den Betrag xMAX = (1 − b−m )bR . (c) Sei x ∈ R mit |x| ∈ [xMIN , xMAX ] in normalisierter Darstellung (1), dann ist die Standardrundung gegeben durch (P m dj b−j be , dm+1 < b/2, fl(x) := ± Pj=1 m −j −m e ( j=1 dj b + b )b , dm+1 ≥ b/2 . Zeigen Sie, dass |fl(x) − x|/|x| ≤ eps mit eps = b1−m /2 (relative Maschinengenauigkeit), und dass eps = inf{δ > 0 : fl(1 + δ) > 1}. Seite 1 von 2 (d) Für die Standardgleitkommazahlen nach dem IEEE-754-Standard entspricht einfache Genauigkeit (float) M(2, 24, −126, 127) und doppelte Genauigkeit (double) M(2, 53, −1022, 1023). Bestimmen Sie für diese beiden Fälle jeweils eps, xMIN und xMAX , und geben Sie die entsprechenden Werte auch im Dezimalsystem an. 2+3+4+2=11 Punkte Hinweise zu den Programmieraufgaben: • Die Programmieraufgaben sind in C++ zu lösen, wobei ausschließlich die zur jeweiligen Übung angegebene, über die Webseite zur Vorlesung zur Verfügung gestellte Headerdatei eingebunden werden soll. • Verwenden Sie für dieses Übungsblatt die Headerdatei na1-version1.h. • Senden Sie Ihre Lösungen bitte an [email protected]. Verwenden Sie dabei für jede Aufgabe eine separate Quelldatei, und benennen Sie die Dateien nach dem Schema na1 pNN XXXXXX YYYYYY.cpp bzw. bei Dreiergruppen na1 pNN XXXXXX YYYYYY ZZZZZZ.cpp, wobei NN die Nummer der Aufgabe und XXXXXX, YYYYYY, ZZZZZZ Ihre Matrikelnummern sind. • Geben Sie bitte zusätzlich gemeinsam mit den restlichen Übungsaufgaben (aber separat abgeheftet) auch einen Ausdruck der Programmcodes und der dazugehörigen Programmoutputs ab. Aufgabe 7 (Programmieraufgabe). Schreiben Sie ein Programm, das für d = 2, 3, . . . , 20 jeweils N = 106 gleichverteilte Zufallspunkte in [−1, 1]d erzeugt und für jedes d die Anzahl derjenigen erzeugten Punkte zurückgibt, die in der Euklidischen Einheitskugel in Rd , also in {x ∈ Rd : kxk2 ≤ 1} liegen. Geben Sie dabei jeweils auch das Verhältnis dieser Anzahl zu N aus. (Hinweis: Für die Erzeugung der Zufallszahlen können Sie die in der Headerdatei bereitgestellten Funktionen verwenden. Es ist dabei nicht erforderlich, die Zufallspunkte explizit zu speichern, günstiger ist die direkte Akkumulation der Euklidischen Norm jedes Zufallspunktes in einer skalaren Variablen. Beachten Sie, dass für die Berechnung des Verhältnisses die Werte gegebenenfalls in double konvertiert werden müssen.) 4 Punkte Seite 2 von 2