Polynome und die fft
This presentation is the property of its rightful owner.
Sponsored Links
1 / 50

Polynome und die FFT PowerPoint PPT Presentation


  • 131 Views
  • Uploaded on
  • Presentation posted in: General

Polynome und die FFT. Sören Tönis Seminar: Ergänzungen zu DAP2. Polynome Addition Multiplikation Alternative Darstellungsformen Koeffizientendarstellung Point-Value-Darstellung Komplexe Einheitswurzeln Diskrete Fouriertransformation Schnelle Fouriertransformation. Polynome.

Download Presentation

Polynome und die FFT

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Polynome und die fft

Polynome und die FFT

Sören Tönis

Seminar: Ergänzungen zu DAP2


Polynome und die fft

  • Polynome

    • Addition

    • Multiplikation

    • Alternative Darstellungsformen

      • Koeffizientendarstellung

      • Point-Value-Darstellung

    • Komplexe Einheitswurzeln

    • Diskrete Fouriertransformation

    • Schnelle Fouriertransformation


Polynome

Polynome

  • Polynome vom Grad n-1 und Länge n

z.B.:


Addition von polynomen

Addition von Polynomen

wobei

mit


Addition von polynomen1

Addition von Polynomen


Addition von polynomen2

Addition von Polynomen

  • Polynom hat Grad des höheren der beiden addierten Polynome

  • Bei Polynomen vom Grad n-1 sind n Additionen notwendig


Multiplikation von polynomen

Multiplikation von Polynomen

wobei

mit


Multiplikation von polynomen1

Multiplikation von Polynomen


Multiplikation von polynomen2

Multiplikation von Polynomen

Grad (C) = Grad (A) + Grad (B)


Darstellungsweise von polynomen

Darstellungsweise von Polynomen

  • Koeffizientendarstellung

  • Point-Value-Darstellung


Koeffizientendarstellung

Koeffizientendarstellung

Koeffizientendarstellung von Polynom mit Grad

n-1 durch Vektor

Auswertung erfolgt nach Horn-Schema über den gewählten Punkt:


Koeffizientendarstellung1

Koeffizientendarstellung

Addition erfolgt wie bei den Polynomen:


Koeffizientendarstellung2

Koeffizientendarstellung

Addition hat den Zeitaufwand von Q(n), wie auch die normale Addition von zwei Polynomen. Genau so Multiplikation möglich, mit Zeitaufwand Q( ). Wir multiplizieren einfach jeden Koeffizienten in Vektor a mit jedem Koeffizienten in Vektor b.


Point value darstellung

Point-Value-Darstellung

Die Punkt-Wert Darstellung eines Polynoms des Grades n-1 besteht aus n Paaren:

Wobei alle verschieden sind und

für


Point value darstellung1

Point-Value-Darstellung

Polynom hat viele verschiedene Point-Value Darstellungen da n verschieden x als Basis der Abbildung genutzt werden können.

Wir können beliebige auswählen.


Point value darstellung2

Point-Value-Darstellung

Aufwand für diese Auswertung/Entwicklung (ab

jetzt nur der Begriff Evaluation) Q( ) nach

Horn-Schema.

Ziel: Q( ) ist kein Vorteil, wir wollen die Evaluation möglichst in linearer Zeit abwickeln.

Weg: Kluge wählen.


Begriffskl rung

Begriffsklärung

  • Evaluation:

    Umwandlung von Koeffizientendarstellung

    in Point-Value-Darstellung

  • Interpolation:

    Umwandlung von Point-Value-Dartellung

    in Koeffizientendarstellung


Vorschau

Vorschau

Wir brauchen für Multiplikation von Polynomen

nach Standard-Rechnung Q( ), es gilt zu zeigen, daß wir durch Umformungen eine Aufwandsersparnis erzielen.


Addition in point value darst

Addition in Point-Value-Darst.

Voraussetzung: A und B wurden an den gleichen Punkten evaluiert

A

B

C


Multiplikation in point value darst

Multiplikation in Point-Value-Darst.

Voraussetzung: A und B wurden an den gleichen Punkten evaluiert

A

B

C

Problem ! : Grad C = Grad A + Grad B


Vorschau1

Vorschau

Problematik:

A,B Polynome vom Grad n-1 und C

Polynom von Grad 2n-2, für punktweise

Multiplikation müssen wir bei der Evaluation

unsere Spaltenvektoren „auffüllen“ !


Multiplikation in point value darst1

Multiplikation in Point-Value-Darst.

Lösung: Extended Point-Value-Darstellung von

A und B !

A

B

C

Bemerkung: 2n-1 wegen Gradgrenze 2n


Einschub

Einschub

Literatur spricht von „degree bound“ Gradschranke!

Polynom der Länge n hat Grad n-1 und Gradschranke n, Polynom der Länge 2n-1 hat den Grad 2n-2 und Gradschranke 2n-1 und somit auch Gradschranke 2n.


Vorschau2

Vorschau

1. Verdoppeln der Gradschranke.

Erstellen einer Koeffizientendarstellung von A(x) und B(x), durch hinzufügen von höherwertigen 0-Koeffizienten.

2. Evaluation

Berechnen der Point-Value-Darstellung von A(x) und B(x), durch Anwenden der FFT.


Vorschau3

Vorschau

3. Punktweises Multiplizieren:

Berechnen von C(x)=A(x)B(x) punktweises Multiplizieren der Werte

4. Interpolation:

Erstellen der Koeffizientendarstellung zum Polynom C(x).


