!&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
      Subroutine Bocov_oc(u,v,im,jm)
!     ******************************************************************
!     *                                                                *
!     *  Boundary Conditions for sqv on v Points on Octacon            *
!     *                                                                *
!     ******************************************************************
      implicit none
      integer,Parameter::nm=14
      integer::im,jm,lm,imp1,jmp1,im1,jm1,l
!-----------------------------------------------------------------------
       real,Dimension(0:im+1,0:jm+1,nm)::u,v
!-----------------------------------------------------------------------
        lm=im

        imp1=im
        jmp1=jm

        im1=im-1
        jm1=jm-1
!
! Domain 1
!
      Do l=1,lm
        u(l   ,0   , 1)=-u(imp1-l,1, 7)
        v(l   ,0   , 1)=-v(imp1-l,1, 7)
        u(l   ,jmp1, 1)=u(l     ,1, 3)
        v(l   ,jmp1, 1)=v(l     ,1, 3)
        u(0   ,l   , 1)=-v(l     ,1, 8)
        v(0   ,l   , 1)=u(l     ,1, 8)
        u(imp1,l   , 1)=v(imp1-l,1, 6)
        v(imp1,l   , 1)=-u(imp1-l,1, 6)
      End Do
        u(0   ,0   , 1)=0.
        v(0   ,0   , 1)=0.
        u(imp1,0   , 1)=0.
        v(imp1,0   , 1)=0.
        u(0   ,jmp1, 1)=u(im1,1, 2)
        v(0   ,jmp1, 1)=v(im1,1, 2)
        u(imp1,jmp1, 1)=u(1  ,1, 4)
        v(imp1,jmp1, 1)=v(1  ,1, 4)
!
! Domain 2
!
      Do l=1,lm
        u(l   ,0   , 2)=-v(im1,jmp1-l, 8)
        v(l   ,0   , 2)=u(im1,jmp1-l, 8)
        u(l   ,jmp1, 2)=v(im1,l     ,14)
        v(l   ,jmp1, 2)=-u(im1,l     ,14)
        u(0   ,l   , 2)=u(im1,l     ,11)
        v(0   ,l   , 2)=v(im1,l     ,11)
        u(imp1,l   , 2)=u(1  ,l     , 3)
        v(imp1,l   , 2)=v(1  ,l     , 3)
      End Do
        u(0   ,0   , 2)=0.
        v(0   ,0   , 2)=0.
        u(imp1,0   , 2)=u(1  ,jm1, 1)
        v(imp1,0   , 2)=v(1  ,jm1, 1)
        u(0   ,jmp1, 2)=0.
        v(0   ,jmp1, 2)=0.
        u(imp1,jmp1, 2)=u(1  ,1  , 5)
        v(imp1,jmp1, 2)=v(1  ,1  , 5)
!
! Domain 3
!
      Do l=1,lm
        u(l   ,0   , 3)=u(l  ,jm1, 1)
        v(l   ,0   , 3)=v(l  ,jm1, 1)
        u(l   ,jmp1, 3)=u(l  ,1  , 5)
        v(l   ,jmp1, 3)=v(l  ,1  , 5)
        u(0   ,l   , 3)=u(im1,l  , 2)
        v(0   ,l   , 3)=v(im1,l  , 2)
        u(imp1,l   , 3)=u(1  ,l  , 4)
        v(imp1,l   , 3)=v(1  ,l  , 4)
      End Do
        u(0   ,0   , 3)=-v(im1,1  , 8)
        v(0   ,0   , 3)=u(im1,1  , 8)
        u(imp1,0   , 3)=v(1  ,1  , 6)
        v(imp1,0   , 3)=-u(1  ,1  , 6)
        u(0   ,jmp1, 3)=v(im1,jm1,14)
        v(0   ,jmp1, 3)=-u(im1,jm1,14)
        u(imp1,jmp1, 3)=-v(1  ,jm1,12)
        v(imp1,jmp1, 3)=u(1  ,jm1,12)
