Numerisches Programmieren, Übungen

Ähnliche Dokumente
Numerisches Programmieren, Übungen

Numerisches Programmieren, Übungen

1. Rechnerzahlen, Kondition, Stabilität

1. Rechnerarithmetik und. Rundungsfehler

Numerische Lineare Algebra

7. Übungs-/Wiederholungsblatt zu Einführung in die Numerik (SS 2012)

Numerische Methoden. Thomas Huckle Stefan Schneider. Eine Einführung für Informatiker, Naturwissenschaftler, Ingenieure und Mathematiker.

Grundlagen Kondition Demo. Numerisches Rechnen. (für Informatiker) M. Grepl P. Esser & G. Welper & L. Zhang

Rundungsfehler-Problematik bei Gleitpunktzahlen

Numerische Mathematik I: Grundlagen

3.4 Kondition eines Problems

Tutorial: Numerisch Differenzieren

Numerische Ableitung

Lösungsvorschlag zur Modulprüfung Numerische Methoden Sommersemester 2016

Numerische Verfahren und Grundlagen der Analysis

Numerische Mathematik

5. Numerische Differentiation. und Integration

Bildverarbeitung: Diffusion Filters. D. Schlesinger ()Bildverarbeitung: Diffusion Filters 1 / 10

Mathematik für Bauingenieure

3 Numerisches Rechnen

Numerische Verfahren

(d) das zu Grunde liegende Problem gut konditioniert ist.

Numerik für Informatiker, Elektrotechniker und Naturfreunde von Michael Lehn

1 Arithmetische Grundlagen

KAPITEL 2. Fehleranalyse: Kondition, Rundungsfehler, Stabilität. Datenfehler. Dahmen-Reusken Kapitel 2 1

Kurztest zur Numerik I WiR AG, Dep. Mathematik, NT-Fakultät, Universität Siegen

Finite Elemente. Dr. S.-J. Kimmerle Institut für Mathematik und Rechneranwendung Fakultät für Luft- und Raumfahrttechnik Wintertrimester 2015

Näherungsverfahren zur Bestimmung der Nullstelle α sind iterativ, d.h. sie liefern eine Folge {x (k) } k=0 mit α = lim x (k). (3.0.

Die Taylorreihe einer Funktion

1 Fehleranalyse, Kondition, Stabilität

5 Numerische Mathematik

Finite Differenzen Methode (FDM)

ANALYSIS I FÜR TPH WS 2016/17 3. Übung Übersicht

( ) Dann gilt f(x) g(x) in der Nähe von x 0, das heisst. Für den Fehler r(h) dieser Näherung erhält man unter Verwendung von ( )

Der Satz von Taylor. Kapitel 7

Kapitel 18 Numerisches Differenzieren und Integrieren

Fehlerfortpflanzung. Fehler bei Fließkomma-Arithmetik. Addition x ` y ` z. Fehlerfortpflanzung. Analyse des Relativen Fehlers

Klausurlösung Einführung in Numerische Methoden und FEM Universität Siegen, Department Maschinenbau,

Übungen zu Numerisches Programmieren

Höhere Mathematik für Physiker II

Numerisches Programmieren

Thema aus dem Bereich Analysis Differentialrechnung I. Inhaltsverzeichnis

Unter den endlich vielen Maschinenzahlen gibt es zwangsläufig eine größte und eine kleinste:

1. Anfangswertprobleme 1. Ordnung

Numerische Verfahren Übungen und Lösungen, Blatt 1

(x x j ) R m [x] (3) x x j x k x j. R m [x]. (4)

Nichtlineare Gleichungssysteme

Inhalt Kapitel I: Nichtlineare Gleichungssysteme

Erweiterungen der LR-Zerlegung

Einführung FEM 1D - Beispiel

Programmieren in MATLAB Mehr als nur ein Taschenrechner

Werkstatt Multiplikation Posten: Rundung im Quadrat. Informationsblatt für die Lehrkraft. Rundung im Quadrat

Blockmatrizen. Beispiel 1 Wir berechnen das Produkt von A R 4 6 mit B R 6 4 :

Übungsaufgaben Analysis hilfsmittelfrei

GMA. Grundlagen Mathematik und Analysis. Nullstellen und Fixpunkte Reelle Funktionen 3. Christian Cenker Gabriele Uchida

28. Lineare Approximation und Differentiale

Normalform. 2.1 Äquivalenz und Folgerung. 2.2 Die pränexe Normalform

Perlen der Informatik I Wintersemester 2012 Aufgabenblatt 7

(x a) 3 + f (a) 4! x 4 4! Wir werden im Folgenden vor allem Maclaurin-Reihen betrachten, dies alles funktioniert aber auch. f (x) = sin x f (0) = 0

Numerik für Ingenieure I Wintersemester 2008

KAPITEL 8. Interpolation

Mathematische Werkzeuge für Computergrafik 2016/17. Gleitkommzahlen

Euler-Verfahren. exakte Lösung. Euler-Streckenzüge. Folie 1

Mathematischer Vorkurs für Physiker WS 2012/13

Aufgaben für das Fach Mathematik

Elemente der Analysis II

Der CG-Algorithmus (Zusammenfassung)

Numerische Integration

2004, x 0 (e 2x + x) x 1, x > 0. Untersuchen Sie die Funktion auf Stetigkeit an der Stelle x 0 = 0!

Numerisches Rechnen. (für Informatiker) M. Grepl P. Esser & G. Welper & L. Zhang. Institut für Geometrie und Praktische Mathematik RWTH Aachen

Programmieren in C/C++ und MATLAB

5 Interpolation und Approximation

Numerisches Programmieren, Übungen

Modellieren in der Angewandten Geologie II. Sebastian Bauer

1.4 Stabilität der Gauß-Elimination

7. LINEARISIERUNG UND DAS DIFFERENTIAL

Numerische Verfahren

Übung (13) dx 3, 2x 1 dx arctan(x3 1).

(geometrische) Anschauung

Computer-orientierte Mathematik

Vorlesung: Analysis II für Ingenieure. Wintersemester 07/08. Michael Karow. Themen: Niveaumengen und Gradient

Wenn man den Kreis mit Radius 1 um (0, 0) beschreiben möchte, dann ist. (x, y) ; x 2 + y 2 = 1 }