Vorschau4

Vorschau

Standard-Multiplikation

Zeitaufwand

Koeffizienten-

darstellung

Evaluation

Zeitaufwand

Interpolation

Zeitaufwand

Point-Value-

Darstellung

punktweise Multiplikation

Zeitaufwand


Komplexe einheitswurzeln

Komplexe Einheitswurzeln

Eine Komplexe n-te Einheitswurzel ist eine komplexe Zahl mit

heißt primitive n-te Einheitswurzel, wenn


Eigenschaften der einheitswurzel

Eigenschaften der Einheitswurzel

Es gibt n verschiedene n-te Einheitswurzeln, diese sind darstellbar als die Potenzen einer primitiven n-ten Einheitswurzel


Eigenschaften der einheitswurzel1

Eigenschaften der Einheitswurzel

Jede ganzzahlige Potenz einer n-ten Einheitswurzel ist wieder n-te Einheitswurzel, denn

Dies gilt auch für negative k.


Eigenschaften der einheitswurzel2

Eigenschaften der Einheitswurzel

Ist n gerade, so gilt für jede primitive n-te Einheitswurzel , denn

,d.h. ist 2-te Einheitswurzel, also 1 oder -1.

Da aber  ist, da primitiv ist,

gilt .


Eigenschaften der einheitswurzel3

Eigenschaften der Einheitswurzel

Das Quadrat einer primitiven n-ten Einheitswurzel (n gerade) ist primitive n/2-te Einheitswurzel,

denn 1.

2. Angenommen, sie sei nicht primitiv, dann

Dann ist aber ein

Widerspruch dazu, daß primitiv ist.


Eigenschaften der einheitswurzel4

Eigenschaften der Einheitswurzel

Ist primitive n-te Einheitswurzel, so ist ebenfalls primitive n-te Einheitswurzel, denn

1.

2. Angenommen, sei nicht primitiv, dann

Dann ist aber

ein Widerspruch dazu, dass primitiv ist.


Eigenschaften der einheitswurzel5

Eigenschaften der Einheitswurzel

Die n komplexen n-ten Einheitswurzeln

bilden mit der Multiplikation zusammen eine Gruppe mit der gleichen Struktur wie die

additive Gruppe


Komplexe einheitswurzeln1

Komplexe Einheitswurzeln

Lemma (Cancellation Lemma):

Für jede ganze Zahl

gilt


Komplexe einheitswurzeln2

Komplexe Einheitswurzeln

Korollar:

Für jede ganze Zahl

gilt


Komplexe einheitswurzeln3

Komplexe Einheitswurzeln

Lemma (Halving Lemma):

n>0 ist gerade, dann sind die Quadrate der

n komplexen n-ten Einheitswurzeln die

n/2 komplexen (n/2)ten Einheitswurzeln.


Komplexe einheitswurzeln4

Komplexe Einheitswurzeln

Lemma (Summation Lemma):

Für jede ganze Zahl und nicht negative ganze Zahl k, nicht durch n teilbar,


Diskrete fouriertransformation

Diskrete Fouriertransformation

Polynom

an

Wir definieren

für

Der Einfachheit halber betrachten wir wieder nur n anstatt 2n.


Diskrete fouriertransformation1

Diskrete Fouriertransformation

Der Vektor y heißt diskrete Fouriertransformation des

Vektors a, oder


Schnelle fouriertransformation

Schnelle Fouriertransformation

FFT nutzt Divide & Conquer Strategie

FFT bildet aus zwei Polynome

der Länge n/2.

Das erste Polynom enthält die Koeffizienten mit geradem Index, das zweite die mit ungeradem Index. Daraus folgt:


Schnelle fouriertransformation1

Schnelle Fouriertransformation

Anstelle der Evaluation des gesamten Polynoms, müssen wir nur noch unsere beiden Teilpolynome über

evaluieren und die Ergenis dann nach obiger Gleichung kombinieren.

Die Zerlegung in Polynome der Länge n/2, lässt uns zwar die Gleiche Rechnung, aber die Größe halbiert sich.

Für unseren Algorithmus ist oBdA n eine Potenz von 2


Rekursive fft

Rekursive FFT

1n length [a] n ist Potenz von 2

  • ifn=1

  • then returna

  • for k  0 ton/2-1

  • do

  • return yy soll ein Spaltenvektor sein


Interpolation

Interpolation

Für n Point-Value Paare

existiert ein eindeutiges Polynom

der Länge n,

so daß

für


Interpolation1

Interpolation

Dazu betrachten wir die Matrizengleichung nach Folie 14

Vandermonde-Matrix, invertierbar falls alle x verschieden


Interpolation2

Interpolation


Interpolation3

Interpolation

Mit der Inversen der Vandermonde-Matrix erhalten wir

Vergleich mit Folie 38: Tausch im Algorithmus von a und y und

mit , nur noch Division von jedem Element durch n.

Es folgt Interpolation hat gleiche Laufzeit wie Evaluation !


Ergebnis

Ergebnis

a,b Vektoren der Länge n, n Potenz von 2

a,b durch 0 zu Länge 2n aufgefüllt


Laufzeit fft

Laufzeit FFT

Laufzeit T(n)=2T(n/2)+Q(n)=Q(nlg n)


Zur veranschaulichung parallele fft

Zur VeranschaulichungParallele FFT


Literatur

Literatur

Cormen, Leiserson, Rivest: Introduction to algorithm

H.W. Lang: Algorithmen in Java


  • Login