smoothness_indicators Derived Type

type, public, extends(base_object) :: smoothness_indicators

type~~smoothness_indicators~~InheritsGraph type~smoothness_indicators smoothness_indicators type~base_object base_object type~base_object->type~smoothness_indicators
Help


Abstract smoothness indicator object.

Inherited By

type~~smoothness_indicators~~InheritedByGraph type~smoothness_indicators smoothness_indicators type~interpolator interpolator type~smoothness_indicators->type~interpolator is type~interpolator_js interpolator_js type~smoothness_indicators->type~interpolator_js is type~smoothness_indicators_js smoothness_indicators_js type~smoothness_indicators->type~smoothness_indicators_js type~interpolator->type~interpolator_js
Help

Source Code


Components

TypeVisibility AttributesNameInitial
real(kind=R_P), public, allocatable:: si(:,:)

Smoothness indicators [1:2,0:S-1].


Type-Bound Procedures

procedure, public, pass(self) :: compute

Compute smoothness indicators.

  • private pure subroutine compute(self, S, stencil, f1, f2, ff)

    Compute smoothness indicators.

    Arguments

    Type IntentOptional AttributesName
    class(smoothness_indicators), intent(inout) :: self

    Smoothness indicators.

    integer(kind=I_P), intent(in) :: S

    Number of stencils 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.

procedure, public, nopass :: description

Return smoothness indicators string-description.

  • private pure function description() result(string)

    Return smoothness indicators string-description.

    Arguments

    None

    Return Value character(len=:), allocatable

    String-description.

procedure, public, pass(self) :: create

Createte smoothness indicators.

  • private pure subroutine create(self, constructor)

    Create smoothness indicators.

    Arguments

    Type IntentOptional AttributesName
    class(smoothness_indicators), intent(inout) :: self

    Smoothness indicators.

    class(base_object_constructor), intent(in) :: constructor

    Smoothness indicators constructor.

procedure, public, pass(self) :: destroy

Destroy smoothness indicators.

  • private elemental subroutine destroy(self)

    Destroy smoothness indicators.

    Arguments

    Type IntentOptional AttributesName
    class(smoothness_indicators), intent(inout) :: self

    Smoothness indicators.

Source Code

type, extends(base_object) :: smoothness_indicators
  !< Abstract smoothness indicator object.
  real(R_P), allocatable :: si(:,:) !< Smoothness indicators [1:2,0:S-1].
  contains
    ! deferred public methods
    procedure, pass(self) :: compute     !< Compute smoothness indicators.
    procedure, nopass     :: description !< Return smoothness indicators string-description.
    ! public methods
    procedure, pass(self) :: create  !< Createte smoothness indicators.
    procedure, pass(self) :: destroy !< Destroy smoothness indicators.
endtype smoothness_indicators