      Subroutine  Mesh(V,xloc,yloc,dnax,dnay,dnbx,dnby,lmax,mx,my)
      Implicit none
      Integer mx,my,lmax
      Real V(lmax,mx+1,my+1)
      Real xloc(mx,my+1),yloc(mx,my+1)
      Real dnax(mx,my+1),dnay(mx,my+1)
      Real dnbx(mx,my+1),dnby(mx,my+1)
      Integer i,j

!HPF$ PROCESSORS PROC(NUMBER_OF_PROCESSORS())
!HPF$ DISTRIBUTE V *(*,*,BLOCK) onto *PROC
!HPF$ ALIGN (*,:) with *V(*,*,:) :: xloc,yloc,dnax,dnay,dnbx,dnby

      open(unit=3,file='ft03.dat',status='old')
		dnax=0.0
	    dnay=0.0
		dnbx=0.0
		dnby=0.0
                xloc=0.0
                yloc=0.0
      Do i=1,mx
         Do j=1,my
            read(3,*) xloc(i,j),yloc(i,j)
         End Do
      End Do
!____________DEBUGGER MESH___________________________________
!	Forall(i=1:mx,j=1:my) xloc(i,j)=0.053125*real(i-1)  
!	Forall(i=1:mx,j=1:my) yloc(i,j)=0.2125*real(j-1) 
!-----------------------------------------------------------
      Forall(i=2:mx,j=2:my) dnax(i,j)=yloc(i,j-1)-yloc(i-1,j-1)
      Forall(i=2:mx,j=2:my) dnay(i,j)=-1.0*(xloc(i,j-1)
     $ -xloc(i-1,j-1))

      Forall(i=2:mx,j=2:my) dnbx(i,j)=yloc(i,j)-yloc(i,j-1)
      Forall(i=2:mx,j=2:my) dnby(i,j)=-1.0*(xloc(i,j)
     $ -xloc(i,j-1))

      

         End subroutine

      
      
      
