      subroutine bic1nu (wina, woua,faclama,facphia,
     *                   winb, woub,faclamb,facphib,
     *                            rlatitude, rlongitude,ja,jb)


c
c
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
c                       #     # ######   #####   #####
c                       #     # #     # #     # #     #
c                       #     # #     # #       #
c                       ####### ######  #       #
c                       #     # #       #       #
c                       #     # #       #     # #     #
c                       #     # #        #####   #####
c                       
c                          #######  #####   #####
c                          #       #     # #     #
c                          #       #       #
c                          #####    #####   #####
c                          #             #       #
c                          #       #     # #     #
c                          #######  #####   #####
c                       
c                          ######     #     #####
c                          #     #   # #   #     #
c                          #     #  #   #  #     #
c                          #     # #     # #     #
c                          #     # ####### #     #
c                          #     # #     # #     #
c                          ######  #     #  #####
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
c	Jose Zero NASA GSFC DAO -- zero@talisman.gsfc.nasa.gov
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
c Purpose:     c
c  Uses a bicubic scheme to interpolate the field win to the point
c  (rlatitude,rlongitude) and puts the interpolated value in wout.
c  on a c-grid, faclam and facphi must be set as follows depending on
c  whether the points being used are the u v or fi points.
c  u points: faclam = 0.5; facphi = 1.0
c  v points: faclam = 1.0; facphi = 0.5
c  h points: faclam = 1.0; facphi = 1.0
c
c
      include "slgcm.slgprm"
c
c wina and win b are the two fields on a regular grid
c
      real   wina(imp3,jmp3)
      real   winb(imp3,jmp3)
c
c Rlatitude and rlongitude are the coordinates of the points
c to which the fields wina and winb are to be interpolated
c
      real   rlatitude(imp3,jm  )
      real   rlongitude(imp3,jm  )
c
c woua and woub are the interpolated values
c
c
      real   woua(imp3,jm  )
      real   woub(imp3,jm  )
c
c facdlma facdlmv are the distance in radias from the dateline to the
c first row of points in the longitude direction, dlm is 2*pi/im
c
      facdlma = (2.-faclama)*dlm
      facdlmb = (2.-faclamb)*dlm

c
c
c the quntities ijb and ije are still needed because this subroutine 
c wraps the fields and the wrap subroutine is still in one dimension.
c in the future wrapping should be taken out of here and put into slgcst2d
c for clarity. j0 
c
      jl  = jb - ja + 1
      ijl = imp3*jl
      ija = (ja-1)*imp3
      ijb = ija + 1
      ije = ija + ijl
      r=one/twopi
c the procedure is the same as in the routine bill
      do j=ja, jb
      do i=1,imp3
           temx = (rlongitude(i,j)-facdlma)*r   
           ii =  temx
	   if(temx.lt.0.) ii=ii-1
	   temx=(temx-ii)*im+two
           ii=temx
           temx=temx-ii
           if(ii.eq.1)ii=imp1
           temy   = (rlatitude(i,j) + pio2)*rdph + facphia
             jj   = temy
           temy   = temy - jj
      	call  cubit( temx,temy,
     .                wina(ii  ,jj+2  ),wina(ii,jj+3  ),
     .                wina(ii  ,jj+1  ),wina(ii,jj+4  ),
     .                wina(ii+1,jj+2  ),wina(ii+1,jj+3),
     .                wina(ii+1,jj+1  ),wina(ii+1,jj+4),
     .                wina(ii-1,jj+2  ),wina(ii-1,jj+3),
     .                wina(ii-1,jj+1  ),wina(ii-1,jj+4),
     .                wina(ii+2,jj+2  ),wina(ii+2,jj+3),
     .                wina(ii+2,jj+1  ),wina(ii+2,jj+4), woua(i,j))



           temx = (rlongitude(i,j)-facdlmb)*r   
           ii =  temx
	   if(temx.lt.0.) ii=ii-1
	   temx=(temx-ii)*im+two
           ii=temx
           temx=temx-ii
           if(ii.eq.1)ii=imp1
           temy   = (rlatitude(i,j) + pio2)*rdph + facphib
             jj   = temy
           temy   = temy - jj
      	call  cubit( temx,temy,
     .                winb(ii  ,jj+2  ),winb(ii,jj+3  ),
     .                winb(ii  ,jj+1  ),winb(ii,jj+4  ),
     .                winb(ii+1,jj+2  ),winb(ii+1,jj+3),
     .                winb(ii+1,jj+1  ),winb(ii+1,jj+4),
     .                winb(ii-1,jj+2  ),winb(ii-1,jj+3),
     .                winb(ii-1,jj+1  ),winb(ii-1,jj+4),
     .                winb(ii+2,jj+2  ),winb(ii+2,jj+3),
     .                winb(ii+2,jj+1  ),winb(ii+2,jj+4), woub(i,j))

       enddo
       enddo
      call wrap(ijb,ije,woua)
      call wrap(ijb,ije,woub)
      return
      end
