ply_legFpt_2D_module Module

Module providing datatypes and routines for a fast transformation of Legendre expansion to point values. \author{Jens Zudrop}


Uses

  • module~~ply_legfpt_2d_module~~UsesGraph module~ply_legfpt_2d_module ply_legFpt_2D_module env_module env_module module~ply_legfpt_2d_module->env_module iso_c_binding iso_c_binding module~ply_legfpt_2d_module->iso_c_binding module~fftw_wrap fftw_wrap module~ply_legfpt_2d_module->module~fftw_wrap module~ply_legfpt_module ply_legFpt_module module~ply_legfpt_2d_module->module~ply_legfpt_module module~fftw_wrap->iso_c_binding tem_aux_module tem_aux_module module~fftw_wrap->tem_aux_module tem_logging_module tem_logging_module module~fftw_wrap->tem_logging_module module~ply_legfpt_module->env_module module~ply_legfpt_module->iso_c_binding module~ply_legfpt_module->module~fftw_wrap module~ply_fpt_header_module ply_fpt_header_module module~ply_legfpt_module->module~ply_fpt_header_module module~ply_polybaseexc_module ply_polyBaseExc_module module~ply_legfpt_module->module~ply_polybaseexc_module tem_compileconf_module tem_compileconf_module module~ply_legfpt_module->tem_compileconf_module module~ply_fpt_header_module->env_module module~ply_fpt_header_module->tem_aux_module module~ply_fpt_header_module->tem_compileconf_module module~ply_fpt_header_module->tem_logging_module aot_out_module aot_out_module module~ply_fpt_header_module->aot_out_module aotus_module aotus_module module~ply_fpt_header_module->aotus_module module~ply_nodes_header_module ply_nodes_header_module module~ply_fpt_header_module->module~ply_nodes_header_module tem_float_module tem_float_module module~ply_fpt_header_module->tem_float_module tem_tools_module tem_tools_module module~ply_fpt_header_module->tem_tools_module module~ply_polybaseexc_module->env_module module~ply_polybaseexc_module->iso_c_binding module~ply_polybaseexc_module->module~fftw_wrap module~ply_polybaseexc_module->module~ply_fpt_header_module module~ply_polybaseexc_module->tem_logging_module module~ply_polybaseexc_module->tem_float_module tem_gamma_module tem_gamma_module module~ply_polybaseexc_module->tem_gamma_module tem_param_module tem_param_module module~ply_polybaseexc_module->tem_param_module module~ply_nodes_header_module->env_module

Used by

  • module~~ply_legfpt_2d_module~~UsedByGraph module~ply_legfpt_2d_module ply_legFpt_2D_module module~ply_poly_project_module ply_poly_project_module module~ply_poly_project_module->module~ply_legfpt_2d_module program~ply_fpt_ifpt_2d_multivar_lobattonodes_test ply_fpt_ifpt_2D_multiVar_lobattoNodes_test program~ply_fpt_ifpt_2d_multivar_lobattonodes_test->module~ply_legfpt_2d_module program~ply_fpt_ifpt_2d_multivar_test ply_fpt_ifpt_2D_multiVar_test program~ply_fpt_ifpt_2d_multivar_test->module~ply_legfpt_2d_module program~ply_fpt_ifpt_2d_singvar_lobattonodes_test ply_fpt_ifpt_2D_singVar_lobattoNodes_test program~ply_fpt_ifpt_2d_singvar_lobattonodes_test->module~ply_legfpt_2d_module program~ply_fpt_ifpt_2d_singvar_test ply_fpt_ifpt_2D_singVar_test program~ply_fpt_ifpt_2d_singvar_test->module~ply_legfpt_2d_module

Interfaces

public interface ply_legToPnt_2D

  • private subroutine ply_legToPnt_2D_singVar(fpt, legCoeffs, pntVal)

    Subroutine to transform Legendre expansion to point values at Chebyshev nodes.

    Arguments

    Type IntentOptional Attributes Name
    type(ply_legFpt_type), intent(inout) :: fpt

    The FPT parameters.

    real(kind=rk), intent(inout) :: legCoeffs(:)

    The Legendre coefficients to convert to point values (Chebyshev nodes). \attention Although this array serves as input only, it is modified inside of this routine by the underlying FPT algorithm. So, when this routine returns from its call the original values of pntVal will be modified.

    real(kind=rk), intent(inout) :: pntVal(:)

    The resulting point values (Chebyshev nodes).

  • private subroutine ply_legToPnt_2D_multVar(fpt, legCoeffs, pntVal, nVars)

    Subroutine to transform Legendre expansion to point values at Chebyshev nodes.

    Arguments

    Type IntentOptional Attributes Name
    type(ply_legFpt_type), intent(inout) :: fpt

    The FPT parameters.

    real(kind=rk), intent(inout) :: legCoeffs(:,:)

    The Legendre coefficients to convert to point values (Chebyshev nodes). \attention Although this array serves as input only, it is modified inside of this routine by the underlying FPT algorithm. So, when this routine returns from its call the original values of pntVal will be modified.

    real(kind=rk), intent(inout) :: pntVal(:,:)

    The resulting point values (Chebyshev nodes).

    integer, intent(in) :: nVars

    The number of scalar variables to transform.