!
! Domain 4
!
      Do l=1,lm
        u(l   ,0   , 4)=v(1  ,l     , 6)
        v(l   ,0   , 4)=-u(1  ,l     , 6)
        u(l   ,jmp1, 4)=-v(1  ,jmp1-l,12)
        v(l   ,jmp1, 4)=u(1  ,jmp1-l,12)
        u(0   ,l   , 4)=u(im1,l     , 3)
        v(0   ,l   , 4)=v(im1,l     , 3)
        u(imp1,l   , 4)=u(1  ,l     , 9)
        v(imp1,l   , 4)=v(1  ,l     , 9)
      End Do
        u(0   ,0   , 4)=u(im1,jm1, 1)
        v(0   ,0   , 4)=v(im1,jm1, 1)
        u(imp1,0   , 4)=0.
        v(imp1,0   , 4)=0.
        u(0   ,jmp1, 4)=u(im1,1  , 5)
        v(0   ,jmp1, 4)=v(im1,1  , 5)
        u(imp1,jmp1, 4)=0.
        v(imp1,jmp1, 4)=0.
!
! Domain 5
!
      Do l=1,lm
        u(l   ,0   , 5)=u(l     ,jm1, 3)
        v(l   ,0   , 5)=v(l     ,jm1, 3)
        u(l   ,jmp1, 5)=-u(imp1-l,jm1,13)
        v(l   ,jmp1, 5)=-v(imp1-l,jm1,13)
        u(0   ,l   , 5)=v(imp1-l,jm1,14)
        v(0   ,l   , 5)=-u(imp1-l,jm1,14)
        u(imp1,l   , 5)=-v(l     ,jm1,12)
        v(imp1,l   , 5)=u(l     ,jm1,12)
      End Do
        u(0   ,0   , 5)=u(im1,jm1, 2)
        v(0   ,0   , 5)=v(im1,jm1, 2)
        u(imp1,0   , 5)=u(1  ,jm1, 4)
        v(imp1,0   , 5)=v(1  ,jm1, 4)
        u(0   ,jmp1, 5)=0.
        v(0   ,jmp1, 5)=0.
        u(imp1,jmp1, 5)=0.
        v(imp1,jmp1, 5)=0.
!
! Domain 6
!
      Do l=1,lm
        u(l   ,0   , 6)=-v(im1,jmp1-l, 1)
        v(l   ,0   , 6)=u(im1,jmp1-l, 1)
        u(l   ,jmp1, 6)=u(l  ,1     , 9)
        v(l   ,jmp1, 6)=v(l  ,1     , 9)
        u(0   ,l   , 6)=-v(l  ,1     , 4)
        v(0   ,l   , 6)=u(l  ,1     , 4)
        u(imp1,l   , 6)=u(1  ,l     , 7)
        v(imp1,l   , 6)=v(1  ,l     , 7)
      End Do
        u(0   ,0   , 6)=-v(im1,1, 3)
        v(0   ,0   , 6)=u(im1,1, 3)
        u(imp1,0   , 6)=0.
        v(imp1,0   , 6)=0.
        u(0   ,jmp1, 6)=0.
        v(0   ,jmp1, 6)=0.
        u(imp1,jmp1, 6)=u(1  ,1,10)
        v(imp1,jmp1, 6)=v(1  ,1,10)
!
! Domain 7
!
      Do l=1,lm
        u(l   ,0   , 7)=-u(imp1-l,1, 1)
        v(l   ,0   , 7)=-v(imp1-l,1, 1)
        u(l   ,jmp1, 7)=u(l     ,1,10)
        v(l   ,jmp1, 7)=v(l     ,1,10)
        u(0   ,l   , 7)=u(im1   ,l, 6)
        v(0   ,l   , 7)=v(im1   ,l, 6)
        u(imp1,l   , 7)=u(1     ,l, 8)
        v(imp1,l   , 7)=v(1     ,l, 8)
      End Do
        u(0   ,0   , 7)=0.
        v(0   ,0   , 7)=0.
        u(imp1,0   , 7)=0.
        v(imp1,0   , 7)=0.
        u(0   ,jmp1, 7)=u(im1,1, 9)
        v(0   ,jmp1, 7)=v(im1,1, 9)
        u(imp1,jmp1, 7)=u(1  ,1,11)
        v(imp1,jmp1, 7)=v(1  ,1,11)
