source: lmdz_wrf/WRFV3/external/fftpack/fftpack5/README @ 1

Last change on this file since 1 was 1, checked in by lfita, 10 years ago
  • -- --- Opening of the WRF+LMDZ coupling repository --- -- -

WRF: version v3.3
LMDZ: version v1818

More details in:

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