Springen naar inhoud

Geen informatie verlies bij ifft van een am signaal?


  • Log in om te kunnen reageren

#1

Bert F

    Bert F


  • >1k berichten
  • 2588 berichten
  • Ervaren gebruiker

Geplaatst op 18 oktober 2008 - 18:45

Ik maak in matlab volgend signaal aan x(n)=i*sin(i) (amplitude gemodelleerd signaal) waarbij ik i laat lopen van nul tot een volledig aantal perioden.
Ik krijg dan volgende afbeelding:

Geplaatste afbeelding

als ik hiervan nu een fft maak, dan krijg ik naar alle verwachting 1 piek. Klopt er is in het signaal 1 frequentie aanwezig.

Nu zou ik denken dat mijn fft mijn signaal geschreven heeft met sin en cos of nog in het frequentie domein heb ik voor elke frequentie een zekere amplitude van een zekere cos of sin.
Dus ik heb nu één cos met bijbehorende amplitude.

Nu voer ik op deze gegevens een ifft een inverse fft, ik zou denken dat omwille van mijn ééne piek in het frequentiedomein ik één cos zou krijgen met een amplitude evenredig aan het geen ik afgelezen heb in het frequentiedomein. En dus dat een deel van de informatie over het signaal verloren is, dat de amplitude van de cos nu een gemiddelde is van het eerdere signaal.

Echter ik krijg mijn eerste signaal perfect terug hoe kan dat? Hoe komt het dat ik geen informatie verlies? Of waarom geeft die éne van nul verschillende amplitude niet gewoon één cos? Groeten.

Dit forum kan gratis blijven vanwege banners als deze. Door te registeren zal de onderstaande banner overigens verdwijnen.

#2

DePurpereWolf

    DePurpereWolf


  • >5k berichten
  • 9240 berichten
  • VIP

Geplaatst op 18 oktober 2008 - 20:06

Dit zou niet enkel een pieken moeten geven. Het is niet hetzelfde als een normale sinus.

Het feit dat je het zelfde terug krijgt is misschien omdat matlab het als een analytische functie blijft zien.

#3

Bert F

    Bert F


  • >1k berichten
  • 2588 berichten
  • Ervaren gebruiker

Geplaatst op 18 oktober 2008 - 20:50

ik krijg dit als spectrum:
Geplaatste afbeelding

Toch normaal of niet? het is een sin met maar één frequentie?

Het feit dat je het zelfde terug krijgt is misschien omdat matlab het als een analytische functie blijft zien.


Hoe bedoel je? Klopt mijn redenering dat je een gewone sinus zou moeten terug krijgen? met als amplitude het gemiddelde van het oorspronkelijk signaal?

#4

Bart

    Bart


  • >5k berichten
  • 7224 berichten
  • VIP

Geplaatst op 19 oktober 2008 - 14:18

Toch normaal of niet? het is een sin met maar één frequentie?


Waar zie jij 1 frequentie? De piek is vrij breed, waardoor er een heel hoop frequenties meespelen. Tevens laat je nu maar de helft van de informatie zien. Immers, een FFT geeft complexe getallen terug.

DPW, Matlab rekent niet analytisch, tenzij je dit specifiek aangeeft. Daarvoor is wel de symbolic toolbox nodig.
If I have seen further it is by standing on the shoulders of giants.-- Isaac Newton

#5

EvilBro

    EvilBro


  • >5k berichten
  • 6703 berichten
  • VIP

Geplaatst op 19 oktober 2008 - 14:47

Ik maak in matlab volgend signaal aan x(n)=i*sin(i) (amplitude gemodelleerd signaal) waarbij ik i laat lopen van nul tot een volledig aantal perioden.

Dat laatste is volgens mij onmogelijk. De functie LaTeX is niet periodiek. Ik neem dus aan dat je doorgaat tot een geval waar LaTeX (zo te zien 50 keer pi).

als ik hiervan nu een fft maak, dan krijg ik naar alle verwachting 1 piek.

Waarom?

De vermenigvuldiging van twee functies in het tijddomein betekent een convolutie van de twee functie Fouriergetransformeerd. De sinus getransformeerde is een 'piek', maar de getransformeerde van de 'slope' is dat zeker niet. Ik verwacht dan ook niet 1 piek.

#6

Schwartz

    Schwartz


  • >250 berichten
  • 691 berichten
  • Verbannen

Geplaatst op 19 oktober 2008 - 15:00

