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 / TVD.FOR < prev    next >
Text File  |  1991-08-16  |  2KB  |  81 lines

  1.       SUBROUTINE TVD
  2. C
  3. C  COMPUTE VEL HEAD LOSS COEF FOR THERMAL VENT DAMPER
  4. C
  5. CMDK BLK10
  6. CMDK BLKTVD
  7. C
  8. C  POPEN     OPENING PERIOD,SEC
  9. C  PCLOSE    CLOSING PERIOD,SEC
  10. C  RCLOSE    VEL HEAD LOSS WITH TVD CLOSED
  11. C  ROPEN     VEL HEAD LOSS WITH TVD OPEN
  12. C  TCYCVD    CYCLE TIME FROM GAS VALVE ON OR OFF,HR
  13. C  IBRNVD   =0  GAS VALVE OFF         =1  GAS VALVE ON
  14. C
  15. C
  16. C-----THERMAL VENT DAMPER SUBMODEL
  17. C              (SUPPLIES DIMENSIONLESS HEAD LOSS
  18. C               COEFFICIENT AS A FUNCTION OF TIME
  19. C               FOLLOWING FURNACE ON/OFF EVENTS.)
  20. C
  21.       DATA NJAN/120/,NTIM/120/
  22. C  NRDF1 IS ZERO FOR FIRST CALL OF TVD
  23.       IF(NRDF1.GT.0)GO TO 100
  24.       POP=POPEN/3600.
  25.       PCL=PCLOSE/3600.
  26.       IBRNLS=0
  27.       RLAST=RCLOSE
  28.       AK1=(-1.)*ALOG(RCLOSE/ROPEN)/POP
  29.       AK2=ALOG(RCLOSE/ROPEN)/PCL
  30.       C1=1./ALOG(RCLOSE/ROPEN)
  31.   100 IF(IBRNLS.LT.1.AND.IBRNVD.LT.1) GO TO 1450
  32.       IF(IBRNLS.LT.1.AND.IBRNVD.GE.1) GO TO 1310
  33.       IF(IBRNLS.GE.1.AND.IBRNVD.LT.1) GO TO 1320
  34.       IF(IBRNLS.GE.1.AND.IBRNVD.GE.1) GO TO 1400
  35. C  GAS VALVE WAS OFF AND IS NOW ON
  36.  1310 IF(RLAST.NE.RCLOSE)THEN
  37. C  TVD DIDNT CLOSE COMPLETELY BEFORE GAS VALVE CAME BACK ON
  38.           DTM=POP*ALOG(RCLOSE/RLAST)*C1
  39.           GO TO 1400
  40.       ELSE
  41. C   TVD CLOSED COMPLETELY BEFORE GAS VALVE CAME BACK ON
  42.           DTM=0.
  43.           GO TO 1400
  44.       ENDIF
  45. C   GAS VALVE WAS ON AND IS NOW OFF
  46.  1320 IF(NTIM.LE.0)NJAN=0
  47.       NTIM=1
  48.       IF(RLAST.NE.ROPEN)THEN
  49. C   TFD DIDNT OPEN COMPLETELY BEFORE GAS VALVE WENT OFF
  50.           DTM=PCL*ALOG(RLAST/ROPEN)*C1
  51.           GO TO 1450
  52.       ELSE
  53. C   TVD OPENED COMPLETELY BEFORE GAS GAVLE WENT OFF
  54.           DTM=0.
  55.           GO TO 1450
  56.       ENDIF
  57. C  GAS VALVE ON
  58.  1400 DTIM=TCYCVD + DTM
  59.       IF(DTIM.LE.POP)THEN
  60.           R=RCLOSE*EXP(AK1*DTIM)
  61.       ELSE
  62.           R=ROPEN
  63.       ENDIF
  64.       GO TO 1500
  65. C  GAS VALVE OFF
  66.  1450 DTIM=TCYCVD + DTM
  67.       IF(DTIM.LE.PCL)THEN
  68.           R=ROPEN*EXP(AK2*DTIM)
  69.       ELSE
  70.           R=RCLOSE
  71.       ENDIF
  72.  1500 IBRNLS=IBRNVD
  73.       RLAST=R
  74. C   VHLTFD IS VEL HEAD LOSS FOR TFD
  75.       VHLTVD=R
  76.       NJAN=NJAN+1
  77.       IF(NJAN.LT.100)WRITE(60,500)TCYCVD,IBRNVD,VHLTVD
  78.   500 FORMAT(1X,'TCYCVD,IBRNVD,VHLTVD= ',F12.5,I5,F7.1)
  79.       RETURN
  80.       END
  81.