Proceedings_of_the_Meeting_of_the_Western_Region_of_COMMON_196512 Proceedings Of The Meeting Western Region COMMON 196512
Proceedings_of_the_Meeting_of_the_Western_Region_of_COMMON_196512 Proceedings_of_the_Meeting_of_the_Western_Region_of_COMMON_196512
User Manual: Proceedings_of_the_Meeting_of_the_Western_Region_of_COMMON_196512
Open the PDF directly: View PDF .
Page Count: 255
Download | |
Open PDF In Browser | View PDF |
PROCEEDmGS OF THE MEETING OF ~ WESTERN REGION OF COMMON The International Hotel Los Angeles, California. December 6, 7, and 8, 1965 r:neW.tI.neMtTlf*ttT7!msr Table of Contents o 0 Program Agenda Registration Roster Civil Engineering Panel Snobol 3 An Interpretive Input Routine for Linear Programming 1620 SPS and SPS ll-D Object Deck Modifier Cleartran Automonitor Anthropology and the Teaching of Programming The 1620 for Simulation in a Biomedical Environment Pert/CPM Critical Path Method Scheduling Project Planning and Control Solution of a Problem in Heat Transfer Some Applications of Cracovians MRl Plotter Subroutines iii vi 1 9 17 49 54 66 79 85 96 101 146 164 166 216 '·,,1 .I'.. J ii • azU4iLnu,:.aoo,·,c\,SiA ",,,,, , . 4 _. . .. ...; .n_ .-._._,. ......4 .. ... _~~ •••.• _ .. _ ........... ~., ........ t.,u o o o c o ~ PROGRAM AGENDA MONDAY, DECEMBER 6 8:00 Late Registration General Session 9:00 Welcome IBM Announcements Sound Off - Bob White 10:00 Coffee 10:.30 Sound Ofr (contd.) 11:.30 Converting from the 1620 to System .360 - The 1620Compat&bility Feature for Model.30 by H. Elmer and H. Weber (IBM) 12:00 Lunch Session A 1:15 Civil Engineering Panel Richard Wainer, Chairman James W. Hunter Frank Julian James Nugent George Taylor Robert Olson and others Session B SNOBOL .3, A List Processing Language for the IBM 1620 by David L. Wilson 2:15 Easy LP by D. J. Aigner 2:40 1620 SPS-II and SPS II-D Object neck Modifier by Betty M. Ear10ugher ,3:00 Coffee Coffee 3:30 Civil Engineering Panel (contd.) The Omnimetrics Operating System by Marvin Rubinstein 4: 30 5:00 C1eartran by Francis W. Winn New User Meeting Paul Bickford TUESDAY. DECEMBER 7 Session A Session B Session C Education Panel George R. Jaffray, Chairman Carl Feingold (arrived late) John A. Ferling Fernando Figueroa Charles B. Kinzek William G. Lane PERT and CPM Panel (see abstracts) Gaylord Baker, Chairman 10:00 Coffee Coffee Coffee 10:30 Panel (contd.) Panel (contd.) Tutorial (contd.) ll:oo Automonitor for 1620 Machine Language by John Rettenmayer Solution of a Problem in Heat Transfer by James C. Caslin, H. E. Fettis, and John W. Goresh 11:20 Anthropology and Progranmdng by Herman B. Weissman Computer Design of High Velocity Duct System· by Ralph Vandiver 11:50 The 1620 for Simulation in a Bic-Medical Same Applications of Cracovians Environment by I. R. Neilsen and by Marco T. Rincon B. James J. Horning 8:30 M. Lopez Marvin Rubinstein Dave Stadlman 12:00 Expanding the CapabilitY' of Plotter Software bY' Dean Lawrence Use of a 1620 at a Solar Observatory by Robert L. Shutt 12:10 12:35 2:00 () Advanced Monitor Tutorial Bert Madsen A class':.in how MONITOR is constructed and how to make modifications Lunch Lunch Lunch Tour to Jet Propulsion Laboratory Tour Tour ~ o ~ ..... ~ '. " ~ ~}r WEDNESDAY. DECEMBER 8 General Session - Eli Katz 8:30 PLl Tutorial - John Harris 10:00 Corfee 10:30 1130 Computer bY' Paul Manikowski 11:00 Sound 12:00 Luncheon orr Speaker: Subject: Response - Bob White Fred Greenberger The Fnture of the Free Standing Small· Computer Session A Session B 1:45 Tutorial - 1130-1800 Programming Paul Manikowski Tutorial - 360 Programming Systems - JaY' Michtom 3:00 Coffee Co free 3:30 Tutorial (contd.) Tutorial (contd.) 1965 COMMON CONFERENCE - REGISTRATION AIGNER, D.J. ALLEN, ROBERT C. AMMERMAN, THOMAS W. BACON, RICHARD P. BAUER, EDWARD G. BELDNER, RUDYARD BERRY, J. DOUGLASS BICKFORD, PAUL A. BIRD, FRANK BOLES, JAMES N. BROWNE, PAUL BRUCE, J.W. BRYANT, JACK K. BURNS, BRUCE A. BUSCHMAN, W.O. CA INSKI, RAY CARROLL, LANE L. CHAMBERLAIN, D.L. CLARK, CHARLES L. CORTOPASSI, ANDREW COTTON, BILL CRABTREE, S. JAMES CURIEL, ROBERT DABE, RODNEY G. DAHLEN, JAMES W. DICKSON, THOMAS R. DIEHR, PAULA DOUGHERTY, DANIEL J. EARLOUGHER, BETTY M. ELMER, HANS ELY, DEAN E. EMERSON, JOHN T FAGG, PETER FERLING, JOHN A. FETTIS, HENRY E. GU INN, JOHN R. HALL, OMER D. HECKMAN, A. R. HOLT, JOHN HORTON, MURIEL MRS HUNTER, JAMES W. HUSSAIN, KHATEEB M. HUTZLER, R. H. ISMCMAN, DAVID JACKSON, LARRY D. JAFFRAY, GEORGE JOHNSTON, T. S. JULIAN, F. B. KATZ, ELI KI SH I, HIRO KO UNIVERSITY OF ILLINOIS 3342 UNIVERSITY OF VICTORIA 7044 PITTSBURGH PLATE GLASS CO. 5195 SAN DIEGO STATE COLLEGE 5142 SAN DIEGO STATE COLLEGE 5142 LA DEPT OF WATER AND POWER 5181 GANNETT FLEMING CORDDRY/CARPENTER 1009 OKLAHOMA STATE UNIVERSITY SACRAMENTO PEAK OBSERVATORY 5053 UNIVERSITY OF CALIF.,BERKELEY 5076 UNION RESEARCH CENTER 5077 OFFC OF SURVEYOR/ROAD COMM,SAN DIEGO LA DEPT. OF COUNT ENGR. 5018 US AIR FORCE, COLORADO SPRINGS 1029 CALIF. STATE POLYTECHNIC COLLEGE, SAN LUIS OBISPO PUBLIC SERVICE CO. OF NEW MEXICO SAN DIEGO STATE COLLEGE 5142 OFFC OF SURVEYOR/ROAD COMM,SAN DIEGO CALIF STATE COLLEGE, LA 5185 US BUREAU OF RECLAMATION 5096 METAL STRUCTURES CORP 5208 SUNDSTRAND AVIATION, ROCKFORD, ILL. INFORMATION SYSTEMS CO. 5174 CONSOER, TOWNSEND + ASSOC. 3334 US ARMY CORPS OF ENGINEERS 5186 ORANGE COAST COLLEGE 5212 ITT FEDERAL LABS 5227 HAWAIIAN SUGAR PLANTERS ASSOC. 5030 STANFORD ELECTRONICS LAB 5123 IBM, ENOl COTT FRANKLIN ELECTRIC CO., INC. 1432 FRESNO STATE COLLEGE 5241 IBM, POUGHKEEPSIE CLAREMONT MENS COLLEGE 5033 AERONAUTICAL RES. LAB 3024 TEXAS COLLEGE OF ARTS/INDUSTRIES 5104 LA COUNTY FLOOD CONTROL DISTRICT 5141 QUINTON ENGINEERS, LTD. 5054 NORTH AMERICAN AVIATION, INC. 5149 JET PROPULSION LAB 5019 LA COUNTY 5018 CALIF STATE COLLEGE, FULLERTON CONSULTANT - LOS ANGELES QU I NTON ENG I NEERS, LTO. 5054 COLORADO STATE UNIVERSITY LOS ANGELES VALLEY COLLEGE TEXAS TECHNOLOGICAL COLLEGE 5143 OFFC OF SURVEYOR /ROAD COMM, SAN 0 I EGO LA DEPT. OF WATER AND POWER 5181 WESTERN DATA PROC CENTER/UCLA 5215 o () O·~·. ~ m;;5Irnr .Wi o iT- KLEIN, SEYMOUR LAHNERS, ELAINE L. LANE, WI LL IAM G. LAWRENCE, DEAN LINSDAY, THOMAS H. LITTRELL, ROBERT T. MAGWIRE, CRAIG MAN I KOWSKI, PAUL MARTINEZ, JESS MATTHEWS, E.L. MAUDLIN, CHARLES E. MCCOLLUM, PAUL A. MCFARLAND, ALBERT MCMI LLAN, FRANK MCMENAMIN, JOSEPH L. MILLIGAN, PERCY L. MOFFITT, ROBERT D. MYLIUS, WILLIAM G. JR. NEAL, KENNETH L. NORRIS, BOYD C. OLSON, ROBERT PAQU I N, NANCY POTTS, W.W. PRESTON, SPENCER V. RANDALL, ROBERT F. REDLACK, HERBERT C. RE I CH, CARL T. RICHARDS, THOMAS C. RINCON, MARCO TULlO ROCKWEL L, BILL ROEDER, GEORGE L. RUBINSTEIN, MARVIN SAMSON, STEPHEN L. SARKISIAN, HARRY SCHANDUA, EMIL J. SCHRADER, LUANA MRS. SHUTT, ROBERT L. STEINHILBER, J. R. TAYLOR, GEORGE I. TOWN, GEORGE G. TUCK, MICHAEL R. UTLEY, BRIAN VANCE, GARRY VANDIVER, RALPH JR. VAURS, SANDRA WA INER, RI CHARD WALKER, CHARLES S. WEISSMAN, HERMAN B. WHITE, ROBERT R. WILSON, DAVID L. WILSON, G.W. WINDMEYER, WALTER C. WINN, FRANCIS W. WOODWORTH, JAMES A. LA CITY TRAFFIC DEPT. VETERANS ADMIN. HOSPITAL 3055 CHICO STATE COLLEGE 5190 MIDWEST RESEARCH INST. 3180 VENTURA COLLEGE 5243 CALIF. STATE COLLEGE, LONG BEACH 5198 UNIVERSITY OF NEVADA 5038 I BM, LA OMN IMETR I CS 5172 IBM, SAN JOSE, CALIF. UNIVERSITY OF OKLAHOMA, NORMAN, OKLA. OKLAHOMA STATE UNIVERSITY 3158 SAN DIEGO STATE COLLEGE 5142 FRESNO STATE COLLEGE 5241 GROSSMONT COLLEGE 5145 SOUTHERN UNIVERSITY 1339 NORTH PACIFIC DIV.-CORPS OF ENGRGS 5085 THE RUST ENGINEERING CO. 1164 US ARMY CORP OF ENGR 5248 US BUREAU OF RECLAMATION 5096 LA DEPT OF WATER AND POWER 5181 US PUBLIC HEALTH SERVICE 1118 OFFC OF SURVEYOR/ROAD COMM,SAN DIEGO SAN DIEGO STATE COLLEGE 5142 AUSTIN COLLEGE 5252 SACRAMENTO STATE COLLEGE MONTEREY PENINSULA COLLEGE 5152 VENTURA COLLEGE 5243 UNIVERSIDAD DEL ZULIA, VENEZUELA 8027 SAN DIEGO STATE COLLEGE 5142 US AIR FORCE, COLORADO SPRINGS 1029 OMNIMETRICS 5172 US ATOMIC ENERGY COMM 1258 HUMBOLDT STATE COLLEGE ST. EDWARDS UNIV. 5228 CALIFORNIA STATE COLLEGE,HAYWARD 5105 SACRAMENTO PEAK OBSERVATORY 5053 ITT FEDERAL LABS 5227 LA COUNTY FLOOD CONTROL DISTRICT 5141 SEATTLE UNIVERSITY 5219 ARGONNE NATIONAL LAB 1273 IBM, SAN JOSE UNIVERSITY OF NEVADA 5038 BENHAM-BLAIR AND AFFILIATES, OKLAHOMA CI TY SAN JOSE STATE COLLEGE 5121 5009 DEPT OF PUBLIC WORKS, LA ARIZONA STATE UNIV. 5199 UNIVERSITY OF ILLINOIS LA DEPT. OF WATER AND POWER 5181 UNIVERSITY OF WISCONSIN t~ASSMAN CONST. CO., KANSAS CITY, MO. 3378 DOW CHEMI CAL CO. 5155 COMPUTER LANGUAGE RESEARCH, DALLAS 5148 DOW CHEMI CAL CO 5155 • =.UlSiM,,,,O,;,,,I,:II,,,, _.. Uf1ilt";JlbU\,.%!i¥f44.yg..44... ,~A . .,.... 19&5 COMMON CONFERENCE - REGISTRATION \ AIGNER, D.J. UNIVERSITY OF ILLINOIS ALLEN, ROBERT C. UNIVERSITY OF VICTORIA AMMERMAN, THOMAS W. PITTSBURGH PLATE GLASS CO. BACON, RICHARD P. SAN DIEGO STATE COllEGE BAUER, EDWARD G. SAN DIEGO STATE COLLEGE BELDNER, RUDYARD lA DEPT. OF WATER AND POWER BERRY, J. DOUGLASS GANNETT FlEMI NG CORDDRY /CARPENTER BICKFORD, PAUL A. OKLA. STATE U. TECHNICAL INSTITUTE BIRD, FRANK SACRAMENTO PEAK OBSERVATORY BOLES, JAMES N. UNIVERSITY OF CALIFORNIA, BERKELEY BROWNE, PAUL UNION OIL RESEARCH CENTER BRUCE, J. W. OFFC OF SURVEYOR/ROAD COMMISSION BRYANT, JACK K. LA DEPT. OF COUNTY ENGR. BURNS, BRUCE A. US AIR FORCE BUSCHMAN, W.O. CALIF. STATE POLYTECHNIC COLLEGE CAINSKI, RAY PUBLIC SERVICE CO. OF NEW MEXICO CARROLL, LANE L. SAN DIEGO STATE COLLEGE CHAMBERLAIN, D.l. OFFC OF SURVEYOR/ROAD COMMISSION CLARK, CHARLES L. CALIF STATE COLLEGE AT LA CORTOPASSI, ANDREW US BUREAU OF RECLAMATION COTTON, BILL METAL STRUCTURES CORP. CRABTREE, S. JAMES SUNDSTRAND AV IATION CURIEL, ROBERT INFORMATION SYSTEMS CO. DABE, RODNEY G. CONSOER, TOWNSEND + ASSOC. DAHLEN, JAMES W. US ARMY CORPS OF ENGINEERS DICKSON, THOMAS R. ORANGE COAST COLLEGE DIEHR, PAULA ITT FEDERAL LABS DOUGHERTY,DANIEl J.HAWAIIAN SUGAR PLANTERS ASSOC. EARLOUGHER,BETTY M. STANFORD ELECTRONICS LAB ELMER, HANS IBM ELY, DEAN E. FRANKLIN ELECTRIC CO., INC. EMERSON, JOHN T. FRESNO STATE COLLEGE FAGG, PETER IBM FERLING, JOHN A. CLAREMONT MENS COLLEGE FETTIS, HENRY E. AERONAUTICAL RES. lAB GUINN, JOHN R. TEXAS COLLEGE OF ARTS/INDUSTRIES HALL, OMER D. LA COUNTY FLOOD CONTROL DI STRI CT HECKMAN, A.R. QUINTON ENGINEERS, lTD. HOLT, JOHN NORTH AMERICAN AVIATION, INC. HORTON,MURIEl JET PROPULSION LAB HUNTER, JAMES W. LA COUNTY ENGR. HUSSAIN, KHATEEB M.CALIF STATE COLLEGE AT FULLERTON HUTZLER, R.H. CONSULTANT - lOS ANGELES ISAACMAN, DAVID QUINTON ENGINEERS, lTD. JACKSON, LARRY D. COLORADO STATE UN IVERS I TY JAFFRAY, GEORGE lOS ANGELES VALLEY COLLEGE JOHNSTON, T.S. TEXAS TECHNOLOGICAL COLLEGE JUL IAN, F.B. OFFC OF SURVEYOR/ROAD COM~1I SS ION KATZ, ELI lA DEPT. OF WATER AND POWER KI SH I, HIRO KO WES TERN DA TA PROC CEN TER /UCLA o URBANA, ILLINOIS VICTORIA,B.C.,CANADA CORPUS CHRISTI, TEXAS SAN DIEGO, CALIF. SAN DIEGO, CALIF. lOS ANGELES, CALIF. HARRI SBURG, PENNA. OKLAHOMA CITY, OKLA. SUNSPOT, NEW MEXICO BERKELEY, CALIF. BREA, CALIF. SAN DIEGO, CALIF. LOS ANGELES, CALIF. COLORADO SPRINGS,COLO. SAN LUIS OBISPO,CALIF. NEW MEXICO SAN DIEGO, CALIF. SAN DIEGO, CALIF. LOS ANGELES, CALIF. SACRAMENTO, CALIF. GRAPEVINE, TEXAS ROCKFORD, I LL I NO IS tf\, LOS ANGELES, CALIF. V CHICAGO, ILLINOIS SEATTLE, WASHINGTON COSTA MESA, CAL IF. SAN FERNANDO, CALIF. HONOlULU,HAWAII STANFORD, CALI F. ENDICOTT, NEW YORK BLUFFTON, INDIANA FRESNO, CALIF. POUGHKEEPSIE1NEW YORK CLAREMONT, CALIF. W-PATTERSON AFB, OHIO KINGSVILLE, TEXAS LOS ANGELES, CAL IF. LOS ANGELES, CALIF. LOS ANGELES, CALIF. PASADENA, CALIF. LOS ANGELES, CALIF. FULLERTON, CALIF. lOS ANGELES, CALIF. LOS ANGELES, CALIF. FORT COlL I NS, COLORADO VAN NUYS, CALIF. lUBBOCK, TEXAS SAN DI EGO, CAL IF. LOS ANGELES, CALIF. LOS ANGE LES, CAL IF. I 0.,' ,-,.m"",=ecr!5T!1I . '5. o o o KLEIN, SEYMOUR LA CITY TRAFFIC DEPT. LAHNERS, ELAINE L. VETERANS ADMIN. HOSPITAL LANE, WILLIAM G. CHICO STATE COLLEGE LAWRENCE, DEAN MIDWEST RESEARCH INST. LINSDAY, THOMAS H. VENTURA COLLEGE LITTRELL, ROBERT T.CALIF STATE COLLEGE AT LONG BEACH MAGWIRE, CRAIG UNIVERSITY OF NEVADA MAN I KOWSKI ,PAUL IBM WESTERN REGION MARTINEZ, JESS OMNIMETRICS MA TTH EW S, E. L • IBM MAUDLIN, CHARLES E.UNIVERSITY OF OKLAHOMA MCCOLLUM, PAUL A. OKLAHOMA STATE UNIVERSITY MCFARLAND, ALBERT SAN DIEGO STATE COLLEGE MCMILLAN, FRANK FRESNO STATE COLLEGE MCMENAMIN,JOSEPH L.GROSSMONT COLLEGE MILLIGAN, PERCY L. SOUTHERN UNIVERSITY MOFFITT, ROBERT D. NORTH PACIFIC DIV-CORPS OF ENGRS MYLIUS, WILLIAM G. THE RUST ENGINEERING CO. NEAL, KENNETH L. US ARMY CORPS OF ENGR NORRIS, BOYD C. US BUREAU OF RECLAMATION OLSON, ROBERT LA DEPT OF WATER A~D POWER PAQUIN, NANCY US PUBLIC HEALTH SERVICE POTTS, W.W. OFFC OF SURVEYOR/ROAD COMMISSION PRESTON, SPENCER V.SAN DIEGO STATE COLLEGE RANDALL, ROBERT F. AUSTIN COLLEGE REDLACK, HERBERT C.SACRAMENTO STATE COLLEGE REICH, CARL T. MONTEREY PENINSULA COLLEGE RICHARDS, THOMAS C.VENTURA COLLEGE RINCON,MARCO TULlO UNIVERSIDAD DEL ZULIA ROCKWELL, BILL SAN DIEGO STATE COLLEGE ROEDER GEORGE L. US AIR FORCE RUBINstEIN, MARVIN OMNIMETRICS SAMSON, STEPHEN L. US ATOMIC ENERGY COMM. SARKISIAN, HARRY HUMBOLDT STATE COLLEGE SCHANDUA, EMIL J. ST. EDWARDS UNIVERSITY SCHRADER, LUANA CALIF STATE COLLEGE AT HAYWARD SHUTT, ROBERT L. SACRAMENTO PEAK OBSERVATORY STEINHILBER, J.R. ITT FEDERAL LABS TAYLOR, GEORGE I. LA COUNTY FLOOD CONTROL DISTRICT TOWN, GEORGE G. SEATTLE UNIVERSITY TUCK, MICHAEL R. ARGONNE NATIONAL LAB UTLEY, BRIAN IBM VANCE, GARRY UNIVERSITY OF NEVADA VANDIVER RALPH JR.BENHAM-BLAIR AND AFFILIATES VAURS. SANDRA SAN JOSE STATE COLLEGE WAINER, RICHARD DEPT OF PUBLIC WORKS WALKER, CHARLES S. ARIZONA STATE UNIVERSITY WEISSMAN,HERMAN B. UNIVERSITY OF ILLINOIS WHITE, ROBERT R. LA DEPT OF WATER AND POWER WILSON, DAV 10 L. UN I VERS I TY OF WI SCONS IN· WILSON, G.W. MASSMAN CONST. CO. WINDMEYER,WALTER C.DOW CHEMICAL CO. WINN, FRANCIS W. COMPUTER LANGUAGE RES~ARCH WOODWORTH, JAMES A.DOW CHEMICAL DO. === n':&"'":,,lo,.,,. U.. """J,,, ¥% .,-: LOS ANGELES, CALIF. OMAHA, NEBRASKA CH I CO, CA LIF. KANSAS CITY, MISSOURI VENTURA, CALIF. LONG BEACH, CALIF. RENO, NEVADA LOS ANGELES, CALIF. LOS ANGELES, CALIF. SAN JOSE, CALIF. NORMAN, OKLAHOMA STILLWATER, OKLAHOMA SAN DIEGO, CALIF. FRESNO, CALIF. EL tAJON, CALIFORNIA BATON ROUGELLOUISIANA PORTLAND,ORt.GON BIRMINGHAM,ALABAMA SEATTLE, WASHINGTON SACRAMENTO, CALIF. LOS ANGELES, CALIF. ROCKVILLE,MARYLAND SAN DIEGO, CALIF. SAN DIEGO, CALIF. SHERMAN, TEXAS SACRAMENTO, CALIF. MON TEREY, CAL IF. VENTURA, CALIF. MARACAIBO, VENEZUELA SAN DIEGO CALIF. COLORADO SPRINGS,COLO. LOS ANGELES, CALIF. NEW"YORK,NEW YORK AR CA TA, CA LIF. AUSTIN, TEXAS HAYWARD, CALIF. SUNSPOT, NEW MEXICO SAN FERNANDO,CALIF. LOS ANGELES, CALIF. SEATTLE, CALIF. IDAHO FALLS, IDAHO SAN JOSE, CALIF. RENO, NEVADA OKLAHOMA CITY,OKLA. SAN JOSE, CALIF. LOS ANGELES~ CALIF. TEMPE, ARIZuNA URBANA, I LLI NO IS LOS ANGELES, CALIF. MILWAUKEE,WISCONSIN KANSAS CITY, MISSOURI HOUSTON, TEXAS DALLAS, TEXAS HOUSTON, TEXAS - _____ . __ ... __ ... @.4i¥!4.k,Q,o¥#J.Ji.tJ.I.'A.,;., .- - _ f"'!!''!1'~¥:i*W\;;Y4ii4.. W.J_.U.t_"'-''!!t!_._~. ___ :.,J€,.,.'''f', - - - ----- - -- ~ -- ..-_----' o ~ " Introduction to Civil Engineering Panel by Richard \'Jainer, Assistant Division Engineer, Coordinating Division, Bureau of Engineering of the City of Los Angeles. The speakers on this panel, with the exception of Mr. Julian of San Diego, are from the Data Processing Committee of the Los Angeles Chapter of the American Public Works Association. About four years ago when the various governmental agencies in the area started to become computer oriented, informal meetings were held. To give a more official stature to the group, we requested recognition from the Los Angeles Chapter of the American Fubllc Works Association and for the last three years we have been recognized as a working committee of this organization. At tne outset, workshop meetings were fairly frequent to share oup experience and to prevent duplication of effort. As programs have been completed and familiarity with their usage obtained, the need for frequency of meetings has diminished and now meetings are held quarterly. The Panel today will present information on some of the applications developing and problems encountered in the area of acceptance of computer technology in Municipal Engineering. IfJilliam Reader, Structural Engineer, Bridge and Structural Division, Bureau of Engineering, City of Los Angeles. ~Ilr. I want to discuss a method for the design of reinforced concrete multiple box structures. to develop The slope deflection method used the general algebraic equations is applicable to wide variety of structures though the loading conditions used are those found in conditions approximating underground and loading. unsymetr~cal Through the use of tabular design methods and computer , -2- developed tables, the coefficients of maximum stress conditions () are determined. Fixed end moments are applied to each member and composite moment diagram is developed. Superpositioned moments are applied to balance the fixed end moments. The algebraic slope deflection equations are then reduced. From these simplified algebraic equations, the computer (1620 Modell, 20 K) was used to develop to simplify the designer's work. tables of coefficients The advantages of this method are: 1. Time savings and reduction of errors over previous 2. An increase in visualization of effect of changes on methods. final configuration. 3. Facilitate the development of more economical design. C Jim Nugent, Technical Service Supervisor Advance Planning Section, County of Los Angeles Road Department. The County Road Department has developed and refined the classic problem of earth work into a neat package of both tabular output and graphic display using an 8K 1401. This program reduces to a minlmum the computational demands of the' Engineer'stlme and frees him to evaluate the results and ,attempt better solutions. The steps in establishing the economics of an earthwork design by the manual method are traditional: Alignment, both' vertical and horizantal, is established by the Engineer; the cross sections are plotted and the template is superimposed; quantities ,are calculated from planimetered cross sections; and finally, the results are analyzed to determine the economics of the assumed 2. o f'" -3- alignments. Often at this point, an entire reprocessing must be done to arrive at a better solution. Average Engineers' time for this manual processing is in the range of 65 hours per mile of roadvllay. Through the application of new techniques, the cross section data is prepared photogrametrically, a trial alignment is made, and the information processed by our 1401 system. Cross sections and profiles are plotted by the 1403 at the rate of about 12 sections per minute, considerably faster than most line plotters. When the cross sections were plotted by a service bureau, the cost was about two dollars per section as compared to our current estimate of above ten cents a section. This rapid and economic method allows for the establishment C', of the most economic deSign. It is now feasible to try several alignments or further refine a selected alignment to produce the minimum construction cost design. The computer time required for the automated method is about 20 minutes per mile including plotting. «..Tim Runder: Associate Civil Engineer, Office of the County Engineer, County of Los Angeles. Oneof the typical problems ,of municipal Sanitatlon Des:tgn iq the investigation of a sewer network. The flows, capacity, hydraulic grades and total flow at an outlet for a network are analyzed by the computer freeing the engineer of the relativel:! routine arithmetrical computations requtred. The program dev810pes a model of the system based on o conduit size) land use" manhole numbers, drainage areas and slopes. This data, combined with actual measured data at control pOint.s, -------------_ .._=:._m,::8"LZ'!mi"J,.,,,mII!;:.;,,'!i!'!,,S,,,,,,,",,,,,,",,,,,P'!'!llI!,_ .. """ ... 4¢2&C!lI!'I ___ ._~_._~~.Iw,ii'!.ii\,a~¥Mi!!l!\li,".i2~,.,,...i""". _4#_.,"""",""--""""""'I..". . .. j"'.,."'•..:"~"".:,!,!.""'-.-.".~ ;.--~--:"""""-~~, 0","\ ,I produces a tabular output of I\ tabular output 1.s also pe~8ent ~roc~uced of capacity beinz Sho1~lin3 ut:!,l~zed. T,'h2t rea.ches have exceeded capacity 2nd are in need of replacement. 'As the program now operates on our 20K three pass processing program. number3~ it is a syste~, The first program 3ccepts the manhole land use, p5pe parameters and drainage areas and computes the theoretical capacity of the pa3s I output plus t~e measu~ed capac:tty being utilj_zed. network elements. data to develop Pass 2 accepts the percent o~ Pass 3 developef:. the formal O'Lltput, replacement schedules, and estimated cost. It is e3timated that,the cost saving realized over former methods is about 50 percent. In addition, once the basic data file has been established it becomes econom~cally feasible to provide estimates of how zoning changes or new connections would affect the existing system. This method could be amplified to dover other gravity flow systems such as storm drains and water supply. Frank B. Julian, Program Developement Engineer, Office of the County Road Commlssioner~ County of ' San Diego. When I was requested to appear on this panel, my first idea was to speak about our 1620 earthwork program. After further thought, I changed my mind, but not because of a conflict with Mr. Nugent's presentation. The decision was based on a certain aspect of our program that presents problems familiar to most organizations. The documentation for input format is good" but due to lack of capacity, certain data checks are not made. When these conditions arise, naturally the program blows and the only one that knows where and how to correct It 1s the programmer himse'lf:~ "'eMMhltlnrrtt!e'tlt1t1emt*uwrllS'fS -5- Though the action of the computer can be reasonably anticipated, the human reaction is completely unpredictable. When we first installed the 1620 computer about four years ago, we had the green eye-shade and sleeve garter types that were still not too sure of the ability of a slide'rule. As a consequence, no doors were broken down by the crushing hoard wanting to use the beast. Interest has been stimulated 'through familiarization classes and allowlng them to write programs. The biggest selling point, though, has been short turn around time on data submitted. At one end of the scale are those, and m~ are guilty~ who enjoy wrlting a program, no matter how trivial, without a real understanding or interest in how much it costs. C of th~_s A singular example is the processor manipulators and program modifiers striving to save micro-seconds. This is fun but not really productive. At the opposj.te extreme is the man who is afraid that the computer, like an expend~ble item of supplies, will be used up. keeps looking for the great applications. He Trivial applications, though productive and economically justified, are not of sufficient challenge to warrant implimentation. He over studies applications hoping the requestor will give up and go away. As we discuss the various odd computer types-, the last one to touch on is the non-documenting prograIDt"'TIer who, four years later can not figure out his criptic notes on the edge of a sheet 9f paper. o Use the ability of the processor to handle comment cards, the next man who has to pick up the grateful. progra~ will be eternally ------.-----..• -.~~. -6- I am sure that these types are not unJque to our organization, every installation has its share. 1'Je can all try to do j.8 The only thing o to place the computer 1.n lte) proper prospective and pay more attention to the people who make up the organ:t za tion. Robert Olson, Water Works Engineer, Los Angeles Department of Water and Power. I want to discuss a program for the flow distribution and head losses in a water distribution system on a 1620-60K system. Capacity of the program is 600 lines, 600 junctions and 175 loops. The .solution is by means of the Hardy--r]ross method of successive itter3tions. Input data is pipe parameters, roughness factors, inflows, outflows, and elevations of junctions. The method of solution is to prepare a schematic of the network. skippi~3 The loops are any assumed for num~c·~s. e~ch line. nu~bered o in an arbitrary fashion but not Starting with loop 1 a direction of flow is Then each line is numbered. Each junction is numbered with junction #1 being a point of known hydraulic grade. On each line place the length, diameter End friction factor. Quantities of inflow and take-outs are shown and a check made to be sure that outflows are the same as ~nflows. The program uses nine dlfferent types of data cards fop such information as jdentification, pipe numbers, parameters, number of itterations, junction numbers, and loop definit1_bns. Output is in three parts. Part 1 is an optional output showing unbalanced heads at junctions after each itteration. Second output is line data showing flo,,\[ and head less in feet per 1000 feet. Output 3 is the hydraulic grade line elevations and pressure head at each junction. 0 h!f'bihils',drIWttlW'{'!!iI'l!.hii'ij,mrrnrm' 3?P -7- o George Taylor Jr., Associ2te Civil Engineer, Data Processing Section, Los An3eles County Flood Control District. The Los Zngeles County Flood Control District has modified tll.e IBr·1-S0GO-l 'system from the original type"t,\}riter output to card output for offline listing because our workload required several hours of typing each day. Our workload has been running about 150% utilization. Mr. Ramsdale of IBr.1 and r1r. LebovJ of the Los .A.ngeles Road Department have assisted j.n 14}~J & ~ounty further modificat1on to use the Printer d.irectly as the output device, by direct rr.achine lan- Guage patches which change the output dev:i.ce code from 04 to 09 and control the carriage skipping. Had the COGO I System been compiled in FORTRAN with Format, o it would have been possible to change the subroutine linkage address from type. to Punch, since both statements comp~_le a3 follo\'Js: BT to the type or punch routine with the Format address, BTM to the £,ill routine with each variable i.n turn except the last followed, by a BTM to the completion routine with the last variable. The BT to the output routine could be changed by changing the linkage address every time it occured in a program. A simple SPS program was used to do this to one of our condensed program decks. Fortran without Format compiles a type statement as follov-ls: BT to a RCTY routine \,'-lith the first variable, BT to a TBTY routine for each variable. The Punch statement, however, o 7 .'''''.::::',£. ",;,;,,,,,, ,; 5""",,,,,, , tI -8- compi.les as follows: BT to a fill routine for each variable, followed by a c;' BT to the output routine. This necessitated completely recompiling the COGO I System, changing all of the Type statements to Punch statements. A couple of 'the plug decks require executing them before punching \. the plug. This was dorie by manually branching directly to the proper statement number, the location of which was found by searching the symbol table. A further modification is being made in the eOGO I Monitor for checking the sequence numbers of the plugs decks as they are read (our 1622 Automatically shuffles the decks as they are read), automatically skipping to a new sheet when a character appears in column 80 of a data card, and to pack more than four variables into the output area similar to MIT's DTM system to simulate the original typewriter output format. g -_._ ...- ' - ...... _ .. _-- ""_. - ._-. --.-~-.-.. ..'- - -----_._- o 'YuINiIW'f'!t'ftrrerr SNOBOL 3, A List Processing Language For the IBM 1620 I. Ge'nerfll Comperison--List Processing vs. Fortran. A list processing l~nguage is designed to work with ALPHABETIC rether then numeric date ~s is FORTRAN. One would never consider writing B multiple correlation in SNOBOL. On the other hand, one could write programs in SNOBOL to: 1. Columnize an article for a newspaner. That is, set up the print so that the left and right margins are even and, if necessary~ decide where to hyphenate words. 2. Read in a Fortran-like eYnression, take its analytic derivative, and put out a Fortran-like expression, which, when evaluated, will give the derivative. Both of the above anplications would be very difficult to nrogramin FORTRAN or SPS.' II. o Acknowledgement. SNOBOL was first implemented for the IBM 7090 by D.J. Farker, R.E. Griswold, and I.p.polonsky at Bell Labs, Holndel, New Jersey. There was an article written by them on SNOBOL 1 in the January 1964 issue of the Journal of the Association for Com~uting Machinery called "SNOBOL, A String Manipulation Language. III. Direction of Implementation. The purpose of the implementation is educational. We want to be able to tell our students what a list processing language is all about. As a result, this imnlementation is rather slow. Practical progr~ms for production runs generally invo~ve a change of card format involving about 'four SNOBOL statements. ~or example~, recently we ran a job with a group of address cards which had the last name first. The problem was to switch the last names down to the end. This involved a four card program in SNOBOL • . The '9rogram has been submitted to the 1620 Users Group Library. They have not yet finished p,rocessing it, but they have given it a temporary P.l.D. number of D3l82. IV. o Data Structure--String and String Name. The basic data structure of SNOBOL .is the string. 'A string contains from 0 to 5000 ordered alphabetic, numeric, blank, or snecial characters. Each string has a name which is from-l to 80 alphabetic or numeric characters including the special characters of' period and record mark. The string is needed s'o that the SNOBOL progrBm can refer to the string; much like a variable name in FORTRAN. q "J;="A::JU::":,:,J,:~:,,,,,,,,,,,,,,,,;g,,, . MI, SNOBOL 3 continued v. PAGE 2 SNOBOL Statement Construction. The SNOBOt'statement consists of five parts: LABEL STRING @@ Statement Label Reference String Match Specification = /S(LABEL) Construction Specification o Go to Specification Except for the End Statement, S~OBOL has just one statement type. The purpose of the separate parts of the statement is as follows: 1. Sta·tement Label. A statement label must meet the same requirements 8S a string name~ eycent that it must begin with a letter or digit. The statement label is needed for reference from other statements very much like statement numbers in FORTRAN. Like FORTRAN', where the statement number is optionBl~ so is the statement label in SNOBOL. Stetement labels must begin in col. 1 if present, otherwise col. 1 is left blank. The rest of the statement is in 'free format in the sense that wherever a space is required~ more than 6ne cen be used. 1 4. . 2. Reference String Name. This gives the string which will be worked on for this statement. This is the only nert of the statement which cannot be eliminated. - 3. MBtch Suecification: This snecifies that which some substring in the reference string must match. In this case, the match snecification has just one element: @ @. This is e literal string, which is suecified by its contents surrounded by @ signs. Thus, in this case, we are looking for a blank somewhere in the string named STRING. The match scen is generally left to right, and the interpreter will take the first match it comes to. Since strings which contain @ signs cannot be specified by 8 literal, a special string QUOTE is supplied which contains just one @ sign. Notice that if there are no blanks in the string named STRING, the match "fails." Construction Specification: This specifies what the substring which is matched is to be changed to in the reference string. This part of the statement is separated from the match specification by an equal sign.' If the match speci~ fication is not included, the whole reference string is changed to. whet is suecified. If the construction specification is omitted, then the. reference string is left unchanged. If the match wes unsuccessful, then the construction specification is ignored and the reference string is left unGhanged. In this case., if a space is found in the string named STRING, it will be replaced by a record mark specified by @~. 10 (; o ipwiliwmihii::iw'-'f !-',j--u--!tt'w:nWlii55 I SNOBOL 3 continued 5. PAGE 3 Go to Specification. This specifies the next statement to be executed. If the part is omitted, the next sequential ins~ruction in the program is executed. The slash preceded by a blank and follol~Ted "by a non-blank character identifies the go ito specif1ca~1on. Parentheses enclose the name of the next statement to be executed. ~This name can be constructed if desired in /S(LABEL) :~he S indicates a "conditiona.l1j go to!': vo to. LABEL. i~ a.nd --only 1f the match was successful. A oranch on fa1Iure 1S indicated by an F. Here the failure branch is not specified. ,Therefore, the next sequential instruction will be executed on a failure. Since LABEL is the statement label of ,this statement, the interpreter will loop through the statement, until all blanks are replaced by record marks in the string named STRING. Notice ,that if the statement is modified to LABEL STRING @ @ all the spaces in string will be deleted. This is one of the first things ~one in any FORTRAN compiler. 0 ,' I = /S(LABEL) ,,~ VI. Radix Sort Explanation. The sample program (see inserted listing)which I am going to go through involves alphabetizing words using the radix sort technique. The technique is simply that used when one orders cards on a card sorter. For example, say one wanted to sort the following number into numeric order: 2297 2147 2293 2143 2197 2193 2243 2247. One would first sort on the last column. ginal order is preserved): o (In case of ties ori- 2293 2143 2193 2243 2297 2147 2197' 2247. Then one would ',S)rt on the second last col\Ulln: /I . ------------lIIIIUIIIi=_iJA_a:=Il'I'!t£,,:,e,""""'~~~----,.--. . _._ ....• ..4. ..•. 4 1I1!IIl ___._.4!¥:;il!J!i!!ll~~.a~".H-'T,----"·p.... - · -_ _ _"=~·"I!·=·-,-"". ;r'!····,::L.. -:.-.~.. -.. _~ ...:.' . SNOBOL 3 continued PAGE· 4 2143 2243 2147 2247 2293 2297 2197. Now the last digit is which is o the numbers are once again out of order with respect to digit. However, on the cards where the second last the same, the cards are in order by the last digit, just what we want. Sorting on the third last digit gets: 2143 2147 2193 2197 2243 2247 .2293 2297. Since the first digits are all the same, an extra sort on the first digit will yield the same result. Notice that the numbers are now in order. listin VII. on a card by card basis. o ,l#XEQ SNOBOL This card would appear only on those machines which operate under a MONITOR system. Otherwise, it should be omitted. BEGIN SYSPIT *SIZE* @ @ SYSPIT is a special string :for the SYStemi's peripheral I.nput Tape. On this interpreter this means the card reader. Whenever SYSPIT appears, one card is read and its contents are put into a string of length 80. There is no construction or go to specification in this statement. *SIZE* is what is known as a filler. It can be matched with as many characters from the re:ference string as necessary to permit the rest of the match speci:fication to match. If the match is successful, then the contents of SIZE are replaced by those characters against which the filler was matched. A filler may match a null string (string of length zero). I:f a :filler is the :first element in a match speci:fication list, then, as is this one, it is matched starting with the first character o:f the reference string; if it is the last elemeni; the character it is matched against is extended to the last character of the reference string. In this case, *SIZE* @ @ is being matched against the first input card which· is a 9 followed by blanks. The @ @ will match the blank in col. 2 and SIZE will be filled with the 9. The /2 o !!wltilr:jfe"j'''erWl'5rr SNOBOL 3 continued o PAGE 5 purpose of the statement is to read in the maximum number of' letters in the word to be sorted or, looking at it another way, the number of columns to be sorted on. START SYSPIT *WORDS* @ @ /F(LO) This statement is very much like the preceding one, only the names have been changed and a failure exit ha.s been added. In this case, WORDS will be filled with ARMY, TEST, GLOBAL, etc. LIST = LIST WORDS / (START) Since the match sp~cification is missing, the entire string is set equal to the construction specifications. Here the construction specification consists of two elements LIST and WORDS. The contents of the two strings are combined with all of the chara.cters in LIST preceding all of the character in WORDS. The results are stored in LIST. Notice that the first time through the string,LIST is used before it has been defined. This perfectly legal. Any undefined string is taken as being nUll. Then the program goes back to START and reads the next card whose contents~ up to the first blank,are stored in WORDS. The contents of WORDS is then added onto the contents of ~IST~ Once again we go back to start. However, this time the card read doesn't have a blank. The contents of WORDS is left unchanged and control transfers to LO. o LO SYSPOT = @ THE LIST TO BE ALPHABETIZED IS - @LIST SYSPOT is a special symbol for SYStem's Peripheral Output Tape. In the case it's the typewriter, or, if you have a pr.inter, the 1443 printer. There is also SYSPPT (SYStem's Peripheral Punch Tape), which is the card punch. Every time SYSPOT (or SYSPPT) appears in a statement, its contents are outputted once the statement completed. This statement will type out THE LIST TO BE ALPHABETIZED ISfollowed by the contents of LIST. SYSPOT = VOID This prints a blank line since void is empty, being undefined. Ll ALPHABET = @ABCDEFGHIJKLMNOPQRSTUVWXYZ@ This statement put the alphabet into ALPHABET. In the context of the program, the statement actually defines the collating sequence to be used. The definit'ion is completely independent of the natural machine collating sequence. o L2 SIZE = SIZE '@1@ Arithmetic is permitted between two strings whose content are purely numeric. Both strings are decoded into ten-~igit numbers; the arithmetic operation (+J-,*,/,or **) is carried out and the results are recoded as a string. Negative numbers are coded with a minus in: 'front,' all preceding zeros are d,ronped, except if the result is zero the resulting string is ,@O@. . Special provision has been made to avoid coding a negative zero. Here SIZE, which was 9, is decremented to 8. SIZE contains the number of letters in a word to be ignored before the column we are now sorting on. 13 ===:,2Z1":',,,.,.(. '~"",.,,,,,,,, . __ - n. __ ......... k.,!...·. ~,JJgf¥,:'!*¥g:gs 'I il I 1 SNOBOL 3 continued PAGE 6 SIZE :@-@ /S (FIN) This statement asks if there is a minus sign in SIZE. Eventually SIZE will be decremented to the point where it contains a minus one, in which case this statement will transfer to FIN. For the time being, the match will fail and wefll go on. o L3 LIST *WORD* @,@ = /F(L5) Everything up to the first comma in LIST is put into 1tIORD and the substring of LIST which was matched, including the comma, will be set equal to the null string. That is, this particular work will be deleted from LIST. IF LIST HAS NO MORE IN IT, then the match fails and the program transfers to L5. ~'rORD *HEAD/SIZE* *PIT/@l@* /F(L4) HEAD/SIZE denotes a "fixed len~th filler." In this case, HEAD can only be filled 'with -the - num-ber of' characters specified' by the numeric string SIZE. Likewise, PIT can only be filled by one character, which happens to be the character we are sorting on. If the vTord is too small, the contents of HEAD and PIT are left unchanged and the program transfers to L4. $ PIT = $PIT ~oJORD @,@ / (L3) The $indicates indirect addressing. The contents of PIT are to be used as a string name. If PIT contains @K@, then it is the string name K that we are dealing with. Almost all restrictions on string names and statement labels are removed when indirect addressing is used. In this case, say we are sorting on the fourth letter of the work TENSOR. Then @TENSOR,@ would be added onto the string name S. These strings with one character names are being viewed as pockets in a sorter are. After this statement is done, it transfers beck to L3 to pick off the next word from LIST. 0 L4 BIN = BIN WORD @,@ /(L3) BIN is used to store those words which are too short to be sorted at this time. Control is then transferred back to L3' to take the next word off of LIST. L5 BIN *LIST* = Now that all the words have been distributed among the "pockets," tha.t is strings with one character names, we must collect the words back into LIST in collating sequence. This statement does two things: 1. Moves what is in BIN, that is, those words too short for sorting on this column, into LIST. 2. Set BIN equal to the null string. This is done since the arbitrary filler LIST will match with the entire string BIN because it is both the first and last element in the match specification. o ,ji'i"f'tKtllrl!t5',,'·-n'3 ~NOBOL PAGE 7 3 continued 16 ALPHABET *PIT/@l@* = /F(ll), This statement put into PIT the next "pocket' to be put back into LIST. This letter is then deleted from the string named ALPHABET. If the list of letters in ALPHABET ha.s been exhausted, control is transferred back to L1. At L1 the contents of ALPHABET are restored, SIZE is decremented again, and the sort continues on the next column. LIST = LIST $PIT Add the words in the "pocket" onto LIST. $PIT = /(L6) Set the "pocket" equal to the null string and transfer back to L6 to get the name of the next "pocket." FIN SYSPOT= @ THE ALPHABETIZED LIST IS - @ IJIST After the sort is complete, that is~ SIZE also-reaches a minus one, this statement types the alphabetized list. c' END BEGIN This statement performed the functions of both the END and STOP statement on FORTRAN. It indicates to physical end of the source deck for the interpreter. If control is transferred to it, either by a branch to END or, as in this case, by being executed as the next sequential instruction, execution of the program is ended. BEGIN is the statement label of the first instruction to be executed in the program. If this name is omitted, execution starts with:' the first ~tatement, as in FORTRAN. VIII. Other Features. The language has several other features: Recursive Functions Balanced (with respect to parentheses) Fillers Back Referencing (if the contents in a Filler match further down) Tracing Capabilities (sense switch 1) Memory Dump (on a control card). NO/~ ~ b~I:IJ e SNI!3tfL hCl- ~ bee n a e c- ej:J·i e cL e.I/I1MftV //6r?u~J U IJd e o /5' £=:::=:::5='::':. ".3,;, ,. *" 4- r- -6- h e.. **XEQ SNOBOL o BEGIN SYSPIT ,;':S I ZE,;': @ @ STAnT SYSPIT ';':~JO RDS,;': @ @ LIST = SYSPOT = @THE LIST TO BE I\LPHABET I ZED LO SYSPOT LIST VlORDS = = Ll ALPHABET L2 SIZE = SIZE @-@ L3 L4 @ LIST IS - VIOD @A8CDEFGi-11 J SIZE - KLf.ll'lOPQRSTUV~vXYZ@ @l@ /S(FIN) /F(LS) \jOHD *HEAD/SIZE* SPIT = $PIT /F(L4) *PIT/@l@* I( L3) ~.JORD [) I iJ G I i1 L6 ALPiiABET END /(START) LIST L5 F I Ii /F(LO) I(L3) = LIST = $PIT = S YSPOT = LIST o IF(ll) SPIT / (L6 ) @TilE J\LPHi\i3ETIZED LIST IS - @ LIST BEG r I·] 9 AHj,1Y, TEST ,GLOGAL,/HU10RY ,GlOBE,ARl'!1, TENSOR, i\L I B I, ARE,GLOi'J, TENSE 1 TOTAL,Cl\rlCEl, TO i j S I L , GL 1\ 0 1/\ TOR, j'l 0 B I L E , i·:10 Til E , AlJ Y , TOR S I a iJ , P LA TIT U0 E , F U1<1 B L E , Cl\ RD. 'ri I T i'l • IJ 0 • BLf.\ il K~ • FOR. T RA I LE R. • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • o /6 !1f!:.re,Wrri1fl ·tifU.'"IIWZ·nZ· o An Input Routine for Linear Programming ~nterpretive D. J. Aigner University of Illinois 1. Introduction The LP system to be described below derived from a need to. make available to business and economics students with essentially no programming background a set of easy-to-use codes for various tools in the fields of operations research and statistical analysis. While as a general proposition it would seem that business schools are requiring increased mathematical and statistical sophistication on the part of students (as reflected in their curricula), a basic introduction to digital 4[:\ machines, required of all undergraduates, is not yet such a general reality. When such a course is a requirement in these curricula it will likely become of lesser importance - indeed, more difficult to justify economically the effort required in many cases to produce truly simple input codes fcr students' use, such as the one which is the subject of this note. Of course the programming model, whether it be of linear or non-linear form, and as one of a number of such examples, finds application in fields other than business and economics. Thus viewed in a more global perspective· the central University computing facilities, at least in the short run, should be co~cerned, if not committed. to providing a basic kit of popular tools which is easily accessible to the unsophisticated user. This last statement is not an apology for the existence of such people, but rather a judgment based on an observation of reality. o 17 ===,CJu.J.....,,! ",,,,,.A#.. The I 'I - 2 - o j educational process does not merely apply to the person who is listed as a student in the University records, but to his teachers as well. And while we usuaJ.ly J speak of pedagogy as a teacher to student causal relation, it may as well be applied across disciplines on a teacher to teacher basis, and, as is becoming', 'more apparent, the learning process~especially with regard to computer applications in "virgin" areas, also takes the form of a student to teacher feedback. lihile this introduction may not seem appropos. the more technical content to follow, it does establish, if its basic premise is agreed on, a justification for the cost of preparing rather complex (from a coding standpoint) I/O routines for many well-used tools of analysis. At Illinois the premise in question is accepted, with the result that an integrated set of 37 programs for statistical techniques, matrix editing and manipulations, data transformation, and certain operations research tools has been produced; the programs are available individuaJ.ly or in combination through a single data input routine. This package, designated SSUPAC, is presently stored on the 7094 disk file and may be obtained by the user via the main operating system just as he would any compiler. The linear programming code in SSUPAC, written originally by Glenn Rosbrook of the University's Statistical Service Unit, is unique not for reason that the code is superior in efficiency, generality, or flexibility to other codes, but because of its input routine. calculation ~urposes, Indeed, any LP code could be used for receiving its input from this routine. The input code has aJ.so been adapted as ALPS, A Linear Programming'System on the College of Business Administration's 1620, and is used primarily as a pedagogical device for students in operations research courses. o I r Q(tWzM'·:!'twfii'iiWus=mmltmm, - 3 - o 2. Description of the Routine The .... concept upon which ALPS is based is quite simple: to produce ?' "; a code for linear programming which requires input of the simplest form, but is general-' enough to allow a variety' of data modes (mixed perhaps), has very few restrictions for card punching, and will itself take care of adding slack or artificial variables where necessary. The result produced in attempting to meet these goals takes the form of an algebraic statement of the LP problem, e.g. Maximize (or minimize) Subject to . amlxl + am2 x2 + •••• + am:n xn ~ o x.?: ~ b m i = 1, •..• , n 0 translated ver batim onto punched cards" except for the non-negative restrictions. For example, the problem Subject to 4XI +6x2 + 3x3 = 24.5 Xl + 1.5x2 + 3X3 < 12 < 12 could be inputed to ALPS as: MAXIMIZE ~ = • 5X(1) + 6X(2) - 5)«3), SUBJECT TO o CONSTRAINT (1) 4X(1) + 6X(2) + 3X(3) = 24.5) CONSTRAINT (2) X( I) + 1. 5EOOX( 2) + 5X( 3 ) IE 12, CONSTRAINT (3) 3X(1) + X(2) IE 12, END 4£.:::.,,'"'$''',.,,;, ..•.,,4,.., - 4 - Basically, the routine keys off the beginning letter of each statement, M, S, C, or E to determine the type of statement: "M" for the objective function (maximize or minimize), "s" for any editorial statement, ftC 11 for a oonstraint ( statement, and "E" for the end of problem statement. In the objective and con- straint statements an ending comma signals termination of the statement • Editorial statements can be used anywhere in the input, and statements may be punched anywhere on the card or cards necessary; continuation is automatic until the terminating cmmna is found and all blanks are ignored. Coefficients may take on ibur "modes": integer as in 3X(1), Fortran "F" format as in .5X(I), floating as in 1.5EOOX(2), and no coefficient as in X(l), which is interpreted as lX(l). There are no restrictions on mixing modes in any Forms of the -constraint inequations are indicated by IE (~), GE @), statement. and E or =. o Identical comments as above apply to the mode representation of the constraint constants. As presently written, ALPS does error checking in the statements for invalid characters, integer subscripts, beginning letters and ending commas (where applicable) for all statements, etc. Also included is a capacity check for the maximum matrix size allowed, which of course varies according to the particular machine at hand. ALPS prepares a data matrix from the above input by adding necessary slack and artificial variables with appropriate weights for the objective function, provides an initial basiS, and, if required, transforms a minimization problem into a maximization problem as input to any LP solver. cess is outlined in Figure 1.- The basic pro- o 4 r - 5 - o 3. Coordination with a Solution Routine Bootstrapping the output of ALPS to a given obviously dependent in form on the hardvrare at hand. calc~lation routine is For small equipment without peripheral storage devices the most efficient method for coordination likely would be to prepare the data matrix (size determined by the solution routine and the hardware) in high-order memory and load the solving routine directly after ALPS puts the matrix into its proper addresses. With less imposing memory limi- tations, or possession of disk or tape storage, the coordination problem could be handled in a variety of ways, depending on the maximum problem size desired. As presently written ALPS requires approximately 7,200 BCD positions plus the output data matrix* or about 1,000 words plus on a Boolean machine. Input statements are processed individually, then immediately translated into 4[) their appropriate locations in the data matrix. Both operating versions at Illinois use a Fortran-coded revised simplex algoritlun for computation. * Or matrices, depending on the algorithm used. o ::2 { ::::::=2 g,t...,,' """,.,.c.,.,,,,,.,..,,, .. o OJ,,, -6A- o I?EAO A CARl> 8 o ADJUST DA7A MATRIX FO&fIF(}ALI'TYa?A£ STIV'1/I/TS' ADD tVt:C~SA'k y ~iACK AN'/) AIi7I~/c/A'JlAteIA8LGJ'. o t,;za;,.:".u",,,,,, •. ,,IQ,,.,,s...., . . ¥.gt."(4i~44¥);:;¥I.A,J,\Hf.?f¥#4.-1.- ...., PAP... - . ;;;:.4 ,\i",... "~!\Iljij31. ¢_"ru,E'"£'I_'" •• ~.n •• _S..T -~-------.-.--.~--."".~~ -68- o par COEFFICIEN, 7I!l INTo ()8.lECTIVc ARMY 01 8 --~aLJ---~------"'!. - ....... StlSI(OUTINEIJIPlfSOllTAPPjfOI',f/ArE He-~.$A91FINCI.II071V&CA,ff) . ON NJ.lICH IT ~I/RR.G[)· COKT/NUE - PI2OCE.s'JVN~ RJ~ e~1l6R..s'. ~-- 8 -'JI'!AAJ --L.UfYJ StlBleovn1l1: . FO~-CONV~MJO}/ OF COEFFIC/EfeI7:S' 70 'FLOArINB ,co/,An; /NTeRNAL_ o - 7 - Adaptations for the 1620 ALPS is now used:h conjunctj.on vlith a mag tape 1620, where the data matrix is outputed from ALPS to tape, the Fortran-coded LP solver is read into memory, and finally the (lata matrix j_s returned to memory from tape. A disk- oriented 1620 could be utilized in the same fashion, so that, no intermediate output neeo. be hancl1ed. For a strictly card-orienteo. machine, it is possible to alleviate intermediate handling problems also, by preparing the data matrix in addresses appropriate to a given solution routine, and then loading the solution routine C" , over ALPS. The basic modifications necessary to accomplish this consist of the "./~ " folloving (references refer to SPS source listing): Change To 17 EXIT H 18 RWT2 remove 18 - 19 l'ECH+6, NUM through TFM RNCD B o o MES2 DAC 38 21 BOX DSB 10, 21" CONTRI DSB 10, 74" CONST DSB 10, 21 BLAST DC 1; 1575" These locations must have their addresses set so as to place the arrays in their corresponding sol~tion l'outine locations Can be set to correspond to given memory capacity o j,':a!l!6!., ... ±".\Br;L.iti!i!.'_"" :;;.-li .. " - 8 - o The Fortran code used at present with ALPS is :Listed on pp. 22-21~. On a 40K machine the maximum matrix size (coefficients plus constraint constants) is n + m ~ 1551t vTith the normal significance levels f = 8, k = 5, maximum problem size being dependent upon the number of IE's and GE f S included. The maximum problem size of 71.~ variables and 21 constraints could only occur if all constraints ","ere equalities. Of course there are l-rays, given tapes or disks, to increase problem size by some this. I1 p ing_pong" method, but our user I s requirements hardly Jus~ify It is also difficult to justify using the 1620 for large LP problems given that one has tlVO large-scale machines available for ger.l.eral use. A copy of the user's information sheet for AJ~S is also included to show examples of input and output for the LP package. o o t··· i:IWWitHiM,t,,'fottneOe,t\lnWW1!1· E -9- o 0 o * COMPACTION ROUTINE. AT STORE. ADOR GIVES RECORD MARK POSITION CF ROUT RCTY RCTY TFM CNUM.CONTRI TFL -CNUM.ZERO AM CNUM.I0 CM CNUM.CONTRI+16490 BN *-36 SF START TFM AOOR.CREC TOM -ADOR.O AM AOOR.l CM AOOR.CREC+21 BNE *-36 TFM ADOR.CONST+15741 TO -AODR.RMARK TFM COSAVE.O TFM SAVE.O TFM SAVEl.0 TFM NUM+3.0.7 AGAIN TFM COUNT.NUM TOM EQSN+~5.3 •• TO LOOK FOR • SIGN TFM AODR.OVERLP TOM -ADOR.O AM AODR.l CM AOOR.OVERLP+80 BNE *-36 TFM AODR.STCOL TOM -ADDR.O AM AOOR.1 CM AODR.STCOL+159 BNE *-36 TFM CO.O SM CO.1 CF C CF ERRl ••• NEW SEQUENCE--COMMA CHECK SF EQSN TFM ADDR.NUM START TFM COLM.STCOL RACDSTCOL SF CHK ••• A CARD HAS JUST BEEM READ AM CD. 1 AM CDSAVE.l TO WORK.STCOL+158 TO WORK-l.STCOL+157 SF WORt<-l CM WORK.O.10.SEE IF 80 IS BLANK BNE ERR11 TF STCOL+158.RMARK BNF *+24.START TFM STCOL-2.71.10. SKIPS PAGE IN FORMAT CONTROL WACOSTCOL-2 CF START TFM STCOL-2.00.10 * CHECK FOR END OF CARD CHK CM COLM.STCOL+158 BE YES TO W()f:M(. -COLM SM COLM.l TO WORK-i.-COLM ====$. = , -,."'. .,$. ....,.,,,.,.. ,, . _ g.. _ .#4;4(.14 ... L.4 ........ .I, T "T' -10- AM COLM. I SF IAIORK-I CM ADDR.NUM+2 BNE *+72 SF NUM-l. CM NUM.45.10. SEE IF END STATEMENT BE END CM NUM.62.10. SEE IF AN S BE AGAIN * CHECK FOR BLANK CM WORK.OO.I0 BNE TSMITO AM COLM.2 CHK B TSMITOBNF RNO.CHK •• COMMA CHECK CF CHK BNF RND.ERRI TO WORK.-COLM COLM.l SM TO WORK-I.-COLM AM COLM. 1 SF WORK-l CM WORK.54.l0.SEE IF AN M BE ERRlO CM WORK.43.10.SEE IF A C BE ERRIO CM WORK.62.10.SEE IF AN S BE ERRIO CM WORK.45.tO. SEE IF END STATEMENT BE ERRlO TO -AODR.-COLM RNO SF ERRl SM AOOR.l SM CaLM. 1 TO -AOOR.-COLM CF -ADOR AM AODR.l AM COLM.3 * CHECK FOR COMMA AM AODR.2 CM WORK.23.10 BE STIP B CHK * CHECK FOR FIFTH CARD YES CM CD.S BE ERRl B START ERRl WATYNOI BTM ROUT.O.I0 AGAIN B STIP SM AODR.2 TF -AOOR.RMARK CHECK FOR MATERIAL TO RIGHT OF A COMMA * AM COLM.2 CM COLM.STCOL+155 COM BNN RUNE TO WORK-I.-CaLM V AM COLM.1 / .2.) ',') n r , TO WORK.-COLM/ AM COLM.l SF WORK-l '1;/ 0 o o \) 'i!. ( ; , 4-,./· I I,,·, -11- c CM WORK.OO.lO.TO SEE IF BLANK BE COM WATY MES12 8TM ROUT.O.IO 8 AGAIN RUNE NOP * INTERROGATION OF MAX. MIN, OR CONSTRAINT TFM CNUM.O CF AMINI SF EOSN TFM COUNT1.NUM TO IAIORK-l.NUM-l TO WORK.NUM SF WORK-l CF WORK CM WORK.S4.10,SEE IF AN M BE M WORK.43,lO.SEE IF A C CM BE C WATYERR4 8TM ROUT,O,lO B AGAIN M TO WORK.NUM+2 TOM WORK-l. 0, 1 1 CM WORK.l,10. SEEIF AN A 8E EOSN-12 AMINI SF AMINI EOSN-12 8 C SF C TOM WORK-1.0.11 TOM EOSN+3?'2,.TO LOOt< FOR A LEFT PAREN RATHER THAN SIGN AM COUNTl.l EOSN AM COUNT1,2 TO WORK,-COUNTl CM WORK,3,10. SEE IF SIGN BE *+24 B EOSN * THE ABOVE LEAVES COUNTl AT SIGN, LEFT SIDE AM COUNTl,2 BNF MAX.C * FLAG AT C IF A CONSTRAINT CARD * FILL IN CONSTRAINT ROUTINE. COUNT 1 IS ON LEFT SIDE OF FIRST NO. CF FIX AM COUNTl,l TO CNUM.-COUNTl AM COUNTl.1 TO WORK.-COUNTl WORK.7.10. TO SEE IF IT IS A 2-PLACE SUBCRIPT CM BNE *+60 AM COUNTl.1 TO CNUM-l,CNUM TD CNUM.-COUNTl AM COUNTl.1 COUNLD PUT A CHECK IN HERE FOR RIGHT SUBSCRIPT * CM CNUM.21 BNP *+36 WATYERR8 8TM ROUT.O,lO AM COUNT1.2 SAVEl WILL CONTAIN THE LARGEST SUBSCRIPT * C SAVEI.CNUM = = = o IN PAREN .•...J!!·,JtJif ....t:.'&.!...• ""'j. -12- BP *+24 TF SAVEl.CNUM MAX TF COUNT2.COUNTl TFM COUNT.FORM-3l TD WORK.-COUNTI AM COUNTl.l TD WORK-I.-COUNTl SF WORK-l SM COUNTl.l CM WORK.76.l0. SEE IF. AN X TDM WORK-l.0.t1 BNE RL BNF PAREN-12,EQSN TFL EX.ONE SM COUNTl.2 TD WORK.-COUNTI CM WORK.2.l0. TO SEE IF NEGATIVE ONE BNE *+24 SF EX-2 AM COUNTl.2 PAREN B * CONDITION TO NOT SET A NUMBER TO ONE RL TO WORK.-COUNTl CM WORK.7.10, CLEAR FLAG IF A NUMBER THE FIRST TIME BNE *+24 CF EQSN TO -COUNT.-COUNTl AM COUNT.l AM COUNTl.l TD -COUNT.-COUNTI AM COUNT. 1 AM COUNTl.1 B MAX+24 BTM FORM.O.IO PAREN SF EQSN TDM WORK-l.O.ll TFM PLACE,O AM COUNTl.4 TD WORK.-COUNTl CM WORK.7.l0. SEE IF IT IS A NUMBER BE *+48 WATYERR5 BTM ROUT.O.IO B AGAIN AM COUNTl.l TO PLACE.-COUNTl AM COUNTl,l TD WORK.-COUNTI CM WORK,O.lO. SEE IF RIGHT PAREN BE DESERT CM WORK.7.10.0EE IF A NUMBER BE *+48 WATYERR5 BTM ROUT.O.lO B AGAIN TO PLACE-l.PLACE AM COUNTl,l TD PLACE.-COUNTI AM COUNTl.l TD WORK.-COUNTl CM WORK.Q.lO. SEE IF RIGHT .PAREN o o i i"' l'lj'IiIiIW'IIMII'tttIllIlIlTIlIITIII!5l1r- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- - - - - -- - --- -13- BE *+48 WATYERR5 BTM ROUT,O,10 B AGAIN DESERTBNF MPLACE,C * CNUM IS PRESENT CONSTRAINT NUMBER. PLACE IS X(PLACE). ADDR,CNUM TF SM ADDR,l MM ADDR,750,9 SF 95 TF ADOR,99 MM PLACE,10 SF 95 SM 99,10 ADDR,99 A ADOR.CONST AM TFL -AOOR,EX EST B MPLACESM PLACE. 1 ADDR.PLACE TF ADDR. 10 MM SF 95 ADDR.99 TF ADDR.CONTRI AM TFL -ADDR.EX AM PLACE. 1 SAVE.PLACE C BNN *+24 TF SAVE.PLACE.,SAVE WILL CONTAIN THE LARGEST SUBSCRIPT * CHECK FOR TWO EQUAL SUBSCRIPTS AM PLACE.OVERLP BNR *+36.-PLACE WATYERR6 BTM ROUT, 0, 10 TO -PLACE.RMARK SF EQSN EST AM COUNTl,2 •• LEAVES IT ON LHS OF FIRST DIGIT OF NEXT NO. COUNT2.COUNTI TF AM COUNT2. I 8NF OPCONT-12.C TO WORK.-COUNTl ADOR.CNUM TF SM ADDR.l ADDR,CREC AM CM WORK.OI,lO. SEE IF A PLUS SIGN MAX BE CM WORK.02,10. SEE IF A MINUS SIGN BE MAX SIGN CM WORK.03.10. SEE IF BE FIX CM WORK.OS.IO. SEE IF LE BNE *+48 AM COUNTl.2 TO -ADDR.RMARK FIX B CM WORK.04.10. SEE IF E OR GE BNE N07 TO WORK.-COUNT2 CM WORK.S.IO. SEE IF E BE FIX TnM -AOOR.O.ll. SET A FLAG Fe = 0 - ---- -- - - - ----... ...... - - -------.-- -.--.-.-.. ... "-"-''_.-.. '-"~.-'......,....."""---"'~-' -._- -14COUNTl.2 COUNT.FORM-31 COUNTl.2 •• AT LHS OF FIRST NO. AFTER C-CONDITION VJORK.-COUNTI INORK.7.10. SEE IF A NO. LLL-12 lNORK.O.I0. SEE IF A PERIOD LLL-12 VJORK.2.10. SEE IF A NEG. NO. *+24 FIX ••• CHANGE SIGNS ALL NOS. JUST ENTERED IF A FLAF AT FIX COUNT1.2 COUNT2.COUNTl COUNT3.COUNTl LLL COUNT3.1 *+24.-COUNT3 FIX2 B TD -COUNT.-COUNTI AM COUNT. 1 TD -COUNT.-COUNT3 AM COUNTt.2 AM COUNT. 1 B LLL FIX2 BTM FORM.O.IO TF ADDR.CNUM SM ADDR.l MM ADDR. to. 10 SF 95 TF ADDR.99 AM ,ADDR.BOX TFL -ADDR.EX * CHECK TO SEE IF NEG. CONSTRAINT BNF AGAIN.FIX TF ADDR.CNUM SM AODR.l MM ADDR.750.9 SF 95 TF ADDR.99 AM ADDR.CONST SM ADDR.2 TF PLACE3.ADDR AM PLACE3.740 BNF *+36.-ADDR ZAP CF -AOOR B *+24 SF -ADOR ADDR.PLACE3 C BE ZIP AM ADDR. 10 ZAP B TF ADDR.CNUM ZIP SM ADDR.l AM AOOR.CREC BNR *+48.-ADDR BNF AGAIN.-ADDR TOM -ADDR.O.ll BNF AGAIN.-ADOR TO -ADDR.RMARK AGAIN B BNR MAX.-COUNT2 DPCONTBNF AGAIN.AMINI FIX AM TFM AM TD CM BE CM BE CM BNE SF AM TF TF AM BNR .-~ - ---.----.------~- 1 ------~---- 0 \0 0 I j'" -15- o o * MINIMIZER TFM COUNT2.0 TFM ADDR.CONTRI-2 BNF *+36.-ADOR CF -AODR *+24 B SF -ADOR AM COUNT2.1 AM ADoR. 10 SAVE.COUNT2 C BNE *-84 AGAIN B * CONVERSION ROUTINE DC 31.0 FORM SF FLAG CF E CF FLAG2 CF MINUS CF MINUSE TFM EX.O.l0 TFM EX-2.0 TFM EX-5.0 TFM AT.EX-9 TFM COUNT.FORM-31 CF FORM-31 TO WORK.-COUNT TRY TOM WORK-I. O. 1 1 CM COUNT.FORM-l BE SERVE CM WORK.7.10.SEE IF A DIGIT BE DIGIT TO WORK-I.-COUNT AM COUNT. 1 .TD WORK.-CQUNT SM COUNT.l SF WORK-l CM WORK.45.10.SEE IF AN E BE E CM WORK.03.10.SEE IF A PERIOD BE PERIOD CM WORK. 1 0 • 1 0 • SEE IF A PLUS SIN BNE *+36 AM COUNT2.2 PERIOD-24 B eM WORK.20.10.S EE IF A MINUS SIGN BNE *+36 AM COUNT2.2 MINUS B CM WORK.O.lO.SEE IF A BLANK BE SERVE WATYERR2 RCTY wATY MES6 WNTYCDSAVE-3 RCTY RCTY TFM *+18.FORM-31 TOM FORM-31.0 •• TO SET TO ZER/ AM *-6.1 CM *-18.FORM-2 BNE *-36 f,'I;il#.i!i_,._.$."._ .• i'i±.....JB;liB.:.,;.· 'I I SF ROUT AGAIN B DIGIT AM COUNT. I TO WORK.-COUNT TOM WORK-I.O.lt SM COUNT,l CM WORK,O,10,SEE IF A ZERO BNE ANUM FLAG BNF ANUM,FLAG FLAG2 BNF *+24,FLAG2 SM EX,I.10.HAVE GONE BY • W/O NON-ZERO DIGIT PERIOO-24 B ANUM AM COUNT. 1 TO -AT.-COUNT SM COUNT,l BNF *+24,FLAG2., • • HAS NOT BEEN FOUNO,EXP IS NOT SET B *+24 AM EX.I,tO CF FLAG AM AT. 1 AM COUNT,2 TRY B PERIODAM COUNT. I TO WORK.-COUNT TOM WORK - I • O. 1 1 CM WORK,O.IO. SEE IF NUMBER IS THRU BE SERVE * COUND PUT IN CHECK FOR PERIOD. AM AT RHS OF THING STARTING W/ BLANK SM COUNT. 1 SF FLAG2 PERIOD-24 B MINUS SF MINUS PERIOD-24 B MINUSESF MINUSE AM COUNT.2' E SF E TOM WORK - 1 • O. I 1 TO WORK.-COUNT CM WORK.l.10.SEE !F A PLUS SIGN BE E CM WORK.2,10,SEE IF A MINUS SIGN BE MINUSE AM COUNT. I TO WORK-I.-COUNT AM COUNT.2 TO WORK,-COUNT SF 1Af0RK-1 BNF *+24.MINUSE SF WORK EX,WORK A SERVE SF EX-I SF EX-9 CF EX-2 BNF *~24,MINUS SF EX-2 TFM *+18.FORM-31 TOM FORM-31.0 •• TO SET TO ZERO AM *-6.1 CM *-18.FORM-2 BNE *-36 * FOR I-CONVERSION 33 • rti:W.e&+ittjitlli:iiiN'·W·!!!·'HftWe'flmS -17- 0 0· ".,'" BNF *+24.E BB BNF *+24.FLAG2 BB AM COUNT2.1 COUNT2 IS ON RHS OF FIRST NO. * TF PLACE.COUNTI PLACE.COUNT2 S TFM ADDR.O SM PLACE.2 AM ADDR.l CM PLACE.O BH *-36 SF ADDR-l TF EX.ADDR BB END ROUTINE * NOP END BNF BRND.ROUT., IF ERRORS EXIST, EXIT EXIT BRND TFM PLACE1,CREC,~,PLACEl CHECKS FOP C-CONDITION TFM J,O ••• INDICATES USE OF EXTRA COLUMNS TFM SLIP.CONTRt MM SAVE,lO.10 SF 95 A SLIP,99 MM SAVE1.tO.l0 SF 95 A SLIP.99 •• SLIP IS BELOW ADDITIONAL COLUMN TFM JJ.O TFM 1.0 FOR I MATRIX. PLACE3 * TF PLACE3.SAVE A PLACE3. t MM PL ACE 3, 1 0 , 1 0 SF 95 TF PLACE3.99 1.750,9 MM SF 95 PLACE3,99 A AM PLACE3,CONST LOOP BNF RECK.-PLACEI * GE ROUTINE TFL -PLACE3.NEGONE TFL -SLIP.LGNEG AM SLIP,10 * FOR EXTRA COLUMNS. PLACE2 TF PLACE2.SAVE PLACE2.SAVEl A PLACE2.J A MM PLACE2.10.10 SF 95 TF PLACE2.99 1.750,9 MM SF 95 PLACE2.99 A AM PLACE2.CONST TFL .-PLACE2.0 NE AM J.l INCRE •••• TO INCREMENT PLACE 1 AND 3 AND I B RECK BNR NONE.-PLACEI -la- * LE ROUTINE TFL -PLACE3.0NE INCRE B NONE TFL -PLACE3.0NE TF EQOINN. I EQOWN.SAVE A MM EQOWN.I0.I0 SF 95 TF EQOINN.99 AM EQDWN.CONTRI TFL -EQDINN.LGNEG I•1 INCRE AM AM PLACE1.1 AM PLACE3.760 SAVE1.1 C BNE LOOP PUT BOX AWAY AT END OF CONSTRAINTS * TFM PLACE! .BOX TF PLACE2.SAVE A PLACE2.SAVEI A PLACE2.J MM PLACE2. 10, 10 SF 9? TF PLACE2,99 AM PLACE2.CONST TFM 1',0 NIFTY TFL -PLACE2.-Pt...ACEl AM PLACE 1, 10 AM PLACE2,7!50 AM I•I SAVEl,! C BNE NIFTY TF SUB. SAVE SUB.SAVEI A SUB.J A RWT2 TFM TRT+6,NUM+30 TRT TFM NUM+30.0 CM TRT+6.NUM+160 BE *+36 AM TRT+6,!5 TRT B TF NUM+4 , SUB TF NUM+9,SAVEl TF NUM+14,SAVE CF NUM CF NUM+S CF NUM+10 TF NUM+80.RMARt< TFM YECH+6.NUM BTM WRfTE,o TO SLIP.CONST-9 TO CONST-9.RMARt< TFM YECH+6.CONTRI-9 BTM WRITE,O TO CONST-9.SLIP SF CONST-9 TFM YECH+6.CONST-9 8TM WRITE,O RWT2 EXIT 3 S'-----_ .. _'"._- -_._-----_.---.--- ----- --~--~ -._---- - ------"------ .. _- 0 0 ~ 0 \ r -19- o - H DC 5,0 WRITE TFM CD,5,10 TFM COUNT,S,10 BV *+12 CTI2 YECH WNT20 BNWC*+14 BKT242000 SM COUNT.l,10 BNZ WRITE+2~ RCTY WATYMESI EFT2 SM CO,1,10 BNZ WRITE+12 RCTY WATYMES2 H MESI MES2 NOt ERR2 ERR4 ERRS ERR6 N07' 0 ERR7 ERRS MES4 MESS MES6 MESIO MES12 ROUT ERRl1 ERRIO o B WRITE DAC 17.TAPE WRITE CHECK' DAC 3S,PUT NEW TAPE OF TWO, THEN PRESS START' DAC 4S,USED MORE THAN FIVE CARDS FOR ONE SPECIFICATION' DAC 29, INVALID CHARACTER IN A NUMBER DAC 1,' DAC 33,FIRST LETTER NOT A C. M, E, OR S' DAC 18.INVALID SUBSCRIPT' DAC 47,TWO SUBSCRIPTS ARE EQUAL IN OBJECTIVE FUNCTION' RCTY IAIATYERR7 8TM ROUT.O.I0 B AGAIN DAC38,NO +. -. GE. LE. :, OR E AFTER AN XCI) DAC 1,' DAC 37.CONSTRAINT NUMBER IS GREATER THAN 21' DAC 41.A COMMA DOES NOT TERMINATE THE END OF A C DAC 36,ONSTRAINT OR THE OBJECTIVE FUNCTION' DAC 25.COLUMN 80 IS NOT A BLANK' DAC 25,ERROR IS IN CARD NUMBER , DAC 35.ERRORS NOT CHECKED IN CARD NUMBER , DAC 45.A COMMA IS BEFORE THE END OF A SPECIFICATION' DC 5.0 RCTY IAIATYMES6 WNTYCDSAVE-3 SF ROUT RCTY RCTY BB WATVMES5 BTM ROUT.O.I0 TF STCOL+ 15S, RMARK TFM STCOL-2,O.10 WACDSTCOL-2 B AGAIN \NATV MES4 SM COSAVE.l BTM ROUT.O.IO AM CDSAVE.l CM IAIORK.45.10,SEE IF AN END CARD BE END 3G m.2..,Z!.,...,..__.u.,", } .. .;;,o;.%#'''A .. # ..;.,p-,.. 4 ._--,.- ...... . M· ~' I -20WATYMESIO WNTYCDSAVE-3 RCTY AGAIN B DC 2.0 STCOL DAC 5.00000 DC 50.0 DC 50.0 DC 50.0 RMARK DC 2.' DC 8.10000000 ONE DC 2.01 DC 8.-50000000 LGNEG DC 2.06 CNUM DC 5.0 DC 5.0 CD DC 5.0 t 5.0 DC J FINAL DC 5.0 5.0 PLACEIDC PLACE2DC 5.0 PLACE3DC 5.0 SLIP DC 5.0 EQDWN DC 5.0 COUNTIDC 5.0 •• MOVING ADDRESS OF NUMBER 5.0 •• ADDRESS OF BEGINNING OF NUMBER COUNT2DC COUNT3DC 5.0 CDSAVEDC 5.0 1• t DC AT DC 5.0 DC 5.0 JJ 5.0 PLACE DC ADDR DC 5.0 COLM DC 5.0 COUNT DC 5.0 DC 8.0 EX DC 2.0 WORK DC 2.KO NUM DAC 3.000 DC 50.0 DC 50.0 50.0 DC DC 50.0 DC 50.0 DC 50.0 DC 50.0 DC 50.0 DC 50.0 50.0 DC DC 50.0 DC 50.0 DC 50.0 50.0 DC DC 50.0 DC 50.0 DC 8.0 ZERO DC 2.-99 DC 8.-10000000 NEGONEDC 2.01 OVERLPDSC 50.0 DC 32.0 0 0 0 I t. I -21- 0 DSB lO.2l •• FOR PLACEMENT OF NUMBER FOLLOWING C-CONDITIONS DSC 2l.0.,FOR PLACEMENT OF CONSTRAINT CONDITIONS DC 5.0 SAVE DC 5.0 DC 5.0 SUB SAVEl DC 5.0 •• FOR THE NUMBER OF CONSTRAINTS CONTRIDSB lO.74 •• FOR STORAGE OF MAX-MIN VECTOR CONST DSB lO.1575,.FOR STORAGE OF CONSTRAINT MATRIX BLAST DC 1,' DEND402 BOX CREC o o 3f 1t,\'tU!)ii.i)•..ii#.l.LL •.Jill1..d!l'L..'fu.,.••.".'," -22- C C 1111 1 199 1188 61 65 62 68 40 75 88 1160 1 169 1 165 161 165 162 168 1222 1220 1221 175 188 1270 DIMENSION BC75.21).C(21).N(21).ZSTAR(75).PC74) COMMON Nl COMMON B MAXIMUM NUMBER OF CONSTRAINTS IS 21 NUMBER OF VARIABLES ALLOWED = 74-NUMBER OF CONSTRAINTS USED-NO. OF READ INPUT TAPE 2.51.NCOL.NROW.NVAR READ TAPE 2.P PUNCH 101 READ TAPE 2.B NT=O I F CNT ) 1 1 a8. 1 188. 1 1 99 PUNCH 1 1 0 LL=O NN=NCOL + 2 = 0.0 L2 1 IFCNN-8)62.62.65 LL = LL+8 GO TO 68 LL=LL+NN Z = 1.0 PUNCH 20.(~.~=L2.LL) DO 40 I=I.NROW PUNCH 25.I.CB(~.I).~=L2.LL) IF (Z-I.0) 75.88.88 NN=NN-8 L2 = L2+8 GO TO 61 IFf NT) 1169.1169,1160 PUNCH 111 GO TO 1165 PUNCH 103 LL=O NN=NCOL 2=0 L2=1 r F ( NN-8) 1 62. 162. 165 LL=LL+8 GO TO 168 LL=LL+NN Z=I. PUNCH 20,C~.~=L2.LL) 1=1 IFCNT) 1220,1220.1222 PUNCH 25.I,(ZSTAR(~),~=L2,LL) GO TO 1221 PUNCH 25,I,CP(~).~=L2.LL) IFCZ-l.)175,188.188 NN=NN-8 L2=L2+8 GO TO 161 IFCNT) 1270,1270,399 NN=NVAR+l 11=0 DO 1 ~=NN.NCOL 00 1 1 1 ,NROW o GE'S = = IFCBC~.I)-I.)1.9,1 9/ 1 I:: I 1 + 1 ;\1(11)=,,) CCII)=P(~) CONTINUE j i"" o o Nl=O 1501 1..1..=0 1=1 z=O. 1..2=1 NN=11 IFCN1)1502.1502.1503 1502 PUNCH 104 GO TO 961 1503 PUNCH 105 961 JF(NN-8>962.962.965 965 LL=LL+8 GO TO 968 962 LL=LL+NN Z=l. 968 IF(Nl)1504.1504,1505 1504 PUNCH 20.(J.J=L2,LL) PUNCH 29.(NeJ),J=L2,LL) GO TO 1506 1505 PUNCH 20.CJ.J=L2.LL) PUNCH 25,I.CCCJ),J=L2,LL) 1506 NN=NN-8 L2=L2+8 IFCZ-l.)961.988,988 988 IFCNl)1507.t507,1508 1507 Nl=1 GO TO 1501 1508 Ll=NCOL+l 200 00 203 1=I.NCOL ZSTARC I )=-P( I) DO 203 J=1.NROW 203 ZSTAR(I)=ZSTAR(I)+ceJ)*BCI,J) C OPTIMALITY CHECK AND SIMPLEX CRITERION 400 FLAG=O SMALL=O DO 404 1=1, NCOL IFCZSTAR(I»402,404.404 402 FLAG=l. IF(ZSTARCI)-SMALL)403,404,404 403 SMALL=ZSTARCI) IN=I 404 CONTINUE IF(FLAG)900.900.405 C APPLY SIMPLEX CRITERION II 405 SMALL=9.E35 DO 409 I=1,NROW IFCBCIN.I»409,409,408 408 QUOT=BCLt,I)/BeIN,I) IFCQUOT -SMALL)411.410,409 411 IN=I SMALL=QUOT GO TO .409 410 IF (BCIN,I)-B(IN,JN»409,409.411 409 CONTINUE IFCSMALL-9.E35)500,407,407 407 PUNCH 1001 GO TO 9089 C NORMALIZE EQUATIONS WRT ENTERING VARIABLE 500 DO 501 J=l.Ll 501 ZSTAR(J)=BeJ,JN)/BCIN.JN) DO 502 I=l.NROIAI ,"' ..02- ~-n-¥--*'-.-.~-.-" ... @:;:i!f¥4Ufl@jiii%$U.m:W.f.EFrM , -24- o PROD = B ( IN. I ) DO 502 J= 1.LI 502 B(J.I,=BCJ.()-ZSTARCJ)*PROD DO 503 J=l.LI 503 BCJ.JN)=Z5TAR(J) CCJN)=PCIN) N(JN)=IN GO TO 200 C OUTPUl 900 NT=1 GO TO 1111 399 PUNCH 1 12 Z=O. DO 909 l-l.NROW P(21)=Be~1.1)*C(I) Z=Z+p(21) 909 PUNCH 120. N(ll.BCLl.t).CCt).PC21) PUNCH 113.Z JJ3 FORMAT C27HSOPTIMAL FUNCTIONAL VALUE = • Ft4.4 ) 120 FORMATCSX.15.6X.F14.4.9X.FI4.4.2X.FJ4.4' 110 FORMAT (17HlSOLUTION MATRIX ) 111 FORMATe35H20PPORTUNTIY COSTS OR SHADO~ PRICES It2 FORMATCt4H5VARtABLE USED.8X.8HQUANTITV'10X.13HCONTRIB./UNIT. 111X.SHVA~UE) 1001 51 lOS 104 103 29 25 20 101 9089 FORMATeJ9H5S0LUTION UNBOUNDED) FORMAT(315) FORMAT(6H5COSTS ) FORMAT(16H5BASIS VARIABLES' FORMAT(30H2CONTRIBUTtON ePROFIT OR COST) FORMATeSX.SI14/1H9.26X.3I14) FORMAT CIX.I3.2X.5F14.4/1H9.27X.3F14.4) FORMAT (lHO.3X.SI14/1H9.25X.3114) FORMATe 13HOMATRIX CHECK) END o o C'\ ,"~I ***************** I. [I. A LINEAR PROGRAMING SYSTEM (ALPS) ************************* GENERAL INFORMATION THE FUNCTION OF LINEAR PROGRAMING IS TO' OPTIMIZE A LINEAR OBJECTIVE FUNCTION SUBJECT TO LINEAR CONSTRAINTS. FOR A DISCUSSION OF PROCEDURES AND INTERPRETATIONS SEE CHURCHMAN. ACKOFF. ARNOFF. INTRODUCTION TO OPERATIONS RESEARCH' NEW YORK. WILEY. 1961. OR ANY GENREALLY ACCEPTED TEXT ON THE SUBJECT. THIS PROGRAM USES THE GENERAL SIMPLEX METHOD. TO PRINT THE PUNCHED OUTPUT ON THE IBM 407. USE THE OUTPUT BOARD WITH SWITCHES ONE AND TWO DOWN (FOR FORMAT CONTROL). STATEMENTS (IN ORDER) A. CALL CARDS 1. $$JOB COLUMNS 1-5 6 7-12 13 14-33 34 35-38 39 40-42 43 44-45 o 2. B. $$JOB B (BLANK) 10 NO •• STAFF. FAC, OR JOB NUMBER B NAME, LAST NAME FIRST (USE A COMMA) B COURSE NAME ABBREVIATION OR GENL IF NON-CLASS WORK 8 COURSE NUMBER. IF ANY B SECTION. 46 47~48 B 49-80 B IF ANY. RIGHT JUSTIFIED PROBLEM NUMBER. IF ANY. RIGHT JUSTIFIED $$ALPS ( I N COLUMNS 1 -6 ) OBJECTIVE FUNCTION 1. PUNCH MAXIMIZE OR MINIMIZE' FOLLOWED BY YOUR FAVORITE FUNCTIONAL NAME (OPTIONAL). AND THEN PUNCH AN EQUAL SIGN (:). FOLLOWED BY THE FUNCTION. AS SHOWN IN THE EXAMPLES. IT IS NEAT BUT NOT NECESSARY TO BEGIN PUNCHING IN COLUMN 1. ALL BLANKS ARE IGNORED. 2. FOLLOW IT WITH A COMMA. USE NO MORE THAN FIVE CARDS. C. 'SUBJECT TO THE FOLLOWING- IS OPTIONAL. ACTUALLY, EDITORIAL COMMENTS MAY BE PLACED ANYWHERE BETWEEN SPECIFICATIONS (AFTER $$ALPS) BY SIMPLY HAVING AN S AS THE FIRST CHARACTER. D. CONSTRAINTS 1. IT IS NEAT BUT NOT NECESSARY TO START IN COLUMN 1. 2. PUT THE CONSTRAINT NUMBER IN PARENTHESIS FOLLOWING THE WORD 'CONSTRAINT'. THEN WRITE THE CONSTRAINT FUNCTION, FOLLOWED BY ONE OF THE SYMBOLS OF EQUALITY OR INEQUALITY. (A) LE MEANS LESS THAN OR EQUAL TO (B) GE MEANS GREATER THAN OR EQUAL TO ec) E OR MEANS EQUAL TO 3. THEN WRITE THE CONSTRAINING FUNCTIONAL VALUE, IN ANY FORM ACCEPTABLE TO A COEFFICIENT (SEE BELOW), FOLLOWED BY A COMMA. = o E. -END' STATEMENT. PUNCHED IN ANY COLUMN. SIGNALS THE END OF DATA COMPILATION AND INITIATES EXECUTION. tJ2 I ,,,,,,au.$!-,. ...".,.4¥L.. , li~. i I I III. RESTRICTIONS A. THE MAXIMUM NUMBER OF CONSTRAINTS IS 21. o B. THE NUMBER OF VARIABLES ALLOWED (NOT INCLUDING SLACK OR ARTIFICIAL VARIABLES) IS BETWEEN 32 AND 74. TO BE MORE SPECIFIC. IT IS 74 MINUS THE NUMBER OF CONSTRAINTS USED MINUS THE NUMBER OF CONSTRAINTS USING THE NOTATION 'GE' (MEANING GREATER THAN OR EQUAL TO). THE FORMULA IS. USING NOTATION VERBALIZED IN THE LAST SENTENCE. v = 74 - C'S - GEtS. C. ONE SPECIFICATION (A CONSTRAINT OR THE OBJECTIVE FUNCTION) MUST NOT BE WRITTEN ON MORE THAN FIVE (5) CARDS. D. A COMMA MUST FOLLOW EACH SPECIFICATION. THE END STATEMENT AND COMMENT STATEMENTS (BEGINNING WITH AN s) 09 NOT REQUIRE THE TERMINATING COMMA. E. WRITE NOTHING IN COLUMN 80. F. USE OF NUMBERS FOR COEFFICIENTS--FOUR MODES POSSIBLE. AND THEY MAY ALL BE USED IN ANY ONE SPECIFICATION. 1. FIXED POINT MODE (AN INTEGER) 2. FLOATING POINT MODE (YOU SUPPLY THE DECIMAL POINT) 3. NO NUMBER IN FRONT OF AN X SIGNIFIES A I, E.G •• X(25) IS INTERPRETED AS lX(25) 4. EXPONENTIAL MODE A. NOT RECOMMENDED BECAUSE THE COEFFICIENTS SHOULD BE BETWEEN 1 AND 1.0.000. SAY. FOR ACCURATE RESULTS. IF THE COEFFICIENTS ARE NOT IN THIS RANGE. A SCALE FACTOR SHOULD BE USED BEFORE PUNCHING. B. MAY USE FIXED OR FLOATING MANTISSA. C. FOLLOW IT WITH AN E. THEN A MINUS OR PLUS SIGN (OPTIONAL). AND THEN A TWO DIGIT EXPONENT. D. EXAMPLE-- 22E03 IS INTERPRETED AS 22.000.00 0, ' G. SUBSCRIPTS ARE PUT IN PARENTHESES FOLLOWING THE 'X'. THEY MUST NOT CONTAIN A DECIMAL POINT. AND ARE. OF COURSE, ONE OR TWO DIGITS IN LENGTH. IV. ERROR STATEMENTS A. ALPS HAS A LIMITED CAPACITY TO CHECK FOR ERRORS. THE MATRIX CHECK SHOULD ALWAYS BE VISUALLY COMPARED WITH YOUR INPUT DATA TO INSURE ACCURACY OF THE RESULTS. THE ERROR STATEMENTS ARE SELF-EXPLANITORY. ALL ERRORS EXCEPT THE FIRST TWO INHIBIT EXECUTION. THE MONITOR IS CALLED AFTER ALL CARDS ARE CHECKED FOR ERRORS. ONLY THE FIRST ERROR IN EACH CARD IS USUALLY GIVEN. B. THEY ARE-TAPE WRITE CHECK PUT NEW TAPE ON TWO. THEN PRESS START USED MORE THAN FIVE CARDS FOR ONE SPECIFICATION INVALID CHARACTER IN A NUMBER FIRST LETTER NOT A C. M. E. OR S INVALID SUBSCRIPT TWO SUBSCRIPTS ARE EQUAL IN OBJECTIVE FUNCTION NO +. -. GE. LE. OR E AFTER AN XCI) A COMMA DOES NOT TERMINATE THE END OF A CONSTRAINT OR THE OBJECTIVE FUNCTION ERRORS NOT CHECKED IN CARD NUMBER XXXX =. o I l'''' -'2.7- o COLUMN eo IS NOT' A BLANK CONSTRAINT NUMBER IS GREATER THAN 21 A COMMA IS BEFORE THE END OF A SPECIFICATION C. TYPED WITH EACH ERROR STATEMENT EXCEPT THE FIRST TWO IS ERROR IS IN CARD NUMBER XXXX (ALL CARDS ARE COUNTED.) v. EXAMPLE INPUTS SSJOB STAFF CASSIDY,HENRY SSALPS MAXIMIXE .5X(I) + 6X(2) + 5X(3) • SUBJECT TO THE FOLLOWING CONSTRAINTS. CONSTRAINT (1) 4X(I) + 6X(2) + 3X(3) LE 24 CONSTRAINT (2) XCI) + 1.5X(2) + 3 X(3) LE 12 CONSTRAINT (3) 3X( 1) + X(2) LE 12 S AN EDITORIA~ STATEMENT END PROBLEM = SSJOB FAC ABLE. B. SSALPS MAXIMIZE IT ONE TIME = 2EOOX(I) +3 X (2). 5 AN EDITORIAL STATEMENT CONSTRAINT (5)-X(2) GE -3 CONSTRAINT (4 ) x ( 1,) LE 3 • CONSTRAINT (3) X ( 1 ) +5X(2) GE4. CONSTRAINT (2 ) 6EOO X ( 1 ) +2EOOX(2) GE +S' CONSTRAINT ( 1 ) X ( 1 ) + X(2) LE4 • END • SSJOB STAFF SMITH. HARRY SSALPS MINIMIZE THE FUNCTION 5.30X(1)+4.90X(2)+4.40X(3)+5.10X(4)+7.00X(5)+6X(6) +5.70X(7)+5.20X(S)+5.eOX(9)+6.70X(lO)+7.00X(11)+S.OOX('12)+6.30X(13) +5.90X(14'+5.40X(15)+6.10X(16). SUBJECT TO THE FOLLOWING CONSTRAINT(l) lX(1)+lX(2)+lX(3t+1X(4)LE13. CONSTRAINT(2~ lX(5)+lX(6)+lX(7)+lX(S)LE10. CONSTRAINT(3) 1X(9)+lX( lO)+IX( 11 )+lX( 12)LES. CONS TRA I NT ( 4) 1 X ( 13) + 1 X ( 14) + 1 X ( 15) + 1 X ( 16) LE4. CONSTRAINT(5) lX(I)+lX(S)+lX(9)+lX(13)=10.3. CONSTRAINT(6) lX(2)+lX(6)+lX(lO)+lX(14)=7.1. CONSTRAINT(7) lX(3)+lX(7)+lX(11)+lX(lS)=6.2. S E:OITORIAL STATEMENT--AS IF I HAD ANYTHING TO EDITORIALIZE CONSTRAINT(~) lX(4)+lX(S)+IXCI2)+IX(16)=9.1. END OF PROBLEM = o Z 42-,., .. ,-,,._ "., _.Q...... _ :;::E4@4A¢A¢;;;;aallM¥ .Q_"";_n I VI. EXAMPLE OUTPUT MINIMIZE THE FUNCTION = 5.30XCl)+4.90XC2)+4.40XC3)+5.10X(4)+7.00XCS)+6X(6) +S.70X(7)+5.20XCS)+S.SOX(9)+6.70X(10)+7.00XCll)+S.00X(12)+6.30X(13) +S.90X(14)+S.40X(15)+6.10X(16). SU8JECT TO THE FOLLOWING CONSTRAINT(l) lX(1)+lX(2)+lXC3)+lX(4)LE13. CONSTRAINT(2) lX(S)+lXC6)+lXC7)+lXCS)LElO. CONSTRAINT(3) lX(9)+lX(10)+lXCll)+lXC12)LES. CONSTRAINT(4) lXCI3)+lXCI4)+lX(lS)+lXCI6)LE4. CONSTRAINT(S) lX(1)+IX(S)+lXC9)+lX(13):10.3. CONSTRAINT(6) lX(2)+lX(6)+lX(10)+IXC14)=7.1. CONSTRAINT(7) lX(3)+lXC7)+lXCIl)+IX(lS)=6.2. S EDITORIAL STATEMENT--AS IF I HAD ANYTHING TO EDITORIALIZE CONSTRAINT(S) lX(4)+lX(S)+lXC12)+lXCI6)=9.1. END OF PROBLEM MATRIX CHECK 4 5 6 7 8 1.0000 0.0000 0.0000 0.0000 1.0000 0.0000 0.0000 0.0000 2 1.0000 0.0000 0.0000 0.0000 0.0000 1.0000 0.0000 0.0000 3 1.0000 0.0000 0.0000 0.0000 0.0000 0.0000 1.0000 0.0000 4 1.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 1.0000 S 0.0000 1.0000 0.0000 0.0000 1.0000 0.0000 0.0000 0.0000 6 0.0000 1.0000 0.0000 0.0000 0.0000 1.0000 0.0000 0.0000 7 0.0000 1.0000 0.0000 0.0000 0.0000 0.0000 1.0000 0.0000 0.0000 1.0000 0.0000 0.0000 0.0000 0.0000 0.0000 1.0000 2 3 4 5 6 7 8 9 0.0000 0.0000 1.0000 0.0000 1.0000 0.0000 0.0000 0.0000 10 0.0000 .0.0000 1.0000 0.0000 0.0000 1.0000 0.0000 0.0000 11 0.0000 0.0000 1.0000 0.0000 0.0000 0.0000 1.0000 0.0000 12 0.0000 0.0000 1.0000 0.0000 0.0000 0.0000 0.0000 1.0000 13 0.0000 0.0000 0.0000 1.0000 1.0000 0.0000 0.0000 0.0000 14 p.OOOO 0.0000 0.0000 1.0000 0.0000 1.0000 0.0000 0.0000 15 0.0000 0.0000 0.0000 1.0000 0.0000 0.0000 1.0000 0.0000 16 0.0000 0.0000 0.0000 1.0000 0.0000 0.0000 0.0000 1.0000 17 t.OOOO 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 18 0.0000 1.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 19 0.0000 0.0000 1.0000 0.0000 0.0000 0.0000 0.0000 0.0000 20 0.0000 0.0000 0.0000 1.0000 0.0000 0.0000 0.0000 0.0000 21 0.0000 0.0000 0.0000 0.0000 1.0000 0.0000 0.0000 0.0000 22 0.0000 0.0000 0.0000 0.0000 0.0000 1.0000 0.0000 0.0000 23 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 1.0000 0.0000 24 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 1.0000 2 3 ~, 0'. ~ t 2 3 4 5 6 7 S 8 0 - -- -- I I\:) (X), I 25 13.0000 10.0000 8.0000 4.0000 10.3000 7.1000 6.2000 9.1000 2 3 4 5 6 7 ~ 8 0 0 o o o CONTRIBUTION (PROFIT OR COST) 3 -4.4000 4 -5.1000 5 -7.0000 6 -6.0000 7 -5.7000 8 -5.2000 -5.3000 2 -4.9000 9 -5.8000 10 -6.7000 11 -7.0000 12 -8.0000 13 -6.3000 14 -5.9000 15 -5.4000 16 -6.1000 17 0.0000 18 0.0000 19 0.0000 20 0.0000 21 -500000.0000 22 -500000.0000 23 -500000.0000 24 -500000.0000 I I\) BASIS VARIABLES 1 17 -t:... ~ 2 18 3 19 4 20 5 21 COSTS 0.0000 2 0.0000 3 0.0000 4 0.0000 5 -500000.0000 6 22 6 -500000.0000 7 23 7 -500000.0000 8 24 8 -500000.0000 ~ I ,i "I -30- ,I '! 00000000 00000000 COOOOOOOOO 00000000 00000000 00000000 1000000000 -00000000 0 0 0 0 0 0 0 .... 0 .... 0 - 0 0 0 - •0 •0 •0 •0 • -• o• • 0 00000000 00000000 U100000000 00000000 I"looooogoo · . . ... . . · ... . ... I 00000000 00000000 ""'00000000 00000000 • ....• 0 • -• 0• ....• -• 0• • • • • • • • • 00000000 00000000 .00000000 C\l00000000 00000000 00000000 NOOOOO 00 - 0 0 0 0 .... - 0 •0 • 0 • •0 • -• -•0• 00000000 000(,)0000 1000000000 00000000 00000000 00000000 .q00000000 00000000 00000000 00000000 C\l00000000 C\l00000000 0 .... 0 - 0 - 0 0 00000-00 000-0-00 00000000 00000000 U100000000 00000000 MOOOOOOOO 00000000 00000000 00000000 00000000 00000000 C\l00000000 0 - ........ 0 0 000--00 00000000 00000000 .q00000000 00000000 00000000 00000000 C\l00000000 00000000 I I • • • • • • • • I • • • • • • • • , • • • • • • • • • · . . . . . . . · . . . . . . . · ...... . I 00000000 00 --00 o 00000000 00000000 000000000 C\l00000000 · . . . . .. . · . .. .. . . · .. . . . . . .... 0 .... 0 - 0 .... • • --0 • • 00000000 00000000 00000000 00000000 000000-0 00-0-0-0 00000000 00000000 C\l00000000 00000000 OOOOOOCOO 00000000 00000000 00000000 CDOOOOOOOO 00000000 -0000000 -0-0-000 0-000000 ()\OOOOOOOO 00000000 00000000 00000000 00000000 00000000 ""'00000000 00000000 00-00000 .... 0 0 - 0 - 0 0 · .... .. . 0: 00000000 00000000 O\OOOOOQOO 00000000 00000000 00000000 MOOOOOOOO 00000000 · . . . . . .. · . .. ... . X 000-0000 00000000 00000000 -00000000 00000000 • • • • • • • • 0000-000 • 00000000 00000000 • ••••••• • · ...... . t- • ••••••• -00 -0-- I , · .. ... .. • • • • • • • • • 00000000 00000000 U100000000 C\lInO\Oqr}IOC\I- ........ q CO-C\lC\lIOCJI o ~ ~ Z o I " t~ .... C\lM.qU1IO,....CO ..J o en '17 -C\lMqU1IO,....CO I .. o o o OPPQRTUNTIV COSTS OR SHADOW PRICES :3 2 9 20 14 :3 8 .9000 11 2.1000 12 3.3000 13 0.0000 14 0.0000 15 0.0000 16 .9000 0.0000 10 1.3000 17 1.0000 18 0.0000 19 .5000 20 0.0000 21 499993.7000 22 499994.1000 23 499994.6000 24 499994.8000 QUANTI TV 4.5000 .9000 8.0000 1.4000 2.3000 2.6000 6.2000 9.1000 OPTIMAL FUNCTIONAL VALUE VII. 0.0000 0.0000 VARIABLE USED 18 7 .3000 0.0000 9 h, -..,,'-., 6 .1000 .7000 0.0000 2 5 8 4 = CONTRIB./UNIT -4.9000 0.0000 -5.8000 0.0000 -5.3000 -5.9000 -4.4000 -5.2000 VALUE -22.0500 0.0000 -46.4000 0.0000 -12.1900 -15.3400 -27.2800 -47.3200 -170.5800 PROGRAMED BV HENRV CASSIDV, AIDED BV BILL PETEFISH, AUG. 6, 1965 & , ~ :1 :'' '/ I o I I I --I I o - - - - - - - - - - - - - - - - - - - - - - - - - -------- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - F#@#:iti:fr.t::'tJJ.eWiDrW·TC-- o 1620 SPS and SPS II-D Object Deck Modifier () Betty M. Ear10ugher Stanford Electronics La.borator~es Stanford University December 6, 1965 o waz!¥-_-,_,.- _ ... .J .@mb.e;;J\@., .M,---i .... .Ii/ o· 1620 SPS and SPS II-D Object Deck Modifier I'm sure most of us have had the experience of writ1nK and as SPS program on the 1620. debu~K1na Typically, the process goes as follows: 1. Write and key punch the SPS source program. 2. Arrange for computer time. 2 or 3 hours will be needed for a moderately long program. 3. Load the assembler deck. This takes 2-3 minutes. 4. Load the source program and execute Pass I of the assembly 5. Load the source program again, execute Pass II of ,the assembly, and get an object deck punched. 6. Load the object deck into core. 7. Find a bug or bugs. These may occur in object deck patches, if o any have been made in the deck. 8. If the change necessary to correct the bug is minor, punch a patch card to correct it. Also, if large portions of the .program were not destroyed by the error, patch in core and continue debugging. Otherwise, it may ·be necessary to reload the object deck, or even to re-assemble. With a disk file and Monitor, the process is made somewhat easier by bypassing the tedious loading of the assembler. Even so, debugging is a frustrating procedure, and not the least of these frustrations can be the errors made in correcting the errors in the original program. When a bug is found, a correction can often be made in the object deck, avoiding the assembly process. This is done by punching a patch card, which is loaded over the erroneous instructions or data when the object deck ---~'--'--'- __ ._. ._---- o I i'''' 2 o is loaded. When patching a program, the address at which the correction is being made and the correction itself usually must be typed twice-~once enter the correction into core and once to punch a patch card. 0 .. maa~ in a flUfftbOl' to Errors can or piaces' in t;his process-- I. Typing the address at which the change is to be made. 2.' Typing the change. 3. Punching the change in a patch card. 4. Punching the address in a patch card. 5. In the card assembler, computing and punching the address at which the change ends. 6. Keeping track of which change goes with which patch card. This catalogue of errors may sound exaggerated, but after 3 or 4 hours on the computer, it is possible to make any or all of these errors o in any given correction. A few years ago, a student in the Electrical Engineering Department of Stanford University wrote a program which prevents the person debugging anSPS program from making four of the six errors mentioned above. program is called the 1620 SPS Object Deck Modifier, or DECK M~D This for short. It was originally written to be operated with the card assembler, and was revised when SPS II-D under Monitor I became avail~ble. Let me describe the program with reference to 'the SPS II card assembly system; modifications necessary for other versions of SPS are minor. DECK M~D is loaded after the object program is in core. ,a message is typed giving the two sense. sWitch functions/used. During loading, DECK M~D requires 1000 digits of storage, and usually resides in/the upper 1000 digits o ,of' core.·, The first instruction 1's then at 19000, 39000, or 59000, depending ,":- . ,f ". L'$lffl!!_ 3 on the core size available, so one can easily remembe'r the starting address. To use DECK M~D, execute a branch to the starting address. o The type- writer carriage will return and the program will wait for an entry from the typewriter. The address at which the modification is to be made ,should be,typed. This address is the lowest memory address (high order digit of the modification). -It need not be a 5-digit number--the program will supply leading zeroes. Rls When is depressed, the typewriter will space over and wait for entry of the actual modification. Up to 61 digits of numeric information may be entered; record marks are allowed only as the last digit. When Rls is again depressed, a 3-digit sequence number is typed to identify the change and a patch card is punched in the proper format with the sequence number just typed. After the patch card is punched, the patch is transmitted as a record to the, appropriate place in memory. until DECK M~D The sequence number will not be reset to 000 is reloaded--thus there will be no duplicate sequence numbers in a series of modifications. As long as the patch cards are kept in order, there is no difficulty in making patches on top of patches .. Two program switches are used by DECK error-correction procedure. M~D. Switch 4 is for the typical (Turn the switch on after a typing error is made, hit RIS, and the information may be re-entered.) Switch 3 is used to provide a return to the program being debugged. It may be turned on whenever the typewriter is awaiting data entry (either an address or a modification). The words "00 TO" will be typed, and the typewriter will await entry of an address to which a branch is to be made. Rls (Again, this need not be a 5-digit number.) When is depressed, a branch to the address just typed will be executed. The patch cards are usually allowed to accumulate in,the punch hopperuntll the object program is to be o 4 reloaded, at which time, they are placed in front of the seventh card from the end in the object deck. Operation of DECK M~D is essentially the same for SPS II-D (disk SPS) • A modiftgatton ma1 have 67 diGits, witD character. no reQord marks 8ZQQpt AA All patch cards are punched in absolute f.ormat, so DECK the lAst M~D may not be used to patch relocatable SPS (e.g. subroutines written to be used with a F~RTRAN main program). Patch cards are placed in front of the second card from the end of the object deck. The deck is self-loading, rather than stored on the disk, to avoid the possibility of destroying a part of core "by calling the Monitor. : disk in core-image format Of course, it would load faster if stored on the J and this can certainly be done if memory below 2402 is never used by the programmer. o In summary, the 1620 SPS Object Deck Modifier provides a way to avoid the most common errors associated with correcting errors in a program~ by .' automatically punching patch cards at the same time a correction is made to a program in memory. This program will be available from the 1620 Program Library in the near future. ·0 ,t Until then, I will be happy to supply copies of the source decks. I !II I o o ABSTRACT CLEARTRAN is a system for compiling FORTRAN statements to yield an object program having maximum efficiency. The object program generaJlyoccupies less than one-half the core space and usually executes twice as fast as the MONITOR n system. Programs. involving substantial an10unts of subscripted variables may execute in as little as one tenth the usual time. ' '-Infinite" 'programs may he compiled by virtue of "instant" linkage . from disk and the use of optional advanced language concepts • . "My 1620 can draw circles around your 1620" aptly describes the . Format capability. Equations can be "plotted" on the printer. Information can be extracted from a card read or a card may be re-read by any Format number. Complete printer control is available with FORMAT statements. Printing of the results of one problem may be obtained while computing the next set of answers • . Error analyses are exceedingly thorough ~;.t both the compile ~d execution. stage •. For example, unidentified variables, and out-of-range subscripts are called out at ,both compile .and execute ti..-.rne. The object program seldom blows ,up during execution. A tract routine is available for presentation of both ,the name of the var,iableand its v8J\ue as calculated. o CLEARTRAN VERBS o IF) . INTEGER ,'PAGE BRANCH BACK . PAUSE CALL . PERFORM' EXIT INTERRUPTPRINT PUNCH LINK PDUMP READ' REAL· COMMON· CONTINUE REC·ORD . DEFINE RELEASE ADDRESSES CARD IMAGE . DISK ERROR MESSAGE'· DISK ADDRESS' PRINT SKIp· FAST LOG . PRINT ROUNDING . RETURN SIZE STA.RT ROUTINE DIMENSION SET 'DO STACK' DO BACK STOP END STORE . EQUIVALENCE ,.ADDRESSES 'CONSTANTS FETCH . ·FIND NAMES SU·BROUTINE FORMA.T .·.TAG FUNCTION TRA.C'E GO TO HOLD PRIN'I\ TYPE, PUNCH CARD IMAGE ·OFF ERROR.MESSAGE . TYPE .. . ZIP PRINT SKIP PRINT ROUND1NG ACCEPT AS~IGN o -- - .. - .. _---------- -~. o ~ IN-LINE ROUTINE A group of FORTRAN statelnents prefac~d by ROUTINE is defined c.u:; an in-line routine. The routine is given a name with up to six alphanun,eric characteristics" the first of which nlust be alphabetic. A routine is normally entered by 'means of the PERFORM command and the normal exit is by BRANCH BACK. The PERFORM command generates a BTM.(branch and transmit inlmediate) type of instruction,.witll t.he return address being carried to the routine for use when a BRANCH BACK instruction is encountered. If thE~ PERFORM command includes a statement number, the BRANCH BACK will be to the address of the statement number specified; otherwise, the return address will be that of the statement following PERFORM. o The data and variables used in a routine are identical to those of a mainline program. A routine may be located anywhere in the program except within the confines of another routine. The normal exit from a routine is by the BRANCH BACK command, of which several may be used if desired. A direct entry to any numbered statement of the routine may be used. In --, this event, dhe BRANCH BAGK exit address from the routine will be that specified by the PERFORM command last used to enter the routine. . The' address of a routine may be stored in a subscripted array by the STORE ADDRESSES command. This makes it possible to PERFORM . a computed address" e. g., PERFORM RUTEN(J). While within a routine,' one may PERFORM other routines provided the chain of addresses required to return to the mainline program is not broken. If there is a need to break the chain, the address of the ROUTINE where the break is to occur may be saved by including the name o'f the routine as the third operand of the PERFORM command. By this. mean.s, one may perform a ROUTINE from within tne routine itself, ',if desired. Examples are illustrated in the sample programs...· o .e. ¥.!_,.~._._....~ ....._... ". A4ik4i,C4,MQ.'; ,.\. .....·.(24.\ 4·.. J. .;£.. g«$.,4. __ _, DEFINI ON OF VARIABLES AND ASSIGNMENT OF ADDRESSES A varia Ie is "defined" if it is' encountered to the left of an equal sign, in a READ, ACCEPT or FETCH stat~ment, or in one of the following: COMM N; DIMENSION, EQUIVA:LENCE, INTEGER, REAL, STACK. o DIMBNSION The DIMENSION statenlcnt is used to define· the size and the number of words in an array. The nunlber of subscripts which may be used is not limited. to three. The length of the fields in an array can be made different from normal by placing an intergal number in fron't of each elenlent of the list. The minim.um length field is two. There is no maximum . litnit to the length of the field; however, the prnctica11imit for use in conjUnction with printer comlnands is 288. COMMON This command is identical to IBM's. STACK '. The STACK command is the opposite of COMMON; i. e., 'the variables in the list are assigned sequentially ascending addresses, while those in COMMON have descending addresses. A dirnensioned variable can be equivalenced to the first element of a list previously stacked making it possible, thereby,· to refer to the list- as an array. The STACK command is especially convenient for use in conjunction with the deferred PRINT command described later. o TAG If it is desire d to dete rmine all the positions in a program where reference to a particular variable is made, the TA.G command may be used. Up to five variables may be tagged at one time; e. g., TA.G, V, VOICE, A20,. I, YOU REAL . This verb defines a variable as a floating point type even though the initial letter might be I, J i K, L, MorN. . INTEGER This command defines a variable as a fixed point type even if. the initial letter is other than I, J, K, L, M or N. -57 - - - - - , - - ... _ - - - - - - - - - - - --- o o FIELD LENGTH As with the DIMENSION command, the length of a variable can be changed from the normal length hy placing a number immediately after the STACK, REAL or INTEGER conlmands. ALTERNA TE DIMENSIONING The list in the COMMON, STACK" REAL or INTEGER commands can be subscripted as in a DIMENSION statement if the variable is to be din1ensioned. (The variable lnust not then appear in a DIMENSION statement. ) STORE The STORE command may be used to store at compile time three types of data: addresses, fixed or floating constants with sign, or'ialphanumeric data. The name of the field where the data are to be stored in core is the first element of the list; the remaining elements are stored in first and successively higher addresses. ASSIGN o This command may be used to move addresses in core at object time. DEFINE The DEFINE ADDRESSES command may be used to specify indirect addresses where the actual address of a subroutine" routine, statement number, constant" etc., may be found. This command is very useful for a communication link between two programs which may be in core simultaneously. TRACE The commands TRACE PRINT, TRACE TYPE" TRACE PUNCH, ar:td: TRACE OFF may be used to follow the path of a problem through a program.' The TRA CE PRINT statement calls in a relocatable subroutine which prints the name of the variable on the lefthand side of the eqll:al sign in 'each arithmetic statement, together with its numerical value. Three variables and their values are printed on each line. Switch 4 activates the TRA.CE· subroutine at .object time. CA.LL INTERRUPT o The CA.LL INTERRUPT statement resuits in storage on disk of the core immage of the program and data, together withthe address at which , the intert;'upt occurred. The CALL INTERRUPT command may be selected· !j?" sac.. .-t,~"",-- "rh._ _. _"h .,,;;;;4.0 (AUd.,- --- -- . '- '.. g ...: by program calculations or by 1urning on a programmed sense switch. The program maybe restored and execution continued by loading a single INTERRUPT RESTART card. If data remain to be read, the last card read, together with cards not yet read, should be set aside for reloadin,g. Obviously, data stored by RECORD commands may be lost unless the disk pack is set aside. o PRINTER D1JMP If it is desired to dump the contents of core on the printer during the execution of a program" one may use the following command: CALL PDUMP (Nl, N2) NJ. and N2 may be absolute addresses or they may be the names of variables. CALL PDUMP pulls in a disk utility program which prints core between the lirnits specified, with 100 digits per line grouped by tens" with core addresses conveniently shown. Control returns to the program after execution. , ZIP The ZIP statement used irnmediately preceding a 00 will speed up the evaluation of arithmetic expressions involving subscripted variables. The conditions where ZIP nlay be used are: 1. Indexing must be unde r DO loop control only. 2. Each arithmetic statement must be complete without having to use more than one continuati~n c~rd~ __ 11_ 3. DO's may be nested not more than ~ deep. \fVV\.~ ·4. The number of subscripted words may not exceed 20. (The above limits are tentative. ) . Example: ZIP 11 00 3 J=l, 10 12 DO 3 K=3, 5 13 00· 3 'L=l# JIM, 2 1 A(J) = A(J) + B(J, K# L) +A.B(I) IF (C(J 1 KI L) - 50. )2, 31 2 2; C(J ,KI L) = D(J, K+l, L-l) +F +A(J) :3 CONTINUE < ,I . ;J ..( .. , ~, ,\. .. ~'l'/ Note t~ere are "four subscripted "words" in the above, under ZIP , control.·A(J) is one word, B(J 1 KI L)I C(J 1 K, L) and D(J, K+ 1, L-1) are the' others. Each word m.ust consist of notmore than 12 characters including, the two parenth·eses. AB(I) is not a "word" because its indexl I, is not" . .... under 00 control. . , ' ' Another ZIP could be used after statement·.No. 3. The DO's must have numerical starts· and numerical increments •. The DO's may have variable upper limits.; i.·e. ~ JIM in statement 13. o o I/O FEATURES' The input or output achieved by execution of' conventional I/O FORTH.AN statements is identical to that from IBM compilers. Cerlain addi- . tional features are available, as follows: 1. 2. 3. 4. 5. 6. 7• B. 9. 10. 11. B~TYPE, G-TYPE, andJ-TYPE FORMAT ALPHABETIC SUBSTITUTION IN E &F OUTPUT AUTOMA.TIC E & F ROUNDING AUTOMATIC PA.GE SKIP CARD IMAGE REREAD . DEFERRED PRINTING FORMAT OVERRIDE NON FORMAT READ PLOTTER SIMULA TION PLUS SIGN (+) SPACE IGNORE COMPLETE PRINTER CONTROL B- TYPE FORMA T o B-type words (B for Beta) can be read or written with a non- standard' length designated by the FORMAT statement. The length may be a single character, Bl, or up to BOcharacters for reading the entire card, BBO, or B144 for printing 144 characters. The variable where such a word is stored normally is dimensioned so as to have its word length equivalent to that used in the FORMAT. For example B1 words could be read into a dimensioned variable with a word length of at least 2. B80 words should be read into fields which are at least 160 digits long. A single B-type character is stored as two digits in core, the left one of which is flagged. If stored in a standard fixed-point field of four digits, . only the two positions to the right side of the four are used. When printing or' . ptulching such a word, by a B-type FORMA.T which is identical in length to that used to read the word, conventional output is obtained. However, if the length designated by the FORMAT statement used to read the word is less than the length used in output, the character will be positioned incorrectly by the difference in the two lengths. This can be corrected by changing the . output FORMA.T statement so that the .two lengths are equal, using X-type .: FORMAT to make up the differences where required for spacing purposes~ . G-TYPE FORMA.T o . This is identical to F-type FOR~.AT except that the first blank follow~" ing the field is considered as a decimal. G-type FORMAT is normally ,used . .for reading o n l y . ' . . . " 2W --''''''" *-a.ijM.YR.';;;;;!. .. -! . . . - ,.,*. . . ,. .• J-TYPE FORM.AT This is identical to I -type FORMAT except that the first blank to the right of the field terminates reading. This permits left-justified, fixed-point fields. o ALPHABETIC SUBSTITUTION IN E & F OUTPUT On occasions it may be desirable to substitute a short word or blanks in place of an E or F output field. This can be done by setting:the floating-point variable to be listed equal to a special alphabetic field.! The two leftmost characters of the alphabetic field inust be the decimal point equivalent (03). The decimal point is not printed but the alphabetic characters·.which represent the remaining portion of the word will be printed. A.s an illustration, IF (A) 2, 1, 2 1 A = WORD (1) 2 PRINT 100, A 100 FORMAT (FlO. 0) STORE NAMES (WORD(l), .. <-NONE, • , • ALL) 7\ will cause the word NONE to be printed if A. were zero at the IF statement. Blanks would be printed if A were set equal to WORD(2)·and the word ALL would be printed if set equal to WORD(3). A.UTOMATIC E & F ROUNDING Rounding of E and F output is automatic. If automatic rounding is not desired, it can be bypassed by the com~and: ·HOLD ROUNDING; and restored later if desired by: RELEASE ROUNDING . . AUTOMA TIC PAGE SKIP A skip to a new page is automatic when the bottom line of the page is sensed (printer indicator 34). This feature can be eliminated by the command: HOLD SKIP (and restored by RELEASE SKIP). This might be desirable when using plotter simulation, or when page skip is under program control. ' CARD IMAGE REREA,D The usual READ statement with a FORMAT number will cause a new card to be read and data extracted therefrom in accordance with the FORMAT specifications. It is possible to "read" the same card again, '" using dlfferentFORMAT statements if.desired. by two different methods: (P( o 1. 2. o Place an X (for extra) after the FORMAT number in the READ statement. Use the command, lIOLD CARD IM1\GE, followed by a conventional {-{,gAD statement. The latter causes a one-time sldp of the nornJal procedure whereby a new card is read for each READ statelnent, making it possible to reread the last read card. 'The HOLD CAR,D IMAGE comrnand can be nullified by the command RELEASE CARD IMAGE. DEFERRED PRINTING Some problems require that all or almost all of the calculations be completed prior to doing any output. With CLEARTRA.N it is possible to print the results ·of one set of calculations while calculating the following set. By this means, printing and calculations can go on simultaneously with a considerable savings in time. Deferred output can be obtained by placing the letter "s" (for Save) after the FORl'/[AT number of an output statement; e. g., PRINT 102S, List. This command will be ignored at object' time prior to execution of a SA VE command. o The output commands utilizing this feature can be placed at selected·····. positions in the mainline of the program where recycling does not occur. Alternately, all PRINT S commands can be placed in a ROUTINE using a computed GO TO to execute successive statements. The ROUTINE could be executed by randomly placed PERFORM statements. When used in a ROUTINE, the "printer busy" indicator should be tested to save time (if the printer is busy an immediate exit from the ROUTINE should be made.) The SA,VE (V1, V2) commands result in a transfer of that portion of core image lying between the address of variable VI and variable V2 to a safe place in memory. This includes V1, but not V2. The variables to be listed by S type output commands should be in contiguous memory locations for the least space requirements. The. ST ACK or COMMON commands are used to achieve the desired order. All the variables to be listed should be in either COMMON or STACK, but not part in one and part in the other. The deferred output command can be made to list current values if a zero i~used in a SA.VE statement; i. e. ,SA.VE (0). The original status. can be restored by using a negative number in a SA,VE statement; e. g., SAVE (-1). ...; .. FORMA.T OVERRJDE The list of an 110 statement is under control of the specifications' set up in the FORMAT statement. This normally requires that the number items in a subscripted list be identical to the "repeat" number of the· . corresponding ele~ent in the FORMA.T statement. " of o au..,..,. _._ ."""'n." , ..... ,;;;;;;;;1I(¥)$1,,4,)2):;.;", ;-".-¥.~.-. ·1·. ·..:. ,". -, .•.: '! WithCLEARTRAN, an I/O list may involve subscripts using a variable index. The corresponding "repeat" number of the FORMAT. specification should be greater than the maxilnum' possible value of the index(99 is tops). If the repeat number happens to be less than the index variable,. FORMAT control will pass to the next element of the FORMAT o statement~ NON FORM.A TREAD The preparation of input data to be read under FORMAT control requires extra care to insure proper positioning of data on the punched card. This problem can be circumvented by using the REA D statement without a FORMAT number. Data of the E, F, 1 and A type can be read without a FORMAT number. One or several spaces are used to separate data fields. All 80 columns of a card may be used. A relocatable library subroutine ·examines the input data and discriminates between E, F, I or A data. The F-type conversion results from a decimal point in a numeric data field. The E-type results if a decimal point and the letter E are fotmd. The I-type is generated when there is no decimal point in a numeric field. The A:-type is obtained if none of the above conditions are met. An "input error" is called out if the variable being read is in the' wrong ·mode. The unread portion of the card is typed and a BRANCH TO the program starting address occurs. One card may contain information which is read by several READ. statements. After all the fields on a card are read, the next item on a list will cause a new card to be read, even if the item is ~ the middle of a list. A record mark in column one of a card calls EXIT. PLOTTER SIMULA.TTON The SET command is identical to the PRINT command with the exception that printi~g does not occur. The SET c.ommand is normally used to build an image which is to be held in position for additional modifications •. If an X follows the FORMAT nUlnber of a SET command, "extra" informa. tion can be placed' in the image without destruction of information previouslyi~·. placed (except' that which is overlaid). By this means, it is· possible to " build up a complex line of information which is to be printed after all the information is in place. The X specification in a FORMA.T statement is used to position or . . : space adjacent fields. In CLEA.RTRA.N one may use the X specification ~ followed by a fixed point variable in parenthesis; e. g., X(Nl).· This. . specification ,will result ina number of spaces equal to the value of the fixed point variable Nl. . o !I,., ! o One may use the space supress character (+) in column one to p:rlnt one set of characters on top cf another. This character should be . erased (lHO) prior to the final PRINT command. After a line of data is in position, it is printed by a PRINT command,., the FORMA.T number of which is followed by the letter X. ' ~ The ~irst 80 characters of an image ca..l1 be punched by placing the letter X after the FORMAT nUITlber of ptulch statement. A program to illustrate these features is attached. This program plots three equations, coordinate grids, and prints alphabetic information simultaneously. Another prC!gram "draws" a picture of a heat exchanger tubesheet. PLUS SIGN (+) SPACE IGNORE . It is not necessary to provide space for. the plus sign when printing or ptUlching. This makes it possible to put additional information on a card when punching, or to pack E or F fields adjacent to other fields when printing.An error may occur if the E or F fields are n'egative, since space must be provided for the minus sign. . .... COMPLETE PRINTER CONTROL A complete set of printer controls is available with CLEARTRAN. The following is a list of the printer controls which are achieved by placing a Hollirith character in column one: Before Printing + Space supress J one space K two spaces L' three spaces :. 1 skip to channel 1 2 skip to channel 2 3"·'-' skip to channel 3 4 skip to channel 4 5 skip to channel· 5 6 .skip to channel 6 7 .skip to channel 7 8 skip to channel 8 .. 9 skip to chamle 1 9 = skip to channel 11 @ skip to' channel 12 0 After Printing: S T A. B one space ~wo spaces skip skip C skip D skip E skip .F skip G skip H skip I skip skip ) skip to channel 1 to channel 2 to channel 3 to channel' 4 to· channel 5 to charinel 6 to channel 7 to channel 8 to channel 9 to channel 11 to channel 12 (Any other character may result in a runaway carriage. ) .(p '/ u . . . .,.,_........._" ..~ ... ;;am;;m4JR.Ag j "',' - •• .Q.AM· - FQ.RMAT stutementEI with mUltiple. slashes which are executed only by PRINT commands a re automatically cOtnpiled so as to take advantage of fast printer spacing msofar as possible. 0·"· j, The "printer busy" indicator (35) can be sensed by use of the statement: IF (SENSE SWITCII 35) Nl, N2. A BRANCH TO statement Nl occurs if the indicator is on (buffer is unavailable for loading); N2 if off (buffer can be loaded). Similarly, 33, 34 and 25 can be used to sense respectively channel 9, channel 12 , and printer check indicator on the. 1443. o o AUT 0 M 0 NIT 0 R FOR IBM THE 162 0 Presented At The WESTERH REGION WINTER {\flEETIHG OF CONllJ.ON o December 7, 1965 By John W. Rettenmayer western Data Processing center 405 Hi1gard Ave. o Los Angeles, California 90024 1 The WDPC 1620 Automonitor was written at the Western Data / Processing Center, which is. a part of the Graduate School of Business Administration at UCLA. '.' 0· , I It was written to serve as a debugging aid to the students in BA 113, an introductory course in data processing. This class usually has from 60 to 80 students, so any debugging which requires manual operation at the console is extremely inconvenient to other students and greatly increases the confusion from too many students milling around awaiting their turn on the machine. (The 1620 lab is an open-shop arrangement.) The WDPC Automonitor is used for debugging student-written 1620 machine language programs. Instead of being executed directly, the student's program is executed one instruction at a time, with each instruction and its memory address being printed out just before it is executed. As long as the Automonitor is in control, the trac- ing may be turned on or off to enable the operator to trace selected portions of the student's program, or all of it. For example, tracing may be desired only after a certain point in the program has been reached, that point being indicated by a particular value being printed. At that point switch 1 may be turned on and the in- structions will be traced from then until switch 1 is turned off again. This selection process may be repeated as often as needed. The students are given only two constraints: (1) their programs must start at location 5000, and (2) they may not use any memory positions lower than 5000 because that area is reserved for the loader program and the Automonitor. To increase the throughput of the system, the students' machine language programs are run under the Monitor I System. This req~ires that the student program return control to Monitor upon successful execution. If execution o I" i W6,r-*,nseeU--'tf"-e"ml'! •• 2 4() is not completed successfully, then the operator must manually branch to Monitor (using a 4900796 instruction). In order to allow stacking of jobs, the student cannot test for last card, as is usually done to signal the processing of the last data card. Therefore, each student ,is also required to test for a trailer card having a record mark in column 1. The Monitor I end-of-job card does nicely for this purpose. As Lmplied above, the 1620 configuration at WDPC includes a 1311 disk storage drive and a Monitor I System. We also have 40K of core storage, and, although it has no bearing upon the use of the Automonitor, a 1627 plotter. OPERATING C' PRO C E D 'u R E Student's deck setup: ~~COLD START FFPAUSE (for stacked input) ~#XEQSMACHLG (Student's machine language program, punched one instruction per card.) (blank card -- to separate program from data) (data for student's program) If tracing will be desired during any part of the user's program execution, switch 2 should be turned on before the word EXECUTION is typed on the console typewriter. :) 0 Then turning switch 1 o'n at any time will cause tracing to begin, and turning switch 1 off will stop the trace printout. . ....,U:M#.4Q\iUiW(M ,-.- .,..)¥ 3 LOADER PROGRAH I~CHLG o (a listing of which follows later) is the program which loads the student's program. MACHLG is stored on the disk in the regular way, with an associated DIM entry, and is called into core and executed by the ""XEQSMonitor Control Card. The functions performed by MACIILG are the following. First, it loads from the, disk into core 37,000 digits, starting at location 3000 and ending with 39999. These 37,000 digits are obtained from one cylinder of the disk, which contains 20,000 digits, so that part of the cylinder is used twice. (We have re- defined the disk storage so that cylinder 0 is not a part of the disc's working storage, but is available for MACHLG to use. Other installations may wish to obtain the cylinder in some other way, and shoulQ change the instructions in imCHLG accordingly.) The first 14 sectors of the cylinder contain the Automonitor program; therefore it is loaded with its starting address being 3000. The rest of the cylinder contains only zeroes which are used to effectively clear core from the end of the Automonitor to location 39999. Locations 0 - 2999 are not cleared since they contain the arithmeticCtables, part of the Monitor Supervisor routine, and MACHLG itself. Second, r4ACHLG ,loads the student's program, starting at location 5000. MACHLG loads each instruction; i.e. the first 12 digits of each card, into successively higher memory positions until it detects a card with a blank in 90lumn 1, sl.gnifying that the entire program has been lOaded. Third, control is transferred to the instruction at 3000, o tl! r I which is the first instruction of the Automonitor. 4 o AUTOr-10NITOR OPERATION The following description is brief and perhaps confusing; please refer to the program listing for better understanding. The Automonitor first interrogates Switch 2 to see if tracing is or will be desired. If not, control is transferred to the student's program and that program executed directly. If Switch 2 is on, then the student's program will not be executed directly, but will be simulated by the Automonitor in the following manner. First, the Automonitor copies the student's first instruction into an area within the Automonitor program, which will be referred to as the simulation registero (Actually the instruction is copied into two areas -- one for execution and the other for outputting the instruction.) (j) If the instruction is not a branch in- struction, it will be executed directly in the simulation register. Since this register in imbedded in the Automon~tor program, con- trol will remain in the Automonitor after execution of the instruction. Then the next sequential instruction of the student's program is treated by the same process. If the instruction is a branch, then the actual execution of that instruction, even in the simulation register, would cause control to be transferred to the student's program and the Automonitor would then be inoperable. Therefore, that branch instruction must be simulated in such a way that the next instruction operated upon by the Automonitor is the correct one. That is, if a branch were called for by the conditions of the machine, then the instruction at the branch address must be the next one fetched ahd treated. ~o I If a branch were not called for, then we want to take the next 5 sequential instruction after the unsuccessful branch instruction. ~ This is done by carrying out the appropriate tests, for conditional branches, and modifying the 'next instruction address' (ADDR) accordingly. TRACING If at any time the user wants to have his program traced as it is simulated by the Automonitor, he only has to turn on switch 1. This will cause the address of each instruction and the instruction itself to be printed. If switch 3 is on, the trace will be punched on cards; if it is off, the trace will be printed on the console typewriter. Which option is chosen depends, of course, on the demand for operating time and the availability and convenience of listing equipment. (The punched output will have the instruction address and the instruction separated by one zero (~ ."".J ~I ,'II. instead of blanks since alphameric mode is not used.) If it is definitely known that a trace will not be needed, then switch 2 should be off initially so that the user's program will be executed directly instead of being simulated. However, on short student programs the added time used by the Automonitor is insignificant, so one need not worry about accidentally leaving switch 2 on. RESTRICTIONS By their nature, operation codes 07, 17 and 27 cannot, to my knowledge, by simulated since to do so would require accessing the hardware registers. Also, the Automonitor will not handle any compare operation, since the Automonitor itself makes a great many comparisons and, as it now stands, would probably destroy '71 o 6 o the indicator set by the user's compare operation before his branch-on-condition instruction would be simulated. It is pos- sible to rewrite the Automonitor to handle compares, but the compare instruction is rarely used by beginning students, so we have not done so. For the same reason of infrequent use the branch-no-indicator instruction (op code 47) has not been included either, although to do so would simply be a matter of following the logic of OP46 (see listing of Automonitor). The WDPC Automonitor could be elaborated upon to a considerable extent to achieve a sophisticated tool for debugging 1620 machine language programs. However, it was the opinion of the author that such a tool would serve to defeat the purpose for which the student is taught machine language. That purpose is primarily to acquaint him with the basic level operations of the computer, and much of that acquaintance comes from manual debugging, i.e. experience. However, a minimal automonitor is helpful in those cases where j the lab assistant must help the student debug -- formerly by manually stepping through the program at the console. Each section of the Automonitor program delineated by the lines of asterisks is self-contained and has no particular physical relationship to the other sections. The 'B FLAG' instruction just before the section labelled 'FLAG' seems to be a superfluous instruction, but it was left in the code in order to preserve this modularity. Extensions to the Automonitor can be easily made, if desired, by following the pattern of the present sections. o It is recommended that the modularity be retained since it clarifies the flow of the program to a considerable degree. 72- o 7 ACKNOt1LEDGEI1ENTS ~ACHLG was originally \'lritten and implemented by George H. Schoenherr, who was in charge of the '1620 installation at WDPC and is now an employee of IBH at San Jose. Sally Ann and Susan Gulick did a considerable amount of debugging of the Automonitor after the first rough version was written. Their work was done as an extracurricular project for BA 113, and is much appreciated. The author and the WDPC staff would appreciate any comments and would particularly like to receive information on extensions and modifications that are made to the Automonitoro **JOB 5 **:J:XE *EXECUTION BOOZER, G.l. BA 113 PROGRAMMING PROBLEM NO.1 QSt~ACH lG rT2150 0-0355" ~920tj" T0020(f fl0000 ,.OOO~ ~2005 0-199"5 END OF JOB The above execution of the student's program was with switch 2 off. It will now be run again with both switch 1 and 2 on, but switch 1 will be turned off after the second answer is obtained. **JOB 5 ** o BOOZER, G.l. BA 113 PROGRAMMING PROBLEM NO.1 :J::J:XEQSMACHLG EXECUTION 0-5000 0"5012 0"5036 el5048 a'5060 361500100500 450503615001 321500100000 261206015005 361500100500 ~5072 321500100000 a" 50 84 261206515005 a" 50 96 321206600000 0"5108 22 t 207012070 ~5120 321207100000 l) 51 3 2 221 207 51 207 5 0"5144 211207012060 5"5156 211207012065 0-5160 460532401400 0'5180· 251500600400 05192 261500512070 (5'5204 340000000102 ~5216 3A1500100100 ~2150 ()035C' "9920C) T0020C) Tlooeo !ooo(r o 02005 ' cr1995cONDITION CODE NOT RECOGNIZED END OF JOB ;;;www mas .",Q _.... ,.0, .. _ .~.~ •...•..__._. • . . . . .tMA41~.~.;JIiI,.;~ ;.;.. .42., .. ?.. 4T4 ....- ., .. '::i 1 o **JOB 5 **SPS 5 *LIST TYPEWRITER 10 NUMBER0842 *NAMEfviA CH LG *STORE CORE IMAGE ~c START SK RON FIELD,00701 FIE LO, 00702 SK VELO,00701 RON VE LD, 0070 2 CARD RNCD IMAGE SF IMAGE CM IMAGE + 1,00,10 CF IMAGE BE 3000 TRANS TO PROG, H~AGE, 67 AM TRANS + 11,01,7 AM PROG,01,7 CM TRANS + l',IMAGE + 12,7 BE RESTOR B TRANS RESTOR TFM TRANS + l',IMAGE,7 B CARD FIELD DDA ,1,00000,200,03000 VELD ODA ,1,00030,170,23000 PROG IfvlAGE OSA 5000 DSS 00 DENO START 02402 02414 02426 02438 02450 02462 02474 024f16 02498 02510 02522 02534 02546 02558 02570 o258 2 02594 02606 02612 02615 02620 02626 02629 02638 02639 02402 34 02606 00701 36 02606 00702 34 02620 00701 36 02620 00702 36 02639 00500 32 02639 00000 14 02640 0000'0 33 02639 00000 46 03000 01200 25 0263B 0-2639 11 02521 00001 11 02638 ~0001 14 02521 ()2651 46 02582 01200 49 02510 00000 16 02521 0" 263 9 49 02450 00000 00006 10'0000 00003 200 00005 a3000 00006 100030 00003 f70 00005 23000 00005 ~5000 00080 Ol END OF ASSEt·iB LV • 02720 CORE POSITIONS REQUIRED 00022 STATEMENTS PROCESSED OK LOADED MACHLG (1042 10"4600lr040"2402cr2402:f: END OF JOB 0 7-r) 1 AUTOMONITOR o OORG FIRST '. TFM TFM START BC2 B 'r****,b't*,'dr CLEAR S TO TO TO AM AM AM AM C BH TFM TFM C,) " '0 BNC1 BC3 PRINT RCTY WNTY 3000" DEFI~E ORIGIN 03000 ADDR, 5000,7, I NIT IAL IZE ADDR ~3000 ADDR1,5000,7, INITIALIZE ADDRl 03012 CLEAR", IF SW 2 IS ON, BRANCH TO CLEAR 03024 03036 SOOO",BRANCH TO 5000 CLEAR RECORD MARK WNCD ADORl-4 TO AOOR1+1,INST+12" B FLAG SF CM BNH Ct1 BE CM BE 'eM BE CM BE CM BE 46 03048 00200 49 05000 00000 COUNT,COUNT" CLEAR COUNTER 03040 22 04189 INST,ADDR,21',TRANSMIT INSTRUCTION DIGIT 03060 25 rr4175 INST1,ADDR,21',TRANSMIT INSTRUCTION DIGIT 03072 25 a4128 TD+6 1,7,ADJUST INSTUCTION ADDRESS 03084 11 03066 TO+1C,1,7,AOJUST INSTRUCTION ADDRESS 03096 11 03078 ADDR,1,7,INCREMENT ADDR 0310A 1104168 COUNT,1,10, ADD 1 TO COUNTER 03120 11 04189 TWELVE,COUNT" TEST FOR COMPLETION 03132 24 04191 TO",IF P IS GREATER THAN Q, BRANCH TO TO 03144 46 03060 TD+6,INST,7, RESTORE INSTRUCTION ADDRESS 03156 16 03066 TO+18,INST1,7,RESTORE INSTRUCTION ADDRESS 03168 16 03078 FLAG", IF SW 1 IS OFF, BRANCH TO FLAG 03180 47 03324 PUNCH 03192 46 03276 ", RETURN CARRIAGE ON TYPEWRITER 03204 34 00000 ADDRl-4,., PRINT OUT INSTRUCTION ADDRESS 03216 38 04169 ", SPACE ON TYPEWRITER 03228 34 00000 '" SPACE ON TYPEWRITER 03240 34 00000 INST", PRINT OUT INSTRUCTION 03252 38 04175 FLAG", 0326449 03324 SPTY SPTY WNTY B .,'c *-:~ ,'t,'t -I( ,'( *,'t ,'t PUNCH TO AODR1+1,RETURN+20" 'FLAG 16 04160 0-5000 16 0417304140 00000 03960 00000 03996 0417'6 0414000000 03996 0417'6 04140 00000 00000 00102 04253 00100 00796 00000 o I o .BRANCH SF BNF TF NOFLG B TF B *****,'r***'i( EXEC CM BE C" ) INST+2", SET FLAG 03996 NOFLG,INST+6" TEST FOR INDIRECT ADDRESS 04000 ADDR,INST+6,1', TRANSMIT FIELD 04020 RETURN", BRANCH TO RETURN 04032 ADDR,INST+6" TRANSMIT FIELD 04044 RETURN", BRANCH TO RETURN 04056 INST+l ,30,10, TEST FOR OUTPUT INST 04060 SPACE 04080 04092 INST+l,39,10, TEST FOR OUTPUT INST Ct4 04104 BNE INSTl 04116 SPACE SPTY ", -SPACE ON TYPEWRITER 04128 INSTl DSS 12", DEFINE FIELD (INST1) ADDR1,ADDR" TRANMIT FIELD 04140 RETURN TF CLEAR,,! BRANCH TO CLEAR 04152 B ******')'(*'i(')'r 04168 5,5000" INITIALIZE ADOR TO 5000 ADDR DC 5,5000" INITIALIZE ADDR1 TO 5000 04173 ADDRl DC 1,@" SET RECORD MARK 04174 DC 04175 INST DSS 12", DEFINE FIELD (INST) 1,(W, SET RECORD MARl< 04187 DC 2,0,;'INITIALIZE COUNTER TO 0 04189 COUNT DC 2,12" SET VALUE OF TWELVE AT 12 04191 TWELVE DC 30,CONDITION CODE NOT RECOGNIZED@" 04193 MESS1 OAC 04253 MESS2 DAC 29,OP CODE CANNOT BE PROCESSED@'l 39,OP CODE GREATER THAN 41 NOT RtCOGNIZED@" MESS3 DAC 04311 ***,'r****** 03000 DEND FIRST 32 04177 00000 44 26 49 26 49 04044 04168 04140 04168 04140 04181 0418f 00000 04101 00000 14 04176 46 04116 14 04176 47 04128 34 00000 00012 26 04173 49 0304P OOO!O 01200 000!9 01200 00101 00005 00005 00001 00012 00001 00002 00002 00060 00050 04168 00000 05000 05000 * * ~O T2 00078 o 7J' :aCO$r&2.....s),.,. ......\- ~ ~ .. h.~ ... _. _., • • • • • • ' •• ~ ;:;;::;;;r;r#A#4A. .......... ,,;m... ~,p.,.1?;=.Ji;rn,.,.·! .- ,I ;'1 'I o o o ANTHROPOLOGY AND THE TEACHING OF PROGRAMMING Presented at Western Region Winter Meeting of COMMON, December 7, 1965, Los Angeles, California. This discussion, since what I have to say could not be considered a "paper" will be mainly narrative in nature. Let me introduce myself as neither a programming expert nor as an anthropologist. The title of this talk carne about due to an unimaginative attempt to call it something. I am, in fact, a physicist in charge of a computational group, trapped into spending part of my time as an administrator. I am involved in a small amount of research in atomic and molecular spectra and structure. I teach a course combining quantum mechanics, atomic and molecular physics. Usually when a course is given we concern ourselves with the winners~ those who pass--and consider the losers as somehow deficient and incapable. But I believe we must look more carefully at the losers in programming courses. Somehow the "miracles" of computing have been greatly overdrama- tized, and we are all guilty. administrations? sort. How else do we get money from tight fisted Well and good, a lot of people believe things of this Especially students--especially some of the foreign students. The consideration of attitudes came up in the careful examination of the types of students who were dropping Mathematics 195, Introduction of Automatic Digital Computing--and their reasons. o 71 -2- Mathematics 195 is required of all engineering students at Illinois, and may be taken after .having had differential cal,culus. It became obvious o that foreign students were having considerable difficulty, much more than' native born, although there had not been much distinction between these two groups in their mathematics grades. More than once, a section would lose every foreign student; only occasionally would a foreign student last through to complete the course. As far as native born students are concerned, the ability to pass the course seemed to be, in very general terms, only a function of intelligence as evidenced by grades. Good students do well, poor students do poorly. Now and then an otherwise average scholar does very well because something seems to click. However, the foreign student who has been doing average, or perhaps even better than average, work in his other courses, would be in trouble in the programming course. What and why? For several reasons this is not a trivial problem. o Let us look at some aspects of possible answers, which hopefully might lead to better ways of dealing with the problem. 1. Are we overtraining foreign students? Are the skills and experience he is acquiring not applicable when he returns to his native country? Does the student know this and is this why he is negligent in his learning? Some people are becoming analytical and critical, and think that this may be the case. Have we alienated these graduates from the manpower and techniques of his own country, replacing them with skills and tools that are not available? There is no point in saying what ought to be available; we must deal with what is. Are we right in demanding a skill that cannot;-be applied? The facts are that there are now 80,000 foreign students in this country, most of whom are studying in scientific and engineering fields. ;Fe ·If we require o -3- o that th~y learn useless techniques, upon returning to their native lands they become estranged from their own people. In such an instance, unfor- tunately education has become a destructive influence. This need not and should not be. 2. system? Let us consider our system of enumeration. Well, let us look at Roman engineering: Coliseum, and aqueducts that still function. Is it the only "useful" roads, forts, arches, the All done with an awkward I, II, III, IV, etc., and look at this LXXXI Try that on your 1620, 1800 or 360. III We are decimalized almost everywhere in the world, but should we be, to coin an expression, binarized or octalized? o I would like to learn more about learning arithmetic. Because most of us learned by counting objects, apples and bananas, long before we learned to abstract "numberness". In some societies this " numberness" is prone to have associated ideas which I shall touch on later. 3. Is there a cultural and ethnic antipathy to our objectives? Let me quote: o -non-literate peoples are capable, under the pressing conditions of necessity, of doing their utmost with their minds to solve some practical problem in a scientific manner. Most of the scientific processes involved are of a practical nature, and there is little time or inclination for science for science's sake. The latter activity does not appear until the development of highly sophisticated societies like Hellenic Greece. This is but yesterday in the history of human time. Because the Greeks were an aristocratic society based on slavery, they, who had so much of the necessary theoretical knowledge at their disposal, virtually failed to apply it. Machines were unnecessary since slaves could do all the work. The Greeks were interested in ideas--in brains--not in drains. The refuse of civilization could be disposed of by slaves, but only those with the necessary leisure could create and maintain that civilization. The Greeks developed the greatest ideas in the humanities and the sciences that the world has ever known, and probably the fewest inventions of a mechanical kind. -Not that UMZA444AU #14$44"0--,$,$-, ..·ar --'!'- Y DIGITAL ., _ ~ REGISTER Y NETWORK J :0 STORAGE OSCILLOSCOPE j PEN f-I-.-~ .... . ... ~ INTENSIFYING CIRCUIT STANDARD INCREMENTAL PLOTTER FIGURE I o o o '.T ?3'S -4- o Problem solution in real-time has not been an important requirement in our work to date. It has, in fact, been a real advantage to be able to slow down certain physiological processes for the convenience of the observer. APPLICATIONS o Much of our simulation work involves the PACTOLUS system described by Robert Brennan of IBM, San Jose, at the 1964 Fall Joint Computer Conference. PACTOLUS is one of the so-called "analog-oriented languages." It allows the 1620 to be progranuned much like an analog computer: i.e. by the preparation of block diagram and a "wiring list." Many function blocks are available in PACTOLUS. The key element is a numerical integrator, which allows the use of this system to solve differential equations. Even a digitally-oriented person usually finds it relatively easy to go from a set of differential equations to a block diagram to a PACTOLUS coding sheet with initial conditions, and perhaps 1/2 hour after being given the problem have the problem on the computer. The computer prints on one sheet the system configuration, the initial conditions and parameters, and the time and output controls. Any of these can be selected for modification at any time by turning on various sense switches. Three models on which we have worked will be used to illustrate typical applications: KIDNEY MODEL: The time-course of radioactive tracers injected into the circulatory system can be monitored at various body sites. The radioisotope rhenogram is widely used in evaluating kidney function, but no adequate mathematical model exists for evaluating the curves that are generated by monitoring the radioactivity at kidneys, bladder, and other locations of interest. We are currently working on the development of such a model. A first and rudimentary version began with a so-called two-c!avity open compartment system. Such a system can be described by a set of three simultaneous differential equations. (See Figure II) The programming time to get this simple model running on the computer was only a few minutes. Many physiological problems can be similarly cons;idered in terms of such multi-compartment analysis and)the ease of programming in PACTOLUS and the ready evaluation of the model through inspection of the solutions in graphical form on the CRT are a great convenience. o 11 ~---. o o o TWO-COMPARTMENT KIDNEY MODEL K13 2 V1 = K31 V3 - K13 V1 - K12 V1 V2 = K12 V1 :t ;! i1 :1 V3 = K13 V1 - K31 V3 I . FIGURE II @"\f.WW."'kW"·@W:::iI'W···'·tr:fI.wr.. P57!!7i - mu, 77' mns!Wi? stnTrrrffW'W_"i r_ _ -5- NERVE MODEL: o A great variety of structures and processes make up the nervous system. One obviously important and all-pervasive phenomenon is the action potential by which information is transmitted along the membrane separating the solution within from that without. The resting nerve is characterized by ionic concentrations within and without which, operating across the membrane conductance, determine the potential of the solution within the nerve in relation to that outside (typically -80 mV). When stimulated., the nerve .. fires" or depolarizes. Actually the potential reverses with the inside going to perhaps +40 mV. This depolarization "spike", or action potential, then propogates along the nerve fiber. Hodgkin and Huxleyl proposed the model shown in Figure 3 for the situation occuring at the bounding membrane. Implementing this model is not without challenge. We are not completely satisfied with the pr.esent version. (see Figure 4) The model is straightforward (and uninteresting) except for the nonlinear conductances shown in series with the ionic ·'batteries". The values of these conductances have been shown by Hodgkin and Huxley to be complicated functions of the time-history of cell voltage. Without the graphical output and interactive capabilities of our present computer system it is doubtful that a working model on the 1620 would have been achieved at all. Further trial and error adjustment of tl;1e functions and parameters is needed to moore accurately match the behavior of a real nerve. HEART MODEL: There are two limitations of PACTOLUS that we feel tend to somewhat restrict its usefulness-. Digital computer users tend to feel rather keenly the somewhat arbitrary restriction to analoglike 3-input block notation and tend to feel that future software should accept differential equations directly as input--perhaps in a FORTRAN-like format--whileperserving the man-machine interactiveness which is the strong point of PACTOLUS. The second is that a special-purpose system such as PACTOLUS _ is almost inherently somewhat limited in its capability of producing polished, well-labelled outputs such as are typically needed in the use of already well-developed models. ' lHodgkin, A. L. and Huxley, A. F.;J. Physiol. 117, p 500 (1952) o ql ,'1 '! + <-----.1 I o H 0 II 4 C ~ --t ~ H o rn o o ." H +1 o I" 1 I: , i',,' 1 :~~ dV dt = 1 C' [I + GK (VK - V) + GNA (VNA - V) ] K 1 V K=80mv I CV t<', ....- - - - -.., GK Functio ~ GK -;INA Functio FIGURE o o 4 o = . =.... ............_, _"'=',"""""''''.="c..=c""-= ....=, ... ,_.=._..='".,_ ...".='r.".=",.... """.,,.•=.....= ...,"""'. .,.=_.".=" , ..... ~~~~.........:.:.::-'-=~ =. =.,...,.""" .....""" .. ".= ......"""-",. === .."""" . ,.,."""'."._. ",''. '".,_.' ' .., '.'.'.',= ....,..=,. -'''''''''·W''''''·''''",",,'''''=·. ,""'", ..... ,=.,.....= ......= ...= .... = ._ ." .... "" = ..... , =="='''''':~,w",,,;,,-'' = .. , .... -6- The Lorna Linda University Heart Model falls into this category. It was a model of proven usefulness as a research tool before conversion to the 1620 was even attempted. Due to the demands of internal logical structure, and output requirements, this model has been written and maintained bin the FORTRAN Language. Computer analysis of electrocardiograms has received much attention. The clinical cardiologist has typically attempted diagnosis on the basis of the so-called scalar electrocardiogram. Leads are attached to the body at various sites and the scalar electrocardiogram is then simply a plot of the voltage between a pair of these leads as a function of time. With the concept of orthogonal leads it becomes possible to think of these voltages as components of an electric vector which changes in magnitude and direction as the depolarization wave sweeps over the heart in a cycle. The figure traced in space by the tip of this vector (or the projection of this figure on a given plane) is then called the vectorcardiogram. We now have a computer model which will generate vector (or scalar) cardiograms which look like those generated by a human patient. In developing our computer model we consider a heart divided into 20 segments. As the depolarizion wave sweeps over the heart it passes through a given segment thereby creating an equivalent electric vector. The time course of these twenty vectors is given as twenty functions with their directions specified by their direction cosines. The vector sum of these 20 segment vectors taken at each moment of time then specifies a single equivalent vector which is regarded as generating the vectorcardiogram. The model was first programmed for the analog computer2 but the 1620 version has been much more successful not only because of greater freedom in specifying the 20 functions but also because of the ability of the digital computer to process the output in useful ways to provide a more meaningful display. We shall restrict our discussion to techniques by which we have tried to enhance the usefulness of the graphical output of this model. The typical electro-cardiogram EKG of yesterday and today consists of a polygraph output of from 6 - 12 essentially periodic traces of voltages obtained from leads placed at various points on the body. 12 lines are the basic output of the Heart Model and correspond to one period of each of 12 scalar leads. These can be 2 Selvester, R. H., Collier, C. R. and Pearson, R. B.; o o Circulation, Vol. xxxI, January 1965. o -7- o used to compare the output of the model with traditional EKG's. Two loops, the projections on a horizontal and frontal plane of the 3-dimensional loop, present the same amount of information as the scalar lines, but relationships are much more easily seen. The use of color permits us to readily compare abnormal cases with the normal ones. Shifts in the vector loops are often detected much more easily than the corresponding changes in the scalar leads. Our next thought was "if going from l-dimension to 2-dimensions in our presentation increases the digestibility of information so much, what about 3-d?" We don't have a 3-d plotter yet. What we do have is a series of programs which prepare left-and right-eye views from 3-d coordinates for use with an old-fashioned stereoscope. The 3-d effect so produced can be startingly good. We are in the process of debugging the programs and the photographic techniques for the preparation of full-color, 3-d, animated motion pictures of vector-cardiograms, using data from either the model or from patients. Right now, the program is ahead of our photographic technique. When both operate to our satisfaction we plan to prepare movies to be used in medical education. o o CONCLUSION We are reminded of a remark by Professor Culler when asked how the time-sharing system at UC, Santa Barbara compares with other such systems. He responded that "one comparison that could be made is that the Santa Barbara system is a member of a class of systems which exist-as opposed to a much larger class of systems which people talk about." Remote terminals and graphical display devices are rapidly becoming available for a variety of computer systems and the on-line concept is one which is supposedly going to revolutionize the world of computers in the near future. Meanwhile our system exists and we are on-line. The economics of the system are such that we can allow sign1f1cant blocks of user time with the operator interacting with the computer as he observes on the CRT display the effects of his parameter and programming manipulation. The needed element of high-speed CRT display was developed and could be duplicated by other users with a modest expenditure of time and money. o o o I" ;·r-;----- - - .. ----- .. ---,..-.-... -- -- o PERT / CPM PRACTICAL APPLICATIONS AND A LOOK TO THE FUTURE PRACTICAL APPLICATIONS I am very pleased for the opportunity to participate in this conference. And, particularly on this subject. I feel, as do the other members on the panel that techniques like PERT (Program Evaluation and Review Techniques) and C. P. M. (Critical Path Method) have great potential. Up until the last couple of years, references to PERT/CPM were associated with large defense programs or large construction projects. NOw, we find that there is an awakening on the part of management to the potential of these teChniques. These techniques (particularly C.P.M.) are now being used in all types of construction (large and small), in the field of education, equipment maintenance, accounting and auditing, data processing, and many others. As a matter of fact, the use of these techniques have spread to so many new fields that I have heard hints to the effect that the notorious t'English Train Robbery" was so well planned, scheduled, and carried out that the culprits must have used C.P.M. o Before getting into details on npractical Applications" let us review various techniques now used in Project Management. We have PERT, CPM, GANTT CHARTS, CHECK CHARTS, HUNCH, HABIT, / INTUITION. If we were to list them in order of use, they would most likely fall in the following sequence: ----1. 2. . 3. 4. 5. Hunch, Habit, Intuition Gantt Charts Check Charts CPM (Trend toward Activity Oriented systems) PERT (Defense Industry uses, bu~ technique being modified) , . You know, businesses a.re now too complex and costly to operate as they were in the "good old days.tI And yet,' we Btill find many being run by habit. That is, there is ~ formal planning. We continuously hear and read of projects being late for one reason or another. Some part or material not delivered, some equipm~nt or manpower not available, request for budget approp~iationoverlooked. Hurry and wait, crash program, work overtime, seems to be the standard practice. And, we realize these delays and conditi.ons might have been averted had there been any real planning. o I recently heard of two computer installations that had to be delayed. One was delayed because the site was not ready, the other because systems and programming for the conversion were not started in time. 1 -2- ,1 1 I I There will always be delays beyond the control of a manager, but think of the times that the project could have gone smoothly had there been planning; that is: both strategic and operational planning. ~ I am sure you have heard of the Polaris Submarine and Missile pro- ject,and the project being completed two years ahead of schedule using the new PERT technique. Also, of Dupont and others using C o PIo1l and saving time and money on maintenance of equipment and on construction projects. But let us discuss some smaller applications of C.P.M. Some that have benefited both the company and the person who developed the network. Following are some examples of such C.P.M. applications: I. A young engineer became interested in PERT/CPM and took a course on the technique. His supervisor heard of his interest and assigned him to develop a network for the "Puddingstone Dam. Maintenance Project." Show Chart No. I. II. young man working in the construction industry took a course on C.P.M. technique for a term project. He developed a network on a "60,000 sq. ft. Warehouse" that his company planned to build. He showed the network to his superintendent. He was so ~pressed that the company actually used the network for scheduling and controlling the project. A ~ Show Chart He. II. III. A Police Sergeant applied the C.P.M. technique to a pro- gram for "overhauling and installation of radios on motorcycles." He developed the network and computed the total time manually.' It proved the value of formal planning and scheduling. It also pointed out that the project eould not possibly be completed by the scheduled (direct date) using the manpower prov.ioed. The Sergeant's superior officers were 80 impressed with the advantages of this technique over others in use that they are recommending that other officers learn PERT and C.P.M. techniques. Show Chart No. III. IV. Executive Secretary took an interest and learned the fundamentals of PERT and C.P.M. She developed a network on "merging two departments." Her boss, a vice president, was so iMpressed that he assigned her to develop C.P.M. networks on "opening a European Plant." An Show Chart Io. IV. She now has a new title "Pert Analyst." 17 o I [,,' -3- o There a.re many applications . I eould'mention: mountain cabins, apartments;paiRtlng buildings, D.P. applications and installations.,and so" forth. Yoti can see that youdCi:> not have to look far .. forpractical applications.·· Any:project which meets the cri taris.: space.,. people, departments, .cri tical schedules, tight budgets, and interrelated or dependent tasks. H Projects that call for good planning, scheduling and control. o o 11 ~I I I i Western Region Winter Meeting of Common Gaylord L. Baker PERT / CPM o PRACTICAL APPLICATIONS AND A LOOK TO THE FUTURE TO THE FtJ'l'URE -A LOOK ----- 1. Unfortunately, none of us have a cr~stal Ball. Nor do we have the psychic or prognostic ability 0 Jean-nIXon. As a matter af fact, most of us have trouble predicting what our wives or children are going to do next. But as fa.r as business is concerned, if we study the past, what's happening right now, we can see trends. It doesn't take a very astute person to evaluate the technological advances made in science and engineering in the last 30 years: our space program, telev.1sion, surgery on eyes and heart, nuclear power. And of course we must recognize the advances made in computer technology as almost unbelievable. What about the Future? We can expect some amazing progress with lazers, witn-itomic power, electronic miniturization, and in the use of computers. 2. What about management? Have we made much advancement? . Certainly not comparable to science and engineering. Oh, we are using computers and some other improved office equipment, but there are so many managers operating by habit; by trial and error. () They say there is a trend towards the use of mathematics and the computer by management. 3. Future for Management. No question, there will be wider and expandealUse PERT and CPM and, no doubt, with technical improvement. Remember, the primary function of management is PLANNING and PERT andCPM Forces Planning. That is, both strategic and operational. or STRATEGIC PLANNING: A clear definition of objectives Scope of project defined Directed dates and authority Imposed conditions Laws and legal provisions Approvals Financial and Budget Controls Resource limits and Company Policy OPERATIONAL PLANNING What we must do Logical sequence of performance Interrelationships and Dependencies (one task to another) The things we use: manpower, material, equipment, etc. 11 ~--.- ....- - - - - - o l I' "lw,ttnwet: '·w'!:te,w'rp'iw't"Wflltt'WY' 1 -2- o Another thing, there will be more of ,a, common understanding between· ·those ·in the ,financial end· (Controller.s ,-Budget "Of-··, ficers, Boards, those controlling the finances) and those doing the project--whether the project would be construction, sales, training~Data Processing, scientific, engineering, or any of the many new fields. Each will be able to visually see the CONDITION OF THE PROJECT in terms of: What has to be done When and how long What has been done What is being done What has yet to be done Also, ~ to date In closing, a few years ago I was out at UCLA doing a Resource Simulation Study on the 1620. I noticed a young fellow in the corner and assumed that he was the son of one in our GR. He looked about fifteen. He sat down beside me. I asked, "Waiting for dad?" "No, waiting to test PROG." This took me by surprise and I asked, "Prog. 1401?" "No, but 1410." I asked, uhowold?" He said, ntwelve years. u 0" You know, we live in a competitive society and to advance and to keep ahead of these young students we have to not only have experience, but to keep abreast of new ideas and techniques. Like PERT and CPM. ,~ o /tJ{J I!,/ ,I o o I ~ o I. THE DEPARTl\1ENT OF WATER AND POWER IS o CRITICAL PATH METHOD SCHEDULING PROGRAM FOR THE IBM 1620 DATA PROCESSING SYSTEN CADS MK III (Construction and Design Scheduling Mark III) Raymond C. Burt, Robert C. Burt and Marciano Lopez Department of Water and Power Los Angeles, California ACKNOWLEDGMENT The authors wish to aclmowledge the assistance given by Mr. L. O. Schmidt, formerly with the Department of Water and Power, Mr. J. T. Au, and Mr. B. H. Kawaguchi, in the programming and analysis of the Department's CADS scheduling system. 4:) INTRODUCTION This paper is a discussion of the Critical Path Method of scheduling hereafter referred to as CADS now in use by the Department of Water and Power, City of Los Angeles, for the scheduling of design, construction, material procurement, equipment maintenance, and preliminary operations of steam plants, large bulk power substations, Water System projects, and a nuclear plant. CADS may be described as an automated method of scheduling complex projects on digital computers. l\1ore than that, it is a logical approach to project scheduling, organization and planning in detail. o / () / The various methods of computer scheduling (see appendix, page AI) presently available have been developed out o of a need for a logical method to analyze the relationship between thousands of activities which go into large manufacturing and construction projects. WHY IS CADS NEEDED? CADS plays an important role in the Department's design and construction for several reasons, as follows: 1. In order to supply sufficient detail for the establishment of target dates for such items as material procurement, engineering, preparation of drawings, orderly installation of equipment and so forth, it is necessary to schedule and coordinate several thousand jobs or activities. 2. Since there are over 100 design, construction, and o material procurement groups in a major project team, a standard scheduling and coordination technique administered by a central authority is required. 3. Because of the vastness of the projects and the continual need for updating schedules, high sgeed scheduling techniques are required tq prevent delays in obtaining vital information. 4. A method is desired which enables the scheduler or engineer to pinpoint, in advance and with sufficient scope, the areas of difficulty and to take corrective action months in advance instead of after the difficulty has been encountered. 2 o / 5. c:; A techniqu~ is de~ired which enables a scheduler ,or engineer to describe a project in regard to its many dependent activities or jobs, with the required start and finish dates of the project, and which then automatically adjusts the resulting schedule by making time corrections on critical jobs to produce a final schedule meeting the original requirements specified. 6. Finally, a technique or method is required which enables the. scheduler or engineer to see the effect of a slippage of anyone job or activity in a project with regard to the overall project target date. With regard to the last point above, it has been assumed in the past that there are certain key items or activities in a large project, such as the placement of a main 4() power transformer or the arrival of a turbine spindle, which could be used to measure the progress of a project and indicate project completion date slippage . . Another assumption in the past was that only the large or key items in a project need be scheduled and that everything else would automatically fall in place. these assumptions are false. Both of The two weeks late arrival of reinforcing steel for a transformer foundation can delay a project just as long and can be just as serious a problem as the two weeks late arrival of the transformer to be installed on the foundation. 3 o ~~~--~-'-".;.;;;;.;c-"~"';:;:_~;;-';~;';';j"~:;.'li:':;;':'-"'--"~'~"""~'-".' "t······,1···)·U"~····1 .......... ..·t·t'! ..~;=" ..'·="~~"""""""'......,....- _~ ______________ . "","". ,""'-.. = ..,""-"""', ........"""'......._=.., """"~. ..--=- -'"""'.-.--.=----.=.--~~.=-.~-.= 'il I HOW IS CADS USED IN THE DEPARTMENT? The Department's version of CPM scheduling is called CADS. CADS, which stands for Construction and Design o Scheduling, has been used in the scheduling and the coordination of all design, material procurement, construction and testing activities needed to build three large bulk power substations, Receiving Stations S, P, and T, in the Los Angeles area. Two of these stations, RS-S and RS-T, are conventional, aboveground 138 KV to 34.5 KV Substations with ultimate capacities of 400 MVA each. RS-P is a 230 KV to 34.5 KV underground station, (in the downtown area of Los Angeles) with an initially installed transformer capacity of 320 MVA. All phases of the projects such as site selection, engineering, drafting, management approval, material procurement, construction, testing, and energizing of the stations are scheduled in detail to answer inquiries and problems of the following types: An electrical design engineer needs to know when a set of detailed structural drawings will be ready in order to know when he can start design of an electrical equipment installation. A land division officer wonders whether a two weeks delay in obtaining a parcel of land will be acceptable. A member of engineering management is considering whether or not enough time is left to request a change in system design. 4 o i''fNStMMWwt'i1fEt''Wft''HtII''!'tW---::re''f,zs',-,rr, o rnr·· . A chief draftsman flooded with a deluge of drafting jobs must assign the order in which the jobs are to be done. A specification writer is faced with deciding what delivery date will be satisfactory approximately two years from now. Noting the tremendous expense tOQay for construction equipment rental and wages, a project engineer has the problem of deciding the exact day on which to begin construction in order to meet the project completion time and at the same time minimize cost. These problems, and many more, can be answered by CADS. A typical receiving station schedule for the type of stations indicated above consists of approximately 2500 jobs or o activities. Portions of a typical receiving station schedule are shown in the appendix of this paper. These comouter listings will be explained later. In conjunction with the scheduling of large receiving stations, it was necessary to schedule the transmission and underground engineering and construction of the lines and cables entering the stations. The other main application of CADS in the Department has been the scheduling of construction and preliminary operation activities of Units 1, 2 and 3 at the Departmentts new Haynes Steam Plant. These units will produce 230 MW each. The construction of these units not only involves the coordination and scheduling of the Departmentts own construction groups, but o 5 nrUfF ms:;.' 'il I also that of the various contractors responsible for the boilers, turbines, tank erections, and so forth. To date only the construction and preliminary operation activities have been o scheduled by CADS for the above units. One of the extra dividends accrued in going to computer scheduling, and in particular to CADS, was the increased understanding and knowledge of the detailed activities, with their interrelationships, required in building a plant. The benefits from this one point alone have made the program highly desirable and successful. The last major point pertains to the manner in which the CPM or CADS automated scheduling program was implemented within the Department. The computer program was developed at the suggestion of several Department senior engineers concerned with the coordinating and scheduling of large projects. o The original programming group consisted of engineers, having previous plant design experience and familiar with computers. In the latter part of 1960, much time was spent in researching available publications, principally those concerning the Navy's PERT Program. After analyzing the Department's needs and the programs then available, it was .decided to write an entirely new program having the input and output features that the Department required. The engineers, who wrote the computer orogram, 6 o I I 1.1 - - - - - - - - - - - - - - - - - - - - - - - - -_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ F":~T prepared, with the help of the Station Design Engineers, the first receiving station schedule data. The first steam plant schedule data were prepared by the preliminary operation, construction and scheduling engineers because of their greater familiarity with steam plant construction activities. The task of originating, organizing, operating and implementing computer schedules for all projects is now done by the Department's Design and Construction Division staff engineering schedulers, who have historically been charged with the responsibility for coordinating and scheduling. The original computer programming group now serves in a consulting capacity. WHAT CAN CADS DO THAT CONVENTIONAL SCHEDULING TECHNIQUES CANNOT? As was pOinted out above, CADS or CPM can analyze thousands of detailed activities, as to their correct time relations. Using conventional bar chart techniques, it is physically impossible and impractical to correctly relate several thousand activities according to calendar dates, to type or print and proof complete schedules for distribution at regular intervals within a satisfactory period of time, much less examine the critical and subcritical paths for areas of possible trouble. With former conventional techniques, only the major equipment and construction activities could be scheduled, therefore not providing sufficient detail to indicate problem areas. In addition, independent schedules for design, 7 o """"""""""""""'== - ---- - - - ---·---·-···--···-:.;,.....=0".=·_ . _'"=""----=""-'='_ ..,""'""'" """"""m""","""'"-"",,,,'''''''''''''_"""""""""'"""""""""""'~.....-..._ _ _ _ _ _ _ • _ _ _ _ _ _ _ _ _ _ _ _""""""".......... construction, and material procurement were made by various subsection schedulers in order to aid their engineering groups. This resulted in conflicting schedules, each in different degrees of updating. o CADS can update, print, proof, and ready a complete detailed schedule for distribution in a matter of minutes after the need for a change has been recognized. Lastly, CADS, through its automatic rescheduling features, can adjust a schedule through its ability to find the critical areas or paths, modify certain time estimates, and recast a schedule iteratively until specific project requirements are met. HOW DOES CADS COMMUNICATE OR PORTRAY ITS INFORMATION TO THE SCHEDULER AND/OR ENGINEER? The advent of high speed, large storage digital computers, with the ability to output information at the rate o of 600 lines per minute and with up to 132 characters on a line, has provided a temptation for programmers to output too much information for humans to digest. To be certain, management, design engineers, clerks, and construction people need detailed scheduling information because they work with details. It is the day-to-day decisions, such as which jobs are to be performed next, how many people are needed on the design staff during the next year, and can part of a group be rotated to new assignments, that plague management. With the ability to provide detailed 8 o information and while still recognizing the frailty of human OJ beings in digesting large amounts of data, the specifications for the CADS output format were devised. A person reading a schedule is usually concerned with the details which pertain to his group only. For instance, the supervisor of a group of electrical draftsmen is concerned with jobs which require electrical drafting and not with the number of plumbers needed on a ~articular date. Hence, the schedule output is divided into summaries according to actual Department design and construction groups. A partial list of groups in the Department given individual summary printouts from the CADS schedule may be found in the appendix, nage A4. A supervisor is concerned with decisions such as when .jobs o assigned to his group should be started and finished" how many men should be employed on each, which jobs can be started early, is overtime required, and are the prerequisites to starting a job available (key drawings, engineering calculations, sketches, and so on). A supervisor therefore needs an individual summary for his group which contains the above information. The two typical approaches can be made when examining a summa~J schedule. The first type of inquiry might be as follows: Has a particular job been completed yet? And the second tyPe: Which jobs should be started, finished, or active today? 9 o :1 The first type of inquiry requires an alphabetical listing of activities by summary, while the second requires a chronological listing of activities by summa~T. o The CADS output format includes both types of listings for each summary. In addition, it is convenient to have the outout format for each summary in both tabular and graphical forms. The alphabetical listing of activities is printed in tabular form and the chronological listing 1s orinted in graphical form (bar chart) for each individual group summary. In order to discuss the output formats, samnles of which are included in the appendix~ it is first necessary to define the terms activity, related (prerequisite) activity, critical path, slack time, normal and critical time, and normal and critical manpower. An activity can be either a task performed or an elapse of time. o Examples of tasks performed are engineering studies, drafting, installations, and testing. of time is the curing of concrete. An example of an elapse Before most activities can be started, certain prerequisite activities must be completed first. These prerequisite activities are known as related activities. As an example', the curing of a concrete foundation is the related activity to the activity of placing a transformer on that foundation. To further illustrate the term related activity, the placing of the transformer on the foundation is a related activity to the activity of connecting the transformer 10 o /10 ri: to the station bus work. " o The remaining terms can best be described with the aid of a diagram. On page A5 of the appendix a simplified schedule has been diagrammed (both names and time estimates are arbrltrary and are intended only to illustrate terminology and the manner in which CADS schedules). The diagram shows the relationship of activities to each other with regard to the sequence in which the activities must be performed. A real time scale is included at the right of the page. On the side of the page labeled pass 1, the activities TRANSFORMER FINAL ASSElvfBLY and I'RANSFORMER WIRING CONNECTION are both shown as requiring the related activl ty TRANSFORf,mR PLACEMENT; however, since the activi ty TRANSFORMER FINAL ASSEl\1BLY req1.)ires more time to perform than the activity TRANSFORJVTER WIRING CI CONNECTION, the related activity TRANSFORMER PLACEMENT m"ust be " completed earlier than what is required for the activity TRANSFORMER \vIRING CONNECTION.. The time re')resented by the dash line on the diagram is known as slack time. The tnterval between having all the related activitIes complete and the latest posslblestarting date for an activity is defined as the slack time of the activity. ~lIRING For the act:lv;.t:l TRANSPORfiIER CONNECTION,the slack time referring to the tIme scale is one day. A oath is comprised of two or more activities worked in series. The activi ties TRANSFO?tflIER TEST, TRANS~ORrI[ER FINAL ASSEf1BLY , TRANSFORMER PLACEl\1ENT and TRANSFORMER DELIVERY 11 o /1/ %hfi\, t.",'.""""" ,,..,,]$ 4A,J4i"·riAn';;;:,AMU:;;:m====..... form a path. Another path is defined by the activities TRANSFORMER TEST, TRANSFORMER WIRING CONNECTION,. TRANSFORMER PLACEMENT and TRANSFORMER DELIVERY. It is noticed that some of the same activities occurred in the second oath as were in the o In the first uath there exists no slack time. f~rst ~ath. The activity TRANSFORMER WIRING CONNECTION has slack time in the second path. The critical path is the longest nath in time and contains no slack time. For the ryass 1 diagram, the critical path consists of TRANSFORMER TEST, TRANSFORMER FINAL ASSEMBLY, TRANSFORMER PLACEMENT, TRANSFORMER FOUNDATION CONCRETE CURE, TRANSFORMER FOUNDATION FORM STRIP, TRANSFORr·1ER FOUNDATION CONCRETE POUR, and TRANSFORMER FOUNDATION FORr1 INSTALLATION. Although the critical path is the longest ryath in the project, it dictates the shortest time in which the project may be completed. Only when activiti~s in the critical path have their time shortened or are worked in parallel rather ()~ than in series can the nroject time be reduced. Since in most cases the sequence in which activities are performed cannot be changed (a concrete foundation must cure before placing eq1.~ipment unon it) the common way to shorten a project is to shorten the allowable time to Derform each activity in the critical path. This can be accomolished by placing more manpower on the activity or by working more than one shift ner day. Activities are therefore given two time estimates, normal and critical. The normal estimate is given as the time and number of men normally allowed to accom~lish a given activity. I? o 1/2- _nn'!",i·- The critical estimate is based unon the time and number of men required to perform an activity when a oro.1ect must be completed in minimum time. For most activities the critical time estimate will be smaller than the normal estimate, and the critical number of men estimate larger than the normal estimate. For some activities the normal and critical estimates will be the same (i.e. concrete cure). If the left side of page A5 of the a~Dendix is again referred to, a number nair can be observed directly below the name of each activity. The number on the left side of the slash (/) represents the normal days estimate, and the number on the right the critical days estimate. If the activities represented by the diagram were scheduled by CADS using normal ( estimates, the pass 1 schedule output would appear as shown '\.. \ ",' on the left side of the page. Should the time required to comnlete this work be greater than acceptable, CADS wpuld attemnt to reschedule as shown f'or pas~ ~~e ;Dass " schedvle was obtained by replacing the normal es~ate'with the cri.tical estlmate for each activity appearing in the critical path of pass 1, (transformer test, final assembly, placement, fovndation concrete cure, form stri'!J and form installation), and rescheduling. Again if the pass? schedule requires too many days to comnlete, the activities aonearing in the critical oath of pass ?, (rack area backfill, grounding mat installation., and rack area excavation) would have their normal estimates renlaced with critical 13 o 113 estimates by the CADS program. With these changes a new schedule is output as shown under pass 3, page A6. This recycling process continues until the schedule is shortened . _" 0 to an acceptable time or until all the activities appearing in the critical path obtained in the new pass were previously reduced to their critical estimates in an earlier pass or until the number of passes equals the limit for the maximum allowable number of passes (which can be set by the individual scheduling with the CADS program). In order to describe some of the output features of CADS, the following definitions and explanations are made. Activity Index Number. This is a computer generated activity identification number, which 1s unique for each particular activity. This activity number is assigned when all activities are sorted, alphamerically by summary, during proceSSing. The activity index number will normally change for subsequent schedule recasting. o It is usually used in locating a specific· activity when the schedule outputs are being examined. File Number. This is an arbitrarily chosen activity identification number assigned by the scheduler, and is used for identifying an activity external to the computer. This number does not change for subsequent schedule recasting and is therefore useful for activity data modifications. 14 o /1'/ "WiH**iN'&tJ!!!!'ji"~W'WjM*jlfiW'jti't"tttmmflne'f'eFlner-up nnr'T'rrrnrrT "W " "nnw .,=rws'.iT::rrnnrnmUEelfitNr::t5eeMWlt'k;,"·;' The output features of CADS are: o Summary - Activity Table. This table is printed as the first item in the schedule and lists all the summary numbers and summary names used, with the number of activities assigned to each summary. The heading contains the date at which the schedule is made, the ,project name, and the page number. Next, listed in numerically ascending order are the summary numbers with their respective sununary names and assigned activities (see appendix, page All). Critical - Path Table. This table provides a list of all activities in the critical path for the specified pass number. The heading shows the date at which the schedule is made, the name of the project, the pass and the page number. Next, a total indicates the number of activities comprising the critical path, as well as the number of working days for the -critical path. If the computer generated schedule does not terminate within the required completion time period, a message is printed out showing the pass number and the number of working days by which the schedule "OVershoots" the project completion date. In addition to the activity name, the index number, file number and time estimate are also listed. The critical path activities are arranged so that activitie"s occurring towards the beginning of the project are listed first. (See appendix, pages AI2-Al3) • If rescheduling occurs, then subsequent critical-path tables will be printed for each pass. o 15 /I~L) "•.•.•.•••___....... _. __ .•.__ ._.____________.. ____.. _ _ _ _ _ ._._. _______...._.. __..__..._._...___........_..... __.__......._._ .. ___.......________..._.._.•_ •••. _._. _ _ Alphabe-tic'Schedule. ~_~~~._" •• " •. --,,=.. ~~~~,_ .. ~~.---'-_._ .. c_.. _._"'.. _ .. __ .. The alphabetIc schedule alphameric~al1y li~sts' all:activlt1es" with their related activities, 0 for'each·sUmrnary. 'The heading "includes the 'date at' which the schedule i's'made, the name or' the project,- the summary name" the pass nUmber, arid the page number. Information 'included for each ac-tivlty i11. thi,s schedule is the activity i~dex number, the activi·ty name, the file ninnber, the normal time and manpower estimate·s, the critical time and inanpow'er estimates" the computed,. if not initially estimated, total man-hour requirements, the slack time, the start date, and the finish date. Information pertaining to related activities is indented. -Time and manpower estimates actUally used in the schedule are marked with an asterisk. Any activity previously completed or finished will be indicated by the word IICompleted" in the start and finish columns. (See appendix,-pages A14-A16). ({) Chronological (Bar Chart) Schedule. The graphical type of schedule lists activities chronologically by starting da..tefor 'each summary. The heading includes the date at which the schedule is made, the name of the project, the summa~ name" and :the . page number. The maximum period for Wh~ scheduling information can be provided on one 'page is four months. In addition to the activity name, the activity manpower requirement and slack time: are also shown. Near the top of the page, the months "and years under consideration are indicated. lines show actual calendar work days. The next two 'A)'eekends and holidays are 16 o //~ I I .. _ _rrwrrnneWMtt'W'i::'" omitted. c ' r .'.~': ;! The first line, is the first digit" or tet;l,s', position of the calendar day" and the second line is the second.. digit or units position of the calendar day. The "XiS" span. :the time interval during which the activity is to be perforroed. A ttc n occurring on the last calendar day of a pageindica1;es that the nX" sequence is continued into a subsequent time.period. Therefore" the same activity will occur on another page of the schedule. An activity which has been completed will not appear in.the chronological schedule. At the end of the list of a summary containing all activities for a specific time interval" usually four months" a "total manpower requirements" chart is printed. The values indicate the total number of men required by the group represented, in the summary" for any particular date during the ,interval. The first, second, and third lines indicate the hundreds, tells, and units positions, respectively, of the manpower,value. (See appendix, pages A17-A18). HOW DOES THE SCHEDULER AND/OR ENGINEER DESCRIBE THE PROJECT TO . THE CADS SYSTEM? The schematic approach (arrow diagramming) for collecting schedule data for the CADS program was avoided because of the difficulties in showing the sequence relationships between activities, and because of the limited number of activities which can be shown on a'single sheet of paper. The collection of data for a project schedule is 17 ~O Ii 7 begun by examining the finished product and asking the que'stions: Which components make up the finished product, and what is the last activity performed on each of these components before they are declared complete? This initial list of activities is called the endof-project activity list. It is not necessary to include in this list any activity which is a prerequisite to any other activity. Each end-of-project activity is then examined to determine its innnediate prerequisite activities. Then the immediate prerequisite activities to the activities preceding the end-of-project activities are sought, etc. The activities which must immediately precede an activity are called that activity's related activities. ((It) The order of performance of activities (starting ~V ',,- I with a particular end-of-project activity) for most installations 1s as shown below. Indented activities are related (immediate prerequisites) to the non-indented activity directly above. COMPONENT TEST OOMPONENT INSTALLATION COMPONENT INSTALLATION COMPONENT MATERIAL DELIVERY COMPONENT INSTALLATION DRAvlING REVIEW BY CONSTRUCTION COMPONENT AREA PREPARATION COMPONENT MATERIAL DELIVERY COMPONENT BID AWARD TO DELIVERY TIME 18 t 01 Ilf o COMPONENT BID AWARD TO DELIVERY TIME COMPONENT AWARD OF CONTRACT, APPROVAL COMPONENT AWARD OF CONTRACT, APPROVAL COMPONENT BID EVALUATIONS COMPONENT BID EVALUATIONS COMPONENT BID ADVERTISEMENT TIME COMPONENT BID ADVERTISEMENT TIME COMPONENT SPECIFICATION APPROVAL COMPONENT SPECIFICATION APPROVAL COMPONENT SPECIFICATION PREPARATION COMPONENT SPECIFICATION PREPARATION (The prerequisite of preparing any specification is generally the engineering of some key drawing (i.e., one line wiring design eqUipment, or structural steel~ and/or the preparation of an authorization.) COMPONENT INSTALLATION DRAWING REVIEW BY CONSTRUCTION COMPONENT INSTALLATION DRAWING APPROVAL o COMPONENT INSTALLATION DRAWING APPROVAL COMPONENT INSTALLATION DRAWING REVIEW BY DESIGN ENGINEERING COMPONENT INSTALLATION DRAWING REVIEW BY DESIGN ENGINEERING COMPONENT INSTALLATION DRAWING DRAFTING CHECK COMPONENT INSTALLATION DRAWING DRAFTING CHECK COMPONENT INSTALLATION DRAFTING COMPONENT INSTALLATION DRAFTING . COMPONENT INSTALLATION DESIGN ENGINEERING COMPONENT INSTALLATION DESIGN ENGINEERING (The prerequisite of engineering varies. It can be one or all of the following: authorization prepared, other engineering complete, other drawings ~repared, and manufacturer's drawing prepared. ) COMPONENT AREA PREPARATION (e.g. installation of equipment board, erection of a building, concrete cure, etc.) o 19 1/9 The collection of data as shown in the above section for a proje9t schedule 1s accomplished by describing in order starting with the end-of-project q.ctivities, step by step, the activities necessary for the construction of a project. o Once the construction phase of the data·collection has been completed far enough to require the delivery of material or drawings, the steps for material procurement and obtaining drawings are almost always the same for each item in most organizations. After the data breakdown has been decided, time estimates are given to each activity. The time estimate is based on how long it will take to complete a given activity if all of its related (or prerequisite) activities are completed first. The time estimate can be given in working days with the manpower (number of men) estimate optional or as a total manhour estimate with the manpower estimate required. If an activity has previously been completed, that information can o also be entered. The above data collection method is based on the following hypotheses: A group or person charged with the responsibility for performing a given activity (particularly if the activity is similar to one performed previously) can reasonably answer at least two questions about the activity. First, what is needed (related or prerequisite activity list) before the activity can be started? Second, if everything that is needed to start the activity is available, how long 20 o /2CJ o will it take to perform the activity? Once each activity making up the project has been defined (given a time estimate and a relateq activity list) and keypunched on IBM cards, the scheduler only needs to specify the starting date (normally today) and the target date for the project. This information, together with the project title, sununary names (all on IBM cards) and the CADS program are all that is necessary for running the program on the IBM-1620 computer and obtaining a schedule. Some of the characteristics of the CADS program are as follows: If an activity is not listed as a related activity to any other activity, it will become an end-of-project activity 0) and have a completion date.equal to that of the coml?letlon date of the entire project. If an activity is listed as a related activity of several other activities, its completion date will precede the starting date of the earliest starting activity requiring it as a related activity. Every related activity must appear as a defined activity. CADS places the begin date of all activities as close to the end-of-project date as possible within the limits set by the activity time estimates and thelr.prerequisites. In the process of collecting data for a project schedule, one might wonder how fine of a data breakdown is necessary. o 21 /.2/ The answer to this question is that the detailed breakdown of data should be made fine enough to allow time estimates to be made without having to estimate dead time for each activity. Dead o time as referred to here means the time wasted on an activity, stopped because of lack of information and/or material necessary to complete the activity. If the input data is collected in sufficient detail, each activity's related (prerequisite) activities are scheduled to be completed before the activity requiring them is scheduled to be started. Thus, assunling reasonably accurate data and an adherence to schedule dates, the situation where an activity could have been completed earlier had it only been known that it was needed by a certain date can be prevented. Again, as a defense against the argument that too much data just confuses the schedule and makes it impossible to follow, it must be pointed out that the individual groups o performing the activities are given individual summary schedules containing only the activities aSSigned to their particular group and not the entire schedule output. Furthermore, once the data collected for a project schedule has been,thoroughly checked out and the target date established, it is not necessary for management to try to follow the entire schedule output. Management, in order to keep watch over a project, needs to know whether or not the schedule is being adhered to. Schedulers and coordinators also need this information in order 22 o /22.. 'r;eJ!!.m;ffitF'M. "anITmnr;-;; an to know if a schedule needs to be updated. o This can be accomplished by having the schedulers collect periodically (i.e., monthly) from the individual groups the progress of all activities completed, active or started during the month. The number of activities completed, active or started during the month is very small. The number of these activities which are not progressing according to the schedule is even smaller. Therefore, with an effective reporting system, management needs only to be concerned with a few activities during any month. To further simplify the problem when one or more activities deviate appreciably from the schedule, the updated ~ data can be automatically rescheduled by the CADS program in a matter of minutes. The· CADS program adjusts the schedule through,its ability to find the critical path, modify the () critical path activity time estimates, and recast a schedule iteratively until the project is brought back to the original target date. The steps taken by the program to adjust the schedule are printed out in concise form. CADS updates prints, proofs and readies the complete, detailed schedule for distribution automatically. WHAT ARE THE SUPPORTING SYSTEMS AND ERROR CHECKING FEATUP£S OF THE SYSTEIvl? Since the Department has an IBM 1620 computer, several programs have been written f'or the machine which provide a convenient method f'or CADS data preparation and checking. 23 o /2-3 One program of this type can generate prerequisite activities in a sequence for input to the CADS program when given certain o specific activities whose sequence or trace is a }mown or fixed procedure in the Department. Three commonly used sequences are drawing, specification, and bill of material preparation. Given an equipment delivery because of formal bid or bill of material requisition, or a drawing delivery, this program will generate activities in the proper sequence to and including engineering. dOl\~ Other programs can delete, change, or list specific cards in a CADS data file. In order to provide a rapid method for producing data for similar proJects programs have been written which will reproduce and renumber CADS input data files. A 1620 program is also available which will generate block diagrams of the project showing the activity relationships. ~ This program uses the CADS input data to generate these diagrams. Some error checking features have been developed in the CADS computer program in order to facilitate data debugging. One feature provides a check on activities which have either not been defined or have been improperly defined. When this occurs, a message "Found no J num for---------------tr, is printed out. Another common error is feedback. Feedback is an improperly defined relationship between two or more activities. When this occurs two or more activities are prerequisites of 24 o /2,/ I, ET,ran -rr1tJfftflU!!:tWIm each other, either directly or indirectly. c:; Feedback is noted when a list of affected activities is printed out with no subsequent schedule information. A sub-program has been written which will handle the feedback-affected activities and produce a list of activities showing the paths which are directly involved in the feedback. As can be seen, these features provide means by which data handling and correction can be reduced to a minimum. EDUCATION REQUIREMENTS FOR Ir.JIPLEMENTING CADS The problem in securing and training personnel to implement an automated scheduling program deserves conunent. As was stated above, the original programming and schedule preparation was carried out by special studies engineers ()\ familiar with computers~ but the staff scheduling engineers who now run the system had little or no knowledge of computers. The engineering scheduling personnel have been sent to short computer orientation and training sessions to acquire basic operating knowledge. In addition, good success has been obtained from brief training periods of clerical help in a step-by-step process over a period of months. In the operation of any computing system, the main key to success is finding interested, careful personnel. Since the special studies group provides consulting service when difficult or unusual circumstances are encountered, little knowledge is required by the schedulers concerning the operating characteristics of the IBM 1620 which is used for o 25 the major portion of the Department's automated scheduling program. EQUIPMENT A typical 1500 activity CADS schedule requires about two hours of IBM 1620 time. o In addition to the IBM 1620, another computer, the IBM 1401, is used for report writing. These two machines are available within the Department. Also, the Department has a well-equipped card tabulating section, which provides services for reproducing, sorting, collating, and other preliminary card handling procedures for CADS. FUTURE Planned modifications and additions for the CADS system are as follows: 1. The inclusion of job or activity cost data with the aim of developing a program which would schedule a project for a minimum overall cost. 2. The establishment of an automated division-wide o manpower allocation system for scheduling of major projects simultaneously. 3. The inclusion of features for special job progress reports, to be provided for management use. CONCLUSIONS The Department has applied an automated scheduling system to the task of scheduling and coordinating the deSign and construction of several large substations and to the ta~k / I 26 o /2G o of scheduling and coordinating the construction and preliminary operations of several large steam generating units currently under construction. This scheduling system has been operating successfully since the early part of 1961 and is now an integral part of the Design and Construction Division's operations. o 27 /27 Critical Path and PERT BIBLIOGRAPHY 1961-1962 o 1. Berman, H~ Try critical path method to cut turnaround time 20 percent. -HYdrocarbon Processing and Petroleum Refiner, 41:135-8, January 1962. 2. Builders bone up on critical path at MIT. *Eng1neer1ng - News-Record, 168:19-20, June 28, 1962. 3. CPM enthusiasts claim bonus benef1ts. *Engineer1ng-NewsRecord, 169:42-44, August 9, 1962. 4. Cabell, C. P. Integrated programming; simplified version of PERT. Plant Engineering 16:106-12, September 1962. 5. Christensen, B. M. Network models for project scheduling. Machine Design, 34:114-18, May 10, 1962 - 34:173-7, May 24, 1962; 34:132-8, June 7, 1962; 3 4:155-604 June 21, 1962; 34:105-11, July 5, 1962; 34:136- 0, July 19, 1962. May 10: Planning phase--initial steps in setting up network models with special emphasis on crit1calpath method. May 24: Preliminary schedule phase. June 7: Advanced scheduling phase; determining critical points; choosing schedule. June 21: First steps in working our samples project. July 5: Computer routines for planning and scheduling problems of any practical size. July 19: Establishing specific plan of implementation. 6. Cosinuke, W. Critical-path technique for planning and scheduling. *Chemica1 Engineering, 69:113-18, June 25, 1962. 7. Critical path method; new tool for job management. ing News-Record, 166:25-7, January 26, 1961. 8. Driessnack, H. H. PERT on c-14l. 5:32-5, August 1962. 9. Eisner, H. Generalized network approach to the planning and scheduling of a research project; PERT technique. Operations Research, 10:115-25, January 1962. 0, *Engineer- Aerospace Management, 10. Glaser, L. B. Critical path planning and scheduling; application to engineering and construction. Chemical Engineering Progress, 57:60-5, November 1961. *Magazine titles marked with an asterisk may be found in the Department library Al o iWE iT -2- 11. Hawthorne, R. o Pert and pep; useful tools or t1mewasters? Space/Aeronautics, 36:56-8, August 1961. 12. Healy, T~ L. Activity subdivision and PERT probability statements. Operations Research, 9:341-50, MayJune, 1961. 13. Huish, H. A. Keeping critical path up-to-date is no problem with a computer. *Plant Management and Engineering, 24:15-19, April 1962. 14. Industry borrows control tool that's closing missle gap. *Iron Age, 190:62-4, July 5, 1962... . 15. Kast, W. G. Critical path method ideal tool for plant construction. Hydrocarbon Processing and Petroleum Refiner, 41:123-30, February 1962. 16. Kelley, J. E. Critical-path planning and scheduling: Mathematical basis. Operations Research, 9:29-320, May-June 1961. 17. Kruse, M. E. Streamline your maintenance planning with critical path scheduling. *Plant management and Engineering, 23:49-51, December 1961. o 18. Loeber, N. C. PERT for small projects. 34:134-9, October 25, 1962. Machine DeSign, 19. Lundenheimer, E. L. Use critical path method to plan complex projects. *Power Engineering 66:37-40, September 1962. 20. Lynch, C. J. Plan projects scientifically with criticalpath scheduling. *Product Engineering, 34:92-6, September 18, 1961. 21. Martin, N. M. Critical-path method expedites IBM projects. *Engineering NeWS-Record, 169:34-6, July 5, 1962. 22. Mauehly, J. W. Critical-path scheduling. * Chemical Engineering, 69:139-54, April 16, 1962. 23. Meyers, R. E. Critical path scheduling as applied to refinery turn-aroundsj abstract. Chemical Engineering Progress, 58:104, July 1962 *See Footnote on page AI. A2 o r ,-ir· ','1 .,1 ! -324. Pearlman, J. Engineering program planning and control through use of PERT. Institute of Radio Engineers. Transactions on Engineering Management, EM-7:125-34, December 1960. 25. Reeves,E. Critical-path speeds refinery revamp. Canadian Chemical Processing, 44:74-6+, October 1960. 26. Schureman, L. R. 'Critical path' as job scheduling and control aid. Roads and Streets, 105:66-8, 70, June 1962. / 27. Stagg, G. W. et ale PERT schedules manpower. World, 158:36-7, July 30, 1962. 28. Stegber, C. B. Scheduli~ projects by critical path. *Electronics, 3S;S6-7,March 2, 1962. 29. Steinfield, R. C. Critical path saves time and money. *Chemica1 Engineering, 67:148, 150-2, November 28, 1960. 30. Whalen, J. M. Adding performance control to cost control. National Association of Accountants. Bulletin, 43:6774, August 1962. 31. Young, L. H. Now_ industry schedules by computer; PERT (Project evaluation and review technique) on critical path method (CPM). Control Engineering, 9:16-18, January 1962. 32. Proceedings of the Seventh Annual Engineering and Operations Workshop, American Public Power ASSOCiation, Phoenix Arizona, January 1963. 33. Proceedings of the AIPE-ASME Plant Engineering Conference, Los Angeles, California April 1964 o *Electrical *See Footnote on Page Al A3 o nr' mrrrure,mrteet11i" SUMMARY INDEX O 'i,,I o o 1 STA.DES.SEC.R.S. ELECT. GRP. 2 STA.DES.SEC. ELECT. SPEC. GRP. 3 MANAGEMENT 4 STA.DES.SEC. R.S. MECH. GRP. 5 ADM. &ENG. SERV. SEC. ELECT. DRFTG. 6 ADM.&ENG.SERV.SEC.ELECT.CHECK 7 ADM.&ENG.SERV.SEC.MECH.DRFTG. 8 ADM.&ENG.SERV.SEC.MECH.CHECK 9 ADM. &ENG. SERV. SEC. CIVIL DRFTG. 10 ADM.&ENG.SERV.SEC.CIVIL CHECK 11 ADM. &ENG. SERV. SEC. STRUC. &ARC. DRFTG. 12 ADM.&ENG.SERV.SEC.STRUC.&ARC.CHECK 13 ADM.&ENG.SERV.SEC.STRUC.GRP. 14 ADM.&ENG.SERV.SEC.ARCHITECH GRP. 15 ADM.&ENG.SERV.SEC. CIVIL GRP. 16 STA. PRELIM. ENG. & APPR. 1 7 LAND DIVISION 18 TRANS.&DIST. UNDERGROUND CONST. 19 TRANS.&DIST. SEC. UNDERGROUND DES. 20 PROJECT MATERIAL DELIVERY 21 CONTRACT WORK 22 CONSTRUCTION DRAWINGS 23 FORMWORK 24 CONCRETE PLACEMENT 25 PLUMBER 26 EXCAVATION & GRADING 28 ELECTRICAL INSTALLATION ,29 MATERIAL PROCUREMENT 30 SPECIFICATIONS OFFICE 31 ELECTRICAL TEST 32 NONSENSE 33 CONSTRUCTION FACILITIES 34 FOREIGN DRAWINGS 35 STA.DES.SEC. LIGHTING GRP. 36 STA.DES.SEC. SPECIFICATIONS 37 COMMUNICATIONS 38 LANDSCAPING 39 SURVEY AND SOIL TEST 40 RELAY & OSCILLOGRAPH GRPS. 41 TRANS. & DIST. SEC. SPECIFICATIONS 42 ADM.&ENG.SERV.SEC. STRUCT. SPEC. 43 ADM.&ENG.SERV.SEC.CIVIL SPEC. 44 LATHING AND PLASTERING 45 MECHANICAL INSTALLATION 46 PIPING INSTALLATION A4 /3/ 47 SCAFFOLDING 48 SANDBLAST & PAINTING 49 MECH. INSTR. INST. 50 ELECT. INSTR. INST. 51 FORM & PLACE REINFORCING STEEL 52 WELDING 53 CHIPPING & GROUTING 54 BACKFILL 56 PROTECTIVE COATING 57 STEEL FABRICATION & ERECTION 58 PRELIM.OPER. 59 BRICKMASON 60 LABORERS 61 ELECT. DESIGN. GRP. 1 (ROF) 62 ELECT. DESIGN GRP. 2 ~RWE~ 63 ELECT. DESIGN GRP. 3 HLH 64 ELECT. DESIGN GRP. 4 CAE 65 STEAM DESIGN BOILER GRP. 66 STEAM DESIGN ROT.EQUIP.&HT. EXCH. GRP. 67 STEAM DESIGN INSTRUMENT GRP. 68 STEAM DESIGN EQUIP LAYOUT GRP. 69 STEAM DESIGN PIPING GRP. 70 STEAM DESIGN NUCLEAR GRP. 71 STEAM DESIGN NUCLEAR STAFF.GRP. 72 ELEe. MECH. & HELPERS 73 CARPENTER & PILE BUCKS 74 MILLWRIGHTS 75 PIPE FITTERS 76 BOILER MAKERS 77 IRON WORKERS 78 REINFORCING STEEL WORKERS 79 EQUIPMENT OPERATOR 80 STA.DES.MECHANICAL GRP. 81 CEMENT FINISHERS 82 STRUCTURAL ~NSTALLATION 0 PASS 2 PASS END END TRANSFORMER TEST 2/1 TRANSFORMER TEST RACK AREA BACKFILL 2/1 TRANSFORMER FINAL ASSEMBLY TRANSFORMER FINAL ASSEMBLY RACK AREA BACKFILL TRANSFORMER WIRING CONNECTION TRANSFORMER WIRING CONNECTION 4/2 5/3 TRANSFORMER PLACEMENT GROUNDING MAT INSTALLATION GROUNDING MAT INSTALLATION 10/6 TRANSFORMER FOUNDATION CONCRETE CURE TRANSFORMER FOUNDATION CONCRETE CURE TRANSFORME DELIVERY 4/4 TRANSFORMER DELIVERY 9/4 TRANSFORME FOWNDATION FJ M STRIP I I TRANSFORMER FOUNDATION CONCRETE / POUR I I :::i TRANSFORMER FOUNDATION FORM STRIP TRANSFORMER FOUNDATION CONCRETE POUR 4/3 TRANSFORMER FOUNDATION FORM INSTALLATION W - TRANSFORMER FOUNDATION FORM INSTALLATION RACK AREA EXCAVATION 0 RACK AREA EXCAVATION START FOR PASS 2 4/2 START FOR PASS I FIG. AS MULTI- PASS SCHEDULE COMPRESSION 0 /3'2.;.. 0 PASS 2 PASS 3 END END TRANSFORMER TEST TRANSFORMER FINAL ASSEMBLY TRANSFORMER TEST RACK AREA BACKFILL TRANSFORMER FINAL ASSEMBLY TRANSFOflMER WJRING CONNECTION RACK AREA BACKFILL TRANSFORMER WIRING CONNECTION GROUNDING MAT INSTALLATION TRANSFORMER PLACEMENT TRANSFORMER PLACEMENT GROUNDING MAT INSTALLATION TRANSFORMER FOUNDATION CONCRETE CURE 0 TRANSFORMER DELIVERY TRANSFORMER FOUNDATION CONCRETE CURE TRANSFORMER DELIVERY TRANSFORMER FOUNDATION FORM STRIP TRANSFORMER FOUNDATION CONCRETE POUR RACK AREA EXCAVATION lJJ ~ TRANSFORMER FOUNDATION FORM STRIP TRANSFORMER FOUNDATION CONCRETE POUR TRANSFORMER FOUNDATION FORM INSTALLATION TRANSFORMER FOUNDATION fORM INSTALLATION RACK AREA EXCAVATION START FOR· PASS 3 START FOR PASS 2 o FIG. AS MULTI-PASS SCHEDULE COMPRESSION /.3 ~3 o~ END II PAINT 10 TEST I I I I 9 '\ '\ I I ~ '\ 8 '\ '\ "" WIRE "" / " "'- "'- > 7 / " ""- 6 / " ->« U) / 0 / l&J 5 :E I- ERECT 0 4 TEST (2 DAYS) INSTALL WIRE 3 INSTALL 2 WIRE (4 DAYS) INSTALL ERECT INSTALL' (5 DAYS) PAINT (I DAY) INSTALL START o ERECT '( I DAY) FIG. A 7 GRAPHICAL REPRESENTATION OF CADS SCHEDULING TECHNIQUE (BASED ON ACTIVITY TIME AND PREREQUISITE LIST) o l.31 r'i-'o ~ TARGET DATE END ERECTION TEST L\J :i t= t- L\J :i tJ: ~ 0.: O «~ 0 ..... CONNECTION ..J ttl t- (.) ct LLI « ..J a: U') a.. ..J 8 -,. ~ ..., oex:: I.&J :I t- INSTALLATION .•#~ ..J ~ 0 t- INSTALLATION DWG. REVIEW BY CON STRUCTION DELIVERY TODAY START FIG. A 8 MATERIAL SCHEDULE WITH CRITICAL PATH TIME EQUAL 10 fOTA'L AVAILABLE PROJECT TIME o /.3s bUG&223 mnM .,i, ·ffJ#"i@ 'f'*' (,~, . ,m ,., '" *-' ~I '-...»' END ERECTION TEST CJ) TARGET DATE r- lLI CONNECTION :E t- ~ i= >« c INSTALLATION t- ~ o .., a::: Q. lLI ...J m «...J ~ .... .... 81 NUCL&RAOIOLOGICAL lNSTR 8e NUCLEAR START-UP 89 NUCLEAR PROJECT MATERIAL DLVRY 90 NUCLEAR FUEL c ..-. ..- .. ~ 'P'GE 1 .. PROJECT MATERIAL .. -~LIVERY - ._ .. CONTRACT NORK .20 ..1 14\1... 8,ER Oft ACTIVITIeS . SUMMAR! NAME SUMMARY NUM8ER ........... ~AL:IJ'~J .~~~~~~~ _l!~ ~l .. ),~~ .. _..-.. 2~ 1,8 3 n 116 21 3.3 4' 110 IN&~L ~ERATIQNS DeLl~eRY .Q .• 13 28 11t 2 ~. o o o JUL --.;...~ CADS MARK II SCHEDULE FO __ MALI.BtI NUCLeAR 1.1.965 u~n PASS ~ CRt TICAL ·;PAlTH 3' ACTIVITIES COMPRISE THE CRITICAL PATtf T.OTALING 1395 WCRKING DAYS PAS5 NO. 1 SCHEDULE OVERSHOOTS DESIRED PROJECT CtlMPLEUQN DATE tY lNOEX NO. "-.... ~ '" > ...... ACTIVITY NA~e 14 WORKING DAYS FltE NO. DAYS 46, AEC PUBLIC HEARING REOONVENES 5'0044 15 )46 TIME SPACER.CP EFF TO PUB HRNG 51001t5 104 466 CONSTRUCTION PERMIT EffECT1VE 510046 1 604 SIGN weST CONTRACT FOR sew ENG 510039 1 464 AUTHORIZE TITLE 1 ENGINEERING 51001e0 66 585 Stw CONTAIN STRUCTURE OESIGN 5100ltl S5 410 D8l 5~0042 66 1t69 DBl L(NER PLATE FA8RICATION 510043 132 576 RX CONTA STRUC FOUN MAT IN 510001 44 540 REACCONTASTRU BOT DBL LINER IN 510003 55 665 REACCONTA 80T LINER FR£ON TEST 570004 6 543 REACONTAVRTDBlLNRtPOPCRNCONCIN 570011 66 552 REACT CONTA INTEAIORCONC PH8IN 510013 I\) lINER~81 D TO PURCHASE ORDR 52 I 569 REACTOR CRANE IN 610017 U 539 REACCONTADMED8lLNRtPOPCRNCONIN 510014 198 667 REACT CONTA FREON TEST 510015 11 51t5 REACT AUX SYS EQ & PPG PHA IN 530002 154 666 REACT CONTA AIR TEST 510032 11 519 RC PPG HANGERS LOOPA PH8 iN 5.0018 33 531 RCPPGFIT'WELDtPRECLEANLOOPAPH8 5G0015 33 521t RCP MTR LOOP A IN 5G0007 6 514 RC PPG COLD SPRINGtFINML WELD 510001t 55 664 RC SYSTEM FILL , COLD FLUSH 500053 6 663 RC SYS INITIAL HYDRO TEST 500054 6 623 THERM INSULA FIELD JOINtS 'IN a 500003 6. 658 NUCl SYSTEMS HOT fUNtT TESTING 650003 22 1 PAGe· 1 ~u.. CADS MARK II SCHEOUL~FO~ ~AL'~_~,NUC~eA~ U~I.!.. 1 it 1965 IN()EX NO. ACTIVITY NAME REMOV~,~" HO ~L~~N , 6ift8 1t6t "tUSH S:V_S ,. CORE LOAP,IHG ~ ,ASSEMBLY ~V TOP INTERNALS IN 51' 66~..,_R'I H~.. !~. 2 '.F.INAL HYDRQ T·E~T_ .. 660006 II! •• 0001 U .80001 11 1.0009 U 6.0010 6 650\ I,HlTllL CRlTlClLe 0 PWRTESTING 65000Z 19 STEAM LINES STEAM BLOW ...... . ... .. 28005'- !ii ~'2 ~ DAYS CONTROL ROO TESTING .. J2' " f:lte HO~ 650 1t1t2 ~ PASS -._. TIME - --- SPACE~ 'Wit GENERATIONTESTlNG 10-looa 210102 lit 650001 9J 1 PAGe 2 ! I, li ... --.e 0) ~ o o o o o ---'---------------'---'---~-------------------------------------------"T- JU~ CADS MARK II SCHEDULE FOA MALlBU NUCLEAR UNIT 1 It 1965 PASS ELECTRICAL tNSTAllATION aPREREQutSITE ACTIVITIES ARE INDENTEOa INDEX NO. 252 FILE NO. 0~0030 ISOLATED PHASE 22KV 8US IN 69 ISOLATED PHAse 22KV BUS OL 252 ISOLATED PH 22KV BUS SUPPORTIN 0~0028 "- >- 258 ~ START DATE FINISH DATE -l-~- I'1.- 22 MAy 1910 66- 0- 66 o Q o , JUN 1970 10· 4- 9 ~ 320 o 29 JUL 1970 11 AUG 1970 MTR HTR DISTR EQUIP 'INCwtR 040131 NijCSERVICE£CONTROl HOUSE CONST 010199 MTR HTR DISTR PNL DL 04013$ 77 MTR HTR RELAY CABINET Ot 040139 18 MTR HTR RELAYS DL 040140 79 MTR HTR SUPPLY TRANSF OL 040141 22- 0- 22 o o o 2q JUL 1~10 27 AUG 1910 NSC BLDG CABLE RISER IN 040056 NUCSERVIce£CONTROL HOUSE CONST 010199 80 N6C BLDG CABLE RISER MATL Dt 040051 10- o. 10 o o o 14 AUG 1969 27 AUG 1969 NSC BLDG CABLE TRAY SVS IN 040050 NUCSERVICE&CONTROL HOUSE CaNST 010199 N&C BLDG CABLE TRAY DL '81 040051 33· o. 33 o ° o 14 JUL 1969 27 AUG 1969 NSC 8LDG GRO GRIOtELECTROOE IN 040044 184 N6C 8lDG CABLE VAULT IN 010200 82 NSC 8LDG GRO CRIOtElECTROOE OL 040045 5· O. 5 Q Q o 23 SfP 1968 27 SfP 19.8 10- 0- 10 a ° o 21 JUL 1969 1 AUG 1969 22* 0* 22 o o o 4 AUG 1969 3 SEP 19691, NSC BLDG TERM RM CABLE TRAV IN 040054 N~CSERVICE&CONTROl HOUSE CONST 010199 NSC BLDG TeRM RM CABLE TRAY OL 040055 22* o. 22 o o o " AUG 1969 3 NSC BLDG TEST eIRC PlSEQIN&WIR 040060 NUCSERVIceiCONTROl HOUSE CONST 010199 86 N5C BLDG TEST elRC PL&EQ Ol 040061 33* o. :33 a o a 14 JUL 1910 27 AUG 1970 1'-laT NSf BLDG VAULT CABLE TRAY SYIN 0"0052 NUCSERVICetCoNTROl House CaNST 010199 ,184 NSC BLDG CABLE VAULT IN 010200 81 NSC BLDG VAULT CA8LE TRAY OL 040053 22* 0- 22 o o o 27 JAN 1910 26 FEB 1970 J' LUBe OIL PMP MTR CNDSWJR IN lUIE OIL PMPtReSERVOIR tNSTL Nse 185 83 260 259 84 261 185 85 040031 040029 040030 0~023e 180007 LIGHTING CONDUIT IN 040046 NueSERVIce£CONTROl HOUSE CaNST 010199 NSC BLDG LIGHTING CONDUIT DL 040047 8LD~ Nse BLDG LIGHTING INtWIR NSC BLDG LIGHTING CONDUIT IN NSC BLDG lIGHTING EQUIP OL 040048 -185 NSC 264 185 CAe~E TERMINAL EQ IN£WIR 040064 NUCSERVICE£CONTROL HOUSE CaNST 010199 ~ JUN Bi10 ~ SEP 1970 , -j- 1- I: f. I ! t: 040046 040049 185 263 SL~CK o 259 2.2 DAyS o 185 ~ TOTAL MANHRS o -185 257 CRITICAL DAYS ~eN 10 185 76 '-.., N{!RMAL DAY'S MEN 0- 160 256 -- - l' 10- 2-54 255 I a-INDICATES ESTIMATe USEDa ISOLATED PM 22KY BUS SUPPORT IN lSOl_TEO PH 22KV BUS SUPPORTDl 68 253 ACTIVITY NAl1e ----PAGE-----28.00~ ---------1.- 1 I., J' I I' I f I II, se P 1969 1- I 111 22* 0* 22 o o a 27 JAN 1970 26 FEB 1970 f· I f~ ~--------------------------------------------------------------------,- JU~ 1, 1965 CADS MARK II SCHEOULE FOR MALIBU HUCLEAR UNiT 1 E~eCTR1CAL 88 2" 266 > 270 I-' \]1 ~ 040208 O~ t40~MAL ~EN DAYS CRll ICAl CAYS MEN TOTAL MAN~RS 15- o. 15 o o 580022 PRESSURIZER ~TR fA CTLSPWR WIR "160 BLDG VAULT CABLe TRAV SYIN NSO BLDG TERM ~M CA8LE TRAY IN NSC IlDG CABLE RISER IN ZS6 CABLE TUNNEL CABLE TRAY IN 217 NSO OASLE TERMINAL EO IN&WJR 261t 0~0199 DAVS SLACK o 41t- 0- 44 o o Q 15- O. 15 o o 952 10- O· 10 o o o Olt0052 040054 040056 040058 Olt0061t 500058 PR~SSURIIER IN PRIMARYCONTA ELEe $ERV FA IN 1 1 t' 11 iNSTALLATION START DATE FINISH DATE II 12 MAR 1969 tw I' 20 FEB 1969 Olt0209 020030 263 261 13 MAR 1969 13 MA~ 1969 23 APR 1969 13 ~A~ 1969 12 MAR 191~ 27 FEB 191~ fi I la I' I I I I II I i 510031t 1- 0* 1 o o 1114 12 MAR 197~ 12 MAR 1970 I! I' PWR CONTROL RELIEF VALVE IN'WI 0"0172 O~Ol73 PWR CONTROL RELIEF VALVE Ea DL 10- 0* 10 o o o 14 AUG 1970 21 AUG 1970 93 10* 0* 10 a o o 27 FEB 1970 12 MAR 1910 263 261 256 211 261t 521t 00\0181 REACT COOL PP1A FA CTl&PWR WIR Olt0052 NSC BLDG VAULT CABLE TRAY SVIN 040054 NSC BLDG TERM RM CABLE TRAY IN 040056 NSC BLDG CABLE RISER IN Olt0058 CASLE TUNNeL CABLE TRAV IN 040061t NSC CASLE TERMINAL EQ IN&WIR 500007 Rep MTR LOOP A IN REACT COOL PP1B FA CTL&PWR wIR RCP MTR LOOP 8 IN 0~0182 10* 0* 10 o o 187 27 FEB 1970 12 MAR 1970 525 REACT COOL PPIC FA CTl&PWR WIR RCP MTR LOOP C IN Olt0183 10* 0- 10 o o 155 27 FeB 1970 12 MAR 1970 526 REACT COOL PPID FA CTl&PWR WIR RCP MfR lOOP 0 IN 040184 10* 0- 10 a o 77 21 FES U70 12 MAR 1970 527 I( SAFETYINJ PP MTRIA CTL&PWR WIR SAFETY INJECTION PMP 1A INSTl 0~0189 10* o. 10. o o 36 • MAY 1970 15 MAY 1970 586 l~ SAFETVINJ PP MTR1B CTl&PWR WIR SAFElY INJECTION PMP 16 INSTl 040190 10* 0- 10 o o 36 ~ MAY 1910 15 ~AY 1970 581 I( SAFfTYINJ PP MTRIC CTLtPWR WIR 040191 10* o. 10 o o 36 • MAY 1970 1S MAY 1970 22* 0- 22 o o o 17 APR 1969 271 212 213 CON IN BLDG lIGHt CdN 8l0GGGUARD House CONST PAGWOe UTILITY SERVICE FA IN 509 'f:.: OF~ ll~HT 28.005 Olt0065 Olt0210 OFPCCEGGUARD BLDG LIGHT IN'WIR 040208 OFFICe&'YARD BLDG LIGHt CON tN 0402U 92 OFfICE&GUARD BLDG LIGHT EQ DL 269 ........... BLDG QfFICEGGUA~O PAGE 265 2.67 268 Nle CA8LE TERMINAL EQ OL QFFiteCG~ARD 91 164 FILE NO. ACTIVITY NAME 1 a-INDICATES ES'IMA1E USEDa ap«E«saUUITE ACTIV IT us ARE INDENTEDa .UUJ E,)( NO,., PASS 274 275 216 211 588 278 It 11 SAFETY INJECTION PMP Ie 500021t 53000l 5)0002 530003 040204 ~ h, If 500031t SHoPtWR€HSe B LIGHT CONDUIT IN SHOP&WREH5E SUPERSTRUCTURE IN In I, 5000lt5 INSTl I 1~ MAY 1969 020006 I~' I( i-I I I( Iy~ __ ._____ ., __ .____.____. _ _ _ _. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ .J...._ o e o o o ,JUt - 1.196' CADS "ARK II SCHEDULE o F~R . MAlleu NUCLEAR •.. .... U~IT 1 . . ._- - ....... PASS ' .. 1 ----.---._--_.-._----PAGE 28.006 - ELECTRICAL tNSTALlATION aPREREQutSITE ACTIVITIES ARE- INOENTiDD - -.. ------ .. -- ...• _........ INOEl( NO. 100 279 6HOf'WR6HSE BLDG LIGHT tN'WIA nll -"------SflOPCWREHSf! 8 LIGHT C{JffllUlT'lff 281 282 105 108 ---_. .. FILE NO. SH8P'WHEHSE B tiGHt CONDUIT Ol ,101 210 ---~ ACTIVITY NAMI 040205 01t0206 SHOPCWHEHSE 8LDG LIGHT EQ OL STATOR 'OOLING SYSTeM INCWIR S~ATOR COOLING SYS EQUIP OL 040015 -STE." n"PINSTR.cCONTROl 'INIWl 040170 STEAM TEMP INS1RCCONTROL EQ Ol ,284 '-. ~ \..J\i C\ 286 217 28B IN6~RUMeNT'C~NTRbL INCWIR TURS INSTRUMENT'CONTROl EQ Dt. 0"'0005 lUAS-GEN CASlE TRAY liYS IN TURBPlT ELEV 35 CONC DeCK IN TURB~GeN CABLE TRAY DL 01t0040 119 TUR8GENGRD GRID4ELECTR'OD:E IN TURBGEN GRO GR1DCELECTROOe Dl 00\001t2 TUR81NE REGULATING CAB tNeWIA, GENERATOR MAJO. PARts OL 040021 62 12'1 41lt 'fURSPL,T ILOG UGtiTlNG IN,'WIR TURBPLT 8LOG LtGHT CONDUIT IN :122 TURBPlT 8LOG L1GHT EQUIP OL 289 355 125 ,290 130 291 185 131 132 TUR8PLT GRDGRtO IN TURBPLT eJ UNWATERING SY$ IN TUABPLT GROGRIO Dl VARO 185 133 CONDUIT~MANHOLe SYSTEM t~ YARD CONDUIT DUCT MATL DL 3'. o. 3,3 0 0 4~. 04f 4~' D- O 30'e It* 21 4 It It- 0- 44 66- Oli 31e 33 0 01,0001 040038 040036 040039 040222 000006 Olt0225 0"'0214 FINISH DATE 22 JUL 1910 4 SEP 1910 19~ 11 JUN U7G 11 AUG 1910' 960 0 17 JUL 1910 27 AUG 1970 0 0 0 29 JUN 1910 27 MIG 1970 66 (I 0 0 26 MAV 1969 27 AUG 1961f o. 33 0 0 0 2' JUL 1968 10 SEP 1968- 22,- o· 22 (] 0 31 20 JUl 1970 18 AUG 1970 75'. 0- 75 0 0 0 22 JAN 1910 1 MAY 1970 180- O. 180 0 0 (I 8 MAV 1910 22JAtc 1911 15. 0- 15 0 0 0 15 FEe 1968 7 MAR 1968 192- o. 792 0 0 0 II MAY 1961 15 Jut 1910 22e 0- 23 0 0 0 8 JAN 1970 6 FEB 1970 3- Oe ~ 0 0 0 2 FEB 1910 " FEB 1910 0"'0215 DC BA~T CHARGER lA IN£WIR 040147 NUCSERVICe'CONTROL HOUSE CONST 010199 125V DC BATT C~ARGER 1A&18 DL 01t0149 0 START CATE SUCK 0 04001t3 120V INS1A SUPPLY PltEQ IN&WIR 040 13It NUCSERVIce&CONTROl HOUSE CONST 010199 120V INSTR SUPPLY Pl&EQ OL 040135 120V INSTRSUPAUTOTRANSFERSW Dl 040136 125~ 292 010113 040041 TURe9LT BLDG LIG~T CONDUIT IN 040036 lURePLT ILBG LtGHT CONDUIT Dl 01t0031 TURePLT SUPERSfR WAllSCROOF IN 110039 281 0- DAVS ! JUl 1969 -,-, 040004 TOTAL MAHHfU 3'. ._ ..... -._- - 040111 ,192 118 .285 >.... lURI CR111CAL MEN DA'S 19 "AY 1969 040016 TUR8 INsrrR WIR-TUR8 TERMCAI!I IN 01t0239 TURa INSTR WIR-TUR8 TEAMCAaOL 04Q21t0 ,U8 lURe T&RMINAl CA8 INSTL 110015 112 NORMAL DAYS "EN 0"40204 ' 040207 111 ,283 aeINOI(AT£S £5'I"AIE USEoa -.. ... 0 ,-, .lr-_;;-' ., ,...1 gl :/ fW1!O ~X 'X 'X <'IIw\ <'II. <'111'1\ CJ , ~I Q.i "":x N,.. N>O 1111 ;X i::~ X ;X :x :........ .,.. '0" ... 'CD I ,-... ;z 'g ' .... .~ ,.." :;:) i~ ... 1 _I ~~ :;:): ae' "i &II: .J: C)i :;:)1 z· :;:): iii ." ~ z: : cr: t:I 1.1.: III ." :;J g III %: U en ~ X X ON X ·x N :0<'II:lID 'x :JW; :x N.,... .." .... i ;oil; 0"-' Z ;.J :i< 0'11\ 0"- '(II - .... " '0:'" ,- :111 :X ;X X ':iii; K 'X X .""'io-f "''0 0'0' ,.J .,..u ....'u·c X .....'" :Z .... ,'" <'II'", N'fW1 NN :x N· ... X ~ ~O""'o ."' ....0" ... .....'" ,> .... :x '0' -'CJ ~'" x :x :x X :x : 'fW1 ..... :N '0' O'CD :z: 0 X 0"" X g :x X x 0"oQ X 11\ 0"" 0'''' fW10 N'O' .. .:l1li: N_ :O'''''lID !", ... Jo- ,x X "' NIn (\I:'" ......... ........ X ·x . a. .... 0''''' o oft 0··fW1 0"" 0:'" C « % (II a « U. ... z: .... o ac-'N ~ .... ' o:r- '0:.0 0'" 0'" o~ ¥ cnu 'x x • 'x x :x IQ >-~ %0- IIIUI 3I;~ ~ .....,. "':"1iII In .0 0' .... ~ x X :x ;x X X 'x :x Ji( :x )( ~ X 'X X X ~ x ,,", x 'x X 'x ::Ie 'X X x :x x X X x .... ~ 'X ~ ... !fit ~ g u ... iCI/: ~ 0 w U l::7 "III g ~I GJ, U. ~ )Z 11K: > ¥. ... en ~ IX IK :x ')II; :x ')II; :x :x :x :x >c X X X Joe X :x x x x x :x x x x X X :x :Ie X x X ::Ie :Ie X X X X x :Ie X 0 x X X :Ie X ;.. = x :x :x :JC )( x ')II; X IIIC X X ')II; ;K :x ~ :Ie ~ :x ')II; X xx :x jc :x X :Ie X :x :x :x :Ie x x • X :Ie x >c: X x X X xx IX x >C )( :x :x lIC X xX X :x x x 'x x x )II xx ')II; • '000 000 '000 '0'00 OOg '0'00 '000 QgQ gge '00'0 '000 'OOQ '000 000 QgO 000 00'0 000 000 eGO '00'0 000 000 000 '0'0'0 000 000 '0'00 000 0010 000 '0..,0 000 OgQ 000 ~ 0 x •• 000 x X OOQ ggg 000 Joe COO :000 ')II; )C oQQ 000 '000 00'0 000 GOO :x QOO 00'0 000 00'0 00'0 000 x 000 ')II; gOO ;Joe x x :x 0 gOO gOO 000 gOO 000 000 gOO 00'0 00'0 000 000 000 000 x )C X x X ;x x X X :x OQO :Ie :Ie 000 000 000 000 000 000 X x X X .~ N g ggg 000 x :Ie ... 000 000 000 X x 0 boo ggO ggg OOQ x x 0 N u\' 0" 0 0 ~ 'p 'P 0 lID p :x ~ X :x >c: :x X 1)1( :K x :x C X x )( )C x :x X ')II; ')II; :Ie X iK :x ')II; x lX 1)1( iK ')II; = X :x :x :i< x x ;K :x I.JOt >c C x ')II; :Joe: IX X X ;K ~ X >or; iJOC: IK :x I.JOt ~ X X ')II; ~ en ~ g :a; Z - U :II: If; tI} :x )( :x :x X :x :x :x :x ')II; :x ~ ~ • ... fIJ :Joe: :x x X :Ie &II CD Q !Joe: ')II; ')II; I uIK !O -... ... -... ... .... ... ... . .., ... ... z D X x :x JC Z flO ')II; - X :.; Z IX )( )( r- In " x x)C x or: ~ X :x ')II; x &It U X x X x X U UJ )IC x 'x ~ .." :;:) :X x :x iX iX iX ~ P X :x X :x W ....C X .~ W g U 4; :x :x :x .x :~ >.~ _'C X X X X X :x ·x :x 'x '"... .J :x X :x ,X :x X x 2 ~ X :x :x ~ 1;1; :x :x :x :x :x X :x 'x :x ;x ,x Z :z g X :x X X ')II; lID a;-n iX x x x :x 'V "III:'" ;X ;x .x X x ;K M X ::Ie :')11; III( X ')II; X X ~ ')II; :x 'X .x , ;X :x X :ag ,O'-If'- ;K :Ie :x x ~ NO X X :x x x ;oil; ,. ."''.o ...... ................ ')II; :x x :x x x N_ ~ JIll; x ")II; N'In Noft u :x 'x fW1'''' N'lID N:rN'.o u ')II; ')II; X X X M 'X 'Oat u ~ :x xX " 0 X X ~ X x «0'0' :x X 'X .... : ae ........ X lilt x ... ·In .0 '"' ...... u :x '"x: :IIr Z '" lit fIf! l~ e. ~ 0 u a c g ,. " ~ z Q ~ ac:: "~ Z u;;;, c ~ z W ., b ;;,;; ....,..," U ., I ; x: ~ ." (D :J > ae .,..... U\ eQ'; - ... > ... ...>s,.., "" "=' c .,., ...>...,.., ,.,;r; ... :;z:; II: Q U ID UI en a; i w Po ~ ~ ;:So to IC iii, 31; UI Q'; I:"J J Qr ~ 1M C UI a:; ~ !Q III ~ U U. iii: III' I ~ ., ~ M lID :;:) ID ~ :z UI In I- GI 10 U VI - '" g "III DC: ~ CI l at ~ ","' Z ~ ... "III g !I!!' A17 /!/y 0 4u\. 1 •.196' CADS MARl< II SCHEDULE FCR MALIBU ACTlVI TV MEN DAYS '--'RfG -$lACK NAfI1' TU-A"S-G£N C,Ae-L£ .T-RAV SVI 'IN SHOPCw-REJiSe elCC; L IOIllT ~\ PAGE 28.008 - JUl 1969 AUG 19ta9 SEP 1969 OCT- 1969 . OOOOOOillll112222222330000001111111232222J200000Gl1111111222222300000001111112222222233 12J1UOlii~6181234589(j 114S6?812l.,Sf90 12561e~2HS890 1256'Je92H!l690"1236111903 /'-!l61Clf23418'7Cl a (I)lX)(XXXXXXX)( X)O()()()(XXX)()( )I)()(n'loocx-,c)(·X)()(.X)(l(~ e CI ~)C)( YARD CONtlU,lTlIMAHfiOU! $VSTEI4 IN 0 o )( )OO()()OUOC XXXXX)()cX)( XXX)()()()( )(Joooen X·)C)I)( Ie )(x·x~·)()()()( X1CU XXXXXXX'XXXXX)( )(lex )oooe)( x X)( X)( X)(lC)i)()( x)(x)i)iC 230K¥ SW-RK C 731 )(XXXXXKKXXKXXXXXxxxxx.xXX)(XX~XXXXXXXXKIX.XXX~~XXXIX~XXxxxxXX~XXX)(XXXXIX)(XXXXXXXXXXXXXXC 31t.5KVSWAK A CON STRun 10 N (] Xl()()()( )OOO(X CASlI! TlJNNfL CAelE TfUV IN (] Cl . X)(lC)()(XXX)()(XXXlC)IXXXlXJOCXXX'XXX,xxxxx (l (] )()()(XX)()()O()(XXXX)lX)(XX')lX)()(1()(XlCX)()(XXX OOHSTRUCTION C~NS1-RUCltON 'T~AV SVS .IN U ~ XX)( XXX)()C XX)i )()I )01 Xl'X UX)( xxxx~ )(XX)(X xx lC K)( xJO( X)()( xx XX)()()()()( X)()OOC )(XI XXX)()()()1 U10IXX)( XXC NSC 8UlGlIGtiTING COHell/1T IN 0 Cl tONT~Ol«eCM \UM1NOUS CEIlIN1WI (] Cl XXXX~XX)(X)(XXX~XXXXX~)(X d o X~X.~.XXXX)iXXXXXX~XXXX a o XXX.~XXX~XXXX.X~XXXXXX NSC tLDG TE~M «H CASLE TRAY IN 0 xxxrXXX)(~X~XXXXXXXXXxx NSC elOG CAtlE o Q o o o CRV JVP~ LIGHT'INSTA TA INswlR ~sc BLDG LtG~TING IN'WIR ........... ~ 1 . - - '-'EleClR ICAI. ·INSUllATU1N--··------ )()(XX)()()()i"UlClOOC)()O( UXX)I)()( )c)()(~10IX')c X)(X)OC XX)(.X)(XXXX)(Xxx)(·)(x)C~)(X)C x'XX)(X')()(XX)(X)c}(X X)()(XX)orx~)i)(Xxt NSC eLflG CAelE ~ :e INCW(R . NUCa.;SAA u~n O-'-62~ ·34 II 51(V UG SWAt< > o o o 480V Ll'HT ~Ise~ ~ISTR IN BD iNGwlR xxxXXXX)fxx XXX)OOCXXX)( X,XlU(Xl(XX)OC ~~v SWITCHGEAR lA INGWIR o (l XX)OCXXX)( XXICX XXXX)( Xxxx xXX xx XX XXXX XXX,)(XXXXX XXX xc 4KV sw nCtiGfAR o XXXX~~XXXXXXX~XXXXXXXXXX)(XXXXXXXXXXXXXXXXXXXXC 41 Conc. Mo,.I,. & Mix OesiQn "- %~-4 U) ~ ·~A Cur. 5 ............ AD ER EL PL CA LA PA = Adminis tration = Erector = Electrician = Plumber = Carpenter = Laborer = Painter OJ c o o ----~-~ ..... o o o 8.:.l.:...6..5. Date CRITICAL PATH/COSTING/GRAPHIC PLOT SYSTEM Project Rooster pump Station INPUT FORM . s By~Omnjmetnc I ""'- ~ ~ J . : ; Q; c:~~ JOB DESCRIPTION o,,!C Zo. Est. Cost Code! Onto Code! Onto Code! Onto Code! Onto Code! SRT! Job No. Onto ~ost «I CQ'tS _0 CO L--:od~ 1 1 19 1 15 . 5 SUBMIT ELECT MA TLS 2 1· . Ii SURMIl" PLRr. MA l"LS 3 1 12 9 1 ,1 c:; STTRMT1' PATN1' C~R l' + SAMPLES 4 SUBMIT PRE-FAB MET BLDGS D 1 2 4 '3 Ii SURMTT CONC MA 1'I~C; +MIY 1 1 c 2 2 MORTI .T7. ~ 2000 1 , 4 2 r.R A n~ 4000 5 1 2 3 1 SURVEY 5 _4 7 1 1'R ENCH FOO1'TNCtS 1000 1000 5 1 1 6 3 4 o RESTRAIN 3000 4 2 6 ~ 7 n CUT + STUB-UP PIPE MAIN 6 ~ 6 7 10 9 n~.C::: ST7.~ 5 6 6 3 8 I 9 10 2 11 12 CtOVT OK 1 1 PROCURE 1 4 GOVT OK 14 2 c:; GOVT OK 1~ 15 c:; GOVT OK 12 13 Ii CtOVT OK 16 17 7 8 8 11 10 11 15 3 FORM + PLACE 5 CURE 10 PROCURE + DELIVER 9 13 i 7 20 16 19 1 - Time EST -~ 38 40 6500 5 3 "nn 27000 6 2 1 2 46 6 2 IE 19 20 51 56 6J 66~ 71 75 79 (1 .... I Date ' /t :! CRITICAL PATH/COSTING/GRAPHIC PLOT SYSTEM 1/ I Project , By I "'~' l>J INPUT FORM /; II I:;~ Time EST J 13 11 16 20 . 21 g~~ JOB DESCRIPTION ~~: Est •. Cost + DELIVER lC PROCURE + DELIVER ,~ PROCURE + DELIVER C 17 PROCURE Code! Onto Code/ Onto Code! Onto Code/" SRT! Job Onto ~ost No. Code! Onto :nnp 21500 21 4000 22 2100 23 11 18 1 SET PUMP 7000 2 2 4 2 24 11 14 '1 ER ECT STR STI 3000 1 2 2 3 25 4000 4 2 6 1 5000 2200 1 2 3 4 2 18 22 ~ 14 17 ' INSTAl.! ·ROOFING {;OMPLETE PIPING + SIDING 17 21 2 INSTALL LIGHTS 1 22 23 23 25 1 WIRE PUMP 1 TEST PUMP 1500 1200 3 2 3 1 4 1 21 25 2 PAINT 5000 1 2 7 3 6 1 21 25 1 INSTALL POWER DROP 1200 3 2 700 1 23 1 4 1 25 26 2 GOVT INSPEC 21 22 o RESTRAIN , OU 26 2 2 + PANELS ~ ~'O _0 6 27 28 1 29 30 31 32 7 33 1 34 " , , . , " , r: 1 5 . 9 13 38 40 46 51 56 "1 66 ~l 175 [1.<1 nI N (J .... o o NAP REPORT NU. 1 OMNIMETRICS CKITICAL PATH/COSTING/PLUTTING CPH SCHEDULc SAI"IPLE SCHEUULE FOR aOOSTER PUMP STATIm.,; 4 5 6 3 2 1 8 1 10 11 14 9 12 17 16 15 13 20 ~ ~ ~ 21 22 23 19 ?4 25 26 27 28 34 29 31 32 30 33 ~ * * * ~ .:: '" * TOTAL CODE 1 2 3 4 5 6 7 STAR T Et\D TIME EARL Y NODE NODE EST. START ACTIVITY UESCRIPT lUN SUBMIT PRE-FA~ ~ET SLDG S SUBi-l IT CONC II,A TLS+IHX DES 1-108 IL IZE SUBMIT PLBG MATLS SUBMIT ELECT MATLS SUBMIT PAINT CERT+SAMPLES SUJ{VEY GRAUE SITE RESTRAIN CUT+STU~-UP PIPE MAIN GOVT OK TRENCH FOOTINGS GOVT OK GOVT OK GLJVT OK GUVT UK PRUCURE PRUCURE+DELIVER 10 FORrHPLACE PROCURE+DELIVER PROCURE+UtLIVER PKOCURE+DELIVER CURe ScT PUi·W ERECT STR STL COMPLETE PIPING INSTALL ROOFING+SIDING INSTALL LIGHTS+PANELS RESTRAIN WIRE Pur:IP PAII~T INSTALL POWER OKUP TEST PUt-'.P (iQVT IN SPEC ESTI~ATED DURATIO~ RESOURCE DESCRIPTION ADMINISTRATIUN (AU) ERECTORS (E:R) ELECTRICIANS (EL) PLlJr·lt3ERS (PU CARPt:NTERS (CA) LABORERS (LA) PAINTERS (PA) 1 ES,LF SOf ATH/CUS T I,'lG/P LUTT h~G SYSTt:i·, 01 :;; I"',AKKS CR IT I CAL PATH ~ ?~OJ JU.l T Irl:E 1'4{J • lOr 2 6 4 4 5 0 * :; * .......... ~ ~\ * ij 14 20 STATIU~ START EN() T H~t: EARLY NOOE NODE EST. STA.RT 1 1 1 9 4 5 2 ~ ,2 r' EARLY FINISH lATt: START 0 4 0 0 .5 0 1 4 2 LATE FINISH FRt:F. FLOAT TOTAL FLUAT 0 0 0 1 4, 4. 6 6 0 TOTAL THIS CURR AVAIL JOts TOTAL eST. CUST >-0 i! .0 2 2 2000 ~ 1: CUhPLt:TcU 4 CUi;PLl:TEU 14 GOVT OK 5 PUHP ~-"'--; , 10 .9 4 4 8 4 8 0 0 0 CW-iPLI:TEU ,,/ COi-,PLETt:U PROCURE+DELIVE~ -3 ? 2 1 2 2 2 3 2 2 '2 ' 2 1 3 2 1 2 '0 10 11 10 8 18 8 18 0 0 21000 2 2 2 -2 2 !) 2 l~ l~ 20 CUj·l PLE TE D 2S ERECT STK STL 14 0 3 18 21 18 21 0 0 3000 2 2 2' 11 2 2 21 2.1 25 COi'jPLI:TEU 27 INSTALL ROO~ING+SIOING 14 17 3 21 24 21 24 0 0 5000 2 2 2 2 2 24 24 27 28 I~STALL 17 21 2 24 26 24' 26 0 0 2200 2 2 2 2 0 2 26 28 cm-, PLE TE 0 31 PAINT 21 25 2 26 28 26 2 2 0 28 0 0 ~ooo 2 ~ 2 31 COi',PLETEIJ 33 GOVT,INSPEC 25 26 2 28 30 28 30 0 0 700 2 2 2 2 2 .* 26 28 '* ACT! VI TY lit:SCRIPTIul~ 0 0 ~OOST~R 2~ COi-IPLETED LIGHTS+PANELS 1 ANU RESOURCES RECUIREO ANALYSIS 4 SUcl~IT PRE-FAa ~ET BLDG S 5 SU~~IT CONC hATLS+~IX DES 6 j.,u:jILIZE 0 SCHEUULE FOR SA~PLE PAGE j ' 0 0 I I, o o o . tzl .... i! f' /' . I ~eQUIR~MENT ~~PURT OMNlhETRICS C~ITICAL PATH/COSTING/PLUTTING SA~PLE * AND RESOURCES REOUIREO ANALYSIS MARKS CRITICAL PATH JOa T ll'it: I~O. * :>:: ACTIVITY IJESCRIPTIUN 18 18 24 SET PUl'lP 25 ERECT STK STL 19 24 21 21 25 COi1PLETED 27 INSTALL ROOFING+SIDING 24 27 PAGE: SYST~M START I:::ND T IHE EARLY NODE r\ODE EST. START EARLY FINISH LATE START LATE FINISH FREE FLOAT TOTAL FLUAT 18 18 19 21 20 18 21 21 0 0 2 11 11 18 14 1 3 0 EST. C05T 7000 3000 CQ.·,PLETEO CUi'j PLET t: 0 14 2 SCHEDULE FOR aUOSTER PUMP STATION FUR RcSuURCt CODE 02 PROJ 0 0 0 17 3 21 24 21 24 0 0 5000 TOTAL THIS CURR AVAIL JU~ TOTAL 4 4 3 2 5 4 2 3 4 4 3· 0 4 4 4 4 0 2 ........... {j.... ~ tx:I I N - FUK Kt:SUUKCt * PK~J :;: * :;: CUU~ 03 hAKKS CKITICll PATH T ll'.&:: * uM~Iht:TKICS kt!-'UKT K.::JUIKt:'·lb~r ACTIVITY UI: S CR I tJ Tl Ui~ JfJil NO. C~ITICAL PATH/CUSTI~~/PLUTTI~6 SYSTth PAGt: SAl"; PL t: SCht:UUL E FUP. BUUS Tt: K PUi-IP STA T·I Ol'i ANu RESUURCt:S REQUIRED ANALYSIS S or ART EN UTIl'I E EARLY I~OUE I\IUOE: I:ST. START I:ARLY FINISH .. LATE START LATE FINISH FREE FLOAT TOTAL FLOAT EST. CU!)T TOTAL THIS CUKH AVAIL Jeb TUTAL 24 2B Ii\STALL LIGHTS+PAI\lI:LS 17 21 2 24 26 24 26 0 0 2200 2 2 2 26 26 26 2ti 2'; CUI·,PLi: TI:U KI: pur·;p IMSTAlL PO~E~ URU? 0 23 25 1 1 26 26 27 27 26 27 27 28 0 0 1~00 1 1 1200 2 2 2 2 22 21 2 2 4 27 29 2 2 0 27 27 32 Cl,..·.PLE THJ 30 TI: Sr' PUi·Oj-) 0 2~ 1 27 28 27 28 0 0 1200 2 2 2 23 1 1 .2tt 2d 30 CUr·.PLt::TI:U 33 GUVT II~SPt:C 2 1 0 25 26 2· 28 30 28 30 0 0 100 2 1 1 ~2 ~"I 3 CUI·.PL~TEU 2 "'J, (j.., t:rJ I VJ C') o o 0 0 REQUIREMENT REPORT OMN~METRICS CKITICAL PATH/COSTING/PLOTTING SYST~M FOR RESOURCE COOE 04 SAr-iPLE SCHEUULE FOR BOOSTER PUI>iP STATI{JI'l * AND RESOURCES REOUIRED ANALYSIS MARKS CRITICAL PATH . PROJ TINE * * JOB NO. ACTIVITY DESCRIPTION 3 11 CUT+STUB-UP PIPE MAIN 6 11 START, END TII'-iE EARLY NODE NODE EST. START 0 PAGI: EARLY F IN I SH 'I;ATE START LATE FINISH FREE FLOAT TOTAL FLOAT 7 10 3 4 3 7 3 3 6 EST. CUST 3000 CONPLETED 18 24 SE T PUI-i P 11 18 1 18 19 20 21 0 2 7000 19 19 24 COi-'IPLETEU 26 COMPLETE PIPING 18 22 5 19 24 21 26 2 2 4000 24 26 27 30 TEST PUNP 23 25 1 -27 28 27 28 0 0 1200 28 2a 30 CONPLETEO 33 GOVT INSPEC 25 26 2 28 30 28 30 0 0 700 COMPLETED 4 TOTAL THIS ClJRR AVAIL JOB TOTAL 2 2 2 2 2 0 2 2 2 2 2 2 0 2 2 2 0 2 1 1 2 1 0 2 1 1 2 " ~ Kf' tt1 I ~ atJ REQUIRE~ENT REPURT FOR RESOURCE CODe 05 ~ MARKS CRITICAL PATH PROJ TUiE JOB NO. ACTIVITY UESCRIPTION 2 2 8 SURVEY 7 GRADE SITE 3 8 4 4 7 CQr'IPLETED 9 TRENCH FOUTINGS 5 9 9 9 12 OM~IMETRICS SAMPLE A~D CKITICAL PATH/COSTING/PLOTTI~G FOR BOOSTER PUMP SCHE~ULE P~Gt: STATIO~ RESOURCES REQUIRED ANALYSIS START END TIi'll: EARLY NODE NODE EST. START 2 2 3 1 4 2 2 2 EARLY FINISH LATE S'TART LATE FII~ISH 3 6 7 4 7 .9 FREE FLOAT TOTAL FLOAT 0 0 5 4 ':ST. COST 1000 4000 COMPLETED TOTAL THIS CUl~l~ AVAIL JUu TuTAl 2 2 1 1 :; 1 2 2 1 1 1 1 0 2 1 (l 2 3 3 2 3_ CJ 2 4 7 1 4 5 9 10 4 5 1000 CUfviPLET~U 7· 8 9 3 18 FORH+PLACI: 12 18 CANNOT BE RUN - TOtAL REWU: ·2MENT GREATER THAN AVAILI3ILITY 18 SYST~K COr-1PLETED 10 13 0 1 6!>OO l ? 1 '-- ~ ~ o o o , o o REQUIREMENT REPORT OMNIMETRICS FOR RESOURCE CODE 06 SAI'IPL~/" * AND RESOURCES REQUIRED ANALYSIS HARKS CRITICAL PATH PROJ TIME JOB NO. 2 ;. 2 ,; 3 "D * ~ * ACTIVITY DESCRIPTIUN C~ITICAL SCHEDULE FOR PATH/CUSTING/PLOTTING ~OOSTER START END T Ir'IE EARLY NODE NODE EST. START SYST~M PAG~ PUt-!P STATION EARLY FINISH 7 GRADE SITE 4 2 2 2 4 7 CANNOT BE RUN - TOTAL REQUIREMENT GR~ATER THAN-AVAILIBILITY 11 CUT+STUB-UP PIPE MAIN o ·l.ATE START LATE FINISH FREE FLOAT TOTAL FLOAT 7 9 0 5 4000 2 3 3_ eST. CUST TOTAL THIS CURR AVAIL JOb TUTAL 3 7 3 3 6 7 10 3 4 3000 2 1 4 4 7 1 4 5 9 10 4 5 1000 2 2 '3 2 1 3 2 2 1 2 1 0 2 4 4 7 9 5 9 CUi'iPLt:TED 6 11 CUl-/,PLETEI) 9 18 FORH+PLACE 7 8 3 9 12 10 13 0 1 '6=»00 2 2 12 12 18 CONPLETEI) 19 CURE 8 11 5 12 17 13 a 1 1 ~oo 2 2 2 18 2 2 17 19 2 2 0 19 26 COMPLETE PIPING 18 22 5 19 24 21 26 2 2 4000 2 1 1 21 21 INSTALL ROOFING+SIDING 14 11 3 21 24 21 24 0 0 5000 2 1 2 24 26 COMPLETED 2 1 0 24 27 cor'! PLE TE I) 2 1 0 26 31 PAINT 2 1 1 28 31 2 1 0 COhPLt:TEU TR~NCH FOUTINGS CUMPLt::Tt:1) CO/';PLETI:D 21 25 2 26 28 26 28 0 0 ~ooo tJ SRMPLE OF R TIME SCRLED PLOT FOR R BOOSTER PUMP 'STRTION )TIME ESTIMATE ~!~t~ ~T OK ~E+OELIVER F I T ELECT MFiTLS ~OVT OK ~+OELIVER Fe ,ROCURE+OELIVER S.· 5 FIT FLBG MFiTLS - - - - FLOAT T I ? -- - -- --- - S OK - - - - - - - - - - - - - -'7 .eT _ _ _ _ _ ~ETE PIPING I _ a .,.,,,e. RECT _STR _ ,Tl: _ ___ Z.aS'tALI.. CooF'11tI4. __ - ~~~-as - I 11 =-, _ _ ~~Iw'C( ""~'1' "'....". E .....", .2 S ""'$'E'AINT SItlSt'AI." "AIJJ&.S ~~---..:r----~Efl ......... ~ ~ FIT CONe MFiTL5+MIX . F OIl- AORM+FLRCE ~ _ -" NOTE: 1 CALENDAR DATES MA Y ALSO . DE ::!:!!::> reILI~'" "ST~1.RE. NOH FOOTINGS ...... Ii~Il.w.'t S------- _7 Z '!"lME SC..AL.ES ARE VARIABLE rw: , F+5TUS-UP PIP!. ~!!:' WORK DAYS __ -, ) o 5 10 eo 15 SCALE lIZ . INCH ~ PER WORK DAY es aD t%1 ~ o o MRNPO~ER G REQUIREMENTS RNRLYSIS 0 -, ~ ~ ~~ f ~ I ~ -, ~ I ; a Il- , S -I § I ; \ a I Il- I , S 0 -, ~ ; ; a ~ I- , 0 -I a ~ u ~ :it ! f - , s .', ' " SCALED RATIOS ~ ! r;::~ I~ o ~ d., _Ui r ~ ,! Q .. I I ADfiQUATE _ "--_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _- - ' ~INDICATES RESOURCES -I .9. ~ n AV..... BLE'l'OREQU.. C"" INDICATES INSUFFICIENT RF.soURCES I ~~---- f"AVMLABILITY REFERENce LINE I~------~----~~------~~----~------~----~ -.. PROJECT-NO. 1100 --Jtji:r---"l)B1:lfJlfT 101~ NO. EST. . ON IT QUANT. P'£{aGR"ES""S.HTS--pERIOO---- 'QUANTITIES THIS TO ~ERIOD DATE ----------------------------------________~J~GORy CURx-ENTtur;ipTe-nU,'4---10i31165--'------------PAGt - 'Oul VARIANCE KEPORT FOR PERIOD ENDING 07/12/65 COST 0/0 THIS CMP PERIOU (J t:ST HiATE PERIOO----,.oOATt: EST. 40 40 40 WKS WKS WKS 2 2 2 ?4 24 24 60 60 60 219.09 200.0000 109.5450 162.1400 4800 .00 8.7500 .0600 10.~833 210 17.65 62.5_000 8.82S0 1~!..~9~?"'._..!"?_Q..~ _____T!JJ~ ~~~£_9ii_r;:A T~.:..:G:.::O~R~Y_0:::.:0::...:1=___________________________, ACt. VAR. EST. prftU.--VA~.----,T ----_._-------_._._._-_._..-._. _. ---------_.... _--_._--_ ..- -.•...-'- ....... 001,~J~O~B_O~V~E~R~H~E~A~D___________________________ .______ 001 SUPERVISION 002 FIELD OFFICE _____ ..99_L~~lL~ING _____ -0 oNI rt"OSTS------··--c;OSTS--«r--riATE· -- --TOTAL' iO'-COi-iPL ET~ ~ __ ._ •..... 3891 909 ;'000 6480 1514 H~ 1:>4 (44)--3~O~-:;---·-(73)t:i -l6?___~_!.~~ __ ~~..9~ _____ ~.b 1.f'.~~ j.!:.:: _.___' 651.Q...._._4;1_~_._. __~.Q~_~_J.Q_~.=?Q_._ ..?.~.1_~ -: .. _ ~?i33 236.74 CATAGORY 002 CONCRETE nURK ______ IAS~OO"!._!.!LTUP ~"ALlS AND CUlUrilN JOINERY (INCL. 081 FORMWORK ~ ADU 1/2 ~EAM ---oa2"-Ai-"icHOiCSOi-YSFOR UPPER COLS 083 ANCHOR BOLTS FOR UPPER BEAMS - - .084PLACE -CONCRETE (3000LBS) 085 GROUT. BASE PLATES ---086"'S-ACj(-;rN"()--PA'n~H l'lALLS TU 087 8LOCKOUTS.FOR STEPPED FOOT. --- TOTALS FOR TASK 007 17 11 18 44 29 9300 5 LF SETS SETS CY EA SF EA ;OISUN~AU!:.!.L ___________ ._ _ ,___ _ 0 0 0 0 0 0 0 17 100 .00 1.5000 .0000 .0000 26 0 26 .26 0 fn()()--.Oo--3·:-o6oo---;-(5(H>O-·--~-;·Ol.ni(r-___:fS--fl'----O---'-'-3'~'-""-' "3~': 2.0000 3.5000 2.5000 .0000 .0000 .0000 1.8700 7.0000 .• 0000 36)4 36 2 19 27 36 1!>2 73 4£ 0 35 35 0 I.Sl:wO 1~2 73 1.4~30 03 .0000 3~ 34 7~ ----;-03(1)-----;"O"(rO"o----;;·03"2 6------,:-go---w6-- - 'f 16T'- --.. -2 7 9 .. -.---.-~ 15 _-: 26 y,,: 2 y. o y 79-'1* 31 r.!* "'(36) 3~ Hi,: y::.: 137 .0 TASK 009 FIRST FLOOR SLAB INCL. EUISON VAULT ROOF 150 (134) y~: ·140 el2 J Y 154 IF 20 154 100 131.69 1.7000 6.6100 2.7440 262 423 423 (161) V:;. 115 LF 150 260 226 .00 : 1.:>000 .0vOC 0.0000 1/3 bo ~-l"5-T33~ LF 100 280 81 57.67 1.2500 • .5800 2. 7890 3~0 liS 0 935 ( 510) I">:: ~. 1~~A~K~~~~r~~-~£00--~~-~T-~·~U~---~55CJ--O;3180--~~O--~3r---~glT---365··· 463'-·" (98) NO . 107 PLACE CONCRETE 329 CY 136 354 108 277.64 1.8500 2.0l~OO 2.0200 610 1l!:) (10~) 610 71~ ( 10:» v::,; -·-x-O-rFmrSW-A"No-CORC 30183 SF 12lt"O-u--3Z"8"01JIUo-3Z3--;-n---;-O·450-·---;uZ6-r-----;-035·0----1"38S- --"1150--"--235 --"-136~ . -1150 235 i':::: 109 RUI\jLiAYS 32800 SF 26000 32800 100 '20.40 .0100 .0075 .0070 328 231 97 328 4!31 97 Y ---'--rI"Tl7'l'"O--:A=iitROlr'BO[ I S O LS 0 0 0 .00 .0000' • 0000 • 0000 0 0 0 0 -0 --0-'-- N 095 SCREEDS --090rORiiifTORK"-:;;-UEl'RESSED EDG ES ........... 097 FORf.lHCJRK - BE At·i - SOUTH ~. 098 FORI'iWuRK - ImkTh MiD EAST . 099 FORt·i\.,URK - BEAN AND CURB 30783 SF 24000 ·-tOT"ArsruR lAs K 009 ---:-....,.orA--cr-FUi{ 71500 232 171.05 .0200 .0071' .0105 616 150 (134) 616 ( 12) ....... t 2R (161) 262 15 113 ( 431) 419 'ltZ:r-LF------rs-(J--·-47CJ--rr(J-'-Og-;-65-----~3CJOCJ---·;735v-·------_;Z980'-'---128--'-'40'-"'-'-- ------------uSz.-;Ult -r28"~ CATAGUKry02 ~19z--.ncr---C587r---·4ZS6-·-· 496~ ·'(679) 7t7IT----nScr··---·-t434 t-"'4920' . 5462 .". -t 542) ------------------------:----------------------------------------------------------------------------,---TYPIG~AJ;L o PROJEC T COS.TING-{;GNTROh RE-POR-'r- - _. --.. . -.- . - - - -..-----..:--.-... ---.-.......-..... :..-...-~ .... - . o o ::r: o SOLUTION OF A PROBLEM IN HEAT TRANSFER J. C. Caslin, H. E. Fettis and J. W. Goresh In studying the effect of varying wall conditions on heat conduction in a fully developed turbulent gas flow in a long tube, it is necessary to solve the partial different~l. ei.uation a { (1-x') ax ae =" x'l x I\. ae (1) trB" The equation must be solved subject to the conditions ae + ke = 0 ) "lfj{ o and e at X= X= 0 (2) 1 be finite. Here A. is a physical parameter depending on the physical properties of the gas, e, a non-dimensional temperature difference, k, a parameter depending on the conductivities of the gas and wall insulation, and rand i§ are non-dimensional radial and axial distances and In addition, the distribution of temperature at e(0, x) = i§= X= (1_r 2 )1/7 • 0 is given as: f(x) (3) The complete solution of equation (1) is approximated as a sum of the series 9 n =1 a. ."1. A e -, r..1iI! n \fI n (x)) (4) n= 1 where the constants A are chosen such that . I'{~ Fn ~n (x: J-f(x>f ' x q o dx (5) o is a minimum. The 1/1 n a~e eigenfunctions of the ordinary differential equation -k- t (I_x" ) d1/l n ) ~ '1- i\ 0. x" 1/1 n rhese and the corresponding eigenvalues (6) = 0 n ~a.n are found by the Ritz method in terms of the 'eigen functions of the equation :x j (I-x") }+ :: [3 x 5 (7) y= 0 which may be solved in terms of hypergeometric functions. The program consists of a simple input-output routine for introducing the physical parameters. In order to find the eigen values and eigenfunctions for equation 7, it is necessary to solve a transcendental equation involving gamma functions. tt o This is accomplished by a root-finding subroutine using False Position" together with a subroutine for generating the gamma functions. These functions depend only on the parameter k. The eigenfunctions thus determined are then used as coordinate functions in a Ritz type analysis to obtain approximations to the eigenvalues and eigenfunctions of equation (6). This portion requires a subroutine which evaluates integrals involving products of hypergeometric series and a matrix eigenvalue-eigenvector routine based on the Jacobi diagonalization method. Finally, the initial temperature distribution is expressed in terms of the eigenfunctions of equation (61,;i* lftaking use of the orthogonality relations for these functions (according to equations (3) and (4»)." 'W'ith the now be determined. An known, the temperature at any value of rand i§ may o 0 :,\' ", oP CRACOVIANS SOME APPLICATIONS by Marco Tulio Rincon Bo Geodetic Engineer Proffessor of La Universidad del Zulia Maracaibo - Venezuela o COMMON WESTERN REGION WINTER MEETING December 6 - 7 - 8 1965 Los Angeles o 0 CQlifornia o CONTENT PREFACE 1• GENERAL DEFINITtONS 1 2. BASIC OPERATIONS IN CRACOVIAN ALGEBRA 3 3. GENERAL SOLUTION OF LINEAR EQUATIONS SYSTEMS 8 3~1. Description of method 8 3.2. THE PROGRAM 14 3.2.1. General 14 Organ~zation 3.2.2. Flow chart 17 3.2.3. Program l-isting and solution of a numerical example 4. SOLUTION OF NORMAL EQUATIONS SYSTEMS 4.1 Deescription of method 20 o 4.1.1. Obtainment of unknowns 24 4.1.2. Obtainment of mean square errors of unknowns 30 4.2. THE PROGRAM 4.2.1. General organization 34 4.2.2. Flow chart 3S 4.2.3. Program listinf and solution of a numerical example. 40 o o I PREFACE. Arrival of calculat ing machines originated a reVolution in numerical calculus and nowadays, electronic computers represent the highest exponent of this marvelous revolutionoThe old classical logarithmic treatment of problems, often long and tedious transformations only to make possible the use with of logarithms, has been substi tuted by new calculating methods which still are in a continuous transformation and evolutio-oD, based on new concepts derived from existence of calculating machineso"Cracovian methods" constitute a good example of trese new ooncepts o At first they were created because of the needs of new methods 0 to compute with calculating machines but very soon, they showed a gre'at analitical power which caused the origin-of "CracOYian Algebra" m~ans of which it has been ~ossible to atta~ka by lot of problems with many advantages over classical methods.Some typical applications of Cracovian Algebra are: \ Direct solution of problems in spheri~al: poligono~etry common in Astronomy. The new method is shorter and very simpler than classical method of decomposition into spherical trianglesoSolution of linear equations systems by means of a typical cr-i covian operation' which makes possible to solve practically systems with any number of unknownso- o New treatment of Errors Theory and Least Squares Adjustmentwi~ very general procedures to solve symmetrical systemso- II In all these applications, cracovian calculus offers 'the following 0 advantages: l~ws and c) Calculating procedures very easy to memorize, lightening in a) A great analitical power verified by discovering of relations in Physics and Mathematics Sciencesob) Brightness and briefness of cracovian expressionso- this way mental effort of calculatorod) Economy of calculations and good propagation of because eTIro~ of compact manner of cracovian calculating schemes which. in a fluid way and using only additions of products, make PQs~bre to shorten the intermediate notesoIn spite of the mencionated advantages, cracovian methods are practically unknowno The capital reason for this is that the biblio= graphy is written in polish, because their inventor, Oro Banachiewicz, Director of the Astronomical Obs~rVatory ,~ Tadeusz in Cracow Poland, and his follower, like Kochsmanski, Sierpinski ani HausbTandt~ are all polisho However, in Venezuela and thanks to the interest of polish~fo Ing? Bernardo Wahl, two articles written in Spanish have been pOOlishw~ "Calculo de Cracovianos" (Cracovian calculus) and "La Aplicacion del Algebra Cracoviana en el Cilculo de Compensaci6n" (Application Cracovian Algebra in Least Squares Adjustment) 0 These two of articles, published by the Engineering School of La Universidad del Zulia j constitute the basis of this worko- o ,wtt'C!!!ttlfttrY!I:!efmreerrr-:: '7 III Two programs developed to solve 'linear equations systems by means of cracovian calculus, are described in this worko The first one is applicable to general linear systems; the second one is a mo'difieation ,'1..:, 0( .,. ,.r . . ~.I '. .• • ! . • Ii '\I I of a program developed by the author in .his special work to obtain the title of Engineer and is applicable only to' normal equations systemS derived from least squares adjustments 0 The last section second program is devoted to calculate the mean s4uare of error unknowns although northameridan geodetist do not consider this calculationo However, if it is poss~ble thisof important to use an electronic computer, it is advisable to calculate these errors which offer a very good criterion of measurement precissiono Moreover, cratovian methods make possible this calculation with minnimum programming e:fforto o All .these programs have been made with aids of an IBM 1620 with 1.622 Card Read-Punch which works in the "Institutode Calculo Aplic,! do" in Engineering SchooloIn addition to the descriptions of the programs j there are two sections about general definitions and 'basic operations in cracovian algebra in order to popularize these methods which, by the explained reasons, are practically unknowno- As it is explained in those sections, "cracovians" are rectangular arrays of numbers which obey to certain operations rules and whose name is derived from Cracow, natal of Dro Banachiewiczo There is a great similitude between city matrix algebra and cracovian algebra; nevertheless, there is a remarkable difference between them derived from the different way to 4C) accompl~h muitiplication: with matrices, this operation is rows by columns 17D II IV while with cracovians it is columns by columnso This fact, apparently o with no importance, is the reason f.or all advantages of cracovian algebra in calculations practice as it can be noticed in the appUcations> described in the present work which are only a very little example of the innumerable cracovian applicationsoTo finish these short lines, the author wishes to thank very much the organizers of this meeting the opportunity to participate in such an active way and to express his hopes of having contributed to the divulgation of these calculation methodso- Marco To Rinc6n 80 -November, o 19650 o 17( 0 1 1 • .,. '. GENERAL DEFINIjIONS 1• 1• (1) "Cracovians" are rectangular arrays, of numbers subj ecti to the rules of operations ,giveri below.'They will be represented by means of the symbols . .. ,"' .!,= • • • • • • • • 0 • • 0 • • ~ • . . . . . . . . . . . . . .0. . • ... b 2n ' ••• The numbers a rs are called "elements of the crac.o.v,ian". The fiIst subscript indicates the column . ,and the s.econd subscript ind:ica1es the row in which the element stands.,~ , In-:::agreement with the "Cracovian Cal,culus N~rms In Computati9ns" dated the 30 - 6 - 1 ~S9 and prepared Geodetic ~ , the "Polish ~ . Committee of Norms", the symbolical repr,esentatio~s of cracoVians are a)'Por";printing, black letters b) In writing by hand or , . 1.2. '" 0 ",". .~ t9~iwtit~r, A cracovian "()f m columns and Ii rows is underlined lettets said to be of order tIm (1) This section and section 2 have been taken. with some modifications, from the article of Proff.s$ors B. Wahl 'and Ernesto Ho Battiste1la "Calculo, de Cracoviartos" published in N: 2 'of the "Revista de laFacultad de Ingenier~a"''''' Universidad del Zulia Maracatbo - Venezri~la- - 1 • 172--- 1 .3. A "square cracovian" has equal number of columns and rows. It is said to be ~'diagonal" when d rs -0 r;, s o o • • o d 22 ••• 0 o • • • • • • 0 • • • II • II II II o The cracovian 1: , or "unit cracovian" is a special case of diagonal cracovian in which d rr - 1 o ... 1 1:• • • • 0 • 0 • • The elements all' a22' • • • • o II ... o 1.4. • o ••• ', ann are call~d "diagonal" elements". The straight line which contains aii'these elements is called "principal diagonal" and is a g~ometrical resemblance that helps to unde;stand many operat i~ns ,. of 1.S. c1;'a~ovian algebra ,,~.&,) " h == 0 == 0 (10-5) o o As cracovian h is diff~re~t fro~ zero, then (11-1) unknow~s The cracovian of is easily obtained fron this craco - vian equation by using the definition of cracovian multipli~Dnt In order to make clear this procedure, it is advisable equation (11-1) supposing 1 g 2' t 21 x3 r\g31 x· 1. r,'·1 X 1· .,v o ." .f.' .' 1 n - t~ devekp 3 0 0 1 0 g32 1 = 0 ( 11-2) i'2 that is Xl + g21 • x 2 +' g31 • x3 + x2 + g32 0 ii - x3 + l~ X 9 3 + i 3 0 - 0 - (11-3) 0 Obviously, the'unknowns are· obtained from back solution of this system.By making the substitutions L1 - a n+ 1,1 · (11-4) o - 11 = l12-- and supposing ag~in n - 3,the following equality is obtained t, 4[) " ,~ 8 21 8 31 8 22 8 32 - 8 33 == '. 8 23 g21 g31 h21 1 832 h22 1 0 0 The elements of cracovians ,& and h ( 12-1) are obtained :in the following way: a) The first row of' column of.& h is obtained by multiplying the first by each coltimn of h , so (12-2) It can be noticed that the first row of the first column of h, is equal h is'obtained,:the first row of.,& can be obtained by mul tiplying the first column of I As h 11 == row of A 8 11 o ~ b) Once the first row of each column of to h by .&, so ' the fi rst row of divided by .& is equal to the first all o == 12 == Ir3 c) Using now the second column of • .& , the expressions 0 821- h21 + hll g21 - h31 + - &22 h32 ~ &23 (13-1) make possible to obtain the second row of .& d) The second row of second column of a is o~tarrlid h by mUltiplying by each column of the that is .& , (13-2) e) The last element of h is obtained from c! ( 13-3) and the last element of A from ( 13-4) • a 43 It is remarkable that each element of cracovians .& and h is alw,ys obtained from solving .an equation with an unknown, Moreover, as all operations are additions of pro~ucts, ~:. I they can be acoomplished 1\ with a calculating machine making no notes of intermediate re - sults.In brief, the typical cracovian operation of decomposition into o two canonical cracovians, makes possible to obtain the solution of practically any system of linear equations in a very simple way.- 3.2. o THE PROGRAM. 3.2.1. General organization Q- According to the explanations of preceding section, it is very easy to develop general expressions to obtain the elements & and cracovians first row of h r1 a (14-1) lr & from and the first row of g r1 a a r1 /h r 11. s r - a rs - (g r1 starting from 0 h s1 r == 2 + g r2 •h and s starting from r1 • h .. s == 2 •1 + g and r2 () .t n, n+1 " are obtained from h s2 + ... " + g == r, r+1, and the second and other rows of (g .. .. 2t 3 t == The second and other rows of h the is obtained from h a h. By considering substitutions (11-4) of •h s2 "0" r , r- 1 , n ,S- 1 .. h S , r-1 ) (14-3) & from +. .... + g r .. h s, S -1 )l/h J ss (14-4) r == 8+1,8+2,0"0 == 14 == I f,E)" , n+1 o These expressions allow ihe obtainment of the elements of ~ and ~ h in alternated way: first and element of of &. later an elemEnt , and so on.- "-. In order to save core storage, the program has been developed in such a way that the elements of ~ A and are obtained by- accomplishing a convenient trasformation on cracovian ~ this trasformation has been accomplished, cracovian contains ~ .!. a) over the principal diagonal, the elements different zero of cracovian value i$ always 1 Once 0 from A , except the diagonal elements whose 0 b) in and under the principal diagonal, the elements different from zero of the transpose of That is, supposing o a n a = h • 3 , c~icovian is transformed into .!. 31 g21 g31 a22 a 32 h22 g32 a h32 h33 21 23 a 33 In order to achieve this transformation, expressions (14-2) . (14-3) I and (14-4) have been changed into = r a ~. rs 0 2, 3, Q + a _. a - (a a + a <> a + 'r8 r1 1s r2 2s 0 0 0 ( 15=2) n+1 , r, r-1 0 a r-1,8 ) ( 15-3) starting from r = 2 and 8 = r, r+ 1, 0 Q <> , n o = 15 = / 1'?-. ----===-===";;CJiC4IW&ium==:a: ..... I 1/ I o , j; starting from 8 = 2 and r • 8+1,8+2, _,ItO, n+l ( 16-1) By means of this procedure it is only necessary to keep craco vian A. As explained in page 11, obtainment of unknowns inmediate once the cracovian is A has been ,obtainedo- The flow chart and program listing may h~lp the reader to make clear the whole procedure of decomposition and to study all the possibilities of the programo- o o = 16 = I? 7 3 •. 2.2 FLOW CHART OF PROGRAM' l (General Solution of Linear Equations Systems) m• NUMBER OF UNKNOWNS i ...... SYMMETRICAL 1 COEF FIC IE; NT S NONSYMMETRtCAl.. COEFFICIENTS o .j +- 1 j +-1 J+- J + 1 Oij +- Oji j+- j + 1 i +- i ..fa < < < < 1 .i+-i+l o = == Ma.......m 17 it; WiUWAiUilUlli=====k:& h,4 ,\Lana; " , ..'!f.I4fA4 ,Hf.A .. Mf44T?TA&fMI£¥4RW ",.. o i +-J + 1 ajl+-- ail 1011 J :: 2~ 3'.0" ...... ml S4-- 0 J+--2 k+--l ia+-J-l +-- j k'+- k + 1 i+-i + 1 OJ s..--o t k4-~- 1 Qij .-COij + S}/Ojj < 0ji4- Oji + S "'--_.IIC o = 18 = {fC{ ......-----t" Xi +- - Oml,i - +-- m J ~--,,'+-i-l +-- m s.. 0 = s~s S + . 0"J I X·J J..-J-l ;. 19 - 3.2.3. Program listing and C C C solution.~f a numerical example DECOMPOSITION OF A CRACOVIAN INTO TWO CANONICAL CRACOVIANS AND SOLUTION OF GENERAL LINEAR EQUATIONS SYSTEMS C 1 . 0 DIMENSION ~(21,26), X(26) READ 100 ,M ! PRINT 101,M M1=~1+1 .) IF(SENSE S~ITCH2)2,4 2 DO 3 l=l,M DO 3 J=I,Hl READ 102, A(J,I) 3 A ( I , J ) =A ( J, I ) GO TO 6 4 DO 5 l=l,H DO 5 J=l,Ml 5 READ 102,A(J,I) 6 IF(SENSE-SWITCH 1)7,15 7 PRINT 103 IF(M.... 6)8,8,12 8 DO 9 l=l,M 9 TYPE 104, I TYPE 105·· DO 11 l=l,M DO 10 J=1,M1 10 TYPE 102,A(J,I) 11 CONTROL 102 GO TO 15 12 DO 14 l=l,M DO 13 J=1,~11 13 PRINT 102,A(J,I) 14 CONTROL 102 C C C DECOMPOSITION OF CRACOVIAN A 15 DO 16 J=2,Ml 16 A ( J, 1 ) =A. (J , 1 ) / A (1 , 1 ) 0020 J=2,M IA=J-l DO .18 I =J ,M SaO. DO ,17 K=::l I A 17 S=S-A(J,K~*A(K,I) 18 A(J,I)=A(J,I)+S Jl=J+l 00 20 I=Jl,Ml S=O. DO 19 K=l IA 1 19 S=S-A (K, J~*A CI , K) . 20 A(I,J)=(A(I,J)+S)/A(J,J) = 20 = {cr I C C C CALCULATION OF UNKNOWNS I-H, 21 JaM, .'_ SaO. 22 IF(J-I)23 t 24,23 23 S=S+A(J,I}*X(J) . Ja:J-l GO TO 22 24 X(I)=(-A(Ml,I)-S) I F ( 1-1 ) 25 , 26, 25 25 1=1-1 GO TO 21 26 I F (SENSE SWI TCH 1 )27,44 27 PRINT 106 . I F .( M-6 ) 28 , 28 , 36 28 ONE-l.·,· DO 31 l=l,M TYPE 102,ONE 11=1+1 J==ll,M1 29 TYPE 102. A(J,I) -00 29 o CONTROL 102 " . IF( I-M)30,32,30 DO 31 K= 1 , 1 30 31 TYPE107· 32 PRINT 108 DO 35 l=l,M DO 3 3 J ==1 , M , 33. TYPE 102,A(I,J) IF(I-M)3Q.,44,34 34 CONTROL 102 DO 35 K=1, I 35 TYPE 107 36 ZERO=O. DO 39 l=l,H· PRINT 102,ONE 11=1+1 DO 37 J=ll,Hl 37 PRINT 102,A(J,I) CONTROL 102 . I F( I ....M) 38,,40,38 38 00 39 K=l" I -, 0' 39 PRINT 102,ZERO o = 21 = ,12=====W4I.4liMh&JMAtUMi"",,· •.,.,. ""' MailZA.t::,,.!,!'":· 40 PRINT 108 . DO 43 l-l,M .00 41 J-I,M 41 PRINT 102,A(1 J) IF ( I-M) 42,44, 42 42 CONTROL 102 . DO 43 K-l, I .43 PRINT 102,ZERO 44 PRINT 109 DO 45 l-l,M 45 PRINT 110,I,X(I) PAUSE GO TO 1 100· FORMAT (14) 101 FORMAT(/ll0HUNKNOWNS - 13) 102 FORMAT(El'.4) . , 103 FORMAT(//25HCOEFFICIENTS OF EQUATIONSII) 104 FORMAT(4X2HX{,12,3H ) ) 105 FORMAT (3X7HC •... TERMI I) 106 FORMAT(//11HCRACOVIAN GIl) 107 FOR~1A T( 11 X) 108 FORMAT(//11HCRACOVIAN HII) 109 FORMAT(/II0X8HUNKNOWNS/I) 110 FORMAT(2HX(,13,2H)-E".4) END = 22 = 11 '3 o o 6 UNKNOWNS = COEFFICIENTS OF EQUATIONS xc X( 1 ) 2 ) x( 3 ) X( 4 ) ~6518E 03 -.2392E 03 -.1196E .9460E -.9390E .7420E 03 02 02 02 ~5800E 02 .8867E -.1922E -.2260E -.5150E .3720E .9460E 02 .1880E 03 04 -.9610E 03 -.2260E 03 04 .2439E 05 .4740E 03 03 .2370E 03 .4810E 05 03 -.2410E 04 -.2370E 04 03 .5920E 03 -.4030E 04 x( 5 ) .1480E -.5150E -.4820E -.2370E .7860E -.1284E 03 03 04 04 05 05 X( 6 ) .5800E .1860E .5920E -.2015E -.6420E .1585E 02 03 03 04 04 06 c. TERM -.4315E -.1885E -.8270E -.1200E -.5250E -.3350E 03 03 02 03 02 02 CRACOVIAN G .1000E 01 -.3669E 00 .1451E 00 .2884E 00 .2270E 00 .8898E-01 -.6620£ 00 .1000E 01 -.1069E 00 -.2170E-01 -.5529E-01 .2228E-01 -.3033E-01 .1000E 01 .1678E-01 -.2045E 00 .2588E-01 -.3198E~02 .1000E 01 -.4816E-01 -.4170E-Ot -.3935E-02 .1000E 01 -.8276E-01 -.4539E-03 . • 1000E 01 ~.1880E-04 CRACOVIAN H .6518E 03 -.1196E 03 .9460£ 02 -.9390E 02 .8823E 04 -.1887E 04 -.2604E 03 .2417E 05 ~2227E 03 .4811E 05 '.7420£ -.4877E -.2472E -.2360E .7793E 02 .5800E 02 03 .3932E 03 04 .6256E 03 04 -.4048E 04 05 -.1289E 05 .1572E 06 UNKNOWNS X( X( X( X( X( X( 1)= .6715E 00 2)= .3079E-01 3)= .3225E-02 4)= .3957E-02 5)= .4554E-03 6)= • 1880E-04 '0 = 23 = ._£Milia t ..io.'.i . LQU.. ' ·.j~,il' " I -.I I 4. SOLUTION OF NORMAL EQUATIONS SYSTEMS 4.1.' Description of method o - o Q 4.1.1. Obtainment of unknw.Dso App~ication of least sguares adjustment leads to linear equations systems of symmetrical coefficients called "normal equations systems·'. Although in this case it is also possible to use the method of decomposition into two canonical cracovians explained in section 3, it is advisable to use a spe- cial method which provides the possibility to obtain the mean square errors of unknowns in a very simple waYo~This special method consists in decomposition of cracovian of coefficients into two equal canonical cracovians and it is called "the cra covian root method"o- o The system of error equations v. = 0000 + g.oX 1 1 m + l 1. (24-1) i = 1,2,0000 , n may be written very conveniently in cracovia.n notation as v = x • 'ta + l (24-2) l 0 = 24 = ,. "Iij I ,~ , ,j I,:' in Which b ••• 1 b2 :x. = ••• ;~= • • • •• • • • •••• •• b ·... n Jntroducing the diagonal cracovian o = • •• 0 (25-2) • •••• • • • ••• o () in which the p. are the weight coefficients of observations, 1 it is obvious that cracovian expression '':"'. ~ • [ (!; 0 I!J 0 .!J + t' 0 (Z5-- 3) (.! • l!.)' = 0 represents the normal equations system deTived from system -( 24-1).- Making the substitutio'ris -a L = .. t 0 (!! 0 :e,) (Z5-4 ) o = Z5 '= £&&&&2?1klikU=: ;:;,,",# ,a: "A. ,uaat '11", ;,;" _ I .. g4AQG,.,#AMJ, ,. . !n: i I expression (25 -3) becomes x • o A = L + 0 (26-1), Developing this last equation, the following system is . ....,. ~ All· xl + A21 • xl + • • • • • • 0 • A m~ 1 xl • AZ1 • x2 AZ2 • x 2 0 + • • • • • • • + .0. + + eo. + • • • 0 0 • ... + A ,m, 2.x2 0 0 Am , lox m + Ll = Am , 2 0x m + L2 = • • • • 0 0 e 0 0 A oX m,m m + 0 0 0 0 0 0 (26-2) 0 Lm = + 0 0 where, in agreement with classical Gauss notation All = [paa] ; A:21-- 'FpabJ A: 22 o 'Arn, 1 = Ji>ag]; L 1=[ P a lJ .00 = [pbbJ and so rn'=m +1 and Li= Am' , i; then the normal equations system Let , (~6 -2) may be enlarged and transformed into A Zl A m, , . •xl',+ A 2 + ••• + A21' . • x"l + A 22' ' .x2 +0 • 0 + A m, 1.: oX + Am' , 2 ' ~ All ~ .x,+ ••••• A ,.,. m , 0' • • • x, 0 +'A ••• •x 0 •• 0 mt , 2 x 2 0 0 • 0 0 000 0 0 •••. 000 0 0 0 0 000 0 = 0, = 0 0 (26-3) = [pvv] +00. = ~ m' , 1 26 = o o The la~t added equation,. equivalent to the known relation [pal]' xl + [pbl] x2 + •• , t [pgl] ~ + .[ pi!] = [pvv] will provide the very important control of [pvvJ as explained later.- Introducing the cracovians A A ·A A , 11 21 22 21 x' = x m A ••• A m, 1 , m,2 m,m m,2 m, 1 A m' , 1 0 A m' 1 A At= • • • • • • • • • • • • • • • • • • • • • A A A • •• A 1 0 ••• 0 C = 00. 0 m',m f:pvv J A A ••• A m' ,m m' ,m' m' ,2 system ( 26 -3 ) may be wri tte-n as x' • A' {27~ .£ = 1} CracovianA' may, be decomposed into tW{) e{fual canonical cracovian's such that A' = B B = B2 (27-2) As cracovian At is symmetric, according to '2.11, page 6 o = 27 = tll! #£4m.u.::aW::tI")#.#,,.,1. $ " ________ . ... ' ' ' ' ". . . . . "., . -"----------------.w~~~-~--~~-------------~"'-""'''~ B 21 B 11 B 22 0 B = • o • • • • • 0 • • • 0 0 0 0 • • .0. • • • • • • • • • ... ... B m, 1 B B m,2 B 0 • • 0 0 mt ,'I mt ,2 • • • • • • B 0 B mt ,m m,m B mt ,m' 0 The elements of cracovian B are obtained by applying the definition of cracovian multiplication by means of the following relations Bl1 = R,; Brr = VArr ·r = B = rs - 2»,,3,. 11 r1 • Arl / All 2 2 Br2 (B rl + o ... ... = r 000 + 2,3, .. 0 0 , (28-1 ) m' o B2 ) r , r-1 , m' (28-2) 00. starting from s = 2 and r = s + 1, OF- "- 0 (B • B) (!o' • 'tB) • B = 2~ 000 , m' (lS-7J) Introducing (27 -2) into (27-1) x' s + - c = C o 28 = I I I I I ,I !, Multiplyng both sides by ~B-l o .. \ According to 2.7, page this ex,Tession may be written S, as • 1:8). ('rB -1 • ':i ~). (.!. ' (!.;' • ?;'B) • ~ = C •n -1 £.. 't'~-1, = that is = . .£. x' .?fB ')fB- 1 (29-1) ,/ then C' • -1 o Bl1 • •• y 1 ,m' o o • •• y 2 ,m'. ... [pvv] • o = o • o • • • • • • • o • • • • • • • ... -1 Bm' , m' . o = 29 = "':.;UdlUUZ":',.$".WM.44., . ,.. ,%';.1.# II I I Developing (29 -1 ) , the following system· is obtained 0 B11 • xl + B21 • x 2 + • • • + Bm, 1 0x m + B22 • x 2 + .0. + Bm,2· Xm + • • • • • • • • • • • • • • • • • • • • • • 0 • • Bm' , 1= B = m" 2 0 0 • 0 • Obviously, unknowns are obtained £rom • • • • b~ck • • • • • solution of this system and the last relation gives the sOhtrol 82 = (pvv] m!· ,m~ It is remarkable that cracovian of normal equations coefficients is equal to the square of ~Tacovian o of error equations coefficients which is different from zero o Thus, it is always possible to obtain the cracovian root in case of geodetic prQ blems.4.1.2. Obtainment of mean square errors of unknowns,,Mean square error of unit weight observation may be obtained from m = V[PVV] / (n - m) (30-1) /y'n - m' (30- 2) 0 or m = B m' 0 ,Tn' . o = 30 = I,' I: I 1"1 o Weight coefficients are then used to obtain m~an square errors of unknowns from = mo VQii I (31-1) If F is a linear function of QnkJ:lowns such that o 0 . 't"'., F o The normal equations = x + 0 f.x m m (31-2) ;: .. f (31-3) sr~"tem" i . c"as'e:"of uniform weight opservations may be writt"en:f as (31-4) x Multiplying bo~h sides by (!?) -1 + (t 0 a) 2 _1 0 (~) o = 0 (31~S) (31-6) o = 31 = / ===I4.LM"S"MmeJklMltUu(.· ," \ @¥Ph?, ,.PMg .,WM ",- ..~~ 'I I ". o Introducing this value of x in (31 - 3) F = {- F = .. Application of law of errors propagation leads to m2 F = m02 o { = m02 o = m02 · {fi· f.era - (a- 2) -1 - 0 (fr -L (.!,2-1 ) 0 o ] }2 ?:a J~ f} - - (.!,2)-1]. f } This expression may be written as o (32-1) To obtain the mean square error of xi it is only necessary to stablish F = x. , that is 1 0 0 f.= 1• • 0 1 in i-th row 0 o = 32 = Expression (32- 1) becomes o m x = m = m0 0 ~-1) JCf. -1 f. . -1 i ~ 11 This means that weight ~o-efficient of i-th unknown_is equal to the element of the inverse of cracovian of coefficients 'which stands in the i-th row and column, that is to say that diagonal elements of the inverse of cracovian of coefficients are the weight coefficients of unknownso- 0 1 ,,~ Calculation of thtse elements is made in a very simple way by , calculating first the inverse of the cracovian root of A because = (53=1) and obtainment of the inverse of a canonical cracovian is inmediate .. Let Q= B- 1 ; then, the ernements orr = lIB Drs = o of 0 are obtained from rr if r s rs = startin from r =1 and D o = 33 s = r + 1, r + 2, 000, m = ====.iTAa.,,::.::: ~;,HiWiA#.@~.¥. ¥"P;'P. - - " 4.2. Tb.e program 4.2.1 General organization o In order to save core storage, the program has been developed in such a way that it is only necessary to keep coefficients 0\£ normal equations in and over principal diagonal by means of an unidimensional arrayoThe correspondence in nomenclature is in which In t = r + (s - 1) (m + 1 - s/2) the first part of program, the CRi are transformed into o the elements of cracovian root and the unknowns are obtainedo In the second part, the CR i are again transformed into the elements of the inverse of cracovian rci'ot and the mean square errors of unknowns are calculatedo'\ Flow chart and program listing may help the reader to understand better these short = 34 explan~tionso = o I.• 4.2'.'2 > FLOW CHART OF PROGRAM II (Solution of Normal Equations Systems) o m = NUMBER nobs = " OF .. UNKNOWNS OBSERVATIONS CONOITIONATEO OBSERVATIONS INDEPENDENT OBSERVATIONS o ml+-m'+ 1 m2+- 2.ml nx... (m+l)(m+2) nx = NUMBER OF COEFFICIENTS OF NORMAl. EQUATIONS OVER PRINCIPAL DIAGONAL ! CR1+-V CR1' CRi 4-- CRi/CRl o i= 2.3,: ..... ml _a=-Wi.tUnk a:U$MM4A 7A .. ,,%4&,9&&.¥;::O, i..--i+l k~k+ J .. 1 o 2 i2 +- (l-l){ m2 -.e) /2 i<1 +-- i +i2 ka '--J+i2 i CRk.-CRk - CRkl· CR k2 ,,2, ........ i 1 J 'II .e= k+- i +(J ... l}(m2-J) /2 k3+-k il +- i-I < kl4- i .. (1-1 )(m2-f)/2 CRk+-CRk -(CR kl)2 .e= o ',2, ......... il J4--J+l CR k1-- VC'Rk < = 36 = o o i.~---m J4 ..-__----1.- k+-ml til kl4-- i + il m i 1 +- (i -1)(m2-i)/2 A4 0 i.-i-l k+-J+il mo+- CRnx/Rn A+- A+ CR k • X j m0;: MEAN SQUARE fR OF UNIT WEIGHT oeSER J+-J-l o = 37 = 2-O? ;===£M&@ ':,,"421 1m .M#¢R. ," ,**4-.,1----'· o i+--i+l i 1 .... (i - 1)(m2-i)!2 k +-- i + il o J<4-J .. l k+-k .. 1 i2+-J -1 ka4-Jt (J-l)(m2·-J),I; A4-0 . kl+J +(t.. l )(m2-~)/2 ka-.e+ it A.- A-CR k1 .CR k2 ~ ;'j, i +I............ i ~ = 38 = o I".J 8 0) ..-----ooot~M m6CR nx/JnobS-m' ~, ~~ 1 k +--ml H i. 1 i• ~ . ~ H A~ 1 0 mX4--mo.~ H i J~ .. PRINT ~ A4 0 "A + (CR .. Xi 2 t mx, CR k e) i+- i +1 , ml+--ml-l 4~ .e +--.e+ 1 k4- k+ ml J'-J+l 'H J ::m < < i::m = = .. , CR,,+-- A PRINT mo H .e+-~+ 1 .. , i :: m 0 < = = 39 = 2/0 AWA_===IUkUW;:::m",a",,:t,,1I tui..,,;,. , ", .#!ifdLffw.;;;; ,--1.'; .,.14 ~ I 'I 4.2.3. Program listing and solution of a numerical example CRACOVIAN ALGORITHM FOR SOLVING NORMAL EQUATIONS 6-11-65 * PDQ FORTRAN C C C o DIMENSION CR(496)t X(30) IF(SENSE SWITCH 2j2,3 2 READ 100,H PRINT 112 TYPE 100,~1 GO TO 4 3 READ 100,M,NOBS PRINT 103,M,NOBS 4 M1=M+l 1 ~12=2*Ml 5 6 7 8 C C C 9 NX=(M+2)*(M+l)/2 DO 5 l=l,NX READ 101,CR(1) IF(SENSE SWITCH 1)6,10 PRINT 106 1F (~1-6 ) 7 t 7 , 9 DO 8 1=1 ,~1 TYPE 107, I TYPE 108 EXECUTE PROCEDURE 300 CRACOVIAN ROOT Q 10 CR(l)=SQRT{CR(l» DO 11 1=2,Ml 11 CR(I)=CR(I)/CR(l) J=2 12 I =J K=I+(J-1)*(M2-J)/2 K3=K 11=1-1 DO 13 L= 1 11 K1=1+(L-1'*(M2-L)/2 13 CR{K)=CR(K)-CR(K1)**2 CR(K)=SQRT(CR(K» IF(J-M1)14,17,14 lL~ 15 16 17 18 1=1+1 K=K+l DO 15 L=~, 11 12=(L-l)*(M2-L)/2 Kl=I+12 K2=J+12 CR(K)=CR{K)-CR(Kl)*CR(K2) CR(K)=CR(K)/CR{K3) I F ( I -M 1 ) 14, 16, 14 J=J+l GO TO 12 IF(SENSE SWITCH 1)18,19 PRINT 109 EXECUTE PROCEDURE 300 ::; 40 o = ?-/( o C C C C C C CALCULATION' OF UNKNOWNS 19 I=M 20 J=M 11=( 1-1 )*(M2-1 )/2 A=O. 21 IF(J-I )22,23,22 22 K=J+11 ' A=A+CR(K)*X(J) J=J-l GO TO 21 23 K=M1+11 K1==1+ll X(I)=(-CR(K)-A)/CR(K1) . IF(I-1)24,25,24 24 1=1-1 GO TO 20 25 IF(SENSE SWITCH 2)26,28 26 PRINT 112 CONTROL 102 T=M ECERO=CR(NX)/SQRT(T) DO 27 1=1 ,M 27 PRINT 102,I,X(I) GO TO 39 28 29 30 31 32 33 34 INVERSE OF'CRACOVIAN ROOT .. 1=1 J= I , 11=(1-1)*(M2-1)/2 K= 1+11 CR(K)=l./CR(K) IF(I-M)30,33,30 J=J+l K=K+l 12=J-l K3=J+(J-1)*(M2-J)/2 A=O. DO 31 L= I 12 Kl=J+(L-l~*(M2-L)/2 K2=L+ll A=A-CR(K1)*CR(K2) CR(K)=A/CR(K3) IF(J-M)30,32,30 1=1+1 GO TO 29 IF(SENSE SWITCH 1)34,35 PRINT 110 Ml=M EXECUTE PROCEDURE 300 o == 41 == ._4UU:ni¢[(H4. ,,, ,"", ,4# .. & &..... .4$¥ibffii¥4(1~''.r~ C C C CALCULATI~N ~F WEIGHT C~EFFICIENTS 35 Lal '. DO 3,7 l=l,M OF UNK~OWNS o AaO. D~ 36 J==I,M A-A+CR(L)**2 36 L=L+1 CR (L)=A 37 L=L+1 , 'T==NOBS-H ECERO==CR(NX)/SQRT(T) PRINT 112 TYPE 105 Hl-M+l K=Ml DO 38 l-l,M EHX==ECERO*SQRT (CR,(K» PRINT 102,I,X(I),EHX,CR(K) Ml=Ml-1 38 K=K+~11 39 PRINT "',ECERO PAUSE GO TO 1 BEGIN PROCEDURE 300 IF(M-6)40,40,47 40 L=1 DO 45 1==1 ,H1 D~41 J=I,Ml T YP E 101 , CR ( L) 41 l=L+1 " I F ( I -M 1 ) 42 , 46, 42 42 CONTROL 102 IF(M-Ml)44,43,44 43 l=L+1 " 44 D~ 45 K== 1 , I 45 TYPE 113 ,. ,46 RETURN 300 47 l=l D~ 50 I a1,M1 DO 48 J==I,M1 PRINT 101 ,CR(l) 48 L=L+l " , , ', IF(M-Ml)50,49,50 49 L=L+l " 50 CONTROL 102 END PROCEDURE 300 II: 42 • o II I: 0) 100 101 102 103 105 106 107 108 109 110 111 112 11 3 FORMAT(214) FORMAT(El'.4) -' FORMAT(2HX(,13 2H)==E1'.4,2Et,5. 4 ) FORMAT(119HUNK~OWNS==14/13HOBSERVATIONS==1411} FORMAT(5X10HMEAN ERROR 5Xl0HQ COEFF. II) FORMAT(/32HCOEFFICIENTS OF NORMAL EQUATIONSII) FORMAT (4X2HX(., I 2, 3H » FORMAT (3X7HC.- TERMII) FORMAT(/14HCRACOVIAN ROOTII) FORMAT(/25HINVERSE OF CRACOVIAN ROOTII) FORMAT(/19HMEAN SQUARE ERROR ==El,.4/1) FORMAT(1110X8HUNKNOWNS) FORMAT ( 1-1 X) END I Q o = 43 = .:====AtUmu":Jt6tt; n,. "1" T .... ".;;,.".# ..•. .UNKNOWNS- 4 OB~ERVATIONSa 8' o COEFFICIENTS OF NORMAL EQUATIONS x(. x( 1) 2) 4) X( 3) X( C. TERM \ .1200E 02 - •. 2000E 01 - .. 4000E 01.0000E-SO - •. 2000E-01 ~6000E 01 .0006E-50 -.2000E 01 .S600E 00 .2000E 02 -.7000E 01 .2020E 01 .1700E 02 -.2560E 01 .2176E 01 CRACOVIAN ROOT .3464E 01 -.S773E 00 -.1154E 01 .0000E-50 -.5773E-02 .2380E,01 ~.2800E 00 -.8401E 00 .2338EOO '.4311E 01 -.1678E 01 .• 4821E 00 .3671E 01 -.4233E 00 .1307E 01 INVERSE OF CRACOVIAN ROOT .2886E 00 ~7001E-01 .4200E 00 UNKNOWNS .8186E-01 .2728E-01 .2319E 00 .S344E-01 .1086E 00 .1060E 00 - .2723E 00 MEAN ERROR ... . .'Or .• 2044E ... 2842E .,1667E .1780E X( 1)= -:.3154E-01 X( 2)= - ... 6540E-01 X( , 3)= - ... 6694E-01 X( 4)= .1153E 00 Q COEFF. 00 00 00 00 , .9779E-01 .1890E 00 •. 6503E-01 .7419E-01 .. MEAN SQUARE ERROR .. • 6537E 00 o = 44 = 2/~ o MRI PLarTER SUBROUTINES by David A. Bingham Dean W. lawrence o o &&2&&==4.=,$.l"r;~.,,,g,.,m"'r"'''''' $$ ._-- t. $.#.-.;.': o MRI PLOTTER SUBROillINES I NrR ODUcr I ON This set of plotter subroutines is provided in the hope of eliminating much of the redundant effort that has apparently been expended in past uses of the IBM 1620's on-line plotter. The set is built around modified versions of the IBM-provided PLOT and CHAR routines. The MRI versions of PLOT and CHAR offer the following features: Both can be used as LOCAL subroutines. Changing directions of lettering the CHAR routine takes less than 1/5 second. The PLOT routine can be reinitialized without having executed a CALL PLOT(7) statement. The PLOT routine can move the pen to any location without dropping the pen when the move is terminated. o New graphs can be automatically started above) below) and to the left of the present graph (as well as to the right). Up to nine unique characters can be used to plot points instead of the standard + character. The write-up on PLOT and CHAR is essentially that found in IBM publication No. C26-5841 with appropriate changes. SUBROUTINE PLOT The following definitions apply to the terms used in the description of this subroutine. All X and Y values are to be expressed in inches. 1. XMIN : : ; minimum X value to be plotted. 2. XMAX ~ 3. XL the required phYSical length of the plot in the X dire cti on. = maximum X value to be plotted. 217 0 o 4. XD = X increment to be indicated on plot outline XMIN)/INC, where INC equals the number of increments desired. = (XMAX - 5 • YMIN 2. minimum Y value to be plotted. 6. YMAX":' maximum Y value to be plotted. 7. YL = the required physical length of the plot in Y direction. 8. YD = Y increment to be indicated on plot outline YMIN)/INC, where INC equals the number of increments desired. = (YMAX - 9. IC = control integer which must have one of the following values: 1, 101, 201, 0, 9, 89, 90, 99, 7, 70, -7, -70. See "Use of Control Integer" under the specific Programming Procedure in question. Choice of variable names for the above information is left to the discretion of the programmer, except for the restrictions that the control integer must be a fixed-point variable or constant and the rest be floatingpoint variables (with or without subscripts), constants or expressions. Array names must not be used. o The first time the subroutine is entered, scaling factors are calculated and a plotting outline or grid is drawn governed by the control integer IC. During subsequent entries into the subroutine, the X and Y coordinates of a pOint are scaled and the point is plotted governed by the control integer. After all points have been plotted, the subroutine is reinitialized for a new plot. In brief, the subroutine has three sections: 1. Framing and scaling 2. Point-to-point plotting 3. Reinitialization Each of these subroutine sections has a set of control integers (IC) to govern the functions of the subroutine. Framing and Scaling Section In this section, two scaling constants are calculated and a plot outline or grid is drawn governed by the control integer IC. The subroutine calculates these scaling constants as follows: o 218 ",«IIMAI -. ;, i,e Lt... .4. 4., &Fe' XL ex = X scaling constant = XMAX-XMIN cy =Y scaling constant o = Y.MAX:~N These scaling constants are then used to scale all X and Y values in the point-to-point plot section. After the frame is drawn the pen is placed in the up status. Use of Control Integer (Ie) One of the following three control integers must be used in this section: Ie = 1 Ie = 101 Ie = 201 o When Ie = 1 is used, scale constants are calculated and a plotting area outline is drawn (Fig. 1). When Ie = 101 is used, scale constants are calculated and a grid over the plotting area is drawn (Fig. 2). When Ie = 201 is used, scale constants are calculated, but neither a plotting area outline nor grid is drawn. (For efficient programming, set XD equal to XMAX-XMIN and YD equal to YMAX-YMIN, when Ie = 201 is used.) The latter control integer is used when a reference frame is already available or when one is not required. 219 o o 7 XMIN, Y MAX YL YO T ~--------XL----------~ X MAX, Y MIN X MIN, Y MIN c Fig. 1 - IC 7 =1 X MIN, Y MAX YO YL X MAX, Y MIN X MIN, Y MIN o Fig. 2 - IC = 101 220 A"W:;:«;; ,MS.•1I15hZ T,,,.lS4### --~, " ·.,twx.- _.' ; . 1/ o Point-Point Plot Section CALL PWT (IC, ICHAR, X, Y) This section of the subroutine first scales a given point (X,' y) to a set of coordinates (X plot, Y plot) as follows: X plot = (X-XMIN) *cx Y plot = (Y-YMIN) *CY 'Where CX and (J'f are the scaling constants calculated in the framing and scaling section of the subroutine. Use of Control Integer (IC) One of the following two control integers must be used in this section: NOTE: The pen always moves to the point to be plotted in the status in which it was left (up or down) from the previous call. o IC = 0 IC = 9 IC = o. When IC = 0 is used, the point (X, Y) is scaled, the pen moves to the resultant coordinate (X plot, Y plot) one of 9 characters is drawn through the point. The pen remains down af'ter the character is drawn. IC = 9. When IC = 9 is used, the point (X, Y) is scaled, the pen moves to the resultant coordinate (X plot, Y plot) one of' 9 characters is drawn through the point. The pen is placed in the up status after the character is drawn. o 221 I.. O ~ll I, Use of Character Control Integer (ICRAR) One of the following nine character control integers must be used: POINT REPRESENTATION VALUE Of ICHAR 1 + 2 e a m 't ~ 5 • 0 S x 7 . S , 9 Fig. 3 Pen Movement Section CALL PLOr (IC, X, Y) This section of the subroutine scales a given point (X, (X plot, Y plot) as in the point-to-point section. Y) to Use of the Control Integer (IC) IC must assume one of the following three values,: o IC = 89. When IC = 89 is used, the point (X, Y) is scaled and the pen moves to the resultant coordinates (X plot, Y plot). The pen is commanded up when the point is reached. 222 i==='UZklki";Z,MMiA,k.A' .MM,."" .... qgn;mnm# .... .¥4.~.;.$$¥iif¥'I4- .... - .. !.,.1 Ie = 90. When Ie = 90 is used, the point (X, Y) is scaled, and the pen moves to the resultant coordinate (X plot, Y plot). The pen is corruna.nded down when the point to be plotted is reached. Ie = 99. When IC = 99 is used, the pen is commanded up. takes place. o No other action NOTE: If the pen up or dawn status is altered manually or by some routine other than PLOT (for example, the annotation routine) Ie = 99 should be executed prior to the resumption of point-to-point plotting. The reason for this lies in the fact that PLOT is deSigned to keep track of pen up or down status so that the pen does not have to be commanded to assume its present status. (One hundred ms are required for each pen up or down command.) By executing an Ie = 99 call, as just described, pen up status is established physically and within the program. Reinitialization Section CALL PLar (Ie) After all points have been plotted within a frame, PLOT can be called to automatically move the pen to a new position pripr to starting a new frame. The following table shows the possible options available: Value of IC 7 70 - 7 -70 calls. o Position to Which Pen Will Be Moved (XMAX + 3. 0", YMIN) (XMIN, YMAX + 3.") (XMIN - (XL + 3."), YMIN) (XMIN) YMIN - (YL + 3."» NOTE: PLOT does not have to be reini tialized with one of these An alternative would be CALL PLOT (89, X deSired, Y desired) ..) CALL . PLOT (1, These two statements would start a new frame at the point (X deSired, Y desired). 223 o o PLOT PROGRAMMING PROCEDURE Prior to calling the PLOT subroutine, the programmer m~ determine and place in storage the XMIN, XMAX, XL, XD, YMIN, YMAX, YL, YD, IC, and ICHAR information as previously defined. Access to the PLOT Subroutine The PIDT subroutine is accessed by the following statement: CALL PLOT (IC, LlST) where IC must be equal to 1, 101, 201, 0, 9, 89, 90, 99, 7, 70, -7, or -70. LIST depends upon the value of the control integer (IC) as follows: If IC = 1, 101, or 201, LIST must contain XMIN, XMAX, XL, XD, YMIN, YMAX, YL, and YD as previously defined. If IC = ° or 9, integer), LIST must contain IeHAB (the character control X, and Y where X and Yare the coordinates of the point to be plotted. o If IC = 89 If IC = 7, 70, -7, -70, or 90, LIST must contain X and Y where X and Yare the coordinates of the point to be plotted. or 99, LIST must not be used. The actual names of the variables are unimportant as long as IC is fixed-point variable or constant and LIST is made of floating-point variables, constant~ or expressions, except that array names must not be used. a Because of the makeup of the subroutine, the first time it is entered the following statement must be used: CALL PLOT (IC, XMIN, XMAX, XL, XD, YMIN, YMAX, YL, YD) . where IC must equal 1, 101, or 201. After the initial statement has been executed, the subroutine can be entered at any time by one of the following three statements: CALL PLOT (IC, ICHAB, X, Y) CALL ProT (Ie, x, Y) CALL PLOT (IC) o 224 wa., ;ax:.::aA, ;. J£U:'.144 .4", __,'~ I i o III III V III III III / III '" III '" I!J III III 1lI'/ a// I!J~V a~ IC ICHAR / / =3 C7 / v / / V IC V V / V V .V [::7 /V V V V" 101 !CHAR = If o Fig. 4 - Plotter Options o 225 i ,~ I, o SUBROUTINE CHAR This relocatable subroutine is titled CHAR. As a. subroutine, it allows a FORTRAN II or FORTRAN II-D program to plot letters, numbers and all FORTRAN special characters from information supplied by Format statements • ./ Program Description The CHAR subroutine uses the typewriter I/O subroutine from the When the CHAR subroutine is called, it modifies the typewriter I/O routine to perfor.m the lettering function and restores it when the function is campleteo The position of the pen, at the time CHAR is called, is at the lower left-hand corner of the character to be drawn. Because the infor.mation to be plotted is obtained from For.mat statements furnished by the programmer, actual variable values can be plotted at object time. FORTRAN II or FORTRAN II-D Programming System. Each character that is plotted is represented in the subroutine by a string of digits. These digits, when transmitted to the plotter, cause the proper pen and paper motion required to dra.w the desired character. The same string of digits is used for all character sizes and for horizontal or vertical displacement of the character. Horizontal or vertical pla.cement of characters with respect to the X axis is accomplished internally by the subroutine. The conversion fram horizontal placement to vertical placement or fram vertical to horizontal, requires less th~~ 1/5 second. When all of the specified characters are drawn, the pen is returned to the starting position with the pen in the up status. \ \ \ o 226 __ ~_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _AAi_____ m:,11I'lI!iii.l!ll!!lliJiXii\lllla;!IIII/I!;::;""":!'-.• 'I'!l'.,!!III!' , ::.U.ii!!llllU12ft1!.Itm"".!II"I¥"",.III!!II!_!!II!I .. .1IIWi_P~ -!!!III!4!111MmM.,4!!!!11!1,JM2I1, .--.. ..,.-".. -,-~- .. ...... .. ""- ,...... " , .•.. ..- - . - - - - - - - - - - - - - - - . "",.•,., ~.,, ·1 i1 : 1 o ABCOEfGHIJKLMNOPGRSTUVWXYZ .1 Inch Lettering ABCDEFGHIJkLMNOPQRSTUVWXYZ 0123Lf-56789 -} .2 Inch Lettering o Fig. 5 - Character Set Programndng Procedures Because of the design of the annotation subroutine, it must be accessed by the following two FORTRAN statements in the order shown. CAIL CHAR (N, SIZE, lIN, VAAl' V~--VARN) The arguments in the call statement are defined as follows: N =A fixed-point variable or constant e~ual in value to the number of variables and/or constants (VAR) whose obj ect time values are to be plotted as specified in the Format statement that follows the Call statement. Example! If one variable (VAR l ) is to be plotted, N 227 1. .0 C·'~ 'I SIZE = A floatinS-point variable or constarit equal in value to the size (expressed 111 inche,s) of the characters to be plotted. Example: It characters are to be drawn two-tenths of an inch high, SIZE mY = A fixed-po111t variable or constant. I t mv = 0, characters are drawn parallel to the X-axis, otherwise the characters are drawn para.llel to the Y-axis. v~ = . = 002. Floating-point or fixed-point variables or constants whose values are drawn at object time. The Format specifications to which these variables are. drawn must be specified in the Format statement following the Call statement. The Format statement used with the Call statement supplies 1ntonoation to the subroutine as to what 1s to' be drawn and under what Format specification. It 1s also used to calculate the correct return address trom. the subroutine. It is, therefore, mandatory that a Format statement follow the Call statement. The items in the Format statement are detined as follows: o S = A Format specification. The Format spec 1ticat10n( s) may not be separated by a slash oD'T = The digit that governs which point character is to be used (see character control integer in PLOT arguments). It IPOINT is ze~, the actual. points will not be plotted. XINCH = The value ot one physical inch in terms ot X-axis measure XMAX-XMIN " XINCH = XL in terms ot the PLOT subroutine arguments. YINCH = The value ot one physical inch on the Y-axis. GRAPH uses the second order Lagrangian polynom1al over X(K), X(K+l), (When K+2 = J, the polynomial is also used to draw the curve between X(K+l) and X(J).) ihecurve is " composed ot short line segments less than 0.1 inch long. The actual length ot these segments 1s a variable that depends on the physical distance tram (X(K), F.X(K» to (X(K+l), FX(K+l». " and X(K+2) to draw the curve between X(K) and X(K+l). The tollowing assumptions are made tor GRAPH: (1) '!he points are stored in either ascending or descending values ot X. (2) No two successive values ot X are equal. GRAPH uses about 14,374 positions ot core. The tollowing "illustrations show the two types ot plots ava1labJ.e when GRAPH is used. 23~ - --""-------~-~"""--""---- -------"."-"_ .. - """--~~-.---" ..- " - - o () o Fig. 7 232 'I II o SUBROUTINE IABEL (SIZE, XMAX,· XMm, XL,XD, YMm, ·YMAX, YL, YD) SUBROUTINE IABELX (Same Arguments) SUBROUTmE !ABLE (Same Arguments) SUBROUTINE IABLEX (Same Arguments) The purpose of these four subroutines is to place labels along the X and Y axes drawn by the initializing call of the PLOT subroutine, i.e., (1) where IC CALL PLOT (IC, XMIN, XMAX, XL, XD, YMIN, YMAX, YL, YD) =1 or 101. The arguments are the same for all four subroutines. SpecificaJ.ly, SIZE = The value of the character size expressed in inches (e.g., SIZE = 02 means all characters will be .2 of an inch in height) XMm XMAX XL YMm YMAX = Must o be exactly the same as used in (1) YL ~} = The same as used in (1) or integer multip1es* of' that value All four subroutines will place numerical values adjacent to the "ticl! marks on each axis. In addition LABLE and LABLEX read two cards; the first is used as an X-axis heading and the second as the Y-axis heading. (Column 40 is assum~d to be the midpoint of the axis.) '!he following chart shows the exact distinctions of the four routines. * If XD is the value used when PLOT is initialized, and 3.*XD is used as this argument, then every third II tic" mark on the X axis will be labeled with a value. 233 ~ Name Range of Values IABEL -999 to 9999 IABELX Any Format of Representation 14 MAX* ~ 10 ~ MAX < 10,000 ; 15 .1 ~ MAX < 10 ; F5.2 10,000 ; ES.l Axis Headings Core Required No 1402 No 2550 MAX < .1 ; ES.l IABLE Same as IABEL Yes 2314 IABLEX Same as IABEIX Yes 3472 o * MAX = is the maximum of IXMAXI and IXMINI (or of IYMAXI and IYMINI ); e.g., if XMIN = -10 and XMAX is 0 then MAX = 10 and 15 format is used. 234 ES_MAMa:; Ii", " .. $II ..it.,,!, -0 TIM£ CALL PLOT (1,0.,10., 5.,1.,0.,9.99, 5.,1.11) CALL LABLEX (.1,0.,10., 5.,1.,0.,9.99, 5.,3.33) 9.99 8.88 7.77 6.66 5.55 t..... ..... 14- 't ....... 2.22 o.oo~'--~--~~ o __ __________ ____ __ ________ ~ ~ 2 6 ~ ~ 8 10 -rIME CALL PLOT (1,0.,10.,5.,1.,0.,9.99, 5.,1.11) CALL LABLEX (.1,0.,10., 5.,2.,0.,9.99, 5.,1.11); Fig. 8 235 o SUBROUTINE QUADRG (N, X, Y, A, B, C) The subroutine QUADRG computes A, B, and C in the second-order. regression for.mula: Y=A+BX+C~ X = The single-subscripted Y = The single-subscripted array of dependent variable values N = The number of (X, Y) values arr~ of independent variable values QUADRG requires about 2300 core positions and the single subscript library subroutine. This routine will be particularly useful. in plotter applicatioIl$.• The regression curve can be plotted by the following sequence of statements: :xJ' = J* DX = (X(N) Xl = X(l) - X(l))/XJ CALL PLOT (99) CALL PLOT (90, DO 10 I = 1, = Xl + DX Xl 10 CALL PLOT Xl, A+B*Xl.+C*Xl*Xl.) J (90, Xl, A+B*Xl*C*Xl*Xl) * Where J is sane suitable number that depends on the degree of curvature and the physical distance between X(l) and X(N) or the plot. 236 SUBROUTINE LINREG eN, x, Y, A, B) LINREG is a subroutine that computes the y-intercept, A, and slope, B, of the linear regression line fitted to the points (X(I), Y(I)), I = 1,2 ... , N. (That is, the linear least squares fit to a set of data points.) X, the independent variable, and Y, must be Single-subscripted in the calling program. The running time of the subroutine is dependent on N, the number of data points. Roughly, it computes about one second for every 15 data points. This subroutine will be particularly useful in plotter applications. The regression line can be plotted by the following sequence of statements: CALL PLDr (99) CALL PWI' (90, X(l), A + B*X(l)) CALL PLDr (90, X(N), A + B*X(N)) LINREG requires 1056 core positions and the single subscript library subroutine. 237
Source Exif Data:
File Type : PDF File Type Extension : pdf MIME Type : application/pdf PDF Version : 1.3 Linearized : No XMP Toolkit : Adobe XMP Core 4.2.1-c043 52.372728, 2009/01/18-15:56:37 Create Date : 2014:03:05 15:11:51-08:00 Modify Date : 2014:03:05 15:32:35-08:00 Metadata Date : 2014:03:05 15:32:35-08:00 Producer : Adobe Acrobat 9.55 Paper Capture Plug-in Format : application/pdf Document ID : uuid:84d900a3-814f-394d-a770-10e50b0af45d Instance ID : uuid:bbbae7df-01e4-c247-a5a6-3f2d071cced6 Page Layout : SinglePage Page Mode : UseNone Page Count : 255EXIF Metadata provided by EXIF.tools