SUBROUTINE MHIST(MM, M, N, A, CLAB, RLAB, TITLE, XMIN, XMAX, NV, * NDIAGS, DMWORK, WORK, DMIWRK, IWORK, IWORK2, XLL, * OUNIT) C C<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><> C C PURPOSE C ------- C C PRODUCES MULTIVARIATE HISTOGRAMS C C DESCRIPTION C ----------- C C 1. THE DIAGRAMS ARE COMPUTED SEQUENTIALLY. THE FIRST DIAGRAM C BEGINS WITH THE SMALLEST RANGE FOR EACH VARIABLE WHICH CONTAINS C EVERY OBSERVATION. THEN THE RANGES FOR EACH VARIABLE ARE C VARIED AND THE NEW RANGES ARE ACCEPTED IF THEY INCREASE THE C LOG-LIKELIHOOD OF THE OBSERVATIONS WITHIN THOSE RANGES. EACH C RANGE IS VARIED UNTIL NO FURTHER CHANGE INCREASES THE C LIKELIHOOD. THE FIRST DIAGRAM IS COMPLETED AND PRINTED AND THE C OBSERVATIONS WITHIN THE FINAL RANGES ARE DELETED AND THE VOLUME C OF THE BLOCKS ARE IGNORED IN LATER DIAGRAM CALCULATIONS. A C SECOND DIAGRAM, AGAIN STARTING WITH THE SMALLEST RANGE FOR EACH C VARIABLE WHICH CONTAINS EVERY REMAINING OBSERVATION, IS ADDED C AND VARIED TO MAXIMIZE THE LIKELIHOOD OF BOTH BLOCKS. THE C OTHER DIAGRAMS ARE COMPUTED SIMILARLY. C C 2. THE OUTPUT IS ON FORTRAN UNIT OUNIT AND CONSISTS OF THE SET OF C DIAGRAMS. FOR EACH DIAGRAM, THE RANGES FOR EACH VARIABLE ARE C ENCLOSED IN A RECTANGULAR BLOCK. TO THE RIGHT OF EACH DIAGRAM C IS A RECTANGLE WHOSE LENGTH IN THE HORIZONTAL DIRECTION IS THE C NUMBER OF CASES WITHIN THE SET OF RANGES FOR THAT PARTICULAR C DIAGRAM. THE SUM OF THE HORIZONTAL DISTANCES FOR ALL DIAGRAMS C SHOULD ADD UP TO THE TOTAL NUMBER OF CASES. C C INPUT PARAMETERS C ---------------- C C MM INTEGER SCALAR (UNCHANGED ON OUTPUT). C THE FIRST DIMENSION OF THE MATRIX A. MUST BE AT LEAST M. C C M INTEGER SCALAR (UNCHANGED ON OUTPUT). C THE NUMBER OF CASES. C C N INTEGER SCALAR (UNCHANGED ON OUTPUT). C THE NUMBER OF VARIABLES. C C A REAL MATRIX WHOSE FIRST DIMENSION MUST BE MM AND WHOSE SECOND C DIMENSION MUST BE AT LEAST N (UNCHANGED ON OUTPUT). C THE MATRIX OF DATA VALUES. C C A(I,J) IS THE VALUE FOR THE J-TH VARIABLE FOR THE I-TH CASE. C C CLAB VECTOR OF 4-CHARACTER VARIABLES DIMENSIONED AT LEAST N. C (UNCHANGED ON OUTPUT). C THE LABELS OF THE VARIABLES. C C RLAB VECTOR OF 4-CHARACTER VARIABLES DIMENSIONED AT LEAST M. C (UNCHANGED ON OUTPUT). C THE LABELS OF THE CASES. C C TITLE 10-CHARACTER VARIABLE (UNCHANGED ON OUTPUT). C TITLE OF THE DATA SET. C C XMIN INTEGER VECTOR DIMENSIONED AT LEAST N (UNCHANGED ON OUTPUT). C XMIN(I) IS THE MINIMUM VALUE TO BE PLOTTED FOR VARIABLE I. C C XMAX INTEGER VECTOR DIMENSIONED AT LEAST N (UNCHANGED ON OUTPUT). C XMAX(I) IS THE MAXIMUM VALUE TO BE PLOTTED FOR VARIABLE I. C C IF XMIN(I) .GE. XMAX(I) ON INPUT, THEIR VALUES WILL BE C DETERMINED BY THE ROUTINE. C C NV INTEGER VECTOR DIMENSIONED AT LEAST N (UNCHANGED ON OUTPUT). C VECTOR DEFINING THE ORDER OF THE VARIABLES. C C NDIAGS INTEGER SCALAR (UNCHANGED ON OUTPUT). C THE NUMBER OF DIAGRAMS. C C DMWORK INTEGER SCALAR (UNCHANGED ON OUTPUT). C THE FIRST DIMENSION OF THE MATRIX WORK. MUST BE AT LEAST C 2*NDIAGS. C C WORK REAL MATRIX WHOSE FIRST DIMENSION MUST BE DMWORK AND WHOSE C SECOND DIMENSION MUST BE AT LEAST N+1. C WORK MATRIX. C C DMIWRK INTEGER SCALAR (UNCHANGED ON OUTPUT). C THE FIRST DIMENSION OF THE MATRIX IWORK. MUST BE AT LEAST C 2*NDIAGS. C C IWORK INTEGER MATRIX WHOSE FIRST DIMENSION MUST BE DMIWRK AND WHOSE C SECOND DIMENSION MUST BE AT LEAST N. C WORK MATRIX. C C IWORK2 INTEGER VECTOR DIMENSIONED AT LEAST M. C WORK VECTOR. C C OUNIT INTEGER SCALAR (UNCHANGED ON OUTPUT). C UNIT NUMBER FOR OUTPUT. C C OUTPUT PARAMETER C ---------------- C C XLL REAL SCALAR (CHANGED ON OUTPUT). C THE LOG LIKELIHOOD OF THE FINAL SET OF BLOCKS. C C REFERENCES C ---------- C C HARTIGAN, J. A. (1975). CLUSTERING ALGORITHMS, JOHN WILEY & C SONS, INC., NEW YORK. PAGES 40, 54-55. C C HARTIGAN, J. A. (1975) PRINTER GRAPHICS FOR CLUSTERING. JOURNAL OF C STATISTICAL COMPUTATION AND SIMULATION. VOLUME 4,PAGES 187-213. C C<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><> C