NAFPack_Fourier_Transform Module


Uses

  • module~~nafpack_fourier_transform~~UsesGraph module~nafpack_fourier_transform NAFPack_Fourier_Transform module~nafpack_constant NAFPack_constant module~nafpack_fourier_transform->module~nafpack_constant module~nafpack_implementation_type NAFPack_implementation_type module~nafpack_fourier_transform->module~nafpack_implementation_type module~nafpack_kinds NAFPack_kinds module~nafpack_fourier_transform->module~nafpack_kinds module~nafpack_loop_method NAFPack_loop_method module~nafpack_fourier_transform->module~nafpack_loop_method module~nafpack_math_utils NAFPack_math_utils module~nafpack_fourier_transform->module~nafpack_math_utils module~nafpack_constant->module~nafpack_kinds module~nafpack_implementation_type->module~nafpack_kinds iso_fortran_env iso_fortran_env module~nafpack_kinds->iso_fortran_env module~nafpack_math_utils->module~nafpack_kinds

Used by

  • module~~nafpack_fourier_transform~~UsedByGraph module~nafpack_fourier_transform NAFPack_Fourier_Transform module~nafpack_fourier_transform_dft NAFPack_Fourier_Transform_dft module~nafpack_fourier_transform_dft->module~nafpack_fourier_transform module~nafpack_fourier_transform_dft2 NAFPack_Fourier_Transform_dft2 module~nafpack_fourier_transform_dft2->module~nafpack_fourier_transform module~nafpack_fourier_transform_dft3 NAFPack_Fourier_Transform_dft3 module~nafpack_fourier_transform_dft3->module~nafpack_fourier_transform module~nafpack_fourier_transform_fft NAFPack_Fourier_Transform_fft module~nafpack_fourier_transform_fft->module~nafpack_fourier_transform module~nafpack_fourier_transform_dft_compute NAFPack_Fourier_Transform_dft_compute module~nafpack_fourier_transform_dft_compute->module~nafpack_fourier_transform_dft module~nafpack_fourier_transform_fft_compute_mixed_radix NAFPack_Fourier_Transform_fft_compute_mixed_radix module~nafpack_fourier_transform_fft_compute_mixed_radix->module~nafpack_fourier_transform_fft module~nafpack_fourier_transform_fft_compute_radix2 NAFPack_Fourier_Transform_fft_compute_radix2 module~nafpack_fourier_transform_fft_compute_radix2->module~nafpack_fourier_transform_fft module~nafpack_fourier_transform_fft_compute_split_radix NAFPack_Fourier_Transform_fft_compute_split_radix module~nafpack_fourier_transform_fft_compute_split_radix->module~nafpack_fourier_transform_fft

Variables

Type Visibility Attributes Name Initial
type(DecimationMethod), public, parameter :: DIT = DecimationMethod(1, "DIT")
type(DecimationMethod), public, parameter :: DIF = DecimationMethod(2, "DIF")
type(FFTAlgorithm), public, parameter :: ALG_AUTO = FFTAlgorithm(0, "Auto", DIT)
type(FFTAlgorithm), public, parameter :: ALG_RADIX2_DIT = FFTAlgorithm(1, "Radix-2 DIT", DIT)
type(FFTAlgorithm), public, parameter :: ALG_RADIX2_DIF = FFTAlgorithm(2, "Radix-2 DIF", DIF)
type(FFTAlgorithm), public, parameter :: ALG_MIXED_DIT = FFTAlgorithm(3, "Mixed Radix DIT", DIT)
type(FFTAlgorithm), public, parameter :: ALG_MIXED_DIF = FFTAlgorithm(4, "Mixed Radix DIF", DIF)
type(FFTAlgorithm), public, parameter :: ALG_SPLIT_DIT = FFTAlgorithm(5, "Split Radix DIT", DIT)
type(FFTAlgorithm), public, parameter :: ALG_SPLIT_DIF = FFTAlgorithm(6, "Split Radix DIF", DIF)

Interfaces

