create Function

private function create(self, fft_rank, fft_type, precision, real_pencil, complex_pencil, r2r_kinds)

Uses

  • proc~~create~12~~UsesGraph proc~create~12 abstract_executor%create iso_fortran_env iso_fortran_env proc~create~12->iso_fortran_env

Creates FFT plan

Type Bound

abstract_executor

Arguments

Type IntentOptional Attributes Name
class(abstract_executor), intent(inout) :: self

FFT Executor

integer(kind=int8), intent(in) :: fft_rank

Rank of fft: 1 or 2

integer(kind=int8), intent(in) :: fft_type

Type of fft: r2r, r2c, c2c

type(dtfft_precision_t), intent(in) :: precision

Precision of fft: DTFFT_SINGLE or DTFFT_DOUBLE

type(pencil), intent(in), optional :: real_pencil

Real data layout

type(pencil), intent(in), optional :: complex_pencil

Complex data layout

type(dtfft_r2r_kind_t), intent(in), optional :: r2r_kinds(:)

Kinds of r2r transform

Return Value integer(kind=int32)


Calls

proc~~create~12~~CallsGraph proc~create~12 abstract_executor%create create_private create_private proc~create~12->create_private interface~to_str to_str proc~create~12->interface~to_str is_null_ptr is_null_ptr proc~create~12->is_null_ptr mpi_abort mpi_abort proc~create~12->mpi_abort proc~pop_nvtx_domain_range pop_nvtx_domain_range proc~create~12->proc~pop_nvtx_domain_range proc~push_nvtx_domain_range push_nvtx_domain_range proc~create~12->proc~push_nvtx_domain_range proc~write_message write_message proc~create~12->proc~write_message proc~double_to_string double_to_string interface~to_str->proc~double_to_string proc~float_to_string float_to_string interface~to_str->proc~float_to_string proc~int32_to_string int32_to_string interface~to_str->proc~int32_to_string proc~int64_to_string int64_to_string interface~to_str->proc~int64_to_string proc~int8_to_string int8_to_string interface~to_str->proc~int8_to_string interface~nvtxdomainrangepop_c nvtxDomainRangePop_c proc~pop_nvtx_domain_range->interface~nvtxdomainrangepop_c interface~nvtxdomainrangepushex_c nvtxDomainRangePushEx_c proc~push_nvtx_domain_range->interface~nvtxdomainrangepushex_c proc~astring_f2c astring_f2c proc~push_nvtx_domain_range->proc~astring_f2c proc~create_nvtx_domain create_nvtx_domain proc~push_nvtx_domain_range->proc~create_nvtx_domain mpi_comm_rank mpi_comm_rank proc~write_message->mpi_comm_rank mpi_finalized mpi_finalized proc~write_message->mpi_finalized proc~string_f2c string_f2c proc~astring_f2c->proc~string_f2c proc~create_nvtx_domain->proc~astring_f2c interface~nvtxdomaincreate_c nvtxDomainCreate_c proc~create_nvtx_domain->interface~nvtxdomaincreate_c