EPA-670/4-75-004a
                                          April 1975
FORTRAN PROGRAMS FOR ANALYZING COLLABORATIVE TEST DATA

              PART I: GENERAL STATISTICS
                          By

                    Elmo C. Julian
 METHODS DEVELOPMENT AND QUALITY ASSURANCE LABORATORY
              Program Element No. 1HA327
        NATIONAL ENVIRONMENTAL RESEARCH CENTER
          OFFICE OF RESEARCH AND DEVELOPMENT
         U.S. ENVIRONMENTAL PROTECTION AGENCY
                CINCINNATI, OHIO 45268

-------
                             REVIEW NOTICE

     The  National  Environmental   Research   Center—Cincinnati   has
reviewed  this  report  and approved its publication.  Mention of trade
names  or  commercial  products  does  not  constitute  endorsement  or
recommendation for use.

-------
                               FOREWORD


     Man and his environment must be protected from the adverse effects
of pesticides, radiation, noise and other forms of pollution,  and  the
unwise  management  of solid waste.  Efforts to protect the environment
require a focus that recognizes the interplay between the components of
our  physical  environment—air,  water,  and   land.    The   National
Environment  Research  Centers  provide  this  multidisciplinary  focus
through programs engaged in

           studies on the effects of environmental contaminants on  man
           and the biosphere, and


           a  search  for  ways to prevent contamination and to recycle
           valuable resources.


     This work provides a method for understanding the  deeper  meaning
of  interlaboratory  collaborations.   This  work  also  represents one
effort to achieve a more complete knowledge  of  the  effectiveness  of
various analytical methods.
                                      A. W. Breidenbach, Ph.D.
                                      Director
                                      National Environmental
                                      Research Center, Cincinnati
                                   i i i

-------
                               ARSTRACT


     A FORTRAN program for IBM  1130  is  described  by  which  general
statistics  on  inter1aboratory  studies of chemical  analytical  methods
may be obtained.   Data screening followed by a statistical   t-test  for
identifying  outliers  is  included.   A histogram of data  in ascending
order is also provided.
                                  i v

-------
                                PREFACE
     These program systems for general statistics and plotting of  data
scatter  diagrams  were  programmed  in  Fortran  1130.   These program
systems  were  desicmed  to  be  executed  on  IBM  1130,  Version   2,
Modification 11, Core Size 16K.
     General  statistics  were  obtained  on  data from interlaboratory
method studies.  These statistical approaches are based on a  procedure
described  by  Youden  (1).  In his procedure, closely related pairs of
samples,  A  and  B,  for  example,  are  analyzed  by  each   of   the
participating  laboratories.  The data from all of the participants for
each of the samples is subjected to the statistical program, COLST.
     The data from each sample pair was plotted,  values  of  A  versus
values  of  B.   In  the  application for this particular plot program,
SCAT, the data from three pairs of  samples,  making  three  plots,  or
diagrams,  were drawn on each page.  This presentation of data provided
a vivid visual display for purposes of comparison.
     The  general  statistics  program  was   adapted   from   a   data
summarization  program  written  in  Fortran  IV  (2).  This program was
adapted to the 1130 Model and expanded to provide for data input in any
one of several forms of decimal expression,  data  screening,  and  the
application  of  a statistical t-test to expose outliers and to leave a
reduced vector of "retained" data.  The plotter program, SCAT, utilized
the plotter routines as supplied by IBM.

-------
          TABLE OF CONTENTS
     Foreword 	 i i i
     Abstract 	 iv
     Preface 	 v
     Acknowledgement 	 vii
     References 	 vl i
PROGRAMS

COLST
     Introduction 	  1
     Use 	  1
     Description 	  1
     Input Requirements	  2
     Output Variables 	  3
     Program Listing 	  k

SUBROUTINES

     THEAD 	 lU
     REALT 	 15
     CONV2 	 17
     COLS1 	 18
     COLT2 	 19
     COLS3 	 21
     COLS'* 	 22
     COLS5 	 23
     COLS6 	 24
     COLS7 	 25
     COLS8 	 26
     COL1, COL2, COL3, COLU. 27
     DLIST 	 29

HEADER & DATA DECK
  CONFIGURATION  	 30

TYPICAL SAMPLE  PRINTOUT  	 32

APPENDIX  I 	 37
                 v i

-------
                            ACKNOWLEDGEMENT
     The assistance of IBM programmers  and  the  assistance  of  staff
members   of   the   Computer  Services  and  Systems  Division,  NERC,
Cincinnati, is greatly  appreciated.   The  encouragement  of  John  A.
Winter, Chief, Quality Assurance & Laboratory Evaluation Branch and the
manuscript   review   and  helpful  suggestions  of  Paul  W.  Britton,
Statistician in the  above  Branch,  Methods  Development  and  Quality
Assurance Laboratory, NERC. Cincinnati, is also greatly appreciated.

                              REFERENCES

1.   Youden, W.J.,Statistical Techniques for Collaborative Tests, AOAC,
     Washington, D.C.(1967).

2.   Larson, K.E.,Ed.,The Summarization of Data, Journal of Quality
     Technology,1,68(1969).
                                  v i i

-------

-------
INTRODUCTION

     The program, COLST, is designed to provide  elementary  statistics
on  data  obtained by an official test method.  The program is designed
to treat data from interlaboratory method studies.

USE

     The data as obtained from the participants include missing values,
censored values, wild values, and reasonable values.  Furthermore, some
of the participant's results had been obtained  by  using  a  different
method  instead  of  the  official  method  of  the  test.  The data as
received, the input data, are screened to ignore missing  and  censored
data,  as  well  as  data  obtained  by  a  different method.  The data
remaining after screening were termed "raw data."
     After the standard deviation was obtained on the raw data  vector,
extreme  data  values equal to or greater than + 4s are discarded.  The
symbol s is the estimated standard deviation on the  raw  data  vector.
These  discarded  values were termed "unacceptable data." The remaining
values of the raw data vector are termed "acceptable data."
     A statistical t-test is then applied to the acceptable data vector
in order to identify and remove any "outliers." The outliers are marked
with the letter R which indicates that the  value  is  rejected  as  an
outlier.   The data vector remaining is termed "retained data." This t-
test is applied in a rather  conservative  manner  since  an  alpha  of
0.0050  is  used in a two-tailed test.  That is, only 0.25% of a normal
distribution was truncated from each extreme.
     In reviewing, the input data are screened  to  produce  raw  data,
which  are tested for wild values to produce an acceptable data vector.
The acceptable data vector is searched for outliers, which, when  noted
leave   the   retained   data  vector  from  which  general  statistics
arecalculated.  The statistics obtained are listed below:

     number of data points
     mean of acceptable data
     accuracy based on retained data
     range of retained data
     variance of retained data
     standard deviation on retained data
     confidence limits, 95%, on a single determination of retained data
     coefficient of variation on retained data
     skewness of retained data
     number of cells in the histogram

-------
DESCRIPTION

     The main program, COLST/ utilizes  sixteen  subroutines  by  which
input/   calculations/  editing  and output are accomplished.  This main
program was developed  from  a  program  listing  in  a  paper  on  the
summarization  of  data  by Thayer and Snyder of the Applied Statistics
Group in the  Engineering  Research  Center  of  the  Western  Electric
Company (2).
     Data input is accomplished by the subroutine/ REALT/ which is part
of  the  data screening step.  The acceptable data are subjected to the
statistical t-test as described above.  A histogram is developed  using
for  the number of cells/ the square root of the number of data points.
This program accepts up to and including 120 data points.   Appendix   I
shows the t-table at t(0.99).
     In  the  following  requirement  lists/ a variable  like JOBS has  a
single location and a variable like NDF(I) is a one-dimension array  or
a vector.

