Eerst en vooral, ik weet niet of programmeren in matlab hier thuis hoort, indien niet, trash het dan aub niet, maar verplaats het of laat het mij weten,dan start ik het draadje wel op de juiste plaats.
Mijn probleem:
Voor een eindwerk moet ik in de eerste plaats een studie maken naar de frequentiecomponenten (Harmonischen) die optreden bij het digitaal genereren van een analoog signaal(in het eerste geval een sinus), of bij het kwantiseren van een analoog signaal. Dit gebeurt aan de hand van een DFT, uitgevoerd door een FFT functie.
Ook moet ik de momentele fase en error van elke sample bekomen.
Tot zover geen probleem, hier is de code die ik gebruik voor de fase:
De 'fftResampledSin' zijn de reële componenten en de imaginaire, welke voortkomen uit de fft van een sinus.
Het echte probleem is echter de normalisatie van de waarden.
Nu zieh het er zo uit (let op de waardes bij de phase: 1-5*10e5):

Ik zou graag een fase krijgen die van -pi tot +pi gaat (of van 0 tot 2pi), maar ik zie niet in hoe ik dit kan bereiken. (de angle functie geeft waardes uit in rad, als alles goed is)
Mijn probleem:
Voor een eindwerk moet ik in de eerste plaats een studie maken naar de frequentiecomponenten (Harmonischen) die optreden bij het digitaal genereren van een analoog signaal(in het eerste geval een sinus), of bij het kwantiseren van een analoog signaal. Dit gebeurt aan de hand van een DFT, uitgevoerd door een FFT functie.
Ook moet ik de momentele fase en error van elke sample bekomen.
Tot zover geen probleem, hier is de code die ik gebruik voor de fase:
code:
1
2
3
| %Phase calculation phase=unwrap(angle(fftResampledSin)); timebase=(0:length(fftResampledSin)-1*100/length(fftResampledSin)); |
De 'fftResampledSin' zijn de reële componenten en de imaginaire, welke voortkomen uit de fft van een sinus.
Het echte probleem is echter de normalisatie van de waarden.
Nu zieh het er zo uit (let op de waardes bij de phase: 1-5*10e5):

Ik zou graag een fase krijgen die van -pi tot +pi gaat (of van 0 tot 2pi), maar ik zie niet in hoe ik dit kan bereiken. (de angle functie geeft waardes uit in rad, als alles goed is)

