我继承了一个固定格式文件 FFTRUN.f
该文件的开头如下所示:
SUBROUTINE FFTRUN_2e
USE, intrinsic :: ISO_C_BINDING
USE FFTWmod, ONLY : FFTWplan_fwd, FFTWplan_inv, FFTWplanReady
INCLUDE 'INCL_PARAM.FOR'
INCLUDE 'INCL_PRATT.FOR'
INCLUDE 'INCL_XYZ.FOR'
INCLUDE 'FFTW3.f03'
PARAMETER (NDIM=2, NDAT=IMAX*JMAX)
DIMENSION NN(NDIM),DATA(NDAT)
COMPLEX*16 FACTR,SCATT(IMAX,JMAX),WAVINC,DATA
IF (.not.FFTWplanReady) THEN
FFTWplan_fwd = fftw_plan_dft_2d(nn2,nn1,data,data,
& FFTW_FORWARD,FFTW_MEASURE)
FFTWplan_inv = fftw_plan_dft_2d(nn2,nn1,data,data,
& FFTW_BACKWARD,FFTW_MEASURE)
ENDIF
我会使用编译它
gfortran -c FFTRUN.f
但是,它失败了,因为 fftw3.f03 是自由格式。有没有办法可以完成此包含,而无需将 fftw3.f03 重新格式化为固定格式?
这是一个庞大的软件,因此我不可能重新格式化固定格式的项目的整个其余部分。