home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / World_Of_Computer_Software-02-387-Vol-3of3.iso / h / house_ii.zip / FOR / STRDAY.FOR < prev    next >
Text File  |  1992-05-11  |  17KB  |  569 lines

  1.       SUBROUTINE STRDAY(ATOUT, C, CDAY, DQINT, DSOLRH, DTCR, DTIM1,
  2.      + DTIM2, DTOB, DWHM, DWINT, DWSPED, ENDT, HDUM, HUMON, ICYCCP,
  3.      + ICYC1, ICYC6, IDAYM, IDUM, INC, IREP, IRH, ISWING, KDAYM,
  4.      + MPRINT, NROUT, NZONG, ODDBM, ODHUM, QBASVN, QHUMT, QSPT, QWAS,
  5.      + RELHMI, RHDIR, RHIO, RODB, TBAS, TDIR, TDUM, TEMPDV, TIMAX,
  6.      + TIMAXN, TIMIN, TIO, TONMAX, TRO, VENCRV, WATER, WSC, IDBG)
  7. C  COMFTT REMOVED FROM FORMAL PAR LIST ABOVE TO SAVE MEMORY     
  8. C
  9. C-----START OF DAY LOOP
  10. C
  11. C-----CONSTANTS
  12. CMDK CPAIR
  13. CMDK BTUKWH
  14. CMDK NHBK
  15. CMDK NHRO
  16. CMDK NHRP
  17. CMDK NZN
  18. CMDK NIWL
  19. CMDK NKONST
  20. CMDK NOUTDY
  21. CMDK NWL
  22. CMDK NWN
  23. CMDK NZN7
  24. CMDK NZW
  25. CMDK RHOAIR      
  26. C
  27. C-----COMMON BLOCKS
  28. CMDK ACHBQ
  29. CMDK ACND
  30. CMDK BAR
  31. CMDK BLKCM2
  32. CMDK BLK10
  33. CMDK BLKFMT
  34. CMDK BLKGS1
  35. CMDK BLKGS2
  36. CMDK BLKQGS
  37. CMDK BLKQS
  38. CMDK CNSTRK
  39. CMDK DUCTS1
  40. CMDK DUCTS2
  41. CMDK DUCTS5
  42. CMDK EBALA
  43. CMDK ENCBLK
  44. CMDK ENCBK1
  45. CMDK ENCBK2
  46. CMDK HANDBK
  47. CMDK HUMIDC
  48. CMDK INDIC1
  49. CMDK IWETHR
  50. CMDK IZZQ
  51. CMDK LDPOUT
  52. CMDK LPSTRB
  53. CMDK MZON1
  54. CMDK OUTPUT
  55. CMDK OWETHR
  56. CMDK QUAYCH
  57. CMDK QUAYLE
  58. CMDK SIMA
  59. CMDK SOILB
  60. CMDK SOLARB
  61. CMDK STRUCA
  62. CMDK SURFAR
  63. CMDK TEMP1
  64. CMDK TEMPB
  65. CMDK TIMEB
  66. CMDK TSTB2
  67. CMDK TSTATC
  68. CMDK WIBLK
  69.       CHARACTER*8 CDAY (7)
  70.       INTEGER J10(10),NDEV (3), NROUT(24)
  71.       REAL ATOUT (12, 24), C(5),  DQINT(24)
  72.       REAL DSOLRH(24), DTOB(24), DWHM(24), DWINT(24), DWSPED(24)
  73. C     REAL COMFTT(11,21)
  74.       CHARACTER*7 NL1
  75.       CHARACTER*3 NL2
  76.       REAL ODDBM(25), ODHUM(25), SLR(10)
  77. C
  78. C-----INITIALIZATIONS
  79.       DATA NDEV   /0, 1, -1/
  80.       DATA NL1/'SOLAR('/, NL2/')  '/
  81.       DATA IDAY/0/
  82. C
  83. C
  84. C-----EXTRACT SOLAR DATA AT BEGINNING OF EACH NEW DAY
  85.       IDAY=IDAY+1
  86.       CALL CURS(18)
  87.       CALL SOLRLD(STM,NDYRI,ICC,KM,IDAY,DST,NSEQW,IDBG)
  88. C
  89. C  DATOUT(ISURF,ETC....)
  90. C    ISURF=1,2  SOLAR ON ROOF ABOVE ATTICS 1 AND 2
  91. C        3,4,...2+NROOMS  SOLAR IN WINDOWS OF ZONES 1,2,...NROOMS
  92. C        2+NROOMS+1..... SOLAR ON OUTSIDE ENCLOSURE ELEMENTS
  93.       IQQ2=NIJ
  94.       IF(IQQ2.LT.1)IQQ2=1
  95.       DO 252 ISURF=1, IQQ2
  96.          DO 251 IHR=1, 24
  97.             SOLAR (IHR, ISURF)=DATOUT (ISURF, IHR)
  98. 251         CONTINUE
  99.          SOLAR (25, ISURF)=SOLAR (1, ISURF)
  100. 252   CONTINUE
  101.       SOLARH (25)=SOLARH (1)
  102.       IF (ISKIP.EQ.0 .AND. IGARAGT.GT.0) CALL GARAG (IGARAGT,NZONG,
  103.      +                                               SOLARH(1))
  104.       KDAYM=IDAYM
  105. C
  106. C     DTIME = DTIM1 (2 MIN) HERE
  107.       DTIME=DTIM1
  108. C     WETHR BLOCK 3
  109.       IF (NSEQW.EQ.0 .OR. NSEQW.EQ.1) THEN
  110. C--------CHECK FOR MEAN DAY CALC OR ADJUST NOMINAL DATA SET
  111. C        USED ONLY WITH CARRIER DATA
  112.          IF (IMEAN.LT.0) THEN
  113.             DO 260 J=1, 25
  114.                ODDB (J)=ODDBM (J)
  115. 260            CONTINUE
  116.          ELSE
  117. C-----------DETERMINE OUTDOOR TEMP PROFILE FOR MEAN, MAX, OR MIN DAY
  118. C           CALCULATE WET BULB TEMPERATURE AND SPECIFIC HUMIDITY
  119. C-----------FOR DATA FROM WEATHER FILE
  120.             DO 280 J=1, 25
  121. C--------------NDEV (1) = 0 DEVIATION FOR MEAN DAY CALCULATION
  122. C--------------NDEV (2) = +1 DEVIATION FOR MAX  DAY CALCULATION
  123. C--------------NDEV (3) = -1 DEVIATION FOR MIN  DAY CALCULATION
  124.                ODDB (J)=ODDBM (J)+NDEV (IDAYM)*TEMPDV
  125.                RODB=ODDB (J)
  126.                ODWB=(((C (5)*ODDB (J)+C (4))*ODDB (J)+C (3))*
  127.      1            ODDB (J)+C (2))*ODDB (J)+C (1)
  128. C                   GET SPECIC HUMIDITY, WSC, USING PSY FUNCTIONS     
  129.                PWSS=FPWS(ODWB)
  130.                WSS=FW22(PWSS)
  131.                WSC=FW35(RODB,ODWB,WSS)
  132.                ODHUM (J)=WSC
  133. 280            CONTINUE
  134.          END IF
  135.       ELSE IF (NSEQW.EQ.3) THEN
  136.          ODDB (1)=ODDB (25)
  137.          WSPEED (1)=WSPEED (25)
  138.          ODHUM (1)=ODHUM (25)
  139.          KDAYM=KDY
  140.          DO 285 IHR=2, 25
  141. C  ODDB  - OUTDOOR DRY-BULB TEMP, F
  142. C  ODWB  - OUTDOOR WET-BULB TEMP, F
  143. C  WSPEED- WIND SPEED, MILES/HR
  144. C              PWSS BELOW IS A DUMMY VARIABLE         
  145.             READ(41, *, IOSTAT=IO41) ODDB (IHR), ODWB, WSPEED (IHR),
  146.      1         PWSS, PWSS, KMO, KDY, KHR
  147.             IF(IO41.NE.0)THEN
  148.               WRITE(60,*)' STRDAY: TROUBLE READING TAPE41!'
  149.               STOP ' STRDAY: TROUBLE READING TAPE41!'
  150.               ENDIF
  151.             IF (IHR.LT.25 .AND. KMO.NE.KM) THEN
  152.                WRITE(60, *) 'NSEQW=3 WEATHER OUT OF SEQUENCE',
  153.      1         ' KMO,KM= ',   KMO, KM
  154.                WRITE(*, *) 'NSEQW=3 WEATHER OUT OF SEQUENCE',
  155.      1         ' KMO,KM= ',   KMO, KM
  156.               
  157.                STOP 'STRDAY: NSEQW=3 WEATHER OUT OF SEQUENCE'
  158.             END IF
  159.             RODB=ODDB (IHR)
  160. C                   GET SPECIFIC HUMIDITY, WSC, USING PSY FUNCTIONS            
  161.             PWSS=FPWS(ODWB)
  162.             WSS=FW22(PWSS)
  163.             WSC=FW35(RODB,ODWB,WSS)
  164.             ODHUM (IHR)=WSC
  165. 285         CONTINUE
  166.       END IF
  167.       IF (NSEQW.EQ.0 .OR. NSEQW.EQ.1 .OR. NSEQW.EQ.3) THEN
  168.          IF (INPRT.EQ.1) THEN
  169.             WRITE(60, 2210) KM, CMONTH (KM),
  170.      1         CDAY (IDAYM), WSHADE
  171.             DO 300 IHR=1, 24
  172.                WRITE(60, 2220) IHR, ODDB (IHR), ODHUM (IHR),
  173.      1            (SOLAR (IHR, J), J=1, 6), QINTL (IHR), WINTL (IHR)
  174. 300            CONTINUE
  175.             WRITE(60, *) 'SOLAR GAIN FOR WINDOWS WILL ',
  176.      1         'BE MULTIPLIED BY THE WINDOW SHADE FACTOR, WSHADE=',
  177.      2         WSHADE
  178.          END IF
  179.          TODAVG=0.
  180.          DO 320 IHR=1, 24
  181.             TODAVG=TODAVG+ODDB (IHR)
  182. 320         CONTINUE
  183.          TODAVG=TODAVG/24.
  184. C--------INTERPOLATE WEATHER DATA TO DESIRED TIME INCREMENTS
  185.          DO 325 IHR=1, 24
  186.             IHRP1=IHR+1
  187.             DTOB (IHR)=(ODDB (IHRP1)-ODDB (IHR))*DTIME
  188.             DWHM (IHR)=(ODHUM (IHRP1)-ODHUM (IHR))*DTIME
  189.             DWSPED (IHR)=(WSPEED (IHRP1)-WSPEED (IHR))*DTIME
  190.             DSOLRH (IHR)=(SOLARH (IHRP1)-SOLARH (IHR))*DTIME
  191. 325         CONTINUE
  192.       END IF
  193.       IF (INPRT.NE.0) THEN
  194.         WRITE(60, *) 'HORIZONTAL SOLAR FOR TODAY:'
  195.         WRITE(60, *) (IHR, SOLARH(IHR), IHR=1, 24)
  196.       ENDIF
  197.       IF (WSHADE.LT.1.0) THEN
  198. C--------APPLY WINDOW SHADE FACTOR
  199.          DO 330 IW=3,NROOMS+2
  200.          DO 330 IHR=1, 25
  201.             SOLAR (IHR,IW)=SOLAR (IHR,IW)*WSHADE
  202. 330         CONTINUE
  203.       END IF
  204.       IF (INPRT.NE.0 .AND. NSEQW.EQ.2) THEN
  205.          WRITE(60, 2211) WSHADE, (IHR, (SOLAR (IHR, J), J=1, 6),
  206.      1      QINTL (IHR), WINTL (IHR), IHR=1, 24)
  207.           IF(NIJ.GT.6)THEN
  208.               ISP=6
  209.   332         IST=ISP+1
  210.               ISP=ISP+10
  211.               IF(ISP.GT.NIJ)ISP=NIJ
  212.            WRITE(60,504)
  213.            I=0
  214.            DO 334 J=IST,ISP
  215.            I=I+1
  216.            J10(I)=J
  217.   334      CONTINUE
  218.            WRITE(60,500)(NL1,J10(IK),NL2,IK=1,I)
  219.            DO 337 IHR=1,24
  220.            I=0
  221.            DO 336 J=IST,ISP
  222.            I=I+1
  223.            SLR(I)=SOLAR(IHR,J)
  224.   336      CONTINUE
  225.            WRITE(60,501)(SLR(IK),IK=1,I)
  226.   337      CONTINUE
  227.            IF(ISP.NE.NIJ)GO TO 332
  228.            ENDIF
  229.       END IF
  230. C
  231.       IF (TSOILF (IDAYM).EQ.999.0) THEN
  232.          TODAG1=AFTG1*TODAVG+BFTG1
  233.       ELSE
  234.          TODAG1=TSOILF (IDAYM)
  235.       END IF
  236.       IF (TSOILW (IDAYM).EQ.999.0) THEN
  237.          TODAG2=AWTG2*TODAVG+BWTG2
  238.       ELSE
  239.          TODAG2=TSOILW (IDAYM)
  240.       END IF
  241.       IF(IGRND.EQ.0)THEN
  242.         DO 338 IQW=1,4
  243.   338   TSOIL(IQW)=TODAG2
  244.         TSOIL(5)=TODAG1
  245.         TSOIL(11)=TODAG1
  246.       ENDIF
  247.       DO 340 IHR=1, 24
  248.         DQINT (IHR)=(QINTL (IHR+1)-QINTL (IHR))*DTIME
  249.         DWINT (IHR)=(WINTL (IHR+1)-WINTL (IHR))*DTIME
  250.         DO 340 K=1, NIJ
  251.           DSOLAR (IHR, K)=(SOLAR (IHR+1, K)-SOLAR (IHR, K))*DTIME
  252. 340   CONTINUE
  253. C
  254. C--------CAL MISC. CONSTANTS
  255.       IF (ISKIP.EQ.0) THEN
  256.         AIRMSB=ROMVOL(NZNBAS)*RHOAIR
  257.         IF (IMODE.EQ.1) THEN
  258.           TAIN=TBAS
  259.           CALL ACOND (IDUM, TDUM, TDUM)
  260.         END IF
  261. C
  262. C-----------START OF RUN CALCULATIONS
  263. C-----------INITIALIZE VALUES
  264.         TODDB=TODAVG+TOFFSET
  265.         TGARAG=TODDB
  266.         IF(IGARAGT.EQ.0.AND.NZONG.GT.0)TGARAG=.66*TODDB+.34*TI(1)
  267.         NRDF1=0
  268. C-----------SET INITIAL VALUES FOR DUCT MODEL
  269.         TBAS=TBASI
  270.         IF (TBAS.GT.200.0) TBAS=TI(1)
  271.         TBASA=TBAS
  272.         QFLBAS=0.0
  273.         QBASVN=0.0
  274.         TBASN=TBAS
  275.         TCRW=(TODDB+TI(1))*.5*ICRW
  276.         TCRWA=TCRW
  277.         QFLCRW=0.0
  278.         QCRWVN=0.0
  279.         QGRND=0.0
  280.         QVENTA=0.0
  281.         TCRWN=TCRW
  282. C-----------SET INITIAL VALUES FOR WALL AND ROOF MODELS
  283.         TATTC(1)=(TI(1)+TODDB)*.5
  284.         TATTA(1)=TATTC(1)
  285.         TOTATC=(TODDB+TATTA(1))*.5
  286. C  SET INITIAL TEMPS OF ROOF LAYERS
  287. C   --COMMENTED INITIALIZATIONS WERE USED IN SINGLE-ZONE SP43 MODEL
  288.         TMP(1,IZT+1)=TODDB
  289.         TMP(2,IZT+1)=TOTATC
  290. C        TMP(2,IZT+1)=TATTC(1)
  291.         TMP(3,IZT+1)=TATTA(1)
  292. C        TMP(3,IZT+1)=TATTC(1)
  293.         TMP(4,IZT+1)=TATTA(1)
  294. C        TMP(4,IZT+1)=TI(1)
  295.         IF(NATC.EQ.2)THEN
  296.           TMP(1,IZT+2)=TODDB
  297.           TMP(2,IZT+2)=TOTATC
  298.           TMP(3,IZT+2)=TATTA(1)
  299.           TMP(4,IZT+2)=TATTA(1)
  300.         ENDIF
  301. C  SET INITIAL TEMPS OF ENCLOSURE ELEMENTS
  302.         WRITE(60, 1000)
  303. C
  304.         DO 359 I=1,2
  305.         QCEIL(I)=0.
  306.         QRFSUM(I)=0.
  307.  359    CONTINUE        
  308.         DO 360 J=1,NROOMS
  309.         NRM=NRMA(J)
  310.         TFM(NRM)=TI(NRM)
  311.         EBAL(NRM)=0.
  312.         EBALT(NRM)=0.
  313.         QLOSWL(NRM)=0.
  314.         QLOSFL(NRM)=0.
  315. C                            SET INITIAL TEMPS OF WALL AT THERMOSTAT
  316.         TWSTAT(NRM)=TI(NRM)
  317.         N2=NWALLA(NRM)
  318. C
  319.         DO 360 K2=1,N2
  320.         IZW=NENC(NRM,K2)
  321.         ID=IDEXP(IZW)
  322.         NZONC=NZNC(IZW)
  323.         NZON=NZONC-8
  324.         KON=KONSTA(IZW)
  325.         NLM=NLMP(KON)
  326.         IF(ID.LE.4)THEN
  327. C  OUTSIDE WALLS
  328.           TODTI=(TODDB+TI(NRM))*0.5
  329.           TMP(1,IZW)=TODDB
  330.           TMP(2,IZW)=TODTI
  331.           TMP(3,IZW)=TI(NRM)
  332.           TMP(4,IZW)=TI(NRM)
  333.         ENDIF
  334.         IF(ID.EQ.5)THEN
  335. C  CEILING
  336.           IF(NZONC.EQ.4)IA=1
  337.           IF(NZONC.EQ.5)IA=2
  338.           IF(NZONC.LT.8)THEN
  339.             TWALO=TATTA(IA)
  340.             TMEAN=(TATTA(IA)+TI(NRM))*0.5
  341.           ELSE
  342.             TWALO=TI(NZON)
  343.             TMEAN=(TI(NZON)+TI(NRM))*0.5
  344.           ENDIF
  345.           TMP(1,IZW)=TWALO
  346.           TMP(2,IZW)=TMEAN
  347.           TMP(3,IZW)=TI(NRM)
  348.           TMP(4,IZW)=TI(NRM)
  349.         ENDIF
  350.         IF(ID.EQ.6)THEN
  351. C  FLOOR
  352.           IF(NZONC.EQ.2.OR.NZONC.EQ.7)THEN
  353. C     LVG-SPC FLOOR W/ BSMT BELOW
  354.             TBTI=(TBAS+TI(NRM))*.5
  355.             TMP(1,IZW)=TBAS
  356.             TMP(2,IZW)=TBTI
  357.             TMP(3,IZW)=TI(NRM)
  358.           ENDIF
  359.           IF(NZONC.EQ.3.OR.NZONC.EQ.8)THEN
  360. C    LVG-SPC FLOOR W/ CRAWL SPC BELOW
  361.             TCTI=(TCRW+TI(NRM))*.5
  362.             TMP(1,IZW)=TCRW
  363.             TMP(2,IZW)=TCTI
  364.             TMP(3,IZW)=TI(NRM)
  365.           ENDIF
  366.         ENDIF
  367.         IF(ID.EQ.7)THEN
  368. C  INTERIOR PARTION WALLS OR LVG SPC-GARAGE WALL
  369.           TOUT=TI(NRM)
  370.           IF(NZONC.EQ.6)THEN
  371.             TOUT=TGARAG
  372.           ELSE IF(NZON.GT.0)THEN
  373.             TOUT=TI(NZON)
  374.           ENDIF
  375.           TMID=0.5*(TOUT+TI(NRM))
  376.           TMP(1,IZW)=TOUT
  377.           TMP(2,IZW)=TMID
  378.           TMP(3,IZW)=TI(NRM)
  379.           IF(NLM.NE.1)TMP(4,IZW)=TI(NRM)
  380.           IF(IZW.EQ.20.OR.IZW.EQ.21.OR.IZW.EQ.25)THEN
  381.             WRITE(60,*)' STRDAY: IZW,NRM,TMP(1,IZW)= ',IZW,NRM,
  382.      +                 TMP(1,IZW)
  383.             WRITE(60,*)'    TMP(2-4,IZW)= ',TMP(2,IZW),TMP(3,IZW),
  384.      +                 TMP(4,IZW)
  385.             WRITE(60,*)'    TGARAG,TI= ',TGARAG,TI(NRM)
  386.           ENDIF
  387.         ENDIF
  388.         IF(ID.EQ.8)THEN
  389. C                    BASEMENT FLOOR
  390.           IF(IGRND.EQ.0)THEN
  391.             TMID=0.5*(TODAG1+TBAS)
  392.             TMP(1,IZW)=TODAG1
  393.             TMP(2,IZW)=TMID
  394.             TMP(3,IZW)=TBAS
  395.             IF(NLM.NE.1)THEN
  396.               TMP(3,IZW)=TMID
  397.               TMP(4,IZW)=TBAS
  398.             ENDIF
  399.           ENDIF
  400.         ENDIF
  401.         IF(ID.EQ.9)THEN
  402. C   BELOW-GROUND BSMT WALL
  403.           IF(IGRND.EQ.0)THEN
  404.             TMID=0.5*(TODAG2+TBAS)
  405.             TMP(1,IZW)=TODAG2
  406.             TMP(2,IZW)=TMID
  407.             TMP(3,IZW)=TMID
  408.             TMP(4,IZW)=TBAS
  409.           ENDIF
  410.         ENDIF
  411.         IF(ID.EQ.10)THEN
  412. C   ABOVE-GROUND BSMT WALL
  413.           TINSID=.6*(TBAS-TODDB)+TODDB
  414.           TMID=0.5*(TODDB+TINSID)
  415.           TMP(1,IZW)=TODDB
  416.           TMP(2,IZW)=TMID
  417.           TMP(3,IZW)=TINSID
  418.           IF(NLM.NE.1)THEN
  419.             TMP(3,IZW)=TMID
  420.             TMP(4,IZW)=TINSID
  421.           ENDIF
  422.         ENDIF
  423.         WRITE(60,1010)NRM,IZW,ID,(TMP(I,IZW),I=1,4)
  424.   360   CONTINUE
  425.         WRITE(60,1014)(TMP(I,IZT+1),I=1,4)
  426.         IF(NATC.EQ.2)WRITE(60,1016)(TMP(I,IZT+2),I=1,4)
  427.         TRO=TODDB
  428. C-----------DETERMINE INITIAL STATES OF ALL CONTROLS
  429.         CALL TSTATD (3, IAC, IAC1, IBURN, IEFAN,IDBG)
  430. C--------CALCULATE DUCT MODEL CONFIGURATION CONSTANTS
  431.         DO 472 I=1, NZN7
  432.         TZONE (I)=TI(1)
  433. 472     CONTINUE
  434.         CALL DUCTIN(IDBG)
  435. C            
  436.         IF(IMODE.EQ.1.OR.(IMODE.EQ.2.AND.CFMBP.GT.0.))THEN
  437. C   SET INITIAL ABSOLUTE HUMIDITY IN ZONES
  438.           TIM=AVGWV(TI,NROOMS,RWSDCT)
  439.           IPSY=-3
  440.           CALL PSY (IPSY, TIM, TDUM, TDUM, RELHMI,WIM, HDUM)
  441.         ELSE
  442.           WIM=.01
  443.         ENDIF
  444.         DO 361 JT=1,NROOMS
  445.         IPSY= -3
  446.         CALL PSY(IPSY,TI(JT),TDUM,TDUM,RELHMI,WI(JT),HDUM)
  447.   361   CONTINUE        
  448.         RHI=RELHMI
  449.         RHS=RHI
  450.         RHSN=RHI
  451.         TIO=TI(1)
  452.         RHIO=RHI
  453.         WBAS=WI(NZNBAS)
  454.         WBASN=WBAS
  455.         WAC=WIM
  456.         TPL=TI(1)
  457. C----------SET HUMIDIFIER STATES  
  458.         IF(IMODE.EQ.2.AND.CFMBP.GT.0.)CALL HUMDF1 (TI(1))
  459.         FINFB=0.
  460.         TDIR=1.
  461.         IF (IBURN.EQ.1) TDIR=-1.
  462.         RHDIR=100.
  463.         IF (IBURN.EQ.1) RHDIR=-100.
  464. C--------GO THRU NDPRE DAYS BEFORE TAKING DATA (ONLY ONCE WITH SEQ WTHR)
  465.         IF (NSEQW.EQ.0) IREP=0
  466.       END IF
  467. C  * * * * *    END OF MISC CONSTANTS CALCULATION  (W/ ISKIP = 0)
  468. C-----INITIALIZE COUNTERS TO ZERO
  469. C      DO 431 J=1, 21
  470. C         DO 430 I=1, 11
  471. C            COMFTT (I, J)=0.
  472. C 430         CONTINUE
  473. C 431      CONTINUE
  474.       DO 453 IHR=1, 24
  475.          NROUT (IHR)=0
  476.          DO 440 J=1, 12
  477.             ATOUT (J, IHR)=0.
  478. 440         CONTINUE
  479.       DO 441 J=1,3
  480.       HROT(J,IHR)=0.
  481.       HPRT(J,IHR)=0.
  482. 441   CONTINUE
  483.          DO 450 J=1, NHRP
  484.             HRPRT (J, IHR)=0.
  485. 450         CONTINUE
  486.          DO 451 J=1, NHRO
  487.             HROUT (J, IHR)=0.
  488. 451         CONTINUE
  489. 453      CONTINUE
  490.       DO 452 I=1, NHBK
  491.          HBK (I)=0.0
  492. 452      CONTINUE
  493.       IHUM=(1.-.0001*(RHS-SETHS))
  494.       IF (CFMBP.LE.0.0) IHUM=0
  495.       WATER=0.0
  496.       QSPT=0.0
  497.       QWAS=0.0
  498.       QHUMT=0.0
  499.       HUMON=0.0
  500.       ICYCCP=0
  501.       ICYC1=0
  502.       ICYC6=0
  503.       CLOSE(11)
  504.       OPEN(11,FILE='TAPE11',STATUS='UNKNOWN')
  505.       ISWING=0
  506.       CLOSE(1)
  507.       OPEN(1,FILE='TAPE1',STATUS='UNKNOWN')
  508.       IRH=0
  509.       INC=0
  510.       LINES=0
  511.       TONMAX=0.0
  512.       TIMAX=0.0
  513.       TIMAXN=0.0
  514.       TIMIN=999.0
  515.       MPRINT=1
  516.       IF (NINC.EQ.0) MPRINT=0
  517.       IF ((MPRINT.NE.0) .OR. (IDEBUG.GT.0)) WRITE(60, 2270)
  518.       IF (ISKIP.EQ.0) THEN
  519.          VENCRV=VENCRW*VOLCRW*CPAIR
  520.          DTCR=0.
  521.          IF (ICRW.EQ.1) DTCR=DTIM2/(CPAIR*VOLCRW)
  522.       END IF
  523. C-----CHANGE TIME INCREMENT TO INNER LOOP VALUE
  524.       DTIME=DTIM2
  525.       IF (ISKIP.EQ.0) THEN
  526. C
  527.          TWRT=TBAS
  528.          TWRTB=TBAS
  529.          TWSP=TBAS
  530.          TWSPB=TBAS
  531. C
  532. C--------CALC TIME CONST VALUES
  533.          CALL TSTATD (4, IAC, IAC1, IBURN, IEFAN, IDBG)
  534.          TCRH=0.0
  535.          IF (CFMBP.GT.0.0) TCRH=DTIME/HSTC
  536.          ENDT=HRDY - .5*DTIME
  537.       END IF
  538.       RETURN
  539. C
  540.   500 FORMAT(1X,10(A7,I2,A3))
  541.   501 FORMAT(1X,(10F12.4))
  542.   504 FORMAT(1X///)
  543. 1000  FORMAT (/' INITIAL STRUCTURE TEMPERATURES...')
  544. 1010  FORMAT (1X,'NRM,IZW,ID= ',3I5,' NODE TEMPS(1-4)= ',4G13.5)
  545.  1014 FORMAT(15X,'ROOF TEMPS(ATTIC NO 1)= ',4G13.5)
  546.  1016 FORMAT(15X,'ROOF TEMPS(ATTIC NO 2)= ',4G13.5)
  547. 1020  FORMAT (' ERROR...DUPLICATE GARAGE MODELS SPECIFIED')
  548. C-----INPUT DATA PRINTING
  549. 2210  FORMAT (///'  WEATHER DATA FOR MONTH', I3, '=', A3, 5X, A8,
  550.      1   ' (WSHADE=', F5.2, ')', //,
  551.      2   30X, 4 ('WALL', 8X), 'ROOF', 8X, 'WINDOW', /,
  552.      3   ' HOUR DRY BULB    HUMIDITY    SOLAR(1)    SOLAR(2)    ',
  553.      4   'SOLAR(3)    SOLAR(4)    SOLAR(5)    SOLAR(6)    SEN. LOAD   ',
  554.      5   'LAT. LOAD', /)
  555. 2211  FORMAT (/' SOLAR DATA AND INTERNAL LOADS. (WSHADE=', F5.2, ')', //
  556.      1   8X, 'SOLAR(1)    SOLAR(2)    SOLAR(3)    ',
  557.      2   'SOLAR(4)    SOLAR(5)    SOLAR(6)    SEN. LOAD   LAT. LOAD', /,
  558.      3   (I4, 1X, 8G12.4))
  559. C 2212 FORMAT(/' SOLAR(',I2,')   SOLAR(',I2,')  SOLAR(',I2,')  SOLAR(',
  560. C    +I2,')   SOLAR(',I2,')  SOLAR(',I2,')   SOLAR(',I2,')  SOLAR(',
  561. C    +I2,')   SOLAR(',I2,')'/(2X,10G12.4))
  562. 2220  FORMAT (I4, 1X, 10G12.4)
  563. C-----ITERATION PRINTING
  564. 2270  FORMAT (/// T6, 'TIME', T15, 'TODDB', T28, 'TI(1)', T37, 'RHI',
  565.      1   T48, 'TPL', T56, 'TSUP', T65, 'TRETB', T76, 'TBAS', T85,
  566.      2   'TATTC', T95, 'TFLUE', 3X, 'IAC IBURN IBLOW IHON EXCESS', //)
  567.       END
  568.