Henrick alpha coefficients object.
The provided WENO alpha coefficient implements the alpha coefficients defined in Mapped weighted essentially non-oscillatory schemes: Achieving optimal order near critical points, Andrew K. Henrick, Tariq D. Aslam, Joseph M. Powers, JCP, 2005, vol. 207, pp. 542-567, doi:10.1016/j.jcp.2005.01.023.
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
real(kind=R_P), | public, | allocatable | :: | alpha_coef(:,:) | Alpha coefficients [1:2,0:S-1] |
||
real(kind=R_P), | public, | allocatable | :: | alpha_tot(:) | Sum of alpha coefficients |
||
class(alpha_coefficients), | public, | allocatable | :: | alpha_base | Base alpha coefficients to be re-mapped. |
Compute alpha coefficients.
Compute alpha coefficients.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(alpha_coefficients_m), | intent(inout) | :: | self | Alpha coefficients. |
||
integer(kind=I_P), | intent(in) | :: | S | Number of stencils used. |
||
real(kind=R_P), | intent(in) | :: | weight_opt(1:2,0:S-1) | Optimal weight of the stencil. |
||
real(kind=R_P), | intent(in) | :: | IS(1:2,0:S-1) | Smoothness indicators of the stencils. |
||
real(kind=R_P), | intent(in) | :: | eps | Parameter for avoiding divided by zero. |
||
integer(kind=I_P), | intent(in) | :: | f1 | Faces to be computed. |
||
integer(kind=I_P), | intent(in) | :: | f2 | Faces to be computed. |
Return alpha coefficients string-description.
Return alpha coefficients string-descripition.
String-description.
Create alpha coefficients.
Create alpha coefficients.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(alpha_coefficients_m), | intent(inout) | :: | self | Alpha coefficients. |
||
class(base_object_constructor), | intent(in) | :: | constructor | Alpha coefficients constructor. |
Destroy alpha coefficients.
Destroy alpha coefficients.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(alpha_coefficients_m), | intent(inout) | :: | self | Alpha coefficients. |
type, extends(alpha_coefficients) :: alpha_coefficients_m
!< Henrick alpha coefficients object.
!<
!< @note The provided WENO alpha coefficient implements the alpha coefficients defined in *Mapped weighted essentially
!< non-oscillatory schemes: Achieving optimal order near critical points*, Andrew K. Henrick, Tariq D. Aslam, Joseph M. Powers,
!< JCP, 2005, vol. 207, pp. 542-567, doi:10.1016/j.jcp.2005.01.023.
class(alpha_coefficients), allocatable :: alpha_base !< Base alpha coefficients to be re-mapped.
contains
! deferred public methods
procedure, pass(self) :: compute !< Compute alpha coefficients.
procedure, nopass :: description !< Return alpha coefficients string-description.
! public methods
procedure, pass(self) :: create !< Create alpha coefficients.
procedure, pass(self) :: destroy !< Destroy alpha coefficients.
endtype alpha_coefficients_m