35 Matrixschreibweise für lineare Abbildungen

LUDWIG-MAXIMILIANS-UNIVERSITÄT MÜNCHEN. 13. Übung/Lösung Mathematik für Studierende der Biologie

Mathematische Grundlagen der dynamischen Simulation

EVC Repetitorium Blender

Vorkurs: Mathematik für Informatiker

D - 2 Gleitkommadarstellung und -arithmetik

Nichtlineare Gleichungssysteme

Linearisierung einer Funktion Tangente, Normale

INTELLIGENTE DATENANALYSE IN MATLAB

38 Iterative Verfahren für lineare Gleichungssysteme

Transkript:

Technische Universität München SS 2012 Institut für Informatik Prof. Dr. Thomas Huckle Dipl.-Inf. Christoph Riesinger Dipl.-Math. Alexander Breuer Dr.-Ing. Markus Kowarschik Numerisches Programmieren, Übungen 2. Übungsblatt: Kondition, Stabilität und Gauß-Elimination 1) Kondition, Stabilität Die (relative) Konditionszahl cond(f, x) für reellwertige Funktionen f : IR IR ist folgendermaßen definiert: cond(f, x) = x f (x) f(x) i) Berechnen Sie die relative Konditionszahl der folgenden Funktionen in Abhängigkeit von x: a) f 1 (x) = a x, b) f 2 (x) = a x, c) f 3 (x) = 3e x 3. Interpretieren Sie jeweils das Ergebnis! Wie lautet die Konditionszahl von f 3 an der Stelle x = 0 (Grenzwertbetrachtung!)? ii) Ist eine computergestützte Auswertung von f 3 stabil? (Hinweis: Betrachten Sie den relativen Fehler rd(f(x)) f(x) f(x).)

2) Ableitungsapproximation Die erste Ableitung einer Funktion f an einem Punkt x 0 ist definiert durch f (x 0 ) := lim h 0 f(x 0 + h) f(x 0 ) h und kann durch den rechtsseitigen Differenzenquotienten D f (x 0, h) := f(x 0 + h) f(x 0 ) h für kleine positive Werte von h numerisch approximiert werden. Dies geschieht auch oft in praktischen Anwendungen, in denen es nicht möglich oder zu aufwändig ist, die Ableitung auf analytischem Weg zu bestimmen. Dabei stellt sich die Frage, wie man die sogenannte Schrittweite h wählt. Wählt man sie zu groß, dann ist der Differenzenquotient aus analytischen Gründen keine gute Näherung für die Ableitung. Wählt man andererseits h zu klein, so gilt f(x 0 + h) f(x 0 ), und bei der Auswertung von Formel (1) tritt Auslöschung auf. 60 50 Analytischer Fehler Numerischer Fehler Gesamtfehler (1) 40 30 20 10 0 10 13 10 12 10 11 10 10 10 9 10 8 10 7 Abbildung 1: Fehlerquellen bei der Ableitungsapproximation i) Leiten Sie mit Hilfe der Taylorformel f(x 0 + h) = f(x 0 ) + f (x 0 ) h + 1 2! f (z) h 2, z (x 0 ; x 0 + h) eine obere Schranke (abhängig von der Maschinengenauigkeit ε Ma ) für den absoluten Fehler err abs = f (x 0 ) rd ( D f (x 0, h) ) her. Berücksichtigen Sie dabei sowohl Rundungsfehler in den Eingabedaten f(x 0 ), f(x 0 + h) als auch bei der Berechnung von D f (x 0, h). ii) Verwenden Sie das Ergebnis aus Teilaufgabe i), um in Abhängigkeit von ε Ma anzugeben, wie eine optimale Schrittweite h zu wählen ist, so dass der absolute Fehler err abs minimiert wird.

