home *** CD-ROM | disk | FTP | other *** search
/ Oakland CPM Archive / oakcpm.iso / sigm / vol268 / otputx.for < prev    next >
Encoding:
Text File  |  1986-05-22  |  3.0 KB  |  89 lines

  1.     SUBROUTINE    OTPUT(NSET,QSET)
  2. C////////////////////////////////////////////////////////////////
  3. C/                                /
  4. C/    Program-id.    OTPUT.FOR                /
  5. C/    Date-written.    Feb. 11th 1984                /
  6. C/    Remarks.    User optinal output routine for     /
  7. C/            Information system from page 270    /
  8. C/                                /
  9. C////////////////////////////////////////////////////////////////
  10. C
  11.     INTEGER*1    DOT(90)
  12.     DIMENSION    NSET(1),QSET(1),DIST(22)
  13.         COMMON/C1/ID,IM,INIT,JEVNT,JMNIT,MFA,MSTOP,MX,MXC,NCLCT,NHIST,
  14.      $  NOQ,NORPT,NOT,NPRMS,NRUN,NRUNS,NSTAT,OUT,ISEED,TNOW,
  15.      $  TBEG,TFIN,MXX,NPRNT,NCRDR,NEP,VNQ(4),IMM,MAXQS,MAXNS
  16.     COMMON /C2/ATRIB(10),ENQ(4),INN(4),JCELS(5,22),KRANK(4),
  17.      $  MAXNQ(4),MFE(4),MLC(4),MLE(4),NCELS(5),NQ(4),PARAM(20,4),
  18.      $  QTIME(4),SSUMA(10,5),SUMA(10,5),NAME(6),NPROJ,MON,NDAY,NYR,
  19.      $  JCLR,JTRIB(12)
  20.     COMMON /U1/ NARC,NSCAN,JBUFF,NSTA(10),JRPLY(10)
  21.     COMMON /U2/ XL,NTER,IBUFF,CDIAL(2),CREAD(2),SRTIM,SCTIM,
  22.      $  TRTIM,DLTIM,COMTIM(2)
  23. C
  24. C
  25.     SIMTIM = TFIN - TBEG
  26.     EFECT  = FLOAT(NARC) / SIMTIM
  27.     WRITE(NPRNT,290) NPROJ,NAME,MON,NDAY,NYR,SIMTIM
  28. 290    FORMAT(1H1,'Simulation Project no.',I4,2X,'on',2X,6A2,
  29.      $  //,' Date',I3,'/',I3,'/',I5,5X,'Simulation time : ',F5.0,
  30.      $  ' min ')
  31.     WRITE(NPRNT,380) NTER,IBUFF,XL,CDIAL(1),CDIAL(2),CREAD(1),
  32.      $  CREAD(2),SRTIM,SCTIM,TRTIM,DLTIM,COMTIM(1),COMTIM(2)
  33. 380    FORMAT(1H ,'Numbers of stations : ',I2/
  34.      $  1H ,'Max size of buffer         : ',I2/
  35.      $  1H ,'Mean time between arrivals of customers : ',F4.1,
  36.      $  /1H ,'Customers dialing time range : ',F4.1,2X,F4.1,
  37.      $  /1H ,'Customers reading time range : ',F4.1,2X,F4.1,
  38.      $  /1H ,'Scanner rotation time and scanning time : ',F7.4,2X,F7.4,
  39.      $  /1H ,'Scanner transfer time and delay time    : ',F7.4,2X,F7.4,
  40.      $  /1H ,'Computing time range : ',F6.3,2X,F6.3)
  41.     WRITE(NPRNT,385)
  42. 385    FORMAT(1H ,'------------------------------------------------',
  43.      $  '---------------------------')
  44.     WRITE(NPRNT,901) NARC
  45. 901    FORMAT(1H ,'Total customers served is : ',I6,' persons ')
  46.     WRITE(NPRNT,902) EFECT
  47. 902    FORMAT(1H ,'Customers served / Simulation time : ',F7.4,
  48.      $  ' persons/min ')
  49.     WRITE(NPRNT,905) (NSTA(I),I=1,NTER)
  50. 905    FORMAT(1H ,'Number of customers waiting at station at end : ',/
  51.      $  1H ,10(I5,2X))
  52. C
  53. C    --- Define user output
  54. C
  55.     SUMT = SRTIM + SCTIM + TRTIM + DLTIM
  56.     DELT = (COMTIM(2) - COMTIM(1) + SUMT) / 20.0
  57.     SUMH = 0
  58.     NCL = NCELS(1) + 2
  59.     DO 910 I=1,NCL
  60. 910    SUMH = SUMH + JCELS(1,I)
  61.     DO 920 I=1,NCL
  62. 920    DIST(I) = FLOAT(JCELS(1,I)) / SUMH * 100.0
  63.     WRITE(NPRNT,925)
  64. 925    FORMAT(1H ,'Average time to obtain a display Distribution : ')
  65.     WRITE(NPRNT,930)
  66. 930    FORMAT(1H ,'Upper Limit  Observations  Percentage ')
  67.     DO 940 I=1,NCL
  68.     DO 950 J=1,90
  69.     DOT(J) = ' '
  70. 950    CONTINUE
  71.     DOT(1) = ':'
  72.     K = IFIX((DIST(I) + 0.5) * 0.9)
  73.     IF (K.LE.0) GO TO 960
  74.     DO  980  M=1,K
  75. 980    DOT(M) = '@'
  76. 960    IF (NPRNT.NE.2) GO TO 975
  77.     WRITE(NPRNT,970) SUMT,JCELS(1,I),DIST(I),(DOT(L),L=1,90)
  78.     GO TO 976
  79. 975    WRITE(NPRNT,977) SUMT,JCELS(1,I),DIST(I)
  80. 977    FORMAT(3X,F6.3,8X,I3,9X,F6.2)
  81. 976    CONTINUE
  82. 970    FORMAT(3X,F6.3,8X,I3,9X,F6.2,3X,90A1)
  83.     SUMT = SUMT + DELT
  84. 940    CONTINUE
  85.     WRITE(NPRNT,1000)
  86. 1000    FORMAT(1H1)
  87.     RETURN
  88.     END
  89.