Cooley-Tukey-algoritmen er den mest almindeligt anvendte algoritme til beregning af Fast Fourier Transform . Algoritmen gør det muligt at udtrykke en diskret Fourier-transformation af længde svarende til et vilkårligt sammensat tal gennem et vist antal transformationer af mindre længde ved brug af rekursion , hvilket reducerer kompleksiteten af beregninger til glatte . Opkaldt efter J. Cooley og J. Tukey .
For et vilkårligt naturligt tal, den diskrete Fourier-transformation af en kompleks vektor , hvor , er en kompleks vektor , hvor , hvis komponenter er givet af formlen
hvor .
For at konstruere algoritmen antages det, at der for nogle naturlige tal og og følgende substitution af indekser foretages [1] :
hvilket resulterer i
Dernæst transformeres vektorerne af input- og outputdata til todimensionelle arrays og givet af lighederne
Det er værd at bemærke, at komponenterne er bestilt anderledes end .
Dernæst lad og . Det er indlysende . Derefter, hvad angår todimensionelle variable, transformeres formlen til formen [2]
Beregning af længdetransformationen kommer således ned til at gøre følgende:
Desuden, i stedet for komplekse additioner og komplekse multiplikationer af den oprindelige formel, indeholder det endelige skema ikke mere end komplekse additioner og komplekse multiplikationer [2] .
Hver af længdetransformationerne eller kan beregnes ved hjælp af forskellige hurtige algoritmer, især igen ifølge ovenstående skema. I dette tilfælde kan længdetransformationen repræsenteres i en form, der kræver komplekse multiplikationer [3] .
I mange applikationer er længden af transformationen en potens af to: . Så, i ovenstående skema, er muligheder eller mulige . I dette tilfælde taler man om Cooley-Tukey-algoritmen i base to [3] ( radix-2 ) .
Hvis , så taler man om Cooley-Tukey-algoritmen med tidsudtynding [3] . I dette tilfælde transformeres ligningerne til formen
Hvis vi introducerer notationen og , så kan ligningerne omskrives som
En sådan operation kaldes normalt en "sommerfugl" .
Denne procedure kan anvendes rekursivt på inputvektoren . Ved hvert trin opdeles -punkttransformationen i to -punktstransformationer, som igen opdeles på samme måde, indtil længden af transformationen bliver lig med én. Så er der et omvendt træk, ved hvert trin fordobles længden af resultaterne af transformationerne ved hjælp af "sommerfugle". Med denne implementering udføres komplekse multiplikationer og komplekse additioner.
Denne proces er et eksempel på anvendelsen af skille og hersk- teknikken . Men i mange implementeringer undgås direkte rekursion, og i stedet krydses beregningstræet i bredde-først søgerækkefølge .
Hvis , så taler man om Cooley-Tukey-algoritmen med frekvensdecimering [4] . I dette tilfælde transformeres ligningerne til formen
Lade
Giv slip
Ved at bruge formlerne for frekvensdecimeringsalgoritmen er det let at verificere, at følgende relation holder:
Denne base-to-modifikation af algoritmen kaldes Rader-Brenner-algoritmen . Det gør det muligt at reducere beregningsmæssig kompleksitet på grund af enklere multiplikationer med rent imaginære konstanter [5] . Lignende formler kan opnås ved brug af reelle konstanter [6] .
Algoritmen og dens rekursive implementering blev opfundet omkring 1805 af K. Gauss , da han interpolerede banerne for asteroiderne Pallas og Juno [7] . Så blev opdagelsen ikke udbredt og blev først offentliggjort efter videnskabsmandens død på ny latin . Gauss-resultatet blev genfundet flere gange i forskellige former i løbet af de næste 150 år og blev populært efter offentliggørelsen i 1965 af en artikel af J. Cooleyfra IBM og J. Tukey fra Princeton , hvor algoritmen endnu en gang blev genopdaget, og en bekvem implementering til en computer også blev beskrevet [8] .
Det faktum, at Gauss var opdageren af algoritmen, blev opdaget kun få år efter udgivelsen af Cooley og Tukey. I deres artikel henviste de kun til I.J. Goods arbejde, hvor Goode-Thomas-algoritmen blev beskrevet .
At udtrykke Fourier-transformationen af en længde i form af to længdetransformationer kaldes undertiden Danielsons lemma— Lanczos , da det blev opnået af disse to forfattere i 1942 [9] .