FV3 Bundle
fft_mod Module Reference

Fortran module for Eigen FFTs. More...

Data Types

interface  fft_fourier_to_grid
 
interface  fft_fwd_c
 
interface  fft_grid_to_fourier
 
interface  fft_inv_c
 

Functions/Subroutines

complex(r4_kind) function, dimension(lenc, size(grid, 2)) fft_grid_to_fourier_float_2d (grid)
 
real(r4_kind) function, dimension(leng1, size(fourier, 2)) fft_fourier_to_grid_float_2d (fourier)
 
complex(r8_kind) function, dimension(lenc, size(grid, 2)) fft_grid_to_fourier_double_2d (grid)
 
real(r8_kind) function, dimension(leng1, size(fourier, 2)) fft_fourier_to_grid_double_2d (fourier)
 
complex(r4_kind) function, dimension(lenc, size(grid, 2), size(grid, 3)) fft_grid_to_fourier_float_3d (grid)
 
real(r4_kind) function, dimension(leng1, size(fourier, 2), size(fourier, 3)) fft_fourier_to_grid_float_3d (fourier)
 
complex(r8_kind) function, dimension(lenc, size(grid, 2), size(grid, 3)) fft_grid_to_fourier_double_3d (grid)
 
real(r8_kind) function, dimension(leng1, size(fourier, 2), size(fourier, 3)) fft_fourier_to_grid_double_3d (fourier)
 
subroutine, public fft_init (n)
 
subroutine, public fft_end
 This routine is called to unset the transform size and deallocate memory. More...
 
subroutine error_handler (routine, message)
 
subroutine, public fft_fwd (kk, pg, pf)
 
subroutine, public fft_inv (kk, pf, pg)
 

Variables

real(r8_kind), dimension(:), allocatable table8
 
real(r4_kind), dimension(:), allocatable table4
 
real, dimension(:), allocatable table99
 
integer, dimension(:), allocatable ifax
 
logical do_log =.true.
 
integer leng
 
integer leng1
 
integer leng2
 
integer lenc
 
logical module_is_initialized =.false.
 

Detailed Description

Fortran module for Eigen FFTs.

Function/Subroutine Documentation

◆ error_handler()

subroutine fft_mod::error_handler ( character(len=*), intent(in)  routine,
character(len=*), intent(in)  message 
)
private

Definition at line 1097 of file fft.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ fft_fourier_to_grid_double_2d()

real (r8_kind) function, dimension(leng1,size(fourier,2)) fft_mod::fft_fourier_to_grid_double_2d ( complex(r8_kind), dimension(:,:), intent(in)  fourier)
private

Definition at line 703 of file fft.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ fft_fourier_to_grid_double_3d()

real (r8_kind) function, dimension(leng1,size(fourier,2),size(fourier,3)) fft_mod::fft_fourier_to_grid_double_3d ( complex(r8_kind), dimension(:,:,:), intent(in)  fourier)
private

Definition at line 930 of file fft.F90.

Here is the call graph for this function:

◆ fft_fourier_to_grid_float_2d()

real (r4_kind) function, dimension(leng1,size(fourier,2)) fft_mod::fft_fourier_to_grid_float_2d ( complex(r4_kind), dimension(:,:), intent(in)  fourier)
private

Definition at line 425 of file fft.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ fft_fourier_to_grid_float_3d()

real (r4_kind) function, dimension(leng1,size(fourier,2),size(fourier,3)) fft_mod::fft_fourier_to_grid_float_3d ( complex(r4_kind), dimension(:,:,:), intent(in)  fourier)
private

Definition at line 857 of file fft.F90.

Here is the call graph for this function:

◆ fft_fwd()

subroutine, public fft_mod::fft_fwd ( integer, intent(in)  kk,
real(kind_real), dimension(kk), intent(in)  pg,
real(kind_real), dimension(kk+2), intent(out)  pf 
)

Definition at line 49 of file fft_mod.F90.

Here is the caller graph for this function:

◆ fft_grid_to_fourier_double_2d()

complex(r8_kind) function, dimension(lenc,size(grid,2)) fft_mod::fft_grid_to_fourier_double_2d ( real (r8_kind), dimension(:,:), intent(in)  grid)
private

Definition at line 566 of file fft.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ fft_grid_to_fourier_double_3d()

complex(r8_kind) function, dimension(lenc,size(grid,2),size(grid,3)) fft_mod::fft_grid_to_fourier_double_3d ( real (r8_kind), dimension(:,:,:), intent(in)  grid)
private

Definition at line 888 of file fft.F90.

Here is the call graph for this function:

◆ fft_grid_to_fourier_float_2d()

complex(r4_kind) function, dimension(lenc,size(grid,2)) fft_mod::fft_grid_to_fourier_float_2d ( real (r4_kind), dimension(:,:), intent(in)  grid)
private

Definition at line 289 of file fft.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ fft_grid_to_fourier_float_3d()

complex(r4_kind) function, dimension(lenc,size(grid,2),size(grid,3)) fft_mod::fft_grid_to_fourier_float_3d ( real (r4_kind), dimension(:,:,:), intent(in)  grid)
private

Definition at line 826 of file fft.F90.

Here is the call graph for this function:

◆ fft_init()

subroutine, public fft_mod::fft_init ( integer, intent(in)  n)

Definition at line 974 of file fft.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ fft_inv()

subroutine, public fft_mod::fft_inv ( integer, intent(in)  kk,
real(kind_real), dimension(kk+2), intent(in)  pf,
real(kind_real), dimension(kk), intent(out)  pg 
)

Definition at line 66 of file fft_mod.F90.

Here is the caller graph for this function:

Variable Documentation

◆ do_log

logical fft_mod::do_log =.true.
private

Definition at line 237 of file fft.F90.

◆ ifax

integer, dimension(:), allocatable fft_mod::ifax
private

Definition at line 235 of file fft.F90.

◆ lenc

integer fft_mod::lenc
private

Definition at line 238 of file fft.F90.

◆ leng

integer fft_mod::leng
private

Definition at line 238 of file fft.F90.

◆ leng1

integer fft_mod::leng1
private

Definition at line 238 of file fft.F90.

◆ leng2

integer fft_mod::leng2
private

Definition at line 238 of file fft.F90.

◆ module_is_initialized

logical fft_mod::module_is_initialized =.false.
private

Definition at line 240 of file fft.F90.

◆ table4

real(r4_kind), dimension(:), allocatable fft_mod::table4
private

Definition at line 233 of file fft.F90.

◆ table8

real(r8_kind), dimension(:), allocatable fft_mod::table8
private

Definition at line 232 of file fft.F90.

◆ table99

real, dimension(:), allocatable fft_mod::table99
private

Definition at line 234 of file fft.F90.