INPUT REQUIREMENTS

     Vari able       Purpose                                 Format

       JOBS           Number of sets of data to be            \k
                      evaluated
       NDF( I )/CVT(l )  Degrees of freedom; critical            I3,5X,F6.1»
                      value of t
       BLANK          A blank character; the chara-           2A1
       ASTER          cter/'R'
       EX             The character/'X1                       Al
       DA/TY          Date of evaluation/ xx,xx/xx            2A4
       ARK I)/ AR2(I) Text of heading/ each                   2QAk
       AR3(I)/ ARiU(l)/
       ARU2CI )/ ARU3CI )/
       ARUi*(l)/ AR5CI)
       BRKI}/ BR2CI).
       NR, NCELL/      Number of data points  in raw            3IU
       IZERO          data vector; specified number
                      of cells.  IZERO when  greater
                      than zero sets the lowest cell
                      boundary to 0.0.
       FNKI ).FN2( I )  Test of two footnotes                   20AU
       PAR1 thru      Used as an extra blank line;            8AU/11
       PARS/  IJKL     inputs  UKL which designates
                      the number of digits to the
                      right of the decimal point
       TV             Designates the known/  or  'true'         F10.0
                      value of the sample for which
                      this test is run
       BRKI)         Text printing the true value for        20AI*
                      the sample

-------
OUTPUT VARIABLES

     UNACCEPTABLE DATA LIST

     Variable     Purpose
       KOR(I)
       KDER(I)
       ANSA(I)
  Numerical identification of laboratory
  Numerical identification of analyst
  Raw data element
  Symbol: D = Different method
  Blank = Official method of test
Format

  13
  Al
  F8.2
  Al
     HEADING

          The heading is determined and printed by the subroutine,
     THEAD

     ACCEPTABLE DATA LIST

          The acceptable data vector is calculated and printed by the
     subroutine, DLIST.
     STATISTICS ON RETAINED DATA
     Variable

       N

       RANGE

       COEFZ

       TV
       VRZ

       SKEWZ

       XBAR

       SDZ1

       NCELL

       ZAVE

       SZ196

       ZMED

       ACCZ
Purpose
Format
  Number of data elements in retained       13
  data vector
  Range of data elements in retained        Fll.5
  data vector
  Coefficient of variation of retained      Fll.5
  data vector
  True, or known value of the sample        F6.2
  Variance of data elements of retained     Fll.5
  data vector
  Skewness of the distribution of data      Fll.5
  elements of retained data vector
  Mean of data elements in acceptable       Fll.5
  data vector
  Standard deviation of data elements in    Fll.5
  retained data vector
  Number of cells used in planning and      14
  calculating the histogram
  Mean of data elements on retained data    Fll.5
  vector
  Confidence limits on single determination Fll.5
  of retained data, + 95%
  Median of data elements in retained data  Fll.5
  vector
  Accuracy of the mean, on retained data    Fll.5
  vector, based upon the true value

-------
     RETAINED DATA IN ASCENDING ORDER: HISTOGRAM

     Variable     Purpose                                   Format

       X(I)         Data element                               F8.2
       W(I)         W = 'R1, data element rejected by t-test   Al
                    alpha = 0.0050; two-tailed test
                    W = ' ', data element retained
       N            Number of data elements in the acceptable  14
                    data vector

     OUTPUT REQUIREMENTS

     Variable     Purpose                                   Format

       XBAR         Mean of retained data                      F11.5
       VAR          Variance on retained data                  F11.5
       VR           Sample variance on retained data           F11.5
       SD           Standard deviation on retained data        F11.5
       SD1          Sample standard deviation on retained      F11.5
                    data
       S196         Sample standard deviation * 1.96           F11.5
       POINT(I)     Midpoint of any cell in histogram          F10.4
       KKK          Frequency of data elements in any cell     14
       XIA(I)        Literal element,'X's, corresponding        Al
                    to frequency of data points in the cell
                    but limited to 15 or less by space limi-
                    limitations


C          COLST
C               UP TO AND INCLUDING 121 DATA POINTS
C          INCLUDES T-TEST, IDENTIFICATION OF
C          OUTLIERS BY THE LETTER 'R1.  ACCURACY IS BASED UPON THE TRUE
C          VALUE VERSUS RETAINED DATA.
C          SUMMARY OF COLLABORATIVE TEST DATA/STATISTICS/HISTOGRAM
C          DATA INPUT, ONE VALUE PER DATA CARD
C          INPUT OF DATA THRU SUBROUTINE 'REALT1.
       INTEGER ANSA(120),ANA(120)
       DIMENSION X(120),NFREQ(120),GROUP(120),POINT(120),XIA(120),
      1KOR(120),KDER(120),XH(120),TE(120),TF(120),V(120),W(120)
       DIMENSION AR1(20),AR2(20),AR3(20),AR5(20),BR1(20),BR2(20)
       DIMENSION AR41(20),AR42(20),AR43(20),AR44(20)
       DIMENSION FN1(20),FN2(20)
       DIMENSION Z(120),G(120)
       DIMENSION NDF(120),CVT(120)
       DIMENDION KUR(120),KDUR(120),ANSB(120),ANS(120)
       IPUT=2
       IOUT=5
       READ(IPUT,7992) JOBS
       READ(IPUT,7991)(NDF(I),CVT(I),1=1,120)
C          INPUT SYMBOLS...BLANK,LETTER'R1
       READ(IPUT,901) BLANK,ASTER

-------
C          INPUT LETTER1X1
        READ(IPUT,15) EX
C          INPUT DATE OF  EVALUATION XX/XX/XX
        READ(IPUT,73) DA,TY
C          INPUT TEN LITERALS  CARDS
        READ(IPUT,501) AR1
        READ(IPUT,501) AR2
        READ(IPUT,501) AR3
        READ(IPUT,501) AR41
        READ(IPUT,501) AR42
        READ(IPUT,501) AR43
        READ(IPUT,501) AR44
        READ(IPUT,501) AR5
        READ(IPUT,501) BR1
        READ(IPUT,501) BR2
C          SET IZERO = 1  FOR LOWEST CELL BOUNDARY TO BE ZERO.
C               OTHERWISE ENTER BLANK FIELD
C               NUMBER OF CELLS = SQUARE ROOT OF NR
        READ(IPUT,18) NR,NCELL,IZERO
        IF(NR) 402,500,402
C          READ IN TWO LINES OF FOOTNOTES
402     READ(IPUT,501) FN1
        READ(IPUT,501) FN2
C          DATA DESCRIPTION
        DO 7993 LOOP=1,JOBS
        WRITE(IOUT,30)
C          DIGIT CONTROL  OF  MANTISSA FOR DATA PRINTOUT, IJKL
        READ(IPUT,8) PAR1,PAR2,PAR3,PAR4,PARS,PAR6,PAR7,PARS,IJKL
        READ(IPUT,17) TV
        READ(IPUT,501) BR1
C          TEST FOR TOO MUCH DATA (MORE THAN 120)
        IF(NR-120) 21,21,22
22      WRITE(IOUT,24)
        WRITE(IOUT,30)
        GO TO 500
