Algorithmik III Algorithmen und Modelle für kontinuierliche Datenstrukturen

Ähnliche Dokumente
Inhalt Kapitel IV: Interpolation

Polynominterpolation

Musterlösung zum Übungsblatt Interpolation nach Newton, Nevill, Lagrange.

3.1.3 Newtonsche Interpolationsformel / Dividierte Differenzen

9.2 Invertierbare Matrizen

3 Matrizenrechnung. 3. November

8.2 Invertierbare Matrizen

6 Symmetrische Matrizen und quadratische Formen

Polynominterpolation mit Matlab.

Interpolation, lineare Gleichungen (mit und ohne Lösungen) und lineare Regression

Übungen zu Splines Lösungen zu Übung 20

Themen Lagrange-Interpolation Hermite-Interpolation. Splines. Bézier-Kurven. 5 Interpolation. Interpolation Die Lagrangesche Interpolationsaufgabe

Interpolation. Kapitel 3

6 Symmetrische Matrizen und quadratische Formen

2. Gauß-Integration. Prof. Dr. Wandinger 4. Scheibenelemente FEM 4.2-1

Numerisches Programmieren

Computer-Graphik I Baryzentrische Koordinaten

WS 2010/ Januar Mathematisches Institut der Universität München Prof. Dr. Rudolf Fritsch

Computer-Graphik I Verallgemeinerte Baryzentrische Koordinaten

Matrizen, Determinanten, lineare Gleichungssysteme

7.1 Matrizen und Vektore

Kapitel 4. Interpolation. 4.1 Allgemeines Normen von Funktionen

Die Interpolationsaufgabe besteht darin, eine (einfache) Funktion u n U n zu finden,

6 Iterationsverfahren für lineare und nichtlineare Gleichungssysteme

Lineare Gleichungssysteme - Grundlagen

Kapitel 2: Matrizen. 2.1 Matrizen 2.2 Determinanten 2.3 Inverse 2.4 Lineare Gleichungssysteme 2.5 Eigenwerte 2.6 Diagonalisierung

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

Modellieren in der Angewandten Geologie II. Sebastian Bauer

3. Übungsblatt zur Lineare Algebra I für Physiker

3.6 Approximationstheorie

Übersicht über Informatik und Softwaresystemtechnik WS 99/00, Prof. Dr. Andreas Schwill

Lineare Gleichungssysteme

5.1 Determinanten der Ordnung 2 und 3. a 11 a 12 a 21 a 22. det(a) =a 11 a 22 a 12 a 21. a 11 a 21

Matrizen und Determinanten

Iso- und subparametrische Elemente in Monte-Carlo-Transportalgorithmen

Lineare Gleichungssysteme

Numerische Integration und Differentiation

NUMERISCHE MATHEMATIK II 1. (Studiengang Mathematik) Prof. Dr. Hans Babovsky. Institut für Mathematik. Technische Universität Ilmenau WS 2001/2002

Practical Numerical Training UKNum

$Id: linabb.tex,v /01/09 13:27:34 hk Exp hk $

3.6 Eigenwerte und Eigenvektoren

Koordinaten und darstellende Matrizen

Funktionen mehrerer Variabler

Lineare Gleichungssysteme Kapitel 5 aus meinem Lehrgang ALGEBRA

1 Singulärwertzerlegung und Pseudoinverse

( ) Lineare Gleichungssysteme

4. Vektorräume und Gleichungssysteme

Lineare Algebra. Teil III. Inhaltsangabe

FEM isoparametrisches Konzept

Mathematik II für Studierende der Informatik. Wirtschaftsinformatik (Analysis und lineare Algebra) im Sommersemester 2015

f f(x ɛξ) f(x) 0, d.h. f (x)ξ = 0 für alle ξ B 1 (0). Also f (x) = 0. In Koordinaten bedeutet dies gerade, dass in Extremstellen gilt: f(x) = 0.

von Zahlenfolgen, die bei Gebietsteilungsproblemen

Formelsammlung Mathematik Grundkurs Inhalt

40 Lokale Extrema und Taylor-Formel

18.2 Implizit definierte Funktionen

Beispiel mit Hinweisen 1 1/3 Dreieck

