program listing for the reliability block diagram ... · vi abstract this technical memorandum...
TRANSCRIPT
NATIONAL AERONAUTICS AND SPACE ADMINISTRATION
Technical Memorandum 33-513
Program Listing for the Reliability Block
Diagram Computation Program of
JPL Technical Report 32-1543
PaulO. Che/son
R. Eric Eckstein
JET PROPULSION LABORATORY
CALIFORNIA INSTITUTE OF TECHNOLOGY
PASADENA, CALIFORNIA
December 1, 1971
https://ntrs.nasa.gov/search.jsp?R=19720008682 2018-08-30T11:04:55+00:00Z
NATIONAL AERONAUTICS AND SPACE ADMINISTRATION
Technical Memorandum 33-513
Program Listing for the Reliability Block
Diagram Computation Program of
JPL Technical Report 32-1543
PaulO. Che/son
R. Eric Eckstein
JET PROPULSION LABORATORY
CALIFORNIA INSTITUTE OF TECHNOLOGY
PASADENA, CALIFORNIA
December 1, 1971
PRECEDING PAGE BLANK NOT FILMED
PREFACE
The work described in this report was performed by the Quality
Assurance and Reliability Division of the Jet Propulsion Laboratory.
JPL Technical Memorandum 33- 513 iii
PRECEDING PAGE BLANK NOT FILMED
CONTENTS
I. Introduction . . . . . . 1
II. Main Program MAIN 2
A. Subroutine SFLEFT 16
B. Subroutine DUPOUT. 17
C. Subroutine PATHUP. 18
D. Subroutine PATHOT. 19
E. Subroutine NUMOUT. 20
F. Subroutine NEGOUT . 21
G. Subroutine TRINTR 22
H. Subroutine PATHIN 25
I. Subroutine TRPRNT 26
J. Subroutine TREE 27
K. Subroutine SYSP 31
L. Subroutine STBYPR 33
M. Subroutine DUPTRE 34
N. Subroutine STDBY2 35
JPL Technical Memorandum 33-513 v
)
vi
ABSTRACT
This technical memorandum presents the computer program listing
for the reliability block diagram computation program de scribed in
Technical Report 32-1543, Reliability Computation From Reliability Block
Diagrams, Jet Propulsion Laboratory, Pasadena, CaliL, Dec. 1, 1971.
The program is written in FORTRAN V and is currently running on a
UNIVAC 1108. Each subroutine contains a description of its function.
JPL Technical Memorandum 33-513
1. INTRODUCTION
This technical merrlOrandum presents the computer program listing
for the reliability block diagram computation program described in
Technical Report 32-1543, Reliability Computation From Reliability Block
Diagrams, Jet Propulsion Laboratory, Pasadena, Calif., Dec. 1, 1971.
The program is written in FORTRAN V and is currently running on a
UNIVAC 1108. Each subroutine contains a de scription of its function.
JPL Technical Memorandum 33-513 1
TREA·FTREE.MAIN1 C SYSTEM RELIABILITY PROGRAM MAIN2 C MA IN3 C MAIN'I C MA IN5 C MAIN6 C U~IVAC 11~a. FORTRAN V VERSleN. ~5K CORE STORAGE REQUIRED. MAIN1 C WRITTEN ~Y P~UL CHELSON AND RON ECKSTEIN 1/1/10 MAINaCUTEST MCLIFICATlON 1/12111 MAIN9 C MAINlG C ..•.•.••...•.....•••.••....•..••.•..••••.......•••..••• ···········MAIN
11 C MAIN12 C DATA DECK SETUP. MAIN13 C MAIN14 C ALL INTEGER fORMATS RIGHT JUSTIFIED. COL~MN NUMBERS APPEAR INSIOEMAIN15 C I'ARENTHESiS I I. ANY SERIES OF &LOCK NUMBERS ST ARTS AT THE LEFT MAIN16 C HOST COLUMN AN FILLS IN SUCCESSIVELY TO THE RIGHT IN 12 FORMAT. MAIN11 C ONE DATA CARC PER BLOCK NUMBERIU.C.S.I. MAIN18 C MAIN19 C BLOCK NUM8ERII-21, INPUT TO THAT SLOCK NUMBERI3-32), OUTPUT FROM MAIN20 C THAT ELOCK NliM8ERI33-S31. MAIN21 C SUCCESS qLCCK NU:18ER WITH ZERO CUTPUT HAS A 9 IN lao) AND IS LAST MAIN22 C O.RD IN THIS SERIES. MAIN23 C MAIN24 C NUMBER Of SU:SE ~LOCKSI 1-21. MAIN25 C IF T~[R[ ARE SENSE BLOCKS. SENSE BLOCK NUM8ERIl-21, STANDBY 8LOCKSMAIN26 C CCNTRGLLED BY THAT SENSE BLOCKI3-6CI. MAIN21 C l"AIN28 C NUMBER (;F E·:) U1 VALENT GLOCK SETS 11-21. MA IN29 C EQUIVALENT BlGCKS MAY NOT 8E CONTROLLED BY A SENSE 8LOCKISWITCHI. MAIN3C C IF THERE ARE EGUIVALENT BLOCKS, EQUIVALENT BL~CK NUMBERSI1-'ICI FCRMAIN31 C EACH SET. MAIN32 C MAIN33 C uISTRI8UTiON TYPEIl-21. MISSION TIMEI3-1'11 E FORMAT. MAIN34 C 1:: EXPOI'IENTIAL, 2 :: NOT AVAILAELE. MAIN35 C MAIN36 C ACTIVE FARAMlTER~ FOR E~CH B~OCK OTHER THAN SENSE BLOCKSISwITCHESIMAIN31 C RD IS SET EQUAL TO 1.0 IFl1S-251 LEFT gLANK. MAIN38 C BLOCK NUHbERI1-21. LAMbCAI3-141 E FORMAT. RCI1S-25) f FORMAT. MAIN33 C LAST CARD IN THIS SERIES HAS LASTISOI SET EQUAL TO 5. MAIN'IC C MAIN41 C IF NO DORMANCY I~VOLVEC. A SLANK CAR:, OTHERWISE - MAIN42 C SLANKI1-21, DCRMANCY FACTORI3-l41 E FORMAT.TO BE MULTIPLIED EY MAIN'13 C ACTIVE LAMBDAS OR 9311-2). 8LANK13-801 A~D READ INDIVIDUAL CORMANTMAIN44 C LAMBDAS - ELeCK NUM8ERIl-21, LAM6DA DORMANTI3-l41 E FORMAT. MA:N45 C LAST CARD IN THIS SERIES HAS LAST(30) SET EOUAL TO 6. MAIN46 C MAIN41 C MAIN48 C SwITCHING GPTIONS FOR EACH SENSE 8LOCK. MAIN49 C MAINSO C C :: NO SWITCHINGI FROSAEILITY GF SwITCH ~ORKING - 1.CI. MAIN51 C SENSE BLOCKll-21. MAIN52 C MAIN53 C l :: CONSTANT PR03ABILITY THAT SWITCH WORKS. MAIN5'1 C SENSE 5L0CKI1-21.8LANKI2-llil.PRCBABILITY1l5-251 F FORMAT, 1I8C). l"AIN55 C MAIN56 C 2 :: DGR'1Ar,T fAILURE l(AT E FCR SWITCH. MAIN51 C SENSE 3LOCKIl-21.LAMSCA OORMANTI3-1'l1 E FORMAT. 21301. MAIN58 C MAIN59 C 3 = OORMM-;T AND ACTIVE: FAILURE RATE FOR SWITCHI 2 CARCS/SWITCHI. MAIN60 C ~EIliSE "LOCKll-21.lAMbDA OORMANTI3-141 E fGRt".AT. 31801. MAIN61 C ::>[NSE BLOCKll-21,LAMGDA ACTIVEI3-141. MAIN62 C MAIN63 C 'I = NCT A'JAILASL~. MAIN64 C 5 :: NGT AVAILAELE. MAIN55 C MAIN66 CLAST CARC IN DATA DECK ~AS LASTIBCI SET E~UAL TO 7. 8. OR 9 - MAIN51 C 7 :: RECALCULATE WITH NEW PARAMETERS, 3 :: NEW DIAGRAM, 9 :: END. MAIN68 C MAIN69 c ••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••• MAIN70 C MAIN11 COMMCN/ALLSUd/Ml,M2,M3.M4.M5,M6.M7.Ll.L3,L'I.L5,L6 MAIN12 CC:-IM ON /L G~ U5/ I b 115 t 2 , SCI, II S 15::; I • 1 R& 150, .3 0 h I 1£ MP 141 ,2 CI • Nl, MA IN13 1 ISAVEI5~.2CSI,I::;UC,JSUC,JS1,JSAVEI5C,20GI,IJS1,TOT,PRC31651, MAIN14 :: FRO,,1IG51.IFRINT.NSTOLYI151 ,NSbYHX.NOPRNT MAIN15 CQMMCN/SW';UB/NPUI' (20CI ,NPCJP "IX ",SOUT 1501 ,NBOHIX ,NBINI50 I.NBINMX, MAIN
10203040506C1015ao9G
1CO11C1201301'1015016011C1801902GO21022023024025026021028029030e31032033 a3'1035036031038039C4Ca41C420430'140'150460'1104804gC50051C52053054055 G56051C58059060061062063064065C6606106ao69C1COllG120EC140
2 JPL Technical Memorandum 33 -513
ccC
Ml = 5(, "MAXIMUM NUMBER OFHZ = ZOO ~MAXIMU;1 NUMBER OFM3 = 14 o.MAXIKUM NUMBER CFM4 = 15 ii:MAXIMUrl NUM3ER OF1'15 = 29 OeM A Xl H Ul1 NUl': BE Ii OFMe = ZO "MAX IMUI1 NUI13ER OF1'07 =
..,~
~'MAXIMUM NU116E F: OFLU
Ll=Ml+1L3=M3+1L4=M4+MlL5=M5+1L6=(Z*H5)+1Ll6::'1"';f:.+l
cccccccccccccccccccccccc
ccccc
c
ccC
99S
JPL Technical Memorandum 33-513 3
C1022 CC lelO I=1'L3
MAIN1868MAIN1869MAIN1870MAIN1871MAINl872MA IN1ll7 3MAIN1874MAIN1875MAIN1880MAIN189CMAIN1900MAIN191CMAIN1 '320
MAIN133CMAIN1340MAIN13SCMAIN1360MA IN137CMAIN1380MAIN1390MAIN1400MAIN1410MAIN1420MAIN143CMAIN1440MAIN1450MAIN1460MAIN147GMAIN1480MAIN1490·MAIN1500MA IN151CMAIN1520MAIN1530MAIN1540MAIN155GMAIN1560MAIN1S70MAIN1580MAIN159CMAIN1600MAIN161lJMAIN1620MAIN163GMAIN1640MAIN16SlJMAIN1660HAIN1670MAIN1680MAIN1690HAIN1700MAINl71GMAIN1720HAINl73CMAIN1740MAIN175CMAIN1760MAINl770MAIN1780MAIN179CMAIN1800MAIN1810MAINIB20MAIN1830
NUMMA1N1840MAIN185CMAIN1860MAIN1861MAIN1862MAIN1863MAIN1864MAIN1865MAIN1866MAIN1867
NaHOLD = TEMPOR~RY HOLD FOR THE HIGHEST NUMBER BLOCKlNBMAXI.
REREAD CARD IF IPRINT IS 3EING SPECIFIED
GENERATE ARRAY Id WITH 1811,1.N61 = NUMBER OF INPUTS TO NB.IBll.2,NBI = NUMBER OF OUTPUTS FROM NS.
THE REST OF THE 13 ARRAY CONSISTING OF INPUTS AND OUTPUTS TO NB.
READ 15,120C.CRR=300,ENC=3001 N8,IN.IOUT,LASTFORMATI3112,17X.Ill
READ INPUTS ~ND OUTPUTS TO BLOCK NUMBERS.
PRINT DATA CkRDS.
IFlL~ST.[G.71 GO TO 300C
IFlIPRINT.NE.41 GO TO 1210PRINT 1202. NE..IN.IOUT.LASTFORMATl' DATA CARD' 3113.' LAS T=' 121
KT::ON6HOL::>=ONSTEP::10CJJJ=8KRB1=1NR31::0co 1C I=1,L4PR031I1::e.OD+0PROBll I I =C.O [·+000 10 L=l dOlRTlI,L1::0.
Ie PSNSlLI::8.CO+~
UO 15 r::1,M415 NSTOaYlII::O
DO 16 I::l,L3INlII=O
16 IOUTIII=CDO 20 I=ld11SIoiPRc,ilr 1::1.(TLOSlII=O.TLSIIl=O.TLl 11=0.TLDlII=O.1<0111::0.NP II 1=000 17 K=1,L5lIoRBlKI=C
17 KR61KI=ODC 28 K::l,M2JSAVElI,KI=O
20 ISAVE II ,K 1=0
30G READlC,3Jl.ERR~3Q2.END::3021 I.J301 FCRMATI7X,I1,GX,Ill
IFllI.GT.41.0R.IJ.GT.311 GO TO 302lFRINT=IIFlJ.EQ.CI J=3NSIG ~J
PRINT 3C3,IPRINT.NSIG303 FCRMATl'OIPRINT OPTION SET AT'I4.' NSIG OPTION SET AT'I4/1Hl)
GO TO 10333C2 PRINT 304304 FCRMATl'OCRROR •• ATTEMPT TO SPECIFY IPRINT OR NSIG. BUT SPECIFIED
lOUT OF R~NGE.'/' CARD IGNOREL'IGO TO 1039
IFlN8HOL9-N611CZO,1021,1022t,2HOLD=NBGO TO 1022
H;-21 PIi IN T 1C2.3, f'.: E.1023 FORMATl'lERROR IN MAIN PROGRAM AT 1023.'/'OMORE THAN ONE BLOCK
lbER ~'I41
GO TO le60
C
c
cCC
ocC
10991200
Coc
cCC
1202CCC
1210102G
1681691701711721731741751761771781791601.811821831841851861871881891901311n1931541951561971981932002012C2203ZC42052062072C6209210211212213214215216217218219220221222223224225226227
152153154155156157158159160161162163164165lE6167
4 JPL Technical Memorandum 33-513
TO 2 DC 3
ADD N3 IN NHOLD AT END.
~HIFT IaINB.l,INSI TO LEFT ELIMINATING ZEROES.
READ AN0 GENERATE ITCMP ARRAY OF EQUIVALENT BLOCKS.Nl = MAXIMUM NUMEER OF [QUIVhLENT BLOCK SETS.
DC 22GO J=1,L3NHOLDIJI=CCONTINUENUH=CKEND=IR81:NS,11+1
i10VE NB TO LEFT.
ILEFT=C00 2350 J=2,L3IFllbIJ,l,INS).NE.CI GO TO 2330ILEFT=ILEFT+lGO TO 235GIFIILEFT.EQ.OI 30 TO 2350
PRINT SENSE bLOCK AND STANDBY BLOCKS OF THAT SENSE BLOCK.
11=J-ILEFTIEIM,l,INSI=ISIJ,l,INSICONTINUE
;<aEG=L3-ILEFT+lM=CDC 2370 K=K6EG,L3I':=M+lIBIK,I,INSI=NnOLDIMICONTINUE
DC 2COl I=l,NSRREAD 1200 NS,JRBIiS II 1=NSISIII=NSDO 20::;2 J=l,M5IRBINS,J+1I=~RBIJI
IF IJR3IJI.EQ.O) GOCONTINUEI RaINS rl 1=J-lCONTINUEDO 2020 I=l,NSR1".5=15111
2200
MAIN2570MAIN258CMAIN2590MAIN26CCMAIN2610MAIN2620MAIN263CMAIN2640MAIN2650MAIN266CMAIN2670MAIN268CMAIN2690
STANGLY 8LOC~SINHOLD) CONTROLLED BY A SENSE cLOCK/INS) MUST FOLLOWMAIN2700ALL OTHER INPUT ~LOCK NUMl::lERS IN Ii:lIN8,ltINS). MAIN2710
MAIN272CMAIN27 30MA IN211i 0MAIN27 50MAIN276CHAIN2170MA IN278 0
DO 2250 L=Z,L3 MAIN2790IF IIBI L,l,INS). u.e) GO TC 2260 MAINZ80DDO 2240 K=2,KEND I1AIN2810IFIIEIL,l,IN~).N[.lR&IH,S,KI) GO TO 224G MAIN282CNUM=~UM+l MAIN2830NHOLDINUM)=I~BIINS,K) MAIN284CISIL,l,INSI=C MAIN2850GO TO 2250 MAIN2860
2240 CONTINUE MAIN28702250 CONTINUE MAIN288C226C IFI NUH.NE.OI GO TO 2300 MAIN2890
PRINT 2270, INS,NUMtINS HAIN290C2270 FORMATI'lERRCR IN MAIN PROGRAI1 AT 2270.'/'OERROR DURING SENSE 8LCCMAIN291C
lK'I3,' INFUT REARRANGE TO STCRE ACTIVE BLOCKS eEFORE STANDBY BLOCKHAIN292C2SIN 131';: 3 " ,1, , I3, • ) .'IliAI N2930
GO TO 10£6 MAIN2940MAIN2950MAIN296CMAIN2970HAIN298CMAIN2990MAIN300GMAIN3010MAIN3C2GMAIN3030HAIN304CMAIN3Q5CMAIN306GMAIN3!J70MAIN3C8CMAIN3C90MAIN31GCMAIN3110I1A1N312CMAIN3130MA1N314CMAIN3150MA1N316GMAIN3170MAIN318CMAIN3190MAIN320QMAIN321CMAIN3211I1AIN3212I1A 1N3213:-tAIN3214MAIN322C
FOLLOWING 8LOCKS',21/1H , MAIN3230HAIN3231MAIN3233MAIN324CMAIN3250KAIN3260
2CG22::;032001
DO 2025 K=2,L5IFIIR3IINS,KI.EG.QI GO TO 202ti
2C2~ CONTINUE2C26 K=K-l
P RIN T 2 C21. INS, I I RcII ill 5 , J It J =2 , K12:::21 FGRMATl'CSENSE SWITCH' 13,' CONTROLS THE
13CIlili2020 CONTINUE
CCC
C
2330CCC
2370CCC
2350CCC
cCC
230C
CCCC
3043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463li734831;9350351352353354355356357358359300361362363364365366367368369370371372373374375376377378379
6 JPL Technical Memorandum 33-513
Ct.LL DUPTREIJSAVE,IJS1,ISAVE. JSlI
DUPLICATE OR!GINAL TREE INTO JSAVE.
GO TO 1'l1CO.il2GO.il30Q.44CO.450CI.IDIST
Ri:LIA8I:..ITY bLOCK CIAGRAM INPUT CHECKED.
LAST
READ ACTIVE FARAMETERS.
READ 4eee. 1DIST. TTOTr 0 RMA T I I2 , E12 .7)
GENERhTE GRIlrNAl TREE.ISAVE HOLDS THE PROBA3ILITY TREE SUCCESS PATHSJSl = NUMBER OF SUCCESS PATHS.
READ PARAMETLRS OF FAILURE DISTRIBUTION.RC IS SET = 1.0 IF READ IN AS BLANK OR ZERO.
CALL TREEI$9~S)
PRINT EQUIVALENT BLOCKS.
IrINSR.E~.CI DC TO 4710READ 4101, IOUMMY, DFACTIFIIUUMMY.E~.CI GC TO 41&0IrIDFACT.GT.G.1 GO TO 4160READ IlIGl. Nb llAMa". "UMMY,TLDINf)=TLAMi.iDIFILhST.LT.6) GC TO 415CSO TO 4198DC illBC J=l,r,SRNS=ISIJIKENO=IRbINS.11+1OC 4170 K~2.K;:ND
NL=IR8INS.KITLDIN51=OFACT*T:..INelC(;NTIhUECONTIiIlUC
FRINT 905FORMATlIHC17HEQUIVALENT BLOCKS)DC 123 I=l.NlPRINT 306,IITEMPIJ.II,J=2,LLclrCRI',ATI·C'li013)CG 123 K=2,LLoITEMPIK+M6,II=-ITEMPIK.I)CONT!NU;:
RE AD 12DO. NlIFINl.EJ.OI GO TO 2040DO 12.5 I=l.NlREAD l24tl ITEMPI,JtIl.J=2,LL61FCiRHATI'lOI2)
IDIST C;:TERMINES WHAT FtILURE DISTRIbUTION IS USEDI1=EXPONENTIAL)TTOT = MISSI0N TIME. IPRINT 1 = PRINT ALL TREES,o = SUPPRESS PRI~TING OF ALL TREES EXCEPT THE ORIGINAL TREE.
READ '1101, Nc.TLAliBO, RC1.LASTFORMATIIZ.E12.7,FlO.7,55X,I11IFIR0114IC9.4110.41D9TLl NB I=TlAMBiJRO nlE I =RCclGC Te 412CRGINB)=':'.GTll NB I=TLAMBDIFILAST.:..T.51 GO TO lilCC
HAIN3270HAIN3280HAIN3290MAIN330CHAIN3JIOHAIN3320HAIN3330HAIN334CMAIN3350MAIN336CHAIN3370MAIN338GHAIN3390HAIN340CHAIN3410HAIN342CHAIN34 30HAIN344CHAIN3450HAIN3460HA1N3470HAIN348CHAIN3490HAIN35COHA1N3510HAIN3520HAIN3530HAIN3540HAIN3550HAIN356CHAIN3570HAIN358CHAIN3590HAIN3600HAIN3610HAIN3620MAINJ630HAIN3640MAIN3650HAIN3660MAIN3670HAIN368CHA1N3690HAIN3700MA1N3710HAIN372GMAIN3730HAIN3740HA1N3750HAIN376CMAINJ770HAIN3780HAIN3790HAIN3800MA1N381C
RlhD DORMM,CY PARAMETERS. MAIN3820CFACT = DORM~NCY FACTOR TO BE MULTIPLIED BY STANDBY ACTIVE LAMBDASMAINJ830IF IDUMMY NOh ZERO AND CFACT = 0 - READ LAMBDA OORMANT = TLDINBI. MAIN384G
MAINJ850HAIN3860MAIN3870MAIN3880MAIN3890HAIN39COMAIN3910HAIN3920MA1N3930MAIN394QMA1N3950HAIN396CHAIN3970HAIN398CMAIN3990MAIN4000HAIN4010HAIN402C
4180c
'1:'1[,
4109
ili5D
412[;CCCCC
4i6C
ccCCC
CCC
41CC4101
4ceocCcC
C84C
::.41125124
CCC
140905
1232e4C
cCCCCCCC
3UCOCCC
351
3803813823833843853863E7388389390
3923933943953963973983994004014C24034044054064074C84e9410411412413414415416.. 174184194201i21422423424425426427428429430431432433434435436437438439440441442443444445446447448449450il51452453'15'1il55
JPL Technical Memorandum 33-513 7
456
'157
458'159460461462'Ie34544<'5466'1674684£>9470471472'173474475476477478479480'1Cl4824634344854864e7488489490491492.. 93494'195'196497498'199SOD5015025G35045G55065(75085C951G51151251351451551651751851952052152252352452552652752852953C
C
C
CCCCCCCC
'1190
4600
4610
4520
453G
405e4680
470[;CCCC
47lC
C420C430044CO4sce
CCCCC
480eCCC
7cce
7010
7C11
nOl70047CC5
7007
READ SWIlCHIt-.G OPTIONS AND DATA FOR EACH SENSE BLOCK.
0 = HRFlCT SWITCHINGI PROEABIlITY SWITCH WORKS EQUALS 1.C)1 = CONSTANT PROBABILITY THAT SWITCH WORKS.2 = CORKA"T fAILURE RATE FOR SW1TCH.3 = DORMANT AND ACTIVE F AlLURE RATE FOR SWITCH.'I = NOT AVAILABLE5 = NOT AVAIL ABLE
DO 4700 J=l,NSRREAD 41Cl, NEtTLAMBO.SPiiOB.ISOPTIFIISOPT.(Q.CI GO TO 46GOGO TO 1461G.4£>2C,463C.4£4C.46501t ISOPTSWPR03IN&I=1.CTlOSINBI=:::.CTLSIN&I=O.iJGO TO 4680S~PRoaINSI=SPROB
Ti..OSINBI=O.OTLSINbl=:J.OGO TO '1680SWPR03IN81=1.0T~DS INBI =TLAMBOTLSIN81=O.OGO T.C 4£8eSI/PR03IN81=1.0TLDSINBI=TlAMEDREAD 41Cl. NB.TLAM8DTlSI:-ibl=TlAM8DGO TO 4680CONTINUEGO TO 4630CONTINUETLDINEI=C.GTLlNEI=o.eRCIN81=1.OCONTINUE
READ lAS Tl8 0 I. LAS T = 7. eo. CR 9.7 = REOALCULATE ~ITH NEW PARAMETERS. 8 = NEW DIAGRAM. 9 = END.
Rt:AO 2707. LASTGO TO 4ece
CONTINUECONTINUECONTINUECONTINUE
42CO.43,,0.44CO.4500 AVAILABLE IF YOU WANT TO USE OTHER THANEXPONENTIAL i..'ISTRlbUTION. ADO APPROPRIATE STATMENTS FOR NEWDISTRIBUTION.
IFINSR.EQ.OI GO TO 8COO
FIND A SENSE TREE WITH NO OTHER SENSE BLOCKS IN IT.
CONTINUEDO 7010 JJ=l.MlNPIJJI=OI!"WEP=OM=lJ::l1-1-..IfIJSAVEII.JI.NE.QI GO TO 70ClIFII-ll 7002.7003.7002K=lL=lCONT HIUEIFINPILI.EQ.ISIt(11 GO TO 7005IFll.EG.MI GO TO 7007L=L+lGO TO 100£IFIA8SIJSAVEII.JII.EQ.I:IKII GO TO 7008
HAIN4030
MA1N404C
HAIN4050HA IN406CHAIN4070HAIN408DHAIN409CMAIN410CHAIN4110HAIN412CHAIN4130HAIN4140HAIN4150HAIN4160HAIN4170HA IN418 0HAIN4190HAIN420CMAIN4210HAIN422DHAIN42 30MAIN4240HAIN4250HAIN426DHAIN4270HAIN428CHAIN4290HAIN4300HAINII3l0HAINII320MAIN4330MAINII311CHAINII350MAIN436CHAIN4370HAIN438DMAINII390HAINIlIlOOMAIN4410MAIN4'12DHAIN4430HAINIIIIIIOHAINII450HAIN446CHAIN4470MAIN411BCH AIN411 90MAIN45CCH AIN4510HAINII52DMAIN4530MA IN454 0HAINII550MAIN4560MAIN4570HAINII58DHAIN4590MAINII60 CHAINII610MAIN4620H AIN46 30HAIN4640HAIN4650HAIN4660HAIN4670HAIN4680MAIN4690MAINII70CHAIN4710HAIN4720H AIN4730MAIN4740HAIN4750MAIN4760HAIN4770
8 JPL Technical MenlOranduITl 33-513
IF SENSE BLOCK CONTRCLS ONE ~TANDcY &LOCK. SET ISTDBY = 1. SEE IFTHAT STANDBY aLOCK HAS AN INPUT. IF NO INPUT GO TO 7700. IF ITHAS AN INPUT GO TO 1500. IF SENSE BLOCK CONTROLS HORE THAN ONESTANDBY BLOCK. S~T ISTOSY=2 AND CALL SUBROUTINE STDBYZ.
ZERO OUT STANDBY BLOCKS IN STANDBY TREE.
IF STANDBY BLOCK HAS NO INPUT. GO TO 7500.
DETERMINE WHAT TYPE OF STANDBY IS INVOLVED.
HAIN4 780MAINlf190MAIN480CMAIN4810HAIN4820HAIN4830MAIN4840HAIN4850HAIN486CHAIN4810HAIN4880HAIN4890HAIN49CCHAIN4910HA IN492 0MAIN4930HAIN494GHAIN4950HAIN496CHAIN4910HAIN498CHAIN4990HAIN500CHAIN5010HAIN5020HAIN5030MAIN504GHAINS050HAINS06CHAIN5070HAIN5080HAIN5090HAIN510CHAIN511CHAIN512CHAIN5130HAIN514CHAIN5150HAIN516CMAIN5170
HAIN5180
HAIN5190HAIN520CHAINS210HAIN522CHAIN523CHAINS240HAINS250HAIN526CHAINS270HAIN5280HAIN5290
VALUEMAINS30CHAINS310HAINS320MAINS330HAINS340HAIN53S0HAINS36CHAINS370HAIN5380HAINS390HAINS400HAINS410MA INS42 0MAINS430MAINS440HAINS4S0HAINS46CMAINS470HAIN548CMAIN5490MAIN55GOMAIN5510MAINS520
JSlI
GO TO 1050
7700
CALL STD8Y21$398.INDEPI
DUPLICATE ~TANDcY TREE RETURNED IN ISAVE INTO LSAV£.
GENERATE FULL STANDBY TREE.
SUBROUTINE TRENUM STORES IN NBNUH ALL THE DIFFERENT ABSOLUTEBLOCK NUMBERS IN THE STANDBY TREE. NUMOUT ZEROES OUT THESE&LOCK NUfl,eERS.
CALL TRENUMlLSAVE.LJS11
CALL TREEl$9981
CALL DUPTREILSAVE.LJS1.ISAVE.IFlIFRINT.LT.31 CO TO 720CCALL TRPRNTI2.JSAVE.IJS1. 1 ICALL TRPRNTl~.LSAVE.LJS1. 2 1
IFIK.EQ.NSRI GO TO 7009K=K+lGC Tv 7004IFIISIKI.£G.II,OEPI GO TO 7009M=M+ 1NPI 1'1-1 I=INOE?INDEP=ISIKIIFlIPRINT.NE.41 GO TO 7003PRINT 20C01. INDEPIFII.EQ.M11 GC TO 70021= 1+ 1GO TO 7ellIFlJ.EG. M21 GC TC 70031=1J=J+ 1GO TO 7'J1.1ISUC=1NDEFIFlIPRINT.NE.41 GO TO 1030PRINT 20001. ISUCFORMAT 1131PRINT 2e002. IISIII.1=1.M11PRINT 208C2. lNPl1ltI=hMlIFORMATl1H025II3.1XI/lH 251I3.1XII
IFlIR81INDEP.11.GT.11ISTDE,Y=1IRBB=IR31INOlP.21ITEST=IEll.1.IR&81IFIIT£ST.EO.OI GO TOGO TO 15C(;ISTDBV=2
CALL NUMOUTl$99d.ISAVE. JS1ICALL SFLEFTl£998.ISAVE. JS1ICALL OUPO~Tl~99d.ISAVE. JS11IFlIFRINT.LT.31 GO TO 74COCALL TRPRtHl1.ISAVE. JS1. 3 1CALL TRENUMIISAVE.JSll
ITEST=I611.1.ISUCIIFlITEST.EO.OI GO TO 7500
ISUC=IR61INDEF.21
c
C
CCCCCC
7200C
cCC
71f00
c7050
cCC
7Q08
7U03
1002
1009
7006
CCC
20C02CCCCCCCCCC
7030
20001
5315325335345355365375385395405lt154254354454554654751f851f955055155255355455555655755855956051:>1562563564565566567568569570
571
5725735745755765775785755805al582583584585586587588589590551592593591f555596597598599600601602(03604605
JPL Technical Memorandum 33-513 9
INITIALIZE
INITIALIZE
GENERATE SENSE TREE.
PI TREE NOW IN ISAVE.
GO TO l7515,75181,ISTD8Y
G[NERAH FULL STANDBY TREE.
DUPLICATE SENSE TREE INTC KSAVE.
CALL OUPTREIISAVE, JS1,KSAVE,KJS11
SUBTRACT FULL STANDBY TREE FROM SENSE TREE GIVING PI TREE.
CALL DUPTREIK~AVE,KJS1,ISAVE, JS11
DUPLICATE KSAVE INTO ISAVE.
CALL TRENUMIISAVE, JSll
I~UC=IR3lINC[P,21
CALL TREEt$9961
N80TMX=IR8lI~uEP,ll
~O 7530 J=l,NBOTMXN80UTlJI=IR8IINCEP,J+11CONTINUECALL PATHCTl~~98,KSAVE,KJS1I
IFIIPRINT.LT.31 SO TO 7535CALL TRPRNTI3,K~AVE,KJS1, 4 I
IFlIPRINT.LT031 ~o TO 5COCCALL TRPRNTll,ISAVE, JS1, 6GO TO 5000
IF INSt3YMX.LE.ll GO TO 7545RE\;I~D 10DO 7540 N=l,NS6YMXRE AD tlO I I\SS ,JS1;)0 7537 I=l,M2READllel lISAVElJ,II,J=l,M11CONTINUECALL TRINTRl$998,KSAVE,KJS1,ISAVE,JS1,NSTDBY,NSBYHX.NSS)CONTINUE
ISUC=IN::JEPCALL TRE;::l $9'381
t1AIN553Ct1AIN5540
CALCULATS THE PROSABILITYlPI TREEI THAT YOU NEED THE STANDBY TREE.t1AIN555Ct1AIN556Ct1AIN5570MAIN558CMAIN559Ct1AIN56CCMAINS610MAINSE.2CMAIN5630t1AIN564CMAIN56S0MAINS66CMAIN5670MAIN568CMAIN569CMAINS70CMAIN5710MAIN572Ct1AIN5730t1AIN574Ct1AINS7SCMAIN5760MAIN5770MAIN5780MAIN5790MAINS80CMAIN5810
ELIMINATE PATHS IN SENSE TREE IF THEY CONTAIN THE STAND&Y BLOCKS. MAINS82Ct1 AIN 5830MAIN584CMAIN5850t1AIN586CMAIN5870HA IN588 CMAIN5890MAIN590CMAIN5910MAIN592CHAIN5930HAIN594GMAIN5950HAINS960MAIN5970t1AINS980t1AIN599C
CHECK PI TREE FOR STANDEY TREES REPLACED EY STANDBY BLOCKl51-6511 MAIN6CDOlLl-L41. HAIN6010
t1A IN602 Gt1AIN6030t1AIN6C4CMAIN6050HAIN6060t1 AIN60 7Ct1AIN6C8Gt1AIN6090t1A INblGCMAIN6110MAIN612GMAIN6130MAIN614CMAIN6150MAIN6160t1AIN6170MAIN6180MAIN6190HAIN620CMAIN6210MAIN622CMAIN62 30MAIN624CMAIN6250MAIN6260MAIN62 70MAIN628C
ISUC=INJ£PCALL TREEC$9%1
NE:NMAX=NSNMAX+lNSNUMINdNMAXI=INDSPCALL NUMCUTl$998,KSAVE,KJS11CALL SFLEFTl$398,KSAVE,KJS11CALL GUPCUTI$S98,KSAVE,KJS11IFIIPRINT.LT031 GO TO 7538CALL TRPRNTl3,KSAVE,KJS1, 5 I
00 7520 I=l,MlN80UTtII=CCONTINUE
ccCCC
7500
7530
CCC
CCC
7537
c
cCC
7518
7540CCC
7545CCC
cc
CCC
7515
7520CCC
C7535
ccC
770e
cCCC
7538
eCG607608£09610611G12613614615616617618619620621622623624625026627628629630631532633634635636637638639640641642643044645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678"679680681
10 JPL Technical Mem.orandum. 33-513
68266368'1EB5686687688£89690691592£936946556966976986997007(.17027(;37047057067077087C971071171271371471571671771871972072172272372'172572672772872973073173273373'17357367377387397'107'11
CDC 7710 1=1,1-:1N;;OUTI-II=CNoNUMIII=~
7710 CONTINUECC ELIMINATE PATHS IN SENSE TREE IF THE' CONTAIN THE STANDBY BLOCK.C
N80UTlll=lRBIINO~P,21
NEOTMX=lCALL PATHOTI$998,ISAVE, JSllIFIIPRINT.LT.31 GO TO 7720CALL TRP~NTll,ISAVE, JS1, 7
cC ZERO OUT S~NSE alOCK NUMBER IN SENSE TREE.C
7720 N3NUMlll=INDEPNBNMAX=lCALL NUMCUTI$998,ISAVE, JSllCALL SFLEFTI1998,ISAVE, JSllCALL DUPOUTI$399,ISAVE, JSllIFIIPRINT.LT.31 GO TO 5[(0CALL TRPRNTII,ISAVE, JS1, 8 I
cC CALCULATE PI, THE PROllAS ILITY YOU NEED SENSE TREE, STORE IN PSNS.C
5000 T=O.t~C W= GK=O
SCDD CCiNTINUEGO TO 151C8,~2GO,5300,5'100,55001,IDIST
C5100 CO 51Cl I=l,NuMAX
CPRE C=- T. TL I I IPROBll I I=ROlll.OEXP I')PRECI
51(1 CONTHOUECC KR8 ARRAY CONTAINS STANDBY BLOCKS THAT HAVE HAD THEIR PROBABILITYC PREVIOUSLY CALCULATED.C
DO 5110 J=1,KR81IFIKRcIJI.EG.OI GO TO 5110Na=KR3IJIPROBll~81=RTIN6,K+ll
5118 CONTIr~UE
CC SUBRCUTINl SYSP CALCULATES THE SYSTEM PROBABILITY - RETURNS TOT.C
CALL SYSPC
I~INOW.(Q.ll GO TO 9COlK= K+ 1T=ITTOT.V.I/NSTEPFSNSCKI=l.CD+C - TOT
C'C PREVENT DIVISION CY ZERCi ~HEN 18 SIG~IFICANT FIGURES LOST.C
IFIPS~SIKI.GT.O.CD+CI GO TO 516eIFIK.E~.ll GO TO 5160
c
HAIN6290HAIN630CHAIN6310HAIN632CHAIN6330HAIN6340HAIN6350HAIN636CHAIN6370HAIN6380HAIN6390HAIN6400HAIN6410HAIN642CHAIN6'130HAIN644CMAIN6450HAIN6'16CMAIN6470HA IN648 0MAIN6490HAIN650CMAIN6510MAIN6520MAIN6530MAIN654CMAIN6550HAIN6560HAIN6570HAIN6580HAIN6590MAIN660CMAIN6610HAIN662GHAIN6630MAIN66'1CMAIN6650MAIN666GMAIN6670HAIN6680HAIN66 90MAIN6700MAIN6710HAIN672eMAIN6730MAIN674CHAIN6750HAIN&760HAIN6770HAIN6780MAIN6790HAIN68COHAIN681CMAIN6820MAIN68 30MA IN684 CMAIN6850HA IN&86CMAIN6870HAIN6B8C
7'1Z C NEXT STATEMENT ELIMINATES DIVISION BY ZERO LATER WHEN CALCULATING HAIN6890
7'13 CRT. THE ~UMcER USED RESULTS FROM SUBTRACTING .999995999999999959 HAIN69007'1'1 C FRCM 1.0J+G JUST BEFORE LOSING ALL SIGNIFICANT FIGURES. THIS WILLMAIN6910745 C CAUSE AN INTlGRATION ERROR IN CALCULATING RT, THE RELIABILITY OF HAI~692C
7'16 C A SENSE 3LOCK OR SENSE TREE. THE SYSTEM RELIABILITY HAY NOT BE HAIN69307'17 C EFFECTED IF IT APPROACHES 1.C. HAIN69401'18 C MAIN69507'19 P~NSIKI = +.173'1723'1759768C7090-017 HAIN6960750 5160 IFI K.LE.N:';TEP I GO TO 510C MAIN6970751 I:'TEP=NSTEP+l HAIN698C752 IFII?RINT.NE.'11 GO TO 60CO HAIN699a753- PRINT 518[, IPSN~IKI,K=lrISTEPI HAIN7COO75'1 5180 FCRMATI5D26.1S1 MAIN7CI0755 GO TC &800 HAIN702075& 520G CONTINUE MAIN7030
JPL Technical Memorandum 33 -513 11
AFTER 4500.
METHOD FOR ONE STANDBY ELOCKCISTD5Y=11.
METHOD FOR MORE THAN ONE STANDBY BLCCKllSTDBY=21RO FOR ALL STAND8Y BlOCKSC51-651 = 1
NS=NSTD3YCNS2YMXIRTlNB.ll=1.0GO TO 16103.62C3.6303.6403.65C31.IoI5T
GO TO 161CC.64001.ISToBY
Ni>=IRBIINDEP.21RTCNB.ll=RCCN61GO TO 161C2.£202,6302.61102,65021.IuIST
CONTINUECONTINUECONTINUECOMMENT STATEMENTGO TO 60CO
MAIN704CMAIN7050MAIN706CMAIN7070MAIN108CMAIN7090
NUMERICAllY INTEGRATE T~E RELIABILITY OF THE STANoBV BLOCKS. MAIN710CTIME VARIABLE = JT = a-MISSION TIMECTTOTl. KT = 1-101 INCREMENTS.MAIN7110
MAIN712CMAIN7130MAIN714GMAIN7150MAIN716CMAIN7170MAIN118CMAIN7190MAIN72COMAIN7210
ISTEP=NSTEP+l MAIN122000 6170 KT=2.ISTEP HAIN7230DPREC = C-TTOT*CKT-li/NSTEP)*TllNBI MAIN124CDPREC1= I-TTOT.IKT-1I1NSTEPI.TLSC INoEPI HAIN7250PINT= RCCNBI.PSNSl11.0EXPCDPRECI*SWPROBIINOEPI*OEXPIDPRECll MAIN7260JTEND=KT-l HAIN7270DO 6150 JT=l.JTE~o MAIN128CDPREC2=C I-TTO T.I KT-1I/N5 TEP h TLl NBI 1+ II-TT or. I JT-lI/NS TEP I. MAIN7290
1 ITLOINBI-TLlNBIII MAIN730CQPREC3=IC-TTOT.IXT-II/NSTEPI.TLIN811+II-TTOT.IJT I/NSTEPI* MAIN7310
1 ITLDIN81-TLlNBIII MAIN732COPREC4=1 I-TTO T.IK T-lI/NS Tep h TL5 (lNDEPll +CI-TT OT.C JT-ll/NSTEP I. MAIN7330
1 I TLDSI Ir,OEP I-TLSI INOEP III MAIN7340DPREC5=IC-TTOT.IKT-l1/NSTEPI.TLSCINOEPII+CC-TTOT.CJT l/NSTEPl* MAIN?350
1 CTlDSI INDEP I-TlSI INDEP III MAIN13£.CYAVE=IIOEXPIJPREC21.DEXPCOPREC41)+IDEXPIOPREC31.oEXPI0PREC51111200MAIN7370PINT = PINT + RCINEl*IPSNSIJT+l1-PSNSIJTII * YAVE • SWPRCBIINDEPI MAIN138CCONTINUE MAIN7390RTlNB.KTl=FlNT/PSNSI KTI MAIN74COCONTINUE MAIN7410IFIIPRINT.NE.41 CO TO 6el0 MAIN7420PRINT 5888. IRTIN3.KTI. KT=l.ISTEPI MAIN7430FORMATl8E15.91 MAIN744CGO TO £.OlC MAIN14S0CONTINUE MAIN7460CONTINUE MAIN7470CONTINUE MAIN7480CONTINUE MAIN1490COMMENT STATEMENT AFTER 4500. MAIN7500
MAIN751CMAIN752CMAIN753CMAIN7540MAIN15S0I1AIN7560MAIN7570MAIN1580MAIN759C
ISTEP=NSTEP+l MAIN1600DC 6SQO KT=2.ISTEP MAIN1£.lOOPREC = STBYPRILSAVE.LJSl.RO.TL.RT.KT.0.TTOT.N5TEP.TLO) MAIN7620DPREC1= I-TTOT*CKT-lI1NSTEPI*TLSfINOEPI MAIN1630PI NT=PSNS 111. DPREC. SWPRO BlIND EP I .0E XP lDPREC 11 MAIN1640JTENO=KT-1 MAIN7650DO 61150 JT=1. JTENo MAIN7660oFREC4=II-TTOT.CKT-II/NSTEP).TlSIINOEPII+II-TTOT.CJT-1I/NSTEPI. I1AIN7£.10
1 I TlDSI INo£Pl-Tl51 INDEPI II I1AIN7680oPREC5=CC-TTOT.IKT-II/NSTEPI.TlSIINoEPI)+CC-TTOT.IJT I/NSTEPI* MAIN169C
1 ITlDSCINOEPI-TLSCINOEPIII MAIN71COJ~T=JT-l I1AIN7710YAVE=ISTBYPRClSAVE.lJ51.RO.Tl.RT.KT.JT.TTOT.NSTEP.TLDI*DEXPCoPREC5MAIN1120
1 I + STEYPRClSAVE.LJS1.RC.Tl.RT.KT.JJT.TTOT.NSTEP,TLOI*OEXPCoPRECMAIN77302411/2.0D+0 I1AIN7140
PINT = PINT. IPSNSCJT+II-PSNSCJTII * YAVE • SWPROBCINOEP) I1AIN1750CONTINUE I1AIN7760RTCNB.KTI=PINT/PSNSIKTI MAIN177CCONTINUE MAIN1780IFIIPRINT.NE.41 GO TO £.[10 MAIN719C
020263026402E5C2
C SEECCCCC
6400
6150
C6103
645C
6500
S888
6170
530054005500
C SEE
C61G2
CCCCC
60COCCC
610G
7577587597607617627637647657667677687697707717727737747757767777787797807817827837il478578678778878979C7917927937347957967577987998CO801802il038C48058C68078Ce809810811812813814815816817818819820821822823<;24825826827828
-82 '3830831832
12 JPL Technical Memorandum 33-513
DUPLICATE JSAVE INTO 1SAVE.
IFIN~BYMX.LE.OI GO TO 780
PRINT THE ORlGINAL TREE WITH STANDBY 6LOCKSISl-6SI/IL1-L41.
CHECK IF ALL SEN5E BLOCKS ACCOUNTED FOR. IF SO GO TO 80CD.
MAIN7800MAIN781CHAIN7820MAIN7830MAIN7840HAIN78S0MAIN7860HAIN7870HAIN7880HAIN78S0HAIN7900MAIN7910HAIN7920HAIN793DHAIN7940HAIN79SCHAIN7960HAIN797CHAIN1980HAIN79SCMAIN8000HAIN801CHAIN8020HAIN8030MAIN8040HAIN80S0MAIN8060MAIN807CHAIN8080MAIN809CMAIN8100MAIN81l0HAIN8120HAIN8130HAIN8140HAIN81SCMAIN8160HAIN8170HAIN8180MAIN819CHAIN8200MAIN8210MAIN8220HAIN8230HAIN8240HAIN82SCMAIN8260HAIN8270HAIN8280HAIN829CHAIN8JOOMAIN831CMAIN8320MAIN8330MAIN8340HAIN83SCMAIN8360MA IN837 GHAIN8380MAIN8390HAIN8400HAIN841CMAIN8420MAIN843CHAIN8440MAIN84SCHAIN8460HAIN8470HAIN8480HAIN8liSCMAIN8S00HAIN851CHAIN8520HAIN8530HAIN8SliOHAIN855C
IF RL = 1. SUPPRESS PRINTING OF RO.
FINALIZE VAR1ABLES ANO CALCULATE RELIABILITY OF TOTAL SYSTEM.SET NOW = 1.
PRINT STANDBY BLOCKSISl-651 AND THEIR TREES.STORE ALL DIFFERENT STA~DBY ELOCKS IN THESE TREES IN NRB ARRAY.
PRINT 5883, IRTINa,KTI, KT=l,IST£PIGO TO 601C:CONTINUECONTINUECONTINUECONTINUEGO TO 6810
PRINT 806FORMATllHll
10=0DO 6C06 I=1,lnIFIIG.EQ.ll GO TO 6007IFIISIII.EG.INDEPI 10=1GO TO 0016I S II -1 I =1 S II ICONTINUEIFIISIII.EO.CI GO TO 60ceCONTINUENSR=NSR-1IFII.EQ.21 GO TO 8000JJJ= JJJ+1IfIJJJ.GE.M41 GO TO 8000GO TO 70ee
PRINT RESULTS
KRB ARRAY CONTAINS STANDBY BLOCKS WHOSE RELIABILITY HAS BEENCALCULATED.
DO 60G4 N=1,L5IFIKRBINI.EG.CI GO TO 6005CONTINUEKF:6INI=NE:KRal=N
T=TTOTK=NSTEPNOW=l
CALL DUPTREIISAV£, JS1.JSAVE,IJSllGO TO S080
END FILE IeREWIND 10DC 530 N=l,NSBYMXREADI10I NS. LJS1DC 5ec I=1,M2READl101 ILSAV£IJ.II.J=l,MliCCNTINUEIFIIPRINT.LE.l1 GO TO 525PRINT SIC, N~
FORMATI'OSTANDBY TREE RlPLAC£D BY BLOCK'I31CALL TRPRNTI5,lSAVE,LJS1, 0 ICALL TRENUMILSAV£,LJSllDC 52~ K=l,NBNMAXNRBl=NRB1+1NRBINRB11=NB~UHIKI
CO~TINUE
CONTINUE
60C66C08
60076016
c
CCC
cCCC
8000
6203630364036503
60046005
6C1e
CCC
S(;Ola06
CCC
CCCCC
CCCC
5CO
SIC
525
52C53C
CC
83383483583683783883984C84184284381;484584681<781;88'+9850851852853854855856857858853660861862863864865866867868869870871872873871;87587687787887988C8818828838e4885866887e88889890891692893891;8958%8978988999009Cl902903901;905906907908
JPL Technical Memorandum 33-513 13
R-INHI AL
MAIN8565MAINB510MAIN858CMAIN8590MAIN86GOMAINB610HAINB62CMAIN8630MAIN8640MAIN B6 50MA1N866GMAIN861CHAIN866GHAIN86 90HAIN81CGMAIN811CHAIN812CMAIN8130MAIN81'1CMAIN815GHAIN816CMAIN8110MA1N8180MAIN819Cf'lAIN880CHAIN8810MA1N882CHAIN88 30
AREHAIN88'1CMAIN8850MA 1N886 CHAIN8810MA1N8880MAIN88 90HAIN890CMAIN8910MAIN892GMAIN893GHA1N89'1CHAINB95CMA1N896CMAIN891CMAIN898CHAIN3990'1AIN9CGC,~AIN901C
MAIN9C2CHAIN9C30MAIN9C'IC
PR03A8ILITY'IHAIN9C50MAIN906CMAIN9010MA1N908CHAIN9090MAIN91CGHAIN911CMA IN912 0MAIN9130MA1N9131HAIN9132MA 1N913 5MAIN9131M~.rN914G
MAIN915QMAIN9160MAIN9110MA1N9180MAIN9190MAIN92CCMAIN92l0MAIN9220HAIN92 30MAIN92'1CHAIN9250MAINS26C
DORMANT FI R
DOnMANT FIR
7, GO TO 980.
TREE WITH STANDbY BLOCKS 1'13,
RG II)
ACTIVE FIR
998'3809951065
MODIFY PRObAbILITY DATA IF lAST ::
PRINT SEN~E SWITCH OPTIONS.
DO 9ge I::1,Ml
IF IN NRS ARRAY, HAS 8EEN REPLACED' THEREFORE NO RELIABILITY.
I'ILhST.LT.71 GO TOIFILAST.:::::l.71 GO TOIFILAST.EO.81 GO TOIFILAST.EQ.91 GO TOGO TO 996
IFINNSR.E:l,C) GO TO 740PRINT 720FORMATI':;SENSE SWITCH ACTIVE FIRDC 73C J::l,NNSRNS::IISIJIPRIN T 725, N::', TLSI NS I , TlD SIN SI , SWF RC t- INS)FORMATI' BlOCK'I3, 2£16.1 ,F12.1,E16.11CC,"'TINUER:: TOT
INITIALIZE VARIAblES FOR RECALCULATION wITH NEW PARAMETERS.
DC NOT PRINT SENSE BLOCKS SINCE TlII)::O, TLDII)::O, AND RCIII::1NOT RELATED TO THE SENSE SWITCH OPTION PARAMETERS AND ARE ONLYUSED TO SET SEfI<SE BLOCK PROBhBILITY :: 1.0 IN TREE PATHS.
f(:: -L CG1 ... I 1. - R)K::K+N5IGIFIK.GT.81 K::8V(12)::Vl(Il(+21Vl:i.41::VKIKI~RITEI6,VI TTOT,RPRlfI<T 60"
DO 102 J::l,NR8lIFII.NE.NRBIJI) GO TO H2I FIRe II I • GE.1 .0) GOT 0 7 11PRIN T 707, I, TLl I I, TLCI I ) ,GO TO 10'1P f' IN T 709, I, TLI I I , TL DII IGO TO 104CONTIfI<UE
ssc
720
DO 715 J::l,NNSRIFIIISIJ).EQ.II GO TO 104
715 CONTHUE
125730740
702
711
705101
706
1FIPRCB1III.LE.0.) GO TC 704IFIRGlII-I.11G5,10B.70SPRINT 707, I, TLIII, TLCIII, ROlli, PROBllIIFORMATI' 8LOCK'I3, 2E16.7 ,F12,7,011,1)GC TC 104
70B PRINT 7:;3, I, TLlII, TLUIII, PR0811I)7C5 FORMATI' BLOCK'I3, 2E16.7 ,12X,DI7.11104· CCNTINUE
100 PRINT 101701 FORM All '
1 RELIA3ILITY'1DO 70'1 I::l,L4IFII.LE.M:I UO TO 106IFIPROBIIII.LE.OI GO TC 704PRINT 1J3, I, PROBlII)
103 FeRMATI' LLOCK'I3,44X,D17,71GO TO 104
IFIIPRINT.LE.~I GO TO 1[0PRINT 508, L:, L4
56C FCRMATI'lCRIGINAL PRO~AEILITY
l' THRU'I3,' 1.'1CALL TRPR~TI5,ISAVE, JS1, C IPRINT BeG
CCC
CCC
CCC
C
CCC
c
CCCCC
C
92192292392432592692192892993C93193293393433593693193893994[,9419429439449459469'119'189'1395095195235395'1355S56951958959960361%296396'1365%696156896991031191291391431591691191891998098158298398'1
9099~O
9119~2
913914915916911916919920
14 JPL Technical Memorandum 33-513
985S66987988989ssc931992393594995
ccc
990
S982787
ISIII=IISIIINSR=NNSRISUC=JSUCG(; Te' 997
ERROR RETURN FROM SUBROCTINES.
READ 21['7. L"STFORMAT I 73X rI 11IFILAST-el 9S8.JS9.1Cc6END
READ TO NEW DIAGRAM ~ATA DECK.
MAIN9270MAIN928CMAIN9290MAII\931GMAIN9320MAIN933CMAIN93liOMAIN935CMAIN9360MAlf'.i937CMAIN938G
JPL Technical Memorandum 33-513 15
16
TREE*FTREE.SFLEFT- 1- . C .. SUBROUTINE SHEFf S~IFf5 PAf'iS IN ISA\/E fO--T~E-iE:'F'-UNTIL NONZER'O-SLF-i'-'lo
2 C N!l AT LEn-MOSI. FILL IN ZEROS AFTER S''iIFTINS. IF 50 ZEROS PJTS SLFT 203 C PA ·i'-t--i.lui1-3ER' iN--NPUP- -A-NO-- EI.JHI'NATEs-- i-i--By-'TALLING-'PAT '-lUP•. -.-.- .. -.- -SLF i-'3Il
4 G. __~.BJL!Q!_~_L!!..O.~ECK~LE IN 111170 . . . __ ._-5I.£.J_'!J!.5 C SlFT 50
6 __ . . }_~ B_RQ_l!U.NL.?_F'1-_;f_!J_~.?_UAy~_-,,_JJ!J.L .. . __SLJT ~P_
1 C SlF T 70!l . . ____::_O!'lI1.~H~!_Il.I,~_~ U_e/-'!)_!~?.!_~_3.t..~_~!_'1~_!."!~_!1t!~J.J_'_I,._h_L ~~_I,.?_!_l_~ SLLL__~.P_9 COMMON/SHSUB/NPUP(2001.NPLPHX.NBOUT(50I,NBoTMX,N03IN(SOhNBINMh SLFT !ll
10 t__N~N_UliJ S!J..'-.!..~EN"-'_X. ._ __ . .__ .. .__.., SLLI_lJHl-----fi DIMENSION ISAVE(Mt, M2' SlFT 110
. _.J~_ _ _ c .. . ..__. - .__ . -_ .... .. _ _ ...5L£J__ I.2.lLt 3 C I NIT I ALI ZE SLF T 1 30
___!.!'__ . ,;l_Q_ ,!o L~J_!.~_? . .. .SL.I'.J__ Llllt15 NPUPlIl=O SLFT 150
___ 16__ ._.!.Q_C O!!lJN.!:!.~ ._ _ . ._. __ . SL_E.L.L6Jl17 L=O SlFT 170tll_ _ C.. _.. ... . .. _... . . . SL.EL. r.8.0..19 DO 1CO I=l,J51 SLFT 190
_____?.ll J.I,.f:l'J_::.P . .. .... _., .. _. . __. . _. __ ... .SL1'.J__2.0.0.21 DO 90 J=t,111 SLFT 210
______ ..1.? . ___._. JEJ_I's.!J._EJ.J_'_I.l.}1 E.JH ._GO__!O_ ._7._0 . . .SLF.L_2 2.0_23 IlEFT=IlEFT.l SLFT 230
. 24 . __ . . .. __GQ !Jt .~tQ__ ... . . . -- 5.l.LI_.2.'Ill25 70 IF( IlEFf .EO.O I GO TO 90 SLFT 250
__ .. ?.6 t;, . . . . . . .. . SLL'-_.2.6.a.27 C 110VE Na TO LEFT SlFT 27028 _;_ ..... ... . ._~ " . ._____________ S.L.FJ_.2.6_0_29 M=J-IlEFf SlFT 29U30 JS~II~II1_!J-';UlJ1EI,l'Il SLFT.300.31 90 CONTINUE SLFT 31032 ._ ._JF:U~~FT. NE •.MII GO LQl.?O_ SL F. L 32033 L=l.1 SLFT 33034 __ .N.P.UPIU=I SLFT 34035 '30 TO 100 SLFT 35036. c_ . _. .. ._ .. __ SLfl' 3~O
31 C ZERO OUT REDUNDANT BLOCK NUM03ERS. SLFT 31039 , _C_ 5L F T 3803 9 I 20 I 9 E G=-~ 1-:':-fLEF T-~ 1-- -- -- -- -- ----------- ---- ------ ------.---- .-- ---.---------------------- - --- "'5 i'-Fr '-'3-gO40 )0 159 K =.19[5,11 I SLF T qOOql ISAIIEIK,II=O SLFT 41042 . __~~_O' __:_QNTINU__L .... . . SLFT q20
-----'13' 100 CON TINUE ·-------··-·----s-L'Fi-lf30-q4 NPUPMX=L SLFT 4QOqSiF'( ~.,-piJ-PM·X~EQ.O-1 Gil -'o--llfoi]--- -- ------·----------------·-----·---SLFTij·50~6 CALL PAT-iUP($l100.ISAIIE.JSll SLFT 460--q'7 1000-R{ii.iRN· -- ---- -- ----------- -- ..--- ----- ------ ·------------·-SLF-j--ij-io
48 1100 PRIl'H 1101 SLFT 480.----q-g ..-- ··-Tioi--F(,-Rr·,-i.T(-,--E~<iR()R--iN--p-i.T:·iLP--::-Ai.LE-D-FROH--"SF-L'EFj-.-,,-----------------------------si.-Fr--ij-go
50 RETURN 1 SLFT 500---- -5-\-'- -. ------------Et·jo--- -- ---------. -------------------..------ .--.------. -- ---- -------- -------- --·-----------------------5 jjor' .5 fo
JPL Technical Mem.orandum. 33-513
OPOT 10opor 20oPOT 3Copor 40OP aT 50DPor 60OPOT 70DPor 80OPal 90opor 100oPOT 110opor 120oPOl 130opor 140DPOT 150opor 160OPOT 170opor 180DPOl I9Copor 200OPOT 2IGopor 220OPal 230DPor ·240OPOl 250OPOT 260OPOT 270OPOT 280DPOl 290opor 300OPOl 310opor 320OPOT 330OPOT 340OPOl 350opor 360OPal 370OPal 380OPOl 39COPal 400OPOT 410OPOl 420OPOT 430OPOl 4'WOPOl 45CDPor 460OPOl 47CDPor 480OPOl 49Copor 500OPOl SICopor 520OPOT 53COPOl 540OPal 55Copor 560OPOl 570
fROM oUPOUT.')
GO TO 60
SUBRCUTINE DUPOUTI$.ISAVE.JSl)
SUBROUTINE DUPOUT STORES PAT~ NUMBERS THAT ARE DUPLICATES IN NPUPAND ELIMINATES THEM BY CALLING PATHUP.WRITTEN BY RON ECKSTEIN 1/1/70
CHECK PATH AGAINST ALL HIGHER PATH NUMBERS.
CHECK IF PATH ALREADY A DUPLICATE OF PREVIOUS PATH.
INITIALIZE
STORE DUPLICATE PATH NUMBER IN NPUP.
DO 100 I=l.JSl
CHECK IF PATH ALREADY A DUPLICATE OF PREVIOUS PATH.
CCMMON/ALLSU6/M1,M2.M3.M4,M5,H6.H7.L1.L3.L4.L5.L6COHHON/SMSUB/NPUPC2DO).NPUPHX.N80UTC5D).NBOTMX.NBINI5DI.NBINHX.
1 NBNUMI5C),NBNMAXDIMENSION ISAVEIMl. M2)
IFIL.EQ.C) GO TO 90DO 85 J=l.LIFINPUPIJ).EG.I) GO TO 100
85 CONTINUE
IFIL.EG.C) GO TO 75DO 80 J=l.LIFINPUPIJI.EG.II) GO TO 60
80 CONTINUe::75 DO 70 K=l.Ml
IFCISAVEIK.II.NE.ISAVEIK.III)70 CONTINUE
DO 10 I=1.M2NPUP (1) =0
10 CONTINUEL=O
L=L+lNPUP(L)=II
6C 11=11+1GO TO 95CONTINUENPUPMX=LIFINPUPMX.EG.O) GO TO lLOaCALL PATHUP($1100.ISAV£.JSl)RETURNPRINT 1101FORMAT(' [RRGR IN PATHUP CALLEDRETURN 1END
90 II=I+l95 IFIII.GT.JS1) GO TO 100
100
100011001101
CCC
C
CCC
CCC
CCC
CCC
C
TREA·FTREE.DUPOUT1 C2 C3 C4 C56789
101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
JPL Technical Memorandum 33-513 17
18
TREA.FTREE.PATHUF1 C SUBROUTINE PATHUP TAXES PATH NUMBERS TO 8E ELIMINATED FROM NPUP PAUP 102 C ARRAY. ELIMINATES THESE PATHS FROM ISAVE. MOVING UP REMAINING PATHPAUP 203 C AS IT DOSS. AND ZEROS OUT REDUNDANT PATHS AT THE END OF THE TREE. PAUP 304 C WRITTEN EY RCN ECKSTEIN 1/1110 PAUP 405 C PAUP 506 SUBROUTle;E PATHUPI$.:::SAliE.JS11 PAUP 607 C PAUP 708 CCMMON/ALLSUL/M1.M2.HJ.M4.M5.M~.M7.L1.L3.L4.L5.L6 PAUP 809 COMMON/SMSU3/NPUPI2001.NPUPMX.NBOUTI5:JI .NSOTMX.NBINI50IoNBINMX. PAUP 90
10 1 NBNUMISOItNBNMAX PAUP 10011 DIMENSIO!i rSAVEliH. :-121 PAUP 11C12 C PAUP 12013 C CHECK IF THERE ARE PATHS TO 8E ELHlINAH:O. PAUP 13014 C PAUP 14C15 IFINPUPMX.EG.OI GO TO 2JO PAUP 15016 C PAUP 16017 IUP=O PAUP 17018 DO 10C I=1.J$1 PAUP 18019 DO 90 J=1.NPUPMX PAUP 19020 HU.NE.NPUPIJII GO TO SO PAUP 20G21 IUP=IUP+1 PAUP 21022 IF UUP.G T .NPUPMX I GO TO 110 PAUP 22023 GO TO 10C PAUP 23024 90 CONTINUE PAUP 24C25 IFI IUP.E(l.LJI GO TO 100 PAUP 25026 C PAUP 2EO27 C MOVE PATH NUMaER H UP A NUMBER = IUP. PAUP 27028 C PAUP 28029 60 M=I-IUP PAUP 29030 DO 40 K=l.Ml PAUP 30031 ISAVEIK.MI=ISAVEIK.II PAUP 31032 40 CONTINUE PAUP 32033 100 CONTINUE PAUP 3303'1 IFCIUP.EQ.NPUPMXI GO TO 150 PAUP 34035 l1e PRINT 120. IUP.NPUPMX PAUP 35036 120 FORMATI'1ERRLR IN PATHUF AT 110. IUP='I4.· NPUPMX='I41 PAUP 36037 RETURN 1 PAUP 37038 lSC IENO=JSl PAUP 38039 C PAUP 39040 C RESET JSl PAUP 40041 C PAUP 41042 JS1=JS1-IUP PAUP 42043 C PAUP 4304'1 C ZERO OUT RECJNDANT PATHS. PAUP 4'1045 C PAUP 45046 ISTART=JS~+l PAUP 46C'17 DO 160 I=ISTARTtIEND PAUP '11048 CO 16(; J=1.Hl PAUF '18C49 rSAVEIJ,II=O PAUP '19050 160 CONTINUE PAUP SOC51 200 RETURN PAUP 51C52 END PAUP 520
JPL Technical Memorandum 33-513
TREA*FTREE.PATHOT1 C2 C3 C4 C5 C
102030405060708090
1001101201301401501601701801902002102202302 ..0250260270280290300310320330340350360370
NUMEiERPAOTPATH PAOT
PAOTPAOTPAOTPAOTPAOTPAOTPAOTPAOTPAOTPAOTPAOTPAOTPAOTPAOTPAOTPAOTPACTPAOTPACTPAOTPAOTPAOTPAOTPACTPAOTPAOTPAOTPAOTPAOTPAOTPAOTPACTPAOTPAOTPACT
TO 6C
fROM PATHOT.')
SU8ROUTINe PATHOTli,I$AVE,JS11
SUBROUTINE PATHOT COMPAKES NUMBERS IN NBOUT ARRAY WITH EACHIN EACH SUCCESS PATH IN ISAVE AND GENERATES NPUP ARRAY WITHNUMBERS TO BE ELIMINATED IF ANY ABSOLUTE VALUES ARE EGUAl.WRITTEN BY RON ECKSTEIN 1/1/70
INITIALIZE
DC 10C I=l,JSlDO 90 J=l,Ml00 80 K=l,NBOTMXIFIN80UTIKI.NE.AoSIISAVEIJ,II)IGOL=L+lNPUPILI=IGO TO 10CCOt-4TINUECONTINUECONTINUENPUPMX=LIFINPUPMX.EQ.CI GO TO lCCOCALL PATHUPlillQO,ISAVE,JSllRE TURNPRINT 11GlFORMATI' £RR0R IN PATHUF CALLEDRETURN IENO
COHMCN/ALLSUB/Hl,M2,M3,M4,M5,M6,M7,Ll,L3,L4,L5,L6COHM ON/SMSUB INPUF 12 DC I , liP UPM X, NE.O UTI 50 I, NBO TMX ,NBIN 150) , NBIN HX,
1 NBNUMI50l,NBNMAXDIMENSION ISAVEIHl, HZI
DO 10 1=1,1'12NPUPIII=O
10 CONTINUEL=O
eo90
loa
ILca1100liOl
C
ccC
c-,£ ..
6789
1011121314151617181920
2223242526272a293031323334353637
JPL Technical Mem.orandum. 33-513 19
DO 10 I= 1. M2NPUP (I 1=0
10 CONTINUEf;PUPMX=OL=O
NMOT 10NHOT 20NHOT 30NHCT 40NMOT 50NMOT 60NMDT 70NHOT 80NHOT 90NHCT 100NHDT 110NHOT 120NMOT 130NMOT 140NHOT 150NHOT 160NHOT 170NHOT 18CNHOT 190NMOt 20CNHOT 210NHOT 220NHOT 230NHOT 240NHOT 250NHOT 260NHOT 270NHOT 280NHOT 290NMOT 300NHOT 310NHOT 320NHOT 330NHOT 34GNHOT 350NMOT 360NHOT 370NMOT 380NHOT 390NHOT 40GNHOT 410NHOT 420NHOT 430NMCT 440NMOT 450NHCT 460
to 70
SUBROUTINE NUMOUTI$.ISAVE.JSll
SUBROUTINE NUMOUT ZEROES OUT ALL NUMBER BLOCKS IN ISAVE THAT AREEGUAL IN ABSOLUTE VALUE TO ANY OF THE NBNUM ARRAY NUMBER BLOCKS.IF 50 ZEROES. STORE PATH NUMBER IN NPUP AND ELIMINATEIPATHUP).WRITTEN ~Y RON ECKSTEIN 1/1/70
INITIALIZE
If 50 Z~ROES STORE PATH NUMBER IN NPUP.
IFlICOUNT.LT.Mll GO TO 100L=L+lNPUPl Ll=ICONTINUENPUPMX=LIFlNPUPMX.EQ.OI GO TO lCCOCALL PATHUPlil100.ISAVE.JSllRE TURNPRINT 1101FORMATI' ERROR IN PATHUP CALLED FROM NUMOUT.'JRETURN 1END
CCMMON/ALLSUB/Hl.M2.M3.M4.M5,MG.M7.Ll.L3.L4.L5,LGCCMMON/SMSUa/NPUPI2001.NPUPMX.NBOUT(50) .NBOTMX.NBINISO).N8INMX.
1 NBNUMI501.N6NMAXDIMENSION ISAVEIMl. H21
DO lOG I=1.JS1ICOUNT=O00 90 J=l.HlDO 80 K=l.NBNMAXIFIISAVEIJ.II.EQ.O) GO TO 75IFINBNUMIKI.EQ.AbSIISAVEIJ.II)IGO
80 CONTINUEGO TO 90
70 ISAV£lJtIl=iJ75 ICOUNT=ICOUNT+l30 CONTINUE
100
lOCO11001101
C
C
CCC
CCC
1011121314151617181920212223242S2627282930313233343S3637383940414243444546
TREA*FTREE.NUHOUT1 C2 C3 C4 C5 C6789
20 JPL Technical Memorandum 33-513
TREA*fTREE.NEGOUT123456789
101112
·13141516171819202122232425262728293031323334353637383940414243444546
C SUBROUTINE NEGOUT STORES fAILURE PATH NUMBERS ENDING WITH AC NEGATIVE SIGN IN NPUP ARRAY. THEN CALLS PATHUP TO ELIMINATE.C WRITTEN BY RON ECKSTEIN 1/1/70C
SUBROUTINE NEGOUTI$.rSA~E.JSll
CCOHHON/ALLSU~/Hl.H2.M3.M4.HS.H6.H7.Ll.L3.L4.L5.L6
COMHON/SMSU3/NPUPI2001.NPUPHX.NBOUTISOI.NBOTMX.NBINISOI.NBINMX.1 NBNUMISCI.NENMAX
DIMENSION ISAVEIM1. M2)CC INITIALIZEC
00 IS I=1.M2NFUP II 1=::;
10 CONTINUEL=O
CDO 100 I=loJS100 80 J=1.M1IfIISAVEIJ.II.E~.GI GO TO 90
80 CONTINUi:J=L1
CC CHECK LAST NONZERO BLOCK NUMBER IN PATH fOR SIGN.C
90 IfIJ.LE.11 GO TO 92IFIISAV£IJ-l.III 91.92.100
91 L=l+lNPUPIU=IGO TO 100
92 PRINT 9595 fORMATI'lERRCR IN SUBROLTINE NEGOUT AT 92.'1
IfIJ.GT.11 RETURN 1PRINT 94
94 FORMATI' ISAV£ll,ll=C')GO TO 1000
100 CONTINUENPUPMX=LIfINPUPMX.£Q.OI GO TO 1DOOCJ.lL PATHUPI$110C,ISAVE,JSlI
1000 R£TURN110C PRINT 11011101 fORHATl' ERROR IN PATHUP CALLED fROM NEGOUT.' J
RETURN 1END
NGDTNGeTNGClNGOTNGOTNGeTNGOTNGOTNGDINGOTNGOTNGeTNGCINGOTNGClNGeTNGClNGOTNGCTNGOTNGOINOOTNGOTNGOTNGOTNGOTNGOlNGDTNGOlNGOTNGOTNOOTNGOINGOTNGClNGOTNGOlNGOINGOlNOOTNGCINGOTNGOlNGOTNGOTNOOT
10203040SO60708090
100110120130140150160170180190200210220230240250260270280290300310320330340350360370380390400410420430440450460
JPL Technical Memorandum 33-513 21
TREAtFTREE.TRINTR
CCMMON/ALLSU6/Ml.M2.H3.M4.M5.M6.M7.L1.L3.L4.L5.L6COHMON/SMSUB/NPUPI2001.NPUPHX.NBOUTI501.NBOTHX.N8INISO).NBINMX.
1 NBNUHI5GI.NSNHAXDIMENSION JSAVEIMl. M21.ISAVEIHl. M21.NSTDBYIM41
102C304G5060708090
10011012013014015016017018019020021022023024025026027028029030031032033034035036037038039040041042043044C450460470480490500510520530540SSG56C57058G590600610620630640650660670680690700710720730740
L='I4)
-PUP IS FULL.' I
ASSIGN STA~D6Y BLOCK NUMBERI51-651 ONLY ONCE
STORE ORIGINAL TREE PAT~S THAT CONTAIN 2NO-JSl STANDBY PATHS.
INITIALIZE
TRTRTR TRTRTRTRTRTRTRTRIRTRTRTR TRTRTRTRIRTRTRTRTRTRTRTRTRTRTRTRTRTRTRlR lRTRTRTRTRTRTRTR TRTRTRTRTRTRTRTRTRTRTRTRTRTRTRTRTRTRTRTRTRTRTRTR TRTRTRTRTRTRTRTR TRTRTRTRTRTRTRTRTRTRTRTRTRTRTRTRTRTRTRTRTRTRTRTRTRTRTRTRTRTRTRTRTRTRTRTR TRTRTRTR TRTRTR
IF N~S EQUAL ZERO. TRINTR IS BEING CALLED FROM STD8Y2. OTHERWISE.TRTRTRINTR IS BEING CALLED FROM MAIN PROGRAM TO REPLACE STANDBY TREES TRTRPREVIOUSLY ASSIGNED A STANDBY BLOCK ISl-651/ILl-L41. TRTR
TRTRTRTRTRTRTRIRTRTRTRTRTRTRTR lRTRTRTRTRTRTRTR TR
JJ=Q
IFIJJ.NE.CI GO TO 31300 310 J=1.M4IFINSTDEYIJI.EG.OJ GO Te 312CONTINUEP"INT 315
00 150 J=I.M2IFI NPUPI Jl .NE .01 GO TO lSiJNPUPIJI=INPUPMX=JGO TO 900CCNTINU£PR INT 160FORMATI'lERRCR IN TRI-TR AT 160.RE TURt.; 1IFIL.E~.lI GO TO 304PRINT 3ul. LFORMATI'lERROR IN TRINTR AT 300.RE TURN 1
SUBROUTINE TRINTRI$.JSAVE.IJSl.ISAVE.JS1.NSTDBY.NSBYMX.NSSa
SUBROUTINE TRINTR PUTS THE STANDBY BLOCKI51-o5) IN PLACE OF THEFIRST PATH OF THE STANDBY TREE IMBEDDED IN THE PATH OF THEORIGINAL TREE IN JSAVE. THEN ELIMINATES ORIGINAL TREE PATHS THATCONTAIN 2ND-JSl STANDBY PATHS. THEN PUTS THE NEGATIVE STANDBY6LOCKI51-6SI/ILI-L41 IN AND ELIMINATES CORRESPONDING PATHS.WRITTEN BY RON ECKSTEIN 1/1110
DO lOCO I=I.IJSIIF(L.GT.JSll GO TO 1010J=lK=lISTART=O
30 IFIJ.GT.MI) Ge TO 1000IFIJSAVEIJ.II.EG.OI GO TO loecIFIJSAV£IJ.II.NE.ISAVEIK.LII GO TO 80IFIISTART.NE.O) GO TO 50ISTART=JNPATH=I
50 K=K+lIFIK.GT.Mll GO TO 100IFIISAVEIK.LI.EQ.O) GO TO 100
80 J=J+lGO TO 30IFIL.GT.l1 GO TO 130ISTop=rSTART+K-2GO TO 300
5 DO 10 J=ltf12NPUPIJI=O
10 CONTINUEL=l
160
301
305
300
3C4 IFINSS.EQ.OI GO TO 305JSAVEIISTART.NPATHI=NSSGO TO 325
310
150
130
100
C
CCCCC
CCC
C
CCC
c.CC
C
CCCCCCC
123456789
1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
22 JPL Technical Memorandum 33-513
75 315 FORMATl'lERiWR IN TRINTR AT 315. NSTDBV IS FULL.') TRTR 75076 RETURN 1 TRTR 76077 312 JJ=J TRTR 77078 NSBVMX=JJ TRTR 78079 C TRTR 79080 C PUT N[XT STANDBY BLOCK151-651 IN PLACE OF THE FIRST PATH Of THE TRTR 80081 C STANDBY TREE IMBEDDED IN THE PATH OF THE ORIGINAL TREE. TRTR 81082 C TRTR 82083 313 NSTOBYI JJI=M1+JJ TRTR 83084 JSAVEllSTART,,,,PATHI=NSTCBYlJJI TRTR 84085 325 ISTART=ISTART+1 TRTR 85086 C TRTR 86087 C ZERO OUT 2ND-NTH NUMBER BLOCKS IN fIRST PATH IN ISAVE IMBEDDED IN TRTR 87088 C JSAVE. TRTR B8C89 C TRTR 89C90 IFlISTART.GT.ISTOPI GO TO 900 TRTR 90091 320 DO 330 M=lSTART,ISTOP TRTR 91052 JSAVEIM.NPATHI=O TRTR 92093 330 CONTI~UE TRTR 93054 CALL SFLEFTI$1100,JSAVE,IJS11 TRTR 94095 90G L=L+1 TRTR 95056 1000 CONTINUE TRTR 96097 C TRTR 97098 C CHECK IF NO ''oORE STANDBY TREES IN ORIGINAL TREE. TRTR 98099 C TRTR 990
10C IFIISTART.EQ.OI GO TO 1111 TRTR1000101 1~10 CALL PATHUPI~1100,JSAVE,IJS11 TRTR1010102 GO TO 5 TRTR1020103 C TRTR1030104 0 TRTR104C105 C PUT NEGATIVE STANDBY BLOCKI51-651/IL1-L41 IN PLACE Of fIRST NB TRTRI050106 C THAT IS EQUAL IN ABSOLUTE VALUE TO ANY OF THE NBNUM ARRAY OF THE TRTR1060107 C TREE THAT THE STAIWBY BLOCKISl-651/IL1-L41 REPLACES. ZERO OUT THETRTR1070108 C FOLLOWING NB IF THEY ARE EQUAL IN ABSOLUTE VALUE TO ANY OF THE TRTR1080109 C N3NUM ARRI.Y. CALL SFLEFT TO ELIMINATE AND RESTORE PATHS. TRTR1090110 C TRTR110C111 C TRTR1l10112 1111 CALL TR[:'UMII:;AVE.JSll TRTR112C113 C TRTR1l30114 C ASSIGN STANDbY BlOCKI51-£,51/tLI-L41 ONLY ONCE. TRTR114G115 C TRTRl150116 IFtNSS.EQ.CI GO TO 4~O TRTRl160117 NS=NSS TRTR1l70118 GO TO 460 TRTRl180119 450 NS=NSTDSYI JJI TRTR1190120 C TRTR1200121 460 DO 20CO I=1.1JSl TRTR1210122 DO 6UO J=l,Mi TRTR1220123 DO 500 K=l,N6NMAX TRTR123C124 IFIJSAVEIJ,II.EQ.CI GO TO 20CO TRTR124C125 IFINBNU"IKI.EG.ADStJSAVEIJ.IIII GO TO 510 TRTR1250126 500 CONTINUE TRTR1260127 GO TO Gee TRTR1270128 C TRTR128D12'3 C REPLACE WITH NEGATIVS STANDBY BLOCKI51-651/tL1-1..41. TRTR1290130 C TRTR130G131 51C JSAVEIJ.II=-NS TRTR1310132 C TRTR132G133 C ZERO GUT ANY NB FOLLOWING IF EQUAL TO NBNUM ARRAY. TRTR1330134 C TRTR1340135 LSTART=J+1 TRTR1350136 DO 530 M=LSTART ,Ml TRTR136D137 DC 520 N=1,NIH:MAX TRTR1370138 IF IJSAVElM,I I.Eil.OI GO TO 2000 TRTR138C139 IFINBNU!HNI.EG.A3SIJSAVEIMtIll l GO TO 525 TRTR1390140 520 CONTINUE TRTR140C141 GO TO ZOCC TRTR1~10
142 525 JSAVEIM,ll=O TRTR142C143 53G CONTINUE TRTR1430144 GO TO 2DCL TRTR1440145 600 CONTINUE TRTR1450146 200C CONT1NU[ TRTR1460147 CALL SFLEFTt~110G,JSAVE,IJSll TRTR1470148 C TRTR1480149 C ELIMINATE DUPLICATE PATHS. TRTR1490
JPL Technical Memorandum 33-513 23
150151152153154155156
CCALL OUPOUT'$11CC,J~AVE,IJS11
RE TURN1100 PRINT 11G1, NSS1101 FORHAT" SUBROUTINE CALLED FROH TRINTR. NSS~'I41
RETURN 1E NO
TRTR15CCTRTR1510TR TR152 0TRTR1530TRTR154CTRTR1550TRTR156G
24 JPL Technical MernorandUIll 33-513
1Z3..56189
1011lZ13H1516111819ZO212223Z"25Z6212829303132333..3536373839.. 0III.. 2.. 3....
C SUBROUTINE PATHIN ZEROS OUT ALL NUMBER BLOCKS IN ISAVE THAT AREC NOT EGUAL TO ANY OF THE NSIN ARRAY NUMBER BLOCKS. IF PATH HAS 50C ZEROES, STORE PATH NUMBER IN NPUP AND CALL PATHUP TO ELIMINATE.C WRITTEN BY RON ECKSTEIN 1/1/10C
SUBRCUTINE PATHINI$,ISAVE,JSliC
COMHON/ALLSUb/Hl,M2,M3.HII,M5,H6,M1.Ll,L3,L",L5,L6COMMON/SMSUB/NPUPI20DI,NPUPMX,NBDUTI50l,NBOT~X,NBINI5GI,NBINMX,
1 NBNUMl5CI,NBNMAXDIHENSION ISAVElM1, HZ)
cC INITIALIZEC
DO 10 I=l,M2NPUPII)=O
le. CONTINUEL=O
C00 lOG I=l,JSlICOUNT=O00 90 J=l,HlDO 80 K=l,NBINMXIFIISAV£IJ,I).EG.O) GO TO 85IFINBINIK).EQ.ABSIISAVElJ,IJ IIGO TO 90
SO CONTINUEISAVElJ,I)=O
85 ICOUNT=ICOUNT.l90 CONTINUE
CC IF 50 ZEROES STORE PATH NUMBER IN NPUP.C
IFIICOUNT.LT.Mll GO TO lCOL=L·1NPUP IL 1=1
100 CONTINUENPUPMX=LIFINPUPMX.EG.ci GO TO 1000CALL PATHUPI$1100,ISAVE,JS1)
1000 RETURN1100 PRINT 11011101 FORMATI' ERROR IN PATHUP CALLED FROM PATHIN.·)
RE TURN 1END
PAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAINPAIN
102030405060108090
100110120130HO150160110180190ZOO2102202302 ..0250260210280290300310320330340350360310380390.. 00..10420430440
JPL Technical Memorandum 33-513 25
TRPT 10TRPT 20TRPT 3CTRPT 40TRPT 50TRPT 60TRPT 70TRPT 80TRPT 90TRPT 10CTRPT 110TRPT 120T RPT 130TRPT 140TRPT 150TRFT 160TRPT 110TRPT 180TRPT 190TRPT 20eTRPT 210TRPT 220TRPT 221TRFT 222TRPT 223TRPT 224TRPT 230TRPT 24GTRPT 250TRPT 260TRPT 210
SUBROUTINE TRPRNT PRINTS TREE PATHS. ARRAY, AND LOCATION OF CALL.wRITTEN BY RON ECKSTEIN 1/1110
SUBROUTINE TRPRNTII.ISAVE.JS1.NSEQ)
COMMON/ALLSUc/Ml.H2.M3.M4.M5.MG.H1.Ll.L3.L4.L5.LGDIMENSiON ISAVEIM1. M2)
GO TO (1,2,3,4.201,11 PRINT 5, '-SEQ5 FORHATI'OISAV£ AT '151
GO TO 202 PRINT S, NS£QG FORHATI'CJSAVE AT 'IS)
GO TO 203 PRINT 1. NSEG7 FCRHATI'OKSAV£ AT 'lSI
GO TO 204 PRINT 3, NSE::l8 FORMATI'CLSAVE AT 'IS)
20 DO 100 J=l,J51DO 120 N=:i.lnIFIISAVE(N.JI.EQ.O) GO TO 130CONTINUEN=111+1IEND=N-lPRINT 110.IISAVEl.'hJI.N=1.IEND)FORHATllHC25113.1XI.31/1H 25113.1XIIICONTINUERE TURNEND
11010C
120
130
C
C
TREA.FTREE.TRPRNT1 C2 C3 C456189
10111213141516111819202122232425262128293031
26 JPL Technical Memorandum 33-513
TREA *FTREE. TREE
JD=ODO 20 I=l,MlIORII1=ODO 20 K=l,M2
20 ISAVEII,KI=OITRY=lSUCJS=lIS=l
102030405[;60708090
10011012013014015016017018019020021022023024025026027C28029030031032033034035[;36C37C38039040041C420430440450460470480li90SOD510520530540550560570580590600610620630640650660670680690700710720730740750
SUBROUTINE TRtE INPUTS IN COHMON.
SUBROUTINE TREE GENERATES THE PROBABILITY TREE SUCCESS PATHS.WRITTEN BY PAUL CHELSON AND REVISED BY RON ECKSTEIN 1/1/70
SUBROUTINE TREE VARIABLES.
SUBROUTINE TREE OUTPUTS rN COMMON.
ISAVEI5G.2001 = SUCCESS PATHS I • - BLOCK NUMBER, PATH NUMBERIJSl = MAXIMUM NUMBER Of SUCCESS PATHS.
SUBROUTINE TREEI$1
TREETREETR EETREETR EE
18115,2.501 = IBIl,l,BLOCK.NUHBERJ=HAXIHUH NUHBER OF INPUTS OF NB.TREEIBl1,2,BLOCK NUMBER)=MAXIMUM NUMBER OF OUTPUTS OF NBTREE
THE REST OF THE ARRAY = INPUTS AND OUTPUTS OF BLOCK NUMBERSINBJ TREEISUC = SUCCESS bLOCK NUMBERIBASE OF PROBABILITY TREE). TREEJSUC = ISUC TO PRINT ORIGINAL PROB TREE, THEN ISUC VARIES. TREEIPRINT = PRI~T ALL TREES IF = 1. PRINT ORIGINAL TREE ONLY IF = O. TREENOPRNT = 1/0 = 00/00 NOT PRINT TREES WHEN MODIFYING PROB DATA. TREEIDRISCI = HOLDS &LOCKS MADE INACTIVE BY A FAILED BLOCKIIO). TREENl = MAXIMUM NUM3ER OF EQUIVALENT BLOCK SETS FROM MAIN PROGRAM. TREEITEMP = ARRAY OF EGUIVALENT BLOCKS FROM MAIN PROGRAM. TREE
TREETR EETREETR EETREETR EETREETREETRE£TR [[TREETREETREETR HTREETR EETREETREETREETR EETRHTRHTREETRHTREETR EETREETREETREETR EETREETR EETREETR EETREETR EETREETR EETREETR EETREETR EETREETR EETREETREETR EETREETR EETREETR EETREETREETREETR EETREETR EE
GENERATED, EQUALS H2, THETREEDIAGRAM SHOULD BE BROKEN TREEIN SERIES OR PARALLEL ANDTREE
INITIALIZE
IS = BLOCK NUMBER BEING WORKED ON.JS = PATH NUI':BE.R BEING l<iORKED ON.10 ~ A fAILED BLOCK.181 = NUM8ER 0F INPUTS FOR EACH OUTPUT BLOCK.
CHECK TO SEE IF IN DEAD ARRAY
ISAVEIIS,~SI=ITRY
K=ISAV£IIS,JSIIFIKI7G3,702.703IS=IS+l
CHECK TO SEE IF MAXIKUM NUMBER OF PATHS REACHED.
COMHON/ALLSUb/I':1.M2,M3,MII,M5,M6,M7,Ll.L3,L4,l5,L6COMMON/LGSUB/IBI15,2,5Gl ,IISISOJ,IRBISO,30J,ITEHPI41,201,Nl,
1 ISAVEI5C.2001,ISUC,JSUC.JS1,JSAVEI50,20Cl.IJS1,TOT,PRO81651,2 PR0811651,IPRINT,NSTD8YI151,NSBYMX.NOPRNT
DIME NSION IORI 50 1DOUBLE PRECISION TOT,PROS,PROBI
J=l3 J=J.1
DO 1 1=1,111IFlIcIJ,l.Kl-IDRIII11,2,1
2 IFIIBIJ,:,KI13,4,31 CONTINU£4 ISAVEIIS.~SI=16IJ.1,KI
GO TO 701IS1=IS-2
703
702
IFIJS- M21~02,901,9C2
901 IDR1=902PRINT 900, IDR1
90C FORMATI'lERROR IN SUBROUTINE TREE AT'I4JPRINT 510, JS
910 FORMATI'GJS, THE NUMBER OF SUCCESS PATHS1 MAXIMUM NUMGER OF SUCC[SS PATHS.'" THE2DCWN INTO SEVERAL SUB-DIAGRAHS CONNECTED
C
cCCCCCCCCCCCCCCCCCCCCCCCCCCC
cCC
C.700701
cCC
CCC
123456789
1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636116566676869707172737475
JPL Technical Memorandum 33-513 27
510 ID=-ISAVEIIS-l,JS.llJS=J$+lJD3=O
K IS NO. OF CUT PUTS OF IDR(JDl
CHECK PATH TO SEE IF ELIMINATED BY EQUIVALENT aLOCKS IN IT.IIF THE SIGN OF ANY TWO EQUIVALENT BLOCKS IN A SET ALTERNATESl
B~GIN DEAD ROUTINE WITH 10CHECK ALL BLOCKS FOR WHJCH Ie IS AN INPUT BLOCK. WHENEVER ALLINPUTS TO A BLOCK ARE IN IDRCTHUS FAILED OR INACTIVE), THEN THATBLOCK IS ALSO INACTIVE,SO IS PUT IN lOR.
IORI JO+lI=IDJD1=1+JD3JO=JD+lJD1=JDl-1IFIIDRIJOll379,378,379IDRl=IORIJDIK=I611 ,2,IDRll
DO 500 N=l, IS 1ISAVEIN,JS+1l=ISAV[(N,JSlISAV~CI5-1,JS+11=-ISAVEIIS-l,JS)
IFIIBl-21352,353.35300 354 N=l,IB1IN=lN2=N+lDO 355 M=::',H1IFI IBIN2,l,IDR2l-IDRIMJl 3550356,355IN=2CONTINUEGO TO 135C,354l,JN
181 IS NO. OF INPUTS FO~ EACH OUTPUT BLOCK
DO 350 l=::',KIOR2=IBII+1,2,IDRllIEsl=IbI1,l,ICR2 1
IFIN1.EQ.CI GO TO 171200 1130 L=l,H7ITEHPll,L1=OCONTINUEDO 1711 J=1ot11K=ISAVEI J,JSlIFIKl1108,1711,ll08IFINll1111,1711,l107DC 1100 L=l,t>l00 1100 M=2,L6IFIK-ITEMPIH.LII11GC,11Cl,11COCONTINUEGO T:l 1711IFI IT£HPI1,U 11112,1103,1104ITEHPll,Ll=KGO TO 1711IFIK11102.1711,1111IFIK11711,11G2,1102ISAVEIIS-1.JSI=-ISAVEIIS-l,JSIJS=JS-lGO TO 51CCONTINUE
3 RERUN INDIVIDUALLY.' /' THEN ENTER EACH SUB-DIAGRAM AS ONE BLOCK TREE 76040N A FINAL RUN.'/' DO NOT BREAK UP EQUIVALENT BLOCK SETS OR STAND8TREE 7705Y REDUNDANT SYSTEMS.'/' IF YCUR DIAGRAM CANNOT BE BROKEN DOWN SUFFTREE 7806ICIENTLY, CONTACT PAUL CHELSON OR RON ECKSTEIN AT 213 354-5691.'/'TRE£ 7907 JS='I!ll TREE 800
RETURN 1 TREE 810TREE 820TREE 830TREE 840TREE 850TREE 860TREE 870TREE 680TREE 890TREE 900TREE 910TREE 920TREE 930TREE 940TREE 950TR EE 960TREE 970TREE 980TREE 990TR EElOOOTREE1010TREEI020TREE1030TREEI040TREEI050TR EEl060TREEl070TREEl080TREEl090TREEllOOTREEl110TREE1l2C
IO=A FAILED oLOCKtIDR HOLDS FAILED BLOCKS AND BLOCKS HADE TREE1130INACTIVE BY A FAILED SLOCK. AN INACTIVE BLOCK IS A BLOCK FOR WHICHTREEl131ITS INPUTS ARE ALL FAILED, THUS IT IS OF NO USE AS A POSSIBLE TREE1132BLOCK IN A SUCCESS PATH TREEl133
TRE£1140TREEl150TRE£1160TREEl170TR [[1180TREE1190TREE1191TREEl192TR EE119 3TREE1200TR EEl210TR£E1220TREE1230TREE1240TR EE1250TREE1260TRE£1270TREE1280TR E£1290TREE1300TREE131CTREE1320TR [[1330TREE1340TR EEl350TREE1360TREE1370TREE1380TR EEl390TREEBOOTR EEl41CTREE1420TREEl430TREE1440TREE1450
38G
397
379
356355
353
9CZ
1100
1130
11011103
11081107
110411121102
CCCCCC
1711C
1712500
CCCCCC
CCC
CoCC
CCC
767778798081828384858687888990919293949596979899
lOG101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
28 JPL Technical Memorandum 33-513
1521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992CO2u1202203204205206207208209210211212213214215216
·217218219220221222223224225226227
354 CONTINUE TREE1460C TREEl461C FINISHING THE 354 LOOP MEANS THAT ALL INPUTS TO IOR2 ARE IN lOR. TREE1462C THUS IOR2 SHUULD ALSO BE INACTIVE AND IN IDR TRH1Il63C TREE1464C IS IT ALREADY IN lOR TRH1466C TREEl467
352 DO 39G N=l.Hl TREEl47CIFl IDR2-IDR(N 11390.35C.330 TREE148C
390 CONTINUE TREEl490C TREE1491C IF NOT. PUT IDR2 IN lOR TR EE1492C TREE1493
JIJ1=JIJ1+1 TREEl50CJD2=JD+JDl TREE1510IDRlJD21=IOR2 TREE152DIF ( 10 Rl J02 I-I SUC 1350.381.350 TRE:£1530
350 CONTINUE TREEl540GO TO 330 TREE1550
C TREEl56CC 381 ROUTE INDICATES TOTAL FAILURE TREEl570C TREEl58C
381 K=O TREE1590395 K=K+1 TREEl600
IK1=Ll-K TREE1610IFIISAVElIKI.JSI1395.395.396 TREE162C
396 ISAVElIK1.JSI=-ISAVElIK1.JS) TREEl63CIo=-ISAVElIKltJS) TREE164CIK2=IK1+1 TREE1650IS=IK2 TREEl660DO 377 N=IK2.IU TREE1670
377 ISAVEtN.JS)=lJ TREEl680IF(IK1-1)398.800.398 TREE1690
398 DO 361 I=l.Ml TREEl700361 IORlI)=O TREEl710
JD=O TREEl72CIK3=IK1-1 TREE1730JD3=1 TREEi74000 611 I=1.IK3 TREE1750IFUSAVEII.JSI1612.613.£>11 TRHl76C
C TREE1770C ERROR 613, A SUCCESS PATH HAS A ZERO INSIDE IT. TREEl78CC TREE1790
613 ISUC=613 TREE180CPRINT 900. ISUC TREE1810PRINT 95u TR EE1820
950 FORHATl'OCHECK THE DIAGRAM ON THE FIRST PAGE OF THE PRINT OUT TO STREE1830lEE IF ALL BLOCK NUMBERS ARE LISTED AND THAT THE INPUT/OUTPUT lISTSTRE[18402'/' CORRECTLY DESCRIBE YOUR DIAGRAH. IF SO. MAKE SURE YOUR DIAGRATREE18503M SATISFIES THE DEFINITION OF A RELIABILITY fLOCK DIAGRAM.') TREEl860
PRINT 920, JS TREEl87C920 FORMATl'uA SUCCESS PATH HAS II ZERO INSIDE IT. JS='I4) TRE[188C
RETURN 1 TREE1890C TRE[19CC
612 JD3=JD3+1 TR£E19I0IoRlJD3)=-ISAvEtr,JSI TRE[192C
611 CONTINUE TR£E1930JD3=JD3-1 TRE[1940GO TO 337 TREE1950
378 JD=JD-l TREE1960DO 385 r=l.Ml TRHl970II=ll-I TREE1980ISA=ISAVE tIl.JS) TR EE1990IF(ISAI385,385.61C TREE2000
610 00 386 J=.;..Ml TREE2010IF( ISA-IDR (J) ) 3&6 0385.386 TREE2020
386 CONTINUE TREE2030GO TO 1000 TREE2040
385 CONTINUE TREE20S0C TREE2060C ERROR 38~, THE 385 00 LOOP HAS cEEN COMPLETED. TREE207CC TREE20ao
ISUC=385 TREE209C. PRINT 90C. I$UC TREE2I00
PRINT 950 TREE21lCPRINT 93D. JS TREE2120
JPL Technical MerrlOrandurn 33 - 513 29
930 FORHATI'OTHE 385 DO LOOF HAS BEEN COHPLETED.RETURN 1
BOG ISAVEll,JSI=lJSl=JS-l
I SUC =38 7PRINT 900. ISUCPRINT 950PRINT 9110. ISA
9110 FORMATI'OISA. BLOCK NUMBER New BEINGlENT OF lOR ARRAY, YET ALL ITS INPUTS
RE TURN 1630 ITRY=N2
TR [E213 CTREEZl'IOTR EE2lS 0TREEZl60TR [[2170TR£EZl80TR £E2190TR£E2Z00TR£EZZlOTR££2Z2DTR EE223 0TREEZ21i0TRH225GTREEZZ6CTREE227CTREE2280TR £E229 CTR£EZ30C
ELEIHRE[231CTREE23Z0TR [E233 0TRE£Z340TR [[Z350TREEZ360TR [[2370TR£E238eTR [[2390TREEZ40eTRE[21110TREEZII2CTR EE2113 CTREEZ440TREEZ450TREEZ46CTREEZII8CTREE2490TR EELSeaTREEZ510TRE[2SZCTREE2530TR[[Z540TREEZ55CTR[[2560TREEZ570TR£E2580TREEZ590
JS='Ilil
PUT INTO PATH, IS NOT ANARE ELEMENTS. ISA='IIiI
END DEAD ROUTINE. RETURN ITRY
ERROR 387. THE 367 CO LOOP HAS BEEN COMPLETED.
GO TO 70a
IN=I8(l,l.ISA)DO 387 J=l,JNN2=Ia( J+l.l,ISA)DO 368 I=l.MlIFIN2-IDRIII1388,387.38aCONTINUEGO TO 630CONTINUE
800 ROUTE MEANS END OF TREEZERO OUT FIRST BLOCK NUMBER IN FAILURE PATH.
IF{IPRDH.LE.ll GO TO leonoIFIISUC.NE.JSUCI GO TO 2000GO TO 2001IFIIPRINT.LT.31 GO TO leocePRINT 633, ISUCFORMATI'lPRO£ABILITY TREE'III ICALL TRPRNTI5,ISAVE.JSl.01RE TURNEND
If IPRINT .NE. Ii - 00 NOT PRINT TREES AGAIN WHEN MODYfYING PROBIF IPRINT = 2 - PRINT O"IGINAL TREE ONLY.If IPRINT = 3 - PRINT ALL TREES.
388
387
2eoe2001
633
ClCDO
CCC
lcooe
cCCC
CCC
cccCc
2282292302312322332311235236237238239211021112112211321111211521162117211821192:025125225325112552562572582592602612622632611265266267268269270271272273
30 JPL Technical Memorandum 33-513
TREA -FTREE. SYSP
CHECK PATH TO SEE IF ELIMINATED BY EQUIVALENT BLOCKS IN IT.lIF THE SIGN OF ANY TWO EGUIVALENT BLOCKS IN A SET ALTERNATES)
10203C4050601G809C
1CO110120130140lSC16011C1801%20021022023024025C26021C28029030031C32033034035036037038039040041042043044045C460470480490SCOSIC520530540SSG56057058059060061062063064065066067C6806%70011072073C740150
SY SPSYSPSY SFSYSPSYSPSYSPSYSPSYSPSYSPSYSPSY SPSYSPSYSPSYSPSYSP
PATHJSYSPSY SPSYSPSYSPSYSPSYSPSYSPSY SPSYSPSY SPSYSPSY SPSYSPSYSPSYSPSY SPSYSPSY SPSYSPSY SPSYSPSY SPSYSPSYSPSYSPSY SPSYSPSYSPSYSPSY SPSYSPSYSPSYSPSY SPSYSPSY SFSYSPSYSPSYSPSYSPSYSPSYSPSYSPSYSPSYSPSYSPSYSPSYSPSYSPSYSPSYSPSY SPSYSPSYSPSYSPSY SPSYSPSYSPSYSPSYSF
OF PROBlKJ IN
SUBROUTINE SYSP INPUTS IN COMMON.
SUBROUTINE SYSP CALCULATES THE SYSTEM PROBABILITY - RETURNS TOT.WRITTEN BY PAUL CHELSON AND REVISED BY RON ECKSTEIN 1/1/70
JSl = MAXIMUM NUMBER OF SUCCESS PATHS FROM TREE SUBROUTINE.ISAVElSO.200l = IBLOCK NUMBERS. SUCCESS PATH NUMBERl FROM TREE.Nl = MAXIMUM NUMBER OF EQUIVALENT BLOCK SETS FROM MAIN PROGRAM.ITEMP = ARRAY OF EGUIVALENT E.LCCKS FROM MAIN PROGRAM.PROBI = PROaA8ILITY OF THE BLOCKS FROM MAIN PROGRAM.
PROB = PROBIK = ISAVElJ.Il = BLOCK ~UM6ER oEING WORKED ON.PTOT = PROBABILITY OF ONE SUCCESS PATHIPRODUCTTOT = THE SUM OF ALL PTCT I SYSTEM PRCBABIlITY l.
SUBROUTIN£ SYSP VARIABLES.
ADD PROBABILITIES OF PATHS.
SUBROUTINE SYSP
MULTIPLY PR03ABILITIES OF BLOCK NUMBERS IN A PATH.
INITIALIZE.
DC 122 1=1.L4PROBII)=PROBllI)CONTINUETOT=O.OD+O
DO 710 I=l.JSlP10T=1.DO 130 L=l. 147ITEMPll.l)=OCONTINUE
DO 711 J=l.MlK=ISAVEIJ.I)IFCKH08.110.108
IFINl)10G.106.107DO 100 L=1.N1DO 100 M=2.L£IFIK-ITEMPlM.L»)lOC.1Gl,lOOCONTINUEGO TO 106IFIITEHPI1.Ll)102.103.1C4ITEHP (l,Ll =KGO TO 106IFl Kll05.109,IC9PR08IK)=1.OGO TO 112K=-KPROBIKl=l.OGO TO 110IFIK1111.112,l12PROBIKl=O.CGO Te 712K=-KPROBI K)=0. 0GO TO 110IFtKI714.711.712PTOT=PTOT-PROBIKIGO TO 130K=-K
CCMMON/AlLSUb/Ml.M2.H3.M4.MS.M6.M7.l1.L3.l4.lS.L6COMMON/LGSUB/IBl15.2.S0) .rISI50l.IRBlSO.30).ITE~PI41.20l.Nl.
1 ISAVEl50.20Ql.ISUC.JSUC.JS1.JSAVElSO.20CI.IJS1.TOT.PRO6(65).2 PROBl(65).IPRINT.NSTDBYllS).NSBY~X.NOPRNT
DCUBLE PRECISION PTOT.TOT.PRCB.PROBI
122
130
lC8107
100
III
101103
105
104109
102112
106712
714
CCCCCCCCCCCCCCCCCC
C
CCC
CCC
CCC
CCCC
123456789
10111213141516171819202122232425262728293031323334353637383940414243444546li748495051525354555657585960616263646566676869707172737475
JPL Technical Memorandum 33-513 31
32
76 110 PTOT=PTOT.11.D-PROSIKJ) SYSP 76077 730 PROS (K I =Pf<OSll K I SYSP 77078 711 CONTINUE SYSP 78079 710 TO T= TO T+P TOT SYSP 79080 RETURN SYSP 80081 END SVSP 810
JPL Technical Memorandum 33-513
102030405060108090
100110120130HO15016017018019020021022023021+025026027G2802%30031032033031+035036037G3803901+001+10
SBPRS8PRSBPRSBPRSBPRSBPRS8PRSBPRSBPI<saPRsaPRS8PRSBPI<S8PRSBPRSBPRSBPRSBPRSBPI<SBPRsapl<SBPRSBPRS8PRSBPRSBPRSBPRSBPRSBPRSBPRsaPRsaPRSBPRsaPRsapl<S8PRSBPRSBPRSBPRS6PRSBPI<
FUNCTION STBYPR CALCULATES THE STANDBY TREE PROBABILITY FOR TIME11 THRU TT OT.WRITTEN BY RON ECKSTEIN 1/1110
FUNCTION STBYPRIISAVE.JSl.RO.TL.RT.KT.JT,TTOT.NSTEP.TLOI
STEP1=-TTCT'IKT-II/NSTEPSTEP2=-TTOT*JT/NSTEPTOT=O.
INITIALIZE
COMMON/ALLSU~/M1,M2.M3,MI+,M5.~6.M1.Ll.L3.LI+.l5.L6
DIMENSION ISAVEIM1. M21.ROIMll.TLIMll.RTILI+.1011.TLDIMllCOUBlE PRECISION TGT,FTOT.DPREC,STEPl.STEP2
CHECK FOR STANDBY BLOCKI51-651/IL1-LI+I.
DO 10C I=l,J:>lPTOT=1.0DO 90 J=l,MlK=ISAVEIJ.IIIF IK 170 ,90,8e
70 K=-KIFIK.GT.M11 CO TO SGDPREC=ISTEP1'TLIKII+ISTEP2'ITlDIKI-TLIKIIIPTOT=FTOT'll.C-RCIKI·DEXPIDPRECIIGO TO 90
80 IFIK.GT.Mll GO TO 85OPRE c= I STEP1' TLl K11+ 1ST EP 2' III DIK I-TLl KI IIPTOT=?TOT.ROlKI*DEXPlOPRECIGO TO 90
85 PTOT=PTOT'RTlK.JTIGO TO 90PTOT=PTOT'11.C-RTIK.JTIJC0NTINUETOT=TOT+PTOTSTBYPR=TOTRETURNEND
8690
100
C
CCC
C
CCC
TREA*FTREE.STBYPR1 C2 C3 C4 C56189
10111213141516111819202122232425262128293031323331+35363738391+01+1
JPL Technical Mem.orandum. 33-513 33
SUBROUTIN£ OUPTREIJSAVE,IJSl,ISAVE, JSlj
COMMON/ALLsua/Ml,M2,M3,MII,M5.M6,M7,Ll,L3,LII,L5.L6DIMENSION ISI.VEIHl.H21.JSA'JEIH1,M21
SUBROUTINE OUPTRE DUPLICATES ISAVE INTO JSAVE AND SETS IJSl=JS1.WRITTEN BY RON ECKSTEIN 1/1/ 70
DP TR 1COPTR 20DP TR 3COPTR 40OP TR 50OPTR 60DP TR 7COPTR 80DP TR 9COPTR lCODP TR 110OPTR 120DP TR 130OPTR 1'+0DP TR 150DPTR 160DPTR 170
SET IJSl = JS1.DUPLICATE ISkVE INTO JSAVE.
DO 1C I=1.M2DO 10 J=l,MlJSAVEIJ,I)=I~AV(IJ,II
10 CONTINUEI JSl =JSlRETURNEND
C
CCC
TREA*FTREE.OUPTRE1 C2 C3 CII56789
10111213111151617
34 JPL Technical Memorandum 33-513
TREA*FTREE.STDBY2
INITIALIZE
GENERATE SENSE TREE
SUBROUTINE STOBY21$.NSI
102030405060708090
10011012G1301401501601701902002102202302'+02502602702802903003103203303'+0350360370380390400'+10li2G430li'+Oli50'+60li10'+80'+9050051052053054055056C570580590600610620630640650660610680690100710120730740750160
ISUC=NSCALL TREEI $lliJOI
NOW WE HAVE STAN03Y TREE IN ISAVE.
SUBROUTINE STDBY2 IS FOR 2 OR MORE STANDBY BLOCKS CONTROLLED BY A STBYSENSE BLOCK. IT GENERATES THE STANDBY TREE. CALLS SUBROUTINE STEYTRINTR WHICH PUTS THE STANDBY 6LOCK151-651 IN PLACE OF THE FIRST STBYPATH OF THE STANDBY TREE IMBEDDED IN THE PATH OF THE ORIGINAL TREESTEYTHEN ELIMrN~TES ORIGINAL TREE PATHS THAT CONTAIN 2ND-JS1 STANDBY STSYPATHS. THEN PUTS THE NEGATIVE STANDBY BLCCKI51-651/IL1-L41 IN STBYAND ELIMINATES CORRESPONDING PATHS. WRITE STANDBY TREE ON TAPE. STSYWRITTEN BY RON ECKSTEIN 1/1170 STBY
STBYST BYSTBYSTBYSTBYSTEYSTBYSTBYSTBYSTEYSTBYST BYSTBYST BYSTBYSTBYSTBYSTBYSTBYSTBYSTEYSTBYSTEYSTBY
GENERATE STANDBY TREE 6Y ZERCING OUT ALL BLOCK NUMBERS IN ISAVE STBYEXCEPT THOSE STANDBY BLOCK NUMBERS CONTROLLED BY THE SENSE BLOCK. STBY
STEYSTBYSTBYSTBYSTEYSTBYSTBYSTBYSTBYSTBYSTEYSTBYST BYSTBYSTEYSTBYSTBYSTBYSTEYSTBYSHY
SUBROUTINE DUPOUT STORES PATH NUMBERS THAT ARE DUPLICATES IN NPUP ST6YAND CALLS PATHUP TO ELIMINATE DUPLICATE PATHS. STBY
STBYSTeYSTBYSHYSTBYSTBYSTBYST BYSTBYSTBYSTBYSTilYSTBYSTBYSTBYSTeySTBYSTBY
CALL PATHINI$11CC.ISAVE.JS11
SUBROUTINE PATHIN ZEROS OUT ALL NUMBER BLOCKS IN ISAVE THAT ARENOT EQUAL TO ANY OF THE NBIN ARRAY NUMBER BLOCKS.
CALL N£GOUTI$11GO,ISAV£.JS11
CALL SFLEfTI~110C.ISAV£.JS1I
CALL DUPOUTI$11CC.ISAVE.JS1I
SUBROUTINE SFLEFT SHIFTS PATHS IN ISAVE TO THE LEFT UNTIL NONZERONB AT LEFT-MOST. fILL IN ZEROS AfTER SHIfTING. IF 50 ZEROS PUTSPATH NUMBER IN NPUP ARRAY AND CALLS PATHU? TO ELIMINATE.
SUBROUTINE NEGOUT STORES fAILURE PATH NUMBERS ENDING wITH ANEGATIVE SIGN IN NPUP ARRAY. THEN CALLS PATHUP TO ELIMINATE.
CALL TRINTfl ($1100. JSA VE. IJS 1. ISAVE, JS 1. NS TOBY .:NS BY MX. NSS)
SUBROUTINE TRINTR PUTS THt: STANDBY BLOCKI51-65) IN PLACE OF THEFIRST PATH OF THE STANDBY TREE IMBEDDED IN THE PATH OF THEORIGINAL TREE IN JSAVE. THEN ELIMINATES ORIGINAL TREE PATHS THATCONTAIN 2NG-JSl STANDBY PATHS. THEN PUTS THE NEGATIVE STANDBYBLOCK(51-651/IL1-L4J IN AND ELIMINATES CORRESPONDING PATHS.
COMMON/ALLSUL/Ml.M2.M3.M4,M5,M6,M1.L1.L3.L4.L5.L6COM MON/L GSUBI IB 115.2. SOl • IISI SOl dRB 150030 I .ITEMP (410 20), Ni.
1 ISAVEI50,2CLI.ISUC.JSUC.JS1.JSAVEI50.2001.IJS1.TCT.PROB(651.2 PR0311551.IPRINT.NSTD&Y(151.NSBYMX.NOPRNT
CCMMON/SMSUB/NPUPI2COI.NPUPMX.NBOUT(50).NBOTMX.NBINI50).NBINMX.1 NBNUMI5JI,NaNMAX
DOUBLE PRECISION TOT.PROS.PRCBl
DC 10 I=1.MlNBINIII=O
Hi CONTII\UENSS=O
IE ND=IRB III:S.:il +1L=ODO 60 I=2,IE"DL=L+1NBINILI=IRBINS,II
60 CONTINUENEINMX=L
CCCCC
CCC
CCCCCC
CCCC
CCC
CCCCCCCCC
C
CCCC
CCCC
C
CCCCCCCC(;
1.2345&789
1011121314151&1718192021222324252&2728293D~1
323334353&3138394041424344454&414849505152535455565758596C616263646566616869701172731415
JPL Technical Memorandum 33-513 35
36
76 C SAVE STANDBY TREE AND ITS STANDBY 8LOCKI51-651/ILl-L~). STBY 77071 C STBY 78078 WRITEllOI NSTDBYINSBYMX) • JSl STBY 79079 DO 900 I=1oM2 SHY 80080 WRITEll01 I IS AVE I J • I I • J= 10 M1) STBY 81081 90G CONTINUE SHY 82082 RETURN STay 83083 1100 PRINT 1101 SHY 8~O
ali 1101 FORMAT( , SUBROUTINE CALLED FROM STDBY2.') STBY 85085 RE TURN 1 SHY 86086 ENO STBY 870
JPL Technical Memorandum 33-513NASA - JPL - Coml., L.A., Calif.