aboutsummaryrefslogtreecommitdiff
path: root/sys/vops/afftrx.x
diff options
context:
space:
mode:
authorJoe Hunkeler <jhunkeler@gmail.com>2015-08-11 16:51:37 -0400
committerJoe Hunkeler <jhunkeler@gmail.com>2015-08-11 16:51:37 -0400
commit40e5a5811c6ffce9b0974e93cdd927cbcf60c157 (patch)
tree4464880c571602d54f6ae114729bf62a89518057 /sys/vops/afftrx.x
downloadiraf-osx-40e5a5811c6ffce9b0974e93cdd927cbcf60c157.tar.gz
Repatch (from linux) of OSX IRAF
Diffstat (limited to 'sys/vops/afftrx.x')
-rw-r--r--sys/vops/afftrx.x33
1 files changed, 33 insertions, 0 deletions
diff --git a/sys/vops/afftrx.x b/sys/vops/afftrx.x
new file mode 100644
index 00000000..ec43b16a
--- /dev/null
+++ b/sys/vops/afftrx.x
@@ -0,0 +1,33 @@
+# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc.
+
+# AFFTRX -- Forward fourier transform (real transform, complex output).
+# The fourier transform of the real array A of length NPIX pixels is computed
+# and the NPIX/2+1 complex transform coefficients are returned in the complex
+# array B. The first element of array B upon output contains the dc term at
+# zero frequency, and the remaining elements contain the real and imaginary
+# components of the harmonics. The transformation may be performed in place
+# if desired. NPIX must be a power of 2.
+#
+# N.B.: The Fortran 77 standard guarantees that a complex datum is represented
+# as two reals, and that the first real in storage order is the real part of
+# the complex datum and the second real the imaginary part. We have defined
+# B to be a type COMPLEX array in the calling program, but FFA expects a
+# REAL array containing (real,imag) pairs. The Fortran standard appears to
+# guarantee that this will work.
+
+procedure afftrx (a, b, npix)
+
+real a[ARB] # data (input)
+complex b[ARB] # transform (output). Dim npix/2+1
+int npix
+int ier
+
+begin
+ # The following is a no-op if A and B are the same array.
+ call amovr (a, b, npix)
+
+ # Compute the forward real transform.
+ call ffa (b, npix, ier)
+ if (ier == 1)
+ call fatal (1, "afftrx: npix not a power of 2")
+end