make_plan_fftw3 Subroutine

private subroutine make_plan_fftw3(long, larg)

Note

Creates forward and backward plans. 1 FFT distributed on several threads

Until no more transformation is needed, the plans remain as they are.

Warning

In C, the order line/column is reversed, so the 2nd dimension larg of the array is first provided in fftw_plan_dft_2d

calling from fortran

Arguments

Type IntentOptional Attributes Name
integer(kind=I4), intent(in) :: long

first 2D array dimension

integer(kind=I4), intent(in) :: larg

second 2D array dimension


Calls

proc~~make_plan_fftw3~~CallsGraph proc~make_plan_fftw3 make_plan_fftw3 interface~fftw_plan_dft_2d fftw_plan_dft_2d proc~make_plan_fftw3->interface~fftw_plan_dft_2d

Called by

proc~~make_plan_fftw3~~CalledByGraph proc~make_plan_fftw3 make_plan_fftw3 proc~init_fftw3 init_fftw3 proc~init_fftw3->proc~make_plan_fftw3 proc~calc_fftw3 calc_fftw3 proc~calc_fftw3->proc~init_fftw3 program~test_fftw3 test_fftw3 program~test_fftw3->proc~init_fftw3 program~test_fftw3->proc~calc_fftw3

Source Code

   subroutine make_plan_fftw3(long, larg)
   implicit none
   integer(kind=I4), intent(in) :: long   !! *first  2D array dimension*
   integer(kind=I4), intent(in) :: larg   !! *second 2D array dimension*

      ! forward
      plan_f = fftw_plan_dft_2d(larg, long, cmp_f_i, cmp_f_o, FFTW_FORWARD,  flags=FFTW_ESTIMATE)

      ! backward
      plan_b = fftw_plan_dft_2d(larg, long, cmp_b_i, cmp_b_o, FFTW_BACKWARD, flags=FFTW_ESTIMATE)

   return
   endsubroutine make_plan_fftw3