1
0
mirror of https://github.com/PDP-10/stacken.git synced 2026-03-02 01:30:40 +00:00
Files
Lars Brinkhoff 6e18f5ebef Extract files from tape images.
Some tapes could not be extracted.
2021-01-29 10:47:33 +01:00

193 lines
5.0 KiB
QBasic
Raw Permalink Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
100 REM SCATR3 - ALPHA PARTICLE TRAJECTORIES
105 REM COPYRIGHT 1973 - STATE UNIVERSITY OF NEW YORK
110 REM MODELS DEVELOPED BY J. BRESMAN, A. CAGGIANO, AND D. SCARL
115 REM PROGRAMMED BY C. LOSIK, M. WEISNER, D. SCARL, AND T. BLOOM
120 REM SCATER IS A SET OF ASSOCIATED PROGRAMS CONTAINING SCATR1,
125 REM SCATR2, AND SCATR3
130 REM LATEST REVISION:12-12-73
135 DIM Z(3),B(6),X(6),A(3,15),L(9)
140 REM ELECTRON REST ENERGY (MEV)
145 LET B4=.511
150 REM VELOCITY OF LIGHT (FEMTOMETERS/FEMTOSECOND)
155 LET C4=3E8
160 REM CLASSICAL ELECTRON RADIUS (FM)
165 LET D4=2.8
170 REM ALPHA PARTICLE CHARGE
175 LET Z4=2
180 REM ALPHA PARTICLE REST ENERGY (MEV)
185 LET M4=3720
190 REM TARGET ATOM RADIUS (FM)
195 LET R4=2E5
200 REM ATOMIC NUMBER OF (1=CU,2=AG,3=AU)
205 LET Z(1)=21
210 LET Z(2)=47
215 LET Z(3)=79
220 LET E4=5.3
225 LET S=3
230 LET G=8
235 FOR P=7 TO 9
240 LET L(P)=0
245 NEXT P
250 LET N1=0
255 PRINT
260 PRINT
265 PRINT"INSTRUCTIONS (0=NO,1=YES)";
270 INPUT I
275 IF I=0 THEN315
280 IF I<>1 THEN 265
285 PRINT"SCATR3 PLOTS THE TRAJECTORIES OF ALPHA"
290 PRINT"PARTICLES SCATTERED FROM INDIVIDUAL HEAVY ATOMS."
295 PRINT"INPUTS ARE: ALPHA PARTICLE ENERGY (BETWEEN 2 AND 8 MEV),"
300 PRINT"TARGET MATERIAL (1=COPPER,2=SILVER,3=GOLD),"
305 PRINT"AND THREE DIFFERENT PERPENDICULAR DISTANCES BETWEEN THE"
310 PRINT"INCIDENT ALPHA PATH AND THE CENTER OF THE TARGET ATOM."
315 PRINT"ALPHA ENERGY=";E4;
320 INPUT I
325 IF (I-2)*(8-I)>=0 THEN 340
330 PRINT "2<=ALPHA ENERGY<=8"
335 GOTO 315
340 LET E4=I
345 PRINT"TARGET MATERIAL=";S;
350 INPUT I
355 IF (I-1)*(3-I)>=0 THEN 370
360 PRINT "1=CU, 2=AG, 3=AU"
365 GOTO 345
370 LET S=I
375 REM DELETE THE NEXT LINE TO MODIFY MAGNIFICATION EXPONENT
380 GOTO415
385 PRINT"MAGNIFICATION=2.5E";G;" 2.5E";
390 INPUT I
395 IF (I-8)*(11-I)>=0 THEN 410
400 PRINT "8<=MAG. EXPONENT<=11"
405 GOTO 385
410 LETG=I
415 LET G1=10^(12-G)
420 LET G2=25*G1
425 LET G3=3.2*G1
430 LET G5=7*G3
435 LET R4=R4/G3
440 LET R3=R4^2
445 IF N1<>0 THEN 465
450 FOR P=1 TO 3
455 LET X(P)=G1*(2*P-28)
460 NEXT P
465 PRINT"CHOOSE X() BETWEEN";-.8*G2;"AND";.8*G2;"(FEMTOMETERS)"
470 FOR P=1 TO 3
475 PRINT"X(";P;")=";X(P);
480 INPUT I
485 IF .8*G2-ABS(I)<0 THEN 475
490 LET X(P)=I
495 LET X(P+3)=I
500 NEXT P
505 PRINT
510 PRINT
515 REM RADIAL ACCELERATION CONSTANT
520 LET A1=Z4*Z(S)*B4*D4*C4^2/M4
525 REM DISTANCE OF CLOSEST APPROACH
530 LET D=Z4*Z(S)*B4*D4/E4
535 REM INITIAL VELOCITY
540 LET V4=C4*SQR(2*E4/M4)
545 FOR P=1 TO 3
550 FOR J=1 TO 15
555 LET A(P,J)=0
560 NEXT J
565 NEXT P
570 FOR P=1TO3
575 IF X(P)<>0 THEN 590
580 LET Q=3.14159
585 GOTO 595
590 LET Q=ABS(2*ATN(D/(2*X(P))))
595 LET N1=SGN(X(P))*SGN(1.57079-Q)
600 FOR Y1=1TO8
605 LET A(P,Y1)=INT(ABS(X(P)/G1)+.5)*SGN(X(P))+26
610 NEXT Y1
615 IF ABS(Q-1.57079)>.03 THEN630
620 LET A(P,8)=A(P,8)/100+25*SGN(X(P))+26
625 GOTO 715
630 IF Q<1.57079 THEN645
635 LET Y=1
640 GOTO 650
645 LET Y=15
650 FOR Y1=8TOY STEP SGN(1.57079-Q)
655 LET X=X(P)+G3*(Y1-8)*ABS(SIN(Q)/COS(Q))*N1
660 IF Y1=8 THEN 670
665 LET A(P,Y1)=A(P,Y1)/100+INT(ABS(X/G1)+.5)*SGN(X)+26
670 IF ABS(X)>G2 THEN 685
675 NEXT Y1
680 GOTO 715
685 IFABS(G2-ABS(X))<=ABS(G2-ABS(INT(A(P,Y1-1))-26)*G1)THEN705
690 LET N=Y1-SGN(1.57079-Q)
695 LET A(P,Y1)=(A(P,Y1)-INT(A(P,Y1)))*100
700 GOTO 710
705 LET N=Y1
710 LET A(P,N)=A(P,N)-INT(A(P,N))+25*SGN(X)+26
715 NEXT P
720 PRINT TAB(13);"ALPHA ENERGY:";E4;"MEV";TAB(43);"TARGET ";
725 PRINT"CHARGE:";Z(S)
730 PRINT
735 PRINTTAB(10);"X(1)=";X(1);TAB(30);"X(2)=";X(2);TAB(50);"X(3)=";X(3)
740 PRINT
745 PRINT TAB(31);"(FEMTOMETERS)"
750 PRINT TAB(8);"X=";TAB(15);-20*G1;TAB(25);-10*G1;TAB(35);" 0";
755 PRINT TAB(45);10*G1;TAB(55);20*G1
760 PRINT"Y=";
765 GOSUB 935
770 FOR Y=1 TO 15
775 IF Y<>8 THEN 785
780 LET L(7)=26
785 IF ABS(Y-8)>R4 THEN 800
790 LET L(8)=INT(3.2*SQR(R3-(Y-8)^2)+.5)+26
795 LET L(9)=52-L(8)
800 FOR P=1 TO 3
805 LET L(P)=INT(A(P,Y))
810 LET L(P+3)=INT((A(P,Y)-L(P))*100+.5)
815 NEXT P
820 PRINT G3*(Y-8);TAB(10);"I";
825 LETJ=62
830 FOR P=1 TO 9
835 IF ABS(L(P)-J/2)>=J/2 THEN 850
840 LET J=INT(L(P)+.5)
845 LET I=P
850 NEXT P
855 IFJ=62THEN950
860 LET L(I)=0
865 PRINT TAB(10+J);
870 IF Y<>8THEN 880
875 IF J=26 THEN 910
880 IF (I-1)*(I-4)<>0 THEN 890
885 PRINT "1";
890 IF (I-2)*(I-5)<>0 THEN 900
895 PRINT "2";
900 IF (I-3)*(I-6)<>0 THEN 910
905 PRINT "3";
910 IF I<>7 THEN 920
915 PRINT "N";
920 IF I<8 THEN 825
925 PRINT "B";
930 GOTO 825
935 PRINT TAB(11);"-----I---------I---------I---------I";
940 PRINT "----------I-----"
945 RETURN
950 PRINT
955 IFY=15 THEN 965
960 PRINT
965 NEXT Y
970 GOSUB 935
975 FORP=1TO3
980 PRINTTAB(23*(P-1));"ANGLE(";P;")=";
985 IF X(P)<>0 THEN 1000
990 PRINT 180;
995 GOTO1005
1000 PRINT INT(ABS(360/3.14159*ATN(D/(2*X(P))))*100)/100;
1005 NEXTP
1010 PRINT
1015 PRINT
1020 PRINT"1=NEW DISTANCES, 2=NEW ENERGY OR TARGET, 3=END PROGRAM";
1025 INPUT I
1030 PRINT
1035 IF I=1 THEN 470
1040 IF I=2 THEN 315
1045 IF I<>3 THEN 1020
1050 END
x*U*=$B$$BB$$BB$$BL