HP MLIB User's Guide Vol. 2 7th Ed.
560 HP MLIB User’s Guide
SFFTS/DFFTS Simultaneous one-dimensional FFT
Name SFFTS/DFFTS
Simultaneous one-dimensional FFT
Purpose Given a number of sets of one-dimensional complex data with real and
imaginary parts in separate real arrays, these subprograms compute all of their
one-dimensional forward or inverse DFT. Two companion subprograms, CFFTS
and ZFFTS, perform the same operation but with the complex data presented
in a complex array. Other subprograms, documented elsewhere in this chapter,
are more suited for computing just one transform.
The one-dimensional forward discrete Fourier transform of a complex set of
data z(n), for n = 1, 2, ..., l, is defined by
for m = 1, 2, ..., l and .
Alternatively, the one-dimensional scaled inverse DFT of 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.
The complex data, z or Z, are stored with real and imaginary parts in separate
real arrays, x and y, respectively.
Usage VECLIB:
INTEGER*4 l, incl, n, incn, iopt, ier
REAL*4 x(lenxy), y(lenxy)
CALL SFFTS(x, y, l, incl, n, incn, iopt, ier)
INTEGER*4 l, incl, n, incn, iopt, ier
REAL*8 x(lenxy), y(lenxy)
CALL DFFTS(x, y, 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
=