1. Übung

Werbung
Dr. M. Herrich
Institut für Numerische Mathematik
WS 2016/2017
Übungen zur Vorlesung Numerische Mathematik
Blatt 1, 17.10.–21.10.2016
Aufgabe 1
(a) Betrachtet wird die Menge M(2, 3, 2, 1) von (normalisierten) Maschinenzahlen.
(a1) Geben Sie eine explizite Darstellung dieser Menge an und tragen Sie ihre Elemente auf
einem Zahlenstrahl ab.
(a2) Bestimmen Sie für die folgenden Zahlen xi jeweils die Maschinenzahl rd(xi ) und ermitteln
i
Sie jeweils den absoluten Fehler rd(xi ) − xi und den relativen Fehler εxi := rd(xxi )−x
.
i
x1 = 1.2,
2
x2 = ,
3
x3 = −0.4,
7
x4 = − ,
8
x5 =
9
16
Vereinbarung: Falls es für eine Zahl x ∈ R zwei Maschinenzahlen gibt, die unter allen
Maschinenzahlen den kleinsten Abstand zu x haben, ist rd(x) diejenige Zahl, die weiter
von Null entfernt ist.
(b) Für eine vorgegebene Basis β und eine vorgegebene Mantissenlänge t ist die Maschinengenauigkeit eps definiert durch eps := 21 β 1−t . Beweisen Sie die folgende Aussage.
Es seien µ die kleinste positive Zahl und M die größte Zahl aus M(β, t, emin , emax ). Für jede
Zahl x ∈ R \ {0} mit µ ≤ |x| ≤ M gilt die folgende Abschätzung für den Betrag des relativen
Fehlers:
rd(x) − x ≤ eps.
x
(c) Welche der folgenden Implikationen sind für alle x, y ∈ R erfüllt? Begründen Sie jeweils Ihre
Entscheidung.
(c1) x ≤ y ⇒ rd(x) ≤ rd(y)
(c3) x < y ⇒ rd(x) < rd(y)
(c2) rd(x) ≤ rd(y) ⇒ x ≤ y
(c4) rd(x) < rd(y) ⇒ x < y
Aufgabe 2
Rechnen mit Maschinenzahlen. Für jede Operation ∗ ∈ {+, −, ·, :} definieren wir, für reelle Zahlen
∗ durch
x, y, die Operation ∗ y := rd (rd(x) ∗ rd(y)) .
x
Im Folgenden wird M(10, 3, 3, 2) betrachtet.
(a) Berechnen Sie die folgenden Ausdrücke. Welche Schlussfolgerungen lassen sich aus den Ergebnissen ziehen?
+ y) + z und x + (y + z), jeweils für x = 1.56, y = 9.37 und z = 2.19
(a1) (x · y) · z und x · (y · z), jeweils für x = 0.31, y = 0.57 und z = 0.84
(a2) (x · (y + z) und (x · y) + (x · z), jeweils für x = 0.43, y = 4.16 und z = 6.31
(a3) x 1
(b) Berechnen Sie
p
p
· x
+ 1
−x
x2 + 1 − x und
x
(1)
für x = 10. Dieses Beispiel zeigt, dass man beim Rechnen mit Maschinenzahlen Differenzen
von fast gleich großen Zahlen möglichst vermeiden sollte, da es sonst zu sogenannten Auslöschungseffekten kommen kann. Überlegen Sie sich eine äquivalente Umformung des ersten
Terms in (1) derart, dass bei der Auswertung des entsprechenden Ausdrucks im Bereich der
Maschinenzahlen keine Auslöschungseffekte mehr auftreten.
Aufgabe 3
Betrachtet werde die Aufgabe, für eine vorgegebene reelle Zahl x ∈ R den Wert
f (x) := 1 − cos(x)
zu berechnen.
(a) Ist diese Aufgabe für x ≈ 0 gut konditioniert?
(b) Die Berechnung von f (x) erfolge nach dem Algorithmus
y0 := cos(x),
f (x) = y1 := 1 − y0 .
Untersuchen Sie, ob dieser Algorithmus für x ≈ 0 numerisch stabil ist.
(c) Zeigen Sie, dass f (x) auch nach folgendem Algorithmus berechnet werden kann:
y0 :=
x
,
2
y2 := y12 ,
y1 := sin(y0 ),
f (x) = y3 := 2y2 .
Untersuchen Sie auch für diesen Algorithmus, ob er für x ≈ 0 numerisch stabil ist.
Aufgabe 4
In dieser Aufgabe geht es um unterschiedliche Algorithmen zur Auswertung von Polynomen.
(a) Zu gegebenen Zahlen a0 , a1 , . . . , an ∈ R sowie x ∈ R \ {0} soll der Polynomwert p(x) :=
a0 + a1 x + a2 x2 + . . . + an xn berechnet werden.
(a1) Ein naheliegender Algorithmus zur Berechnung von p(x) ist der folgende:
y1 := x,
yk := x · yk−1 (k = 2, . . . , n),
p(x) = a0 + a1 y1 + a2 y2 + . . . + an yn .
Bestimmen Sie für diesen Algorithmus die Anzahl der erforderlichen Multiplikationen und
der erforderlichen Additionen.
(a2) Zeigen Sie, dass p(x) auch nach dem sogenannten Horner-Algorithmus
yn := an ,
yk−1 := ak−1 + x · yk (k = n, n − 1, . . . , 1),
p(x) = y0
berechnet werden kann. Bestimmen Sie auch für diesen Algorithmus die Anzahl der erforderlichen Multiplikationen und der erforderlichen Additionen.
(b) Überlegen Sie sich geeignete Modifikationen des Horner-Algorithmus zur Auswertung eines
Polynoms an einer Stelle x, wenn dieses
(b1) in der Form p(x) = a0 + a1 (x − x0 ) + a2 (x − x0 )2 + . . . + an (x − x0 )n gegeben ist, wobei
x0 ∈ R eine vorgegebene Zahl ist,
(b2) in der Form p(x) = a0 +a1 (x−x0 )+a2 (x−x0 )(x−x1 )+. . .+an (x−x0 )(x−x1 )·. . .·(x−xn−1 )
gegeben ist, wobei x0 , x1 , . . . , xn−1 ∈ R vorgegebene, paarweise verschiedene Zahlen sind.
2
Herunterladen