⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fft1d.f

📁 这是一个实用的并行计算源代码
💻 F
字号:
************************************************************************ This is a subroutine for FFT transform program                      ** Made by Dr. Xue-bin Chi                                             ** Date: Aug.18, 2005                                                  ** Supercomputing Center                                               ** Computer Network Information Center, CAS                            **                                                                     ** Deal with the length N=2**m.                                        ** x is an input array for FFT                                         ** y is an output array for FFT                                        ** ip is an output array for bit reverse order                         ** w is an working space for saving exp(-2pijk/N)                      ************************************************************************      subroutine fft1d( m, x, y, w, ip, f )      integer m, ip(*), f      complex*16 x(*), y(*), w(*)      integer n, i, j, k, l, it, iw      complex*16 s      call bitreverse( m, ip )		!\label{fft1d:l20}      n = 2**m      do 10 i = 1, n        y(i) = x(ip(i)+1) 10   continue				!\label{fft1d:l24}      if ( m .eq. 0 ) then        return      endif      it = n / 2      n = 1      iw = 0            call oneroots( m, w, f )		!\label{fft1d:l34}      do 100 j=1, m        l = 0        do 90 k=1, it			!\label{fft1d:l37}          do 80 i=1, n            s = w(iw+i)*y(l+n+i)            y(l+n+i) = y(l+i) - s            y(l+i) = y(l+i) + s 80       continue          l = l + 2*n 90     continue			!\label{fft1d:l44}        iw = iw + n        n = 2*n        it = it / 2100   continue      if ( f .eq. -1 ) then		!\label{fft1d:l50}        n = 2**m        s = 1.0/n        do 120 i=1, n          y(i)=s*y(i)120     continue      endif				!\label{fft1d:l56}      return      end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -