Sunteți pe pagina 1din 17

The Fractional Fourier Transform and Applications Author(s): David H. Bailey and Paul N.

Swarztrauber Source: SIAM Review, Vol. 33, No. 3 (Sep., 1991), pp. 389-404 Published by: Society for Industrial and Applied Mathematics Stable URL: http://www.jstor.org/stable/2031440 . Accessed: 14/04/2011 20:07
Your use of the JSTOR archive indicates your acceptance of JSTOR's Terms and Conditions of Use, available at . http://www.jstor.org/page/info/about/policies/terms.jsp. JSTOR's Terms and Conditions of Use provides, in part, that unless you have obtained prior permission, you may not download an entire issue of a journal or multiple copies of articles, and you may use content in the JSTOR archive only for your personal, non-commercial use. Please contact the publisher regarding any further use of this work. Publisher contact information may be obtained at . http://www.jstor.org/action/showPublisher?publisherCode=siam. . Each copy of any part of a JSTOR transmission must contain the same copyright notice that appears on the screen or printed page of such transmission. JSTOR is a not-for-profit service that helps scholars, researchers, and students discover, use, and build upon a wide range of content in a trusted digital archive. We use information technology and tools to increase productivity and facilitate new forms of scholarship. For more information about JSTOR, please contact support@jstor.org.

Society for Industrial and Applied Mathematics is collaborating with JSTOR to digitize, preserve and extend access to SIAM Review.

http://www.jstor.org

SIAM REVIEW Vol. 33, No. 3, pp. 389-404,

September 1991

?)

1991 Society for Industrial and Applied Mathematics 002

THE FRACTIONAL

FOURIER

TRANSFORM

AND APPLICATIONS*

DAVID H. BAILEYt

AND PAUL N. SWARZTRAUBERt

Abstract. This paper describes the "fractionalFourier transform," which admits computation by an algorithmthat has complexityproportionalto the fast Fourier transform algorithm. Whereas the discrete Fourier transform(DFT) is based on integral roots of unity e-27i/n, the fractional Fourier transform based on fractionalroots of unity e-27ia, is where a is arbitrary.The fractional Fouriertransform fast algorithmare usefulforsuch applications as computing and the corresponding DFTs of sequences with prime lengths,computing DFTs of sparse sequences, analyzing sequences with noninteger periodicities,performing high-resolution trigonometric interpolation,detectinglines in noisy images, and detectingsignals with linearlydrifting frequencies.In many cases, the resulting algorithmsare fasterby arbitrarily large factorsthan conventionaltechniques. Key words. discrete Fourier transform, fast Fourier transform AMS(MOS) subject classifications. 65T20, 65T10, 65Y20

1. Introduction. The conventional is fast Fouriertransform (FFT) algorithm Fourier transforms widelyused to computediscrete (DFTs) and discrete convolutions, and to perform trigonometric interpolation.However,in some applicationsof the FFT, eitherthe input is only partiallynonzero,or only part of the DFT result is or required, both. Nonetheless, FFT algorithm ordinarily the is used unlessthedesired resultscan be moreefficiently computeddirectly from definition the DFT. We the of presenthere a techniquethat permitsmany of these applicationsto be computed moreefficiently. same techniquecan also be applied in othersituationsthat do This not admit efficient solutionusingstandardFFTs. of The central concept here is a generalization the DFT that is termed the on fractional Fouriertransform (FRFT). It is defined the m-longcomplexsequence x = (xj, 0 < j < m) as
m-1 (1)
Gk(X, aJ) =
j=O

3 xe-e27rijke

to The parameterca will not be restricted rationalnumbersand in fact may be is any complexnumber. Althoughthis transform definedforall integers we will k, m usuallycomputethe first nonnegative values, i.e., for0 < k < m. Straightforward evaluationofthesem valuesusing(1) requires 8m2floating pointoperations, assuming the exponential have been precomputed. factors DFT and its inverseare special cases of the fractional Note that the ordinary Fouriertransform:
m-1 (2)
Fk(X)
= j=O

3 xe-e27rijk/m

* Received by the editors May 10, 1990; accepted for publication (in revised form) October 30, 1990. t Numerical Aerodynamic Simulation (NAS) Systems Division at NASA Ames Research Center, Moffett Field, California 94035. t National Center forAtmosphericResearch, Boulder, Colorado 80307, which is sponsored by the National Science Foundation. This work was completed while the author was visitingthe Research Institute for Advanced Computer Science (RIACS) at NASA Ames, and was funded by the NAS Systems Division via Cooperative AgreementNCC 2-387 between NASA and the UniversitiesSpace Research Association 389

390

DAVID H. BAILEY AND PAUL N. SWARTZTRAUBER

(3) (4) (5) Fki (x)

= Gk(x, 1/m),
= m xe=27rijk/m

0 < k <m,

1 m-1

1 =
-Gk(X,

-1/M),

0 < k <m.

can also be writtenin termsof the fractional The discreteLaplace transform Fouriertransform. the FRFT can be reducedto a DFT and can thus be If ca is a rationalnumber, r FFTs. Suppose that ca= r/n,wherethe integers and evaluated usingconventional such that 0 < p < n primeand wheren > m. Let p be the integer n are relatively and pr _ 1 (mod n). Extend the input sequence x to lengthn by padding with zeroes. Then
(6) Gk(X, a) = m-1
E: xje-27rijkr/n j=O n-1
j=O

(7)
(8)

Xpje-27i(Pj)kr/n E3

n-1 = E Xpje-2rijk/n
j=O

(9)

= Fk(y),

0 < k < n,

by wherey is the n-longsequence defined yj = xpj and wheresubscriptsare intern pretedmodulon. Thus thefirst valuesofthe FRFT can be computedbyperforming FFT on the sequencey. We willtake 5n log2n as the cost ofthisoperation, an n-point pointoperationsin a radix-2FFT of size n. since that is the numberof floating we m Since onlythe first values of this DFT are required, will see in ?3 that the point operationsby computationalcost can be reducedto about 5nlog2m floating a employing decimationscheme. 2. The fast fractional Fourier transform algorithm. An impetusforstudyit for is Fouriertransform the existenceof an algorithm computing ing the fractional than the schemesdescribedin the previoussection. moreefficient that is significantly pointopis cost of this algorithm onlyabout 20mlog2m floating The computational of erations,whichis independent the value of ca. In particular,this cost does not is depend on whetheror not ca is rationalor even real. The algorithm based on a due techniqueoriginally to Bluestein[6] and is relatedto what is knownin the signal (see fieldas the "chirpz-transform" [11] and [12]). processing can be derivedby notingthat 2jk = j2 + k2 _ (k _ j)2. The This algorithm for expression the FRFT thenbecomes
m-1

(10)

Gk(X,Oa) =
j=O

Xje_7ri[i2+k2-(ki_j)2]e
m-1

(11)

= e_-rik2a

j=O

Xje-7ij2Ce7i(k_j)2e

FRACTIONAL

FOURIER TRANSFORM
2

391

(12)

e-7rik%y

m-1 j=O

YjZk-j

wherethe m-longsequencesy and z are defined by


(13) yj =
Xje-ii2e

(14)

7rij20C zj = e

Since the summation(12) is in the formof a discreteconvolution, suggests it evaluation using the well-known DFT-based procedure. However,the usual DFT methodevaluates circularconvolutions, whereinZk-j = Zk-j+m. This conditionis not satisfied here,but insteadZk-j = Zj-k whenk - j < 0. Fortunately, is possible it to convert thissummation intoa form that is a circular convolution. Suppose we wish to computethe the FRFT for0 < k < m. First select an integer > m - 1, and p extendthe sequencesy and z to length2p as follows: (15) (17) Yj = 0,

(16)

z; = 0,
zi=eri(j-2p)2

m < j < 2p, m < j < 2p-m, 2p-m<j<2p.

It can be seen by inspection that the first values of Gk (X, c) satisfy m


2p-1

(18)

Gk

ca) = e Yjik2 j=O

Zk-j

0 < k < m.

It can also be seen by inspectionthat the sequence z now satisfies the required for circularconvolution. property a 2p-point Thus it follows DFTs may that 2p-point be used to evaluate (18): (19)
Gk(X ao) = e -ik2 aF-1(w)

0 < k < m,

wherew is the 2p-long sequencedefined Wk = Fk(y)Fk(z). It shouldbe emphasized by that thisequalityonlyholds for0 < k < m. The remaining - m resultsofthe final 2p DFT are discarded. These threeDFTs can of coursebe efficiently inverse computed using2p-point FFTs (fordiscussionsof computing FFTs, see [1], [4], [5], [7], [9], [11], [16],and [17]). To computea different m-longsegmentGk+s(X, a), 0 < k < m, it is necessary to slightly the modify above convolution procedure.In this case z is as follows: (20) (21) (22)
zj

= eri(i+s)2

< j <

m,

z; = 0,
zj = ei(i+s-2P)2a

m < j < 2p-m, 2p-m < j < 2p.

The remainder the algorithm unchanged. This completeprocedurewill be of is referred as the fastfractional to Fouriertransform algorithm. The techniqueof converting summation(12) into a circularconvolution the can also be understoodas the embeddingof a Toeplitz matrixinto a largercirculant whichadmitsevaluationusingan FFT. Readerswho wishto studythe matrix matrix, of formulation this algorithm referred [15]. are to

392

DAVID H. BAILEY AND PAUL N. SWARTZTRAUBER

pointoperationsare requiredfora q-point We will assume that 5q log2q floating used radix-2complexFFT. If q is not a power FFT. This is the cost ofthe commonly of 2, the cost is somewhathigher,dependingon the factorsof q. If m is a power of 2, the obvious choice forp is p = m. Then the total computationalcost of the point operations,assumingthat the is above algorithm 20mlog2m + 44m floating in exponentialfactors (19) and the FFT of the z sequence have been precomputed. fourtimesthe cost of the usual m-pointFFT. Note that this cost is approximately of dependson the efficiency the underlying of The efficiency the above algorithm of fast convolution used to evaluate (18). A variety algorithm circularconvolution exist in the literature(see [2] and [11]), and one of these may be more algorithms attractivethan using FFTs, dependingon the computerhardwareand the applicaFFTs overfieldsotherthan the complexnumbers(see [11]) may tion. Furthermore, in employedin some instances. However,forsimplicity assessingthe be profitably complexFFTs are we costs of algorithms, will assume that ordinary computational employed. We will also assume when assessing costs that the sizes of DFTs and to the FRFTs are powersof2, although algorithms be discussedare valid forany size. only the dominanttermof these computationalcosts will be listed,since Hereafter details, especially by overshadowed implementation termsare generally lower-order forlargesizes. 3. Computing longer and shorter segments of results. Formula(19) gives of Fouriertransform. Multiplesegments m values the first values of the fractional m For can be computedeven more efficiently. example, suppose we wish to compute computed r the first resultsof an FRFT, wherer = qm. These can be efficiently (19)-(22) fors = 0, m, 2m,* *,(q - 1)m. In this case it is by repeatingformulas z reasonableto assume that foreach value of s, the DFT ofthe appropriate sequence the Significantly, DFT ofthey sequenceneedsto be computed has been precomputed. the of onlyonce. Thus each segment m resultscan be computedby multiplying DFT z DFT ofthe appropriate sequence,performing ofthe y sequenceby the precomputed by an inverse2p-pointFFT on the result,and multiplying exponentialsas in (19). point r The dominant cost of computing resultsin this manneris lOrlog2m floating operations(whenr is largecomparedto m). The discussionin the previousparagraphassumed that we are computingthe any set of r resultsthat is the unionof m-long r first values of the FRFT. However, can be computedin this manner,and the computationalcost contiguoussegments is the same. It is not even necessaryto assume that the startingindices s of the are of segments multiples m. computedby than m in lengthcan be efficiently of Segments the FRFT shorter a using a decimationschemesimilarto that used forcomputing shortsegmentof a of for DFT. Since the fastalgorithm a shortsegment a DFT is not widelyknown,it first. will be presented m Suppose that we wish to computethe first values of the DFT of the n-long sequence x, wheren = qm. We can write
m-1 q-1

