Interfaces

public interface gauss_legendre

Computes Gauss-Legendre quadrature nodes and weights.

• private pure module subroutine gauss_legendre_fp64(x, w, interval)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(out) :: x(:)
real(kind=dp), intent(out) :: w(:)
real(kind=dp), intent(in), optional :: interval(2)

public interface gauss_legendre_lobatto

Computes Gauss-Legendre-Lobatto quadrature nodes and weights.

• private pure module subroutine gauss_legendre_lobatto_fp64(x, w, interval)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(out) :: x(:)
real(kind=dp), intent(out) :: w(:)
real(kind=dp), intent(in), optional :: interval(2)

public interface simps

Integrates sampled values using Simpson's rule (Specification)

• private pure recursive module function simps_dx_dp(y, dx, even) result(integral)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in), dimension(:) :: y
real(kind=dp), intent(in) :: dx
integer, intent(in), optional :: even

• private pure recursive module function simps_dx_sp(y, dx, even) result(integral)

Arguments

Type IntentOptional Attributes Name
real(kind=sp), intent(in), dimension(:) :: y
real(kind=sp), intent(in) :: dx
integer, intent(in), optional :: even

• private recursive module function simps_x_dp(y, x, even) result(integral)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in), dimension(:) :: y
real(kind=dp), intent(in), dimension(:) :: x
integer, intent(in), optional :: even

• private recursive module function simps_x_sp(y, x, even) result(integral)

Arguments

Type IntentOptional Attributes Name
real(kind=sp), intent(in), dimension(:) :: y
real(kind=sp), intent(in), dimension(:) :: x
integer, intent(in), optional :: even

public interface simps_weights

Integrates sampled values using trapezoidal rule weights for given abscissas (Specification)

• private pure recursive module function simps_weights_dp(x, even) result(w)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in), dimension(:) :: x
integer, intent(in), optional :: even

• private pure recursive module function simps_weights_sp(x, even) result(w)

Arguments

Type IntentOptional Attributes Name
real(kind=sp), intent(in), dimension(:) :: x
integer, intent(in), optional :: even

public interface trapz

Integrates sampled values using trapezoidal rule (Specification)

• private pure module function trapz_dx_dp(y, dx) result(integral)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in), dimension(:) :: y
real(kind=dp), intent(in) :: dx

• private pure module function trapz_dx_sp(y, dx) result(integral)

Arguments

Type IntentOptional Attributes Name
real(kind=sp), intent(in), dimension(:) :: y
real(kind=sp), intent(in) :: dx

• private module function trapz_x_dp(y, x) result(integral)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in), dimension(:) :: y
real(kind=dp), intent(in), dimension(:) :: x

• private module function trapz_x_sp(y, x) result(integral)

Arguments

Type IntentOptional Attributes Name
real(kind=sp), intent(in), dimension(:) :: y
real(kind=sp), intent(in), dimension(:) :: x

public interface trapz_weights

Integrates sampled values using trapezoidal rule weights for given abscissas (Specification)

• private pure module function trapz_weights_dp(x) result(w)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in), dimension(:) :: x

• private pure module function trapz_weights_sp(x) result(w)

Arguments

Type IntentOptional Attributes Name
real(kind=sp), intent(in), dimension(:) :: x