Interpolationsproblem. Interpolation. Interpolationsproblem. Interpolationsproblem. Gegeben seien eine Funktion. Φ (x; a 1,...

Explizite Formeln für rekursiv definierte Folgen

Inhaltsverzeichnis. Vorwort Kapitel 1 Einführung, I: Algebra Kapitel 2 Einführung, II: Gleichungen... 57

Wir konstruieren eine Wasserrutsche!

Übungen Mathematik I, M

Geradenarrangements und Dualität von Punkten und Geraden

Mathematische Grundlagen für die technische Oberstufe

1.Übung Mathematik I

Übungen mit dem Applet Interpolationspolynome

2. Geben Sie für das Jacobi-Verfahren eine scharfe a-priori Abschätzung für den Fehler. x (10) x p

QUADRATISCHE UND KUBISCHE FUNKTION

1 Potenzen und Polynome

Mathematik II für Studierende der Informatik. Wirtschaftsinformatik (Analysis und lineare Algebra) im Sommersemester 2016

Lineare Algebra. Mathematik II für Chemiker. Daniel Gerth

Vektoren - Basiswechsel

Numerisches Programmieren, Übungen

1 Lineare Algebra. 1.1 Matrizen und Vektoren. Slide 3. Matrizen. Eine Matrix ist ein rechteckiges Zahlenschema

Rückblick auf die letzte Vorlesung. Bemerkung

Mathematik für Informatik 3

Kapitel 4: Variable und Term

36 2 Lineare Algebra

3 Interpolation und Approximation

II. Lineare Gleichungssysteme. 10 Matrizen und Vektoren. 52 II. Lineare Gleichungssysteme

Mathematik IT 2 (Lineare Algebra)

1 Matrizenrechnung zweiter Teil

Rechnen mit Vektoren. 1. Vektoren im Koordinatensystem Freie Vektoren in der Ebene

Erneut: Matrizen und lineare Abbildungen

Kurs über Lineare Gleichungssysteme. PD Dr. Karin Halupczok

Splines. Bézier-Kurven. Beispiel zur Approximation. Interpolation & Approximation. Schiffbau Automobilbau Architektur. f(x) f(x) =

Einführung. Ablesen von einander zugeordneten Werten

Mehrdimensionale Numerische Integration mittels hierarchischer Basen

Vektorgeometrie - Teil 1

Vektorrechnung Raumgeometrie

Lineare Gleichungssysteme

Klausur Mathematik I

y hom (x) = C e p(x) dx

Grundsätzliches Rechnen mit Matrizen Anwendungen. Matrizenrechnung. Fakultät Grundlagen. Juli 2015

1 Definition. 2 Besondere Typen. 2.1 Vektoren und transponieren A = 2.2 Quadratische Matrix. 2.3 Diagonalmatrix. 2.

Mathematische Erfrischungen III - Vektoren und Matrizen

2 Polynome und rationale Funktionen

Facharbeit. Mathematik

6.3 Hauptachsentransformation

6. Rechnen mit Matrizen.

Teil I. Lineare Optimierung

Transkript:

Algorithmik III Algorithmen und Modelle für kontinuierliche Datenstrukturen Rekonstruktion kontinuierlicher Daten Interpolation multivariater Daten Ulrich Rüde Lehrstuhl für Systemsimulation Sommersemester 2007 U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 1

Kritik Lautstärke im H8 Folien früher bereitstellen Kurzprüfungen haben nur bedingt den gewünschten Effekt U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 2

Zum Thema: Rekonstruktion kontinuierlicher Daten Nachtrag: Beispiel zur Newton schen Interpolationsformel U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 3

Ansatz Herleitung einer Rekursionsformel p 1,k-1 (x) interpoliert an x 1, x 2,..., x k (Polynomgrad k-1) p 2,k-1 (x) interpoliert an x 2, x 3,..., x k+1 (Polynomgrad k-1) Brechne daraus p 1,k das an x 1, x 2,..., x k+1 interpoliert (Polynomgrad k) x 1 x 2 x 3 x 4 U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 4

Zur Erinnerung: Rekursionsformel von Aitken-Neville Warum funktioniert das: Ist x=x i, dann übernimmt das linke Polynom. Ist x=x i+k, dann übernimmt das rechte Polynom. Bei den Stützstellen dazwischen kooperieren beide Polynome. Die Sortierung der Stützstellen ist nicht relevant. Terminierung der Rekursion: Die Interpolation einer einzigen Stützstelle (x i, y i ) liefern trivialerweise die konstanten Polynome p i,0 (x) = y i Anwendung zur Berechnung des Koeffizienten zur höchsten Potenz des Polynoms führt auf die Formel für die Newton schen dividierten Differenzen: (*) U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 5

Newton-Polynome und Newton-Algorithmus Verwende nun die Basis { q 0, q 1,..., q n-1 } zur Lösung der Interpolationsaufgabe. Vorteil: In dieser Basis ist das Interpolationspolynom effizient für alle x (mit einem Horner-artigen Schema) auswertbar. U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 6

Newton-Polynome und Newton-Algorithmus Die a i,k sind so berühmt, dass sie einen extra Namen erhalten haben. Sie heissen (Newton sche) Dividierte Differenzen. Es gibt viele andere Bezeichnungen/Notationen dafür, eine übliche ist: Wenn man also als Datenstruktur für die Polynome eine Darstellung mit Koeffizienten in der Newtonbasis verwendet, kann man das Interpolationspolynom (d.h. die entsprechenden Koeffizienten) mit dem gleichen Rekursionsschema berechnen. Man braucht pro Polynom im Dreiecksschema nur eine Zahl a i,k neu ausrechnen. Diese Zahl ist genau der Koeffizient zur höchsten x-potenz im Polynom. Die Rekursionsformel dafür ist, siehe (*): Bzw (**) U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 7

Der Algorithmus von Aitken-Neville = a 0 = a 1 = a2 = a 3 = a n-1 U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 8

Beispiel: Polynominterpolation 4 Stützpunkte (-2, 0) (-1, 3) ( 1,-3) ( 2, 0) Führt auf ein kubisches Polynom p(x,y) = (x-2) (x-0) (x+2) U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 9

Polynominterpolation U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 10

Zum Thema: Rekonstruktion kontinuierlicher Daten Interpolation multivariater Daten U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 11

Multivariate Funktionen Funktionen mehrer Veränderlicher f : R n R bivariate: f(x,y) trivariate: f(x,y,z) Gegeben diskrete samples einer unbekannten Funktion Stützstellen ( x i, y i ) Stützwerte f i (= f(x i, y i ) ) Gesucht Näherungswerte von f an den zwischen Stellen. Ansatz: Konstruiere eine interpolierende Funktion g : g( x i, y i ) = f i U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 12

Lokale Verfahren Berücksichtige nur die Daten in der Umgebung des jeweiligen Punktes (1D-Beispiel: lineare Interpolation) Bilinear in 2D falls Umgebung rechteckig Linear in 2D falls Umgebung ein Dreieck Triangulierung von Punkten U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 13

Der einfachste Fall für die Rekonstruktion einer Fläche: Bilineare Interpolation Überstrichene Fläche bei der Bewegung von P 1 und P 2 auf geradem Weg nach P 3 bzw. P 4, unter Mitführung der jeweiligen Verbindungsstrecke. U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 14

Bilineare Interpolation 4 Stützstellen entsprechen 4 Basisfunktionen B = { 1, x, y, xy } Interpolant ist linear entlang der Kanten, quadratisch entlang der Diagonalen. Kann implementiert werden als zuerst lineare Interpolation in x, dann lineare Interpolation in y zuerst lineare Interpolation in y, dann lineare Interpolation in x oder direkt (siehe unten) Überstrichene Fläche der Verbindungsstrecke U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 15

Bilineare Interpolation y 1 t y 0 x 0 s x 1 f 01 f *1 f 11 f 00 f *0 f 10 f *1 f ** f *0 U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 16

Bilineare Interpolation U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 17

Bilineare Interpolation Andere Reihenfolge - erst zweimal in y-richtung, dann einmal in x-richtung - liefert das gleiche Ergebnis Die bilineare Interpolierende ist keine ebene Fläche Ausnahme: Die vier 3D-Punkte (x i, y j, f ij ) liegen in einer Ebene Im Allgemeinen entsteht dabei keine lineare Funktion über der Ebene, sondern Polynom vom Grad zwei (enthält Term der Form s t ). U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 18

Vier Stützstellen Zusamengefasst: Bilineare Interpolation Dazugehörige Stützwerte Der Interpolant ist U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 19

Verallgemeinerung zu Polynomen höherer Ordnung: Interpolation in 2D Ansatz als multivariate Funktion Verwendung multivariater Basisfunktionen Beispiel: bivariate Polynome p(x,y) Dimension = n 2 : p(x,y) kann n 2 Interpolationsbedingungen einhalten. Aufstellen eines Gleichungssystems mit n 2 Unbekannten Koeffizientenmatrix der Dimension n 2 n 2. Lösung kostet O(n 6 ) Operationen. Man überlege sich analog, wie die Interpolation mit Polynomen über einem Dreieck aussehen könnte. Es ist i.a. nicht sichergestellt, dass eine Lösung existiert. U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 20

Bivariate Polynome: Tensorprodukt Liegen die Stützstellen auf einem Tensorprodukt -Gitter y 4 y 3 kann die Interpolation zuerst in x- Richtung und dann in y-richtung (oder umgekehrt) jeweils als eindimensionale Interpolation ausgeführt werden, und dabei die bekannten Algorithmen zum Einsatz kommen. (Lösbarkeit ist gesichert) y 2 y 1 x 1 x 2 x 3 x 4 x 5 Beachte, dass das resultierende bivariate Polynom in x-richtung ein Polynom vom Grad n und in y-richtung ein Polynom vom Grad m ist. In Richtung = x + y ist es ein Polynom vom Grad m+n. U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 21

Lineare Interpolation im Dreieck Die drei Punkte (x 1, y 1, u 1 ), (x 2, y 2, u 2 ), (x 3, y 3, u 3 ) eines (nichtdegenerierten) Dreiecks im Raum definieren gerade eine Ebene. Lineare Interpolation zum Punkt (x,y) durch Umrechnen auf baryzentrische Koordinaten (t 1, t 2, t 3 ) Andere Namen: homogene Koordinaten, Verhältniskoordinaten Die t i sind die Gewichte der Eckpunkte des Dreiecks, so dass der gewichtete Schwerpunkt (x,y) ist. Interpolationsformel U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 22

Illustration: lineare Interpolation im Dreieck U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 23

Lineare Interpolation: Baryzentrische Koordinaten: Gegeben drei Punkte R, S, T in der Ebene, die nicht auf einer Geraden liegen. Jeder Punkt P der Ebenen läßt sich eindeutig wie folgt darstellen: T P = R + S + T 1 = + + wobei, und heißen baryzentrische Koordinaten von P bezüglich (R,S,T) R P S U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 24

Lineare Interpolation: Berechnung der baryzentrische Koordinaten: mittels Cramerscher Regel Das ist in der Computergraphik Standard, ist aber wegen der Stabilitätsmängel der Cramer schen Regel nicht die beste Lösung U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 25

Berechnen der baryzentrischen Koordinaten im Dreieck Lösen des 3x3 Gleichungssystems: bzw. kann (und sollte) ganz normal mit Gauss-Elimination + Pivot-Suche geschehen. Das ist insbesondere der richtige Weg für die Berechnung der baryzentrischen Koordinaten in 3D (oder noch höher-dimensional). U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 26

Lineare Interpolation Baryzentrische Koordinaten Einfache Beispiele P 1 : (1,0,0) (Eckpunkt) P 2 : (1/3, 1/3, 1/3) (Schwerpunkt) P 3 : (0,1/2,1/2) (Kantenmitte) P 4 : (1, 1, -1) P 5 : (-1,-1,1) R P 2 T P 5 P 3 S P 1 P 4 U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 27

Lineare Interpolation Baryzentrische Koordinaten Geometrische Interpretation Erinnerung: det (C-A,B-A) = area (Parallelogramm) = 2 area( (A,B,C)) A C T B = area( (P,S,T)) / area( (R,S,T)) P ebenso = area( (R,P,T)) / area( (R,S,T)) = area( (R,S,P)) / area( (R,S,T)) R S U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 28

Lineare Interpolation Baryzentrische Koordinaten Geometrische Interpretation Teilungsverhältnisse R T P S R T P S U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 29

Lineare Interpolation:Baryzentrische Koord. Vorzeichen der baryzentrischen Koordinaten 0 < 0 > 0 = 0 > 0 < 0 < 0 > 0 < 0 > 0 R T > 0 > 0 > 0 > 0 > 0 < 0 0 > 0 > 0 S = 0 = 0 0 > 0 < 0 U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 30

Lineare Interpolation: Sind nun in den Eckpunkten des Dreiecks (skalare oder vektorielle) Daten gegeben: f R, f S und f T f T f R T f S Den Wert des linearen Interpolanten an einer Stelle P 2 (R,S,T) erhält man wie folgt: R f P P S f P = f R + f S + f T wobei,, baryz. Koordinaten von P Analogie zur linearen Interpolation in 1D U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 31

Lokale Interpolation im n-dim Raum multi-linear (trilinear in 3D) falls lokale Umgebung ein (Hyper-)Würfel 3D: 4-mal in x-richtung (1- ) + 2-mal in y-richtung (1- ) + 1-mal in z-richtung (1- ) + linear falls lokale Umgebung ein Simplex (ein Tetraeder in 3D) = konvexe Hülle von n+1 Punkten in allgemeiner Lage Baryzentrische Koordinaten eines Punktes P (im 3D-Fall): P = R + S + T + U mit + + + = 1 Alles Weitere wie in 2D (aber Achtung, dass die baryzentrischen Koordinaten stabil berechnet werden - Computergraphikbücher sind da manchaml etwas uninformiert ) U. Rüde, G. Greiner: Algorithmik III - SS 2007 - VL 14 - Folie 32