(23) (24)

Fk(X)

1=0 j=0

xj+lqe-27i(j+lq)k/n m-1

E
j=0

q-1 e-27rijk/n

Xj+lqe-27rilk/m
1=0

FRACTIONAL q-1

FOURIER TRANSFORM

393

(25)

Ze2Xiik/TFk(yi),
j=O

0 < k < r,

whereyj denotesthe m-longsequence (Xj+lq, 0 < 1 < mi). This means that the first the m values of the n-pointDFT of x can be computedby writing input as a q x m m-pointFFTs on each row,multiplying matrixin columnmajor order,performing each column. The dominant and then summing the resultsby certainexponentials, whichis point operations, cost of this procedureis 5n log2m floating computational this FFT. Unfortunately, savingsis not n-point a less thanthat ofcomputing full-sized special case m = n/2,a case we have alreadyencountered: in significant the important halfof the DFT resultsin (19) are required. recall that onlythe first to Formula(25) may be easilygeneralized computem values ofthe DFT starting at any index s. We thenobtain
q-1

(26)

Fk?8(x)

Ze-2-ii(k+s)/n
j=0

Fk(Zj),

0 < k < m,

wherezj (xj+1qe-2-il1/m, 0 < 1 < m). The schemedescribedby (25) can be seen as an abbreviatedformof an FFT step FFT" (see [1, p. 150], [4], [9, p. 569], and called the "four sometimes algorithm lately due to has receivedrenewedinterest [17, pp. 202-203]). This FFT algorithm systemswith particularly for its suitability some advanced computerarchitectures, memories.Formula(25) is also relatedto what is knownas the "discrete hierarchical [3]. Zak transform" This same generalmethodcan be applied to computean m-longsegmentof an n-pointFRFT:
m-1 q-1

(27) (28)
(29)

Gk(X,E ) = E

1=0 j=0 m-1

Xj+1qe-27i(j+1q)kce

q-1

=E

e-27ijkc

j=0 q-1

1=0

Xj+le -27rilqke

= Ee-27iikeGk(yj,qc),
j=0

O < k <,

whereyj = (xj+lqi 0 < 1 < m). As above, this means that the firstm values of the the n-pointFRFT of x can be computedby writing input as a q x m matrixin the FRFTs on each row,multiplying results m-point columnmajor order,performing each column. Note that the exponential and then summing by certainexponentials, in (19) and factors formula into the exponential in factors (29) may be incorporated cost. Hence the dominantcost thus do not need to be countedin the computational operations,whichis less than that of directly of this schemeis 20nlog2m floating an computing n-pointFRFT. FRFT beginning of segment an n-point formula an m-long for The corresponding at some index s is
q-1

(30)

Gk+s(X,Ea)

= ,e-2rii(k+s)Gk(zj,
j=0

qa),

0 < k < r,

394

DAVID H. BAILEY AND PAUL N. SWARTZTRAUBER

wherezj = (xj+lqe-27ilqsa, in 0 < 1 < m). Note that the exponentialfactors these intothe factors (20) and (22) and thus do not need in vectorscan be incorporated zj to be counted. Hence the dominantcost of this schemeis 20nlog2m floating point operations, same as above. the 4. Computing DFTs of sequences with prime lengths. It is popularly believedthat DFTs can onlybe evaluatedby a fastalgorithm whenthe size m ofthe is such as a powerof 2. But since the DFT is transform a highlyfactorable integer, a merely special case of the FRFT, and since the size 2p of FFTs used in evaluating the FRFTs may be chosento be any convenient value (such as a powerof 2) that is at least 2m - 2, it follows that the fastfractional Fouriertransform can algorithm be used to computem-pointDFTs even when m is a prime. The computational cost is timesthe cost ofa powerof2 FFT ofcomparablesize. This algorithm onlyabout four in was first presented Bluestein'spaper [6]. It should be emphasizedthat Bluestein's algorithm permitsDFTs of any size (not just primes) to be computedusing power of 2 FFTs, whichare generally the most efficient FFTs available on computer systemlibraries.Thus, dependingon the computersystemand implementation, Bluestein's algorithm may be more efficient forcomputingDFTs of certainsizes than conventional FFTs. On some computer such as hypercubes, Bluestein'salgorithm preferable computing is for DFTs systems, of any size that is not a powerof 2 [15]. has is Perhaps one reasonthat Bluestein'salgorithm not receivedmoreattention that anotherFFT algorithm primem was discovered about the same time by for at reducesa DFT of primesize m to a circularconvolution Rader [13]. This algorithm of size m - 1, whichin theoryis only about halfas costlyas Bluestein'salgorithm. UnlikeBluestein's algorithm, Rader's algorithm does not generalizeto the however, case of arbitrary and thereis littleflexibility the permissible in sizes of FFTs that ca, may be used forefficient evaluation. There are a number otherimportant of of applications the basic technique behind Bluestein's algorithm;we have termedthis techniquethe FRFT. Several of these applicationswill be presented here,including some that wereoriginally presented in [12]. 5. Computing DFTs of sparse sequences. In this sectionwe will describe efficient for DFTs of sequenceswith large numbers zero elalgorithms computing of ements.DFTs of such sequencesarise in trigonometric as interpolation, we shall see in ?7. Another commonapplicationis in digitalfiltering, wherehigh-order harmonics are oftenzeroed beforeperforming inverseFFT. A thirdinstanceis in the coman putationof the "linear"or "aperiodic" convolution, whichis defined the n-long on sequencesx and y as the 2n-long sequencez = (Zj=0 XjYk-j, 0 < k < 2n-1), where the subscriptk - j is restricted the range0 < k - j < n - 1. Linear convolutions to arise in applicationsas diverseas multiprecision arithmetic and the numerical solution of partial differential is equations. This type of convolution normally evaluated by padding the n-longinput sequences x and y with zeros to length2n, and then their2n-point circularconvolution computing usingFFTs. Threecases ofsparseDFTs willbe considered.Firstwe willcomputethecomplete DFT of an inputsequencewhereonlyan initialsegment possiblynonzero.Second, is we will computesegmentsof such a DFT. Third, we will computesegmentsof the DFT of an inputsequencethat has onlya fewnonzerosegments. Let n = qm. Suppose we wishto computethe DFT of an n-longsequencex that is knownto be zero except forthe first entries.This can be done by employing m a

FRACTIONAL

FOURIER TRANSFORM

395

FFT-based decimationscheme,as follows: conventional

(31) (32)
(33)

m-1 Fk+lq (X) =


E

X,e-27ij(k+lq)/n

j=O

m-1
=

xie-2rijk/n e-2rijl/m

j=O

= Fl(yk),

0<Iml

O<k<q,

each k, 0 < k < q, them DFT values whereYk = (xje-27iik/n 0 < j < m). Thus, for witha conventional withstrideq can be computed at beginning indexk and increasing by FFT on theinputsequencemultiplied certainexponentials.The dominant m-point all cost of computing n elementsof the DFT by this procedureis 5n log2m floating this point operations,which is less than that of an n-point FFT. Unfortunately, in savings is not significant the importantspecial case m = n/2, a case we have already encountered:note that the sequence y definedin (13) and (15) is of this form. If only a single contiguoussegmentof the n-pointDFT is required,then this since we can onlyobtain DFT resultswitha spacingof q approachis unsatisfactory, of a methodforcomputing segment a DFT the from above. Further, conventional the since each of the DFTs in the summation(26) must still in ?3 is also unsatisfactory the be evaluated,withno savingsin computation.However, FRFT can be effectively applied to this situation. The simplest case is whenonlym values ofthe n-pointDFT are required.In this case we have

(34)
(35)

m-1 Fk+s(X)
=
j=O

xje-2rij(k+s)/n

= Gk+s(y, 1/n),

0 < k <m

FRFT, cost hereis the cost ofan m-point wherey = (xj, 0 < j < m). The dominant methodswhenever or 20mlog2m operations.This is less thanthe cost ofconventional m < n/4 (forsufficiently large n). repeating by Multiplesectionscan be computedeven moreeconomically merely paragraphof ?3, savingsresult values of s. As indicatedin the first (35) formultiple because the FFT of the sequence y in (18) needs to be computedonly once. The point dominantcost of computingr elementsin this manneris lOrlog2m floating operations(when r is large comparedto m). Thus up to n/2 elementsof the DFT all maybe computedby thismethod,and the cost is stillless than computing or part method(forlargen). of the n-pointDFT by a conventional of We will now examinethe case wheremorethan one m-longsegment the input of sequence x is possiblynonzero. An m-longsegment the n-pointDFT of x can be written
q-1 m-1

(36) (37)

Fk+8(X)

= 1=0

SXj+1Me-27i(j+m)(k+s)/n
j=O

q-1

1=0

S e-2i(k+s)1m/n

m-1
j=0

5 Xj+lme-2rij(k+s)/n

396

DAVID H. BAILEY AND PAUL N. SWARTZTRAUBER


q-1

(38)

ye-2xi(k+s)11qGk+ 1=0

(Yj,

1/n),

0 < k < ml

