Jiang-Shu and Gerolymos-Senechal-Vallet smoothness indicators object.
The provided WENO optimal weights implements the smoothness indicators defined in Efficient Implementation of Weighted ENO Schemes, Guang-Shan Jiang, Chi-Wang Shu, JCP, 1996, vol. 126, pp. 202–228, doi:10.1006/jcph.1996.0130 and Very-high-order weno schemes, G. A. Gerolymos, D. Senechal, I. Vallet, JCP, 2009, vol. 228, pp. 8481-8524, doi:10.1016/j.jcp.2009.07.039
Jiang-Shu and Gerolymos-Senechal-Vallet smoothness indicators object constructor.
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
integer(kind=I_P), | public | :: | S | = | 0 | Stencils dimension. |
Jiang-Shu and Gerolymos-Senechal-Vallet smoothness indicators object.
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
real(kind=R_P), | public, | allocatable | :: | si(:,:) | Smoothness indicators [1:2,0:S-1]. |
||
real(kind=R_P), | private, | allocatable | :: | coef(:,:,:) | Smoothness indicators coefficients [1:2,0:S-1,0:S-1]. |
procedure, public, pass(self) :: compute | Compute smoothness indicators. |
procedure, public, nopass :: description | Return smoothness indicators string-description. |
procedure, public, pass(self) :: create | Create smoothness indicators. |
procedure, public, pass(self) :: destroy | Destroy smoothness indicators. |
Return smoothness indicators string-description.
String-description.
Create smoothness indicators constructor.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=I_P), | intent(in) | :: | S | Stencils dimension. |
||
class(smoothness_indicators_constructor), | intent(out), | allocatable | :: | constructor | Smoothness indicators constructor. |
Compute smoothness indicators.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(smoothness_indicators_js), | intent(inout) | :: | self | Smoothness indicator. |
||
integer(kind=I_P), | intent(in) | :: | S | Number of stencils actually used. |
||
real(kind=R_P), | intent(in) | :: | stencil(1:,1-S:) | Stencil used for the interpolation, [1:2, 1-S:-1+S]. |
||
integer(kind=I_P), | intent(in) | :: | f1 | Faces to be computed. |
||
integer(kind=I_P), | intent(in) | :: | f2 | Faces to be computed. |
||
integer(kind=I_P), | intent(in) | :: | ff | Faces to be computed. |
Create smoothness indicators.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(smoothness_indicators_js), | intent(inout) | :: | self | Smoothness indicators. |
||
class(base_object_constructor), | intent(in) | :: | constructor | Smoothness indicators constructor. |
Destroy smoothness indicators.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(smoothness_indicators_js), | intent(inout) | :: | self | Smoothenss indicators. |