10 'ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» 20 'º Program to Read TRIM Data File COLLISON.TXT º 30 'ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ 40 'ßßßßßßßßßßßßßßßßßßßßßß First dimension Arrays for Data Variables 50 DIM IONNUMB(1000),IONENERGY(1000),DEPTH(1000),SE(1000) 60 DIM ATOM2$(1000),RECOILENERGY(1000) 70 DIM DISPLACEMENT(1000),VACANCY(1000),REPLACEMENT(1000),INTERSTITIAL(1000) 80 CLS 'ßßßßßßßßßßßßßßßß Now open data file 90 OPEN "COLLISON.TXT" FOR INPUT AS #1 100 FOR I=1 TO 1000 ' Cycle through data arrays 110 IF EOF(1)=-1 GOTO 270 ' End input if reach End-of-File 120 LOCATE 5,30:PRINT "Reading : " I ' Show Data Increment on Screen 130 LINE INPUT#1,L$ ' Input one line of characters 140 IONNUMB(I)=VAL(MID$(L$,2,5)) ' Convert first data field to a number 150 'ßßßßßßßßßßßßßßßßßßß The next line throws out Comment Lines in the Datafile 160 IF IONNUMB(I)=0 GOTO 110 ' If not number, ignore, get new line 170 IONENERGY(I) = VAL(MID$(L$,8,9)) ' Getting Data 180 DEPTH(I) = VAL(MID$(L$,18,10)) ' Getting Data 190 SE(I) = VAL(MID$(L$,29,7)) ' Getting Data 200 ATOM2$(I) = MID$(L$,38,2) ' Getting Data 210 RECOILENERGY(I)= VAL(MID$(L$,42,10)) ' Getting Data 220 DISPLACEMENT(I)= VAL(MID$(L$,53,6)) ' Getting Data 230 VACANCY(I) = VAL(MID$(L$,60,6)) ' Getting Data 240 REPLACEMENT(I) = VAL(MID$(L$,67,6)) ' Getting Data 250 INTERSTITIAL(I)= VAL(MID$(L$,74,6)) ' Getting Data 260 NEXT I ' Go to next item in data array 270 CLOSE (1) ' Finished with data 280 DATANUMB=I-1 ' This is number of lines of data 290 'ßßßßßßßßßßßßßßßßßßßßßß Test that we have data 300 PRINT "Displaying Top of Data from COLLISON.TXT" 310 PRINT "ÖÄÄÄÄÂÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÂÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÂÄÄÄÄÄÄÂÄÄÄÄÄÄÂÄÄÄÄÄÄ·" 320 PRINT "ºIon ³ Energy ³ Depth ³ Se ³Atom³ Recoil ³Target³Target³Target³Targetº" 330 PRINT "ºNumb³ (keV) ³ (A) ³(eV/A) ³Hit ³Energy(eV)³DISP. ³VAC. ³REPLAC³INTER º" 340 PRINT "ÌÍÍÍÍØÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍØÍÍÍÍØÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍØÍÍÍÍÍÍØÍÍÍÍÍÍØÍÍÍÍÍ͹" 350 F$= "Û####³##.##^^^^³####.^^^^³####.##³ \\ ³#####.^^^^³######³######³######³######Û" 360 FOR J=1 TO 10 ' Cycle through top of data array 370 PRINT USING F$;IONNUMB(J);IONENERGY(J);DEPTH(J);SE(J);ATOM2$(J);RECOILENERGY(J),DISPLACEMENT(J),VACANCY(J),REPLACEMENT(J),INTERSTITIAL(J) 380 NEXT J