!
! Domain 8
!
      Do l=1,lm
        u(l   ,0   , 8)=-v(1     ,l, 1)
        v(l   ,0   , 8)=u(1     ,l, 1)
        u(l   ,jmp1, 8)=u(l     ,1,11)
        v(l   ,jmp1, 8)=v(l     ,1,11)
        u(0   ,l   , 8)=u(im1   ,l, 7)
        v(0   ,l   , 8)=v(im1   ,l, 7)
        u(imp1,l   , 8)=v(imp1-l,1, 2)
        v(imp1,l   , 8)=-u(imp1-l,1, 2)
      End Do
        u(0   ,0   , 8)=0
        v(0   ,0   , 8)=0
        u(imp1,0   , 8)=v(1  ,1, 3)
        v(imp1,0   , 8)=-u(1  ,1, 3)
        u(0   ,jmp1, 8)=u(im1,1,10)
        v(0   ,jmp1, 8)=v(im1,1,10)
        u(imp1,jmp1, 8)=0.
        v(imp1,jmp1, 8)=0.
!
! Domain 9
!
      Do l=1,lm
        u(l   ,0   , 9)=u(l  ,jm1, 6)
        v(l   ,0   , 9)=v(l  ,jm1, 6)
        u(l   ,jmp1, 9)=u(l  ,1  ,12)
        v(l   ,jmp1, 9)=v(l  ,1  ,12)
        u(0   ,l   , 9)=u(im1,l  , 4)
        v(0   ,l   , 9)=v(im1,l  , 4)
        u(imp1,l   , 9)=u(1  ,l  ,10)
        v(imp1,l   , 9)=v(1  ,l  ,10)
      End Do
        u(0   ,0   , 9)=0
        v(0   ,0   , 9)=0
        u(imp1,0   , 9)=u(1,jm1, 7)
        v(imp1,0   , 9)=v(1,jm1, 7)
        u(0   ,jmp1, 9)=0.
        v(0   ,jmp1, 9)=0.
        u(imp1,jmp1, 9)=u(1,1  ,13)
        v(imp1,jmp1, 9)=v(1,1  ,13)
!
! Domain 10
!
      Do l=1,lm
        u(l   ,0   ,10)=u(l  ,jm1, 7)
        v(l   ,0   ,10)=v(l  ,jm1, 7)
        u(l   ,jmp1,10)=u(l  ,1  ,13)
        v(l   ,jmp1,10)=v(l  ,1  ,13)
        u(0   ,l   ,10)=u(im1,l  , 9)
        v(0   ,l   ,10)=v(im1,l  , 9)
        u(imp1,l   ,10)=u(1  ,l  ,11)
        v(imp1,l   ,10)=v(1  ,l  ,11)
      End Do
        u(0   ,0   ,10)=u(im1,jm1, 6)
        v(0   ,0   ,10)=v(im1,jm1, 6)
        u(imp1,0   ,10)=u(1  ,jm1, 8)
        v(imp1,0   ,10)=v(1  ,jm1, 8)
        u(0   ,jmp1,10)=u(im1,1  ,12)
        v(0   ,jmp1,10)=v(im1,1  ,12)
        u(imp1,jmp1,10)=u(1  ,1  ,14)
        v(imp1,jmp1,10)=v(1  ,1  ,14)
