Diskreetne Fourier' teisendus

Kuuskümmend neli proovi toonist ja nende diskreetne Fourier' teisendus. Nihuta toon täisarvulisest tsüklite arvust eemale ning üks puhas tulp valgub laiali üle kogu spektri. Vali üks lahter, et näha selle moodustumist 64 üksteise otsa pandud noolest. Lülita sisse aknafunktsioon ning uuri, mida sellega võidad ja mida kaotad.

Interaktiivse simulatsiooni laadimine...

Õppetund

Teooria — Diskreetne Fourier' teisendus

N proovi x0 … xN−1 diskreetne Fourier' teisendus on N arvu Xk = Σn xn e−2πikn/N, üks iga lahtri k kohta. Iga lahter mõõdab, kui palju on signaalis lainet, mis teeb N proovi jooksul k tsüklit. Teisendus käsitleb proove korduva signaali ühe perioodina, mistõttu on see täpne täisarv tsükleid tegevate toonide puhul, kuid hajutab kõik teised toonid lahtrite vahel laiali. Seda nähtust nimetatakse spektri lekkeks. Liitekoha pehmendamiseks korrutatakse proovid esmalt läbi aknafunktsiooniga wn.

Mida iga sümbol tähendab

A_k
lahtrist k tuletatud amplituud, mida näitavad tulbad: 2|Xk|/(N·G) vahemikus 0 < k < N/2 ning |Xk|/(N·G) väärtustel k = 0 ja k = N/2, millel pole jagamiseks peegellahtrit. Amplituudiga 1 toon annab lahtris näiduks 1
G
akna koherentne võimendus, mis on wn keskväärtus: 1 ilma aknata, ½ Hanni akna puhul
Eeldab
Iga toon algab oma tipust ehk on koosinus. Kaugema saba näitajad muutuvad koos algfaasiga. Koosinuse korral on 10,5-tsüklilise tooni lahter 31 kõrgeimast tulbast 26,3 dB madalam ja siinuse korral 31,2 dB madalam, kuid kahe lähima lahtri 81% peaaegu ei muutu. Hanni aken on perioodilisel kujul ½ − ½cos(2πn/N), mille teisendus koosneb täpselt kolmest lahtrist.

Olles pool lahtrit nihkes, valgub puhas toon laiali üle kõigi lahtrite 🖖

Vajuta Täpselt lahtris: näed 64 proovi toonist, mis teeb täpselt 10 tsüklit. Kogu selle energia asub lahtris 10 ning kõik ülejäänud tulbad on nullid. Vajuta nüüd Poolel teel. Toon on muidu sama, kuid teeb nüüd 10,5 tsüklit ning spekter kuvatakse detsibellides. Lahtrid 10 ja 11 hoiavad kahepeale 81,10% energiast ning ülejäänu on valgunud kõikjale laiali. Üle kahekümne lahtri kaugusel asuv lahter 31 on kõrgeimast tulbast vaid 26,3 dB madalam, mis on umbes kahekümnendik selle kõrgusest, ning enam pole ükski tulp null. Vaata ülemise paneeli liitekohta. Fourier' teisendus käsitleb neid 64 proovi kui ühte pööret lõputult korduvas tsüklis. Kuna 10,5 tsüklit ei kattu alguse ja lõpuga täpselt kokku, tekib igal liitekohal hüpe. Sellist hüpet ei saa üles ehitada vaid mõnest sagedusest, vaid selleks läheb vaja neid kõiki. Vajuta mõlema seadistuse juures Esita tsüklit ja sa kuuled seda: puhas vile lahtrisse langedes ning ragin sagedusel 125 Hz poolel teel, mis on liitekoha möödumise sagedus.

Nihuta tooni poole lahtri võrra ja kõrgeim tulp näitab kolmandiku võrra vähem 🖖

