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 module~env_module env_module module~ply_fxt_module->module~env_module module~ply_fxt_header_module ply_fxt_header_module module~ply_fxt_module->module~ply_fxt_header_module fxt_fwrap fxt_fwrap module~ply_fxt_module->fxt_fwrap module~ply_fxt_header_module->module~env_module module~tem_aux_module tem_aux_module module~ply_fxt_header_module->module~tem_aux_module module~aotus_module aotus_module module~ply_fxt_header_module->module~aotus_module module~ply_nodes_header_module ply_nodes_header_module module~ply_fxt_header_module->module~ply_nodes_header_module module~tem_logging_module tem_logging_module module~ply_fxt_header_module->module~tem_logging_module module~aot_out_module aot_out_module module~ply_fxt_header_module->module~aot_out_module module~tem_float_module tem_float_module module~ply_fxt_header_module->module~tem_float_module module~ply_nodes_header_module->module~env_module

Used by

  • module~~ply_fxt_module~~UsedByGraph module~ply_fxt_module ply_fxt_module module~ply_poly_project_module ply_poly_project_module module~ply_poly_project_module->module~ply_fxt_module module~ply_oversample_module ply_oversample_module module~ply_oversample_module->module~ply_poly_project_module module~sdr_proto2treelm_module sdr_proto2treelm_module module~sdr_proto2treelm_module->module~ply_poly_project_module module~sdr_proto2treelm_module->module~ply_oversample_module program~seeder seeder program~seeder->module~sdr_proto2treelm_module

Contents


Derived Types

type, public :: ply_fxt_type

Components

TypeVisibilityAttributesNameInitial
type(fxtf_flptld_type), private :: flpt
real(kind=rk), private :: prec
integer, private :: ndims

Subroutines

public subroutine ply_init_fxt(fxt, header, degree)

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

Arguments

TypeIntentOptionalAttributesName
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

TypeIntentOptionalAttributesName
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

TypeIntentOptionalAttributesName
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

TypeIntentOptionalAttributesName
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

TypeIntentOptionalAttributesName
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

TypeIntentOptionalAttributesName
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

TypeIntentOptionalAttributesName
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