ply_fxt_module Module

Fast polynomial transformation using the FXTPACK implementation of a fast multipole method.


Uses

  • module~~ply_fxt_module~~UsesGraph module~ply_fxt_module ply_fxt_module env_module env_module module~ply_fxt_module->env_module fxt_fwrap fxt_fwrap module~ply_fxt_module->fxt_fwrap module~ply_fxt_header_module ply_fxt_header_module module~ply_fxt_module->module~ply_fxt_header_module module~ply_fxt_header_module->env_module aot_out_module aot_out_module module~ply_fxt_header_module->aot_out_module aotus_module aotus_module module~ply_fxt_header_module->aotus_module module~ply_nodes_header_module ply_nodes_header_module module~ply_fxt_header_module->module~ply_nodes_header_module tem_aux_module tem_aux_module module~ply_fxt_header_module->tem_aux_module tem_float_module tem_float_module module~ply_fxt_header_module->tem_float_module tem_logging_module tem_logging_module module~ply_fxt_header_module->tem_logging_module module~ply_nodes_header_module->env_module

Derived Types

type, public ::  ply_fxt_type

Components

Type Visibility Attributes Name Initial
type(fxtf_flptld_type), public :: flpt
real(kind=rk), public :: prec
integer, public :: ndims

Subroutines

public subroutine ply_init_fxt(fxt, header, degree)

Initialize the flpt data structure for fast legendre polynomial transformation via the fxtpack.

Arguments

Type IntentOptional Attributes Name
type(ply_fxt_type), intent(out) :: fxt

Handle to the resulting fast polynomial table.

type(ply_fxt_header_type), intent(in) :: header
integer, intent(in) :: degree

Polynomial degree.

public subroutine ply_fxt_m2n_1D(fxt, modal_data, nodal_data)

Convert modal data to nodal data in 1D using flpt.

Read more…

Arguments

Type IntentOptional Attributes Name
type(ply_fxt_type) :: fxt

Description of the Fast Legendre Polynomial Transform

real(kind=rk), intent(inout), target :: modal_data(:)

Modal data

real(kind=rk), intent(inout), target :: nodal_data(:)

Nodal data

public subroutine ply_fxt_m2n_2D(fxt, modal_data, nodal_data, oversamp_degree)

Convert modal data to nodal data in 2D using flpt.

Arguments

Type IntentOptional Attributes Name
type(ply_fxt_type) :: fxt

Description of the Fast Legendre Polynomial Transform

real(kind=rk), intent(inout), target :: modal_data(:)

Modal data

real(kind=rk), intent(inout), target :: nodal_data(:)

Nodal data

integer, intent(in) :: oversamp_degree

public subroutine ply_fxt_m2n_3D(fxt, modal_data, nodal_data, oversamp_degree)

Convert modal data to nodal data in 3D using flpt.

Arguments

Type IntentOptional Attributes Name
type(ply_fxt_type) :: fxt

Description of the Fast Legendre Polynomial Transform

real(kind=rk), intent(inout), target :: modal_data(:)

Modal data

real(kind=rk), intent(inout), target :: nodal_data(:)

Nodal data

integer, intent(in) :: oversamp_degree

public subroutine ply_fxt_n2m_1D(fxt, nodal_data, modal_data)

Convert nodal data to modal data using flpt.

Read more…

Arguments

Type IntentOptional Attributes Name
type(ply_fxt_type) :: fxt

Description of the Fast Legendre Polynomial Transform

real(kind=rk), intent(inout), target :: nodal_data(:)

Nodal data

real(kind=rk), intent(inout), target :: modal_data(:)

Modal data

public subroutine ply_fxt_n2m_2D(fxt, nodal_data, modal_data, oversamp_degree)

Arguments

Type IntentOptional Attributes Name
type(ply_fxt_type) :: fxt

Description of the Fast Legendre Polynomial Transform

real(kind=rk), target :: nodal_data(:)

Nodal data

real(kind=rk), target :: modal_data(:)

Modal data

integer, intent(in) :: oversamp_degree

public subroutine ply_fxt_n2m_3D(fxt, nodal_data, modal_data, oversamp_degree)

Arguments

Type IntentOptional Attributes Name
type(ply_fxt_type) :: fxt

Description of the Fast Legendre Polynomial Transform

real(kind=rk), intent(inout), target :: nodal_data(:)

Nodal data

real(kind=rk), intent(inout), target :: modal_data(:)

Modal data

integer, intent(in) :: oversamp_degree