source: trunk/WRF.COMMON/WRFV3/external/fftpack/fftpack5/README

Last change on this file was 2759, checked in by aslmd, 2 years ago

adding unmodified code from WRFV3.0.1.1, expurged from useless data +1M size

File size: 4.9 KB
Line 
1
2FFTPACK5 - a FORTRAN library of fast Fourier transforms
3
4Copyright (C) 1995-2004, Scientific Computing Division,
5University Corporation for Atmospheric Research
6Licensed under the GNU General Public License (GPL)
7
8Authors:  Paul N. Swarztrauber and Richard A. Valent
9
10$Id: README,v 1.2 2004/06/17 21:59:51 rodney Exp $
11
12Website
13-------
14
15http://www.scd.ucar.edu/css/software/fftpack5
16
17
18Documentation
19-------------
20
21Documentation is provided in PDF format in the file fftpack5.pdf.
22This information is also available in HTML format at the above
23website.  Information about building the library follows below,
24as well as a synopsis of the library.
25
26
27Compiling Library
28-----------------   
29
30[Editor's note - this refers to the original build,
31not the WRF modified build.]
32
33The included Makefile if configured to build a static
34library on most currently availble unix and unix-like
35operating systems.  The given make targets (type "make"
36without any arguments for a list of targets) correspond
37to compiler names; e.g. intel = Intel F95 compiler,
38gnu = GNU g77 compiler, sun = Sun Solaris compiler, etc.
39
40The source code is by default configured for single precision
41real numbers.  If double precision is desired, the Makefile must
42be modified with the appropriate compiler options for promoting
43real to double precision as well as promoting constants to double
44precision (this is often "-r8" on some, but not all, compilers).
45
46
47Complex Transform Routines
48__________________________
49
50CFFT1I    1D complex initialization
51CFFT1B    1D complex backward
52CFFT1F    1D complex forward
53
54CFFT2I    2D complex initialization
55CFFT2B    2D complex backward
56CFFT2F    2D complex forward
57
58CFFTMI    multiple complex initialization
59CFFTMB    multiple complex backward
60CFFTMF    multiple complex forward
61
62
63Real Transform Routines
64_______________________
65
66RFFT1I    1D real initialization
67RFFT1B    1D real backward
68RFFT1F    1D real forward
69
70RFFT2I    2D real initialization
71RFFT2B    2D real backward
72RFFT2F    2D real forward
73
74RFFTMI    multiple real initialization
75RFFTMB    multiple real backward
76RFFTMF    multiple real forward
77
78
79Real Cosine Transform Routines
80______________________________
81
82COST1I    1D real cosine initialization
83COST1B    1D real cosine backward
84COST1F    1D real cosine forward
85
86COSTMI    multiple real cosine initialization
87COSTMB    multiple real cosine backward
88COSTMF    multiple real cosine forward
89
90
91Real Sine Transform Routines
92____________________________
93
94SINT1I    1D real sine initialization
95SINT1B    1D real sine backward
96SINT1F    1D real sine forward
97
98SINTMI    multiple real sine initialization
99SINTMB    multiple real sine backward
100SINTMF    multiple real sine forward
101
102
103Real Quarter-Cosine Transform Routines
104______________________________________
105
106COSQ1I    1D real quarter-cosine initialization
107COSQ1B    1D real quarter-cosine backward
108COSQ1F    1D real quarter-cosine forward
109
110COSQMI    multiple real quarter-cosine initialization
111COSQMB    multiple real quarter-cosine backward
112COSQMF    multiple real quarter-cosine forward
113
114
115Real Quarter-Sine Transform Routines
116____________________________________
117
118SINQ1I    1D real quarter-sine initialization
119SINQ1B    1D real quarter-sine backward
120SINQ1F    1D real quarter-sine forward
121
122SINQMI    multiple real quarter-sine initialization
123SINQMB    multiple real quarter-sine backward
124SINQMF    multiple real quarter-sine forward
125
126
127Library FFTPACK5 contains 1D, 2D, and multiple fast Fourier
128subroutines, written in Fortran 77, for transforming real and complex
129data, real even and odd wave data, and real even and odd quarter-wave
130data.
131
132All of the FFTPACK5 routines listed above are grouped in triplets
133e.g. {CFFT1I, CFFT1F, CFFT1B}.  The suffix "I" denotes "initialize",
134"F" denotes "forward" (as in "forward transform") and "B" denotes
135"backward".  In an application program, before calling "B" or "F"
136routines for the first time, or before calling them with a different
137length, users must initialize an array by calling the "I" routine of
138the appropriate pair or triplet.  Note that "I" routines need not be
139called each time before a "B" or "F" routine is called.
140
141All of the transform routines in FFTPACK5 are normalized.
142
143Error messages are written to unit 6 by routine XERFFT.  The
144standard version of XERFFT issues an error message and halts execution,
145so that no FFTPACK routine will return to the calling program with
146error return IER different than zero.  Users may consider modifying the
147STOP statement in order to call system-specific exception-handling
148facilities.
149
150FFTPACK5 is written in standard Fortran 77 except for several
151instances where arrays of type REAL or COMPLEX are passed to a
152subroutine and used as a different type.
153
154 (1) "Vectorizing the Fast Fourier Transforms", by Paul Swarztrauber,
155     Parallel Computations, G. Rodrigue, ed., Academic Press,
156     New York 1982.
157
158 (2) "Fast Fourier Transforms Algorithms for Vector Computers", by
159     Paul Swarztrauber, Parallel Computing, (1984) pp.45-63.
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
Note: See TracBrowser for help on using the repository browser.