21      AN=NR
C          FOUR SIGMA SCREENING TEST TO ELIMINATE UNACCEPTABLE DATA
        MAC=1
        CALL THEAD(AR1,AR2,AR3,AR41,AR42,AR43,AR44,AR5,BR1,BR2,DA,TY,
       1 IOUT,MAC
        WRITE(IOUT,71)
        CALL REALT(KOR,KDER,G,ANSA,ANSB,NR)
        IF(TV) 503,500,503
C          GET STATISTICS ON RAW DATA (G(I))
503     CALL COLS1(G,NR,XBAR,SS,S)
C          CALCULATE 4*SIGMA
        FS = S*4.0
C          PRINT HEADING
        WRITE(IOUT,30)
        MAC=2
        CALL THEAD(AR1,AR2,AR3,AR41,AR42,AR43,AR44,AR5,BR1,BR2,DA,TY,
       1 IOUT,MAC
        WRITE(IOUT,71)

-------
        WRITE(IOUT,7011)
C          ELIMINATE UNACCEPTABLE  DATA,  PRINT UNACCEPTABLE DATA LIST
C          REVISE THE VALUE OF N
        CALL COLT2(G,FS,NR,KDER,X,ANSA,ANSB,NA,IPUT,IOUT,KUR,KDUR,
       1 ANA,ANB,XBAR)
C          END OF FOUR  SIGMA  SCREENING TEST
C          SUBSTITUTE ACCEPTABLE DATA COUNT,  NA,  FOR N
        N=NA
C          SAVE ACCEPTABLE DATA VECTOR IN THE ORDER READ
        DO 510 1=1,N
        XH(I)=X(I)
510     CONTINUE
C          GET MEAN,SS,S,VR,SD1, ON ACCEPTABLE DATA
        CALL COLS3(X,N,XBAR,VAR,VR,SD,SD1,S196)
C          GET SKEWNESS ON DATA
        CALL COLS4(X,N,XBAR,SD,SKEW)
C          SORT DATA
        L=N-1
        DO 120 J=1,L
        LL=L-J+1
        DO 110 1=1,LL
        LG=I+1
        IF(X(I)-X(LG))  110,111,111
111     A=X(I)
        X(I)=X(LG)
        X(LG)=A
        A=ANSA(I)
        ANSA(I)=ANSA(LG)
        ANSA(LG)=A
        A=ANSB(I)
        ANSB(I)=ANSB(LG)
        ANSB(LG)=A
110     CONTINUE
120     CONTINUE
C          T-TEST ON DATA, BOTH SORTED AND UNSORTED
C          OBTAIN T VALUE
        TL=0.
        KLM=0
        DO 610 1=1,N
        TE(I)=ABS( (TV-XH(I) )/SDl)
610     TF(I)=ABS((TV-X(I))/SD1)
C          READ CRITICAL VALUE OF  T (CVT) FROM FILE
        KN=N-1
C          TEST SIGNIFICANCE  OF THE T VALUE
        DO 621 1=1,N
        IF(TE(I)-CVT(KN)) 619,619,620
619     V(I)=BLANK
        GO TO 621
620     V(I)=ASTER
621     CONTINUE
C          OBTAIN RETAINED DATA VECTOR AND CALCULATE ITS STATISTICS
        DO 931 1=1,N
        IF(TF(I)-CVT(KN)) 929,929,930

-------
929     W(I)=BLANK
        TL=TL+X(I)
        KLM=KLM+1
        Z(KLM)=X(I)
        GO TO 931
930     W(I)=ASTER
931     CONTINUE
        AN=KLM
        NCELL=SQRT(AN)
        IF(NCELL-l) 450,450,451
450     NCELL=2
C          CALCULATE RETAINED MEAN,VARIANCE  AND STANDARD DEVIATION
451     CALL COLS3(Z,KLM,ZAVE,VARZ,VRZ,SDZ,SDZ1,SZ196)
C          GET SKEWNESS
        CALL COLS4(Z,KLM,ZAVE,SDZ,SKEWZ)
C          GET MEDIAN
        CALL COLS5(Z,KLM,ZMED)
C          GET COEFFICIENT OF VARIATION
        CALL COLS6(SDZ1,ZAVE,COEFZ)
C          GET RANGE
        CALL COLS7(Z,RANGE,KLM)
C          GET ACCURACY
        CALL COLS8(TV,ZAVE,ACCZ)
        WRITE(IOUT,30)
        MAC=3
        CALL THEAD(AR1,AR2,AR3,AR41,AR42,AR43,AR44,AR5,BR1,BR2,DA,TY,
       1 IOUT,MAC)
        WRITE(IOUT,71)
        WRITE(IOUT,993)
C          PRINT DATA LIST MARKING REJECTED  DATA 'R1
        IF(N-35) 9000,9001,9002
9000    NDIF=35-N
        DO 9901 1=1,N
9901    CALL DLIST(IJKL,KUR,KDUR,XH,V,ANA,ANB,I,IOUT)
        DO 8901 MM=1,NDIF
8901    WRITE(IOUT,8800) BLANK
        WRITE(IOUT,502)  FNl
        WRITE(IOUT,502)  FN2
        GO TO 850
C
9001    DO 9902 1=1,N
9902    CALL DLIST(IJKL,KUR,KDUR,XH,V,ANA,ANB,I,IOUT)
        WRITE(IOUT,8800) BLANK
        WRITE(IOUT,502)  FNl
        WRITE(IOUT,502)  FN2
        GO TO 850
C
9002    IF(N-70) 9003,9004,9005
9003    DO 9903 1=1,35
9903    CALL DLIST(IJKL,KUR,KDUR,XH,V,ANA,ANB,I,IOUT)
        WRITE(IOUT,8800) BLANK
        WRITE(IOUT,502)  FNl
        WRITE(IOUT,502)  FN2

-------
        NDIF=70-N
        WRITE(TOUT,30)
        CALL THEAD(AR1,AR2,AR3,AR41,AR42,AR43,AR44,AR5,BR1,BR2,DA,TY,
       1 IOUT,MAC)
        WRITE(IOUT,71)
        WRITE(IOUT,993)
        DO 9904 1=36,N
9904    CALL DLIST (IJKL,KUR,KDUR,XH,V,ANA,ANB, I, IOUT)
        DO 8903 MM=1,NDIF
8903    WRITE(IOUT,8800) BLANK
        WRITE(IOUT,502)  FNl
        WRITE(IOUT,502)  FN2
        GO TO 850
C
9004    DO 9905 1=1,35
9905    CALL DLIST(IJKL,KUR,KDUR,XH,V,ANA,ANB,I,IOUT)
        WRITE(IOUT,8800) BLANK
        WRITE(IOUT,502)  FNl
        WRITE(IOUT,502)  FN2
        WRITE(IOUT,30)
        CALL THEAD(AR1,AR2,AR3,AR41,AR42,AR43,AR44,AR5,BR1,BR2,DA,TY,
       1 IOUT,MAC)
        WRITE(IOUT,71)
        WRITE(IOUT,993)
        DO 9906 1=36,70
9906    CALL DLIST(IJKL,KUR,KDUR,XH,V,ANA,ANB,I,IOUT)
        WRITE(IOUT,8800) BLANK
        WRITE(IOUT,502)  FNl
        WRITE(IOUT,502)  FN2
        WRITE(IOUT,30)
C
9005    IF(N-105) 9006,9007,9008
9006    DO 9907 1=1,35
9907    CALL DLIST(IJKL,KUR,KDUR,XH,V,ANA,ANB,I,IOUT)
        WRITE(IOUT,8800) BLANK
        WRITE(IOUT,502)  FNl
        WRITE(IOUT,502)  FN2
        WRITE(IOUT,30)
        CALL THEAD(AR1,AR2,AR3,AR41,AR42,AR43,AR44,AR5,BR1,BR2,DA,TY,
       1 IOUT,MAC)
        WRITE(IOUT,71)
        WRITE(IOUT,993)
        DO 9908 1=36,70
9908    CALL DLIST(IJKL,KUR,KDUR,XH,V,ANA,ANB,I,IOUT)
        WRITE(IOUT,8800) BLANK
        WRITE(IOUT,502)  FNl
        WRITE(IOUT,502)  FN2
        NDIF=105-N
        WRITE(IOUT,30)
        CALL THEAD(AR1,AR2,AR3,AR41,AR42,AR43,AR44,AR5,BR1,BR2,DA,TY,
       1 IOUT,MAC)
        WRITE(IOUT,71)
        WRITE(IOUT,993)

                                  8

-------
        DO 9909 1=71,N
9909    CALL DLIST(IJKL,KUR,KDUR,XH,V,ANA,ANB,I,TOUT)
        DO 8904 MM=1,NDIF
8904    WRITE(IOUT,71)
        WRITE(IOUT,502) FNl
        WRITE(IOUT,502) FN2
        GO TO 850
9007    DO 9910 1=1,35
9910    CALL DLIST(IJKL,KUR,KDUR,XH,V,ANA,ANB,I,IOUT)
        WRITE(IOUT,71)
        WRITE(IOUT,502) FNl
        WRITE(IOUT,502) FN2
        WRITE(IOUT,30)
        CALL THEAD(AR1,AR2,AR3,AR41,AR42,AR43,AR44,AR5,BR1,BR2/DA,TY,
       1 IOUT,MAC)
        WRITE(IOUT,71)
        WRITE(IOUT,993)
        DO 9911 1=36,70
9911    CALL DLIST(IJKL,KUR,KDUR,XH,V,ANA,ANB,I,IOUT)
        WRITE(IOUT,71)
        WRITE(IOUT,502) FNl
        WRITE(IOUT,502) FN2
        WRITE(IOUT,30)
        CALL THEAD(AR1,AR2,AR3,AR41,AR42,AR43,AR44,AR5,BR1,BR2,DA,TY,
       1 IOUT,MAC)
        WRITE(IOUT,71)
        WRITE(IOUT,993)
        DO 9912 1=71,105
9912    CALL DLIST(IJKL,KUR,KDUR,XH,V,ANA,ANB,I,IOUT)
        WRITE(IOUT,71)
        WRITE(IOUT,502) FNl
        WRITE(IOUT,502) FN2
        GO TO 850
9008    DO 9913 1=1,35
9913    CALL DLIST(IJKL,KUR,KDUR,XH,V,ANA,ANB,I,IOUT)
        WRITE(IOUT,71)
        WRITE(IOUT,502) FNl
        WRITE(IOUT,502) FN2
        WRITE(IOUT,30)
        CALL THEAD(ARl,AR2,AR3,AR41,AR4 2,AR4 3,AR4 4,AR5,BR1,BR2,DA,TY,
       1 IOUT,MAC)
        WRITE(IOUT,71)
        WRITE(IOUT,993)
        DO 9914 1=36,70
9914    CALL DLIST(IJKL,KUR,KDUR,XH,V,ANA,ANB,I,IOUT)
        WRITE(IOUT,71)
        WRITE(IOUT,502) FNl
        WRITE(IOUT,502) FN2
        WRITE(IOUT,30)
        CALL THEAD(ARl,AR2,AR3,AR41,AR4 2,AR4 3,AR4 4,AR5,BRl,BR2,DA,TY,
       1 IOUT,MAC)
        WRITE(IOUT,71)
        WRITE(IOUT,993)

-------
        DO 9915 1=71,105
9915    CALL DLIST(IJKL,KUR,KDUR,XH,V,ANA,ANB,I,IOUT)
        WRITE(IOUT,71)
        WRITE(IOUT,502) FNl
        WRITE(IOUT,502) FN2
        WRITE(IOUT,30)
        CALL THEAD (ARl, AR2, AR3 , AR41, AR4 2, AR4 3 , AR4 4 , AR5 , BRl, BR2, DA, TY,
       1 IOUT,MAC)
        WRITE(IOUT,71)
        WRITE(IOUT,993)
        DO 9916 1=106,N
9916    CALL DLIST(IJKL,KUR,KDUR,XH,V,ANA,ANB,I,IOUT)
        NDIF=140-N
        DO 8905 MM=1,NDIF
8905    WRITE(IOUT,71)
        WRITE(IOUT,502) FNl
        WRITE(IOUT,502) FN2
C
850     WRITE(IOUT,71)
C          GETREMAINDER OF STATISTICS ON ACCEPTABLE DATA
C               RANGE, MEDIAN, COEFFICIENT OF VARIATION
        CALL COLS5(X,N,XMED)
        CALL COLS6(SD1,XBAR,COEFV)
        CALL COLS7(X,RANGZ,N)
C          CALCULATE CELL BOUNDARIES, FREQUENCIES AND MIDPOINTS
        IF(NCELL) 113,112,113
112     NCELL = 15
113     DO 130 1=1,NCELL
130     NFREQ(I) = 0
        IF(IZERO-l) 141,140,140
141     WIDTH = RANGE/(NCELL-1)
        WIDTH = WIDTH + .00001
        RIDPT = WIDTH/2
        GROUP(1) = Z(l) + RIDPT
        POINT (1) = Z(l)
        GO TO 150
140     WIDTH =  (Z(KLM)-0.)/(NCELL-0.5)
        WIDTH = WIDTH + .00001
        GROUP(1) = 0.0 + WIDTH
        POINT(1) = GROUP(l)/2
150     DO 160 1=2,NCELL
160     GROUP(I) = GROUP(1-1) +  WIDTH
        DO 190 1=1,KLM
        DO 170 M=l,NCELL
        IF(Z(I) - GROUP(M))  180,180,170
170     CONTINUE
180     NFREQ(M) = NFREQ (M)  -I- 1
190     CONTINUE
        DO 200 1=2,NCELL
200     POINT(I) = POINT(1-1) +  WIDTH
C          PRINT HEADING
        WRITE(IOUT,30)
        MAC=4

                                  10

-------
        CALL THEAD(AR1,AR2,AR3,AR41,AR42,AR43,AR44,AR5,BR1,BR2,DA,TY,
       1 IOUT,MAC)
        WRITE(IOUT,71)
C          PRINT STATISTICS
        WRITE(IOUT,40) N,RANGE,COEFZ
        IF(IJKL-l) 910,911,919
919     IF(IJKL-S) 912,913,914
910     WRITE(IOUT,410) TV
        GO TO 950
911     WRITE(IOUT,411) TV
        GO TO 950
912     WRITE(IOUT,412) TV
        GO TO 950
913     WRITE(IOUT,413) TV
        GO TO 950
914     WRITE(IOUT,414) TV
        GO TO 950
950     WRITE(IOUT,50) VRZ,SKEWZ
        WRITE(IOUT,60) XBAR,SDZl,NCELL
        WRITE(IOUT,62) ZAVE,SZ196
        WRITE(IOUT,63) ZMED
        WRITE(IOUT,65) ACCZ
        WRITE(IOUT,71)
        WRITE(IOUT,66)
        WRITE(IOUT,71)
        MAX = NFREQ(l)
        DO 250 I = 2,NCELL
        IF(MAX - NFREQ(I)) 245,250,250
245     MAX = NFREQ(I)
250     CONTINUE
        LL = 0
        LM = 35
        LN = 70
        LP = 105
        DO 320 I=1,NCELL
        LL = LL+1
        LM = LM+1
        LN = LN+1
        LP - LP+1
        K = NFREQ(I)
        KKK = NFREQ(I)
        IF(NFREQ(I)) 322,321,322
322     IF(NFREQ(I) - 15) 323,323,324
324     NFREQ(I)  = 15
        K = 15
323     DO 329 KIX=1,K
        XIA(KIX)=EX
329     CONTINUE
C
        CALL COL1(IJKL,X,W,LL,IOUT)
        IF(N-LM)  326,1325,1325
1325    CALL COL2(IJKL,X,W,LM,IOUT)
        IF(N-LN)  326,325,325

                                 11

-------
325     CALL COLS(IJKL,X,W,LN,IOUT)
        IF(N-LP) 326,927,927
927     CALL COL4(IJKL,X,W,LP,IOUT)
326     WRITE(IOUT,96) POINT(I),KKK,(XIA(KIX),KIX=1,K)
        GO TO 320
321     CALL COL1(IJKL,X,W,LL,IOUT)
        IF(N-LM) 328,1327,1327
1327    CALL COL2(IJKL,X,W,LM,IOUT)
        IF(N-LN) 328,327,327
327     CALL COL3(IJKL,X,W,LN,IOUT)
        IF(N-LP) 328,928,928
928     CALL COL4(IJKL,X,W,LP,IOUT)
328     WRITE(IOUT,96) POINT(I),KKK
320     CONTINUE
        J=LL+1
        DO 1120 I=J,35
        K=I+35
        L=I+70
        M=H-105
        IF(N-I) 1120,1121,1121
1121    CALL COL1(IJKL,X,W,I,IOUT)
        IF(N-K) 1120,1123,1123
1123    CALL COL2(IJKL,X,W,K,IOUT)
        IF(N-L) 1120,1126,1126
1126    CALL COL3(IJKL,X,W,L,IOUT)
        IF(N-M) 1120,1129,1129
1129    CALL COL4(IJKL,X,W,M,IOUT)
1120    CONTINUE
        WRITE(IOUT,30)
7993    CONTINUE
C          FORMAT STATEMENTS
8       FORMAT(8A4,II)
15      FORMAT(Al)
17      FORMAT(F10.0)
18      FORMAT(314)
24      FORMAT(1H ,•INCORRECT SAMPLE  SIZE	TERMINATE JOB'////////)
30      FORMAT(1H1)
40      FORMATUH , 'N,ALL DATA' ,I3,8X, 'RANGE1 ,7X,F11.5,5X,
       1'COEF. VAR. ' -1Y.F-M ,*\
        .'COEF. VAR. f ,1X,F11.5)
        FORMAT (1H-I-,21X, • VARIANCE1 ,4X,F11.5, 5X, 'SKEWNESS' ,3X,F11.5)
        FORMAT(1H ,'MEAN,ALL1,F11.5,2X,'STD. DEV.',3X,F11.5,5X,
       1'NO. OF CELLS',14)
62      FORMAT(1H ,'MEAN,RET.',F10.5,2X,'CONF. LIM.',2X,F11.5,IX,
       I1(95 PCT)')
63      FORMAT(1H ,'MEDIAN1,2X,F11.5)
65      FORMAT(1H ,'ACCURACY',F11.5,2X,
       I1PCT RELATIVE ERROR, RETAINED DATA1)
66      FORMAT(1H ,'ACCEPTABLE DATA IN ASCENDING  ORDER',3X,
       1'MIDPOINT',2X,IFREQ.',4X,'HISTOGRAM'/1H ,42X,
       2'RETAINED DATA ONLY')
71      FORMAT(1H )
73      FORMAT(2A4)
96      FORMAT(1H+,35X,F10.4,2X,I4,4X,15A1)
                                 12

-------
C          NOTE: ALTER 'F1 SPECS ACCORDING TO EDITORIAL  REQUIREMENTS
410     FORMAT(1H ,'TRUE VAL.',F8.0)
411     FORMAT(1H ,'TRUE VAL.',F8.1)
412     FORMAT(1H ,'TRUE VAL.',F8.2)
413     FORMAT(1H ,'TRUE VAL.',F8.3)
414     FORMAT(1H ,'TRUE VAL.',F8.4)
501     FORMAT(20A4)
502     FORMAT(1H r20A4)
901     FORMAT(2A1)
993     FORMATUH ,24X,'NUMBER OF     SAMPLE'/lH  ,23Xf
       1'LAB/ANALYST   RECOVERY1/1H ,38X,
       2'BY LAB.1/)
7011    FORMAT(1H ,'UNACCEPTABLE DATA LIST'///)
7991    FORMAT(13,5X,F6.0)
7992    FORMAT(14)
8800    FORMAT(1H ,A1)
500     CALL EXIT
        END
                                 13

-------
                           SUBROUTINE THEAD


This subroutine provides for the print of the heading   upon  demand  by
the main program.  The input consists of a library  of  literal cards and
a  date  card  to  be used in forming the specific  heading.  The actual
format of the heading  is  controlled  by  an   integer  variable  which
activates a computed go to statement.

INPUT REQUIREMENTS

Variable     Purpose

  AR1(I)       Literal card
  AR2(I)       Literal card
  DA,TY        Date card
  BR2(I)       Literal card
  AR3(I)       Literal card
  MAC          Integer Variable assigned to select  literal  line
               specific for the current text.
  AR4KI)      Literal card
  AR42(I)      Literal card
  AR43(I)      Literal card
  AR44(I)      Literal card
  AR5(I)       Literal card
  BR2(I)       Literal card
  BR1(I)       Literal card


       SUBROUTINE THEAD(ARl,AR2,AR3,AR41,AR42,AR43,AR44,AR5,BR1,BR2,
      1 DA,TY,IOUT,MAC)
       DIMENSION AR1(20),AR2(20),AR3(20),AR5(20),BR1(20),BR2(20)
       DIMENSION AR41(20),AR42(20),AR43(20),AR44(20)
       WRITE(IOUT,502) ARl
       WRITE(IOUT,502) AR2
       WRITE(IOUT,72) DA,TY
       WRITE(IOUT,502) BR2
       WRITE(IOUT,502) AR3
       GOTO (10,20,30,40),MAC
10     WRITE(IOUT,502) AR41
       GO TO 50
20     WRITE(IOUT,502) AR42
       GO TO 50
30     WRITE(IOUT,502) AR43
       GO TO 50
40     WRITE(IOUT,502) AR44
50     WRITE(IOUT,502) AR5
       WRITE(IOUT,502) BR2
       WRITE(IOUT,502) BR2
502    FORMAT(1H ,20A4)
72     FORMAT(1H ,8OX,'EVALUATION  DATE = ',2A4)
       RETURN
       END

                                  14

-------
                           SUBROUTINE REALT
The purpose of this subroutine is to screen the raw  data  as  punched.
The  raw data may consist of censored data or blanks instead of  data  in
valid form for this analysis.  The number of data cards may be unknown.
A card with numbers other than zero punched in card column  80   follows
the data deck.  Testing of fields such as censor sign or the absence  of
a  decimal point is accomplished through character comparison.   A valid
raw data vector is created by this subroutine.  This raw data vector  is
printed followed by count of input data and a  count  of  output data.
Subroutine  CONV2 is used to convert the validated raw data into a  real
data vector, T.

INPUT REQUIREMENTS

Variable     Purpose                                        Format

  ALAB(I)      Numerical identification of laboratory         13
  NNYL(I)      Numerical identification of analyst            Al
  L(I)         Data censor (Greater than or less than)        Al
  J(I)         Integer portion of data element                14
  M(I)         Decimal point of data element                  Al
  K(I)         Decimal portion of data element                12
  AN(I)        Symbol: D = Different method                   Al
                   Blank = Official method of test
  ST(I)        Unused literal field                           A2
  KOUNT(I)     Field used for 'stop' card                     12

OUTPUT REQUIREMENTS

Variable     Purpose                                        Format

  AL(I)        Numerical identification of laboratory         13
  NN(I)        Numerical identification of analyst            Al
  T(I)         Element of the raw data vector                 F10.2
  ANA(I)       Method type, all blank                         A2


       SUBROUTINE REALT(AL,NN,T,ANA,ANB,NR)
       INTEGER AL(120),ALAB(120),AN(120),ANA(120)
       DIMENSION NNYLU20) ,L(120) ,J(120) ,M(120) ,K(120) ,ST(120) ,
      1 NN(120),JJ(120),KK(120),T(120),KOUNT(120),ANB(120)
C          FOR TRACE METAL DATA ANALYSIS...UNKNOWN CARD COUNT.
C          PLACE 9'S CARD AFTER EACH INDIVIDUAL DATA DECK.
       IPUT=2
       IOUT=5
C          INPUT DATA
       1=0
       NR=0
19     1=1+1
       NG=I-1

                                   15

-------
       READ(IPUT,1) ALAB(I) ,NNYL(I) ,L(I),J(I),M(I),K(I) ,AN(I) ,ST(I) ,
      1 KOUNT(I)
       IF(KOUNT(I)) 10,10,99
10     IF(L(I)-16448) 19,11,19
11     IF(M(I)-16448) 21,19,21
21     IF(AN(I)-16448) 19,20,19
20     NR=NR+1
       AL(NR) = ALAB(I)
       NN(NR) » NNYL(I)
       JJ(NR) = J(I)
       KK(NR) - K(I)
       ANA(NR) = AN (I)
       ANB(NR) - ST(I)
       GO TO 19
C
99     WRITE(IOUT,71)
       DO 40 1=1,NR
       CALL CONV2(JJ,KK,T,NR)
       WRITE(IOUT,31) AL(I),NN(I),T(I),ANA(I)
40     CONTINUE
       WRITE(IOUT,32) NG,NR
C          FORMAT STATEMENTS
1      FORMAT(I3,A1,1X,I4,A1,I2,A1,62X,A2,I2)
31     FORMAT(1H ,I3,A1,5X,F10.2,A1)
32     FORMAT(1HO,5X,'INPUT DATA COUNT - ',14,' WITH NULL VALUES'/1H  ,
      1 5X,'OUTPUT DATA COUNT =  ',14,'  CONSOLIDATED REAL DATA1///)
71     FORMAT(1H )
       RETURN
       END
                                  16

-------
                           SUBROUTINE CONV2


The purpose of this subroutine is to convert a validated  input   number,
entered  as  an  integer  variable followed by a literal  character  (the
decimal point) and followed by a second integer number.   The  data  were
entered  by  this  format,  I4,A1,I2,  for the purpose of screening  the
data.  Censored data and missing data were removed from the gross input
data vector.  This subroutine takes the two integers and  converts these
to the decimal number.

INPUT REQUIREMENTS

Variable     Purpose

  J(I)         Integer to the left of the decimal point
  K(I)         Integer to the right of the decimal point

OUTPUT REQUIREMENTS

Variable     Purpose

  T(I)         Output valid data vector
  N            Number of data elements to be converted

       SUBROUTINE CONV2(J,K,T,N)
       DIMENSION J(120),K(120),T(120)
       DO 10 1=1,N
       A - J(I)
       B=  (FLOAT(K(I)))/100.
       T(I) = A + B
10     CONTINUE
       RETURN
       END
                                  17

-------
                           SUBROUTINE COLS1
This subroutine calculates the sample  statistics  on   a   set   of  data
points.  Up to and including 120 data points may be accommodated.

The following computations are made:
     Sample Mean = Sum/N where Sample Mean = mean of the data  points
     Sum = sum of the data points
     N = number of data points
     Total = sum of  (A(I)-Sample Mean)**2
and
     Sample Variance = Total/(N-l)
     Sample Standard Deviation = Square root of the Sample Variance

INPUT REQUIREMENTS

Variable     Purpose

  A(I)         Data element
  N            Number of data elements

OUTPUT REQUIREMENTS

Variable     Purpose

  XBAR         Sample mean
  SS           Sample variance
  S            Sample standard deviation


       SUBROUTINE COLS1(A,N,XBAR,SS,S)
       DIMENSION A(120)
       TOTAL =0.0
       DO 10 1=1,N
       TOTAL = TOTAL + A(I)
10     CONTINUE
       AN = N
       BN = N-l
       XBAR = TOTAL/AN
       T = 0.0
       DO 20 1=1,N
       T = T + (A(I)-XBAR)**2
20     CONTINUE
       SS = T/BN
       S = SQRT(SS)
       RETURN
       END
                                   18

-------
                           SUBROUTINE COLT2
This subroutine performs the  four  sigma   screening   test.    Data   are
arbitrarily  considered to be unacceptable  if their difference from the
mean is greater than four standard deviations from the mean.   The   test
is  performed  on  each  data  element.   An  unacceptable data list is
printed, the acceptable data vector is stored and returned to  the   main
program.

INPUT REQUIREMENTS

Variable     Purpose

  G(I)         Raw data element
  XBAR         Mean on raw data
  FSD          Value of four standard deviations of raw data vector
  M            Number of raw data elements
  KOR(I)       Numerical identification of  laboratory
  KDER(I)      Numerical identification of  analyst
  ANSA(I)      Symbol: D = Different method
                   Blank = Official method  of test
  ANSB(I)      Spare field, unused at this  time

OUTPUT REQUIREMENTS

Variable     Purpose

  X(I)         Data element, acceptable data vector
  NA           Number of acceptable data elements
  IPUT         Input device number
  IOUT         Output device number
  KUR(I)       Numerical identification of  laboratory
  KDUR(I)      Numerical identification of  analyst
  ANA(I)       Symbol: D = Different method
                   Blank = Official method  of test
  ANB(I)       Spare field, unused at this  time


       SUBROUTINE COLT2(G,FSD,M,KOR,KDER,X,ANSA,ANSB,NA,IPUT,IOUT,KUR,
      1 KDUR,ANA,ANB,XBAR)
       INTEGER ANSA(120),ANA(120)
       DIMENSION G(120),KOR(120),KDER(120),X(120),KUR(120),KDUR(120),
      1 ANSB(120),ANB(120)
       N=M
       NA=0
       DO 10 1=1,N
       AMAA = ABS(G(I)-XBAR)
       IF(AMAA-FSD)  20,20,30
30     WRITE(IOUT,2)  KOR(I),KDER(I),G(I),ANSA(I)
       GO TO 10
20     NA=NA+1

                                   19

-------
       X(NA) =
       KUR(NA) =  KOR(I)
       KDUR(NA) = KDER(I)
       ANA(NA) =  ANSA(I)
       ANB(NA) =  ANSB(I)
10     CONTINUE
2      FORMATCLH  , 13,3X, Al,F10.2 ,2X,A1)
       RETURN
       END
                                20

-------
                           SUBROUTINE COLS3


This subroutine calculates sample statistics and population   statistics
on  a set of data points.  The population standard deviation  is  used  in
the calculation of skewness.  The following computations  are  made:

     Mean = Sum/N where Mean = mean of the data points;
            Sum = sum of data points; N = number of data  points
     Total = sum of  (A(I)-Mean)**2
and
     Sample variance = Total/(N-l)
     Sample standardard deviation = Square root of the sample variance
     Population variance = Total/N
     Population standard deviation = Square root of the population
                                     variance
INPUT REQUIREMENTS

Variable     Purpose

  A(I)          Data element
  N            Number of data elements

OUTPUT REQUIREMENTS

Variable     Purpose

  XBAR         Mean of data elements
  VAR          Population variance
  VR           Sample variance
  SD           Population standard deviation
  SD1          Sample standard deviation
  S196         Sample standard deviation X 1.96

       SUBROUTINE COLS3(A,N,XBAR,VAR,VR,SD,SDlrSl96)
       DIMENSION A(120)
       TOTAL =0.0
       DO 10 1=1,N
       TOTAL = TOTAL + A(I)
10     CONTINUE
       AN = N
       BN = N-l
       XBAR = TOTAL/AN
       T - 0.0
       DO 20 1=1,N
       T = T + (A(I)-XBAR)**2
20     CONTINUE
       VAR = T/AN
       VR  = T/BN
       SD  - SQRT(VAR)
       SD1 = SQRT(VR)
       S196 = SD1*1.96
       RETURN
       END

                                   21

-------
                           SUBROUTINE COLS4
This subroutine calculates the  coefficient  of  skewness  which   is   a
measure  of  lack  of  symmetry  of  the data.  The expression  for this
coefficient is:
     Skewness = Sum of ((A(I)-XBAR)**3/N)*SD**3
     A(I) = data element
     XBAR = Smple Mean of data elements
     N = number of data elements
     SD = population standard deviation

INPUT REQUIREMENTS

Variable     Purpose

  X(I)         Data element
  N            Number of data elements
  XBAR         Sample Mean of data elements
  SD           Population standard deviation

OUTPUT REQUIREMENTS

Variable     Purpose

  SKEW         Coefficient of skewness

        SUBROUTINE COLS4(X,N,XBAR,SD,SKEW)
        DIMENSION X(120)
        SKW1 =0.0
        DO 10 1=1,N
        SKW1 = SKW1 +  (X(I) - XBAR)**3
10      CONTINUE
        SKW2 = N * SD**3
        SKEW = SKW1/SKW2
        RETURN
        END
                                   22

-------
                           SUBROUTINE COLS5
This subroutine calculates the median in a  set of  data.   The  median  is
calculated by the following expression:
     X = data element
     Median =  (X(J) + X(K))/2
     J « (N+D/2
     K = (N+2)/2
     N = Number of data points

INPUT REQUIREMENTS

Variable     Purpose

  X(I)          Data element
  N            Number of data elements

OUTPUT REQUIREMENTS

Variable     Purpose

  XMED         Median of data elements

       SUBROUTINE COLS5(X,N,MED)
       DIMENSION X(120)
       J = (N+D/2
       K = (N+2)/2
       XMED =  (X(J) + X(K))/2.0
       RETURN
       END
                                  23

-------
                           SUBROUTINE COLS6
This subroutine calculates the coefficient of variation  of  a  set  of
data elements.  The expression for this calculation follows:
     Coefficient of variation = Sample standard deviation/Mean

INPUT REQUIREMENTS

Variable     Purpose

  SD           Sample standard deviation
  XBAR         Sample mean

OUTPUT REQUIREMENTS

Variable     Purpose

  COEFV        Coefficient of variation

       SUBROUTINE COLS6(SD,XBAR,COEFV)
       COEFV = SD/XBAR
       RETURN
       END
                                  24

-------
                           SUBROUTINE COLS7
This subroutine calculates the range of a set of  data  elements.   The
range  is  the  difference between the largest element and the smallest
element.  The set of data elements  have  previously  been  sorted  and
placed in ascending order.

INPUT REQUIREMENTS

Variable     Purpose

  X(I)         Data element
  N            Number of data elements

OUTPUT REQUIREMENTS

Variable     Purpose

  RANGE        Range


       SUBROUTINE COLS7(X,RANGE,N)
       DIMENSION X(120)
       RANGE = X(N) - X(l)
       RETURN
       END
                                   25

-------
                           SUBROUTINE COLS8
This subroutine calculates the accuracy of the mean of a  set  of  data
elements.   For the purpose of this method study, the accuracy is based
upon the known value or "true value" of  the  material  sought  in  the
sample.  The accuracy is expressed as percent of true value.

INPUT REQUIREMENTS

Variable     Purpose

  TV           True value
  XBAR         Sample Mean of data set

OUTPUT REQUIREMENTS

Variable     Purpose

  ACC          Accuracy


       SUBROUTINE COLS8(TV,XBAR,ACC)
C
       ACC = (XBAR - TV)/TV
       ACC = ACC*100.0
C
       RETURN
       END
                                   26

-------
                  SUBROUTINES COLl,  COL2,  COL3,  COL4
These closely related subroutines provide   for   the   printing  of  data
elements  in  columns  1,   2, 3 or  4 by  subroutines  COLl,  COL2, COL3 or
COL4, respectively.   The   proper   format   for   printing  the  data  is
selected according to the value of  the input  variable,  IJKL.

INPUT AND OUTPUT REQUIREMENTS

Variable     Purpose

  X(I)         Data element
  W(I)         Symbol of t-test result:  'R1 = Rejected
                                         1  ' - Retained
  LL           Data element counter
  IJKL         Integer equal to the number of digits to the right of
               the decimal  point
  IOUT         Output device number
790
791
792
793
794
1

2

3

4

5
50
790
791
792
793
794
SUBROUTINE COLl(IJKL,X,W,LL,IOUT)
DIMENSION X(120),W(120)
FORMAT(1H ,F8.0,A1)
FORMAT(1H ,F8.1,A1)
FORMAT(1H ,F8.2,A1)
FORMAT(1H ,F8.3,A1)
FORMAT(1H ,F8.4,A1)
MAA = IJKL+1
GO TO  (1,2,3,4,5),MAA
WRITE(IOUT,790)  X(LL),W(LL)
GO TO 50
WRITE(IOUT,791)  X(LL),W(LL)
GO TO 50
WRITE(IOUT,792)  X(LL),W(LL)
GO TO 50
WRITE(IOUT,793)  X(LL),W(LL)
GO TO 50
WRITE(IOUT,794)
RETURN
END
                X(LL),W(LL)
SUBROUTINE COL2(IJKL,X,W,LL,IOUT)
DIMENSION X(120),W(120)
FORMAT(1H+,11X,F8.0,A1)
FORMAT(1H+,11X,F8.1,A1)
FORMAT(1H+,11X,F8.2,Al)
FORMAT(1H+,11X,F8.3,A1)
FORMAT(1H+,11X,F8.4,A1)
MAA = IJKL+1
GO TO  (1,2,3,4,5),MAA
WRITE(IOUT,790) X(LL),W(LL)
GO TO 50
                                   27

-------
2

3

4

5
50
790
791
792
793
794
1

2

3

4

5
50
790
791
792
793
794
1

2

3

4

5
50
WRITE(IOUT,791) X(LL),W(LL)
GO TO 50
WRITE(IOUT,792) X(LL),W(LL)
GO TO 50
WRITE(IOUT,793) X(LL),W(LL)
GO TO 50
WRITE(IOUT,794) X(LL),W(LL)
RETURN
END

SUBROUTINE COL3(IJKL,X,W,LL,IOUT)
DIMENSION X(120),W(120)
FORMAT(1H+,21X,F8.0,A1)
FORMAT(1H+,21X,F8.:
FORMAT(1H+,21X,F8.:
FORMAT(1H+,2IX,F8.:
FORMAT(1H+,2IX,F8.-
MAA = IJKL+1
GO TO (1,2,3,4,5),MAA
WRITE(IOUT,790) X(LL),W(LL)
GO TO 50
WRITE(IOUT,791)
GO TO 50
WRITE(IOUT,792)
GO TO 50
WRITE(IOUT,793)
GO TO 50
WRITE(IOUT,794)
RETURN
END
X(LL),W(LL)

X(LL),W(LL)

X(LL),W(LL)

X(LL),W(LL)
SUBROUTINE COL4(IJKL,X,W,LL,IOUT)
DIMENSION X(120),W(120)
FORMAT(1H+,31X,F8.0,A1)
FORMAT(1H+,31X,F8.1,A1)
FORMAT(1H+,31X,F8.2,A1)
FORMAT(1H+,31X,F8.3,Al)
FORMAT(1H+,31X,F8.4,A1)
MAA = IJKL+1
GO TO  (1,2,3,4,5),MAA
WRITE(IOUT,790)  X(LL),W(LL)
GO TO 50
WRITE(IOUT791)  X(LL),W(LL)
GO TO 50
WRITE(IOUT,792)  X(LL),W(LL)
GO TO 50
WRITE(IOUT,793)  X(LL),W(LL)
GO TO 50
WRITE(IOUT,794)  X(LL),W(LL)
RETURN
END
                                    28

-------
                           SUBROUTINE  DLIST


This subroutine prints a data  list  in  accordance   with  the  number  of
digits  to  the  right  of  the  decimal  point.   The following range of
decimals are allowed: xx., xx.x, x.xx,  x.xxx,  and x.xxxx.

INPUT REQUIREMENTS

Variable     Purpose

  IJKL         Integer representing number  of  digits to the right of
               the decimal point
  I            Count of data element in the vector
  IOUT         Output device number

OUTPUT REQUIREMENTS

Variable     Purpose                                         Format

  KUR(I)       Laboratory identification  number                13
  KDUR(I)       Analyst identification  number                  Al
  XH(I)        Unsorted vector data element                   F7.2
  V(I)         Symbol of t-test results:  "R" = Rejected       Al
                                          "  " = Retained
  ANA(I)       Method used: "D" = Different method            Al
                            "  " = Official  method
  ANB(I)       Spare field, unused  at  this  time                A2


       SUBROUTINE DLIST(IJKL,KUR,KDUR,XH,V,ANA,ANBfI,IOUT)
       INTEGER ANA(120)
       DIMENSION KUR(120),KDUR(120),XH(120),V(120),ANB(120)
430    FORMATUH ,23X, I3,4X,Al, 8X,F7. 0, IX, Al,Al,A2)
431    FORMAT(1H ,23X,13,4X,Al,8X,F7.1,IX,Al,Al,A2)
432    FORMATdH ,23X, 13, 4X, Al, 8X,F7.2 , IX, Al, Al,A2)
433    FORMATdH ,23X, I3,4X,Al,8X,F7. 3 ,1X,A1,A1,A2)
434    FORMATdH , 23X, 13 ,4X, Al, 8X,F7. 4 , IX, Alf Al,A2)
       MAA = IJKL+1
       GO TO (1,2,3,4,5),HAA
1      WRITE(IOUT,430) KUR(I),KDUR(I),XH(I),V(I),ANA(I),ANB(I)
       GO TO 50
2      WRITE(IOUT,431) KUR(I),KDUR(I),XH(I),V(I),ANA(I),ANB(I)
       GO TO 50
3      WRITE(IOUT,432) KUR(I),KDUR(I),XH(I),V(I),ANA(I),ANB(I)
       GO TO 50
4      WRITE(IOUT,433) KUR(I),KDUR(I),XH(I),V(I),ANA(I),ANB(I)
       GO TO 50
5      WRITE (IOUT,434) KUR(I) ,KDUR(I) ,XH (I) , V(I) , ANA(I) ,ANB (I)
50     RETURN
       END
                                   29

-------
                0)
          id

          Q)
W
4>

w id
   -P
c id «H
   •o n

o M-I
fa O
                   (0
                  •d
                   M
                   m
                   o

                  o
                  (N
                                       'O

                                        

 id
Q
                                                                                                    u
H


I
D
O
H
fa

§
U
U
1
w
w
K
I

fa
O

CO
EH
H
CO
      tt
      O
CJ
                (0

                c
I
                     o
                     o
                     o
                           X
                           u
                           XI
                            
-------














2
H
EH

(X
£>
O
H
pL|
2
0
U

fcrf
U

Q

<
EH
<
Q

i«
tf
Q
rij
w
BG

























In
0
0)
13

id
+J

•o

c

l(_l
o

4J
(0
M
•H
i(_l
»— •

fv*j
U
Q
<
EH
<
Q











C
W -H
^ -  I JH n3
Q) -H U EH >
« Q U -












fS|

K
W
EH
H
!_}
v^
O
D

CN
Ch
CN

II

EH
W
M
K
U
o g;
• H
CN
W i
id
M
4J
•H
XI

id'e
id
W M
•H cn
0
a M
rH DU
o
to ^i
l*s XI
«— '

Q
rH
O
CO
<


•
in
o
^*




•H
O
iH


^r
                                                     0)
                                                     -P
                                                    -i-l O
                                                  O-H   -
                                                    fO 
                                                  -P    r-
                                                  co  O  I
                                                  cfl  ^ U
                                                  rH JJ U
                                                    in
                                                    in
U
                                            31

-------
o
a
                   C£.
                   LU
                   t—
                   <
                i/l o
                LU UJ
                                                                                                                                                                               _J O
                                                                                                                                                                               < LU
U_ 1S
   _J
> <
QC t—
O uj
I- £1
<
re uj
o o
ej <
cj  >
^  a
   O  —i
   I—  h-
   <  wl
cc; p^  u<
uj O  O
K 01

-« -I  O
—i Q.
   OJ  I
o  I   :
*-t ^  i
2: o  ;
UJ 5T  ,
(^     (
O LU  U-
li.     C
                                      OOOOOOOOOOOOOOOOOOOOOOOCJOOOOOOOOOOOOOOOOOO
                                      OOOOOOC^tOOOOOOOOOOOOOOOOOOOOOOOOOOOOOCOOOOO
                                                                                                                                                                               z z
                                                                                                                                                                               1- C1
                                                                                                                                                                   II
                                                                                                                                                                      »—
                                                                                                                                                                  1-  Z
                                                                                                                                                                  ^  _)
                                                                                                                                                                  IJ  3
                                                                                                                                                                  O  U
                                                                                                                                                                  O
t/) o
  Q  >
-i     a
                             a.
                             o

                                                                                          32

-------
o
LJ
s:
o
?
<
a:
cr>

z:
                a: a:
                CJ LU
                m o
                < UJ
LL I/'

   _J

>• <
            a:  t  ^
            jj  z:  o
            t-  c
a: LU
c o
            t—<     UJ

            ^r     s:
            UJ     UJ
LU

O >
3 Q
< rj
a: (-
   X
>- h-
 •  £
 I
 :  <
 i  a.
            a    u-

            u~    o


            00    >
            LU    Of

            l/l    JJ

            >-    >

            _J O O
            < < o
            Z 2 LU

             n£
                                              o
                                              o
o
o
                            a.
                            s:
                                                                                33

-------
               >-« LU
               QC I-
               a: o
               LJ LU
                                 LU a: CD
                                 _J LU <
                           I—    l/l LU CO
OO
00
OU
00
OO
0*3-
OO
00
OO
00
OO
00
OO
00
OCJO
000
OOO
000
OCJOO
0000
OOUO
0000
                                                                                                                            OOOOO
                                                                                                                            00000
a »-
o uj
t- z
O O
CD <
            a a- "
            LU LU o
            K  t
            
_1 LU O
                                                                                    34

-------

•
                               >-<(/) LU  ca
                 -
                 <5  or
< O
   i
>- i—
                                                                                            35

-------
                                         CO
                                         CO
                                           : o
                                           j   •  >
                                           : o  <
                                         
                 ec <
                 a  i
              UJ O CJ
              K- ir
                        ^ O  m r-t
                        o m  ^-4 CM
                        LJ r-t  in u>
                        O CM  f\J O
                        O CC  O LJ

                        O C7*  -O CJ1
                        co r—  r- -j-
                                  o  o o o o o
                                  o  o o o o o
                                  LJ  O O O O O
                                  o  o o o o o

                                  in  ~* r- m cr in
                                  CM  o r- in CM o
                                      ~* r-4 CNI m NT
                                         UJ     UJ
                                         >     c
a:  uu
a  LJ
CO  <
<  a
Z)  (/>
i/)
i/>  D
<  a
    x
>  i-
>—  LJJ
•—  s:
-
LU  h- C^
l/)  t^ '.U
V  *- >
-I  H- O
<  < O
   LJ UJ .

  ; <

     : o :
< <  i
v '.
                                            f*~i  O O  Xj-
                                            co  r\j o  co
                                            o  co o  --»
                                         O •&  rooooocooooooooooooooooooooooooooooo
                                                                                                                                                                • QD  CO 00 O* O O ^-* ^^  *"^
                                                                                                                                                                icMcMrvjcMn^n^firnrn
                                                                                          36

-------
                      VO
                            VO VO VO VO VO VO VO VO VO V0 VO
                                                                      VO
 0)
H
•H
4->
 c
 

 •
o
 c
 o
•H
.p
 3
4J
U)
•H
Q
13
 a)
H
•H
 (0
•P


 §
X
H
Q
K
W
             Q
iHiHrHrHrHiHiHrHiHrHCNCNCM
                                            37

-------
•O


I
•H
•P
C
O
                   VO VO VO VO VO VD VO VO
 0)
rH
•H
                           vo vo vo vo vo
 0)
 U
 U
 OJ
04
a\
           Q
        00000000000000^
4J
n)

C
0
•H
•P
        oomvoonoom
        HooovoinnHo
        r>r>vovovovovovo
        vo vo vo VD vo vo vo vo
•P
 0)
