4.10.26 · D5 · HinglishAdvanced Topics (Elite Level)

Question bankFourier analysis — DFT, FFT algorithm (Cooley-Tukey)

1,855 words8 min read↑ Read in English

4.10.26 · D5 · Maths › Advanced Topics (Elite Level) › Fourier analysis — DFT, FFT algorithm (Cooley-Tukey)

Is page ke prerequisites: Roots of Unity, Geometric Series, Linear Algebra — Orthogonal Bases, Divide and Conquer Algorithms, Master Theorem, Convolution Theorem, Continuous Fourier Transform, Sampling & Aliasing (Nyquist).


Sach ya jhooth — justify karein

FFT ek alag, approximate version of the DFT compute karta hai
Jhooth. FFT usi DFT ke liye ek exact algorithm hai; ye sirf arithmetic ko reorganize karta hai. Practice mein farq sirf floating-point rounding ka hota hai, jo bahut chhota hota hai aur algorithm ki logic se related nahi hai.
ko double karne se DFT-vs-FFT speed advantage roughly double ho jaata hai
Jhooth. Advantage hai, jo sublinearly badhta hai: kyunki denominator bhi badhta hai, double karne se double se kam speedup milti hai (ye se tak jaati hai).
Real input signal ke liye, DFT outputs ka exactly aadha, doosre aadhe ki redundant copies hoti hain
Sach. Conjugate symmetry upper half ko lower half ka mirror bana deti hai, isliye nonzero-frequency outputs pair up ho jaate hain aur sirf (plus real aur, even ke liye, real ) independent hain.
DFT basis vectors ek orthonormal basis form karte hain
Jhooth. Ye orthogonal hain lekin normal nahi: har ek ka squared norm hai, nahi. Yahi ka factor exactly woh wajah hai kyunki inverse DFT ko chahiye.
Radix-2 Cooley–Tukey kisi bhi positive integer ke liye kaam karta hai
Jhooth. Radix-2 ko chahiye. Arbitrary ke liye mixed-radix splitting ya Bluestein's algorithm chahiye; libraries padding ya methods switch karke yeh chhupaati hain.
Frequency index signal mein highest frequency represent karta hai
Jhooth. se aage ke indices negative frequencies represent karte hain ( ka matlab hai), isliye corresponds karta hai se — lowest-magnitude negative frequency, essentially sabse slow wiggle.
aur same DFT define karte hain
Jhooth — ye forward aur inverse conventions define karte hain (ek sign flip). Dono valid choices hain, lekin aapko consistent rehna hoga: inhe mix karne se result scramble ho jaata hai.
Butterfly step do outputs compute karta hai lekin sirf ek nontrivial multiplication chahiye
Sach. aur (jahan even/odd half-DFTs hain) single product reuse karte hain; levels ke across is reuse ka compounding hi puri speedup ka source hai.
Real signal ke DFT ki har entry real hoti hai
Jhooth. aur (even ke liye) real hain, lekin baaki generally complex hain — ye amplitude aur phase dono encode karte hain.

Error dhundho

"Kyunki ek length- DFT hai, ye sirf ke liye defined hai; isliye undefined hai." — flaw dhundho
Flaw ye hai ki ko apni range ke bahar undefined maana ja raha hai. (even-sample half-DFT) period ke saath periodic hai, isliye ; butterfly yahi periodicity use karta hai, koi domain violate nahi karta.
"Do distinct basis vectors ka inner product zero hai kyunki har term zero hoti hai." — kya galat hai
Individual terms zero nahi hain; ye magnitude 1 ke complex numbers hain. Sum zero isliye hota hai kyunki ye ek geometric series hai ratio ke saath jo satisfy karta hai, jisse aata hai.
"Frequency 3 par ek pure cosine sirf par ek single spike deta hai." — isko correct karo
Real cosine hota hai, isliye ye aur dono carry karta hai. Negative frequency index par baithta hai (kyunki index ka matlab frequency hai), jo do spikes produce karta hai, ek nahi.
"Recurrence deta hai kyunki har baar work halve hoti hai." — reasoning fix karo
Hum size halve karte hain lekin do subproblems hain, aur combine cost har level par recur karti hai, levels mein se har ek par. levels par sum karne se aata hai, nahi.
"Inverse par bhoolna sirf rescale karta hai, isliye ye harmless hai." — ye kyun dangerous hai
Ye aapki reconstructed signal ko se multiply karta hai, jo ke liye ek million ka factor hai. Kisi bhi chained pipeline mein (transform, process, invert) ye numbers destroy karta hai aur original se koi bhi comparison khatam kar deta hai.
"Kyunki hai, jab bhi , ka multiple ho, isliye woh terms se drop out ho jaate hain." — subtle mistake pakdo
Ye "drop out" nahi hote — ka matlab hai ki woh term sum mein contribute karta hai, ye poora count hota hai, remove nahi. Weight of 1, weight of 0 nahi hai.

