pro setup_slab
  fin='glass_10x10x10'
  readnew,fin,h,'HEAD'
  readnew,fin,xin,'POS'
  xin[*,*] /= h.BOXSIZE
  Nin = TOTAL(h.npart,/int)

  Ndup = 20L
  fout='glass_200x10x10_dvy'

  Np = Ndup * Nin
  x=fltarr(3,Np)

  i=0L
  FOR ix=0,Ndup-1 DO BEGIN
     FOR j=0L,Nin-1 DO BEGIN
        x[0,i] = xin[0,j] + ix
        x[1,i] = xin[1,j]
        x[2,i] = xin[2,j]
        i++
     END
  END

  v = fltarr(3,Np)
  u=fltarr(Np)
  m=fltarr(Np)
  id=lindgen(Np)

  h.BOXSIZE=1
  h.MASSARR[*]=0

  gamma=5./3.
  rho=0.125
  P = 1.0

  u[*] = P/(gamma-1)/rho
  m[*] = (rho *  h.BOXSIZE^3)/Np

   h.npart[*]=0
   h.npart[0]=Np

   h.PARTTOTAL[*]=0
   h.PARTTOTAL[0]=Np

;Add wave with an amplitude and wavelength
   du = 0.01 * P/(gamma-1)/rho
   dv = 0.1
   l=2.0

   FOR j=0L,Np-1 DO BEGIN
      if(x[0,j] LT l) THEN begin
         v[0,j] = dv * sin(!Pi * x[0,j]/l)
      end
      if(x[0,j] GT Ndup-l) THEN begin
         v[0,j] = -1 * dv * sin(!Pi * (Ndup-x[0,j])/l)
      end
   end

   write_head,fout,h
   add_block,fout,x,'POS '
   add_block,fout,v,'VEL '
   add_block,fout,id,'ID  '
   add_block,fout,m,'MASS'
   add_block,fout,u,'U   '

end
