File KOLM.FT (FORTRAN source file)

Directory of image this file is from
This file as a plain text file

C
C     ..................................................................
C
C        SAMPLE MAIN PROGRAM FOR THE KOLMOGOROV-SMIRNOV TEST-KOLM
C
C        PURPOSE
C           (1) READ THE CONTROL CARD FOR A ONE OR TWO SAMPLE TEST
C           (2) READ THE SAMPLE DATA AND DETERMINE THE SAMPLE SIZES
C           (3) PRINT RESULTS
C
C        REMARKS
C           THE USER SHOULD NOTE THE REMARKS GIVEN IN SUBROUTINES
C           KOLMO, KOLM2, AND SMIRN, AND THE MATHEMATICAL DESCRIPTIONS
C           FOR THESE SUBROUTINES.
C
C        SUBROUTINES AND FUNCTION SUBPROGRAMS REQUIRED
C           KOLMO
C           KOLM2
C           SMIRN
C           NDTR
C
C        METHOD
C           REFER TO SUBROUTINES KOLMO, KOLM2, AND SMIRN
C
C     ..................................................................
C
C     THE FOLLOWING DIMENSIONS MUST BE GREATER THAN THE NUMBER OF DATA
C     ELEMENTS IN THE TWO SAMPLES, M AND N
C
         DIMENSION X(501),Y(501)
C
C     ..................................................................
C
         DIMENSION TITLE(5),D(12),TIT1(20),DIST(5,3)