Vajuta Nooled painduvad. Iga tulp on 64 noole summa (üks iga proovi kohta). Nool n vastab proovile wnxn, mida on pööratud k·n/64 täispöörde võrra päripäeva, mistõttu negatiivne proov suunab selle vastassuunda, ja tulba kõrgus näitab, kui kaugel on ahela lõpp selle alguspunktist. Koosinus koosneb kahest vastassuundades pöörlevast poolest. Kui toon teeb täpselt k tsüklit, pööratakse iga noole üks pool tagasi samasse suunda. Need pooled rivistuvad sirgeks reaks pikkusega 32 ja tulp näitab 100%. Pool lahtrit nihkes olles paindub see rida 64 proovi jooksul poolringiks. Poolringi otspunktide vahe on aga ainult 2/π kaare pikkusest ehk 63,7%. See on seesama 3,92 dB kammikadu Fredric Harrise 1978. aasta aknafunktsioonide tabelis. Iga noole teine pool pöörleb 21,5 korda ringi ja peaaegu taandub välja, mis kergitab näidu lõpuks 64,61% peale, nagu lehel näidatud. Toon on endiselt sama vali. Kõrgeim tulp näitab seda kolmandiku võrra väiksemana (−3,79 dB) puhtalt seepärast, kuhu selle sagedus langeb. Nihuta tooni terve lahtri võrra edasi ning rida paindub täisringiks ja sulgub, ning koos sellega sulgub ka kiirem pool. Seetõttu jätabki täpselt lahtrisse langev toon kõik teised tulbad täpselt nulli.

Otste summutamine toob nähtavale 316 korda vaiksema tooni 🖖

Vajuta Vaikne naaber. See on teine toon, mis on 50 dB vaiksem ja amplituudilt 316 korda väiksem, tehes täpselt 20 tsüklit. Lahter 20 on kõrgeimast tulbast küll 22,7 dB madalam, ent tegu on vaid esimese tooni lekkega, sest lahter 20 ei ulatu isegi kõrvalasuvast lahtrist 19 kõrgemale. Lülita aknafunktsioon Hann peale. See kasvatab proovid nullist sisse ja lõpus uuesti nulli, et tsüklil ei tekiks hüpet. Leke variseb kokku, lahter 31 kukub 26,3 dB tasemelt 98,9 dB madalamale ning lahter 20 tõuseb omaette tipuna esile. Selle näit on 0,32% tooni 1 amplituudist, mida 50 dB vaiksem tase tähendabki. Aknafunktsioon võtab selle eest aga lõivu tipu laiuses. Lahtris olev toon katab nüüd kolme lahtrit. Seega hoiab täpselt lahtris 10 asuv toon oma lahtris vaid 66,67% energiast. Vajuta Täpselt lahtris ning tulemuste all olev tabel näitab seda ristkülikukujulise akna 100% kõrval. Vajuta Kaks tooni, Hann. Siin on kaks võrdset tooni kahe lahtri kaugusel ning nende vahele jääv lahter 11 näitab 100,00%, olles sama kõrge kui teisedki. Ilma aknata oleks see lahter tühi. Hanni aken vahetab kolme lahtri laiuse tipu puhaste sabade vastu. See on õige tehing siis, kui otsitav signaal on nõrk, kuid täiesti vale juhul, kui see asub kohe kõrval.

Ülesanne täielikult lahendatud

  1. Korrigeeri näitu ja muuda seejärel korrigeerimine tarbetuks 4 sammu

    Analüsaator võtab 8000 proovi sekundis ja teisendab 64 proovi korraga, ilma aknafunktsioonita. Sa sisestad 1312,5 Hz testtooni ja kõrgeim tulp näitab 0,32. Milline on tooni tegelik amplituud ja mitu proovi ploki kohta paigutaks tooni täpselt lahtrisse? Vajuta Nooled painduvad, ja leht mängib tooni just sellel sagedusel.

    Ava see ülesanne tööriistas

    1. Lahtrite vahe on 8000/64 Hz, seega teeb toon ühe ploki jooksul 10,5 tsüklit, asudes poolel teel lahtrite 10 ja 11 vahel.

    2. Poolel teel olles näitab lehe kõrgeim tulp 64,61% toonist. Jaga see välja:

    3. Toon langeb lahtrisse siis, kui plokk sisaldab täisarvu tsükleid. 128 prooviga on lahtrite vahe 62,5 Hz:

    4. Kui analüsaator oleks 64 proovi peal kasutanud Hanni akent, näitaks kõrgeim tulp 84,89% toonist ning sama toon annaks tulemuseks:

    Vastus

    Umbes 0,495 ja 128 proovi ploki kohta. Sobib ka iga 128 kordne, sest 1312,5 Hz vajab täisarvu tsüklite (21) saavutamiseks 128 proovi. See leht on lukustatud 64 proovi peale, mistõttu 128 prooviga variant jääb siin näidatavast väljapoole. 128 korral näitaks tulp täit väärtust 0,495 ning akent poleks enam amplituudi lugemiseks vaja, vaid üksnes selleks, et hoida tugeva tooni saba eemal nõrgast toonist.

Õpitee

Fourier' teisendus praktikas

Allikad (2)