Hemmerle, W.J.A Comprehensive, Matrix Free Algorithm for Analysis of Variance Part II."

A COMPREHENSIVE, MATRIX FREE ALGORITHM FO
ANALYSIS OF VARIANCE
by
William J. Hemmerle
Institute of Statistics Mimeo Series #1211
C
C
**A COMPREHENSIVE. MATRIX FREE ALGORITHM FOR ANALYSIS OF VARIANCE** 000000040
C
••STATISTICS COMPUTED**
C
C
1) CELL SUMS. FREQUENCIES. AND MEANS.
C
~
C
C
C
C
C
C
C
2) CLASSIFICATION SUMS. FREQUENCIES. AND MEANS
3)
~ANK(OESIGN
MATRIX FOR FULL MODEL)
4) SSEIFULL MODEL) AND SSR(FULL MODEL)
S) A G-INVERSE SCLUTION TO THE NORMAL EQUATIONS
6) ESTIMATES OF .EXPECTED CELL MEANS
C
C
C
C
C
C
C
C
C
C
C
C
C
7) RANK (RESTRICTED DESIGN MATRIX FOR REDUCED MODEL.
8) SSE(REOUCED MODEL) AND SSR(REDUCED MODEL.
9) THE F STATISTIC FOR A SPECIFIED HYPTOTHESIS
10) PROBABILITY OF A GREATER F GIVEN THE HYPOTHESIS
**FLOW OF CONTROL**
1) FACTOR. LEVELS STATEMENT
C
C
2) VARIABLE FORMAT STATEMENT
C
3) DATA
-.
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
4) BLANK LINE 'CARD)
5) OPTIONS STATEMENT/MODEL STATEMENT/HYPOTHESIS STATEMENT/BLANK
LINE/E
E ENOS PROCESSING. BLANK LINE SENDS CONTROL TO 1). STATEMENTS
RETURN CONTROL TO 5) FOLLOWING EXECUTION.
**FACTOR. LEVELS STATEMENT.*
A DISTINCT ALPHABETIC CHARACTER IS USED TO NAME EACH FACTOR AND
EACH SUBSCRIPT. THE STRING OF FACTOR SYMBOLS IS PLACED IN PARENS
AND THEN PRECEDED BY THE LETTER F. THIS IS FOLLOWED BY THE LETTER L AND A PARENTHESIZED LIST OF ASSOCIATED SUBSCRIPTS WITH THE
NUMBER OF LEVELS FOR THE FACTOR IN PARENS FOLLOWING THE ASSOCIATED SUBSCRIPT.
EXAMPLE FOR 3 FACTO~S NAMED A. B. C. ASSOCIATED SUBSCRIPTS NAMED
I. oJ. K. AND NUMBER OF LEVELS OF THE FACTORS EQUAL TO 5. 10. 15:
COMMAS AND BLANKS ARE COSMETIC
C
C
•
ORDERING OF THE ASSOCIATED SUBSCRIPTS IS ASSUMED TO CORRESPOND
TO THE ORDERING OF THE DATA. THE NUMBER OF OBSERVATIONS WITHIN
THE (I • .J.K) CELL DEPENDS UPON THE DATA; NO SUBSCRIPT SYMBOL IS
000000050
000000060
000000070
000000080
000000090
000000100
000000110
000000120
000000130
000000140
000000150
000000160
000000170
000000180
000000190
000000200
000000210
000000220
000000230
000000240
000000250
000000260
000000270
000000280
000000290
000000300
000000310
000000320
000000330
000000340
000000350
000000360
000000370
000000380
000000390
000000400
000000410
000000420
000000430
000000440
000000450
000000460
000000470
000000480
000000490
000000500
00000051~.
000000520
000000530
000000540
000000550
000000560
000000570
000000580
000000590
000000600
000000610
000000620
C
C
C
C
C
C
C
•
C
C
C
C
USED TO DENOTE WITHIN CELL REPLICATION.
**cATA*"
CAT A INPUT FACILITIES ARE MINIMAL. DATA IS READ ONE OBSERVATION
PER LINE WITH CELL INDICATORS PRECEDING THE OBSERVATION. CELL
INDICATORS ARE THE FACTOR LEVELS FOR THE OBSERVATION; THERE IS
NO INDICATOR FOR WITHIN CELL REPLICATION AND NO ENTRIES ARE ~AOE
FOR MISSING CELLS. THE DATA MUST BE LEXICOGRAPHICALLY ORDERED SO
THAT THE RIGHTMOST SUBSCRIPT (INDICATOR) MOVES MOST RAPIDLY. IN
BATCH MODE. THE SAME VARIABLE FeRMAT STATEMENT IS ALSO USED TO
WRITE THE cATA. A CONSTANT (INOATA) IN THE PROGRAM DETERMINES
THE INPUT UNIT FROM WHICH THE DATA IS READ.
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C
•
EXAMPLE FOR 3 FACTORS EACH AT 2 LEVELS WITH CELLS (1.2.2) AND
(2,1,2) MISSING:
u
X ,3 I 2 ,F3 • 1 )
1 1 1 41
1
1
1
1
1
2
2
2
1 1 45
1 2 35
2 1 53
2 1 62
2
1
2
2
1
1
1
2
56
47
55
59
*"OPTICNS.*
IDENTIFIER
C
c
S(D)
T(L*10**4)
104)
C
C
R
C
C
C
C
G
P
C
C
C
C
v
Z
A
C
FUNCTION OF OPTION
OEFAUL T
SIGNIFICANT DIGITS IN RESULTS
TEST LEVEL
MAXIMUM NUMBER OF ITERATIONS
RA~K COMPUTATIONS (ITERATIVE)
ESTIMATES OF EXPECTED CELL MEANS
G-INVERSE SOLUTION TO NORMAL EQUATIONS
PROBABILITY VALUES FOR F STATISTICS
INTERMEDIATE OUTPUT
CELL SUMS, FREaUENCIES, AND MEANS
CLASSIFICATION SUMS. FREQUENCIES, AND MEANS
L=.05
M=100
OFF
OFF
OFF
OFF
OFF
OFF
OFF
------------------
0=5
••OPTIONS STATEMENT"*
C
C
STRING OF OPTION IDENTIFIERS, IN ANY ORDER, ARE PARENTHESIZED
AND PRECEDED BY THE LETTER O.
C
C
EXAMPLES WITH ALL OPTIONS IN DEFAULT STATUS
C
C
C
C
C
C
1) TO COMPUTE RANK ITERATIVELY, TEST HYPOTHESES AT ONE PERCENT
LEVEL, AND OBTAIN INTERMEDIATE OUTPUT
C
C
2) TO OBTAIN ESTIMATES OF EXPECTED CELL MEANS. A G-INVERSE
SOLUTICN, AND 8 DIGIT ACCURACY
•
C
000000630
000000640
000000650
000000660
000000670
000000680
000000690
000000700
000000710
000000720
000000730
00000074-0
000000750
000000760
000000770
000000780
000000790
000000800
000000810
000000820
000000830
000000840
000000850
000000860
000000870
000000880
000000890
000000900
000000910
000000920
000000930
000000940
000000950
000000960
000000970
000000980
000000990
000001000
000001010
000001020
000001030
000001040
000001050
000001060
000001070
000001080
000001090
000001100
000001110000001120
000001130
000001140
000001150
000001160
000001170
000001180
000001190
000001200
000001210
000001220
CONMAS AND BLANKS ARE CCSNETIC
C
C
C
C
C
C
THE A AND C OPTIONS ARE IMMEDIATE AND WILL NOT REMAIN IN ON
STATUS; T~E OTHER ON/OFF OPTIONS CHANGE STATUS WHENEVER THE
OPTION IDENTIFIER IS SPECIFIED. THE S. T. AND I OPTIONS Du
NOT RETURN TO DEFAULT STATUS.
•
WHEN RANK CANNOT BE COMPUTED NON-ITERATIVELY. IT WILL BE
COMPUTED ITERATIVELY ONLY WHEN THE R OPTION IS ON.
C
C
C
C
·C
THE IDENTIFIER S(O) MAY BE USED TO COMPUTE RANK WITHOUT
COMPUTING SSR OR SSE.
**MODEL STATEMENT**
C
C
EXA_PLES OF MODEL STATEMENT FOR 3 FACTORS:
C
3-WAY CROSSED CLASSIFICATION
C
C
C
C
1)
C
C
C
2) 3-WAY NESTED CLASSIFICATION
M + A(I) + B(J) + C(K)
M •
A(~j
+ B(IJ) • C(IJK)
C
C
C
C
C
C
C
C
e
C
C
C
3) FACTORS A AND C ARE CROSSED. FACTOR B IS NESTED WITHIN A.
AND THERE IS AN AC INTERACTION
M + A(l) • B(IJ) • C(K) • AC(IK)
4) FACTORS A AND B ARE CROSSED. FACTOR C IS NESTED WITHIN
BOTH A AND B. AND THERE IS AN AB INTERACTION
M + A(I) • B(J) +
AB(I~)
+ C(lJK)
RULES FDR CONSTRUCTING MODEL STATEMENT:
C
C
1) BLANKS AND PLUSES ARE COSMETIC
C
C
C
2) THE ASSOCIATED SUBSCRIPT OF A FACTOR MUST ALWAYS APPEAR
ALONG WITH THE FACTOR SYMBOL IN A MODEL TERM
C
C
C
C
C
C
C
3) IF A FACTOR IS NESTED. IT MUST BE NESTED WITHIN A FACTOR
OR FACTORS APPEARING TO THE LEFT OF IT IN THE PREVIOUS
FACTOR. LEVELS STATEMENT
4) THE LETTER M (FOR NU) MUST BEGIN EACH MODEL STATEMENT
C
C
5) CONTINUATICN TO THE NEXT LINE IS INDICATED BY A SLASH (/)
FOLLOWING THE LAST MODEL TERM ON THE CURRENT LINE
C
C
C
6) A FULL FACTORIAL MODEL MAY BE SPECIFIED BY AN ASTERISK (*)
FOLLOWING M
C
C
C
C
**HYPOTHESIS STATEMENT**
BEGINS WITH THE LETTER H FOLLOWED BY THE MODEL TERM/S TO BE DELETED FROM THE FULL MODEL IN ORDER TO FORM THE REDUCED MODEL OF
THE HYPOTHESIS.
oa0001230
000001240
000001250
000001260
000001270
000001280
000001290
000001300
000001310
000001320
000001330
000001340
000001.350
000001360
000001370
000001380
000001390
000001400
000001410
000001420
000001430
000001440
000001450
000001460
000001470
000001480
000001490
000001500
000001510
000001520
000001530
000001540
000001550
000001560
000001570
000001580
000001590
000001600
000001610
000001620
000001630·
000001640
000001650
000001660
000001b70
000001680
000001690
000001700
000001710000001720
000001730
000001740
000001750
000001760
000001770
000001780
000001790
000001800
000001810
000001820
c
c
EXAMPLeS APPLIED TO PReVIOUS MODEL STATEMENTS:
C
c
1) TO TEST FOR NO B eFFECT IN THE 3-.AY CROSSeD CLASSIFICATION
C
c
c
•
C
H
6(.,1)
2) TO TeST FeR NO C EFFECT IN THE 3-.AY NESTED CLASSIFICATION
H
C( I,JtO
C
C
3) TO TEST FOR NO INTERACTION IN MODEL 3
C
.c
H
AC(IK)
C
C
C
C
C
C
4) TO ,JOINTLY TEST FOR NO C EFFECT ANa NO AS INTERACTION IN 4
H
AS(I,J)
C(I,JK)
******************************************************************
000001830
000001840
000001850
000001860
000001870
000001880
000001890
000001900
000001910
000001920
000001930
000001940
000001950
000001960
000001970
000001980
000001990
000002000
000002010
000002020
C
00000040
00000050
DI~E~SICN LT(S).LP(IO).LD(IO}.LO(IO),lA(72).0(S,8),OT(8)
00000060
CC~MCN YPY.SSk~,SSE~,IIN.IOUT.IRCPT.IVCPT,IGaPT.IPOPT,ICFLAG
00000070
CCMMON 18ST.lhST,IRST.ISST.IXS1.ICO.NSU8S.LPOUT.~al,IDF.IOFM.lOFR
00000080
CCMMON ~CELLS.LCCDl.LCCD2.LCCV.Lcce,LOCA.IRANKM,IRAN~R.MAXlT
00000090
~
CC~MCN Na8S.M~XOI.MINOI.FLEVEL.NOSIGO
00000100
~
DGUBLE P~ECISICN W.O.OT.YPY.SSRM,SSEM,TEMP
00000110
DATA LO(I).LD(2).LO(3).LO(4),LC(S).LO(6).LD(7).LO(B).LO(9},LO(IO) 00000120
/IHO.IH1.IH2.IH3.1H4.1HS.IHf.lH7.lHE.lHg/
00000130
DATA LC(1)/IHS/.LO(2)/lHT/.LC(3)/lHI/,LO(4)/lHR/.LO(S)/lHV/
00000140
DATA LO(6) /lHG/ .LO( 7) /IHP/ .LO( e) /IHZ/ .LC (9)/1 HA/ .LO( 10 }/IHC/
00000150
DATA IF/l~F/.IL/IHL/.ID/IHD/,Ia/IHO/,IM/IHM/,IH/IHH/.IE/lHE/
00000160
DATA ILP/I~(/.lRP/IH)/,ISTAR/IH*/.I8LA~K/IH
/
00000170
C SET IBATCH=1 F~R SATCH PROCESSING; SET I8ATCH=0 FOR INTERACTIVE USE
00000180
00000190
IBATCH=l
C MAX~. MAX~, MAXC, AND L MUST EOUAL DIME~SICN OF LE, w, ~T. AND IA
00000200
00000210
MAXN=5
00000220
MAXw=800
00000230
MAXMC=6
00000240
L=72
00000250
I 1"= 1
00000260
INCAT A= 1
00000270
lCl...1=3
00000280
C INITIALIlATI0N RECUIRED WHEN USING PART2 WITHOUT PARTl
00000290
IRA "'KM-=O
00000300
If;AI\KR=O
00000.310
I85T=0
00000320
C C~FAULl SETTING FOR ITERATION PARAMETERS A~D CPTIONS
00000330
MAX 11= 100
00000340
NCS HD=5
00000350
~
FLEVEL=.05
00000360
..
IR':PT=C
I 'JCPT=C
00000.370
OOOOO~80
IGCP1=O
00000390
IPuPT=O
00000400
ICFLAG=O
C EXA~PLE OF F. L SPECIFICATION: F(A.8,C) L(I(3).J(10).K(5»
00000410
10 IF(I8A1CH .EO. 0) wRITE(IOUT.15)
00000420
15 FC~MAT(i9H FACTOR, LEVEL SPECIFICATION-)
00000430
READ(IIN,20} (IA( I). I=I.L)
00000440
20 FO~MAT (BOA l )
00000450
00000460
IF(I8A1CH .Ea. l } llIRITE(IOUT,30} (IA(l),l=I,L)
0000047'J
30 FC~MA1(lH ,BOAl}
C CREATE LIST LE JF FACTOR SYMBOLS AND DETER~INE N=~C. CF FACTORS
00000430
00000490
1 1-= 1
00000500
ICC.:: IF
40 IF(II .GT. L) GO Te 400
0000051.0
IC=IGEi( II ,lA.L)
00000520
IF ( I C • E(h IF) GO T.:J 40
000005..30
00000540
IF(IC .NE. lLP) GO TO 400
00000550
N=O
00000560
50 IFOI .GT. L) GO TO 400
IC.::IGET( II,IA ,L)
00000570
Ov0005dO
IF(IC .co. lRP) GQ TO 6v
00000590
1\.:: '" + 1
IF(N .GT. ~AXI\) GQ TO 400
00000600
00000(,10
~
LE(N}=IC
00000620
..
GO TO 50
~INI-A~kDVA~K
EY
~.
J.
HE~MERLE
OIME~SICN ~(BaO),LSTFl(32).L~~(32).LE(5).LS(S).LV'5),LLIM(S)
*
C CREATE LIST LS OF SUBSCRIPT SYMBOLS AND LIST LLIM LF
60
FACTO~
LEVELS
ICD~lL
70 IF( II .GT. L) GO TO 400
IC=IGET(II.IA.L)
IF( IC. Ea. ILJ GO TO 70
IF(lC .NE. ILP) GO TO 400
DC 100 I=l.N
LE\lEL=O
IF l I I • GT. L) G:J TO 4 () 0
I C= I GET( 1 I • I A • L )
LSlI)=IC
IFlII .GT. L) GO TO 400
80
IC=IGET( 11. IA .L)
IFlIC .Ea. ILP) G~ TO 80
DO 90 J=1.10
IF(LD{J) .Ea. IC) LEVEL=LEVEL*10+J-1
CCNTINUE
90
IF( IC .NE. H'P) GO TO 80
LLIM(I)=LEVEL
100
IF(II .GT. L) GO TC 400
IC=IGETlII.IA.L)
IF(IC .NE. IRP) GO TO 400
C DET~RMINE ~CELLS=~C. OF CELLS AND M~2**N; CREATE LISTS LV AND LSTFI
"CELL S= 1
NPriIME=l
DO 110 I=I.N
NP~IME=NPRIME*(LLIM(I)+l)
NCELLS=NCELLS*LLIM(I)
LS1FI(1)-=NCELLS
M:l
Kl=2
CU 130 1=I.N
K2=N- 1+1
CO 120 J=l.M
LSTFI(Kl)=LSTFI(J)/LLIM(K2)
Kl.::K1+1
120
LV(K2)=M
130
~=2*M
C INITIALIZE POINTERS TO VECTORS IN w ARRAY; CHECK PROBLEM SIZE
L;CD1=NCELLS
LCCD2=LOC01+NCELLS
LCCV=LOCD2+NCELLS
LCCB=LCCV+NCELLS
LCCA=Loca+NCELLS
!\J1/=LOCA+NPRIME
110
I~Cw=NW-MAX\ll
IF(INCw .GT. 0) GO TO 420
C ZERO Y (CELL SUM VECTOR) AND 01 (CELL FREQUENCY VECTOR)
DO 140 I=I.NCELLS
IDl=L.JCOl+I
w( 1)=0
140
w(IDl>=O
C riEAD INPUT CATA AND CHECK INDICATORS; COMPUTE CELL SU~S. CELL
C FREQuENCIES. NO. OF OBSERVATIONS. AND Y·Y.
Wj:;ITE( Iel-T.14:)
145 FCj:;MAT(28H DATA FORMAT AND INPUT CATA-)
READ(INCATA.20) (IA(I).I=l.L)
IF(IEATCH .Ea. 1) ~RITE(IaUT.30) (IA(I).I=l.L)
CALL LABEL(M.O.LLI~.IOUT.".LV.LP)
ICC=ID
00000630
00000640
00000650
00000660
00000670
00000680
00000690
00000700
00000710
00000720
00000730
00000740
00000750
00000760
00000770
00000780
00000790
00000800
00000810
00000820
000008.30
00000840
00000850
00000860
00000870
00000880
00000890
00000900
00000910
00000920
000009.30
0000094-0
00000950
00000960
00000970
00000980
00000990
00001000
00001010
00001020
00001030
00001040
00001050
00001060
00001070
00001080
00001090
00001100
0000 1110'
00001120
000011.30
0000,)1140
00001150
0000 1100
00001170
00001130
000Jl190
00001200
00001210
00001220
\,py=O
"CES=O
ITEMF=O
C FIRST COLUMN OF DATA CARD MUST BE ELANK ~HE" USING BATCH
150 REAO(INDATAtIA) (LT( 1) .t=l."hTEMP
IF(IEATCH .Ea. 1) wRITE(IOUT.IA) (LT(I).I=l,N),TEMP
IF(LT(l) .EO. 0) GO TO 170
1= 1
DO 160 ,J=l,N
I=I+(LT(,J)-l)*LP(,J)
160
IF(I .GT. "CELLS) GO TO 400
IF(I .LT. ITE~F) GO TO 400
ID l=LCCDl+ I
W( I ) = w( I ) + TEMP
w(lOl)=w{IDl)+1.000
NCBS=NCBS+1
YP\,=YPY+TEMP*TEMP
ITEMP=I
GC TO 150
C CCMPUTE MAXIMUM AND MINIMUM CELL FRECUE"CIES
170 MAXDl=O
MII\OI="CBS
DO 180 I=l,NCELLS
IOl=LCC01+1
ITEMP=w(I01)
IF(ITEMP .GT. MAXOI) MAXOI=ITEMP
IF( ITEMP .LT, MINDI) MII'OI=ITEMP
CONTINUE
130
LEEO(M)=O
C READ CPTIOl'S/MCOEL/HYPOTHESIS/ELANK TRAILER/END CA~O
190 IF( ISATCH .Ea. 0) wRITE( IOUT.19S)
ISS FOEOMAT(40H CPTICNS/MOOEL/HYPCTHESIS SPECIFICATICN-)
REAO(IIN.20) (IA(I),I=I,L)
IF(IEATCH .EO. 1) ~RITE(IOUT.30) (IA(I),I~ltL)
I 1= 1
C
C
C
C
IC=IGET(II,IA,L)
ICC=IC
IF(IC .Ea. 1M .OR. IC .eo. IH) GO T~ 200
1F(IC .EO. IC) GO TO 210
IF(1C ,Ea. IBLAI'lK .ANO. I I .GT. L) GO Te 10
IF(IC .Ea. IE) GO TO 440
GC TC 400
SCA" MCDEL/HYPCT~ESIS STATEMENT AI\D PRCCESS THE DATA
EXA~PLE OF MODEL SFECIFICATICN: M+A(I)+8(J)+AB(I,J)+C(JK)
200 CALL SCAN(lI,~,LER,N,LE,LS,LV,LLI~.LP,L,IA,I8ATCH)
IF (ISST .Ea. 1) GO TQ 400
CALL PARTl(Nw,W,M,LSTFI,LE~,N,LV,LLI~,LT,LP,MAXMC.Q,OT)
IF(NCSIGD .EO. 0) GO TO 190
I~(I~ST .Ee. 1) GO TO 190
CALL PA~T2(N~,w.M,LSTFI,LER,N,LE.LV,LLIM,LT,LP)
G;; TO 190
SeAI' CFTICNS STATEMENT AND SET CPTIONS
EXAMPLe CF CPTICNS SPECIFICATICI': C(S(O),I{Su),R,Z)
210 IF(II .GT. L) GO TO 400
IC=IGEHII.IA,L)
IF( IC ,NE. ILP) Gu TO 400
220 IfnI .GT. L) GO TO 400
IC=IGET(II,IA.L)
IF ( I C • E G • I F< P) GO T ~ 380
DO 2.30 1=1,10
00001230
00001,40
00001250
00001260
00001270
00001280
00001290
00001300
000\,)1310
00001320
00001330
0000l~40
0\,)001350
00001360
00001370
00001~80
0000I~90
00001400
00001410
00001420
00001430
00001440
00001450
00001460
Q0001470
00001480
00001490
00001500
00001510
00001520
00001530
00001540
00001550
00001560
00001570
00001580
00001590
00001600
00001610
00001620
00001630
00001640
00001650
00001660
0000 16 70
000016dO
00001690
00001700
00001710·
00001720
00001730
00001740
00QU1750
00001760
00001770
00001780
00001790
t)OOJlaOO
00001610
00001820
IF(LC(I) .EO. IC) G~ TO 240
CONTINUE
GC TG 400
240 IF(I .GT. 3) GC TO 270
C CCMPUTE PA"ENTrESIZED VALUE FCR S. T.
230
A~D
I GPTIONS
~UM=O
e
250 IF(II .GT. L) GO TO 400
lC=lGEH I I .IA.L)
IFCIC .EO. ILP) GO TO 250
DC 260 ..1=1.10
IF(LD(J • • EO. IC)NUM=NUM*10+.J-1
CONTINUE
260
IF(lC .NE. I"P) GO TO 250
IF(I .Ea. 1) NCSIGC=NUM
IF(l .Ea. 2) F~U~=~UM
IF(I .Ea. 2) FLEVEL=FNUM/10COO.0
IF(I .Ea • .3) MAXIT=NUM
GO TO 220
270 IF(l .EO. 4) l~OPT=l-IROPT
IF(I.Ea. 5) I~OPT=1-1VCPi
IF(l .Ea. 6) IGOPT.::1-IGwPT
IF(I.EO. 7) IPOPT=1-IPOPT
iF(l.Ea. S) IOFLAG=1-IOFLAG
IFCI .Ea. S) GC T,J 280
IF (I .EO. 10) GO TO 340
GC Te 220
C IMMEDIATE CCMPUTATION OF CELL MEANS CA) OPTION
280 ~~ITE(ICLT.290)
2~0 F:~MAT(35H CELL SUMS. FREaUENCIES. AND MEANS*/Eh
CELL.7X • .3HSUM.7X.5HF~EO •• 6X.4HMEAN)
DO 310 I=1.NCELLS
ID1=LOCD1+I
IF(W(lD1) .EC. 0.0) ~RITE(ICUT.J20) I
IF(W(ID1) .GT. 0.0) TEMP=w(I)/w(IC1)
IF(w(ID1) .GT. 0.0) ~RITE(IaUT.3JO) I.W(I}.W(ID1).TEMP
CO,.,.iI,.,.LE
~1a
GC TO 220
32C FO~~Ai(lH .I6.12X.14H(MISSI~G CELL»
.330 F~~MAT(1h .I6.1X.E16.8.F5.0.1X.E16.S)
C IMMEDIATE CCMPUTATION OF CLASSIFICATIC,.,. MEANS (C) CPTION
340 WR ITE ( ICL T .350)
350 FC~MAT(45H CLASSIFICATION SUMS. F~EaUENCIES. A~D MEANS-)
DO 360 I=1.NCELLS
IAA=LOCA+I
w(IAA).::w(I)
:;60
CALL DECCMP(1.L~CA.IuUT.NW.W.M.LSTFI.N.LS.LV.LLIM.LP)
DO 370 1=1.NCELLS
ID1-=LCCD1+1
IAA=LOCA+I
lid lAA)=wODU
370
CALL DECCMP(2.LOCA.IOUT.NW .... M.LSTFI.,.,.,LS.LV.LLIM.LP)
GO Te 220
380 ~RITE( ICUT.390) NCSIGD,FLEVEL.~AXIT.IRCPT,IVOPT.IGOPT.IPOPT
390 F2~MAT(12H GPiIONS- S=.I2.4H. T=.F6.4.4H. I.::.I3.4H. R=.I1.
*4r. V.::.Il.4H, G=.11.4H, P=.I1)
GO TO 1<;0
400 w~ITE(IOUT,410) ICD
410 FC~~AT(10H ERROR I~ .A1.14h SPECIFICATICN)
IF(I8ATCH .EO. 1) G~ TO 440
IF(IC.J .Ea. IF .OR. ICv .EC. IL) GC TO 10
000018,,)0
00001840
00001650
00001860
00001870
00001880
00001890
00001S00
00001910
00001920
001,)01930
00001940
00001950
00001960
00001970
000019dO
00001990
00002000
00002010
00002020
000020..30
00002040
00002050
00002060
00002070
00002080
00002090
00002100
00002110
00002120
00002130
00002140
00002150
00002160
00002170
00002180
00002190
00002200
00002210
00002220
00002230
00002240
00002250
00002260
00002270
000022:30
00002290
00002300
0000231000002320
00002330
00002340
00002.350
00002~oO
00002370
00002380
0000239J
00002400
00002410
00002420
IF(ICD .Ea. Ie) GO TO 150
190
420 WRITE(lOLT,430) INCW
430 FO~MAT(42h DIMENSION OF w ARRAY MUST BE INCREASED dY,16)
440 STOP
GD TO
E .... C
SUBRCUTINE SCA~{IPT,M,LER,N,LE,LS,LV,LLIM,LP,L,lA,IBATCH)
CCMMCN YPY,SSK~,SSEM,IIN,IOUT,IRCPT,IVOPT,IGOPT,IPOPT,ICFLAG
COMMON IBST,IhST,IRST,ISST,IXST,ICD,NSUES,LPCUT,NCl,IDF,IDFM,IDFR
DIMENSION LER(M),LE(N),LS{~),LV{N).LLIM(N),LP(10).lA(L)
DOUBLE PRECISICN YFY,S5RM,SSEM
DATA ILP'lh(/,IRP/IH)/,IM'l~M,.IH/I~H/,ISTAR/lh*/,ISLASH/lH//
DATA lELA .... K/IH /
I55T=0
IX5T=0
tll=M-l
11= IPT
IF(I1 .GT. L) GO TO 250
lC=IGEHII,IA,L)
IF(ICD .EO. Ir) GO TO 20
1F ( 1 C , Ea. 1ST AR) GOT 0 170
C INITIALIZE E/R LIST TO ZEROES FOR M AND ABSCLUTE VALUES FJR H
DO 10 1=I,Ml
LER(I)=O
10
LER(M)=l
20 IF(LER(M) .EO. 0) GO TO 250
DO 30 1=1.~1
30
LER(I)=IA8S(LER(I»
M2=2*M
C SCAN TERM TO CGNST~UCT E/R LIST; ENTER NEGATIVES FeR H TERM
40 DC 50 I=I,N
_
5C
LP( I )=M2
. . , SUM VALUeS OF FACTOR SYMBOLS FG~ E/R ENTRY; ZERO LP POSITICNS
N~=O
NV S=O
60 IFLAG=O
DC 70 l=I,N
IF(IC .NE. LE(I»
GO TO 70
LP(I)=Q
IFLAG=1
NE=NE+l
NvS=NvS+LV(I)
C')NT INJE
70
IF(IFLAG .NE. 1) GO TO 80
IF ( I I ,GT, L) GO TC 250
IC=IGET( II, IA,L)
GC TO eo
80 IF(NE ,ea. 0) GO TO 250
IF(lC ,NE. ILP) GO TO 250
C SCAN SUBSCRIPTS; SET NONZERO LP E~TRIES TC NUMERICAL VALUES
NS=O
NA~=O
90 IF(lI .GT, L) GO TC 250
I C= 1GEl ( I 1 , I A , L )
IFLAG=O
DO 100 1=I,N
IF(IC .NE. LS(I»
GO TO 100
IF{LP(I) ,NE. 0) LP(I)=LV(I)
IF(LP(I) .Ea. 0) NAS=NAS+l
000024.30
00002440
00002450
00002400
00002470
000024dO
00002490
00002500
00002510
00002520
00002530
00002540
00002550
00002500
00002570
OJ002580
00002590
00002600
000\)2610
00002620
000020.30
00002040
00002050
00002660
00002670
00002080
00002690
00002700
00002710
00002720
000027JO
0\)002740
00002750
00002760
00002770
00002780
00002790
00002800
00002810
00002620
00002630
00002840
00002850
00002860
00002870
00002880
00002890
0000290000002910
00002920
OU002<;30
00002940
00002950
00002960
00002<;70
00002980
00002990
00003000
0-J003010
C CHECK FOR INVALID
CJ 92 J= I. N
~ESTEO
TERM
IF(LP(~)
.EO. 0) GC TC 94
CJNTINUE
GO TO 250
IFLAG-= 1
,,"S=NS+l
CO,,"lINl.E
IF(IFLAG .NE. 1) GO TO 110
GO TC 90
110 IF(NAS .~E. Nc) GO TO 250
IF (IC .NE. lRP) GO TO 250
1F(NS .NE. NE) GC TO 120
C C~ECK FOR INVALID CROSSED TERM
CO 115 I=l.N
IF(LP(I) .EO. M2) GC TO 115
IF(LP(I) .NE. 0) GO TJ 250
CCNTINUE
115
I=M- .... V S
ITEMF=O
IF( ICO .Ea. 1.,) ITEMP:::NVS+l
IF (LER( I) .NE. ITEMP) GO TO 250
LER(I)=NVS+l
IF(ICD .Ea. IH) LER(I)=-LER(I)
GC T'.:I 156
C ENTER SuM FCR NESTED TERM INTC E/R PCSITICNS TC peCL
1 20 DC. 15 0 1= 1 • M 1
"UM=I-NVS
CO 130 ~= 1 .N
~UM=NUM-LP(J)
IF(NUM .GT. 0) GO TO 130
1F(NUM .EO. 0) GO TO 140
,,"uM=NUM+LF(J)
CC/IoiTINl.E
130
GO TO 150
K=M-I
140
ITEMP=O
IF( ICD .EO. IH) ITEMP=NVS+l
IF(LER(K) .~E. ITEMP) GC TO 250
L::R(K)=N'-S+l
IF(ICD .EO. IH) LER(K)=-LER(K)
150
CCNTINUE
156 IF(I1 .GT. L) GC TO 160
IC=IGET(II.IA.L)
IF( IC .Ea. I8LA/IoiK .A/IoiO. II .GT. L) GC TO 160
IF (IC .NE. ISLASH) GC TO 40
C ~EAD MCOEL CR ~YPCTHESIS CONTI/loiUATIC,," CARD (SLASH FOLLO~S TERM)
RE.AD( IINtl58) (IA( 1 ).I=l.L)
158 FC.RMAT(SOA1)
IF(ISATCH .EO. 1) WRITE(IOl.Td59) (lA(I).I=I.L)
159 FO~MAT(lH .BOAl)
e
11=1
IC=IGET(II.IA.L)
GC TO 40
C ChECK FOR INVALID HYPCTHESIS TERM
160 DO 162 I=1.M1
DO 162 J=I.t-ll
IF(LER(I) .EO. 0) GO TC 162
IF(LER(I) .EO. (-LER(J») GC TO 250
CC,,"Tl~UE
162
e
0000.3020
0000,3030
OOOOJO 40
00003050
00003060
00003070
000030S0
00003090
00003100
00003110
00003120
00003130
00003140
00003150
00003160
0000.3170
00003180
00003190
00003200
00003210
00003220
00003230
00003240
0000.3250
00003260
00003270
00003280
00003290
00003300
00003310
00003320
00003.330
00003.340
00003350
00003360
0000.3370
00003380
00003.390
0000.3400
00003410
00003420
00003430
00003440
00003450
00003400
J000.3470
000034dO
00003490
00003500'
00003510
00003520
00003530
00003540
00003550
0000.3560
0000.3570
00003580
0000.3590
0000.3600
00003610
,
C
C
C
e
C
CCNSTRUCT LP FROM E/R; DETERMINE EFFECTIVE FACTORS
NSIJ8S="
DO 166 l=l.N
LP(I)=O
INC1=LV(I)
INC2:LV(1)/I"Cl
LOC= 1
CO 166 .J=1,II\C2
DC 164 K=1,INC1
IF(LEK(LCC) .GT. 0) LP(I)=LP(l)+l
LCC=LOC+l
164166
LCC=LOC+II\Cl
IF(LP(l) .EO. 0) NSU8S=NSIJBS-1
168
CCNTINUE
CETERMINE IF THE EFFECTIVE X ~ATRIX IS SOU ARE
IV=N-t\SU8S+1
DC 109 I=l.N
IF(LP(I) .Ea. 0) GO TO 16S
IF(LP(I) .NE. LV(IV»
GO TO 224
169
CCI\TI"UE
GC TO 222
CCNSTRLCT E/R LIST FCR CCMPLETELY CROSSEC ~CDEL
170 CO 180 1=1,M1
180
LER(I)=M-I+l
210 !'iSLBS=!'.
DC 220 1= 1 .N
220
LP(I)=LV(l)
222 IXST= 1
224 IF(ICFLAG .Ea. 1)~RITE(IOUT.226)(LER(I).I=l.M)
226 FO~MAT(10H E/~ LIST-/(1H ,1615»
C~MFUTE PARAMETERS REOUIRED TO RESTRUCTURE CELL FREuUENCY
ARRAY
LPCIJT=l
N01=1
DC 230 I=l.N
IF(LP{I • • EO. 0) LPOUT=LFCUT*LLIM(I)
IF(LP(I) .NE. 0) N01=N01+LV(I)
2.30
CCNTINUE
CCMPUTE DEGREES OF FREEDOM FOR FULL CR ~ECUCED MOCEL
1= 1 .M
IF(LER(I) .LE. 0) GO TO 240
N02=M-I+l
CALL LABEL(NC2.0.LLIM.ICIJT,t\,LV.LP)
K=l
CO 235 .J=l,N
IF(LP(.J) .NE. 0) K=K*(LLIM(J)-ll
CONTINUE
235
ICF=IOF+K
240
CONTINUE
IOFR=O
IF( ICD .Ea. IH) IDFR=IDF
IF (ICD .Ea. 1M) IDFM= IDF
RETURI'-4
250 ISST=l
RETURN
Ef\O
,00003620
0000.3630
00003640
0000.3650
00003660
0000.3670
00003680
00003690
00 OU 370 0
00003710
00003720
00003730
00003740
0000.3750
00003760
00003770
0000.3780
00003790
0000.3800
00003810
00003820
000038.30
00003840
0000..3850
00003860
00003870
00003880
00003890
00003900
00003910
0000392"0
00003930
CJOOJ.3940
00003950
00003960
0000.3970
0000.3980
0000::990
00004000
00004010
00004020
000040JO
00004040
00004050
00004000
00004070
00004080
00004090
00004100
00004110
00004120
00004130
00004140
00004150
J0004160
00004170
FIJI\CTICN IGET(ICURS.ISTRNG,Lf\GTH)
DI~Ef\SICN ISTRI\G(L!'.GTH)
O-J004180
00004190
IDF=O
240
;)C
DATA IELANK/lr /.IPLUS/IH+/,ICOMMA/IH./
100 IGET=ISTRNG(IOURS)
ICURS=ICURS+l
IF (leURS .GT. LNGTH) RETURN
IF (IGET .EO. IBLANK
.OR. IGET .Ea. IPLUS) GOTa 100
IF(IGET .Ea. ICGMMA) GO TO 100
RETURN
END
SUBRCUTINE PART1(Na.W.M.LSTFI.LER.~.LV.LLIN.LT.LP.MAXMC.Q.QT}
YPy.SSRM.SSEM.IIN.ICUT.IRCPT.IVOPT.IGOPT.IPOPT.IOFLAG
CGMMGN IBST.lhST.IRST.ISST.IXST.ICC.NSUES.LPOUT.NC1.IDF.IDFM.IDFR
COMMON NCELLS.LCCD1.LOCD2.LCCV.LOCB.LCCA.I~ANKM.IRANKR.MAXIT
DIMENSION .(NW).LSTFI(M).LE~(M).L~(N).LLIM(N).LT(N).LP(10)
DIME~SICN Q(MAXMC.MAXMC).QT(NAXMC)
DOUBLE PRECISIGN W.C.S.TRACE.TEM~.Q.QT.YPy.SSRM.SSEM
DATA Ih/lhM/.I~/lHM/
IHST=O
If'ST=O
IB5T=0
IRANK=O
IF{NSUES .ea. N) GO TO 140
C FCRM ~EST~UCTURED CELL FREaUE~CY AR~AY (EFFECTIVE C MATRIX)
DO 40 I=l.NCELLS
ID1=LOCD1+I
IA=LOCA+I
~dIA)=w(ID1)
40
CALL DECOMP(I.LOCA.IOUT.NW.W.M.LSTFI.N.LT.LV.LLIM.LP)
NS=LceA
N"'=M-NC 1
DC 50 1=I.NN
50
NS=NS+LSTF I (I)
CALL LABEL(N01.0.LLIM.IOUT.N.LV.LP)
CALL PCCL(0.LJCD2.NS.NW.W.N.LLI~.LT.LP)
C CHECK FCR A SOUARE EFFECTIVE X MATRIX
60 IF(IXST .Ea. 1) GO TO 120
COM~uN
K=LCCO~+l
70
C THE
80
90
100
C ALL
110
C THE
120
e
130
IFLAG=O
OJ 70 I=I.NCELLS
ID2=LOCD2+I
IF(W(ID2) .EO. 0.0) GO TG 170
IF{W(ID2) .NE. W{K»
IFLAG=1
CCNTINUE
IF{IFLAG .EQ. 1) GO TJ 110
EFFECTIVE D MATRIX IS A SCALAR TIMES T~E IDENTITY
I RA~K= I DF
DO 90 I=l.NCELLS
ID2=LOCD2+1
.(ID2)=w(ID2)/FLOAT(LPOUT)
•
C= 1 .OCO
I8S,= 1
GO TO 160
eLEMENTS GF ThE EFFEC,IVE D MATRIX ARE NONZERO
IRANK=IDF
GO TO 160
EfFECTIVE X MATRIX IS SQUARE
DO 130 I=l.NOELLS
ID2=LOCD2+I
IFl\Id ID2) .NE. 0.0) IRANK=IRANK+l
CONTINUE
00004200
00004210
00004220
000042.30
00004240
00004250
00004260
00004270
00004280
00004290
00004300
00004310
00004320
00004330
00004340
00004350
00004360
00004370
00004~80
00004390
00004400
00004410
00004420
00004430
00004440
00004450
0\)004460
00004470
00004480
00004490
000045Q-0
00004510
00004520
000045.30
00004540
00004550
00004560
00004570
00004580
00004590
00004600
0000461u
00004620
00004630
00004640
\)0004650
00004660
00004670
00004080
00004690
00004700
00004710
00004720
00004730
00004740
00004750
00004760
00004770
1)0004780
IRA~K=IRA~K/LFaUT
GiJ TO eo
140 DC 150 I=1.NCELLS
ID1=LCCDl+1
ID2=LOCD2+1
150
~(ID2)=w(IDl)
GO TO cO
~RA~K hAS BEEN DETERMINED (NONITERATIVELY OR ITERATIVELY)
160 IF( ICD .EO. IH) IRANKR=IRA~t<
IF(ICD .EO. 1M) IRANKM=IRA~K
GC TC 3.30
170 IF(ICD .Ea. 1M) GO TO 175
If<A~KR=O
.NE. IDFM) GO TO 180
Ij:;ANKR=ICFR
GC TO 330
175 IRANKM=O
180 IF(I~OPT .EO. 0) GO TO 400
ITERATIVELY COMPUTE RA~K CF FuLL CR REDUCEC MOCEL
C= 1. 000
RTCL=O.l
NMC=O
DO 1S0 l=l.NCELLS
ID1=LCCDl+I
ID2=LGCD2+1
IF(WllID1) .EO. 0.0) MIC=NMC+l
\II ( I 0::: )=111 (U
190
IF(~MC .GT. MAXMC)
GO TO 270
CCMPUTE O. POWERS CF O. AND RELATED TRACES (FEw EMFTY CELLS)
K=l
I\JEC=O
DC 210 I=l.NCELLS
ID1=LCCDl+1
IF{~(ID1) .NE. 0.0)
GO TO 210
DO 200 J=l.NCELLS
IV=LCCV+J
IB=LCCB+J
w(IV)=O
W( 18)=0
III(J)=O
IF(J .EO. I) W(~)=1.000
CONTINUE
200
CALL STEP(3.C.S.NIII.III.M.LSTFI.LER.N.LV.LLIM.LT.LP)
LL=l
CO 205 J=l.NCELLS
IC1=LOCDl+J
IV=LOCV+J
IFlw( 101) .NE. 0.0) GC TO ~05
ClK.LL)=WlIV)
LL=LL+1
CONTINUE
205
K=K+1
210
CONTINUE
FCwER C AND CCMPUTE TR(I-Q**(2*K»
TEMF=ICF
Dv 213 I=l.NMC
TEMP=TEMP-Q{ 1.1)
21.3
IT=O
215 IF( IGFLAG .Ea. 1) wRITE( IGUT.216) IT.TEMP
216 FOf<MAT(10H ITERATIGN.I.3.8H. TRACE=.F16.9)
IF(IRA~KM
C
C
C
_
,.,
00004790
00004800
00004810
00004820
00004830
00004840
•
00004850
00004860
00004870
00004680
00004690
00004900
00004910
00004920
00004930
00004940
00004950
00004960
00004970
00004S80
00004990
00005000
00005010
00005020
00005030
00005040
00005050
00005060
00005070
00005080
00005090
)0005100
00005110
00005120
000u5130
00005140
0000S150
00005160
00005170
00005180
OU0051'10
OOVVS200
00005210
00005220
000052:30
00005240
000Q5250
00005260
00005270
00005280
00000290
000u5300
000 \)S'; 1 0
00005320
00005330
00005340
00005,,:)50
00005360
00005: 70
00005~ao
CO 230 .J= 1 ,/';MC
CO 220 I=J.I\. tiC
OT(I)=O
CC 220 K.: 1 .NMC
OT(I)=Ol(I)+O(K,J)*C{K.I)
220
CO 230 K=J. NMC
. . 230
C(K • .J)=OHK)
..
TRACE:IDF
DO 240 I=1,NMC
TRACE=TRACE-Q(I.I)
00 240 .J=I."'totC
Q(I.~)=O(J,I)
240
IT=IT+1
C
C
C
C
00005390
00005400
00005410
00005420
00005430
00005440
00005450
00005460
00005470
00005480
00005490
00005500
00005510
00005520
TEMP=T~ACE-TEMF
00005530
TRACE IS MC"'OTCNICALLY INCREASING
00005540
IF(TEMP .LE. RTCL) GO TO 250
00005550
IF(IT .GE. MAX IT) GO TO 310
00005560
TEMP=TRACE
00005570
GO TO 215
00005580
250 DC 260 1=1.NCELLS
00005590
ID2=LCCD2+1
00005600
lIe 1)=.( 102)
260
00005610
ADD C/,;E (BASED C/\ MCNOTONICITY) TO CBTAI'" INTEGER RANK
00005620
265 I~ANK=TRACE+1.0DO
000056..30
GO TC 160
00005640
CCMPuTE S FOR UNIT VECTORS (MANY EMPTY CELLS)
00005650
270 TRACE=O
00005660
RTCL=RTOL/(FLC~T(NCELLS)-FLCAT("'MC»
00005670
DC 300 I=l.NCELLS
00005680
ID1=LCCD1+1
00005690
IF(~(ID1) .EO. 0.0)
GO TC 300
0000570-0
co 280 J=1.NCELLS
00005710
IV=LCCV+J
00005720
18=L:CB+J
00005730
w(IV)=O
00005740
w( Ifj)=O
00005750
"I (.J) =0
00005760
IF{J .EO. 1) W(J)=1.0DO
00005770
280
CC"'TINL.E
00005780
IT=O
00005790
lEMP=O
00005800
CALL STEP(3.C,S,/\W,W.M.LSTFI.LER.N,LV.LLItot,LT.LP»
00005610
IT=IT+1
00005820
lEMP=S-TEMP
000058.30
T~E VALUE JF S
IS MCNOTJNICALLY INC~EASING
OiJ005840
IF(TEMP .LE. RTCL) GC TC 295
00005850
IVEC=I
00005860
IF(IT .GE. MAXIT) GO TO 310
00005870'
TEMP=S
00005080
GC TO 2<;0
00005890
TRACE=TRACE+S
2~5
000 059lJ 0
IF( ICFLAG .EO. 1 l\11RITE{ ICUT.296)1 ,IT,TRACE
00005910
FC~MAT(7H VECTCR,14,12H,
ITERATICNS,I4,Sr. TRACE=,F1c.9)
2<;6
OOOJ5920
COI\TINUE
300
0001,)5930
GC TO 250
00005940
~lO W~ITE{ICUT,320) MAXIT.TEMF,RTCL,IVEC
320 FCRMAT(llH MAXIMUM OF,14,38H ITERATIONS EXCEEDED IN CGMPUTING RANt<.00005950
000059bO
*/7h DELTA=.F22.9.10X.SHEPSILUN=,F22.<;.10X,7HVECTOR=,II0»
vIJ005970
IF{NMC .GT. MAXMC) TRACE=TRACE+S
000059030
IR~T=1
GC ie 265
330 IF(IRCPT .EO. 1) wRITE(IGUT • .:340) ICD.IRANI<
340 FC~MAT(17H T~E RANK OF THE .Al.17H DESIGN MATRIX IS,15)
400 REll...F<N
ENe
SI...ERCuTINE P~Rl2(N•• W.M,LSTFI,LER.N.LE.LV.LLI~,LT.LP)
COMMON YPY,SSR~.SSEM.IIN.IGUT.IF<CPT.IVOPT.IGOPT.IPOPT.IOFLAG
CCMMGN IBST.IHST.IRST.ISST.IXST.ICO.NSUBS.LPCUT.NGl.IDF.10FM.lDFR
ceMMCN NCELLS.LOCOl.LOCD2.LCCV.LCC8.LOCA.IRANKM.IRANKR.MAXIT
0000S990
00006000
00006010
00006020
00006030
00006040
00006050
00006060
00006070
CC~MCN NOBS,M~XDI.MINDI.FLEVEL,NOSIGD
00006080
DIMENSION .(N"),LSTFI(M).LE~(M),LE(N),LV(N),LLIM(N).LT(N).LP(10)00006090
OCI...BLE PRECISION w.C,S.TEMF.YPY.SSRM.SSEM.CABS.F
00006100
DAIA IBLANK/IH /,ISTAR/IH*/,IM/IHM/,IH/IHH/
00006110
FTCL=,005
00006120
STOL=(,05*YPY)/(10,O**NOSIGC)
00006130
C ZERC THE VECTORS 8 AND V TO INITIALIZE THE ITERATIVE ALGORITHM
00006140
DO 10 I=I.NCELLS
000061S0
lE=LCC8+ I
00006160
IV=LCCV+I
00006170
w(IS)=O
00006180
10
lII(IV)=O
00000190
IT=O
00006200
lEMP=O
0000621u
IF(IEST ,Ea. 1) GO TO 310
00006220
IF(ICC .EO. IH) GO TO 220
00006230
C CCMFuTE SSR FOR T~E FULL MeDEL USI~G OPTIMUM C FOR CCNVERGENCE
00006240
C=(FLwAT(MAXCI)+FLOAT(MINDI»/2.0
00006250
IF(MINDI .EO. 0) C=MAXDI
00006260
30 CALL STEP(l,C,S.NW.W,M,LSTFI,LER.~.LV.LLIM.LT.LP)
00006270
IT=IT+l
00006280
lE~P=S-TEMP
00006290
IF(ICFLAG .Ea. 1) wRITE(IOUT.40) IT,ICO.S
00006300
40 FG~MAT(10H ITERATION.I4.SH. SSR.Al.1H=.E16.8)
00006310
IF(CASS(TEMP) .LE. STOLl GC TO 50
00006320
IFtIl .GE. MAXIT) GO TO 200
00006.330
lEMP=S
00006340
GC TC 30
00006.:350
( APPLY T~E E OPERATOR TC THE VECTOR B
00006360
50 DC 60 I=l,NCELLS
00006370
I8=LCC8+ I
OOu06.380
1~=LCCA+I
00006.:390
.t IA )='a( IB)
GO
00006400
CALL DECaMP(o.LCCA.IGUT.NW,w.~.LSTFI.N.LT.LV.LLIM.LP)
00006410
C CCMPI...TE SSR AND SSE FOR THE FULL MCDEL
00006420
70 SSRM=S
00006430
SSEM=YPY-S
00006440
.. RITE( IOUT.7S) IT,SSRM.SSEM
000064S075 FCRMAT(10H ITERATION.14.18H. SSR(FULL MCDEL)=.E16.8.1H./
00006460
*14X.18h
S5E(FI...LL MOOEL)=.E16.8)
00006470
IF{IVOPT ,Ea. 0) GC TO 11S
00006400
"'~lTE(ICUT.80)
00006it90
80 FCRMAT(34H ESllMATES CF EXPECTED CELL MEANSOJ006500
*/24H
CELL
ESTIMATED MEAN)
00006510
GC 90 I=l.NCELLS
00006520
IDl=LCCDl+I
00006530
IV=LCCV+I
00006540
IF ( ~ ( I D1) • Ea. 0.0) wR IT E ( lOUT. 100) I. W( 1V )
00006550
IF(w(IC1) .GT. 0.0) WRITE(lCI...Ttll0) I.W(IV)
00006560
90
CCI\TIfl.uE
000\)6070
100 FCFMAT(lH .I6,lX,E16.8,15H (MISSING CELL»
00006580
110 FC~MAT(lM ,16,IX,E16.3)
00006590
115 IF(IGOPT .EO. C) GC TO 190
00006600
C CCMFUTE ThE G-INVERSE SOLUTICN TO THE NORMAL eOUATIONS
00006610
IIRITE(ICUT,120)
00006620
120 FO~MAT(20H G-INVERSE SQLUTION-)
00006630
~PCCL A~RAYS CF "ES1IMATES· WITH EOUAL E/R LIST VALUES
00006640
f\P=LGCA
00006650
DO 170 1= I,M
00006600
I\C=LER(I)
00006670
IF(NO .LE. 0) GO TO 170
00006680
tliS=I\P
00006690
NCP=M-I+1
00006700
CALL LA8EL(NOP.0,LLIM.IOUT,N,LV,LP)
00006710
C POSITl~E VALUES IN LLIM WILL CORRESPOND TO suaSCRIPTS IN PRIMARY
00006720
CO 130 K=1,!'l
00006730
IF(LP(K) .EO. 0) LLIM(K)=-LLIM(K)
00006740
130
00006750
CCNTIN""E
DO 140 J=I,M
J0006760
IF(J .Ea. I ) GO TO 140
00006770
IF(LER(J) .!'lE. NC) GO TC 140
00006780
LER(J)=-NO
00006790
!'lOS=M-J+l
00006800
C CBTAII\ MAP COEFFICIE!'lTS FOR SECCNDARY ARRAY AND POCL INTO PRIMARY
00006810
CALL LABEL(NOS,O,LLIM,IOUT.N,LV,LP)
00006820
CALL PCOL(l,I\P,NS,!'lW,W,I\,LLIN,LT,LP)
00006830
140
NS=NS+LSTF I (J)
00006840
DO 150 K=l,N
00006850
150
LLIM(K)=IABS(LLIM(K»
00006d60
C LA8~L AND OUTPUT "ESTIMATES" FeR MODEL TERM
00006870
CALL LAtiEL(I\C,t8LANK,LE,ICUT,I\,LV,LP)
0000688-0
MST=LSTFI(I)
00006890
DO 160 K=l.MST
0000691)0
I A-=NP+K
00006910
160
wRITE(IOUT,110) K,W(IA)
00006920
170
I\P=NP+LSTFI(I)
00006930
1<;0 FoCE1URN
00006940
200 WRITE(ICUT,210) MAXIT.ICD,TEMP,STOL
00006950
210 FC~MAT(11H MAXIMUM OF,I4,~7H ITERATIONS EXCEEDED IN COMPUTING SSR,OOOOo960
*Al/7H DELTA=,E16.e.10X,8HEPSILCN=,Elc.S)
00006970
GG TC 50
00006980
C SELECT C FCR MCNOTQNICITY aF SSR AND F
00006990
220 C=MAXDI
00007000
C CCMFUTE CEGREES OF FREE~OM TO USE FCR F STATISTIC
00007010
225 IF(IRAI\KM .EO. 0) GO TO 240
00007020
IF(IRAI\KR .Ea. 0) GO TO 240
0000 70..30
IDFD=NC8S-IRAfl.KM
00007040
ICFN=I~ANKM-IRAf\KR
000070S(}
wRI1E(IOUT,230) IDFN,IDFD
00007060
2~O FGFMAT(j3H FRCM RAI\K ClJMPUTATIJNS00007070
GO TO 260
00007080
240 IOFD=I\CBS-IDFM
00007090
I.JFN= IDFM- IDFR
00007100
WRITE( lOUT ,250) IDFN,IDFD
00007110
250 FCRMAT(50H ASSUMES FULL RA~K A~D EGUAL LEVELS ~ITH- DF(NUM)=,I4,
00007120
*10h, DF(DEN)=,lS)
00U07130
2CC IF(IUFC*IDFN .LE. 0) GG TC 190
00007140
IF(lBST .EO. 1) GO TO 275
00007150
CL\1PUTE MCI\OTC~ICALLY DECREASII\(i APFRCXIMATICN TC F
00007100
e
Z70 CALL
S7EP(1.C,S,N~,~.M.LSTFl.LER,N.LV.LLIM.LT.LP)
IT=n+l
275 F=«SSRM-S)/FLOAT(IDFN»/(SSEM/FLCATlICFD»
IF(IGFLAG .EO. 1) WRITE(IOUT,40) IT.ICD,S
C APPRCXIMATION TO F PROBABILITY (SMILLIE AND ANSTEY)
Ul=2.0/(9.0*FLCAT(IDFN»
tit
U2~2.0/(;.0*FLGAT(IDFD»
Fl=F**<1.0/3.0)
U=«1.0-U2)*Fl-l.0+U1)/SORT(2.0*(U2*Fl*F1+Ul»
PROB=0.5/(1.0+«(.078108*U+.000972)*U+.230389)*U+.278393)*U)**4
IF(IBST .Ea. 1) GO TO 290
IF(lPOPT .eo. 1) GC TO 278
IF(PROE .GE. fLEVEL) GO TO 290
278 TEMP=TEMP-F
IF(DA6S<TEMP) .LE. FTOL) GC TO 290
IF(IT .GE. MAX IT) GO TO 280
TEMP=F
GO TO 270
280 WRITE( ICUT,210)MAXIT.ICD,TEMP,FTGL
2C;O ISIG=lSTAR
IF(PR08 .GE. FLEVEL) ISIG=IBLANK
MRITE(IOUT.300) IT.F.ISIG.PROB,FLEVEL.S
300 FGRMAT(IOH ITERATION,I4,4H, F=,F12.3.Al,15h. PRCB(F) .GT • • F6.4.
*16r VS. F LEVEL OF .F6.4/20H SSR(REDUCED MGDEL)=,EI6.8)
GC TO 190
C BALANCED CASE; ONE ITERATION
310 CALL STEP(2,C.S,NW,~.M,LSTFI,LER,N.LV,LLIM.LT.LP)
IT=IT+l
I F ( I CD. Ea. 1M) GO TO 7 0
GO TO 225
END
SUBROUTINE STEP(IND,C,S.NW,W.M.LSTFI.LER,N.LV.LLIM.LT.LP)
DIM~~SION ~(N~),LSTFI(M),LER(M).LV(N).LLIM(N).LT(N).LP(lO)
Dc~aLE
PRECISION W,C,S,T1,T2
$=0
NCELLS=LSTFI (1)
40 1= 1. NCELl. S
C INCREMENT EASE ADDRESSES CF ARRAYS
ID1=NCELLS+I
ID2=IDl+NCELLS
IV=ID2+NCEl.LS
18= IV+I\CELLS
lA=IB+I\CELLS
C GENERAL ITERATION (IND=l); NON-ITERATIVE (IND=2); RANK (INO:3)
IF(INu .eo. 1) GO TO 20
IF(IND .EO. 2» GO TO 10
'a(lA)=w(I)-w(lV)
IFllJHIDl) .EO. 0.0) II(IA)=W(I)
GO TC 30
'.Ir(IA)=-lN(IV)
10
IF(W( IJ2) .Gi. 0.0) W( IA)=lN(IA)+W( 1 )/w( 102)
G.J TO 30
20
"'(IA):(~(I)-.<IDl)*w(IV»/C
. C V=V+A; B=8+A
30
'l1I(IV)=W(IV)+w<IA)
'llI(I8)=11I(I8)+w( IA)
40
CCNTINUE
RESIDUAL CPENATOR
IA=I8
DO:
UUUUflfU
00007180
00007190
00007200
00007210
00007220
00007230
00007240
00007250
00007260
00007270
00007280
00007290
00007300
00007310
00007320
00007.330
00007340
00007350
00007360
00007370
00007~eo
00007390
00007400
00007410
00007420
00007430
00007440
00007450
00007460
00007470
00007480
00007490
00007500
00007510
00007520
00007530
00007540
00007550
00007560
00007570
000075<30
00007590
00007600
00007610
00007620
OU007630
0000764000007650
00007660
00007670
00007680
00007690
00007700
00007710
00007720
00007730
J0007740
00007750
1
.1
CALL DECOMP(0,IB.ICUT,NW,W,M,LSTFI,N,LT.LV,LL1~,LP)
IFLAG=O
DU 50 1= I , M
IF(LER(l) .GT. 0) GO TO 50
IF(! .EO. 1) GO TO 45
"C="'- 1+1
CALL LA8EL("C,0.LLI~,IOUT.",LV.LP)
CALL PC~L(IFLAG.IA.IB.NW.W.N.LLIM.LT.LP)
45
IFLAG=1
50
IB=IB+LSTFI(I)
C V=V-T. S=2*Y*V-V*D*V
DC 60 l=l.NCELLS
ID1=NCELLS+I
IV=ID2+1
IA=lA+l
IF(IFLAG .EO. 1) W(IV)=W(IV)-W(lA)
Tl=2.000*111( I)
T2=lIi (101)
IF(T2 .EO. 0.0) GO TO 60
IF(INO .EO. 3) 12=1.000
11::Tl-w(IV)*T2
60
~= S + T 1 iii ( I V )
RETURN
E"'O
*
SUBRCUTINE OECaMP(INO.LOCA.IOUT,N~.W.M.LSTFI,N.LS,LV,LLIM,LP)
C NeTE: T~E ARGUMENTS LS.LV.LP. AND 1JUT ARE USED ONLY FCR C MEANS
DC~8LE PRECISICN W.TE~F,DNF~.C~EAN
0lMENSION W(Nw).LSTFI(M).LS(",).LV(N),LL1M(N),LF(10)
DATA 100T/ll1./
LL= 1
MM=1
NI\=1
~
LCCTwC=LOCA+l
10 LCC.:lNE=L;JCA+l
KK=LL
C FIND NUMBER OF ELEMENTS IN THIS MEAN
Kl=N+I-NN
I\P ~-=LL 1M (K 1 )
DI\ FM="'PM
20 LCCTwO=LCCTWO+LSTFI(MM)
C FIND N~M8ER CF MEANS FCR EACH RESIDUAL
MEANST=LSTFI(MM+l)
C FIl\C II\CREMENT
K1=M+I-KK
II\C=LSTF I(KI )
C FOR~ T~E ARRAY OF MEANS
MD=1
NC=M-MM
IF(IND .EO. 2) CALL LABEL(NC.IDCT,LS,ICU1,N,LV.LP)
DC 70 I=I,MEA"~T.I"C
JTwC-=I+II'C-l
D:J 6C J=I,JTwG
l..=MD
L:>::MD
Il:::LJCTWO+J-l
TEMP=O.DO
00 .3 0 K= 1 , I' P M
12=Lccc"e+L-l
~
TE~P=TEMF+w( 12)
00007760
000\)7770
00007780
00007790
00007800
00007810
00007820
00007830
00007840
00007850
00007860
00007870
00007880
00007890
00007900
00007910
00007920
00007930
00007940
00007950
00007960
00007970
00007980
00007990
00008000
00008010
00008020
00008030
00008040
00008050
0000b060
00008070
00008080
00008090
00008100
00008110
00008120
000081.JO
00008140
00008150
00008100
01,)008170
00008180
00006190
00008200
00008210
0001,)8220
00008230
00008240
00008250
ooooe260
00008270
00008280
00008290
00008300
00 0 os.::s10
00000320
00008.3.30
00008,340
30
L=L+INC
C DEVIATES (IND=O); SUMS (IND=1); CLASSIFICATION MEANS (IND=2)
IF (INC .EC. 0) GOT~ 40
IF(IND .Ea. 1) Ge TC 36
IF(TEMF .Ea. 0.0) WRITE(ICUT.32} J
IF(TEMP .GT. 0.0) CMEAN=W(I1)/TEMP
IF(TEMP .GT. 0.0) WRITE(IGUT.34} J.W{I1}.TEMP.CMEAN
FJ~MAT(1H .I6.4X.29H(~ISSING CLASSIFICATION CELL»
32
FCRMAT(lH .I6.1x.E16.e.FS.O.1X.E16.S)
34
.. ( 11 )::TEMP
36
GOTD 60
40
W(I1)=TEMP/DNPM
C FCf;M DEVIATES
DO 50 t<=1.,..PM
I2=LOCCNE+LO-l
w(I2)=W(I2)-W(Il)
LD=LD+INC
50
MD=MD+l
60
70
MD=L-INC+l
IF (KK .Ea. 1) GCTe 80
KK=KK-l
lVlII=MM+ 1
Kl=LL-KK
LCCCNE=LoceNE+LSTFI(Kl)
GC TO 20
80 IF (NN .Ea. N) RETURN
LL=LL+LL
,..,N=NN+1
lVM=MM+1
GL1G 10
ENG
00008400
00008410
00008420
000084.30
00008440
00008450
00008460
00008470
000084dO
00008490
00008500
00008510
00008520
00008530
00008540
00008550
00008560
00008570
00008580
00008590
00008600
00008610
00008620
00008630
00008640
00008650
POCL(INO.NP.NS.,..,W,W.N.LLIM.LT.LP)
DIMENSICN w(Nw).LLIM(N).LT(N).LF(10)
GCUBLE PRECISION •• TEMP
C NP=LCCATIGN CF PRI~~RY ARRAY; NS=LeCATICN CF SECCNCARY ARRAY;
c MAP C~EFFICIENTS 08TAINED FROM LP; REPLACE (INO=O); ADD (INO .NE.
LCC1=NP
1= 1
1 0 D;) 20 J= I • N
20
LT(J).:=1
30 LCC1=LOC1+l
LC. C2-=NS + 1
DC 40 J=I.N
LOC2=LJC2+(LT(J)-1)*LP(J)
40
TEMP=~ (LCC2)
IF(IND .NE. 0) TEMF=TEMP+w(LaCl)
W(LOC1)=TEMP
D(J 50 J== 1 • N
K=N-J+1
IF(LLIM(K) .LT. 0) GC Te 50
IF(LT(K) .Ea. LLIM(K»
GC TC 50
LT(K)=LT(K)+1
IF(K .20. N) ~G Te 30
I=K+l
GC Te 10
CCNT1NUE
50
F<E1URN
END
00008660
00008670
00008680
00008690
00008700
00008710
00008720
00008730
00008740
00008750
00008760
00008770
00008780
00008790
001.108800
00008810
0000882Q·
00008830
00008640
00008850
0001.18660
00008870
00008880
000\)8890
00008<;JO
00008S10
00008<;20
OUOOB.350
00008360
00008370
00008380
00008~90
SuE~GUTINE
0)
I
SUBROUTINE
LAeEL(~C,ICHAR,LIST.ICUT,N,L~.LCA}
CI~ENSICN LIST(N),LV(~),LCA(10)
C
C
C
DATA I8LA~K/IH /
COEFFICIENTS: (NO='*.N-I+l.ICHAR=O,LIST:LLlM)
LA~ELS: MODEL TER~ (~C=LER(I).ICHAR=
.LIST=~E)
SUBSCRIPTS (NC=2**~-I+l.ICHAR=.,LIST=LS)
IIIUM=NQ-l
DO 10 I=N,10
LOA(I)=I8LAI\K
10
DC 20 1=1 .....
LOA( I )=ICHAR
20
IF(NUM .Ea. 0) GO TO 70
1=0
J=O
~o 1=1+1
40 J=J+l
50 I\U~"UM-LV(J)
IF(NUM ,GE. 0) GO TO 60
MA~
~U~=NUM+LV(J)
IF(ICHAR .NE. IeLA~K) GO TC 30
GC TO 40
60 L:A(I)=LIST(J)
IF(IIIUM .NE. 0) GO TO 30
7C IF(lCHAR .Ea. 0) GO TJ 90
wRITE(IOUT,80) (LuA(K),K=I.10)
eO FC~MAT(lH ,10Al)
RETU~N
«;0 DC
e
100
110
110 l=l,N
IF(LOA(l) .Ee. 0) GO TO 110
LeA( I )=1
or: 100 J=I,N
IF(LOA(J) .Ea. 0) G~ TO 100
LCA(I)=IASS(LOA(I)*LGA(J»
CCIIITINUE
CONTINUE
RETU~1II
ENe
000013930
00\)08940
00008950
00008960
00008970
00008980
00008990
00009000
00009010
00009020
00009030
00009040
00009050
00009060
00009070
00009080
00009090
00009100
00009110
00009120
00009130
00009140
00009150
00009160
00009170
000091dO
00009190
00009200
00009210
00009220
00009230
00009240.
00009250
00009260
00009270
00009280
00009290