gridxc_interpolation Module


Contents


Variables

TypeVisibility AttributesNameInitial
integer, public, parameter:: dp =selected_real_kind(10, 100)

Interfaces

public interface generate_spline

  • private subroutine generate_spline_master(dat, x, y, n, dydx1, dydxn, d2ydx2, store, stat)

    Arguments

    Type IntentOptional AttributesName
    type(spline_t), intent(out) :: dat
    real(kind=dp), intent(in) :: x(n)
    real(kind=dp), intent(in) :: y(n)
    integer, intent(in) :: n
    real(kind=dp), intent(in), optional :: dydx1
    real(kind=dp), intent(in), optional :: dydxn
    real(kind=dp), intent(out), optional :: d2ydx2(n)
    logical, intent(in), optional :: store
    integer, intent(out), optional :: stat
  • private subroutine generate_spline_x(x, y, n, dydx1, dydxn, d2ydx2)

    Arguments

    Type IntentOptional AttributesName
    real(kind=dp), intent(in) :: x(n)
    real(kind=dp), intent(in) :: y(n)
    integer, intent(in) :: n
    real(kind=dp), intent(in) :: dydx1
    real(kind=dp), intent(in) :: dydxn
    real(kind=dp), intent(out) :: d2ydx2(n)
  • private subroutine generate_spline_dx(dx, y, n, dydx1, dydxn, d2ydx2)

    Arguments

    Type IntentOptional AttributesName
    real(kind=dp), intent(in) :: dx
    real(kind=dp), intent(in) :: y(n)
    integer, intent(in) :: n
    real(kind=dp), intent(in) :: dydx1
    real(kind=dp), intent(in) :: dydxn
    real(kind=dp), intent(out) :: d2ydx2(n)

public interface spline

  • private subroutine generate_spline_x(x, y, n, dydx1, dydxn, d2ydx2)

    Arguments

    Type IntentOptional AttributesName
    real(kind=dp), intent(in) :: x(n)
    real(kind=dp), intent(in) :: y(n)
    integer, intent(in) :: n
    real(kind=dp), intent(in) :: dydx1
    real(kind=dp), intent(in) :: dydxn
    real(kind=dp), intent(out) :: d2ydx2(n)
  • private subroutine generate_spline_dx(dx, y, n, dydx1, dydxn, d2ydx2)

    Arguments

    Type IntentOptional AttributesName
    real(kind=dp), intent(in) :: dx
    real(kind=dp), intent(in) :: y(n)
    integer, intent(in) :: n
    real(kind=dp), intent(in) :: dydx1
    real(kind=dp), intent(in) :: dydxn
    real(kind=dp), intent(out) :: d2ydx2(n)

public interface splint

  • private subroutine evaluate_spline_x(xi, yi, d2ydx2, n, x, y, dydx)

    Arguments

    Type IntentOptional AttributesName
    real(kind=dp), intent(in) :: xi(n)
    real(kind=dp), intent(in) :: yi(n)
    real(kind=dp), intent(in) :: d2ydx2(n)
    integer, intent(in) :: n
    real(kind=dp), intent(in) :: x
    real(kind=dp), intent(out) :: y
    real(kind=dp), intent(out), optional :: dydx
  • private subroutine evaluate_spline_dx(dx, yi, d2ydx2, n, x, y, dydx)

    Arguments

    Type IntentOptional AttributesName
    real(kind=dp), intent(in) :: dx
    real(kind=dp), intent(in) :: yi(n)
    real(kind=dp), intent(in) :: d2ydx2(n)
    integer, intent(in) :: n
    real(kind=dp), intent(in) :: x
    real(kind=dp), intent(out) :: y
    real(kind=dp), intent(out), optional :: dydx

Derived Types

type, public :: spline_t


Subroutines

public subroutine evaluate_spline(dat, x, y, dydx)

Arguments

Type IntentOptional AttributesName
type(spline_t), intent(in) :: dat
real(kind=dp), intent(in) :: x
real(kind=dp), intent(out) :: y
real(kind=dp), intent(out), optional :: dydx

public subroutine polint(xi, yi, n, x, y, dydx)

Arguments

Type IntentOptional AttributesName
real(kind=dp), intent(in) :: xi(*)
real(kind=dp), intent(in) :: yi(*)
integer, intent(in) :: n
real(kind=dp), intent(in) :: x
real(kind=dp), intent(out) :: y
real(kind=dp), intent(out) :: dydx

public subroutine clean_spline(dat)

Arguments

Type IntentOptional AttributesName
type(spline_t), intent(inout) :: dat