

program ReadParts



integer*4 nparts

real*4, dimension(:,:), allocatable :: PartPos
integer*2, dimension(:,:), allocatable :: PartVel


character*100 base
character*100 ext
character*100 fname

implicit none


!base='/mybase/'
!ext='myext.halos'

base='/afs/mpa/data/virgo/CR/TCDM/'
!ext='test.dat'
ext='DMSampled.dat'

fname=base(1:len_trim(base))//ext
 
print *,'Reading : ',fname


open(1,file=fname,form='unformatted',status='old')

read(1) nparts
print*,'nparts : ',nparts


allocate(PartPos(3,nparts),PartVel(3,nparts))





read(1) PartPos ! comoving positions of particles SGX,SGY,SGZ in kpc/h (origin = Milky Way)

! e.g. SGZ(10th part)=PartPos(3,10)
! NOTE : the particles are NOT ordered !

read(1) PartVel ! comoving positions of particles in km/s

! e.g. vx(2nd part)=PartVel(1,2)
! NOTE : the particles are NOT ordered !



close(1)



print*, 'Read ...'



print*,'min,max PartPos(1,:) : ',minval(PartPos(1,:)),maxval(PartPos(1,:))
print*,'min,max PartPos(2,:) : ',minval(PartPos(2,:)),maxval(PartPos(2,:))
print*,'min,max PartPos(3,:) : ',minval(PartPos(3,:)),maxval(PartPos(3,:))


print*,'min,max PartVel(1,:) : ',minval(PartVel(1,:)),maxval(PartVel(1,:))
print*,'min,max PartVel(2,:) : ',minval(PartVel(2,:)),maxval(PartVel(2,:))
print*,'min,max PartVel(3,:) : ',minval(PartVel(3,:)),maxval(PartVel(3,:))


stop

end

