1
0
mirror of https://github.com/PDP-10/stacken.git synced 2026-03-01 09:21:15 +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

200 lines
5.9 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 POLUT -- WATER POLLUTION SIMULATION FROM ECCP
105 REM COPYRIGHT 1971 - POLYTECHNIC INSTITUTE OF BROOKLYN
110 REM MAJOR VARIABLES: X(OXY. CONTENT); W1,W2,W(POLLUTION CONTENT)
115 REM OTHERS ARE DEFINED AS THEY APPEAR; EITHER IN PRINTS OR REMS
120 REM DEVELOPED BY L. BRAUN, T. LIAO, AND D. PESSEL
125 REM PROGRAMMED BY L. BRAUN, C. LOSIK, AND D. PESSEL
130 REM LATEST REVISION: 8-18-71
135 DIM X(51),W(51)
140 PRINT " ","WATER POLLUTION STUDY"
145 PRINT
150 PRINT "INSTRUCTIONS (1=YES, 0=NO)";
155 INPUT Q
160 IF Q=0 THEN 310
165 IF Q <> 1 THEN 150
170 REM INTRODUCTION
175 PRINT
180 PRINT
185 PRINT "IN THIS STUDY YOU CAN SPECIFY ";
190 PRINT "THE FOLLOWING CHARACTERISTICS:"
195 PRINT
200 PRINT "A. THE KIND OF BODY OF WATER:"
205 PRINT " 1. LARGE POND"
210 PRINT " 2. LARGE LAKE"
215 PRINT " 3. SLOW-MOVING RIVER"
220 PRINT " 4. FAST-MOVING RIVER"
225 PRINT
230 PRINT "B. THE WATER TEMPERATURE IN DEGREES FAHRENHEIT:"
235 PRINT
240 PRINT "C. THE KIND OF WASTE DUMPED INTO THE WATER:"
245 PRINT " 1. INDUSTRIAL"
250 PRINT " 2. SEWAGE"
255 PRINT
260 PRINT "D. THE RATE OF DUMPING OF WASTE,";
265 PRINT " IN PARTS PER MILLION (PPM)/DAY."
270 PRINT
275 PRINT "E. THE TYPE OF TREATMENT OF THE WASTE:"
280 PRINT " 0. NONE "
285 PRINT " 1. PRIMARY (SEDIMENTATION OR PASSAGE THROUGH FINE"
290 PRINT " SCREENS TO REMOVE GROSS SOLIDS)"
295 PRINT " 2. SECONDARY (SAND FILTERS OR THE ACTIVATED SLUDGE"
300 PRINT " METHOD TO REMOVE DISSOLVED AND COLLOIDAL"
305 PRINT " ORGANIC MATTER)"
310 PRINT
315 PRINT
320 PRINT "***********"
325 PRINT
330 REM INPUT PARAMETERS
335 PRINT "BODY OF WATER";
340 INPUT Q
345 REM D1: RATE OF INJECTION OF NATURAL POLLUTANTS
350 LET D1=2
355 REM N: NATURAL WASTE DECOMPOSITION COEFF.
360 LET N=.75
365 REM C: RATE OF WATER ABSORPTION OF OXYGEN (BASED ON Q)
370 IF Q=4 THEN 420
375 IF Q=3 THEN 410
380 IF Q=2 THEN 400
385 IF Q <> 1 THEN 335
390 LET C=.4
395 GOTO 425
400 LET C=1
405 GOTO 425
410 LET C=1.5
415 GOTO 425
420 LET C=3
425 PRINT "WATER TEMPERATURE";
430 INPUT T
435 IF T>90 THEN 1055
440 IF T <= 32 THEN 1070
445 IF T>50 THEN 465
450 REM X9=MAX. OXYGEN CONTENT OF WATER
455 LET X9=15-2*(T-32)/9
460 GOTO 470
465 LET X9=11-(T-50)/9
470 PRINT "KIND OF WASTE";
475 INPUT Q
480 REM H: HUMAN WASTE DECOMPOSITION COEFF.
485 IF Q=2 THEN 505
490 IF Q <> 1 THEN 470
495 LET H=.25
500 GOTO 510
505 LET H=.75
510 PRINT "DUMPING RATE";
515 INPUT D2
520 REM KEEPS D2 IN RANGE 0 TO 14
525 IF ABS(D2-7)>7 THEN 1040
530 REM W1: WASTE DUE TO NATURAL POLLUTANTS; INITIALIZATION
535 REM W2: WASTE DUE TO HUMANS; INITIALIZATION
540 REM X: OXYGEN CONTENT; INITIALIZATION
545 LET W1=D1/N
550 LET W2=0
555 LET X=X9-D1/C
560 REM W(1),X(1): INITIALIZE STORAGE ARRAYS (TOTAL WASTE,OXYGEN)
565 REM T2,K: STORE DAY FISH BEGIN TO DIE, IF THEY DO
570 REM T9: NEEDED FOR DAY COUNT; M: TOTAL DAYS FOR RUN
575 REM T1: INTEGRATION INTERVAL
580 LET T2=0
585 LET T9=0
590 LET K=0
595 LET T1=.1
600 LET W(1)=W1+W2
605 LET X(1)=X
610 LET M=31
615 REM D2: RATE OF INJECTION OF HUMAN POLLUTANTS
620 PRINT "TYPE OF TREATMENT";
625 INPUT Q
630 IF Q=0 THEN 660
635 IF Q=1 THEN 655
640 IF Q <> 2 THEN 620
645 LET D2=.1*D2
650 GOTO 660
655 LET D2=.5*D2
660 PRINT
665 PRINT
670 FOR J=2 TO M
675 FOR I=1 TO 10
680 LET T9=T9+T1
685 REM PAIR OF DIFF. EQNS. , EULER INTEGRATION
690 LET X=X+T1*(C*(X9-X)-N*W1-H*W2)
695 REM PREVENTS NEGATIVE OXYGEN LEVEL
700 IF X>0 THEN 710
705 LET X=0
710 LET W1=W1+T1*(D1-N*W1)
715 LET W2=W2+T1*(D2-H*W2)
720 IF X>5 THEN 740
725 LET K=K+1
730 IF K>1 THEN 740
735 LET T2=INT(T9)
740 NEXT I
745 REM W(J),X(J): STORAGE OF RESULTS IN ARRAYS
750 LET X(J)=X
755 LET W(J)=W1+W2
760 NEXT J
765 PRINT "DO YOU WANT: A GRAPH(1), A TABLE(2), OR BOTH(3)";
770 INPUT Q
775 IF (Q-1)*(Q-2)*(Q-3) <> 0 THEN 765
780 PRINT
785 PRINT
790 REM TABLE OUTPUT ROUTINE
795 IF K<1 THEN 820
800 PRINT
805 PRINT
810 PRINT "AFTER DAY";T2;"THE GAME FISH BEGIN TO DIE, BECAUSE"
815 PRINT "THE OXYGEN CONTENT OF THE WATER DROPPED BELOW 5 PPM."
820 PRINT
825 IF Q<2 THEN 880
830 PRINT
835 PRINT
840 PRINT "TIME","OXY. CONTENT","WASTE CONTENT"
845 PRINT "DAYS"," PPM "," PPM "
850 PRINT "----","------------","-------------"
855 FOR J=1 TO M
860 PRINT J-1,INT(100*X(J)+.5)/100,INT(100*W(J)+.5)/100
865 NEXT J
870 IF Q=2 THEN 1005
875 REM GRAPHING ROUTINE
880 PRINT
885 PRINT
890 PRINT " 0...OXYGEN-SCALE....5...OXYGEN-SCALE...10";
895 PRINT "...OXYGEN-SCALE...15"
900 PRINT " 0..WASTE.10..SCALE.20..WASTE.30..SCALE.40";
905 PRINT "..WASTE.50..SCALE.60"
910 PRINT "DAY I---------I---------I---------I---------I";
915 PRINT "---------I---------I"
920 FOR J=1 TO M
925 PRINT J-1;TAB(6);"I";
930 IF 4*X(J)>W(J) THEN 945
935 PRINT TAB(7+INT(4*X(J)+.5));"0";TAB(7+INT(W(J)+.5));"W"
940 GOTO 950
945 PRINT TAB(7+INT(W(J)+.5));"W";TAB(7+INT(4*X(J)+.5));"O"
950 IF J<5 THEN 985
955 FOR K=1 TO 4
960 REM DETERMINES WHEN SYSTEM HAS REACHED EQUILIBRIUM
965 IF INT(W(J)+.5) <> INT(W(J-K)+.5) THEN 985
970 IF INT(4*X(J)+.5) <> INT(4*X(J-K)+.5) THEN 985
975 NEXT K
980 GOTO 990
985 NEXT J
990 PRINT
995 PRINT "THE WASTE CONTENT AND OXYGEN CONTENT WILL REMAIN AT"
1000 PRINT "THESE LEVELS UNTIL ONE OF THE VARIABLES CHANGES."
1005 PRINT
1010 PRINT
1015 PRINT "ANOTHER RUN (1=YES, 0=NO)";
1020 INPUT Q
1025 IF Q=1 THEN 310
1030 IF Q <> 0 THEN 1015
1035 STOP
1040 PRINT "NEW YORK CITY ONLY POLLUTES ITS WATER AT THE RATE OF"
1045 PRINT "12 PPM/DAY. MAKE YOUR RATE BETWEEN 0 AND 14."
1050 GOTO 510
1055 PRINT "THE WATER TEMPERATURE IS HIGH ENOUGH TO DESTROY MOST LIFE."
1060 PRINT "TRY A NEW TEMPERATURE."
1065 GOTO 425
1070 PRINT "YOUR BODY OF WATER IS A BLOCK OF ICE, AND CAN'T"
1075 PRINT "ACCEPT ANY WASTE. TRY A NEW TEMPERATURE."
1080 GOTO 425
1085 END
*U*,?