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

📄 mffta5.f

📁 FFT源代码汇集(各种FFT源代码)
💻 F
字号:
      SUBROUTINE MFFTA5(C,FAC)**   PURPOSE:*       ELEMENTARY COOLEY-TUKEY RADIX 2 STEP APPLIED TO A VECTOR-OF*       VECTORS-OF-COMPLEX C[IVS,NV [IES,NE]].*       SEE REF.[1] FOR NOTATIONS.*       THIS ROUTINE CAN BE USED ONLY BY ROUTINE MFFTIV, WHICH CONTROLS*       ITS OPERATION THROUGH THE MFFTPA COMMON**   DUMMY ARGUMENTS :**   C   ARRAY BEING FOURIER  TRANSFORMED*   FAC PHASE FACTORS, PREPARED BY MFFTP; NOT MODIFIED IN OUTPUT*      COMMON /MFFTPA/  IMS,IVS,IES,NM,NV,NE,MX,LX,MLIM,MSTEP,LLIM,LSTEP,     $ NUSTEP,IVLIM,ILIM,MD2LIM,LD2LIM      INTEGER NUSTEP      COMPLEX C(0:NUSTEP-1,0:*),T0,F      COMPLEX FAC(0:*)         IF(2*MX.GE.LX)THEN          IF(LX.EQ.1)GOTO 1000          LAMF=MX          DO 100 LAM=LSTEP,LD2LIM,LSTEP            F=FAC(LAMF)            DO 90 MU=LAM,LAM+MLIM,MSTEP              DO 80 I=MU,MU+ILIM,IES                T0=C(I,1)*F                C(I,1)=C(I,0)-T0                C(I,0)=C(I,0)+T080            CONTINUE90          CONTINUE            LAMF=LAMF+MX100       CONTINUE          LAMF=LAMF-MX          DO 101 LAM=LD2LIM+2*LSTEP,LLIM,LSTEP            F=-CONJG(FAC(LAMF))            DO 91 MU=LAM,LAM+MLIM,MSTEP              DO 81 I=MU,MU+ILIM,IES                T0=C(I,1)*F                C(I,1)=C(I,0)-T0                C(I,0)=C(I,0)+T081            CONTINUE91          CONTINUE            LAMF=LAMF-MX101       CONTINUE          DO 93 MU=LD2LIM+LSTEP,LD2LIM+LSTEP+MLIM,MSTEP             DO 83 I=MU,MU+ILIM,IES              T0=CMPLX(-AIMAG(C(I,1)),REAL(C(I,1)))              C(I,1)=C(I,0)-T0              C(I,0)=C(I,0)+T083          CONTINUE93        CONTINUE1000      DO 92 MU=0,MLIM,MSTEP             DO 82 I=MU,MU+ILIM,IES              T0=C(I,1)              C(I,1)=C(I,0)-T0              C(I,0)=C(I,0)+T082          CONTINUE92        CONTINUE        ELSE          DO 200 MU=0,MLIM,MSTEP            LAMF=MX            DO 190 LAM=MU+LSTEP,MU+LD2LIM,LSTEP              F=FAC(LAMF)              DO 180 I=LAM,LAM+ILIM,IES                T0=C(I,1)*F                C(I,1)=C(I,0)-T0                C(I,0)=C(I,0)+T0180           CONTINUE              LAMF=LAMF+MX190         CONTINUE            LAMF=LAMF-MX            DO 191 LAM=MU+LD2LIM+2*LSTEP,MU+LLIM,LSTEP              F=-CONJG(FAC(LAMF))              DO 181 I=LAM,LAM+ILIM,IES                T0=C(I,1)*F                C(I,1)=C(I,0)-T0                C(I,0)=C(I,0)+T0181           CONTINUE              LAMF=LAMF-MX191         CONTINUE            DO 182 I=MU,MU+ILIM,IES              T0=C(I,1)              C(I,1)=C(I,0)-T0              C(I,0)=C(I,0)+T0182         CONTINUE            DO 183 I=MU+LD2LIM+LSTEP,MU+LD2LIM+LSTEP+ILIM,IES              T0=CMPLX(-AIMAG(C(I,1)),REAL(C(I,1)))              C(I,1)=C(I,0)-T0              C(I,0)=C(I,0)+T0183         CONTINUE200       CONTINUE        ENDIF      END

⌨️ 快捷键说明

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