whereYi = (xj+lm, 0 < j < m). With the assumptionthat onlya fewm-longinput that mostofthe termsofthissummation zero. Thus segments zero,it follows are are onlya fewof these FRFTs need to be actuallycomputed. We can assume that the exponential factors (38) have been incorporated in into of the exponential factors formula (19). Suppose that onlyt of the inputsegments y1 containpossiblynonzeroelements.Then the total computational cost of computing of an m-longsegment the DFT is on the orderof 20tmlog2m operations.This is less than the cost of computing segment a DFT using the conventional a of scheme(33) t whenever < q/4 (forlargen). As indicatedin ?3, multiple of segments resultscan be even moreefficiently computed by repeating(38) forseveralvalues of s. The dominantcost of computing r values ofthe DFT in thisway is lOtr log2m floating pointoperations(whenr is large comparedto m). This is less than conventional methodswhenever < n/2 (forlarge tr unlessonly a fewsegments the inputare of n). Thus this methodis not appropriate of possiblynonzeroand onlya fewsegments the resultare desired. 6. Analyzing sequences with non-integer periodic components. In many practicalapplicationsofDFTs and FFTs, notablyin signalprocessing, is not really it timeseriesbeingstudiedis exactlyperiodicwithperiod m, truethat the underlying wherem is the size of the data sequence. Instead, the samplinginterval and sample size are usually selected arbitrarily the convenienceof hardwareand software. for Thus in such applications is the rulerather it than the exceptionthat a data sequence containscomponents withperiodsthat are not exactlywhole numbers. One instanceof such an applicationis in computing solar positions. Daily solar altitude and declinationangles are readilyavailable fromalmanacs. Such positions are not periodicwitha period of 365 days, but theyare verynearlyperiodicwith a fractional periodofapproximately 365.2422days. In otherwords,theapparentmotion of the sun has a fairly simpleFourierrepresentation based on a period of 365.2422 is days, but the representation not simple based on a period of 365 days. In this a example we knowfrom prioriinformation what the true period is. But in general we usuallydo not even knowthat. Thus we seek techniquesthat can determine an unknown periodand computethespectrum based on the trueperiodonce it is known. Let x be the m-longsequence (e27iij3/m, 0 < j < m) where/ is unknownand not an integer.Then the DFT of x is (39) (40) (41)~~~~ (41) (42)
m-1
Fk(X) =
E

e27iji/me-2rijk,,'m

j=0

m-1
= j=O

E e2rij(,3-k)/m
_e27ri(,3-k)

1 - e27i(f-k)/m
e7i(3k)(ml)/m

sin[r(/3- k)/m]'

sin[7r(o- k)]

0< k<
-

m.

Thus thespectrum sucha sequenceis not a "spike"at a singleindexbut instead of is spreadoverall indices, withmagnitudes thatdeclinerapidly withincreasing distance

FRACTIONAL

FOURIER TRANSFORM

397

/ from3. It is fairly easy to determine unknownfrequency to withinone unit the by examining these magnitudes.Suppose that this has been done and that b is the greatestinteger less than 3. One way to determine moreaccurately to apply the following is formula, which ,3 was brought the authors'attention Oscar Bunemanof Stanford to by University: (43)

/=

b+

7r

_ sin(,7r/m) tan- cosQr/m)sin(m)

I cos7r/m)+IFb(X)I/I1Fb+1(X)

