Forum » Šola » Določanje frekvence vrhov v nizu
Določanje frekvence vrhov v nizu
marsovcek ::
Recimo, da vprašanje spada v Šolo .
Torej imam niz podatkov, ki periodično poraščajo in upadajo (z grafičnim prikazom so lepo vidne konice). Frekvenca in amplituda se s časom spreminjata. Zanima me, kako bi določil povprečno frekvenco "konic" v celotnem trajanju in v krajših (poljubnih) intervalih. Prav tako bi potreboval največjo in najmanjšo frekvenco, če niz razdelim na poljubne intervale.
Na voljo je Excel z data analysis paketom, lahko pa dobim tudi dostop do spss.
Torej imam niz podatkov, ki periodično poraščajo in upadajo (z grafičnim prikazom so lepo vidne konice). Frekvenca in amplituda se s časom spreminjata. Zanima me, kako bi določil povprečno frekvenco "konic" v celotnem trajanju in v krajših (poljubnih) intervalih. Prav tako bi potreboval največjo in najmanjšo frekvenco, če niz razdelim na poljubne intervale.
Na voljo je Excel z data analysis paketom, lahko pa dobim tudi dostop do spss.
Mipe ::
Tako na pamet, po palcu: število vrhov deliš s časom meritve. Pa imaš bolj ali manj približno frekvenco špic.
one too many ::
Frekvenco lahko določiš tako kot je predlagal Mipe. Vendar to deluje samo, če ima signal samo eno frekvenco, ampak za to potrebuješ utemeljen razlog. Ponavadi zaradi napak pri meritvi in eksperimentu zajameš tudi druge frekvence (npr. v elektroniki frekvenco omrežja) ali višje harmonike osnovne frekvence.
Načeloma pa določaš frekvenčni spekter s Fourierovo transformacijo (=FT) z algoritmom FFT (fast fourier transform). Glede algoritma ti ni potrebno skrbeti, ker je skoraj vedno samo FFT. Excel kakor vem ima FFT, če ne kot funkcijo pa v solverju.
Ampak ti imaš po mojem odziv na (naključne) sunke. To se vidi po skokih in eksponentnem pojemanju.
Prvo kar moraš narediti je odčitati čas in amplitude sunkov.
Čas sunka je, ko signal poskoči.
Amplituda znaša v bistvu kar razliko med prejšnjo vrednostjo v signalu in novo ob sunku. Oziroma če hočeš biti natančnejši, lahko podatke od prejšnjega sunka fitaš in izračunaš vrednost v novem času, če ne bi prišlo do sunka (tudi to ni čisto točno, ker bi moral upoštevati vse prejšnje vrhove). To je zlasti pomembno, če podatkov nimaš zajetih pogosto (sicer ne zgleda tako) in, ko sta vrhova hitro skupaj. V bistvu naredi linearno aproksimacijo od pred prejšnje (indeks: -2) in prejšnje točke (-1) v točko ob sunku (0). Bo verjetno dovolj natančno.
Potem pa delaš statistiko na teh podatkih. NE delat FFT! Sam bi naredil histogram frekvenc in amplitud (z izjemo 1/10, ko so amplitude očitno polovične!). Iz teh podatkov lahko tudi izračunaš povprečne vrednosti, deviacijo, mediano, ... To je pomojem z excelom precej enostavno.
Če je na sliki celotni signal, ne bi ga delil na manjše kose, ker imaš že tako malo vrhov.
PS: Mogoče sem na začetku napisal preveč osnovno. Sem šele kasneje videl, da dejansko sprašuješ po povprečnih vrednostih. Lahko da obstaja kakšen poseben pristop za tak problem, ne vem.
Načeloma pa določaš frekvenčni spekter s Fourierovo transformacijo (=FT) z algoritmom FFT (fast fourier transform). Glede algoritma ti ni potrebno skrbeti, ker je skoraj vedno samo FFT. Excel kakor vem ima FFT, če ne kot funkcijo pa v solverju.
Ampak ti imaš po mojem odziv na (naključne) sunke. To se vidi po skokih in eksponentnem pojemanju.
Prvo kar moraš narediti je odčitati čas in amplitude sunkov.
Čas sunka je, ko signal poskoči.
Amplituda znaša v bistvu kar razliko med prejšnjo vrednostjo v signalu in novo ob sunku. Oziroma če hočeš biti natančnejši, lahko podatke od prejšnjega sunka fitaš in izračunaš vrednost v novem času, če ne bi prišlo do sunka (tudi to ni čisto točno, ker bi moral upoštevati vse prejšnje vrhove). To je zlasti pomembno, če podatkov nimaš zajetih pogosto (sicer ne zgleda tako) in, ko sta vrhova hitro skupaj. V bistvu naredi linearno aproksimacijo od pred prejšnje (indeks: -2) in prejšnje točke (-1) v točko ob sunku (0). Bo verjetno dovolj natančno.
Potem pa delaš statistiko na teh podatkih. NE delat FFT! Sam bi naredil histogram frekvenc in amplitud (z izjemo 1/10, ko so amplitude očitno polovične!). Iz teh podatkov lahko tudi izračunaš povprečne vrednosti, deviacijo, mediano, ... To je pomojem z excelom precej enostavno.
Če je na sliki celotni signal, ne bi ga delil na manjše kose, ker imaš že tako malo vrhov.
PS: Mogoče sem na začetku napisal preveč osnovno. Sem šele kasneje videl, da dejansko sprašuješ po povprečnih vrednostih. Lahko da obstaja kakšen poseben pristop za tak problem, ne vem.
marsovcek ::
Metoda s štetjem vrhov je sicer v redu, vendar imam takih nizov (zaenkrat) okrog 40 in večinoma so daljši od tega.
Podatki so kar taki, kot je prikazano. Poenostavljeno gre za določanje koncentracije indikatorja v tekočini. Amplitude niso problematične (tiste polovične so kar prave), tudi povprečje/mediana/razpršenost ni problem dobiti. Zatika se mi zgolj pri določanju frekvence teh konic.
Fourier v Excelu sicer obstaja, vendar želi imeti 2^n točk (kar bi že prilagodil) in največ 4096 točk. Tukaj se pa zatakne, kajti moji nizi imajo povprečno okrog 10.000 točk.
Podatki so kar taki, kot je prikazano. Poenostavljeno gre za določanje koncentracije indikatorja v tekočini. Amplitude niso problematične (tiste polovične so kar prave), tudi povprečje/mediana/razpršenost ni problem dobiti. Zatika se mi zgolj pri določanju frekvence teh konic.
Fourier v Excelu sicer obstaja, vendar želi imeti 2^n točk (kar bi že prilagodil) in največ 4096 točk. Tukaj se pa zatakne, kajti moji nizi imajo povprečno okrog 10.000 točk.
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | fizika nalogaOddelek: Šola | 1724 (1506) | onitam |
⊘ | Magnet(izem) - teorija izvoraOddelek: Znanost in tehnologija | 1446 (1321) | zee |
» | Kje iz te slike lahko razberem frekvenco?Oddelek: Zvok in slika | 964 (831) | c0dehunter |
» | Osciloskop in FFTOddelek: Elektrotehnika in elektronika | 1098 (1013) | AtaStrudl |
» | [Matlab] Fouriereva transformacija in analiza odzivov procesaOddelek: Programiranje | 2837 (2662) | nosk8fx |