!
! Domain 11
!
      Do l=1,lm
        u(l   ,0   ,11)=u(l  ,jm1, 8)
        v(l   ,0   ,11)=v(l  ,jm1, 8)
        u(l   ,jmp1,11)=u(l  ,1  ,14)
        v(l   ,jmp1,11)=v(l  ,1  ,14)
        u(0   ,l   ,11)=u(im1,l  ,10)
        v(0   ,l   ,11)=v(im1,l  ,10)
        u(imp1,l   ,11)=u(1  ,l  , 2)
        v(imp1,l   ,11)=v(1  ,l  , 2)
      End Do
        u(0   ,0   ,11)=u(im1,jm1, 7)
        v(0   ,0   ,11)=v(im1,jm1, 7)
        u(imp1,0   ,11)=0.
        v(imp1,0   ,11)=0.
        u(0   ,jmp1,11)=u(im1,1  ,13)
        v(0   ,jmp1,11)=v(im1,1  ,13)
        u(imp1,jmp1,11)=0.
        v(imp1,jmp1,11)=0.
!
! Domain 12
!
      Do l=1,lm
        u(l   ,0   ,12)=u(l  ,jm1, 9)
        v(l   ,0   ,12)=v(l  ,jm1, 9)
        u(l   ,jmp1,12)=v(im1,l  , 5)
        v(l   ,jmp1,12)=-u(im1,l  , 5)
        u(0   ,l   ,12)=v(imp1-l,jm1, 4)
        v(0   ,l   ,12)=-u(imp1-l,jm1, 4)
        u(imp1,l   ,12)=u(1  ,l  ,13)
        v(imp1,l   ,12)=v(1  ,l  ,13)
      End Do
        u(0   ,0   ,12)=0.
        v(0   ,0   ,12)=0.
        u(imp1,0   ,12)=u(1  ,jm1,10)
        v(imp1,0   ,12)=v(1  ,jm1,10)
        u(0   ,jmp1,12)=v(im1,im1, 3)
        v(0   ,jmp1,12)=-u(im1,im1, 3)
        u(imp1,jmp1,12)=0.
        v(imp1,jmp1,12)=0.
!
! Domain 13
!
      Do l=1,lm
        u(l   ,0   ,13)=u(l     ,jm1,10)
        v(l   ,0   ,13)=v(l     ,jm1,10)
        u(l   ,jmp1,13)=-u(imp1-l,jm1, 5)
        v(l   ,jmp1,13)=-v(imp1-l,jm1, 5)
        u(0   ,l   ,13)=u(im1   ,l  ,12)
        v(0   ,l   ,13)=v(im1   ,l  ,12)
        u(imp1,l   ,13)=u(1     ,l  ,14)
        v(imp1,l   ,13)=v(1     ,l  ,14)
      End Do
        u(0   ,0   ,13)=u(im1,jm1, 9)
        v(0   ,0   ,13)=v(im1,jm1, 9)
        u(imp1,0   ,13)=u(1  ,jm1,11)
        v(imp1,0   ,13)=v(1  ,jm1,11)
        u(0   ,jmp1,13)=0.
        v(0   ,jmp1,13)=0.
        u(imp1,jmp1,13)=0.
        v(imp1,jmp1,13)=0.
!
! Domain 14
!
      Do l=1,lm
        u(l   ,0   ,14)=u(l     ,jm1,11)
        v(l   ,0   ,14)=v(l     ,jm1,11)
        u(l   ,jmp1,14)=-v(1  ,jmp1-l, 5)
        v(l   ,jmp1,14)=u(1  ,jmp1-l, 5)
        u(0   ,l   ,14)=u(im1   ,l  ,13)
        v(0   ,l   ,14)=v(im1   ,l  ,13)
        u(imp1,l   ,14)=-v(l     ,jm1, 2)
        v(imp1,l   ,14)=u(l     ,jm1, 2)
      End Do
        u(0   ,0   ,14)=u(im1,jm1,10)
        v(0   ,0   ,14)=v(im1,jm1,10)
        u(imp1,0   ,14)=0.
        v(imp1,0   ,14)=0.
        u(0   ,jmp1,14)=0.
        v(0   ,jmp1,14)=0.
        u(imp1,jmp1,14)=u(1  ,jm1, 3)
        v(imp1,jmp1,14)=v(1  ,jm1, 3)
!-----------------------------------------------------------------------
                            Return
                            End
