Program to calculate effects of rainfall on bodies of water.
Appears on
One of a series of library tapes. Programs on these tapes were renamed to a number series. This tape contained programs 20001 to 20050. These tapes were compiled by Tony Willing.
Gallery
Source Code
1 REM This program has "bug problems"--doesn't run completely 350 REM "hydrology2" 360 PRINT AT 1,7;"Hydology #2" 365 PRINT 370 PRINT AT 3,4;"Menu Selection" 371 PRINT 372 PRINT "Input a 40 for RAIN D, Input a 45 for Fld Hyd, Input a 55 for FUNC RATES Input a 100 if you are finished." 373 PRINT 385 INPUT Number 390 CLS 395 GO TO Number*10 400 REM "RAIN D" 401 PRINT "PROGRAM DISTRIBUTES TOTAL RAINFALL OR RAINFALL EXCESS (R) FOR N PERIODS " 402 DIM F(24): DIM E(24) 403 READ N,R,T$,Y$ 404 FOR I=1 TO N 405 READ F(I) 406 NEXT I 407 PRINT TAB 10;T$ 408 PRINT 409 PRINT TAB 5;Y$;TAB 10;R;" IN. EXCESS" 410 PRINT 411 PRINT TAB 2;"TIME";TAB 12;"%";TAB 18;"RAIN" 412 PRINT 413 FOR I=1 TO N 414 LET E(I)=R*F(I) 415 PRINT TAB 2;I;TAB 10;F(I);TAB 18;E(I) 416 NEXT I 417 DATA 6,6.00,"LUTHER LAKE","100 YR" 418 DATA .046,.078,.199,.490,.125,.063 419 PRINT 421 PRINT 422 PRINT 423 PRINT 424 PRINT 425 PRINT 426 PRINT 427 PRINT 428 PRINT 429 CLS 430 GO TO 370 450 REM "Fld Hyd" 451 PRINT "LINE 1 OF DATA FILE IS TITLE OF STUDY" 452 PRINT "LINE 2 IS NUMBER OF UNIT GRAPH ORDINATES,TIME INTERVAL,NUMBER OF RAINFALL EXCESSES" 453 PRINT "LINES 3 & 4 - UNIT GRAPH" 454 PRINT "LINE 5 & 6 - RAINFALL DATA" 455 PRINT "DATA STARTS WITH LINE 600" 456 DIM Q(30): DIM P(15): DIM U(15) 457 READ T$ 458 READ NUHGQ,TR,NP 459 FOR I=1 TO NUHGQ 460 READ U(I) 461 NEXT I 462 FOR J=1 TO NP 463 READ P(J) 464 NEXT J 465 PAUSE 80 466 CLS 467 PRINT TAB 10;"FLOOD HYDROGRAPH" 468 PRINT TAB 16;"FOR" 469 PRINT 470 PRINT TAB 10;T$ 471 PRINT 472 LET IHR=0 473 LET NQ=NP+NUHGQ-1 474 PRINT TAB 10;"IHR";TAB 16;"FLOW" 475 PRINT 476 FOR J=1 TO NQ 477 LET SUMF=0 478 IF (J-NUHGQ)>0 THEN GO TO 485 479 FOR I=1 TO J 480 LET K=J+1-I 481 LET Q(J)=P(K)*U(I) 482 LET SUMF=SUMF+Q(J) 483 NEXT I 484 GO TO 506 485 LET J1=J-NUHGQ+1 486 FOR I=J1 TO NP 487 LET K=J+1-I 488 LET Q(J)=P(I)*U(K) 489 LET SUMF=SUMF+Q(J) 490 NEXT I 491 GO TO 506 492 IF (J-NUHGQ)>0 THEN GO TO 506 493 FOR I=1 TO NP 494 LET K=J+1-I 495 LET Q(J)=P(I)*U(K) 496 LET SUMF=SUMF+Q(J) 497 NEXT I 498 GO TO 506 499 LET J1=J-NUHGQ+1 500 IF (J1-NP)>0 THEN GO TO 506 501 FOR I=J1 TO NP 502 LET K=J+1-I 503 LET Q(J)=P(I)*U(K) 504 LET SUMF=SUMF+Q(J) 505 NEXT I 506 LET IHR=IHR+1*TR 507 PRINT 508 PRINT TAB 10;IHR;TAB 16;SUMF 509 NEXT J 510 DATA "Willow lake 50 yr " 511 DATA 12,.5,12 512 DATA 93,632,489,220,83,30,11,4 513 DATA 1,0,0,0 514 DATA .11,.15,.20,.24,.36,.70,1.83 515 DATA .84,.41,.27,.20,.15 520 PRINT : PRINT : PRINT : PRINT : PRINT : PRINT : PRINT : PRINT 525 GO TO 372 550 REM "FUNC RATES" 551 PRINT "S+Q/2 AND S-Q/2 DATA" 552 PRINT TAB 7;"FOR" 553 DIM H(10): DIM A(10): DIM Q(10): DIM S(10): DIM B(10): DIM C(10): DIM D(10) 554 READ N,ELEVD,TR 555 FOR I=1 TO N 556 READ H(I),A(I),Q(I) 557 NEXT I 558 LET SUM=0 559 LET T$="Willow Lake" 560 FOR I=2 TO N 561 LET S(I)=((A(I)+A(I-1))/2+SUM)*ELEVD 562 LET SUM=S(I) 563 LET B(I)=S(I)*43560/10800 564 LET NUM=B(I)*10 565 LET B(I)=INT NUM/10 566 LET C(I)=B(I)-(Q(I))/2 567 LET D(I)=B(I)+(Q(I))/2 568 NEXT I: PRINT 569 PRINT TAB 8;T$ 570 PRINT 571 PRINT "HEAD";TAB 6;"AREA";TAB 12;"DISCH";TAB 18;"STORAGE" 572 PRINT 573 FOR I=1 TO N 574 PRINT H(I);TAB 6;A(I);TAB 12;Q(I);TAB 18;S(I) 575 NEXT I 576 PRINT 577 PRINT "HEAD";TAB 6;"S/TR";TAB 12;"S/TR-Q/2";TAB 21;"S/TR+Q/2" 578 PRINT 579 FOR I=1 TO N 580 PRINT H(I);TAB 5;B(I);TAB 13;C(I);TAB 21;D(I) 581 NEXT I 582 PRINT "PLOT THIS DATA ON LOG-LOG PAPER" 583 DATA 6,1,1 584 DATA 0,670,0,1,700,950 585 DATA 2,730,2680,3,760,4940 586 DATA 4,790,7600,5,820,10620 587 PRINT 595 GO TO 372 1000 STOP