The derivation this formula straightforward (42). It is exact fora pure of is from /3 sinusoidsignal withfrequency in the rangeb < 3 < b + 1. In the presenceof noise or higher-order its harmonics, accuracydegrades,but it is nonetheless quite usable formanyapplications. An alternatemethod,whichis somewhatmorerobustin the presenceof noise,is based on the fractional In Fouriertransform. particular, the FRFT can be used to efficiently computea high-resolution spectrum the interval b+ 1]. The m spectra in [b, values starting index b and increasing at withinterval are givenby 6
m-1

(44)

Fb k6(X)

j=O m-1

xj

-2.rij(b+k6)/m

(45)

j=O

Xje-2wijb/me-27rijkb/m

(46)

=Gk(y,6/m),

O < k <m,

whichmeans chosento be 1//m-, wherey = (xje-2lrijb/m 0 < j < m). 6 is typically b that only the first /mvalues of the FRFT need to be computedto span [b, + 1]. reducedby applyingthe techniques Thus the cost of this calculationcan be further of ?3. Suppose that Fb+k,5(X) is the largestelementof this high-resolution spectrum. 3 Then an accurate estimateof the truefrequency is givenby b + k6. of Once an accuratevalue of/ has been obtainedusingeither thesetwomethods, we mightask if the spectrumcan be adjusted in some sense so that the integer 3. index b corresponds the fractional to frequency Ideally,the adjusted spectrumof a monochromatic signal would have a "spike"at b and zeros at all otherindices. To so less than 3 as above, and let a = b//3, that that end, let b be the greatestinteger a is slightly than 1. Then considerthe formula less
r-1

(47)

Xk =

E xje-2rijk/(ma) j=O

(48)

'

<a

k< r

where r is the nearest integerto ma and where z is the x vectortruncatedto r to set elements.For computational purposes,it may be preferable merely z equal to x, except that zj = 0 forr < j < m. When r = ma is an integer, have we
r-1

(49)

Xk

5xje-2rijk/r j=o

398

DAVID H. BAILEY AND PAUL N. SWARTZTRAUBER


r- 1 =
j=O

(50) (51)
(52)

E3 e2riij/me-27rijk/r
e-2rij(b-k)/r

= E

r-1

j=O

=r6(k, b)

the where&(k,b) = 1 ifk = b, but zero otherwise.Thus in thiscase we have precisely desiredresult. values it When mcais not an integer, is still true that Xb = r, but the off-peak is muchsmallerthan r. To make theirmagnitude nonetheless are not zero. However, this precise,let s = r - mc, and note that Isl < 1. Then we can write
r-1

(53)

|Xk| =

Zxje-2rijk/(ma)
j=O

(54) (55) (56) (57) (

-e2rij(b-k)/(moe)

1 e-e27ri(b-k)/(me)

-e27ri(b-k)/(me) -e27rir(b-k)/(ma) 112-e7ris(b-k)/(mce)

_ sin[irs(b k)/(mc)]
sin[7r(b k)/(mc)]

approximation When k is close to b, we findthat to a first-order lXkl is equal small compared with Xb = r. to 2sl,which is bounded by 1 and therefore quite the situationis not quite as When k is large (near r) and b is small, or the reverse, we of since the denominator (57) mightbecome small. However, still find favorable, spectralvalues Xk are bounded by m/(7r3)or that the magnitudesof the off-peak m/[ir(m- p)], whichare small comparedwith r providedthat 3 is neithera very of small nor a verylarge fraction m. 3, withfrequency but insteadconsists If the original signalis not monochromatic / these of a componentwith frequency plus several harmonicsof this frequency, will be evidentin the adjusted spectrumat k = 2b, 3b, etc. harmonics higher-order amplitudesgivesresultsthat are somewhatlarger In this case an analysisof off-peak of than above but still quite small comparedwith r fortransforms reasonablylarge withthe additionofmoderateGaussian sizes. The formula (48) also givesgood results noise. 7. Performing high-resolution trigonometric interpolation. The FFT is For interpolation. example,givena sequence trigonometric used to perform frequently x in tabular form, may wish to determine approximatemidpointvalues Xj+l/2. we of In the previoussectionswe have used the "aliased" form the DFT:

(58)

m-1 Fk(X) =

xjeI2iik/m

0 K k< m.

j=O

FRACTIONAL

FOURIER TRANSFORM

399

In this sectionwe will use the "unaliased" form the DFT, whichis defined of on i = (xj, -m/2 < j < m/2) as
m/2-1

(59)

Fk(z)

xie-2i
j=-m/2

jk/r

m -rm/2 <k < m/2.

analogously.For most purposes,the unaThe inverseunaliased DFT is defined formulas because two different as liased formis not as convenient the aliased form, that m is even). are requiredform even and m odd (we will assume in the following DFTs assumes the aliased form. for most FFT software computing Furthermore, is the however, unaliased form preinterpolation, of In discussions trigonometric ferred.The problemis that, althoughFk(;z) = Fk(x) foreach k, theirinterpolated (dependingon how they are defined),so that Fk+1/2(:iC) 5 values may be different the fk(t) = eikt has an stemsfrom factthatthefunction This disagreement Fk+l/2(x). (or characterizations "aliases") on the pointstj = 27rj/m, of infinite number alternate are m. namely,fk+m(t) = ei(k+m)t forall integers These functions indistinguishable or values one anotheron the points tj. However,at intermediate interpolated from for Therefore choiceof basis functions the trigonoa fk(t) and fk+m(t) are different. f(t) must be made. The most commonchoice is the metricexpansionof a function varianceon 0 < t < 27r set (fk(t) = eikt, _m/2 < k < m/2). This set has minimum values will be as smootha possible. and thus ensuresthat the interpolated For computationalpurposes, the unaliased formcan be easily reduced to the aliased form. One approach is to definem-longsequences y and Y such that yj = for0 < k < m. Then for0 < j < m and Yk = (_l)kFkrm/2(:) (-l)iXjrm/2 (60)
Yk = (1)k
Fk-m/2(i) m/2-1

(61) (62) (63)


(64)

=
=

e-7rik
m-1

xie-27rij(k-m/2)/m

j=-m/2 E: Xj-m/2ej=O

2ri(j-m/2)k/m

= E

m-1 j=O

yj -27rijk/m
0<

Fk(Y),

k <.

we Thus Y is the ordinary m-pointDFT of y. Alternately, can defineyj Xj Yk define in termsof for0 < j < m/2 and yj = xj-m form/2 < j < m, and similarly designedto DFT of y. Eitherway,FFT software Fk. Then again Y is the ordinary to aliased DFTs can be readily employed computem-point computetheusual m-point unaliased DFTs. Supinterpolation. approachto trigonometric We willnowdevelopthetraditional values betweeneach of the m values of z. pose we wish to computeq interpolated unaliased DFT of i and thenextendthis computethe inverse Let n = qm. We first spectrato the n-longsequence Y as follows: (65)
Y=

Fk ()

k < m/2,
1

(66)

Y-m/2 = 2 -m/2(:)

400

DAVID H. BAILEY AND PAUL N. SWARTZTRAUBER

(67) (68) (69)

YM/2= 2 -m/2(:)l

Yk = ?, Yk = ?,

-n/2 < k <-m/2, m/2 < k < n/2.

The splitting F_1/2(:iz) in the above is necessary producethe mostaccurate of to interpolated values. For example,ifthis is not done thentrigonometric interpolation on purelyreal data will yieldcomplexvalues. This split is not necessary m is odd. if The n-longvectory of interpolated resultsyj = Xj/q, wheren qm, can now be computedfrom unaliased n-pointDFT of Y: the
m/2

0)

Yi=

k=-m/2 n/2-1

3E

y e-27ri(j/q) k/m

(71)

E3 Yjke-21rk/k

-n/2 < k < n/2.

k=-n/2

This approach requiresan m-pointinverseFFT followed an n-pointforward by FFT, so that the dominantcost is 5n log2n floating pointoperations. This cost can be reducedsomewhatby applyinga decimationtechniquesimilar in to that employed equations (31)-(33):
m/2

(72)

Yj?lq =

k=-m/2 m/2

3E

y e-27rik(j+lq)/n

(73)

k=-rm/2 m/2-1 ikj/n -2 riklq/n

e_2iklq/n Yke-2rikj/n

(74)

yke-27 k=-m/2

Ym/2

7rimj/neiq/

(75)
(76) where Zj

=l(Zj)
=Fl(Wj)

e-ijq + (-l)lym/2
+ (-1)12Ym/2 cos(irj/q), -m/2 ? I <m/2, 0 <j
<q,

(Yke 2iki/T, -m/2 < k < m/2) and where Wj = Zj except that the leftmost elementof Wj, is zero. The formulas (75) and (76) differ (Wi)rm/2, only in that the second is moreappropriateforworking withreal data, since a realvalued FFT may be used forcomputation. The dominantcost of computingall n interpolated values in this fashionis 5n log2m floating pointoperations. In many applicationsof trigonometric interpolation, only a segmentof the n interpolated values are required. In this case the cost can be significantly reduced by applyingthe FRFT, usingtechniquessimilarto those in ?5. Suppose we wish to m computeonlythe first interpolated valuesin (71). This expression be converted can to a FRFT as follows:
m
(77)
Yj =

k=O

E3Yk-m/2
m

-2ei(k-m/2)j/n

(78)

= e7rij/q E

Ykrm/2e-27rikj/n

k=O

FRACTIONAL

FOURIER TRANSFORM

401

(79)

= exii/qGj(Z,

1/n),

0< j

<im,

whereZ is the (m + 1)-longsequence (Yk-m/2, 0 < k < i). Suppose fora moment that m is a poweroftwo,and that the mostefficient FFT sizes employed evaluatingthe FRFT on a givencomputer also powersof 2. It for are mightat first appear that increasing the size of an FRFT fromm to m + 1 would requirethat the size of FFTs used in computing the FRFT must be doubled to the next highestpowerof 2, with a corresponding sharp increasein computational cost. However, recallthat the parameter of (18) can be any integer p greaterthan one less than the size ofthe FRFT. Thus 2m-point FFTs can stillbe used to evaluate FRFTs of size m + 1, and the computational cost is virtually unchanged. More generally, can compute an m-longsegmentz of interpolatedvalues we beginning withzo = x8 and increasing withinterval as follows: 6
m/2

(80) (81) (82)


(83)

zi =

ike:

k=-m/2 m

= =

= E Yk-m/2e-2ri(k-m/2)(s+j?)/m k=O m e7i(s+j6)


E

Yk-m/2e -27riks/mre-27riijkb/m

k=O

e(/+iin))Gj(Z

61m)

