Numerische Analysis I - (IGPM) | RWTH Aachen

Werbung
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
Herunterladen