ply_fpt_header_define Subroutine

public subroutine ply_fpt_header_define(me, blocksize, factor, approx_terms, implementation, striplen, subBlockingWidth, adapt_factor_pow2, lobattoPoints)

Define settings for the Fast Polynomial Transformation.


type(ply_fpt_header_type), intent(out) :: me

FPT header to hold the defined settings.

integer, intent(in), optional :: blocksize

Blocksize to use in approximation algorithm. Defaults to ply_fpt_default_blocksize.

real(kind=rk), intent(in), optional :: factor

Oversampling factor to use.

This can be used to reduce aliasing when projecting functions that will be truncated in the polynomial series expansion. Default is a factor of 1, so no oversampling.

integer, intent(in), optional :: approx_terms

Number of approximation terms to use for the representation of the blocks in the Legendre to Chebyshev transformation algorithm. Defaults to ply_fpt_default_approx_terms.

integer, intent(in), optional :: implementation

Implementation to use in the computation.

Select the implementation variant to use. Either scalar (ply_fpt_scalar) or vectorized (ply_fpt_vector). Default is ply_fpt_scalar.

integer, intent(in), optional :: striplen

Length of strips to use in the transformation implementation. Defaults to vlen.

integer, intent(in), optional :: subBlockingWidth

Width for subblocks in unrolling the approximate Legendre to Chebyshev transformation. Defaults to ply_fpt_default_subblockingWidth.

logical, intent(in), optional :: adapt_factor_pow2

Adapt the oversampling factor such, that oversampled space has a number of degrees of freedoms in one direction that is a power of 2. Default is .false..

logical, intent(in), optional :: lobattoPoints

Wether to use Chebyshev-Lobatto points (include boundary points) or not. Defaults to .false..


proc~~ply_fpt_header_define~~CallsGraph proc~ply_fpt_header_define ply_fpt_header_define proc~tem_abort tem_abort proc~ply_fpt_header_define->proc~tem_abort