SUBROUTINE TYPE53(TIME,XIN,OUT,T,DTDT,PAR,INFO,ICNTRL,*) C*********************************************************************** C* Copyright ASHRAE. Toolkit for HVAC System Energy Calculations C*********************************************************************** C* SUBROUTINE: MIXISIM C* C* LANGUAGE: FORTRAN 77 C* C* PURPOSE: Calculate the mass flow rate of two C* entering streams in a flow mixer with C* the leaving mass flow rate and the C* temperatures of all the streams known. C*********************************************************************** C* INPUT VARIABLES DESCRIPTION(UNITS) SAMPLE VALUES C* XIN(1) MLvg Mass flow rate of mixed stream(kg/s) 3.65 C* XIN(2) TLvg Temperature of mixed stream(C) 11.7147 C* XIN(3) T1Ent Entering temperature of stream 1(C) 1.67 C* XIN(4) T2Ent Entering temperature of stream 2(C) 23.89 C* C* OUTPUT VARIABLES C* OUT(1) M1Ent Mass flow rate of stream 1(kg/s) 1.9999 C* OUT(2) M2Ent Mass flow rate of stream 2(kg/s) 1.65001 C* OUT(3)ErrStat Error flag (0=ok, 1=error)(-) 0.0 C*********************************************************************** C MAJOR RESTRICTIONS: Specific heats equal for two streams C C DEVELOPER: Shauna Gabel C Michael J. Brandemuehl, PhD, PE C University of Colorado at Boulder C C DATE: January 1, 1992 C C INCLUDE FILES: None C SUBROUTINES CALLED: None C FUNCTIONS REQUIRED: None C C REVISION HISTORY: None C C REFERENCE: None C*********************************************************************** C INTERNAL VARIABLES C deltaT Temperature difference of entering streams (C) C small Small number used in place of zero C*********************************************************************** INTEGER Errstat, INFO, IOPT, NI, NP, ND DOUBLE PRECISION XIN, OUT DIMENSION XIN(4), OUT(3), INFO(15) CHARACTER*3 YCHECK(4), OCHECK(3) DATA small/1.E-9/ DATA YCHECK/'MF2','TE1','TE1','TE1'/ DATA OCHECK/'MF2','MF2','DM1'/ MLVG = XIN(1) TLVG = XIN(2) T1ENT = XIN(3) T2ENT = XIN(4) ErrStat = 0 IOPT = -1 NI = 4 !CORRECT NUMBER OF INPUTS NP = 0 !CORRECT NUMBER OF PARAMETERS ND = 0 !CORRECT NUMBER OF DERIVATIVES IF(INFO(7).EQ.-1) THEN CALL TYPECK(IOPT,INFO,NI,NP,ND) C CHECKS TO SEE IF USER'S INFO MATCHES CORRECT NUMBERS CALL RCHECK(INFO,YCHECK,OCHECK) C CHECKS TO SEE IF INPUT AND OUTPUT UNITS MATCH ENDIF deltaT = T2Ent-T1Ent IF(ABS(deltaT).LT.small) deltaT=small C1*** Calculate the mass flow rate of stream 1 M1Ent = (T2Ent-TLvg)/deltaT * MLvg C1*** Calculate the mass flow rate of stream 2 M2Ent = MLvg-M1Ent OUT(1) = M1ENT OUT(2) = M2ENT OUT(3) = ERRSTAT RETURN 1 END