Why questions

sample points par exactly distinct frequencies kyun honi chahiye, isse zyada nahi?
Discrete grid par, frequency aur identical samples produce karte hain kyunki . Isliye frequencies modulo wrap ho jaati hain, exactly distinguishable chodke.
DFT ke liye basis ki orthogonality itni important kyun hai?
Ye har coefficient ko ek single independent projection se padh lene deta hai, isliye koi simultaneous linear system solve nahi karna padta. Extraction har coefficient ke liye ek weighted sum ban jaata hai.
Identity FFT ko kyun unlock karti hai?
Ye har even/odd sub-sum ko mein turn karti hai — literally ek half-size DFT. Sub-DFT ko recognize karna hi woh cheez hai jo recursion possible banati hai.
"almost free" kyun aata hai?
Kyunki ( use karke): sirf ek sign flip hota hai. Expensive product ek baar compute hota hai aur minus ke saath reuse hota hai.
Speedup ratio exactly kyun hai?
Naïve DFT operations leta hai ( outputs mein se har ek products ka sum hai), jabki FFT leta hai. Unka ratio hai — run-time mein ka ek factor cancel ho jaata hai, log denominator mein bachta hai.
Forward DFT exponent mein minus sign kyun hai?
Basis vector par project karne ke liye conjugate inner product use hota hai, aur ko conjugate karne se milta hai. Inverse, jo project nahi karta balki reconstruct karta hai, plus sign carry karta hai.
Real input conjugate symmetry kyun force karta hai?
ko se replace karne par exponent ka sign flip ho jaata hai, aur real ke liye ye poore sum ka exactly complex conjugation hai. Data ki reality spectrum mein ek mirror symmetry ban jaati hai.
FFT speedup ko "compounding factors of 2" kyun kaha jaata hai?
Recursion ka har level, har multiply par do outputs compute karke factor-of-2 saving deta hai, aur levels hain. Savings levels ke across add nahi balki multiply hoti hain.

Edge cases

Ek single sample () ka DFT kya return karta hai?
Sirf sample khud: . Ye recursion ka base case hai — length-1 "DFT" identity hai, jahan FFT recursion bottom out karti hai.
kisi bhi input ke liye hamesha kiske barabar hota hai?
Plain sum , kyunki har term ke liye . Ye DC component hai — signal ke average ka guna.
Even ke liye, middle index mein kya special hai?
, isliye — ek purely alternating sum. Real input ke liye ye coefficient real hai; ye Nyquist frequency hai (dekho Sampling & Aliasing (Nyquist)).
Agar odd ho (power of two nahi), to FFT recursion ka kya hota hai?
Radix-2 splitting ruk jaati hai — aap cleanly halve nahi kar sakte. Aapko mixed-radix switch karna hoga, next power of two tak pad karna hoga, ya Bluestein use karna hoga, warna even/odd trick apply nahi hoti.
Agar saare samples equal hon ( sab ke liye), to spectrum kya hoga?
Sirf nonzero hai; baaki har hai kyunki for (wahi vanishing geometric series phir). Ek constant signal pure DC hai.
Ek single impulse , baaki sab , ka DFT kya hai?
Har : weighted sum sirf term pick karta hai, jiska weight sab ke liye hai. Time mein ek spike flat, all-frequencies spectrum hai — discrete uncertainty principle miniature mein.