C C C MODEL OF PERFECT THREE-WAY VALVE C C CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C C SAMPLE INPUT AND OUTPUT VALUES C C PARAMETERS SAMPLE VALUES C NONE C C INPUTS C XIN(1) T1 73.65 C XIN(2) TSET 68.65 C XIN(3) T2 40.00 C XIN(4) dM2 2.384 C C OUTPUTS C OUT(1) TW: water temperature 68.65 C OUT(2) dM1: water mass flow rate 2.03 C CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC ! This component has been assigned Type Number 209. If that number conflicts with ! another user Type number, you will need to change it and recompile the appropriate ! dll. SUBROUTINE TYPE209(TIME,XIN,OUT,T,DTDT,PAR,INFO,ICNTRL,*) !DEC$ATTRIBUTES DLLEXPORT :: TYPE209 C DOUBLE PRECISION XIN,OUT DIMENSION XIN(4),OUT(2),INFO(15) C ! Set the version information for TRNSYS IF (INFO(7).EQ.-2) THEN INFO(12) = 15 RETURN 1 ENDIF C INPUTS C C HOT WATER TEMPERATURE T1=XIN(1) C TEMPERATURE SET POINT TW=XIN(2) C RETURN OR "COLD" WATER TEMPERATURE T2=XIN(3) C WATER MASSFLOWRATE XM2=XIN(4) C IF(TW.GE.T1) THEN C SET POINT HIGHER THAN HOT WATER TEMPERATURE XM1=XM2 TW=T1 C ELSE IF(TW.LE.T2) THEN C SET POINT LOWER THAN RETURN OR COLD WATER TEMPERATURE XM1=0. TW=T2 C ELSE XM1=XM2*(TW-T2)/(T1-T2) ENDIF C ENDIF C C OUTPUTS C C ACTUAL WATER TEMPERATURE OUT(1)=TW C HOT WATER MASSFLOW RATE OUT(2)=XM1 C RETURN 1 END