@@ -65,12 +65,12 @@ PROGRAM TSTFFT
65
65
DO 157 NZ= 1 ,NNS
66
66
N = ND(NZ)
67
67
MODN = MOD (N,2 )
68
- FN = FLOAT(N )
68
+ FN = REAL (N,RK )
69
69
TFN = FN+ FN
70
70
NP1 = N+1
71
71
NM1 = N-1
72
72
DO 101 J= 1 ,NP1
73
- X(J) = SIN (FLOAT(J )* SQRT2)
73
+ X(J) = SIN (REAL (J,RK )* SQRT2)
74
74
Y(J) = X(J)
75
75
XH(J) = X(J)
76
76
101 CONTINUE
@@ -85,9 +85,9 @@ PROGRAM TSTFFT
85
85
DO 103 K= 2 ,NS2
86
86
SUM1 = 0.0D0
87
87
SUM2 = 0.0D0
88
- ARG = FLOAT (K-1 )* DT
88
+ ARG = REAL (K-1 ,RK )* DT
89
89
DO 102 I= 1 ,N
90
- ARG1 = FLOAT (I-1 )* ARG
90
+ ARG1 = REAL (I-1 ,RK )* ARG
91
91
SUM1 = SUM1+ X(I)* COS (ARG1)
92
92
SUM2 = SUM2+ X(I)* SIN (ARG1)
93
93
102 CONTINUE
@@ -112,13 +112,13 @@ PROGRAM TSTFFT
112
112
RFTF = RFTF/ FN
113
113
DO 109 I= 1 ,N
114
114
SUM = 0.5D0 * X(1 )
115
- ARG = FLOAT (I-1 )* DT
115
+ ARG = REAL (I-1 ,RK )* DT
116
116
IF (NS2 .LT. 2 ) GO TO 108
117
117
DO 107 K= 2 ,NS2
118
- ARG1 = FLOAT (K-1 )* ARG
118
+ ARG1 = REAL (K-1 ,RK )* ARG
119
119
SUM = SUM+ X(2 * K-2 )* COS (ARG1)- X(2 * K-1 )* SIN (ARG1)
120
120
107 CONTINUE
121
- 108 IF (MODN .EQ. 0 ) SUM = SUM+ .5 * FLOAT ((- 1 )** (I-1 ))* X(N)
121
+ 108 IF (MODN .EQ. 0 ) SUM = SUM+ .5 * REAL ((- 1 )** (I-1 ),RK )* X(N)
122
122
Y(I) = SUM+ SUM
123
123
109 CONTINUE
124
124
CALL DFFTB (N,X,W)
@@ -144,9 +144,9 @@ PROGRAM TSTFFT
144
144
112 CONTINUE
145
145
DO 114 I= 1 ,NM1
146
146
Y(I) = 0.0D0
147
- ARG1 = FLOAT(I )* DT
147
+ ARG1 = REAL (I,RK )* DT
148
148
DO 113 K= 1 ,NM1
149
- Y(I) = Y(I)+ X(K)* SIN (FLOAT(K )* ARG1)
149
+ Y(I) = Y(I)+ X(K)* SIN (REAL (K,RK )* ARG1)
150
150
113 CONTINUE
151
151
Y(I) = Y(I)+ Y(I)
152
152
114 CONTINUE
@@ -173,10 +173,10 @@ PROGRAM TSTFFT
173
173
X(I) = XH(I)
174
174
117 CONTINUE
175
175
DO 119 I= 1 ,NP1
176
- Y(I) = 0.5D0 * (X(1 )+ FLOAT ((- 1 )** (I+1 ))* X(N+1 ))
177
- ARG = FLOAT (I-1 )* DT
176
+ Y(I) = 0.5D0 * (X(1 )+ REAL ((- 1 )** (I+1 ),RK )* X(N+1 ))
177
+ ARG = REAL (I-1 ,RK )* DT
178
178
DO 118 K= 2 ,N
179
- Y(I) = Y(I)+ X(K)* COS (FLOAT (K-1 )* ARG)
179
+ Y(I) = Y(I)+ X(K)* COS (REAL (K-1 ,RK )* ARG)
180
180
118 CONTINUE
181
181
Y(I) = Y(I)+ Y(I)
182
182
119 CONTINUE
@@ -205,9 +205,9 @@ PROGRAM TSTFFT
205
205
DT = PI/ (FN+ FN)
206
206
DO 124 I= 1 ,N
207
207
X(I) = 0.0D0
208
- ARG = DT* FLOAT(I )
208
+ ARG = DT* REAL (I,RK )
209
209
DO 123 K= 1 ,N
210
- X(I) = X(I)+ Y(K)* SIN (FLOAT (K+ K-1 )* ARG)
210
+ X(I) = X(I)+ Y(K)* SIN (REAL (K+ K-1 ,RK )* ARG)
211
211
123 CONTINUE
212
212
X(I) = 4.0D0 * X(I)
213
213
124 CONTINUE
@@ -220,10 +220,10 @@ PROGRAM TSTFFT
220
220
125 CONTINUE
221
221
SINQBT = CF* SINQBT
222
222
DO 127 I= 1 ,N
223
- ARG = FLOAT (I+ I-1 )* DT
224
- Y(I) = 0.5D0 * FLOAT ((- 1 )** (I+1 ))* X(N)
223
+ ARG = REAL (I+ I-1 ,RK )* DT
224
+ Y(I) = 0.5D0 * REAL ((- 1 )** (I+1 ),RK )* X(N)
225
225
DO 126 K= 1 ,NM1
226
- Y(I) = Y(I)+ X(K)* SIN (FLOAT(K )* ARG)
226
+ Y(I) = Y(I)+ X(K)* SIN (REAL (K,RK )* ARG)
227
227
126 CONTINUE
228
228
Y(I) = Y(I)+ Y(I)
229
229
127 CONTINUE
@@ -248,9 +248,9 @@ PROGRAM TSTFFT
248
248
130 CONTINUE
249
249
DO 132 I= 1 ,N
250
250
X(I) = 0.0D0
251
- ARG = FLOAT (I-1 )* DT
251
+ ARG = REAL (I-1 ,RK )* DT
252
252
DO 131 K= 1 ,N
253
- X(I) = X(I)+ Y(K)* COS (FLOAT (K+ K-1 )* ARG)
253
+ X(I) = X(I)+ Y(K)* COS (REAL (K+ K-1 ,RK )* ARG)
254
254
131 CONTINUE
255
255
X(I) = 4.0D0 * X(I)
256
256
132 CONTINUE
@@ -264,9 +264,9 @@ PROGRAM TSTFFT
264
264
COSQBT = CF* COSQBT
265
265
DO 135 I= 1 ,N
266
266
Y(I) = 0.5D0 * X(1 )
267
- ARG = FLOAT (I+ I-1 )* DT
267
+ ARG = REAL (I+ I-1 ,RK )* DT
268
268
DO 134 K= 2 ,N
269
- Y(I) = Y(I)+ X(K)* COS (FLOAT (K-1 )* ARG)
269
+ Y(I) = Y(I)+ X(K)* COS (REAL (K-1 ,RK )* ARG)
270
270
134 CONTINUE
271
271
Y(I) = Y(I)+ Y(I)
272
272
135 CONTINUE
@@ -292,17 +292,17 @@ PROGRAM TSTFFT
292
292
X(I) = XH(I)
293
293
138 CONTINUE
294
294
TPI = 8.0D0 * ATAN (1.0D0 )
295
- DT = TPI/ FLOAT(N )
295
+ DT = TPI/ REAL (N,RK )
296
296
NS2 = (N+1 )/ 2
297
- CF = 2.0D0 / FLOAT(N )
297
+ CF = 2.0D0 / REAL (N,RK )
298
298
NS2M = NS2-1
299
299
IF (NS2M .LE. 0 ) GO TO 141
300
300
DO 140 K= 1 ,NS2M
301
301
SUM1 = 0.0D0
302
302
SUM2 = 0.0D0
303
- ARG = FLOAT(K )* DT
303
+ ARG = REAL (K,RK )* DT
304
304
DO 139 I= 1 ,N
305
- ARG1 = FLOAT (I-1 )* ARG
305
+ ARG1 = REAL (I-1 ,RK )* ARG
306
306
SUM1 = SUM1+ X(I)* COS (ARG1)
307
307
SUM2 = SUM2+ X(I)* SIN (ARG1)
308
308
139 CONTINUE
@@ -330,9 +330,9 @@ PROGRAM TSTFFT
330
330
IF (MODN .EQ. 0 ) B(NS2) = 0.0D0
331
331
DO 146 I= 1 ,N
332
332
SUM = AZERO
333
- ARG1 = FLOAT (I-1 )* DT
333
+ ARG1 = REAL (I-1 ,RK )* DT
334
334
DO 145 K= 1 ,NS2
335
- ARG2 = FLOAT(K )* ARG1
335
+ ARG2 = REAL (K,RK )* ARG1
336
336
SUM = SUM+ A(K)* COS (ARG2)+ B(K)* SIN (ARG2)
337
337
145 CONTINUE
338
338
X(I) = SUM
@@ -353,14 +353,14 @@ PROGRAM TSTFFT
353
353
C TEST CFFTI,CFFTF,CFFTB
354
354
C
355
355
DO 149 I= 1 ,N
356
- CX(I) = DCMPLX(COS (SQRT2* FLOAT(I )),SIN (SQRT2* FLOAT (I* I)))
356
+ CX(I) = DCMPLX(COS (SQRT2* REAL (I,RK )),SIN (SQRT2* REAL (I* I,RK )))
357
357
149 CONTINUE
358
358
DT = (PI+ PI)/ FN
359
359
DO 151 I= 1 ,N
360
- ARG1 = - FLOAT (I-1 )* DT
360
+ ARG1 = - REAL (I-1 ,RK )* DT
361
361
CY(I) = (0.0D0 ,0.0D0 )
362
362
DO 150 K= 1 ,N
363
- ARG2 = FLOAT (K-1 )* ARG1
363
+ ARG2 = REAL (K-1 ,RK )* ARG1
364
364
CY(I) = CY(I)+ DCMPLX(COS (ARG2),SIN (ARG2))* CX(K)
365
365
150 CONTINUE
366
366
151 CONTINUE
@@ -373,10 +373,10 @@ PROGRAM TSTFFT
373
373
152 CONTINUE
374
374
DCFFTF = DCFFTF/ FN
375
375
DO 154 I= 1 ,N
376
- ARG1 = FLOAT (I-1 )* DT
376
+ ARG1 = REAL (I-1 ,RK )* DT
377
377
CY(I) = (0.0D0 ,0.0D0 )
378
378
DO 153 K= 1 ,N
379
- ARG2 = FLOAT (K-1 )* ARG1
379
+ ARG2 = REAL (K-1 ,RK )* ARG1
380
380
CY(I) = CY(I)+ DCMPLX(COS (ARG2),SIN (ARG2))* CX(K)
381
381
153 CONTINUE
382
382
154 CONTINUE
0 commit comments