This module provides functions to transfer polynomials from and to the oversampled representation for nodal treatments.
Copy a single element state into a larger array and pad it with zeroes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
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). |
Truncating an oversampled polynomial representation back to the original representation.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in) | :: | modalCoeffs(:,:) | Oversampled modal array for one element |
||
type(ply_poly_project_type), | intent(in) | :: | poly_proj | Data of the projection method |
||
integer, | intent(in) | :: | nDim | The number of dimensions to determine the correct oversampling routine. |
||
real(kind=rk), | intent(out) | :: | state(:,:) | Truncated state for one element obtained from the modalCoeffs |
||
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. |
Copy a single element state into a larger array and pad it with zeroes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
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. |
||
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. |
||
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). |
Truncating an oversampled polynomial representation back to the original representation.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in) | :: | modalCoeffs(:,:) | Oversampled modal array for one element |
||
type(ply_poly_project_type), | intent(in) | :: | poly_proj | Data of the projection method |
||
real(kind=rk), | intent(out) | :: | state(:,:) | Truncated state for one element obtained from the modalCoeffs |
Copy a single 2D element state into a larger array and pad it with zeroes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
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. |
||
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). |
Truncating an oversampled 2D polynomial representation back to the original representation.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in) | :: | modalCoeffs(:,:) | Oversampled modal array for one element |
||
type(ply_poly_project_type), | intent(in) | :: | poly_proj | Data of the projection method |
||
real(kind=rk), | intent(out) | :: | state(:,:) | Truncated state for one element obtained from the modalCoeffs |
||
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. |
Copy a single 1D element state into a larger array and pad it with zeroes.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
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. |
||
real(kind=rk), | intent(inout) | :: | modalCoeffs(:,:) | Oversampled array for modal coefficients from state. |
||
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). |
Truncating an oversampled 1D polynomial representation back to the original representation.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in) | :: | modalCoeffs(:,:) | Oversampled modal array for one element |
||
type(ply_poly_project_type), | intent(in) | :: | poly_proj | Data of the projection method |
||
real(kind=rk), | intent(out) | :: | state(:,:) | Truncated state for one element obtained from the modalCoeffs |
||
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. |