TN295 No. 9063 v^-^v V '<* 'A '° • » ' A < * -v v. < a ** » ^ ^ ; Hfc ■ v .ft* M* * •' '- O A ,<>*<>. <$■ $ if. V a\ V '..• , O -o.»« A, ^ ♦ . l ' • . *0 .. & O » O <<> ^ . , . «*• a\ V» • • \" v <» o^ ..... ? *3> *o . ■ « A V ..1VL'* o 4 o r j* **>■ 4 • • * 134 m/min (running). The coefficients A, B, C, and D were determined from the regression analy- (5b) sis for a miner walking, crawling, or duck-walking. The entry height H is in inches. Airway heights and lengths have units of inches and feet to correspond more readily to available mine data, whereas physiological data are in metric units, which are more common in the lit- erature. Values of the coefficients A, B, C, and D are shown in table 1. The program user may either supply a new set of coefficients, or the program will use the values in table 1 as default values. TABLE 1. - Escape speed equation coefficients Values Coefficient: A 252.2 B -16.14 C 408 D -.00244 The mine network is described by air- ways of specified length and height that intersect at junctions. Each miner is initially at a prescribed junction. The miner progresses along a prescribed path consisting of airways until the "escape junction" (the mine exit) is reached. The program also permits rest periods at specified junctions. The miner escape speed along each airway is determined by equation 8, and the weight-specific oxy- gen uptake is determined from the escape speed using equations 5-7. The total oxygen requirements of the miner are de- termined as a function of elapsed time and distance traveled. It can be shown that the volume V (liters) of oxygen consumed by a miner of mass M (kilograms) after traveling for a time T (minutes) is given for a miner walking by V = M 1,000 cciM 12, + p t M T (9a) and for a miner running by M V = 1,000 Xo i A 22 a 2 M X + 6 2 M T (9b) where X is the total distance traversed, in meters. Equation 7b is readily evaluated for a single miner running. However, for a miner traversing a path at variable speeds, and for a number of miners tra- versing different escape paths, a com- puter program has a definite advantage in the evaluation of total oxygen demand made upon an SCSR. Aside from the compu- ter program's calculated oxygen require- ment for a miner egressing from a mine, a compressed-oxygen SCSR's oxygen supply will never be less than the constant sup- ply rate of the SCSR. This must also be considered by the program user. The response of an SCSR to a breathing demand that varies as a sinusoidal function of time has been treated elsewhere (10) as a separate mathematical model. For the case of a miner walking at a constant speed, equation 9a can be evalu- ated as V = M 1,000 Xi 1 „ o,M X 2 /T 61M Z T (10) For a constant quantity of oxygen avail- able, equation 9b shows a linear rela- tionship between distance traveled and elapsed time, whereas equation 10 shows a nonlinear relationship. For a specified escape distance, it is possible to evaluate from equations 9b and 10 the influence of travel speed upon oxygen requirements. For example, an 87- kg miner will walk 2,000 m at a speed of 67 m/min (2.5 mi/h) in 29.8 min, and can run the same distance at a speed of 147 m/min (5.5 mi/h) in 13.6 min. The miner will require 29.9 L 2 in the walking mode and 40.1 L 2 in the running mode. This is an important consideration for planning miner rescue with an SCSR be- cause the total oxygen requirement is as important a consideration as minimizing the escape time. There are two limitations imposed upon a miner's breathing. One is the absolute (maximum weight-specific) oxygen uptake, Va „,„, which is characteristic of a u 2 ma x ' miner, and the other is the duration a miner can function at a working capacity, which is a specified fraction of the individual's aerobic capacity. Bonjer (11) has developed an analytic expres- sion that relates an individual's working capacity, or oxygen uptake, to the indi- vidual's aerobic capacity, or absolute oxygen uptake over the maximum endurance time t (min) : log ( T ) = 3.76 - 3(V /V , max ) (ID For this model, the oxygen uptake in equation 11 is replaced by a time-weighted average of the oxygen up- take specific to each airway through which the miner traverses. The program does not permit the miner to exceed either the constraint of an absolute oxy- gen uptake or an endurance time defined by equation 11. Equation 11 shows that a miner can be expected to endure at 50 pet of aerobic capacity for ~3 h, and at 65 pet of aerobic capacity for ~1 h. DATA PREPARATION In preparation for program usage, an input data file must be prepared that de- scribes the mine, the miners, and the es- cape paths. Each file is created as an ASCII file that is translated by a pro- gram called TRANS. FOR, listed in appendix B, into a binary data file. The binary data files are read by the Fortran pro- gram RESCUE. FOR, listed in appendix C, which performs the model calculations. The requirements of the input data files are described under the headings that follow. Each element in the data file is written in free format. A. MINE DESCRIPTION The input data for a description of the mine is entered into the ASCII data file XXXAIR.ASC, where XXX is a prefix as- signed by the program user to distinguish mine descriptions. The same prefix is used for the files described below for the miners and the escape paths. The data for the number of airways (NA) is entered into NA rows of the file XXXAIR.ASC. Each row must have the re- quired elements shown in table 2. TABLE 2. - Mine airway data file Airway Junction Junction Height, Length, 1 2 iri ft Junctions 1 and 2 designate the junctions that terminate the airway. The data file is terminated by airway 999. B. MINER DESCRIPTION The input data for a description of the number of miners (NM) is described by the ASCII data file XXXMIN.ASC. There are 2 NM rows of data, where two adjacent rows are used to describe each miner. The first row of each pair, as shown in table 3, lists the miner identification number, the junction from which the miner starts, the identification number of the escape path, and the absolute oxygen up- take of each miner. The second row of each pair permits the specification of as many as three rest locations, and the corresponding rest time. The end of the data is signified by the assignment of miner number 999. TABLE 3. - Miner data file Miner Start Escape Absolute oxygen junction path uptake, mL/(kg*min) C. ESCAPE PATH DESCRIPTION The input data file, XXXPAT.ASC, de- scribes the escape paths through an enu- meration of the constitutive airways of each path. Each path can contain as many as seven airways, as shown in table 4. If additional airways are required, then a new path number is specified in the column titled "Next path." Wherever no additional airways or paths are required, a zero is entered. To mark the end of the data file, path 999 is entered. TABLE 4. - Escape path data file Path Airway 1 Airway Next path 7 There are several questions which the programs, TRANS and RESCUE, ask the user in the interactive mode. The protocol for these questions is shown in appen- dixes B and C. These questions relate to the selection of an output printing de- vice, whether or not rest junctions are to be included, and the constants for equations 5-7. The user has the choice to enter new values or use the program's default values. APPLICATION The program was applied to a mine with 41 airways and 26 junctions, as shown in figure 1. Junction 26 represents the mine portal to be used for escape. Thirty-two miners were located throughout the network. C^-^^i) <£> d> 8 d> 10 12 14 © r -^9) 16 % II 15 (B> 21 18 ®- 26 ® /J ® 19 LEGEND (25) Junction 12 Airway FIGURE 1. - Schematic of mine network. 31 35 17 sK 27 >n 37 39 % 34 23 s\ 33 @ 36 38 40 The three ASCII files that describe the mine, the miners, and the escape paths are listed in appendix D. A sample out- put for miners 1 and 32 is displayed in appendix E. Upon completion of travel along an airway, the airway number is listed in the output, as well as the elapsed time and distance traversed. Additional information is provided re- garded the miner's cumulative oxygen con- sumption, weight-specific oxygen uptake, speed, and maximum oxygen uptake. After the miner reaches the exit portal, the maximum endurance time, t, as derived from equation 11, is listed. In appendix D the computer program out- put for miners 1 and 32 is presented. These two miners have 78.6 kg, and absolute 34.10 mL/(kg»min), and distance, 3,000 ft, to separate paths from identical masses, oxygen uptakes , travel the same the exit along distinct initial junctions. The paths differ in the air- way height along various segments, there- by requiring different modes of locomo- tion, namely crawling, duck-walking, and walking. Miner 1 starts at junction 1 and proceeds along airways 2, 4, 5, and 41. Miner 32 starts at junction 25 and proceeds along airways 40, 38, 35, 25, 41. Miner 1 reaches the exit in 31 min, and miner 32 reaches the exit in 15 min. Total oxygen requirements are 39.9 L for miner 1 and 26.4 L for miner 32. Average oxygen costs per kilogram mass per meter traveled are 0.55 mL 2 for miner 1 and 0.37 mL 2 for miner 32. This illus- trates that, because of the various re- quired modes of travel, a miner requires a quantity of oxygen during the escape that is dependent not only upon the total distance traveled, but also upon the mode of travel; i.e. , posture. CONCLUSION A user-oriented Fortran computer pro- gram was developed that enables those charged with planning mine safety to rapidly evaluate the oxygen requirements of miners in the evacuation of a mine. The program accounts for the variation of miner egress speed with airway height, and the dependence of weight-specific oxygen uptake upon miner speed and pos- ture. The program can be used in an ac- tual mining situation to estimate the time for miner evacuation, and the ade- quacy of the oxygen supply from an SCSR. REFERENCES 1. Kovac, J. G. An Overview of Self- Rescuer Technology. Paper in Postdisas- ter Survival and Rescue Research. Pro- ceedings: Bureau of Mines Technology Transfer Seminar, Pittsburgh, PA, Novem- ber 26, 1982. BuMines IC 8907, 1982, pp. 3-17. 2. Kyriazi, N. Laboratory Environmen- tal Testing of Chemical Oxygen Self- Rescuers for Ruggedness and Reliability. Paper in Postdisaster Survival and Rescue Research. Proceedings: Bureau of Mines Technology Transfer Seminar, Pittsburgh, PA, November 16, 1982. BuMines IC 8907, 1982, pp. 18-31. 3. Berry, D. R. , D. M. Doyle, E. Kamon, and D. W. Mitchell (Foster-Miller Associates Inc.). Recommended Guidelines for Oxygen Self -Rescuers. Volume III. Escape Time Studies (contract J0199118). BuMines OFR 49-84, 1983, 49 pp.; NTIS PB 84-179506. 4. Workman, J. M. , and B. W. Arm- strong. Oxygen Cost of Treadmill Walk- ing. J. Appl. Physiol. , v. 18, No. 4, 1963, pp. 798-803. 5. . A Nomogram for Predicting Treadmill-Walking Oxygen Consumption. J. Appl. Physiol., v. 19, No. 1, 1964, 150-151. 6. Margaria, R. , P. Cerretelli, Aghemo, and G. Sassi. Energy Cost Running. J. Appl. Physiol., v. 18, 2, 1963, pp. 367-370 7. Kamon, E. Laddermill and etry: A Comparative Summary, tors, v. 15, No. 1, 1973, pp. pp. P. of No. Ergom- Human Fac- 75-90. 8. Kamon, E., T. Bernard, and R. Stein. Steady State Respiratory Re- sponses to Tasks Used in Federal Test- ing of Self-Contained Breathing Appara- tus. Am. Ind. Hyg. Assoc. J., v. 36, Dec. 1975, pp. 886-896. 9. Taylor, C. R. , N. C. Heglund, and G. M. Maloiy. Energetics and Mechanics of Terrestrial Locomotion. I. Metabolic Energy Consumption as a Function of Speed and Body Size in Birds and Mammals. J. Exp. Biol., v. 97, 1982, pp. 1-21. 10. Edwards, J. C. Mathematical Simu- lation of Automated Metabolic Breath- ing Simulator and Self-Contained Self- Rescuer. BuMines RI 8926, 1985, 18 pp. 11. Bonjer, F. H. Actual Energy Ex- penditure in Relation to the Physical Working Capacity. Ergonomics, v. 5, No. 29, 1962, pp. 29-31. APPENDIX A. — LIST OF SYMBOLS H airway height, in M miner's mass, kg S miner's travel speed, m/min T miner's travel time, min V oxygen volume, L V oxygen uptake, mL/(kg»min) V max absolute oxygen uptake, mL/(kg»min) X distance, m Coefficients in oxygen uptake: a] , 61 walking a 2 , 82 running 03 crawling 04 duck-walking Exponents of miner's mass in oxygen uptake: X 1 t , A 2 1 walking Aj2» ^22 running X3 crawling \ 4 duck-walking t maximum endurance time, min APPENDIX B.— LISTING OF TRANS. FOR SAMPLE TERMINAL DIALOGUE FOR PROGRAM TRANS ! >> COMMENTS ADDED LATER $ >> SYSTEM PROMPT $ RUN TRANS ENTER PREFIX FOR DATA FILE NAMES: MNl PROCESSING AIRWAY FILE PROCESSING MINER FILE PROCESSING PATH FILE MINE DATA FILE TRANSLATED 10 0001 C 0002 C 0003 C 0004 C 0005 C 0006 C 0007 C 0008 C 0009 C 0010 C 0011 C 0012 c 0013 c 0014 c 0015 c 0016 c 0017 c 0018 c 0019 c 0020 c 0021 c 0022 c 0023 c 0024 c 0025 c 0026 c 0027 c 0028 c 0029 c 0030 c 0031 c 0032 c 0033 c 0034 c 0035 c 0036 c 0037 c 0038 c 0039 c 0040 c 0041 c 0042 c 0043 c 0044 c 0045 c 0046 c 0047 c 0048 c 0049 c 0050 c 0051 c 0052 c 0053 c 0054 c 0055 c 0056 c 0057 c PROGRAM TO TRANSLATE ASCII FILES OF MINE RESCUE DATA TO BINARY FILES. THE EDITOR IS USED TO CREATE THE ASCII VERSION OF THE DATA FILES. THESE FILES ARE THEN RUN THROUGH THIS PROGRAM AND A BINARY VERSION IS WRITTEN. THERE ARE 3 ASCII FILES USED BY THIS PROGRAM. THESE FILES ARE (THE FIRST 3 CHARACTERS OF THE NAME INDICATE TO WHICH MINE THE FILE REFERS.) MN1AIR.ASC THIS IS AN AIRWAY LIST FOR MINE 1. IT GETS TRANSLATED BY THE PROGRAM TRANS INTO A BINARY FILE. THE FORMAT IS: AIRWAY JUN JUN NUMBER 1 2 HEIGHT LENGTH (IN.) (FT.) ENTER FOR REMAINING JUNCTIONS IF THERE ARE LESS THAN 6 JUNCTIONS IN AN AIRWAY. AIRWAY # 9 99 STOPS THE PROGRAM. THIS IS A MINER LIST FOR MINE 1. IT GETS TRANSLATED BY THE PROGRAM TRANS INTO A BINARY FILE. THE FORMAT FOR THE FIRST LINE IS: MINER NUMBER START JUNCTION ESCAPE PATH MAX 0-2 INTAKE MINER # 999 STOPS THE PROGRAM. THIS IS A MINER MASS LIST FOR MINE 1. IT GETS TRANSLATED BY THE PROGRAM TRANS INTO A BINARY FILE. THE FORMAT FOR THE SECOND LINE IS: MINER MINER NUMBER MASS REST REST JUNCT TIME 1 1 MN1PAT.ASC REST REST REST JUNCT TIME TIME 2 2 3 THIS IS AN ESCAPE PATH LIST FOR MINE 1. IT GETS TRANSLATED BY THE PROGRAM TRANS INTO A BINARY FILE. THE FORMAT IS: PATH AIRWAY AIRWAY AIRWAY AIRWAY AIRWAY AIRWAY AIRWAY NEXT NUMBER 12 3 4 5 6 7 PATH PATH # 999 STOPS THE PROGRAM. THESE ASCII FILES ARE TRANSLATED INTO A DATA BASE FILE MN1DAT.DAT. THE .DAT FILE HAS FOLLOWING STRUCTURE: EACH RECORD IS 32 BYTES (8 LONG WORDS) LONG. 11 0058 C 0059 C 0060 C 0061 C 0062 C 0063 C 0064 C 0065 C 0066 C 0067 0068 C 0069 C 0070 c 0071 0072 0073 0074 0075 0076 c 0077 c 0078 c 0079 0080 0081 0082 c 0083 c 0084 c 0085 0086 c 0087 c 0088 c 0089 0090 0091 0092 c 0093 c 0094 c 0095 0096 0097 0098 0099 c 0100 c 0101 c 0102 0103 c 0104 c 0105 c 0106 0107 c 0108 c 0109 c 0110 0111 c 0112 0113 c 0114 c 50 RECORDS FOR LINE 1 DATA FROM MN1MIN.ASC 50 RECORDS FOR LINE 2 DATA FROM MN1MIN.ASC 100 RECORDS FOR DATA FROM MN1AIR.ASC 100 RECORDS FOR DATA FROM MNlPAT.ASC PROGRAM TRANS VARIABLES FOR FILE NAMES BYTE FILAIR(12) BYTE FILDAT(12) BYTE FILMIN(12) BYTE FILNAM(12) BYTE FILPAT(12) VARIABLES FOR ASCII CHARACTERS BYTE IDOT , ICHA, ICHC , ICHD , ICHI , ICHJ BYTE ICHM , ICHN , ICHP , ICHR, ICHS , ICHT BYTE ICHU TWO BYTE FILL CHARACTER INTEGER *2 IFILL2 VARIABLES TO INDEX AIRWAYS, JUNCTIONS, MINERS, AND PATHS INTEGER *2 IAIR INTEGER *2 IMIN INTEGER *2 IPAT VARIABLES FOR LUNS INTEGER *2 FAIR INTEGER *2 FDAT INTEGER *2 FMIN INTEGER *2 FPAT FOUR BYTE INTEGER FILL CHARACTER INTEGER *4 IFILL4 FOUR BYTE REAL FILL CHARACTER REAL *4 FILL INPUT VARIABLES REAL *4 HEIGHT, LENGTH i AIRWAYS INTEGER *2 NXTPAT 1NEXT PATH (IF NECESSARY) SET UP ASCII CHARACTERS TO USE WITH FILE NAMES 12 0115 C 0116 0117 0118 0119 0120 0121 0122 0123 0124 0125 0126 0127 0128 0129 C 0130 C 0131 c 0132 0133 0134 0135 c 0136 c 0137 c 0138 0139 0140 0141 0142 c 0143 c 0144 c 0145 1 0146 c 0147 c 0148 c 0149 0150 0151 0152 0153 100 0154 c 0155 c 0156 c 0157 c 0158 c 0159 0160 0161 0162 0163 0164 0165 0166 0167 c 0168 c 0169 c 0170 0171 I DOT = • ICHA = •A' ICHC = •c ICHD = 'D' ICHI = •I' ICHJ = 'J* ICHM = 'M' ICHN = 'N' ICHP = -p. ICHR = »R» ICHS = 'S' ICHT = 1 rp 1 ICHU = 'U' NULL FILL CHARACTERS IFILL2 = IFILL4 = FILL = 0. SET UP LUNS FAIR = 7 FDAT = 8 FMIN = 9 FPAT = 10 ILUN FOR AIRWAY FILE ILUN FOR BINARY FILE !LUN FOR MINER FILE ILUN FOR PATH FILE GET FILE NAME FOR DATA INPUT CALL PRMPTA( ' ENTER PREFIX FOR DATA FILE NAMES: ',FILNAM,M) TRANSFER PREFIX OF FILE NAMES INTO REQUIRED VARIABLES DO 100 I = 1,M FILAIR(I) = FILNAM(I) FILDAT(I) = FILNAM(I) FILMIN(I) = FILNAM(I) FILPAT(I) = FILNAM(I) FILL OUT THE REST OF THE FILE NAMES AIRWAY FILE FILAIR(M+1) = ICHA FILAIR(M+2) = ICHI FILAIR(M+3) = ICHR FILAIR(M+4) = I DOT FILAIR(M+5) = ICHA FILAIR(M+6) s ICHS FILAIR(M+7) = ICHC FILAIR(M+8) = BINARY FILE FILDAT(M+1) a ICHD FILDAT(M+2) = ICHA 13 0172 0173 0174 0175 0176 0177 0178 0179 0180 0181 0182 0183 0184 0185 0186 0187 0188 0189 0190 0191 0192 0193 0194 0195 0196 0197 0198 0199 0200 0201 0202 0203 0204 0205 0206 0207 0208 0209 0210 0211 0212 0213 0214 0215 0216 0217 0218 0219 0220 0221 0222 0223 0224 0225 0226 0227 0228 0229 C C C 137 C C C 3100 3001 1001 FILDAT(M+3) = ICHT FILDAT(M+4) = I DOT FILDAT(M+5) = ICHD FILDAT(M+6) = ICHA FILDAT(M+7) = ICHT FILDAT(M+8) = MINER FILE FILMIN( FILMIN( FILMIN( FILMIN( FILMIN( FILMIN( FILMIN( FILMIN( M+l) M+2) M+3) M+4) M+5) M+6) M+7) M+8) ICHM ICHI ICHN I DOT ICHA ICHS ICHC ESCAPE PATH FILE FILPAT(M+1) = ICHP FILPAT(M+2) = ICHA FILPAT(M+3) = ICHT FILPAT(M+4) = IDOT FILPAT(M+5) = ICHA FILPAT(M+6) = ICHS FILPAT(M+7) = ICHC FILPAT(M+8) = OPEN FILE FOR BINARY OUTPUT DATA OPEN ( UNIT=FDAT, 1 NAME = FILDAT, 1 RECORDSIZE = 8, 1 TYPE = 'UNKNOWN' , 1 FORM = 'UNFORMATTED', 1 ACCESS = 'DIRECT' ) NULL BINARY FILE DO 137 1=1,300 WRITE (FDAT' I ) IFILL4 , IFILL4 , IFILL4 , IFILL4 , 1 IFILL4,IFILL4,IFILL4,IFILL4 OPEN FILE FOR AIRWAY ASCII INPUT DATA OPEN(UNIT = FAIR, 1 NAME = FILAIR, 2 TYPE = 'OLD' ) WRITE (5,3100) FORMAT ( ' ' ) WRITE (5,3001) FORMAT ( * PROCESSING AIRWAY FILE') DO 1001 I = 1,100 READ (FAIR,*) IAIR, I JUN1 , I JUN2 , HEIGHT , LENGTH IF (IAIR.EQ.999)GO TO 200 WRITE( FDAT' 100+IAIR) 1 IAIR r IJUNl,FILL4,IJUN2, FILL4,IFILL4, HEIGHT, LENGTH, I FILL2 14 0230 C 0231 C CLOSE AIRWAY FILE 0232 C 0233 200 CLOSE (UNIT = FAIR) 0234 C 0235 C OPEN FILE FOR MINER ASCII INPUT DATA 0236 C 0237 OPEN(UNIT = FMIN, 0238 1 NAME = FILMIN, 0239 2 TYPE = 'OLD* ) 0240 2000 CONTINUE 0241 WRITE (5,3100) 0242 WRITE (5,3002) 0243 3002 FORMAT(' PROCESSING MINER FILE') 0244 DO 2001 I = 1,100 245 READ(FMIN,*)IMIN,INILOC,IESPAT,VD02M 0246 IF (IMIN.EQ.999)GO TO 202 0247 WRITE(FDAT' IMIN) 0248 1 IMIN, FILL, INILOC, FILL, IESPAT,VD02M , IFILL4 , FILL, IFILL2 0249 READ( FMIN , * ) IMIN ,WMASS , IRJUNl , RT1 , IRJUN2 , RT2 , IRJUN3 , RT3 0250 IF (IMIN.EQ.999)GO TO 202 0251 2001 WRITE(FDAT'50 + IMIN) 0252 1 IMIN, WMASS, IRJUNl, RT1 , IRJUN2 ,RT2 , IRJUN3 , RT3 , IFILL2 0253 C 0254 C CLOSE MINER FILE 0255 C 0256 202 CLOSE (UNIT = FMIN) 0257 C 258 C OPEN FILE FOR PATH ASCII INPUT DATA 0259 C 0260 OPEN(UNIT = FPAT, 0261 1 NAME = FILPAT, 0262 2 TYPE = 'OLD' ) 0263 WRITE (5,3100) 0264 WRITE (5,3003) 0265 3003 FORMAT(' PROCESSING PATH FILE') 0266 DO 4001 I = 1,100 0267 READ( FPAT, * ) IPAT, IAIR1 , IAIR2 , IAIR3 , IAIR4 , IAIR5 , 0268 1 IAIR6,IAIR7,NXTPAT 0269 IF (IPAT.EQ.999)GO TO 203 0270 4001 WRITE (FDAT' 200 + IPAT) 0271 1 IPAT,IAIR1,IAIR2,IAIR3,IAIR4,IAIR5,IAIR6,IAIR7,NXTPAT 0272 C 0273 C CLOSE FILES 0274 C 0275 203 CLOSE (UNIT = FPAT) 0276 CLOSE (UNIT = FDAT) 0277 WRITE (5,3100) 0278 STOP ' MINE DATA FILE TRANSLATED ' 0279 END 15 APPENDIX C— LISTING OF RESCUE. FOR ! THIS DIALOGUE GENERATED THE OUTPUT SHOWN IN ! APPENDIX E $ RUN RESCUE OUTPUT DEVICE CURRENT VALUE OF LP IS 5 NEW LP? RETURN FOR NO CHANGE 3 CURRENT VALUE OF LP IS 3 ARE REST JUNCTIONS TO BE INCLUDED? JFLG=1 : OMIT REST JUNCTIONS JFLG=0 : INCLUDE REST JUNCTIONS CURRENT VALUE OF JFLG IS NEW JFLG? RETURN FOR NO CHANGE 1 CURRENT VALUE OF JFLG IS 1 ARE MINERS ALLOWED TO RUN WHEN HEIGHT > 84"? IWORR = : MINERS ARE TO WALK IWORR = 1 : MINERS ARE TO RUN CURRENT VALUE OF IWORR IS NEW IWORR? RETURN FOR NO CHANGE CURRENT VALUE OF IWORR IS ENTER PREFIX FOR DATA FILE NAMES: MN1 VELOCITY CONSTANTS THE RELATIONSHIP BETWEEN VELOCITY AND SEAM HEIGHT IS GIVEN BY: V=A+B*H+C*H**2+D*H**3 WHERE H IS IN INCHES, AND V IS IN FEET/MIN A = 252.18 NEW A? RETURN FOR NO CHANGE A = 252.2 B = -16.139 NEW B? RETURN FOR NO CHANGE B = -16.14 C = 0.408 16 NEW C? RETURN FOR NO CHANGE C « 0.4080 D » -0.00244 NEW D? RETURN FOR NO CHANGE D * -.2440E-02 0-2 CONSUMPTION EQUATION FOR CRAWLING VDOTO-2 = 0.00 * ( M ** 0.00 ) * VP ** + 48.60 * ( M ** 0.00 ) * VP ** 1 + 0.00 * ( M ** 0.00 ) * VP ** % WHERE VDOTO-2 IS IN ML(STP)/KG/MIN, M IS IN KG, AND VP IS IN M/SEC DO YOU WANT TO CHANGE THIS EXPRESSION ? (Y OR N) 0-2 CONSUMPTION EQUATION FOR DUCKWALK VDOTO-2 = 0.00 * ( M ** 0.00 ) + 39.60 * ( M ** 0.00 ) + 0.00 * ( M ** 0.00 ) WHERE VDOTO-2 IS IN ML( STP)/KG/MIN, M IS IN KG, AND VP IS IN M/SEC DO YOU WANT TO CHANGE THIS EXPRESSION ? (Y OR N) 0-2 CONSUMPTION EQUATION FOR WALKING VDOTO-2 = 7.06 * ( M ** 0.00 ) * VP ** + 0.00 * ( M ** 0.00 ) * VP ** 1 + 3.60 * ( M ** 0.00 ) * VP ** 2 WHERE VDOTO-2 IS IN ML(STP)/KG/MIN, M IS IN KG, AND VP IS IN M/SEC DO YOU WANT TO CHANGE THIS EXPRESSION ? (Y OR N) 0-2 CONSUMPTION EQUATION FOR RUNNING VDOTO-2 = 4.50 * ( M ** 0.00 ) * VP ** + 12.00 * ( M ** 0.00 ) * VP ** 1 + 0.00 * ( M ** 0.00 ) * VP ** 2 WHERE VDOTO-2 IS IN ML( STP) /KG/MIN , M IS IN KG, AND VP IS IN M/SEC DO YOU WANT TO CHANGE THIS EXPRESSION ? (Y OR N) * VP ** * VP ** ^ * VP ** 2 17 "S" TO STOP, RETURN TO CONTINUE "S" TO STOP, RETURN TO CONTINUE "S" TO STOP, RETURN TO CONTINUE "S" TO STOP, RETURN TO CONTINUE "S" TO STOP, RETURN TO CONTINUE FORTRAN STOP 18 0001 C 0002 C 0003 C 0004 C 0005 C 0006 c 0007 c 0008 c 0009 c 0010 c 0011 c 0012 c 0013 c 0014 c 0015 c 0016 c 0017 c 0018 c 0019 c 0020 c 0021 c 0022 c 0023 c 0024 c 0025 c 0026 c 0027 c 0028 c 0029 c 0030 c 0031 c 0032 c 0033 c 0034 c 0035 c 0036 c 0037 c 0038 c 0039 c 0040 c 0041 c 0042 c 0043 c 0044 c 0045 c 0046 c 0047 c 0048 c 0049 c 0050 c 0051 c 0052 c 0053 c 0054 c 0055 c 0056 c 0057 c THIS PROGRAM CALCULATES WHETHER OR NOT A MINER WOULD BE ABLE TO MAKE IT TO SAFTEY FOR A GIVEN ESCAPE PATH, OXYGEN USAGE, AND EMERGENCY SUPPLY OF OXYGEN. SET UP FOR: 50 MINERS ITEM VARIABLE FIRST 50 RECORDS OF %%%DAT.DAT STARTING JUNCTION ESCAPE PATH 0-2 RATE SECOND 50 RECORDS OF %%%DAT.DAT MASS RESTING JUNCTION RESTING TIME RESTING JUNCTION RESTING TIME RESTING JUNCTION RESTING TIME 100 AIRWAYS ITEM JUNCTION 1 JUNCTION 2 JUNCTION 3 JUNCTION 4 JUNCTION 5 JUNCTION 6 HEIGHT 50 EXCAPE PATHS ITEM STARTING JUNCTION ENDING JUNCTION NEXT PATH JUNSTR ESCPAT VDOT MASS RESJUN(I,1) RESTIM(I,1) RESJUN(I f 2) RESTIM(I,2) RESJUN(I,3) RESTIM(I,3) VARIABLE AIRJUN(I,1) AIRJUN(I,2) AIRJUN(I,3) AIRJUN(I,4) AIRJUN(I,5) AIRJUN(I,6) AIRHGT VARIABLE ESCSTR ESCEND NXTPAT THIS DATA IS STORED IN FILE %%%DAT.DAT (THE FIRST 3 CHARACTERS OF THE NAME INDICATE TO WHICH MINE THE FILE REFERS.) THEY ARE TRANSLATED INTO THIS BINARY FILE BY THE PROGRAM TRANS. THE EDITOR IS USED TO CREATE THE ASCII VERSION OF THE DATA FILES. THESE FILES ARE THEN RUN THROUGH TRANS AND A BINARY VERSION IS WRITTEN. THERE ARE 3 ASCII FILES USED BY THIS PROGRAM. THESE FILES ARE (THE FIRST 3 CHARACTERS OF THE NAME INDICATE TO WHICH MINE THE FILE REFERS, MINE 1 IN THIS EXAMPLE.) MN1AIR.ASC 0058 C 0059 C 0060 C 0061 C 0062 C 0063 C 0064 C 0065 C 0066 c 0067 c 0068 c 0069 c 0070 c 0071 c 0072 c 0073 c 0074 c 0075 c 0076 c 0077 c 0078 c 0079 c 0080 c 0081 c 0082 0083 c 0084 c 0085 c 0086 0087 0088 0089 0090 0091 0092 c 0093 c 0094 c 0095 0096 0097 0098 c 0099 c 0100 c 0101 0102 0103 c 0104 c 0105 c 0106 c 0107 c 0108 c 0109 0110 0111 c 0112 c 0113 c 0114 19 THIS IS AN AIRWAY LIST FOR MINE 1. MN1MIN.ASC THIS IS A MINER LIST FOR MINE 1. MN1PAT.ASC THIS IS A ESCAPE PATH LIST FOR MINE 1. THESE ASCII FILES ARE TRANSLATED INTO A DATA BASE FILE MN1DAT.DAT. THE .DAT FILE HAS HE FOLLOWING STRUCTURE: EACH RECORD IS 3 2 BYTES (8 LONG WORDS) LONG. 50 RECORDS FOR LINE 1 DATA FROM MN1MIN.ASC 50 RECORDS FOR LINE 2 DATA FROM MN1MIN.ASC 100 RECORDS FOR DATA FROM MN1AIR.ASC 100 RECORDS FOR DATA FROM MNlPAT.ASC PROGRAM RESCUE MINER RESERVES REAL * 4 MASS(0:50) REAL * 4 VDOT(0:50) INTEGER * 4 JUNSTR(0:50) INTEGER * 4 ESCPAT(0:50) INTEGER * 4 RES JUN( : 50 , 3 ) REAL * 4 RESTIM(0:50,3) AIRWAY RESERVES INTEGER * 4 AIRJUN ( : 100 , 6 ) REAL * 4 AIRHGT( 0:100) REAL * 4 AIRLEN(0 :100) PATH RESERVES INTEGER * 4 ESCAIR( : 50 , 7 ) INTEGER * 4 NXTPAT(0:50) INTERIUM CALCULATIONS ALLOW 21 AIRWAYS AND 3 REST JUNCTIONS TO REACH FRESH AIR REAL *4 TIME(24) REAL *4 U(24) FILE NAME BYTE FILNAM(12) 20 0115 0116 C 0117 C 0118 C 0119 0120 0121 0122 C 0123 C 0124 C 0125 0126 C 0127 C 0128 C 0129 0130 C 0131 C 0132 C 0133 0134 C 0135 C 0136 c 0137 0138 c 0139 c 0140 c 0141 0142 c 0143 0144 c 0145 0146 c 0147 c 0148 c 0149 0150 0151 0152 0153 c 0154 0155 c 0156 0157 0158 0159 0160 0161 c 0162 0163 0164 c 0165 c 0166 c 0167 0168 0169 0170 0171 c BYTE FILDATQ2) VARIABLES TO INDEX AIRWAYS, MINERS, AND PATHS INTEGER *2 IAIR INTEGER *2 IMIN INTEGER *2 IPAT VARIABLES FOR LUNS INTEGER *2 FDAT TWO BYTE FILL CHARACTER INTEGER *2 IFILL2 FOUR BYTE INTEGER FILL CHARACTER INTEGER *4 IFILL4 FOUR BYTE REAL FILL CHARACTER REAL *4 FILL READ BUFFER RESERVES REAL *4 RELBUF(4) INTEGER *4 I4BUF(7) INTEGER *2 ISBUF,IEBUF DATA REDUCTION CONSTANT RESERVES REAL *4 A REAL *4 B REAL *4 C REAL *4 D BYTE IANS(5) BYTE BYTE BYTE BYTE BYTE REAL REAL ITEXT(4,8) ITEXTK8) ITEXT2(8) ITEXT3(8) ITEXT4(8) *4 ALPHA(3,4) *4 LAMDA(3,4) ! CONVERSION 1FROM HEIGHT !TO [VELOCITY ! TERMINAL RESPONSE •TEXT TO OUTPUT ! INPUT TEXT ! INPUT TEXT ! INPUT TEXT ■INPUT TEXT 1COEFFICIENT MATRIX FOR 0-2 USE ! EXPONENT MATRIX FOR 0-2 USE SET UP TEXTS FOR LATER PRINTOUT DATA ITEXT1 / ' C ' , ' R ' , ' A' , ' W , ' L ' , ' I ' , * N ' , ' G ' / DATA ITEXT2 / ' D' , ' U ' , ' C ' , ' K ' , ' W' , ' A' , ' L * , * K' / DATA ITEXT3 /'W , ' A* , ' L ' , ' K ' , ' I * , ' N ' , ' G * , ' '/ DATA ITEXT4 /* R' , ' U ' , ' N ' , ' N ' , ' I ' , ' N ' , ' G ' , ' '/ 21 0172 C GET TEXT INTO ITEXT IN A WAY THAT MAKES IT EA 0173 C AND STILL RETAINS A READABLE INPUT FORMAT 0174 C 0175 DO I = 1,8 0176 ITEXT (1,1) = ITEXTl(I) 0177 ITEXT(2,I) = ITEXT2(I) 0178 ITEXT (3, I) = ITEXT3(I) 0179 ITEXT (4, I) = ITEXT4(I) 0180 END DO 0181 C 0182 C NULL FILL CHARACTERS 0183 C 0184 LP=5 0185 IFILL2 = 0186 IFILL4 = 0187 FILL = 0. 0188 C 0189 C 5 MPH IN M/SEC 0190 C 0191 C MPH 88 FT/SEC 12 IN 0.0254 M 0192 0193 C C * * * 60 MPH FT IN 0194 C 0195 V5MPH = 5. * 88. * 12. * 0.0254 /60. 0196 C 0197 C FIND OUT ABOUT OUTPUT DEVICE 0198 C 0199 WRITE(5,2000) 0200 WRITE (5, 5) 0201 5 FORMAT (' OUTPUT DEVICE') 0202 WRITE (5, 7) LP 0203 7 FORMAT(' CURRENT VALUE OF LP IS ' ,1X,I4) 0204 CALL PRMPTF(' NEW LP? RETURN FOR NO CHANGE ' 0205 IF(NF.NE.O) LP=XPNEW 0206 WRITE(5,2000) 0207 WRITE (5, 7) LP 0208 C 0209 C FIND OUT IF WE ARE TO INCLUDE REST JUNCTIONS 0210 C JFLG=1 : OMIT REST JUNCTIONS 0211 C JFLG=0 : INCLUDE REST JUNCTIONS 0212 c 0213 WRITE(5,2000) 0214 JFLG=0 0215 WRITE(5,19) 0216 19 FORMAT (' ARE REST JUNCTIONS TO BE INCLUDED? ' 0217 1' JFLG=1 : OMIT REST JUNCTIONS'/ 0218 2' JFLG=0 : INCLUDE REST JUNCTIONS') 0219 WRITE(5,2000) 0220 WRITE(5,22) JFLG 0221 WRITE(5,20T)0) 0222 22 FORMAT ( ' CURRENT VALUE OF JFLG IS ',1X,I4) 0223 CALL PRMPTF(' NEW JFLG? RETURN FOR NO CHANGE 0224 IF(NF.NE.O) JFLG=XJFLG 0225 WRITE(5,2000) 0226 WRITE(5,22) JFLG 227 WRITE(LP,22) JFLG 0228 WRITE(LP,2000) ,XPNEW,NF) ,XJFLG,NF) 22 0229 C 0230 C 0231 C 0232 C 0233 C 0234 0235 0236 0237 23 0238 0239 0240 0241 0242 0243 24 0244 0245 0246 0247 0248 0249 0250 0251 C 0252 C 0253 C 0254 0255 200 0256 C 0257 c 0258 c 0259 0260 c 0261 c 0262 c 0263 1 0264 c 0265 c 0266 c 0267 0268 100 0269 c 0270 c 0271 c 0272 c 0273 c 0274 0275 0276 0277 0278 0279 0280 0281 0282 c 0283 c 0284 c 0285 FIND OUT IF MINERS ARE ALLOWED TO RUN WHEN HEIGHT > 84" IWORR = : MINERS ARE TO WALK IWORR = 1 : MINERS ARE TO RUN WRITE(5,2000) IWORR = WRITE(5,23) FORMAT ( ' ARE MINERS ALLOWED TO RUN WHEN HEIGHT > 84"? '/ 1' IWORR = : MINERS ARE TO WALK '/ 2' IWORR = 1 : MINERS ARE TO RUN ') WRITE(5,2000) WRITE (5, 24) IWORR WRITE (5, 2000) FORMAT(' CURRENT VALUE OF IWORR IS ' ,1X,I4) CALL PRMPTF(' NEW IWORR? RETURN FOR NO CHANGE ',XIWORR,NF) IF(NF.NE.O) IWORR = XIWORR WRITE(5,2000) WRITE (5, 24) IWORR WRITE(LP,24) IWORR WRITE(LP,2000) WRITE (5,2000) NULL CERTAIN VARIABLES DO 200 I = 1,50 JUNSTR(I) = SET UP LUNS FDAT = 8 !LUN FOR BINARY FILE GET FILE NAME FOR DATA INPUT CALL PRMPTA( ' ENTER PREFIX FOR DATA FILE NAMES: ',FILNAM,M) TRANSFER PREFIX OF FILE NAMES INTO REQUIRED VARIABLES DO 100 I = 1,M FILDAT(I) = FILNAM(I) FILL OUT THE REST OF THE FILE NAMES BINARY FILE FILDAT(M+1) = 'D' FILDAT(M+2) = 'A' FILDAT(M+3) = 'T' FILDAT(M+4) = ' . * FILDAT(M+5) = 'D' FILDAT(M+6) = 'A' FILDAT(M+7) = »T' FILDAT(M+8) = OPEN FILE FOR BINARY INPUT DATA OPEN ( UNIT=FDAT, 23 0286 1 NAME = FILDAT, 0287 1 RECOPDSIZE = 8, 0288 1 TYPE = 'OLD' , 0289 1 FORM = 'UNFORMATTED', 0290 1 ACCESS = 'DIRECT' ) 0291 C 0292 C READ DATA FROM BINARY FILE 0293 C 0294 C AIRWAY DATA 0295 C 0296 C JUNCTION 1 0297 C JUNCTION 2 0298 C HEIGHT 0299 c LENGTH 0300 c 0301 DO 10 I = 1,100 0302 c 0303 c READ DATA 0304 c 0305 READ(FDAT'100 + DISBUF, 0306 1 I4BUF(1) ,RELBUF(1) , 0307 2 I4BUF(2) ,RELBUF(2) , 0308 3 I4BUF(3) ,RELBUF(3) , 0309 5 RELBUF(4) ,IEBUF 0310 c 0311 c TRANSFER TO VARIABLES 0312 c 0313 AIRHGT (ISBUF) = RELBUF(3) 0314 AIRLEN (ISBUF) = RELBUF(4) 0315 DO 10 11 = 1,2 0316 AIRJUN(I,I1) = I4BUF(I1) 0317 10 CONTINUE 0318 c 0319 c READ MINER DATA (FIRST PART) 0320 c 0321 c FIRST 50 RECORDS OF %%%DAT.D£ 0322 c 0323 c STARTING JUNCTION 0324 c ESCAPE PATH 0325 c 0-2 RATE 0326 c 0327 DO 30 I = 1,50 0328 c 0329 c READ DATA 0330 c 0331 READ(FDAT' DISBUF, 0332 1 RELBUF(l) ,I4BUF(1) , 0333 2 RELBUF(2) ,I4BUF(2) , 0334 3 RELBUF(3) ,I4BUF(3) , 0335 4 RELBUF(4), 0336 5 IEBUF 0337 c 0338 c TRANSFER TO VARIABLES 0339 c 0340 JUNSTR (ISBUF) = I4BUF(1) 0341 ESCPAT (ISBUF) = I4BUF(2) 0342 VDOT (ISBUF) = RELBUF(3) AIRJUN(I,1) AIRJUN(I,2) AIRHGT AIRLEN JUNSTR ESCPAT VDOT 24 0343 30 0344 C 0345 C 0346 C 0347 C 0348 C 0349 C 0350 C 0351 C 0352 C 0353 C 0354 C 0355 c 0356 c 0357 0358 c 0359 c 0360 c 0361 0362 0363 0364 0365 0366 0367 c 0368 c 0369 c 0370 0371 0372 0373 0374 0375 0376 0377 40 0378 C 0379 c 0380 c 0381 c 0382 c 0383 c 0384 c 0385 c 0386 c 0387 c 0388 c 0389 c 0390 0391 c 0392 c 0393 c 0394 0395 0396 0397 0398 0399 CONTINUE READ MINER DATA (SECOND PART) SECOND 50 RECORDS OF %%%DAT.DAT MASS RESTING JUNCTION RESTING TIME RESTING JUNCTION RESTING TIME RESTING JUNCTION RESTING TIME DO 40 I = 1,50 READ DATA READ(FDAT'50 + I) ISBUF, 1 RELBUF(l) ,I4BUF(1) , 2 RELBUF(2) ,I4BUF(2) , 3 RELBUF(3) ,I4BUF(3) , 4 RELBUF(4), 5 IEBUF TRANSFER TO VARIABLES MASS (ISBUF) = RELBUF(l) RESJUN ( ISBUF, 1) = I4BUFQ) RESTIM ( ISBUF, 1) = RELBUF(2) RESJUN (ISBUF, 2) = I4BUF(2) RESTIM (ISBUF, 2) = RELBUF(3) RESJUN (ISBUF, 3) = I4BUF(3) RESTIM (ISBUF, 3) = RELBUF(4) CONTINUE READ ESCAPE PATH DATA DO 50 I = 1,50 READ DATA READ(FDAT'200 + I) ISBUF, MASS RESJUN (1,1) RESTIM(I,1) RESJUN (I, 2) RESTIM(I,2) RESJUN (I, 3) RESTIM(I,3) ESCAPE AIRWAY 1 ESCAIRd ,1) ESCAPE AIRWAY 2 ESCAIRd, ,2) ESCAPE AIRWAY 3 ESCAIRd r3) ESCAPE AIRWAY 4 ESCAIRd, ,4) ESCAPE AIRWAY 5 ESCAIRd r5) ESCAPE AIRWAY 6 ESCAIRd, r6) ESCAPE AIRWAY 7 ESCAIRd r7) NEXT PATH NXTPAT I4BUF(1) ,I4BUF(2) , I4BUF(3) ,I4BUF(4) , I4BUF(5) ,I4BUF(6) , I4BUF(7) , IEBUF 25 0400 C 0401 C TRANSFER TO VARIABLES 0402 C 0403 DO 50 II = 1,7 0404 ESCAIR(ISBUF,I1) = I4BUF(I1) 0405 NXTPAT (ISBUF) = IEBUF 0406 50 CONTINUE 0407 C 0408 C VELOCITY CONSTANTS 0409 C THE RELATIONSHIP BETWEEN VELOCITY AND SEAM HEIGHT IS 0410 C GIVEN BY: 0411 C V=A+B*H+C*H**2+D*H**3 0412 C 0413 C WHERE H IS IN INCHES, AND V IS IN FEET/MIN 0414 C 0415 WRITE (5,2000) 0416 WRITE (5,2007) 0417 2007 FORMAT(' VELOCITY CONSTANTS ' ) 0418 WRITE (5,2008) 0419 2008 FORMAT ( ' THE RELATIONSHIP BETWEEN VELOCITY AND SEAM HEIGHT IS ') 0420 WRITE (5,2009) 0421 2009 FORMAT*' GIVEN BY:') 0422 WRITE (5,2010) 0423 2010 FORMAT ( ' V=A+B*H+C*H**2+D*H**3') 0424 WRITE (5,2000) 0425 WRITE (5,2011) 0426 20.11 FORMAT(' WHERE H IS IN INCHES, AND V IS IN FEET/MIN') 0427 WRITE (5,2000) 0428 C 0429 A = 252.18 0430 B = -16.139 0431 C = 0.408 0432 D = -0.00244 0433 C 0434 WRITE (5,2012) 0435 2012 FORMAT ( ' A = 252.18') 0436 CALL PRMPTF(' NEW A? RETURN FOR NO CHANGE ',ANEW,NF) 0437 IF (NF.NE.O)A = ANEW 0438 WRITE (LP, 2013) A 0439 WRITE (5,2000) 0440 WRITE (5,2013)A 0441 2013 FORMAT ( ' A = ',G10.4) 0442 WRITE (5,2000) 0443 WRITE (5,2014) 0444 2014 FORMATC B = -16.139') 0445 CALL PRMPTF(' NEW B? RETURN FOR NO CHANGE ',BNEW,NF) 0446 IF (NF.NE.O)B = BNEW 0447 WRITE (5,2000) 0448 WRITE (LP,2015)B 0449 WRITE (5,2015)B 0450 2015 FORMAT(' B = *,G10.4) 0451 WRITE (5,2000) 0452 WRITE (5,2016) 0453 2016 FORMAT ( ' C = 0.408') 0454 CALL PRMPTF(' NEW C? RETURN FOR NO CHANGE ',CNEW,NF) 0455 IF (NF.NE.O)C = CNEW 0456 WRITE (5,2000) 26 0457 0458 0459 0460 0461 0462 0463 0464 0465 0466 0467 0468 0469 0470 0471 0472 0473 0474 0475 0476 0477 0478 0479 0480 0481 0482 0483 0484 0485 0486 0487 0488 0489 0490 0491 0492 0493 0494 0495 0496 0497 0498 0499 0500 0501 0502 0503 0504 0505 0506 0507 0508 0509 0510 0511 0512 0513 2017 2018 2019 C C C C C c c c c c c c c c c c c c WRITE (LP, 2017) C WRITE (5,2017)C FORMAT( ' C = ' ,G10.4) WRITE (5,2000) WRITE (5,2018) FORMAT( * D = -0.00244' ) CALL PRMPTF(' NEW D? RETURN FOR NO CHANGE ',DNEW,NF) IF (NF.NE.O)D = DNEW WRITE (5,2000) WRITE(LP,2019) D WRITE (5,2019)D FORMAT ( ' D = ' ,G10.4) WRITE (5,2000) 0-2 CONSUMPTION CONSTANTS THE RELATIONSHIP BETWEEN 0-2 CONSUMPTION, MASS, AND VELOCITY IS GIVEN BY: VDOT02 = ALPHA (1, J) + ALPHA(2,J) + ALPHA(3,J) * ( M ** LAMDA(1,J) ) * * ( M ** LAMDA(2,J) ) * * ( M ** LAMDA(3,J) ) * VP VP VP ** ** ** WHERE M IS IN KG, AND VDOT02 IS IN ML O - 2/KG/MIN VP IS IN M/SEC, AND J INDICATES AS FOLLOWS: 1 => CRAWL 2 => DUCKWALK 3 => WALK 4 => RUN CRAWL ALPHA(1,1) = 0. LAMDA(1,1) = 0. ALPHA(2,1) = 48.6 LAMDA(2,1) = 0. ALPHA(3,1) = 0. LAMDA(3,1) = 0. DUCKWALK ALPHA(1,2) = 0. LAMDA (1,2) = 0. ALPHA(2,2) = 39.6 LAMDA(2,2) = 0. ALPHA(3,2) = 0. LAMDA(3,2) = 0. WALKING ALPHA (1,3) = 7.06 LAMDA (1,3) = 0. ALPHA(2,3) = 0. LAMDA (2, 3) = 0. ALPHA(3,3) = 3.6 LAMDA (3, 3) = 0. RUNNING !V ** !V ** IV ** 1 !V * * 1 •V * * 2 !V * * 2 ■V ** !V ** !V ** 1 !V * * 1 !V ** 2 !V * * 2 ■V ** !V * * !V ** 1 !V ** 1 !V ** 2 !V * * 2 27 0514 0515 0516 0517 0518 0519 0520 0521 0522 0523 0524 0525 0526 0527 0528 0529 0530 0531 0532 0533 0534 0535 0536 0537 0538 0539 0540 0541 0542 0543 0544 0545 0546 0547 0548 0549 0550 0551 0552 0553 0554 0555 0556 0557 0558 0559 0560 0561 0562 0563 0564 0565 0566 0567 0568 0569 0570 2020 2021 2022 2023 2025 2026 2499 2498 2024 2500 C C C C C C 2036 123 2000 2004 2001 ALPHA(1,4) LAMDA(1,4) ALPHA(2,4) LAMDA(2,4) ALPHA(3,4) LAMDA(3,4) 4.5 0. 12. 0. 0. 0. ■V ** !V * * !V ** 1 !V * * 1 IV * * 2 IV * * 2 DO 2500 J = 1,4 WRITE WRITE FORMAT WRITE WRITE FORMAT WRITE FORMAT WRITE FORMAT WRITE FORMAT WRITE FORMAT WRITE ,8A1) 2,' ) * VP ** 2,' ) * VP ** 1 2,' ) * VP *• 2 2*) ) 5,2000) 5,2020) (ITEXT(J,K) ,K=1,8) '0-2 CONSUMPTION EQUATION FOR 5,2000) 5,2021)ALPHA(1,J) ,LAMDA(1,J) ' VDOTO-2 = ',F5.2,' * ( M ** ',F5 5,2022)ALPHA(2,J) ,LAMDA(2,J) + ' ,F5.2, ' * ( M ** * ,F5 5,2023)ALPHA(3,J) ,LAMDA(3,J) + ' ,F5.2,* * ( M ** • ,F5 5,2025) ' WHERE VDOTO-2 IS IN ML( STP)/KG/MIN , 5,2026) ' M IS IN KG, AND VP IS IN M/SEC ' ) 5,2000) CALL PRMPTA( ' DO YOU WANT TO CHANGE THIS EXPRESSION? 1 (Y OR N) ' ,IANS,NF) WRITE (5,2000) IF (NF.EQ.O)GO TO 2498 IF (IANS(l) .EQ.'N* )GO TO 2498 IF (IANS(l) .EQ. 'Y' )CALL CHGEXP( ALPHA, LAMDA, ITEXT, J , LP) IF (IANS(l) .EQ. ' Y' )GO TO 2500 GO TO 2499 WRITE(LP,2000) WRITE (LP, 2024) (ITEXT(J,K) ,K=1,8) FORMATdX,' STANDARD EXPRESSION USED FOR 0-2 1 CONSUMPTION FOR ' , 8A1 ) CONTINUE MAIN LOOP FOR ALL MINERS DO 990 I = 1,50 STOP SCREEN EVERY 5 MINERS TO ALLOW EXAMINATION OF THE DATA IF (MOD(I,5) .NE.0)GO TO 123 WRITE (LP, 2000) WRITE (5,2036) FORMAT ( ' "S" TO STOP, RETURN TO CONTINUE') READ(5,2100)ANS IF (ANS.EQ. 'S' )STOP WRITE (LP, 2000) FORMAT ( ' ' ) IF (JUNSTR(I) .EQ.0)GO TO 1999 WRITE (LP, 2004)1, JUNSTR(I) FORMATdX,' MINER ',13,' STARTING AT JUNCTION WRITE (LP, 2001)1, MASS(I) ,VDOT(I) FORMATdX,' MINER ',13,' MASS: F5.2 KG 13) VDOT 0-2 ,F5.2 28 0571 1 ' ML 0-2/KG/MIN') 0572 ICURJUN = JUNSTR(I) ! CURRENT JUNCTION 057 3 ICURPAT = ESCPAT(I) ! CURRENT PATH 0574 IF(JUNSTR(I) .EQ.AIRJUN( ESCAIR( ESCPAT( I ) ,1) ,1) )GO TO 137 0575 IF(JUNSTR(I) . EQ.AIRJUN( ESCAIR( ESCPAT( I ) ,1) ,2) )GO TO 137 0576 WRITE (LP, 2000) 0577 WRITE (LP, 2039) 0578 WRITE (LP, 2000) 0579 2039 FORMAT ( ' ! I !!! I !!!!!!!!! I !!!! I !!!!!!!!!!! ! ' ) 0580 WRITE (LP,2032)ESCAIR(ESCPAT(I) ,1) ,JUNSTR(I) 0581 2032 FORMAT ( ' MINER IN AIRWAY ',13,' THIS 0582 1 AIRWAY DOES NOT START AT JUNCTION ',13) 0583 WRITE (5,2037) 0584 2037 FORMAT( ' CONTINUE? ( Y/N ) ' ) 0585 READ (5,2100)ANS 0586 2100 FORMAT(A) 0587 IF (ANS.EQ. 'N' ) STOP 0588 C 0589 C NULL 0-2 USAGE 0590 C 0591 137 02USE = 0. 0592 C 0593 C NULL TOTAL TIME 0594 C 0595 TIMTOT = 0. 0596 C 0597 C NULL ESCAPE PATH MARKER 0598 C 0599 INXT = 0600 C 0601 C NULL REST JUNCTION FLAG AND COUNTER 0602 C 0603 IRESFLG = 0604 IRESCNT = 0605 C 0606 C NULL TOTAL DISTANCE TRAVELED 0607 C 0608 SAIR=0. 0609 C 0610 1009 WRITE ( LP, 2005 ) ICURPAT 0611 2005 FORMAT (IX,' MINER IS ON PATH ',13) 0612 DO 1000 IAIRJ = 1,7 0613 ICURAIR = ESCAIR( ICURPAT, IAIRJ) 0614 IF (ICURAIR. EQ.0) GO TO 989 0615 IF (IAIRJ. EQ.DGO TO 1011 0616 C 0617 C CHECK TO SEE THAT CURRENT AIRWAY AND PREVIOUS AIRWAY INTERSECT 0618 C 0619 IF (AIRJUN(ICURAIR,1) 0620 1 .EQ. 0621 2 AIRJUN(ESCAIR(ICURPAT,IAIRJ-1) ,2) )GO TO 1011 0622 IF (AIRJUN(ICURAIR,1) 0623 1 .EQ. 0624 2 AIRJUN(ESCAIR( ICURPAT, IAIRJ-1) ,1) ) GO TO 1011 0625 IF (AIRJUN(ICURAIR,2) 0626 1 .EQ. 0627 2 AIRJUN(ESCAIR( ICURPAT, IAIRJ-1) ,2) )GO TO 1011 29 0628 0629 0630 0631 0632 0633 0634 0635 2033 0636 0637 0638 0639 0640 1011 0641 C 0642 C 0643 C 0644 0645 0646 0647 C 0648 C 0649 C 0650 0651 0652 0653 0654 0655 0656 0657 C 0658 C 0659 C 0660 C 0661 0662 C 0663 C 0664 C 0665 0666 C 0667 0668 0669 3006 0670 0671 0672 0673 0674 C 0675 C 0676 C 0677 141 0678 0679 C 0680 0681 c 0682 c 0683 c 0684 IF (AIRJUN(ICURAIR,2) 1 .EQ. 2 AIRJUN(ESCAIR(ICURPAT,IAIRJ-1) ,1) )GO TO 1011 WRITE (LP, 2000) WRITE (LP, 2039) WRITE (LP, 2000) WRITE (LP,2033)ICURAIR,ESCAIR(ICURPAT,IAIRJ-1) FORMAT ( ' CURRENT AIRWAY # *,I3,' DOES NOT INTERSECT WITH 1 THE PREVIOUS AIRWAY # ',13) WRITE (5,20 37) READ (5,2100)ANS IF (ANS.EQ.'N' )STOP WRITE (LP, 2000) IS THIS A REST JUNCTION? IF (AIRJUN(ESCAIR(ICURPAT,IAIRJ) ,1) . EQ.RESJUN( I , 1 ) )IRESFLG = 1 IF (AIRJUN(ESCAIR(ICURPAT,IAIRJ) ,1) .EQ.RESJUN( I , 2 ) ) IRESFLG = 2 IF (AIRJUN(ESCAIR(ICURPAT,IAIRJ) ,1) .EQ.RESJUN( I ,3 ) )IRESFLG = 3 REST IF APPROPRIATE IF(JFLG.EQ.l) IRESFLG=0 IF ( IRESFLG. EQ.0) GO TO 141 IRESCNT = IRESCNT + 1 TIME (21 + IRESCNT) = RESTIM( I , IRESFLG) TIMTOT = TIMTOT + TIME(21 + IRESFLG) W = MASS(I) VP = 0.0 ! VELOCITY CALCULATE 0-2 UPTAKE USE ONLY THE CONSTANT TERM FROM THE WALKING EXPRESSION. U(21 + IRESCNT) = ALPHA(1,3) * W ** LAMDA(1,3) CALCULATE 0-2 USAGE 02USE = 02USE + U(21 + IRESCNT) * W * TIME(21 + IRESCNT) / 1000 WRITE (5,2000) WRITE (5,300 6)I,RESJUN(I,IRESFLG) ,RESTIM(I , IRESFLG) FORMATdX,' MINER ',13,' IS RESTING AT JUNCTION ',13, 1 * FOR ' ,F5.2, * MINUTES* ) WRITE (5, 2002) TIMTOT WRITE (5,2038)O2USE IRESFLG = CALCULATE VELOCITY IN AIRWAY IAIRW H = AIRHGT(ICURAIR) 1AIRWAY HEIGHT W = MASS(I) ! MINER MASS V=A+B*H+C*H**2+D*H**3 CALCULATE TIME ON PATH TIME(INXT + IAIRJ) = AIRLEN ( ICURAIR)/V 30 0685 TIMTOT = TIMTOT + TIME(INXT + IAIRJ) 0686 C 0687 C CONVERT VELOCITY TO M/SEC 0688 C 0689 C FT 12 IN 0.0254 M MIN 0690 C * * * 0691 C MIN FT IN 60 SEC 0692 C 0693 VP = V * 12./60.*0.0254 0694 C 069 5 C CALCULATE 0-2 UPTAKE 0696 C 0697 C WE HAVE 4 DIFFERENT 0-2 UPTAKE EXPRESSIONS. THEY ARE: 0698 C 0699 C CRAWL H < 30" 0700 C VDOT02 = 48.6 * VP 0701 C LOCMTN = 1 0702 C 0703 C DUCKWALK 30" < H < 50" 0704 C VDOT02 = 39.6 * VP 0705 C LOCMTN = 2 0706 C 0707 C WALK 50" < H 0708 C VDOT02 = 7.06 +3.6 * VP * VP 0709 C LOCMTN = 3 0710 C 0711 C RUN S > 134 M/MIN 0712 C VDOT02 = 4.5 + 12.VP 0713 C LOCMTN = 4 0714 C 0715 IF (H.LE.30.0)LOCMTN = 1 0716 IF (H.GT.30.0.AND.H.LE.50.0)LOCMTN = 2 0717 IF (H.GT.50.0.AND.H.LE.84.0)LOCMTN = 3 0718 IF (H.GT. 84.0. AND. IWORR.EQ. 1 ) LOCMTN = 4 0719 IF ( LOCMTN. EQ. 4 )VP = V5MPH 0720 U(INXT + IAIRJ) = 0. 0721 DO 149 J = 1,3 07 22 U(INXT + IAIRJ) = U(INXT + IAIRJ) + 0723 1 ALPHA( J, LOCMTN) * W ** LAMDA( J , LOCMTN) * VP ** (J-l) 0724 149 CONTINUE 0725 C 0726 C CALCULATE 0-2 USAGE 0727 C 0728 153 02USE = 02USE + U(INXT + IAIRJ) * W * TIME(INXT + IAIRJ) / 1000 0729 C 0730 WRITE (LP, 2000) 0731 WRITE (LP, 2006)1, ICURAIR 0732 2006 FORMATQX,' MINER ',13,' IS IN AIRWAY ',13) 0733 WRITE ( LP, 2027 )H , ( ITEXT( LOCMTN , J) , J=l ,8 ) 0734 2027 FORMATdX,' AIRWAY HEIGHT = ',F5.2,' IN. LOCOMOTION => ',8A1) 0735 WRITE (LP, 2002) TIMTOT 0736 2002 FORMATdX,' TIME USED SINCE START OF ESCAPE :', F6 . 3 , ' MINUTES') 0737 WRITE ( LP, 2038 )02USE 0738 2038 FORMATdX,' 0-2 USED SINCE START OF ESCAPE: ',F8.2,' 1 STP') 0739 IF(TIMTOT.GT. 60.0. OR. 02USE.GT. 100.0) WRITE( LP, 7700 ) 0740 7700 FORMAT(/5X,' ***** MINER STOPS *****•/) 0741 IJI=INXT+IAIRJ 31 0742 0743 2041 0744 0745 0746 0747 0748 2042 0749 0750 0751 0752 0753 2046- 0754 0755 C 0756 0757 0758 0759 C 0760 C 0761 C 0762 0763 0764 0765 0766 0767 0768 0769 0770 0771 0772 0773 0774 0775 0776 0777 0778 2034 0779 0780 0781 0782 0783 1111 0784 0785 1000 0786 c 0787 c 0788 c 0789 c 0790 c 0791 989 0792 C 0793 C 0794 C 0795 0796 140 0797 C 0798 C WRITE(LP,2041) I , ICURAIR,U( IJI ) FORMATQX,' 0-2 UPTAKE RATE BY MINER' , IX, 13 , IX, ' IN AIRWAY', 1 IX, 13, IX, 'IS ' ,1X,F5.2,1X,'ML 0-2 /KG /MIN' ) VS=V/88. SAIR=SAIR+AIRLEN( ICURAIR) WRITE(LP,2042) V,VS ,AIRLEN( ICURAIR) ,SAIR F0RMAT(1X,' MINER SPEED* , 1X,F7 . 2 , IX, ' FPM ' ,4X,' ( ',F7.2,' MPH) * 1 ,4X,' AIRWAY LENGTH', 2 IX, F7. 2, IX, 'FT* ,4X, 3 /,2X, 'TOTAL DISTANCE TRAVELLED: ', IX, F7 . 2 , IX, ' FT ' ) WRITE (LP, 2046) I,VDOT(I) FORMATdX,* MAX 0-2 UPTAKE BY MINER ' , IX, 13 , IX, ' IS ',F5.2 1 ,1X'ML 0-2/KG/MIN') IF (MOD(IAIRJ,7) .NE.0)GO TO 1000 IF (NXTPAT(ICURPAT) .EQ.0)GO TO 1000 INXT = INXT + 7 ! MARKER FOR NUMBER OF ESCAPE PATHS CHECK TO SEE THAT CURRENT AIRWAY AND NEXT AIRWAY INTERSECT IF (AIRJUN( ICURAIR, 2) 1 .EQ. 2 AIRJUN(ESCAIR(NXTPAT(ICURPAT) ,1) ,1) ) GO TO 1111 IF (AIRJUN( ICURAIR, 2) 1 .EQ. 2 AIRJUN(ESCAIR(NXTPAT(ICURPAT) ,1) ,2) ) GO TO 1111 IF (AIRJUN( ICURAIR, 1) 1 .EQ. 2 AIRJUN(ESCAIR(NXTPAT(ICURPAT) ,1) ,1) )GO TO 1111 IF (AIRJUN( ICURAIR, 1) 1 .EQ. 2 AIRJUN(ESCAIR(NXTPAT(ICURPAT) ,1) ,2) )GO TO 1111 WRITE (LP, 2000) WRITE (LP, 2039) WRITE (LP, 2000) WRITE (LP,2034)ICURAIR,ESCAIR(NXTPAT(ICURPAT) ,1) FORMAT ( ' CURRENT AIRWAY # ',13,' DOES NOT INTERSECT WITH 1 THE NEXT AIRWAY # ',13) WRITE (5,2037) READ(5,2100)ANS IF (ANS.EQ. 'N' )STOP ICURPAT - NXTPAT(ICURPAT) GO TO 1009 CONTINUE CALCULATE PHYSIOLOGICAL STRESS OF THIS WORK NULL G FACTOR G = 0. CALCULATE G FACTOR DO 140 ITOT = 1,INXT + IAIRJ -1 G = G + U(ITOT) * TIME(ITOT) / VDOT ( I ) / TIMTOT ADD FOR REST TIMES 32 0799 C 0800 DO 142 IRES = 1,IRESCNT 0801 142 G = G + U(IRES) * TIME(21 + IRES) / VDOT(I) / TIMTOT 0802 C 0803 C CALCULATE TAU2 0804 C THIS IS TIME AVAILABLE TO A MINER AT MAXIMUM PHYSICAL 0805 C EXERTION BEFORE MINER STOPS 0806 C 0807 TAU2 = 10. ** (3.76 - 3.1 * G) 0808 WRITE (LP,2003)TAU2 0809 2003 FORMATdX,' TIME AVAILABLE FOR ESCAPE: ',G10.2,' MINUTES ') 0810 990 CONTINUE 0811 1999 CLOSE (UNIT = FDAT) 0812 STOP 0813 END 33 0001 C 0002 C 0003 C 0004 C 0005 C 0006 C 0007 C 0008 C 0009 C 0010 C 0011 C 0012 0013 0014 0015 0016 0017 0018 0019 0020 0021 0022 0023 ROUTINE TO PUT PROMPT STRING OUT TO TERMINAL AND THEN GET BACK FROM TERMINAL A STRING AND ITS LENGTH. THIS IS VERY USEFUL FOR GETTING FILE NAMES FROM THE TERMINAL. IN >> INPUT STRING FROM CALLING ROUTINE OUT >> STRING FROM TERMINAL BACK TO CALLING ROUTINE. M >> LENGTH OF OUT. SUBROUTINE PRMPTA( IN ,OUT ,M) BYTE IN(80) ,OUT(80) DO 10 1=1,80 IF(IN(I) ,EQ. 0)GOTO 11 10 CONTINUE 11 K=I-1 WRITE (5, 1000) (IN(I) ,I=1,K) 1000 FORMAT ( IX, A1,$) READ(5,2000) M, (OUT( L) , L=l ,M) 2000 FORMAT ( Q, 8 0A1) RETURN END 34 0001 C 0002 C ROUTINE TO PUT PROMPT STRING OUT TO TERMINAL 000 3 C AND THEN GET BACK FROM TERMINAL A FLOATING POINT VALUE 0004 C AND ITS LENGTH. THIS IS VERY USEFUL FOR GETTING 000 5 C VALUES FROM THE TERMINAL WHERE A CARRIAGE 0006 C RETURN MAY BE EXPECTED. 0007 C 0008 C IN >> INPUT STRING FROM CALLING ROUTINE 0009 C XID >> VALUE FROM TERMINAL TRANSFERED BACK 0010 C TO CALLING ROUTINE. XID IS READ AS A 0011 C STRING AND DECODED BEFORE BEING SENT BACK 0012 C NZ >> LENGTH OF OUT, NZ = IF CARRIAGE 0013 C RETURN IS THE RESPONSE FROM THE TERMINAL. 0014 C 0015 SUBROUTINE PRMPTF( IN,XID,NZ ) 0016 BYTE IN(80) ,BUFF(80) 0017 CALL ERRSET( 64, .TRUE. , .FALSE. , .TRUE. , .FALSE. ,200) 0018 DO 10 1=1,80 0019 IF(IN(I) .EQ. 0)GOTO 11 0020 10 CONTINUE 0021 11 K=I-1 0022 12 WRITE(5,900) 0023 900 FORMAT(IX) 0024 WRITE(5,1000) (IN(L) ,L=1,K) 0025 1000 F0RMAT(1X,A1,1X,$) 0026 READ(5,2002)NZ,(BUFF(KL) ,KL=1,NZ) 0027 2002 FORMAT(Q,20A1) 0028 DO 40 M=1,NZ 0029 IF(BUFF(M) .NE. ',')GOTO 40 0030 NY=M 0031 GOTO 30 0032 40 CONTINUE 0033 DECODE (NZ, 2000, BUFF, ERR=13)X 0034 2000 FORMAT(F8.0) 0035 XID=X 0036 RETURN 0037 13 CONTINUE 0038 DO 20 1=1, NZ 0039 IF(BUFF(I) .EQ. '.') GOTO 20 0040 IF(BUFF(I) .EQ. ' ') GOTO 20 0041 IF(BUFF(I) .GE. "60 .AND. BUFF(I) .LE. "71) GOTO 20 0042 IF(BUFF(I) .EQ. ) STOP 0043 NY=I 0044 GOTO 30 0045 20 CONTINUE 0046 30 MX=NY+K+1 0047 WRITE(5,1010) 0048 1010 FORMAT(X, ' ~ • ) 0049 WRITE(5,1001) 0050 1001 FORMAT (IX,' ERROR RE-ENTER DATA') 0051 GOTO 12 0052 END 35 0001 C 0002 C 0003 C 0004 C 0005 0006 C 0007 0008 c 0009 0010 c 0011 2000 0012 1 0013 0014 0015 0016 0017 0018 0019 2 0020 0021 100 0022 0023 0024 0025 0026 0027 0028 10 0029 0030 3 0031 0032 200 0033 0034 0035 0036 0037 0038 20 0039 0040 21 0041 0042 2020 0043 0044 0045 2021 0046 0047 2022 0048 0049 2023 0050 0051 2025 0052 0053 2026 0054 0055 0056 SUBROUTINE TO CHANGE COEFFICIENT VALUES FOR 0-2 CONSUMPTION EQUATIONS. SUBROUTINE CHGEXP( ALPHA, LAMDA, ITEXT, J, LP) REAL *4 ALPHA(3,4) ,LAMDA(3,4) BYTE IANS(5) , ITEXT (4, 8) FORMAT (' ') CALL PRMPTA( ' CHANGE COEFFICIENT OR EXPONENT? (C OR E) RETURN 1 TO STOP ' ,IANS,NF) WRITE (5,2000) IF (NF.EQ.O)GO TO 21 IF (IANS(l) .EQ.'C )GO TO 2 IF (IANS(l) .EQ.'E' )GO TO 3 GO TO 1 DO 10 I = 1,3 WRITE (5, 100) (1-1) ,ALPHA(I,J) FORMAT ( ' COEFFICIENT FOR VP ** ',12,' = ',F5.2) CALL PRMPTF( ' NEW VALUE? RETURN FOR NO CHANGE *,VNEW,NF) WRITE (5,2000) IF (NF.NE.0)ALPHA(I,J) = VNEW WRITE (5,2000) WRITE (5,100)(I-1),ALPHA(I,J) WRITE (5,2000) CONTINUE GO TO 1 DO 20 I = 1,3 WRITE(5,200)(I-1) ,LAMDA(I,J) FORMAT(' EXPONENT FOR VP ** ',12,' = ',F5.2) CALL PRMPTF(' NEW VALUE? RETURN FOR NO CHANGE ',VNEW,NF) IF (NF.NE.0)LAMDA(I,J) = VNEW WRITE (5,2000) WRITE (5,200) (1-1) ,LAMDA(I,J) WRITE (5,2000) CONTINUE GO TO 1 WRITE(LP,2000) WRITE (LP, 20 20) ( ITEXT ( J,K) ,K=1 ,8 ) FORMAT ( ' 0-2 CONSUMPTION EQUATION FOR ',8A1) WRITE(LP,2000) WRITE ( LP , 20 2 1 ) ALPHA( 1 , J ) , LAMDA( 1 , J ) FORMAT ( ' VDOTO-2 = ',F5.2,' * ( M ** ',F5.2,' ) * VP ** 0') WRITE(LP,2022)ALPHA(2,J) ,LAMDA(2,J) FORMATC + ',F5.2,' * ( M ** ',F5.2,' ) * VP ** 1') WRITE(LP,20 23)ALPHA(3,J) ,LAMDA(3,J) FORMATC + ',F5.2,' * ( M ** ',F5.2,' ) * VP ** 2') WRITE(LP,2025) FORMAT ( ' WHERE VDOTO-2 IS IN ML( STP)/KG/MIN , ' ) WRITE(LP,2026) FORMATC M IS IN KG, AND VP IS IN M/SEC ') WRITE(LP,2000) RETURN END 36 APPENDIX D .— LISTIN G OF INI 1 1 6 20. 600. 3 2 7 25. 600. 5 3 8 30. 600. 7 4 9 35. 600. 9 5 10 40. 600. 11 6 11 45. 600. 13 7 12 50. 600. 15 8 13 55. 600. 17 9 14 60. 600. 19 10 15 65. 600. 21 11 16 70. 600. 23 12 17 75. 600. 25 13 18 80. 600. 27 14 19 77. 600. 29 15 20 72. 600. 31 16 21 67. 600. 33 17 22 62. 600. 35 18 23 57. 600. 37 19 24 52. 600. 39 20 25 47. 600. 2 1 2 22. 600. 4 2 3 27. 600. 6 3 4 32. 600. 8 4 5 37. 600. 10 6 7 42. 600. 12 7 8 47. 600. 14 8 9 52. 600. 16 9 10 57. 600. 18 11 12 62. 600. 20 12 13 67. 600. 22 13 14 72. 600. 24 14 15 77. 600. 26 16 17 80. 600. 28 17 18 75. 600. 30 18 19 70. 600. 32 19 20 65. 600. 34 21 22 60. 600. 36 22 23 55. 600. 38 23 24 50. 600. 40 24 25 45. 600. 41 13 26 80. 600. 999 999 999 999 0. THIS IS AN AIRWAY LIST FOR MINE 1. IT GETS TRANSLATED BY THE PROGRAM TRANS INTO A BINARY FILE. THE FORMAT IS: AIRWAY JUN JUN HEIGHT LENGTH NUMBER 1 2 (IN.) (FT.) JUNCTION 1 IS THE STARTING JUNCTION FOR THE AIRWAY AND JUNCTION 2 IS THE ENDING JUNCTION FOR THE AIRWAY. ENTER FOR REMAINING JUNCTIONS IF THERE ARE LESS THAN 6 JUNCTIONS IN AN AIRWAY. AIRWAY # 999 STOPS THE PROGRAM. 37 1 1 1 34.1 1 78.6 3 5. 13 5. 0. 2 2 2 44.52634 2 86. 3 5. 13 5. 0. 3 3 3 24.51376 3 87. 13 5. 0. 0. 4 4 4 28.21625 4 88. 3 5. 13 5. 0. 5 5 5 35.38699 5 89. 3 5. 13 5. 0. 6 6 6 42.54644 6 90. 8 5. 13 5. 0. 7 7 7 22.44606 7 91. 8 5. 13 5. 0. 8 8 8 45.57353 8 92. 13 5. 0. 0. 9 9 9 40.51924 9 93. 8 5. 13 5. 0. 10 10 10 42.15463 10 94. 8 5. 13 5. 0. 11 11 11 42.9893 11 95. 13 5. 0. 0. 12 12 12 28.65271 12 53. 13 5. 0. 0. 13 13 13 35.98224 13 84. 0. 0. 0. 14 14 14 27.58545 14 83. 13 5. 0. 0. 15 15 15 34.76538 15 82. 13 5. 0. 0. 16 16 16 40.26243 16 81. 18 300 13 5. 0. 17 17 17 42.99278 17 80. 18 5. 13 5. 0. 18 18 18 31.3226 18 79. 13 5. 0. 0. 19 19 19 32.55729 19 78. 18 5. 13 5. 0. 20 20 20 33.4361 20 77. 18 5. 13 5. 0. 21 21 21 40.95516 21 76. 23 5. 13 5. 0. 22 22 22 37.58183 22 75. 23 5. 13 5. 0. 23 23 23 22.83065 23 74. 13 5. 0. 0. 24 24 24 44.7841 24 73. 23 5. 13 5. 0. 25 25 25 22.73881 25 72. 23 5. 13 5. 0. 26 1 1 22.5 26 71.2 3 5. 13 5. 0. 27 5 5 30.8 27 77.6 3 5. 13 5. 0. 28 6 6 36.8 28 78. 8 5. 13 5. 0. 29 10 10 33.5 38 29 80.7 8 5. 13 30 17 17 38.9 30 81.3 18 5. 13 31 20 20 42. 31 82.9 18 5. 13 32 25 25 34.1 32 78.6 23 5. 13 999 999 999 999 THIS IS A MINER LIST FOR MINE 1. IT GETS TRANSLATED BY THE PROGRAM TRANS INTO A BINARY FILE. THE FORMAT FOR THE FIRST LINE IS MINER NUMBER START JUNCTION ESCAPE PATH MAX 0-2 INTAKE MINER # 999 STOPS THE PROGRAM. THIS IS A MINER MASS LIST FOR MINE 1. IT GETS TRANSLATED BY THE PROGRAM TRANS INTO A BINARY FILE. THE FORMAT FOR THE SECOND LINE IS: MINER MINER REST REST REST REST REST NUMBER MASS JUNCT TIME JUNCT TIME TIME 1 1 2 2 3 MINER # 999 STOPS THE PROGRAM. 39 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 26 21 22 23 24 25 999 2 4 5 15 4 5 15 41 5 15 41 6 5 15 41 8 6 5 15 10 12 15 41 12 15 41 15 41 14 15 41 16 14 15 41 18 20 41 20 41 41 22 41 24 22 41 26 28 25 41 28 25 41 25 41 30 25 41 32 27 17 7 1 11 18 20 34 36 35 25 36 35 25 41 35 25 41 38 35 25 41 40 38 35 25 999 999 999 41 41 6 41 41 41 26 THIS IS A ESCAPE PATH LIST FOR MINE 1. IT GETS TRANSLATED BY THE PROGRAM TRANS INTO A BINARY FILE. THE FORMAT IS: PATH AIRWAY AIRWAY AIRWAY AIRWAY AIRWAY AIRWAY AIRWAY NEXT NUMBER 12 3 4 5 6 7 PATH IF THE PATH REACHES THE EXIT BEFORE AIRWAY 7, THEN ENTER FOR REMAINING AIRWAYS. IF AIRWAY 7 DOES NOT TAKE THE PATH TO THE EXIT, THE PATH MAY BE CONTINUED BY THE PATH NAMED IN THE LAST COLUMN. PATH # 9 99 STOPS THE PROGRAM. 40 APPENDIX E. — LISTING OF OUTPUT DATA CURRENT VALUE OF JFLG IS 1 CURRENT VALUE OF IWORR IS A = 252.2 B = -16.14 C = 0.4080 D = -.2440E-02 0-2 CONSUMPTION EQUATION FOR CRAWLING VDOTO-2 = 0.00 * ( M ** 0.00 ) * VP ** + 48.60 * ( M ** 0.00 ) * VP ** 1 + 0.00 * ( M ** 0.00 ) * VP ** 2 WHERE VDOTO-2 IS IN ML( STP)/KG/MIN , M IS IN KG, AND VP IS IN M/SEC 0-2 CONSUMPTION EQUATION FOR DUCKWALK VDOTO-2 = 0.00 * ( M ** 0.00 ) * VP ** + 39.60 * ( M ** 0.00 ) * VP ** 1 + 0.00 * ( M ** 0.00 ) * VP ** 2 WHERE VDOTO-2 IS IN ML( STP)/KG/MIN , M IS IN KG, AND VP IS IN M/SEC 0-2 CONSUMPTION EQUATION FOR WALKING VDOTO-2 = 7.06 * ( M + 0.00 * ( M + 3.60 * ( M WHERE VDOTO-2 IS IN ML( STP ) /KG/MIN , M IS IN KG, AND VP IS IN M/SEC 0-2 CONSUMPTION EQUATION FOR RUNNING VDOTO-2 = 4.50 * ( M + 12.00 * ( M + 0.00 * ( M WHERE VDOTO-2 IS IN ML( STP)/KG/MIN , M IS IN KG, AND VP IS IN M/SEC MINER 1 STARTING AT JUNCTION 1 MINER 1 MASS: 78.60 KG VDOT 0-2: 34.10 ML O-2/KG/MIN MINER IS ON PATH 1 MINER 1 IS IN AIRWAY 2 AIRWAY HEIGHT = 22.00 IN. LOCOMOTION => CRAWLING TIME USED SINCE START OF ESCAPE: 8.745 MINUTES 0-2 USED SINCE START OF ESCAPE: 11.64 1 STP 0-2 UPTAKE RATE BY MINER 1 IN AIRWAY 2 IS 16.94 ML 0-2 /KG /MIN MINER SPEED 68.61 FPM ( 0.78 MPH) AIRWAY LENGTH 600.00 FT TOTAL DISTANCE TRAVELLED: 600.00 FT MAX 0-2 UPTAKE BY MINER 1 IS 34.10 ML O-2/KG/MIN ** 0.00 ) * VP ** * * 0.00 ) * VP ** I * * 0.00 ) * VP ** 2 ** 0.00 ) * VP ** * * 0.00 ) * VP ** 2 ** 0.00 ) * VP ** 2 41 MINER 1 IS IN AIRWAY 4 AIRWAY HEIGHT = 27.00 IN. LOCOMOTION => CRAWLING TIME USED SINCE START OF ESCAPE: 17.859 MINUTES 0-2 USED SINCE START OF ESCAPE: 23.29 1 STP 0-2 UPTAKE RATE BY MINER 1 IN AIRWAY 4 IS 16.25 ML 0-2 /KG /MIN MINER SPEED 65.83 FPM ( 0.75 MPH) AIRWAY LENGTH 600.00 FT TOTAL DISTANCE TRAVELLED: 1200.00 FT MAX 0-2 UPTAKE BY MINER 1 IS 34.10 ML O-2/KG/MIN MINER 1 IS IN AIRWAY 5 AIRWAY HEIGHT = 30.00 IN. LOCOMOTION => CRAWLING TIME USED SINCE START OF ESCAPE: 26.513 MINUTES 0-2 USED SINCE START OF ESCAPE: 34.93 1 STP 0-2 UPTAKE RATE BY MINER 1 IN AIRWAY 5 IS 17.12 ML 0-2 /KG /MIN MINER SPEED 69.33 FPM ( 0.79 MPH) AIRWAY LENGTH 600.00 FT TOTAL DISTANCE TRAVELLED: 1800.00 FT MAX 0-2 UPTAKE BY MINER 1 IS 34.10 ML O-2/KG/MIN MINER 1 IS IN AIRWAY 15 AIRWAY HEIGHT = 55.00 IN. LOCOMOTION => WALKING TIME USED SINCE START OF ESCAPE: 29.625 MINUTES 0-2 USED SINCE START OF ESCAPE: 37.50 1 STP 0-2 UPTAKE RATE BY MINER 1 IN AIRWAY 15 IS 10.51 ML 0-2 /KG /MIN MINER SPEED 192.78 FPM ( 2.19 MPH) AIRWAY LENGTH 600.00 FT TOTAL DISTANCE TRAVELLED: 2400.00 FT MAX 0-2 UPTAKE BY MINER 1 IS 34.10 ML O-2/KG/MIN MINER 1 IS IN AIRWAY 41 AIRWAY HEIGHT = 80.00 IN. LOCOMOTION => WALKING TIME USED SINCE START OF ESCAPE: 31.483 MINUTES 0-2 USED SINCE START OF ESCAPE: 39.95 1 STP 0-2 UPTAKE RATE BY MINER 1 IN AIRWAY 41 IS 16.75 ML 0-2 /KG /MIN MINER SPEED 322.98 FPM ( 3.67 MPH) AIRWAY LENGTH 600.00 FT TOTAL DISTANCE TRAVELLED: 3000.00 FT MAX 0-2 UPTAKE BY MINER 1 IS 34.10 ML O-2/KG/MIN TIME AVAILABLE FOR ESCAPE: 0.20E+03 MINUTES MINER 32 STARTING AT JUNCTION 25 MINER 32 MASS: 78.60 KG VDOT 0-2: 34.10 ML O-2/KG/MIN MINER IS ON PATH 25 MINER 32 IS IN AIRWAY 40 AIRWAY HEIGHT = 45.00 IN. LOCOMOTION => DUCKWALK TIME USED SINCE START OF ESCAPE: 4.623 MINUTES 0-2 USED SINCE START OF ESCAPE: 9.49 1 STP 0-2 UPTAKE RATE BY MINER 32 IN AIRWAY 40 IS 26.11 ML 0-2 /KG /MIN MINER SPEED 129.78 FPM ( 1.47 MPH) AIRWAY LENGTH 600.00 FT TOTAL DISTANCE TRAVELLED: 600.00 FT MAX 0-2 UPTAKE BY MINER 32 IS 34.10 ML O-2/KG/MIN MINER 32 IS IN AIRWAY 38 AIRWAY HEIGHT = 50.00 IN. LOCOMOTION => DUCKWALK 42 TIME USED SINCE START OF ESCAPE: 8.368 MINUTES 0-2 USED SINCE START OF ESCAPE: 18.97 1 STP 0-2 UPTAKE RATE BY MINER 32 IN AIRWAY 38 IS 32.23 ML 0-2 /KG /MIN MINER SPEED 160.23 FPM ( 1.82 MPH) AIRWAY LENGTH 600.00 FT TOTAL DISTANCE TRAVELLED: 1200.00 FT MAX 0-2 UPTAKE BY MINER 32 IS 34.10 ML 0-2/KG/MIN MINER 32 IS IN AIRWAY 35 AIRWAY HEIGHT = 57.00 IN. LOCOMOTION => WALKING TIME USED SINCE START OF ESCAPE: 11.281 MINUTES 0-2 USED SINCE START OF ESCAPE: 21.49 1 STP 0-2 UPTAKE RATE BY MINER 32 IN AIRWAY 35 IS 11.00 ML 0-2 /KG /MIN MINER SPEED 205.98 FPM ( 2.34 MPH) AIRWAY LENGTH 600.00 FT TOTAL DISTANCE TRAVELLED: 1800.00 FT MAX 0-2 UPTAKE BY MINER 32 IS 34.10 ML O-2/KG/MIN MINER 32 IS IN AIRWAY 25 AIRWAY HEIGHT = 80.00 IN. LOCOMOTION => WALKING TIME USED SINCE START OF ESCAPE: 13.138 MINUTES 0-2 USED SINCE START OF ESCAPE: 23.94 1 STP 0-2 UPTAKE RATE BY MINER 32 IN AIRWAY 25 IS 16.75 ML 0-2 /KG /MIN MINER SPEED 322.98 FPM ( 3.67 MPH) AIRWAY LENGTH 600.00 FT TOTAL DISTANCE TRAVELLED: 2400.00 FT MAX 0-2 UPTAKE BY MINER 32 IS 34.10 ML O-2/KG/MIN MINER 32 IS IN AIRWAY 41 AIRWAY HEIGHT = 80.00 IN. LOCOMOTION => WALKING TIME USED SINCE START OF ESCAPE: 14.996 MINUTES 0-2 USED SINCE START OF ESCAPE: 26.38 1 STP 0-2 UPTAKE RATE BY MINER 32 IN AIRWAY 41 IS 16.75 ML 0-2 /KG /MIN MINER SPEED 322.98 FPM ( 3.67 MPH) AIRWAY LENGTH 600.00 FT TOTAL DISTANCE TRAVELLED: 3000.00 FT MAX 0-2 UPTAKE BY MINER 32 IS 34.10 ML O-2/KG/MIN TIME AVAILABLE FOR ESCAPE: 53. MINUTES v *iVLr* p* ^ • » ° aV '*• ~> ... ^ "" ,\* •*" ,v °^ *°"° A ' ^ ** »J 1.0 y\ V ***** C, *0v\ V"* oTo °_a ' V* rr, '\i* r ' -°° -V, - 6 « ' ,0 *v«\ A ^ ^, .] ■^^ .. * 4 ^0 r o> p J* .t* a <^ -*^ < ^ , t o* «5^ 0' -^^ . r O « - A i«, •>• v f o « a ,

^ V y,fciS-.%. Xvw;-/v .* v \.««:.X y.-A-i:->.. ^*.i o5°^ ^>^^7-:€^y^y,^^>^-^y:.s^y. W G° A^N '°o ^ v ^O* r oV" *W *^ >:. V-0 < o A <> v -r.T* ,o *v o - M - u TAr^ GSM *bj? »fl!v^^llA«» -f i0v\ ,v V A v ^ ^ ^ ^' ^ ^ v -v. -~ .r 6 V ^ 4* ' 'OK • 'J <* ^ *+ \ ^ .^va\ ^. ** «*i *-* :mk->^ : 'M;° v/ A s/.-M-V* -ill o o •.., uk - Aub Mb 5°* ^> ' ' ' ^ ^ ' • - ° AT \' <^ *'7V.* ,G V -{ o. i 1 • 0>*> °o jPV V «»«••/ W/ %/«••/' LIBRARY OF CONGRESS 002 955 908 9