PLaSK library
Loading...
Searching...
No Matches
cfft1b.c
Go to the documentation of this file.
1
/* cfft1b.f -- translated by f2c (version 20100827).
2
You must link the resulting object file with libf2c:
3
on Microsoft Windows system, link with libf2c.lib;
4
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
5
or, if you install libf2c.a in a standard place, with -lf2c -lm
6
-- in that order, at the end of the command line, as in
7
cc *.o -lf2c -lm
8
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
9
10
http://www.netlib.org/f2c/libf2c.zip
11
*/
12
13
#include "
f2c.h
"
14
15
/* Table of constant values */
16
17
static
integer
c__4 = 4;
18
static
integer
c__6 = 6;
19
static
integer
c__8 = 8;
20
21
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
22
/* * * */
23
/* * copyright (c) 2011 by UCAR * */
24
/* * * */
25
/* * University Corporation for Atmospheric Research * */
26
/* * * */
27
/* * all rights reserved * */
28
/* * * */
29
/* * FFTPACK version 5.1 * */
30
/* * * */
31
/* * A Fortran Package of Fast Fourier * */
32
/* * * */
33
/* * Subroutines and Example Programs * */
34
/* * * */
35
/* * by * */
36
/* * * */
37
/* * Paul Swarztrauber and Dick Valent * */
38
/* * * */
39
/* * of * */
40
/* * * */
41
/* * the National Center for Atmospheric Research * */
42
/* * * */
43
/* * Boulder, Colorado (80307) U.S.A. * */
44
/* * * */
45
/* * which is sponsored by * */
46
/* * * */
47
/* * the National Science Foundation * */
48
/* * * */
49
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
50
51
/* Subroutine */
int
cfft1b_
(
integer
*
n
,
integer
*inc,
doublecomplex
*c__,
52
integer
*lenc,
doublereal
*wsave,
integer
*
lensav
,
doublereal
*work,
53
integer
*lenwrk,
integer
*ier)
54
{
55
/* Builtin functions */
56
double
log(
doublereal
);
57
58
/* Local variables */
59
integer
iw1;
60
extern
/* Subroutine */
int
c1fm1b_
(
integer
*,
integer
*,
doublecomplex
*,
61
doublereal
*,
doublereal
*,
doublereal
*,
doublereal
*),
xerfft_
(
62
char
*,
integer
*,
ftnlen
);
63
64
65
/* Parameter adjustments */
66
--c__;
67
--wsave;
68
--work;
69
70
/* Function Body */
71
*ier = 0;
72
73
if
(*lenc < *inc * (*
n
- 1) + 1) {
74
*ier = 1;
75
xerfft_
(
"CFFT1B "
, &c__4, (
ftnlen
)7);
76
}
else
if
(*
lensav
< (*
n
<< 1) + (
integer
) (log((
doublereal
) (*
n
)) / log(
77
2.)) + 4) {
78
*ier = 2;
79
xerfft_
(
"CFFT1B "
, &c__6, (
ftnlen
)7);
80
}
else
if
(*lenwrk < *
n
<< 1) {
81
*ier = 3;
82
xerfft_
(
"CFFT1B "
, &c__8, (
ftnlen
)7);
83
}
84
85
if
(*
n
== 1) {
86
return
0;
87
}
88
89
iw1 = *
n
+ *
n
+ 1;
90
c1fm1b_
(
n
, inc, &c__[1], &work[1], &wsave[1], &wsave[iw1], &wsave[iw1 + 1]
91
);
92
return
0;
93
}
/* cfft1b_ */
94
extlib
fftpacx
cfft1b.c
Generated by
1.9.8