C
C     ..................................................................
C
    1 FORMAT(5A4,3I1,5(F1.0,2F5.0))
    2 FORMAT(//'CC.21, CONTROL CARD, INCORRECT, OR SAMPLE SIZE IS TOO LA
     1RGE.  JOB IGNORED.')
    3 FORMAT(12F6.0)
    4 FORMAT(1H1,5A4)
    5 FORMAT(//2H A,I2,' SAMPLE TEST WAS REQUESTED')
    6 FORMAT(20A4)
    7 FORMAT(//(10F10.3))
    8 FORMAT(//' SORTED SAMPLE ONE FOLLOWS')
    9 FORMAT(//' THE HYPOTHESIS THAT THE SAMPLE IS FROM A(N) ',4A4,  ' D
     1ISTRIBUTION')
   10 FORMAT(//' SORTED SAMPLE TWO FOLLOWS')
   11 FORMAT(//' THE HYPOTHESIS THAT THE TWO SAMPLES ARE FROM THE SAME P
     1OPULATION CAN BE REJECTED WITH (ASYMPTOTIC)',/,' PROBABILITY OF BE
     2ING INCORRECT OF ',F6.3,'.  THE STATISTIC Z IS ',E12.4,' FOR THESE
     3 SAMPLES.')
   12 FORMAT(//,' THE SIZE OF SAMPLE',I3,' IS',I4,'.')
   13 FORMAT(//,' NOTE THE REMARKS CONCERNING ASYMPTOTIC RESULTS AND SAM
     1PLE SIZE IN SUBROUTINE SMIRN')
   14 FORMAT(//,' AT LEAST ONE (S) ENTRY PARAMETER FOR THE SUBROUTINE KO
     1LMO WAS INCORRECT.'/' THE TEST FOR THE ASSOCIATED CONTINUOUS PDF W
     2AS IGNORED.')
   15 FORMAT(A4)
   16 FORMAT(//,' THIS JOB CALLS FOR THE USE OF A PREVIOUSLY READ SAMPLE
     1, AND THE PREVIOUS JOB WAS IGNORED BECAUSE OF ERRORS.'/ ' JOB IGNO
     2RED.')
   17 FORMAT(//,' FIRST CARD IN JOB DECK (JOB CONTROL CARD) IS INCORRECT
     1.')
   18 FORMAT(1H ,' WITH MEAN',F13.4,' AND VARIANCE',F13.4)
   19 FORMAT(1H ,' WITH MEDIAN',F13.4,' AND FIRST QUARTILE',F13.4)
   20 FORMAT(1H ,' IN THE INTERVAL',F13.4,' TO',F13.4,' INCLUSIVE')
   21 FORMAT(1H ,' CAN BE REJECTED WITH PROBABILITY',F6.3,' OF BEING INC
     1ORRECT.  THE STATISTIC Z',/,'  IS',E12.4,' FOR THIS SAMPLE.')
   22 FORMAT(//,'  THE JOB WITH TITLE ',5A4,' WAS COMPLETED.')
C	OPEN (UNIT=5, DEVICE='CDR', ACCESS='SEQIN')
C	OPEN (UNIT=6, DEVICE='LPT', ACCESS='SEQOUT')
C
C        READ DISTRIBUTION NAMES AND JOB CONTROL CARD
C
      IFL=0
      READ(5,15)DASH
      READ(5,6)TIT1
C
C        SELECT PROGRAM CONTROLS
C
	LOGICAL EOF
	CALL CHKEOF (EOF)
  100 READ(5,15)DAS2
	IF (EOF) GOTO 999
      IF(DASH-DAS2)101,102,101
  101 WRITE(6,17)
      GO TO 107
  102 READ(5,1)TITLE,IS,IR,IO,((DIST(I,J),J=1,3),I=1,5)
      IES=0
      WRITE(6,4)TITLE
      WRITE(6,5)IS
C
C        NUMBER OF SAMPLES DECISION
C
      IF(IR)103,105,103
  103 IF(IFL)104,115,104
  104 WRITE(6,16)
      GO TO 107
  105 IF(IS-1)106,109,109
C
C        NOT ONE OR TWO SAMPLES
C
  106 WRITE(6,2)
  107 READ(5,15)DAS2
      IF(DASH-DAS2)107,108,107
  108 IFL=1
      GO TO 102
C
C        READ FIRST SAMPLE
C
  109 N=0
      DO 111 I=1,50
      READ(5,3)D
      DO 111 J=1,12
      IF(D(J)-999999.0)110,112,110
  110 N=N+1
      IF(N-501)111,106,106
  111 X(N)=D(J)
  112 N1=1
      WRITE(6,12)N1,N
C
C        CHECK THE SIZE OF N
C
      IF(N-100)113,113,114
  113 WRITE(6,13)
  114 IF(IS-2)121,115,106
C
C        READ SECOND SAMPLE
C
  115 M=0
      DO 117 I=1,50
      READ(5,3)D
      DO 117 J=1,12
      IF(D(J)-999999.0)116,118,116
  116 M=M+1
      IF(M-501)117,106,106
  117 Y(M)=D(J)
  118 N1=2
      WRITE(6,12)N1,M
C
C        CHECK THE SIZE OF M
C
      IF(M-100)119,119,120
  119 WRITE(6,13)
  120 IF(IS-1)121,121,133
C
C        ONE SAMPLE TEST USING ALL DISTRIBUTIONS REQUESTED
C
  121 DO 130 I=1,5
      IF(DIST(I,1))130,130,122
  122 CALL KOLMO(X,N,Z,P,I,DIST(I,2),DIST(I,3),IER)
      IES=IER+IES
      IF(IER)130,124,130
  123 WRITE(6,14)
      GO TO 136
C
C        OUTPUT RESULTS
C
  124 K=4*I-3
      WRITE(6,9)TIT1(K),TIT1(K+1),TIT1(K+2),TIT1(K+3)
      IF(I-3)125,126,127
  125 S2=DIST(I,3)**2
      WRITE(6,18)DIST(I,2),S2
      GO TO 129
  126 S2=DIST(I,2)-DIST(I,3)
      WRITE(6,19)DIST(I,2),S2
      GO TO 129
  127 IF(I-4)128,128,130
  128 WRITE(6,20)DIST(I,2),DIST(I,3)
  129 WRITE(6,21)P,Z
  130 CONTINUE
C
C        OUTPUT SAMPLE ONE DECISION
C
      IF(IO)131,132,131
  131 WRITE(6,8)
      WRITE(6,7)(X(J),J=1,N)
  132 IF(IES)123,136,123
C
C        TWO SAMPLE TEST
C
  133 CALL KOLM2(X,Y,N,M,Z,P)
C
C        OUTPUT SAMPLES DECISION
C
      IF(IO)134,135,134
  134 WRITE(6,8)
      WRITE(6,7)(X(J),J=1,N)
      WRITE(6,10)
      WRITE(6,7)(Y(J),J=1,M)
  135 WRITE(6,11)P,Z
  136 IFL=0
      WRITE(6,22)TITLE
      GO TO 100
999	STOP
      END



Feel free to contact me, David Gesswein djg@pdp8online.com with any questions, comments on the web site, or if you have related equipment, documentation, software etc. you are willing to part with.  I am interested in anything PDP-8 related, computers, peripherals used with them, DEC or third party, or documentation. 

PDP-8 Home Page   PDP-8 Site Map   PDP-8 Site Search