Als men een sinus een amplitude modulatie laat ondergaan dan is het logisch dat men meerdere frequenties bekomt.
Als men een volume regelaar, ook een amplitude modulator, snel open zet (sneller dan ongeveer 50 milliseconden
een schakelaar haalt dat) en je stereo kan freq. weergeven vanaf 20 Hz dan bekomt men een ''bonk'' te horen.
Die bonk ontstaat door de amplitude modulatie op je signaal.

De ""bonk"" ontstaat ook wanneer men een sinus meteen op uit zet...(is dan meer een tik)
Met mijn sequencer kon ik vroeger zo een extra geluidje maken, schakelaar van uit naar aan was tik en als men dan weer van aan naar uit ging had men weer een tik.

Men kan stellen dat men pas een pure sinus toon heeft wanneer de sinus oneindig lang hoorbaar is.
Anders komen er andere frequenties bij, die bij grote perioden dan wel onhoorbaar zijn maar wiskundig bezien wel aanwezig zijn.

Het is dus onmogelijk om een pure sinustoon van 1000 hz met een duur van zeg maar 10 millisec. te laten horen.
Deze is vervuild met andere frequenties zodat de toon niet puur is.
Een computertaal is voor mensen, niet voor de computer.

#7

Bert F

    Bert F


  • >1k berichten
  • 2588 berichten
  • Ervaren gebruiker

Geplaatst op 19 oktober 2008 - 15:01

De vermenigvuldiging van twee functies in het tijddomein betekent een convolutie van de twee functie Fouriergetransformeerd. De sinus getransformeerde is een 'piek', maar de getransformeerde van de 'slope' is dat zeker niet. Ik verwacht dan ook niet 1 piek.


Dat klopt daardoor zal er idd geen piek zijn.

Bestaat er een manier, het oorspronkelijk signaal had één frequentie om dit uit het fft af te leiden? Of weet je dat gewoon door een brede éénduidige piek, één maxima en dus één frequentie die het meest aanwezig was in het signaal? Dus één frequentie was het meest aanwezig dat kan je makkelijk concluderen maar niet dat die enkel aanwezig was? Groeten.

#8

EvilBro

    EvilBro


  • >5k berichten
  • 6703 berichten
  • VIP

Geplaatst op 19 oktober 2008 - 16:11

[quote name='Schwartz' post='457068' date='19 October 2008, 16:00']Als men een sinus een amplitude modulatie laat ondergaan dan is het logisch dat men meerdere frequenties bekomt.[/quote]
Ik moduleer de amplitude van het signaal Bericht bekijken
Bestaat er een manier, het oorspronkelijk signaal had één frequentie om dit uit het fft af te leiden? Of weet je dat gewoon door een brede éénduidige piek, één maxima en dus één frequentie die het meest aanwezig was in het signaal? Dus één frequentie was het meest aanwezig dat kan je makkelijk concluderen maar niet dat die enkel aanwezig was?[/quote]
Ik snap niet zo goed wat je vraag is...

#9

Bert F

    Bert F


  • >1k berichten
  • 2588 berichten
  • Ervaren gebruiker

Geplaatst op 19 oktober 2008 - 16:21

Ik snap niet zo goed wat je vraag is...


Ik zou graag weten of het mogelijk is door naar het fft te kijken te besluiten dat het oorspronkelijk signaal maar uit één frequentie bestond?

#10

EvilBro

    EvilBro


  • >5k berichten
  • 6703 berichten
  • VIP

Geplaatst op 19 oktober 2008 - 16:38

Ik zou graag weten of het mogelijk is door naar het fft te kijken te besluiten dat het oorspronkelijk signaal maar uit één frequentie bestond?

Als de fouriertransformatie uit slechts 1 piek bestaat dan bevat het slechts oorspronkelijke signaal 1 frequentiecomponent. Als het signaal gesampled was, bij een fft is dat volgens mij altijd het geval, dan zullen er altijd extra componenten optreden (verdeeld rond veelvouden van de samplingfrequentie) vanwege het samplingproces (bedenk dat samplen in principe vermenigvuldigen is met een comb-functie).

Je kan even spelen met het volgende. Misschien krijg je daardoor extra informatie:
N = 100; plot(0:(N-1), fftshift(abs(fft(sin(2*pi*(0:1:(N-1))/N)))))

#11

Bert F

    Bert F


  • >1k berichten
  • 2588 berichten
  • Ervaren gebruiker

Geplaatst op 20 oktober 2008 - 18:11

Bedankt.





0 gebruiker(s) lezen dit onderwerp

0 leden, 0 bezoekers, 0 anonieme gebruikers

Ook adverteren op onze website? Lees hier meer!

Gesponsorde vacatures

Vacatures