0< j

< m,

whereZ is the (m + 1)-longsequence (Yk-m/2e -2iks/rn 0 < k < i) Since the exponentialfactorsin (83) can be incorporated into the precomputed in exponentials (19), we do not need to count the cost of these multiplications. The dominant cost ofthe algorithm thusonly25mlog2m floating is pointoperations.This is less than the cost ofthe conventional in procedure (75) and (76) whenever < n/4 m (forlarge n). Largersectionsof resultscan be efficiently obtainedby repeating(83) fordifferent indicess as indicatedin ?3. starting 8. Detecting lines in images and detecting signals with linearly drifting frequencies. The authorsfirst learnedof the problemof detecting signalswithlinearlydrifting in frequencies discussions withscientists associated withthe Search for Extraterrestrial Intelligence (SETI) projectat NASA Ames ResearchCenter. In fact, signalswithdrifting frequencies arise in any situationwherethereis acceleration will in the direction betweenthe emitter the signal and the receiver.It oftencan be of assumed that over the period of observation the frequency drift linear,so we will is make this assumptionin the following discussion. It willfirst shownthat the problem detecting signalwitha linearly be of a drifting frequency be reducedto the problemof detecting straight can a line in a noisytwodimensionalarray. It will then be shown that the line detectionproblemcan be efficiently solved usingthe FRFT. Suppose that y is a timeseriesof lengthn = qm that is the sum of a signalwith a linearly drifting frequency plus Gaussian noise. We will assume that the frequency is less than m. Thus the timeseriescan be written (84)
y3

= ae2 ij(w?jT)/m bg3 ?

0< j

<

n,

wherea and b are scaling factors, and gj are complex Gaussian deviates with unit variance. We will be interested applicationswhereis a is muchless than b, or in in

402

DAVID H. BAILEY AND PAUL N. SWARTZTRAUBER

otherwordswherethe amplitudeofthe signalis muchless than the amplitudeof the noise. The usual approach to detectingand analyzingsuch signals is to considerthe n-longtimeseriesas a q x m arrayin rowmajor order.We first computethe m-point DFT ofeach rowin thisarray(i.e., the DFT ofsuccessivecontiguous m-long segments ofy), and thencomputesquaredmagnitudes each resulting of arrayentry(see [8]and [10]): (85)
Xj,k
=

IFk(Zj)12,

O < j <q,

O < k < m,

where zj = (Yj+lm, 0 < 1 < m). When the frequency the signal is constant of (i.e., when r is zero), detectionof the signalcan be achievedby merely the summing an columnsofX to form m-long vector.The "bin" containing signalwill thenbe the in evidentas a statistically large entry thissum vector. of When the frequency the signal to be detected is not constant (i.e., when r is nonzero),this methodfailssince the "bin" containing signal is different the from and thus no entryof the sum vectorwill containa statistically segmentto segment, the large value. Nonetheless, signalis evidentin this arrayas a "line" witha certain slope, and thus in theoryit is possible to detect such signalsby computing sums in the X arrayoverlineswitha rangeof slopes a:
q-1

(86)

Sk(ax)

= ZXi,nint(k+aj), j=O

0 < k < m,

wherenintdenotesnearestinteger.When k is close to w and a is close to 2mT,then Sk(a) has a statistically the large value and detectionoccurs. Unfortunately, direct of computation all these sums overa rangeof possible slopes a is veryexpensive[8]. Considerwhat appears at first be an even moreexpensivecalculation,namely to sums of values interpolated computing along the rowsof X. In particular, consider the arrayof sums
q-1

(87)

Sr,k =

Xj,k+(a+6r)j,
j=O

< r < q, 0 < k < r,