3) Bildableitungen und -gradienten Wie Sie eben gesehen haben, kann die Ableitung einer Funktion an einem konkreten Punkt durch eine Entwicklung der Taylorreihe an dieser Stelle approximiert werden. In dieser Übungsaufgabe werfen wir einen Blick auf eine typische Anwendung aus der Bildverarbeitung, bei der erste und zweite Ableitungen vorkommen. Derart grundlegende Operationen sind sehr nützlich, da sie die Grundlage zum Finden von Kanten bzw. Konturen in Bildern darstellen. Um dies zu veranschaulichen, betrachten wir das Bild I, das in Abbildung 2 links gezeigt wird. Es handelt sich um ein Grauwertbild, dessen Pixel diskrete Werte zwischen 0 und 255 annehmen. Aus Gründen der Einfachheit werden wir lediglich eine horizontale Bildzeile betrachten, die rot im Bild I eingezeichnet ist. Die Intensitäten der Pixel entlang dieser Linie werden als Werte einer Funktion interpretiert, deren Graph oben rechts in Abbildung 2 zu sehen ist. Abbildung 2: Bildableitungen. Die ersten Ableitungen des Bildes (genauer gesagt der betrachteten Bildzeile) können durch die Verwendung von Finiten Differenzen (rechtsseitiger Differenzenquotient) angenähert werden: (x 0 ) I(x 0 + h) I(x 0 ) = lim x 0 h I(x 0 + h) I(x 0 ) (2)

i) Berechnen Sie die ersten Ableitungen mit Hilfe des rechtsseitigen Differenzenquotienten für denjenigen Teil der horizontalen Scanlinie, der unten rechts in Abbildung 2 vergrößert gezeigt ist. ii) Um eine Approximation für die zweite Ableitung zu erhalten, wendet man den zentralen Differenzenquotienten (x 0) I(x 0+h) I(x 0 +h) I(x 2h 0 + h) I(x 0 h) zwei mal hintereinander an. Berechnen Sie die zweiten Ableitungen für denjenigen Teil der horizontalen Scanlinie, der unten rechts in Abbildung 2 vergrößert gezeigt ist. iii) Zeichnen Sie die eben berechneten ersten und zweiten Ableitungen der horizontalen Scanlinie als diskreten Graphen und bestimmen Sie die Kanten im Bild. Hinweis: Kanten äußern sich im Bild durch Übergänge von hellen zu dunklen Bereichen und umgekehrt. iv) In der Praxis wird der Bildgradient als Methode der Wahl zur Berechnung von Kanten im Bild verwendet. Der Bildgradient ist wie folgt definiert: I(x, y) = [ ] T y ( Die Länge des Bildgradienten I(x, y) = ) ( 2 2 + y) und seine Richtung ψ( I) = ) arctan sind die fundamentalen Bausteine vieler Low-Level Algorithmen aus dem ( y Computer Vision Bereich. In der Praxis werden Bildgradienten und Bildableitungen als sogenannte Filter implementiert. Stellen Sie sich einen solchen Filter als Matrixmultiplikation vor. Leiten Sie einen einfachen 1D Filter zur Berechnung erster und zweiter Ableitungen her indem Sie Matrixmultiplikationen verwenden. Hinweis: Der Filter muss eine Matrix mit ganzzahligen Einträgen sein. Die Grauwerte entlang der Scanlinie werden in einem Vektor zusammen gefasst.

Zum Abschluss des Kapitels über Gleitpunktzahlen, Rundung und Kondition ist nachfolgend eine Aufgabe aus einer Semestralklausur aufgeführt. Diese ist dazu gedacht, dass man den Stoff noch einmal selbst üben kann. Sie wird deshalb nicht in der Übung behandelt. Wiederholung: Gleitpunktzahlen, Rundung und Kondition Betrachten Sie die Funktion f : IR IR, f(x) = ex e x. (3) 3 a) Die Formel (3) für die Funktion f(x) soll unter Anwendung von Gleitpunktarithmetik ausgewertet werden. Geben Sie den Term rd(f(x)) an, der alle Fehler, die bei der Auswertung entstehen, berücksichtigt. Die Negation eines Wertes x der Form neg(x) = x bewirkt keinen Rundungsfehler. Gehen Sie von exakten Eingabedaten x aus. Linearisieren Sie, indem Sie Fehlerterme höherer Ordnung vernachlässigen. b) Berechnen Sie den relativen Rundungsfehler, der bei der Berechnung des Ergebnisses f(x) auftritt. Wie verhält sich der relative Rundungsfehler für große x, d.h. für x ±? Ist die Auswertung für alle x IR stabil? Begründen Sie Ihre Antwort! c) Zeigen Sie, dass für die Kondition einer Funktion f cond(f, x) = x f (x) f(x) im Fall von Funktion (3) gilt: cond(f, x) = x e2x + 1 e 2x 1. Was lässt sich daraus für die Auswertung der Funktion (3) an der Stelle x = 0 folgern?