set_interpolator Subroutine

public subroutine set_interpolator(func, nquality)

Arguments

Type IntentOptional Attributes Name
public subroutine func(nquality, x, y, npts, r, val, debug)
Arguments
Type IntentOptional Attributes Name
integer, intent(in) :: nquality
real(kind=dp), intent(in) :: x(*)
real(kind=dp), intent(in) :: y(*)
integer, intent(in) :: npts
real(kind=dp), intent(in) :: r
real(kind=dp), intent(out) :: val
logical, intent(in) :: debug
integer, intent(in) :: nquality

Contents

Source Code


Source Code

subroutine set_interpolator(func,nquality)

! Parameter for interpolator's quality
! It might mean different things for different
! interpolators
integer, intent(in) :: nquality

! We should not need to repeat this...
interface
   subroutine func(nquality,x,y,npts,r,val,debug)

     integer, parameter :: dp = selected_real_kind(10,100)

     integer, intent(in)  :: nquality  ! Quality parameter
     real(dp), intent(in) :: x(*), y(*)
     integer, intent(in)  :: npts    ! Size of x, y arrays
     real(dp), intent(in) :: r
     real(dp), intent(out):: val
     logical, intent(in) :: debug
   end subroutine func
end interface

  interpolator => func
  nq = nquality

end subroutine set_interpolator