wherethe subscript + (a + 6r)j is interpreted k as literally its fractional value,namely, as the resultof trigonometric interpolation along the rows of the X array. Except forthe fractional this corresponds computing to the sums Sk(ar), where subscripts, a, = a + Sr. The location (r,k) of the maximumvalue in the S arrayyields the unknown slope ar and starting positionof the detectedline. From these values the desireddrift rate and the initialfrequency the signal can be easily determined. of This arrayofsumscan be efficiently computedusingthe FRFT as follows.Define Xj,k fornegativek so that Xj,k = Xj,k+m. Then let (xj,i, -m/2 < 1 < m/2) be the unaliased DFT ofthe jth rowofX, i.e., ofthe vector(Xj,k, -m/2 < k < m/2). Now set xj,l = xj,i for-m/2 < 1 < m/2,but xj,_m/2= Xj,m/2 = 1xj,_m/2. As explained in ?7, splitting "Nyquist"value of the DFT in this manneris necessary obtain the to in purelyreal resultswheninterpolating real data. Now we can write
m/2

(88)

Xi,k =
1=-m/2

FRACTIONAL

FOURIER TRANSFORM
m/2

403

(89)

Xj,k+(a+&r)j

EXi1e-2ri3k+(a+6r)j]1/m 1=-m/2

Thus
q-1
(90) Sr,k =

>

m/2

i=0 1=-m/2
m/2 q-1

xj,1e-27i[k+(a+6r)i]1/m

(91)

xj,3ej2riaj1/me21ri6rij/m
1=-m/2

e-27rikl/m

[j=O
Srle-2rikl/m

m/2

(92)

l1=-m/2

where (93)
(94)
Sr,l =

Gi (zi, br/m),
(Xj 1e-2riaijl/m
0 <

Zl =

j < q).

FFTs on rowsof inverse consistsof performing algorithm Hence this summation columns(withcertainexponential the X array,followed FRFTs on the resulting by cost rows. The computational FFTs on the resulting by followed forward multipliers), pointoperations, or iOn is of entiredetectionalgorithm approximately log2n floating cost of an n-pointcomplexFFT. For complete in otherwordsonly about twice the details,see [14]. of 9. Conclusions. We have describeda number applicationsofthe FRFT and of and its associated fastalgorithm.The flexibility efficiency these methodspermits analysis. In many discreteFourier that involve of new solutionsto a variety problems methodsof solution are algorithms fasterthan the conventional cases, the resulting large FFTs. In fact,forsufficiently problemsizes,thesemethods that utilizeordinary large factors. than the conventional by algorithms arbitrarily are oftenfaster Acknowledgments. The authorswish to thank Kent Cullers of NASA Ames Research Centerand Izidor Gertnerof the CUNY Graduate Centerforinformative discussionson this subject.
REFERENCES [1] R. C. AGARWAL AND J. W. COOLEY, Fourier transformand convolutionsubroutinesfor the IBM 3090 vectorfacility,IBM J. Res. Devel., 30 (1986), pp. 145-162. , New algorithmsfor digital convolution,IEEE Trans. Acoust. Speech Signal Process., [2] 25, (1977), pp. 392-410. [3] L. AUSLANDER, I. GERTNER, AND R. TOLIMIERI, The discrete Zak transform: Applications to time-frequency analysis and synthesisof non-stationarysignals, IEEE Trans. Acoust. Speech Signal Process., to appear. [4] D. H. BAILEY, FFTs in externalor hierarchicalmemory,J. Supercomputing,4 (1990), pp. 2335. FFT algorithm [5] , A high-performance for vector supercomputers, Internat. J. Supercomputer Appl., 2 (1988), pp. 82-87. [6] L. I. BLUESTEIN, A linear filteringapproach to the computationof the discrete Fourier transform,IEEE Trans. Audio Electroacoust., 18 (1970), pp. 451-455.

404

DAVID H. BAILEY AND PAUL N. SWARTZTRAUBER

[7] J. W. COOLEY AND J. W. TUKEY, An algorithmfor machine computationof complexFourier series, Math. Comp., 19 (1965), pp. 297-301. [8] D. K. CULLERS, I. R. LINSCOTT, AND B. M. OLIVER, Signal processingin SETI, Comm. ACM, 28 (1985), pp. 1151-1163. AFIPS Proc., [9] W. M. GENTLEMAN AND G. SANDE, Fast Fourier transforms-forfun and profit, 29 (1966), pp. 563-578. [10] I. GERTNER, Optimal detection and separation of chirp signals, Proc. ICASSP-90, 1990, to appear. New [11] H. J. NUSSBAUMER, Fast Fourier Transform and ConvolutionAlgorithms, Springer-Verlag, York, 1981. algorithm its and [12] L. R. RABINER, R. W. SCHAFER, AND C. M. RADER, The chirp z-transform application, Bell System Tech. J., 48 (1969), pp. 1249-1292. [13] C. M. RADER, Discrete fourier transformswhen the number of data samples is prime, Proc. IEEE, 56 (1968), pp. 1107-1108. [14] P. N. SWARZTRAUBER AND D. H. BAILEY, Efficientdetectionof a continuous wave signal with a linear frequencydrift, submitted forpublication. [15] P. N. SWARZTRAUBER, R. A. SWEET, W. L. BRIGGS, V. E. HENSON, AND J. OTTO, Bluestein's FFT for arbitraryN on the hypercube, submitted forpublication. [16] P. N. SWARZTRAUBER, FFT Algorithmsfor vector computers, Parallel Comput., 1 (1984), pp. 45-63. [17] FFTs, Parallel Comput., 5 (1987), pp. 197-210. , Multiprocessor

S-ar putea să vă placă și