! File: fft35.i90 ! Public domain 2004 James Van Buskirk subroutine fft35(h) ! 490 adds, 216 muls complex(wp), intent(inout) :: h(0:34) real(wp) xr1_1, xi1_1, yr1_1, yi1_1 real(wp) xr1_2, xi1_2, yr1_2, yi1_2 real(wp) xr1_3, xi1_3, yr1_3, yi1_3 real(wp) xr1_4, xi1_4, yr1_4, yi1_4 real(wp) xr1_5, xi1_5, yr1_5, yi1_5 real(wp) xr1_6, xi1_6, yr1_6, yi1_6 real(wp) xr1_7, xi1_7, yr1_7, yi1_7 real(wp) xr1_8, xi1_8, yr1_8, yi1_8 real(wp) xr1_9, xi1_9, yr1_9, yi1_9 real(wp) xr1_10, xi1_10, yr1_10, yi1_10 real(wp) xr1_11, xi1_11, yr1_11, yi1_11 real(wp) xr1_12, xi1_12, yr1_12, yi1_12 real(wp) xr1_13, xi1_13, yr1_13, yi1_13 real(wp) xr1_14, xi1_14, yr1_14, yi1_14 real(wp) xr1_15, xi1_15, yr1_15, yi1_15 real(wp) xr1_16, xi1_16, yr1_16, yi1_16 real(wp) xr1_17, xi1_17, yr1_17, yi1_17 real(wp) xr2_4, xi2_4, xr2_12, xi2_12 real(wp) xr2_5, xi2_5, xr2_13, xi2_13 real(wp) xr2_7, xi2_7, xr2_14, xi2_14 real(wp) xr2_8, xi2_8, xr2_15, xi2_15 real(wp) xr2_10, xi2_10, xr2_16, xi2_16 real(wp) xr2_11, xi2_11, xr2_17, xi2_17 real(wp) xr3_3, xi3_3, xr4_0, xi4_0, xr4_3, xi4_3 real(wp) xr5_3, xi5_3, xr5_6, xi5_6, xr5_9, xi5_9 real(wp) xr3_4, xi3_4, xr4_1, xi4_1, xr4_4, xi4_4 real(wp) xr5_4, xi5_4, xr5_7, xi5_7, xr5_10, xi5_10 real(wp) xr3_5, xi3_5, xr4_2, xi4_2, xr4_5, xi4_5 real(wp) xr5_5, xi5_5, xr5_8, xi5_8, xr5_11, xi5_11 real(wp) xr5_1, xi5_1, xr6_0, xi6_0, xr6_1, xi6_1 real(wp) xr7_1, xi7_1, xr7_2, xi7_2 real(wp) xr6_4, xi6_4, xr7_3, xi7_3, xr7_4, xi7_4 real(wp) xr8_4, xi8_4, xr8_5, xi8_5 real(wp) xr6_7, xi6_7, xr7_6, xi7_6, xr7_7, xi7_7 real(wp) xr8_7, xi8_7, xr8_8, xi8_8 real(wp) xr6_10, xi6_10, xr7_9, xi7_9, xr7_10, xi7_10 real(wp) xr8_10, xi8_10, xr8_11, xi8_11 real(wp) xr3_12, xi3_12, xr3_14, xi3_14, xr3_16, xi3_16 real(wp) xr3_13, xi3_13, xr3_15, xi3_15, xr3_17, xi3_17 real(wp) xr4_12, xi4_12, xr4_13, xi4_13 real(wp) xr4_14, xi4_14, xr4_15, xi4_15 real(wp) xr4_16, xi4_16, xr4_17, xi4_17 real(wp) xr9_4, xi9_4, xr9_12, xi9_12 real(wp) xr9_5, xi9_5, xr9_13, xi9_13 real(wp) xr9_7, xi9_7, xr9_14, xi9_14 real(wp) xr9_8, xi9_8, xr9_15, xi9_15 real(wp) xr9_10, xi9_10, xr9_16, xi9_16 real(wp) xr9_11, xi9_11, xr9_17, xi9_17 real(wp) yr2_3, yi2_3, yr2_10, yi2_10 real(wp) yr2_4, yi2_4, yr2_11, yi2_11 real(wp) yr2_5, yi2_5, yr2_13, yi2_13 real(wp) yr2_6, yi2_6, yr2_14, yi2_14 real(wp) yr2_7, yi2_7, yr2_16, yi2_16 real(wp) yr2_8, yi2_8, yr2_17, yi2_17 real(wp) yr3_3, yi3_3, yr4_1, yi4_1, yr4_3, yi4_3 real(wp) yr5_3, yi5_3, yr5_5, yi5_5, yr5_7, yi5_7 real(wp) yr3_4, yi3_4, yr4_2, yi4_2, yr4_4, yi4_4 real(wp) yr5_4, yi5_4, yr5_6, yi5_6, yr5_8, yi5_8 real(wp) yr5_1, yi5_1, yr5_2, yi5_2 real(wp) yr6_3, yi6_3, yr6_4, yi6_4 real(wp) yr6_5, yi6_5, yr6_6, yi6_6 real(wp) yr6_7, yi6_7, yr6_8, yi6_8 real(wp) yr2_9, yi2_9, yr2_12, yi2_12, yr2_15, yi2_15 real(wp) yr3_10, yi3_10, yr3_13, yi3_13, yr3_16, yi3_16 real(wp) yr3_11, yi3_11, yr3_14, yi3_14, yr3_17, yi3_17 real(wp) yr4_10, yi4_10, yr5_9, yi5_9, yr5_10, yi5_10 real(wp) yr6_10, yi6_10, yr6_11, yi6_11 real(wp) yr4_13, yi4_13, yr5_12, yi5_12, yr5_13, yi5_13 real(wp) yr6_13, yi6_13, yr6_14, yi6_14 real(wp) yr4_16, yi4_16, yr5_15, yi5_15, yr5_16, yi5_16 real(wp) yr6_16, yi6_16, yr6_17, yi6_17 real(wp) yr7_3, yi7_3, yr7_10, yi7_10 real(wp) yr7_4, yi7_4, yr7_11, yi7_11 real(wp) yr7_5, yi7_5, yr7_13, yi7_13 real(wp) yr7_6, yi7_6, yr7_14, yi7_14 real(wp) yr7_7, yi7_7, yr7_16, yi7_16 real(wp) yr7_8, yi7_8, yr7_17, yi7_17 real(wp),parameter :: dc1 = -1.4739524581991564846761726140103405_wp real(wp),parameter :: dc2 = .3279852776056817677960320250045501_wp real(wp),parameter :: dc3 = -1.2469796037174670610500097680084800_wp real(wp),parameter :: dc4 = .9510565162951535721164393333793821_wp real(wp),parameter :: dc5 = -1.1626865005463898941879509414269216_wp real(wp),parameter :: dc6 = -.6452423285464268198254634242865689_wp real(wp),parameter :: dc7 = .8046040231525589999817785817394961_wp real(wp),parameter :: dc8 = .3090169943749474241022934171828191_wp real(wp),parameter :: dc9 = -1.1180339887498948482045868343656382_wp real(wp),parameter :: dc10 = -.6784479339461047219471997550106501_wp real(wp),parameter :: dc11 = .4687959925581865775412553821274132_wp real(wp),parameter :: dc12 = .7585278497488886497854886232717990_wp real(wp),parameter :: dc13 = -.9749279121818236070181316829939312_wp real(wp),parameter :: dc14 = .6736586190271537851811496381011588_wp real(wp),parameter :: dc15 = 1.0900025424002514471830299312825103_wp real(wp),parameter :: ds1 = -.4450418679126288085778051289935896_wp real(wp),parameter :: ds2 = .8019377358048382524722046390148902_wp real(wp),parameter :: ds3 = .6180339887498948482045868343656382_wp real(wp),parameter :: ds4 = -.9272115437985525740537049745301549_wp real(wp),parameter :: ds5 = -.5730482488287672758604328112573439_wp xr1_1 = real(h(21))+real(h(14)) xi1_1 = aimag(h(21))+aimag(h(14)) yr1_1 = real(h(21))-real(h(14)) yi1_1 = aimag(h(21))-aimag(h(14)) xr1_2 = real(h(7))+real(h(28)) xi1_2 = aimag(h(7))+aimag(h(28)) yr1_2 = real(h(7))-real(h(28)) yi1_2 = aimag(h(7))-aimag(h(28)) xr1_3 = real(h(15))+real(h(20)) xi1_3 = aimag(h(15))+aimag(h(20)) yr1_9 = real(h(15))-real(h(20)) yi1_9 = aimag(h(15))-aimag(h(20)) xr1_4 = real(h(1))+real(h(34)) xi1_4 = aimag(h(1))+aimag(h(34)) yr1_10 = real(h(1))-real(h(34)) yi1_10 = aimag(h(1))-aimag(h(34)) xr1_5 = real(h(22))+real(h(13)) xi1_5 = aimag(h(22))+aimag(h(13)) yr1_11 = real(h(22))-real(h(13)) yi1_11 = aimag(h(22))-aimag(h(13)) xr1_6 = real(h(30))+real(h(5)) xi1_6 = aimag(h(30))+aimag(h(5)) yr1_12 = real(h(30))-real(h(5)) yi1_12 = aimag(h(30))-aimag(h(5)) xr1_7 = real(h(16))+real(h(19)) xi1_7 = aimag(h(16))+aimag(h(19)) yr1_13 = real(h(16))-real(h(19)) yi1_13 = aimag(h(16))-aimag(h(19)) xr1_8 = real(h(2))+real(h(33)) xi1_8 = aimag(h(2))+aimag(h(33)) yr1_14 = real(h(2))-real(h(33)) yi1_14 = aimag(h(2))-aimag(h(33)) xr1_9 = real(h(25))+real(h(10)) xi1_9 = aimag(h(25))+aimag(h(10)) yr1_15 = real(h(25))-real(h(10)) yi1_15 = aimag(h(25))-aimag(h(10)) xr1_10 = real(h(11))+real(h(24)) xi1_10 = aimag(h(11))+aimag(h(24)) yr1_16 = real(h(11))-real(h(24)) yi1_16 = aimag(h(11))-aimag(h(24)) xr1_11 = real(h(32))+real(h(3)) xi1_11 = aimag(h(32))+aimag(h(3)) yr1_17 = real(h(32))-real(h(3)) yi1_17 = aimag(h(32))-aimag(h(3)) xr1_12 = real(h(29))+real(h(6)) xi1_12 = aimag(h(29))+aimag(h(6)) yr1_3 = real(h(29))-real(h(6)) yi1_3 = aimag(h(29))-aimag(h(6)) xr1_13 = real(h(8))+real(h(27)) xi1_13 = aimag(h(8))+aimag(h(27)) yr1_4 = real(h(8))-real(h(27)) yi1_4 = aimag(h(8))-aimag(h(27)) xr1_14 = real(h(9))+real(h(26)) xi1_14 = aimag(h(9))+aimag(h(26)) yr1_5 = real(h(9))-real(h(26)) yi1_5 = aimag(h(9))-aimag(h(26)) xr1_15 = real(h(23))+real(h(12)) xi1_15 = aimag(h(23))+aimag(h(12)) yr1_6 = real(h(23))-real(h(12)) yi1_6 = aimag(h(23))-aimag(h(12)) xr1_16 = real(h(4))+real(h(31)) xi1_16 = aimag(h(4))+aimag(h(31)) yr1_7 = real(h(4))-real(h(31)) yi1_7 = aimag(h(4))-aimag(h(31)) xr1_17 = real(h(18))+real(h(17)) xi1_17 = aimag(h(18))+aimag(h(17)) yr1_8 = real(h(18))-real(h(17)) yi1_8 = aimag(h(18))-aimag(h(17)) xr2_4 = xr1_4+xr1_12 xi2_4 = xi1_4+xi1_12 xr2_12 = xr1_4-xr1_12 xi2_12 = xi1_4-xi1_12 xr2_5 = xr1_5+xr1_13 xi2_5 = xi1_5+xi1_13 xr2_13 = xr1_5-xr1_13 xi2_13 = xi1_5-xi1_13 xr2_7 = xr1_7+xr1_14 xi2_7 = xi1_7+xi1_14 xr2_14 = xr1_7-xr1_14 xi2_14 = xi1_7-xi1_14 xr2_8 = xr1_8+xr1_15 xi2_8 = xi1_8+xi1_15 xr2_15 = xr1_8-xr1_15 xi2_15 = xi1_8-xi1_15 xr2_10 = xr1_10+xr1_16 xi2_10 = xi1_10+xi1_16 xr2_16 = xr1_10-xr1_16 xi2_16 = xi1_10-xi1_16 xr2_11 = xr1_11+xr1_17 xi2_11 = xi1_11+xi1_17 xr2_17 = xr1_11-xr1_17 xi2_17 = xi1_11-xi1_17 xr3_3 = xr1_3+xr1_6+xr1_9 xi3_3 = xi1_3+xi1_6+xi1_9 xr4_0 = real(h(0))+xr3_3 xi4_0 = aimag(h(0))+xi3_3 xr4_3 = dc1*real(h(0))+dc2*xr3_3 xi4_3 = dc1*aimag(h(0))+dc2*xi3_3 xr5_3 = xr4_3+xr1_6+dc3*xr1_9 xi5_3 = xi4_3+xi1_6+dc3*xi1_9 xr5_6 = xr4_3+dc3*xr1_3+xr1_9 xi5_6 = xi4_3+dc3*xi1_3+xi1_9 xr5_9 = xr4_3+xr1_3+dc3*xr1_6 xi5_9 = xi4_3+xi1_3+dc3*xi1_6 xr3_4 = xr2_4+xr2_7+xr2_10 xi3_4 = xi2_4+xi2_7+xi2_10 xr4_1 = xr1_1+xr3_4 xi4_1 = xi1_1+xi3_4 xr4_4 = dc1*xr1_1+dc2*xr3_4 xi4_4 = dc1*xi1_1+dc2*xi3_4 xr5_4 = xr4_4+xr2_7+dc3*xr2_10 xi5_4 = xi4_4+xi2_7+dc3*xi2_10 xr5_7 = xr4_4+dc3*xr2_4+xr2_10 xi5_7 = xi4_4+dc3*xi2_4+xi2_10 xr5_10 = xr4_4+xr2_4+dc3*xr2_7 xi5_10 = xi4_4+xi2_4+dc3*xi2_7 xr3_5 = xr2_5+xr2_8+xr2_11 xi3_5 = xi2_5+xi2_8+xi2_11 xr4_2 = xr1_2+xr3_5 xi4_2 = xi1_2+xi3_5 xr4_5 = dc1*xr1_2+dc2*xr3_5 xi4_5 = dc1*xi1_2+dc2*xi3_5 xr5_5 = xr4_5+xr2_8+dc3*xr2_11 xi5_5 = xi4_5+xi2_8+dc3*xi2_11 xr5_8 = xr4_5+dc3*xr2_5+xr2_11 xi5_8 = xi4_5+dc3*xi2_5+xi2_11 xr5_11 = xr4_5+xr2_5+dc3*xr2_8 xi5_11 = xi4_5+xi2_5+dc3*xi2_8 xr5_1 = xr4_1+xr4_2 xi5_1 = xi4_1+xi4_2 xr6_0 = xr4_0+xr5_1 xi6_0 = xi4_0+xi5_1 xr6_1 = xr4_0+dc8*xr5_1 xi6_1 = xi4_0+dc8*xi5_1 xr7_1 = xr6_1+dc9*xr4_2 xi7_1 = xi6_1+dc9*xi4_2 xr7_2 = xr6_1+dc9*xr4_1 xi7_2 = xi6_1+dc9*xi4_1 xr6_4 = xr5_4+xr5_5 xi6_4 = xi5_4+xi5_5 xr7_3 = dc10*(xr5_3+xr6_4) xi7_3 = dc10*(xi5_3+xi6_4) xr7_4 = xr7_3+dc11*xr6_4 xi7_4 = xi7_3+dc11*xi6_4 xr8_4 = xr7_4+dc12*xr5_5 xi8_4 = xi7_4+dc12*xi5_5 xr8_5 = xr7_4+dc12*xr5_4 xi8_5 = xi7_4+dc12*xi5_4 xr6_7 = xr5_7+xr5_8 xi6_7 = xi5_7+xi5_8 xr7_6 = dc10*(xr5_6+xr6_7) xi7_6 = dc10*(xi5_6+xi6_7) xr7_7 = xr7_6+dc11*xr6_7 xi7_7 = xi7_6+dc11*xi6_7 xr8_7 = xr7_7+dc12*xr5_8 xi8_7 = xi7_7+dc12*xi5_8 xr8_8 = xr7_7+dc12*xr5_7 xi8_8 = xi7_7+dc12*xi5_7 xr6_10 = xr5_10+xr5_11 xi6_10 = xi5_10+xi5_11 xr7_9 = dc10*(xr5_9+xr6_10) xi7_9 = dc10*(xi5_9+xi6_10) xr7_10 = xr7_9+dc11*xr6_10 xi7_10 = xi7_9+dc11*xi6_10 xr8_10 = xr7_10+dc12*xr5_11 xi8_10 = xi7_10+dc12*xi5_11 xr8_11 = xr7_10+dc12*xr5_10 xi8_11 = xi7_10+dc12*xi5_10 xr3_12 = xr2_12+ds1*xr2_14+ds2*xr2_16 xi3_12 = xi2_12+ds1*xi2_14+ds2*xi2_16 xr3_14 = ds2*xr2_12+xr2_14+ds1*xr2_16 xi3_14 = ds2*xi2_12+xi2_14+ds1*xi2_16 xr3_16 = ds1*xr2_12+ds2*xr2_14+xr2_16 xi3_16 = ds1*xi2_12+ds2*xi2_14+xi2_16 xr3_13 = xr2_13+ds1*xr2_15+ds2*xr2_17 xi3_13 = xi2_13+ds1*xi2_15+ds2*xi2_17 xr3_15 = ds2*xr2_13+xr2_15+ds1*xr2_17 xi3_15 = ds2*xi2_13+xi2_15+ds1*xi2_17 xr3_17 = ds1*xr2_13+ds2*xr2_15+xr2_17 xi3_17 = ds1*xi2_13+ds2*xi2_15+xi2_17 xr4_12 = ds4*xr3_12+ds5*xr3_13 xi4_12 = ds4*xi3_12+ds5*xi3_13 xr4_13 = ds4*xr3_13-ds5*xr3_12 xi4_13 = ds4*xi3_13-ds5*xi3_12 xr4_14 = ds4*xr3_14+ds5*xr3_15 xi4_14 = ds4*xi3_14+ds5*xi3_15 xr4_15 = ds4*xr3_15-ds5*xr3_14 xi4_15 = ds4*xi3_15-ds5*xi3_14 xr4_16 = ds4*xr3_16+ds5*xr3_17 xi4_16 = ds4*xi3_16+ds5*xi3_17 xr4_17 = ds4*xr3_17-ds5*xr3_16 xi4_17 = ds4*xi3_17-ds5*xi3_16 xr9_4 = xr8_4+xr4_12 xi9_4 = xi8_4+xi4_12 xr9_12 = xr8_4-xr4_12 xi9_12 = xi8_4-xi4_12 xr9_5 = xr8_5+xr4_13 xi9_5 = xi8_5+xi4_13 xr9_13 = xr8_5-xr4_13 xi9_13 = xi8_5-xi4_13 xr9_7 = xr8_7+xr4_14 xi9_7 = xi8_7+xi4_14 xr9_14 = xr8_7-xr4_14 xi9_14 = xi8_7-xi4_14 xr9_8 = xr8_8+xr4_15 xi9_8 = xi8_8+xi4_15 xr9_15 = xr8_8-xr4_15 xi9_15 = xi8_8-xi4_15 xr9_10 = xr8_10+xr4_16 xi9_10 = xi8_10+xi4_16 xr9_16 = xr8_10-xr4_16 xi9_16 = xi8_10-xi4_16 xr9_11 = xr8_11+xr4_17 xi9_11 = xi8_11+xi4_17 xr9_17 = xr8_11-xr4_17 xi9_17 = xi8_11-xi4_17 yr2_3 = yr1_10-yr1_3 yi2_3 = yi1_10-yi1_3 yr2_10 = yr1_10+yr1_3 yi2_10 = yi1_10+yi1_3 yr2_4 = yr1_11-yr1_4 yi2_4 = yi1_11-yi1_4 yr2_11 = yr1_11+yr1_4 yi2_11 = yi1_11+yi1_4 yr2_5 = yr1_13-yr1_5 yi2_5 = yi1_13-yi1_5 yr2_13 = yr1_13+yr1_5 yi2_13 = yi1_13+yi1_5 yr2_6 = yr1_14-yr1_6 yi2_6 = yi1_14-yi1_6 yr2_14 = yr1_14+yr1_6 yi2_14 = yi1_14+yi1_6 yr2_7 = yr1_16-yr1_7 yi2_7 = yi1_16-yi1_7 yr2_16 = yr1_16+yr1_7 yi2_16 = yi1_16+yi1_7 yr2_8 = yr1_17-yr1_8 yi2_8 = yi1_17-yi1_8 yr2_17 = yr1_17+yr1_8 yi2_17 = yi1_17+yi1_8 yr3_3 = yr2_3+yr2_5+yr2_7 yi3_3 = yi2_3+yi2_5+yi2_7 yr4_1 = dc4*(yr1_1+yr3_3) yi4_1 = dc4*(yi1_1+yi3_3) yr4_3 = yr4_1+dc5*yr3_3 yi4_3 = yi4_1+dc5*yi3_3 yr5_3 = yr4_3+dc6*yr2_5+dc7*yr2_7 yi5_3 = yi4_3+dc6*yi2_5+dc7*yi2_7 yr5_5 = yr4_3+dc7*yr2_3+dc6*yr2_7 yi5_5 = yi4_3+dc7*yi2_3+dc6*yi2_7 yr5_7 = yr4_3+dc6*yr2_3+dc7*yr2_5 yi5_7 = yi4_3+dc6*yi2_3+dc7*yi2_5 yr3_4 = yr2_4+yr2_6+yr2_8 yi3_4 = yi2_4+yi2_6+yi2_8 yr4_2 = dc4*(yr1_2+yr3_4) yi4_2 = dc4*(yi1_2+yi3_4) yr4_4 = yr4_2+dc5*yr3_4 yi4_4 = yi4_2+dc5*yi3_4 yr5_4 = yr4_4+dc6*yr2_6+dc7*yr2_8 yi5_4 = yi4_4+dc6*yi2_6+dc7*yi2_8 yr5_6 = yr4_4+dc7*yr2_4+dc6*yr2_8 yi5_6 = yi4_4+dc7*yi2_4+dc6*yi2_8 yr5_8 = yr4_4+dc6*yr2_4+dc7*yr2_6 yi5_8 = yi4_4+dc6*yi2_4+dc7*yi2_6 yr5_1 = yr4_1+ds3*yr4_2 yi5_1 = yi4_1+ds3*yi4_2 yr5_2 = yr4_2-ds3*yr4_1 yi5_2 = yi4_2-ds3*yi4_1 yr6_3 = yr5_3+ds3*yr5_4 yi6_3 = yi5_3+ds3*yi5_4 yr6_4 = yr5_4-ds3*yr5_3 yi6_4 = yi5_4-ds3*yi5_3 yr6_5 = yr5_5+ds3*yr5_6 yi6_5 = yi5_5+ds3*yi5_6 yr6_6 = yr5_6-ds3*yr5_5 yi6_6 = yi5_6-ds3*yi5_5 yr6_7 = yr5_7+ds3*yr5_8 yi6_7 = yi5_7+ds3*yi5_8 yr6_8 = yr5_8-ds3*yr5_7 yi6_8 = yi5_8-ds3*yi5_7 yr2_9 = yr1_9+ds1*yr1_12+ds2*yr1_15 yi2_9 = yi1_9+ds1*yi1_12+ds2*yi1_15 yr2_12 = ds2*yr1_9+yr1_12+ds1*yr1_15 yi2_12 = ds2*yi1_9+yi1_12+ds1*yi1_15 yr2_15 = ds1*yr1_9+ds2*yr1_12+yr1_15 yi2_15 = ds1*yi1_9+ds2*yi1_12+yi1_15 yr3_10 = yr2_10+ds1*yr2_13+ds2*yr2_16 yi3_10 = yi2_10+ds1*yi2_13+ds2*yi2_16 yr3_13 = ds2*yr2_10+yr2_13+ds1*yr2_16 yi3_13 = ds2*yi2_10+yi2_13+ds1*yi2_16 yr3_16 = ds1*yr2_10+ds2*yr2_13+yr2_16 yi3_16 = ds1*yi2_10+ds2*yi2_13+yi2_16 yr3_11 = yr2_11+ds1*yr2_14+ds2*yr2_17 yi3_11 = yi2_11+ds1*yi2_14+ds2*yi2_17 yr3_14 = ds2*yr2_11+yr2_14+ds1*yr2_17 yi3_14 = ds2*yi2_11+yi2_14+ds1*yi2_17 yr3_17 = ds1*yr2_11+ds2*yr2_14+yr2_17 yi3_17 = ds1*yi2_11+ds2*yi2_14+yi2_17 yr4_10 = yr3_10+yr3_11 yi4_10 = yi3_10+yi3_11 yr5_9 = dc13*(yr2_9+yr4_10) yi5_9 = dc13*(yi2_9+yi4_10) yr5_10 = yr5_9+dc14*yr4_10 yi5_10 = yi5_9+dc14*yi4_10 yr6_10 = yr5_10+dc15*yr3_11 yi6_10 = yi5_10+dc15*yi3_11 yr6_11 = yr5_10+dc15*yr3_10 yi6_11 = yi5_10+dc15*yi3_10 yr4_13 = yr3_13+yr3_14 yi4_13 = yi3_13+yi3_14 yr5_12 = dc13*(yr2_12+yr4_13) yi5_12 = dc13*(yi2_12+yi4_13) yr5_13 = yr5_12+dc14*yr4_13 yi5_13 = yi5_12+dc14*yi4_13 yr6_13 = yr5_13+dc15*yr3_14 yi6_13 = yi5_13+dc15*yi3_14 yr6_14 = yr5_13+dc15*yr3_13 yi6_14 = yi5_13+dc15*yi3_13 yr4_16 = yr3_16+yr3_17 yi4_16 = yi3_16+yi3_17 yr5_15 = dc13*(yr2_15+yr4_16) yi5_15 = dc13*(yi2_15+yi4_16) yr5_16 = yr5_15+dc14*yr4_16 yi5_16 = yi5_15+dc14*yi4_16 yr6_16 = yr5_16+dc15*yr3_17 yi6_16 = yi5_16+dc15*yi3_17 yr6_17 = yr5_16+dc15*yr3_16 yi6_17 = yi5_16+dc15*yi3_16 yr7_3 = yr6_10-yr6_3 yi7_3 = yi6_10-yi6_3 yr7_10 = yr6_10+yr6_3 yi7_10 = yi6_10+yi6_3 yr7_4 = yr6_11-yr6_4 yi7_4 = yi6_11-yi6_4 yr7_11 = yr6_11+yr6_4 yi7_11 = yi6_11+yi6_4 yr7_5 = yr6_13-yr6_5 yi7_5 = yi6_13-yi6_5 yr7_13 = yr6_13+yr6_5 yi7_13 = yi6_13+yi6_5 yr7_6 = yr6_14-yr6_6 yi7_6 = yi6_14-yi6_6 yr7_14 = yr6_14+yr6_6 yi7_14 = yi6_14+yi6_6 yr7_7 = yr6_16-yr6_7 yi7_7 = yi6_16-yi6_7 yr7_16 = yr6_16+yr6_7 yi7_16 = yi6_16+yi6_7 yr7_8 = yr6_17-yr6_8 yi7_8 = yi6_17-yi6_8 yr7_17 = yr6_17+yr6_8 yi7_17 = yi6_17+yi6_8 h(0) = cmplx(xr6_0, xi6_0, wp) h(7) = cmplx(xr7_1+yi5_1, xi7_1-yr5_1, wp) h(28) = cmplx(xr7_1-yi5_1, xi7_1+yr5_1, wp) h(21) = cmplx(xr7_2+yi5_2, xi7_2-yr5_2, wp) h(14) = cmplx(xr7_2-yi5_2, xi7_2+yr5_2, wp) h(25) = cmplx(xr7_3+yi5_9, xi7_3-yr5_9, wp) h(10) = cmplx(xr7_3-yi5_9, xi7_3+yr5_9, wp) h(18) = cmplx(xr9_4+yi7_3, xi9_4-yr7_3, wp) h(17) = cmplx(xr9_4-yi7_3, xi9_4+yr7_3, wp) h(4) = cmplx(xr9_5+yi7_4, xi9_5-yr7_4, wp) h(31) = cmplx(xr9_5-yi7_4, xi9_5+yr7_4, wp) h(30) = cmplx(xr7_6+yi5_12, xi7_6-yr5_12, wp) h(5) = cmplx(xr7_6-yi5_12, xi7_6+yr5_12, wp) h(23) = cmplx(xr9_7+yi7_5, xi9_7-yr7_5, wp) h(12) = cmplx(xr9_7-yi7_5, xi9_7+yr7_5, wp) h(9) = cmplx(xr9_8+yi7_6, xi9_8-yr7_6, wp) h(26) = cmplx(xr9_8-yi7_6, xi9_8+yr7_6, wp) h(15) = cmplx(xr7_9+yi5_15, xi7_9-yr5_15, wp) h(20) = cmplx(xr7_9-yi5_15, xi7_9+yr5_15, wp) h(8) = cmplx(xr9_10+yi7_7, xi9_10-yr7_7, wp) h(27) = cmplx(xr9_10-yi7_7, xi9_10+yr7_7, wp) h(29) = cmplx(xr9_11+yi7_8, xi9_11-yr7_8, wp) h(6) = cmplx(xr9_11-yi7_8, xi9_11+yr7_8, wp) h(32) = cmplx(xr9_12+yi7_10, xi9_12-yr7_10, wp) h(3) = cmplx(xr9_12-yi7_10, xi9_12+yr7_10, wp) h(11) = cmplx(xr9_13+yi7_11, xi9_13-yr7_11, wp) h(24) = cmplx(xr9_13-yi7_11, xi9_13+yr7_11, wp) h(2) = cmplx(xr9_14+yi7_13, xi9_14-yr7_13, wp) h(33) = cmplx(xr9_14-yi7_13, xi9_14+yr7_13, wp) h(16) = cmplx(xr9_15+yi7_14, xi9_15-yr7_14, wp) h(19) = cmplx(xr9_15-yi7_14, xi9_15+yr7_14, wp) h(22) = cmplx(xr9_16+yi7_16, xi9_16-yr7_16, wp) h(13) = cmplx(xr9_16-yi7_16, xi9_16+yr7_16, wp) h(1) = cmplx(xr9_17+yi7_17, xi9_17-yr7_17, wp) h(34) = cmplx(xr9_17-yi7_17, xi9_17+yr7_17, wp) end subroutine fft35