! rw2d.f90 ! A simple random walk program in 2D. PROGRAM drunk IMPLICIT NONE INTEGER :: i, N, stepLength REAL :: phi, rnd ! INTEGER, DIMENSION(2) :: seed REAL :: x=0.0, y=0.0 ! Put drunk initially at the origin INTEGER, PARAMETER :: out=1, out1=2 ! Set output unit REAL, PARAMETER :: step=1.0, twopi=2.0*3.1415926 ! step size and constants CHARACTER(LEN=15), SAVE :: FORMAT1 = "(2F14.7)" PRINT*,"Enter number of steps:" READ*, N PRINT*,"Enter stepLenght (integer=>1) :" READ*, StepLength OPEN(out, FILE='10.dat', STATUS="REPLACE", ACTION="WRITE") OPEN(out1, FILE='1.dat', STATUS="REPLACE", ACTION="WRITE") ! PRINT*,"Enter seed (1 and 2)" ! READ*,seed ! CALL RANDOM_SEED(PUT=seed) i = 0 WRITE(UNIT=out,FMT=FORMAT1)x,y WRITE(UNIT=out1,FMT=FORMAT1)x,y DO i=1, N*stepLength CALL RANDOM_NUMBER(rnd) phi=twopi*rnd x=x+step*COS(phi) y=y+step*SIN(phi) if(i