100 PRINT CHR$(26) 110 PRINT TAB(20);"*******************************" 120 PRINT TAB(20);"* *" 130 PRINT TAB(20);"* THERMODYNAMIC PROPERTIES *" 140 PRINT TAB(20);"* OF STEAM *" 150 PRINT TAB(20);"* *" 160 PRINT TAB(20);"* By David B. Fisher *" 170 PRINT TAB(20);"* *" 180 PRINT TAB(20);"*******************************" 190 PRINT 200 PRINT TAB(20);"Microcomputer Software Project" 210 PRINT TAB(22);"Center for Energy Studies" 220 PRINT TAB(20);"University of Texas at Austin" 230 PRINT : PRINT TAB(15);"Dr. Philip S. Schmidt - Project Director" 240 PRINT 250 PRINT "This program calculates various thermodynamic properties, such as enthalpy," 260 PRINT "entropy, and temperature, of steam and water. You may select among 19 270 PRINT "different functions depending upon the input data you have. The program" 280 PRINT "will calculate only one value at a time and does not produce a table of" 290 PRINT "values." 300 PRINT TAB(28);"Copyright 1981" 310 FOR I = 1 TO 800 : NEXT I 320 GOSUB 360 330 XX = 0 : YY = 0 : ZZ = 0 340 ON A GOSUB 620,820,930,1060,1200,1300,1570,2070,2200,2300,2420,2620,2760,3010,3140,3440,3540,3670,3880 350 GOTO 320 360 PRINT CHR$(26) 370 PRINT TAB(28);"THERMODYNAMIC FUNCTIONS" 380 PRINT TAB(20);"=======================================" 390 PRINT "1. Enthalpy of subcooled water given temperature and pressure." 400 PRINT "2. Enthalpy of saturated water given temperature." 410 PRINT "3. Enthalpy of saturated water given pressure." 420 PRINT "4. Enthalpy of saturated steam given temperature." 430 PRINT "5. Enthalpy of saturated steam given pressure." 440 PRINT "6. Enthalpy of superheated steam given temperature and pressure." 450 PRINT "7. Enthalpy of superheated steam given pressure and entropy." 460 PRINT "8. Saturation pressure given temperature." 470 PRINT "9. Entropy of saturated water given temperature." 480 PRINT "10. Entropy of saturated water given pressure." 490 PRINT "11. Entropy of saturated steam given temperature." 500 PRINT "12. Entropy of saturated steam given pressure." 510 PRINT "13. Entropy of superheated steam given temperature and pressure." 520 PRINT "14. Saturation temperature given pressure." 530 PRINT "15. Temperature of superheated steam given enthalpy and pressure." 540 PRINT "16. Specific volume of saturated water given temperature." 550 PRINT "17. Specific volume of saturated water given pressure." 560 PRINT "18. Specific volume of superheated steam given temperature and pressure." 570 PRINT "19. Temperature of compressed liquid given pressure and enthalpy." 580 PRINT 590 INPUT "Pick one of the above functions . . .",A 600 PRINT CHR$(26) 610 RETURN 620 PRINT "Enthalpy of subcooled water as a function of temperature and pressure." 630 PRINT : PRINT 640 INPUT "Input the temperature (F) = ",T1 650 PRINT 660 INPUT "Input the pressure (PSIA) = ",P 670 T = T1 680 IF ZZ = 1 THEN T = T1 - 459.69 690 T3 = T ^ 3 700 T4 = T * T3 710 A0 = .75623 + (-.01446 + 9.85037E-05 *T) * T + (-2.8685E-07 +2.87767E-10 * T) * T3 720 A1 = 3.14899E-03 + (-4.867E-06 - 2.1607E-09 * T) * T + (4.07626E-11 - 9.30412E-14 * T) * T3 730 A2 = -3.1788E-08 + (2.80539E-11 + 1.75513E-12 * T) * T + (-7.4798E-15 + 9.90718E-18 * T) * T3 740 HF = -32.46 + (1.02493 + (-4.1498E-04 + 3.07768E-06 * T) * T) * T + (-1.2602E-08 + (3.06581E-11 - 3.834E-14 * T) * T) * T4 + 1.9907E-17 * T3 * T4 750 HCL = A0 + (A1 + A2 * P) * P + HF 760 IF ZZ = 1 THEN RETURN 770 PRINT 780 PRINT "Enthalpy (btu/lb) =";HCL 790 PRINT : PRINT : PRINT 800 INPUT "Press the key to continue.",DUMMY 810 RETURN 820 PRINT "Enthalpy of saturated water as a function of temperature." 830 PRINT 840 INPUT "Input the temperature (F) = ",T1 850 T = T1 860 T4 = T ^ 4 870 HFT = -32.4599 + (1.02493 + (-4.1498E-04 + 3.0777E-06 * T) * T) * T + (-1.2603E-08 + (3.06581E-11 - 3.8341E-14 * T) * T) * T4 + 1.9907E-17 * T * T * T * T4 880 PRINT : PRINT 890 PRINT "Enthalpy (btu/lb) =";HFT 900 PRINT : PRINT : PRINT 910 INPUT "Press the key to continue.",DUMMY 920 RETURN 930 PRINT "Enthalpy of saturated water as a function of pressure." 940 PRINT 950 INPUT "Input pressure (psia) = ",P 960 X = .434294 * LOG(P) 970 X4 = X ^ 4 980 T = 101.74419# + (77.052576# + (11.951549# + 2.05621 * X) * X) * X + (.420705 + (-.0684109 + .0625368 * X) * X) * X4 - 6.59481E-03 * X * X * X * X4 990 T4 = T ^ 4 1000 HFP = -32.4599 + (1.02494 + (-4.14977E-04 + 3.0777E-06 * T)* T)* T + (-1.26029E-08 + (3.0658E-11 - 3.8341E-14 * T) * T)* T4 + 1.99068E-17 * T * T * T * T4 1010 PRINT 1020 PRINT "Enthalpy (btu/lb) =";HFP 1030 PRINT : PRINT : PRINT 1040 INPUT "Press the key to continue.",DUMMY 1050 RETURN 1060 PRINT "Enthalpy of saturated steam as a function of temperature." 1070 PRINT 1080 INPUT "Input temperature (F) = ",T1 1090 T = T1 1100 TK = (T - 32) / 1.8 + 273.16 1110 X = 647.27 - TK 1120 Y = X * (3.2438 + (.0058683 + 1.17024E-08 * X * X) * X) / (TK * (1+ 2.18785E-03 *X)) 1130 P = 14.696 * 218.167 / (10 ^ Y) 1140 X = LOG(P) / LOG(10) 1150 HGT = 1105.9387# + (32.7568 + (4.61985 + (.20673 + (-.541169 + (.492414 - .178849 * X) * X) * X) * X) * X) * X 1160 PRINT "Enthalpy (btu/lb) =";HGT 1170 PRINT : PRINT : PRINT 1180 INPUT "Press the key to continue.",DUMMY 1190 RETURN 1200 PRINT "Enthalpy of saturated steam as a function of pressure." 1210 PRINT : PRINT 1220 INPUT "Input pressure (psia) = ",P 1230 X = LOG(P) / LOG(10) 1240 HGP = 1105.94 + (32.7568 + (4.61985 + (.20673 + (-.641169 + (.492414 - .178849 * X) * X) * X) * X) * X) * X 1250 PRINT 1260 PRINT "Enthalpy (btu/lb) =";HGP 1270 PRINT : PRINT : PRINT 1280 INPUT "Press the key to continue.",DUMMY 1290 RETURN 1300 PRINT "Enthalpy of superheated steam as a function of temperature and pressure." 1310 PRINT : PRINT 1320 INPUT "Input temperature (F) = ",T1 1330 PRINT 1340 INPUT "Input pressure (psia) = ",P1 1350 T = 255.38 + T1 / 1.8 1360 IF XX = 1 THEN T = 255.38 + (T1 - 459.69) / 1.8 1370 P = P1 / 14.6959 1380 B1 = (2641.62 * 10 ^ (80870! / (T * T))) / T 1390 B0 = 1.89 - B1 1400 B2 = 82.546 1410 B3 = 162460! / T 1420 B4 = .21828 * T 1430 B5 = 126970! / T 1440 F0 = 1.89 - B1 * (372420! / (T * T) + 2) 1450 B6 = B0 * B3 - 2 * F0 * (B2 - B3) 1460 B7 = 2 * F0 * (B4 - B5) - B0 * B5 1470 B8 = .434294 * LOG(T) 1480 F = 775.596 + (.63296 + .0001624 * T) * T + 47.3635 * B8 1490 B9 = B0 * P * P / (2 * T * T) 1500 HTP = F + .043577 * (F0 * P + B9 * (B0 * (B2 - B3 + 2 * B7 * B9) - B6)) 1510 IF XX = 1 THEN RETURN 1520 PRINT 1530 PRINT "Enthalpy (btu/lb) =";HTP 1540 PRINT : PRINT : PRINT 1550 INPUT "Press the key to continue.",DUMMY 1560 RETURN 1570 PRINT "Enthalpy of wet or superheated steam as a function of pressure and entropy." 1580 PRINT : PRINT 1590 INPUT "Input pressure (psia) = ",P 1600 PRINT 1610 INPUT "Input entropy (btu/lb-r) = ",S 1620 IF P - 100 < 0 THEN GOTO 1650 1630 IF P - 2000 < 0 THEN GOTO 1660 1640 SG = 5.66316 / (P ^ .194936) : GOTO 1670 1650 SG = 1.98473 / (P ^ .0458907) : GOTO 1670 1660 SG = 2.2411 / (P ^ .070069) 1670 IF SG - S < 0 THEN GOTO 1690 1680 GOTO 1980 1690 X = .434294 * LOG(P) 1700 X4 = X ^ 4 1710 IF P - 10 < 0 THEN GOTO 1740 1720 IF P - 450 < 0 THEN GOTO 1810 1730 GOTO 1890 1740 S0 = 2.1501 + (-.254384 + (2.17448E-04 - 9.3986E-04 * X) * X) * X 1750 A0 = 1223.29 + (-.577813 + (.230314 - 1.04343 * X) * X) * X 1760 A1 = 820.096 + (-1.96342 + (2.60695 - .768471 * X) * X) * X 1770 A2 = 895.121 + (-10.4682 + (7.08584 - 10.321 * X) * X) * X 1780 A3 = 547.703 + (195.111 + (-313.488 + 166.948 * X) * X) * X 1790 A4 = 0 1800 GOTO 1950 1810 S0 = 2.33356 + (-.320116 + (.0869149 - .0566468 * X) * X) * X 1820 S0 = S0 + (.0183387 - .0024477 * X) * X4 1830 A0 = 1357.23 + (73.7911 + (-75.9247 + 34.2757 * X) * X) * X - 6.02702 * X4 1840 A1 = 1144.62 + (33.2973 + (-26.4518 + 8.95797 * X) * X) * X - 1.0968 * X4 1850 A2 = 993.784 + (521.133 + (-506.58 + 220.417 * X) * X) * X - 37.9825 * X4 1860 A3 = 1424.09 + (-1663.6 + (1345.66 - 489.183 * X) * X) * X + 73.0757 * X4 1870 A4 = 3431.79 + (-7341.26 + (5997.11 - 2208.42 * X) * X) * X + 297.746 * X4 1880 GOTO 1950 1890 S0 = 1.70668 + (.544009 + (-.377805 + .0770932 * X) * X) * X - .0054871 * X4 1900 A0 = 1400 1910 A1 = 742.243 + (661.035 + (-321.279 + 53.4569 * X) * X) * X 1920 A2 = -3491.44 + (4615.43 + (-1470.65 + 145.947 * X) * X) * X 1930 A3 = 34807.7 + (-35596.6 + (12288.4 - 1388.08 * X) * X) * X 1940 A4 = 0 1950 A5 = S - S0 1960 HPS = A0 + (A1 + (A2 + (A3 + A4 * A5) * A5) * A5) * A5 1970 PRINT : PRINT "Enthalpy (btu/lb) =";HPS 1980 X = .434294 * LOG(P) 1990 X4 = X ^ 4 2000 A0 = -4.71691 + (-10.0491 + (-7.05328 - 1.94738 * X) * X) * X + (.117549 - .254735 * X) * X4 2010 A1 = 561.462 + (76.9333 + (12.1177 + 2.12914 * X) * X) * X + (.128501 + .144378 * X) * X4 2020 HPS = A0 + A1 * S 2030 PRINT : PRINT "Enthalpy (btu/lb) =";HPS 2040 PRINT : PRINT : PRINT 2050 INPUT "Press the key to continue.",DUMMY 2060 RETURN 2070 PRINT "Saturation pressure as a function of temperature." 2080 PRINT : PRINT 2090 INPUT "Input temperature (F) = ",T1 2100 T = T1 2110 TK = (T - 32) / 1.8 + 273.16 2120 X = 647.27 - TK 2130 Y = X * (3.2438 + (.0058683 + 1.17024E-08 * X * X) * X) / (TK * (1 + 2.18785E-03 * X)) 2140 PSL = 14.696 * 218.167 / (10 ^ Y) 2150 PRINT 2160 PRINT "Saturation pressure (psia) =";PSL 2170 PRINT : PRINT : PRINT 2180 INPUT "Press the key to continue.",DUMMY 2190 RETURN 2200 PRINT "Entropy of saturated water as a function of temperature." 2210 PRINT : PRINT 2220 INPUT "Input temperature (F) = ",T1 2230 T = T1 2240 TB = (T - 360) / 3100 2250 SFT = .515775 + (3.96796 - (4.59799 - (34.2517 - (60.7233 + (367.036 - (12035.9 + 123466! * TB) * TB) * TB) * TB) * TB) * TB) * TB 2260 PRINT 2270 PRINT "Entropy (btu/lb-r) =";SFT 2280 PRINT : PRINT : PRINT 2290 INPUT "Press the key to continue.",DUMMY 2295 RETURN 2300 PRINT "Entropy of saturated water as a function of pressure." 2310 PRINT : PRINT 2320 INPUT "Input pressure (psia) = ",P 2330 YY = 1 2340 GOSUB 3040 2350 TB = (TSL - 360) / 3100 2360 SFP = .515755 + (3.96796 - (4.59799 - (34.2517 - ( 60.7233 + (367.036 - (12035.9 + 123466! * TB) * TB) * TB) * TB) * TB) * TB) * TB 2370 PRINT 2380 PRINT "Entropy (btu/lb-r) =";SFP 2390 PRINT : PRINT : PRINT 2400 INPUT "Press the key to continue.",DUMMY 2410 RETURN 2420 PRINT "Entropy of saturated steam as a function of temperature." 2430 PRINT : PRINT 2440 INPUT "Input temperature (F) = ",T1 2450 T = T1 2460 TK = (T - 32) / 1.8 + 273.16 2470 X = 647.27 - TK 2480 Y = X * (3.2438 + (.0058683 + 1.17024E-08 * X * X) * X) / (TK * (1 + 2.18785E-03 * X)) 2490 P = 14.696 * 218.167 / (10 ^ Y) 2500 IF P - 100 < 0 THEN GOTO 2520 2510 GOTO 2540 2520 SGT = 1.98473 / (P ^ .0458907) 2530 GOTO 2570 2540 IF P - 2000 < = 0 THEN GOTO 2560 2550 SGT = 5.66316 / (P ^ .194936) : GOTO 2570 2560 SGT = 2.2411 / (P ^ .070069) 2570 PRINT 2580 PRINT "Entropy (btu/lb-r) =";SGT 2590 PRINT : PRINT : PRINT 2600 INPUT "Press the key to continue.",DUMMY 2610 RETURN 2620 PRINT "Entropy of saturated steam as a function of pressure." 2630 PRINT : PRINT 2640 INPUT "Input pressure (psia) = ",P 2650 IF P - 100 < = 0 THEN GOTO 2680 2660 IF P - 2000 < = 0 THEN GOTO 2700 2670 SGP = 5.66316 / (P ^ .19494) : GOTO 2710 2680 SGP = 1.98473 / (P ^ .04589) 2690 GOTO 2710 2700 SGP = 2.2411 / (P ^ .07007) 2710 PRINT 2720 PRINT "Entropy (btu/lb-r) =";SGP 2730 PRINT : PRINT : PRINT 2740 INPUT "Press the key to continue.",DUMMY 2750 RETURN 2760 PRINT "Entropy of superheated steam as a function of temperature and pressure." 2770 PRINT : PRINT 2780 INPUT "Input temperature (F) = ",T1 2790 PRINT 2800 INPUT "Input pressure (psia) = ",P1 2810 T = 255.38 + T1 / 1.8 2820 P = P1 / 14.696 2830 B1 = (2641.62 * 10 ^ (80870! / (T * T))) / T 2840 B0 = 1.89 - B1 2850 B2 = 82.546 2860 B3 = 162460! 2870 B4 = .21828 * T 2880 B5 = 126970! / T 2890 F0 = 1.89 - B1 * (372420! / (T * T) + 2) 2900 B6 = B0 * B3 - 2 * F0 * (B2 - B3) 2910 B7 = 2 * F0 * (B4 - B5) - B0 * B5 2920 B8 = .43429448# * LOG(T) 2930 B9 = B0 * P * P / (2 * T * T) 2940 BETA = ((B0 - F0) * P + B9 * (B6 + B9 * B0 * (B0 * (B4 - B5) - 2 * B7))) / T 2950 STP = .809691 * B8 - .253801 * .434294 * LOG(P) + .0001805 * T - 11.4267 / T - .355579 - .0241983 * BETA 2960 PRINT 2970 PRINT "Entropy (btu/lb-r) =";STP 2980 PRINT : PRINT : PRINT 2990 INPUT "Press the key to continue.",DUMMY 3000 RETURN 3010 PRINT "Saturation temperature as a function of pressure." 3020 PRINT : PRINT 3030 INPUT "Input pressure (psia) = ",P 3040 X = .434294 * LOG(P) 3050 X4 = X ^ 4 3060 TSL = 101.744 + (77.0526 + (11.9515 + 2.05621 * X) * X) * X + (.420705 + (-.0684109 + .0625368 * X) * X) * X4 - .0065948 * X * X * X * X4 3070 IF ZZ = 1 THEN RETURN 3080 IF YY = 1 THEN RETURN 3090 PRINT 3100 PRINT "Saturation temperature (F) =";TSL 3110 PRINT : PRINT : PRINT 3120 INPUT "Press the key to continue.",DUMMY 3130 RETURN 3140 PRINT "Temperature of superheated steam as a function of enthalpy and pressure." 3150 PRINT : PRINT 3160 INPUT "Input enthalpy (btu/lb) = ",H 3170 PRINT 3180 INPUT "Input pressure (psia) = ",P1 3190 ESP = .01 3200 DT = 2 3210 X = 1.68 * H - 1110 3220 T1 = X 3230 XX = 1 3240 GOSUB 1350 3250 H1 = HTP 3260 FOR I = 1 TO 10 3270 TDT = X + DT 3280 T1 = TDT 3290 GOSUB 1350 3300 X = X + DT * (H - H1) / (HTP - H1) 3310 T1 = X 3320 GOSUB 1350 3330 H1 = HTP 3340 IF ABS(H - H1) - EPS < = 0 THEN 3380 3350 NEXT I 3360 PRINT 3370 PRINT " This function does not converge." 3380 THP = X - 459.69 3390 PRINT 3400 PRINT "Temperature (F) =";THP 3410 PRINT : PRINT : PRINT 3420 INPUT "Press the key to continue.",DUMMY 3430 RETURN 3440 PRINT "Specific volume of saturated water as a function of temperature." 3450 PRINT : PRINT 3460 INPUT "Input temperature (F) = ",T 3470 T1 = T / 1000 3480 VFT = (1.58529 + (.260305 + (-.726856 + (10.972689# + (-25.343 + 23.0713 * T1) * T1) * T1) * T1) * T1) / 100 3490 PRINT 3500 PRINT "Specific volume (cf/lb) =";VFT 3510 PRINT : PRINT : PRINT 3520 INPUT "Press the key to continue.",DUMMY 3530 RETURN 3540 PRINT "Specific volume of saturated water as a function of pressure." 3550 PRINT : PRINT 3560 INPUT "Input pressure (psia) = ",P 3570 X = .434294 * LOG(P) 3580 X4 = X ^ 4 3590 T = 101.744 + (77.0526 + (11.9515 + 2.0562 * X) * X) * X + (.420705 + (-.0684109 + .0625368 * X) * X) * X4 - .0065948 * X * X * X * X4 3600 T1 = T / 1000 3610 VFP = (1.58529 + (.260305 + (-.723856 + (10.9727 + (-25.343 + 23.0713 * T1) * T1) * T1) * T1) * T1) / 100 3620 PRINT 3630 PRINT "Specific volume (cf/lb) =";VFP 3640 PRINT : PRINT : PRINT 3650 INPUT "Press the key to continue.",DUMMY 3660 RETURN 3670 PRINT "Specific volume of superheated steam as a function of temperature and pressure." 3680 PRINT : PRINT 3690 INPUT "Input temperature (F) = ",T1 3700 PRINT 3710 INPUT "Input pressure (psia) = ",P1 3720 T = 255.38 + T1 / 1.8 3730 P = P1 / 14.696 3740 B1 = (2641.62 * 10 ^ (80870! / (T * T))) / T 3750 B0 = 1.89 - B1 3760 B2 = 82.546 3770 B3 = 162460! / T 3780 B4 = .21828 * T 3790 B5 = 126970! / T 3800 Z = B0 * P / (T * T) 3810 B = B0 * (1 + Z * (B2 - B3 + Z * (B4 - B5) * B0 * P)) 3820 VTP = .0160185 * (4.55504 * T / P + B) 3830 PRINT 3840 PRINT "Specific volume (cf/lb) =";VTP 3850 PRINT : PRINT : PRINT 3860 INPUT "Press the key to continue.",DUMMY 3870 RETURN 3880 PRINT "Temperature of compressed liquid as a function of pressure and enthalpy." 3890 PRINT : PRINT 3900 INPUT "Input pressure (psia) = ",P 3910 PRINT 3920 INPUT "Input enthalpy (btu/lb) = ",H 3930 ZZ = 1 3940 GOSUB 3040 3950 TH = TSL + 459.69 3960 TL = 480 3970 FOR I = 1 TO 100 3980 T1 = (TH + TL) / 2 3990 GOSUB 670 4000 H2 = HCL 4010 IF ABS(H - H2) < .01 THEN GOTO 4070 4020 IF H - H2 < 0 THEN GOTO 4040 4030 TL = T1 : GOTO 4050 4040 TH = T1 4050 NEXT I 4060 PRINT : PRINT " This function does not converge." 4070 TCL = T1 4080 PRINT 4090 PRINT "Temperature (F) =";TCL - 459.69 4100 PRINT : PRINT : PRINT 4110 INPUT "Press the key to continue.",DUMMY 4120 RETURN ) =";TCL - 459.69 4100 PRINT : PRINT