1 |
!
|
2 |
! 3D FFT subroutine used by the PESSL implementation.
|
3 |
!
-
subroutine fft (n1, n2, n3, isign, scale, x, y)
-
use blacs
-
use types
-
implicit none
|
4 |
!
|
5 |
! Arguments
|
6 |
!
-
integer, intent(in) :: n1, n2, n3, isign
-
real(R8), intent(in) :: scale
|
7 |
!
-
complex(R8), dimension(:,:,:), intent(in) :: x
|
8 |
!hpf$ template gridx(n1,n2,n3)
|
9 |
!hpf$ distribute(*,*,block) :: gridx
|
10 |
!hpf$ align(:,:,:) with *gridx :: x
|
11 |
!
-
complex(R8), dimension(:,:,:), intent(out) :: y
|
12 |
!hpf$ template gridy(n3,n2,n1)
|
13 |
!hpf$ distribute(*,*,block) :: gridy
|
14 |
!hpf$ align(:,:,:) with *gridy :: y
|