•H
Q
•H
 m


1
                   r^vor^ooomvoo
H
Q
CM
C
                                     38

-------
TECHNICAL REPORT DATA
(Please read Instructions on the reverse before completing)
1. REPORT NO. 2.
EPA-670/4-7S-004a
I. TITLE AND SUBTITLE
FORTRAN PROGRAMS FOR ANALYZING COLLABORATIVE
TEST DATA
PART I: GENERAL STATISTICS
'. AUTHOR(S)
Elmo C. Julian
. PERFORMING ORGANIZATION NAME AND ADDRESS
National Environmental Research Center
Office of Research and Development
U.S. Environmental Protection Agency
Cincinnati, Ohio 45268
2. SPONSORING AGENCY NAME AND ADDRESS
Same as above
3 RECIPIENT'S XCCESSI ON-NO.
5. REPORT DATE
April 1975; Issuing Date
6. PERFORMING ORGANIZATION CODE
8. PERFORMING ORGANIZATION REPORT NO.
10. PROGRAM ELEMENT NO. ]_^A327
ROAP 24AEL; Task 006
11. CONTRACT/GRANT NO.
13. TYPE OF REPORT AND PERIOD COVERED
14. SPONSORING AGENCY CODE
5. SUPPLEMENTARY NOTES
See Part II, EPA-670/4-75-004b
6. ABSTRACT
A  FORTRAN program for IBM 1130 is  described by which general statistics on inter-
laboratory studies  of chemical analytical methods may be obtained.   Data screening
followed by a statistical t-test for  identifying outliers is included.   A
histogram of data in  ascending order  is provided.
'. KEY WORDS AND DOCUMENT ANALYSIS
DESCRIPTORS
FORTRAN, Data, Statistics
i. DISTRIBUTION STATEMENT
RELEASE TO PUBLIC
b.lDENTIFIERS/OPEN ENDED TERMS
Programs, Collaborative
test
19. SECURITY CLASS (This Report)
UNCLASSIFIED
20. SECURITY CLASS (This page)
UNCLASSIFIED
c. COS AT I Field/Group
9B
21. NO. OF PAGES
47
22. PRICE
A Form 2220-1 (9-73)
                                            39
                                                    S GOVERNMENT PRINTING OFFICE: 1975-657-592/53A9 Region No. 5-11

-------

-------