INTRODUKTION TILL
FOURIERANALYS
1995 GE
rev. 0.4: 2008 US
FÖRORD
Denna inledning till Fourieranalys tillkom för att åskådliggöra ett kraftfullt matematiskt verktyg på ett för fysiker lämpligt sätt. Fourieranalys används för frekvensanalys inom många områden såväl inom akustik som inom bildanalys och inte minst inom spektroskopi. Många elektroniker är också välbekanta med
metodiken.
För att tillgodogöra sig innehållet är det lämpligt att arbeta med MATLAB-liknande program.
Tex kan Octave användas för Linuxsystem eller MATLAB för såväl Windows som Linux. Alternativt COMSOL Script.
rev. 0.4 är en lätt modifierad version av originalet, som författades av Gunnar Edvinsson i början av 1990-talet vid Fysikum.
US
INNEHÅLLSFÖRTECKNING
sid Kap 1. Periodiska funktioner och trigonometriska polynom 1
1.1 Periodisk funktion 1
1.2 Periodisk fortsättning 1
1.3 Integralen av en periodisk funktion 2
1.4 Udda och jämna funktioner 3
1.5 Fourieranalysens byggstenar 3
1.6 Viktiga trigonometriska formler 3
1.7 Ortogonalitetsegenskaperna hoscos(nx), sin(nx), e±inx 4
1.8 Trigonometriska polynom SN(x) 5
1.9 Beräkning av integralen
∫
0 2 π
[ f x ]2dx 7
1.10 Approximation av en periodisk funktion 8
1.11 Trigonometriska polynom i komplex form 9
Kap 2. Fourierserier 11
Inledning 11
Exempel 1. Fyrkantvåg 14
Exempel 2. Halvvågslikriktad sinus 16
Exempel 3. Sågtand 17
Kap 3. Annan period, Tidsfunktioner, Samplingsteoremet 19
3.1Tidsfunktioner 19
3.2 Beräkning av Fourierkoefficienterna för en samplad (digitaliserad)
funktion 21
3.3 Samplingsteoremet 25
Kap 4. Diskret Fouriertransform DFT 27
4.1 Den diskreta funktionen x(n) 27
4.2 Udda och jämna x(n), Periodisk fortsättning 27
4.3 Enhetsrötter och deras egenskaper 29
4.4 Diskret Fouriertransform, DFT 31
4.5 DFT av reella x(n) 34
4.6 DFT med FFT 36
4.7 FFT (Fast Fourier Transform) 37
Kap 5. Numerisk beräkning av Fourierserier för periodiska funktioner
med DFT och FFT 39
5.1 Funktioner f(x) definerade på intervallet (0, 2π) 39 5.2. Funktioner f(x) definerade på intervallet (-π, π) 45
5.3 Analys av en ändlig Fourierserie 48
5.4 Parsevals teorem och DFT/FFT 49
Exempel 1 50
Exempel 2 51
5.5 Translation av f(x) längs x-axeln, fasfaktor 52
Exempel 3 54
Kap 6. Frekvensanalys av periodisk tidsfunktion 55
6.1 Formelsamling 55
6.2 Amplitudspektrum 56
6.3 Powerspektrum 56
6.4 Frekvensanalys av f(t) med FFT 57
6.5 Ett genomräknat exempel 58
Exempel 1 60
Exempel 2 61
Exempel 3 62
Exempel 4 63
Exempel 5 64
Kap 7. Fouriertransform, Fourierintegraler, Inversionssatsen 65
Inledning 65
Exempel 1 Tophat-funktionen 68
Exempel 2 Avhuggen sinuskurva 70
Exempel 3 Fouriertransformen av en Gaussisk puls 71
Exempel 4 Gaussmodulerad cosinuskurva 72
Översikt över Fourierserier, Fouriertransform och DFT 73
Kap 8. Liten problemsamling i Fourieranalys 75
Facit 78
ii
Kap 1. Periodiska funktioner och trigonometriska polynom
1.1 Periodisk funktion
Definition: Funktionen f(x) sägs vara periodisk med perioden L om f(x+L) = f(x±mL) = f (x) m= heltal
Exempel: f(x) = 3sin(x) – 4cos(2x) + 6sin(7x) är periodisk med perioden 2π.
1.2 Periodisk fortsättning
Man kan lätt skapa periodiska funktioner med perioden L genom att definiera f(x) i ett intervall med längden L, t.ex. (0, L) och sedan göra s.k. periodisk fortsättning.
Exempel:
{
f x = x cos x för −π xπ f ±π = 0f x±m 2 π = f x
Denna funktion är periodisk med perioden 2π. Den är diskontinuerlig för x = ±π.
Funktionen är avbildad i Fig. 1a. Om f(x) istället definieras med periodisk fortsättning av xcos(x) i intervallet (0, 2π) ser funktionen helt annorlunda ut, se Fig. 1.1.
Fig. 1.1. Exempel på periodisk fortsättning.
1.3 Integralen av en periodisk funktion
För en periodisk funktion f(x) med perioden L gäller att om den integreras över ett intervall med längden L är integralens värde oberoende av var på x-axeln intervallet ligger.
∫
0 L
f x dx =
∫
a a L
f x dx är oberoende av a.
Bevis: Antag att 0 <a< L
∫
a a L
f x dx =
∫
a L
f x dx
∫
L a L
f x dx
Om vi i den sista integralen på höger sida gör subst. x = u + L, dx = du får vi
∫
a a L
f x dx =
∫
a L
f x dx
∫
0 a
f uL du
∫
a a L
f x dx =
∫
a L
f x dx
∫
0 a
f u du =
∫
0 a
f x dx
∫
a L
f x dx
dvs
∫
a a L
f x dx =
∫
0 L
f x dx
Bättre förståelse för sammanhanget får man kanske genom att betrakta Fig. 1.2. Där har en periodisk funktion integrerats över tre olika placerade intervall men alla med bredden = L = en period. De tre skuggade areorna är uppenbarligen lika stora.
Fig. 1.2. Alla integraler över en hel period är lika.
2
1.4 Udda och jämna funktioner (paritet) Definition: Om f(x) = - f(-x) är f(x) udda
Om f(x) = f(-x) är f(x) jämn
Exempel: f x = x−x3sin 4 x är udda
f x = x sin x x2cos xe−x2är jämn Produkten av två udda funktioner är jämn.
Produkten av två jämna funktioner är jämn.
Produkten av en jämn och en udda funktion är udda.
1.5 Fourieranalysens byggstenar
De periodiska funktioner som utgör byggstenarna i hela Fourieranalysen är de harmoniska funktionerna:
funktion period paritet
cos(nx) 2π jämn
sin(nx) 2π udda
einx 2π
e-inx 2π
där e±inx = cos(nx) ± i sin(nx) cosnx = einxe−inx
2 sin nx = einx−e−inx
i2 = i
2e−inx−einx
1.6 Viktiga trigonometriska formler
Vi repeterar från den grundläggande trigonometrin följande formler som ofta kommer till användning i Fourieranalysen.
cos(n+m)x = cos(nx)·cos(mx) - sin(nx)·sin(mx) (1.1)
cos(n-m)x = cos(nx)·cos(mx) + sin(nx)·sin(mx) (1.2)
sin(n+m)x = sin(nx)·cos(mx) + cos(nx)·sin(mx) (1.3)
sin(n-m)x = sin(nx)·cos(mx) - cos(nx)·sin(mx) (1.4)
Genom ledvis addition eller subtraktion av ovanstående formler kan man visa följande formler:
(1.1) + (1.2) cos(mx)·cos(nx) = ½[cos(n+m)x + cos(n-m)x] (1.5) (1.2) – (1.1) sin(mx)·sin(nx) = ½[cos(n-m)x - cos(n+m)x] (1.6) (1.3) – (1.4) sin(mx)·cos(nx) = ½[sin(n+m)x - sin(n-m)x] (1.7)
1.7 Ortogonalitetsegenskaperna hos cos(nx), sin(nx), e±inx
Funktionerna cos(nx), sin(nx), e±inx där n och m är heltal har följande viktiga och för hela Fourieranalysen avgörande egenskaper.
(1.8)
(1.9)
(1.10)
(1.11)
Som ett exempel bevisar vi (1.8) genom att utnyttja formel (1.6)
∫
0 2 πsin mxsin nx dx =
∫
0 2 π 1
2[cosn−m x−cos nm x ]dx =
=1
2
[
sin n−m xn−m − sin nm x nm
]
02 π
=0 om n≠m
om n = m får vi
∫
0 2π 1
2[1−cos2 nx ]dx =
[
2x−sin 2 nx 4 n]
02π
=π
Övriga formler bevisas på liknande sätt.
Två funktioner f(x) och g(x) som är definierade på intervallet (a,b) säges vara ortogonala på detta intervall om
∫
a b
f x g x dx = 0
Funktionerna cos(mx) och sin(nx) är ortogonala på intervallet (0, 2π).
Funktionerna e-inx och eimx är ortogonala på intervallet (0, 2π) om n ≠ m.
4
∫
0 2 π
sin mxsin nx dx =
{
π om n=m≠0 0 om n≠m∫
0 2 π
cosmx cos nx dx =
{
2 π om n=m=0 π om n=m≠0 0 om n≠m∫
0 2 cos mxsin nx dx = 0 för alla n och m
∫
0 2 eimx⋅e−inxdx =
{
2 π om n=m 0 om n≠m1.8 Trigonometriska polynom SN(x)
Definition: Funktionen f(x) = SN(x) kallas ett trigonometriskt polynom av grad N om
f x = SNx = a0 2
∑
n=1 N
ancos nx bnsin nx (1.12) där an och bn är konstanter bildade enligt någon given regel. Ett exempel på hur en sådan funktion kan se ut ges i Fig. 1.3.
Fig. 1.3. Exempel på ett trigonometriskt polynom SN(x).
Ett trigonometriskt polynom är på grund av sin konstruktion en periodisk funktion med perioden 2π. Det finns ett enkelt samband mellan funktionen f(x) och
koefficienterna an och bn som ingår i polynomet. Antag att funktionen f(x) är given, t.ex. i form av kurvan i Fig. 1.3 och att vi vet att f(x) är ett trigonometriskt polynom.
Hur kan man då bestämma koefficienterna an och bn? Givet är alltså
f x =a0 2
∑
n =1 N
ancosnxbnsin nx (1.13)
f(x) är given och vi skall bestämma an och bn. Multiplicera båda leden i (1.13) med cos(kx) och integrera över en period (0, 2π), varvid summations- och
integrationsordning omkastas.
∫
0 2 π
f x coskx dx =
=
∫
0 2 πa0
2 cos kx dx
∑
n=1
N
∫
0 2 π
ancos nx coskx dx
∑
n=1
N
∫
0 2 π
bnsinnx cos kx dx för k = 0 och cos(kx) = 1 får man då
∫
0 2 π
f x dx =
∫
0 2 π a0
2 dx
∑
n=1 N
an
∫
0 2 π
cos nx dx
∑
n=1 N
bn
∫
0 2 π
sin nx dx
∫
0 2 π
f x dx = a0π
∑
n=1 N
an⋅0
∑
n=1 N
bn⋅0 = a0π (1.14)
för k ≥ 1 får man
∫
0 2 π
f x coskx dx =
=
∫
0 2 πa0
2 cos kx dx
∑
n=1 N
an
∫
0 2 π
cos nx coskx dx
∑
n=1 N
bn
∫
0 2 π
sinnx cos kx dx På grund av ortogonalitetsrelationerna hos cos(nx) och sin(nx) blir nu alla integraler ovan noll utom en enda, nämligen när n = k i den första summan i högra ledet
∫
0 2π
f xcoskx dx = 0 ak
∫
0 2π
coskx cos kxdx 0
∫
0 2 π
f x coskx dx = ak
∫
0
2 π
12cos 2 kx 2
dx = ak[
2xsin 2 kx 4 k]
02 π∫
0 2 π
f x coskx dx = akπ (1.15)
För att bestämma koefficienterna bn multiplicerar vi istället båda leden i (1.13) med sin(kx) och integrerar över en period.
∫
0 2 π
f x sin kx dx =
=
∫
0 2 πa0
2 sin kx dx
∑
n=1 N
an
∫
0 2 π
cosnx ⋅sin kx dx
∑
n=1 N
bn
∫
0 2 π
sin nx ⋅sin kx dx och ortogonalitetesrelationerna ger denna gång
∫
0 2 π
f x sin kx dx = bk
∫
0 2 π
sin2kx dx = bkπ (1.16)
Formlerna (1.14), (1.15) och (1.16) ger nu koefficienterna an och bn och vi sammanfattar (byt k mot n)
Om f x = a0 2
∑
n=1 N
ancosnxbnsin nx så är an= 1
π
∫
0 2 π
f xcosnx dx n = 0, 1, 2... N och bn= 1
π
∫
0 2π
f xsin nx dx n = 0, 1, 2 ... N
}
(1.17)Integralerna kan också beräknas över vilket som helst intervall med längden 2π t.ex.
(-π, π).
Den konstanta termen a20är medelvärdet av funktionen f(x) i intervallet (0, 2π).
Koefficienterna an och bn beräknade enligt (1.17) kallas Fourierkoefficienterna till funktionen f(x).
6
1.9 Beräkning av integralen
∫
0 2 π
[f x ]2dx
Antag att f(x) är ett trigonometriskt polynom f x = a0
2
∑
n =1 N
ancosnxbnsin nx Vi vill försöka beräkna integralen
∫
0 2 π
[ f x ]2dx
Uttryckt i Fourierkoefficienterna an och bn blir [f x]2= a02
4 a0
∑
n=1 N
ancosnx bnsinnx
[ ∑
n=1N ancosnxbnsin nx]
2(1.18)där vi kan utveckla den sista termen
[ ∑
n=1N ...]
2= ∑
n =1 Nancosnx bnsinnx
∑
m=1 Namcosmxbmsin mx
=∑
n=1 Nan2cos2nxbn2sin2nx
∑
n=1 N
m=1
∑
m≠n N
[anamcosnx cos mxbnbmsinnxsin mx]
+
∑
n=1
N
∑
m=1 N
anbmcosnx sin mx
Om vi integrerar båda leden i (1.18) över en period får vi för resp. term
∫
0 2 πa02
4 dx = πa02 2 a0
∑
n=1
N
∫
0 2 π
[ancos nxbnsin nx ] dx = 0
∑
n=1 N∫
0 2 π
[an2cos2nx bn2sin2nx]dx =
∑
n=1 N
π an2bn2
∑
n=1N
∑
m =1 m ≠n
N
∫
0 2 π
[anamcos nx cos mxbnbmsin nxsin mx]dx = 0
∑
n=1N
∑
m=1
N
∫
0 2 π
anbmcosnx sin mx dx = 0
}
i enlighet med ortogonalitets- relationernaSammanfattningsvis får vi
Parsevals teorem för trigonometriska polynom
∫
0 2 π
[ f x ]2dx = π
a202∑
n=1 Nan2bn2
(1.19)1.10 Approximation av en periodisk funktion
Antag att vi har en funktion f(x) som är periodisk med perioden 2π och att vi vill approximera denna funktion med ett trigonometriskt polynom av graden N
SNx = 2
∑
n=1 N
ncos nxnsin nx (1.20)
Som ett mått på hur bra polynomet SN(x) approximerar f(x) använder vi medelvärdet av funktionen [ f x −SNx ]2över en period 2π.
s2N = 1 2 π
∫
0 2 π
[f x−SNx]2dx
Man kan visa att för givet N blir sN så liten som möjligt om αn och βn är just Fourierkoefficienterna för funktionen f(x). Storheten sN kan jämföras med standardavvikelsen σ i statistiken.
Av alla trigonometriska polynom är alltså Fourierpolynomet SNx = a0
2
∑
n=1 N
ancosnx bnsin nx (1.21)
den bästa approximationen i minsta kvadratmetodens mening dvs att RMS-värdet, sN
har minimum. Genom att utnyttja (1.19) kan man visa att s2N = 1
2 π
∫
0 2 π
[f x−SNx]2dx = 1 2 π
∫
0 2 π
[ f2x −SN2x ]dx (1.22)
s2N = 1 2 π
∫
0 2 π
f2x dx − 1
2
[
a202∑
n =1 Nan2bn2
]
(1.23)I nästa kapitel kommer vi att se att lim
N ∞sN =0 för en stor klass av fysikaliskt intressanta funktioner. Fourierpolynomet övergår då i den oändliga Fourierserien
f x = S∞x = a0 2
∑
n=1
∞ ancosnx bnsin nx (1.24)
8
1.11 Trigonometriska polynom i komplex form Om man i det trigonometriska polynomet
f x =a0 2
∑
n=1 N
ancos nxbnsin nx (1.25)
använder Eulers formler för cos(nx) och sin(nx) blir ancosnx bnsinnx =
= aneinxe−inx
2 ibne−inx−einx 2
= an−ibn
2 einxanibn 2 e−inx
(1.26)
Inför man sedan konstanterna cn
så att an = 2Re (cn) och bn = -2Im(cn) blir f x = c0
∑
n=1 N
cneinxc−ne−inx
Om vi istället låter summan gå från -N till N får vi följande enkla uttryck för f(x) f x =
∑
n=−N N
cneinx (1.27)
där c0= a0 2 cn= an−ibn
2 om n≥1 cn= a∣n∣ib∣n∣
2 om n≤−1
}
(1.28)Det framgår av (1.28) att följande gäller c−n=cn*
, cnc−n=cncn*
=∣cn∣2
Koefficienterna cn kan beräknas med hjälp av (1.28) eller på följande sätt Antag att f(x) är given och vi söker cn
f x =
∑
n=−N N
cneinx (1.29)
Multiplicera bägge leden i (1.29) mede−ikxoch integrera båda leden över en period varvid vi kastar om integrations- och summationsordningen i högra ledet
∫
0 2 π
f x e−ikxdx =
∑
n=− N N
∫
0 2 π
cneinxe−ikxdx
∫
0 2 π
cneinxe−ikxdx =
∫
0 2 π
cnein− kxdx =
{
0 om k ≠n2 π cn om k =n dvs cn= 12 π
∫
0 2 π
f x e−inxdx n = − N...0 ... N
Vidare beräknar vi
∫
0 2π
[ f x]2dx =
∫
0
2π
[
n=−N∑
N cneinx]
2dx[
n=− N∑
N cneinx]
2=n=− N∑
N cn2ei2nx∑
n , mn≠m
cneinxcmeimx
∫
0 2 π
[ f x ]2dx =
∑
n=− N
N
∫
0 2 π
cn2ei2nxdx
∑
n , m n≠m
∫
0 2 π
cncmei nm xdx (1.30)
∫
0 2 π
cn2ei2nxdx =
{
0 om n≠02 π c02 om n=0∫
0 2 π
cncmei nmxdx =
{
0 om m≠−n2 π cnc−n om m=−nDe flesta integralerna i summorna i (1.30) är alltså noll och vi får
∫
0 2 π
[ f x ]2dx = 2 π
∑
n=−N N
cnc−n=2 π
∑
n =−N N
cncn*=2 π
∑
n=−N N
∣
cn∣
2 (1.31)Vi sammanfattar den komplexa formuleringen av trigonometriska polynom.
(1.32)
10 f x =
∑
n=−N N
cneinx
cn= 1 2 π
∫
0 2 π
f x e−inxdx c−n=cn*
∫
0 2 π
[ f x ]2dx = 2 π
∑
n =−N N
cncn*= 2 π
∑
n=−N N
∣cn∣2
Kap 2. Fourierserier
Ett trigonometriskt polynom SNx innehåller ett ändligt antal termer av cosnxoch sin nx. Vi låter nu N ∞och övergår till att studera oändliga Fourierserier av typen
S x =a0 2
∑
n=1
∞
ancosnx bnsinnx
Det är enkelt att konstruera sådana serier som konvergerar för alla x och funktionen s(x) blir då en periodisk funktion med perioden 2π. Här följer två exempel:
S1x =
∑
n=1
∞ 1
n2 cos nx där an=1
n2 och bn=0 (2.1) S2x =
∑
n=1
∞ 1
n2 sin nπ2 sin nx där an=0 och bn=1
n2 sin nπ2 (2.2) I Fig. 2.1 är de avhuggna Fourierserierna
∑
n=1 100 1n2 cosnx och
∑
n=1 100 1
n2 sin nπ
2sin nx
uppritade som funktioner av x.
Fig. 2.1. Diagram över avhuggna Fourierserier.
Tar man med ytterligare termer i summorna förändras inte kurvorna med den upplösning med vilka de är ritade. Serierna (2.1) och (2.2) är konvergenta och beskriver kontinuerliga periodiska funktioner.
Man kan nu ställa sig frågan: Kan varje funktion f(x) med perioden 2π skrivas som en oändlig trigonometrisk serie av typen (1.32) som konvergerar för varje x?
Svaret är ja, om funktionen f(x) uppfyller vissa villkor. Vi ger utan bevis ett teorem
som anger tillräckliga villkor för att funktionen f(x) med perioden 2π skall kunna utvecklas i en konvergent oändlig trigonometrisk serie.
(2.3)
Vidare gäller
(2.4)
12 Dirichlets teorem
Om funktionen f(x) har följande egenskaper a) är periodisk med perioden 2π
b) har ett ändligt antal maxima och minima i intervallet (0, 2π) c) är diskontinuerlig endast i ett ändligt antal punkter i (0, 2π) d) tilldelas värdet f a = f a0 f a−0
2 i en
diskontinuitetspunkt x = a, dvs funktionsvärdet i x = a skall vara medelvärdet av höger och vänster gränsvärde i x = a.
så gäller f x = a0 2
∑
n=1
∞
ancos nxbnsin nx
eller f x =
∑
n=−∞
∞
cneinx
där an= 1
π
∫
0 2 π
f x cosnxdx
bn= 1 π
∫
0 2
f xsin nx dx cn= 1
2 π
∫
0 2 π
f x e−inxdx
och de sk Fourierserierna konvergerar för alla x.
Parsevals teorem
∫
0 2π
[ f x]2dx = π
[
a202∑
n=1∞ an2bn2]
∫
0 2π
[ f x]2dx = 2 π
∑
n=−∞
∞
∣
cn 2∣
Integralerna som beräknar Fourierkoefficienterna an, bn eller cn behöver inte tas över intervallet (0, 2π) men måste beräknas över en period t.ex. (-π, π) eller generellt (x0, x0+2π).
Vi har tidigare bevisat Dirichlets och Parsevals teorem för det fall då Fourierserien är ändlig dvs när f(x) är ett trigonometriskt polynom. Stringenta bevis för Dirichlets och Parsevals teorem när man får oändliga Fourierserier är betydligt svårare. Den
intresserade läsaren hänvisas till den ymniga matematiska läroboksfloran i ämnet.
I Fig. 2.2 ges exempel på 8 funktioner som alla uppfyller villkoren i Dirichlets teorem utom i Fig. 2.2h, som anger grafen för funktionen
f X = x sin 1
x −π ≤ x≤π f 0 = 0 f x ±m 2 π = f x
(2.5)
Denna funktion är faktiskt kontinuerlig för alla x men nära x = 0 finns oändligt många maxima och minima och villkoret b) i Dirichlets teorem är inte uppfyllt.
Fig. 2.2. Periodiska funktioner.
Exempel på beräkning av Fourierserier
I de tre exemplen nedan är funktionen periodisk med perioden 2π och alla är definierade på intervallet (-π, π) med periodisk fortsättning. Om f(x) är udda eller jämn gäller
f x udda: alla an=0 bn=2 π
∫
0 π
f x sin nx dx (2.6)
f x jämn: alla bn=0 an=2 π
∫
0 π
f x cosnx dx (2.7)
Exempel 1. Fyrkantvåg
f x = sign x =
{
−1 om −π x0 0 om x = 0 1 om 0xπSe Fig. 2.2a
f(x) är en udda funktion så alla an = 0 bn= 2
π
∫
0 π
1⋅sin nx dx = 2
π
[
−cos nxn]
0 πbn= 2
π
[
1−cos n π n
]
={
0 om n jämn 4π⋅1
n om n udda sign x = 4
π
sin x1 sin3x 3 sin 5x
5 ...
(2.8)Fig. 2.3. Konvergensen för fyrkantvåg.
14
Hur pass snabbt serien konvergerar mot f(x) framgår av Fig. 2.3 där Fourierserien avhuggen vid n = N har uppritats för ökande värden på N. Lägg märke till att konvergensen är långsam nära diskontinuitetspunkterna. Visserligen konvergerar serien mot f(x) för alla x men konvergensen är inte likformig. Detta kallas Gibbs fenomen och uppträder för alla funktioner som har en eller flera diskontinuiteter.
Om vi i Fourierserien för sign(x) sätter x = π/2 får vi signπ
2 =1 = 4
π
1−1315−17...
så att summan av nedanstående serie blir
∑
n=0∞ −1n
2n1=1−1 31
5−1
7... = π
4 (2.9)
Tillämpar vi Parsevals teorem på Fourierserien ovan får vi
∫
−π π
sign2x dx =
∫
−π π
dx = 2 π = π 16
π2
13121 52172...
(2.10)
∑
n=0∞ 1
2n12 =1 1 32 1
52 1
72... = π2 8
Exempel 2. Halvvågslikriktad sinus
f x =
{
0 om −π ≤x ≤0sin x om 0≤ x≤π se Fig. 2.2e f(x) är kontinuerlig
a0 =1 π
∫
−π π
f x dx =1 π
∫
0 π
sin x dx =2 π an = 1
π
∫
0 π
sin x cos nx dx = 1 2 π
∫
0 π
[
sin [ n1 x ]−sin [ n−1 x ]]
dx a1= 12 π
∫
0 π
sin 2x dx = 0 an= 1
2 π
[
−cos[n1 x]n1 cos[n−1 x ] n−1
]
0
för n ≥ 2 an =0 för udda n
an= 1
2 π
[
n12 − 2n−1
]
= π 1−n2 2 för jämna n bn= 1π
∫
0
sin x sin nx dx = 1 2 π
∫
0 π
[cos[n−1 x ]−cos[n1 x ]] dx
b1= 1 2 π
∫
0 π
[1−cos2x]dx = 1 2 bn= 1
2 π
[
−sin[n−1 x ]n−1 −sin [n1 x]
n1
]
0 π=0för n ≥ 2 f x = 1
π1
2sin x
∑
n=1
∞ 2
π [1− 2n2]cos 2nx
f x = 1 π1
2sin x−2
π
cos 2x3 cos 4x15 cos 6x
35 ...
(2.11)Endast en sinusterm ingår.∣an∣avtar betydligt snabbare~ 1 /n2än koefficienterna i föregående exempel. Konvergensen åskådliggörs i Fig. 2.4.
Eftersom funktionen är kontinuerlig uppträder inte Gibbs fenomen för denna funktion.
x = 0 ger värdet på summan
∑
n=1∞ 1
2n2−1 = 1 3 1
15 1 35 1
63... = 1 2
16
Fig. 2.4. Konvergensen för halvvågslikriktad sinus.
Exempel 3. Sågtand
f x =
{
x om −π xπ0 om x = mπ m heltal
f(x) är udda och diskontinuerlig för x = mπ men uppfyller villkoren i Dirichlets teorem.
Alla an = 0 ty f(x) är udda bn=2
π
∫
0 π
x sin nx dx Använd partiell integration bn= 2
π
[
−x cos nxn]
0 π2 π
∫
0
π cosnx
n dx = −2
ncos n π 2 π⋅0 bn= −2
ncosn π f x = x =
∑
n=1
∞
−2
ncosn π sin nx = 2
sin x−sin 2x2 sin 3x3 −...
(2.12)x = π
2 ger återigen summan 1−1
31 5−1
7... =π 4
och Parsevals teorem ger
∫
−π π
x2dx = 2 π3
3 =π⋅4
1212 1 32 142...
∑
n=1∞ 1
n2 = π2
6 (2.13)
18
Kap 3. Annan period, Tidsfunktioner, Samplingsteoremet
3.1 Tidsfunktioner
Låt funktionen f(t) vara en periodisk funktion med perioden T, frekvensen ν och vinkelfrekvensen ω. Då gäller
f tT = f t , = 1
T och = 2 π (3.1)
Fig. 3.1. Periodisk tidsfunktion.
Den periodiska funktionen f(t) går naturligtvis att utveckla i Fourierserie även om perioden nu är T och inte 2π genom att göra följand substitution
x = 2 π t
T , t = Tx
2 π , dx = 2 π T dt
Då blir f t = f
2 πTx
=g x och g(x) är periodisk med perioden 2π och kan utvecklas i Fourierserieg x = a0 2
∑
n=1
∞
ancos nxbnsin nx
där
an= 1 π
∫
−π π
g x cosnx dx bn= 1 π
∫
−π π
g x sin nx dx
Nu substituerar vi x = 2 π t
T dx = 2 π T dt
i g(x) och i integralerna för an och bn och fårg x = g
2 π tT
= f t an= 1
π
∫
−T / 2
T / 2
g
2 π tT
cos
2 π ntT
⋅2 πT dt bn= 1π
∫
−T / 2
T / 2
g
2 π tT
sin
2 π ntT
⋅2 πT dt an= 2T
∫
−T /2
T /2
f t cos
2 π ntT
dt bn= T2∫
−T /2
T /2
f t sin
2 π ntT
dt (3.2)Tre sätt att skriva Fourierserien för f(t) f t = a0
2
∑
n=1
∞
ancos
2 π ntT
bnsin
2 π ntT
f t = a0 2
∑
n=1
∞ ancos2 π n t bnsin 2 π n t (3.3)
f t = a0 2
∑
n=1
∞ ancos n tbnsin n t
20
3.2 Beräkning av Fourierkoefficienterna för en samplad (digitaliserad) funktion Om vi i ett experiment registrerar en periodisk funktion f(x) sker det alltid så att vi tar prov på funktionen i ett antal diskreta punkter xk , k = 1, 2...N och mäter motsvarande f(xk). Punkterna xk skall helst vara ekvidistanta. Antag att vi har registrerat ett antal sådana värdepar, (samples), xk, f(xk) på en som vi antar kontinuerlig funktion f(x). Hur beräknar vi nu Fourierkoefficienterna när vi inte har ett analytiskt uttryck för f(x)?
Funktionen f(x) är ju känd endast i N punkter som vi antar är ekvidistanta på x-axeln.
Det vi vill göra är ju att bestämma funktionen f(x) genom att beräkna dess
Fourierkoefficienter. För att illustrera hur man går tillväga, räknar vi på ett exempel där vi känner funktionen f(x).
Låt f x = sin 2 x −0.5 sin3 x
f(x) är alltså periodisk med perioden 2π och har en ändlig Fourierserie med endast två termer. Vi har samplat funktionen i 11 ekvidistanta punkter över en period 2π.
Avståndet mellan två x-värden är konstant, se Fig. 3.2.
Samplingsintervallet = 2 π 10 = π
5 .
Fig. 3.2.
Vi försöker nu bestämma koefficienten b3 i funktionens Fouriersumma ur de 11
"samples" vi har.
b3= 1 π
∫
0 2π
f x sin3 x dx
men vi har f(x) given i endast 11 punkter i integrationsintervallet.
Nu approximerar vi integralen med summan av areorna (med tecken) av ett antal rektanglar. Se Fig. 3.3.
Fig. 3.3. Illustration till hur en Fourierkoefficient kan beräknas genom rektangelapproximation av integralen för beräkning av b3.
22
Ett "MATLAB" program som genomför denna övning skulle kunna se ut så här dx = 2*pi/10; % samplingsintervall
x = 0:dx:2*pi; % 11 x-värden
y = sin(2*x)-0.5*sin(3*x); % 11 samples x(11) = [ ]; y(11) = [ ]; % ta bort sista värdet
i3 = sin(3*x)*y'*dx; % rektangel approx. av integralen, obs! skalärprodukten b3 = i3/pi % Fourierkoefficienten b3
% verkar fungera bra
Det här verkar gå så bra så vi fortsätter och bestämmer fler Fourierkoefficienter från våra samples, genom följande loop i "MATLAB".
for k = 1:15 % löpnummer
n(k) = k; % n-värden
b(k) = sin(k*x)*y'*dx/pi % bn
end [n',b']
n bn
1 0.000 2 1.000n = 2 3 -0.500n = 3
4 0.000korrekt resultat 5 0.000
6 0.000
7 0.500 n = 7 = 10-3 ? 8 -1.000n = 8 = 10-2 ? 9 0.000falskt resultat?
10 0.000 11 0.000
12 1.000n = 12 = 10+2 ? 13 -0.500n = 13 = 10+3 ? 14 0.000falskt resultat?
15 0.000
Det är något konstigt med det här. Analysen ovan visar att den samplade funktionen skulle innehålla termer som -sin(8x) + 0.5 sin(7x) osv, men vår ursprungliga funktion var ju
f x = sin 2 x −0.5 sin3 x
Det ser ut som om det smugit sig in främmande (alient) frekvenser i funktionen f(x).
Fenomenet som på engelska kallas aliasing, på svenska vikning, beror på att sinus- funktionen är periodisk.
Det finns i själva verket oändligt många olika funktioner som har exakt samma uppsättning samples som vår testfunktion
f x = sin 2 x −0.5 sin3 x
Vi har tex sin
10±2 k2 π10
=sin
k 2 π±2 k 2 π10
= ±sin
2 k 2 π10
dvsfunktionerna -sin(8x) och sin(12x) har exakt samma uppsättning samples som sin(2x) och funktionen sin(3x) har samma uppsättning som -sin(7x) och sin(13x).
Se Fig. 3.4 nedan.
Fig. 3.4. Illustration till fenomenet aliasing (vikning).
Allmänt gäller att om funktionerna sin(nx) och cos(nx) är samplade i punkterna xk =k2 π
N k = 0,1,2 ... N gäller sin nxk = ±sin [l N ±n xk]
l = pos. eller neg. heltal cosnxk =cos[l N ±n xk]
24
3.3 Samplingsteoremet
Antag att vi har en periodisk tidsfunktion f(t) som är samplad i ett stort antal punkter med samplingsfrekvensen νs. Samplingsintervallet t = 1
s .
För en term acos 2 π t som ingår i f(t) gäller då att den har de samplade värdena acos
2 π ⋅k 1s
k = 0,1 ,2 ... Nmen då gäller
cos
2 π s± k1s
=cos
k 2 π±2 π k 1s
=cos
2 π k 1s
dvs termen acos 2 π t har samma samples som en term acos[2 π s± t ] skulle ha.
Om man nu försöker bestämma de frekvenser som finns i funktionen f(t) måste man vara försiktig. Antag att vi har en tidsfunktion som innehåller endast två frekvenser 420 och 650 Hz och att funktionen är samplad med frekvensen 1000 Hz. Med Fourieranalys kan man då "upptäcka" frekvenserna 420, 650, 580 och 350 Hz, varav de två sista är falska.
Om samplingsfrekvensen istället är 2000 Hz "upptäcker" vi frekvenserna 420, 650, 1580 och 1350 Hz, varav de två senare återigen är falska.
För att undvika dessa fallgropar skall man följa reglerna i det sk Samplingsteoremet
Frekvenserna, som ingår i en tidsfunktion f(t) kan entydigt bestämmas om
samplingsfrekvensens2 maxdärmaxär den högsta frekvens som ingår i f(t). Alla upptäckta frekvenser som är > s/2 är falska. För att kunna använda teoremet måste man alltså från början känna en övre gräns för frekvenserna som ingår i f(t).
26
Kap 4. Diskret Fourier Transform DFT.
4.1 Den diskreta funktionen x(n)
Betrakta en ändlig talföljd av N reella eller komplexa tal.
xn där n = 0, 1, 2,...,(N-1)
Vi kan uppfatta talen xn som en funktion x(n) av heltalsvariabeln n med definitionsområdet n = 0,1,2,...,(N-1) eller låta talen xn bilda en vektor.
x = [ x(0), x(1), x(2), ..., x(N-1)] (4.1)
Funktionen x(n) brukar avbildas som i Fig. 4.1 om x(n) är reella tal.
Fig. 4.1. En reell funktion x = x(n).
4.2 Udda och jämna x(n), Periodisk fortsättning
Definition: x(n) är jämn om x(N-n) = x(n) (4.2)
x(n) är udda om x(N-n) = -x(n) (4.3)
Om funktionen x(n) är given för n = 0, 1, 2,...,(N-1) kan man konstruera en periodisk fortsättning med perioden N genom föreskriften
x(n ± mN) = x(n) m = heltal (4.4)
x(n) blir därigenom definierad för alla heltal n. Fig. 4.2 visar en sådan funktion där N = 8 och x(0:7) = x(-8:-1) = x(8:15) = [1, 3, -2, 4, 3, -1, 2, -4].
Fig. 4.2. Exempel på periodisk fortsättning.
I Fig. 4.3 ges exempel på jämna och udda x(n) med periodisk fortsättning. Studera symmetrin i diagrammen i Fig. 4.3.
Fig. 4.3. Exempel på udda och jämna x(n).
Lägg märke till symmetrin i Fig. 4.3. kring n-värdena 0 och N/2. För en udda funktion x(n) gäller att x(0) = -x(N-0) = -x(N) varav följer att
för udda x(n) är x(0) = x(mN) = 0 (4.5)
28
4.3 Enhetsrötter och deras egenskaper Från algebran erinrar vi oss att ekvationen
zN = 1
har de N komplexa s.k. enhetsrötterna Zn=ei 2 π nN =cos2 π n
N i sin2 π n N där n = 0, 1, 2, ..., (N-1).
I det komplexa talplanet ligger rötterna i hörnen på en regelbunden N-hörning som är inskriven i enhetscirkeln.
Fig. 4.4. Rötterna till ekvationen z11=1.
n =1 ger den s.k. primitiva enhetsroten WN
WN=ei 2 πN=cos
2 πN
i sin
2 πN
(4.6)De N rötterna till ekvationen zN = 1 kan då skrivas
zn=WNn , n = 0, 1, 2, ..., (N-1) (4.7)
Enhetsroten WN har följande viktiga egenskaper som kommer till användning i Fourieranalysen.
conj WNm=W−mN (4.8)
conj W−mN =WmN (4.9)
WNN=WNmN=1 om m = heltal (4.10)
∑
n=0 N −1WnN=0 (4.11)
∑
k=0 N −1Wk l −nN =
{
N om l=n0 om l≠n l och n < N (4.12)Bevis för (4.11)
∑
n=0 N −1WNn=W0NW1NWN2...WNN−1=WNN−1
WN−1= 1−1 WN−1=0 där vi har använt formeln för summan av en geometrisk serie.
Bevis för (4.12)
∑
k=0 N −1WNk l−n =1 y y2... yN−1 där y=Wl− nN om l = n är (l - n) = 0, y =1 och summan = N
om l ≠ n har vi summan av en geometrisk serie med kvoten y
∑
m=0 N −1WNml −n= yN−1
y−1 = Wl−n NN −1
WNl −n −1 = 1−1
WNl−n −1 =0
Eftersom både l och n förutsättes < N kan inte (l-n) vara en multipel av N och nämnaren (W(l-n)-1) är säkert ≠ 0.
30