Sie sind auf Seite 1von 2

Institut für Angewandte und Numerische Mathematik (c) und für das Verhalten der Funktion zwischen den

für das Verhalten der Funktion zwischen den ersten beiden Sprüngen
Sommersemester 2022 angeben.
Dr. Daniel Weiß, Dr. Jonathan Fröhlich
(d) Geben Sie zusätzlich die Funktionswerte am zweiten Sprung an. Be-
Numerische Mathematik für Informatik und Ingenieurwesen gründen Sie kurz.
Übungsblatt 1
2

1.5
Aufgabe 1 (Normalisierte Gleitpunktzahlen) (1+1+1+1+1+1 Punkte)
Wir betrachten für gegebene Basis B ≥ 2, minimalen Exponent emin und 1
Längen Lm und Le die endliche Menge der normalisierten Gleitpunktzahlen
n Lm
X e −1
LX o 0.5
FL := ± Be al B −l : e = emin + cl B l , al , cl ∈ {0, . . . , B − 1}, a1 6= 0 ∪ {0}.
l=1 l=0 0
Weiter seien emax der maximale Exponent, m = ± L −l 6= 0 eine Man-
P m
l=1 al B 0 0.2 0.4 0.6 0.8 1
tisse, max FL die größte und min FL+ die kleinste positive Zahl der Menge. #10 -15

Zeigen Sie:

(a) FL ⊂ Q, (d) B −1 ≤ |m| < 1, Hinweis: Die Bemerkungen 1 2) und 3) im Skript sind sehr hilfreich.

(b) |FL| < ∞ (e) max FL = B emax (1 − B −Lm ),


Landau-Symbole: Für reelle Funktionen f und g schreiben wir f = O(g)
(c) emax = emin + B Le − 1, (f) min FL+ = B emin −1 . für x → a, (a ∈ R ∪ {±∞}), falls lim supx→a |f (x)|
|g(x)| < ∞ gilt. Gilt sogar
|f (x)|
limx→a |g(x)| = 0, so schreiben wir f = o(g) für x → a.

Aufgabe 2 (Auswirkung von Rundungen) (1+1+1+1 Punkte)


Bemerkung: Für x → 0 gilt exp(x) = 1 + x + O(x2 ). Daher ist der Graph in
Erklären Sie den Verlauf des Graphen in der Abbildung unten, der durch Aus- Aufgabe 2 praktisch identisch zum Graph der Funktion
wertung der Funktionsvorschrift exp(x)−1
x für 0 < x ≤ 10−15 .
(1+x)−1
x für 0 < x ≤ 10−15
Aufgabe 3 (Das Phänomen der Auslöschung) (2+2 Punkte)
mit einem Computer (double precision Format im IEEE-Standard) generiert
Sei f : R → R eine zweimal stetig differenzierbare Funktion.
wurde, indem Sie eine kurze, aber wesentliche Begründung
(a) Zeigen Sie mit Hilfe einer Taylorentwicklung von f (x + h), dass gilt
(a) für den konstanten Wert gleich 0 ganz links im Graphen,
f (x + h) − f (x)
(b) für den Sprung des Graphen von 0 auf 2, f 0 (x) = + O(h) für h → 0.
h
(b) Sei nun konkret f = exp. Offensichtlich gilt exp0 = exp. Trotzdem haben (a) Bestimmen Sie (nicht Geben Sie an“) den Aufwand des Algorithmus oben

wir die Ableitung an der Stelle x = 1 näherungsweise durch den Differen- in Operationen.
zenquotienten
(b) Leiten Sie aus der Äquivalenz (ohne Beweis)
exp(1 + h) − exp(1)     
≈ exp(1). l11 y1 b1 
h = ⇐⇒ y1 = b1 /l11 , L22 y2 = b2 − y1 l21
l21 L22 y2 b2
berechnet, was nach Teilaufgabe (a) mit hinreichend kleinem h theoretisch
mit l11 , y1 , b1 ∈ R, l21 , y2 , b2 ∈ RN −1 und L22 ∈ R(N −1)×(N −1) eine Spal-
beliebig genau durchgeführt werden kann. Erklären Sie den Fehlerplot un-
exp(1+h)−exp(1)
tenversion der Vorwärtssubstitution her. Vervollständigen Sie dazu den
ten, in welchem h gegen den Fehler − exp(1) aufgetragen

h folgenden Algorithmus.
ist, indem Sie auf mögliche Auslöschung eingehen. Sie sollen dabei die
Oszillationen im Graph ignorieren und nur den groben Verlauf erklären. def forward_sub(L, b):
N = len(b)
y = np.zeros(N)
#10 -7
for n in range(N): # n = 0,...,N-1, vorwärts
4
y[n] =
3 b[n+1:] =
return y
2

1
(c) Lösen Sie Ly = b durch Vorwärtssubstitution für folgende Instanzen
0    
0 2 4 6 8 10 3 0 0 1
#10 -8 L =  6 1/2 0 , b = 1 .
−3 2 5 2
.

Aufgabe 4 (Vorwärtsubstitution) (2+2+2 Punkte)


Das Problem Ly = b mit regulärer unterer Dreiecksmatrix L ∈ RN ×N kann
durch eine Zeilenversion der Vorwärtssubstitution gelöst werden:
def forward_sub(L, b): Laden Sie Ihre Lösung bis Freitag, den 29.4.2022, 9:30 Uhr im Ilias-Kurs hoch.
N = len(b) Schreiben Sie auf das erste Blatt sauber Ihren Namen und Ihre Matrikelnummern.
y = np.zeros(N) Abgaben zu zweit sind möglich. Bei der Onlineabgabe akzeptieren wir nur eine
for n in range(N): # n = 0,...,N-1, vorwärts PDF-Datei mit einer maximalen Dateigröße von 10MB. Andere Formate, mehrere
y[n] = (b[n] - np.dot(L[n,:n], y[:n])) / L[n,n] Dateien oder zu große Dateien werden nicht korrigiert!
return y Beachten Sie: Eine Aufgabe gilt nur dann als gelöst, wenn der Lösungsweg
vollständig mit angegeben ist. Achten Sie auch auf eine formal saubere Abgabe.

Das könnte Ihnen auch gefallen