public interface ply_pntToLeg_2D

  • private subroutine ply_pntToLeg_2D_singVar(fpt, pntVal, legCoeffs)

    Subroutine to transform Legendre expansion to point values at Chebyshev nodes.

    Arguments

    Type IntentOptional Attributes Name
    type(ply_legFpt_type), intent(inout) :: fpt

    Parameters of the Fast Polynomial transformation.

    real(kind=rk), intent(inout) :: pntVal(:)

    The point values to transform to 2D modal Legendre expansion. \attention Although this array serves as input only, it is modified inside of this routine by the underlying DCT algorithm. So, when this routine returns from its call the original values of pntVal will be modified.

    real(kind=rk), intent(inout) :: legCoeffs(:)

    The Legendre coefficients.

  • private subroutine ply_pntToLeg_2D_multVar(fpt, pntVal, legCoeffs, nVars)

    Subroutine to transform Legendre expansion to point values at Chebyshev nodes.

    Arguments

    Type IntentOptional Attributes Name
    type(ply_legFpt_type), intent(inout) :: fpt

    Parameters of the Fast Polynomial transformation.

    real(kind=rk), intent(inout) :: pntVal(:,:)

    The point values to transform to 2D modal Legendre expansion. \attention Although this array serves as input only, it is modified inside of this routine by the underlying DCT algorithm. So, when this routine returns from its call the original values of pntVal will be modified.

    real(kind=rk), intent(inout) :: legCoeffs(:,:)

    The Legendre coefficients.

    integer, intent(in) :: nVars

    The number of scalar variables to transform.


Subroutines

private subroutine ply_legToPnt_2D_singVar(fpt, legCoeffs, pntVal)

Subroutine to transform Legendre expansion to point values at Chebyshev nodes.

Arguments

Type IntentOptional Attributes Name
type(ply_legFpt_type), intent(inout) :: fpt

The FPT parameters.

real(kind=rk), intent(inout) :: legCoeffs(:)

The Legendre coefficients to convert to point values (Chebyshev nodes). \attention Although this array serves as input only, it is modified inside of this routine by the underlying FPT algorithm. So, when this routine returns from its call the original values of pntVal will be modified.

real(kind=rk), intent(inout) :: pntVal(:)

The resulting point values (Chebyshev nodes).

private subroutine ply_legToPnt_2D_multVar(fpt, legCoeffs, pntVal, nVars)

Subroutine to transform Legendre expansion to point values at Chebyshev nodes.

Arguments

Type IntentOptional Attributes Name
type(ply_legFpt_type), intent(inout) :: fpt

The FPT parameters.

real(kind=rk), intent(inout) :: legCoeffs(:,:)

The Legendre coefficients to convert to point values (Chebyshev nodes). \attention Although this array serves as input only, it is modified inside of this routine by the underlying FPT algorithm. So, when this routine returns from its call the original values of pntVal will be modified.

real(kind=rk), intent(inout) :: pntVal(:,:)

The resulting point values (Chebyshev nodes).

integer, intent(in) :: nVars

The number of scalar variables to transform.

private subroutine ply_pntToLeg_2D_singVar(fpt, pntVal, legCoeffs)

Subroutine to transform Legendre expansion to point values at Chebyshev nodes.

Arguments

Type IntentOptional Attributes Name
type(ply_legFpt_type), intent(inout) :: fpt

Parameters of the Fast Polynomial transformation.

real(kind=rk), intent(inout) :: pntVal(:)

The point values to transform to 2D modal Legendre expansion. \attention Although this array serves as input only, it is modified inside of this routine by the underlying DCT algorithm. So, when this routine returns from its call the original values of pntVal will be modified.

real(kind=rk), intent(inout) :: legCoeffs(:)

The Legendre coefficients.

private subroutine ply_pntToLeg_2D_multVar(fpt, pntVal, legCoeffs, nVars)

Subroutine to transform Legendre expansion to point values at Chebyshev nodes.

Arguments

Type IntentOptional Attributes Name
type(ply_legFpt_type), intent(inout) :: fpt

Parameters of the Fast Polynomial transformation.

real(kind=rk), intent(inout) :: pntVal(:,:)

The point values to transform to 2D modal Legendre expansion. \attention Although this array serves as input only, it is modified inside of this routine by the underlying DCT algorithm. So, when this routine returns from its call the original values of pntVal will be modified.

real(kind=rk), intent(inout) :: legCoeffs(:,:)

The Legendre coefficients.

integer, intent(in) :: nVars

The number of scalar variables to transform.