ply_convert2oversample Subroutine

public subroutine ply_convert2oversample(state, poly_proj, nDim, modalCoeffs, nScalars, ensure_positivity)

Copy a single element state into a larger array and pad it with zeroes.

The additional modes might be necessary for proper dealing with nonlinear operations. Please note, that the oversampled representation is always a Q-Space polynomial.


real(kind=rk), intent(in) :: state(:,:)

State in a single element, to be oversampled.

type(ply_poly_project_type), intent(in) :: poly_proj

Description of the projection method.

integer, intent(in) :: nDim

The number of dimensions to determine the correct oversampling routine.

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

Oversampled array for modal coefficients from state.

These are always Q-Polynomial representations, as projections only work with those.

integer, intent(in), optional :: nScalars

The number of scalar variables to convert. If nScalars is not passed to this subroutine, all variables of argument state will be considered by this routine.

logical, intent(in), optional :: ensure_positivity(:)

Only use modes up to the point, where we are sure that the resulting polynomial will be positive everywhere. This is an array of logicals for each variable, if not given, the default is false (no positivity ensured).


proc~~ply_convert2oversample~~CallsGraph proc~ply_convert2oversample ply_convert2oversample proc~ply_convert2oversample_2d ply_convert2oversample_2d proc~ply_convert2oversample->proc~ply_convert2oversample_2d proc~ply_convert2oversample_1d ply_convert2oversample_1d proc~ply_convert2oversample->proc~ply_convert2oversample_1d proc~ply_convert2oversample_3d ply_convert2oversample_3d proc~ply_convert2oversample->proc~ply_convert2oversample_3d