public interface dft

  • private interface dft_cmplx_sp()

    Arguments

    None
  • private interface dft_cmplx_dp()

    Arguments

    None
  • private interface dft_cmplx_qp()

    Arguments

    None
  • private interface dft_real_sp()

    Arguments

    None
  • private interface dft_real_dp()

    Arguments

    None
  • private interface dft_real_qp()

    Arguments

    None

public interface idft

  • private interface idft_cmplx_sp()

    Arguments

    None
  • private interface idft_cmplx_dp()

    Arguments

    None
  • private interface idft_cmplx_qp()

    Arguments

    None
  • private interface idft_real_sp()

    Arguments

    None
  • private interface idft_real_dp()

    Arguments

    None
  • private interface idft_real_qp()

    Arguments

    None

public interface dft2

  • private interface dft2_cmplx_sp()

    Arguments

    None
  • private interface dft2_cmplx_dp()

    Arguments

    None
  • private interface dft2_cmplx_qp()

    Arguments

    None
  • private interface dft2_real_sp()

    Arguments

    None
  • private interface dft2_real_dp()

    Arguments

    None
  • private interface dft2_real_qp()

    Arguments

    None

public interface idft2

  • private interface idft2_cmplx_sp()

    Arguments

    None
  • private interface idft2_cmplx_dp()

    Arguments

    None
  • private interface idft2_cmplx_qp()

    Arguments

    None
  • private interface idft2_real_sp()

    Arguments

    None
  • private interface idft2_real_dp()

    Arguments

    None
  • private interface idft2_real_qp()

    Arguments

    None

public interface dft3

  • private interface dft3_cmplx_sp()

    Arguments

    None
  • private interface dft3_cmplx_dp()

    Arguments

    None
  • private interface dft3_cmplx_qp()

    Arguments

    None
  • private interface dft3_real_sp()

    Arguments

    None
  • private interface dft3_real_dp()

    Arguments

    None
  • private interface dft3_real_qp()

    Arguments

    None

public interface idft3

  • private interface idft3_cmplx_sp()

    Arguments

    None
  • private interface idft3_cmplx_dp()

    Arguments

    None
  • private interface idft3_cmplx_qp()

    Arguments

    None
  • private interface idft3_real_sp()

    Arguments

    None
  • private interface idft3_real_dp()

    Arguments

    None
  • private interface idft3_real_qp()

    Arguments

    None

Derived Types

type, public ::  DecimationMethod

Components

Type Visibility Attributes Name Initial
integer(kind=isp), public :: id
character(len=20), public :: name

type, public ::  FFTAlgorithm

Components

Type Visibility Attributes Name Initial
integer(kind=isp), public :: id
character(len=20), public :: name
type(DecimationMethod), public :: decimation_method

type, public ::  Fourier_Transform

Components

Type Visibility Attributes Name Initial
type(FFTPlan), public :: fft_plan

Type-Bound Procedures

generic, public :: dft => dft_cmplx_sp, dft_cmplx_dp, dft_cmplx_qp
generic, public :: dft => dft_real_sp, dft_real_dp, dft_real_qp
generic, public :: dft => dft2_cmplx_sp, dft2_cmplx_dp, dft2_cmplx_qp
generic, public :: dft => dft2_real_sp, dft2_real_dp, dft2_real_qp
generic, public :: dft => dft3_cmplx_sp, dft3_cmplx_dp, dft3_cmplx_qp
generic, public :: dft => dft3_real_sp, dft3_real_dp, dft3_real_qp
generic, public :: idft => idft_cmplx_sp, idft_cmplx_dp, idft_cmplx_qp
generic, public :: idft => idft_real_sp, idft_real_dp, idft_real_qp
generic, public :: idft => idft2_cmplx_sp, idft2_cmplx_dp, idft2_cmplx_qp
generic, public :: idft => idft2_real_sp, idft2_real_dp, idft2_real_qp
generic, public :: idft => idft3_cmplx_sp, idft3_cmplx_dp, idft3_cmplx_qp
generic, public :: idft => idft3_real_sp, idft3_real_dp, idft3_real_qp
generic, public :: init_fft_plan => init_fft_plan_sp
generic, public :: fft => fft_cmplx_sp
generic, public :: destroy_fft_plan => destroy_fft_plan_sp