SUBROUTINE OPTION(R,Q,RROW,QROW,RCOL,QCOL,T,U,W,B,ZZ,FHAT,FHATP, & SHAT,SHATP,SHATF,SHATQ,N,M,K,KS,IOPT,CHI2,IDF2) IMPLICIT DOUBLE PRECISION (A-H,O-Z) COMMON /OPTCOM/ THETA,TSTAR,TDSTAR,RHO,RPRIM,TR,TP, 1 PSI,PSIP,SAVER,SAVERP,DELTA,V,DIFF,CORR,F,FP,SAVE DOUBLE PRECISION THETA(21),TSTAR(21),TDSTAR(21),RHO(21), + RPRIM(21),TR(21), & TP(21),RSTAR(21),RDSTAR(21),PSI(21),PSIP(21),SAVER(21), & SAVERP(21),DELTA(42),V(42,42),DIFF(42),CORR(4,4) & ,F(21),FP(21),SAVE(4) EQUIVALENCE (TSTAR,RSTAR),(TDSTAR,RDSTAR) REAL Q(20,20),RROW(21),QROW(21),RCOL(21),QCOL(21),T(21),U(21) & ,W(21),FHAT(21),FHATP(21),SHAT(21),SHATP(21),SHATF(21) REAL N(21),M(21),R(20,20) REAL B(20,20),ZZ(20,20) REAL SHATQ,CHI2 INTEGER YEAR(20) INTEGER EXP COMMON /TT/YEAR CHARACTER TITLE*80 COMMON /TTCHAR/ TITLE CHARACTER*3 HYP1,HYP2 CHARACTER A*2 CHARACTER*3 LABEL1,LABEL2,LABEL3,LABEL4,LABEL5 DATA LABEL1/' F('/,LABEL2/'F''('/,LABEL3/'S '/,LABEL4/'S'''/, & LABEL5/')'/ DATA A/'--'/ DATA HYP1/'H01'/,HYP2/'H02'/ C IS=KS-K C FA=0.0D0 FAPRIM=0.0D0 SA=0.0D0 SAPRIM=0.0D0 DO 70 I=1,K F(I)=FHAT(I) FA=FA+F(I) FP(I)=FHATP(I) FAPRIM=FAPRIM+FP(I) IF (I.EQ.K) GO TO 70 SA=SA+SHAT(I) SAPRIM=SAPRIM+SHATP(I) E=N(I+1)*(RROW(I+1)+1)/(RROW(I+1)*(N(I+1)+1)) SHAT(I)=SHAT(I)*E SHATP(I)=SHATP(I)*E 70 CONTINUE FA=FA/K SA=SA/(K-1) FAPRIM=FAPRIM/K SAPRIM=SAPRIM/(K-1) SUM=0.0D0 E1=0.0D0 DO 1 I=2,K E= T(I)+U(I)-RROW(I)-QROW(I)-QROW(I-1)+Q(I-1,I-1) SUM=SUM+E E1=E1+E*ALOG(SHAT(I-1)) 1 CONTINUE IF (IS.EQ.0) GO TO 97 DO 40 I=1,IS KI=K+I T(KI)=0.0 U(KI)=0.0 DO 40 J=I,IS T(KI)=T(KI)+RCOL(K+J) U(KI)=U(KI)+QCOL(K+J) 40 CONTINUE SUM=SUM+T(K+1)+U(K+1)-QROW(K)+Q(K,K) IF (IS.LT.2) GO TO 97 DO 3 J=2,IS 3 SUM=SUM+T(K+J)+U(K+J) C C---- ESTIMATES UNDER H01 C 97 IT=0 C---- START NEW ITERATION 99 CONTINUE IT=IT+1 IF (IT.EQ.26) GO TO 824 C---- COMPUTE THETA(I),RHO(I) AND RHO'(I) DSA=1-SA DO 4 I=1,K THETA(I)=(1-SA**(KS-I+1))/DSA RHO(I)=FA*THETA(I) IF (I.EQ.1) GO TO 4 RPRIM(I-1)=FAPRIM+SAPRIM*FA*THETA(I) 4 CONTINUE C C---- SET SUMMATION LIMITS KSTOP6=KS-2 KSTOP7=KS-3 IF (IS.GT.3) KSTOP7=K+1 JS=IS-1 IF (JS) 5,6,7 C---- S=0 5 THETA(K+1)=0.0D0 THETA(K)=1.0D0 TSTAR(K-1)=1.0D0 TDSTAR(K-2)=2 RHO(K)=FA RPRIM(K)=FAPRIM KSTOP1=K-2 KSTOP2=K-3 KSTOP3=K-1 KSTOP4=K-2 KSTOP5=K-3 GO TO 8 C---- S=1 6 THETA(K+1)=1 TSTAR(K)=1 TDSTAR(K-1)=2 RPRIM(K)=FAPRIM+SAPRIM*FA KSTOP1=K-1 KSTOP2=K-2 KSTOP3=K KSTOP4=K-1 KSTOP5=K-2 GO TO 8 C---- S>2 7 THETA(K+1)=(1-SA**IS)/DSA RPRIM(K)=FAPRIM+SAPRIM*FA*THETA(K+1) KSTOP1=K+1 KSTOP2=K+1 KSTOP3=K KSTOP4=K KSTOP5=K KSTOP6=K+1 IF (IS.GT.2) GO TO 8 C---- S=2 TSTAR(K+1)=1 TDSTAR(K)=2 KSTOP1=K KSTOP2=K-1 KSTOP5=K-1 KSTOP6=KS-2 8 CONTINUE C C---- COMPUTE THETA*(I) AND THETA**(I) DO 9 I=1,KSTOP1 EXP=KS-I TSTAR(I)=(THETA(I)-(EXP+1)*SA**EXP)/DSA IF (I.GT.KSTOP2) GO TO 9 TDSTAR(I)=(2*TSTAR(I)- (EXP+1)*EXP*SA**(EXP-1))/DSA 9 CONTINUE C---- COMPUTE PSI(I),PSI'(I) AND ESUM D11=0.0 D12=0.0 PSI(1)=N(1) PSIP(2)=M(1)*SAPRIM DO 10 I=2,K PSI(I)=SA*PSI(I-1)+N(I) PSIP(I+1)=SA*PSIP(I)+M(I)*SAPRIM D11=D11+PSI(I-1)*RHO(I) IF (I.EQ.2) GO TO 10 D12=D12+PSIP(I-1)*RHO(I) 10 CONTINUE ESUM=D11+D12 IF (IS.GE.1) ESUM=ESUM+FA*(PSI(K)+PSIP(K))*THETA(K+1) IF (IS.LE.1) GO TO 15 D11=0.0 DO 16 J=2,IS SJ=SA**(J-2) D11=D11+(1-SA**(IS-J+1))*(SA*SJ*PSI(K)+SJ*PSIP(K+1)) 16 CONTINUE ESUM=ESUM+FA*D11/DSA 15 CONTINUE C C---- CALCULATE SUMMATION TERMS OF VECTOR DELTA AND MATRIX V D11=0.0D0 D12=0.0D0 D13=0.0D0 D21=0.0D0 D22=0.0D0 D32=0.0D0 D33=0.0D0 D41=0.0D0 V111=0.0D0 V112=0.0D0 V131=0.0D0 V132=0.0D0 V221=0.0D0 V222=0.0D0 V331=0.0D0 V332=0.0D0 PROD1=1-FAPRIM PROD2=PROD1*SAPRIM C DO 11 I=1,K QDIFF=QROW(I)-Q(I,I) DR=1-RHO(I) DRP=1-RPRIM(I) TW=(N(I)-RROW(I))/DR TQ=(M(I)-QROW(I))/DRP D11=D11+RROW(I)+QDIFF D12=D12+TW*THETA(I) D21=D21+Q(I,I) D22=D22+TQ D41=D41+QDIFF V111=V111+N(I)*THETA(I)/DR V221=V221+M(I) V222=V222+M(I)/DRP C IF (I.GT.KSTOP3) GO TO 11 D13=D13+TQ*THETA(I+1) D32=D32+TW*TSTAR(I) V112=V112+M(I)*THETA(I+1)/DRP V131=V131+N(I)*TSTAR(I)/DR C IF (I.GT.KSTOP4) GO TO 11 D33=D33+TQ*TSTAR(I+1) V132=V132+M(I)*TSTAR(I+1)/DRP V331=V331+N(I)*(TDSTAR(I)+FA*TSTAR(I)*TSTAR(I)/DR) C IF (I.GT.KSTOP5) GO TO 11 V332=V332+M(I)*(TDSTAR(I+1)+SAPRIM*FA*TSTAR(I+1)*TSTAR(I+1)/DRP) 11 CONTINUE C C---- CALCULATE VECTOR DELTA AND MATRIX V DELTA(1)=D11/FA-D12-SAPRIM*D13 DELTA(2)=D21/FAPRIM-D22 DELTA(3)=SUM/SA-FA*D32-SAPRIM*FA*D33 DELTA(4)=D41/SAPRIM-FA*D13 V(1,1)=V111/FA+PROD2*V112/FA V(1,2)=SAPRIM*V112 V(2,2)=V221/FAPRIM+V222 V(1,3)=V131+PROD2*V132 V(2,3)=SAPRIM*FA*V132 V(3,3)=ESUM/SA+FA*V331+SAPRIM*FA*V332 V(1,4)=PROD1*V112 V(2,4)=FA*V112 V(3,4)=PROD1*FA*V132 V(4,4)=FA*PROD1*V112/SAPRIM IF (IS.EQ.0.OR.IS.EQ.1) V(3,3)=V(3,3)+FA*FA*N(KSTOP3)/ & (1-RHO(KSTOP3))+SAPRIM*SAPRIM*FA*FA*M(KSTOP4)/(1-RPRIM(KSTOP4)) IF (IS.EQ.2) V(3,3)=V(3,3)+SAPRIM*SAPRIM*FA*FA*M(K)/(1-RPRIM(K)) DO 17 I=1,4 DIFF(I)=0.0D0 DO 17 J=I,4 17 V(J,I)=V(I,J) C---- INVERT MATRIX V CALL INV2(V,4,0,1,4,DET,42) C C---- COMPUTE CORRECTIONS AND ADD TO ESTIMATES DO 18 J=1,4 DO 18 IJ=1,4 DIFF(IJ)=DIFF(IJ)+V(IJ,J)*DELTA(J) 18 CONTINUE FA=FA+DIFF(1) FAPRIM=FAPRIM+DIFF(2) SA=SA+DIFF(3) SAPRIM=SAPRIM+DIFF(4) C C---- ITERATE UNTIL ALL CORRECTIONS ARE SMALLER THAN 1.0D-7 C---- OR UNTIL 25 ITERATIONS HAVE BEEN COMPLETED DO 19 I=1,4 IF (DABS(DIFF(I)).GT.1.0D-7) GOTO 99 19 CONTINUE DO 21 I=1,K SAVER(I)=RHO(I) SAVERP(I)=RPRIM(I) 21 CONTINUE SAVE(1)=FA SAVE(2)=FAPRIM SAVE(3)=SA SAVE(4)=SAPRIM WRITE(6,612) TITLE 612 FORMAT('1',1X,A80//) WRITE(6,301) HYP1,(A,I=1,9),(A,I=1,6) WRITE(6,302) WRITE(6,304) (A,I=1,5) WRITE(6,305) WRITE(6,306) WRITE(6,307) WRITE(6,308) HYP1,(A,I=1,16) WRITE(6,323) WRITE(6,324) WRITE(6,325) WRITE(6,601) HYP1,(A,I=1,9) 601 FORMAT(/////// ' ESTIMATES UNDER ',A3/2X,9A2,'-') WRITE(6,602) DO 101 I=1,4 DIFF(I)=DSQRT(V(I,I)) E=1.96*DIFF(I) CORR(I,1)=SAVE(I)-E CORR(I,2)=SAVE(I)+E 101 CONTINUE WRITE(6,603) (A,I=1,25), (A,I=1,25) WRITE(6,604) WRITE(6,650) (SAVE(I),DIFF(I),(CORR(I,J),J=1,2),I=1,2) WRITE(6,610) WRITE(6,603) (A,I=1,25),(A,I=1,25) WRITE(6,604) WRITE(6,650) (SAVE(I),DIFF(I),(CORR(I,J),J=1,2),I=3,4) WRITE(6,605) 605 FORMAT(7(/),2X,'ESTIMATED COVARIANCES AND CORRELATIONS UNDER H01') DO 102 J=1,4 DO 102 I=1,4 102 CORR(I,J)=V(I,J)/DSQRT(V(I,I)*V(J,J)) WRITE(6,606) WRITE(6,609) V(1,2),CORR(1,2),V(1,4),CORR(1,4) WRITE(6,607) WRITE(6,609) V(1,3),CORR(1,3),V(3,2),CORR(3,2) WRITE(6,608) WRITE(6,609) V(3,4),CORR(3,4),V(2,4),CORR(2,4) WRITE(6,621) WRITE(6,611) IT C---- ESTIMATES UNDER H02 1003 IT=0 IF (IS.EQ.0) GO TO 98 KST=K+1 DO 807 J=KST,KS IF (RCOL(J)+QCOL(J).LE.0.1) GO TO 842 807 CONTINUE DO 106 I=1,IS 106 F(K+I)=FA 98 CONTINUE IT=IT+1 824 IF (IT.EQ.26) GO TO 825 C---- COMPUTE RHO(I),RHO*(I), AND RHO**(I) SAPSQ=SAPRIM*SAPRIM KM=KS-1 DO 22 I=1,KM PROD3=1.0D0 RHO(I)=0.0D0 DO 22 J=I,KS RHO(I)=RHO(I)+PROD3*F(J) PROD3=PROD3*SA 22 CONTINUE RHO(KS)=F(KS) DO 12 I=1,KSTOP6 PROD3=1.0D0 NUMBER=1 RSTAR(I)=0.0D0 IP=I+1 DO 12 J=IP,KS RSTAR(I)=RSTAR(I)+NUMBER*PROD3*F(J) NUMBER=NUMBER+1 PROD3=PROD3*SA 12 CONTINUE DO 66 I=1,KSTOP7 PROD3=1.0D0 NUMBER=1 RDSTAR(I)=0.0D0 IP=I+2 DO 66 J=IP,KS RDSTAR(I)=RDSTAR(I)+(NUMBER+1)*NUMBER*PROD3*F(J) NUMBER=NUMBER+1 PROD3=PROD3*SA 66 CONTINUE IF (IS.LE.2) RSTAR(KS-1)=F(KS) IF (IS.LE.3) RDSTAR(KS-2)=2*F(KS) C---- COMPUTE RHO'(I),PSI(I),PSI'(I), AND E2SUM PSI(1)=N(1) PSIP(2)=SAPRIM*M(1) RPRIM(1)=FP(1)+SAPRIM*RHO(2) E2SUM=0.0D0 TR(1)=1-RHO(1) TP(1)=1-RPRIM(1) DO 23 I=2,K TR(I)=1-RHO(I) PSI(I)=SA*PSI(I-1)+N(I) PSIP(I+1)=SA*PSIP(I)+SAPRIM*M(I) E2SUM=E2SUM+PSI(I-1)*RHO(I) IF (I.EQ.K) GO TO 23 E2SUM=E2SUM+PSIP(I)*RHO(I+1) RPRIM(I)=FP(I)+SAPRIM*RHO(I+1) TP(I)=1-RPRIM(I) 23 CONTINUE IF (IS.LE.0) GO TO 24 RPRIM(K)=FP(K)+SAPRIM*RHO(K+1) IF (IS.EQ.1) GO TO 13 D11=0.0D0 DO 25 J=2,IS 25 D11=D11+SA**(J-2)*RHO(K+J) E2SUM=E2SUM+(PSI(K)*SA+PSIP(K+1))*D11 13 E2SUM=E2SUM+(PSI(K)+PSIP(K))*RHO(K+1) GO TO 43 24 CONTINUE RPRIM(K)=FP(K) 43 CONTINUE TP(K)=1-RPRIM(K) K1=2*K+IS+1 K2=2*K+IS+2 C---- COMPUTE VECTOR DELTA DELTA(1)=W(1)/F(1)-(N(1)-RROW(1))/TR(1) DO 27 I=2,K D11=0.0D0 D12=0.0D0 DO 28 J=1,I E=SA**(I-J-1) D11=D11+(N(J)-RROW(J))*SA*E/TR(J) IF (I.EQ.J) GO TO 28 D12=D12+(M(J)-QROW(J))*E/TP(J) 28 CONTINUE DELTA(I)=W(I)/F(I)-D11-SAPRIM*D12 27 CONTINUE IF (IS.EQ.0) GO TO 29 DO 30 I=1,IS D11=0.0D0 D12=0.0D0 DO 31 J=1,K E=SA**(K-J) D11=D11+(N(J)-RROW(J))*E/TR(J) D12=D12+(M(J)-QROW(J))*E/TP(J) 31 CONTINUE IK=K+I E=SA**(I-1) DELTA(IK)=(RCOL(IK)+QCOL(IK))/F(IK)-SA*E*D11-SAPRIM*E*D12 30 CONTINUE 29 CONTINUE D11=0.0D0 D12=0.0D0 D21=0.0D0 D22=0.0D0 DO 32 I=1,K DELTA(KS+I)=Q(I,I)/FP(I)-(M(I)-QROW(I))/TP(I) IF (I.GT.KSTOP3) GO TO 32 D11=D11+(N(I)-RROW(I))*RSTAR(I)/TR(I) D21=D21+QROW(I)-Q(I,I) G=(M(I)-QROW(I))/TP(I) D22=D22+G*RHO(I+1) IF (I.GT.KSTOP4) GO TO 32 D12=D12+G*RSTAR(I+1) 32 CONTINUE DELTA(K1)=SUM/SA-D11 -SAPRIM*D12 DELTA(K2)=D21/SAPRIM-D22 C C---- COMPUTE MATRIX V V(1,1)=N(1)/F(1)+N(1)/TR(1) V(1,KS+1)=0.0D0 DO 33 I=2,K V(1,KS+I)=0.0D0 D11=0.0D0 D12=0.0D0 DO 34 J=1,I E=SA**(2*(I-J-1)) D11=D11+N(J)*E*SA*SA/TR(J) IF (J.EQ.I) GO TO 34 D12=D12+M(J)*E/TP(J) 34 CONTINUE PROD1=SAPSQ*D12 V(I,I)=(PSI(I)+PSIP(I))/F(I)+D11+PROD1 IF (I.GT.KSTOP3) GO TO 33 IP=I+1 DO 50 L=IP,KS E=SA**(L-I) V(I,L)=E*D11+E*PROD1 50 CONTINUE 33 CONTINUE V(1,K1)=N(1)*RSTAR(1)/TR(1) V(1,K2)=0.0D0 C H=1.0D0 DO 35 I=2,KS H=H*SA V(1,I)=N(1)*H/TR(1) DO 35 J=1,K IF (J.GE.I) GO TO 39 V(I,KS+J)=M(J)*SAPRIM*SA**(I-J-1)/TP(J) GO TO 35 39 V(I,KS+J)=0.0D0 35 CONTINUE C IF (IS.EQ.0) GO TO 38 DO 36 I=1,IS D11=0.0D0 D12=0.0D0 DO 37 J=1,K E=SA**(2*K-2*J) D11=D11+N(J)*E/TR(J) 37 D12=D12+M(J)*E/TP(J) E=SA**(2*I-2) PROD1=SAPSQ*D12 IK=K+I G=SA**(I-1) V(IK,IK)=(PSI(K)*G*SA+PSIP(K+1)*G)/F(IK)+E*SA*SA*D11+PROD1*E IF (I.EQ.IS) GO TO 36 IP=I+1 DO 51 L=IP,IS E=SA**(L+I-2) V(IK,K+L)=SA*SA*E*D11+PROD1*E 51 CONTINUE 36 CONTINUE C 38 DO 41 I=2,KSTOP3 IM=I-1 D11=0.0D0 D12=0.0D0 DO 64 J=1,IM E=SA**(I-J-2) D11=D11+N(J)*SA*E*(I-J+SA*RSTAR(J)/TR(J)) IF (J.EQ.IM) GO TO 64 D12=D12+M(J)*E*(I-J-1+SAPRIM*SA*RSTAR(J+1)/TP(J)) 64 CONTINUE V(I,K1)=D11+SAPRIM*D12+N(I)*RSTAR(I)/TR(I)+ & SAPSQ*M(I-1)*RSTAR(I)/TP(I-1) 41 CONTINUE C IST=IS IF (IS.EQ.0) IST=1 DO 45 I=1,IST JSTOP=KSTOP4 IF (IS.GE.2.AND.I.EQ.1) JSTOP=K-1 L=I IF (IS.EQ.0) L=0 D11=0.0D0 D12=0.0D0 DO 44 J=1,KSTOP3 E=SA**(KSTOP3+I-J-2) G=K+L-J-1 D11=D11+N(J)*SA*E*(G+1+SA*RSTAR(J)/TR(J)) IF (J.GT.JSTOP) GO TO 44 D12=D12+M(J)*E*(G+SAPRIM*SA*RSTAR(J+1)/TP(J)) 44 CONTINUE V(K+L,K1)=D11+SAPRIM*D12 45 CONTINUE IF (IS.GT.1) V(K+1,K1)=V(K+1,K1)+SAPSQ*M(K)*RSTAR(K+1)/TP(K) C J=0 D11=0.0D0 D12=0.0D0 KP=K+1 DO 47 I=2,KP J=J+1 G=M(J)*(1-FP(J))/TP(J) D12=D12+G*SA**(K-J) IF (I.EQ.KP) GO TO 47 D11=D11*SA+G V(I,K2)=D11 47 CONTINUE IF (IS.EQ.0) GO TO 48 DO 49 I=1,IS 49 V(K+I,K2)=SA**(I-1)*D12 48 CONTINUE C DO 52 I=1,K V(KS+I,KS+I)=M(I)/FP(I)+M(I)/TP(I) IF (I.EQ.K) GO TO 52 IP=I+1 DO 65 J=IP,K 65 V(KS+I,KS+J)=0.0D0 52 CONTINUE C D11=0.0D0 D12=0.0D0 D21=0.0D0 D22=0.0D0 DO 53 I=1,K G=M(I)*(1-FP(I))/TP(I) IF (I.GT.KSTOP3) GO TO 55 D22=D22+G*RHO(I+1) V(KS+I,K2)=M(I)*RHO(I+1)/TP(I) IF (I.GT.KSTOP4) GO TO 54 D11=D11+N(I)*(RDSTAR(I)+RSTAR(I)*RSTAR(I)/TR(I)) D21=D21+G*RSTAR(I+1) V(KS+I,K1)=M(I)*SAPRIM*RSTAR(I+1)/TP(I) IF (I.GT.KSTOP5) GO TO 53 D12=D12+M(I)*(RDSTAR(I+1)+SAPRIM*RSTAR(I+1)*RSTAR(I+1)/TP(I)) GO TO 53 54 V(KS+I,K1)=0.0D0 GO TO 53 55 V(KS+I,K2)=0.0D0 53 CONTINUE V(K1,K1)=E2SUM/SA+D11+SAPRIM*D12 IF (IS.GT.2) GO TO 59 JS=IS-1 IF (JS) 56,57,58 56 PROD1=RSTAR(K-1)*RSTAR(K-1) V(K1,K1)=V(K1,K1)+N(K-1)*PROD1/TR(K-1)+M(K-2)*SAPSQ* & PROD1/TP(K-2) V(KS+K,K1)=0.0D0 GO TO 59 57 PROD1=RSTAR(K)*RSTAR(K) V(K1,K1)=V(K1,K1)+N(K)*PROD1/TR(K)+M(K-1)*SAPSQ* & PROD1/TP(K-1) GO TO 59 58 V(K1,K1)=V(K1,K1)+M(K)*SAPSQ*RSTAR(K+1)*RSTAR(K+1)/TP(K) 59 V(K1,K2)=D21 V(K2,K2)=D22/SAPRIM C DO 61 J=1,K2 DIFF(J)=0.0D0 DO 61 I=J,K2 V(I,J)=V(J,I) 61 CONTINUE C---- INVERT MATRIX V CALL INV2(V,K2,0,1,K2,DET,42) C C---- COMPUTE CORRECTIONS AND ADD TO ESTIMATES DO 60 J=1,K2 DO 60 IJ=1,K2 60 DIFF(IJ)=DIFF(IJ)+V(IJ,J)*DELTA(J) DO 62 I=1,KS F(I)=F(I)+DIFF(I) IF (I.GT.K) GO TO 62 FP(I)=FP(I)+DIFF(KS+I) 62 CONTINUE SA=SA+DIFF(K1) SAPRIM=SAPRIM+DIFF(K2) C---- ITERATE UNTIL ALL CORRECTIONS ARE SMALLER THAN 1.0D-7 C---- OR UNTIL 25 ITERATIONS HAVE BEEN COMPLETED DO 63 I=1,K2 IF (DABS(DIFF(I)).GT.1.0D-7) GO TO 98 63 CONTINUE WRITE(6,612) TITLE WRITE(6,301) HYP2,(A,I=1,9),(A,I=1,6) WRITE(6,312) WRITE(6,313) WRITE(6,304) (A,I=1,5) WRITE(6,315) WRITE(6,306) WRITE(6,317) WRITE(6,308) HYP2,(A,I=1,16) WRITE(6,320) WRITE(6,321) WRITE(6,322) WRITE(6,601) HYP2,(A,I=1,9) WRITE(6,613) WRITE(6,603) (A,I=1,25),(A,I=1,25) WRITE(6,654) DO 90 I=1,KS IF (I.GT.K) GO TO 91 KF=KS+I D11=DSQRT(V(I,I)) E=1.96*D11 CORR(1,1)=F(I)-E CORR(1,2)=F(I)+E D12=DSQRT(V(KF,KF)) E=1.96*D12 CORR(2,1)=FP(I)-E CORR(2,2)=FP(I)+E WRITE(6,652) I,YEAR(I),F(I),D11,(CORR(1,J),J=1,2),FP(I),D12, & (CORR(2,J),J=1,2) GO TO 90 91 CONTINUE YEAR(I)=YEAR(I-1)+1 90 CONTINUE C---- COMPUTE THE AVERAGE OF F(I) AND F'(I), I=1...K FMEAN=0.0D0 FPMEAN=0.0D0 D11=0.0D0 D21=0.0D0 D12=0.0D0 D22=0.0D0 DO 71 I=1,K KF=KS+I FMEAN=FMEAN+F(I) FPMEAN=FPMEAN+FP(I) D11=D11+V(I,I) D21=D21+V(KF,KF) IF (I.EQ.K) GO TO 71 IP=I+1 DO 72 J=IP,K KP=KS+J D12=D12+V(I,J) 72 D22=D22+V(KF,KP) 71 CONTINUE FMEAN=FMEAN/K FPMEAN=FPMEAN/K KSQU=K*K D31=(D11+2*D12)/KSQU D31=DSQRT(D31) E=1.96*D31 D11=FMEAN-E D12=FMEAN+E D32=(D21+2*D22)/KSQU D32=DSQRT(D32) E=1.96*D32 D21=FPMEAN-E D22=FPMEAN+E WRITE(6,630) (A,I=1,30) 630 FORMAT('0',10X,'AVERAGE',10X,'STANDARD',11X,'95% CONFIDENCE', & 10X,'AVERAGE',10X,'STANDARD',11X,'95% CONFIDENCE'/ & 11X,'ESTIMATE',9X,'ERROR',17X,'INTERVAL',3X, & 10X,'ESTIMATE',9X,'ERROR',17X,'INTERVAL'/ & 11X,4A2,9X,4A2,11X,7A2,10X,4A2,9X,4A2,11X,7A2) WRITE(6,631) FMEAN,D31,D11,D12,FPMEAN,D32,D21,D22 631 FORMAT(5X,'-',60X,'-'/5X,'F =',F7.4,11X,F7.4,9X,F7.4, & ' - ',F7.4,4X,'F'' =',F7.4,11X,F7.4,9X,F7.4,' - ',F7.4) WRITE(6,610) WRITE(6,603) (A,I=1,25), (A,I=1,25) WRITE(6,604) D11=DSQRT(V(K1,K1)) E=1.96*D11 CORR(1,1)=SA-E CORR(1,2)=SA+E D12=DSQRT(V(K2,K2)) E=1.96*D12 CORR(2,1)=SAPRIM-E CORR(2,2)=SAPRIM+E WRITE(6,650) SA,D11,(CORR(1,J),J=1,2),SAPRIM,D12, & (CORR(2,J),J=1,2) C WRITE(6,840) 840 FORMAT(/////// 2X,'SELECTED ESTIMATED COVARIANCES AND CORRELATIONS & UNDER H02') WRITE(6,811) DO 816 I=1,K D11=V(I,K1)/(DSQRT(V(I,I))*DSQRT(V(K1,K1))) D12=V(I,K2)/(DSQRT(V(I,I))*DSQRT(V(K2,K2))) 816 WRITE(6,817) I,YEAR(I),V(I,K1),D11,V(I,K2),D12 WRITE(6,812) DO 818 I=1,K KI=KS+I D11=V(KI,K1)/(DSQRT(V(KI,KI))*DSQRT(V(K1,K1))) D12=V(KI,K2)/(DSQRT(V(KI,KI))*DSQRT(V(K2,K2))) 818 WRITE(6,817) I,YEAR(I),V(KI,K1),D11,V(KI,K2),D12 WRITE(6,813) DO 819 I=1,K KI=KS+I D11=V(I,KI)/(DSQRT(V(I,I))*DSQRT(V(KI,KI))) IP=I+1 D12=V(IP,KI)/(DSQRT(V(IP,IP))*DSQRT(V(KI,KI))) 819 WRITE(6,817) I,YEAR(I),V(I,KI),D11,V(IP,KI),D12 WRITE(6,814) KM=K-1 DO 820 I=1,KM IP=KS+I KI=IP+1 E=DSQRT(V(KI,KI)) D11=V(I,KI)/(DSQRT(V(I,I))*E) D12=V(IP,KI)/(DSQRT(V(IP,IP))*E) 820 WRITE(6,817) I,YEAR(I),V(I,KI),D11,V(IP,KI),D12 WRITE(6,815) KSM=KS-1 DO 821 I=1,KM IP=I+1 D11=V(I,IP)/(DSQRT(V(I,I))*DSQRT(V(IP,IP))) IF (I.EQ.KM ) GO TO 822 IP2=IP+1 D12=V(I,IP2)/(DSQRT(V(I,I))*DSQRT(V(IP2,IP2))) WRITE(6,817) I,YEAR(I),V(I,IP),D11,V(I,IP2),D12 GO TO 821 822 WRITE(6,817) I,YEAR(I),V(I,IP),D11 821 CONTINUE WRITE(6,823) D11=V(K1,K2)/(DSQRT(V(K1,K1))*DSQRT(V(K2,K2))) WRITE(6,609) V(K1,K2),D11 IF (IOPT.EQ.0) GO TO 806 WRITE(6,804) 804 FORMAT(/'0','COVARIANCE MATRIX') DO 801 I=1,KS 801 WRITE(6,800) LABEL1,I,LABEL5,(V(I,J),J=1,K2) DO 833 I=1,K KI=KS+I 833 WRITE(6,800) LABEL2,I,LABEL5,(V(KI,J),J=1,K2) WRITE(6,827) LABEL3,(V(K1,J),J=1,K2) WRITE(6,827) LABEL4,(V(K2,J),J=1,K2) 800 FORMAT('0',A3,I2,A1,2X,10F12.8/9X,10F12.8/9X,10F12.8 & /9X,10F12.8/9X,10F12.8) 827 FORMAT('0',4X,A2,2X,10F12.8/9X,10F12.8/9X,10F12.8/ & 9X,10F12.8/9X,10F12.8) WRITE(6,805) 805 FORMAT(///' CORRELATION MATRIX') DO 802 I=1,KS DO 803 J=1,K2 803 DELTA(J)=V(I,J)/(DSQRT(V(I,I))*DSQRT(V(J,J))) WRITE(6,800) LABEL1,I,LABEL5,(DELTA(J),J=1,K2) 802 CONTINUE DO 828 IJ=1,K I=KS+IJ DO 829 J=1,K2 829 DELTA(J)=V(I,J)/(DSQRT(V(I,I))*DSQRT(V(J,J))) 828 WRITE(6,800) LABEL2,IJ,LABEL5,(DELTA(J),J=1,K2) DO 830 I=1,K2 830 DELTA(I)=V(K1,I)/(DSQRT(V(I,I))*DSQRT(V(K1,K1))) WRITE(6,827) LABEL3,(DELTA(I),I=1,K2) DO 831 I=1,K2 831 DELTA(I)=V(K2,I)/(DSQRT(V(K2,K2))*DSQRT(V(I,I))) WRITE(6,827) LABEL4,(DELTA(I),I=1,K2) 806 CONTINUE WRITE(6,621) WRITE(6,611)IT DO 200 I=1,K DO 200 J=1,KS B(I,J)=0.0 200 ZZ(I,J)=0 DO 201 I=1,K B(I,I)=N(I)*F(I) IP=I+1 DO 201 J=IP,KS D11=SA**(J-I) IF (I.NE.K.OR .IS.NE.0) B(I,J)=N(I)*SA**(J-I)*F(J) 201 CONTINUE ICOUNT=0 CHI1=0.0D0 DO 212 I=1,K D13=N(I)*TR(I) D12=N(I)-RROW(I)-D13 CHI1=CHI1+D12*D12/D13 OBS=0.0 POOL=0.0 IK=KS-I+1 DO 208 J=1,IK L=KS-J+1 POOL=POOL+B(I,L) IF (L.EQ.I) GO TO 209 IF (POOL.GT.2.0) GO TO 209 ICOUNT=ICOUNT+1 OBS=OBS+R(I,L) GO TO 208 209 OBS=OBS+R(I,L) D11=OBS-POOL CHI1=CHI1+D11*D11/POOL POOL=0.0 OBS=0.0 208 CONTINUE 212 CONTINUE CALL EXPECT(R,B,ZZ,N,K,IS,99,1) DO 202 I=1,K DO 202 J=1,KS B(I,J)=0.0 202 ZZ(I,J)=0 DO 203 I=1,K B(I,I)=M(I)*FP(I) IF (I.NE.K) B(I,I+1)=M(I)*SAPRIM*F(I+1) 203 CONTINUE KM2=K-2 DO 204 I=1,KM2 IP2=I+2 DO 204 J=IP2,KS 204 B(I,J)=M(I)*SAPRIM*SA**(J-I-1)*F(J) IF (IS.EQ.0) GO TO 205 KP=K+1 L=K-1 DO 206 J=KP,KS B(L,J)=M(L)*SAPRIM*SA**(J-K)*F(J) 206 CONTINUE B(K,K+1)=M(K)*SAPRIM*F(K+1) IF (IS.LT.2) GO TO 205 KP2=K+2 DO 207 J=KP2,KS 207 B(K,J)=M(K)*SAPRIM*F(J)*SA**(J-K-1) 205 CONTINUE DO 213 I=1,K D13=M(I)*TP(I) D12=M(I)-QROW(I)-D13 CHI1=CHI1+D12*D12/D13 OBS=0.0 POOL=0.0 IK=KS-I+1 DO 210 J=1,IK L=KS-J+1 POOL=POOL+B(I,L) IF (I.EQ.L) GO TO 211 IF (POOL.GT.2.0) GO TO 211 ICOUNT=ICOUNT+1 OBS=OBS+Q(I,L) GO TO 210 211 OBS=OBS+Q(I,L) D11=OBS-POOL CHI1=CHI1+D11*D11/POOL POOL=0.0 OBS=0.0 210 CONTINUE 213 CONTINUE CALL EXPECT(Q,B,ZZ,M,K,IS,99,2) WRITE(6,88775) 88775 FORMAT(////'0THESE STANDARD NORMAL DEVIATES ARE USEFUL IN EXAMININ *G THE AGREE'/ *'+',64X,'MENT BETWEEN THE MODEL AND THE OBSERVED DATA IN A PARTICU *LAR'/' CELL. FOR EXAMPLE, A VALUE OF SAY -5 FOR A PARTICULAR CELL *MAY INDICATE AN UNUSUAL OBSERVATION OR, PERHAPS, A MISTAKE WAS MAD *E '/' IN SUMMARIZING THE DATA. IF THE MODEL IS CORRECT, ABOUT 95% *OF THESE STATISTICS SHOULD LIE WITHIN THE INTERVAL -2 TO 2.') IDF1=K*K+2*K*IS-K-IS-2-ICOUNT WRITE (6,622) (A,I=1,27) 622 FORMAT(7(/),1X, 'CHI-SQUARE GOODNESS OF FIT TEST OF THE MODEL UNDE &R H02.'/1X,28A2) WRITE(6,620) CHI1,IDF1 620 FORMAT('0','CHI-SQUARE VALUE =', F8.2/1X,'DEGREES OF FREEDOM =', & I8) CALL CHI(IDF1,CHI1,PROB,IERR) C---- COMPUTE LIKELIHOOD RATIO TESTS CHI1=0.0D0 CHI2=0.0D0 D11=0.0D0 D12=0.0D0 D21=0.0D0 D31=0.0D0 DO 105 I=1,K G=Q(I,I) D21=D21+G D41=N(I)-RROW(I) D42=M(I)-QROW(I) CHI1=CHI1-W(I)*DLOG(F(I))+D41*DLOG((1-SAVER(I))/TR(I)) & +D42*DLOG((1-SAVERP(I))/TP(I))-G*DLOG(FP(I)) CHI2=CHI2+W(I)*DLOG(F(I)/FHAT(I))+G*DLOG(FP(I)*M(I)/G) & +D41*DLOG(TR(I)/(1-RROW(I)/N(I))) & +D42*DLOG(TP(I)/(1-QROW(I)/M(I))) D11=D11+RROW(I) IF (I.GT.KSTOP3) GO TO 105 E=QROW(I)-G D12=D12+E IF (I.EQ.K) GO TO 105 D31=D31+E*ALOG(SHATP(I)) 105 CONTINUE C E=0.0D0 E2=0.0D0 IF (IS.EQ.0) GO TO 104 DO 103 J=1,IS G=RCOL(K+J)+QCOL(K+J) E=E+DLOG(F(K+J))*G E2=E2+G*DLOG(F(K+J)/SHATF(J)) 103 CONTINUE 104 CONTINUE C C---- H01 VS H02 CHI1=CHI1+DLOG(SAVE(1))*(D11+D12)-E+D21*DLOG(SAVE(2)) & +SUM*DLOG(SAVE(3)/SA)+D12*DLOG(SAVE(4)/SAPRIM) CHI1=-2*CHI1 IDF1=K2-4 WRITE(6,623) (A,I=1,18) 623 FORMAT(7(/),1X,'LIKELIHOOD RATIO TEST OF H01 VS H02.'/1X,18A2) WRITE(6,624) 624 FORMAT(///' THIS TEST COMPARES THE MODEL UNDER H01 WITH THAT UNDER & H02 AND THUS TESTS THE ASSUMPTION THAT ADULT'/ 1X,'AND YOUNG RECO &VERY RATES ARE CONSTANT FROM YEAR TO YEAR. A ''LARGE'' CHI-SQUARE & VALUE INDICATES THAT'/ 1X,'H02 BETTER DESCRIBES THE DATA AND THAT & RECOVERY RATES ARE NOT CONSTANT FROM YEAR TO YEAR.') WRITE(6,620) CHI1,IDF1 CALL CHI(IDF1,CHI1,PROB,IERR) C---- H02 VS H1 CHI2=CHI2+SUM*DLOG(SA)-E1+D12*DLOG(SAPRIM)-D31 IDF2=2*K-4 IF (IS.EQ.0) GO TO 110 CHI2=CHI2+E2+(QROW(K)-Q(K,K))*ALOG(SHATQ) IDF2=IDF2+1 110 CHI2=-2*CHI2 GO TO 826 825 WRITE(6,660) 660 FORMAT(/'0','ESTIMATES HAVE NOT CONVERGED AFTER 25 ITERATIONS') GO TO 826 842 WRITE(6,841) 841 FORMAT(//////2X,'ZERO COLUMN TOTALS IN DATA - NO ESTIMATES FOR H &02') CHI2=100000 IDF2=10000 826 CONTINUE KM=K-1 DO 707 I=1,KM E=RROW(I+1)*(N(I+1)+1)/(N(I+1)*(RROW(I+1)+1)) SHAT(I)=SHAT(I)*E 707 SHATP(I)=SHATP(I)*E RETURN 301 FORMAT(///' THE HYPOTHESIS ',A3/2X,9A2/'0',' ASSUMPTIONS: ', &'(1) YOUNG AND ADULTS HAVE DIFFERENT SURVIVAL AND RECOVERY RATES' &/2X,6A2) 302 FORMAT(16X,'(2) OTHERWISE, SURVIVAL AND RECOVERY RATES ARE', &' CONSTANT FROM YEAR TO YEAR') 304 FORMAT(///' PARAMETERS:'/2X,5A2,'-'/' S = CONSTANT', &' ANNUAL SURVIVAL RATE FOR ADULTS') 305 FORMAT(' F = CONSTANT BAND RECOVERY RATE FOR ADULTS') 306 FORMAT(' S'' = CONSTANT ANNUAL SURVIVAL RATE FOR YOUNG') 307 FORMAT(' F'' = CONSTANT BAND RECOVERY RATE FOR YOUNG') 308 FORMAT(///' STRUCTURE OF THE MODEL UNDER ',A3,' (IN TERMS', & ' OF EXPECTED NUMBERS OF BAND RETURNS):'/2X,16A2/ & '0',15X,'BANDED AS ADULTS',46X,'BANDED AS YOUNG'/) 312 FORMAT(16X,'(2) SURVIVAL RATES ARE OTHERWISE CONSTANT FROM', &' YEAR TO YEAR') 313 FORMAT('0',15X,'(3) RECOVERY RATES ARE YEAR-SPECIFIC') 315 FORMAT(' F(I) = BAND RECOVERY RATE IN YEAR I FOR ADULTS') 317 FORMAT(' F''(I) = BAND RECOVERY RATE IN YEAR I FOR YOUNG') 320 FORMAT(3X,'N(1)F(1)',4X,'N(1)SF(2)',4X,'N(1)SSF(3)',4X, &'N(1)SSSF(4)',10X,'M(1)F''(1)', & 4X,'M(1)S''F(2)',4X,'M(1)S''SF(3)',4X,'M(1)S''SSF(4)') 321 FORMAT(15X,'N(2)F(2)',5X,'N(2)SF(3)',5X,'N(2)SSF(4)',24X, & 'M(2)F''(2)',5X,'M(2)S''F(3)',5X,'M(2)S''SF(4)') 322 FORMAT(28X,'N(3)F(3)',6X,'N(3)SF(4)',39X,'M(3)F''(3)', & 6X,'M(3)S''F(4)') 323 FORMAT(3X,'N(1)F',7X,'N(1)SF',7X,'N(1)SSF',7X, &'N(1)SSSF',13X,'M(1)F''',7X,'M(1)S''F',7X,'M(1)S''SF', &7X,'M(1)S''SSF') 324 FORMAT(15X,'N(2)F',8X,'N(2)SF',8X,'N(2)SSF',27X, &'M(2)F''',8X,'M(2)S''F',8X,'M(2)S''SF') 325 FORMAT(28X,'N(3)F',9X,'N(3)SF',42X,'M(3)F''',9X, & 'M(3)S''F') 505 FORMAT(I4,19F4.0) 602 FORMAT(///11X,'F RECOVERY RATE FOR ADULTS',30X, & 'F'' RECOVERY RATE FOR YOUNG') 603 FORMAT(11X,25A2,10X,25A2) 604 FORMAT(11X,'ESTIMATE',9X,'STANDARD',11X,'95% CONFIDENCE', & 10X,'ESTIMATE', 9X,'STANDARD',11X,'95% CONFIDENCE'/ & 28X,' ERROR ',13X,'INTERVAL', & 30X,' ERROR ',13X,'INTERVAL'/11X,'--------', & 9X,'---------',10X,'--------------',9X,'________', & 9X,'---------',10X,'--------------') 606 FORMAT(///17X,'COV(F,F'')',23X,'CORR(F,F'')', & 19X,'COV(F,S'')',23X,'CORR(F,S'')') 607 FORMAT(///18X,'COV(F,S)',24X,'CORR(F,S)', & 20X,'COV(S,F'')',23X,'CORR(S,F'')') 608 FORMAT(///18X,'COV(S,S'')',23X,'CORR(S,S'')', & 19X,'COV(F'',S'')',22X,'CORR(F'',S'')') 609 FORMAT(15X,F12.8,18X,F12.4,17X,F12.8,18X,F12.4) 610 FORMAT(///11X,'S SURVIVAL RATE FOR ADULTS',30X, & 'S'' SURVIVAL RATE FOR YOUNG') 611 FORMAT(///2X,'NUMBER OF ITERATIONS COMPLETED =',I3) 613 FORMAT(///11X,'F(I) RECOVERY RATE FOR ADULTS',30X, & 'F''(I) RECOVERY RATE FOR YOUNG') 621 FORMAT(/////// 2X,'THE ABOVE ARE ESTIMATES OF THE SAMPLING COVARIA &NCES AND CORRELATIONS BETWEEN THE PARAMETER ESTIMATORS.') 650 FORMAT(/11X,F7.4,11X,F7.4,8X,F7.4,' - ',F7.4, 1 10X,F7.4,11X,F7.4,8X,F7.4,' - ',F7.4) 652 FORMAT(1X,I3,1X,I4,2X,F7.4,11X,F7.4,8X,F7.4,' - ',F7.4,10X, 1 F7.4,11X,F7.4,8X,F7.4,' - ',F7.4) 654 FORMAT(11X,'ESTIMATE',9X,'STANDARD',11X,'95% CONFIDENCE', 1 10X,'ESTIMATE',9X,'STANDARD',11X,'95% CONFIDENCE'/ &' I YEAR',19X,' ERROR ',15X,'INTERVAL',9X, & 19X,' ERROR ',15X,'INTERVAL'/ &11X,'--------',9X,'---------',10X,'--------------', & 10X,'--------',9X,'---------',10X,'--------------') 811 FORMAT(///' I YEAR',4X,'COV(F(I),S)',18X,'CORR(F(I),S)', & 17X,'COV(F(I),S'')',17X,'CORR(F(I),S'')') 812 FORMAT(///' I YEAR',3X,'COV(F''(I),S)',17X,'CORR(F''(I),S)', &16X,'COV(F''(I),S'')',16X,'CORR(F''(I),S'')') 813 FORMAT(///' I YEAR',1X,'COV(F(I),F''(I))', & 13X,'CORR(F(I),F''(I))', & 12X,'COV(F(I+1),F''(I))',12X,'CORR(F(I+1),F''(I))') 814 FORMAT(///' I YEAR',1X,'COV(F(I),F''(I+1))',9X,'CORR(F(I),' &,'F''(I+1))',11X,'COV(F''(I),F''(I+1))',10X,'CORR(F''(I),', & 'F''(I+1))') 815 FORMAT(///' I YEAR',1X,'COV(F(I),F(I+1))',15X,'CORR(F(I),', & 'F(I+1))',13X,'COV(F(I),F(I+2))',13X,'CORR(F(I),F(I+2))') 823 FORMAT(///19X,'COV(S,S'')',20X,'CORR(S,S'')') 817 FORMAT(1X,I3,I8,F15.8,18X,F12.4,17X,F12.8,18X,F12.4) END