Fourierreihen und Fouriertransformation - Fachhochschule ...
Fourierreihen und Fouriertransformation - Fachhochschule ...
Fourierreihen und Fouriertransformation - Fachhochschule ...
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Einführung in die Theorie der<br />
<strong>Fourierreihen</strong><br />
<strong>und</strong><br />
<strong>Fouriertransformation</strong><br />
Prof. Dr. A. Spaenhauer<br />
Prof. Dr. M. Steiner-Curtis<br />
12. November 2013
© Copyright 2000–2007 by Andreas Spaenhauer, FHBB<br />
© Copyright 2007–2013 by Marcel Steiner-Curtis, FHNW<br />
Die Verteilung dieses Dokuments in gedruckter Form ist gestattet, solange sein Inhalt einschliesslich<br />
Autoren- <strong>und</strong> Copyright-Angabe unverändert bleibt <strong>und</strong> die Verteilung kostenlos<br />
erfolgt, abgesehen von einer Gebühr für den Kopiervorgang usw.<br />
Dieses Dokument wurde nicht mit L A T E X gesetzt, sondern mit Word 2010 geschrieben.<br />
Prof. Dr. Marcel Steiner-Curtis<br />
FHNW <strong>Fachhochschule</strong> Nordwestschweiz<br />
Hochschule für Technik<br />
Bahnhofstrasse 6<br />
CH-5210 Windisch<br />
marcel.steiner@fhnw.ch<br />
www.fhnw.ch/personenseiten/marcel.steiner/
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong><br />
Seite i<br />
Liebe Studierende<br />
Ein Fachhochschulstudium in Maschinenbau ohne <strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong><br />
wäre unvollständig. Mit diesem Modul r<strong>und</strong>en Sie Ihre Mathematikausbildung ab.<br />
Mein Ziel ist es, Ihnen eine Einführung in die Theorie der <strong>Fourierreihen</strong> <strong>und</strong> der <strong>Fouriertransformation</strong><br />
zu geben. Zusätzlich werde ich Ihnen viel von meinen Erfahrungen mit dieser<br />
Theorie im Unterricht erzählen <strong>und</strong> ab <strong>und</strong> zu etwas ins Schwärmen geraten. Ich selber wende<br />
die FFT (Fast Fourier Transformation) sehr oft selber an, wenn ich Spektren von Lärm- oder<br />
Erschütterungssignalen anfertige <strong>und</strong> auswerte. Die DFT (Diskrete Fourier Transformation)<br />
ist etwas vom Nützlichsten, was ich jemals in der Mathematik angetroffen habe.<br />
Lernen heisst nicht nur zuhören <strong>und</strong> staunen, wieso der Dozent von etwas begeistert ist,<br />
sondern auch Ihr persönlicher Einsatz muss stimmen. Das Motto muss auch hier heissen:<br />
Übung macht den Meister. Ich erwarte von Ihnen, dass Sie zusätzlich zu den Vorlesungsst<strong>und</strong>en<br />
noch etwa gleich viel Zeit zu Hause für die Übungen <strong>und</strong> die Nacharbeit des Kurses aufwenden.<br />
Einige Aufgaben <strong>und</strong> Lösungen können Sie von meiner Website www.fhnw.ch/<br />
personenseiten/marcel.steiner/ herunterladen.<br />
Das Skriptum basiert im Wesentlichen auf dem gleichnamigen Skriptum meines Kollegen<br />
Andreas Spaenhauer, der an der <strong>Fachhochschule</strong> beider Basel während vielen Jahren als Dozent<br />
in der Abteilung Elektrotechnik tätig war. Hiermit möchte ich Andreas herzlich danken,<br />
dass er mir auch auf diesem Gebiet seine Erfahrungen in Form seines Skriptum weitergegeben<br />
hat.<br />
Sie sind nicht mehr die ersten Studierenden, die mit diesem Skriptum arbeiten. Urteilen Sie<br />
nicht zu hart über die Autoren (<strong>und</strong> die vorangehenden Leser), wenn Sie Fehler <strong>und</strong> Ungereimtheiten<br />
finden, sondern teilen Sie mir diese bitte mit.<br />
12. November 2013, Marcel Steiner-Curtis
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong><br />
ii
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong><br />
iii<br />
Inhaltsverzeichnis<br />
Liebe Studierende ........................................................................................................................ i<br />
Inhaltsverzeichnis ...................................................................................................................... iii<br />
Jean-Baptiste-Joseph Fourier ...................................................................................................... v<br />
1 Einführung ......................................................................................................................... 1<br />
2 Die reelle Fourierreihe ....................................................................................................... 7<br />
2.1 Berechnung der Fourierkoeffizienten .......................................................................... 7<br />
2.1.1 Beispiel (Fourierreihe)........................................................................................ 12<br />
3 Die komplexe Darstellung der Fourierreihe .................................................................... 15<br />
3.1 Fourierreihe ................................................................................................................ 15<br />
3.2 Energie oder Leistung eines Signals .......................................................................... 17<br />
3.2.1 Beispiel (Rechtecksimpulsfolge)........................................................................ 18<br />
3.3 Lösen von partiellen Differenzialgleichungen ........................................................... 20<br />
4 Von der Fourierreihe zur <strong>Fouriertransformation</strong> ............................................................. 27<br />
4.1 Grenzübergang an einem konkreten Beispiel ............................................................ 27<br />
4.2 Der Integralsatz von Fourier (komplexe <strong>und</strong> reelle Darstellung) .............................. 30<br />
4.2.1 Beispiel (Rechtecksfenster) ................................................................................ 34<br />
4.2.2 Beispiel (Dreiecksfunktion)................................................................................ 35<br />
4.2.3 Beispiel (Dirac-Stoss)......................................................................................... 36<br />
4.2.4 Beispiel (Dirac-Kamm) ...................................................................................... 37<br />
4.2.5 Beispiel (Konstante Funktion) ............................................................................ 40<br />
4.2.6 Beispiel (Heaviside'sche Sprungfunktion) ......................................................... 40<br />
4.2.7 Beispiel (Sinus- <strong>und</strong> Kosinusfunktionen) ........................................................... 40<br />
4.3 Eigenschaften der <strong>Fouriertransformation</strong> (Sätze <strong>und</strong> Regeln) ................................... 43<br />
4.4 Korrespondenztabelle zur <strong>Fouriertransformation</strong> ...................................................... 44<br />
4.5 Amplituden- <strong>und</strong> Leistungsspektrum sowie Energie eines Signals ........................... 48<br />
4.5.1 Beispiel (Ungerade Rechtecksschwingung) ....................................................... 48<br />
4.5.2 Beispiel (Hammerschlag) ................................................................................... 51<br />
5 Die diskrete <strong>Fouriertransformation</strong> (DFT) ...................................................................... 57<br />
5.1 Einführung ................................................................................................................. 57<br />
5.2 Berechnung der diskreten Fourierkoeffizienten......................................................... 59<br />
5.2.1 Beispiel (Interpolierendes Fourierpolynom) ...................................................... 60<br />
5.2.2 Beispiel (Random Signal interpolieren) ............................................................. 63<br />
5.2.3 Explizite Lösung des Gleichungssystems - Fourierkoeffizienten ...................... 64<br />
5.3 Die diskrete <strong>Fouriertransformation</strong> (DFT <strong>und</strong> FFT) .................................................. 67<br />
5.3.1 Reelle Schreibweise der DFT ............................................................................. 67<br />
5.3.2 Komplexe Schreibweise der DFT (FFT)............................................................ 68<br />
5.3.3 Zusätzliche Bemerkungen .................................................................................. 69<br />
5.3.4 Matlab-Befehle ................................................................................................... 69<br />
5.3.5 Beispiel (Reelle vs komplexe Matlab-Fourierkoeffizienten) ............................. 71<br />
5.4 Abtastwerte in einem beliebigen Intervall [a, a + T] ................................................. 73
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong><br />
iv<br />
5.4.1 Beispiel (Abgetastete Werte in einem beliebigen Intervall) .............................. 74<br />
5.5 Beispiele <strong>und</strong> Anwendungen ..................................................................................... 76<br />
5.5.1 Beispiel (Entstörung eines Signals) ................................................................... 76<br />
5.5.2 Beispiel (Filterung eines Signals) ...................................................................... 78<br />
6 Anhang: Berechnung der reellen Fourierkoeffizienten ................................................... 81<br />
7 Anhang: Berechnung der komplexen Fourierkoeffizienten ............................................ 85<br />
8 Anhang: Reduktion des Rechenaufwandes durch FFT ................................................... 89<br />
9 Anhang: Auszug aus der Matlab-Dokumentation ........................................................... 93<br />
10 Literaturverzeichnis ........................................................................................................ 97
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong><br />
v<br />
Jean-Baptiste-Joseph Fourier<br />
Biographie aus The Fourier Transform and its Applications, Ronald N. Bracewell, McGraw-<br />
Hill.<br />
Abbildung 1: Baron Jean-Baptiste-Joseph Fourier,<br />
born: March 21, 1768 in Auxerre, France,<br />
died: May 16, 1830, France.<br />
Baron Jean-Baptiste-Joseph Fourier (March 21, 1768-May 16, 1830), born in poor circumstances<br />
in Auxerre, introduced the idea that an arbitrary function, even one defined by different<br />
analytic expressions in adjacent segments of its range (such as a staircase waveform),<br />
could nevertheless be represented by a single analytic expression. This idea encountered resistance<br />
at the time but has proved to be central to many later developments in mathematics,<br />
science, and engineering. It is at the heart of the electrical engineering curriculum today.<br />
Fourier came upon his idea in connection with the problem of the flow of heat in solid bodies,<br />
including the earth.<br />
The formula<br />
1 1 1<br />
x = sin x − sin ( 2 x) − sin ( 3 x) + <br />
2 2 3<br />
was published by Leonhard Euler (1707-1783) before Fourier's work began, so you might like<br />
to ponder the question why Euler did not receive the credit for Fourier's series.<br />
Fourier was obsessed with heat, keeping his rooms uncomfortably hot for visitors, while<br />
also wearing a heavy coat himself. Some traced this eccentricity back to his 3 years in Egypt,<br />
where he went in 1798 with the 165 savants on Napoleon's expedition to civilize the country.<br />
Prior to the expedition Fourier was a simple professor of mathematics, but he now assumed<br />
administrative duties as secretary of the Institut d'Egypte, a scientific body that met in<br />
the harem of the palace of the Beys. Fourier worked on the theory of equations at this time<br />
but his competence at administration led to political and diplomatic assignments that he also<br />
discharged with success. It should be recalled that the ambitious studies in geography, ar-
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong><br />
vi<br />
chaeology, medicine, agriculture, natural history and so on were being carried out at a time<br />
when Napoleon was fighting Syrians in Palestine, repelling Turkish invasions, hunting Murad<br />
Bey, the elusive Mameluke chief, and all this without support of his fleet, which had been<br />
obliterated by Nelson at the Battle of the Nile immediately after the disembarkation.<br />
Shortly before the military capitulation in 1801, the French scientists put to sea but were<br />
promptly captured with all their records by Sidney Smith, commander of the British fleet.<br />
However, in accordance with the gentlemanly spirit of those days, Smith put the men ashore,<br />
retained the documents and collections for safekeeping, and ultimately delivered the material<br />
to Paris in person, except for the Rosetta stone, key to Egyptian hieroglyphics, which stands<br />
today in the British Museum memorializing both Napoleon's launching of Egyptology and his<br />
military failure.<br />
The English physicist Thomas Young (1773-1829), father of linearity, is well known for establishing<br />
the transverse wave nature of light, explaining polarization, and also for introducing<br />
the doublt/pinhole interferometer, which exhibits the Fourier analysis of an optical object.<br />
Less well known is that he shared an interest in Egyptology with Fourier: he worked on the<br />
Rosetta stone, explained the demotic and hieratic scripts as descended from hieroglyphic<br />
writing, and isolated and identified consonantal signs.<br />
Fourier was appointed as Prefect of Isere by Napoleon in 1802 after a brief return to his<br />
former position as Professor of Analysis at the Ecole Polytechnique in Paris. His duties in<br />
Grenoble included taxation, military recruiting, enforcing laws, and carrying out instructions<br />
from Paris and writing reports. He soothed the wo<strong>und</strong>s remaining from the Revolution of<br />
1789, drained 80 000 km 2 of malarial swamps, and built the French section of the road to<br />
Torino.<br />
By 1807, despite official duties, Fourier had written down his theory of heat conduction,<br />
which depended on the essential idea of analyzing the temperature distribution into spatially<br />
sinusoidal components; but doubts expressed by Laplace and Lagrange hindered publication.<br />
Criticisms were also made by Biot and Poisson. Even so, the Institut set the propagation of<br />
heat in solid bodies as the topic for the prize in mathematics for 1811, and the prize was<br />
granted to Fourier but with a citation mentioning lack of generality and rigor. The fact that<br />
publication was then further delayed until 1815 can be seen as an indication of the deep uneasiness<br />
about Fourier analysis that was felt by the great mathematicians of the day.<br />
It is true that the one-dimensional distribution of heat in a straight bar would require a<br />
Fourier integral for its correct expression. Fourier avoided this complication by considering<br />
heat flow in a ring, that is, a bar that has been bent into a circle. In this way, the temperature<br />
distribution is forced to be spatially periodic.<br />
There is essentially no loss of generality because the circumference of the ring can be supposed<br />
larger than the greatest distance that could be of physical interest on a straight bar<br />
conducting heat. This idea of Fourier remains familiar as one of the textbook methods of<br />
approaching the Fourier integral as a limit, starting from a Fourier series representation.<br />
Fourier was placed in a tricky position in 1814, when Napoleon abdicated and set out for<br />
Elba with every likelihood of passing southward through Grenoble, on what has come to be<br />
known today as the Route Napoleon. To greet his old master would jeopardize his standing<br />
with the new king, Louis XVIII, who in any case might not look favorably on old associates<br />
and appointees of the departing emperor. Fourier influenced the choice of a changed route<br />
and kept his job. But the next year Napoleon reappeared in France, this time marching north<br />
through Grenoble where he fired Fourier, who had made himself scarce. Nevertheless, 3 days<br />
later Fourier was appointed Prefect of the Rhone at Lyons, thus surviving two changes of<br />
regime. Of course, only 100 days elapsed before the king was back in control and Napoleon
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong><br />
vii<br />
was on his way to the south Atlantic, never to return. Fourier's days in provincial government<br />
then ended and he moved to Paris to enter a life of science and scientific administration, being<br />
elected to the Academie des Sciences in 1817, to the position of permanent secretary in<br />
1823, and to the Academie Française in 1826. He never married.<br />
At the beginning mention was made of Euler's formula. The formula is correct for π < x <<br />
π but not for other ranges of x. The right hand side is the Fourier series for the sawtooth periodic<br />
function<br />
⎛ x ⎞ ⎞ ⎛<br />
⎟ ⎞<br />
⎜ ⎛ x<br />
⎟ ∗ 1 x<br />
⎜ ⎟Π ΙΙΙ<br />
⎜ .<br />
⎝ 2 ⎠ ⎝ 2π ⎠ 2π<br />
⎝ 2π<br />
⎠<br />
Fourier wrote, aro<strong>und</strong> 1808-1809: “the equation is no longer true when the value of x is<br />
between π and 2π. However, the second side of the equation is still a convergent series but the<br />
sum is not equal to x/2. Euler, who knew this equation, gave it without comment.” (Quotation<br />
from J. Herivel, Joseph Fourier, the Man and the Physicist, Clarendon Press, Oxford, 1975,<br />
p. 319.)
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong><br />
viii
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 1<br />
1 Einführung<br />
Die Theorie der <strong>Fourierreihen</strong> erlaubt es, ein periodisches Signal (Funktion) in eine unendliche<br />
Summe (Reihe) von harmonischen Schwingungen zu zerlegen. Unter einer harmonischen<br />
Schwingung ist eine Funktion/Signal mit einer Funktionsgleichung der Form<br />
f ( t) = Acos<br />
( ω t)<br />
oder<br />
f ( t) = B sin ( ω t)<br />
oder<br />
f ( t) = Acos<br />
( ω t) + B cos ( ω t) = C cos ( ω t + ϕ)<br />
d. h. phasenverschobene Sinus- oder Kosinusfunktionen zu verstehen, aber nicht<br />
f ( t) = Acos ( ω t) + B cos ( 3ω<br />
t)<br />
.<br />
Die harmonischen Schwingungen sind bemerkenswerte Funktionen. Sie haben keine<br />
Sprünge, Ecken oder Kanten. Wir können sie ableiten <strong>und</strong> integrieren so oft wir wollen<br />
ohne eckig oder kantig zu werden. Dabei reproduzieren sie sich ständig, d. h. sie bleiben<br />
Sinus- oder Kosinusfunktionen. In der Physik <strong>und</strong> Elektrotechnik begegnen wir oft periodischen<br />
Funktionen, allerdings nicht unbedingt Sinus- oder Kosinusfunktionen sondern<br />
vielleicht Signalen wie in Abbildung 2.<br />
Abbildung 2: Periodische Signale.<br />
In Abbildung 3 ist das erste Signal von Abbildung 2 gezeichnet zusammen mit immer<br />
besseren Approximationen durch Summen von harmonischen Schwingungen. Der Einfachheit<br />
halber haben wir die Periode 2π gewählt. Die Funktionsgleichungen der Approximationen<br />
lauten:<br />
4<br />
1. Approximation: f1( t) = sin ( t)<br />
π<br />
4 4 4<br />
2. Approximation: f 2<br />
( t) = f1( t) + sin ( 3t<br />
) = sin ( t) + sin ( 3t<br />
)<br />
3π<br />
π 3π<br />
4 4 4 4<br />
3. Approximation: f3( t) = f 2<br />
( t) + sin ( 5t<br />
) = sin ( t) + sin ( 3t<br />
) + sin ( 5t<br />
)<br />
5π<br />
π 3π<br />
5π
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 2<br />
Abbildung 3: Die linken Bilder zeigen jeweils eine Periode des Rechtecksignals f (t) zusammen<br />
mit den Approximationen der Form<br />
n<br />
4 1<br />
f<br />
n<br />
( t) = ∑ sin( ( 2k<br />
−1)<br />
t)<br />
π 2k<br />
−1<br />
k = 1<br />
Mit zunehmendem n verbessern sich die Approximationen. Dies ist auch ersichtlich aus<br />
den Bildern rechts wo jeweils die Differenzen f (t ) – f n (t ) eingezeichnet sind. Die relativ<br />
grossen Differenzen bei den Sprungstellen verschwinden nie ganz (so genanntes Gibbs<br />
Phänomen).<br />
Weil die Funktion f ungerade ist, ist es verständlich, dass nur Sinusfunktionen vorkommen,<br />
denn auch die Sinusfunktionen sind ungerade. Dass der erste Beitrag (mit der grössten<br />
Amplitude) dieselbe Periode (in diesem Fall 2π), im allgemeinen Fall
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 3<br />
T = 2π<br />
/ ω0<br />
hat wie die Funktion f ist ebenfalls verständlich. Die exakte Reproduktion von f würde<br />
theoretisch erst durch eine unendliche Summe, d. h. eine unendliche Reihe erreicht werden.<br />
Diese unendliche Reihe wird die Fourierreihe von f genannt. Sie lautet in diesem Fall<br />
f<br />
( t) 2 u ( t − k) − 1<br />
= ∑ ∞<br />
k =−∞<br />
4 ⎛ 1 1 ⎞<br />
= ⎜sin(<br />
t)<br />
+ sin(3t)<br />
+ sin(5t)<br />
+ ... ⎟<br />
π ⎝ 3 5 ⎠<br />
4 1<br />
= sin (( 2n<br />
−1)<br />
t)<br />
π 2n<br />
−1<br />
∑ ∞<br />
n=<br />
1<br />
Im allgemeinen Fall, wenn das Signal weder gerade noch ungerade ist, wird die Fourierreihe<br />
Sinus- <strong>und</strong> Kosinusfunktionen enthalten <strong>und</strong> die allgemeine Fourierreihe einer solchen<br />
beliebigen periodischen Funktion f mit Periode T = 2π<br />
/ ω0<br />
wird lauten<br />
f<br />
a<br />
0<br />
( t) = + ( a cos( nω<br />
t) + b sin ( nω<br />
t)<br />
)<br />
∑ ∞<br />
2 n = 1<br />
n<br />
Die Koeffizienten a n <strong>und</strong> b n werden die Fourierkoeffizienten von f genannt. Die Fourierkoeffizienten<br />
bestimmen die Amplitude der Schwingung mit der betreffenden Frequenz<br />
nω 0 . Die Amplituden<br />
A = a + b<br />
n<br />
geben an, mit welcher Stärke die betreffende Frequenz im Signal vorkommt. Wie sie berechnet<br />
werden, wird im nächsten Abschnitt angegeben.<br />
Die Bestimmung der Fourierreihe eines periodischen Signals ermöglicht eine spektrale<br />
Analyse des Signals. Wir sprechen von Spektralanalyse.<br />
2<br />
n<br />
0<br />
2<br />
n<br />
n<br />
0<br />
Die Abhängigkeit A n (n) wird das Amplitudenspektrum des Signals f genannt. Im obigen<br />
Beispiel der Rechteckswelle ergibt sich.<br />
f<br />
( t) 2 u ( t − k) − 1<br />
= ∑ ∞<br />
k = −∞
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 4<br />
Abbildung 4: Amplitudenspektrum der<br />
Rechteckswelle. Da nur Sinusterme vorkommen,<br />
gilt<br />
4<br />
An<br />
= bn<br />
=<br />
π 2n<br />
−1<br />
( ) .<br />
Die Terme im Summenzeichen können pro n (gleiche Frequenz) auch als phasenverschobene<br />
Sinus- oder Kosinus-Schwingungen geschrieben werden. Das kann auf mehrere Arten<br />
gemacht werden.<br />
a n cos(nω 0 t )+b n sin(nω 0 t )<br />
⎧<br />
⎪<br />
⎪<br />
⎪<br />
⎪<br />
=<br />
⎪<br />
⎨<br />
⎪<br />
⎪<br />
⎪<br />
⎪<br />
⎪<br />
⎪⎩<br />
a<br />
a<br />
a<br />
a<br />
2<br />
n<br />
2<br />
n<br />
2<br />
n<br />
2<br />
n<br />
+ b<br />
+ b<br />
+ b<br />
+ b<br />
2<br />
n<br />
2<br />
n<br />
2<br />
n<br />
2<br />
n<br />
cos( nω<br />
t + ϕ ),<br />
cos( nω<br />
t − ϕ ),<br />
sin( nω<br />
t + ϕ ),<br />
0<br />
sin( nω<br />
t − ϕ ),<br />
0<br />
0<br />
0<br />
n<br />
n<br />
n<br />
n<br />
b<br />
tan( ϕ<br />
n<br />
) = −<br />
a<br />
b<br />
tan( ϕ<br />
n<br />
) =<br />
a<br />
a<br />
tan( ϕ<br />
n<br />
) =<br />
b<br />
n<br />
n<br />
n<br />
n<br />
a<br />
tan( ϕ<br />
n<br />
) = −<br />
b<br />
n<br />
n<br />
,<br />
,<br />
n<br />
n<br />
,<br />
cos<br />
cos<br />
,<br />
cos<br />
( ϕ )<br />
( ϕ )<br />
( ϕ )<br />
cos<br />
n<br />
n<br />
n<br />
=<br />
=<br />
( ϕ )<br />
n<br />
=<br />
=<br />
a<br />
a<br />
a<br />
2<br />
n<br />
2<br />
n<br />
a<br />
2<br />
n<br />
a<br />
b<br />
n<br />
+ b<br />
+ b<br />
n<br />
+ b<br />
2<br />
n<br />
a<br />
b<br />
n<br />
n<br />
2<br />
n<br />
2<br />
n<br />
+ b<br />
2<br />
n<br />
2<br />
n<br />
Den Term für n = 1, d. h.<br />
oder<br />
( ω t) + b ( ω t)<br />
a1 cos<br />
0 1<br />
sin<br />
0<br />
A<br />
( ω t + )<br />
cos ϕ<br />
1 0 1<br />
wird die Gr<strong>und</strong>welle genannt. Ihre Frequenz ist gleich der Frequenz des Signals.<br />
Die Terme für n > 1, d. h.<br />
an cos( nω 0<br />
t) + bn<br />
sin ( nω0<br />
t)<br />
oder<br />
A cos nω t + ϕ<br />
n<br />
( )<br />
0<br />
n
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 5<br />
werden die n te Harmonische oder die (n – 1) te Oberwelle genannt. Die Frequenzen der<br />
Oberwellen sind natürliche Vielfache der Gr<strong>und</strong>wellenfrequenz.
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 6
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 7<br />
2 Die reelle Fourierreihe<br />
2.1 Berechnung der Fourierkoeffizienten<br />
Sei f ein beliebiges, periodisches Signal mit der Periodendauer T = 2π<br />
/ ω0<br />
. Gesucht ist<br />
eine Darstellung von f in der Form<br />
a0<br />
+ a cos( nω t)<br />
+ b sin( nω<br />
t)<br />
,<br />
∑ ∞<br />
2 n=<br />
1<br />
f (t ) = ( )<br />
n<br />
d. h. eine Berechnungsvorschrift für die Koeffizienten a n <strong>und</strong> b n . Ein ähnliches Problem<br />
hatten wir schon bei den Potenzreihen. Die Potenzreihenentwicklung einer Funktion f ist<br />
sehr nützlich, wenn es darum geht, für beliebige (z. B. nicht periodische) Funktionen approximative<br />
Funktionswerte in der Nähe eines Punktes x 0 zu berechnen. Wir können dann<br />
die Funktion in eine Potenzreihe um diesen Punkt entwickeln, d. h.<br />
2<br />
3<br />
( x) = a + a ( x − x ) + a ( x − x ) + a ( x − x ) + = a ( x − x )<br />
f <br />
0<br />
1<br />
0<br />
2<br />
0<br />
Die Berechnung der a n geschah über die Werte der n ten Ableitungen von f<br />
1<br />
f (x) = f (x 0 ) + f ' (x 0 ) (x – x 0 ) + f '' (x 0 ) (x – x 0 ) 2 + ... = 2<br />
∑ ∞ ( n)<br />
⎛ f ( x ⎞<br />
0<br />
)<br />
n<br />
⎟<br />
⎜ ( x − x0<br />
)<br />
,<br />
n=<br />
0 ⎝ n!<br />
⎠<br />
d. h.<br />
( n<br />
f )<br />
( x0<br />
)<br />
an =<br />
n!<br />
Bei unserem jetzigen Problem sind die Potenzfunktionen mit ihrer Eigenschaft, dass<br />
lim f ( x) = ± ∞<br />
x → ±∞<br />
für eine Approximation nicht geeignet, denn wir wollen gute Approximationen für periodische<br />
Funktionen. Es ist besser, als approximierende Funktionen die Sinus- <strong>und</strong> Kosinusfunktionen<br />
zu nehmen, weil diese schon periodisch sind. Wir sprechen von einer trigonometrischen<br />
Approximation <strong>und</strong> in diesem Fall können wir nicht einfach Ableiten wie<br />
bei den Potenzreihen, sondern wir müssen uns einen anderen Trick für die Berechnung<br />
von a n <strong>und</strong> b n einfallen lassen.<br />
Dazu müssen gewisse Eigenschaften der Sinus- <strong>und</strong> Kosinusfunktionen benutzt werden:<br />
für n ≠ m, n, m ∈ N ist<br />
2π<br />
∫<br />
0<br />
3<br />
0<br />
n<br />
0<br />
0<br />
∑ ∞<br />
n = 0<br />
sin( nt)sin(<br />
mt)<br />
dt = 0<br />
n<br />
0<br />
n<br />
für n ≠ m, n, m ∈ N ist<br />
für alle n, m ∈ N ist<br />
für alle n ∈ N + ist<br />
2π<br />
∫<br />
0<br />
2π<br />
∫<br />
0<br />
2π<br />
∫<br />
0<br />
cos( nt)cos(<br />
mt)<br />
dt = 0<br />
sin( nt)cos(<br />
mt)<br />
dt = 0<br />
sin<br />
2<br />
2π<br />
( nt)<br />
dt = ∫ cos<br />
0<br />
2<br />
( nt)<br />
dt = π
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 8<br />
Dieselben Formeln gelten auch, wenn die Periode nicht 2π ist sondern T = 2π<br />
/ ω0<br />
ist.<br />
Dann gelten die folgenden Formeln.<br />
für n ≠ m, n, m ∈ N ist<br />
T<br />
∫<br />
0<br />
sin( nω0 t)sin(<br />
mω0t)<br />
dt = 0<br />
für n ≠ m, n, m ∈ N ist<br />
für alle n, m ∈ N ist<br />
für alle n ∈ N + ist<br />
T<br />
∫<br />
0<br />
T<br />
∫<br />
0<br />
T<br />
∫<br />
0<br />
cos( nω0 t)cos(<br />
mω0t)<br />
dt = 0<br />
sin( nω t)cos(<br />
mω<br />
t dt = 0<br />
0 0<br />
)<br />
T<br />
2<br />
2 T<br />
sin ( nω0t)<br />
dt = ∫ cos ( nω0t)<br />
dt = 2<br />
0<br />
Zusammenhang mit der Vektorgeometrie<br />
Die jeweils rechts stehenden bestimmten Integrale ordnen jeweils zwei Funktionen f <strong>und</strong><br />
g einen bestimmten Wert zu, nämlich<br />
2π<br />
∫<br />
0<br />
( t) g( t)<br />
f dt .<br />
Es besteht eine Analogie zur Theorie der Vektorräume wo ebenfalls jeweils zwei Vektoren<br />
einer bestimmten Zahl zugeordnet werden können, nämlich das Skalarprodukt. In der<br />
Tat ist es möglich, die wesentliche Struktur eines Vektorraumes, bestehend aus Vektoren,<br />
auf eine Funktionenmenge zu übertragen. Es können gewisse Funktionenmengen wie<br />
z. B. die Menge aller in einem Intervall stückweise stetigen Funktionen oder die Menge<br />
aller in einem Intervall integrierbaren Funktionen zu einem abstrakten Vektorraum machen.<br />
Es wird von Funktionenräumen gesprochen. Im Gegensatz zu den anschaulichen<br />
Vektorräumen R 2 <strong>und</strong> R 3 sind solche Funktionenräume unendlich dimensional, d. h. die<br />
Basis des Funktionenraums besteht aus (abzählbar) unendlich vielen Vektoren. Natürlich<br />
muss erklärt werden, was unter Summe, Differenz, Multiplikation mit einem Faktor <strong>und</strong><br />
eben Skalarprodukt zweier Funktionen zu verstehen ist. Das ist problemlos möglich.<br />
Tabelle 1: Analogie zwischen Vektorraum <strong>und</strong> Funktionenraum.<br />
<br />
Vektoren a b<br />
<br />
, ←⎯<br />
Analogie ⎯<br />
→ Funktionen f, g<br />
<br />
Summe<br />
a + b<br />
( f + g )(t) = f (t) + g(t )<br />
<br />
Differenz<br />
a − b<br />
( f – g )(t) = f (t) – g(t )<br />
Faktor α a (α f )(t) = α f (t)<br />
Skalarprodukt<br />
<br />
a b<br />
<br />
3<br />
2π<br />
= ∑ a b f , g = n n<br />
∫ f ( t)<br />
g(<br />
t)<br />
dt<br />
n = 1<br />
0<br />
Wenn diese Analogie hergestellt wird, dann können viele anschauliche Begriffe <strong>und</strong> Sätze<br />
direkt übertragen werden. Zum Beispiel kann von orthogonalen oder orthonormalen
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 9<br />
Funktionen oder Funktionenmengen gesprochen werden oder lineare Abhängigkeit <strong>und</strong><br />
Unabhängigkeit von Funktionen können definiert werden oder die Projektion einer Funktion<br />
auf einen Funktionenunterraum kann definiert werden. Orthogonal bedeutet, dass das<br />
Skalarprodukt gleich null ist. Zwei Funktionen sind dann orthogonal, wenn ihr Skalarprodukt,<br />
d. h. wenn<br />
2π<br />
f , g = ∫ f ( t)<br />
g(<br />
t)<br />
dt = 0.<br />
0<br />
In dieser Terminologie bilden also die Funktionen sin(m t ) <strong>und</strong> cos(n t ) ein so genanntes<br />
orthogonales Funktionensystem.<br />
Doch jetzt zurück zu unserem eigentlichen Problem, die Koeffizienten a n <strong>und</strong> b n in der<br />
Darstellung<br />
a0<br />
f t = + a cos( nω<br />
t)<br />
+ b sin( nω<br />
t)<br />
zu berechnen.<br />
( ) ( )<br />
∑ ∞<br />
2 n=<br />
1<br />
n<br />
Idee<br />
Wir multiplizieren links <strong>und</strong> rechts mit einem cleveren Term <strong>und</strong> integrieren anschliessend<br />
über eine Periode T. Die Berechnung von b 15 ergibt sich z. B. aus:<br />
0<br />
n<br />
0<br />
1. Multiplikation mit sin(15ω 0 t) links <strong>und</strong> rechts.<br />
a0<br />
f(t) sin(15ω 0 t) = sin(15ω0 t) + 2<br />
∑ ∞ a<br />
=1<br />
n<br />
n<br />
cos( nω<br />
0<br />
t)sin(15ω<br />
0t)<br />
+ ∑ ∞ bn<br />
sin( nω<br />
t)sin(15ω<br />
0t<br />
n=1<br />
2. Integration links <strong>und</strong> rechts über eine Periode ergibt<br />
T<br />
T<br />
a0<br />
∫ f ( t)sin(15ω 0<br />
t)<br />
dt = sin(15<br />
0<br />
)<br />
2<br />
∫ ω t dt<br />
0<br />
0<br />
<br />
<br />
+ ∑ an∫<br />
= 0<br />
0<br />
)<br />
∞ ⎛ T ⎛<br />
⎞<br />
⎟ ⎟ ⎞<br />
⎜ ⎜cos(<br />
nω<br />
⎟<br />
0<br />
t)sin(15ω<br />
0t)<br />
dt<br />
⎜ ⎜ <br />
<br />
⎟<br />
n=<br />
1 0<br />
⎝ ⎝<br />
= 0 ⎠ ⎠<br />
∞ T<br />
⎛<br />
⎞<br />
+ ∑⎜bn<br />
n t t dt ⎟<br />
∫sin(<br />
ω<br />
0<br />
)sin(15ω<br />
0<br />
)<br />
n=<br />
1<br />
⎝<br />
0<br />
<br />
<br />
⎠<br />
T<br />
2<br />
= b15 ∫<br />
sin (15ω0t)<br />
dt<br />
+<br />
0<br />
∞ T<br />
⎛<br />
⎞<br />
∑⎜bn<br />
n t t dt ⎟<br />
∫sin(<br />
ω0<br />
)sin(15ω<br />
0<br />
)<br />
n=<br />
1<br />
⎝<br />
0<br />
<br />
<br />
⎠<br />
T<br />
2<br />
= b15 ∫<br />
sin (15ω0t)<br />
dt<br />
0
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 10<br />
also folgt<br />
T<br />
∫<br />
0<br />
<strong>und</strong> damit folgt<br />
T<br />
f ( t )sin(15ω<br />
0<br />
t ) dt = b 15∫<br />
2<br />
T<br />
sin (15ω 0t)<br />
dt = b 15<br />
2<br />
T<br />
∫<br />
2<br />
b 15 = f t<br />
0<br />
t<br />
T ( )sin(15 ω ) dt.<br />
0<br />
Ein analoges Vorgehen für die anderen Terme liefert:<br />
<strong>und</strong><br />
b n =<br />
a n =<br />
T<br />
∫<br />
0<br />
2<br />
f t n<br />
0<br />
t<br />
T ( )sin( ω ) dt für n∈N<br />
0<br />
T<br />
∫<br />
2<br />
f ( t)cos(<br />
nω0 t)<br />
dt für n∈N 0<br />
T 0<br />
Diese mathematische Begründung für die Berechnung der Fourierkoeffizienten kann auch<br />
anschaulich begründet werden.<br />
Der Koeffizient b 15 z. B. ist die Amplitude der Harmonischen mit Frequenz 15ω 0 , d. h.<br />
b 15 ist ein Mass für den Anteil oder der Stärke, mit welcher diese Harmonische im Signal<br />
steckt, d. h. mit diesem übereinstimmt. Ist die Abweichung vom Signal gross, dann wird<br />
b 15 klein sein <strong>und</strong> umgekehrt. Was mathematisch gemacht wird, ist genau dieses Mass der<br />
Übereinstimmung zu messen. Es wird f mit sin(15ω 0 t ) multipliziert <strong>und</strong> anschliessend<br />
dieses Produkt über eine Periode integriert. Wenn f <strong>und</strong> sin(15ω 0 t ) gut übereinstimmen<br />
(z. B. nur schon gleiches Vorzeichen), dann wird das Integral grösser sein als wenn f (t)<br />
<strong>und</strong> sin(15ω 0 t ) schlecht übereinstimmen.<br />
a0<br />
Es ist der Mittelwert von f über eine Periode, d. h.<br />
2<br />
a 1 = ∫ f ( t)<br />
dt<br />
T 0<br />
0<br />
2<br />
T<br />
=<br />
T<br />
∫<br />
0<br />
f ( t)<br />
dt<br />
T<br />
= f<br />
Zusammenfassung des Resultats<br />
Sei f eine periodische R → R (oder R → C) Funktion mit der Periode T = 2π<br />
/ ω0<br />
<strong>und</strong> in<br />
jedem Punkt soll die links–<strong>und</strong> rechtsseitige Ableitung existieren 1 . Dann kann f als so genannte<br />
(unendliche) Fourierreihe dargestellt werden, d. h.<br />
∞<br />
∞<br />
a0<br />
f t = + a cos nω<br />
t + b sin nω<br />
t<br />
( ) ( ) ( )<br />
∑<br />
<strong>und</strong> die Koeffizienten berechnen sich mit<br />
∑<br />
n<br />
0<br />
2 n=<br />
1<br />
n=<br />
1<br />
n<br />
0<br />
1 Peter Gustav Lejeune Dirichlet (1805 – 1859), französischer Mathematiker, hat bewiesen, dass<br />
dies hinreichend ist für Konvergenz der Fourierreihe.
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 11<br />
a<br />
n<br />
2<br />
=<br />
T<br />
2<br />
bn<br />
=<br />
T<br />
T<br />
∫<br />
0<br />
T<br />
∫<br />
0<br />
f<br />
f<br />
( t ) cos( nω<br />
t)<br />
für<br />
n∈<br />
N<br />
( t ) sin( nω<br />
t ) dt für n∈<br />
N<br />
Die Zahlen a n <strong>und</strong> b n werden die Fourierkoeffizienten von f genannt. An eventuellen<br />
Sprungstellen t 0 ist der Wert der Fourierreihe gleich<br />
+<br />
−<br />
f ( t0<br />
) + f ( t0<br />
)<br />
.<br />
2<br />
In allen stetigen Punkten t konvergiert die Fourierreihe gegen f.<br />
Kurzum. Die üblichen in der Praxis auftretenden periodischen Funktionen (stückweise<br />
stetig, keine Pole, etc.) lassen sich in eine Fourierreihe entwickeln.<br />
0<br />
0<br />
dt<br />
0<br />
Bemerkungen<br />
• Weil<br />
<strong>und</strong><br />
T<br />
∫<br />
0<br />
T<br />
∫<br />
0<br />
f<br />
T + T<br />
0<br />
( t ) cos( nω<br />
0t) dt = ∫ f ( t ) cos( nω<br />
0t)<br />
f<br />
T0<br />
T + T<br />
0<br />
( t ) sin( nω<br />
0t) dt = ∫ f ( t ) sin( nω<br />
0t)<br />
T0<br />
können die Integrale an irgendeiner Stelle T 0 über eine Periode genommen werden.<br />
Die obige Darstellung besteht aus unendlich vielen Termen.<br />
• Wenn wir aus praktischen Gründen an einer besten Approximation durch endlich<br />
viele Sinus- <strong>und</strong> Kosinusterme interessiert sind, dann können wir natürlich nach<br />
endlich vielen Termen abbrechen, denn es kann gezeigt werden, dass<br />
lim a = lim b = 0 .<br />
n → ∞<br />
n<br />
n → ∞<br />
Wenn wir die oben definierte Fourierreihe nach endlich vielen Termen abbrechen,<br />
dann sprechen wir von einer endlichen Fourierreihe <strong>und</strong> es entsteht als Approximation<br />
ein so genanntes trigonometrisches Polynom f n vom Grade n oder auch vom<br />
Fourierpolynom. In Abbildung 3 waren solche approximierenden trigonometrischen<br />
Polynome dargestellt. Eine Approximation durch eine solche endliche Fourierreihe<br />
ist die beste Approximation, wenn 'beste' im so genannten least square Sinn definiert<br />
wird.<br />
• Es kann gezeigt werden, dass das trigonometrische Polynom f n , welches durch<br />
Abbruch der (unendlichen) Fourierreihe entsteht, das folgende Integral minimiert<br />
• Es könnte auch<br />
2<br />
mittlerer quadratischer Fehler ( f ( t ) f ( t )) dt<br />
T<br />
∫<br />
0<br />
f<br />
n<br />
T<br />
=∫ −<br />
0<br />
( t ) − f ( t ) dt<br />
n<br />
dt<br />
dt<br />
n
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 12<br />
genommen werden, d. h. der Betrag der Differenzfläche, aber das Rechnen mit<br />
Beträgen ist wegen der Fallunterscheidungen extrem mühsam.<br />
Wir sprechen auch von einer least square Approximation. In diesem Sinne können wir<br />
also folgendes festhalten.<br />
Least square Approximation einer periodischen Funktion<br />
Die beste least square Approximation einer periodischen (<strong>und</strong> integrierbaren) Funktion f<br />
mit der Periode<br />
2π<br />
T =<br />
ω0<br />
durch ein trigonometrisches Polynom f n ist die nach endlich vielen Termen abgebrochene<br />
Fourierreihe, d. h.<br />
n<br />
n<br />
a0<br />
f ( t ) ~ f<br />
n<br />
( t ) = + ∑ ak<br />
cos( kω<br />
0t) + ∑bk<br />
sin( kω0t)<br />
2<br />
k = 1<br />
<strong>und</strong> die Koeffizienten berechnen sich gemäss<br />
a<br />
k<br />
2<br />
=<br />
T<br />
2<br />
bk<br />
=<br />
T<br />
T<br />
∫<br />
0<br />
T<br />
∫<br />
0<br />
f<br />
f<br />
( t ) cos( kω<br />
t)<br />
dt<br />
für<br />
k = 1<br />
k ≤ n<br />
( t ) sin( kω<br />
t ) dt für k ≤ n<br />
Solche Approximationen sind sehr nützlich, wenn z. B. Temperaturschwankungen im<br />
Verlauf eines Tages oder Temperaturverteilungen in Stäben oder Platten etc. mathematisch<br />
modellieren werden sollten oder wenn der Output eines Linearen Schwingkreises<br />
bei irgendeinem periodischen Input berechnet werden möchte. Sie sind aber nicht geeignet,<br />
wenn bei einem Signal die abgetasteten Werte exakt reproduzieren werden sollten.<br />
Das ist ein Interpolationsproblem, denn es sollte an n äquidistanten Stellen die exakten<br />
Funktionswerte reproduziert werden. Dieses Problem wird von der so genannten diskreten<br />
Fouriertransfomation gelöst (FFT ist ein möglicher <strong>und</strong> sehr schneller Algorithmus<br />
für die Berechnung dieser diskreten <strong>Fouriertransformation</strong>).<br />
0<br />
0<br />
2.1.1 Beispiel (Fourierreihe)<br />
Es sei die Funktion<br />
gegeben, vgl. Abbildung 5.<br />
f (t ) =<br />
⎧ 2<br />
⎪<br />
t,<br />
T<br />
⎨<br />
⎪<br />
1,<br />
⎩<br />
T<br />
0 ≤ t <<br />
2<br />
T<br />
≤ t < T<br />
2
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 13<br />
Abbildung 5: Die periodische Funktion f.<br />
Die Funktion ist weder gerade noch ungerade, d. h. ihre Fourierreihe wird Sinus- <strong>und</strong><br />
Kosinusterme enthalten. Wir berechnen den Mittelwert der Funktion über eine Periode<br />
T<br />
a0<br />
1<br />
3<br />
= f t dt<br />
T<br />
∫ ( ) =<br />
2<br />
4<br />
<strong>und</strong><br />
a n =<br />
T<br />
∫<br />
0<br />
2<br />
f ( t)cos(<br />
nω0 t)<br />
dt<br />
T 0<br />
<strong>und</strong><br />
=<br />
b n =<br />
⎛<br />
2 ⎜ 2<br />
⎜<br />
T ⎜ T<br />
⎝<br />
1<br />
( nπ<br />
)<br />
T<br />
2<br />
∫<br />
0<br />
t cos( nω<br />
= ( cos( nπ<br />
) 1)<br />
T<br />
∫<br />
2<br />
−<br />
2<br />
f ( t)sin(<br />
nω0 t)<br />
dt<br />
T 0<br />
T<br />
0<br />
t)<br />
dt +∫ cos( nω0t)<br />
T<br />
2<br />
⎞<br />
⎟<br />
dt ⎟<br />
⎟<br />
⎠<br />
T<br />
⎛<br />
⎞<br />
⎜ 2<br />
T<br />
2 2<br />
⎟<br />
= ⎜ ∫t<br />
sin( nω<br />
0<br />
t)<br />
dt +∫sin(<br />
nω0t)<br />
dt ⎟<br />
T ⎜ T<br />
0<br />
T<br />
⎟<br />
⎝<br />
2 ⎠<br />
1<br />
= − .<br />
nπ<br />
Damit folgt<br />
3 2 ⎛ 1<br />
1<br />
⎞ 1 ⎛ 1<br />
⎞<br />
f(t) = − ⎜cos(<br />
ω0t)<br />
+ cos(3ω<br />
0t)<br />
+ cos(5ω<br />
0t)<br />
+ ...<br />
2 2<br />
2<br />
⎟ − ⎜sin(<br />
ω0t)<br />
+ sin(2ω<br />
0t)<br />
+ ... ⎟<br />
4 π ⎝ 3<br />
5<br />
⎠ π ⎝ 2<br />
⎠<br />
oder etwas vereinfacht geschrieben<br />
∞<br />
∞<br />
3 2 1<br />
1 1<br />
f ( t)<br />
= − ∑ cos( ( 2n−1<br />
) ω0t) − ( )<br />
2 2<br />
( )<br />
∑ sin nω0t<br />
4 π n = 1 2n−1<br />
π n = 1 n<br />
Das Ampitudenspektrum von f wird wie folgt berechnet.<br />
Der so genannte Gleichstromanteil ist<br />
0 3<br />
A<br />
0<br />
= a =<br />
2 4<br />
<strong>und</strong> die restlichen Amplituden sind
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 14<br />
A = a + b<br />
d. h.<br />
4 1 1<br />
2<br />
A<br />
1<br />
= + = 4 + π = 0.377<br />
4 2 2<br />
π π π<br />
n<br />
1<br />
A =<br />
2 π<br />
2<br />
n<br />
2<br />
=<br />
2<br />
n<br />
0.159<br />
2<br />
9π<br />
+ 4<br />
A<br />
3<br />
= = 0.108<br />
2<br />
9π<br />
1<br />
A<br />
4<br />
= = 0.080<br />
4 π<br />
2<br />
25π<br />
+ 4<br />
A5 = = 0.064<br />
2<br />
25π<br />
<strong>und</strong> so weiter. Damit ergibt sich das Amplitudenspektrum in Abbildung 6.<br />
Abbildung 6: Amplitudenspektrum der<br />
Funktion f.
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 15<br />
3 Die komplexe Darstellung der Fourierreihe<br />
3.1 Fourierreihe<br />
In der Signalverarbeitung ist es üblich, die Fourierreihe eines Signals in der komplexen<br />
Form darzustellen (keine Ausnahmeregeln beim Ableiten oder Integrieren). Die Darstellung<br />
wird kompakter weil rechnerisch nicht zwischen Sinus- <strong>und</strong> Kosinustermen unterschieden<br />
werden muss sondern nur noch komplexe Exponentialterme e ω<br />
− j nω<br />
t<br />
j n t<br />
<strong>und</strong> e<br />
auftreten, welche sehr einfach zu integrieren <strong>und</strong> differenzieren sind. Auch Produkte von<br />
Sinus- <strong>und</strong> Kosinusfunktionen mit Exponentialfunktionen werden zu allgemeinen (komplexen)<br />
Exponentialfunktionen.<br />
Am Anfang war Leonard Euler mit<br />
e j x = cos(x) + j sin(x)<br />
e j ω t = cos(ω t) + j sin(ω t)<br />
e –j ω t<br />
= cos(ω t) – j sin(ω t)<br />
<strong>und</strong> weil wir nach cos(ω t) <strong>und</strong> sin(ω t) auflösen wollen<br />
e j ω t + e –j ω t = 2cos(ω t)<br />
also<br />
cos(ω t ) = 2<br />
1 (e<br />
j ω t + e –j ω t )<br />
<strong>und</strong><br />
also<br />
e j ω t – e –j ω t = 2j sin(ω t)<br />
sin(ω t ) =<br />
1 (e<br />
j ω t – e –j ω t 1<br />
) = – j(e<br />
j ω t – e –j ω t ).<br />
2 j<br />
2<br />
Wenn diese Ausdrücke für cos(ω t) <strong>und</strong> sin(ω t) in der reellen Fourierreihe eingesetzt werden,<br />
ergibt sich<br />
∞<br />
∞<br />
a0<br />
f (t) = + a cos( nω<br />
t)<br />
+ b sin( nω<br />
t)<br />
Wenn nun<br />
<strong>und</strong><br />
∑<br />
∑<br />
n<br />
0<br />
2 n=<br />
1<br />
n=<br />
1<br />
∞<br />
∞<br />
a0 1 jnω0t<br />
− jnω0t<br />
1 jnω0t<br />
− jnω0t<br />
= + ∑ an<br />
( e + e ) −∑bn<br />
j( e − e )<br />
2 n=<br />
1 2<br />
n=<br />
1 2<br />
∞<br />
∞<br />
0 ⎛ an<br />
bn<br />
⎞ jnω<br />
⎛ ⎞<br />
0t<br />
an<br />
bn<br />
− jnω0t<br />
+ ∑⎜<br />
− j ⎟e<br />
+ ⎜ + j ⎟e<br />
2 n=<br />
1 ⎝ 2 2 ⎠<br />
n=<br />
1 ⎝ 2 2 ⎠<br />
∞<br />
∞<br />
0 1<br />
jnω0t<br />
1<br />
− jnω0t<br />
+ ∑ an<br />
− jbn<br />
e + ∑ an<br />
+ jbn<br />
e<br />
2 n=<br />
1 2<br />
n=<br />
1 2<br />
a<br />
= ∑<br />
a<br />
= ( ) ( )<br />
c n = 2<br />
1 (an – jb n )<br />
n<br />
0
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 16<br />
c * 1<br />
n = (an + jb n ) = c –n<br />
2<br />
vereinbart werden, dann folgt für<br />
c<br />
n<br />
⎛<br />
= ⎜<br />
2<br />
⎝<br />
1 T<br />
T<br />
T<br />
2<br />
2<br />
1<br />
∫ f<br />
0<br />
T<br />
T<br />
∫<br />
0<br />
T<br />
∫<br />
ω<br />
0 0<br />
0<br />
− jn<br />
( ) ( ) ( ) ( ) ⎟<br />
0t<br />
t cos nω<br />
t dt − j f t sin nω<br />
t dt = e f ( t )<br />
Und wir gelangen zur komplexen Darstellung der Fourierreihe.<br />
Zusammenfassung des Resultats<br />
Die komplexe Darstellung der Fourierreihe<br />
f (t ) =<br />
<strong>und</strong> die c n berechnen sich gemäss<br />
a<br />
∞<br />
∞<br />
0 jnω0t<br />
* − jnω0t<br />
+ ∑c<br />
n<br />
⋅ e + ∑c<br />
n<br />
⋅ e<br />
2 n=<br />
1<br />
n=<br />
1<br />
c<br />
n<br />
1<br />
=<br />
T<br />
T<br />
∫<br />
0<br />
f<br />
− jnω<br />
t<br />
( t) e dt,<br />
n∈Z.<br />
⎞<br />
⎟<br />
⎠<br />
= ∑ ∞<br />
−∞<br />
n=<br />
⋅ e<br />
jnω0t<br />
c<br />
n<br />
dt<br />
Bemerkungen<br />
• Für die harmonischen Funktionen sind fast alle Fourierkoeffizienten gleich null.<br />
Die komplexen <strong>Fourierreihen</strong> von harmonischen Funktionen bestehen aus zwei<br />
Gliedern:<br />
1 jωt<br />
− jωt<br />
cos ω t = e + e ,<br />
2<br />
<strong>und</strong><br />
f (t ) = ( ) ( )<br />
1 jωt<br />
− jωt<br />
f (t) = ( ω t) = − j ( e −e<br />
)<br />
sin<br />
2<br />
,<br />
cos ω t + sin ω t<br />
1<br />
jωt<br />
1<br />
− jωt<br />
= ( 1− j) e + ( 1+<br />
j) e<br />
2<br />
2<br />
jωt<br />
= c e c<br />
− jωt<br />
e<br />
f (t ) = ( ) ( )<br />
=<br />
c<br />
1<br />
1<br />
e<br />
+<br />
−1<br />
jωt<br />
− jωt<br />
+ c<br />
* 1e<br />
f (t) = Acos ( ω t) + Bsin<br />
( ω t)<br />
1<br />
A−<br />
jB e<br />
2<br />
jωt<br />
= c e c e<br />
jωt<br />
− jωt<br />
= ( ) ( )<br />
=<br />
=<br />
c<br />
c<br />
+<br />
− jωt<br />
+ * 1<br />
1<br />
jωt<br />
− jωt<br />
1<br />
e + c<br />
−1e<br />
jωt<br />
− jωt<br />
e + c<br />
* 1 1e<br />
.<br />
1<br />
2<br />
A+<br />
jB e<br />
• Die Beziehungen zwischen den reellen <strong>und</strong> komplexen Fourierkoeffizienten ergeben<br />
sich allgemein zu.
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 17<br />
Falls c n aus a n <strong>und</strong> b n berechnet werden sollen:<br />
c n = 2<br />
1 (an – j b n )<br />
c -n = 2<br />
1 (an + j b n ) n ≠ 0<br />
*<br />
c -n = c n<br />
a0<br />
c 0 = 2<br />
Falls a n <strong>und</strong> b n aus c n berechnet werden sollen:<br />
a n = c n + c -n = 2 Re(c n )<br />
b n = j (c n – c -n ) = –2 Im(c n )<br />
a -0 = 2 c 0<br />
• Die Amplitude der n ten Harmonischen beträgt<br />
2 2<br />
A n = a + = 2 |c n |<br />
n<br />
b n<br />
<strong>und</strong> es gibt zwei Möglichkeiten, das Amplitudenspektrum anzugeben: asymmetrische<br />
A n oder symmetrische |c n |, welche halb so hoch sind (schwesterliche Aufteilung).<br />
Abbildung 7: Zwei mögliche Darstellungen des Amplitudenspektrums; links: A n<br />
<strong>und</strong> rechts |c n |.<br />
3.2 Energie oder Leistung eines Signals<br />
Die Energie oder Leistung eines Signals f hängt von den Amplituden, d. h. von den Fourierkoeffizienten<br />
ab. In der Wellenlehre kann gezeigt werden, dass die Leistung einer<br />
harmonischen Welle proportional zum Quadrat der Amplitude ist. Die Gesamtleistung<br />
eines periodischen Signals ist proportional zum Quadrat des Effektivwerts<br />
d. h.<br />
T<br />
1 2<br />
∫ f<br />
T 0<br />
( t)<br />
dt ,
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 18<br />
T<br />
⎛ 1<br />
= ⎜<br />
∫<br />
⎝<br />
⎞<br />
.<br />
2<br />
Leistung( f ) k<br />
⎜<br />
f ( t) dt<br />
T ⎟ 0 ⎠<br />
Um zu untersuchen, wie sich die Leistung auf die verschiedenen Harmonischen verteilt<br />
(prozentuale Anteile), kann die Proportionalitätskonstante gleich 1 gesetzt <strong>und</strong> die folgende<br />
Formel benutzt werden.<br />
Formel von Bessel-Parseval<br />
1<br />
T<br />
T<br />
2<br />
2 0<br />
n n 0<br />
Leistung( f ) = P ( f ) = f ( t) dt = ∑ cn<br />
= + ∑ = + ∑<br />
∫<br />
0<br />
n = ∞<br />
n = −∞<br />
2<br />
a<br />
4<br />
∞<br />
n = 1<br />
a<br />
2<br />
+ b<br />
2<br />
2<br />
2<br />
a<br />
4<br />
∞<br />
n = 1<br />
P<br />
n<br />
P n = Leistung der n ten Harmonischen =<br />
a<br />
2<br />
n<br />
+ b<br />
2<br />
2<br />
n<br />
2<br />
An<br />
=<br />
2<br />
3.2.1 Beispiel (Rechtecksimpulsfolge)<br />
Es sei die Rechtecksimpulsfolge f gegeben, vgl. Abbildung 8.<br />
Abbildung 8: Rechtecksimpulsfolge.<br />
Damit berechnen wir die komplexen Fourierkoeffizienten<br />
c<br />
0<br />
T<br />
1 a<br />
= ∫ f ( t)<br />
dt =<br />
T 2<br />
<strong>und</strong><br />
T<br />
T ⎛ 2π<br />
T ⎞<br />
⎜<br />
− jn<br />
2<br />
− jnωt<br />
2<br />
T 2 ⎟<br />
1 − jnωt<br />
a e<br />
a<br />
=<br />
⎜<br />
e 1<br />
⎟<br />
a<br />
c<br />
n ∫ a e dt =<br />
= −<br />
− = −<br />
T<br />
T − jnω<br />
T ⎜ 2π<br />
2π<br />
⎟ 2πjn<br />
0<br />
0<br />
jn jn<br />
⎝ T T ⎠<br />
mit n ∈Z,<br />
n≠0<br />
Daraus folgt die komplexe Darstellung der Fourierreihe:<br />
mit<br />
oder als reelle Darstellung<br />
c<br />
n<br />
0<br />
a jnω0t<br />
f (t) = + ( c n<br />
⋅ e )<br />
aj<br />
=<br />
2π<br />
n<br />
2<br />
∑ ∞<br />
n=<br />
−∞<br />
− jπ<br />
n<br />
( e − 1) , n ∈ Z , n ≠ 0<br />
− jπn<br />
aj − jπn<br />
( e − 1) = ( e − 1)<br />
2πn
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 19<br />
mit<br />
a 2a<br />
1<br />
1<br />
+ ⎜ sin ω0t<br />
+ sin 3ω<br />
0t<br />
+ sin 5ω<br />
0t<br />
+ <br />
2 π ⎝ 3<br />
5<br />
⎛<br />
⎞<br />
f (t) = ( ) ( ) ( ) ⎟<br />
⎠<br />
ω<br />
0 =<br />
2π<br />
T<br />
Tabelle 2: Die ersten 6 Fourierkoeffizienten.<br />
n a n b n c n c -n = c n<br />
*<br />
0 a 0<br />
1 0<br />
2a<br />
π<br />
a<br />
2<br />
a<br />
− j<br />
π<br />
a<br />
j (=c -1 )<br />
π<br />
2 0 0 0 0<br />
3 0<br />
1 2a<br />
1 a<br />
⋅ − j ⋅<br />
3 π<br />
3 π<br />
j<br />
1<br />
3<br />
⋅<br />
a<br />
π<br />
(=c -3 )<br />
4 0 0 0 0<br />
5 0<br />
1 2a<br />
1 a<br />
⋅ − j ⋅<br />
5 π<br />
5 π<br />
j<br />
1<br />
5<br />
⋅<br />
a<br />
π<br />
(=c -5 )<br />
6 0 0 0 0<br />
Die Leistung des gesamten Signals <strong>und</strong> ihre Verteilung auf die Harmonischen ist durch<br />
1<br />
T<br />
T<br />
∫<br />
2<br />
2<br />
2<br />
Leistung( f ) = ( )<br />
0<br />
f<br />
T<br />
2<br />
1<br />
t dt = a dt<br />
T<br />
∫<br />
gegeben <strong>und</strong> die Leistung in den einzelnen Harmonischen<br />
d. h.<br />
P n = Leistung der n ten Harmonischen =<br />
2<br />
⎛ ⎞<br />
0<br />
P ⎜<br />
0<br />
= a = Mittelwert 2 =<br />
0<br />
2<br />
a<br />
=<br />
2<br />
2<br />
a +<br />
2<br />
= 0.5a<br />
2<br />
n<br />
b n<br />
1<br />
⎜<br />
⎝ 2 ⎟⎟ 2<br />
2<br />
a = 0.25a<br />
⎠<br />
4<br />
2 2<br />
a1<br />
+ b1<br />
2 2 2 2<br />
P<br />
1<br />
= = c1<br />
+ c−<br />
1<br />
= a = 0. 203a<br />
2<br />
2<br />
π<br />
2 2<br />
a2<br />
+ b2<br />
2 2<br />
P<br />
2<br />
= = c2<br />
+ c−2<br />
= 0<br />
2<br />
,<br />
2
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 20<br />
2 2<br />
a3<br />
+ b3<br />
2 2 2 2<br />
2<br />
P<br />
3<br />
= = c3<br />
+ c−3<br />
= a = 0. 0225a<br />
2<br />
2<br />
9π<br />
2 2<br />
a4<br />
+ b4<br />
2 2<br />
P4 = = c4<br />
+ c−4<br />
= 0<br />
2<br />
2 2<br />
a5<br />
+ b5<br />
2 2 2 2<br />
2<br />
P<br />
5<br />
= = c5<br />
+ c−5<br />
= a = 0. 0811a<br />
2<br />
2<br />
25π<br />
Damit folgt, dass P 0 + P 1 = 0.453a 2 bereits 90% der Gesamtleistung bestimmen. Um 95%<br />
der Gesamtleistung zu bekommen, müsste noch die 3. Harmonische hinzugenommen<br />
werden.<br />
3.3 Lösen von partiellen Differenzialgleichungen<br />
Eine wichtige Anwendung der Theorie der <strong>Fourierreihen</strong> in der Physik ist das Lösen von<br />
partiellen Differenzialgleichungen. Joseph Fourier hat die Theorie der <strong>Fourierreihen</strong> aus<br />
genau einem solchen Problem entwickelt. Bei Fourier war es das Problem der Wärmeleitung.<br />
Wir wollen hier das Problem einer schwingenden Saite untersuchen. Die Anfangsauslenkung<br />
sei eine vorgegebene Funktion f. Nehmen wir konkret die folgende Situation:<br />
Abbildung 9: Auslenkung einer Saite zum<br />
Zeitpunkt t = 0.<br />
Eine Saite der Länge b (im unausgelenkten Zustand) wird in der Mitte um h nach oben<br />
gezogen, sodass eine Anfangsauslenkung in Form eines gleichschenkligen Dreiecks entsteht.<br />
Die Saite sei am Anfangs – <strong>und</strong> Endpunkt fest eingespannt. Anschliessend wird sie<br />
losgelassen <strong>und</strong> soll ungedämpft schwingen. Gesucht ist der Form der Saite zu einem<br />
beliebigen Zeitpunkt. Mathematisch formuliert wird also eine Funktion u(t, x) der beiden<br />
Variablen t <strong>und</strong> x gesucht, welche die Auslenkung der Saite als Funktion von x <strong>und</strong> t<br />
nach dem Loslassen angibt. Die physikalische Analyse des Problems führt auf die folgende<br />
partielle Differenzialgleichung für die Funktion u(t, x) so genannte Wellengleichung<br />
2<br />
2<br />
∂ u 2 ∂ u<br />
= a<br />
2<br />
2<br />
∂ t ∂ x<br />
wobei a eine Materialkonstante ist.<br />
Prinzipiell sei erwähnt, dass analytische Lösungsmethoden für partielle Differenzialgleichungen<br />
viel komplizierter sind als für gewöhnliche Differenzialgleichungen <strong>und</strong> nur in<br />
seltenen Fällen Rezepte vorhanden sind. Für einige Spezialfälle (wie dieser Fall) kann mit<br />
Hilfe eines so genannten Separationsansatzes (oder Produktansatzes) die Lösung ermittelt
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 21<br />
werden. Der Separationsansatz bedeutet, dass angenommen wird, dass u(t, x) als Produkt<br />
einer reinen Funktion von t <strong>und</strong> einer reinen Funktion von x dargestellt werden kann<br />
(vergleiche die analoge Unterscheidung zwischen separierbaren <strong>und</strong> nicht separierbaren<br />
Differenzialgleichungen 1. Ordnung). Mit Hilfe dieser Annahme kann die partielle Differenzialgleichung<br />
in zwei gewöhnliche Differenzialgleichungen umgewandelt werden <strong>und</strong><br />
zwar durch folgende Überlegung.<br />
1. Allgemeine Lösungsstruktur<br />
u t , x = g t h x . Daraus folgt natürlich, dass<br />
Es sei also ( ) ( ) ( )<br />
<strong>und</strong><br />
sowie<br />
∂ u =<br />
dt<br />
2<br />
∂ u<br />
2<br />
dt<br />
∂ u =<br />
dx<br />
dg<br />
dt<br />
2<br />
d g<br />
=<br />
2<br />
dt<br />
h( x)<br />
h( x)<br />
dh<br />
g( t) dx<br />
<strong>und</strong><br />
2<br />
2<br />
∂ u d h<br />
g( t) 2 =<br />
2<br />
dx dx<br />
Wenn dieser Produktansatz in die partielle Differenzialgleichung eingesetzt wird,<br />
dann folgt<br />
2<br />
2<br />
d g<br />
2 d h<br />
h( x) = a g( t) ,<br />
2<br />
2<br />
dt<br />
dx<br />
d. h.<br />
g ( t)<br />
h′<br />
( x)<br />
=<br />
g t h x<br />
also<br />
( t)<br />
( t)<br />
( )<br />
g h′<br />
= a<br />
2<br />
g h<br />
Auf der linken Seite steht eine reine Funktion von t <strong>und</strong> auf der rechten Seite eine<br />
reine Funktion von x. Gleichheit zweier solcher Funktionen für alle Zeiten t <strong>und</strong><br />
allen x-Werten im Intervall [0, b] ist nur möglich, wenn<br />
g<br />
( t)<br />
2 h′′<br />
( x)<br />
= a = konstant = c<br />
g( t)<br />
h( x)<br />
Daraus folgen zwei gewöhnliche Differenzialgleichungen für die Funktionen g,<br />
resp. h<br />
<strong>und</strong><br />
g <br />
g<br />
( t)<br />
( t)<br />
( )<br />
( x)<br />
( x)<br />
2<br />
=c = − λ
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 22<br />
h<br />
h<br />
2<br />
( x)<br />
c λ<br />
= = −<br />
2 2<br />
( x) a a<br />
aus physikalischen Gründen muss die Konstante c negativ sein <strong>und</strong> es wird deshalb<br />
oft<br />
2<br />
− λ<br />
anstatt c geschrieben.<br />
Mit diesen Bezeichnungen ergeben sich die beiden Differenzialgleichungen<br />
g<br />
( t) + λ<br />
2 g( t) = 0<br />
<strong>und</strong><br />
2<br />
h<br />
λ<br />
( x) + h( x) = 0<br />
2<br />
a<br />
mit den Lösungen<br />
g ( t) = Acos ( λt) + Bsin<br />
( λt)<br />
<strong>und</strong><br />
⎛ λ ⎞ ⎛ λ ⎞<br />
h( x) = C cos ⎜ x⎟ + Dsin<br />
⎜ x⎟ ⎝ a ⎠ ⎝ a ⎠<br />
Daraus folgt<br />
u<br />
⎛ λ ⎞ ⎛ λ ⎞⎞<br />
( t , x ) = ( Acos( λt) + B sin ( λt)<br />
) ⎜ C cos x Dsin<br />
x ⎟<br />
⎠<br />
Über λ wissen wir vorläufig noch nichts.<br />
⎛<br />
⎝<br />
⎜<br />
⎝ a<br />
⎟ +<br />
⎠<br />
⎜<br />
⎝ a<br />
⎟<br />
⎠<br />
2. Erfüllung der Randbedingungen<br />
Die Saite ist fest eingespannt, d. h. für alle Zeiten t muss<br />
u ( t , 0 ) = u ( t , b ) = 0<br />
gelten. Dies entspricht zwei Randbedingungen.<br />
Links u ( t , 0 ) = 0<br />
Weil u ( t , x ) = g ( t) h( x ) muss ( 0 ) = 0<br />
h( 0 ) = C cos( 0) + Dsin<br />
( 0) = C = 0<br />
<strong>und</strong> damit ist die Lösung<br />
ein reiner Sinus.<br />
h<br />
h gelten, also folgt<br />
⎛ λ<br />
⎜<br />
⎝ a<br />
⎞<br />
( x) = Dsin<br />
x⎟ ⎠<br />
Rechts u ( t , b ) = 0<br />
Wiederum weil u ( t , x ) = g ( t) h( x ) muss h( b) = 0<br />
gelten, also folgt
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 23<br />
⎛ λ ⎞<br />
h( b) = Dsin ⎜ b⎟<br />
= 0<br />
⎝ a ⎠<br />
<strong>und</strong> damit<br />
λ<br />
b = nπ<br />
a<br />
also<br />
aπ<br />
λ<br />
n<br />
= n .<br />
b<br />
Offenbar gibt es nur für<br />
aπ<br />
λn<br />
= n, n∈N<br />
b<br />
Lösungen. Es werden die λ n die Eigenwerte der Differenzialgleichung <strong>und</strong><br />
die zugehörigen Lösungsfunktionen<br />
⎛ λ<br />
hn<br />
⎝ a<br />
werden Eigenfunktionen genannt.<br />
π n<br />
⎜<br />
⎝ b<br />
n ⎛ ⎞<br />
( x) = Dsin<br />
⎜ x⎟<br />
= Dsin<br />
x⎟ ⎠<br />
Bis jetzt wissen wir also, dass alle Funktionen der Form<br />
⎛ ⎛ π a n ⎞ ⎛ π a n ⎞⎞<br />
⎛ π n ⎞<br />
u n<br />
( t , x ) = ⎜ Acos⎜ t ⎟ + Bsin<br />
⎜ t ⎟⎟<br />
Dsin<br />
⎜ x⎟,<br />
n∈N<br />
⎝ ⎝ b ⎠ ⎝ b ⎠ ⎠ ⎝ b ⎠<br />
mit noch zu bestimmenden Koeffizienten A, B <strong>und</strong> D Lösungsfunktionen der Differenzialgleichung<br />
sind.<br />
De facto müssen wir aber nicht 3 Unbekannte bestimmen sondern nur 2 Produkte<br />
AD <strong>und</strong> BD. Umbenennung AD in A <strong>und</strong> BD in B führt also auf den Zwischenstand,<br />
dass jede Funktion der Form<br />
⎛ ⎛ π a n ⎞ ⎛ π a n ⎞⎞<br />
⎛ π n ⎞<br />
u n<br />
( t , x ) = ⎜ Acos⎜<br />
t ⎟ + Bsin<br />
⎜ t ⎟⎟sin<br />
⎜ x⎟,<br />
n∈N<br />
⎝ ⎝ b ⎠ ⎝ b ⎠⎠<br />
⎝ b ⎠<br />
Lösung der Differenzialgleichung ist.<br />
Weil die Differenzialgleichung linear ist, gilt das Superpositionsprinzip, d. h. auch<br />
jede Summe (Linearkombination) solcher Funktionen ist Lösung. Das bedeutet,<br />
dass die allgemeinste Lösung die Struktur hat:<br />
∞<br />
∞<br />
⎛⎛<br />
⎞<br />
( ) ∑ ( ) ∑⎜<br />
⎛ π a n ⎞ ⎛ π a n ⎞⎞<br />
⎛ π n ⎞<br />
u t , x = u<br />
⎟<br />
n<br />
t , x =<br />
⎜ An<br />
cos⎜<br />
t ⎟ + Bn<br />
sin ⎜ t ⎟⎟sin<br />
⎜ x⎟<br />
n = 1<br />
n = 1⎝⎝<br />
⎝ b ⎠ ⎝ b ⎠⎠<br />
⎝ b ⎠⎠<br />
⎞<br />
⎠<br />
3. Erfüllung der Anfangsbedingung (Anfangsform der Saite)<br />
Zum Zeitpunkt t = 0 soll h(x) = f (x) (gleichschenkliges Dreieck) sein, d. h.<br />
u ( 0 , x) = f ( x)<br />
.<br />
Ebenfalls zum Zeitpunkt t = 0 soll die Geschwindigkeit der Saite gleich 0 sein,<br />
d. h.
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 24<br />
Die 1. Bedingung ( ) ( )<br />
u<br />
( 0 , x) = 0<br />
u<br />
u 0 , x = f x liefert die Gleichung<br />
∞<br />
( 0, x) = u ( 0, x) = A sin x = f ( x)<br />
∑<br />
n = 1<br />
Die 2. Bedingung ( 0 , x ) = 0<br />
u<br />
( t,<br />
x) = u<br />
( t,<br />
x)<br />
∑ ∞<br />
n = 1<br />
n<br />
∞<br />
∑<br />
n = 1<br />
u liefert wegen<br />
n<br />
n<br />
⎛ π n<br />
⎜<br />
⎝ b<br />
∑ ∞ ⎛⎛<br />
π a n<br />
⎟ ⎞<br />
⎜<br />
⎛ π a n ⎞ π a n ⎛ π a n ⎞⎞<br />
⎛ π n ⎞<br />
=<br />
⎜−<br />
An<br />
sin⎜<br />
t ⎟ + Bn<br />
cos⎜<br />
t ⎟⎟sin⎜<br />
x⎟<br />
n=<br />
1 ⎝ ⎝ b ⎝ b ⎠ b ⎝ b ⎠⎠<br />
⎝ b ⎠⎠<br />
die Gleichung<br />
∞<br />
∞<br />
π a n ⎛ π n ⎞<br />
u<br />
( 0, x) = ∑u<br />
n<br />
( 0, x ) = ∑ Bn<br />
sin ⎜ x⎟<br />
= 0<br />
n = 1<br />
n = 1 b ⎝ b ⎠<br />
Erfüllung der Anfangsbedingung liefert also die beiden folgenden Gleichungen für<br />
die A n <strong>und</strong> B n<br />
∑ ∞ ⎛ π n ⎞<br />
An<br />
sin ⎜ x⎟<br />
= f ( x)<br />
n = 1 ⎝ b ⎠<br />
sowie<br />
⎛ ⎞<br />
∑ ∞ π a n π n<br />
Bn<br />
sin ⎜ x⎟<br />
= 0<br />
n = 1 b ⎝ b ⎠<br />
Beide Gleichungen müssen identisch für alle x [ 0,b<br />
]<br />
⎞<br />
⎟<br />
⎠<br />
∈ erfüllt sein.<br />
Aus der zweiten Gleichung folgt sofort, dass<br />
B n<br />
= 0,<br />
n∈N<br />
.<br />
Im Moment haben wir also für u(t, x) die folgende allgemeinste Lösung<br />
( ) ∑ ∞ ⎛ ⎛ π a n ⎞ ⎛ π n ⎞⎞<br />
u t , x = ⎜ An<br />
cos⎜<br />
t ⎟sin<br />
⎜ x⎟⎟<br />
n = 1⎝<br />
⎝ b ⎠ ⎝ b ⎠⎠<br />
<strong>und</strong> für die A n muss gelten<br />
∑ ∞ ⎛ π n ⎞<br />
An<br />
sin ⎜ x⎟<br />
= f ( x)<br />
n = 1 ⎝ b ⎠<br />
Es müssen nur noch die A n ermittelt werden.<br />
Es müssen also die A n so bestimmt werden, dass<br />
∑ ∞ ⎛ π n ⎞<br />
An<br />
sin ⎜ x⎟<br />
= f<br />
n = 1 ⎝ b ⎠<br />
Wir erkennen auf der linken Seite eine Fourierreihe <strong>und</strong> zwar eine solche mit nur<br />
Sinustermen, d. h. es ist die Fourierreihe einer ungeraden Funktion. Mit anderen<br />
( x)<br />
.
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 25<br />
Worten, wenn es uns gelingt, die Funktion f (gleichschenkliges Dreieck) so periodisch<br />
fortzusetzen, dass eine ungerade Funktion entsteht, welche im Intervall<br />
x ∈ [ 0,b]<br />
mit dem gleichschenkligen Dreieck übereinstimmt, dann hätten wir die<br />
gesuchten A n (ausserhalb des Intervall x ∈ [ 0,b]<br />
interessiert der Verlauf nicht).<br />
Es wird von einer Fouriersinusreihe gesprochen (ungerade periodische Fortsetzung<br />
einer Funktion). Eine solche (natürlich möglichst einfache) periodische Fortsetzung<br />
ist aber kein Problem, siehe Abbildung 10.<br />
Abbildung 10: Ungerade periodische Fortsetzung der Auslenkung der Saite zum Zeitpunkt<br />
t = 0.<br />
Die periodisch fortgesetzte Funktion f hat die Periode 2b <strong>und</strong> wird nur Sinusterme<br />
enthalten, d. h.<br />
( ) ∑ ∞ ⎛ π n ⎞<br />
f x = α<br />
n<br />
sin ⎜ x⎟<br />
n = 1 ⎝ b ⎠<br />
mit den Fourierkoeffizienten<br />
b<br />
1 ⎛ π n ⎞ 2<br />
α<br />
n<br />
= f ⎜ ⎟<br />
b<br />
∫<br />
b b<br />
∫<br />
−b<br />
⎝ ⎠ 0<br />
Die Fourierkoeffizienten berechnen sich zu<br />
8h ⎛ n π ⎞<br />
α n<br />
= A n<br />
= sin⎜<br />
⎟,<br />
n<br />
2<br />
π n ⎝ 2 ⎠<br />
d. h. für f haben wir die Fouriersinusreihe<br />
f<br />
⎛ π n<br />
⎜<br />
⎝ b<br />
( x) sin x dx = f ( x) sin x dx<br />
2<br />
=<br />
b<br />
1, 2,3,<br />
8h ⎛ ⎛ π ⎞ 1 ⎛ 3π<br />
⎞ 1 ⎛ 5π<br />
⎞ ⎞<br />
( x) = ⎜sin<br />
x − sin x + sin x ⎟<br />
⎠<br />
2<br />
π ⎝<br />
⎜<br />
⎝ b<br />
⎟<br />
⎠<br />
3<br />
2<br />
⎜<br />
⎝<br />
Die so gef<strong>und</strong>enen Fourierkoeffizienten α n sind identisch mit den A n in der Funktion<br />
( ) ∑ ∞ ⎛ ⎛ π a n ⎞ ⎛ π n ⎞⎞<br />
u t , x = ⎜ An<br />
cos⎜<br />
t ⎟sin<br />
⎜ x⎟⎟<br />
n = 1⎝<br />
⎝ b ⎠ ⎝ b ⎠⎠<br />
b<br />
⎟<br />
⎠<br />
5<br />
2<br />
⎜<br />
⎝<br />
b<br />
⎟<br />
⎠<br />
⎞<br />
⎟<br />
⎠<br />
Einsetzen liefert also die Lösungsfunktion in Form der folgenden Reihe<br />
( t x) =<br />
u ,<br />
8h<br />
2<br />
π<br />
⎛<br />
⎜<br />
⎝<br />
⎛ π a<br />
cos⎜<br />
⎝ b<br />
⎞ ⎛ π ⎞ 1<br />
t ⎟sin<br />
⎜ x⎟<br />
−<br />
2<br />
⎠ ⎝ b ⎠ 3<br />
⎛ 3π<br />
a<br />
cos⎜<br />
⎝ b<br />
⎞ ⎛ 3π<br />
⎞ 1<br />
t ⎟sin<br />
⎜ x⎟<br />
+<br />
2<br />
⎠ ⎝ b ⎠ 5<br />
⎛ 5π<br />
a<br />
cos⎜<br />
⎝ b<br />
⎞ ⎛<br />
t ⎟sin<br />
⎜<br />
⎠ ⎝<br />
5π<br />
⎞ ⎞<br />
x⎟<br />
⎟<br />
b ⎠ ⎠
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 26<br />
Es stellt sich heraus, dass die Saite trapezförmig schwingt. Die Abbildung 11 zeigt die<br />
Saite zu verschiedenen Zeiten innerhalb der ersten halben Periode.<br />
Abbildung 11: Momentaufnahmen der Auslenkungen der schwingenden Saite.
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 27<br />
4 Von der Fourierreihe zur <strong>Fouriertransformation</strong><br />
4.1 Grenzübergang an einem konkreten Beispiel<br />
Bis jetzt haben wir uns mit Funktionen <strong>und</strong> Signalen beschäftigt, welche sich ständig<br />
wiederholen d. h. periodisch sind. Die Theorie der Fourierreihe hat gezeigt, dass sich solche<br />
periodischen Signale auch wenn sie nicht harmonisch sind trotzdem als Summe von<br />
harmonischen Signalen darstellen lassen. In diesem Abschnitt versuchen wir der Tatsache<br />
Rechnung zu tragen, dass nicht alle Signale in der physikalischen Realität periodisch sind.<br />
Wir untersuchen also wie wir die Ergebnisse der letzten Abschnitte modifizieren müssen<br />
für Signale welche sich nicht ständig wiederholen. Das führt uns ins Gebiet der <strong>Fouriertransformation</strong><br />
<strong>und</strong> des Fourierintegrals.<br />
Abbildung 12: Links: periodische Funktionen führen zur Fourierreihe.<br />
Rechts: absolut integrable Funktionen führen zum Fourierintegral.<br />
Den Übergang von der Fourierreihe zur <strong>Fouriertransformation</strong> können wir uns vielleicht<br />
am besten vorstellen, wenn wir bei einer periodischen Funktion die Periode T nach ∞<br />
streben lassen. Nehmen wir als Beispiel die folgende zunächst noch periodische Rechtecksimpulsfolge<br />
mit Amplitude A = 1.<br />
Abbildung 13: Periodische Rechtecksimpulsfolge<br />
mit Periodendauer T <strong>und</strong><br />
Amplitude A = 1.<br />
Die Fourierreihe dieser geraden Funktion enthält nur Kosinusterme.<br />
f<br />
a<br />
∞<br />
0<br />
( t ) = + a cos( nω<br />
t) = + a cos( nω<br />
t),<br />
∑<br />
∑<br />
n<br />
0<br />
2 n=<br />
1<br />
T n=<br />
1<br />
d. h.<br />
a0<br />
τ<br />
= .<br />
2 T<br />
Für die restlichen Fourierkoeffizienten a n (n > 0) gilt<br />
τ<br />
∞<br />
n<br />
0
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 28<br />
T<br />
2<br />
an<br />
= ∫ f ( t ) cos( nω<br />
0t)<br />
dt<br />
T<br />
0<br />
d. h.<br />
τ<br />
τ<br />
⎛ ⎛ τ ⎞ ⎞ ⎛ τ ⎞<br />
⎜ 2sin<br />
2<br />
⎜ nω<br />
0 ⎟ ⎟ sin ⎜nω0<br />
⎟<br />
2<br />
2 sin( nω<br />
)<br />
2<br />
0t<br />
2<br />
2 2ω<br />
0 2<br />
a n<br />
= cos( nω<br />
0t)<br />
dt<br />
⎜ ⎝ ⎠ ⎟ ⎝ ⎠<br />
T<br />
∫<br />
=<br />
=<br />
=<br />
τ<br />
T nω<br />
0 τ T ⎜ nω<br />
⎟<br />
0<br />
π nω0<br />
−<br />
−<br />
2<br />
2 ⎜<br />
⎟<br />
⎝<br />
⎠<br />
oder mit T = 2π<br />
/ ω0<br />
formuliert<br />
⎛ τ ⎞<br />
sin ⎜π n ⎟<br />
T<br />
a<br />
⎝ ⎠<br />
n<br />
= 2 π n<br />
Um zu verdeutlichen, was mit dem Amplitudenspektrum geschieht, wenn T bei festgehaltenem<br />
τ gegen unendlich strebt (gleichbedeutend mit ω 0 → 0), sind in den folgenden<br />
Figuren die Spektren für verschiedene Werte von<br />
τ<br />
T<br />
dargestellt.<br />
τ<br />
1. Für<br />
T<br />
=<br />
1<br />
2<br />
, d. h., die Pause zwischen den Pulsen ist gleich gross wie die Pulsdau-<br />
π<br />
er. In diesem Fall ist ω<br />
0<br />
= <strong>und</strong> es folgt<br />
τ<br />
a0 τ 1<br />
= =<br />
2 T 2<br />
⎛ ⎞<br />
a =<br />
2 sin⎜ π<br />
n<br />
n ⎟ ,<br />
π n ⎝ 2 ⎠<br />
d. h.<br />
a = 2<br />
1<br />
π<br />
,<br />
<strong>und</strong> so weiter.<br />
a =0 2<br />
a<br />
3<br />
= −<br />
, 2<br />
3π
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 29<br />
Abbildung 14: Periodische Rechtecksimpulsfolge mit Spektrum.<br />
Das Spektrum ist diskret, d. h. besteht aus einzelnen Balken. Die Kurve ist nur<br />
eingezeichnet, um anzudeuten, dass die Balkenspitzen auf einer Kurve liegen mit<br />
der qualitativen Funktionsgleichung<br />
sin<br />
( )<br />
( kω)<br />
F ω = a<br />
ω<br />
, d. h., die Pause zwischen den Pulsen ist 5 mal so gross wie die Puls-<br />
τ<br />
2. Für<br />
T<br />
dauer.<br />
=<br />
1<br />
6<br />
π<br />
In diesem Fall ist ω0 = <strong>und</strong> es folgt<br />
3 τ<br />
a0 τ 1<br />
= =<br />
2 T 6<br />
⎛ ⎞<br />
a =<br />
2 sin⎜<br />
π<br />
n<br />
n ⎟ ,<br />
π n ⎝ 6 ⎠<br />
d. h.<br />
2 1<br />
a<br />
1<br />
= 0.5 = = 0.318<br />
π π<br />
1 ⎛ π ⎞<br />
a<br />
2<br />
= sin ⎜ ⎟=<br />
0.275<br />
π ⎝ 3 ⎠<br />
2 ⎛ π ⎞<br />
a<br />
3<br />
= sin ⎜ ⎟=<br />
0.212<br />
3π<br />
⎝ 2 ⎠<br />
1 ⎛ 2π<br />
⎞<br />
a<br />
4<br />
= sin ⎜ ⎟=<br />
0.138<br />
2π<br />
⎝ 3 ⎠<br />
2 ⎛ 5π<br />
⎞<br />
a<br />
5<br />
= sin ⎜ ⎟=<br />
0.064<br />
5π<br />
⎝ 6 ⎠<br />
1<br />
a<br />
6<br />
= sin ( π ) = 0<br />
3π<br />
2 ⎛ 7π<br />
⎞<br />
a7<br />
= sin ⎜ ⎟= − 0.045<br />
7π<br />
⎝ 6 ⎠
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 30<br />
Abbildung 15: Periodische Rechtecksimpulsfolge mit Spektrum.<br />
3. Was passiert, wenn T → ∞ ?<br />
Das Signal wird zum endlichen Einzelimpuls <strong>und</strong> die einzelnen Spektrallinien rücken<br />
immer näher (im Grenzwert unendlich nahe) zusammen. Die Werte der<br />
Amplituden gehen zwar gegen 0, aber die Form der Kurve bleibt erhalten. Die Situation<br />
ist ähnlich wie beim Übergang von der Binomialverteilung zur Gaussverteilung<br />
in der Statistik. Es macht keinen Sinn mehr, von einer einzelnen Frequenz<br />
zu sprechen, welche im Signal steckt sondern nur noch von einem Frequenzband<br />
oder Frequenzbereich ∆ω. Die entstehende Funktion wird Spektralfunktion oder<br />
Spektraldichte F genannt <strong>und</strong> ist mathematisch die so genannte Fouriertransformierte<br />
von f. Je nach Normierung der Spektralfunktion (es gibt verschiedene Systeme)<br />
ist die Funktionsgleichung in diesem Beispiel<br />
2 ⎛ τ ⎞<br />
F ( ω) = sin ⎜ω<br />
⎟<br />
ω ⎝ 2 ⎠<br />
Abbildung 16: Spektraldichte.<br />
4.2 Der Integralsatz von Fourier (komplexe <strong>und</strong> reelle Darstellung)<br />
Wir wollen in diesem Abschnitt den im vorherigen konkreten Beispiel vollzogenen<br />
Grenzübergang T → ∞ für allgemeine Signale f mathematisch durchführen. Wir gehen<br />
also aus von einem periodischen Signal f <strong>und</strong> untersuchen was mit den Fourierkoeffizienten<br />
geschieht, wenn T → ∞.<br />
Sei f also ein periodisches Signal mit der Periodendauer
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 31<br />
2π<br />
T = .<br />
ω0<br />
Dann lautet die komplexe Fourierreihe von f<br />
mit den Fourierkoeffizienten<br />
c<br />
n<br />
=<br />
T<br />
f(t) = ∑ ∞<br />
n=<br />
−∞<br />
∫<br />
T<br />
−<br />
2<br />
( t)<br />
⋅e<br />
jnω0t<br />
c<br />
n<br />
T<br />
2<br />
1 − jnω0t<br />
f<br />
e<br />
dt,<br />
n∈Z<br />
Beim obigen Integral für c n ist es mathematisch sauberer, als Integrationsvariable x anstatt<br />
t zu verwenden, denn wir haben bei f die unabhängige Variable t <strong>und</strong> bei c n ist<br />
t Integrationsvariable. Weil wir c n in der Formel für f einsetzen müssen, kann dies zu<br />
Verwechslungen führen.<br />
Wenn die c n in der Fourierreihe von f eingesetzt werden, dann erhalten wir die folgende<br />
Darstellung für f<br />
T<br />
⎛ 2π<br />
⎞<br />
π<br />
⎛<br />
⎞ ⎜ ⎟<br />
T = ⎛<br />
⎞<br />
∞<br />
∞<br />
⎜ 2<br />
⎟ ⎝ ω ⎠ ∞ ⎜ ω<br />
0<br />
0<br />
⎟<br />
jnω<br />
t 1<br />
0<br />
− jnω0x<br />
jnω<br />
t ω<br />
0<br />
0<br />
− jnω0x<br />
jnω0t<br />
f ( t) = ∑c<br />
⋅ = ∑ ⎜ ∫ ( ) ⎟ ⋅ = ∑ ⎜<br />
∫ ( ) ⎟<br />
n<br />
e<br />
f x e dx e<br />
f x e dx ⋅ e<br />
n=−∞<br />
n=−∞⎜<br />
T T<br />
⎟<br />
n=−∞<br />
2π<br />
−<br />
⎜ π<br />
−<br />
⎟<br />
⎝ 2<br />
⎠<br />
⎝ ω0<br />
⎠<br />
also<br />
π<br />
⎛<br />
∞ ω<br />
1<br />
f ∑<br />
2π<br />
∫<br />
n=−∞<br />
π<br />
⎜ ⎜⎜⎜ −<br />
⎝ ω0<br />
Betrachten wir zunächst den Ausdruck in Klammern<br />
0<br />
− jnω0x<br />
jnω0t<br />
( t) = f ( x) e dx ⋅ e ω0<br />
π<br />
ω<br />
0<br />
∫<br />
π<br />
−<br />
ω0<br />
f<br />
( x)<br />
e<br />
− jn ω0x<br />
<strong>und</strong> machen den Grenzübergang T → ∞ . Wenn T → ∞ dann ist das gleichbedeutend mit<br />
ω 0 → 0, d. h., dass ω 0 die Bedeutung von dω hat (Abstand zwischen den Spektrallinien z.<br />
B. in der Abbildung 14). Wir ersetzen deshalb ω 0 durch dω <strong>und</strong> nω 0 durch ω. Gleichzeitig<br />
werden die Integrationsgrenzen zu –∞ <strong>und</strong> +∞:<br />
π<br />
ω<br />
0<br />
∫<br />
π<br />
−<br />
ω0<br />
f<br />
− jnω0<br />
x<br />
− jωx<br />
( x) e dx f ( x) e dx = F( ω) = f ( t)<br />
Wir haben wieder t anstatt x geschrieben.<br />
Als Zwischenstand unserer Umformung haben wir<br />
dx<br />
∞<br />
∞<br />
− jωt<br />
= ∫<br />
∫ e dt<br />
−∞<br />
−∞<br />
⎟ ⎟ ⎞<br />
⎟<br />
⎠
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 32<br />
f<br />
1<br />
2π<br />
jnω0t<br />
( t) = F( ω) ⋅ e ω0<br />
∑ ∞<br />
n=<br />
−∞<br />
Auch in dieser Summe muss der Grenzübergang T → ∞ resp. ω 0 → 0 gemacht werden,<br />
d. h. ω 0 durch dω <strong>und</strong> n ω 0 durch ω ersetzt werden. Dann wird aus der Summe ein Integral<br />
f<br />
∞<br />
1 ⎛<br />
⎞ 1<br />
jωt<br />
= ∑<br />
→<br />
∫ ⋅ e dω<br />
2π<br />
dω<br />
0⎝<br />
n=−∞<br />
⎠ 2π<br />
jωt<br />
( t) lim ⎜ F( ω) ⋅ e dω<br />
⎟ = F( ω)<br />
Integralsatz von Fourier (komplexe Darstellung)<br />
Sei f absolut integrabel, d. h.<br />
∞<br />
∫<br />
−∞<br />
f<br />
( t)<br />
soll existieren <strong>und</strong> f erfülle in jedem Intervall die so genannte. Dirichletbedingungen,<br />
d. h., in jedem Punkt t sollen links- <strong>und</strong> rechtsseitige Grenzwerte existieren.<br />
Dann gelten die folgenden Beziehungen zwischen der Zeitfunktion f <strong>und</strong> der so genannten<br />
Spektralfunktion F<br />
f<br />
F<br />
dt<br />
( t) F( ω)<br />
1<br />
= 2 π<br />
−∞<br />
+∞<br />
e<br />
jωt<br />
− jωt<br />
( ω) = f ( t) e dt<br />
∫<br />
−∞<br />
+∞<br />
∫<br />
Die Transformation<br />
f (t) → F(ω)<br />
wird <strong>Fouriertransformation</strong> <strong>und</strong> die Transformation<br />
F(ω) → f (t)<br />
wird inverse <strong>Fouriertransformation</strong> genannt. Die Funktion F wird die Fouriertransformierte<br />
von f sowie f die inverse Fouriertransformierte F genannt.<br />
Die Fouriertransformierte F von f ist physikalisch die Spektralfunktion <strong>und</strong> ist im Allgemeinen<br />
eine komplexwertige Funktion. Die Funktion F enthält die Information über die<br />
spektrale Intensitätsverteilung des Signals <strong>und</strong> die Umkehrformel<br />
f<br />
dω<br />
j<br />
( ) ( ω) ω t<br />
t F e dω<br />
1<br />
= 2 π<br />
+∞<br />
∫<br />
−∞<br />
erlaubt es, bei bekannter Spektralfunktion F das Signal zu ermitteln.<br />
Die Formel<br />
f<br />
j<br />
( ) ( ω) ω t<br />
t F e dω<br />
1<br />
= 2 π<br />
+∞<br />
∫<br />
−∞<br />
wird auch (Fourier'sche) Integraldarstellung von f oder Spektraldarstellung von<br />
f genannt. An eventuellen Sprungstellen t 0 liefert die Auswertung des Fourierintegrals<br />
+∞<br />
−∞
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 33<br />
+∞<br />
∫<br />
−∞<br />
1<br />
j<br />
( ω) ω to<br />
F e dω<br />
2π<br />
den Wert<br />
+<br />
−<br />
f ( t0<br />
) + f ( t0<br />
)<br />
2<br />
In allen stetigen Punkten t konvergiert das Fourierintegral gegen f.<br />
1. Bemerkung<br />
In der Optik hat die Fouriertransformierte, d. h. die Spektralfunktion eine sehr anschauliche<br />
Bedeutung. Wenn wir uns vorstellen f sei ein heterochromatischer Lichtstrahl, dann<br />
zerlegt die <strong>Fouriertransformation</strong> gleich wie ein Glasprisma den Strahl in seine spektralen<br />
Komponenten (Brechung, z. B. in Regentropfen, Regenbogen). In der Optik haben die<br />
einzelnen Frequenzen oder Frequenzbereiche die Bedeutung von Farben. Die <strong>Fouriertransformation</strong><br />
ergibt also das Farbspektrum eines Lichtstrahls.<br />
Die meisten Signale in der Praxis besitzen Fouriertransformierte, d. h. erfüllen die Voraussetzungen<br />
des obigen Satzes (absolut integrabel, etc.), denn sie sind (mathematisch)<br />
beschränkt <strong>und</strong> von endlicher Dauer.<br />
Auch für die Fouriertransformierten gibt es Lexika (Sammlungen der gebräuchlichsten<br />
Fouriertransformierten) <strong>und</strong> auch für die <strong>Fouriertransformation</strong> gibt es Transformationsregeln<br />
analog zu denjenigen der Laplacetransformation.<br />
Die <strong>Fouriertransformation</strong> besitzt mathematisch grosse Ähnlichkeit mit der Laplace<br />
Transformation. Sie unterscheidet sich in zweierlei Hinsicht von der Laplacetransformation<br />
<strong>und</strong> macht sie deshalb mathematisch komplizierter:<br />
1. Die Operatorvariable s bei Fourier ist rein imaginär: s = jω (Laplace s = σ + jω)<br />
2. Das definierende Integral erstreckt sich von –∞ bis +∞ , d. h. es gab kein Einschalten<br />
zum Zeitpunkt t = 0. Oder anders gesagt: Die speziellen Werte bei t = 0<br />
(Einschaltvorgang, d. h. Anfangswerte) haben keinen Einfluss mehr, dass Signal<br />
war schon seit ewigen Zeiten da (wir erhalten die stationäre Lösung einer Differenzialgleichung).<br />
Diese Unterschiede haben zur Folge, dass die Regeln für die <strong>Fouriertransformation</strong> ähnlich<br />
aber nicht identisch mit denjenigen der Laplacetransformation sind.<br />
Die wichtigsten sind hier zusammengestellt. Es wird dasselbe Korrespondenzsymbol wie<br />
beim Laplacieren: f(t) F(ω), resp. F(ω) f(t) verwendet.<br />
2. Bemerkung<br />
In der Literatur gibt es verschiedene Systeme für die Definition der <strong>Fouriertransformation</strong><br />
<strong>und</strong> zwar je nach Normierungskonstante vor den Integralen. Die obige Definition soll<br />
System 1 heissen (willkürliche Festlegung). Der Vollständigkeit halber sollen die anderen<br />
möglichen Systeme an dieser Stelle erwähnt werden. Jedes System hat seine Vor- <strong>und</strong><br />
Nachteile (früher oder später handeln wir uns aber in jedem System einen Faktor 2π ein,<br />
einfach an einer anderen Stelle.) <strong>und</strong> je nach System unterscheiden sich die Funktionsgleichungen<br />
für die Fouriertransformierten in einem Fourierlexikon durch konstante Faktoren.
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 34<br />
1. System<br />
f<br />
F<br />
( t) F( ω)<br />
1<br />
= 2 π<br />
+∞<br />
e<br />
jωt<br />
− jωt<br />
( ω) = f ( t) e dt<br />
∫<br />
−∞<br />
+∞<br />
∫<br />
−∞<br />
dω<br />
2. System<br />
f<br />
F<br />
3. System<br />
f<br />
F<br />
1<br />
( t) = F( ω)<br />
2π<br />
1<br />
dω<br />
− jωt<br />
( ω) = f ( t) e dt<br />
+∞<br />
2π<br />
+∞<br />
∫<br />
−∞<br />
+∞<br />
∫<br />
−∞<br />
( t) = F( ν )<br />
∫<br />
−∞<br />
+∞<br />
e<br />
2πjνt<br />
e<br />
−2πjνt<br />
( ν ) = f ( t) e dt<br />
∫<br />
−∞<br />
jωt<br />
dν<br />
1<br />
mit f ω<br />
ν = =<br />
2π<br />
= T<br />
In diesem Skript verwende ich das oben verwendete 1. System.<br />
(Frequenz)<br />
4.2.1 Beispiel (Rechtecksfenster)<br />
Es sei die Fenster-Funktion<br />
⎧ 1<br />
⎪1,<br />
t <<br />
⎞ ⎞<br />
( ) ⎜<br />
⎛ 1<br />
⎜<br />
⎛ 1<br />
Π t =<br />
2<br />
⎨<br />
= u t + ⎟ − u t − ⎟<br />
⎪ 1 ⎝ 2 ⎠ ⎝ 2 ⎠ 0, t ><br />
⎩ 2<br />
gegeben, vgl. Abbildung 17. Dabei bezeichnet u die Heaviside'sche Sprungfunktion.<br />
Abbildung 17: Rechtecksfenster.<br />
Die <strong>Fouriertransformation</strong> ist<br />
F<br />
+∞<br />
( ω) ∫ f ( t)<br />
1<br />
2<br />
− jωt<br />
= e dt = ∫1e<br />
−∞<br />
1<br />
−<br />
2<br />
− jωt<br />
dt<br />
=<br />
− jωt<br />
e<br />
−<br />
jω<br />
1<br />
2<br />
1<br />
−<br />
2<br />
=<br />
⎛<br />
− ⎜<br />
ω<br />
e<br />
j ⎝<br />
ω ω<br />
1 − j j<br />
2 2<br />
− e<br />
⎞<br />
⎟<br />
=<br />
⎠<br />
⎛ ω ⎞ ⎛ ω ⎞<br />
2sin⎜<br />
⎟ sin⎜<br />
⎟<br />
⎝ 2 ⎠ ⎝ 2 ⎠<br />
=<br />
ω ω<br />
2
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 35<br />
Abbildung 18: <strong>Fouriertransformation</strong> des<br />
Rechteckfensters.<br />
Wenn die Breite des Fensters nicht gleich 1 sondern gleich T ist, dann kann Π Τ (t) geschrieben<br />
werden. Weil die Funktion<br />
sin x<br />
f ( x)<br />
=<br />
x<br />
eine wichtige Funktion im Bereich der Signalverarbeitung ist, gibt es für Sie die spezielle<br />
Bezeichnung sinc(x) (englischer Sprachraum) oder si(x) (deutscher Sprachraum)<br />
x<br />
x<br />
( x)<br />
def sin sin π<br />
sinc = oder<br />
x<br />
πx<br />
Es gilt also<br />
⎛ ω ⎞<br />
sin⎜<br />
⎟⎠<br />
2<br />
Π(t)<br />
⎝<br />
ω<br />
2<br />
4.2.2 Beispiel (Dreiecksfunktion)<br />
Es sei die Dreiecksfunktion<br />
Λ<br />
( t )<br />
⎪⎧<br />
1−<br />
t<br />
= ⎨<br />
⎪⎩ 0,<br />
,<br />
t<br />
t<br />
< 1<br />
> 1<br />
gegeben, vgl. Abbildung 19.<br />
Abbildung 19: Dreiecksfunktion.<br />
Die <strong>Fouriertransformation</strong> ist<br />
F<br />
0<br />
− jωt<br />
− jωt<br />
( ω) = ( 1 + t) e dt + ( 1 − t) e dt<br />
∫<br />
−1<br />
1<br />
∫<br />
−0
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 36<br />
F<br />
2<br />
( ω) = ( 1−<br />
cos ( ω)<br />
)<br />
2<br />
ω<br />
⎛ ⎛ ω ⎞ ⎞<br />
⎜ sin ⎜ ⎟ ⎟<br />
⎜ ⎝ 2 ⎠<br />
=<br />
⎟<br />
⎜ ω ⎟<br />
⎜ ⎟<br />
⎝ 2 ⎠<br />
2<br />
Abbildung 20: <strong>Fouriertransformation</strong>.<br />
Es gilt also<br />
Λ ( t)<br />
⎛ ⎛ ω ⎞ ⎞<br />
⎜ sin ⎜ ⎟ ⎟<br />
⎜ ⎝ 2 ⎠ ⎟<br />
⎜ ω ⎟<br />
⎜ ⎟<br />
⎝ 2 ⎠<br />
2<br />
4.2.3 Beispiel (Dirac-Stoss)<br />
Es sei der Dirac-Stoss δ gegeben. Gleich wie bei der Laplacetransformation approximieren<br />
wir δ durch eine Folge Rechtecksimpulsen f ε (t), d. h. mit der Funktionsfolge<br />
vgl. Abbildung 21.<br />
f ε (t ) =<br />
⎧<br />
⎪<br />
⎨<br />
⎩<br />
⎪<br />
1<br />
,<br />
ε<br />
0,<br />
0 ≤ t ≤ ε<br />
sonst<br />
Abbildung 21: Folge von Rechtecksimpulsen konvergiert zur Diracfunktion.
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 37<br />
Die <strong>Fouriertransformation</strong> der Folge von Rechtecksimpulsen ist<br />
<strong>und</strong> damit folgt<br />
F<br />
δ<br />
F<br />
ε<br />
ε<br />
1 − jωt<br />
1 1 − jωt<br />
j − jωε<br />
( ω) = ∫ e dt = e = ( e −1)<br />
0<br />
ε<br />
ε − jω<br />
ε<br />
0<br />
εω<br />
− jωε<br />
( ω) = lim F ( ω) = lim ( e −1) = lim j = 1<br />
ε →0<br />
ε<br />
ε →0<br />
j<br />
εω<br />
BH<br />
ε →0<br />
−<br />
− jωe<br />
ω<br />
Also ist nicht nur die Laplacetransformierte von δ gleich 1 sondern auch die Fouriertransformierte<br />
von δ.<br />
Für den zeitlich verschobenen Dirac-Stoss δ ( t − t 0<br />
) gilt<br />
− jωt0<br />
F{ δ ( t t )} = F ( )( ω) = e<br />
− .<br />
0<br />
δ t− t<br />
=<br />
Dies würde auch aus dem Verschiebungssatz folgen.<br />
Es gilt also<br />
<strong>und</strong><br />
δ ( t)<br />
1<br />
( t − )<br />
δ t − j ω t0<br />
0<br />
Für die folgenden Funktionen braucht es einen erheblichen mathematischen Aufwand, um<br />
ihre Fourietransformierten zu berechnen so wie wir das oben gemacht haben. Wir brauchen<br />
Kenntnisse der komplexen Funktionentheorie sowie der verallgemeinerten Funktionen.<br />
Dies würde den Rahmen dieses Skripts sprengen <strong>und</strong> deshalb werden die Resultate<br />
mehr oder weniger begründet einfach angegeben.<br />
4.2.4 Beispiel (Dirac-Kamm)<br />
Der Dirac-Kamm oder Sampling oder Replikationsfunktion III(t ), vgl. Abbildung 22.<br />
0<br />
def<br />
∑ ∞<br />
n = −∞<br />
e<br />
III(t ) = δ ( t −n)<br />
Es wird das Symbol III das shah-Symbol genannt. III ist ein Symbol aus der cyrillischen<br />
Schrift <strong>und</strong> es wird mit 'schah' ausgesprochen.<br />
jωε<br />
Abbildung 22: Dirac-Kamm.<br />
Die Funktion III(t ) hat die bemerkenswerte Eigenschaft, dass ihre Fouriertransformierte<br />
F{III(t )} = 2π III(ω)
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 38<br />
ist. Der Faktor 2π kommt von unserer Definition der Fouriertransformierten (1. System).<br />
Hätten wir die Fouriertransformierte im 3. System definiert, dann wäre die Fouriertransformierte<br />
F{ III(t ) } = III(ν )<br />
Die <strong>Fouriertransformation</strong> der Folge von Rechtecksimpulsen ist<br />
∑ ∞<br />
n = −∞<br />
F{ III(t ) } = 2 π δ ( ω − n)<br />
Abbildung 23: <strong>Fouriertransformation</strong><br />
des Dirac-Kamms.<br />
Die Funktion<br />
∑ ∞<br />
n = −∞<br />
III(t ) = δ ( t −n)<br />
ist in vor allem in der Signalverarbeitung sehr nützlich. Wir benutzen sie um abgetastete<br />
Signale zu beschreiben <strong>und</strong> zu verarbeiten. Wenn z. B. f ein (kontinuierliches) Signal ist,<br />
dann ist δ (t–t 0 ) f (t ) der abgetastete Wert von f an der Stelle t 0 wie folgende Überlegung<br />
zeigt. Stellen wir <strong>und</strong> wieder δ (t ) als Grenzwert der schon mehrmals verwendeten Impulsfolge<br />
vor. Dann ist<br />
t0<br />
+ ε<br />
∫<br />
t0<br />
+ ε<br />
δ (t – t 0 ) f(t) = lim f ( t) dt = lim f ( t)dt<br />
ε →0<br />
t0<br />
1<br />
ε<br />
ε →0<br />
1<br />
ε<br />
∫<br />
t0<br />
Sei nun F eine Stammfunktion von f, d. h. F ' = f (F bedeutet also jetzt im Moment nicht<br />
Fouriertransformierte)<br />
( ) ( )<br />
def<br />
1 t0<br />
+ ε F t0<br />
+ ε − F t0<br />
δ (t – t 0 ) f (t) = lim F( t)<br />
= lim<br />
= F′<br />
( t0<br />
) = f ( t0<br />
).<br />
ε →0<br />
t 0<br />
ε<br />
ε →0<br />
ε<br />
Wie ist dieses Resultat zu interpretieren?<br />
Die Schreibweise δ (t – t 0 ) f (t) = f (t 0 ) ist im klassischen mathematischen Sinn falsch.<br />
Denn δ (t – t 0 ) f (t) als Produkt zweier Funktionen ist wieder eine Funktion, aber nicht<br />
etwa die konstante Funktion y = f (t 0 ). Die Funktion δ (t – t 0 ) f (t) bedeutet vielmehr diejenige<br />
Funktion, welche nur gerade an der Stelle t 0 den Wert f (t 0 ) hat, sonst aber überall<br />
identisch gleich 0 ist. Deshalb könnten (sollten) wir auch schreiben<br />
δ (t – t 0 ) f (t) = δ (t – t 0 ) f (t 0 ).
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 39<br />
Abbildung 24: Wirkung von δ (t – t 0 ) f (t ) = δ (t – t 0 ) f (t 0 ).<br />
Multiplikation mit δ (t – t 0 ), resp. δ (t – n) reproduziert (samplet) den Wert des Signals f<br />
an der Stelle t 0 (resp. n).<br />
∑ ∞<br />
n = −∞<br />
Multiplikation von f mit III(t ) = ( t −n)<br />
δ bedeutet also<br />
III(t ) f (t) δ ( t − n) f ( n) = f ( n)<br />
= ∑ ∞ A<br />
n = −∞<br />
d. h. die in regelmässigen Abständen abgetastete Funktion f.<br />
Abbildung 25: Wirkung von III(t ) f (t ).<br />
Auch die Faltung III(t ) * f (t ) von III mit einem Signal f hat eine anschauliche Bedeutung.<br />
Die Faltung mit III bewirkt ständige <strong>und</strong> regelmässige Wiederholung (Replikation)<br />
von f <strong>und</strong> zwar mit der Periode 1. Falls f breiter ist als 1, dann kommt es zu Überlappungen.<br />
Abbildung 26: Wirkung von III(t ) * f (t ).
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 40<br />
4.2.5 Beispiel (Konstante Funktion)<br />
Es sei die konstante Funktion<br />
f ( t) = 1,<br />
− ∞ < t < ∞<br />
Gegeben. Schon bei diesen beiden einfachen Funktionen braucht es einen erheblichen<br />
mathematischen Aufwand (komplexe Funktionentheorie <strong>und</strong> verallgemeinerte Funktionen),<br />
um ihre Fouriertransformierten zu berechnen. Bei der Laplactransformation hatten<br />
wir keine besonderen Schwierigkeiten. Wir geben hier die entsprechenden Korrespondenzen<br />
einfach an.<br />
Bei der Funktion f (t ) = 1 kann die Symmetrieeigenschaft aus der Tabelle in Kapitel 5.2.1<br />
benutzt werden.<br />
Aus<br />
f ( t)<br />
( ω)<br />
F folgt F ( t)<br />
2 π f ( − ω)<br />
Weil wir schon wissen, dass δ ( t)<br />
1 folgt daraus, dass<br />
j o<br />
1 2 πδ ( ω)<br />
<strong>und</strong><br />
t<br />
4.2.6 Beispiel (Heaviside'sche Sprungfunktion)<br />
Für die Heaviside'sche Sprungfunktion gilt<br />
u ( t)<br />
( ω)<br />
e ω 2πδ ( ω − )<br />
1<br />
jω +πδ<br />
4.2.7 Beispiel (Sinus- <strong>und</strong> Kosinusfunktionen)<br />
Weil<br />
1 jωot<br />
− j<br />
sin ωot<br />
= e −e<br />
2 j<br />
<strong>und</strong><br />
1 jωot<br />
− j<br />
cos ω t = e + e 2<br />
ωot<br />
( ) ( )<br />
ωot<br />
( ) ( )<br />
gilt wegen der Linearitätseigenschaft <strong>und</strong> der Korrespondenz<br />
dass<br />
<strong>und</strong><br />
o<br />
j o<br />
e ω t<br />
πδ ( ω −ω o<br />
)<br />
2 ,<br />
sin( ω t 0<br />
) j π ( δ ( ω + ω0 ) −δ<br />
( ω −ω 0<br />
))<br />
cos( ω ) π ( δ ( ω + ω ) + δ ( ω − ))<br />
0t<br />
0<br />
ω 0<br />
Bei den obigen Beispielen 5.2.2 <strong>und</strong> 5.2.3 waren die Zeitfunktionen f gerade Funktionen<br />
<strong>und</strong> F stellte sich als reellwertige Funktion heraus.<br />
ω o
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 41<br />
Gerade <strong>und</strong> ungerade Funktionen<br />
• f ist eine gerade Funktion ⇒ F ist reell<br />
F<br />
∞<br />
∫<br />
−∞<br />
( ω) f ( t) cos( ω t)<br />
= dt<br />
• f ist eine ungerade Funktion ⇒ F ist rein imaginär<br />
• f ist weder gerade noch ungerade ⇒ F ist komplex<br />
F<br />
F<br />
a<br />
b<br />
∞<br />
∫<br />
−∞<br />
( ω) − j f ( t) sin( ω t)<br />
= dt<br />
( ω) = π a( ω) − jπ<br />
b( ω)<br />
+∞<br />
1<br />
π ∫<br />
( ω) = f ( t) cos ( ω t)dt<br />
−∞<br />
+∞<br />
1<br />
π ∫<br />
( ω) = f ( t) sin ( ω t)dt<br />
Die rechts angegebenen Funktionsgleichungen für F im Allgemeinen komplexen Fall<br />
folgen direkt aus dem Fourier'schen Integralsatz, wenn wir e -jωt durch cos(ω t) – j sin(ω t)<br />
ersetzen <strong>und</strong> F in Real- <strong>und</strong> Imaginärteil aufspalten.<br />
F<br />
+∞<br />
− jωt<br />
( ω) = f ( t) e dt<br />
∫<br />
−∞<br />
+∞<br />
∫<br />
−∞<br />
−∞<br />
( )dt<br />
= f ( t) cos( ω t) − j sin ( ω t)<br />
+∞<br />
∫<br />
= ( ) ( ) dt j f ( t) ( t)dt<br />
−∞<br />
f t cos ω t<br />
−<br />
+∞<br />
∫<br />
−∞<br />
sin ω<br />
• Falls f gerade ist, dann ist f (t ) sin(ω t) ungerade <strong>und</strong> das 2. Integral verschwindet.<br />
• Falls f ungerade ist, dann ist f (t) cos(ω t) ungerade <strong>und</strong> das 1. Integral verschwindet.<br />
Wenn wir<br />
F( ω) = π a( ω) − jπ<br />
b( ω)<br />
im Fourierintegral einsetzen, dann bekommen wir die reelle Fourierdarstellung von f, d. h.<br />
f<br />
f<br />
+∞<br />
+∞<br />
1<br />
1<br />
=<br />
2π<br />
∫<br />
2π<br />
∫<br />
jωt<br />
( t) F( ω) e dω<br />
= ( π a( ω) − jπ<br />
b( ω)<br />
)( cos( ω t) − jsin( ω t)<br />
) dω<br />
1<br />
2<br />
+∞<br />
−∞<br />
−∞<br />
( t) = ( a( ω) cos( ω t) + b( ω) sin( ω t)<br />
) dω<br />
+ ( a( ω) sin( ω t) − b( ω) cos( ω t)<br />
) dω<br />
∫<br />
−∞<br />
Diese Integrale lassen sich auf Gr<strong>und</strong> von Symmetrieregeln noch vereinfachen. Dabei ist<br />
zu beachten, dass über ω integriert wird. Es kommt also auf die Symmetrie bezüglich ω<br />
an.<br />
j<br />
2<br />
+∞<br />
∫<br />
−∞
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 42<br />
Wenn<br />
a(ω) ist gerade<br />
b(ω) ist ungerade<br />
cos(ω t) ist gerade<br />
sin(ω t) ist ungerade<br />
gelten, dann folgt, dass<br />
a(ω) cos(ω t) ist gerade<br />
a(ω) sin(ω t) ist ungerade<br />
b(ω) cos(ω t) ist ungerade<br />
b(ω) sin(ω t) ist gerade<br />
Der Imaginärteil des Integrals ist daher null <strong>und</strong> den Realteil kann durch das doppelte<br />
Integral von 0 bis ∞ ersetzt werden.<br />
Die reelle Darstellung des Fourier'schen Integralsatz lautet deshalb:<br />
Integralsatz von Fourier (reelle Darstellung)<br />
f<br />
F<br />
+∞<br />
( t) = ( a( ω) cos( ω t) + b( ω) sin( ω t)<br />
)<br />
∫<br />
0<br />
( ω) = π a( ω) − jπ<br />
b( ω)<br />
mit<br />
a<br />
b<br />
dω<br />
1<br />
π<br />
1<br />
π<br />
+∞<br />
( ω) = f ( t) cos( ω t)<br />
∫<br />
−∞<br />
+∞<br />
dt<br />
( ω) = f ( t) sin( ω t)dt<br />
∫<br />
−∞
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 43<br />
4.3 Eigenschaften der <strong>Fouriertransformation</strong> (Sätze <strong>und</strong> Regeln)<br />
Tabelle 3: Wenn f (t )<br />
F(ω) dann gelten die folgenden Korrespondenzen.<br />
Symmetrie<br />
(Vertauschungssatz)<br />
Parität<br />
Signal f<br />
F(t)<br />
f (t ) gerade<br />
f (t ) ungerade<br />
Fouriertransformierte F<br />
2π f (–ω)<br />
F(ω) ist reell<br />
Linearität λ f + µ g λ F + µ G<br />
Streckung Zeitbereich f (at )<br />
Verschiebung<br />
Zeitbereich<br />
Verschiebung<br />
Bildbereich<br />
Ableitung<br />
Zeitbereich<br />
Ableitung<br />
Bildbereich<br />
Faltung der<br />
Zeitfunktion<br />
(komplexe Multiplikation)<br />
Multiplikation der<br />
Zeitfunktion<br />
(komplexe Faltung)<br />
F<br />
∞<br />
∫<br />
0<br />
( ω) = 2 f ( t) cos( ω t)dt<br />
F(ω) ist rein imaginär<br />
F<br />
∞<br />
∫<br />
0<br />
( ω) = − 2 j f ( t) sin ( ω t)dt<br />
1 ⎛ ω ⎞<br />
F⎜<br />
⎟<br />
a ⎝ a ⎠<br />
f (t – t 0 )<br />
− j ω t0<br />
e F( ω)<br />
ω f ( t)<br />
F ( )<br />
j 1t<br />
e<br />
ω −ω 1<br />
f ′( t)<br />
(<br />
f n )<br />
( t)<br />
j ωF( ω)<br />
( jω) F( ω)<br />
( − t) f ( t)<br />
F ′( ω)<br />
n<br />
( − j t) f ( t)<br />
( n<br />
F )<br />
( ω)<br />
( f ∗ g)( t)<br />
=<br />
F(ω ) G(ω )<br />
∞<br />
∫<br />
−∞<br />
f<br />
f<br />
( τ ) g( t −τ<br />
) dτ<br />
( t) g( t)<br />
1<br />
2π<br />
1<br />
2π<br />
( F ∗ G)( ω)<br />
∞<br />
=<br />
( v) G( ω v)dv<br />
∫ F −<br />
−∞
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 44<br />
4.4 Korrespondenztabelle zur <strong>Fouriertransformation</strong><br />
Es sei<br />
<strong>und</strong><br />
f<br />
j<br />
( ) ( ω) ω t<br />
t F e dω<br />
F<br />
1<br />
= 2 π<br />
+∞<br />
∫<br />
−∞<br />
+∞<br />
− jωt<br />
( ω) f ( t) e dt<br />
∫<br />
= ,<br />
−∞<br />
dann gelten die Korrespondenzen in den Tabelle 4 bis Tabelle 7. Aus Laplace-, Fourier -<br />
<strong>und</strong> z-Transformation, O. Föllinger, Hüthig Verlag, Heidelberg 2000.<br />
Tabelle 4: Korrespondenztabelle zur <strong>Fouriertransformation</strong>, Teil 1.
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 45<br />
Tabelle 5: Korrespondenztabelle zur <strong>Fouriertransformation</strong>, Teil 2.
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 46<br />
Tabelle 6: Korrespondenztabelle zur <strong>Fouriertransformation</strong>, Teil 3.
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 47<br />
Tabelle 7: Korrespondenztabelle zur <strong>Fouriertransformation</strong>, Teil 4.
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 48<br />
4.5 Amplituden- <strong>und</strong> Leistungsspektrum sowie Energie eines Signals<br />
Die Fouriertransformierte eines Signals f ist im Allgemeinen eine komplexwertige Funktion.<br />
Die Funktion F kann also entweder als<br />
F ω = π a ω − jπ<br />
b ω<br />
( ) ( ) ( )<br />
oder in der exponentiellen komplexen Form<br />
F ω = A ω e<br />
geschrieben werden.<br />
Wir definiere das Amplituden(dichte)spektrum<br />
A ω = F ω<br />
j ( ω )<br />
( ) ( ) ϕ<br />
( ) ( )<br />
das Phasen(dichte)spektrum<br />
ϕ( ω) = Arg( F( ω)<br />
) = ∠F( ω)<br />
<strong>und</strong> das Leistungs(dichte)spektrum<br />
1<br />
P ( ω) = F( ω) 2<br />
2π<br />
Um Gesamtenergien <strong>und</strong> Leistungen zu berechnen ist der folgende Satz sehr wichtig (gilt<br />
für Signale endlicher Energie, d. h.<br />
Satz von Parseval<br />
∞<br />
∫<br />
−∞<br />
f<br />
∞<br />
∫<br />
−∞<br />
f<br />
2<br />
( t) dt < ∞<br />
2<br />
( t) dt F( ω)<br />
∞<br />
1<br />
2<br />
= ∫ dω<br />
2π<br />
−∞<br />
.<br />
4.5.1 Beispiel (Ungerade Rechtecksschwingung)<br />
Es sei die Funktion<br />
f ( t) = A( u( t + t0 ) − 2u( t) + u( t −t 0<br />
))<br />
Mit der Amplitude A gegeben, vgl. Abbildung 27. Dabei bezeichnet u die Heaviside'sche<br />
Sprungfunktion.<br />
Abbildung 27: Ungerade Rechtecksschwingung<br />
mit Amplitue A.
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 49<br />
1. Integraldarstellung in reeller Form<br />
Wir setzen die Integrale<br />
mit<br />
f<br />
+∞<br />
∫<br />
0<br />
( t) = ( a( ω) cos ( ω t) + b( ω) sin( ω t)<br />
) dω<br />
1<br />
a( ω) = ∫ f ( t) cos( ω t)<br />
dt<br />
π<br />
−∞<br />
+∞<br />
1<br />
b( ω) = ∫ f ( t) sin( ω t)dt<br />
π<br />
−∞<br />
an. Weil f eine ungerade Funktion ist, hat es nur Sinusbeiträge <strong>und</strong><br />
a(ω) = 0.<br />
Andererseits ist<br />
b<br />
∞<br />
∫<br />
−∞<br />
1<br />
2<br />
=<br />
π<br />
π<br />
∫<br />
t<br />
+∞<br />
2A<br />
πω<br />
2A<br />
(<br />
0<br />
−1<br />
).<br />
πω<br />
0<br />
t0<br />
( ω ) f ( t) sin( ω t) dt = ( − A) sin( ω t) dt = cos( ω t) = cos( ω t )<br />
Weil<br />
folgt<br />
also<br />
<strong>und</strong><br />
f<br />
F<br />
0<br />
2<br />
( 2α<br />
) 2 sin ( α )<br />
1 − cos =<br />
b<br />
4A<br />
2 ω t0<br />
⎛ ⎞<br />
( ω ) = − sin ⎜ ⎟<br />
⎠<br />
+∞<br />
4A<br />
πω<br />
πω<br />
⎛ ω t<br />
⎝ 2<br />
2 0<br />
( t) = − sin ⎜ ⎟sin( ω t) dω<br />
∫<br />
0<br />
2<br />
( ω ) = − jπ<br />
b( ω) = sin ⎜ j.<br />
⎝<br />
⎞<br />
⎠<br />
2<br />
⎛ ω t<br />
⎝ 2<br />
4A<br />
0<br />
2. Integraldarstellung in komplexer Form<br />
Obwohl wir oben schon F berechnet haben, soll an dieser Stelle auch der komplexe<br />
Rechnungsgang gezeigt werden.<br />
F<br />
∞<br />
∫<br />
−∞<br />
( ω) f ( t)<br />
− jωt<br />
= e dt<br />
=<br />
0 t<br />
− jωt<br />
∫<br />
Ae<br />
dt<br />
+<br />
−t0 0<br />
= −<br />
A<br />
e<br />
jω<br />
ω<br />
0<br />
∫ ( − A )<br />
A<br />
jω<br />
e<br />
− jωt<br />
dt<br />
− jωt<br />
0<br />
− jωt<br />
t0<br />
+ e<br />
−t0 0<br />
⎟<br />
⎠<br />
⎞<br />
0
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 50<br />
Weil wiederum<br />
folgt gleich wie oben<br />
A ⎛ − ⎜ −<br />
jω<br />
⎝<br />
A<br />
e<br />
jω<br />
⎞ A<br />
⎟ + e<br />
⎠ jω<br />
= −<br />
jωt0<br />
− jωt0<br />
A<br />
= − +<br />
jω<br />
A<br />
jω<br />
jωt0<br />
− jω<br />
0<br />
( e + e )<br />
2 t<br />
= − 2A<br />
j<br />
ω<br />
t<br />
( cos( ω ) 1)<br />
0 −<br />
2<br />
( 2α<br />
) 2sin ( α )<br />
1 − cos =<br />
F<br />
4A<br />
2 ω t0<br />
⎛ ⎞<br />
( ω ) = j sin ⎜ ⎟<br />
⎠<br />
Die komplexe Integraldarstellung von f wird zu<br />
f<br />
ω<br />
4A<br />
ω<br />
2<br />
j<br />
( t) j e<br />
ω t<br />
= sin ⎜ ⎟ dω<br />
2π<br />
∫<br />
⎝<br />
⎛ ω t<br />
⎝ 2<br />
2<br />
+∞<br />
1 0<br />
3. Amplituden(dichte)spektrum<br />
Wir berechnen das Amplituden(dichte)spektrum<br />
also<br />
−∞<br />
4A<br />
⎛ ω t0<br />
⎞<br />
F =<br />
ω ⎝ 2 ⎠<br />
2<br />
j ( ) ( ω )<br />
( ) ϕ ω<br />
j<br />
ω = sin ⎜ ⎟ e A( ω) e<br />
ϕ<br />
A<br />
⎛ ⎞<br />
( ω ) = sin ⎜ ⎟<br />
⎠<br />
⎝<br />
2<br />
⎞<br />
⎠<br />
4A<br />
2 ω t0<br />
ω<br />
.<br />
−<br />
A<br />
jω<br />
Abbildung 28: Amplituden(dichte)spektrum.<br />
4. Phasen(dichte)spektrum<br />
Wir berechnen das Phasen(dichte)spektrum<br />
also<br />
F<br />
4A<br />
2 t0<br />
⎛ ⎞<br />
( ω ) = j sin ⎜ ⎟<br />
⎠<br />
ω<br />
⎝<br />
ω<br />
2
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 51<br />
Arg<br />
( F ( ω)<br />
) =∠F( ω)<br />
⎧π<br />
⎪<br />
,<br />
2<br />
= ⎨<br />
⎪ π<br />
− ,<br />
⎩ 2<br />
ω > 0<br />
ω < 0<br />
Abbildung 29: Phasen(dichte)spektrum.<br />
4.5.2 Beispiel (Hammerschlag)<br />
Es sei die Funktion<br />
f<br />
( t) = u( t)<br />
t e<br />
−αt<br />
=<br />
⎧<br />
⎨<br />
⎩<br />
t e<br />
0,<br />
−αt<br />
, t ≥0<br />
t < 0<br />
mit α > 0 gegeben, vgl. Abbildung 30. Dabei bezeichnet u die Heaviside'sche<br />
Sprungfunktion.<br />
Abbildung 30: Hammerschlag.<br />
1. Integraldarstellung in reeller Form<br />
Wir setzen die Integrale<br />
mit<br />
an. Dann berechnen wir<br />
f<br />
+∞<br />
∫<br />
0<br />
( t) = ( a( ω) cos ( ω t) + b( ω) sin( ω t)<br />
) dω<br />
a<br />
b<br />
1<br />
π<br />
1<br />
π<br />
+∞<br />
( ω) = f ( t) cos( ω t)<br />
∫<br />
−∞<br />
+∞<br />
dt<br />
( ω) = f ( t) sin( ω t)dt<br />
∫<br />
−∞
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 52<br />
a<br />
+∞<br />
1<br />
1<br />
=<br />
π<br />
∫<br />
π<br />
∫<br />
−αt<br />
( ω) f ( t) cos( ω t) dt = t e cos( ω t)<br />
b<br />
−∞<br />
+∞<br />
−αt<br />
( ω) f ( t) sin( ω t) dt = t e sin( ω t)<br />
+∞<br />
1<br />
1<br />
=<br />
π<br />
∫<br />
π<br />
∫<br />
−∞<br />
0<br />
+∞<br />
0<br />
dt<br />
dt<br />
=<br />
=<br />
sehr mühsame Rechnung<br />
<br />
sehr mühsame Rechnung<br />
<br />
1<br />
=<br />
π<br />
1<br />
=<br />
π<br />
2 2<br />
α −ω<br />
2 2<br />
( α + ω ) 2<br />
2αω<br />
2 2<br />
( α + ω ) 2<br />
Bei diesem Signal wird klar, warum die komplexe Rechnung (siehe gleich nachher)<br />
sehr viel zeitsparender als die soeben ausgeführte reelle Rechnung mit den mühsamen<br />
Integralen ist.<br />
f<br />
+∞<br />
∫<br />
0<br />
( t) = ( a( ω) cos( ω t) + b( ω) sin( ω t)<br />
) dω<br />
1<br />
+<br />
π<br />
+∞<br />
∫<br />
0<br />
⎛ 2 2<br />
⎜ α −ω<br />
⎝<br />
2 2<br />
( α + ω )<br />
2<br />
cos<br />
( ω t)<br />
+<br />
2αω<br />
2 2<br />
( α + ω )<br />
2<br />
sin<br />
⎞<br />
⎟<br />
⎠<br />
( ω t) ⎟ dω<br />
<strong>und</strong><br />
F<br />
( ω) = π a( ω) − jπ<br />
b( ω)<br />
=<br />
2 2<br />
α −ω<br />
−<br />
2αω<br />
2 2 2 2 2<br />
( α + ω ) ( α + ω )<br />
2<br />
j.<br />
2. Integraldarstellung in komplexer Form<br />
Obwohl wir oben schon F berechnet haben, soll an dieser Stelle auch der komplexe<br />
Rechnungsgang gezeigt werden.<br />
F<br />
∞<br />
∞<br />
( ) = − j ωt<br />
−αt<br />
− jωt<br />
− ( + )<br />
ω ∫ ( ) = ∫<br />
= ∫<br />
t α jω<br />
f t e dt t e e dt t e<br />
−∞<br />
∞<br />
( α + jω<br />
) −t( α + jω<br />
)<br />
FS ⎛<br />
−t<br />
⎜<br />
te e<br />
dt =<br />
− −<br />
⎝ α + jω<br />
( α + j )<br />
2<br />
0 0<br />
ω<br />
2 2 2 2<br />
( + jω) ( α −ω<br />
) + ( 2αω)<br />
2 2<br />
( α −ω<br />
− 2αωj)<br />
1<br />
1<br />
= =<br />
= =<br />
2 2<br />
α −ω<br />
⎞<br />
⎟<br />
⎠<br />
2 2 2 2 2<br />
( α + ω ) ( α ω )<br />
2<br />
α +<br />
−<br />
∞<br />
0<br />
2αω<br />
2<br />
j<br />
Integraldarstellung von<br />
f<br />
( t)<br />
+∞ 2 2<br />
⎜ α −ω<br />
2αω<br />
= −<br />
2<br />
1<br />
2π<br />
∫<br />
−∞<br />
⎛<br />
⎜<br />
⎝<br />
2 2 2 2 2<br />
( α + ω ) ( α + ω )<br />
⎞<br />
j ⎟e<br />
⎟<br />
⎠<br />
j ω t<br />
d<br />
ω<br />
3. Amplituden(dichte)spektrum:<br />
Wir berechnen das Amplituden(dichte)spektrum<br />
also<br />
1<br />
2 2<br />
jϕ<br />
( ω )<br />
jϕ<br />
F ( ω)<br />
= e = −<br />
j e =<br />
2<br />
2<br />
( α + jω)<br />
A<br />
( ω)<br />
α −ω<br />
2αω<br />
2 2 2 2 2<br />
( α + ω ) ( α + ω )<br />
2 2<br />
α −ω<br />
2αω<br />
= − j =<br />
2 2 2 2 2 2<br />
2 2<br />
( α + ω ) ( α + ω ) α + ω<br />
1<br />
( ω ) jϕ<br />
( ω )<br />
( )<br />
A ω e
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 53<br />
Abbildung 31: Amplituden(dichte)spektrum.<br />
4. Phasen(dichte)spektrum<br />
Wir berechnen das Phasen(dichte)spektrum<br />
( ω)<br />
=<br />
2 2<br />
α −ω<br />
2αω<br />
F<br />
2<br />
−<br />
2 2 2 2 2<br />
( α + ω ) ( α + ω )<br />
j<br />
also<br />
<strong>und</strong><br />
Arg<br />
− 2αω<br />
⎜<br />
2<br />
⎝α<br />
− ω<br />
⎛ ⎞<br />
( F ( ω)<br />
) ∠F( ω) = arctan ⎟<br />
⎠<br />
cos<br />
=<br />
2<br />
2 2<br />
α −ω<br />
( ∠F ( ω)<br />
) =<br />
2<br />
2 2<br />
α + ω<br />
Abbildung 32: Phasen(dichte)spektrum.<br />
5. Leistungs(dichte)spektrum<br />
Das Leistungsspektrum des Signals ist<br />
P<br />
1<br />
2π<br />
( ω) = F( ω)<br />
2 1 1<br />
=<br />
2π<br />
2 2<br />
( α + ω ) 2
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 54<br />
Abbildung 33: Leistungs(dichte)spektrum.<br />
Die Gesamtleistung beträgt<br />
Gesamtleis tung<br />
∞<br />
∞<br />
∞<br />
2 1<br />
1 ⎛ 1 ⎞<br />
= ⎜<br />
⎟ dω<br />
2 2<br />
2π<br />
2π<br />
−∞<br />
−∞<br />
−∞⎝<br />
α + ω ⎠<br />
2<br />
( f ) ∫ f ( t) dt = ∫ F( ω) dω<br />
= ∫<br />
∞<br />
1 1<br />
FS<br />
1 ⎛<br />
= ∫ dω<br />
= ⎜<br />
π<br />
0<br />
1<br />
= .<br />
3<br />
4α<br />
Die Leistung im Frequenzband [–α, α] beträgt<br />
Leistung<br />
Damit folgt<br />
1<br />
2π<br />
α<br />
ω<br />
2 2 2 ⎜ 2 2 2<br />
( α + ω ) π ⎝ 2α<br />
( α + ω )<br />
2<br />
( f ) [ −α<br />
, α ] = ∫ F( ω) dω<br />
= ∫<br />
−α<br />
Leistung im Frequenzband<br />
Gesamtleistung<br />
Bemerkung<br />
Da das betrachtete Signal<br />
1<br />
2π<br />
α<br />
−α<br />
⎛ 1<br />
⎟ ⎞<br />
⎜<br />
2 2<br />
⎝α<br />
+ ω ⎠<br />
1 ⎛ ω 1 ⎛ ω ⎞⎞<br />
=<br />
arctan<br />
2 2 2 3<br />
π<br />
⎜<br />
+ ⎜ ⎟<br />
2α<br />
( α ω ) 2α<br />
α<br />
⎟<br />
⎝ +<br />
⎝ ⎠⎠<br />
1 ⎞<br />
⎜<br />
⎛ π<br />
= 1 + 3<br />
⎟<br />
4 ⎝ 2 .<br />
πα ⎠<br />
[ − α,<br />
α ]<br />
f<br />
( t)<br />
=<br />
⎧t<br />
e<br />
= ⎨<br />
⎩0,<br />
−αt<br />
2<br />
dω<br />
α<br />
1 ⎛ π ⎞<br />
1<br />
3<br />
⎜ + ⎟<br />
4πα<br />
⎝ 2 ⎠<br />
=<br />
1<br />
3<br />
4α<br />
,<br />
t ≥0<br />
t < 0<br />
0<br />
1<br />
+<br />
3<br />
2α<br />
2<br />
⎛ ω ⎞⎞<br />
arctan⎜<br />
⎟<br />
⎟<br />
⎝ α ⎠⎠<br />
2 + π<br />
= 0.818 ~82%<br />
2π<br />
mit α > 0 für t < 0 verschwindet, könnten wir die Fouriertransformierte in diesem Fall<br />
auch dem Laplace-Lexikon entnehmen <strong>und</strong> s durch jω ersetzen,<br />
t e<br />
<strong>und</strong> a durch jω ersetzen, dann folgt<br />
− αt<br />
F ( s)<br />
1<br />
( ) 2<br />
=<br />
s +α<br />
∞<br />
0
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 55<br />
( ω)<br />
=<br />
1<br />
=<br />
2 2<br />
α −ω<br />
2αω<br />
F<br />
2<br />
2 2 2 2 2 2<br />
( jω<br />
+ α ) ( α + ω ) ( α + ω )<br />
−<br />
j
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 56
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 57<br />
5 Die diskrete <strong>Fouriertransformation</strong> (DFT)<br />
5.1 Einführung<br />
Wenn bei der klassischen Fourierreihe eines periodischen Signals f nach endlich vielen<br />
Termen abbricht, dann erhalten wir die bestmögliche Approximation in dem Sinne, dass<br />
die Differenz, resp. Fläche zwischen Approximation <strong>und</strong> Signal im least square Sinne<br />
minimiert wird. Wir erhalten ein trigonometrisches Polynom n ten Grades der Form<br />
mit<br />
n<br />
n<br />
a0<br />
f ( t)<br />
= + ∑ak<br />
cos( kω0t)<br />
+ ∑bk<br />
sin( kω0t)<br />
2<br />
a<br />
k<br />
2<br />
=<br />
T<br />
T<br />
∫<br />
0<br />
T<br />
f<br />
k = 1<br />
( t ) cos( kω<br />
t)<br />
2<br />
bk<br />
= f ( t ) ( k t ) dt k n<br />
T<br />
∫ sin ω0<br />
für = 1, ,<br />
0<br />
<strong>und</strong> wir haben ein least square Approximationsproblem gelöst.<br />
Ein zweites <strong>und</strong> anderes Problem tritt bei abgetasteten Signalen mit Schrittweite oder<br />
Samplingraster ∆t auf. Da möchten wir das Signal an abgetasteten Werten reproduzieren<br />
<strong>und</strong> zwar ebenfalls mit einem trigonometrischen Polynom, d. h. mit endlich vielen Sinus<strong>und</strong><br />
Kosinustermen. Es handelt sich dann um ein Interpolationsproblem.<br />
Das best approximierende trigonometrische Polynom 4.Grades z. B. für das Signal<br />
f (t) = t<br />
im Intervall [0, 2π] (periodische fortgesetzt) ist<br />
⎛ sin<br />
( ) ( )<br />
( 2 t) sin( 3 t) sin( 4 t) ⎞<br />
g t = π − 2 ⎜sin<br />
t + + + ⎟⎠<br />
⎝ 2 3 4<br />
<strong>und</strong> diese Funktion ist die beste least square Approximation des Signals, aber es reproduziert<br />
das Signal nicht exakt an äquidistanten (gleich weit auseinanderliegenden) Stellen,<br />
d. h. zu Zeitpunkten n ∆t.<br />
0<br />
dt<br />
k = 1<br />
für<br />
k = 1, ,<br />
n<br />
Abbildung 34: Periodisch fortgesetzte<br />
Funktion f (blau) mit Approximation<br />
g (magenta).
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 58<br />
In der Signalverarbeitung möchten wir das Signal exakt an regelmässigen Zeitpunkten<br />
t k<br />
= k ⋅ ∆t<br />
reproduzieren. Wenn wir das Signal exakt an den N Stellen<br />
0,<br />
∆t,<br />
2∆t,<br />
3∆t,<br />
, ( N −1) ∆t<br />
mit trigonometrischen Funktionen reproduzieren möchten, dann müssen wir die Fourierkoeffizienten<br />
anders berechnen (an eventuellen Sprungstellen wird der Mittelwert aus<br />
links- <strong>und</strong> rechtsseitigem Grenzwert reproduziert). Abbildung 35 zeigt die Lösung dieses<br />
Problems indem mit Hilfe der Diskreten <strong>Fouriertransformation</strong> (DFT) das trigonometrische<br />
Polynom berechnet wurde.<br />
Abbildung 35: Fourierinterpolation von f (t ) = t ist<br />
h(t ) = π− 1.8961sin(t) – 0.7854sin(2t) – 0.3253sin(3t)<br />
Im Vergleich dazu in Abbildung 36 nochmals die klassische Fourierreihe gezeichnet zusammen<br />
mit den Abtastpunkten.<br />
Abbildung 36: Fourierreihe von f (t ) = t ist<br />
g(t ) = π − 2sin(t) – sin(2t) – 0.6667sin(3t) – 0.5sin(4t)<br />
Die obere Kurve reproduziert exakt die 8 Punkte in regelmässigen Abständen<br />
2π<br />
∆t =<br />
8<br />
der Funktion f (t) = t. Wegen der Sprünge bei t = 2πk wird der Wert an der Sprungstelle<br />
durch den Mittelwert zwischen Anfangs <strong>und</strong> Endwert der Funktion im Periodenintervall
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 59<br />
0 + 2π =π<br />
2<br />
reproduziert. Die untere Kurve approximiert im least square Sinn am besten die Funktion<br />
f (t) = t<br />
im ganzen Intervall [0, 2π]. Das liegt vor allem an den Sprungstellen. Dort ist die klassische<br />
Fourierreihe besser.<br />
Ergänzung<br />
Das Mass für die Güte der Approximation im least square Sinn ist die Grösse:<br />
2π<br />
2 1<br />
2<br />
s = ∫ ( f ( t) − g( t)<br />
) dt<br />
2π<br />
0<br />
Für die obere Kurve ist s 2 = 16.7, für die untere Kurve ist s 2 = 11.3. Die klassische Fourierreihe<br />
ist also tatsächlich besser im least square Sinn über das ganze Periodenintervall,<br />
aber sie reproduziert das Signal nicht in regelmässigen Zeitabständen.<br />
Um die Fourierkoeffizienten für das Abtastproblem, d. h. Interpolationsproblem zu berechnen,<br />
müssen wir die Berechnungsvorschrift der klassischen Fourierkoeffizienten modifizieren.<br />
Das wollen wir im nächsten Abschnitt tun.<br />
5.2 Berechnung der diskreten Fourierkoeffizienten<br />
Wir gehen also davon aus, dass ein periodisches Signal y = f (t) im Intervall [0, 2π] an 2N<br />
Stellen abgetastet wird. Für die t-Koordinaten der Stützstellen gilt dann:<br />
2π π<br />
t k = k ∆ t , 0 ≤ k ≤ 2N<br />
− 1 <strong>und</strong> ∆ t = =<br />
2N<br />
N<br />
Die abgetasteten Werte y k = f(t k ) sollen durch ein trigonometrisches Polynom interpoliert<br />
werden. Das trigonometrische Polynom muss ebenfalls genau 2Ν unbekannte Koeffizienten<br />
haben, denn das Einsetzen der Punkte ( t<br />
k<br />
, y k<br />
) liefert 2N Gleichungen.<br />
Das Polynom<br />
g<br />
N<br />
N<br />
( t) = α<br />
o<br />
+ ∑ ( α<br />
k<br />
cos( kt) + β<br />
k<br />
sin( kt)<br />
)<br />
k = 1<br />
hat einen Term zu viel. Wir setzen deshalb das trigonometrische Polynom mit<br />
g<br />
N<br />
N 1<br />
=<br />
o ∑ −<br />
k = 1<br />
( t) α + ( α cos( kt) + β sin( kt)<br />
) + α cos( Nt)<br />
k<br />
An. Der letzte Sinusterm 2 ist gleich null. Einsetzen der 2N Punkte (t k , y k ) liefert das lineare<br />
Gleichungssystem für die unbekannten Koeffizienten<br />
k<br />
N<br />
2 Für den letzten Term sin(Nt k ) gilt für jeden Punkt<br />
π<br />
t k<br />
= k<br />
N<br />
also folgt<br />
⎛ kπ<br />
⎞<br />
sin ( N t k<br />
) = sin⎜<br />
N ⎟ = sin( k π ) = 0 ,<br />
⎝ N ⎠<br />
d. h. der Term β sin ( N ) = 0 für jedes β N .<br />
N<br />
t k
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 60<br />
⎛1<br />
⎜<br />
⎜1<br />
⎜<br />
⎜<br />
⎝1<br />
cost<br />
cost<br />
<br />
cost<br />
0<br />
1<br />
sin t<br />
sin t<br />
<br />
sin t<br />
0<br />
1<br />
⎛ α<br />
0 ⎞<br />
cos( 2t0<br />
) cos( Nt0<br />
) ⎞ ⎜ ⎟ ⎛ y0<br />
⎞<br />
⎜ α ⎟ ⎜ ⎟<br />
1<br />
cos( 2t1<br />
) cos( Nt1)<br />
⎜ ⎟ ⎜ y1<br />
⎟<br />
β =<br />
1<br />
⎜ ⎟ ⎜ ⎟<br />
cos( 2t<br />
) ( ) ⎟⎟⎟⎟⎟ ⎜ ⎟ ⎜ ⎟<br />
2N<br />
−1<br />
cos Nt<br />
2N<br />
− ⎠ ⎜ ⎟ ⎝ y<br />
2N<br />
−1 ⎠<br />
⎝α N ⎠<br />
(2N, 2N) (2N, 1) (2N, 1)<br />
2N<br />
−1<br />
2N<br />
−1<br />
1<br />
mit der formalen Lösung<br />
⎛ α<br />
o ⎞<br />
−1<br />
⎜ ⎟ ⎛1<br />
cost0<br />
sin to<br />
cos ( 2t<br />
o<br />
) cos ( Nt ) ⎞ ⎛ y<br />
o<br />
o ⎞<br />
⎜ α1<br />
⎟ ⎜<br />
⎟ ⎜ ⎟<br />
⎜ β ⎟ = ⎜1<br />
cost1<br />
sin t1<br />
cos ( 2t1<br />
) cos ( Nt1<br />
) ⎟ ⎜ y1<br />
⎟<br />
1<br />
⎜ ⎟ ⎜<br />
⎟ ⎜ ⎟<br />
⎜ ⎟ ⎜<br />
⎟ ⎜ ⎟<br />
⎜ ⎟ 1 cos<br />
2 −1<br />
sin<br />
2 −1<br />
cos ( 2<br />
2 −1<br />
) cos (<br />
2 −1<br />
)<br />
⎝ t<br />
N<br />
t<br />
N<br />
t<br />
N<br />
Nt<br />
N ⎠ ⎝ y2N<br />
−1 ⎠<br />
⎝α<br />
N ⎠<br />
(2N, 1) (2N, 2N) (2N, 1)<br />
Natürlich werden die Lösungen des Gleichungssystems nicht verändert, wenn die Reihenfolge<br />
der Kosinus- <strong>und</strong> Sinusterme verändert wird, d. h. wenn pro Zeile der Koeffizientenmatrix<br />
zuerst alle Kosinusterme <strong>und</strong> anschliessend alle Sinusterme genommen werden<br />
(es kann der Code beim Programmieren ein Bisschen erleichtern), d. h.<br />
g<br />
N<br />
N<br />
( t) = α + α cos( kt) + β ( kt)<br />
∑<br />
k = 1<br />
resp. nach Einsetzen der Punkte t 0 , ,t 2N-1 :<br />
⎛1<br />
⎜<br />
⎜1<br />
⎜<br />
⎜<br />
⎝1<br />
cost<br />
cost<br />
<br />
cost<br />
0<br />
1<br />
cos<br />
cos<br />
cos<br />
N −1<br />
∑<br />
0<br />
sin<br />
k<br />
k = 1<br />
( 2t0<br />
) cos( Nt0<br />
) sin t0<br />
sin (( N −1)<br />
t0<br />
)<br />
( 2t<br />
) cos( Nt ) sin t sin (( N −1)<br />
t )<br />
<br />
1<br />
<br />
1<br />
( 2t<br />
) ( ) (( − ) ) ⎟⎟⎟⎟⎟ 2N<br />
−1<br />
cos Nt2N<br />
−1<br />
sin t2N<br />
−1<br />
sin N 1 t2N<br />
− ⎠<br />
2N<br />
−1<br />
1<br />
1<br />
<br />
k<br />
<br />
1<br />
⎛ α<br />
0 ⎞<br />
⎞<br />
α1<br />
⎛ y0<br />
⎜<br />
<br />
⎜ y1<br />
α =<br />
N ⎜ <br />
⎜ ⎜⎜⎜⎜⎜⎜ β ⎜<br />
1<br />
<br />
⎜ ⎟ ⎟⎟⎟⎟⎟⎟⎟ ⎝ y<br />
2N<br />
⎝ β<br />
N −1 ⎠<br />
5.2.1 Beispiel (Interpolierendes Fourierpolynom)<br />
Gesucht ist das diskrete, interpolierende Fourierpolynom für die 8 Datenpunkte, d. h., es<br />
ist N = 4.<br />
⎛ π π 3π<br />
5π<br />
3π<br />
7π<br />
⎞<br />
t = ⎜0,<br />
, , , π , , , ⎟<br />
⎝ 4 2 4 4 2 4 ⎠<br />
<strong>und</strong><br />
y = ( 0,<br />
2, 2, 2, 0, − 2, − 2, − 2)<br />
Es handelt sich dabei um ein diskret abgetastetes Rechteckssignal, vgl. Abbildung 37.<br />
Wir lösen das Problem mit Matlab, indem wir zunächst das oben angegebene lineare<br />
Gleichungssystem lösen <strong>und</strong> so die (reellen) diskreten Fourierkoeffizienten<br />
erhalten.<br />
( α α , , α , β , β ) t<br />
0<br />
,<br />
1<br />
N 1<br />
,<br />
N<br />
−1<br />
⎞<br />
⎟<br />
⎟<br />
⎟<br />
⎟<br />
⎠
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 61<br />
Abbildung 37: An 8 Stellen diskret abgetastetes<br />
Rechtecksignal.<br />
Der folgende Matlab-Code löst dieses Problem:<br />
% Diskrete Fourierinterpolation durch<br />
% Lösen des Gleichungssystems<br />
% Filename = dfi1_Rechteck.m<br />
func='Rechtecksimpulsfolge';<br />
v=0; % eventuelle Verschiebung des 2*pi Intervalls<br />
x=(0:7)*pi/4+v;<br />
n=length(x);<br />
y=[0 2 2 2 0 -2 -2 -2];<br />
M=[ones(size(x')) cos(x') cos(2*x') cos(3*x') cos(4*x')<br />
sin(x') sin(2*x') sin(3*x')];<br />
% Lösen des Gleichungssystems<br />
% -> Fourierkoeffizienten=Spaltenvektor<br />
FK=M\y'<br />
pause<br />
Anschliessend plotten wir die Werte des trigonometrischen Polynoms im Intervall [0, 2π].<br />
Wir erzeugen eine feinere Unterteilung des Intervalls [0, 2π], z. B. mit dem Matlab-<br />
Befehl x=0:0.01:2*pi <strong>und</strong> wollen in diesem Intervall die y Werte gemäss<br />
4<br />
( x) = α + α cos( k x) + β ( k x)<br />
∑<br />
k = 1<br />
∑<br />
y = g<br />
4 0<br />
sin<br />
k<br />
berechnen. Nehmen wir an, wir hätten (m+1) x- <strong>und</strong> y- Werte Dann lautet die Berechnungsvorschrift<br />
in Matrixform für die y-Werte:<br />
⎛ y ⎞<br />
⎜ ⎟<br />
⎜ y1<br />
⎟<br />
⎜ ⎟ =<br />
<br />
⎜ ⎟<br />
⎝ y m ⎠<br />
3<br />
k = 1<br />
0 ⎛1<br />
cos x0<br />
cos( 2x0<br />
) cos( Nx0<br />
) sin x0<br />
sin (( N −1)<br />
x0<br />
)<br />
1 cos x cos( 2x<br />
) cos( Nx ) sin x sin (( N −1)<br />
x )<br />
⎜ ⎜ ⎜<br />
⎜<br />
⎝1<br />
1<br />
<br />
cos x<br />
m<br />
cos<br />
<br />
1<br />
<br />
1<br />
( 2x<br />
) ( ) (( − ) ) ⎠<br />
⎟⎟⎟⎟⎟ m<br />
cos Nxm<br />
sin xm<br />
sin N 1 xm<br />
1<br />
<br />
k<br />
<br />
1<br />
⎛ α<br />
0 ⎞<br />
⎜ ⎟<br />
⎞ ⎜<br />
α1<br />
⎟<br />
⎜ ⎟<br />
⎜ α ⎟<br />
N<br />
⎜ ⎟<br />
⎜ β1<br />
⎟<br />
⎜ ⎟<br />
⎜ ⎟<br />
⎝ β<br />
N −1 ⎠<br />
(m+1, 1) (m+1, 2N) (2N, 1)
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 62<br />
Ein möglicher zweiter Matlab-Code mit Figurenoutput:<br />
X=v:0.01:v+2*pi;<br />
Y=[ones(size(X')) cos(X') cos(2*X') cos(3*X') cos(4*X')<br />
sin(X') sin(2*X') sin(3*X')]*FK;<br />
hold on<br />
plot(x,y,'ko','MarkerFaceColor','k')<br />
plot(X,Y','LineWidth',1.5)<br />
grid on<br />
title(['Funktion f(t) mit ', num2str(n) , ' Abtastpunkten']);<br />
pause<br />
close<br />
Abbildung 38: Interpolierendes Fourierpolynom<br />
des diskret abgetasteten Rechtecksignals.<br />
Und schliesslich das Amplitudenspektrum , d. h. das Zeichnen der Amplitudenwerte<br />
2 2<br />
= α + β<br />
als senkrechte Balken an den Frequenzstellen k ω0<br />
.<br />
% Amplitudenspektrum<br />
FK=FK';<br />
a0=FK(1);<br />
a=FK(2:n/2+1);<br />
b=[FK(n/2+2:n) 0];<br />
ampl=[a0 sqrt(a.^2+b.^2)];<br />
hold on<br />
for k=0:n/2<br />
plot([k k],[0 ampl(k+1)],'k','LineWidth',2)<br />
end<br />
plot([-1 n/2+1],[0 0],'k','LineWidth',1.5)<br />
grid on<br />
title(['Amplitudenspektrum von f(t)=' ,func ,' bei<br />
',num2str(n), ' Abtastpunkten']);<br />
axis([-1 n/2+1 -0.1*max(ampl) 1.1*max(ampl)]);<br />
Ak<br />
k<br />
k
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 63<br />
pause<br />
close<br />
Abbildung 39: Amplitudenspektrum des an 8<br />
Stellen diskret abgetasteten Rechtecksignal.<br />
5.2.2 Beispiel (Random Signal interpolieren)<br />
Wir wollen ein Signal im Intervall [0, 2π] mit ganzzahligen Zufallszahlenwerten bestehend<br />
aus den Zahlen 0, 1, 2, 3, 4 der Länge 32 erzeugen <strong>und</strong> interpolieren sowie dessen<br />
Spektrum darstellen.<br />
Matlab-Code zur Erzeugung der Abbildung 40.<br />
% Diskrete Fourierinterpolation durch Lösen des<br />
% Gleichungssystems<br />
% Filename = dfi1_random.m<br />
n=32; % muss eine gerade Zahl sein<br />
x=(0:n-1)*2*pi/n;<br />
y=ro<strong>und</strong>(4*rand(1,n));<br />
xcos=cos(x'*[1:n/2]);<br />
xsin=sin(x'*[1:n/2-1]);<br />
M=[ones(size(x')) xcos xsin];<br />
FK=M\y'; % Fourierkoeffizienten<br />
X=0:0.01:2*pi;<br />
k=length(X);<br />
Xcos=cos(X'*[1:n/2]);<br />
Xsin=sin(X'*[1:n/2-1]);<br />
Y=[ones(size(X')) Xcos Xsin]*FK;<br />
plot(x,y,'bo',X,Y','k','LineWidth',2)<br />
title(['Zufallsfunktion f(t) mit ',num2str(n) ,' Abtastpunkten']);<br />
grid on<br />
pause<br />
close
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 64<br />
% Darstellung des Amplitudenspektrums<br />
FK=FK';<br />
a0=FK(1);<br />
a=FK(2:n/2+1);<br />
b=[FK(n/2+2:n) 0];<br />
ampl=[a0 sqrt(a.^2+b.^2)];<br />
hold on<br />
for k=0:n/2<br />
plot([k k],[0 ampl(k+1)],'k','LineWidth',2)<br />
end<br />
plot([-1 n/2+1],[0 0],'k','LineWidth',1.5)<br />
grid on<br />
title(['Amplitudenspektrum von f(t)=' ,func ,' bei<br />
',num2str(n), ' Abtastpunkten']);<br />
axis([-1 n/2+1 -0.1*max(ampl) 1.1*max(ampl)]);<br />
pause<br />
close<br />
Abbildung 40: Realisierung einer Zufallszahlenfolge bestehend aus den Zahlen 0, 1, 2, 3, 4 der<br />
Länge 32.<br />
5.2.3 Explizite Lösung des Gleichungssystems - Fourierkoeffizienten<br />
Wie wir gesehen haben, sind die diskreten Fourierkoeffizienten die Lösungen des Gleichungssystems<br />
⎛ α ⎞<br />
⎛1<br />
⎜<br />
⎜1<br />
⎜<br />
⎜<br />
⎝1<br />
cost<br />
cost<br />
<br />
cost<br />
0<br />
1<br />
sin t<br />
sin t<br />
<br />
sin t<br />
0<br />
1<br />
( 2t0<br />
) cos( Nt0<br />
)<br />
( 2t<br />
) cos( Nt )<br />
0<br />
cos<br />
⎞ ⎜ ⎟ ⎛ y0<br />
⎞<br />
⎜ α ⎟ ⎜ ⎟<br />
1<br />
cos<br />
1<br />
1 ⎜ ⎟ ⎜ y1<br />
⎟<br />
β =<br />
1<br />
⎜ ⎟ ⎜ ⎟<br />
cos( 2t<br />
) ( ) ⎠<br />
⎟⎟⎟⎟⎟ ⎜ ⎟ ⎜ ⎟<br />
2N<br />
−1<br />
cos Nt<br />
2N<br />
− ⎜ ⎟ ⎝ y<br />
2N<br />
−1 ⎠<br />
⎝α N ⎠<br />
(2N, 2N) (2N, 1) (2N, 1)<br />
2N<br />
−1<br />
2N<br />
−1<br />
1<br />
Wegen der speziellen Struktur der Koeffizientenmatrix (Orthogonalitätseigenschaft der<br />
trigonometrischen Funktionen) berechnen sich die Lösungen, d. h. die diskreten (reellen)<br />
Fourierkoeffizienten α 0 , α 1 , β 1 , …, β N-1 , α N explizit wie folgt:
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 65<br />
Diskrete Fourier Interpolation<br />
Es sei g in [0, 2π] definiert <strong>und</strong> 2π periodisch, dann gilt<br />
mit<br />
g<br />
N<br />
N<br />
∑ − 1<br />
k = 1<br />
( t) = α + α cos( Nt) + ( α cos( kt) + β ( kt)<br />
)<br />
0 N<br />
k<br />
k<br />
sin<br />
2N<br />
∑ − 1<br />
1<br />
f ( t i<br />
)<br />
2N<br />
i=<br />
0<br />
1 2N<br />
−1<br />
2 −1<br />
1<br />
∑<br />
= ∑<br />
N<br />
f ti<br />
cos Nti<br />
2N<br />
i=<br />
0<br />
2N<br />
i=<br />
0<br />
2N<br />
1<br />
1<br />
∑ −<br />
f ( ti<br />
) cos( kti<br />
)<br />
N i=<br />
0<br />
2N<br />
1<br />
1<br />
∑ −<br />
f ( ti<br />
) sin ( kti<br />
)<br />
N i=<br />
0<br />
α =<br />
,<br />
α<br />
0<br />
N<br />
k<br />
=<br />
i<br />
( ) ( ) ( −1) f ( t )<br />
α =<br />
,…k = 1, …, 2N – 1<br />
β =<br />
,…k = 1, …, 2N – 1<br />
k<br />
Für das trigonometrische Polynom g N (t) gilt die Interpolationseigenschaft:<br />
π<br />
g<br />
N<br />
( tk<br />
) = f ( tk<br />
), tk<br />
= k , k = 0,..., 2N<br />
−1<br />
N<br />
Ein Beweis der Formeln ist im Kapitel 0 gegeben.<br />
Wenn wir die Formeln für α n <strong>und</strong> β n kennen, dann können wir natürlich auch direkt die<br />
Formeln für die Fourierkoeffizienten verwenden.<br />
Matlab-Code zur Berechnung der diskreten Fourier-Interpolation mit Hilfe der Formeln<br />
für die Koeffizienten.<br />
% Skript Beispiel Diskrete reelle Fourier Interpolation<br />
% Benutzung der Formeln für die Koeffizienten<br />
% Funktion f(t) 2*pi periodisch<br />
% Filename = dfi2_diverse_Fkt.m<br />
i<br />
N=8;<br />
n=2*N;<br />
% Grad des trig. Polynoms<br />
% Anzahl Punkte<br />
% verschiedene Funktionen zum ausprobieren<br />
% Es wird das Intervall [0,2pi] zugr<strong>und</strong>egelegt,d.h<br />
% Funktionsgleichungen gelten für das Intervall [o,2pi]<br />
% mit periodischer Fortsetzung<br />
% Die Lage des Intervalls ist egal solange die Periode 2pi<br />
ist.<br />
func='exp(t)';<br />
%func='(t+abs(t))/2';<br />
%func='abs(t)/pi'; % Dreiecksfolge<br />
%func='exp(-t.^2)';<br />
%func='exp(-abs(t))';<br />
%func='sin(t)';<br />
%func='1./(1+t.^2)';
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 66<br />
%func='sin(2*pi*5*t)+sin(2*pi*15*t)+randn(size(t))';<br />
f=inline(func);<br />
B=-pi; % Anfangspunkt des Intervalls<br />
t=B:pi/N:B+2*pi; % Vektor der Länge 2N+1<br />
% t=-pi:pi/N:pi;<br />
y=f(t);<br />
y(1)=(y(1)+y(2*N+1))/2; % Mittelwert 1. <strong>und</strong> letzter Wert<br />
y=y(1:2*N);<br />
% 2N Funktionswerte (letzter gestrichen)<br />
t=t(1:2*N);<br />
% 2N Stützwerte (letzter gestrichen)<br />
a0=sum(y)/2/N;<br />
A=[1:N]'*t;<br />
% (n,2N)-Matrix<br />
AC=cos(A)/N; %<br />
AS=sin(A)/N; %<br />
a=AC*y';<br />
% (n,1)-Matrix<br />
a(N,1)=a(N,1)/2; % Ausnahmeregel für a(n,1)<br />
b=AS*y';<br />
% (n,1)-Matrix, b(n)=0 automatisch)<br />
tplot=B-2*pi:pi/200:B+4*pi;% Bereich für Plot<br />
ai=[1:N]'*tplot;<br />
aci=cos(ai);<br />
bci=sin(ai);<br />
zi=a'*aci+b'*bci+ones(size(tplot))*a0;<br />
tp=B:pi/200:B+2*pi;<br />
ff=f(tp);<br />
ff=ff(1:length(tp)-1);<br />
ff=[ff ff ff ff(1)];<br />
plot(t,y,'ko','MarkerFaceColor','k')<br />
hold on<br />
plot(tplot,zi,tplot,ff,':', 'LineWidth',1.5)<br />
grid on<br />
axis([B-2*pi-1 B+4*pi+1 min(y)-1 max(y)+1])<br />
title(['Diskrete Fourierreihe von f(t)=', func, ' in<br />
[',num2str(B),',',num2str(B+2*pi),']',' vom Grad<br />
',num2str(N)]);<br />
pause<br />
close<br />
% Darstellung des Amplitudenspektrums<br />
ampl=[a0 sqrt(a.^2+b.^2)'];<br />
hold on<br />
for k=0:n/2<br />
plot([k k],[0 ampl(k+1)],'k','LineWidth',2)<br />
end<br />
plot([-1 n/2+1],[0 0],'k','LineWidth',1.5)<br />
grid on<br />
title(['Amplitudenspektrum von f(t)=' ,func ,' bei<br />
',num2str(n), ' Abtastpunkten']);
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 67<br />
axis([-1 n/2+1 -0.1*max(ampl) 1.1*max(ampl)]);<br />
pause<br />
close<br />
Abbildung 41: Links: die diskrete Fourier-Interpolation für die Funktion<br />
t<br />
f ( t) = e<br />
im Intervall [-π, π] periodisch fortgesetzt. Anzahl der Abtastpunkte ist N = 16. Grad des trigonometrischen<br />
Polynoms ist demzufolge N/2 = 8. Rechts: das Amplitudenspektrum<br />
2 2<br />
A k = α + ).<br />
k<br />
β k<br />
5.3 Die diskrete <strong>Fouriertransformation</strong> (DFT <strong>und</strong> FFT)<br />
5.3.1 Reelle Schreibweise der DFT<br />
Das Wesentliche an der obigen diskreten Fourier Interpolation ist die Berechnung der<br />
diskreten Fourierkoeffizienten<br />
α<br />
0<br />
, α1<br />
, , α<br />
N<br />
, β1<br />
, ,<br />
β N −1<br />
.<br />
Mittels der oben angegebenen Berechnungsvorschrift haben wir aus den 2N Funktionswerten<br />
f k die 2N Koeffizienten α k <strong>und</strong> β k , d. h. die Amplituden der vorkommenden Frequenzen,<br />
berechnet. Aus diesen 2N Koeffizienten können wir umgekehrt wieder die Funktionswerte<br />
rekonstruieren. In Mathematik <strong>und</strong> Technik wird von einer Transformation <strong>und</strong><br />
einer inversen Transformation, in diesem Fall von der diskreten Fouriertransfomation<br />
DFT gesprochen. Mit der Abkürzung f (t k ) = f k haben wir<br />
DFT<br />
inverse DFT<br />
[ f f f ]<br />
[ α α α β ]<br />
[ f f f ]<br />
0 , 1,<br />
,<br />
2N<br />
−1<br />
0 , 1,<br />
,<br />
N<br />
,<br />
1, ,<br />
β N −1<br />
Die (reelle) DFT besteht aus den folgenden Transformationsformeln:<br />
α =<br />
k<br />
2N<br />
1<br />
1<br />
∑ −<br />
N i=<br />
0<br />
2N<br />
1<br />
1<br />
∑ −<br />
i=<br />
0<br />
f<br />
( t ) cos( kt )<br />
i<br />
( t ) sin ( kt )<br />
i<br />
, k = 0, …, N<br />
β<br />
k<br />
= f , k = 0, …, 2N – 1<br />
i<br />
i<br />
N<br />
0 , 1,<br />
,<br />
2N<br />
−1
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 68<br />
<strong>und</strong> die inverse (reelle) DFT besteht aus den Transformationsformeln 3 :<br />
N 1<br />
α<br />
0<br />
α<br />
N<br />
f<br />
k<br />
= f ( tk<br />
) = + cos( Nt<br />
k<br />
) + ( α<br />
j<br />
cos( jtk<br />
) + β<br />
j<br />
sin( jtk<br />
)), k = 0, …, 2N – 1<br />
2 2<br />
∑ −<br />
j=<br />
1<br />
5.3.2 Komplexe Schreibweise der DFT (FFT)<br />
Aufgr<strong>und</strong> der Euler'schen Formel<br />
e jt = cos t + j sin t<br />
können die obigen Transformationsformeln komplex geschrieben werden. Im Jahre 1965<br />
haben J. W. Cooley <strong>und</strong> J. W. Tukey aus dieser komplexen Darstellung die so genannte<br />
FFT (Fast Fourier Transform) entwickelt, vgl. [1].<br />
Wenn mit dieser Euler'schen Beziehung die Kosinus- <strong>und</strong> Sinusausdrücke vom letzten<br />
Abschnitt durch die komplexen Grössen e jt <strong>und</strong> e -jt ausgedrückt werden, dann kann gezeigt<br />
werden, dass sich f folgendermassen darstellen lässt:<br />
mit<br />
c<br />
k<br />
f<br />
1<br />
1<br />
2N<br />
= ∑ −<br />
yie<br />
2N<br />
i=<br />
0<br />
Der Beweis ist im Kapitel 7 angegeben.<br />
2N<br />
∑ − 1<br />
k=<br />
0<br />
jkt<br />
( t) = c k<br />
e<br />
π<br />
− jki<br />
N<br />
, k = 0, ,2N<br />
−1<br />
Zusammenfassung<br />
Unter der (komplexen) DFT verstehen wir die Transformation, welche die 2N Datenpunk-<br />
y y , y (Datenvektor) mittels den Gleichungen<br />
te ( )<br />
0<br />
,<br />
1<br />
,<br />
2N<br />
−1<br />
1<br />
1<br />
2N<br />
= ∑ − − jki<br />
N<br />
ck<br />
yie<br />
, k = 0, ,<br />
2N<br />
−1<br />
2N<br />
i=<br />
0<br />
c c , c transformiert.<br />
in den Vektor ( )<br />
0<br />
,<br />
1<br />
,<br />
2N<br />
−1<br />
Die inverse DFT transformiert den Vektor ( c , c )<br />
y<br />
k<br />
2N<br />
1<br />
= ∑ −<br />
c e<br />
i=<br />
0<br />
i<br />
π<br />
jki<br />
N<br />
π<br />
c mittels den Gleichungen<br />
0<br />
,<br />
1<br />
,<br />
2N<br />
−1<br />
wieder zurück auf den Datenvektor ( y , y )<br />
,<br />
0<br />
,<br />
1<br />
,<br />
2N<br />
−1<br />
k = 0, ,2N<br />
−1<br />
y .<br />
3 Wir haben die beiden Koeffizienten α 0 <strong>und</strong> α N geschrieben als<br />
<strong>und</strong><br />
α 0<br />
2<br />
α<br />
N .<br />
2<br />
Das hat den Vorteil, dass wir bei den Formeln der DFT keine separaten Formeln für α 0 <strong>und</strong> α N<br />
haben.
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 69<br />
5.3.3 Zusätzliche Bemerkungen<br />
1. Wegen der Periodizitätseigenschaften der komplexen Exponentialfunktion<br />
jx jx j2 πk<br />
j( x + 2πk<br />
)<br />
e = e e = e<br />
<strong>und</strong> der speziellen Struktur der Koeffizientenmatrix kann die Berechnung der komplexen<br />
Fourierkoeffizienten c k in Gruppen vorgenommen werden (FFT) <strong>und</strong> so den Rechenaufwand<br />
von n 2 auf n log 2 (n) reduziert werden. Besonders wirksam ist diese Reduktion<br />
des Rechenaufwandes, wenn die Anzahl Punkte eine 2 er Potenz (2N = 2 n ) ist,<br />
vgl. Kapitel 8.<br />
2. In der Fachliteratur gibt es eine verwirrende Vielfalt von verschiedenen Definitionen<br />
der DFT <strong>und</strong> ihrer Inversen. Dies betrifft im Wesentlichen die Normierung (Bei uns<br />
der Faktor<br />
1<br />
2N<br />
in den Formeln für c k .). Dazu kommt, dass die verschiedenen Implementierungen in<br />
Mathematikprogrammen oft schlecht dokumentiert sind. Matlab benutzt für die DFT<br />
den Algorithmus der FFT mit der umgekehrten Normierung als bei uns (Faktor<br />
1<br />
2N<br />
bei der ifft <strong>und</strong> nicht bei der fft), vgl. Kapitel 9.<br />
5.3.4 Matlab-Befehle<br />
Eingangsvektor y der Funktionswerte der Länge 2N<br />
FFT<br />
Fast Fourier Transformation<br />
Ausgangsvektor der 2N komplexen Fourierkoeffizienten<br />
IFFT<br />
inverse Fast Fourier Transformation<br />
Eingangsvektor y<br />
>> y=[4 1 2 3 4 5 6 7]<br />
y =<br />
4 1 2 3 4 5 6 7<br />
>> c=fft(y)<br />
c =<br />
Columns 1 through 5<br />
32.0000 0 + 9.6569i 0 + 4.0000i 0 + 1.6569i<br />
0<br />
Columns 6 through 8<br />
0 - 1.6569i 0 - 4.0000i 0 - 9.6569i<br />
>> y2=ifft(c)<br />
y2 =<br />
4 1 2 3 4 5 6 7
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 70<br />
Wie die obigen Matlab-Zeilen zeigen, ist die fft eine rein abstrakte Transformation von<br />
n Daten, resp. Funktionswerten y k in n andere Werte c k . Physikalisch enthalten die c k die<br />
Information über die Amplituden der vorkommenden Frequenzen. Die zeitlichen Stützwerte<br />
t k gehen gar nicht als input in die fft-Prozedur ein. Per Definition verwendet Matlab<br />
fft das Periodenintervall [0, 2N].<br />
Wenn mit Hilfe der durch fft gelieferten c k die Funktionsgleichung des interpolierenden<br />
trigonometrischen Polynoms in der Form<br />
N<br />
( ) ( ) ∑ − 1<br />
α<br />
0<br />
α<br />
N<br />
f t = + cos Nω0t<br />
+ ( α<br />
k<br />
cos( kω0t) + β<br />
k<br />
sin( kω0t)<br />
)<br />
2 2<br />
k = 1<br />
ermitteln werden soll (um es z. B. zeichnen zu können), dann müssen wir zweierlei wissen.<br />
1. Beziehungen zwischen den komplexen Fourierkoeffizienten c k , welche von einem fft<br />
Algorithmus geliefert werden <strong>und</strong> den reellen Fourierkoeffizienten α k <strong>und</strong> β k .<br />
2. Die konkreten Zeitwerte t k .<br />
Beziehung zwischen den c k (Matlab) <strong>und</strong> den α k , β k (Theorie)<br />
Wir gehen aus von n = 2N Funktionswerten <strong>und</strong> der Funktionsgleichung<br />
N<br />
( ) ( ) ∑ − 1<br />
α<br />
0<br />
α<br />
N<br />
f t = + cos Nω0t<br />
+ ( α<br />
k<br />
cos( kω0t) + β<br />
k<br />
sin( kω0t)<br />
)<br />
2 2<br />
k = 1<br />
Dann gelten die folgenden Beziehungen. Wir beachten, dass in Matlab die Vektoren mit<br />
Index 1 beginnen. In der Literatur (<strong>und</strong> auch bei uns) beginnen wir in der Regel mit c 0 , a 0 ,<br />
y 0 = f (t 0 ), etc.<br />
Theorie<br />
Matlab-Code<br />
1<br />
α 0 =<br />
2N<br />
c0 a0 = c(1)/(2*N)<br />
1<br />
α k = Re(ck ), k = 1,<br />
, N −1<br />
a(k) = 2*real(c(k+1))/(2*N)<br />
N<br />
1<br />
β k = – Im(ck ), k = 1,<br />
, N −1<br />
b(k) = -2*imag(c(k+1))/(2*N)<br />
N<br />
1<br />
α N = cN a(N) = c(N+1)/(2*N)<br />
2N<br />
Für den Beweis der obigen Beziehungen siehe Kapitel 7.<br />
Die so ermittelten α k <strong>und</strong> β k liefern Interpolation an den Stützwerten<br />
t k<br />
= k , k = 0, ,2N<br />
−1<br />
fft() liefert also eine T = 2N-periodische Funktion (Signal), d. h. das ω 0 in der obigen<br />
Funktionsgleichung des trigonometrischen Polynoms hat den Wert<br />
2π<br />
2π<br />
π<br />
ω<br />
0<br />
= = = .<br />
T 2N<br />
N
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 71<br />
Zusammenfasung<br />
Wenn die α k <strong>und</strong> β k gemäss obigen Beziehungen aus den komplexen c k berechnet werden,<br />
dann interpoliert das trigonometrische Polynom<br />
N 1<br />
α<br />
0<br />
α<br />
N<br />
⎛ ⎛ k ⎞ ⎛ k ⎞⎞<br />
f ( t) = + cos( t) + ∑ − π<br />
π<br />
π ⎜α<br />
j<br />
cos⎜<br />
t ⎟ + β<br />
j<br />
sin⎜<br />
t ⎟⎟,<br />
t ∈[ 0, 2 N ]<br />
2 2<br />
k = 1 ⎝ ⎝ N ⎠ ⎝ N ⎠⎠<br />
die Datenwerte (y- Werte) an den Stützwerten t k = k mit k = 0, …, 2N – 1, d. h. also bei<br />
den t-Werten 0, 1, 2, …, 2N – 1 <strong>und</strong> liefert eine Funktion mit Periode 2N.<br />
Wenn die Datenwerte sich auf das Intervall [0, 2π] beziehen <strong>und</strong> t k die Stützwerte<br />
π π π<br />
π<br />
0, , 2 ,3 , ,( 2N<br />
−1<br />
)<br />
N N N<br />
N<br />
sind, dann wird ω 0 = 1 <strong>und</strong> das interpolierende trigonometrische Polynom lautet:<br />
N 1<br />
α<br />
0<br />
α<br />
( ) = + cos( ) + ∑ −<br />
N<br />
f t<br />
N t ( α<br />
j<br />
cos( k t) + β<br />
j<br />
sin( k t)<br />
),<br />
t ∈[ 0, 2π<br />
]<br />
2 2<br />
k = 1<br />
5.3.5 Beispiel (Reelle vs komplexe Matlab-Fourierkoeffizienten)<br />
Das folgende Programm implementiert die Berechnung der α k <strong>und</strong> β k aus den komplexen<br />
c k <strong>und</strong> zeichnet das interpolierende Polynom für das Intervall [0, 2N] sowie für das Intervall<br />
[0, 2π].<br />
% Berechnung der reellen Fourierkoeffizienten<br />
% aus den komplexen von fft<br />
% Fillename = dfi3_Dreieck.m<br />
clear<br />
%y=[4 1 2 3 4 5 6 7]; % y-Werte des Signals<br />
y=[0 1 2 3 4 3 2 1];<br />
n=length(y);<br />
% Plotten der Datenpunkte<br />
subplot(3,1,1)<br />
plot([0:7],y,'o','MarkerFaceColor','k');% plot der Datenpunkte<br />
title(['Periode = ',num2str(n)]);<br />
axis([-2 n+2 -1 n/2+1])<br />
grid on<br />
hold on<br />
% Berechnung der komplexen Fourierkoeffizienten mit fft<br />
fy=fft(y);<br />
% Berechnung der reellen Foruriekoeffiziente aus den komplexen<br />
a0=fy(1)/n<br />
for i=1:n/2-1<br />
a(i)=2/n*real(fy(i+1)); % Bezeichnungen Literatur Index<br />
mit 0 beginnend
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 72<br />
end<br />
a(n/2)=real(fy(n/2+1))/n;<br />
an=a'<br />
% Bezeichnungen Literatur Index mit 0 beginnend<br />
for i=1:n/2-1<br />
b(i)=-2/n*imag(fy(i+1));<br />
end<br />
bn=b'<br />
% Plot des interpolierten Signals<br />
% t-Intervall ist [0,2N]=[0,n]<br />
% Abtastzeitpunkte tk=k/(2N) , k = 0,..., 2N-1<br />
t=-1:0.05:n+1; % Bereich zum plotten<br />
yf=a0;<br />
for i=1:n/2-1<br />
yf=yf+a(i)*cos(i*2*pi/n*t)+b(i)*sin(i*2*pi/n*t);<br />
end<br />
yf=yf+a(n/2)*cos(pi*t);<br />
plot(t,yf,'LineWidth',1.5);<br />
pause<br />
% Falls Periode der Abtastzeitpunkte = 2*pi<br />
% t- Intervall ist [0,2pi]<br />
% Abtastzeitpunkte tk=k*pi/N , k = 0,..., 2N-1<br />
t=[0:7]*2*pi/n;<br />
subplot(3,1,2)<br />
plot(t,y,'o','MarkerFaceColor','k');<br />
title(['Periode = 2pi']);<br />
axis([-pi/2 5/2*pi min(y)-1 max(y)+1])<br />
grid on<br />
% Plot des interpolierten Signals<br />
t=-1:0.05:2*pi+1; % Bereich zum plotten<br />
yf=a0;<br />
for i=1:n/2-1<br />
yf=yf+a(i)*cos(i*t)+b(i)*sin(i*t);<br />
end<br />
yf=yf+a(n/2)*cos(n/2*t);<br />
hold on<br />
plot(t,yf,'LineWidth',1.5);<br />
pause<br />
close<br />
Output des obigen Matlab-Programms:<br />
>> dfi3_Dreieck<br />
a0 =<br />
4<br />
an =
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 73<br />
bn =<br />
0<br />
0<br />
0<br />
0<br />
-2.4142<br />
-1.0000<br />
-0.4142<br />
Abbildung 42: Berechnung der reellen Fourierkoeffizienten aus<br />
den komplexen von fft.<br />
5.4 Abtastwerte in einem beliebigen Intervall [a, a + T]<br />
Wenn die Periode allgemein T beträgt, d. h.<br />
π<br />
ω = 2<br />
0<br />
T<br />
,<br />
dann liefert das trigonometrische Polynom<br />
N −1<br />
α<br />
0<br />
α<br />
N<br />
f t = + cos Nω0t<br />
+ ∑ α<br />
k<br />
cos kω0t<br />
2 2<br />
( ) ( ) ( ( ) + β sin( kω<br />
t)<br />
)<br />
N −1<br />
α<br />
0<br />
α<br />
N ⎛ 2π<br />
N ⎞ ⎛ ⎛ 2π<br />
k ⎞ ⎛ 2π<br />
k ⎞⎞<br />
= + cos⎜<br />
t ⎟ + ∑⎜α<br />
k<br />
cos⎜<br />
t ⎟ + β<br />
k<br />
sin⎜<br />
t ⎟⎟<br />
2 2 ⎝ T ⎠ k = 1 ⎝ ⎝ T ⎠ ⎝ T ⎠⎠<br />
die Signalwerte für die Zeitpunkte<br />
T<br />
t k<br />
= k , k = 0, ,2 N −1<br />
2N<br />
d. h., der Abtastzeitpunktevektor lautet<br />
⎛ 1 1 2 N −1<br />
⎞<br />
⎜0,<br />
T,<br />
T , , T<br />
⎟ .<br />
⎝ 2 N N 2 N ⎠<br />
k = 1<br />
k<br />
0
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 74<br />
Wenn die Abtastwerte sich auf ein allgemeines Intervall [a , a + T] beziehen, dann muss<br />
im trigonometrischen Polynom noch zusätzlich t durch t – a ersetzt werden<br />
N<br />
( ) ( ) ∑ − 1<br />
α<br />
0<br />
α<br />
N ⎛ 2πN<br />
⎞ ⎛ ⎛ 2πk<br />
⎞ ⎛ 2πk<br />
⎞⎞<br />
f t = + cos⎜<br />
t − a ⎟ + ⎜α<br />
k<br />
cos⎜<br />
( t − a) ⎟ + β<br />
k<br />
sin⎜<br />
( t − a)<br />
⎟⎟<br />
2 2 ⎝ T ⎠ k = 1 ⎝ ⎝ T ⎠ ⎝ T ⎠⎠<br />
5.4.1 Beispiel (Abgetastete Werte in einem beliebigen Intervall)<br />
Das folgende Programm implementiert die Berechnung der α k <strong>und</strong> β k aus den komplexen<br />
c k für das Intervall [a, a + T] mit a = 0 <strong>und</strong> Τ = 2π.<br />
% Berechnung der reellen Fourierkoeffizienten<br />
% aus den komplexen von fft<br />
% abgetastete Werte in einem beliebigen Intervall [a,a+T]<br />
% Beispiel Funktion f(t)=1./(1+t.^2)<br />
% Fillename = dfi4_fft.m<br />
clear<br />
% verschiedene Funktionen zum ausprobieren<br />
%func='exp(t)';<br />
%func='abs(t)/pi'; % Dreiecksfolge<br />
%func='exp(-t.^2)';<br />
%func='exp(-abs(t))';<br />
%func='sin(t)';<br />
func='1./(1+t.^2)';<br />
%func='sin(2*pi*5*t)+sin(2*pi*15*t)+randn(size(t))';<br />
%func='t';<br />
f=inline(func);<br />
N=8; % 2N Werte<br />
n=2*N;<br />
% Defintion des Intervalls, in welchem die obigen<br />
% Funktionsgleichungen gelten<br />
A=0; % Anfangswert des Intervalls<br />
T=2*pi; % Periode des Intervalls<br />
ome=2*pi/T;<br />
% Abtastung an 2N Stellen im Intervall<br />
x=[0:2*N-1].*T/(2*N)+A;<br />
y=f(x);<br />
n=length(y);<br />
% Plotten der abgetasteten Punkte<br />
plot(x,y,'o','MarkerFaceColor','k'); % plot der Datenpunkte<br />
title(['Periode = ',num2str(T)]);<br />
axis([A-T A+2*T min(y)-1 max(y)+1])<br />
grid on<br />
% Berechnung der Fourierkoeffizienten mit fft<br />
y(1)=0.5*(f(A)+f(A+T));<br />
fy=fft(y);
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 75<br />
pause<br />
% Berechnung der reellen Koeffizienten<br />
a0=fy(1)/n<br />
for i=1:n/2-1<br />
a(i)=2/n*real(fy(i+1));<br />
end<br />
a(n/2)=real(fy(n/2+1))/n;<br />
an=a'<br />
for i=1:n/2-1<br />
b(i)=-2/n*imag(fy(i+1));<br />
end<br />
bn=[b'; 0]<br />
% Plot des interpolierenden trig. Polynoms<br />
t=A-T:T/100:A+2*T; % Bereich zum plotten<br />
yf=a0;<br />
for i=1:n/2-1<br />
yf=yf+a(i)*cos(i*ome*(t-A))+b(i)*sin(i*ome*(t-A));<br />
end<br />
yf=yf+a(n/2)*cos(N*ome*(t-A));;<br />
plot(t,yf,'LineWidth',1.5);<br />
hold on<br />
plot(x,y,'o','MarkerFaceColor','k');% plot der Datenpunkte<br />
grid on<br />
title([' f(t)=' ,func ,' in<br />
[',num2str(A),',',num2str(A+T),']',...<br />
' mit ',num2str(n), ' Abtastpunkten']);<br />
axis([A-1.5*T A+2.5*T min(y)-1 max(y)+1])<br />
pause<br />
close<br />
% Darstellung des Amplitudenspektrums<br />
ampl=[a0 sqrt(an.^2+bn.^2)'];<br />
hold on<br />
for k=0:n/2<br />
plot([k k],[0 ampl(k+1)],'k','LineWidth',2)<br />
end<br />
plot([-1 n/2+1],[0 0],'k','LineWidth',1.5)<br />
grid on<br />
title(['Amplitudenspektrum von f(t)=' ,func ,' bei<br />
',num2str(n), ' Abtastpunkten']);<br />
axis([-1 n/2+1 -0.1*max(ampl) 1.1*max(ampl)]);<br />
pause<br />
close
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 76<br />
Abbildung 43: Links: Fourierinterpolation. Rechts: Amplitudenspektrum.<br />
5.5 Beispiele <strong>und</strong> Anwendungen<br />
5.5.1 Beispiel (Entstörung eines Signals)<br />
Das simulierte ungestörte Signal ist im folgenden Beispiel<br />
y = sin ( 10π t) + sin( 24π<br />
t)<br />
,<br />
d. h. eine Überlagerung von zwei harmonischen Schwingungen mit Frequenzen<br />
f<br />
1<br />
=5 Hz<br />
<strong>und</strong><br />
f<br />
2<br />
=12 Hz .<br />
Auf dieses Signal wird eine zufällige Störung mit gleichverteilten (d. h. keine bevorzugte<br />
Frequenz) Zufallszahlen zwischen 0 <strong>und</strong> 1 überlagert (addiert). Anschliessend wird eine<br />
Spektralanalyse des Signals vorgenommen um die gesuchten Frequenzen zu entdecken.<br />
% Erzeugen <strong>und</strong> Zeichnen eines gestörten Signals<br />
% <strong>Fouriertransformation</strong> <strong>und</strong> Frequenzspektrum<br />
% Entstoerung des Signals<br />
% Aus 'Mohr': Numerische Methoden in der Technik<br />
% Filename = entstoerung.m<br />
n=512;<br />
t=0:2*pi/n:2*pi;<br />
AbtFreq=n/(2*pi); % Abtastfrequenz<br />
freq1=5;<br />
freq2=12;<br />
% abgetastete Werte<br />
x=sin(2*pi*freq1*t)+cos(2*pi*freq2*t)+randn(size(t));<br />
% Darstellung des Zeitsignals<br />
subplot(2,1,1)<br />
plot(t,x)<br />
title('Zeitsignal');<br />
axis([0 2*pi -1.1*max(x) 1.1*max(x)]);<br />
pause
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 77<br />
% Berechnung <strong>und</strong> Darstellung des Leistungsspektrums<br />
Y=fft(x,n);<br />
pyy=Y.*conj(Y)/n;<br />
f=[0:(n/2-1)]/(2*pi);<br />
subplot(2,1,2)<br />
plot(f,pyy(1:n/2),'LineWidth',1);<br />
title('Frequenzdarstellung');<br />
axis([0 AbtFreq/2 0 1.1*max(pyy)]);<br />
pause<br />
close<br />
[c i]=sort(pyy(1:n/2));<br />
fre=i/2/pi;<br />
fre1=fre(n/2)<br />
fre2=fre(n/2-1)<br />
T=1/min(fre1,fre2)<br />
te=0:2*pi/n:10*T;<br />
subplot(2,1,1)<br />
plot(te,x(1:length(te)))<br />
title('Originalsignal');<br />
axis([0 10*T -1.1*max(x) 1.1*max(x)]);<br />
pause<br />
hold on<br />
% entstoertes Signal<br />
xe=sin(2*pi*fre1*te)+cos(2*pi*fre2*te);<br />
subplot(2,1,2)<br />
plot(te,xe)<br />
title('entstoertes Signal');<br />
axis([0 10*T -1.1*max(x) 1.1*max(x)]);<br />
pause<br />
close<br />
Abbildung 44: Die beiden Outputfenster des obigen Matlab-Codes.
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 78<br />
5.5.2 Beispiel (Filterung eines Signals)<br />
Das simulierte Signal ist im folgenden Beispiel<br />
1<br />
y = sin ( 10π t) + cos( 24π<br />
t) + sin( 80π<br />
t)<br />
,<br />
2<br />
d. h. eine Überlagerung von drei harmonischen Schwingungen mit Frequenzen<br />
f =5 1<br />
Hz<br />
<strong>und</strong><br />
f =12 2<br />
Hz<br />
<strong>und</strong><br />
f<br />
3<br />
= 40 Hz .<br />
Der hochfrequente Anteil wird durch abschneiden im Frequenzbereich eliminiert.<br />
% Erzeugen <strong>und</strong> Zeichnen eines gestörten Signals<br />
% <strong>Fouriertransformation</strong> <strong>und</strong> Frequenzspektrum<br />
% Entstoerung des Signals<br />
% Prinzip Aus 'Mohr': Numerische Methoden in der Technik<br />
% Filename = filterung.m<br />
n=1024;<br />
t=0:2*pi/n:2*pi;<br />
AbtFreq=n/(2*pi); % Abtastfrequenz<br />
freq1=5;<br />
freq2=12;<br />
freq3=40;<br />
% abg. Werte<br />
x=sin(2*pi*freq1*t)+cos(2*pi*freq2*t)+0.5*sin(2*pi*freq3*t);<br />
% Darstellung des Zeitsignals<br />
subplot(2,1,1)<br />
plot(t,x)<br />
title('Zeitsignal');<br />
axis([0 2*pi -1.1*max(x) 1.1*max(x)]);<br />
pause<br />
% Berechnung <strong>und</strong> Darstellung des Leistungsspektrums<br />
fy=fft(x,n);<br />
pyy=fy.*conj(fy)/n;<br />
f=[0:(n/2-1)]/(2*pi);<br />
subplot(2,1,2)<br />
plot(f,pyy(1:n/2),'LineWidth',1);<br />
title('Frequenzdarstellung');<br />
axis([0 AbtFreq/2 0 1.1*max(pyy)]);<br />
pause<br />
close<br />
% Abschneiden der hohenFrequenzen<br />
fa=30; % Abschneidefrequenz<br />
kk=floor(2*pi*fa); %Index der Abschneidefrequenz
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 79<br />
fy=fy(1:kk);<br />
kkk=min(kk,n/2);<br />
T=1/fa;<br />
% Berechnung der reellen Koeffizienten<br />
a0=fy(1)/n;<br />
for i=1:kkk-1<br />
a(i)=2/n*real(fy(i+1));<br />
end<br />
for i=1:kkk-1<br />
b(i)=-2/n*imag(fy(i+1));<br />
end<br />
te=0:2*pi/n:10*T; % Bereich zum plotten<br />
subplot(2,1,1)<br />
plot(te,x(1:length(te)))<br />
title('Originalsignal');<br />
axis([0 10*T -1.1*max(x) 1.1*max(x)]);<br />
pause<br />
hold on<br />
% Plot des interpolierenden trig. Polynoms<br />
yf=a0;<br />
for i=1:kkk-1<br />
yf=yf+a(i)*cos(i*te)+b(i)*sin(i*te);<br />
end<br />
subplot(2,1,2)<br />
plot(te,yf)<br />
title('gefiltertes Signal');<br />
axis([0 10*T -1.1*max(x) 1.1*max(x)]);<br />
pause<br />
close<br />
Abbildung 45: Die beiden Outputfenster des obigen Matlab-Codes.
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 80
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 81<br />
6 Anhang: Berechnung der reellen Fourierkoeffizienten<br />
Wir beweisen die Formeln für die reellen diskreten Fourierkoeffizienten als Grenzfall<br />
eines approximierenden trigonometrischen Polynoms. Die Lösung für das Approximationsproblem<br />
kennen wir schon<br />
t −1<br />
t<br />
( A A) A y<br />
x = .<br />
Wir gehen also von einem überbestimmten linearen Gleichungssystem aus. Einsetzen der<br />
2N Punkte in die Funktionsgleichung g liefert ein lineares Gleichungssystem für die 2n+1<br />
Unbekannten a o , a k , b k . Für N > n führt dies zu einem überbestimmten lineares Gleichungssystem<br />
A x = y mit A = (2N, 2n+1)-Matrix <strong>und</strong> y = (2N, 1)-Matrix<br />
⎛ 1 cost0<br />
sint0<br />
cos<br />
⎜<br />
⎜ 1 cost1<br />
sin t1<br />
cos<br />
1<br />
A=<br />
⎜ <br />
⎜<br />
⎝ 1 cost<br />
sin t cos<br />
<strong>und</strong> dem Vektor der abgetasteten Werte<br />
⎛ y0<br />
⎞<br />
⎜ ⎟<br />
⎜ y1<br />
⎟<br />
y = ⎜ ⎟<br />
⎜ ⎟<br />
⎝ y<br />
2N<br />
−1 ⎠<br />
<strong>und</strong><br />
⎛α<br />
0 ⎞<br />
⎜ ⎟<br />
⎜α1<br />
⎟<br />
⎜ β ⎟<br />
1<br />
x = ⎜ ⎟<br />
⎜ ⎟<br />
⎜ ⎟<br />
⎜<br />
α<br />
n ⎟<br />
⎝ β<br />
n ⎠<br />
als unbekannten Vektor.<br />
Die beste Lösung des Gleichungssystems<br />
( 2t0<br />
) cos( nt0<br />
) sin ( nt0<br />
)<br />
( 2t<br />
) cos( nt ) sin ( nt )<br />
( 2t<br />
) ( ) ( ) ⎟⎟⎟⎟⎟ 2N<br />
−1<br />
cos nt2N<br />
−1<br />
sin nt2N<br />
− ⎠<br />
2N<br />
−1<br />
2N<br />
−1<br />
1<br />
t<br />
t<br />
A A x = A y ist<br />
t −1<br />
t<br />
( A A) A y<br />
x = .<br />
Die Elemente der Matrix A t A bestehen aus den Skalarprodukten der Spaltenvektoren. Dabei<br />
ergeben sich Summen der Form<br />
2N<br />
1<br />
cos mt cos nt ,<br />
<strong>und</strong><br />
∑ −<br />
k = 0<br />
2N<br />
∑ −<br />
k = 0<br />
2N<br />
∑ −<br />
k = 0<br />
1<br />
sin<br />
1<br />
cos<br />
( ) ( )<br />
k<br />
( mt ) sin ( nt )<br />
k<br />
( mt ) sin ( nt )<br />
k<br />
k<br />
k<br />
k<br />
<br />
1<br />
<br />
1<br />
<br />
⎞
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 82<br />
Fast alle diese Summen sind 0 (diskretes Analogon der Orthogonalitätsbedingungen der<br />
trigonometrischen Funktionen: siehe <strong>Fouriertransformation</strong>). Nur gerade für m = n ergeben<br />
sich von 0 verschiedene Werte. Es gelten konkret die folgenden Werte:<br />
⎧ 0, m ≠ n<br />
2N<br />
⎪<br />
∑ − 1<br />
1<br />
cos ( mt<br />
k<br />
) cos ( nt<br />
k<br />
) = ⎨ 0.5, m = n ≠ N<br />
2N<br />
k = 0<br />
⎪<br />
⎩ 1, m = n = N<br />
2N<br />
∑ − 1<br />
1<br />
N k = 0<br />
2<br />
sin<br />
( mt ) sin ( nt )<br />
k<br />
k<br />
=<br />
⎧<br />
⎪<br />
⎨<br />
⎪<br />
⎩<br />
0,<br />
0.5,<br />
1,<br />
m ≠ n<br />
m = n ≠ N<br />
m = n = N<br />
1 2N<br />
∑ −1<br />
2N<br />
k = 0<br />
cos<br />
( mt ) sin ( nt ) = 0, m n<br />
k k<br />
,<br />
Mit diesen Beziehungen lauten die Normalengleichungen<br />
also<br />
t<br />
t<br />
A A x = A y<br />
⎛2N<br />
⎜<br />
⎜ 0<br />
⎜ 0<br />
⎜<br />
⎜ 0<br />
⎜<br />
⎜<br />
0<br />
⎜ <br />
⎜<br />
⎜ 0<br />
⎝ 0<br />
0<br />
N<br />
0<br />
0<br />
0<br />
<br />
0<br />
0<br />
0<br />
0<br />
N<br />
0<br />
0<br />
<br />
0<br />
0<br />
0<br />
0<br />
0<br />
N<br />
0<br />
<br />
0<br />
0<br />
0<br />
0<br />
0<br />
0<br />
N<br />
<br />
0<br />
0<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
0<br />
0<br />
0<br />
0<br />
0<br />
<br />
N<br />
<br />
2<br />
⎛<br />
⎜<br />
⎜ k<br />
2N<br />
−1<br />
⎜<br />
⎜ ∑ f<br />
0<br />
k = 0<br />
⎞ ⎜<br />
2N<br />
−1<br />
⎟<br />
0<br />
⎜<br />
⎟ ⎛α<br />
⎞<br />
⎟ ⎜ ∑ f<br />
0<br />
⎜<br />
k = 0<br />
0⎟<br />
⎜α<br />
⎟ ⎜ 2N<br />
−1<br />
1<br />
⎟<br />
⎜ ⎟ ⎜<br />
⎟ ∑ f<br />
0 β1<br />
⋅⎜<br />
⎟=<br />
⎜ k = 0<br />
⎟<br />
2N<br />
−1<br />
0 ⎜ ⎟ ⎜<br />
⎟<br />
<br />
⎜ ⎟ ⎜ ∑ f<br />
⎟<br />
⎜<br />
αn<br />
⎟ ⎜<br />
k = 0<br />
⎟<br />
0<br />
⎜<br />
⎟ ⎝ βn<br />
⎠<br />
⎜<br />
N ⎠ ⎜ 2N<br />
−1<br />
⎜ ∑ f<br />
⎜ k = 0<br />
⎜ 2N<br />
−1<br />
⎜ ∑ f<br />
⎝ k = 0<br />
N −1<br />
∑<br />
= 0<br />
( t )<br />
( t ) cos( t )<br />
( t ) sin ( t )<br />
( t ) cos( 2t<br />
)<br />
k<br />
( t ) cos( 2t<br />
)<br />
k<br />
( t ) cos( nt )<br />
k<br />
k<br />
k<br />
f<br />
<br />
k<br />
⎞<br />
⎟ ⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟ ( tk<br />
) sin ( ntk<br />
) ⎟<br />
⎠<br />
k<br />
k<br />
k<br />
k<br />
k<br />
(2n+1, 2n+1) (2n+1, 1) (2n+1, 1)<br />
Matrix A t A Matrix x Matrix A t y<br />
Die Koeffizientenmatrix A t A ist diagonal <strong>und</strong> wir erhalten somit sehr einfach die beste<br />
Lösung des Approximationsproblems (n < N).<br />
Diskrete Fourier Approximation<br />
g<br />
n<br />
n<br />
( t) = α<br />
0<br />
+ ∑( α<br />
k<br />
cos( kt) + β<br />
k<br />
sin( kt)<br />
)<br />
k = 1
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 83<br />
α =<br />
0<br />
k<br />
2N<br />
∑ − 1<br />
1<br />
2N<br />
i=<br />
0<br />
2N<br />
1<br />
1<br />
∑ −<br />
f<br />
N i=<br />
0<br />
2N<br />
1<br />
1<br />
∑ −<br />
f<br />
N i=<br />
0<br />
f<br />
( )<br />
t i<br />
( t ) cos ( kt )<br />
α =<br />
k = 1, … , n<br />
k<br />
i<br />
( t ) sin ( kt )<br />
β =<br />
k = 1, … , n<br />
i<br />
Für das Interpolationsproblem setzen wir n = N <strong>und</strong> β N = 0. Der Koeffizient β N müssen<br />
wir zu 0 machen, weil wir 2N Datenpunkte haben <strong>und</strong> deshalb auch nur 2N Koeffizienten<br />
bestimmen können. Der Ansatz<br />
g<br />
N<br />
N<br />
i<br />
i<br />
( t) = α<br />
0<br />
+ ∑( α<br />
k<br />
cos( kt) + β<br />
k<br />
sin( kt)<br />
)<br />
k = 1<br />
würde 2N+1 unbekannte Koeffizienten enthalten. Für Interpolation erhalten wir dann das<br />
folgende Gleichungssystem.<br />
⎛2N<br />
⎜<br />
⎜ 0<br />
⎜ 0<br />
⎜<br />
⎜ 0<br />
⎜<br />
⎜<br />
0<br />
⎜ <br />
⎜<br />
⎜ 0<br />
⎝ 0<br />
0<br />
N<br />
0<br />
0<br />
0<br />
<br />
0<br />
0<br />
0<br />
0<br />
N<br />
0<br />
0<br />
<br />
0<br />
0<br />
0<br />
0<br />
0<br />
N<br />
0<br />
<br />
0<br />
0<br />
0<br />
0<br />
0<br />
0<br />
N<br />
<br />
0<br />
0<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
0<br />
0<br />
0<br />
0<br />
0<br />
N<br />
<br />
<br />
2<br />
⎛<br />
⎜<br />
⎜ k<br />
2N<br />
−1<br />
⎜<br />
0⎞<br />
⎟ ⎜ ∑ f<br />
k = 0<br />
0⎟<br />
⎜<br />
2N<br />
−1<br />
⎟⎛<br />
α0<br />
⎞ ⎜<br />
0 ⎜ ⎟ ⎜ ∑ f<br />
⎟⎜<br />
α k = 0<br />
1 ⎟<br />
0⎟<br />
⎜ 2N<br />
−1<br />
⎜ ⎟<br />
⎟ β = ⎜<br />
1<br />
⎜ ⎟ ∑ f<br />
0<br />
⎟ ⎜ k = 0<br />
⎜ ⎟ 2N<br />
−1<br />
⎟<br />
⎜<br />
⎜ ⎟<br />
⎟⎝α<br />
⎠<br />
⎜ ∑ f<br />
N<br />
0⎟<br />
⎜<br />
k = 0<br />
⎜<br />
2N<br />
⎠ ⎜<br />
⎜ 2N<br />
−1<br />
⎜ ∑ f<br />
⎝ k = 0<br />
N −1<br />
∑<br />
= 0<br />
( t )<br />
( t ) cos( t )<br />
( t ) sin ( t )<br />
( t ) cos( 2t<br />
)<br />
k<br />
( t ) cos( 2t<br />
)<br />
k<br />
k<br />
k<br />
f<br />
<br />
k<br />
⎞<br />
( ) ( ) ⎟ ⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟ tk<br />
cos Ntk<br />
⎠<br />
k<br />
k<br />
k<br />
k<br />
(2N, 2N) (2N, 1) (2N, 1)<br />
Matrix A t A Matrix x Matrix A t y<br />
Die Bestimmung der Koeffizienten ist wiederum sehr einfach (Koeffizientenmatrix ist<br />
diagonal) <strong>und</strong> liefert die gesuchten Fourierkoeffizienten für die Fourier Interpolation.<br />
Weil β N = 0, entfällt also der letzte Sinusterm <strong>und</strong> wir erhalten.<br />
Diskrete Fourier Interpolation<br />
Es sei g in [0, 2π] definiert <strong>und</strong> 2π-periodisch.<br />
g<br />
N<br />
N<br />
∑ − 1<br />
k = 1<br />
2N<br />
∑ − 1<br />
1<br />
f ( t i<br />
)<br />
N i=<br />
0<br />
1 2N<br />
−1<br />
2 −1<br />
1<br />
∑<br />
= ∑<br />
N<br />
f ti<br />
cos Nti<br />
N i=<br />
0<br />
2N<br />
i=<br />
0<br />
( t) = α + α cos( Nt) + ( α cos( kt) + β ( kt)<br />
)<br />
α<br />
0<br />
=<br />
,<br />
2<br />
α<br />
N<br />
=<br />
2<br />
0 N<br />
k<br />
k<br />
sin<br />
i<br />
( ) ( ) ( −1) f ( t )<br />
i
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 84<br />
k<br />
2N<br />
1<br />
1<br />
∑ −<br />
N i=<br />
0<br />
2N<br />
1<br />
1<br />
∑ −<br />
( t ) cos ( kt )<br />
α = f , k = 1, … , N – 1<br />
i=<br />
0<br />
i<br />
( t ) sin ( kt )<br />
β<br />
k<br />
= f , k = 1, … , N – 1<br />
i<br />
i<br />
N<br />
Für das trigonometrische Polynom g N gilt die Interpolationseigenschaft<br />
g<br />
N<br />
i<br />
π<br />
N<br />
( t ) = f ( t ) , t = k , k = 0,...,2N<br />
−1<br />
k<br />
k<br />
k
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 85<br />
7 Anhang: Berechnung der komplexen Fourierkoeffizienten<br />
Wir gehen aus von der 2π-periodischen Funktion f mit den 2N Stützstellen<br />
π<br />
t i<br />
= i , i = 0, ,2N<br />
−1<br />
N<br />
<strong>und</strong> benutzen die nach cos(k t ) <strong>und</strong> sin(k t ) aufgelösten Euler'schen Formeln<br />
<strong>und</strong><br />
cos<br />
sin<br />
1 jkt − jkt<br />
( kt) = ( e + e 2<br />
)<br />
1 jkt − jkt<br />
( kt) = − j( e −e<br />
2<br />
)<br />
Einsetzen dieser Ausdrücke in der reellen Fourierreihe liefert z. B. für N = 4<br />
f<br />
a1<br />
jt − jt a2<br />
2 jt −2<br />
jt a3<br />
3 jt −3<br />
jt a4<br />
4 jt −4<br />
jt<br />
( t) = a + ( e + e ) + ( e + e ) + ( e + e ) + ( e + e )<br />
0<br />
− j<br />
2<br />
2<br />
Ordnen nach den Funktionen e jkt liefert<br />
f<br />
2<br />
2<br />
jt − jt b2<br />
2 jt −2<br />
jt b3<br />
3 jt − jt<br />
( e −e<br />
) − j ( e −e<br />
) − j ( e −e<br />
)<br />
b 1<br />
3<br />
jt 1<br />
2 jt 1<br />
3 jt a4<br />
4 jt 4 jt<br />
( t) = a +<br />
1 ( a −b<br />
j ) e + ( a −b<br />
j ) e + ( a −b<br />
j ) e + ( e + e<br />
− )<br />
0<br />
2<br />
1<br />
1<br />
2<br />
2<br />
2<br />
1 1<br />
1<br />
−<br />
1 1<br />
2 2<br />
3 3<br />
− jt<br />
−2<br />
jt<br />
3 jt<br />
( a + b j ) e + ( a + b j ) e + ( a + b j ) e<br />
+<br />
2<br />
2<br />
2<br />
Einsetzen der Interpolationspunkte (t k , y k ) liefern die 2N Gleichungen.<br />
Wir wählen 2N = 8<br />
jt 1<br />
k<br />
2 jt 1<br />
k<br />
3 jt a<br />
k 4 4 jtk<br />
4 jtk<br />
( t ) = y = a +<br />
1 ( a −b<br />
j ) e + ( a −b<br />
j ) e + ( a −b<br />
j ) e + ( e + e )<br />
−<br />
f<br />
k k 0 1 1<br />
2 2<br />
3 3<br />
2<br />
2<br />
2<br />
2<br />
1 − jt 1<br />
k<br />
−2<br />
jt 1<br />
k<br />
−3<br />
jtk<br />
+ ( a1<br />
+ b1<br />
j ) e + ( a2<br />
+ b2<br />
j ) e + ( a3<br />
+ b3<br />
j ) e , k = 0, ... , 2N – 1 = 7<br />
2<br />
2<br />
2<br />
π<br />
π π<br />
Weil t k<br />
= k , k = 0, ,<br />
2N<br />
−1<br />
gilt für alle t k , dass 8 t k<br />
= 8k<br />
= 8k<br />
= 2π<br />
k <strong>und</strong> somit<br />
N<br />
N 4<br />
jt 2 jk<br />
e k π<br />
= e = 1. Daraus wiederum folgt, dass<br />
e<br />
e<br />
e<br />
− jtk<br />
−2<br />
jtk<br />
−3<br />
jtk<br />
= e<br />
= e<br />
= e<br />
− jtk<br />
e<br />
−2<br />
jtk<br />
−3<br />
jtk<br />
−4<br />
jtk<br />
−4<br />
jtk<br />
8 jtk<br />
4 jtk<br />
e = e e = e<br />
sodass die Gleichungen auch wie folgt geschrieben werden kann.<br />
1<br />
jt 1<br />
k<br />
2 jt 1<br />
k<br />
3 jtk<br />
4 jtk<br />
f ( tk<br />
) = yk<br />
= a0<br />
+ ( a1<br />
−b1<br />
j ) e + ( a2<br />
−b2<br />
j ) e + ( a3<br />
−b3<br />
j ) e + a4e<br />
2<br />
2<br />
2<br />
1<br />
5 jt 1<br />
k<br />
6 jt 1<br />
k<br />
7 jtk<br />
+ ( a3<br />
+ b3<br />
j ) e + ( a2<br />
+ b2<br />
j ) e + ( a1<br />
+ b1<br />
j ) e , k = 0, ..., 2N – 1 = 7<br />
2<br />
2<br />
2<br />
oder<br />
8 jtk<br />
e<br />
e<br />
8 jtk<br />
8 jtk<br />
= e<br />
2<br />
2<br />
7 jtk<br />
= e<br />
= e<br />
3<br />
6 jtk<br />
5 jtk<br />
2<br />
3<br />
2<br />
2
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 86<br />
jtk<br />
2 jtk<br />
3 jtk<br />
4 jtk<br />
5 jtk<br />
6 jtk<br />
7 jtk<br />
( t ) = y = c + c e + c e + c e + c e + c e + c e c e<br />
f<br />
k k<br />
7<br />
mit den Abkürzungen<br />
c<br />
0<br />
= a0<br />
= reell<br />
4 jt<br />
c<br />
4<br />
= a4<br />
= reell alternierende Vorzeichen, weil e k<br />
= ± 1<br />
1<br />
c5<br />
= c3<br />
= ( a3<br />
+ b3<br />
j )<br />
2<br />
1<br />
c6<br />
= c2<br />
= ( a2<br />
+ b2<br />
j )<br />
2<br />
1<br />
c7<br />
= c1<br />
= ( a1<br />
+ b1<br />
j )<br />
2<br />
Einsetzen der 2N Funktionswerte y i liefert ein lineares Gleichungssystem für die Koeffizienten<br />
c k der folgenden Gestalt<br />
c0 + c1<br />
+ c2<br />
+ + c2N −1<br />
= y0<br />
jt 2<br />
( 2 1)<br />
0 1<br />
1 j t1<br />
j N − t1<br />
c + c e + c<br />
y<br />
2e<br />
+ + c2N<br />
−1e<br />
=<br />
1<br />
jt<br />
2<br />
( 2 1)<br />
0 1<br />
2 j t2<br />
j N − t2<br />
c + c e + c<br />
y<br />
2e<br />
+ + c2N<br />
−1e<br />
=<br />
2<br />
…<br />
jt2<br />
N −1<br />
j2t2<br />
N −1<br />
j( 2N<br />
−1)<br />
t2<br />
N −1<br />
c0<br />
+ c1e<br />
+ c2e<br />
+ + c2N<br />
− 1e<br />
= y2N<br />
−1<br />
π<br />
Wenn wir die Stützwerte t i<br />
= i , i = 0, ,2N<br />
−1<br />
einsetzen, dann bekommen wir mit der<br />
N<br />
j π<br />
0 1 2<br />
3<br />
4<br />
5<br />
6<br />
+<br />
N<br />
Abkürzung ω = e (2N te 2N<br />
Einheitswurzel weil ω = 1)<br />
c0 + c1<br />
+ c2<br />
+ + c2N −1<br />
= y0<br />
2<br />
2<br />
c + c1ω + c2ω<br />
+ + c2<br />
−1ω<br />
2 4<br />
4<br />
c + c1ω<br />
+ c2ω<br />
+ +<br />
c2<br />
−1e<br />
…<br />
2N<br />
−1<br />
4N<br />
−4<br />
c c ω + c ω + + c<br />
( N −1)<br />
0 N<br />
= y1<br />
( N −2)<br />
0 N<br />
= y2<br />
( 2N<br />
−1)( 2N<br />
−1)<br />
0<br />
+<br />
1<br />
2<br />
2N<br />
−1<br />
= y2N<br />
−1<br />
Die Koeffizientenmatrix<br />
⎛1<br />
1 1 1 ⎞<br />
⎜<br />
2<br />
2N<br />
−1<br />
⎜1<br />
ω ω ω<br />
F = ⎜ 2<br />
4<br />
4N<br />
−2<br />
1 ω ω ω<br />
⎜<br />
⎜<br />
<br />
<br />
⎜<br />
( )( ) ⎟ ⎟⎟⎟⎟⎟ 2N<br />
−1<br />
4N<br />
−2<br />
2N<br />
−1<br />
2N<br />
−1<br />
⎝1<br />
ω ω ω ⎠<br />
ist symmetrisch <strong>und</strong> wir können zusätzlich zeigen, dass sie orthogonal ist. Sie lässt sich<br />
deshalb nach Normieren <strong>und</strong> (konjugiert komplex) Transponieren einfach invertieren<br />
⎛1<br />
1 1 1 ⎞<br />
⎜<br />
2<br />
2N<br />
−1<br />
⎜1<br />
ω ω ω<br />
F –1 1<br />
= ⎜ 2<br />
4<br />
4N<br />
−2<br />
1 ω ω ω<br />
2N<br />
⎜<br />
⎜<br />
<br />
<br />
⎜<br />
( )( ) ⎟ ⎟⎟⎟⎟⎟ 2N<br />
−1<br />
4N<br />
−2<br />
2N<br />
−1<br />
2N<br />
−1<br />
⎝1<br />
ω ω ω ⎠<br />
ω
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 87<br />
mit ω konjugiert komplex zu ω. Weil ω = ω<br />
(komplexen) Fourierkoeffizienten<br />
c<br />
k<br />
2N<br />
−1<br />
2N<br />
−1<br />
1 −ki<br />
1<br />
= ∑ yiω<br />
= ∑ yie<br />
2N<br />
2N<br />
i=<br />
0<br />
i=<br />
0<br />
π<br />
− j<br />
N −1<br />
e = erhalten wir für die diskreten<br />
π<br />
− jki<br />
N<br />
, k = 0, ,<br />
2N<br />
−1<br />
<strong>und</strong> das interpolierende komplexe trigonometrische Polynom lautet<br />
f<br />
2N<br />
∑ − 1<br />
k = 0<br />
jkt<br />
( t) = c k<br />
e<br />
1<br />
1<br />
2N<br />
mit = ∑ − − jki<br />
N<br />
ck<br />
yie<br />
, k = 0, ,<br />
2N<br />
−1<br />
2N<br />
i=<br />
0<br />
π
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 88
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 89<br />
8 Anhang: Reduktion des Rechenaufwandes durch FFT<br />
Im Folgenden wird die Reduktion des Rechenaufwandes bei Anwendung des FFT-<br />
3<br />
Algorithmus gegenüber der herkömmlichen DFT bei Verwendung von 8 = 2 ( N = 4)<br />
Datenpunkten x , y ) mit x i<br />
= iπ / 4 für i = 0,<br />
1, ,<br />
7 dargestellt.<br />
(<br />
i i<br />
Für das Interpolationspolynom gilt im Falle N = 4 für die reelle Darstellung:<br />
a a<br />
g ,<br />
3<br />
0 4<br />
4<br />
( x)<br />
= + cos(4x)<br />
+<br />
)<br />
2 2<br />
k=<br />
1<br />
i=<br />
0<br />
∑( ak<br />
cos( k x)<br />
+ bk<br />
sin( k x )<br />
7<br />
1<br />
a<br />
k<br />
= ∑ yi<br />
cos( k xi<br />
) für k = 0;1;<br />
;<br />
4<br />
4<br />
7<br />
1<br />
b<br />
k<br />
= ∑ yi<br />
sin( k xi<br />
) für k =1;<br />
;<br />
3 ,<br />
4<br />
j=<br />
0<br />
für die komplexe Darstellung:<br />
1<br />
g ,<br />
c<br />
7<br />
( x)<br />
= ∑c<br />
exp( )<br />
4 k<br />
j k x<br />
8 k = 0<br />
k<br />
=<br />
7<br />
∑<br />
i=<br />
0<br />
i k π<br />
yi<br />
exp( − j ) für k = 0;1;<br />
;<br />
7 .<br />
4<br />
Beim direkten Berechnen sind die komplexen Fourier-Koeffizienten c<br />
k<br />
gegeben durch<br />
c +<br />
0<br />
= y0<br />
+ y1<br />
+ y2<br />
+ y3<br />
+ y4<br />
+ y5<br />
+ y6<br />
y7<br />
c<br />
1<br />
=<br />
y<br />
0<br />
1−<br />
j<br />
+<br />
2<br />
y<br />
1<br />
−<br />
j y<br />
2<br />
1+<br />
j<br />
−<br />
2<br />
y<br />
3<br />
− y<br />
4<br />
+<br />
j −1<br />
y<br />
2<br />
5<br />
+<br />
j y<br />
6<br />
1+<br />
j<br />
+<br />
2<br />
y<br />
7<br />
c +<br />
c<br />
2<br />
= y0<br />
− j y1<br />
− y2<br />
+ j y3<br />
+ y4<br />
− j y5<br />
− y6<br />
j y7<br />
3<br />
= y<br />
0<br />
1+<br />
j<br />
− y<br />
2<br />
1<br />
+ j y<br />
2<br />
1−<br />
j<br />
+ y<br />
2<br />
3<br />
− y<br />
4<br />
1+<br />
j<br />
+ y<br />
2<br />
5<br />
−<br />
j y<br />
6<br />
+<br />
j −1<br />
y<br />
2<br />
7<br />
c<br />
4<br />
= y0<br />
− y1<br />
+ y2<br />
− y3<br />
+ y4<br />
− y5<br />
+ y6<br />
− y7<br />
c<br />
5<br />
=<br />
y<br />
0<br />
+<br />
j −1<br />
y1<br />
−<br />
2<br />
j y<br />
2<br />
1+<br />
j<br />
+<br />
2<br />
y − y<br />
3<br />
4<br />
1−<br />
j<br />
+<br />
2<br />
y<br />
5<br />
+<br />
j y<br />
6<br />
1+<br />
j<br />
−<br />
2<br />
y<br />
7<br />
c<br />
c<br />
6<br />
= y0<br />
+ j y1<br />
− y2<br />
− j y3<br />
+ y4<br />
+ j y5<br />
− y6<br />
− j y7<br />
7<br />
1+<br />
j j −1<br />
1+<br />
j 1−<br />
j<br />
= y0<br />
+ y1<br />
+ j y2<br />
+ y3<br />
− y4<br />
− y5<br />
− j y6<br />
+ y7<br />
.<br />
2<br />
2<br />
2<br />
2<br />
Da die Datenmenge klein ist, hat ein beachtlicher Teil der Koeffizienten von y i dieser<br />
Gleichungen den Wert 1 oder –1. Da für N > 4 dies weniger häufig der Fall ist, wird zum<br />
Zwecke der genauen Bestimmung der Zahl der Rechenoperationen, auch die Multiplikation<br />
mit 1 oder –1 mitgezählt, obwohl dies hier nicht nötig wäre. Somit sind 64 Multipli-
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 90<br />
kationen, resp. Divisionen <strong>und</strong> 56 Additionen, resp. Subtraktionen zum direkten Berechnen<br />
von c0 , c1<br />
, , c7<br />
notwendig.<br />
Bei Verwendung des FFT-Algorithmus wird zuerst<br />
1<br />
d 0 = ( c0<br />
+ c4<br />
) = y0<br />
+ y2<br />
+ y4<br />
+ y<br />
2<br />
1<br />
d 1 = ( c0<br />
− c4<br />
) = y1<br />
+ y3<br />
+ y5<br />
+ y<br />
2<br />
1<br />
d<br />
2<br />
= ( c1<br />
+ c5)<br />
= y0<br />
− j y2<br />
− y4<br />
+ j y<br />
2<br />
d<br />
d<br />
1<br />
= ( c<br />
2<br />
1−<br />
j<br />
) = y<br />
2<br />
1+<br />
j<br />
− y<br />
2<br />
6<br />
7<br />
6<br />
j −1<br />
y<br />
2<br />
1+<br />
j<br />
+<br />
2<br />
3 1<br />
− c5<br />
1<br />
3<br />
+<br />
5<br />
j y7<br />
1<br />
2<br />
4 = ( c2<br />
+ c6<br />
)<br />
=<br />
y<br />
0<br />
− y<br />
1<br />
d = ( c2<br />
− c6)<br />
= j ( − y1<br />
+ y3<br />
− y5<br />
+<br />
2<br />
d<br />
d<br />
2<br />
+<br />
y<br />
4<br />
− y<br />
5<br />
y7<br />
1<br />
=<br />
2<br />
c + c<br />
6<br />
(<br />
3 7)<br />
7<br />
1<br />
= ( c<br />
2<br />
berechnet, anschliessend<br />
3<br />
= y<br />
0<br />
+ j y<br />
1+<br />
j<br />
− c7<br />
) = − y1<br />
2<br />
1<br />
e +<br />
2<br />
2<br />
− y<br />
4<br />
− j y<br />
1−<br />
j<br />
+ y<br />
2<br />
3<br />
6<br />
6<br />
)<br />
1+<br />
j<br />
+ y<br />
2<br />
5<br />
1−<br />
j<br />
− y<br />
2<br />
0 = ( d0<br />
+ d4)<br />
= y0<br />
y4<br />
e4 = ( d2<br />
+ d6<br />
) = y0<br />
− y4<br />
1<br />
1<br />
e 1 = ( d0<br />
− d4)<br />
= y2<br />
+ y6<br />
e<br />
5<br />
= ( d2<br />
− d6)<br />
= j ( − y2<br />
+ y6)<br />
2<br />
2<br />
1<br />
1<br />
1−<br />
j<br />
e<br />
2<br />
= ( j d1<br />
+ d5)<br />
= j ( y3<br />
+ y7)<br />
e6 = ( j d3<br />
+ d7)<br />
= ( y3<br />
− y7)<br />
2<br />
2<br />
2<br />
1<br />
1<br />
1+<br />
j<br />
e<br />
3<br />
= ( j d1<br />
− d5)<br />
= j ( y1<br />
+ y5)<br />
e7 = ( j d3<br />
− d7)<br />
= ( y1<br />
− y5)<br />
2<br />
2<br />
2<br />
<strong>und</strong> schlussendlich<br />
1<br />
f =<br />
2<br />
0 = ( e0<br />
+ e4<br />
) y0<br />
f4<br />
= e2<br />
+ e6<br />
= y7<br />
1<br />
f =<br />
2<br />
1<br />
2<br />
1 ⎛<br />
⎜<br />
2<br />
⎝<br />
1<br />
f<br />
2 ⎜ ⎛<br />
=<br />
⎝<br />
j + 1<br />
2<br />
j + 1<br />
e<br />
2<br />
7<br />
)<br />
− e<br />
⎞<br />
⎟<br />
⎠<br />
j −1<br />
1 = ( e0<br />
− e4)<br />
y4<br />
5<br />
2 6<br />
3<br />
2<br />
⎞<br />
⎟<br />
j −1<br />
= y<br />
⎠ 2
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 91<br />
1<br />
f =<br />
2<br />
2<br />
= ( j e1<br />
+ e5)<br />
j y6<br />
f6<br />
= e3<br />
+ e7<br />
= − y5<br />
1<br />
f =<br />
2<br />
1 ⎛ j 1 ⎞<br />
⎜<br />
−<br />
⎟<br />
1+<br />
j<br />
2<br />
2<br />
⎝<br />
⎠ 2<br />
1 ⎛ j 1 ⎞<br />
⎜<br />
−<br />
1+<br />
j<br />
= e e ⎟ = − y .<br />
2<br />
2<br />
⎝<br />
⎠ 2<br />
3<br />
= ( j e1<br />
− e5)<br />
j y2<br />
7<br />
3<br />
−<br />
7<br />
1<br />
Die Beziehungen zwischen den f k , e k , d k , c k sind von den speziellen Datenpunkten<br />
unabhängig. Sie hängen nur vom Wert N = 4 ab. Für jedes N existiert eine eindeutige<br />
Menge von Faktoren in den Gleichungen, die zuerst berechnet <strong>und</strong> abgespeichert werden.<br />
Ausgehend von f k können nun rückwärts über die e k , d k die c k für<br />
k = 0 ;1; ; 2m<br />
− 1 berechnet werden:<br />
(1) f 0 = y0<br />
f 1 = y4<br />
f<br />
2<br />
= j y6<br />
f<br />
3<br />
= j y2<br />
j −1 j −1 1+<br />
j<br />
1+<br />
j<br />
f4<br />
= y<br />
7<br />
f5<br />
= y<br />
3<br />
f6<br />
− y5<br />
f7<br />
= −<br />
2<br />
2<br />
2<br />
2<br />
f<br />
= y1<br />
1−<br />
j<br />
j + 1<br />
(2) e 0 = f0<br />
+ f1<br />
e<br />
1<br />
= − j ( f2<br />
+ f3)<br />
e<br />
2<br />
= ( f4<br />
+ f5)<br />
e<br />
3<br />
= − ( f6<br />
+ f7)<br />
2<br />
2<br />
e f − e f − e f −<br />
e = f −<br />
4 = 0 f1<br />
5 = 2 f3<br />
6 = 4 f5<br />
7 6 f7<br />
(3) d 0 = e0<br />
+ e1<br />
d<br />
1<br />
− j ( e2<br />
+ e3)<br />
d<br />
= d<br />
2<br />
e4<br />
+ e5<br />
= d = − j e + )<br />
3<br />
(<br />
6<br />
e7<br />
4 = e0<br />
− e1<br />
d5 = e2<br />
− e3<br />
d6 = e4<br />
− e5<br />
d7 = e6<br />
− e7<br />
(4) c 0 d0<br />
+ d1<br />
c<br />
= c 1 = d2<br />
+ d3<br />
c 2 = d4<br />
+ d5<br />
c 3 = d6<br />
+ d7<br />
4 = d0<br />
− d1<br />
c5 = d2<br />
− d3<br />
c6 = d4<br />
− d5<br />
7 6 d7<br />
Werden die Fourier-Koeffizienten c0 , c1<br />
, , c7<br />
auf diese Weise berechnet, so wird die<br />
in der folgenden Tabelle gezeigte Anzahl von Operationen benötigt. Wir beachten, dass<br />
Multiplikation mit 1 oder –1 wieder mitgezählt wird<br />
Schritt Multiplikationen/<br />
Divisionen<br />
Additionen/<br />
Subtraktionen<br />
1 8 0<br />
2 8 8<br />
3 8 8<br />
4 0 8<br />
total 24 24<br />
c<br />
=<br />
d<br />
−<br />
Das Fehlen von Multiplikationen, resp. Divisionen in Schritt 4 folgt aus der Tatsache,<br />
dass für jedes m die Koeffizienten c k aus d k in gleicher Weise berechnet werden, d. h.<br />
c k = d2 k + d2k<br />
+ 1 <strong>und</strong> k + m = d2 k − d2k<br />
+ 1<br />
c für k = 0 ;1; ; m − 1
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 92<br />
so dass keine komplexe Multiplikation notwendig ist. Insgesamt erfordert die direkte Berechnung<br />
der Koeffizienten c0 , c1<br />
, , c7<br />
64 Multiplikationen, resp. Divisionen <strong>und</strong> 56<br />
Additionen, resp. Subtraktionen; die schnelle Fourier-Transformation reduziert die Berechnungen<br />
auf 24 Multiplikationen, resp. Divisionen <strong>und</strong> 24 Additionen, resp. Subtraktionen.
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 93<br />
9 Anhang: Auszug aus der Matlab-Dokumentation<br />
fft<br />
One-dimensional fast Fourier transform<br />
Syntax<br />
Definition<br />
Y = fft(X)<br />
Y = fft(X,n)<br />
Y = fft(X,[],dim)<br />
Y = fft(X,n,dim)<br />
The functions X = fft(x) and x = ifft(X) implement the transform and inverse<br />
transform pair given for vectors of length N by:<br />
where<br />
is an Nth root of unity.<br />
Description<br />
Y = fft(X) returns the discrete Fourier transform (DFT) of vector X, computed with a<br />
fast Fourier transform (FFT) algorithm.<br />
If X is a matrix, fft returns the Fourier transform of each column of the matrix.<br />
If X is a multidimensional array, fft operates on the first nonsingleton dimension.<br />
Y = fft(X,n) returns the n-point DFT. If the length of X is less than n, X is padded<br />
with trailing zeros to length n. If the length of X is greater than n, the sequence X is truncated.<br />
When X is a matrix, the length of the columns are adjusted in the same manner.<br />
Y = fft(X,[],dim) and Y = fft(X,n,dim) applies the FFT operation across<br />
the dimension dim.
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 94<br />
Examples<br />
A common use of Fourier transforms is to find the frequency components of a signal buried<br />
in a noisy time domain signal. Consider data sampled at 1000 Hz. Form a signal containing<br />
50 Hz and 120 Hz and corrupt it with some zero-mean random noise:<br />
t = 0:0.001:0.6;<br />
x = sin(2*pi*50*t)+sin(2*pi*120*t);<br />
y = x + 2*randn(size(t));<br />
plot(y(1:50))<br />
title('Signal Corrupted with Zero-Mean Random Noise')<br />
xlabel('time (seconds)')<br />
It is difficult to identify the frequency components by looking at the original signal. Converting<br />
to the frequency domain, the discrete Fourier transform of the noisy signal y is<br />
fo<strong>und</strong> by taking the 512-point fast Fourier transform (FFT):<br />
Y = fft(y,512);<br />
The power spectrum, a measurement of the power at various frequencies, is<br />
Pyy = Y.* conj(Y) / 512;<br />
Graph the first 257 points (the other 255 points are red<strong>und</strong>ant) on a meaningful frequency<br />
axis.<br />
f = 1000*(0:256)/512;<br />
plot(f,Pyy(1:257))<br />
title('Frequency content of y')<br />
xlabel('frequency (Hz)')
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 95<br />
This represents the frequency content of y in the range from DC up to and including the<br />
Nyquist frequency. (The signal produces the strong peaks.)<br />
Algorithm<br />
The FFT functions (fft, fft2, fftn, ifft, ifft2, ifftn) are based on a library<br />
called FFTW [3], [4]. To compute an N-point DFT when N is composite (that is, when N<br />
= N 1 N 2 ), the FFTW library decomposes the problem using the Cooley-Tukey algorithm<br />
[1], which first computes N 1 transforms of size N 2 , and then computes N 2 transforms of<br />
size N 1 . The decomposition is applied recursively to both the N 1 - and N 2 -point DFTs until<br />
the problem can be solved using one of several machine-generated fixed-size "codelets."<br />
The codelets in turn use several algorithms in combination, including a variation of Cooley-Tukey<br />
[5], a prime factor algorithm [6], and a split-radix algorithm [2]. The particular<br />
factorization of N is chosen heuristically.<br />
When N is a prime number, the FFTW library first decomposes an N-point problem into<br />
three (N-1)-point problems using Rader's algorithm [7]. It then uses the Cooley-Tukey<br />
decomposition described above to compute the (N-1)-point DFTs.<br />
For most N, real-input DFTs require roughly half the computation time of complex-input<br />
DFTs. However, when N has large prime factors, there is little or no speed difference.<br />
The execution time for fft depends on the length of the transform. It is fastest for powers<br />
of two. It is almost as fast for lengths that have only small prime factors. It is typically<br />
several times slower for lengths that are prime or which have large prime factors.<br />
See Also<br />
fft2, fftn, fftshift, ifft<br />
dftmtx, filter, and freqz in the Signal Processing Toolbox
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 96<br />
References Matlab Documentation<br />
[1] J. W. Cooley and J. W. Tukey, "An Algorithm for the Machine Computation of the<br />
Complex Fourier Series", Mathematics of Computation, Vol. 19, April 1965, pp.<br />
297-301.<br />
[2] P. Duhamel and M. Vetterli, "Fast Fourier Transforms: A Tutorial Review and a<br />
State of the Art", Signal Processing, Vol. 19, April 1990, pp. 259-299.<br />
[3] FFTW (http://www.fftw.org)<br />
[4] M. Frigo and S. G. Johnson, "FFTW: An Adaptive Software Architecture for the<br />
FFT", Proceedings of the International Conference on Acoustics, Speech, and Signal<br />
Processing, Vol. 3, 1998, pp. 1381-1384.<br />
[5] A. V. Oppenheim and R. W. Schafer, Discrete-Time Signal Processing, Prentice-<br />
Hall, 1989, p. 611.<br />
[6] A. V. Oppenheim and R. W. Schafer, Discrete-Time Signal Processing, Prentice-<br />
Hall, 1989, p. 619.<br />
[7] C. M. Rader, "Discrete Fourier Transforms when the Number of Data Samples Is<br />
Prime", Proceedings of the IEEE, Vol. 56, June 1968, pp. 1107-1108.
<strong>Fourierreihen</strong> <strong>und</strong> <strong>Fouriertransformation</strong> 97<br />
10 Literaturverzeichnis<br />
[8] R. N. Bracewell, The Fourier Transform and its Applications, McGraw-Hill International<br />
Editions, second edition revised, 1986.<br />
[9] G. Demmig, <strong>Fourierreihen</strong>: Repetitorium mit Beispielen <strong>und</strong> Aufgaben, Demmig<br />
Verlag KG, 1983.<br />
[10] O. Föllinger, Laplace-, Fourier- <strong>und</strong> z-Transformation, Hüthig Verlag Heidelberg,<br />
7. überarbeitete <strong>und</strong> erweiterte Auflage, 2000.<br />
[11] L. Lions, All you wanted to know about mathematics but were afraid to ask, Vol. 2,<br />
Cambridge University Press, 1998.<br />
[12] W. Preuss, Funktionaltransformationen, Fachbuchverlag Leipzig, 2002. Louis Lions,<br />
All you wanted to know about mathematics but were afraid to ask, Vol. 2,<br />
Cambridge University Press, 1998.<br />
[13] G. Uszczapowski, Fourier-Transformation / Fourierintegral: Repetitorium mit Beispielen<br />
<strong>und</strong> Aufgaben, Demmig Verlag KG, 1985.