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
/
TCONC.FOR
< prev
next >
Wrap
Text File
|
1992-04-17
|
3KB
|
124 lines
SUBROUTINE TCONC(DEGRAD,DTIM1)
C
C CALCULATE CONSTANTS USED TO CALCULATE LUMP TEMPERATURES
C BY FINITE DIFFERENCE EQNS
C
C LINK THESE CALCULATIONS TO CONSTRUCTS, SINCE NO. OF CONSTANTS ARE
C A FUNCTION OF NO. OF LUMPS OR NODES WHICH IS SPECIFIED IN CONSTRUCT
C
C - - - PARAMETER CONSTANTS
CMDK NKONST
CMDK NWL
CMDK NZN
CMDK NZW
PARAMETER (FMODMN=30.)
C
C - - - COMMON BLOCKS
C
CMDK CNSTRK
CMDK ENCBK1
CMDK ENCBLK
CMDK IRDFQ
CMDK IZZQ
CMDK STRUCA
CMDK TCNBLK
CMDK TCONCB
C
DO 10 I=1,15
10 KONI(I)=0
NKON=0
C
C FIND CONSTRUCT NOS USED IN THIS SIMULATION
DO 100 J=1,NROOMS
NRM=NRMA(J)
N2=NWALLA(NRM)
C
DO 90 K2=1,N2
IZW=NENC(NRM,K2)
KON=KONSTA(IZW)
IF(NKON.EQ.0)THEN
KONI(1)=KON
NKON=1
GO TO 90
ENDIF
IFG=0
DO 80 I=1,NKON
IF(KON.EQ.KONI(I))IFG=1
80 CONTINUE
IF(IFG.EQ.0)THEN
NKON=NKON+1
KONI(NKON)=KON
ENDIF
90 CONTINUE
100 CONTINUE
NKON=NKON+1
KONI(NKON)=KONRF(1)
IF(NATC.EQ.2)THEN
NKON=NKON+1
KONI(NKON)=KONRF(2)
ENDIF
C
C NOW CALC CONSTANTS, TCON, FOR EACH CONSTRUCT
DO 150 IK=1,NKON
KON=KONI(IK)
NLM=NLMP(KON)
C
VK1=WK(1,KON)
VX1=WX(1,KON)
VRHO1=WRHO(1,KON)
VCP1=WCP(1,KON)
IF(NLM.EQ.3)THEN
VK2=WK(2,KON)
VX2=WX(2,KON)
VRHO2=WRHO(2,KON)
VCP2=WCP(2,KON)
VK3=WK(3,KON)
VX3=WX(3,KON)
VRHO3=WRHO(3,KON)
VCP3=WCP(3,KON)
ENDIF
C
IF(NLM.EQ.1)THEN
FRCPX=VRHO1*VCP1*VX1
TCON(1,KON)=8.*DTIM1*(VK1/DEGRAD)/(VX1*FRCPX)
TCON(2,KON)=DTIM1*4./FRCPX
TCON(3,KON)=TCON(1,KON)
C FOURIER MODULUS (MUST BE EQ OR GT 30. FOR STABILITY OF FINITE DIFF CALC
C THIS IS USED IN IWALLS TO CORRECT POSSIBLE INSTABILITY WHICH MAY
C BE EXPERIENCED WITH LIGHTWEIGHT INSULATED BARRIER WALLS BETWN ZONES
C . THE MINIMUM VALUE OF 30. WAS ESTABLISHED BASED ON EXPERIENCE.
FMOD=VX1**2*VRHO1*VCP1/(VK1*DTIM1)
IF(FMOD.LT.FMODMN)THEN
NKSTAB=NKSTAB+1
IF(NKSTAB.GT.5)STOP 'TCONC:INCR DIM ON KONSTB AND NRATTM'
RATTM=FMODMN/FMOD
NRATTM(NKSTAB)=INT(RATTM)
IF(FLOAT(NRATTM(NKSTAB)).LT.RATTM)
+ NRATTM(NKSTAB)=NRATTM(NKSTAB)+1
KONSTB(NKSTAB)=KON
WRITE(60,500)KON,NRATTM(NKSTAB),FMOD,FMODMN
ENDIF
ENDIF
IF(NLM.EQ.3)THEN
FRCPX1=VRHO1*VCP1*VX1
FRCPX2=VRHO2*VCP2*VX2
FRCPX3=VRHO3*VCP3*VX3
TCON(1,KON)=DTIM1*2.*VK1/(VX1*FRCPX1)
TCON(2,KON)=DTIM1*2./FRCPX1
FR12=0.5*(FRCPX1+FRCPX2)
TCON(3,KON)=DTIM1*VK1/(VX1*FR12)
VKD=VK2/DEGRAD
TCON(4,KON)=DTIM1*VKD/(VX2*FR12)
FR23=0.5*(FRCPX2+FRCPX3)
TCON(5,KON)=DTIM1*VKD/(VX2*FR23)
TCON(6,KON)=DTIM1*VK3/(VX3*FR23)
TCON(7,KON)=DTIM1*2.*VK3/(VX3*FRCPX3)
TCON(8,KON)=DTIM1*2./FRCPX3
ENDIF
150 CONTINUE
RETURN
500 FORMAT(1H0,10(1H$),'STABILITY CORRECTION IMPLEMENTED FOR',
+' CONSTRUCT NO. ',I4/11X,'WALL TEMP CALC REPEATED ',I4,
+' TIMES IN IWALLS. FOURIER MOD= ',F8.1,' CF MIN OF ',F8.1)
END