| 1 |
|
| 2 |
#include "ctrparam.h" |
| 3 |
|
| 4 |
! ========================================================== |
| 5 |
! |
| 6 |
! FFT36.F: FFT functions. |
| 7 |
! |
| 8 |
! ---------------------------------------------------------- |
| 9 |
! |
| 10 |
! Revision History: |
| 11 |
! |
| 12 |
! When Who What |
| 13 |
! ----- ---------- ------- |
| 14 |
! 080200 Chien Wang repack based on CliChem3 & M24x11, |
| 15 |
! and add cpp. |
| 16 |
! |
| 17 |
! ========================================================== |
| 18 |
|
| 19 |
SUBROUTINE FRTR0 (KM) 1. |
| 20 |
C**** INITIALIZATION ENTRY TO CALCULATE SIN VALUES AND CHECK THAT KM=36 2. |
| 21 |
COMMON/FCOM/BYKM,BYKMH,BYKM2,SIN10,SIN20,SIN30,SIN40,SIN50,SIN60, 3. |
| 22 |
* SIN70,SIN80 4. |
| 23 |
CV REAL*8 TWOPI/6.283185307179586477/ 5. |
| 24 |
c DOUBLE PRECISION TWOPI 6. |
| 25 |
DATA TWOPI/6.283185307179586477/ 7. |
| 26 |
IF(KM.NE.36) GO TO 220 8. |
| 27 |
BYKM=1./KM 9. |
| 28 |
BYKMH=2./KM 10. |
| 29 |
BYKM2=1./(2.*KM) 11. |
| 30 |
SIN10=DSIN(TWOPI/36.) 12. |
| 31 |
SIN20=DSIN(TWOPI/18.) 13. |
| 32 |
SIN30=1.D0/2. 14. |
| 33 |
SIN40=DSIN(TWOPI/9.) 15. |
| 34 |
SIN50=DCOS(TWOPI/9.) 16. |
| 35 |
SIN60=DSQRT(3.D0)/2. 17. |
| 36 |
SIN70=DCOS(TWOPI/18.) 18. |
| 37 |
SIN80=DCOS(TWOPI/36.) 19. |
| 38 |
CYDBL SIN10=DSIN(TWOPI/36.) 20. |
| 39 |
CYDBL SIN20=DSIN(TWOPI/18.) 21. |
| 40 |
CYDBL SIN30=1.D0/2. 22. |
| 41 |
CYDBL SIN40=DSIN(TWOPI/9.) 23. |
| 42 |
CYDBL SIN50=DCOS(TWOPI/9.) 24. |
| 43 |
CYDBL SIN60=DSQRT(3.D0)/2. 25. |
| 44 |
CYDBL SIN70=DCOS(TWOPI/18.) 26. |
| 45 |
CYDBL SIN80=DCOS(TWOPI/36.) 27. |
| 46 |
C SIN10=SIN(TWOPI/36.) 28. |
| 47 |
C SIN20=SIN(TWOPI/18.) 29. |
| 48 |
C SIN30=.5 30. |
| 49 |
C SIN40=SIN(TWOPI/9.) 31. |
| 50 |
C SIN50=COS(TWOPI/9.) 32. |
| 51 |
C SIN60=SQRT(3.)/2. 33. |
| 52 |
C SIN70=COS(TWOPI/18.) 34. |
| 53 |
C SIN80=COS(TWOPI/36.) 35. |
| 54 |
RETURN 36. |
| 55 |
220 WRITE (6,901) KM 37. |
| 56 |
STOP 38. |
| 57 |
901 FORMAT ('0THIS FOURT SUBROUTINE NOT SUITED FOR KM = ',I8) 39. |
| 58 |
END 40. |
| 59 |
SUBROUTINE FRTR (F) 101. |
| 60 |
C**** THIS SUBROUTINE PERFORMS A FOURIER ANALYSIS ON THE ONE DIMENSIONAL 102. |
| 61 |
C**** ARRAY F WHICH MUST BE DIMENSIONED 36. IT RETURNS IN F THE ENERGY 103. |
| 62 |
C**** ASSOCIATED WITH EACH WAVE NUMBER. UPON ENTERING THIS ROUTINE, 104. |
| 63 |
C**** THE TOTAL ENERGY IS 105. |
| 64 |
C**** .5*SUM(F(K)*F(K)) 106. |
| 65 |
C**** WITH THE SUM BEING TAKEN OVER ALL K FROM 1 TO 36. UPON LEAVING 107. |
| 66 |
C**** THIS ROUTINE, THE TOTAL ENERGY IS 108. |
| 67 |
C**** SUM(F(N+1)) 109. |
| 68 |
C**** WITH THE SUM BEING TAKEN OVER ALL WAVE NUMBERS FROM 0 TO 18. 110. |
| 69 |
COMMON/FCOM/BYKM,BYKMH,BYKM2,SIN10,SIN20,SIN30,SIN40,SIN50,SIN60, 111. |
| 70 |
* SIN70,SIN80 112. |
| 71 |
DIMENSION F(36) 113. |
| 72 |
10 CC00=F(12)+F(24)+F(36) 114. |
| 73 |
CC01=F(36)-(F(12)+F(24))*SIN30 115. |
| 74 |
CC10=F(1)+F(13)+F(25) 116. |
| 75 |
CC11=F(1)*SIN80-F(13)*SIN40-F(25)*SIN20 117. |
| 76 |
CC20=F(2)+F(14)+F(26) 118. |
| 77 |
CC21=F(2)*SIN70-F(14)*SIN50-F(26)*SIN10 119. |
| 78 |
CC30=F(3)+F(15)+F(27) 120. |
| 79 |
CC31=(F(3)-F(15))*SIN60 121. |
| 80 |
CC40=F(4)+F(16)+F(28) 122. |
| 81 |
CC41=F(4)*SIN50-F(16)*SIN70+F(28)*SIN10 123. |
| 82 |
CC50=F(5)+F(17)+F(29) 124. |
| 83 |
CC51=F(5)*SIN40-F(17)*SIN80+F(29)*SIN20 125. |
| 84 |
CC60=F(6)+F(18)+F(30) 126. |
| 85 |
CC61=(F(6)+F(30))*SIN30-F(18) 127. |
| 86 |
CC70=F(7)+F(19)+F(31) 128. |
| 87 |
CC71=F(7)*SIN20-F(19)*SIN80+F(31)*SIN40 129. |
| 88 |
CC80=F(8)+F(20)+F(32) 130. |
| 89 |
CC81=F(8)*SIN10-F(20)*SIN70+F(32)*SIN50 131. |
| 90 |
CC90=F(9)+F(21)+F(33) 132. |
| 91 |
CC91=(F(33)-F(21))*SIN60 133. |
| 92 |
CCA0=F(10)+F(22)+F(34) 134. |
| 93 |
CCA1=F(34)*SIN70-F(10)*SIN10-F(22)*SIN50 135. |
| 94 |
CCB0=F(11)+F(23)+F(35) 136. |
| 95 |
CCB1=F(35)*SIN80-F(11)*SIN20-F(23)*SIN40 137. |
| 96 |
SC01=(F(12)-F(24))*SIN60 138. |
| 97 |
SC11=F(1)*SIN10+F(13)*SIN50-F(25)*SIN70 139. |
| 98 |
SC21=F(2)*SIN20+F(14)*SIN40-F(26)*SIN80 140. |
| 99 |
SC31=(F(3)+F(15))*SIN30-F(27) 141. |
| 100 |
SC41=F(4)*SIN40+F(16)*SIN20-F(28)*SIN80 142. |
| 101 |
SC51=F(5)*SIN50+F(17)*SIN10-F(29)*SIN70 143. |
| 102 |
SC61=(F(6)-F(30))*SIN60 144. |
| 103 |
SC71=F(7)*SIN70-F(19)*SIN10-F(31)*SIN50 145. |
| 104 |
SC81=F(8)*SIN80-F(20)*SIN20-F(32)*SIN40 146. |
| 105 |
SC91=F(9)-(F(21)+F(33))*SIN30 147. |
| 106 |
SCA1=F(10)*SIN80-F(22)*SIN40-F(34)*SIN20 148. |
| 107 |
SCB1=F(11)*SIN70-F(23)*SIN50-F(35)*SIN10 149. |
| 108 |
C**** CALCULATE EXPRESSIONS SUMMED BY INCREMENTS OF 4 150. |
| 109 |
C400=CC00+CC40+CC80 151. |
| 110 |
C401=CC01+CC41+CC81 152. |
| 111 |
C403=CC00-(CC40+CC80)*SIN30 153. |
| 112 |
C402=(CC01-(CC41+CC81)*SIN30)+((SC41-SC81)*SIN60) 154. |
| 113 |
C404=(CC01-(CC41+CC81)*SIN30)-((SC41-SC81)*SIN60) 155. |
| 114 |
C410=CC10+CC50+CC90 156. |
| 115 |
C411=CC11+CC51+CC91 157. |
| 116 |
C413=(CC10-CC50)*SIN60 158. |
| 117 |
C412=((CC11-CC51)*SIN60)+((SC11+SC51)*SIN30-SC91) 159. |
| 118 |
C414=((CC11-CC51)*SIN60)-((SC11+SC51)*SIN30-SC91) 160. |
| 119 |
C420=CC20+CC60+CCA0 161. |
| 120 |
C421=CC21+CC61+CCA1 162. |
| 121 |
C423=(CC20+CCA0)*SIN30-CC60 163. |
| 122 |
C422=((CC21+CCA1)*SIN30-CC61)+((SC21-SCA1)*SIN60) 164. |
| 123 |
C424=((CC21+CCA1)*SIN30-CC61)-((SC21-SCA1)*SIN60) 165. |
| 124 |
C430=CC30+CC70+CCB0 166. |
| 125 |
C431=CC31+CC71+CCB1 167. |
| 126 |
C433=(CCB0-CC70)*SIN60 168. |
| 127 |
C432=((CCB1-CC71)*SIN60)+(SC31-(SC71+SCB1)*SIN30) 169. |
| 128 |
C434=((CCB1-CC71)*SIN60)-(SC31-(SC71+SCB1)*SIN30) 170. |
| 129 |
S401=SC01+SC41+SC81 171. |
| 130 |
S403=(CC40-CC80)*SIN60 172. |
| 131 |
S402=((CC41-CC81)*SIN60)+((SC41+SC81)*SIN30-SC01) 173. |
| 132 |
S404=((CC41-CC81)*SIN60)-((SC41+SC81)*SIN30-SC01) 174. |
| 133 |
S411=SC11+SC51+SC91 175. |
| 134 |
S413=(CC10+CC50)*SIN30-CC90 176. |
| 135 |
S412=((CC11+CC51)*SIN30-CC91)+((SC51-SC11)*SIN60) 177. |
| 136 |
S414=((CC11+CC51)*SIN30-CC91)-((SC51-SC11)*SIN60) 178. |
| 137 |
S421=SC21+SC61+SCA1 179. |
| 138 |
S423=(CC20-CCA0)*SIN60 180. |
| 139 |
S422=((CC21-CCA1)*SIN60)+(SC61-(SC21+SCA1)*SIN30) 181. |
| 140 |
S424=((CC21-CCA1)*SIN60)-(SC61-(SC21+SCA1)*SIN30) 182. |
| 141 |
S431=SC31+SC71+SCB1 183. |
| 142 |
S433=CC30-(CC70+CCB0)*SIN30 184. |
| 143 |
S432=(CC31-(CC71+CCB1)*SIN30)+((SC71-SCB1)*SIN60) 185. |
| 144 |
S434=(CC31-(CC71+CCB1)*SIN30)-((SC71-SCB1)*SIN60) 186. |
| 145 |
C**** CALCULATE EXPRESSIONS SUMMED BY INCREMENTS OF 2 187. |
| 146 |
C200=C400+C420 188. |
| 147 |
C201=C401+C421 189. |
| 148 |
C202=C402+C422 190. |
| 149 |
C203=C403+C423 191. |
| 150 |
C204=C404+C424 192. |
| 151 |
C205=C404-C424 193. |
| 152 |
C206=C403-C423 194. |
| 153 |
C207=C402-C422 195. |
| 154 |
C208=C401-C421 196. |
| 155 |
C C209=C400-C420 197. |
| 156 |
C210=C410+C430 198. |
| 157 |
C211=C411+C431 199. |
| 158 |
C212=C412+C432 200. |
| 159 |
C213=C413+C433 201. |
| 160 |
C214=C414+C434 202. |
| 161 |
C215=S414-S434 203. |
| 162 |
C216=S413-S433 204. |
| 163 |
C217=S412-S432 205. |
| 164 |
C218=S411-S431 206. |
| 165 |
C C219=0 207. |
| 166 |
C S200=0 208. |
| 167 |
S201=S401+S421 209. |
| 168 |
S202=S402+S422 210. |
| 169 |
S203=S403+S423 211. |
| 170 |
S204=S404+S424 212. |
| 171 |
S205=S424-S404 213. |
| 172 |
S206=S423-S403 214. |
| 173 |
S207=S422-S402 215. |
| 174 |
S208=S421-S401 216. |
| 175 |
C S209=0 217. |
| 176 |
C S210=0 218. |
| 177 |
S211=S411+S431 219. |
| 178 |
S212=S412+S432 220. |
| 179 |
S213=S413+S433 221. |
| 180 |
S214=S414+S434 222. |
| 181 |
S215=C414-C434 223. |
| 182 |
S216=C413-C433 224. |
| 183 |
S217=C412-C432 225. |
| 184 |
S218=C411-C431 226. |
| 185 |
C S219=C410-C430 227. |
| 186 |
C**** CALCULATE THE SQUARE OF THE MAGNITUDE OF G(1,N)+I*G(2,N) 228. |
| 187 |
20 F(1)=(C200+C210)*(C200+C210)*BYKM2 229. |
| 188 |
F(2)=((C201+C211)*(C201+C211)+(S201+S211)*(S201+S211))*BYKM 230. |
| 189 |
F(3)=((C202+C212)*(C202+C212)+(S202+S212)*(S202+S212))*BYKM 231. |
| 190 |
F(4)=((C203+C213)*(C203+C213)+(S203+S213)*(S203+S213))*BYKM 232. |
| 191 |
F(5)=((C204+C214)*(C204+C214)+(S204+S214)*(S204+S214))*BYKM 233. |
| 192 |
F(6)=((C205+C215)*(C205+C215)+(S205+S215)*(S205+S215))*BYKM 234. |
| 193 |
F(7)=((C206+C216)*(C206+C216)+(S206+S216)*(S206+S216))*BYKM 235. |
| 194 |
F(8)=((C207+C217)*(C207+C217)+(S207+S217)*(S207+S217))*BYKM 236. |
| 195 |
F(9)=((C208+C218)*(C208+C218)+(S208+S218)*(S208+S218))*BYKM 237. |
| 196 |
F(10)=((C400-C420)*(C400-C420)+(C410-C430)*(C410-C430))*BYKM 238. |
| 197 |
F(11)=((C208-C218)*(C208-C218)+(S218-S208)*(S218-S208))*BYKM 239. |
| 198 |
F(12)=((C207-C217)*(C207-C217)+(S217-S207)*(S217-S207))*BYKM 240. |
| 199 |
F(13)=((C206-C216)*(C206-C216)+(S216-S206)*(S216-S206))*BYKM 241. |
| 200 |
F(14)=((C205-C215)*(C205-C215)+(S215-S205)*(S215-S205))*BYKM 242. |
| 201 |
F(15)=((C204-C214)*(C204-C214)+(S214-S204)*(S214-S204))*BYKM 243. |
| 202 |
F(16)=((C203-C213)*(C203-C213)+(S213-S203)*(S213-S203))*BYKM 244. |
| 203 |
F(17)=((C202-C212)*(C202-C212)+(S212-S202)*(S212-S202))*BYKM 245. |
| 204 |
F(18)=((C201-C211)*(C201-C211)+(S211-S201)*(S211-S201))*BYKM 246. |
| 205 |
F(19)=(C200-C210)*(C200-C210)*BYKM2 247. |
| 206 |
RETURN 248. |
| 207 |
END 249. |
| 208 |
SUBROUTINE GETAN (F,G) 301. |
| 209 |
C**** GETAN RETRIEVES THE FOURIER COEFFICIENTS CONTAINED IN AN 302. |
| 210 |
C**** ARRAY G DIMENSIONED 2 BY 19 AND DEFINED BY 303. |
| 211 |
C**** G(1,N+1)+I*G(2,N+1)=SUM(F(K)*EXP(-2*PI*I*N*K/KM))/KMH 304. |
| 212 |
C**** WITH THE SUM TAKEN OVER ALL K FROM 1 TO KM. KMH = KM FOR N = 0 305. |
| 213 |
C**** OR 18, OTHERWISE KMH = KM/2. THE INTERNAL NOTATION CPQN MEANS 306. |
| 214 |
C**** CPQN = SUM(F(K)*COS(2*PI*N*K/KM)) 307. |
| 215 |
C**** WITH THE SUM BEING TAKEN OVER ALL K FROM 1 TO KM WHICH ARE EQUAL 308. |
| 216 |
C**** TO Q MODULO(P). SPQN IS THE SAME BUT WITH COS REPLACED BY SIN. 309. |
| 217 |
C**** THE NOTATION A=10, B=11, ETC. IS USED FOR P, Q AND N. 310. |
| 218 |
COMMON/FCOM/BYKM,BYKMH,BYKM2,SIN10,SIN20,SIN30,SIN40,SIN50,SIN60, 311. |
| 219 |
* SIN70,SIN80 312. |
| 220 |
DIMENSION F(36),G(2,19) 313. |
| 221 |
C**** CALCULATE EXPRESSIONS SUMMED BY INCREMENTS OF 12 314. |
| 222 |
10 CC00=F(12)+F(24)+F(36) 315. |
| 223 |
CC01=F(36)-(F(12)+F(24))*SIN30 316. |
| 224 |
CC10=F(1)+F(13)+F(25) 317. |
| 225 |
CC11=F(1)*SIN80-F(13)*SIN40-F(25)*SIN20 318. |
| 226 |
CC20=F(2)+F(14)+F(26) 319. |
| 227 |
CC21=F(2)*SIN70-F(14)*SIN50-F(26)*SIN10 320. |
| 228 |
CC30=F(3)+F(15)+F(27) 321. |
| 229 |
CC31=(F(3)-F(15))*SIN60 322. |
| 230 |
CC40=F(4)+F(16)+F(28) 323. |
| 231 |
CC41=F(4)*SIN50-F(16)*SIN70+F(28)*SIN10 324. |
| 232 |
CC50=F(5)+F(17)+F(29) 325. |
| 233 |
CC51=F(5)*SIN40-F(17)*SIN80+F(29)*SIN20 326. |
| 234 |
CC60=F(6)+F(18)+F(30) 327. |
| 235 |
CC61=(F(6)+F(30))*SIN30-F(18) 328. |
| 236 |
CC70=F(7)+F(19)+F(31) 329. |
| 237 |
CC71=F(7)*SIN20-F(19)*SIN80+F(31)*SIN40 330. |
| 238 |
CC80=F(8)+F(20)+F(32) 331. |
| 239 |
CC81=F(8)*SIN10-F(20)*SIN70+F(32)*SIN50 332. |
| 240 |
CC90=F(9)+F(21)+F(33) 333. |
| 241 |
CC91=(F(33)-F(21))*SIN60 334. |
| 242 |
CCA0=F(10)+F(22)+F(34) 335. |
| 243 |
CCA1=F(34)*SIN70-F(10)*SIN10-F(22)*SIN50 336. |
| 244 |
CCB0=F(11)+F(23)+F(35) 337. |
| 245 |
CCB1=F(35)*SIN80-F(11)*SIN20-F(23)*SIN40 338. |
| 246 |
SC01=(F(12)-F(24))*SIN60 339. |
| 247 |
SC11=F(1)*SIN10+F(13)*SIN50-F(25)*SIN70 340. |
| 248 |
SC21=F(2)*SIN20+F(14)*SIN40-F(26)*SIN80 341. |
| 249 |
SC31=(F(3)+F(15))*SIN30-F(27) 342. |
| 250 |
SC41=F(4)*SIN40+F(16)*SIN20-F(28)*SIN80 343. |
| 251 |
SC51=F(5)*SIN50+F(17)*SIN10-F(29)*SIN70 344. |
| 252 |
SC61=(F(6)-F(30))*SIN60 345. |
| 253 |
SC71=F(7)*SIN70-F(19)*SIN10-F(31)*SIN50 346. |
| 254 |
SC81=F(8)*SIN80-F(20)*SIN20-F(32)*SIN40 347. |
| 255 |
SC91=F(9)-(F(21)+F(33))*SIN30 348. |
| 256 |
SCA1=F(10)*SIN80-F(22)*SIN40-F(34)*SIN20 349. |
| 257 |
SCB1=F(11)*SIN70-F(23)*SIN50-F(35)*SIN10 350. |
| 258 |
C**** CALCULATE EXPRESSIONS SUMMED BY INCREMENTS OF 4 351. |
| 259 |
C400=CC00+CC40+CC80 352. |
| 260 |
C401=CC01+CC41+CC81 353. |
| 261 |
C403=CC00-(CC40+CC80)*SIN30 354. |
| 262 |
C402=(CC01-(CC41+CC81)*SIN30)+((SC41-SC81)*SIN60) 355. |
| 263 |
C404=(CC01-(CC41+CC81)*SIN30)-((SC41-SC81)*SIN60) 356. |
| 264 |
C410=CC10+CC50+CC90 357. |
| 265 |
C411=CC11+CC51+CC91 358. |
| 266 |
C413=(CC10-CC50)*SIN60 359. |
| 267 |
C412=((CC11-CC51)*SIN60)+((SC11+SC51)*SIN30-SC91) 360. |
| 268 |
C414=((CC11-CC51)*SIN60)-((SC11+SC51)*SIN30-SC91) 361. |
| 269 |
C420=CC20+CC60+CCA0 362. |
| 270 |
C421=CC21+CC61+CCA1 363. |
| 271 |
C423=(CC20+CCA0)*SIN30-CC60 364. |
| 272 |
C422=((CC21+CCA1)*SIN30-CC61)+((SC21-SCA1)*SIN60) 365. |
| 273 |
C424=((CC21+CCA1)*SIN30-CC61)-((SC21-SCA1)*SIN60) 366. |
| 274 |
C430=CC30+CC70+CCB0 367. |
| 275 |
C431=CC31+CC71+CCB1 368. |
| 276 |
C433=(CCB0-CC70)*SIN60 369. |
| 277 |
C432=((CCB1-CC71)*SIN60)+(SC31-(SC71+SCB1)*SIN30) 370. |
| 278 |
C434=((CCB1-CC71)*SIN60)-(SC31-(SC71+SCB1)*SIN30) 371. |
| 279 |
S401=SC01+SC41+SC81 372. |
| 280 |
S403=(CC40-CC80)*SIN60 373. |
| 281 |
S402=((CC41-CC81)*SIN60)+((SC41+SC81)*SIN30-SC01) 374. |
| 282 |
S404=((CC41-CC81)*SIN60)-((SC41+SC81)*SIN30-SC01) 375. |
| 283 |
S411=SC11+SC51+SC91 376. |
| 284 |
S413=(CC10+CC50)*SIN30-CC90 377. |
| 285 |
S412=((CC11+CC51)*SIN30-CC91)+((SC51-SC11)*SIN60) 378. |
| 286 |
S414=((CC11+CC51)*SIN30-CC91)-((SC51-SC11)*SIN60) 379. |
| 287 |
S421=SC21+SC61+SCA1 380. |
| 288 |
S423=(CC20-CCA0)*SIN60 381. |
| 289 |
S422=((CC21-CCA1)*SIN60)+(SC61-(SC21+SCA1)*SIN30) 382. |
| 290 |
S424=((CC21-CCA1)*SIN60)-(SC61-(SC21+SCA1)*SIN30) 383. |
| 291 |
S431=SC31+SC71+SCB1 384. |
| 292 |
S433=CC30-(CC70+CCB0)*SIN30 385. |
| 293 |
S432=(CC31-(CC71+CCB1)*SIN30)+((SC71-SCB1)*SIN60) 386. |
| 294 |
S434=(CC31-(CC71+CCB1)*SIN30)-((SC71-SCB1)*SIN60) 387. |
| 295 |
C**** CALCULATE EXPRESSIONS SUMMED BY INCREMENTS OF 2 388. |
| 296 |
C200=C400+C420 389. |
| 297 |
C201=C401+C421 390. |
| 298 |
C202=C402+C422 391. |
| 299 |
C203=C403+C423 392. |
| 300 |
C204=C404+C424 393. |
| 301 |
C205=C404-C424 394. |
| 302 |
C206=C403-C423 395. |
| 303 |
C207=C402-C422 396. |
| 304 |
C208=C401-C421 397. |
| 305 |
C C209=C400-C420 398. |
| 306 |
C210=C410+C430 399. |
| 307 |
C211=C411+C431 400. |
| 308 |
C212=C412+C432 401. |
| 309 |
C213=C413+C433 402. |
| 310 |
C214=C414+C434 403. |
| 311 |
C215=S414-S434 404. |
| 312 |
C216=S413-S433 405. |
| 313 |
C217=S412-S432 406. |
| 314 |
C218=S411-S431 407. |
| 315 |
C C219=0 408. |
| 316 |
C S200=0 409. |
| 317 |
S201=S401+S421 410. |
| 318 |
S202=S402+S422 411. |
| 319 |
S203=S403+S423 412. |
| 320 |
S204=S404+S424 413. |
| 321 |
S205=S424-S404 414. |
| 322 |
S206=S423-S403 415. |
| 323 |
S207=S422-S402 416. |
| 324 |
S208=S421-S401 417. |
| 325 |
C S209=0 418. |
| 326 |
C S210=0 419. |
| 327 |
S211=S411+S431 420. |
| 328 |
S212=S412+S432 421. |
| 329 |
S213=S413+S433 422. |
| 330 |
S214=S414+S434 423. |
| 331 |
S215=C414-C434 424. |
| 332 |
S216=C413-C433 425. |
| 333 |
S217=C412-C432 426. |
| 334 |
S218=C411-C431 427. |
| 335 |
C S219=C410-C430 428. |
| 336 |
C**** CALCULATE FINAL COEFFICIENTS OF FOURIER EXPANSION 429. |
| 337 |
G(1,1)=(C200+C210)*BYKM 430. |
| 338 |
G(1,2)=(C201+C211)*BYKMH 431. |
| 339 |
G(1,3)=(C202+C212)*BYKMH 432. |
| 340 |
G(1,4)=(C203+C213)*BYKMH 433. |
| 341 |
G(1,5)=(C204+C214)*BYKMH 434. |
| 342 |
G(1,6)=(C205+C215)*BYKMH 435. |
| 343 |
G(1,7)=(C206+C216)*BYKMH 436. |
| 344 |
G(1,8)=(C207+C217)*BYKMH 437. |
| 345 |
G(1,9)=(C208+C218)*BYKMH 438. |
| 346 |
G(1,10)=(C400-C420)*BYKMH 439. |
| 347 |
G(1,11)=(C208-C218)*BYKMH 440. |
| 348 |
G(1,12)=(C207-C217)*BYKMH 441. |
| 349 |
G(1,13)=(C206-C216)*BYKMH 442. |
| 350 |
G(1,14)=(C205-C215)*BYKMH 443. |
| 351 |
G(1,15)=(C204-C214)*BYKMH 444. |
| 352 |
G(1,16)=(C203-C213)*BYKMH 445. |
| 353 |
G(1,17)=(C202-C212)*BYKMH 446. |
| 354 |
G(1,18)=(C201-C211)*BYKMH 447. |
| 355 |
G(1,19)=(C200-C210)*BYKM 448. |
| 356 |
G(2,1)=0. 449. |
| 357 |
G(2,2)=(S201+S211)*BYKMH 450. |
| 358 |
G(2,3)=(S202+S212)*BYKMH 451. |
| 359 |
G(2,4)=(S203+S213)*BYKMH 452. |
| 360 |
G(2,5)=(S204+S214)*BYKMH 453. |
| 361 |
G(2,6)=(S205+S215)*BYKMH 454. |
| 362 |
G(2,7)=(S206+S216)*BYKMH 455. |
| 363 |
G(2,8)=(S207+S217)*BYKMH 456. |
| 364 |
G(2,9)=(S208+S218)*BYKMH 457. |
| 365 |
G(2,10)=(C410-C430)*BYKMH 458. |
| 366 |
G(2,11)=(S218-S208)*BYKMH 459. |
| 367 |
G(2,12)=(S217-S207)*BYKMH 460. |
| 368 |
G(2,13)=(S216-S206)*BYKMH 461. |
| 369 |
G(2,14)=(S215-S205)*BYKMH 462. |
| 370 |
G(2,15)=(S214-S204)*BYKMH 463. |
| 371 |
G(2,16)=(S213-S203)*BYKMH 464. |
| 372 |
G(2,17)=(S212-S202)*BYKMH 465. |
| 373 |
G(2,18)=(S211-S201)*BYKMH 466. |
| 374 |
G(2,19)=0. 467. |
| 375 |
RETURN 468. |
| 376 |
END 469. |