Diskuze: IFFT pomocí FFTW
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 5 zpráv z 5.
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.
Začni s jednoduchými příklady, například velikost vstupního pole 4
nebo 8 a zkontroluj si správnost výpočtu.
Také se zamysli nad FFT o jiné velikosti, než je mocnina dvou.
No a když ani to nepomůže, stačí se zamyslet na funkcí hilbert(x)
y = hilbert(x) = IDFT(DFT(x) * h)
DFT(y) = DFT(x) * h
A vzhledem k tomu, že znáš x a díky matlabu si umíš spočítat také y, bude nalezení chyby triviální záležitostí.
Tak chybka odhalena, výstupní data po druhém fft_execute(...) je ještě potřeba dělit velikostí vstupního pole. Co se týče té velikosti, doporučuješ dávat tomu pole o velikosti 2n?
To jsem ti psal už minule, že DFT je ortogonální, ale není ortonormální.
FFT se obvykle implementuje pouze pro velikosti 2n, občas pro
velikosti f * 2n, kde f = {3,5,7}.
Pokud budeš chtít rozšiřovat pole, pak se musíš zamyslet nad peridicitou
dat a vhodným způsobem doplnit vstup.
Zobrazeno 5 zpráv z 5.