!
! program test
! use horiz_interp_mod
! implicit none
! integer, parameter :: nxi=177, nyi=91, nxo=133, nyo=77 ! resolution
! real :: zi(nxi,nyi), zo(nxo,nyo) ! data
! real :: xi(nxi+1), yi(nyi+1), xo(nxo+1), yo(nyo+1) ! grid edges
! real :: pi, tpi, hpi, dx, dy
!
! ! constants
! hpi = acos(0.0)
! pi = hpi*2.0
! tpi = hpi*4.0
!
! ! grid setup: west to east, south to north
! dx = tpi/real(nxi); call setaxis (0.,dx,xi); xi(nxi+1) = xi(1)+tpi
! dx = tpi/real(nxo); call setaxis (0.,dx,xo); xo(nxo+1) = xo(1)+tpi
! dy = pi/real(nyi); call setaxis (-hpi,dy,yi); yi(nyi+1) = hpi
! dy = pi/real(nyo); call setaxis (-hpi,dy,yo); yo(nyo+1) = hpi
!
! ! random data on the input grid
! call random_number (zi)
!
! ! interpolate (flipping y-axis)
! call horiz_interp (zi(:,1:nyi:+1), xi, yi(1:nyi+1:+1), xo, yo(1:nyo+1:+1), zo, verbose=2)
! call horiz_interp (zi(:,nyi:1:-1), xi, yi(nyi+1:1:-1), xo, yo(1:nyo+1:+1), zo, verbose=2)
! call horiz_interp (zi(:,nyi:1:-1), xi, yi(nyi+1:1:-1), xo, yo(nyo+1:1:-1), zo, verbose=2)
! call horiz_interp (zi(:,1:nyi:+1), xi, yi(1:nyi+1:+1), xo, yo(nyo+1:1:-1), zo, verbose=2)
!
! contains
! ! set up a sequence of numbers
! subroutine setaxis (xo,dx,x)
! real, intent(in) :: xo, dx
! real, intent(out) :: x(:)
! integer :: i
! x(1) = xo
! do i=2,size(x(:))
! x(i) = x(i-1)+dx
! enddo
! end subroutine setaxis
!
! end program test
!
!
!