statistical_measure_t Derived Type

type, public :: statistical_measure_t

Object to handle statistical measures This object will keep track of the statistical measures for a given set of points Procedures are available to access the measures


Components

Type Visibility Attributes Name Initial
integer(kind=i4), public, allocatable :: n_samples(:)

number of samples for each point

real(kind=dp), public, allocatable :: sum_values(:)

used to store the values of the measure

real(kind=dp), public, allocatable :: sum_values_squares(:)

used to store the squares of the values of the measure

real(kind=dp), public, allocatable :: sum_values_thirds(:)

used to store the cubes of the values of the measure

integer(kind=i4), public :: n_size

Number of points in the measure

integer(kind=i4), public :: max_n_samples = 0

Maximum number of samples for any point


Type-Bound Procedures

procedure, public :: init => statistical_measure_init

  • private subroutine statistical_measure_init(this, n_size)

    Arguments

    Type IntentOptional Attributes Name
    class(statistical_measure_t), intent(inout) :: this
    integer(kind=i4), intent(in) :: n_size

procedure, public :: add_point => statistical_measure_add_point

  • private subroutine statistical_measure_add_point(this, pos, value)

    Arguments

    Type IntentOptional Attributes Name
    class(statistical_measure_t), intent(inout) :: this
    integer(kind=i4), intent(in) :: pos
    real(kind=dp), intent(in) :: value

generic, public :: get_mean => statistical_measure_get_mean_pos, statistical_measure_get_mean_array

  • private function statistical_measure_get_mean_pos(this, pos, use_max) result(res)

    Arguments

    Type IntentOptional Attributes Name
    class(statistical_measure_t), intent(in) :: this
    integer(kind=i4), intent(in) :: pos
    logical, intent(in), optional :: use_max

    Return Value real(kind=dp)

  • private function statistical_measure_get_mean_array(this, use_max) result(res)

    Arguments

    Type IntentOptional Attributes Name
    class(statistical_measure_t), intent(in) :: this
    logical, intent(in), optional :: use_max

    Return Value real(kind=dp), allocatable, (:)

generic, public :: get_variance => statistical_measure_get_variance_pos, statistical_measure_get_variance_array

  • private function statistical_measure_get_variance_pos(this, pos, use_max) result(res)

    Arguments

    Type IntentOptional Attributes Name
    class(statistical_measure_t), intent(in) :: this
    integer(kind=i4), intent(in) :: pos
    logical, intent(in), optional :: use_max

    Return Value real(kind=dp)

  • private function statistical_measure_get_variance_array(this, use_max) result(res)

    Arguments

    Type IntentOptional Attributes Name
    class(statistical_measure_t), intent(in) :: this
    logical, intent(in), optional :: use_max

    Return Value real(kind=dp), allocatable, (:)

generic, public :: get_stddev => statistical_measure_get_stddev_pos, statistical_measure_get_stddev_array

  • private function statistical_measure_get_stddev_pos(this, pos, use_max) result(res)

    Arguments

    Type IntentOptional Attributes Name
    class(statistical_measure_t), intent(in) :: this
    integer(kind=i4), intent(in) :: pos
    logical, intent(in), optional :: use_max

    Return Value real(kind=dp)

  • private function statistical_measure_get_stddev_array(this, use_max) result(res)

    Arguments

    Type IntentOptional Attributes Name
    class(statistical_measure_t), intent(in) :: this
    logical, intent(in), optional :: use_max

    Return Value real(kind=dp), allocatable, (:)

generic, public :: get_skewness => statistical_measure_get_skewness_pos, statistical_measure_get_skewness_array

  • private function statistical_measure_get_skewness_pos(this, pos, use_max) result(res)

    Arguments

    Type IntentOptional Attributes Name
    class(statistical_measure_t), intent(in) :: this
    integer(kind=i4), intent(in) :: pos
    logical, intent(in), optional :: use_max

    Return Value real(kind=dp)

  • private function statistical_measure_get_skewness_array(this, use_max) result(res)

    Arguments

    Type IntentOptional Attributes Name
    class(statistical_measure_t), intent(in) :: this
    logical, intent(in), optional :: use_max

    Return Value real(kind=dp), allocatable, (:)