6   REAL,
SAVE                :: scale_factor
 
    8   INTEGER,
PARAMETER        :: inc=1
 
   21   SUBROUTINE init_fft(iim,nb_vect_max)
 
   24     INTEGER :: nb_vect_max
 
   32     scale_factor=1./sqrt(1.*vsize)
 
   55   END SUBROUTINE init_fft
 
   58   SUBROUTINE fft_forward(vect,TF_vect,nb_vect)
 
   60     INTEGER,
INTENT(IN)  :: nb_vect
 
   61     REAL,
INTENT(IN)     :: vect((vsize+inc)*nb_vect)
 
   62     COMPLEX,
INTENT(OUT) :: tf_vect((vsize/2+1)*nb_vect)
 
   63     REAL                :: work(4*vsize*nb_vect)
 
   65     INTEGER, 
PARAMETER :: isign=-1
 
   66     REAL               :: vect_out((vsize+inc)*nb_vect)
 
   67     TYPE(dfti_descriptor), 
POINTER :: fft_handle
 
   71       ierr = 
dftisetvalue(fft_handle,dfti_number_of_transforms,nb_vect)
 
   72       ierr = 
dftisetvalue(fft_handle,dfti_forward_scale,scale_factor)
 
   73       ierr = 
dftisetvalue(fft_handle,dfti_backward_scale,scale_factor)
 
   74       ierr = 
dftisetvalue(fft_handle,dfti_placement,dfti_not_inplace)
 
   75       ierr = 
dftisetvalue(fft_handle, dfti_input_distance, vsize+inc)
 
   76       ierr = 
dftisetvalue(fft_handle, dfti_output_distance, (vsize/2+1)*2)
 
   98   END SUBROUTINE fft_forward
 
  100   SUBROUTINE fft_backward(TF_vect,vect,nb_vect)
 
  102     INTEGER,
INTENT(IN)  :: nb_vect
 
  103     REAL,
INTENT(OUT)    :: vect((vsize+inc)*nb_vect)
 
  104     COMPLEX,
INTENT(IN ) :: tf_vect((vsize/2+1)*nb_vect)
 
  105     REAL                :: work(4*vsize*nb_vect)
 
  107     INTEGER, 
PARAMETER :: isign=1
 
  108     TYPE(dfti_descriptor),
POINTER :: fft_handle
 
  112       ierr = 
dftisetvalue(fft_handle,dfti_number_of_transforms,nb_vect)
 
  113       ierr = 
dftisetvalue(fft_handle,dfti_forward_scale,scale_factor)
 
  114       ierr = 
dftisetvalue(fft_handle,dfti_backward_scale,scale_factor)
 
  115       ierr = 
dftisetvalue(fft_handle,dfti_placement,dfti_not_inplace)
 
  116       ierr = 
dftisetvalue(fft_handle, dfti_input_distance,  (vsize/2+1)*2)
 
  117       ierr = 
dftisetvalue(fft_handle, dfti_output_distance, vsize+inc)
 
  124   END SUBROUTINE fft_backward
 
c c zjulian c cym CALL iim cym klev iim