HP MLIB User's Guide Vol. 2 7th Ed.
556 HP MLIB User’s Guide
CFFTS/ZFFTS Simultaneous one-dimensional FFT
Name CFFTS/ZFFTS
Simultaneous one-dimensional FFT
Purpose Given a number of sets of one-dimensional complex data in a complex array,
these subprograms compute all of their one-dimensional forward or inverse
DFT. Two companion subprograms, SFFTS and DFFTS, perform the same
operation but with the complex data presented with real and imaginary parts
in separate real arrays. Other subprograms, documented elsewhere in this
chapter, are more suited for computing just one transform.
The one-dimensional forward DFT of a complex data set z(n), for
n = 1, 2, ..., l, is defined by
for m = 1, 2, ..., l and .
Alternatively, the one-dimensional scaled inverse DFT of a data set Z(m), for
m = 1, 2, ..., l, is defined by
for n = 1, 2, ..., l.
These subprograms perform forward or inverse transform operations
simultaneously on a number of data sets. For best performance, they require
that the length l of the data sets be a product of powers of 2, 3, and 5, that is, of
the form
where p, q, r ≥ 0.
Usage VECLIB:
INTEGER*4 l, incl, n, incn, iopt, ier
COMPLEX*8 z(lenz)
CALL CFFTS(z, l, incl, n, incn, iopt, ier)
INTEGER*4 l, incl, n, incn, iopt, ier
COMPLEX*16 z(lenz)
CALL ZFFTS(z, l, incl, n, incn, iopt, ier)
Zm() zn()e
2– πim 1–()n 1–()l⁄
n 1=
l
∑
=
i 1–=
zn()
1
l
---
Zm(()e
+2πim 1–()n 1–()l⁄
m 1=
l
∑
=
l 2
p
3
q
5
r
,=