;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; LISP global- and models-descriptions for IDA Modeller version 3.0 ;; Generated by IDA NMF Translator V1.633. ;; Date/Time : July 29, 2002; 13:01:08 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (:quantity-types (generic | | cross) (angle |Deg| cross) (angler |rad| cross) (area |m2| cross) (caprate |W/K| thru) (control |dimless| cross) (density |kg/m3| cross) (enthalpy |J/kg| cross) (factor |dimless| cross) (fractflow_m |g/s| thru) (fractflow_h |mg/h| thru) (fractflow_mh |g/h| thru) (fractflow_y |mg/s| thru) (fractflow_n |µg/s| thru) (fractflow_yh |mg/h| thru) (fraction |kg/kg| cross) (fraction_m |g/kg| cross) (fraction_y |mg/kg| cross) (fraction_n |µg/kg| cross) (frequency |1/s| cross) (heatcap |J/K| cross) (heatcapa |J/(K m2)| cross) (heatcapm |J/(kg K)| cross) (heatcond |W/K| cross) (heatcondl |W/(m K)| cross) (heatconda |W/(m2 K)| cross) (heatflux |W| thru) (heatflux_k |kW| thru) (heatflux_m |MW| thru) (heatres |K/W| cross) (heatresa |(m2 K)/W| cross) (hour |h| cross) (humflow |kg/s| thru) (humflow_m |g/s| thru) (humratio |kg/kg| cross) (humratio_m |g/kg| cross) (length |m| cross) (mass |kg| cross) (massflow |kg/s| thru) (massflow_h |kg/h| thru) (massflow_y |mg/s| thru) (numflow_h |1/h| thru) (numl_k |1/km| cross) (onoff |dimless| thru) (pressure |Pa| cross) (pressure_k |kPa| cross) (radiation |W| thru) (radiationa |W/m2| thru) (rada |W/m2| cross) (temp |Deg-C| cross) (temp_f |Deg-F| cross) (temp_k |K| cross) (velocity |m/s| thru) (velocity_k |km/h| thru) (vel |m/s| cross) (viscdyn |kg/(m s)| thru) (visckin |m2/s| thru) (volume |m3| cross) (volflow |m3/s| thru) (volflow_h |m3/h| thru) (volfract |kg/kg| cross) (volfract_m |g/m3| cross) (volfract_y |mg/m3| cross) (volfract_n |µg/m3| cross) (current |A| thru) (elcap |F| cross) (elinduct |H| cross) (elres |Ohm| cross) (power |W| thru) (voltage |V| cross) (volflow_m |l/s| thru) (elpowercons |W| cross) (primpowercons |W| cross) (power_k |kW| cross) ) (:link-types (GENERIC) (Q HEATFLUX) (QQQ HEATFLUX HEATFLUX HEATFLUX) (T TEMP) (Z FACTOR) (X_Y FRACTION_Y) (XF_YH FRACTFLOW_YH) (HQ ENTHALPY HEATFLUX) (TQ TEMP HEATFLUX) (TQRR TEMP HEATFLUX RADIATION RADIATION) (TR TEMP RADIATIONA) (RR RADIATIONA RADIATIONA) (RRRR RADIATIONA RADIATIONA RADIATIONA RADIATIONA) (RRRWW RADIATION RADIATION RADIATION ANGLE ANGLE) (M MASSFLOW) (MT MASSFLOW TEMP) (PM PRESSURE MASSFLOW) (PMT PRESSURE MASSFLOW TEMP) (PMTQ PRESSURE MASSFLOW TEMP HEATFLUX) (PVFTX_Y PRESSURE VOLFLOW TEMP FRACTION_Y) (PVFTXX_YN PRESSURE VOLFLOW TEMP VOLFRACT_Y VOLFRACT_N) (V VELOCITY) (VF VOLFLOW) (W HUMRATIO) (XFXF_MHMH FRACTFLOW_MH FRACTFLOW_MH) (MOISTAIR PRESSURE MASSFLOW TEMP HUMRATIO) (VENTX PRESSURE MASSFLOW_H TEMP FRACTION_Y) (BIDIRFLOW PRESSURE MASSFLOW ENTHALPY HEATFLUX) (BIDIRX PRESSURE MASSFLOW_H TEMP HEATFLUX FRACTION_Y FRACTFLOW_YH) (HEATSUN TEMP HEATFLUX RADIATIONA RADIATIONA) (CONTROLLINK CONTROL) (CONTROLLIMIT CONTROL CONTROL) (UI VOLTAGE CURRENT) (UNIAIR PRESSURE MASSFLOW TEMP FRACTION_Y HUMRATIO) (BIDIRAIR PRESSURE MASSFLOW TEMP HEATFLUX FRACTION_Y FRACTFLOW_Y HUMRATIO HUMFLOW) (CLIMDATA PRESSURE TEMP FRACTION_Y FACTOR ANGLE VEL RADA RADA) (CLIM2FACE PRESSURE TEMP FRACTION_Y HUMRATIO TEMP TEMP ANGLE VEL RADA RADA ANGLE ANGLE) (FACE2WALL TEMP TEMP TEMP HEATCONDA RADA RADA RADA) (FACE2WIND TEMP TEMP TEMP HEATCONDA RADA RADA RADA ANGLE ANGLE ANGLE) (WIND2AMB HEATFLUX HEATFLUX HEATFLUX) (POW_K POWER_K) (P PRESSURE) (POW ELPOWERCONS) (S FREQUENCY) (VF_M VOLFLOW_M) (SPEED VEL) ) ;;; ;;;CONSTANTS ;;; ;; (setf abs_zero -273.16) ;; Deg-C ;; (setf boltz 0.0000000567) ;; W/(m2 K4) ;; (setf cp_air 1006.0) ;; J/(kg K) ;; (setf cp_air_m 0.001006) ;; MJ/(kg K) ;; (setf cp_vap 1805.0) ;; J/(kg K) ;; (setf cp_wat 4187.0) ;; J/(kg K) ;; (setf cv_air 720.0) ;; J/(kg K) ;; (setf g 9.81) ;; m/s2 ;; (setf gascon 287.0) ;; ;; (setf hf_vap 2501000.0) ;; J/kg ;; (setf lambda_air 0.0243) ;; W/(m K) ;; (setf lambda_wat 0.554) ;; W/(m K) ;; (setf p_atm_0 101300.0) ;; Pa ;; (setf pi 3.1415927) ;; dimless ;; (setf prandtl_air 0.71) ;; dimless ;; (setf rho_air 1.2) ;; kg/m3 ;; (setf rho_wat 1000.0) ;; kg/m3 ;; (setf visc_wat 0.001) ;; kg/(m s) ;; (setf small 0.00000000000000000001) ;; ;; (setf big 100000000000000000000.0) ;; ;;; ;;;COMPONENTS ;;; ;;; ;;; model ADDER ;;; ((template :n ADDER :c :eo :d "Weighted Sum of inputs, plus offset Sends sum to multiple output links") ;; :model-parameters (:par :t system-parameter :n N_OUT :x SMP :v 1 :kv (INTEGER 1 *) :f #X29 :d "Number of OutSignal links") (:par :t system-parameter :n N_IN :x SMP :v 2 :kv (INTEGER 1 *) :f #X29 :d "Number of InSignal links") ;; :parameters (:par :t FACTOR :n OFFSET :x S_P :v 0.0 :kv FREAL :f #X21 :d "Adding parameter") (:par :t FACTOR :n COEFF :x S_P :ie 1.0 :kv FREAL :f #X21 :sp (N_IN) :d "Scaling insignal coefficients") ;; :variables (:var :t GENERIC :n OUTSIGNAL :x U :iv 0.0 :kv FREAL :f #X2 :d "Output signal") (:var :t GENERIC :n INSIGNAL :x X :ie 0.0 :kv FREAL :f #X1 :sp (N_IN) :d "Input signals") ;; :interfaces (:int :t GENERIC :n INSIGNALLINK :v (INSIGNAL) :dir (NIL) :sp (N_IN)) (:int :t GENERIC :n OUTSIGNALLINK :v (OUTSIGNAL) :dir (NIL) :sp (N_OUT))) ;;;;;; ;;;;;;end of model ADDER ;;;;;; ;;; ;;; model ADDERA ;;; ((template :n ADDERA :c :ceo :d "Weighted Sum of inputs, plus offset Sends sum to multiple output links") ;; :model-parameters (:par :t system-parameter :n N_OUT :x SMP :v 1 :kv (INTEGER 1 *) :f #X29 :d "Number of OutSignal links") (:par :t system-parameter :n N_IN :x SMP :v 2 :kv (INTEGER 1 *) :f #X29 :d "Number of InSignal links") ;; :parameters (:par :t FACTOR :n OFFSET :x S_P :v 0.0 :kv FREAL :f #X21 :d "Adding parameter") (:par :t FACTOR :n COEFF :x S_P :ie 1.0 :kv FREAL :f #X21 :sp (N_IN) :d "Scaling insignal coefficients") ;; :variables (:var :t GENERIC :n OUTSIGNAL :x U :iv 0.0 :kv FREAL :f #X2 :d "Output signal") (:var :t GENERIC :n INSIGNAL :x X :ie 0.0 :kv FREAL :f #X1 :sp (N_IN) :d "Input signals") ;; :interfaces (:int :t GENERIC :n INSIGNALLINK :v (INSIGNAL) :dir (NIL) :sp (N_IN)) (:int :t GENERIC :n OUTSIGNALLINK :v (OUTSIGNAL) :dir (NIL) :sp (N_OUT))) ;;;;;; ;;;;;;end of model ADDERA ;;;;;; ;;; ;;; model ADWALL ;;; ((template :n ADWALL :c :eo :d "ADiabatic WALL, represented by an RC-net w one capacity.") ;; :model-parameters (:par :t system-parameter :n N :x SMP :v 1 :kv (INTEGER 1 *) :f #X29 :d "Number of wall layers") ;; :parameters (:par :t AREA :n A :x S_P :v 7.8 :kv (FREAL (0.0)) :f #X21 :d "wall area") (:par :t LENGTH :n L :x S_P :ie 0.03 :kv (FREAL (0.0)) :f #X21 :sp (N) :d "layer lenght") (:par :t HEATCONDL :n LAMBDA :x S_P :ie 0.22 :kv (FREAL (0.0)) :f #X21 :sp (N) :d "layer heat conductivity") (:par :t DENSITY :n RHO :x S_P :ie 970.0 :kv (FREAL (0.0)) :f #X21 :sp (N) :d "layer density") (:par :t HEATCAP :n CP :x S_P :ie 1090.0 :kv (FREAL (0.0)) :f #X21 :sp (N) :d "layer spec heat") ;; :variables (:var :t TEMP :n TA :x DER :iv 27.0 :kv (FREAL -273.16) :f #X6 :d "Temp at capacity a") (:var :t TEMP :n TPA :x U :iv 27.0 :kv (FREAL -273.16) :f #X2 :d "Temp at term_a") (:var :t HEATFLUX :n QA :x X :iv -17.0 :kv FREAL :f #X9 :d "Influx term_a") ;; :interfaces (:int :t TQ :n TERM_A :v (TPA QA) :dir (NIL -1))) ;;;;;; ;;;;;;end of model ADWALL ;;;;;; ;;; ;;; model AIRFLOWREP ;;; ((template :n AIRFLOWREP :c :ceo :d "Flow report; add air flows in groups In/Out thru Internal/External walls") ;; :model-parameters (:par :t system-parameter :n N_IN1 :x SMP :v 0 :kv (INTEGER 0 *) :f #X29 :d "Number of In flows thru Internal wall") (:par :t system-parameter :n N_IN2 :x SMP :v 0 :kv (INTEGER 0 *) :f #X29 :d "Number of Out flows thru Internal wall") (:par :t system-parameter :n N_IN3 :x SMP :v 0 :kv (INTEGER 0 *) :f #X29 :d "Number of In flows thru External wall") (:par :t system-parameter :n N_IN4 :x SMP :v 0 :kv (INTEGER 0 *) :f #X29 :d "Number of Out flows thru External wall") ;; :parameters ;; :variables (:var :t VOLFLOW_M :n INTWIN :x U :iv 0.0 :kv FREAL :f #XA :d "") (:var :t VOLFLOW_M :n INTWOUT :x U :iv 0.0 :kv FREAL :f #XA :d "") (:var :t VOLFLOW_M :n EXTWIN :x U :iv 0.0 :kv FREAL :f #XA :d "") (:var :t VOLFLOW_M :n EXTWOUT :x U :iv 0.0 :kv FREAL :f #XA :d "") (:var :t VOLFLOW_M :n INTWINV :x X :ie 0.0 :kv FREAL :f #X9 :sp (N_IN1) :d "") (:var :t VOLFLOW_M :n INTWOUTV :x X :ie 0.0 :kv FREAL :f #X9 :sp (N_IN2) :d "") (:var :t VOLFLOW_M :n EXTWINV :x X :ie 0.0 :kv FREAL :f #X9 :sp (N_IN3) :d "") (:var :t VOLFLOW_M :n EXTWOUTV :x X :ie 0.0 :kv FREAL :f #X9 :sp (N_IN4) :d "") ;; :interfaces (:int :t VF_M :n IWI :v (INTWIN) :dir (-1)) (:int :t VF_M :n IWO :v (INTWOUT) :dir (1)) (:int :t VF_M :n EWI :v (EXTWIN) :dir (-1)) (:int :t VF_M :n EWO :v (EXTWOUT) :dir (1)) (:int :t VF_M :n IWIV :v (INTWINV) :dir (-1) :sp (N_IN1)) (:int :t VF_M :n IWOV :v (INTWOUTV) :dir (-1) :sp (N_IN2)) (:int :t VF_M :n EWIV :v (EXTWINV) :dir (-1) :sp (N_IN3)) (:int :t VF_M :n EWOV :v (EXTWOUTV) :dir (-1) :sp (N_IN4))) ;;;;;; ;;;;;;end of model AIRFLOWREP ;;;;;; ;;; ;;; model AIRMERGE ;;; ((template :n AIRMERGE :c :eo :d "n-way merge of air streams. Unidirectional flow. No pressure drop.") ;; :model-parameters (:par :t system-parameter :n NIN :x SMP :v 1 :kv (INTEGER 1 *) :f #X29 :d "Number of inlet streams") ;; :parameters (:par :t FACTOR :n MULT :x S_P :ie 1.0 :kv (FREAL 0.0) :f #X21 :sp (NIN) :d "Inlet stream multiplier, see abstract") ;; :variables (:var :t MASSFLOW :n MOUT :x U :iv 0.026 :kv (FREAL 0.0) :f #XA :d "Leaving dry air massflow") (:var :t TEMP :n TOUT :x U :iv 16.0 :kv (FREAL -273.16) :f #X2 :d "Temp of leaving air") (:var :t HUMRATIO :n WOUT :x U :iv 0.006 :kv (REAL 0.0 1.0) :f #X2 :d "Hum ratio of leaving air") (:var :t FRACTION_Y :n XOUT :x U :iv 594.0 :kv (FREAL 0.0) :f #X2 :d "Pollutant fraction leaving") (:var :t PRESSURE :n P :x X :iv 1375.0 :kv FREAL :f #X1 :d "Node air pressure") (:var :t MASSFLOW :n M_IN :x X :ie 0.026 :kv (FREAL 0.0) :f #X9 :sp (NIN) :d "Entering dry air massflow") (:var :t TEMP :n T :x X :ie 16.0 :kv (FREAL -273.16) :f #X1 :sp (NIN) :d "Temp of entering air") (:var :t HUMRATIO :n W :x X :ie 0.006 :kv (REAL 0.0 1.0) :f #X1 :sp (NIN) :d "Hum ratio of entering air") (:var :t FRACTION_Y :n X :x X :ie 594.0 :kv (FREAL 0.0) :f #X1 :sp (NIN) :d "Pollutant fraction entering") ;; :interfaces (:int :t UNIAIR :n OUTLET :v (P MOUT TOUT XOUT WOUT) :dir (NIL 1 NIL NIL NIL)) (:int :t UNIAIR :n INLET :v (P M_IN T X W) :dir (NIL -1 NIL NIL NIL) :sp (NIN))) ;;;;;; ;;;;;;end of model AIRMERGE ;;;;;; ;;; ;;; model AIRSHUNT ;;; ((template :n AIRSHUNT :c :eo :d "Recirculating AirShunt w on/off control.") ;; :model-parameters ;; :parameters ;; :variables (:var :t MASSFLOW :n MFRESH :x U :iv 3.2 :kv (FREAL 0.0) :f #XA :d "Fresh air massflow rate") (:var :t MASSFLOW :n MEXHOUT :x U :iv 3.2 :kv (FREAL 0.0) :f #XA :d "Leaving exhaust massflow rate") (:var :t TEMP :n TSUPOUT :x U :iv 15.0 :kv (FREAL -273.16) :f #X2 :d "Leaving supply temp.") (:var :t HUMRATIO :n WSUPOUT :x U :iv 0.01 :kv (REAL (0.0) 1.0) :f #X2 :d "Humidity ratio of leaving supply") (:var :t FRACTION_Y :n XSUPOUT :x U :iv 594.0 :kv (FREAL 0.0) :f #X2 :d "Pollutant fraction supply air") (:var :t PRESSURE :n PSUP :x X :iv 1325.0 :kv FREAL :f #X1 :d "Pressure of entering and leaving supply air") (:var :t PRESSURE :n PEXH :x X :iv 1325.0 :kv FREAL :f #X1 :d "Pressure of entering and leaving exhaust air") (:var :t MASSFLOW :n MSUP :x X :iv 3.2 :kv (FREAL 0.0) :f #X9 :d "Supply air massflow rate") (:var :t MASSFLOW :n MEXH :x X :iv 3.2 :kv (FREAL 0.0) :f #X9 :d "Incoming exhaust massflow rate") (:var :t TEMP :n TSUPIN :x X :iv 10.0 :kv (FREAL -273.16) :f #X1 :d "Entering supply temp.") (:var :t TEMP :n TEXH :x X :iv 25.0 :kv (FREAL -273.16) :f #X1 :d "Entering exhaust temp.") (:var :t HUMRATIO :n WSUPIN :x X :iv 0.01 :kv (REAL (0.0) 1.0) :f #X1 :d "Humidity ratio of entering supply") (:var :t HUMRATIO :n WEXH :x X :iv 0.01 :kv (REAL (0.0) 1.0) :f #X1 :d "Humidity ratio of entering exhaust") (:var :t FRACTION_Y :n XSUPIN :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "Pollutant fraction fresh air") (:var :t FRACTION_Y :n XEXH :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "Pollutant fraction exhaust air") (:var :t FACTOR :n FRESHON :x X :iv 1.0 :kv (FREAL 0.0) :f #X1 :d "Fresh air On / Off") (:var :t MASSFLOW :n MRETURN :x LOC :iv 3.2 :kv (FREAL 0.0) :f #X148 :d "Return massflow rate") (:var :t ENTHALPY :n HSUPIN :x LOC :iv 10000.0 :kv FREAL :f #X140 :d "Incoming supply enthalpy") (:var :t ENTHALPY :n HSUPOUT :x LOC :iv 10000.0 :kv FREAL :f #X140 :d "Leaving supply enthalpy") (:var :t ENTHALPY :n HEXH :x LOC :iv 30000.0 :kv FREAL :f #X140 :d "Incoming exhaust enthalpy") (:var :t HUMRATIO :n WSUPMAX :x LOC :iv 0.01 :kv (REAL (0.0) 1.0) :f #X140 :d "Max humidity ratio of leaving supply") (:var :t HUMRATIO :n WSUPMIX :x LOC :iv 0.01 :kv (REAL (0.0) 1.0) :f #X140 :d "Humidity ratio of mixed air") ;; :interfaces (:int :t UNIAIR :n SUPIN :v (PSUP MFRESH TSUPIN XSUPIN WSUPIN) :dir (NIL -1 NIL NIL NIL)) (:int :t UNIAIR :n SUPOUT :v (PSUP MSUP TSUPOUT XSUPOUT WSUPOUT) :dir (NIL 1 NIL NIL NIL)) (:int :t UNIAIR :n EXHIN :v (PEXH MEXH TEXH XEXH WEXH) :dir (NIL -1 NIL NIL NIL)) (:int :t UNIAIR :n EXHOUT :v (PEXH MEXHOUT TEXH XEXH WEXH) :dir (NIL 1 NIL NIL NIL)) (:int :t Z :n FRESHCTR :v (FRESHON) :dir (NIL))) ;;;;;; ;;;;;;end of model AIRSHUNT ;;;;;; ;;; ;;; model AIRSPLIT ;;; ((template :n AIRSPLIT :c :eo :d "n-way split of air stream. Unidirectional flow. No pressure drop.") ;; :model-parameters (:par :t system-parameter :n NOUT :x SMP :v 1 :kv (INTEGER 1 *) :f #X29 :d "Number of outlet streams") ;; :parameters (:par :t FACTOR :n MULT :x S_P :ie 1.0 :kv (FREAL 0.0) :f #X21 :sp (NOUT) :d "Outlet stream multiplier, see abstract") ;; :variables (:var :t MASSFLOW :n M_IN :x U :iv 0.024 :kv (FREAL 0.0) :f #XA :d "Entering dry air massflow") (:var :t PRESSURE :n P :x X :iv 1375.0 :kv FREAL :f #X1 :d "Node air pressure") (:var :t TEMP :n T :x X :iv 16.0 :kv (FREAL -273.16) :f #X1 :d "Node air temp") (:var :t HUMRATIO :n W :x X :iv 0.01 :kv (FREAL (0.0)) :f #X1 :d "Node humidity ratio") (:var :t FRACTION_Y :n X :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "Node pollutant fraction") (:var :t MASSFLOW :n MOUT :x X :ie 0.024 :kv (FREAL 0.0) :f #X9 :sp (NOUT) :d "Leaving dry air massflow") ;; :interfaces (:int :t UNIAIR :n INLET :v (P M_IN T X W) :dir (NIL -1 NIL NIL NIL)) (:int :t UNIAIR :n OUTLET :v (P MOUT T X W) :dir (NIL 1 NIL NIL NIL) :sp (NOUT))) ;;;;;; ;;;;;;end of model AIRSPLIT ;;;;;; ;;; ;;; model ASWITCH ;;; ((template :n ASWITCH :c :ceo :d "Switch between n_in input signals. Muliple output links.") ;; :model-parameters (:par :t system-parameter :n N_OUT :x SMP :v 1 :kv (INTEGER 1 *) :f #X29 :d "Number of OutSignal links") (:par :t system-parameter :n N_IN :x SMP :v 1 :kv (INTEGER 1 *) :f #X29 :d "Number of InSignal links") ;; :parameters ;; :variables (:var :t GENERIC :n OUTSIGNAL :x U :iv 0.0 :kv FREAL :f #X2 :d "Output signal") (:var :t GENERIC :n SELECTOR :x X :iv 1.0 :kv (FREAL 1.0) :f #X1 :d "Input select signal") (:var :t GENERIC :n INSIGNAL :x X :ie 0.0 :kv FREAL :f #X1 :sp (N_IN) :d "Input signals") ;; :interfaces (:int :t GENERIC :n SELECTORLINK :v (SELECTOR) :dir (NIL)) (:int :t GENERIC :n INSIGNALLINK :v (INSIGNAL) :dir (NIL) :sp (N_IN)) (:int :t GENERIC :n OUTSIGNALLINK :v (OUTSIGNAL) :dir (NIL) :sp (N_OUT))) ;;;;;; ;;;;;;end of model ASWITCH ;;;;;; ;;; ;;; model BDDAMP ;;; ((template :n BDDAMP :c :eo :d "BiDirectional damper. Linear flow below limit 'dp0', and if LIN.") ;; :model-parameters ;; :parameters (:par :t FACTOR :n CCLOSE :x S_P :v 0.1 :kv (FREAL (0.0)) :f #X21 :d "") (:par :t FACTOR :n COPEN :x S_P :v 10.0 :kv (FREAL (0.0)) :f #X21 :d "") (:par :t PRESSURE :n DP0 :x S_P :v 0.1 :kv (FREAL (0.0)) :f #X21 :d "limit for linear flow") (:par :t LENGTH :n ZR1 :x S_P :v 0.0 :kv (FREAL 0.0) :f #X21 :d "leak height from floor of neighb. 1") (:par :t LENGTH :n ZA1 :x S_P :v 0.0 :kv FREAL :f #X21 :d "absolute floor level of neighb. 1") (:par :t LENGTH :n ZA2 :x S_P :v 0.0 :kv FREAL :f #X21 :d "absolute floor level of neighb. 2") ;; :variables (:var :t MASSFLOW :n M :x U :iv 0.0 :kv FREAL :f #XA :d "massflow through leak") (:var :t HEATFLUX :n Q :x U :iv 0.0 :kv FREAL :f #XA :d "") (:var :t FRACTFLOW_Y :n XF :x U :iv 0.0 :kv FREAL :f #XA :d "fraction moved from zone to system") (:var :t HUMFLOW :n HUMF :x U :iv 0.0 :kv FREAL :f #XA :d "hum. moved by massflow") (:var :t PRESSURE :n P1 :x X :iv 1325.0 :kv (FREAL (0.0)) :f #X1 :d "terminal 1 pressure") (:var :t PRESSURE :n P2 :x X :iv 1324.0 :kv (FREAL (0.0)) :f #X1 :d "terminal 2 pressure") (:var :t TEMP :n T1 :x X :iv 15.0 :kv (FREAL -273.16) :f #X1 :d "temperature 1") (:var :t TEMP :n T2 :x X :iv 15.0 :kv (FREAL -273.16) :f #X1 :d "temperature 2") (:var :t FRACTION_Y :n X1 :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "pollutant fraction") (:var :t FRACTION_Y :n X2 :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "pollutant fraction") (:var :t HUMRATIO :n HUM1 :x X :iv 0.005 :kv (REAL 0.0 1.0) :f #X1 :d "hum. of neighbor 1") (:var :t HUMRATIO :n HUM2 :x X :iv 0.005 :kv (REAL 0.0 1.0) :f #X1 :d "hum. of neighbor 2") (:var :t CONTROL :n POS :x X :iv 0.5 :kv FREAL :f #X1 :d "0 = close 1 = open") (:var :t PRESSURE :n DPDAMP :x LOC :iv 0.0 :kv FREAL :f #X140 :d "eff pressure diff") (:var :t DENSITY :n RHO1 :x LOC :iv 1.2 :kv (REAL 0.5 3.0) :f #X140 :d "density of neighb.1 air") (:var :t DENSITY :n RHO2 :x LOC :iv 1.2 :kv (REAL 0.5 3.0) :f #X140 :d "density of neighb.2 air") (:var :t GENERIC :n C_LIN :x LOC :iv 0.0 :kv FREAL :f #X140 :d "laminar coefficient") (:var :t GENERIC :n C_TURB :x LOC :iv 0.0 :kv FREAL :f #X140 :d "power law coefficient") ;; :interfaces (:int :t BIDIRAIR :n TERMINAL_1 :v (P1 M T1 Q X1 XF HUM1 HUMF) :dir (NIL -1 NIL -1 NIL -1 NIL -1)) (:int :t BIDIRAIR :n TERMINAL_2 :v (P2 M T2 Q X2 XF HUM2 HUMF) :dir (NIL 1 NIL 1 NIL 1 NIL 1)) (:int :t CONTROLLINK :n CONTROL_IN :v (POS) :dir (NIL)) (:int :t X_Y :n READCO2 :v (X1) :dir (NIL))) ;;;;;; ;;;;;;end of model BDDAMP ;;;;;; ;;; ;;; model BDDCTWRK ;;; ((template :n BDDCTWRK :c :eo :d "Ductwork branch. Bidirectional Flow. Diameter and roughness as parameters. Variable number of straight sections and sing. Linear flow below Re-limit, and if LIN.") ;; :model-parameters (:par :t system-parameter :n NO_L :x SMP :v 1 :kv (INTEGER 1 *) :f #X29 :d "Number of straight sections") (:par :t system-parameter :n NO_XI :x SMP :v 1 :kv (INTEGER 0 *) :f #X29 :d "Number of single losses") ;; :parameters (:par :t GENERIC :n DUCTSHAPE :x S_P :v 0.0 :kv (REAL 0.0 1.0) :f #X21 :d "Shape of the duct 0 = circular 1 = rectangular") (:par :t LENGTH :n D :x S_P :v 0.1 :kv (FREAL (0.0)) :f #X21 :d "Inner diameter") (:par :t LENGTH :n DZ :x S_P :v 0.0 :kv FREAL :f #X21 :d "Total rise terminal 1 to 2") (:par :t LENGTH :n RAW :x S_P :v 0.00015 :kv (FREAL (0.0)) :f #X21 :d "Roughness") (:par :t LENGTH :n LENSIDE1 :x S_P :v 0.1 :kv (FREAL (0.0)) :f #X21 :d "Length of one side") (:par :t LENGTH :n LENSIDE2 :x S_P :v 0.1 :kv (FREAL (0.0)) :f #X21 :d "Length of adjancent side") (:par :t MASS :n NUMAIRMASS :x S_P :v 30.0 :kv (FREAL 0.0) :f #X21 :d "Additional mass to increase numerical robustness") (:par :t LENGTH :n L :x S_P :ie 1.0 :kv (FREAL 0.0) :f #X21 :sp (NO_L) :d "Straight section lengths") (:par :t FACTOR :n XI :x S_P :ie 0.0 :kv (FREAL 0.0) :f #X21 :sp (NO_XI) :d "Single loss coefficients") ;; :variables (:var :t ENTHALPY :n HAIR :x DER :iv 18000.0 :kv FREAL :f #X6 :d "Enthalpy of air") (:var :t FRACTION_Y :n X :x DER :iv 594.0 :kv (FREAL 0.0) :f #X6 :d "Fraction") (:var :t HUMRATIO :n HUM :x DER :iv 0.003 :kv (REAL 0.0 1.0) :f #X6 :d "Abs. humidity") (:var :t MASSFLOW :n M :x U :iv 0.0012 :kv FREAL :f #XA :d "Massflow through leak") (:var :t TEMP :n T :x U :iv 20.0 :kv (FREAL -273.16) :f #X2 :d "Temperature") (:var :t PRESSURE :n P1 :x X :iv 1298.0 :kv FREAL :f #X1 :d "Terminal 1 pressure") (:var :t PRESSURE :n P2 :x X :iv 1287.0 :kv FREAL :f #X1 :d "Terminal 2 pressure") (:var :t HEATFLUX :n Q1 :x X :iv 1.0 :kv FREAL :f #X9 :d "Heat moved by massflow") (:var :t HEATFLUX :n Q2 :x X :iv -1.0 :kv FREAL :f #X9 :d "Heat moved by massflow") (:var :t FRACTFLOW_Y :n XF1 :x X :iv 1.0 :kv FREAL :f #X9 :d "Fraction moved by massflow") (:var :t FRACTFLOW_Y :n XF2 :x X :iv -1.0 :kv FREAL :f #X9 :d "Fraction moved by massflow") (:var :t HUMFLOW :n HUMF1 :x X :iv 0.001 :kv FREAL :f #X9 :d "Hum. moved by massflow") (:var :t HUMFLOW :n HUMF2 :x X :iv -0.001 :kv FREAL :f #X9 :d "Hum. moved by massflow") (:var :t GENERIC :n C_TOT :x LOC :iv 0.1123 :kv (FREAL (0.0)) :f #X140 :d "Flow characteristic") (:var :t PRESSURE :n DP :x LOC :iv 0.0005 :kv FREAL :f #X140 :d "Eff pressure diff") (:var :t TEMP_K :n K :x LOC :iv 290.3 :kv (FREAL 0.0) :f #X140 :d "Temp Kelvin") (:var :t GENERIC :n RE :x LOC :iv 900.0 :kv (FREAL (0.0)) :f #X140 :d "Reynolds number") (:var :t DENSITY :n RHO :x LOC :iv 1.2 :kv (FREAL (0.0)) :f #X140 :d "Air density") (:var :t DENSITY :n RHODRYAIR :x LOC :iv 1.2 :kv (FREAL (0.0)) :f #X140 :d "Dry air density") (:var :t VELOCITY :n V :x LOC :iv 0.1298 :kv (FREAL (0.0)) :f #X148 :d "Velocity") (:var :t GENERIC :n C_TMP :x LOC :iv 0.1123 :kv (FREAL (0.0)) :f #X140 :d "Temporary variable") (:var :t MASS :n MASSAIR :x LOC :iv 0.0095 :kv (FREAL (0.0)) :f #X140 :d "Mass of dry air") ;; :interfaces (:int :t BIDIRAIR :n TERMINAL_1 :v (P1 M T Q1 X XF1 HUM HUMF1) :dir (NIL -1 NIL -1 NIL -1 NIL -1)) (:int :t BIDIRAIR :n TERMINAL_2 :v (P2 M T Q2 X XF2 HUM HUMF2) :dir (NIL 1 NIL -1 NIL -1 NIL -1))) ;;;;;; ;;;;;;end of model BDDCTWRK ;;;;;; ;;; ;;; model BDFWALL ;;; ((template :n BDFWALL :c :eo :d "Version of the fdWall model using own THETA-method integrator.") ;; :model-parameters (:par :t system-parameter :n N :x SMP :v 2 :kv (INTEGER 1 *) :f #X29 :d "Number of material layers") (:par :t system-parameter :n NCELLS :x SMP :v 2 :kv (INTEGER 1 *) :f #X29 :d "Number of cells = sum(nSubLay)") (:par :t system-parameter :n SUBMODE :x SMP :v 0 :kv (INTEGER 0 3) :f #X29 :d "Subdivision mode: 0 uniform, 1 tighter at beginning, 2 at end, 3 at both sides") (:par :t system-parameter :n NOFQS :x CMP :v 1 :kv (INTEGER 0 *) :f #X168 :s (0 T 0 + NCELLS -1) :d "Number of internal flows = nCells-1") (:par :t system-parameter :n NWORK :x CMP :v 8 :kv (INTEGER 4 *) :f #X168 :s (0 T 0 I* 4 NCELLS) :d "Size of workspace = 4 * nCells") ;; :parameters (:par :t AREA :n A :x S_P :v 1.0 :kv (FREAL (0.0)) :f #X21 :d "wall area") (:par :t FACTOR :n TOL :x S_P :v 0.1 :kv (REAL 0.001 0.5) :f #X21 :d "tolerance in THETA-method") (:par :t FACTOR :n THETA :x S_P :v 0.0 :kv (REAL 0.0 0.5) :f #X21 :d "Theta in THETA-method") (:par :t FACTOR :n JAC_APPROX :x S_P :v 0.0 :kv (REAL 0.0 3.0) :f #X21 :d "Type of Jac approximation: = 0 Jacobian evaluated with one time step = 1 Jacobian evaluated by integration = 2 Approximate diagonal Jacobian = 3 Zero Jacobian") (:par :t LENGTH :n L :x S_P :ie 0.15 :kv (FREAL (0.0)) :f #X21 :sp (N) :d "layer thickness") (:par :t HEATCONDL :n LAMBDA :x S_P :ie 1.7 :kv (FREAL (0.0)) :f #X21 :sp (N) :d "layer heat conductivity") (:par :t DENSITY :n RHO :x S_P :ie 2400.0 :kv (FREAL (0.0)) :f #X21 :sp (N) :d "layer density") (:par :t HEATCAPM :n CP :x S_P :ie 880.0 :kv (FREAL (0.0)) :f #X21 :sp (N) :d "layer spec heat") (:par :t FACTOR :n NSUBLAY :x S_P :ie 2.0 :kv (FREAL 1.0) :f #X21 :sp (N) :d "Number of sublayers (cells) per material layer") ;; :variables (:var :t HEATFLUX :n QA :x U :iv 0.0 :kv FREAL :f #XA :d "Inflow at surf of side a") (:var :t HEATFLUX :n QB :x U :iv 0.0 :kv FREAL :f #XA :d "Outflow at surf of side b") (:var :t TEMP :n TPA :x X :iv 20.0 :kv (FREAL -273.16) :f #X1 :d "Surf temp on a side") (:var :t TEMP :n TPB :x X :iv 20.0 :kv (FREAL -273.16) :f #X1 :d "Surf temp on b side") (:var :t TEMP :n TAOLD :x A_S :iv 20.0 :kv (FREAL -273.16) :f #X10 :d "Surf temp on a side") (:var :t TEMP :n TBOLD :x A_S :iv 20.0 :kv (FREAL -273.16) :f #X10 :d "Surf temp on b side") (:var :t TEMP :n TAOLDOLD :x A_S :iv 20.0 :kv (FREAL -273.16) :f #X10 :d "Surf temp on a side") (:var :t TEMP :n TBOLDOLD :x A_S :iv 20.0 :kv (FREAL -273.16) :f #X10 :d "Surf temp on b side") (:var :t GENERIC :n TOLDOLD :x A_S :iv 0.0 :kv (FREAL -273.16) :f #X10 :d "start of old timestep") (:var :t GENERIC :n DTSTART :x A_S :iv 0.0 :kv (FREAL 0.0) :f #X10 :d "timestep in THETA-method") (:var :t HEATFLUX :n QANEW :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Inflow at surf of side a") (:var :t HEATFLUX :n QBNEW :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Outflow at surf of side b") (:var :t GENERIC :n T0 :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X140 :d "start of timestep") (:var :t GENERIC :n T1 :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X140 :d "end of timestep") (:var :t TEMP :n T :x A_S :ie 20.0 :kv (FREAL -273.16) :f #X10 :sp (NCELLS) :d "Temp of mass node") (:var :t HEATFLUX :n Q :x LOC :ie 0.0 :kv FREAL :f #X148 :sp (NOFQS) :d "Flux between mass nodes") (:var :t GENERIC :n WORK :x A_S :ie 0.0 :kv (FREAL 0.0) :f #X10 :sp (NWORK) :d "workspace") ;; :interfaces (:int :t TQ :n TERM_A :v (TPA QA) :dir (NIL -1)) (:int :t TQ :n TERM_B :v (TPB QB) :dir (NIL 1))) ;;;;;; ;;;;;;end of model BDFWALL ;;;;;; ;;; ;;; model BDGRIL ;;; ((template :n BDGRIL :c :eo :d "Air inlet/outlet grille towards environment. Bi-directional transports of mass, energy and a mass fraction. A (building) Face parameter gives reference to a specific set of global environment data. face=0 gives precedence to") ;; :model-parameters ;; :parameters (:par :t LENGTH :n D :x S_P :v 0.25 :kv (FREAL (0.0)) :f #X21 :d "inner diameter") (:par :t GENERIC :n XI :x S_P :v 10.0 :kv (FREAL 0.0) :f #X21 :d "loss coeff") (:par :t LENGTH :n ZR_OUT :x S_P :v 0.0 :kv (FREAL 0.0) :f #X21 :d "leak height from ground level") (:par :t PRESSURE :n DP0 :x S_P :v 0.1 :kv (FREAL (0.0)) :f #X21 :d "limit for linear flow") ;; :variables (:var :t MASSFLOW :n M :x U :iv 0.0 :kv FREAL :f #XA :d "massflow through leak") (:var :t HEATFLUX :n Q :x U :iv 0.0 :kv FREAL :f #XA :d "heat moved by massflow") (:var :t FRACTFLOW_Y :n XF :x U :iv 0.0 :kv FREAL :f #XA :d "fraction moved") (:var :t HUMFLOW :n HUMF :x U :iv 0.0 :kv FREAL :f #XA :d "hum moved") (:var :t PRESSURE :n P_IN :x X :iv 1.0 :kv FREAL :f #X1 :d "inside terminal pressure") (:var :t PRESSURE :n P_OUT :x X :iv 2.0 :kv FREAL :f #X1 :d "outside GROUND pressure") (:var :t TEMP :n T_IN :x X :iv 20.0 :kv (FREAL -273.16) :f #X1 :d "inside terminal temperature") (:var :t TEMP :n T_OUT :x X :iv 20.0 :kv (FREAL -273.16) :f #X1 :d "outside temperature") (:var :t FRACTION_Y :n X_IN :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "inside neighbor fraction") (:var :t FRACTION_Y :n X_OUT :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "environment fraction") (:var :t HUMRATIO :n HUM_IN :x X :iv 0.003 :kv (FREAL 0.0) :f #X1 :d "inside neighbor hum") (:var :t HUMRATIO :n HUM_OUT :x X :iv 0.003 :kv (FREAL 0.0) :f #X1 :d "environment hum") (:var :t DENSITY :n RHO_OUT :x LOC :iv 1.2 :kv (REAL 0.5 3.0) :f #X140 :d "density of outside air") (:var :t PRESSURE :n DP :x LOC :iv 0.0 :kv FREAL :f #X140 :d "effective pressure diff") ;; :interfaces (:int :t BIDIRAIR :n INSIDE :v (P_IN M T_IN Q X_IN XF HUM_IN HUMF) :dir (NIL -1 NIL -1 NIL -1 NIL -1)) (:int :t BIDIRAIR :n OUTSIDE :v (P_OUT M T_OUT Q X_OUT XF HUM_OUT HUMF) :dir (NIL 1 NIL 1 NIL 1 NIL 1))) ;;;;;; ;;;;;;end of model BDGRIL ;;;;;; ;;; ;;; model BDTERM ;;; ((template :n BDTERM :c :eo :d "Air inlet/outlet terminal, connecting bidirectional duct fittings to zones. Bi-directional transports of mass, energy and a mass fraction. Linear flow below limit 'dp0', and if LIN.") ;; :model-parameters ;; :parameters (:par :t GENERIC :n INPAR :x S_P :v 0.0 :kv (REAL 0.0 1.0) :f #X21 :d "Input parameters 0 = c_t 1 = xi") (:par :t GENERIC :n C_T :x S_P :v 0.0 :kv (FREAL 0.0) :f #X21 :d "powerlaw coefficient") (:par :t LENGTH :n D :x S_P :v 0.25 :kv (FREAL (0.0)) :f #X21 :d "inner diameter") (:par :t GENERIC :n XI :x S_P :v 10.0 :kv (FREAL (0.0)) :f #X21 :d "loss coeff") (:par :t LENGTH :n ZR1 :x S_P :v 0.0 :kv (FREAL 0.0) :f #X21 :d "terminal height from floor") (:par :t PRESSURE :n DP0 :x S_P :v 0.1 :kv (FREAL (0.0)) :f #X21 :d "limit for linear flow") ;; :variables (:var :t MASSFLOW :n M :x U :iv 0.0 :kv FREAL :f #XA :d "massflow from zone to system") (:var :t HEATFLUX :n Q :x U :iv 0.0 :kv FREAL :f #XA :d "heat moved from zone to system") (:var :t FRACTFLOW_Y :n XF :x U :iv 0.0 :kv FREAL :f #XA :d "fraction moved from zone to system") (:var :t HUMFLOW :n HUMF :x U :iv 0.0 :kv FREAL :f #XA :d "hum. moved by massflow") (:var :t PRESSURE :n P1 :x X :iv 1.0 :kv FREAL :f #X1 :d "zone floor level pressure") (:var :t PRESSURE :n P2 :x X :iv 2.0 :kv FREAL :f #X1 :d "system terminal pressure") (:var :t TEMP :n T1 :x X :iv 20.0 :kv (FREAL -273.16) :f #X1 :d "zone temperature") (:var :t TEMP :n T2 :x X :iv 20.0 :kv (FREAL -273.16) :f #X1 :d "system terminal temperature") (:var :t FRACTION_Y :n X1 :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "zone fraction") (:var :t FRACTION_Y :n X2 :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "system terminal fraction") (:var :t HUMRATIO :n HUM1 :x X :iv 0.005 :kv (REAL 0.0 1.0) :f #X1 :d "hum. of neighbor 1") (:var :t HUMRATIO :n HUM2 :x X :iv 0.005 :kv (REAL 0.0 1.0) :f #X1 :d "hum. of neighbor 2") (:var :t DENSITY :n RHO1 :x LOC :iv 1.2 :kv (REAL 0.5 3.0) :f #X140 :d "density of zone air") (:var :t PRESSURE :n DP :x LOC :iv 0.0 :kv FREAL :f #X140 :d "effective pressure diff") (:var :t HEATFLUX :n Q1 :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Help var") (:var :t HEATFLUX :n Q2 :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Help var") (:var :t HEATFLUX :n QN :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Help var") (:var :t HEATFLUX :n QN12 :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Net HeatFlux from zone to system") (:var :t HEATFLUX :n QN21 :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Net HeatFlux from system to zone") (:var :t VOLFLOW_M :n FI12 :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Volume flow from term zone to system") (:var :t VOLFLOW_M :n FI21 :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Volume flow from term system to zone") ;; :interfaces (:int :t BIDIRAIR :n ZONE :v (P1 M T1 Q X1 XF HUM1 HUMF) :dir (NIL -1 NIL -1 NIL -1 NIL -1)) (:int :t BIDIRAIR :n SYSTEM :v (P2 M T2 Q X2 XF HUM2 HUMF) :dir (NIL 1 NIL 1 NIL 1 NIL 1))) ;;;;;; ;;;;;;end of model BDTERM ;;;;;; ;;; ;;; model CCSIM ;;; ((template :n CCSIM :c :eo :d NIL) ;; :model-parameters ;; :parameters (:par :t HEATCAPM :n CPLIQ :x S_P :v 4187.0 :kv (FREAL (0.0)) :f #X21 :d "Liquid specific heat") (:par :t FACTOR :n CONFIGHX :x S_P :v 1.0 :kv (REAL 0.0 6.0) :f #X21 :d "Coil configuration 0 independent of configuration 1 counterflow 2 parallel flow 3 cross flow, both streams unmixed 4 cross flow, both streams mixed 5 cross flow, stream 1 unmixed 6 cross flow, stream 2 unmixed") (:par :t HEATFLUX :n QTOTRAT :x S_P :v 88000.0 :kv FREAL :f #X29 :d "Total heat transfer at rating") (:par :t HEATFLUX :n QSENRAT :x S_P :v 66000.0 :kv FREAL :f #X29 :d "Sensible heat transfer at rating") (:par :t MASSFLOW :n MLIQRAT :x S_P :v 4.2 :kv (FREAL (0.0)) :f #X29 :d "Liquid mass flow at rating") (:par :t TEMP :n TLIQRAT :x S_P :v 5.5556 :kv (FREAL -273.16) :f #X21 :d "Entering water temp at rating") (:par :t MASSFLOW :n MAIRRAT :x S_P :v 6.4 :kv (FREAL (0.0)) :f #X29 :d "Dry air mass flow at rating") (:par :t TEMP :n TAIRRAT :x S_P :v 26.6667 :kv (FREAL -273.16) :f #X21 :d "Inlet air temp at rating") (:par :t HUMRATIO :n WAIRRAT :x S_P :v 0.0112 :kv (FREAL (0.0)) :f #X21 :d "Inlet air humidity ratio at rating") (:par :t PRESSURE :n DPRATE :x S_P :v 60.0 :kv (FREAL (0.0)) :f #X21 :d "Pressure difference at given rate") (:par :t PRESSURE :n DP0 :x S_P :v 0.1 :kv (FREAL (0.0)) :f #X21 :d "Limit for linear flow") ;; :variables (:var :t PRESSURE :n PAIROUT :x U :iv 101299.0 :kv (FREAL (0.0)) :f #X2 :d "Pressure of leaving air") (:var :t TEMP :n TAIROUT :x U :iv 11.02 :kv (FREAL -273.16) :f #X2 :d "Temp of leaving air, output") (:var :t TEMP :n TLIQOUT :x U :iv 9.16 :kv (FREAL -273.16) :f #X2 :d "Temp of leaving liquid, output") (:var :t HUMRATIO :n WAIROUT :x U :iv 0.008 :kv (FREAL (0.0)) :f #X2 :d "Humidity ratio of leaving air, output") (:var :t PRESSURE :n PAIRIN :x X :iv 101300.0 :kv (FREAL (0.0)) :f #X1 :d "Pressure of entering air") (:var :t PRESSURE :n PLIQ :x X :iv 1000.0 :kv (FREAL (0.0)) :f #X1 :d "Pressure of liquid") (:var :t MASSFLOW :n MAIR :x X :iv 3.2 :kv (FREAL 0.0) :f #X9 :d "Dry air massflow rate") (:var :t MASSFLOW :n MLIQ :x X :iv 4.2 :kv (FREAL 0.0) :f #X9 :d "Liquid massflow rate") (:var :t TEMP :n TAIRIN :x X :iv 25.0 :kv (FREAL -273.16) :f #X1 :d "Temp of entering air") (:var :t TEMP :n TLIQIN :x X :iv 5.556 :kv (FREAL -273.16) :f #X1 :d "Temp of entering liquid") (:var :t HUMRATIO :n WAIRIN :x X :iv 0.01 :kv (FREAL 0.0) :f #X1 :d "Humidity ratio of entering air") (:var :t FRACTION_Y :n XAIR :x X :iv 0.0 :kv (FREAL 0.0) :f #X1 :d "Pollutant fraction") (:var :t GENERIC :n COILDRY :x A_S :iv 0.0 :kv (REAL 0.0 1.0) :f #X10 :d "Coil status indicator (=1 if coil is dry)") (:var :t GENERIC :n G0 :x A_S :iv 0.0 :kv (REAL 0.0 1.0) :f #X10 :d "Memory of coil status") (:var :t TEMP :n TAIR :x LOC :iv 11.029 :kv (FREAL -273.16) :f #X140 :d "Temp of leaving air") (:var :t TEMP :n TLIQ :x LOC :iv 9.166 :kv (FREAL -273.16) :f #X140 :d "Temp of leaving liquid") (:var :t HUMRATIO :n WAIR :x LOC :iv 0.008 :kv (FREAL 0.0) :f #X140 :d "Humidity ratio of leaving air") (:var :t HEATFLUX :n QTOT :x LOC :iv 63345.0 :kv (FREAL 0.0) :f #X148 :d "Total heat transfer rate") (:var :t HEATFLUX :n QSEN :x LOC :iv 45823.0 :kv (FREAL 0.0) :f #X148 :d "Sensible heat transfer rate") (:var :t FRACTION_Y :n FWET :x LOC :iv 1.0 :kv (FREAL 0.0) :f #X140 :d "Fraction of surface area wet") (:var :t HEATFLUX :n QTOTOUT :x LOC :iv 63345.0 :kv (FREAL 0.0) :f #X148 :d "Total heat transfer rate, output") (:var :t HEATFLUX :n QSENOUT :x LOC :iv 45823.0 :kv (FREAL 0.0) :f #X148 :d "Sensible heat transfer rate, output") (:var :t FRACTION :n FWETOUT :x LOC :iv 1.0 :kv (FREAL 0.0) :f #X140 :d "Fraction of surface area wet") (:var :t PRESSURE :n DP :x LOC :iv 1.0 :kv (FREAL (0.0)) :f #X140 :d "Pressure difference of air stream") (:var :t TEMP :n TDEWPT :x LOC :iv 13.88 :kv (FREAL -273.16) :f #X140 :d "Dewpoint Temperature") (:var :t TEMP :n TSURFENT :x LOC :iv 14.2 :kv (FREAL -273.16) :f #X140 :d "Coil surface temp at air entrance") (:var :t TEMP :n DRYTAIROUT :x LOC :iv 9.58 :kv (FREAL -273.16) :f #X140 :d "Temp of leaving air in dry coil") (:var :t TEMP :n DRYTLIQOUT :x LOC :iv 8.43 :kv (FREAL -273.16) :f #X140 :d "Temp of leaving liquid in dry coil") (:var :t HUMRATIO :n DRYWAIROUT :x LOC :iv 0.01 :kv (FREAL 0.0) :f #X140 :d "Humidity ratio of leaving air in dry coil") (:var :t HEATFLUX :n DRYQTOT :x LOC :iv 50516.0 :kv (FREAL 0.0) :f #X148 :d "Total heat transfer rate in dry coil") (:var :t FACTOR :n ERRSTAT3 :x LOC :iv 0.0 :kv (REAL 0.0 1.0) :f #X140 :d "Error status indicator") (:var :t FACTOR :n ERRSTAT4 :x LOC :iv 0.0 :kv (REAL 0.0 1.0) :f #X140 :d "Error status indicator") ;; :interfaces (:int :t UNIAIR :n AIRFLOWIN :v (PAIRIN MAIR TAIRIN XAIR WAIRIN) :dir (NIL -1 NIL NIL NIL)) (:int :t UNIAIR :n AIRFLOWOUT :v (PAIROUT MAIR TAIROUT XAIR WAIROUT) :dir (NIL 1 NIL NIL NIL)) (:int :t PMT :n LIQFLOWIN :v (PLIQ MLIQ TLIQIN) :dir (NIL -1 NIL)) (:int :t PMT :n LIQFLOWOUT :v (PLIQ MLIQ TLIQOUT) :dir (NIL 1 NIL))) ;;;;;; ;;;;;;end of model CCSIM ;;;;;; ;;; ;;; model CCSIMCTR ;;; ((template :n CCSIMCTR :c :eo :d "SIMplified air-to-liq Cooling Coil w liquid massflow ConTRol.") ;; :model-parameters ;; :parameters (:par :t HEATCAPM :n CPLIQ :x S_P :v 4187.0 :kv (FREAL (0.0)) :f #X21 :d "Liquid specific heat") (:par :t FACTOR :n ETAAIR :x S_P :v 1.0 :kv (REAL 0.0 6.0) :f #X21 :d "Air side effectiveness at capacity") (:par :t TEMP :n DTLIQ :x S_P :v 5.0 :kv (FREAL (0.0)) :f #X21 :d "Liq side temp rise") (:par :t MASSFLOW :n MMIN :x S_P :v 0.0001 :kv (FREAL (0.0)) :f #X29 :d "Liquid mass flow when coil is off") (:par :t PRESSURE :n DP0 :x S_P :v 200.0 :kv (FREAL (0.0)) :f #X21 :d "Water Dp limit for coil operation") ;; :variables (:var :t MASSFLOW :n MLIQ :x U :iv 0.06 :kv (FREAL 0.0) :f #XA :d "Liquid massflow rate") (:var :t TEMP :n TAIROUT :x U :iv 19.0 :kv (FREAL -273.16) :f #X2 :d "Temp of leaving air") (:var :t TEMP :n TLIQOUT :x U :iv 9.0 :kv (FREAL -273.16) :f #X2 :d "Temp of leaving liquid") (:var :t HUMRATIO :n WAIROUT :x U :iv 0.007 :kv (REAL 0.0 1.0) :f #X2 :d "Humidity ratio of leaving air") (:var :t PRESSURE :n PAIR :x X :iv 1325.0 :kv FREAL :f #X1 :d "Pressure of entering and leaving air") (:var :t PRESSURE :n PLIQIN :x X :iv 1000.0 :kv (FREAL (0.0)) :f #X1 :d "Pressure of entering liquid") (:var :t PRESSURE :n PLIQOUT :x X :iv 900.0 :kv (FREAL (0.0)) :f #X1 :d "Pressure of leaving liquid") (:var :t MASSFLOW :n MAIR :x X :iv 0.36 :kv (FREAL 0.0) :f #X9 :d "Dry air massflow rate") (:var :t TEMP :n TAIRIN :x X :iv 25.0 :kv (FREAL -273.16) :f #X1 :d "Temp of entering air") (:var :t TEMP :n TLIQIN :x X :iv 5.0 :kv (FREAL -273.16) :f #X1 :d "Temp of entering liquid") (:var :t TEMP :n TSET :x X :iv 18.0 :kv (FREAL -273.16) :f #X1 :d "Leaving air dry bulb temp. setpoint") (:var :t HUMRATIO :n WAIRIN :x X :iv 0.007 :kv (REAL 0.0 1.0) :f #X1 :d "Humidity ratio of entering air") (:var :t FRACTION_Y :n XAIR :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "Pollutant fraction") (:var :t GENERIC :n ON :x A_S :iv 1.0 :kv (REAL 0.0 1.0) :f #X10 :d "On/Off mode") (:var :t GENERIC :n CAP :x A_S :iv 0.0 :kv (REAL 0.0 1.0) :f #X10 :d "Cap/Modulated mode") (:var :t GENERIC :n WET :x A_S :iv 1.0 :kv (REAL 0.0 1.0) :f #X10 :d "Wet/Dry mode") (:var :t GENERIC :n SAT :x A_S :iv 1.0 :kv (REAL 0.0 1.0) :f #X10 :d "Saturated/normal mode") (:var :t GENERIC :n G0 :x A_S :iv 1.0 :kv FREAL :f #X10 :d "G-stop On") (:var :t GENERIC :n G1 :x A_S :iv 1.0 :kv FREAL :f #X10 :d "G-stop Cap") (:var :t GENERIC :n G2 :x A_S :iv 1.0 :kv FREAL :f #X10 :d "G-stop Wet") (:var :t GENERIC :n G3 :x A_S :iv 1.0 :kv FREAL :f #X10 :d "G-stop Sat") (:var :t GENERIC :n G4 :x A_S :iv 1.0 :kv FREAL :f #X10 :d "G-stop On") (:var :t ENTHALPY :n ENTHIN :x LOC :iv 0.0 :kv FREAL :f #X140 :d "H entering air") (:var :t ENTHALPY :n ENTHOUT :x LOC :iv 0.0 :kv FREAL :f #X140 :d "H leaving air") (:var :t ENTHALPY :n ENTHWAT :x LOC :iv 0.0 :kv FREAL :f #X140 :d "H condensed water") (:var :t MASSFLOW :n MLIQBAL :x LOC :iv 0.06 :kv (FREAL 0.0) :f #X148 :d "Liquid massflow rate at heat balance") (:var :t TEMP :n TADP :x LOC :iv 7.0 :kv (FREAL -273.16) :f #X140 :d "Dewpoint temp. of coil surface") (:var :t TEMP :n TMIN :x LOC :iv 9.0 :kv (FREAL -273.16) :f #X140 :d "Minimum achievable leaving drybulb") (:var :t TEMP :n DTLIQACT :x LOC :iv 5.0 :kv (FREAL (0.0)) :f #X140 :d "Liq side actual temp rise") (:var :t HUMRATIO :n WADP :x LOC :iv 0.006 :kv (REAL 0.0 1.0) :f #X140 :d "Humidity at saturation and Tadp") (:var :t PRESSURE :n DP :x LOC :iv 3000.0 :kv (FREAL (0.0)) :f #X140 :d "Pressure difference of water stream") (:var :t GENERIC :n COILON :x LOC :iv 1.0 :kv FREAL :f #X140 :d "Coi is On") (:var :t GENERIC :n COILOFF :x LOC :iv 1.0 :kv FREAL :f #X140 :d "Coil is off") ;; :interfaces (:int :t UNIAIR :n AIRFLOWIN :v (PAIR MAIR TAIRIN XAIR WAIRIN) :dir (NIL -1 NIL NIL NIL)) (:int :t UNIAIR :n AIRFLOWOUT :v (PAIR MAIR TAIROUT XAIR WAIROUT) :dir (NIL 1 NIL NIL NIL)) (:int :t PMT :n LIQFLOWIN :v (PLIQIN MLIQ TLIQIN) :dir (NIL -1 NIL)) (:int :t PMT :n LIQFLOWOUT :v (PLIQOUT MLIQ TLIQOUT) :dir (NIL 1 NIL)) (:int :t T :n TEMPSETPOINT :v (TSET) :dir (NIL))) ;;;;;; ;;;;;;end of model CCSIMCTR ;;;;;; ;;; ;;; model CEBEAM ;;; ((template :n CEBEAM :c :eo :d "Idealized supply terminal w damper and active cooling ceiling BEAM.") ;; :model-parameters (:par :t system-parameter :n NPOINT :x SMP :v 3 :kv (INTEGER 1 *) :f #X29 :d "number of points") (:par :t system-parameter :n NSLOT :x SMP :v 4 :kv (INTEGER 2 *) :f #X29 :d "number of lines") ;; :parameters (:par :t PRESSURE :n DP0 :x S_P :v 5.0 :kv (FREAL (0.0)) :f #X21 :d "limit for flow control action") (:par :t MASSFLOW :n MMAX :x S_P :v 0.01 :kv (FREAL (0.0)) :f #X29 :d "max requestable massflow") (:par :t MASSFLOW :n MMIN :x S_P :v 0.001 :kv (FREAL (0.0)) :f #X29 :d "min requestable massflow") (:par :t FACTOR :n CLOW :x S_P :v 0.001 :kv (FREAL 0.0) :f #X21 :d "massflow when 'off', i.e. CentralMode = 0") (:par :t MASSFLOW :n MLIQMAX :x S_P :v 0.006 :kv (FREAL (0.0)) :f #X29 :d "max requestable water massflow") (:par :t MASSFLOW :n MLIQMIN :x S_P :v 0.0001 :kv (FREAL (0.0)) :f #X29 :d "min requestable water massflow") (:par :t HEATCAPM :n CP_LIQ :x S_P :v 4187.0 :kv (FREAL (0.0)) :f #X21 :d "Liquid heat capacity") (:par :t PRESSURE :n DP0LIQ :x S_P :v 5.0 :kv (FREAL (0.0)) :f #X21 :d "limit for flow control action") (:par :t LENGTH :n LENGTH :x S_P :v 1.0 :kv (FREAL (0.0)) :f #X21 :d "Lenght of beam") (:par :t MASSFLOW :n POINT :x S_P :ie 0.024 :kv (FREAL (0.0)) :f #X29 :sp (NPOINT) :d "Massflow points in lines") (:par :t FACTOR :n K :x S_P :ie 10.0 :kv (FREAL (0.0)) :f #X21 :sp (NSLOT) :d "Factor from equation P = k dT^n") (:par :t FACTOR :n N :x S_P :ie 1.2 :kv (FREAL (0.0)) :f #X21 :sp (NSLOT) :d "Factor from equation P = k dT^n") ;; :variables (:var :t MASSFLOW :n M :x U :iv 0.024 :kv (FREAL 0.0) :f #XA :d "massflow through terminal") (:var :t HEATFLUX :n Q :x U :iv 0.0 :kv FREAL :f #XA :d "heat convected by massflow") (:var :t FRACTFLOW_Y :n XF :x U :iv 0.0 :kv FREAL :f #XA :d "pollution transport") (:var :t HUMFLOW :n HUMF :x U :iv 0.0 :kv FREAL :f #XA :d "moisture transport") (:var :t MASSFLOW :n MLIQ :x U :iv 0.001 :kv (FREAL (0.0)) :f #XA :d "Water massflow") (:var :t TEMP :n TLIQOUT :x U :iv 16.0 :kv (FREAL 0.0) :f #X2 :d "Water outlet temperature") (:var :t TEMP :n DT :x U :iv 0.0 :kv (FREAL 0.0) :f #X2 :d "Temp. diffrence air and water average") (:var :t PRESSURE :n P1 :x X :iv 1375.0 :kv FREAL :f #X1 :d "pressure in") (:var :t PRESSURE :n P2 :x X :iv 1325.0 :kv FREAL :f #X1 :d "pressure out") (:var :t TEMP :n T1 :x X :iv 20.0 :kv (FREAL -273.16) :f #X1 :d "temperature in") (:var :t TEMP :n T2 :x X :iv 25.0 :kv (FREAL -273.16) :f #X1 :d "temperature zone") (:var :t FRACTION_Y :n X1 :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "pollutant fractn in") (:var :t FRACTION_Y :n X2 :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "pollutant fractn zone") (:var :t HUMRATIO :n HUM1 :x X :iv 0.006 :kv (FREAL (0.0)) :f #X1 :d "moisture fractn in") (:var :t HUMRATIO :n HUM2 :x X :iv 0.006 :kv (FREAL (0.0)) :f #X1 :d "moisture fractn zone") (:var :t CONTROL :n CONTR :x X :iv 0.0 :kv (REAL 0.0 1.0) :f #X1 :d "Controller input 0 -> mMin, 1 -> mMax") (:var :t CONTROL :n CENTRALMODE :x X :iv 1.0 :kv FREAL :f #X1 :d "Forcing control, = >0 local control 0 low flow <0 natural vent") (:var :t CONTROL :n LIQCONTR :x X :iv 0.0 :kv (REAL 0.0 1.0) :f #X1 :d "Liquid control signal") (:var :t PRESSURE :n PLIQIN :x X :iv 500.0 :kv (FREAL (0.0)) :f #X1 :d "Liquid inlet pressure") (:var :t PRESSURE :n PLIQOUT :x X :iv 0.0 :kv (FREAL 0.0) :f #X1 :d "Liquid outlet pressure") (:var :t TEMP :n TLIQIN :x X :iv 14.0 :kv (FREAL 0.0) :f #X1 :d "Water inlet temperature") (:var :t PRESSURE :n DPLIQM :x A_S :iv 1.0 :kv FREAL :f #X10 :d "DpLiq event memory") (:var :t PRESSURE :n DPOKLIQ :x A_S :iv 1.0 :kv (REAL 0.0 1.0) :f #X10 :d "Liquid mode memory") (:var :t PRESSURE :n DP :x LOC :iv 50.0 :kv (FREAL 0.0) :f #X140 :d "eff pressure diff") (:var :t ENTHALPY :n HSUPT :x LOC :iv 40000.0 :kv FREAL :f #X140 :d "enthalpy of supply air") (:var :t POWER :n P :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X148 :d "Cooling power") (:var :t FACTOR :n EXPLOC :x LOC :iv 0.1 :kv (FREAL (0.0)) :f #X140 :d "Help variable") (:var :t PRESSURE :n DPLIQ :x LOC :iv 50.0 :kv (FREAL 0.0) :f #X140 :d "eff liquid pressure diff") (:var :t FACTOR :n KACT :x LOC :iv 10.0 :kv (FREAL (0.0)) :f #X140 :d "Factor from equation P = k dT^n") (:var :t FACTOR :n NACT :x LOC :iv 1.2 :kv (FREAL (0.0)) :f #X140 :d "Factor from equation P = k dT^n") (:var :t FACTOR :n FAC :x LOC :ie 0.0 :kv (REAL 0.0 1.0) :f #X140 :sp (NSLOT) :d "Factor is 1 if interval is valid") ;; :interfaces (:int :t UNIAIR :n INLET :v (P1 M T1 X1 HUM1) :dir (NIL -1 NIL NIL NIL)) (:int :t BIDIRAIR :n ZONE :v (P2 M T2 Q X2 XF HUM2 HUMF) :dir (NIL 1 NIL 1 NIL 1 NIL 1)) (:int :t CONTROLLINK :n CONTROL_IN :v (CONTR) :dir (NIL)) (:int :t CONTROLLINK :n FORCE_CONTROL :v (CENTRALMODE) :dir (NIL)) (:int :t PMT :n LIQIN :v (PLIQIN MLIQ TLIQIN) :dir (NIL -1 NIL)) (:int :t PMT :n LIQOUT :v (PLIQOUT MLIQ TLIQOUT) :dir (NIL 1 NIL)) (:int :t CONTROLLINK :n CONTROLLIQ :v (LIQCONTR) :dir (NIL))) ;;;;;; ;;;;;;end of model CEBEAM ;;;;;; ;;; ;;; model CECOLPNL ;;; ((template :n CECOLPNL :c :eo :d "Water fed COoLing PaNeL or convector.") ;; :model-parameters ;; :parameters (:par :t GENERIC :n K :x S_P :v 4.18 :kv (FREAL (0.0)) :f #X21 :d "Powerlaw coefficient in W/(m Deg-C**n)") (:par :t FACTOR :n N :x S_P :v 1.28 :kv (FREAL (0.0)) :f #X21 :d "Powerlaw exponent") (:par :t LENGTH :n STRIP_W :x S_P :v 0.5 :kv (FREAL (0.0)) :f #X21 :d "Width of panel strip") (:par :t LENGTH :n LENGTH :x S_P :v 1.0 :kv (FREAL (0.0)) :f #X21 :d "Total panel length") (:par :t HEATCAPM :n CP_LIQ :x S_P :v 4187.0 :kv (FREAL (0.0)) :f #X21 :d "Liquid specific heat") (:par :t HEATCOND :n HBACK :x S_P :v 4.0 :kv FREAL :f #X21 :d "Heat transfer coefficient between panel and wall. If a negative value is given, pure radiative exchange is assumed") (:par :t FACTOR :n KFIN :x S_P :v 0.2 :kv (REAL 0.0 0.5) :f #X21 :d "Fin resistance / Total ditto") (:par :t FACTOR :n ELWRAD :x S_P :v 0.9 :kv (FREAL * 1.0) :f #X21 :d "Panel back emissivity, for hback < 0") (:par :t FACTOR :n ELWWALL :x S_P :v 0.9 :kv (FREAL * 1.0) :f #X21 :d "Wall long wave emissivity, for hback < 0") (:par :t PRESSURE :n DP0 :x S_P :v 10.0 :kv (FREAL (0.0)) :f #X21 :d "Pressure drop under which waterflow is nolonger maintained") (:par :t MASSFLOW :n MMAX :x S_P :v 0.01 :kv (FREAL (0.0)) :f #X29 :d "Water massflow at Contr = 1 and Dp > dp0") (:par :t MASSFLOW :n MMIN :x S_P :v 0.0001 :kv (FREAL (0.0)) :f #X29 :d "Water massflow at Contr = 0 and Dp > dp0") ;; :variables (:var :t TEMP :n TSURF :x U :iv 17.0 :kv (FREAL -273.16) :f #X2 :d "Average surface temperature") (:var :t MASSFLOW :n M :x U :iv 0.005 :kv (FREAL 0.0) :f #XA :d "Water massflow") (:var :t TEMP :n TOUT :x U :iv 15.5 :kv (FREAL -273.16) :f #X2 :d "Leaving water temperature") (:var :t HEATFLUX :n QCONV :x U :iv 30.0 :kv FREAL :f #XA :d "Remaining convective heat absorbed") (:var :t HEATFLUX :n QWALL :x U :iv 2.0 :kv FREAL :f #XA :d "Heat absorbed from wall behind panel") (:var :t TEMP :n TAIR :x X :iv 26.0 :kv (FREAL -273.16) :f #X1 :d "Surrounding air temperature") (:var :t TEMP :n TIN :x X :iv 15.0 :kv (FREAL -273.16) :f #X1 :d "Supply water temperature") (:var :t HEATFLUX :n QFRONT :x X :iv 58.0 :kv FREAL :f #X9 :d "Radiative and convective heat absorbed by panel front") (:var :t TEMP :n TWALL :x X :iv 24.0 :kv (FREAL -273.16) :f #X1 :d "Surface temp of wall behind") (:var :t PRESSURE :n P1 :x X :iv 600.0 :kv (FREAL 0.0) :f #X1 :d "Pressure at water inlet") (:var :t PRESSURE :n P2 :x X :iv 0.0 :kv (FREAL 0.0) :f #X1 :d "Pressure at water outlet") (:var :t CONTROL :n CONTR :x X :iv 0.5 :kv (FREAL * 1.0) :f #X1 :d "Controller input 1 -> mmax, 0 -> mmin, -1 turns off control action") (:var :t GENERIC :n G0 :x A_S :iv 1.0 :kv FREAL :f #X10 :d "") (:var :t GENERIC :n DPOK :x A_S :iv 1.0 :kv FREAL :f #X10 :d "Mode memory, = 0 for linear behavior, = 1 for controlled") (:var :t TEMP :n DT :x LOC :iv 10.0 :kv (FREAL -273.16) :f #X140 :d "Air-to-surface temp difference") (:var :t TEMP :n TLIQ :x LOC :iv 16.0 :kv (FREAL -273.16) :f #X140 :d "Average liquid temperature") (:var :t HEATFLUX :n P :x LOC :iv 90.0 :kv (FREAL 0.0) :f #X148 :d "Total absorbed heat") (:var :t PRESSURE :n DP :x LOC :iv 600.0 :kv (FREAL 0.0) :f #X140 :d "Panel and valve total pressure drop") (:var :t GENERIC :n EXPLOC :x LOC :iv -0.03 :kv FREAL :f #X140 :d "Value inside function call EXP(), itroduced as a safety card") ;; :interfaces (:int :t TQ :n FRONT :v (TSURF QFRONT) :dir (NIL -1)) (:int :t TQ :n BACKCONV :v (TAIR QCONV) :dir (NIL -1)) (:int :t TQ :n BACKWALL :v (TWALL QWALL) :dir (NIL -1)) (:int :t PMT :n INLET :v (P1 M TIN) :dir (NIL -1 NIL)) (:int :t PMT :n OUTLET :v (P2 M TOUT) :dir (NIL 1 NIL)) (:int :t CONTROLLINK :n CONTROL :v (CONTR) :dir (NIL)) (:int :t T :n AIRTEMP :v (TAIR) :dir (NIL))) ;;;;;; ;;;;;;end of model CECOLPNL ;;;;;; ;;; ;;; model CEDETZON ;;; ((template :n CEDETZON :c :eo :d "Detailed ZONe w T**4 lw radiation, view factors, displacement vent...") ;; :model-parameters (:par :t system-parameter :n NMAIN :x SMP :v 6 :kv (INTEGER 1 *) :f #X29 :d "main surfaces") (:par :t system-parameter :n NSUBSUB :x SMP :v 0 :kv (INTEGER 0 *) :f #X29 :d "number of [sub of sub] relations") (:par :t system-parameter :n NWALL :x SMP :v 6 :kv (INTEGER 1 *) :f #X29 :d "walls") (:par :t system-parameter :n NLITE :x SMP :v 1 :kv (INTEGER 1 1) :f #X29 :d "lighted surfaces") (:par :t system-parameter :n NWIND :x SMP :v 0 :kv (INTEGER 0 *) :f #X29 :d "windows") (:par :t system-parameter :n NHCSURF :x SMP :v 0 :kv (INTEGER 0 *) :f #X29 :d "heated or cooled surfaces") (:par :t system-parameter :n NEXCL :x SMP :v 0 :kv (INTEGER 0 *) :f #X29 :d "subsurf excluded to avoid overlapping") (:par :t system-parameter :n NVERT :x SMP :v 8 :kv (INTEGER 8 *) :f #X29 :d "vertices") (:par :t system-parameter :n NCVDEV :x SMP :v 0 :kv (INTEGER 0 *) :f #X29 :d "convective devices") (:par :t system-parameter :n NUNIT :x SMP :v 0 :kv (INTEGER 0 *) :f #X29 :d "equipment loads") (:par :t system-parameter :n NOP :x SMP :v 0 :kv (INTEGER 0 *) :f #X29 :d "operative points, where MRT is calculated") (:par :t system-parameter :n NTERMINAL :x SMP :v 1 :kv (INTEGER 0 *) :f #X29 :d "air flow terminals") (:par :t system-parameter :n NSENSOR :x SMP :v 1 :kv (INTEGER 0 *) :f #X29 :d "temperature sensors") (:par :t system-parameter :n NLOCUNIT :x SMP :v 0 :kv (INTEGER 0 *) :f #X29 :d "local units cooler / heater") (:par :t system-parameter :n NMAXLAYR :x SMP :v 4 :kv (INTEGER 1 *) :f #X29 :d "max number of layers in any wall") (:par :t system-parameter :n NINTWALL :x SMP :v 1 :kv (INTEGER 0 *) :f #X29 :d "inside walls and internal masses combined to one mass in parameter proc") (:par :t system-parameter :n NMISC :x SMP :v 0 :kv (INTEGER 0 *) :f #X29 :d "number of signals for MiscMeasure") (:par :t system-parameter :n NTRANSP :x CMP :v 6 :kv (INTEGER 1 *) :f #X168 :s (0 T 0 + NLITE) :d "transparent surfaces (currently lights)") (:par :t system-parameter :n NS :x CMP :v 2 :kv (INTEGER 2 2) :f #X168 :s (0 T 0 + 2) :d "surf in surf") (:par :t system-parameter :n NC :x CMP :v 3 :kv (INTEGER 3 3) :f #X168 :s (0 T 0 + 3) :d "coordinates/vertex = 3") (:par :t system-parameter :n NV :x CMP :v 4 :kv (INTEGER 3 *) :f #X168 :s (0 T 0 + 4) :d "vertices/surface") (:par :t system-parameter :n NSURF :x CMP :v 6 :kv (INTEGER 2 *) :f #X168 :s (0 T 0 + NWALL NHCSURF NWIND 1) :d "solid surfaces (in LW balance)") (:par :t system-parameter :n NALL :x CMP :v 6 :kv (INTEGER 1 *) :f #X168 :s (0 T 0 + NSURF NTRANSP NEXCL) :d "all surfaces") (:par :t system-parameter :n NSUB :x CMP :v 1 :kv (INTEGER 0 *) :f #X168 :s (0 T 0 + NSURF (I* -1 NMAIN) -1) :d "subsurfaces") ;; :parameters (:par :t POWER :n LITERATEDINPUT :x S_P :v 150.0 :kv (FREAL 0.0) :f #X29 :d "Rated light input power") (:par :t FACTOR :n LITEFRACTVISIBLE :x S_P :v 0.1 :kv (REAL 0.0 1.0) :f #X21 :d "Fraction short wave") (:par :t FACTOR :n LITEFRACTLW :x S_P :v 0.6 :kv (REAL 0.0 1.0) :f #X21 :d "Fraction long wave") (:par :t MASS :n NUMAIRMASS :x S_P :v 30.0 :kv (FREAL 0.0) :f #X21 :d "Additional mass to increase numerical robustness") (:par :t FACTOR :n DISPLACE :x S_P :v 0.0 :kv (REAL 0.0 1.0) :f #X21 :d "Displacement ventilation 0 = No 1 = Yes") (:par :t FACTOR :n FIXGRADIENT :x S_P :v -1.0 :kv (REAL -1.0 5.0) :f #X21 :d "Fixed temp gradient -1 if not applicable") (:par :t LENGTH :n XDESK :x S_P :v 1.0 :kv FREAL :f #X21 :d "") (:par :t LENGTH :n YDESK :x S_P :v 1.0 :kv FREAL :f #X21 :d "") (:par :t LENGTH :n ZDESK :x S_P :v 0.85 :kv (FREAL (0.0)) :f #X21 :d "") (:par :t LENGTH :n ZTERM_0 :x S_P :v 2.4 :kv (FREAL 0.0) :f #X21 :d "Height of terminal") (:par :t GENERIC :n LOSTWORKPERC :x S_P :v 0.02 :kv (REAL 0.0 1.0) :f #X21 :d "Loss in work efficency per C < 20 and > 25 (ie 10 % at 30 C)") (:par :t LENGTH :n ZCVDEV :x S_P :ie 2.4 :kv (FREAL 0.0) :f #X21 :sp (NCVDEV) :d "Height of conv device") (:par :t HEATFLUX :n QSRCCVEQUIP :x S_P :ie 100.0 :kv FREAL :f #X29 :sp (NUNIT) :d "Conv load from equipm") (:par :t RADIATION :n QSRCRADEQUIP :x S_P :ie 50.0 :kv FREAL :f #X29 :sp (NUNIT) :d "Rad load from equipm") (:par :t HUMFLOW :n VAPFSRCEQUIP :x S_P :ie 0.01 :kv FREAL :f #X29 :sp (NUNIT) :d "Vapour load from equipm") (:par :t HUMFLOW :n EVAPVAPFSRCEQUIP :x S_P :ie 0.0 :kv (FREAL 0.0) :f #X29 :sp (NUNIT) :d "Evaporative humidity load from equipm") (:par :t FRACTFLOW_Y :n CO2FSRCEQUIP :x S_P :ie 50.0 :kv FREAL :f #X29 :sp (NUNIT) :d "CO2 load from equipm") (:par :t FACTOR :n NOCC :x S_P :ie 0.0 :kv (FREAL 0.0) :f #X21 :sp (NOP) :d "number of occupants") (:par :t FACTOR :n M :x S_P :ie 1.0 :kv (REAL 0.6 10.0) :f #X21 :sp (NOP) :d "Activity[Met], 1 Met = 58 W/m2") (:par :t HEATCOND :n W :x S_P :ie 0.0 :kv (FREAL 0.0) :f #X21 :sp (NOP) :d "Outer work, normally 0") (:par :t FACTOR :n ICL :x S_P :ie 1.0 :kv (REAL 0.0 2.0) :f #X21 :sp (NOP) :d "Heat res[clo] of clothes 1 clo = 0.155 (m2 K)/W") (:par :t VELOCITY :n AIRVEL :x S_P :ie 0.1 :kv (REAL 0.0 1.0) :f #X29 :sp (NOP) :d "Air velocity") (:par :t LENGTH :n ZOP :x S_P :ie 0.6 :kv (FREAL 0.0) :f #X21 :sp (NOP) :d "Avg height of person, sitting .6, standing 1.1") (:par :t LENGTH :n ZTERM :x S_P :ie 2.4 :kv (FREAL 0.0) :f #X21 :sp (NTERMINAL) :d "Height of terminal") (:par :t LENGTH :n ZSENSOR :x S_P :ie 2.4 :kv (FREAL (0.0)) :f #X21 :sp (NSENSOR) :d "Height of sensor") (:par :t HEATFLUX :n QMAXLOC :x S_P :ie 0.0 :kv FREAL :f #X29 :sp (NLOCUNIT) :d "Max power of local unit") (:par :t TEMP :n TCOIL :x S_P :ie 5.0 :kv FREAL :f #X21 :sp (NLOCUNIT) :d "Coil temperature") (:par :t FACTOR :n COP :x S_P :ie 1.0 :kv (FREAL 1.0) :f #X21 :sp (NLOCUNIT) :d "COP of local (cooling) unit") (:par :t AREA :n AINTWALL :x S_P :ie 3.0 :kv (FREAL (0.0)) :f #X21 :sp (NINTWALL) :d "Area of internal walls") (:par :t FACTOR :n NLAYERS :x S_P :ie 1.0 :kv (FREAL 1.0) :f #X21 :sp (NINTWALL) :d "Number of layers") (:par :t FACTOR :n EPSSURFI :x S_P :ie 0.9 :kv (REAL (0.0) 1.0) :f #X21 :sp (NINTWALL) :d "long wave emissivity") (:par :t FACTOR :n REFLSURFI :x S_P :ie 0.5 :kv (REAL (0.0) 1.0) :f #X21 :sp (NINTWALL) :d "short wave reflectance") (:par :t HEATCONDA :n HCONV :x S_P :ie 1.0 :kv FREAL :f #X21 :sp (NINTWALL) :d "Convective film coeff negative for walls positive for convective masses") (:par :t FACTOR :n MISCSELECTOR :x S_P :ie 1.01 :kv (REAL 1.0 7.0) :f #X21 :sp (NMISC) :d "determines signal for MiscMeasure 1.0i = Operative temp at op loc i 2.0i = (PPD - 5) index with PMV sign at op loc i 3.0i = Mean rad temp at op loc i 4.0i = Mean sufr temp of main surf i 5.0i = Surface temper at surf i 6.0i = Air temp at op loc i 7.0 = Air dewpoint temperature") (:par :t FACTOR :n EPSSURF :x S_P :ie 0.9 :kv (REAL (0.0) 1.0) :f #X21 :sp (NSURF) :d "long wave emissivity") (:par :t FACTOR :n REFLSURF :x S_P :ie 0.5 :kv (REAL (0.0) 1.0) :f #X21 :sp (NSURF) :d "short wave reflectance") (:par :t ANGLE :n SLOPESURF :x S_P :ie 90.0 :kv (REAL 0.0 180.0) :f #X21 :sp (NSURF) :d "surface slope, 0=floor, 180=ceiling") (:par :t FACTOR :n MAINSURF :x S_P :ie 1.0 :kv (FREAL 1.0) :f #X21 :sp (NSUB) :d "subsurface's main surface number") (:par :t FACTOR :n SUBSUB :x S_P :ie 1.0 :kv (FREAL 1.0) :f #X21 :sp (NSUBSUB NS) :d "[1,s] is part of [2,s]; sorted from innermost; not used for parts of main") (:par :t LENGTH :n L :x S_P :ie 0.01 :kv (FREAL (0.0)) :f #X21 :sp (NINTWALL NMAXLAYR) :d "Layer thickness") (:par :t DENSITY :n RHO :x S_P :ie 1000.0 :kv (FREAL (0.0)) :f #X21 :sp (NINTWALL NMAXLAYR) :d "Layer density") (:par :t HEATCONDL :n LAMBDA :x S_P :ie 0.13 :kv (FREAL (0.0)) :f #X21 :sp (NINTWALL NMAXLAYR) :d "Layer heat cond") (:par :t HEATCAPM :n CP :x S_P :ie 1300.0 :kv (FREAL (0.0)) :f #X21 :sp (NINTWALL NMAXLAYR) :d "Layer heat cap") (:par :t LENGTH :n COORDVERT :x S_P :ie 0.0 :kv FREAL :f #X21 :sp (NVERT NC) :d "coordinates of vertices") (:par :t FACTOR :n VERTSURF :x S_P :ie 1.0 :kv (FREAL 1.0) :f #X21 :sp (NALL NV) :d "vertices of surfaces") (:par :t LENGTH :n LOCOP :x S_P :ie 0.0 :kv FREAL :f #X21 :sp (NOP NC) :d "locations of op points") ;; :variables (:var :t TEMP :n TAIR :x DER :iv 25.0 :kv (FREAL -273.16) :f #X6 :d "Zone air temp, at ceiling level") (:var :t TEMP :n TINTWALL :x DER :iv 25.0 :kv (FREAL -273.16) :f #X6 :d "Temp of internal walls") (:var :t FRACTION_Y :n XCO2 :x DER :iv 594.0 :kv (FREAL (0.0)) :f #X6 :d "Fraction conc in zone") (:var :t HUMRATIO :n XHUMLOC :x DER :iv 0.002 :kv (FREAL (0.0)) :f #X6 :d "Humidity in zone, local only ratio [kg/kg]") (:var :t HEATFLUX :n QLWOCC2ZONE :x U :iv 0.0 :kv FREAL :f #XA :d "Rad load from occ (total)") (:var :t FACTOR :n GRADIENT :x U :iv -1.0 :kv FREAL :f #X2 :d "Temperature gradient, >0 determined by model w displacement vent, -1 w/o displacement") (:var :t GENERIC :n EWORKPLANE :x U :iv 0.0 :kv (FREAL 0.0) :f #X2 :d "Illumin. at work plane") (:var :t TEMP :n TAIRTERM_0 :x U :iv 20.0 :kv (FREAL -273.16) :f #X2 :d "Temp at term_0 heigth") (:var :t MASSFLOW :n MF_0 :x U :iv 0.024 :kv FREAL :f #XA :d "Mass flow from term_0") (:var :t HUMRATIO :n XHUM :x U :iv 0.002 :kv (FREAL (0.0)) :f #X2 :d "Humidity in zone, repoerted out from model ratio [kg/kg]") (:var :t FACTOR :n RELATIVEHUM :x U :iv 0.3 :kv (REAL (0.0) 1.0) :f #X2 :d "Zone relative humidity") (:var :t CONTROL :n LITEON :x X :iv 0.0 :kv (REAL 0.0 1.0) :f #X1 :d "Scheduled Lite On / Off") (:var :t CONTROL :n AUTOLITEON :x X :iv 0.0 :kv (REAL 0.0 1.0) :f #X1 :d "Autom. conrolled Lite On / Off") (:var :t HEATFLUX :n Q_0 :x X :iv 917.0 :kv FREAL :f #X9 :d "Heat flux from term_0") (:var :t FRACTFLOW_Y :n XF_0 :x X :iv 0.0 :kv FREAL :f #X9 :d "Fract flow from term_0") (:var :t HUMFLOW :n VAPF_0 :x X :iv 0.0 :kv FREAL :f #X9 :d "Vapour flow, term_0") (:var :t PRESSURE :n P :x X :iv 1325.0 :kv (FREAL (0.0)) :f #X1 :d "Zone air pressure") (:var :t CONTROL :n CHGSTRAT :x A_S :iv 0.0 :kv (REAL -1.0 1.0) :f #X10 :d "Ventilation change") (:var :t GENERIC :n GRADON :x A_S :iv 0.0 :kv (REAL 0.0 1.0) :f #X10 :d "Gradient on / off") (:var :t HUMRATIO :n HUMAS :x A_S :iv -0.1 :kv FREAL :f #X10 :d "Sat memory") (:var :t FACTOR :n SATURATED :x A_S :iv 0.0 :kv (REAL 0.0 1.0) :f #X10 :d "0 = Normal 1 = Saturated") (:var :t RADIATION :n QDAYLITE :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X148 :d "total SW net thru all wdws") (:var :t RADIATION :n QSW2AMB :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X148 :d "total SW back thru all wdws") (:var :t ELPOWERCONS :n QLITE :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X140 :d "Supplied lite power") (:var :t HEATFLUX :n QSWLITE :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X148 :d "SW radiation from light") (:var :t HEATFLUX :n QLWLITE :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X148 :d "LW radiation from light") (:var :t HEATFLUX :n QCVLITE :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X148 :d "Convective heat from light") (:var :t HEATFLUX :n QCDINT2ZONE :x LOC :iv 216.0 :kv FREAL :f #X148 :d "Total from internal walls") (:var :t HEATFLUX :n QCDWALLS2ZONE :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Conducted from walls") (:var :t HEATFLUX :n QLCWINDS2ZONE :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Flow from windows") (:var :t HEATFLUX :n QHC2ZONE :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Total flow from HCSurf") (:var :t HEATFLUX :n QCVDEV2ZONE :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Total flow from cv dev") (:var :t HEATFLUX :n QCV2ZONE :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Convected flux to zone") (:var :t ELPOWERCONS :n QCVEQUIP2ZONE :x LOC :iv 0.0 :kv FREAL :f #X140 :d "Conv load from equipm") (:var :t ELPOWERCONS :n QRADEQUIP2ZONE :x LOC :iv 0.0 :kv FREAL :f #X140 :d "Rad load from equipm") (:var :t HEATFLUX :n QEQUIP2ZONE :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Total load from equipm") (:var :t HEATFLUX :n QCVOCC2ZONE :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Conv load from occ (total)") (:var :t HEATFLUX :n QOCC2ZONE :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Total load from occ") (:var :t TEMP :n TAIRMEAN :x LOC :iv 25.0 :kv (FREAL -273.16) :f #X140 :d "Mean air temp") (:var :t MASSFLOW :n MSUPPLY :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Supply mass flow") (:var :t HUMRATIO :n HUMSUPPLY :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X140 :d "Humidity in supply") (:var :t TEMP :n TSUPPLY :x LOC :iv 25.0 :kv (FREAL -273.16) :f #X140 :d "Supply air temp") (:var :t ENTHALPY :n HSUPPLY :x LOC :iv 40000.0 :kv FREAL :f #X140 :d "Enthalpy of supply air") (:var :t TEMP :n TAIRFLOOR :x LOC :iv 25.0 :kv (FREAL -273.16) :f #X140 :d "Temp just above floor") (:var :t TEMP :n TAIRFLOORCHK :x LOC :iv 25.0 :kv (FREAL -273.16) :f #X140 :d "Temp just above floor") (:var :t GENERIC :n TOTWORKHOUR :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X140 :d "Total working hours") (:var :t GENERIC :n LOSTWORKHOUR :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X140 :d "Lost working hours") (:var :t FACTOR :n LMPERW :x LOC :iv 118.0 :kv (FREAL 0.0) :f #X140 :d "Lumen per solar watt") (:var :t HEATFLUX :n QTERM2ZONE :x LOC :iv 917.0 :kv FREAL :f #X148 :d "Heat flux from terminals") (:var :t HEATFLUX :n QTERM2AIR :x LOC :iv 917.0 :kv FREAL :f #X148 :d "Heat flux from terminals") (:var :t GENERIC :n XCO2VOL :x LOC :iv 330.0 :kv (FREAL (0.0)) :f #X140 :d "CO2 ppm/vol") (:var :t HUMFLOW :n VAPFOCC2ZONE :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X148 :d "Vapour flow from occ") (:var :t HUMRATIO :n HUMSAT :x LOC :iv 0.005 :kv (FREAL (0.0)) :f #X140 :d "Saturated humidity") (:var :t PRESSURE :n PVAP :x LOC :iv 1300.0 :kv (REAL (0.0) 2700.0) :f #X140 :d "Vapour pressure") (:var :t PRESSURE :n PVAPSAT :x LOC :iv 4000.0 :kv (FREAL (0.0)) :f #X140 :d "Saturation pressure") (:var :t NUMFLOW_H :n ACH :x LOC :iv 0.5 :kv (FREAL 0.0) :f #X148 :d "Air change per hour") (:var :t ENTHALPY :n HAIR :x LOC :iv 20000.0 :kv FREAL :f #X140 :d "Air enthalpy") (:var :t HEATFLUX :n QLOCUNIT :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Heatflux from all local units") (:var :t TEMP :n TMRTOPDIR :x LOC :ie 25.0 :kv (FREAL -273.16) :f #X140 :sp (NMAIN) :d "Directed mean rad temp at op loc") (:var :t TEMP :n TOPDIR :x LOC :ie 25.0 :kv (FREAL -273.16) :f #X140 :sp (NMAIN) :d "Directed operative temperature at op loc") (:var :t HEATFLUX :n QCDWALL2SURF :x U :ie 0.0 :kv FREAL :f #XA :sp (NWALL) :d "Conducted from wall") (:var :t TEMP :n TWALL :x X :ie 25.0 :kv (FREAL -273.16) :f #X1 :sp (NWALL) :d "Wall surface temp") (:var :t RADIATION :n QSWWIND2AMB :x U :ie 0.0 :kv (FREAL * 0.0) :f #XA :sp (NWIND) :d "SW rad leaving, (all diffuse), POS_IN") (:var :t HEATFLUX :n QLCWIND2ZONE :x U :ie 0.0 :kv FREAL :f #XA :sp (NWIND) :d "Flow from window") (:var :t ANGLE :n AZIMUTIN :x X :ie 0.0 :kv (REAL 0.0 360.0) :f #X1 :sp (NWIND) :d "Az of incident direct") (:var :t ANGLE :n ELEVIN :x X :ie 0.0 :kv (REAL -90.0 90.0) :f #X1 :sp (NWIND) :d "Elev of incident direct") (:var :t RADIATION :n QDFWIND2ZONE :x X :ie 0.0 :kv (FREAL 0.0) :f #X9 :sp (NWIND) :d "SW diff rad entering") (:var :t RADIATION :n QDRWIND2ZONE :x X :ie 0.0 :kv (FREAL 0.0) :f #X9 :sp (NWIND) :d "SW dir rad entering") (:var :t TEMP :n TWIND :x X :ie 25.0 :kv (FREAL -273.16) :f #X1 :sp (NWIND) :d "Window surface temp, innermost pane") (:var :t RADIATION :n QSWWIND2ZONE :x LOC :ie 0.0 :kv (FREAL 0.0) :f #X148 :sp (NWIND) :d "total SW in thru wdw") (:var :t HEATFLUX :n QHCSURFFRONT :x U :ie 0.0 :kv FREAL :f #XA :sp (NHCSURF) :d "Flow from HCSurf front") (:var :t TEMP :n TAIRHCSURF :x U :ie 25.0 :kv (FREAL -273.16) :f #X2 :sp (NHCSURF) :d "Air temp at HC surf") (:var :t HEATFLUX :n QHCSURFBACK :x X :ie 0.0 :kv FREAL :f #X9 :sp (NHCSURF) :d "Flow from HCSurf back") (:var :t TEMP :n THCSURF :x X :ie 25.0 :kv (FREAL -273.16) :f #X1 :sp (NHCSURF) :d "Heating or Cooling surface Temp") (:var :t TEMP :n TCVDEVAIR :x U :ie 25.0 :kv (FREAL -273.16) :f #X2 :sp (NCVDEV) :d "Air temp at devices") (:var :t HEATFLUX :n QCVDEV :x X :ie 0.0 :kv FREAL :f #X9 :sp (NCVDEV) :d "Flow from conv device") (:var :t CONTROL :n SCHEDEQUIP :x X :ie 0.0 :kv (REAL 0.0 1.0) :f #X1 :sp (NUNIT) :d "Equipment On / Off") (:var :t TEMP :n TCL :x U :ie 30.0 :kv (FREAL -273.16) :f #X2 :sp (NOP) :d "Temp of clothes") (:var :t CONTROL :n SCHEDOCC :x X :ie 0.0 :kv (REAL 0.0 1.0) :f #X1 :sp (NOP) :d "Occupancy On / Off") (:var :t HEATFLUX :n QSWEAT :x LOC :ie 0.0 :kv FREAL :f #X148 :sp (NOP) :d "Sweat from occ") (:var :t HEATFLUX :n QCVOCC :x LOC :ie 0.0 :kv FREAL :f #X148 :sp (NOP) :d "Conv load from occ") (:var :t HEATFLUX :n QOCCVAP :x LOC :ie 0.0 :kv FREAL :f #X148 :sp (NOP) :d "Vapour load from occ") (:var :t HEATFLUX :n QOCCMET :x LOC :ie 0.0 :kv FREAL :f #X148 :sp (NOP) :d "Total load from occ") (:var :t HEATFLUX :n QLWOCC :x LOC :ie 0.0 :kv FREAL :f #X148 :sp (NOP) :d "Rad load from occ") (:var :t TEMP :n TAIROP :x LOC :ie 25.0 :kv (FREAL -273.16) :f #X140 :sp (NOP) :d "Air temp at 'operative'location") (:var :t TEMP :n TMRTOP :x LOC :ie 25.0 :kv (FREAL -273.16) :f #X140 :sp (NOP) :d "Mean rad temp at op loc") (:var :t TEMP :n TOP :x LOC :ie 25.0 :kv (FREAL -273.16) :f #X140 :sp (NOP) :d "Operative temperature") (:var :t FACTOR :n PMV :x LOC :ie 0.0 :kv (REAL -3.0 3.0) :f #X140 :sp (NOP) :d "PMV index") (:var :t FACTOR :n PPD :x LOC :ie 5.0 :kv (REAL 5.0 100.0) :f #X140 :sp (NOP) :d "PPD index") (:var :t FACTOR :n HCL :x LOC :ie 4.0 :kv (FREAL 0.0) :f #X140 :sp (NOP) :d "Heat transfer coeff clothes to air") (:var :t TEMP :n TAIRTERM :x U :ie 20.0 :kv (FREAL -273.16) :f #X2 :sp (NTERMINAL) :d "Temp at term[i] heigth") (:var :t MASSFLOW :n MF :x X :ie 0.024 :kv FREAL :f #X9 :sp (NTERMINAL) :d "Mass flow from term[i]") (:var :t HEATFLUX :n Q :x X :ie 917.0 :kv FREAL :f #X9 :sp (NTERMINAL) :d "Heat flux from term[i]") (:var :t FRACTFLOW_Y :n XF :x X :ie 0.0 :kv FREAL :f #X9 :sp (NTERMINAL) :d "Fract flow from term[i]") (:var :t HUMFLOW :n VAPF :x X :ie 0.0 :kv FREAL :f #X9 :sp (NTERMINAL) :d "Vapour flow, term[i]") (:var :t TEMP :n TSENSOR :x U :ie 25.0 :kv (FREAL -273.16) :f #X2 :sp (NSENSOR) :d "Temp read for ctrl") (:var :t CONTROL :n CTRLOCUNIT :x X :ie 0.0 :kv (REAL 0.0 1.0) :f #X1 :sp (NLOCUNIT) :d "Local unit On / Off") (:var :t ENTHALPY :n HCHILLCOIL :x LOC :ie 20000.0 :kv FREAL :f #X140 :sp (NLOCUNIT) :d "Leaving air enthalpy") (:var :t HEATFLUX :n QLOCALUNIT :x LOC :ie 0.0 :kv FREAL :f #X148 :sp (NLOCUNIT) :d "Heatflux from local unit[i]") (:var :t HUMRATIO :n WCHILLCOIL :x LOC :ie 0.003 :kv (FREAL (0.0)) :f #X140 :sp (NLOCUNIT) :d "Moisture cont of cooling coil leaving air") (:var :t MASSFLOW :n MAIR :x LOC :ie 0.0 :kv (FREAL 0.0) :f #X148 :sp (NLOCUNIT) :d "Ficticious air massflow throug the unit") (:var :t ELPOWERCONS :n QEL :x LOC :ie 0.0 :kv (FREAL 0.0) :f #X140 :sp (NLOCUNIT) :d "El. consumption") (:var :t HUMFLOW :n WF :x LOC :ie 0.0 :kv (FREAL 0.0) :f #X148 :sp (NLOCUNIT) :d "Condesation in local unit") (:var :t GENERIC :n MISCMEASURE :x U :ie 0.0 :kv FREAL :f #X2 :sp (NMISC) :d "MiscMeasure signal") (:var :t RADIATION :n QLW2SURF :x LOC :ie 0.0 :kv FREAL :f #X148 :sp (NSURF) :d "LW net to surface") (:var :t RADIATION :n QSW2SURF :x LOC :ie 0.0 :kv FREAL :f #X148 :sp (NSURF) :d "SW net to surface") (:var :t RADIATIONA :n M0 :x LOC :ie 462.0 :kv (FREAL (0.0)) :f #X148 :sp (NSURF) :d "Black body rad") (:var :t HEATCONDA :n H :x LOC :ie 2.0 :kv (FREAL 0.0) :f #X140 :sp (NSURF) :d "Surface film coeff") (:var :t TEMP :n TAIRSURF :x LOC :ie 25.0 :kv (FREAL -273.16) :f #X140 :sp (NSURF) :d "Mean air temp at surf") (:var :t TEMP :n TSURF :x LOC :ie 25.0 :kv (FREAL -273.16) :f #X140 :sp (NSURF) :d "Surface temp") (:var :t RADIATION :n QSWSURF2ZONE :x LOC :ie 0.0 :kv (FREAL 0.0) :f #X148 :sp (NSURF) :d "Daylight from surfaces") ;; :interfaces (:int :t TQ :n TQWALL :v (TWALL QCDWALL2SURF) :dir (NIL -1) :sp (NWALL)) (:int :t TQ :n TQWIND :v (TWIND QLCWIND2ZONE) :dir (NIL -1) :sp (NWIND)) (:int :t RRRWW :n RADWIND :v (QDFWIND2ZONE QDRWIND2ZONE QSWWIND2AMB AZIMUTIN ELEVIN) :dir (-1 -1 -1 NIL NIL) :sp (NWIND)) (:int :t TQ :n TQHCFRONT :v (THCSURF QHCSURFFRONT) :dir (NIL -1) :sp (NHCSURF)) (:int :t TQ :n TQHCBACK :v (TAIRHCSURF QHCSURFBACK) :dir (NIL -1) :sp (NHCSURF)) (:int :t TQ :n TQCVDEV :v (TCVDEVAIR QCVDEV) :dir (NIL -1) :sp (NCVDEV)) (:int :t BIDIRAIR :n TERM_0 :v (P MF_0 TAIRTERM_0 Q_0 XCO2 XF_0 XHUM VAPF_0) :dir (NIL -1 NIL -1 NIL -1 NIL -1)) (:int :t BIDIRAIR :n TERM :v (P MF TAIRTERM Q XCO2 XF XHUM VAPF) :dir (NIL -1 NIL -1 NIL -1 NIL -1) :sp (NTERMINAL)) (:int :t CONTROLLINK :n SETOCC :v (SCHEDOCC) :dir (NIL) :sp (NOP)) (:int :t CONTROLLINK :n SETEQUIP :v (SCHEDEQUIP) :dir (NIL) :sp (NUNIT)) (:int :t CONTROLLINK :n CTRLOCALUNIT :v (CTRLOCUNIT) :dir (NIL) :sp (NLOCUNIT)) (:int :t CONTROLLINK :n CTRLLIGHT :v (LITEON) :dir (NIL)) (:int :t CONTROLLINK :n AUTOCTRLLIGHT :v (AUTOLITEON) :dir (NIL)) (:int :t GENERIC :n LITELEVEL :v (EWORKPLANE) :dir (NIL)) (:int :t T :n READTEMP :v (TSENSOR) :dir (NIL) :sp (NSENSOR)) (:int :t GENERIC :n READHUMIDITY :v (RELATIVEHUM) :dir (NIL)) (:int :t X_Y :n READCO2 :v (XCO2) :dir (NIL)) (:int :t GENERIC :n MISCMEASLINK :v (MISCMEASURE) :dir (NIL) :sp (NMISC))) ;;;;;; ;;;;;;end of model CEDETZON ;;;;;; ;;; ;;; model CEEXHT ;;; ((template :n CEEXHT :c :eo :d "Idealized EXHaust Terminal for VAV or natural ventilation.") ;; :model-parameters ;; :parameters (:par :t PRESSURE :n DP0 :x S_P :v 5.0 :kv (FREAL (0.0)) :f #X21 :d "limit for linear flow") (:par :t MASSFLOW :n MMAX :x S_P :v 0.1 :kv (FREAL (0.0)) :f #X29 :d "max requestable massflow") (:par :t MASSFLOW :n MMIN :x S_P :v 0.01 :kv (FREAL (0.0)) :f #X29 :d "min requestable massflow") (:par :t FACTOR :n CLOW :x S_P :v 0.05 :kv (FREAL 0.0) :f #X21 :d "massflow when 'off', i.e. CentralMode = 0") ;; :variables (:var :t MASSFLOW :n M :x U :iv 0.026 :kv (FREAL 0.0) :f #XA :d "massflow through terminal") (:var :t HEATFLUX :n Q :x U :iv 1111.0 :kv FREAL :f #XA :d "heat convected by massflow") (:var :t FRACTFLOW_Y :n XF :x U :iv 15.0 :kv FREAL :f #XA :d "pollution transport") (:var :t HUMFLOW :n HUMF :x U :iv 0.0001 :kv FREAL :f #XA :d "moisture transport") (:var :t PRESSURE :n P1 :x X :iv 1321.0 :kv FREAL :f #X1 :d "zone air pressure") (:var :t PRESSURE :n P2 :x X :iv 1275.0 :kv FREAL :f #X1 :d "outlet pressure") (:var :t TEMP :n T :x X :iv 15.0 :kv (FREAL -273.16) :f #X1 :d "temperature") (:var :t FRACTION_Y :n X :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "pollutant fraction") (:var :t HUMRATIO :n HUM :x X :iv 0.006 :kv (FREAL (0.0)) :f #X1 :d "moisture fraction") (:var :t CONTROL :n CONTR :x X :iv 0.0 :kv (FREAL * 1.0) :f #X1 :d "Controller input (for CentralMode >0) 0 -> mMin, 1 -> mMax") (:var :t CONTROL :n CENTRALMODE :x X :iv 1.0 :kv (FREAL -1.0) :f #X1 :d "Mode control, = >0 local control 0 low flow (off) <0 natural vent") (:var :t MASSFLOW :n M_ASS :x A_S :iv 0.026 :kv (FREAL 0.0) :f #X18 :d "massflow through terminal") (:var :t PRESSURE :n DP :x LOC :iv 45.0 :kv (FREAL 0.0) :f #X140 :d "eff pressure diff") (:var :t ENTHALPY :n HEXHT :x LOC :iv 42700.0 :kv FREAL :f #X140 :d "enthalpy of exhaust air") (:var :t HEATFLUX :n QN21 :x LOC :iv 0.0 :kv FREAL :f #X148 :d "HeatFlux into zone") (:var :t VOLFLOW_M :n FI12 :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Volume flow out of zone") ;; :interfaces (:int :t BIDIRAIR :n ZONE :v (P1 M T Q X XF HUM HUMF) :dir (NIL -1 NIL -1 NIL -1 NIL -1)) (:int :t UNIAIR :n OUTLET :v (P2 M T X HUM) :dir (NIL 1 NIL NIL NIL)) (:int :t CONTROLLINK :n CONTROL_IN :v (CONTR) :dir (NIL)) (:int :t CONTROLLINK :n FORCE_CONTROL :v (CENTRALMODE) :dir (NIL))) ;;;;;; ;;;;;;end of model CEEXHT ;;;;;; ;;; ;;; model CEFAN ;;; ((template :n CEFAN :c :eo :d "FAN w On/Off control (low flow when off). Efficiency & temp rise given.") ;; :model-parameters ;; :parameters (:par :t PRESSURE :n DPMAX :x S_P :v 500.0 :kv (FREAL (0.0)) :f #X21 :d "Pressure head at FanOn = 1") (:par :t PRESSURE :n DPMIN :x S_P :v 0.1 :kv (FREAL (0.0)) :f #X21 :d "Pressure head at FanOn <= 0 (for numerical reasons)") (:par :t TEMP :n TRISE :x S_P :v 1.0 :kv (FREAL 0.0) :f #X21 :d "Temp rise in fan") (:par :t FACTOR :n ETA :x S_P :v 0.9 :kv (REAL (0.0) 1.0) :f #X21 :d "Fan efficiency") ;; :variables (:var :t PRESSURE :n PAIROUT :x U :iv 1425.0 :kv FREAL :f #X2 :d "Pressure of leaving air") (:var :t TEMP :n TAIROUT :x U :iv 20.0 :kv (FREAL -273.16) :f #X2 :d "Temp of leaving air") (:var :t CONTROL :n FANON :x X :iv 1.0 :kv (REAL 0.0 1.0) :f #X1 :d "0 = Fan Off 1 = Fan On") (:var :t PRESSURE :n PAIRIN :x X :iv 1325.0 :kv FREAL :f #X1 :d "Pressure of entering air") (:var :t MASSFLOW :n MAIR :x X :iv 3.2 :kv (FREAL 0.0) :f #X9 :d "Dry air massflow rate") (:var :t TEMP :n TAIRIN :x X :iv 18.0 :kv (FREAL -273.16) :f #X1 :d "Temp of entering air") (:var :t HUMRATIO :n WAIR :x X :iv 0.01 :kv (REAL 0.0 1.0) :f #X1 :d "Humidity ratio of entering air") (:var :t FRACTION_Y :n XAIR :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "Pollutant fraction") (:var :t PRESSURE :n DP :x LOC :iv 100.0 :kv (FREAL 0.0) :f #X140 :d "Pressure rise in fan") (:var :t ELPOWERCONS :n QSUP :x LOC :iv 296.0 :kv (FREAL 0.0) :f #X140 :d "Power supply of fan") (:var :t VOLFLOW_M :n VOLFLOW :x LOC :iv 2666.0 :kv (FREAL 0.0) :f #X148 :d "Air flow in l/s") ;; :interfaces (:int :t CONTROLLINK :n FANCONTROL :v (FANON) :dir (NIL)) (:int :t UNIAIR :n FANIN :v (PAIRIN MAIR TAIRIN XAIR WAIR) :dir (NIL -1 NIL NIL NIL)) (:int :t UNIAIR :n FANOUT :v (PAIROUT MAIR TAIROUT XAIR WAIR) :dir (NIL 1 NIL NIL NIL))) ;;;;;; ;;;;;;end of model CEFAN ;;;;;; ;;; ;;; model CELEAK ;;; ((template :n CELEAK :c :eo :d "Powerlaw LEAK. Bidirectional transport of energy, humidity, & mass fraction.") ;; :model-parameters ;; :parameters (:par :t GENERIC :n INPAR :x S_P :v 1.0 :kv (REAL 0.0 1.0) :f #X21 :d "Input parameter 0 = ela 1 = c_t") (:par :t GENERIC :n C_T :x S_P :v 1.0 :kv (FREAL 0.0) :f #X21 :d "powerlaw coeff [kg/(s Pa**n)]") (:par :t GENERIC :n N :x S_P :v 0.5 :kv (REAL 0.5 1.0) :f #X21 :d "powerlaw exponent [dimless]") (:par :t AREA :n ELA :x S_P :v 0.0 :kv (FREAL 0.0) :f #X21 :d "equivalent leakage area at Dp=4 Pa (C_d = 1)") (:par :t HEATCOND :n UABRIDGE :x S_P :v 0.0 :kv (FREAL 0.0) :f #X21 :d "UA-value for conductive cold bridge") (:par :t LENGTH :n DZ :x S_P :v 0.0 :kv FREAL :f #X21 :d "rise fr terminal_1 to 2 (may be < 0)") (:par :t LENGTH :n ZR1 :x S_P :v 0.0 :kv (FREAL 0.0) :f #X21 :d "leak height from floor of neighb. 1") (:par :t LENGTH :n ZA1 :x S_P :v 0.0 :kv FREAL :f #X21 :d "absolute floor level of neighb. 1") (:par :t LENGTH :n ZA2 :x S_P :v 0.0 :kv FREAL :f #X21 :d "absolute floor level of neighb. 2") (:par :t PRESSURE :n DP0 :x S_P :v 0.1 :kv (FREAL (0.0)) :f #X21 :d "limit for linear flow") ;; :variables (:var :t MASSFLOW :n M :x U :iv 0.001 :kv FREAL :f #XA :d "massflow through leak, from 1 to 2") (:var :t HEATFLUX :n Q :x U :iv 0.0 :kv FREAL :f #XA :d "heat moved by massflow") (:var :t FRACTFLOW_Y :n XF :x U :iv 0.001 :kv FREAL :f #XA :d "fraction moved by massflow") (:var :t HUMFLOW :n HUMF :x U :iv 0.001 :kv FREAL :f #XA :d "hum. moved by massflow") (:var :t PRESSURE :n P1 :x X :iv 1.0 :kv FREAL :f #X1 :d "terminal 1 pressure") (:var :t PRESSURE :n P2 :x X :iv 2.0 :kv FREAL :f #X1 :d "terminal 2 pressure") (:var :t TEMP :n T1 :x X :iv 20.0 :kv (FREAL -273.16) :f #X1 :d "Temperature of neighbor 1") (:var :t TEMP :n T2 :x X :iv 20.0 :kv (FREAL -273.16) :f #X1 :d "Temperature of neighbor 2") (:var :t FRACTION_Y :n X1 :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "fraction of neighbor 1") (:var :t FRACTION_Y :n X2 :x X :iv 0.1 :kv (FREAL 0.0) :f #X1 :d "fraction of neighbor 2") (:var :t HUMRATIO :n HUM1 :x X :iv 0.005 :kv (REAL 0.0 1.0) :f #X1 :d "hum. of neighbor 1") (:var :t HUMRATIO :n HUM2 :x X :iv 0.005 :kv (REAL 0.0 1.0) :f #X1 :d "hum. of neighbor 2") (:var :t DENSITY :n RHO :x A_S :iv 1.2 :kv (REAL 0.5 3.0) :f #X10 :d "density of leak air") (:var :t MASSFLOW :n M_ASS :x A_S :iv 0.001 :kv FREAL :f #X18 :d "massflow through leak, from 1 to 2") (:var :t DENSITY :n RHO1 :x LOC :iv 1.2 :kv (REAL 0.5 3.0) :f #X140 :d "density of neighb.1 air") (:var :t DENSITY :n RHO2 :x LOC :iv 1.2 :kv (REAL 0.5 3.0) :f #X140 :d "density of neighb.2 air") (:var :t PRESSURE :n DP :x LOC :iv 0.0 :kv FREAL :f #X140 :d "effective pressure difference") (:var :t ENTHALPY :n DELTA :x LOC :iv 1.0 :kv (FREAL 0.0) :f #X140 :d "Enthalpy difference") (:var :t HEATFLUX :n QN12 :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Net HeatFlux from 1 to 2") (:var :t HEATFLUX :n QN21 :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Net HeatFlux from 2 to 1") (:var :t HEATFLUX :n QBRIDGE :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Cold Bridge HeatFlux") (:var :t VOLFLOW_M :n FI12 :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Volume flow from term 1 to 2") (:var :t VOLFLOW_M :n FI21 :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Volume flow from term 2 to 1") ;; :interfaces (:int :t BIDIRAIR :n TERMINAL_1 :v (P1 M T1 Q X1 XF HUM1 HUMF) :dir (NIL -1 NIL -1 NIL -1 NIL -1)) (:int :t BIDIRAIR :n TERMINAL_2 :v (P2 M T2 Q X2 XF HUM2 HUMF) :dir (NIL 1 NIL 1 NIL 1 NIL 1))) ;;;;;; ;;;;;;end of model CELEAK ;;;;;; ;;; ;;; model CELVO ;;; ((template :n CELVO :c :eo :d "Two-way flows thru a Large Vertical rectangular Opening at any height.") ;; :model-parameters ;; :parameters (:par :t LENGTH :n Z_T :x S_P :v 2.0 :kv (REAL (0.0) 100.0) :f #X21 :d "Opening height") (:par :t LENGTH :n W :x S_P :v 1.0 :kv (REAL (0.0) 100.0) :f #X21 :d "Opening width") (:par :t LENGTH :n Z_Z :x S_P :v 2.4 :kv (FREAL (0.0)) :f #X21 :d "Average zone height") (:par :t LENGTH :n ZB_1 :x S_P :v 0.0 :kv (REAL -5.0 100.0) :f #X21 :d "Opening bottom height from floor, zone 1") (:par :t LENGTH :n ZB_2 :x S_P :v 0.0 :kv (REAL -5.0 100.0) :f #X21 :d "Opening bottom height from floor, zone 2") (:par :t PRESSURE :n DPLIN :x S_P :v 0.001 :kv (FREAL (0.0)) :f #X21 :d "Pressure difference to linearize") ;; :variables (:var :t MASSFLOW :n M12 :x U :iv 0.0 :kv FREAL :f #XA :d "Massflow") (:var :t MASSFLOW :n M21 :x U :iv 0.0 :kv FREAL :f #XA :d "Massflow") (:var :t HEATFLUX :n Q12 :x U :iv 0.0 :kv FREAL :f #XA :d "HeatFlux from zone 1 to 2") (:var :t HEATFLUX :n Q21 :x U :iv 0.0 :kv FREAL :f #XA :d "HeatFlux from zone 2 to 1") (:var :t FRACTFLOW_Y :n XF12 :x U :iv 0.0 :kv FREAL :f #XA :d "Amount of fraction trnsp.") (:var :t FRACTFLOW_Y :n XF21 :x U :iv 0.0 :kv FREAL :f #XA :d "Amount of fraction trnsp.") (:var :t HUMFLOW :n HUMF12 :x U :iv 0.0 :kv FREAL :f #XA :d "moisture transport") (:var :t HUMFLOW :n HUMF21 :x U :iv 0.0 :kv FREAL :f #XA :d "moisture transport") (:var :t TEMP :n T1A :x X :iv 20.0 :kv (FREAL -273.16) :f #X1 :d "Zone 1 Temperature") (:var :t TEMP :n T2A :x X :iv 20.0 :kv (FREAL -273.16) :f #X1 :d "Zone 2 Temperature") (:var :t TEMP :n T1B :x X :iv 20.0 :kv (FREAL -273.16) :f #X1 :d "Zone 1 Temperature") (:var :t TEMP :n T2B :x X :iv 20.0 :kv (FREAL -273.16) :f #X1 :d "Zone 2 Temperature") (:var :t PRESSURE :n P1A :x X :iv 1325.0 :kv FREAL :f #X1 :d "Zone 1 floor level pressure") (:var :t PRESSURE :n P2A :x X :iv 1325.0 :kv FREAL :f #X1 :d "Zone 2 floor level pressure") (:var :t PRESSURE :n P1B :x X :iv 1325.0 :kv FREAL :f #X1 :d "Zone 1 floor level pressure") (:var :t PRESSURE :n P2B :x X :iv 1325.0 :kv FREAL :f #X1 :d "Zone 2 floor level pressure") (:var :t CONTROL :n CONTR :x X :iv 0.0 :kv (REAL 0.0 1.0) :f #X1 :d "Control input, 0 closed, 1 open") (:var :t FRACTION_Y :n X1A :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "Zone 1 fraction") (:var :t FRACTION_Y :n X2A :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "Zone 2 fraction") (:var :t FRACTION_Y :n X1B :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "Zone 1 fraction") (:var :t FRACTION_Y :n X2B :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "Zone 2 fraction") (:var :t HUMRATIO :n HUM1A :x X :iv 0.006 :kv (FREAL (0.0)) :f #X1 :d "moisture fraction in") (:var :t HUMRATIO :n HUM2A :x X :iv 0.006 :kv (FREAL (0.0)) :f #X1 :d "moisture fraction zone") (:var :t HUMRATIO :n HUM1B :x X :iv 0.006 :kv (FREAL (0.0)) :f #X1 :d "moisture fraction in") (:var :t HUMRATIO :n HUM2B :x X :iv 0.006 :kv (FREAL (0.0)) :f #X1 :d "moisture fraction zone") (:var :t MASSFLOW :n M12_ASS :x A_S :iv 0.0 :kv FREAL :f #X18 :d "Massflow") (:var :t MASSFLOW :n M21_ASS :x A_S :iv 0.0 :kv FREAL :f #X18 :d "Massflow") (:var :t DENSITY :n RHO1 :x LOC :iv 1.2 :kv (FREAL (0.0)) :f #X140 :d "Zone 1 density") (:var :t DENSITY :n RHO2 :x LOC :iv 1.2 :kv (FREAL (0.0)) :f #X140 :d "Zone 2 density") (:var :t PRESSURE :n DP_T :x LOC :iv 0.1 :kv FREAL :f #X140 :d "Pressure diff, top of opening") (:var :t PRESSURE :n DP_B :x LOC :iv 0.1 :kv FREAL :f #X140 :d "Pressure diff, floor level") (:var :t LENGTH :n WIDTH :x LOC :iv 0.0 :kv FREAL :f #X140 :d "Current width") (:var :t GENERIC :n TOP :x LOC :iv 0.0 :kv FREAL :f #X140 :d "Help variable") (:var :t GENERIC :n BOT :x LOC :iv 0.0 :kv FREAL :f #X140 :d "Help variable") (:var :t MASSFLOW :n M_12 :x LOC :iv 0.001 :kv (FREAL 0.0) :f #X148 :d "Massflow from zone 1 to 2") (:var :t MASSFLOW :n M_21 :x LOC :iv 0.001 :kv (FREAL 0.0) :f #X148 :d "Massflow from zone 2 to 1") (:var :t HEATFLUX :n QN12 :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Net heatFlux for flow from zone 1 to 2") (:var :t HEATFLUX :n QN21 :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Net heatFlux for flow from zone 2 to 1") (:var :t VOLFLOW_M :n FI12 :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Volume flow from zone 1 [to 2]") (:var :t VOLFLOW_M :n FI21 :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Volume flow from zone 2 [to 1]") (:var :t ENTHALPY :n DELTA :x LOC :iv 1.0 :kv (FREAL 0.0) :f #X140 :d "Enthalpy difference") ;; :interfaces (:int :t BIDIRAIR :n TERM1A :v (P1A M12 T1A Q12 X1A XF12 HUM1A HUMF12) :dir (NIL -1 NIL -1 NIL -1 NIL -1)) (:int :t BIDIRAIR :n TERM1B :v (P1B M21 T1B Q21 X1B XF21 HUM1B HUMF21) :dir (NIL 1 NIL 1 NIL 1 NIL 1)) (:int :t BIDIRAIR :n TERM2A :v (P2A M12 T2A Q12 X2A XF12 HUM2A HUMF12) :dir (NIL 1 NIL 1 NIL 1 NIL 1)) (:int :t BIDIRAIR :n TERM2B :v (P2B M21 T2B Q21 X2B XF21 HUM2B HUMF21) :dir (NIL -1 NIL -1 NIL -1 NIL -1)) (:int :t CONTROLLINK :n OPENING :v (CONTR) :dir (NIL))) ;;;;;; ;;;;;;end of model CELVO ;;;;;; ;;; ;;; model CESFBEAM ;;; ((template :n CESFBEAM :c :eo :d "Active cooling OR heating ceiling beam. Stifab-Farex models BRTa and BSAc.") ;; :model-parameters (:par :t system-parameter :n NPOINT :x SMP :v 3 :kv (INTEGER 1 *) :f #X29 :d "number of points") (:par :t system-parameter :n THREE :x CMP :v 3 :kv (INTEGER 3 3) :f #X168 :s (0 T 0 + 3) :d "3") ;; :parameters (:par :t FACTOR :n COLDORHOT :x S_P :v -1.0 :kv (REAL -1.0 1.0) :f #X21 :d "1 for heating, -1 for cooling") (:par :t FACTOR :n AIRFRACT :x S_P :v 1.0 :kv (REAL 0.0 1.0) :f #X21 :d "Device's part of air flow") (:par :t LENGTH :n LENGTH :x S_P :v 1.0 :kv (FREAL (0.0)) :f #X21 :d "Total panel length") (:par :t FACTOR :n KFINLIQ :x S_P :v 0.2 :kv (REAL 0.0 0.5) :f #X21 :d "Fin resistance / Total ditto") (:par :t PRESSURE :n DP0LIQ :x S_P :v 10.0 :kv (FREAL (0.0)) :f #X21 :d "Pressure drop under which waterflow is nolonger maintained") (:par :t MASSFLOW :n MLIQMAX :x S_P :v 0.01 :kv (FREAL (0.0)) :f #X29 :d "Water massflow at Contr = 1 and Dp > dp0") (:par :t MASSFLOW :n MLIQMIN :x S_P :v 0.0001 :kv (FREAL (0.0)) :f #X29 :d "Water massflow at Contr = 0 and Dp > dp0") (:par :t HEATCAPM :n CP_LIQ :x S_P :v 4187.0 :kv (FREAL (0.0)) :f #X21 :d "Liquid specific heat") (:par :t FACTOR :n TABLIQ :x S_P :ie 1.0 :kv (FREAL 0.0) :f #X21 :sp (THREE NPOINT) :d "Coeffs from equation P = k dT^n") ;; :variables (:var :t MASSFLOW :n MLIQ :x U :iv 0.005 :kv (FREAL 0.0) :f #XA :d "Liq massflow") (:var :t TEMP :n TLIQOUT :x U :iv 15.5 :kv (FREAL -273.16) :f #X2 :d "Liq return temperature") (:var :t HEATFLUX :n QZONE :x U :iv 30.0 :kv FREAL :f #XA :d "Heat from zone") (:var :t TEMP :n TSURF :x U :iv 17.0 :kv (FREAL -273.16) :f #X2 :d "Average surface temperature") (:var :t PRESSURE :n PAIR :x X :iv 1375.0 :kv FREAL :f #X1 :d "Air pressure in/out") (:var :t MASSFLOW :n MAIR :x X :iv 0.024 :kv (FREAL 0.0) :f #X9 :d "Air massflow") (:var :t TEMP :n TAIR :x X :iv 26.0 :kv (FREAL -273.16) :f #X1 :d "Supply air temperature") (:var :t FRACTION_Y :n X :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "Pollutant fraction") (:var :t HUMRATIO :n HUM :x X :iv 0.006 :kv (FREAL (0.0)) :f #X1 :d "Moisture fraction") (:var :t PRESSURE :n PLIQIN :x X :iv 600.0 :kv (FREAL 0.0) :f #X1 :d "Pressure at water inlet") (:var :t PRESSURE :n PLIQOUT :x X :iv 0.0 :kv (FREAL 0.0) :f #X1 :d "Pressure at water outlet") (:var :t TEMP :n TLIQIN :x X :iv 15.0 :kv (FREAL -273.16) :f #X1 :d "Liq supply temperature") (:var :t CONTROL :n LIQCONTR :x X :iv 0.5 :kv (FREAL * 1.0) :f #X1 :d "Controller input 1 -> mmax, 0 -> mmin, -1 turns off control action") (:var :t TEMP :n TZONEAIR :x X :iv 17.0 :kv (FREAL -273.16) :f #X1 :d "Zone air temperature") (:var :t GENERIC :n GLIQ :x A_S :iv 1.0 :kv FREAL :f #X10 :d "") (:var :t GENERIC :n DPLIQOK :x A_S :iv 1.0 :kv FREAL :f #X10 :d "Mode memory, = 0 for linear behavior, = 1 for controlled") (:var :t PRESSURE :n DPLIQ :x LOC :iv 600.0 :kv (FREAL 0.0) :f #X140 :d "Panel and valve total pressure drop") (:var :t TEMP :n TLIQ :x LOC :iv 16.0 :kv (FREAL -273.16) :f #X140 :d "Average liquid temperature") (:var :t TEMP :n DTLIQAIR :x LOC :iv 10.0 :kv (FREAL -273.16) :f #X140 :d "Liq-to-Air temp difference") (:var :t HEATFLUX :n QLIQ :x LOC :iv 90.0 :kv (FREAL 0.0) :f #X148 :d "Total heat from liquid") (:var :t GENERIC :n EXPLOC :x LOC :iv -0.03 :kv FREAL :f #X140 :d "Value inside function call EXP(), itroduced as a safe guard") (:var :t FACTOR :n KACT :x LOC :iv 10.0 :kv (FREAL (0.0)) :f #X140 :d "Factor from eq P = k dT^n") (:var :t FACTOR :n NACT :x LOC :iv 1.2 :kv (FREAL (0.0)) :f #X140 :d "Exponent from eq P = k dT^n") ;; :interfaces (:int :t TQ :n ZONE :v (TZONEAIR QZONE) :dir (NIL -1)) (:int :t UNIAIR :n AIRIN :v (PAIR MAIR TAIR X HUM) :dir (NIL -1 NIL NIL NIL)) (:int :t UNIAIR :n AIROUT :v (PAIR MAIR TAIR X HUM) :dir (NIL 1 NIL NIL NIL)) (:int :t PMT :n LIQIN :v (PLIQIN MLIQ TLIQIN) :dir (NIL -1 NIL)) (:int :t PMT :n LIQOUT :v (PLIQOUT MLIQ TLIQOUT) :dir (NIL 1 NIL)) (:int :t CONTROLLINK :n CONTROL :v (LIQCONTR) :dir (NIL))) ;;;;;; ;;;;;;end of model CESFBEAM ;;;;;; ;;; ;;; model CESIMZON ;;; ((template :n CESIMZON :c :eo :d "SIMplified ZONe, single mass for parts of envelope, MRT w area factors.") ;; :model-parameters (:par :t system-parameter :n NSURF :x SMP :v 9 :kv (INTEGER 2 *) :f #X29 :d "all surfaces") (:par :t system-parameter :n NWALL :x SMP :v 6 :kv (INTEGER 1 *) :f #X29 :d "walls") (:par :t system-parameter :n NEXTWALL :x SMP :v 1 :kv (INTEGER 0 *) :f #X29 :d "external walls, modelled as separate") (:par :t system-parameter :n NINTWALL :x SMP :v 5 :kv (INTEGER 0 *) :f #X29 :d "internal walls, combined to one in parameter proc") (:par :t system-parameter :n NLITE :x SMP :v 1 :kv (INTEGER 1 1) :f #X29 :d "lighted surfaces") (:par :t system-parameter :n NWIND :x SMP :v 1 :kv (INTEGER 0 *) :f #X29 :d "windows") (:par :t system-parameter :n NHCSURF :x SMP :v 1 :kv (INTEGER 0 *) :f #X29 :d "heated or cooled surfaces") (:par :t system-parameter :n NCVDEV :x SMP :v 0 :kv (INTEGER 0 *) :f #X29 :d "convective devices") (:par :t system-parameter :n NUNIT :x SMP :v 0 :kv (INTEGER 0 *) :f #X29 :d "equipment loads") (:par :t system-parameter :n NOP :x SMP :v 0 :kv (INTEGER 0 *) :f #X29 :d "operative points") (:par :t system-parameter :n NTERMINAL :x SMP :v 2 :kv (INTEGER 0 *) :f #X29 :d "air flow terminals") (:par :t system-parameter :n NSENSOR :x SMP :v 1 :kv (INTEGER 0 *) :f #X29 :d "temperature sensors") (:par :t system-parameter :n NMAXLAYR :x SMP :v 4 :kv (INTEGER 1 *) :f #X29 :d "max number of layers in any wall") (:par :t system-parameter :n NLOCUNIT :x SMP :v 0 :kv (INTEGER 0 *) :f #X29 :d "local units cooler / heater") (:par :t system-parameter :n NMISC :x SMP :v 0 :kv (INTEGER 0 *) :f #X29 :d "number of signals for MiscMeasure") ;; :parameters (:par :t HEATFLUX :n LITERATEDINPUT :x S_P :v 0.0 :kv (FREAL 0.0) :f #X29 :d "Lite rated input") (:par :t FACTOR :n LITEFRACTVISIBLE :x S_P :v 0.1 :kv (REAL 0.0 1.0) :f #X21 :d "Fraction short wave (Lite)") (:par :t FACTOR :n LITEFRACTLW :x S_P :v 0.6 :kv (REAL 0.0 1.0) :f #X21 :d "Fraction long wave (Lite)") (:par :t MASS :n NUMAIRMASS :x S_P :v 30.0 :kv (FREAL 0.0) :f #X21 :d "Additional mass to increase numerical robustness") (:par :t HEATCONDA :n HLW :x S_P :v 5.0 :kv (FREAL (0.0)) :f #X21 :d "radiative film coeff") (:par :t HEATCONDA :n HINTWALLS :x S_P :v 1.0 :kv (FREAL (0.0)) :f #X21 :d "convective film coeff for internal walls") (:par :t LENGTH :n HEIGHT :x S_P :v 2.5 :kv (FREAL (0.0)) :f #X21 :d "room height") (:par :t FACTOR :n NFLOOR :x S_P :v 1.0 :kv (FREAL 1.0) :f #X21 :d "Floor surface number (floor has to be external)") (:par :t GENERIC :n LOSTWORKPERC :x S_P :v 0.02 :kv (REAL 0.0 1.0) :f #X21 :d "Loss in work efficency per C when top< 20 and top> 25 (ie 10 % at 30 C)") (:par :t ANGLE :n SLOPESURF :x S_P :ie 90.0 :kv (REAL 0.0 180.0) :f #X21 :sp (NSURF) :d "surface slope, 0=floor, 180=ceiling") (:par :t AREA :n ASURF :x S_P :ie 10.0 :kv (FREAL (0.0)) :f #X21 :sp (NSURF) :d "Surface areas") (:par :t FACTOR :n NLAYERS :x S_P :ie 4.0 :kv (FREAL 1.0) :f #X21 :sp (NINTWALL) :d "Number of layers") (:par :t HEATCONDA :n HCONV :x S_P :ie 1.0 :kv FREAL :f #X21 :sp (NINTWALL) :d "Convective film coeff negative for walls positive for convective masses") (:par :t HEATFLUX :n QSRCCVEQUIP :x S_P :ie 0.0 :kv (FREAL 0.0) :f #X29 :sp (NUNIT) :d "Convective load") (:par :t RADIATION :n QSRCRADEQUIP :x S_P :ie 0.0 :kv (FREAL 0.0) :f #X29 :sp (NUNIT) :d "Radiative load") (:par :t HUMFLOW :n VAPFSRCEQUIP :x S_P :ie 0.0 :kv (FREAL 0.0) :f #X29 :sp (NUNIT) :d "Humidity load") (:par :t HUMFLOW :n EVAPVAPFSRCEQUIP :x S_P :ie 0.0 :kv (FREAL 0.0) :f #X29 :sp (NUNIT) :d "Evaporative humidity load") (:par :t FRACTFLOW_Y :n CO2FSRCEQUIP :x S_P :ie 0.0 :kv (FREAL 0.0) :f #X29 :sp (NUNIT) :d "CO2 load") (:par :t FACTOR :n NOCC :x S_P :ie 0.0 :kv (FREAL 0.0) :f #X21 :sp (NOP) :d "Number of persons") (:par :t FACTOR :n M :x S_P :ie 1.0 :kv (REAL 0.6 10.0) :f #X21 :sp (NOP) :d "Activity[Met], 1 Met = 58 W/m2") (:par :t HEATCOND :n W :x S_P :ie 0.0 :kv (FREAL 0.0) :f #X21 :sp (NOP) :d "Outer work, normally 0") (:par :t FACTOR :n ICL :x S_P :ie 1.0 :kv (REAL 0.0 2.0) :f #X21 :sp (NOP) :d "Heat res[clo] of clothes 1 clo = 0.155 (m2 K)/W") (:par :t VELOCITY :n AIRVEL :x S_P :ie 0.1 :kv (REAL 0.0 1.0) :f #X29 :sp (NOP) :d "Air velocity") (:par :t HEATFLUX :n QMAXLOC :x S_P :ie 0.0 :kv FREAL :f #X29 :sp (NLOCUNIT) :d "Max power of local unit") (:par :t TEMP :n TCOIL :x S_P :ie 5.0 :kv FREAL :f #X21 :sp (NLOCUNIT) :d "Coil temperature") (:par :t FACTOR :n COP :x S_P :ie 1.0 :kv (FREAL 1.0) :f #X21 :sp (NLOCUNIT) :d "COP of local unit") (:par :t FACTOR :n MISCSELECTOR :x S_P :ie 1.01 :kv (REAL 1.0 7.0) :f #X21 :sp (NMISC) :d "determines signal for MiscMeasure 1.0i = Operative temp 2.0i = PPD index with sign at op loc i 3.0i = Not implemented in simplified model 4.0i, 5.0i = Sufr temp at surf i 6.0i = Mean air temp 7.0 = Air dewpoint temperature") (:par :t LENGTH :n L :x S_P :ie 0.01 :kv (FREAL (0.0)) :f #X21 :sp (NINTWALL NMAXLAYR) :d "Layer thickness") (:par :t DENSITY :n RHO :x S_P :ie 1800.0 :kv (FREAL (0.0)) :f #X21 :sp (NINTWALL NMAXLAYR) :d "Layer density") (:par :t HEATCONDL :n LAMBDA :x S_P :ie 0.08 :kv (FREAL (0.0)) :f #X21 :sp (NINTWALL NMAXLAYR) :d "Layer heat cond") (:par :t HEATCAPM :n CP :x S_P :ie 790.0 :kv (FREAL (0.0)) :f #X21 :sp (NINTWALL NMAXLAYR) :d "Layer heat cap") ;; :variables (:var :t TEMP :n TAIRMEAN :x DER :iv 23.2 :kv (FREAL -273.16) :f #X6 :d "Zone air temp, well mixed") (:var :t TEMP :n TINTWALL :x DER :iv 25.23 :kv (FREAL -273.16) :f #X6 :d "Temp of internal walls") (:var :t FRACTION_Y :n XCO2 :x DER :iv 594.0 :kv (FREAL (0.0)) :f #X6 :d "Fraction conc in zone") (:var :t HUMRATIO :n XHUMLOC :x DER :iv 0.002 :kv (FREAL (0.0)) :f #X6 :d "Humidity in zone, local only ratio [kg/kg]") (:var :t TEMP :n TMRT :x U :iv 24.95 :kv (FREAL -273.16) :f #X2 :d "Mean radiant temp") (:var :t MASSFLOW :n MF_0 :x U :iv 0.03 :kv FREAL :f #XA :d "Mass flow from term_0") (:var :t HUMRATIO :n XHUM :x U :iv 0.005 :kv (FREAL (0.0)) :f #X2 :d "Humidity in zone, ratio [kg/kg]") (:var :t FACTOR :n RELATIVEHUM :x U :iv 0.3 :kv (REAL (0.0) 1.0) :f #X2 :d "Zone relative humidity") (:var :t CONTROL :n LITEON :x X :iv 0.0 :kv (REAL 0.0 1.0) :f #X1 :d "Lite On / Off") (:var :t HEATFLUX :n Q_0 :x X :iv 100.0 :kv FREAL :f #X9 :d "Heat flux from term_0") (:var :t FRACTFLOW_Y :n XF_0 :x X :iv 17.0 :kv FREAL :f #X9 :d "Fract flow from term_0") (:var :t HUMFLOW :n VAPF_0 :x X :iv 0.00017 :kv FREAL :f #X9 :d "Vapour flow, term_0") (:var :t PRESSURE :n P :x X :iv 1324.0 :kv (FREAL (0.0)) :f #X1 :d "Zone air pressure") (:var :t HUMRATIO :n HUMAS :x A_S :iv -0.1 :kv FREAL :f #X10 :d "Sat memory") (:var :t FACTOR :n SATURATED :x A_S :iv 0.0 :kv (REAL 0.0 1.0) :f #X10 :d "0 = Normal 1 = Saturated") (:var :t RADIATION :n QSWWIND2ZONE :x LOC :iv 108.9 :kv (FREAL 0.0) :f #X148 :d "total SW in thru wdws") (:var :t RADIATION :n QDAYLITE :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X148 :d "total daylight to zone") (:var :t ELPOWERCONS :n QLITE :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X140 :d "Supplied lite power") (:var :t HEATFLUX :n QSWLITE :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X148 :d "SW radiation from light") (:var :t HEATFLUX :n QLWLITE :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X148 :d "LW from lite") (:var :t HEATFLUX :n QCVLITE :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X148 :d "Convective from lite") (:var :t HEATFLUX :n QCDEXT2ZONE :x LOC :iv -5.0 :kv FREAL :f #X148 :d "Total from external walls") (:var :t HEATFLUX :n QCDINT2ZONE :x LOC :iv 216.0 :kv FREAL :f #X148 :d "Total from internal walls") (:var :t HEATFLUX :n QCDWALLS2ZONE :x LOC :iv 212.0 :kv FREAL :f #X148 :d "Total from walls") (:var :t HEATFLUX :n QLCWINDS2ZONE :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Flow from windows") (:var :t HEATFLUX :n QHC2ZONE :x LOC :iv 1.5 :kv FREAL :f #X148 :d "Total from HCSurf") (:var :t HEATFLUX :n QRAD2ZONE :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Source radiation, from lite,occ,equip") (:var :t HEATFLUX :n QCVHC2ZONE :x LOC :iv 7.0 :kv FREAL :f #X148 :d "Total conv from HCSurf") (:var :t HEATFLUX :n QCVDEV2ZONE :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Total flow from cv dev") (:var :t ELPOWERCONS :n QCVEQUIP2ZONE :x LOC :iv 0.0 :kv FREAL :f #X140 :d "Conv load from equipm") (:var :t ELPOWERCONS :n QLWEQUIP2ZONE :x LOC :iv 0.0 :kv FREAL :f #X140 :d "LW load from equipm") (:var :t HEATFLUX :n QEQUIP2ZONE :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Total from equipm") (:var :t HEATFLUX :n QCVOCC2ZONE :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Conv from occupants") (:var :t HEATFLUX :n QLWOCC2ZONE :x LOC :iv 0.0 :kv FREAL :f #X148 :d "LW from occupants") (:var :t HEATFLUX :n QOCC2ZONE :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Total from occupants") (:var :t HEATFLUX :n QFURN2ZONE :x LOC :iv 2.0 :kv FREAL :f #X148 :d "Heat from furniture") (:var :t TEMP :n TOP :x LOC :iv 24.0 :kv (FREAL -273.16) :f #X140 :d "Operative temperature") (:var :t GENERIC :n TOTWORKHOUR :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X140 :d "Total working hours") (:var :t GENERIC :n LOSTWORKHOUR :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X140 :d "Lost working hours") (:var :t HEATFLUX :n QTERM2ZONE :x LOC :iv -100.0 :kv FREAL :f #X148 :d "Heat flux from terminals") (:var :t MASSFLOW :n MEXHTOT :x LOC :iv -0.03 :kv FREAL :f #X148 :d "Total exhaust mass flow") (:var :t NUMFLOW_H :n ACH :x LOC :iv 1.7 :kv (FREAL 0.0) :f #X148 :d "Air change rate per hour") (:var :t GENERIC :n XCO2VOL :x LOC :iv 330.0 :kv (FREAL (0.0)) :f #X140 :d "CO2 ppm/vol") (:var :t HUMFLOW :n VAPFOCC2ZONE :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X148 :d "Vapour flow from occ") (:var :t HUMRATIO :n HUMSAT :x LOC :iv 0.005 :kv (FREAL (0.0)) :f #X140 :d "Saturated humidity") (:var :t PRESSURE :n PVAP :x LOC :iv 956.0 :kv (REAL (0.0) 2700.0) :f #X140 :d "Vapour pressure") (:var :t PRESSURE :n PVAPSAT :x LOC :iv 2876.0 :kv (FREAL (0.0)) :f #X140 :d "Saturation pressure") (:var :t ENTHALPY :n HAIR :x LOC :iv 20000.0 :kv FREAL :f #X140 :d "Air enthalpy") (:var :t HEATFLUX :n QLOCUNIT :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Heatflux from all local units") (:var :t HEATFLUX :n QCDEXT2SURF :x U :ie 7.0 :kv (FREAL 0.0) :f #XA :sp (NEXTWALL) :d "Flow from wall") (:var :t TEMP :n TEXTWALL :x X :ie 24.12 :kv (FREAL -273.16) :f #X1 :sp (NEXTWALL) :d "External wall temp") (:var :t HEATCONDA :n HEXTWALL :x LOC :ie 1.8 :kv (FREAL 0.0) :f #X140 :sp (NEXTWALL) :d "Film coeff ext walls") (:var :t RADIATION :n QSWWIND2AMB :x U :ie 0.0 :kv (FREAL * 0.0) :f #XA :sp (NWIND) :d "SW rad leaving, (all diffuse), POS_IN") (:var :t HEATFLUX :n QLCWIND2ZONE :x U :ie -64.0 :kv FREAL :f #XA :sp (NWIND) :d "Flow from window") (:var :t ANGLE :n AZIMUTIN :x X :ie 97.2 :kv (REAL 0.0 360.0) :f #X1 :sp (NWIND) :d "Az of incident direct") (:var :t ANGLE :n ELEVIN :x X :ie 19.9 :kv (REAL 0.0 90.0) :f #X1 :sp (NWIND) :d "Elev of incident direct") (:var :t RADIATION :n QDFWIND2ZONE :x X :ie 0.0 :kv (FREAL 0.0) :f #X9 :sp (NWIND) :d "SW diff rad entering") (:var :t RADIATION :n QDRWIND2ZONE :x X :ie 0.0 :kv (FREAL 0.0) :f #X9 :sp (NWIND) :d "SW dir rad entering") (:var :t TEMP :n TWIND :x X :ie 19.6 :kv (FREAL -273.16) :f #X1 :sp (NWIND) :d "Window surface temp, innermost pane") (:var :t HEATCONDA :n HWIND :x LOC :ie 2.8 :kv (FREAL 0.0) :f #X140 :sp (NWIND) :d "Film coeff windows") (:var :t HEATFLUX :n QHCSURFFRONT :x U :ie 0.3 :kv FREAL :f #XA :sp (NHCSURF) :d "Flow from HCSurf front") (:var :t HEATFLUX :n QHCSURFBACK :x X :ie 7.0 :kv FREAL :f #X9 :sp (NHCSURF) :d "Flow from HCSurf back") (:var :t TEMP :n THCSURF :x X :ie 23.45 :kv (FREAL -273.16) :f #X1 :sp (NHCSURF) :d "Heating or Cooling surface Temp") (:var :t HEATFLUX :n QCVHCFRONT :x LOC :ie 0.4 :kv FREAL :f #X148 :sp (NHCSURF) :d "Conv fr HC front") (:var :t HEATCONDA :n HHC :x LOC :ie 1.1 :kv (FREAL 0.0) :f #X140 :sp (NHCSURF) :d "Film coeff h/c surfs") (:var :t HEATFLUX :n QCVDEV :x X :ie 0.0 :kv FREAL :f #X9 :sp (NCVDEV) :d "Flow from conv device") (:var :t CONTROL :n SCHEDEQUIP :x X :ie 0.0 :kv (REAL 0.0 1.0) :f #X1 :sp (NUNIT) :d "Equipment On / Off") (:var :t TEMP :n TCL :x U :ie 25.0 :kv (FREAL -273.16) :f #X2 :sp (NOP) :d "Temp of clothes") (:var :t CONTROL :n SCHEDOCC :x X :ie 0.0 :kv (REAL 0.0 1.0) :f #X1 :sp (NOP) :d "Occupancy On / Off") (:var :t HEATFLUX :n QSWEAT :x LOC :ie 0.0 :kv FREAL :f #X148 :sp (NOP) :d "Sweat from occ") (:var :t HEATFLUX :n QCVOCC :x LOC :ie 0.0 :kv FREAL :f #X148 :sp (NOP) :d "Conv load from occ") (:var :t HEATFLUX :n QOCCVAP :x LOC :ie 0.0 :kv FREAL :f #X148 :sp (NOP) :d "Vapour load from occ") (:var :t HEATFLUX :n QOCCMET :x LOC :ie 0.0 :kv FREAL :f #X148 :sp (NOP) :d "Total load from occ") (:var :t HEATFLUX :n QLWOCC :x LOC :ie 0.0 :kv FREAL :f #X148 :sp (NOP) :d "Rad load from occ") (:var :t FACTOR :n PMV :x LOC :ie 0.0 :kv (REAL -3.0 3.0) :f #X140 :sp (NOP) :d "PMV index") (:var :t FACTOR :n PPD :x LOC :ie 0.0 :kv (REAL 0.0 100.0) :f #X140 :sp (NOP) :d "PPD index") (:var :t FACTOR :n HCL :x LOC :ie 5.0 :kv (FREAL 0.0) :f #X140 :sp (NOP) :d "heat transfer coeff clothes to air") (:var :t MASSFLOW :n MF :x X :ie -0.03 :kv FREAL :f #X9 :sp (NTERMINAL) :d "Mass flow from term[i]") (:var :t HEATFLUX :n Q :x X :ie -100.0 :kv FREAL :f #X9 :sp (NTERMINAL) :d "Heat flux from term[i]") (:var :t FRACTFLOW_Y :n XF :x X :ie -17.0 :kv FREAL :f #X9 :sp (NTERMINAL) :d "Fract flow from term[i]") (:var :t HUMFLOW :n VAPF :x X :ie -0.00017 :kv FREAL :f #X9 :sp (NTERMINAL) :d "Vapour flow, term[i]") (:var :t CONTROL :n CTRLOCUNIT :x X :ie 0.0 :kv (REAL 0.0 1.0) :f #X1 :sp (NLOCUNIT) :d "Local unit On / Off") (:var :t ENTHALPY :n HCHILLCOIL :x LOC :ie 20000.0 :kv FREAL :f #X140 :sp (NLOCUNIT) :d "Leaving air enthalpy") (:var :t HEATFLUX :n QLOCALUNIT :x LOC :ie 0.0 :kv FREAL :f #X148 :sp (NLOCUNIT) :d "Heatflux from local unit[i]") (:var :t HUMRATIO :n WCHILLCOIL :x LOC :ie 0.003 :kv (FREAL (0.0)) :f #X140 :sp (NLOCUNIT) :d "Moisture cont of cooling coil leaving air") (:var :t MASSFLOW :n MAIR :x LOC :ie 0.0 :kv (FREAL 0.0) :f #X148 :sp (NLOCUNIT) :d "Ficticious air massflow through the unit") (:var :t ELPOWERCONS :n QEL :x LOC :ie 0.0 :kv (FREAL 0.0) :f #X140 :sp (NLOCUNIT) :d "El. consumption") (:var :t HUMFLOW :n WF :x LOC :ie 0.0 :kv (FREAL 0.0) :f #X148 :sp (NLOCUNIT) :d "Condensation in local unit") (:var :t GENERIC :n MISCMEASURE :x U :ie 0.0 :kv FREAL :f #X2 :sp (NMISC) :d "MiscMeasure signal") ;; :interfaces (:int :t TQ :n TQWALL :v (TEXTWALL QCDEXT2SURF) :dir (NIL -1) :sp (NEXTWALL)) (:int :t TQ :n TQWIND :v (TWIND QLCWIND2ZONE) :dir (NIL -1) :sp (NWIND)) (:int :t RRRWW :n RADWIND :v (QDFWIND2ZONE QDRWIND2ZONE QSWWIND2AMB AZIMUTIN ELEVIN) :dir (-1 -1 -1 NIL NIL) :sp (NWIND)) (:int :t TQ :n TQHCFRONT :v (THCSURF QHCSURFFRONT) :dir (NIL -1) :sp (NHCSURF)) (:int :t TQ :n TQHCBACK :v (TAIRMEAN QHCSURFBACK) :dir (NIL -1) :sp (NHCSURF)) (:int :t TQ :n TQCVDEV :v (TAIRMEAN QCVDEV) :dir (NIL -1) :sp (NCVDEV)) (:int :t BIDIRAIR :n TERM_0 :v (P MF_0 TAIRMEAN Q_0 XCO2 XF_0 XHUM VAPF_0) :dir (NIL -1 NIL -1 NIL -1 NIL -1)) (:int :t BIDIRAIR :n TERM :v (P MF TAIRMEAN Q XCO2 XF XHUM VAPF) :dir (NIL -1 NIL -1 NIL -1 NIL -1) :sp (NTERMINAL)) (:int :t CONTROLLINK :n SETOCC :v (SCHEDOCC) :dir (NIL) :sp (NOP)) (:int :t CONTROLLINK :n SETEQUIP :v (SCHEDEQUIP) :dir (NIL) :sp (NUNIT)) (:int :t CONTROLLINK :n CTRLOCALUNIT :v (CTRLOCUNIT) :dir (NIL) :sp (NLOCUNIT)) (:int :t CONTROLLINK :n CTRLLIGHT :v (LITEON) :dir (NIL)) (:int :t T :n READTEMP :v (TAIRMEAN) :dir (NIL) :sp (NSENSOR)) (:int :t GENERIC :n READHUMIDITY :v (RELATIVEHUM) :dir (NIL)) (:int :t X_Y :n READCO2 :v (XCO2) :dir (NIL)) (:int :t GENERIC :n MISCMEASLINK :v (MISCMEASURE) :dir (NIL) :sp (NMISC))) ;;;;;; ;;;;;;end of model CESIMZON ;;;;;; ;;; ;;; model CESKYLIT ;;; ((template :n CESKYLIT :c :eo :d "See Skylight.doc") ;; :model-parameters (:par :t system-parameter :n FIVE :x CMP :v 5 :kv (INTEGER 5 5) :f #X168 :s (0 T 0 + 5) :d "The number 5") ;; :parameters (:par :t LENGTH :n X0 :x S_P :v 0.0 :kv FREAL :f #X21 :d "x of floor lower left corner") (:par :t LENGTH :n Y0 :x S_P :v 0.0 :kv FREAL :f #X21 :d "y of floor lower left corner") (:par :t LENGTH :n Z0 :x S_P :v 0.0 :kv FREAL :f #X21 :d "z of floor lower left corner") (:par :t LENGTH :n WIDTH :x S_P :v 0.0 :kv FREAL :f #X21 :d "Floor width (x-axis)") (:par :t LENGTH :n LENGTH :x S_P :v 0.0 :kv FREAL :f #X21 :d "Floor length (y-axis)") (:par :t LENGTH :n HEIGHT :x S_P :v 0.0 :kv FREAL :f #X21 :d "Skylight height (z-axis)") (:par :t LENGTH :n L1 :x S_P :v 0.0 :kv FREAL :f #X21 :d "Distances between floor ..") (:par :t LENGTH :n L2 :x S_P :v 0.0 :kv FREAL :f #X21 :d "and roof rectangles in ..") (:par :t LENGTH :n L3 :x S_P :v 0.0 :kv FREAL :f #X21 :d "normal projection ..") (:par :t LENGTH :n L4 :x S_P :v 0.0 :kv FREAL :f #X21 :d "of roof onto floor") (:par :t FACTOR :n REFLGLASS0 :x S_P :v 0.25 :kv (REAL (0.0) 1.0) :f #X21 :d "Refl of inside glass w/o shading") (:par :t FACTOR :n REFLGLASS2 :x S_P :v 0.2 :kv (REAL (0.0) 1.0) :f #X21 :d "Refl of inside glass with shading") (:par :t HEATCONDA :n H_0 :x S_P :v 3.1 :kv (REAL (0.0) 5.9) :f #X21 :d "U-value wo shading") (:par :t FACTOR :n M_H :x S_P :v 0.9 :kv (REAL (0.0) 1.0) :f #X21 :d "reduction thru shading") (:par :t FACTOR :n REFLFRMINT :x S_P :v 0.6 :kv (REAL (0.0) 1.0) :f #X21 :d "Reflectivity of frame inside") (:par :t FACTOR :n REFLFRMEXT :x S_P :v 0.6 :kv (REAL (0.0) 1.0) :f #X21 :d "Reflectivity of frame outside") (:par :t FACTOR :n EPSFRMINT :x S_P :v 0.9 :kv (REAL (0.0) 1.0) :f #X21 :d "Emissivity of frame inside") (:par :t FACTOR :n EPSFRMEXT :x S_P :v 0.9 :kv (REAL (0.0) 1.0) :f #X21 :d "Emissivity of frame outside") (:par :t FACTOR :n EPSGLASS :x S_P :v 0.9 :kv (REAL (0.0) 1.0) :f #X21 :d "Emissivity of glass pane") (:par :t FACTOR :n SOLARCTRL :x S_P :v 0.0 :kv (REAL 0.0 1.0) :f #X21 :d "solar control on or off") (:par :t RADIATIONA :n CTRLLEVEL :x S_P :v 0.0 :kv (FREAL 0.0) :f #X29 :d "min inc rad [W/m2] for ctrl") (:par :t AREA :n AGLASS :x S_P :ie 0.0 :kv FREAL :f #X21 :sp (FIVE) :d "Glass area by face") ;; :variables (:var :t TEMP :n TFRMEXT :x U :iv 24.0 :kv (FREAL -273.16) :f #X2 :d "wall surface temp outside") (:var :t TEMP :n TFRMINT :x U :iv 24.0 :kv (FREAL -273.16) :f #X2 :d "wall surface temp inside") (:var :t HEATFLUX :n QINSIDE :x U :iv 18.0 :kv FREAL :f #XA :d "heat from zone, conv+LW") (:var :t RADIATION :n RDIFTHRU :x U :iv 0.0 :kv (FREAL 0.0) :f #XA :d "diffuse rad leaving to zone") (:var :t TEMP :n TGLSEXT :x U :iv 21.0 :kv (FREAL -273.16) :f #X2 :d "temp of outermost pane") (:var :t TEMP :n TGLSINT :x U :iv 21.0 :kv (FREAL -273.16) :f #X2 :d "temp of innermost pane") (:var :t TEMP :n TAMB :x X :iv 20.0 :kv (FREAL -273.16) :f #X1 :d "ambient temp") (:var :t TEMP :n TSKY :x X :iv 16.0 :kv (FREAL -273.16) :f #X1 :d "sky temperature") (:var :t TEMP :n TGROUND :x X :iv 21.0 :kv (FREAL -273.16) :f #X1 :d "ground temperature") (:var :t HEATCONDA :n HEXT :x X :iv 1.0 :kv (FREAL 0.0) :f #X1 :d "external conv heat coeff") (:var :t ANGLE :n AZSUN2FACE :x X :iv 0.0 :kv (REAL 0.0 360.0) :f #X1 :d "sun's rel azimut") (:var :t ANGLE :n ELEVSUNWDW :x X :iv 0.0 :kv (REAL 0.0 90.0) :f #X1 :d "sun's elevation") (:var :t ANGLE :n ANGLEINCFACE :x X :iv 0.0 :kv (REAL 0.0 90.0) :f #X1 :d "incident angle of direct radiation") (:var :t HEATFLUX :n RSWFRMEXT :x X :iv 0.0 :kv FREAL :f #X9 :d "SW rad hitting frame outside") (:var :t HEATFLUX :n QABSGLSINT :x X :iv 0.0 :kv FREAL :f #X9 :d "direct rad absorbed in glass inside") (:var :t HEATFLUX :n QABSFRMINT :x X :iv 0.0 :kv FREAL :f #X9 :d "direct rad absorbed in frame inside") (:var :t HEATFLUX :n QCDFRMEXT :x X :iv 146.0 :kv FREAL :f #X9 :d "heat from wall outside") (:var :t HEATFLUX :n QCDFRMINT :x X :iv 146.0 :kv FREAL :f #X9 :d "heat from wall inside") (:var :t RADA :n IDIFSKYINC :x X :iv 0.0 :kv (FREAL 0.0) :f #X1 :d "incident diffuse rad fr sky") (:var :t RADA :n IDIFGRDINC :x X :iv 0.0 :kv (FREAL 0.0) :f #X1 :d "incident diffuse rad fr ground") (:var :t RADA :n IDIRINC :x X :iv 0.0 :kv (FREAL 0.0) :f #X1 :d "incident direct rad") (:var :t RADIATION :n RDIRTHRU :x X :iv 0.0 :kv (FREAL 0.0) :f #X9 :d "direct rad to zone") (:var :t RADIATION :n RDIFEMINT :x X :iv 0.0 :kv (FREAL 0.0) :f #X9 :d "diffuse rad emanating from inside of skylight") (:var :t RADIATION :n ROUT :x X :iv 0.0 :kv (FREAL 0.0) :f #X9 :d "SW rad back to ambient") (:var :t RADIATION :n RBACK :x X :iv 0.0 :kv (FREAL 0.0) :f #X9 :d "diffuse rad back from zone") (:var :t ANGLE :n AZIMUTTHRU :x X :iv 0.0 :kv (REAL 0.0 360.0) :f #X1 :d "sun's rel azimut") (:var :t ANGLE :n ELEVTHRU :x X :iv 0.0 :kv (REAL 0.0 90.0) :f #X1 :d "sun's elevation") (:var :t FACTOR :n SCHEDSHADING :x X :iv 0.0 :kv (REAL 0.0 1.0) :f #X1 :d "time control 0=OFF/1=ON") (:var :t TEMP :n TIN :x X :iv 25.0 :kv (FREAL -273.16) :f #X1 :d "temp of window seen by zone combined frame and pane temp.") (:var :t HEATFLUX :n QSOLAR :x LOC :iv 1.0 :kv (FREAL (0.0)) :f #X148 :d "solar radiation gain for building") (:var :t HEATFLUX :n QTRANSM :x LOC :iv 1.0 :kv FREAL :f #X148 :d "transmission gain for building") (:var :t RADIATION :n RDIFABSGLS :x LOC :iv 0.0 :kv FREAL :f #X148 :d "diffuse rad absorbed in glass inside") (:var :t RADIATION :n RDIFABSFRM :x LOC :iv 0.0 :kv FREAL :f #X148 :d "diffuse rad absorbed in frame inside") (:var :t RADIATION :n RDIF :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X148 :d "diffuse rad entering skylight") (:var :t FACTOR :n SHADINGON :x LOC :iv 0.0 :kv (REAL 0.0 1.0) :f #X140 :d "shading 0=OFF/1=ON") (:var :t FACTOR :n COSI :x LOC :iv 0.0 :kv FREAL :f #X140 :d "cos(roof inc angle)") (:var :t FACTOR :n HPANES :x LOC :iv 3.1 :kv (REAL (0.0) 5.9) :f #X140 :d "U-value betw innermost and outermost panes") (:var :t FACTOR :n HZONE :x LOC :iv 3.1 :kv (FREAL (0.0)) :f #X140 :d "lw + conv heat transfer w zone") (:var :t HEATFLUX :n QGLSFRZONE :x LOC :iv 17.0 :kv FREAL :f #X148 :d "heat from zone, conv+LW, glass part") (:var :t HEATFLUX :n QFRMFRZONE :x LOC :iv 1.0 :kv FREAL :f #X148 :d "heat from zone, conv+LW, frame part") (:var :t HEATFLUX :n QTRANSMGLS :x LOC :iv -36.0 :kv FREAL :f #X148 :d "heat outer to inner pane") (:var :t HEATFLUX :n QLWOUTPANE :x LOC :iv 0.0 :kv FREAL :f #X148 :d "lw rad from ambient to pane") (:var :t HEATFLUX :n QCVOUTPANE :x LOC :iv 0.0 :kv FREAL :f #X148 :d "conv rad from ambient to pane") (:var :t FACTOR :n REFLGLSINT :x LOC :iv 0.0 :kv FREAL :f #X140 :d "refl factor for diffuse on glass") (:var :t FACTOR :n REFL :x LOC :iv 0.0 :kv FREAL :f #X140 :d "effective refl factor for diffuse") ;; :interfaces (:int :t TQ :n FRMOUTSIDE :v (TFRMEXT QCDFRMEXT) :dir (NIL -1)) (:int :t TQ :n FRMINSIDE :v (TFRMINT QCDFRMINT) :dir (NIL -1)) (:int :t FACE2WIND :n OUTSIDE :v (TAMB TGROUND TSKY HEXT IDIRINC IDIFSKYINC IDIFGRDINC AZSUN2FACE ELEVSUNWDW ANGLEINCFACE) :dir (NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL)) (:int :t RRRWW :n SWRAD :v (RDIRTHRU RDIFEMINT ROUT AZIMUTTHRU ELEVTHRU) :dir (-1 -1 1 NIL NIL)) (:int :t QQQ :n QABSGLSFRM :v (QABSGLSINT RSWFRMEXT QABSFRMINT) :dir (-1 -1 -1)) (:int :t TQ :n TQINSIDE :v (TIN QINSIDE) :dir (NIL -1)) (:int :t RRRWW :n RADINSIDE :v (RDIFTHRU RDIRTHRU RBACK AZIMUTTHRU ELEVTHRU) :dir (1 1 -1 NIL NIL)) (:int :t Z :n CTRLSHADING :v (SCHEDSHADING) :dir (NIL))) ;;;;;; ;;;;;;end of model CESKYLIT ;;;;;; ;;; ;;; model CESUPT ;;; ((template :n CESUPT :c :eo :d "Idealized SUPply Terminal for VAV or natural ventilation.") ;; :model-parameters ;; :parameters (:par :t PRESSURE :n DP0 :x S_P :v 5.0 :kv (FREAL (0.0)) :f #X21 :d "limit for flow control action") (:par :t MASSFLOW :n MMAX :x S_P :v 0.01 :kv (FREAL (0.0)) :f #X29 :d "max requestable massflow") (:par :t MASSFLOW :n MMIN :x S_P :v 0.001 :kv (FREAL (0.0)) :f #X29 :d "min requestable massflow") (:par :t FACTOR :n CLOW :x S_P :v 0.005 :kv (FREAL 0.0) :f #X21 :d "massflow when 'off', i.e. CentralMode = 0") ;; :variables (:var :t MASSFLOW :n M :x U :iv 0.024 :kv (FREAL 0.0) :f #XA :d "massflow through terminal") (:var :t HEATFLUX :n Q :x U :iv 0.0 :kv FREAL :f #XA :d "heat convected by massflow") (:var :t FRACTFLOW_Y :n XF :x U :iv 0.0 :kv FREAL :f #XA :d "pollution transport") (:var :t HUMFLOW :n HUMF :x U :iv 0.0 :kv FREAL :f #XA :d "moisture transport") (:var :t PRESSURE :n P1 :x X :iv 1375.0 :kv FREAL :f #X1 :d "pressure in") (:var :t PRESSURE :n P2 :x X :iv 1325.0 :kv FREAL :f #X1 :d "pressure out") (:var :t TEMP :n T1 :x X :iv 20.0 :kv (FREAL -273.16) :f #X1 :d "temperature in") (:var :t TEMP :n T2 :x X :iv 25.0 :kv (FREAL -273.16) :f #X1 :d "temperature zone") (:var :t FRACTION_Y :n X1 :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "pollutant fractn in") (:var :t FRACTION_Y :n X2 :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "pollutant fractn zone") (:var :t HUMRATIO :n HUM1 :x X :iv 0.006 :kv (FREAL (0.0)) :f #X1 :d "moisture fractn in") (:var :t HUMRATIO :n HUM2 :x X :iv 0.006 :kv (FREAL (0.0)) :f #X1 :d "moisture fractn zone") (:var :t CONTROL :n CONTR :x X :iv 0.0 :kv (FREAL * 1.0) :f #X1 :d "Controller input 0 -> mMin, 1 -> mMax") (:var :t CONTROL :n CENTRALMODE :x X :iv 1.0 :kv (FREAL -1.0) :f #X1 :d "Forcing control, = >0 local control 0 low flow <0 natural vent") (:var :t MASSFLOW :n M_ASS :x A_S :iv 0.024 :kv (FREAL 0.0) :f #X18 :d "massflow through terminal") (:var :t PRESSURE :n DP :x LOC :iv 50.0 :kv (FREAL 0.0) :f #X140 :d "eff pressure diff") (:var :t ENTHALPY :n HSUPT :x LOC :iv 40000.0 :kv FREAL :f #X140 :d "enthalpy of supply air") (:var :t HEATFLUX :n QN12 :x LOC :iv 0.0 :kv FREAL :f #X148 :d "HeatFlux out of terminal (into zone)") (:var :t VOLFLOW_M :n FI12 :x LOC :iv 0.0 :kv FREAL :f #X148 :d "Volume flow out of terminal (into zone)") ;; :interfaces (:int :t UNIAIR :n INLET :v (P1 M T1 X1 HUM1) :dir (NIL -1 NIL NIL NIL)) (:int :t BIDIRAIR :n ZONE :v (P2 M T2 Q X2 XF HUM2 HUMF) :dir (NIL 1 NIL 1 NIL 1 NIL 1)) (:int :t CONTROLLINK :n CONTROL_IN :v (CONTR) :dir (NIL)) (:int :t CONTROLLINK :n FORCE_CONTROL :v (CENTRALMODE) :dir (NIL)) (:int :t T :n TSENSOR :v (T1) :dir (NIL))) ;;;;;; ;;;;;;end of model CESUPT ;;;;;; ;;; ;;; model CESURF ;;; ((template :n CESURF :c :eo :d "Boundary object for envelope SURFace, not exposed to solar.") ;; :model-parameters ;; :parameters (:par :t AREA :n ASURF :x S_P :v 1.0 :kv (FREAL (0.0)) :f #X21 :d "wall surface area") (:par :t HEATCONDA :n USURF :x S_P :v 8.0 :kv (FREAL 0.0) :f #X21 :d "total heat transf coef") ;; :variables (:var :t TEMP :n TSURF :x U :iv 24.0 :kv (FREAL -273.16) :f #X2 :d "surface temp") (:var :t HEATFLUX :n Q :x X :iv 0.0 :kv FREAL :f #X9 :d "heat from envelope") (:var :t TEMP :n TAIR :x X :iv 21.0 :kv (FREAL -273.16) :f #X1 :d "air temp") ;; :interfaces (:int :t TQ :n WALLSIDE :v (TSURF Q) :dir (NIL -1)) (:int :t TQ :n AIRSIDE :v (TAIR Q) :dir (NIL 1)) (:int :t T :n AIRTEMP :v (TAIR) :dir (NIL))) ;;;;;; ;;;;;;end of model CESURF ;;;;;; ;;; ;;; model CEWATHET ;;; ((template :n CEWATHET :c :eo :d "WATer fed HEaTer in front of room surface; radiator or convector.") ;; :model-parameters ;; :parameters (:par :t GENERIC :n K :x S_P :v 4.18 :kv (FREAL (0.0)) :f #X21 :d "Powerlaw coefficient in W/(m Deg-C**n)") (:par :t FACTOR :n N :x S_P :v 1.28 :kv (REAL 0.5 2.0) :f #X21 :d "Powerlaw exponent") (:par :t LENGTH :n STRIP_H :x S_P :v 0.5 :kv (FREAL (0.0)) :f #X21 :d "Radiator height") (:par :t LENGTH :n LENGTH :x S_P :v 1.5 :kv (FREAL (0.0)) :f #X21 :d "Radiator length") (:par :t HEATCAPM :n CP_LIQ :x S_P :v 4187.0 :kv (FREAL (0.0)) :f #X21 :d "Liquid specific heat") (:par :t HEATCOND :n HBACK :x S_P :v 2.0 :kv FREAL :f #X21 :d "Heat transfer coefficient between radiator and wall. If a negative value is given, pure radiative exchange is assumed") (:par :t FACTOR :n KFIN :x S_P :v 0.2 :kv (REAL 0.0 0.5) :f #X21 :d "Fin resistance / Total ditto") (:par :t FACTOR :n ELWRAD :x S_P :v 0.9 :kv (FREAL * 1.0) :f #X21 :d "Radiator back emissivity, for hback < 0") (:par :t FACTOR :n ELWWALL :x S_P :v 0.9 :kv (FREAL * 1.0) :f #X21 :d "Wall long wave emissivity, for hback < 0") (:par :t PRESSURE :n DP0 :x S_P :v 1.0 :kv (FREAL (0.0)) :f #X21 :d "Pressure drop under which waterflow is nolonger maintained") (:par :t MASSFLOW :n MMAX :x S_P :v 0.01 :kv (FREAL (0.0)) :f #X29 :d "Water massflow at Contr = 1 and Dp > dp0") (:par :t MASSFLOW :n MMIN :x S_P :v 0.0001 :kv (FREAL (0.0)) :f #X29 :d "Water massflow at Contr = 0 and Dp > dp0") ;; :variables (:var :t TEMP :n TSURF :x U :iv 26.0 :kv (FREAL -273.16) :f #X2 :d "Average surface temperature") (:var :t MASSFLOW :n M :x U :iv 0.001 :kv (FREAL (0.0)) :f #XA :d "Water massflow") (:var :t TEMP :n TOUT :x U :iv 29.0 :kv (FREAL -273.16) :f #X2 :d "Leaving water temperature") (:var :t HEATFLUX :n QCONV :x U :iv 6.0 :kv FREAL :f #XA :d "Remaining convective heat emitted") (:var :t HEATFLUX :n QWALL :x U :iv 0.0 :kv FREAL :f #XA :d "Heat emitted to wall behind panel") (:var :t TEMP :n TAIR :x X :iv 25.0 :kv (FREAL -273.16) :f #X1 :d "Surrounding air temperature") (:var :t TEMP :n TIN :x X :iv 30.0 :kv (FREAL -273.16) :f #X1 :d "Supply water temperature") (:var :t HEATFLUX :n QFRONT :x X :iv -5.0 :kv FREAL :f #X9 :d "Radiative and convective heat emitted by panel front") (:var :t TEMP :n TWALL :x X :iv 25.0 :kv (FREAL -273.16) :f #X1 :d "Surface temp of wall behind") (:var :t PRESSURE :n P1 :x X :iv 600.0 :kv (FREAL 0.0) :f #X1 :d "Pressure at water inlet") (:var :t PRESSURE :n P2 :x X :iv 0.0 :kv (FREAL 0.0) :f #X1 :d "Pressure at water outlet") (:var :t CONTROL :n CONTR :x X :iv 0.0 :kv (FREAL * 1.0) :f #X1 :d "Controller input 1 -> mmax, 0 -> mmin, a negative value turns off control action") (:var :t GENERIC :n G0 :x A_S :iv 600.0 :kv FREAL :f #X10 :d "") (:var :t GENERIC :n DPOK :x A_S :iv 1.0 :kv FREAL :f #X10 :d "Mode memory, = 0 for linear behavior, = 1 for controlled") (:var :t TEMP :n DT :x LOC :iv 0.2 :kv FREAL :f #X140 :d "Air-to-surface temp difference") (:var :t TEMP :n TLIQ :x LOC :iv 30.0 :kv (FREAL -273.16) :f #X140 :d "Average liquid temperature") (:var :t HEATFLUX :n P :x LOC :iv 1.0 :kv (FREAL 0.0) :f #X148 :d "Total emitted heat") (:var :t PRESSURE :n DP :x LOC :iv 600.0 :kv (FREAL 0.0) :f #X140 :d "Radiator and valve total pressure drop") (:var :t GENERIC :n EXPLOC :x LOC :iv -1.0 :kv FREAL :f #X140 :d "Value inside function call EXP(), itroduced as a safety card") ;; :interfaces (:int :t TQ :n FRONT :v (TSURF QFRONT) :dir (NIL 1)) (:int :t TQ :n BACKCONV :v (TAIR QCONV) :dir (NIL 1)) (:int :t TQ :n BACKWALL :v (TWALL QWALL) :dir (NIL 1)) (:int :t PMT :n INLET :v (P1 M TIN) :dir (NIL -1 NIL)) (:int :t PMT :n OUTLET :v (P2 M TOUT) :dir (NIL 1 NIL)) (:int :t CONTROLLINK :n CONTROL :v (CONTR) :dir (NIL)) (:int :t T :n AIRTEMP :v (TAIR) :dir (NIL))) ;;;;;; ;;;;;;end of model CEWATHET ;;;;;; ;;; ;;; model CEWIND ;;; ((template :n CEWIND :c :eo :d "WINDow, internal shading controlled by schedule or heat flux.") ;; :model-parameters ;; :parameters (:par :t FACTOR :n SC_0 :x S_P :v 0.87 :kv (REAL (0.0) 1.12) :f #X21 :d "factor SC wo shading") (:par :t FACTOR :n SSC_0 :x S_P :v 0.81 :kv (REAL (0.0) 1.09) :f #X21 :d "factor SSC wo shading") (:par :t HEATCONDA :n H_0 :x S_P :v 3.1 :kv (REAL (0.0) 5.9) :f #X21 :d "U-value wo shading") (:par :t FACTOR :n M_SC :x S_P :v 0.5 :kv (REAL (0.0) 1.0) :f #X21 :d "reduction thru shading") (:par :t FACTOR :n M_SSC :x S_P :v 0.3 :kv (REAL (0.0) 1.0) :f #X21 :d "reduction thru shading") (:par :t FACTOR :n M_H :x S_P :v 0.9 :kv (REAL (0.0) 1.0) :f #X21 :d "reduction thru shading") (:par :t AREA :n A :x S_P :v 1.0 :kv (FREAL (0.0)) :f #X21 :d "window area") (:par :t FACTOR :n FRAMERAT :x S_P :v 0.1 :kv (REAL (0.0) 1.0) :f #X21 :d "Frame area / total window area") (:par :t FACTOR :n H_FRAME :x S_P :v 2.0 :kv (FREAL (0.0)) :f #X21 :d "Frame U-value") (:par :t FACTOR :n ABSFRAME :x S_P :v 0.6 :kv (REAL (0.0) 1.0) :f #X21 :d "Absorption of frame") (:par :t FACTOR :n EMITFRAME :x S_P :v 0.6 :kv (REAL (0.0) 1.0) :f #X21 :d "Emissivity of frame") (:par :t FACTOR :n EMITWIND :x S_P :v 0.9 :kv (REAL (0.0) 1.0) :f #X21 :d "Emissivity of wind pane") (:par :t ANGLE :n SLOPEWIND :x S_P :v 90.0 :kv (REAL 0.0 180.0) :f #X21 :d "Slope of window surf, 0 = hor downward 90 = vertical 180 = hor upward; note: face is different") (:par :t FACTOR :n SOLARCTRL :x S_P :v 0.0 :kv (REAL 0.0 1.0) :f #X21 :d "solar control on or off") (:par :t ANGLE :n CTRLANGLE :x S_P :v 0.0 :kv (REAL 0.0 180.0) :f #X21 :d "max angle for solar ctrl") (:par :t RADIATIONA :n CTRLLEVEL :x S_P :v 0.0 :kv (FREAL 0.0) :f #X29 :d "min rad [W/m2] for ctrl") ;; :variables (:var :t HEATFLUX :n QINSIDE :x U :iv 18.0 :kv FREAL :f #XA :d "heat from zone, conv+LW") (:var :t HEATFLUX :n QLWOUT :x U :iv 0.0 :kv FREAL :f #XA :d "sum lw rad above") (:var :t HEATFLUX :n QCONVOUT :x U :iv 0.0 :kv FREAL :f #XA :d "sum conv above") (:var :t HEATFLUX :n QSWOUT :x U :iv 0.0 :kv FREAL :f #XA :d "sum reflected total rad and back coming radiation") (:var :t RADIATION :n RDIFFTHRU :x U :iv 108.0 :kv (FREAL 0.0) :f #XA :d "diffuse rad passing thru") (:var :t RADIATION :n RDIRTHRU :x U :iv 0.0 :kv (FREAL 0.0) :f #XA :d "direct rad passing thru") (:var :t TEMP :n TWINDOUT :x U :iv 21.0 :kv (FREAL -273.16) :f #X2 :d "temp of outermost pane") (:var :t TEMP :n TFRAMEOUT :x U :iv 23.0 :kv (FREAL -273.16) :f #X2 :d "temp of outer frame") (:var :t ANGLE :n AZIMUTTHRU :x X :iv 97.0 :kv (REAL 0.0 360.0) :f #X1 :d "sun's rel azimuth") (:var :t ANGLE :n ELEVTHRU :x X :iv 19.0 :kv (REAL 0.0 90.0) :f #X1 :d "sun's elevation") (:var :t ANGLE :n ANGLEINC :x X :iv 45.0 :kv (REAL 0.0 90.0) :f #X1 :d "incident angle of direct radiation") (:var :t RADA :n IDIFSKYINC :x X :iv 84.0 :kv (FREAL 0.0) :f #X1 :d "incident diffuse rad fr sky") (:var :t RADA :n IDIFGRDINC :x X :iv 84.0 :kv (FREAL 0.0) :f #X1 :d "incident diffuse rad fr ground") (:var :t RADA :n IDIRINC :x X :iv 0.0 :kv (FREAL 0.0) :f #X1 :d "incident direct rad") (:var :t RADIATION :n RBACK :x X :iv 4.0 :kv (FREAL 0.0) :f #X9 :d "diffuse rad coming back") (:var :t FACTOR :n SCHEDSHADING :x X :iv 0.0 :kv (REAL 0.0 1.0) :f #X1 :d "time control 0=OFF/1=ON") (:var :t TEMP :n TAMB :x X :iv 20.0 :kv (FREAL -273.16) :f #X1 :d "ambient temp") (:var :t TEMP :n TIN :x X :iv 25.0 :kv (FREAL -273.16) :f #X1 :d "temp of window seen by zone combined frame and pane temp.") (:var :t TEMP :n TGROUND :x X :iv 20.0 :kv (FREAL -273.16) :f #X1 :d "ground temp") (:var :t TEMP :n TSKY :x X :iv 15.0 :kv (FREAL -273.16) :f #X1 :d "sky temp") (:var :t HEATCONDA :n HEXT :x X :iv 13.0 :kv (FREAL 0.0) :f #X1 :d "external conv heat coeff") (:var :t FACTOR :n SC :x LOC :iv 0.87 :kv (REAL (0.0) 1.3) :f #X140 :d "factor SC") (:var :t FACTOR :n SSC :x LOC :iv 0.81 :kv (REAL (0.0) 1.3) :f #X140 :d "factor SSC") (:var :t FACTOR :n HPANES :x LOC :iv 3.1 :kv (REAL (0.0) 5.9) :f #X140 :d "U-value betw innermost and outermost panes") (:var :t FACTOR :n COSINC :x LOC :iv 0.0 :kv FREAL :f #X140 :d "COS(incident angle)") (:var :t FACTOR :n FTHRUDIR :x LOC :iv 0.0 :kv (REAL 0.0 1.0) :f #X140 :d "transmission factor, direct radiation") (:var :t HEATFLUX :n QSOLAR :x LOC :iv 1.0 :kv (FREAL (0.0)) :f #X148 :d "solar radiation gain for building") (:var :t HEATFLUX :n QTRANSM :x LOC :iv 1.0 :kv FREAL :f #X148 :d "transmission gain for building") (:var :t HEATFLUX :n QABSFROUT :x LOC :iv 19.0 :kv FREAL :f #X148 :d "rad absorbed, innermost, fr outside") (:var :t HEATFLUX :n QABSORB :x LOC :iv 19.0 :kv FREAL :f #X148 :d "rad absorbed, innermost, fr both sides") (:var :t HEATFLUX :n QGLASSINSIDE :x LOC :iv 17.0 :kv FREAL :f #X148 :d "heat from zone, conv+LW, glass part") (:var :t HEATFLUX :n QFRAMEINSIDE :x LOC :iv 1.0 :kv FREAL :f #X148 :d "heat from zone, conv+LW, frame part") (:var :t HEATFLUX :n QGLASSTRANSM :x LOC :iv -36.0 :kv FREAL :f #X148 :d "heat outer to inner pane") (:var :t HEATFLUX :n QFRAMETRANSM :x LOC :iv -1.0 :kv FREAL :f #X148 :d "heat outer to inner frame") (:var :t HEATFLUX :n QLWOUTPANE :x LOC :iv 0.0 :kv FREAL :f #X148 :d "lw rad between pane and ambient") (:var :t HEATFLUX :n QLWOUTFRAME :x LOC :iv 0.0 :kv FREAL :f #X148 :d "lw rad between frame and ambient") (:var :t HEATFLUX :n QCONVPANE :x LOC :iv 0.0 :kv FREAL :f #X148 :d "conv between pane and ambient") (:var :t HEATFLUX :n QCONVFRAME :x LOC :iv 0.0 :kv FREAL :f #X148 :d "conv between frame and ambient") (:var :t RADIATION :n RBACKTHRU :x LOC :iv 0.0 :kv FREAL :f #X148 :d "back coming radition through window") (:var :t RADA :n IDIFFINC :x LOC :iv 84.0 :kv (FREAL 0.0) :f #X140 :d "total incident diffuse rad") (:var :t RADIATION :n RTHRUREF :x LOC :iv 156.0 :kv (FREAL 0.0) :f #X148 :d "total rad thru ref wdw") (:var :t RADIATIONA :n RTHRUCURRA :x LOC :iv 136.0 :kv (FREAL 0.0) :f #X148 :d "specific rad thru curr wdw") (:var :t FACTOR :n SHADINGON :x LOC :iv 0.0 :kv (REAL 0.0 1.0) :f #X140 :d "shading 0=OFF/1=ON") ;; :interfaces (:int :t FACE2WIND :n OUTSIDE :v (TAMB TGROUND TSKY HEXT IDIRINC IDIFSKYINC IDIFGRDINC AZIMUTTHRU ELEVTHRU ANGLEINC) :dir (NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL)) (:int :t WIND2AMB :n FLUXOUTSIDE :v (QCONVOUT QSWOUT QLWOUT) :dir (-1 1 -1)) (:int :t TQ :n TQINSIDE :v (TIN QINSIDE) :dir (NIL -1)) (:int :t RRRWW :n RADINSIDE :v (RDIFFTHRU RDIRTHRU RBACK AZIMUTTHRU ELEVTHRU) :dir (1 1 -1 NIL NIL)) (:int :t Z :n CTRLSHADING :v (SCHEDSHADING) :dir (NIL))) ;;;;;; ;;;;;;end of model CEWIND ;;;;;; ;;; ;;; model CLIMATE ;;; ((template :n CLIMATE :c :ceo :d "Process CLIMATE data from file; calc sun pos; send data to facade.") ;; :model-parameters ;; :parameters (:par :t ANGLE :n LAT :x S_P :v 60.0 :kv (REAL -90.0 90.0) :f #X21 :d "Local latitude") (:par :t ANGLE :n LONG :x S_P :v -25.0 :kv (REAL -180.0 180.0) :f #X21 :d "Local longitude") (:par :t ANGLE :n LONGTIMEZONE :x S_P :v -30.0 :kv (REAL -180.0 180.0) :f #X21 :d "Time zone longitude") (:par :t FACTOR :n HEIGHTREF :x S_P :v 10.0 :kv (FREAL 0.0) :f #X21 :d "Height of meteorological wind measurements") (:par :t FACTOR :n HEIGHT :x S_P :v 6.0 :kv (FREAL 0.0) :f #X21 :d "Height of building") (:par :t FACTOR :n A_EXP :x S_P :v 0.1 :kv (FREAL (0.0)) :f #X21 :d "Wind profile exponent") (:par :t FACTOR :n A0_COEFF :x S_P :v 1.0 :kv (FREAL (0.0)) :f #X21 :d "Wind profile coefficient") ;; :variables (:var :t PRESSURE :n PAIR2 :x U :iv 1325.0 :kv (FREAL (0.0)) :f #X2 :d "Atmospheric pressure") (:var :t TEMP :n TAIR2 :x U :iv 20.0 :kv (FREAL -273.16) :f #X2 :d "Temperature of air") (:var :t FRACTION_Y :n XAIR2 :x U :iv 594.0 :kv (FREAL 0.0) :f #X2 :d "CO2 fraction") (:var :t HUMRATIO :n HUMAIR :x U :iv 0.073 :kv (FREAL 0.0) :f #X2 :d "Humidity ratio of air") (:var :t TEMP :n TGROUND :x U :iv 20.0 :kv (FREAL -273.16) :f #X2 :d "Temperature of ground") (:var :t TEMP :n TSKY :x U :iv 15.0 :kv (FREAL -273.16) :f #X2 :d "Temperature of sky") (:var :t ANGLE :n WINDDIR2 :x U :iv 0.0 :kv (REAL 0.0 360.0) :f #X2 :d "Direction of wind") (:var :t VEL :n WINDVEL :x U :iv 1.0 :kv (FREAL 0.0) :f #X2 :d "Speed of on-site wind") (:var :t RADA :n IDIRNORM2 :x U :iv 0.0 :kv (FREAL 0.0) :f #X2 :d "Direct normal rad") (:var :t RADA :n IDIFFHOR2 :x U :iv 0.0 :kv (FREAL 0.0) :f #X2 :d "Diffuse rad on hor surf") (:var :t ANGLE :n ELEVSUN :x U :iv 27.0 :kv (REAL -90.0 90.0) :f #X2 :d "Elevation angle of sun") (:var :t ANGLE :n AZIMUTSUN :x U :iv 26.05 :kv (REAL -180.0 180.0) :f #X2 :d "Azimut angle of sun") (:var :t PRESSURE :n PAIR :x X :iv 1325.0 :kv (FREAL -50000.0) :f #X1 :d "(Atmospheric press)-1E5") (:var :t TEMP :n TAIR :x X :iv 20.0 :kv (FREAL -273.16) :f #X1 :d "Temperature of air") (:var :t FRACTION_Y :n XAIR :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "CO2 fraction") (:var :t FACTOR :n RELHUM :x X :iv 50.0 :kv (REAL 0.0 100.0) :f #X1 :d "Rel humidity of air") (:var :t ANGLE :n WINDDIR :x X :iv 0.0 :kv (REAL 0.0 360.0) :f #X1 :d "Direction of wind") (:var :t VEL :n WINDVELREF :x X :iv 1.0 :kv (FREAL 0.0) :f #X1 :d "Speed of meteorological wind") (:var :t RADA :n IDIRNORM :x X :iv 0.0 :kv (FREAL 0.0) :f #X1 :d "Direct normal rad") (:var :t RADA :n IDIFFHOR :x X :iv 0.0 :kv (FREAL 0.0) :f #X1 :d "Diffuse rad on hor surf") (:var :t HOUR :n DUMMY2 :x A_S :iv 13.54 :kv (REAL -24.0 24.0) :f #X10 :d "Dummy for event") (:var :t PRESSURE :n PSAT :x LOC :iv 2365.0 :kv (FREAL (0.0)) :f #X140 :d "Saturation pressure of water vapor") (:var :t PRESSURE :n PVAP :x LOC :iv 1182.0 :kv (FREAL (0.0)) :f #X140 :d "Partial pressure of water vapor") (:var :t GENERIC :n DAYNR :x LOC :iv 80.0 :kv (REAL 1.0 366.0) :f #X140 :d "Whole day number in year, 1 = January 1st") (:var :t GENERIC :n DAYINYEAR :x LOC :iv 80.0 :kv (REAL 1.0 366.0) :f #X140 :d "Broken day nr in year, 0 = January 1st") (:var :t GENERIC :n DAYINFOURYEARS :x LOC :iv 80.0 :kv (REAL 1.0 366.0) :f #X140 :d "Broken day nr in four year leap period, 0 = January 1st") (:var :t GENERIC :n DAYFROM1901 :x LOC :iv 80.0 :kv (REAL 1.0 366.0) :f #X140 :d "Broken day nr from 1901-01-01, 0-..") (:var :t GENERIC :n HOUR :x LOC :iv 14.0 :kv (REAL 0.0 24.0) :f #X140 :d "Hour number in day, std clock time") (:var :t GENERIC :n SECONDS :x LOC :iv 86400.0 :kv (FREAL 0.0) :f #X140 :d "Time from 1900-01-01") (:var :t GENERIC :n TIMEHR :x LOC :iv 0.0 :kv FREAL :f #X140 :d "Integration time [hr]") (:var :t ANGLER :n DECLINATION :x LOC :iv -0.007 :kv (FREAL (0.0)) :f #X140 :d "Declination angle") (:var :t ANGLE :n B :x LOC :iv -0.017 :kv FREAL :f #X140 :d "Help var for solar time") (:var :t ANGLE :n E :x LOC :iv -7.84 :kv FREAL :f #X140 :d "Help var for solar time") (:var :t ANGLER :n OMEGA :x LOC :iv 0.402 :kv FREAL :f #X140 :d "Hour angle from south, 15 deg/hour") (:var :t HOUR :n SOLTIME :x LOC :iv 13.54 :kv (REAL 0.0 24.0) :f #X140 :d "Help var for solar time") (:var :t HOUR :n SOLARTIME :x LOC :iv 13.54 :kv (REAL 0.0 24.0) :f #X140 :d "Local solar time") (:var :t HOUR :n DUMMY1 :x LOC :iv 13.54 :kv (REAL -24.0 24.0) :f #X140 :d "Dummy for event") (:var :t FACTOR :n SINELEVSUN :x LOC :iv 0.454 :kv (REAL -1.0 1.0) :f #X140 :d "Help var, SIN(ElevSun)") (:var :t FACTOR :n COSAZIMSUN :x LOC :iv 0.898 :kv (REAL -1.0 1.0) :f #X140 :d "Help var, COS(AzimutSun)") ;; :interfaces (:int :t CLIMDATA :n DATAIN :v (PAIR TAIR XAIR RELHUM WINDDIR WINDVELREF IDIRNORM IDIFFHOR) :dir (NIL NIL NIL NIL NIL NIL NIL NIL)) (:int :t CLIM2FACE :n DATAOUT :v (PAIR2 TAIR2 XAIR2 HUMAIR TGROUND TSKY WINDDIR2 WINDVEL IDIRNORM2 IDIFFHOR2 ELEVSUN AZIMUTSUN) :dir (NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL))) ;;;;;; ;;;;;;end of model CLIMATE ;;;;;; ;;; ;;; model COMPARATOR ;;; ((template :n COMPARATOR :c :eo :d "Comparator of two signals, with dead band.") ;; :model-parameters ;; :parameters (:par :t GENERIC :n DEADBAND :x S_P :v 0.01 :kv FREAL :f #X21 :d "Dead band, within which outsignal of last timestep is retained") (:par :t GENERIC :n MAXOUT :x S_P :v 0.5 :kv FREAL :f #X21 :d "output amplitude") (:par :t GENERIC :n OFFSET :x S_P :v 0.5 :kv FREAL :f #X21 :d "output offset") ;; :variables (:var :t GENERIC :n OUTSIGNAL :x U :iv 0.0 :kv FREAL :f #X2 :d "Out-signal, amplitude and offset according to parameters") (:var :t GENERIC :n INHIGH :x X :iv 1.0 :kv FREAL :f #X1 :d "In-signal (High), Positive output if greater than other insignal") (:var :t GENERIC :n INLOW :x X :iv 0.0 :kv FREAL :f #X1 :d "In-signal (Low), Positive output if smaller than other insignal") (:var :t GENERIC :n HI :x A_S :iv 1.0 :kv FREAL :f #X10 :d "Event var up") (:var :t GENERIC :n LO :x A_S :iv 1.0 :kv FREAL :f #X10 :d "Event var down") (:var :t GENERIC :n OLDSIGNAL :x A_S :iv 1.0 :kv FREAL :f #X10 :d "State On or Off") (:var :t GENERIC :n TOP :x LOC :iv 0.0 :kv FREAL :f #X140 :d "Over the top") (:var :t GENERIC :n BOTTOM :x LOC :iv 0.0 :kv FREAL :f #X140 :d "Down under") ;; :interfaces (:int :t GENERIC :n INLOWLINK :v (INLOW) :dir (NIL)) (:int :t GENERIC :n INHIGHLINK :v (INHIGH) :dir (NIL)) (:int :t GENERIC :n OUTSIGNALLINK :v (OUTSIGNAL) :dir (NIL))) ;;;;;; ;;;;;;end of model COMPARATOR ;;;;;; ;;; ;;; model DUMMY ;;; ((template :n DUMMY :c :eo :d "Place holder for new component.") ;; :model-parameters ;; :parameters (:par :t FACTOR :n PAR1 :x S_P :v 1.0 :kv (FREAL (0.0)) :f #X21 :d "") ;; :variables (:var :t TEMP :n OUTTEMP :x U :iv 20.0 :kv (FREAL -273.16) :f #X2 :d "") (:var :t TEMP :n INTEMP :x X :iv 20.0 :kv (FREAL -273.16) :f #X1 :d "") (:var :t HEATFLUX :n Q :x X :iv 0.0 :kv FREAL :f #X9 :d "") ;; :interfaces (:int :t TQ :n INLINK :v (INTEMP Q) :dir (NIL -1)) (:int :t TQ :n OUTLINK :v (OUTTEMP Q) :dir (NIL 1))) ;;;;;; ;;;;;;end of model DUMMY ;;;;;; ;;; ;;; model ELRAD ;;; ((template :n ELRAD :c :eo :d "ELectric RADiator in front of room surface.") ;; :model-parameters ;; :parameters (:par :t LENGTH :n RADHEIGHT :x S_P :v 0.5 :kv (FREAL 0.0) :f #X21 :d "radiator height") (:par :t LENGTH :n RADWIDTH :x S_P :v 1.0 :kv (FREAL 0.0) :f #X21 :d "radiator width") (:par :t LENGTH :n DSPACE :x S_P :v 0.05 :kv (FREAL (0.0)) :f #X21 :d "distance between radiator and wall") (:par :t FACTOR :n ELWRAD :x S_P :v 0.9 :kv (REAL 0.0 1.0) :f #X21 :d "radiator back emissisivity") (:par :t FACTOR :n ELWWALL :x S_P :v 0.9 :kv (REAL 0.0 1.0) :f #X21 :d "wall long wave emissisivity") (:par :t HEATFLUX :n PMAX :x S_P :v 2000.0 :kv (FREAL 0.0) :f #X29 :d "Radiator max effect") ;; :variables (:var :t HEATFLUX :n QRADFRONT :x U :iv 0.0 :kv FREAL :f #XA :d "Heat transfer at radiator front side") (:var :t HEATFLUX :n QA :x U :iv 0.0 :kv FREAL :f #XA :d "Influx wall interior side") (:var :t HEATFLUX :n QLWBACK :x U :iv 0.0 :kv FREAL :f #XA :d "Radiative flux behind rad") (:var :t HEATFLUX :n QCONVBACK :x U :iv 0.0 :kv FREAL :f #XA :d "Convective flux behind radiator") (:var :t HEATFLUX :n QCONVWALL :x U :iv 0.0 :kv FREAL :f #XA :d "Convective flux at wall") (:var :t HEATFLUX :n QRADCONV :x U :iv 0.0 :kv FREAL :f #XA :d "Convective flux to space") (:var :t CONTROL :n CONTR :x X :iv 1.0 :kv (REAL 0.0 1.0) :f #X1 :d "Radiator power control") (:var :t TEMP :n TRAD :x X :iv 25.0 :kv (FREAL -273.16) :f #X1 :d "Radiator temp") (:var :t TEMP :n TPA :x X :iv 25.0 :kv (FREAL -273.16) :f #X1 :d "Wall exterior surface temp") (:var :t TEMP :n TZONE :x X :iv 25.0 :kv (FREAL -273.16) :f #X1 :d "Zone temp entering space") (:var :t ELPOWERCONS :n PRAD :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X140 :d "Radiator effect") (:var :t HEATCONDA :n HTCRADBACK :x LOC :iv 5.0 :kv (FREAL 0.0) :f #X140 :d "Heat transfer coefficient at radiator back") (:var :t HEATCONDA :n HTCWALL :x LOC :iv 5.0 :kv (FREAL 0.0) :f #X140 :d "Heat transfer coefficient at wall") ;; :interfaces (:int :t TQ :n FRONT :v (TRAD QRADFRONT) :dir (NIL 1)) (:int :t TQ :n BACKCONV :v (TZONE QRADCONV) :dir (NIL 1)) (:int :t TQ :n BACKWALL :v (TPA QA) :dir (NIL 1)) (:int :t T :n AIRTEMP :v (TZONE) :dir (NIL)) (:int :t CONTROLLINK :n CONTROL_IN :v (CONTR) :dir (NIL))) ;;;;;; ;;;;;;end of model ELRAD ;;;;;; ;;; ;;; model EMETER ;;; ((template :n EMETER :c :ceo :d "Energy meter") ;; :model-parameters (:par :t system-parameter :n N_IN :x SMP :v 0 :kv (INTEGER 0 *) :f #X29 :d "Number of InConsum links") (:par :t system-parameter :n N_MONTH :x SMP :v 12 :kv (INTEGER 1 *) :f #X29 :d "Maximal month number") (:par :t system-parameter :n N_PRICE :x CMP :v 4 :kv (INTEGER 4 4) :f #X168 :s (0 T 0 + 4) :d "Number of prices") ;; :parameters (:par :t GENERIC :n FIXEDPRICE :x S_P :v 0.0 :kv (FREAL 0.0) :f #X21 :d "Fixed price, per year") (:par :t FACTOR :n MULT :x S_P :ie 1.0 :kv (FREAL (0.0)) :f #X21 :sp (N_IN) :d "Power signal multiplier, see abstract") (:par :t GENERIC :n PRICE :x S_P :ie 1.0 :kv (FREAL 0.0) :f #X21 :sp (N_PRICE) :d "Prices, per kwh") ;; :variables (:var :t POWER_K :n OUTPOWER :x U :iv 0.0 :kv FREAL :f #X2 :d "Total power [kW]") (:var :t GENERIC :n COST :x U :iv 0.0 :kv FREAL :f #X2 :d "Total cost per hour") (:var :t GENERIC :n PRICENO :x X :iv 1.0 :kv (REAL 0.0 4.0) :f #X1 :d "Price select signal") (:var :t POWER_K :n EXTRAPOWER :x X :iv 0.0 :kv (FREAL 0.0) :f #X1 :d "Extra power consumption [kW]") (:var :t GENERIC :n PREVTIME :x A_S :iv -1.0 :kv (FREAL -1.0) :f #X10 :d "Previous time instance") (:var :t GENERIC :n CPRICE :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X140 :d "Current price") (:var :t GENERIC :n INPOWER :x X :ie 0.0 :kv (FREAL 0.0) :f #X1 :sp (N_IN) :d "Input powers [W]") (:var :t POWER_K :n MONPOWER :x A_S :ie 0.0 :kv (FREAL 0.0) :f #X10 :sp (N_MONTH) :d "Monthly power consumption [kW]") (:var :t GENERIC :n MONPRICE :x A_S :ie 0.0 :kv (FREAL 0.0) :f #X10 :sp (N_MONTH) :d "Monthly cost") ;; :interfaces (:int :t GENERIC :n PRICENOLINK :v (PRICENO) :dir (NIL)) (:int :t POW :n INCONSUMLINK :v (INPOWER) :dir (NIL) :sp (N_IN)) (:int :t POW_K :n EXTRACONSUMLINK :v (EXTRAPOWER) :dir (NIL)) (:int :t POW_K :n OUTCONSUMLINK :v (OUTPOWER) :dir (NIL)) (:int :t GENERIC :n OUTCOSTLINK :v (COST) :dir (NIL))) ;;;;;; ;;;;;;end of model EMETER ;;;;;; ;;; ;;; model ENVLEAK ;;; ((template :n ENVLEAK :c :eo :d "The model EnvLeak is obsolete and should be replaced with CeLeak.") ;; :model-parameters ;; :parameters (:par :t GENERIC :n C_T :x S_P :v 1.0 :kv (FREAL 0.0) :f #X21 :d "powerlaw coeff [kg/(s Pa**n)]") (:par :t GENERIC :n N :x S_P :v 0.5 :kv (REAL 0.5 1.0) :f #X21 :d "powerlaw exponent [dimless]") (:par :t AREA :n ELA :x S_P :v 0.0 :kv (FREAL 0.0) :f #X21 :d "equivalent leakage area at Dp=4 Pa (C_d = 1)") (:par :t HEATCOND :n UABRIDGE :x S_P :v 0.0 :kv (FREAL 0.0) :f #X21 :d "UA-value for conductive cold bridge") (:par :t LENGTH :n DZ :x S_P :v 0.0 :kv FREAL :f #X21 :d "rise fr in to out (may be <0)") (:par :t LENGTH :n ZR_IN :x S_P :v 0.0 :kv (FREAL 0.0) :f #X21 :d "leak height from floor zone") (:par :t LENGTH :n ZA_IN :x S_P :v 0.0 :kv FREAL :f #X21 :d "absolute floor level of zone") (:par :t PRESSURE :n DP0 :x S_P :v 0.01 :kv (FREAL (0.0)) :f #X21 :d "limit for linear flow") (:par :t DENSITY :n RHO_20 :x S_P :v 1.2 :kv (REAL (0.0) 1.3) :f #X21 :d "density at ground pressure") ;; :variables (:var :t MASSFLOW :n M :x U :iv -0.002 :kv FREAL :f #XA :d "massflow through leak") (:var :t HEATFLUX :n Q :x U :iv -80.0 :kv FREAL :f #XA :d "heat moved by massflow") (:var :t FRACTFLOW_Y :n XF :x U :iv 0.0 :kv FREAL :f #XA :d "fraction moved") (:var :t HUMFLOW :n HUMF :x U :iv 0.0 :kv FREAL :f #XA :d "fraction hum") (:var :t PRESSURE :n P_IN :x X :iv 1310.0 :kv FREAL :f #X1 :d "inside floor pressure") (:var :t PRESSURE :n P_OUT :x X :iv 1325.0 :kv FREAL :f #X1 :d "outside grnd pressure") (:var :t TEMP :n T_IN :x X :iv 25.0 :kv (FREAL -273.16) :f #X1 :d "inside temperature") (:var :t TEMP :n T_OUT :x X :iv 20.0 :kv (FREAL -273.16) :f #X1 :d "outside temperature") (:var :t FRACTION_Y :n X_IN :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "zone fraction") (:var :t FRACTION_Y :n X_OUT :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "environment fraction") (:var :t HUMRATIO :n HUM_IN :x X :iv 0.006 :kv (REAL (0.0) 1.0) :f #X1 :d "zone hum") (:var :t HUMRATIO :n HUM_OUT :x X :iv 0.006 :kv (REAL (0.0) 1.0) :f #X1 :d "environment hum") (:var :t DENSITY :n RHO :x A_S :iv 1.2 :kv (REAL 0.5 3.0) :f #X10 :d "density of leak air") (:var :t MASSFLOW :n MM :x A_S :iv -0.002 :kv FREAL :f #X18 :d "massflow memory") (:var :t DENSITY :n RHO_IN :x LOC :iv 1.2 :kv (REAL 0.5 3.0) :f #X140 :d "density of zone air") (:var :t DENSITY :n RHO_OUT :x LOC :iv 1.2 :kv (REAL 0.5 3.0) :f #X140 :d "density of outside air") (:var :t ENTHALPY :n HLEAK :x LOC :iv 40000.0 :kv FREAL :f #X140 :d "enthalpy of leak air") (:var :t PRESSURE :n DP :x LOC :iv 15.0 :kv FREAL :f #X140 :d "effective pressure diff") ;; :interfaces (:int :t BIDIRAIR :n INSIDE :v (P_IN M T_IN Q X_IN XF HUM_IN HUMF) :dir (NIL -1 NIL -1 NIL -1 NIL -1)) (:int :t BIDIRAIR :n AMBIENT :v (P_OUT M T_OUT Q X_OUT XF HUM_OUT HUMF) :dir (NIL 1 NIL 1 NIL 1 NIL 1))) ;;;;;; ;;;;;;end of model ENVLEAK ;;;;;; ;;; ;;; model ENVLVO ;;; ((template :n ENVLVO :c :eo :d "The model EnvLVO is obsolete and should be replaced with CeLVO.") ;; :model-parameters ;; :parameters (:par :t LENGTH :n Z_T :x S_P :v 1.5 :kv (REAL (0.0) 100.0) :f #X21 :d "Opening height") (:par :t LENGTH :n W :x S_P :v 1.0 :kv (REAL (0.0) 100.0) :f #X21 :d "Opening width") (:par :t LENGTH :n Z_Z :x S_P :v 2.4 :kv (FREAL (0.0)) :f #X21 :d "Average zone height") (:par :t LENGTH :n ZR_IN :x S_P :v 1.0 :kv (REAL (0.0) 100.0) :f #X21 :d "Window bottom height from floor") (:par :t LENGTH :n ZA_IN :x S_P :v 0.0 :kv FREAL :f #X21 :d "Absolute floor level of zone") (:par :t PRESSURE :n DPLIN :x S_P :v 0.001 :kv (FREAL (0.0)) :f #X21 :d "Pressure difference to linearize") ;; :variables (:var :t MASSFLOW :n M :x U :iv 0.0 :kv FREAL :f #XA :d "Net massflow") (:var :t HEATFLUX :n Q :x U :iv 0.0 :kv FREAL :f #XA :d "Net heatFlux") (:var :t FRACTFLOW_Y :n XF :x U :iv 0.0 :kv FREAL :f #XA :d "Net amount of fraction trnsp.") (:var :t HUMFLOW :n HUMF :x U :iv 0.0 :kv FREAL :f #XA :d "moisture transport") (:var :t TEMP :n T1 :x X :iv 20.0 :kv (FREAL -273.16) :f #X1 :d "Amb temperature") (:var :t TEMP :n T2 :x X :iv 20.0 :kv (FREAL -273.16) :f #X1 :d "Zone temperature") (:var :t PRESSURE :n P1 :x X :iv 1325.0 :kv FREAL :f #X1 :d "Ground level pressure") (:var :t PRESSURE :n P2 :x X :iv 1325.0 :kv FREAL :f #X1 :d "Zone floor level pressure") (:var :t CONTROL :n CONTR :x X :iv 0.0 :kv (REAL 0.0 1.0) :f #X1 :d "Control input, 0 closed, 1 open") (:var :t FRACTION_Y :n X1 :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "Zone 1 fraction") (:var :t FRACTION_Y :n X2 :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "Zone 2 fraction") (:var :t HUMRATIO :n HUM1 :x X :iv 0.006 :kv (FREAL (0.0)) :f #X1 :d "moisture fraction in") (:var :t HUMRATIO :n HUM2 :x X :iv 0.006 :kv (FREAL (0.0)) :f #X1 :d "moisture fraction zone") (:var :t GENERIC :n G0 :x A_S :iv 1.0 :kv (REAL 0.0 1.0) :f #X10 :d "Memory of slanted vel. profile") (:var :t GENERIC :n G1 :x A_S :iv 1.0 :kv (REAL 0.0 1.0) :f #X10 :d "Memory of slanted vel. profile") (:var :t GENERIC :n SLANTED :x A_S :iv 1.0 :kv (REAL 0.0 1.0) :f #X10 :d "Slanted vel. profile") (:var :t DENSITY :n RHO1 :x LOC :iv 1.2 :kv (FREAL (0.0)) :f #X140 :d "Amb density") (:var :t DENSITY :n RHO2 :x LOC :iv 1.2 :kv (FREAL (0.0)) :f #X140 :d "Zone density") (:var :t PRESSURE :n DP_T :x LOC :iv 0.1 :kv FREAL :f #X140 :d "Pressure diff, top of opening") (:var :t PRESSURE :n DP_B :x LOC :iv 0.1 :kv FREAL :f #X140 :d "Pressure diff, bottom level") (:var :t LENGTH :n Z_N :x LOC :iv 1.1 :kv (FREAL 0.0) :f #X140 :d "level of neutral plane, Dp = 0") (:var :t LENGTH :n WIDTH :x LOC :iv 0.0 :kv FREAL :f #X140 :d "Current width") (:var :t GENERIC :n TOP :x LOC :iv 0.0 :kv FREAL :f #X140 :d "Help variable") (:var :t GENERIC :n BOT :x LOC :iv 0.0 :kv FREAL :f #X140 :d "Help variable") (:var :t MASSFLOW :n M_12 :x LOC :iv 0.001 :kv (FREAL 0.0) :f #X148 :d "Massflow from zone 1 to 2") (:var :t MASSFLOW :n M_21 :x LOC :iv 0.001 :kv (FREAL 0.0) :f #X148 :d "Massflow from zone 2 to 1") (:var :t GENERIC :n SLANTON :x LOC :iv 1.0 :kv FREAL :f #X140 :d "Slanted On") (:var :t GENERIC :n SLANTOFF :x LOC :iv 1.0 :kv FREAL :f #X140 :d "Slanted Off") ;; :interfaces (:int :t BIDIRAIR :n OUTSIDE :v (P1 M T1 Q X1 XF HUM1 HUMF) :dir (NIL -1 NIL -1 NIL -1 NIL -1)) (:int :t BIDIRAIR :n INSIDE :v (P2 M T2 Q X2 XF HUM2 HUMF) :dir (NIL 1 NIL 1 NIL 1 NIL 1)) (:int :t CONTROLLINK :n OPENING :v (CONTR) :dir (NIL))) ;;;;;; ;;;;;;end of model ENVLVO ;;;;;; ;;; ;;; model EVHUMCTR ;;; ((template :n EVHUMCTR :c :eo :d "adiabatic EVaporative HUMidifier with On/Off ConTRol.") ;; :model-parameters ;; :parameters (:par :t MASSFLOW :n MEVAPRAT :x S_P :v 1.8 :kv (FREAL (0.0)) :f #X29 :d "Dry air mass flow rate at rating") (:par :t TEMP :n TEVAPRAT :x S_P :v 26.7 :kv (FREAL -273.16) :f #X21 :d "Entering air dry bulb temp at rating") (:par :t HUMRATIO :n WEVAPRAT :x S_P :v 0.011 :kv (REAL (0.0) 1.0) :f #X21 :d "Entering air humidity at rating") (:par :t FACTOR :n EFFEVAPRAT :x S_P :v 0.8 :kv (REAL (0.0) 1.0) :f #X21 :d "Humidity effectiveness at rating") ;; :variables (:var :t MASSFLOW :n MWATER :x U :iv 0.006 :kv (FREAL 0.0) :f #XA :d "Liquid massflow rate") (:var :t TEMP :n TAIROUT :x U :iv 17.5 :kv (FREAL -273.16) :f #X2 :d "Outlet temp of air") (:var :t TEMP :n TLIM :x U :iv 16.0 :kv (FREAL -273.16) :f #X2 :d "RH limited temperature") (:var :t HUMRATIO :n WAIROUT :x U :iv 0.1 :kv (FREAL (0.0)) :f #X2 :d "Moisture content of outlet air") (:var :t MASSFLOW :n MAIR :x X :iv 2.0 :kv (FREAL 0.0) :f #X9 :d "Dry air massflow rate") (:var :t TEMP :n TAIRIN :x X :iv 25.0 :kv (FREAL -273.16) :f #X1 :d "Inlet temp of air") (:var :t TEMP :n TWAT :x X :iv 10.0 :kv (FREAL -273.16) :f #X1 :d "Inlet temp of water") (:var :t TEMP :n TSET :x X :iv 16.0 :kv (FREAL -273.16) :f #X1 :d "Set temperature") (:var :t HUMRATIO :n WAIRIN :x X :iv 0.007 :kv (FREAL (0.0)) :f #X1 :d "Moisture content of inlet air") (:var :t FACTOR :n RHMAX :x X :iv 99.0 :kv (REAL (0.0) 99.0) :f #X1 :d "Maximum rel hum at leaving air stream [%]") (:var :t CONTROL :n CONTR :x X :iv 0.0 :kv (REAL 0.0 1.0) :f #X1 :d "Control input 0 = Off 1 = On") (:var :t PRESSURE :n PAIR :x X :iv 1325.0 :kv (FREAL (0.0)) :f #X1 :d "In air pressure") (:var :t PRESSURE :n PWAT :x X :iv 1.0 :kv (FREAL (0.0)) :f #X1 :d "Water pressure") (:var :t FRACTION_Y :n XAIR :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "Pollutant fraction") (:var :t GENERIC :n ON :x A_S :iv 0.0 :kv (REAL 0.0 1.0) :f #X10 :d "Humidifier On / Off") (:var :t GENERIC :n G0 :x A_S :iv 1.0 :kv FREAL :f #X10 :d "G0 memory") (:var :t GENERIC :n FULLCAP :x A_S :iv 0.0 :kv (REAL 0.0 1.0) :f #X10 :d "Humidifier FullCap / Normal") (:var :t GENERIC :n G1 :x A_S :iv 1.0 :kv FREAL :f #X10 :d "G1 memory") (:var :t TEMP :n TMIN :x LOC :iv 16.0 :kv (FREAL -273.16) :f #X140 :d "Minimum temperature") (:var :t HUMRATIO :n WAIROUTMAX :x LOC :iv 0.1 :kv (FREAL (0.0)) :f #X140 :d "Max moisture content of outlet air") (:var :t HUMRATIO :n WAIRINLIM :x LOC :iv 0.1 :kv (FREAL (0.0)) :f #X140 :d "Limited moisture content of inlet air") (:var :t HUMRATIO :n WSET :x LOC :iv 0.1 :kv (FREAL (0.0)) :f #X140 :d "Moisture content of out air at set temp") (:var :t HUMRATIO :n WAIRCAPLIM :x LOC :iv 0.1 :kv (FREAL (0.0)) :f #X140 :d "Moisture content of air at full cap") (:var :t HUMRATIO :n WLIM :x LOC :iv 0.1 :kv (FREAL (0.0)) :f #X140 :d "RH limited moisture content") (:var :t HUMRATIO :n WAIRSAT :x LOC :iv 0.11 :kv (FREAL (0.0)) :f #X140 :d "Leaving air saturated humidity ratio") (:var :t PRESSURE :n PSAT :x LOC :iv 1595.0 :kv (FREAL (0.0)) :f #X140 :d "Saturate pressure") (:var :t ENTHALPY :n HAIRIN :x LOC :iv 42973.0 :kv FREAL :f #X140 :d "Entering air enthalpy") (:var :t TEMP :n TWETBULBIN :x LOC :iv 15.32 :kv (FREAL -273.16) :f #X140 :d "Entering air wet bulb temp") (:var :t FACTOR :n NTU :x LOC :iv 1.448 :kv (FREAL (0.0)) :f #X140 :d "Number of transfer units") (:var :t FACTOR :n EFF :x LOC :iv 0.7651 :kv (REAL (0.0) 1.0) :f #X140 :d "Heat transfer effectiveness") (:var :t HEATFLUX :n QSEN :x LOC :iv 15499.0 :kv FREAL :f #X148 :d "Sensible heat transfer coefficient") ;; :interfaces (:int :t UNIAIR :n AIRFLOWIN :v (PAIR MAIR TAIRIN XAIR WAIRIN) :dir (NIL -1 NIL NIL NIL)) (:int :t UNIAIR :n AIRFLOWOUT :v (PAIR MAIR TAIROUT XAIR WAIROUT) :dir (NIL 1 NIL NIL NIL)) (:int :t PMT :n WATERFLOWIN :v (PWAT MWATER TWAT) :dir (NIL -1 NIL)) (:int :t CONTROLLINK :n CONTROL :v (CONTR) :dir (NIL)) (:int :t T :n TEMPSETPOINT :v (TSET) :dir (NIL)) (:int :t Z :n RHMAXLINK :v (RHMAX) :dir (NIL))) ;;;;;; ;;;;;;end of model EVHUMCTR ;;;;;; ;;; ;;; model FACE ;;; ((template :n FACE :c :ceo :d "Process climate data for FACadE. Calc wind, film coeff & solar radiation.") ;; :model-parameters (:par :t system-parameter :n NWDIR :x SMP :v 1 :kv (INTEGER 1 *) :f #X29 :d "Number of given wind directions") ;; :parameters (:par :t FACTOR :n DIFFUSEMODEL :x S_P :v 0.0 :kv (REAL 0.0 2.0) :f #X21 :d "Model alternative for diffuse rad 0 = ASHRAE 1 = Kondratjev 2 = Perez model") (:par :t ANGLE :n AZIMUTFACE :x S_P :v 0.0 :kv (REAL 0.0 360.0) :f #X21 :d "Azimut of face, positive Eastfrom North") (:par :t ANGLE :n SLOPEFACE :x S_P :v 0.0 :kv (REAL 0.0 180.0) :f #X21 :d "Slope of face 0=hor up, 90=vert, 180=hor down") (:par :t LENGTH :n HEIGHTABOVESEA :x S_P :v 0.0 :kv (FREAL 0.0) :f #X21 :d "Height above sea in meters") (:par :t FACTOR :n PCOEFF :x S_P :ie 0.0 :kv FREAL :f #X21 :sp (NWDIR) :d "Pressure coeff.") ;; :variables (:var :t TEMP :n TAIRWAL :x U :iv 20.0 :kv (FREAL -273.16) :f #X2 :d "Ambient air temp") (:var :t TEMP :n TGROUNDWAL :x U :iv 20.0 :kv (FREAL -273.16) :f #X2 :d "Ground temp") (:var :t TEMP :n TSKYWAL :x U :iv 15.0 :kv (FREAL -273.16) :f #X2 :d "Sky temp") (:var :t TEMP :n TAIRWDW :x U :iv 20.0 :kv (FREAL -273.16) :f #X2 :d "Ambient air temp") (:var :t TEMP :n TGROUNDWDW :x U :iv 20.0 :kv (FREAL -273.16) :f #X2 :d "Ground temp") (:var :t TEMP :n TSKYWDW :x U :iv 15.0 :kv (FREAL -273.16) :f #X2 :d "Sky temp") (:var :t TEMP :n TAIRARB :x U :iv 20.0 :kv (FREAL -273.16) :f #X2 :d "Ambient air temp") (:var :t TEMP :n TGROUNDARB :x U :iv 20.0 :kv (FREAL -273.16) :f #X2 :d "Ground temp") (:var :t TEMP :n TSKYARB :x U :iv 15.0 :kv (FREAL -273.16) :f #X2 :d "Sky temp") (:var :t HEATCONDA :n HOUTSIDE :x U :iv 9.0 :kv (FREAL 0.0) :f #X2 :d "Conv heat transf coef") (:var :t PRESSURE :n PGROUND :x U :iv 1325.0 :kv (FREAL (0.0)) :f #X2 :d "Atmospheric pressure at ground level") (:var :t TEMP :n TAIRLEAK :x U :iv 20.0 :kv (FREAL -273.16) :f #X2 :d "Ambient air temp") (:var :t FRACTION_Y :n XAIRLEAK :x U :iv 594.0 :kv (FREAL 0.0) :f #X2 :d "Pollutant fraction") (:var :t HUMRATIO :n HUMAIRLEAK :x U :iv 0.073 :kv (FREAL 0.0) :f #X2 :d "Humidity ratio") (:var :t VEL :n WINDVELLOC :x U :iv 1.0 :kv (FREAL 0.0) :f #X2 :d "Local wind speed") (:var :t RADA :n IDIRWAL :x U :iv 0.0 :kv (FREAL 0.0) :f #X2 :d "Direct rad on wall") (:var :t RADA :n IDIFSKYWAL :x U :iv 0.0 :kv (FREAL 0.0) :f #X2 :d "Diff rad from sky on wall") (:var :t RADA :n IDIFGRDWAL :x U :iv 0.0 :kv (FREAL 0.0) :f #X2 :d "Diff rad from ground on wall") (:var :t RADA :n IDIRWDW :x U :iv 0.0 :kv (FREAL 0.0) :f #X2 :d "Direct rad on window") (:var :t RADA :n IDIFSKYWDW :x U :iv 0.0 :kv (FREAL 0.0) :f #X2 :d "Diff rad from sky on window") (:var :t RADA :n IDIFGRDWDW :x U :iv 0.0 :kv (FREAL 0.0) :f #X2 :d "Diff rad from ground on window") (:var :t RADA :n IDIRARB :x U :iv 0.0 :kv (FREAL 0.0) :f #X2 :d "Direct rad on arb") (:var :t RADA :n IDIFSKYARB :x U :iv 0.0 :kv (FREAL 0.0) :f #X2 :d "Diff rad from sky on arb") (:var :t RADA :n IDIFGRDARB :x U :iv 0.0 :kv (FREAL 0.0) :f #X2 :d "Diff rad from ground on arb") (:var :t ANGLE :n AZSUN2FACE :x U :iv 0.0 :kv (REAL -360.0 360.0) :f #X2 :d "Azimut of sun, relative to face, 0 when sun in front") (:var :t ANGLE :n ANGLEINCFACE :x U :iv 0.0 :kv (REAL -90.0 90.0) :f #X2 :d "Angle of incidence onto surface") (:var :t ANGLE :n ELEVSUNWDW :x U :iv 27.0 :kv (REAL -90.0 90.0) :f #X2 :d "Elevation of sun") (:var :t ANGLE :n ELEVSUNARB :x U :iv 27.0 :kv (REAL -90.0 90.0) :f #X2 :d "Elevation of sun") (:var :t ANGLE :n AZSUN2ARB :x U :iv 0.0 :kv (REAL -360.0 360.0) :f #X2 :d "Azimut of sun, relative to face, 0 when sun in front") (:var :t ANGLE :n ANGLEINCARB :x U :iv 0.0 :kv (REAL -90.0 90.0) :f #X2 :d "Angle of incidence onto hor surface") (:var :t PRESSURE :n PAIR :x X :iv 1325.0 :kv (FREAL (0.0)) :f #X1 :d "Atmospheric pressure") (:var :t TEMP :n TAIR :x X :iv 20.0 :kv (FREAL -273.16) :f #X1 :d "Ambient air temp") (:var :t TEMP :n TGROUND :x X :iv 20.0 :kv (FREAL -273.16) :f #X1 :d "Ground temp") (:var :t TEMP :n TSKY :x X :iv 15.0 :kv (FREAL -273.16) :f #X1 :d "Sky temp") (:var :t FRACTION_Y :n XAIR :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "Pollutant fraction") (:var :t HUMRATIO :n HUMAIR :x X :iv 0.073 :kv (FREAL 0.0) :f #X1 :d "Humidity ratio") (:var :t ANGLE :n WINDDIR :x X :iv 0.0 :kv (REAL 0.0 360.0) :f #X1 :d "Wind direction") (:var :t VEL :n WINDVEL :x X :iv 1.0 :kv (FREAL 0.0) :f #X1 :d "Wind speed [m/s]") (:var :t RADA :n IDIRNORM :x X :iv 0.0 :kv (FREAL 0.0) :f #X1 :d "Direct normal rad") (:var :t RADA :n IDIFFHOR :x X :iv 0.0 :kv (FREAL 0.0) :f #X1 :d "Diff rad on hor surf") (:var :t ANGLE :n ELEVSUN :x X :iv 27.0 :kv (REAL -90.0 90.0) :f #X1 :d "Elevation of sun") (:var :t ANGLE :n AZIMUTSUN :x X :iv 26.05 :kv (REAL -180.0 180.0) :f #X1 :d "Azimut of sun positive West from South") (:var :t FACTOR :n REFLGROUND :x X :iv 0.5 :kv (REAL 0.0 1.0) :f #X1 :d "Ground reflectance") (:var :t RADA :n IDIRHOR :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X140 :d "Direct rad on hor surf") (:var :t RADA :n IDIFFSKY :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X140 :d "Diff rad on face from sky") (:var :t RADA :n IDIFFREFL :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X140 :d "Diff rad reflected from ground") (:var :t RADA :n IDIFFGRD :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X140 :d "Diff rad on face from ground") (:var :t FACTOR :n PRESSCOEFF :x LOC :iv 0.0 :kv FREAL :f #X140 :d "Pressure coef with current wind direction") ;; :interfaces (:int :t CLIM2FACE :n CLIMIN :v (PAIR TAIR XAIR HUMAIR TGROUND TSKY WINDDIR WINDVEL IDIRNORM IDIFFHOR ELEVSUN AZIMUTSUN) :dir (NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL)) (:int :t Z :n REFLGRDLINK :v (REFLGROUND) :dir (NIL)) (:int :t SPEED :n VELLINK :v (WINDVELLOC) :dir (NIL)) (:int :t FACE2WALL :n OUT2WALL :v (TAIRWAL TGROUNDWAL TSKYWAL HOUTSIDE IDIRWAL IDIFSKYWAL IDIFGRDWAL) :dir (NIL NIL NIL NIL NIL NIL NIL)) (:int :t FACE2WIND :n OUT2WIND :v (TAIRWDW TGROUNDWDW TSKYWDW HOUTSIDE IDIRWDW IDIFSKYWDW IDIFGRDWDW AZSUN2FACE ELEVSUNWDW ANGLEINCFACE) :dir (NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL)) (:int :t FACE2WIND :n OUT2ARB :v (TAIRARB TGROUNDARB TSKYARB HOUTSIDE IDIRARB IDIFSKYARB IDIFGRDARB AZSUN2ARB ELEVSUNARB ANGLEINCARB) :dir (NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL)) (:int :t BIDIRAIR :n OUT2LEAK :v (PGROUND NIL TAIRLEAK NIL XAIRLEAK NIL HUMAIRLEAK NIL) :dir (NIL NIL NIL NIL NIL NIL NIL NIL))) ;;;;;; ;;;;;;end of model FACE ;;;;;; ;;; ;;; model FDWALL ;;; ((template :n FDWALL :c :eo :d "Test , Finite difference model of multi-layer component. The user is to discretize each material layer into (nSubCells) number of cells. The following chain of serially connected thermal resistances and heat capacities is calculated:") ;; :model-parameters (:par :t system-parameter :n N :x SMP :v 2 :kv (INTEGER 1 *) :f #X29 :d "Number of material layers") (:par :t system-parameter :n NCELLS :x SMP :v 2 :kv (INTEGER 1 *) :f #X29 :d "Number of cells = sum(nSubLay)") (:par :t system-parameter :n SUBMODE :x SMP :v 0 :kv (INTEGER 0 3) :f #X29 :d "Subdivision mode: 0 uniform, 1 tighter at beginning, 2 at end, 3 at both sides") (:par :t system-parameter :n NOFQS :x CMP :v 1 :kv (INTEGER 0 *) :f #X168 :s (0 T 0 + NCELLS -1) :d "Number of internal flows = nCells-1") ;; :parameters (:par :t AREA :n A :x S_P :v 1.0 :kv (FREAL (0.0)) :f #X21 :d "wall area") (:par :t LENGTH :n L :x S_P :ie 0.15 :kv (FREAL (0.0)) :f #X21 :sp (N) :d "layer thickness") (:par :t HEATCONDL :n LAMBDA :x S_P :ie 1.7 :kv (FREAL (0.0)) :f #X21 :sp (N) :d "layer heat conductivity") (:par :t DENSITY :n RHO :x S_P :ie 2400.0 :kv (FREAL (0.0)) :f #X21 :sp (N) :d "layer density") (:par :t HEATCAPM :n CP :x S_P :ie 880.0 :kv (FREAL (0.0)) :f #X21 :sp (N) :d "layer spec heat") (:par :t FACTOR :n NSUBLAY :x S_P :ie 2.0 :kv (FREAL 1.0) :f #X21 :sp (N) :d "Number of sublayers (cells) per material layer") ;; :variables (:var :t TEMP :n TA :x U :iv 20.0 :kv (FREAL -273.16) :f #X2 :d "Surf temp on a side") (:var :t TEMP :n TB :x U :iv 20.0 :kv (FREAL -273.16) :f #X2 :d "Surf temp on b side") (:var :t HEATFLUX :n QA :x X :iv 0.0 :kv FREAL :f #X9 :d "Inflow at surf of side a") (:var :t HEATFLUX :n QB :x X :iv 0.0 :kv FREAL :f #X9 :d "Outflow at surf of side b") (:var :t TEMP :n T :x DER :ie 20.0 :kv (FREAL -273.16) :f #X6 :sp (NCELLS) :d "Temp of mass node") (:var :t HEATFLUX :n Q :x U :ie 0.0 :kv FREAL :f #XA :sp (NOFQS) :d "Flux between mass nodes") ;; :interfaces (:int :t TQ :n TERM_A :v (TA QA) :dir (NIL -1)) (:int :t TQ :n TERM_B :v (TB QB) :dir (NIL 1))) ;;;;;; ;;;;;;end of model FDWALL ;;;;;; ;;; ;;; model FLHEAT ;;; ((template :n FLHEAT :c :eo :d "Floor heat model") ;; :model-parameters (:par :t system-parameter :n N :x SMP :v 1 :kv (INTEGER 1 *) :f #X29 :d "Number of links minus one") ;; :parameters (:par :t RADA :n P :x S_P :v 0.0 :kv (FREAL 0.0) :f #X21 :d "Design power output") (:par :t AREA :n A :x S_P :v 10.0 :kv (FREAL (0.0)) :f #X21 :d "Heated floor area") (:par :t TEMP :n DT :x S_P :v 5.0 :kv (FREAL -273.16) :f #X21 :d "Temperature drop across floor heating") (:par :t TEMP :n TMAX :x S_P :v 25.0 :kv (FREAL -273.16) :f #X21 :d "Maximum inlet water temperature") (:par :t HEATCONDA :n H :x S_P :v 10.0 :kv (FREAL (0.0)) :f #X21 :d "Specific heat transfer coeff") (:par :t MASSFLOW :n MMIN :x S_P :v 0.0001 :kv (FREAL (0.0)) :f #X29 :d "Minimum water flow") (:par :t PRESSURE :n DP0 :x S_P :v 100.0 :kv (FREAL (0.0)) :f #X21 :d "Pressure drop under which water flow is no longer maintained") (:par :t HEATCAPM :n CP_LIQ :x S_P :v 4187.0 :kv (FREAL (0.0)) :f #X21 :d "Liquid specific heat") ;; :variables (:var :t TEMP :n TOUT :x U :iv 1.0 :kv (FREAL -273.16) :f #X2 :d "Outlet water temperature") (:var :t TEMP :n TSLAB :x U :iv 1.0 :kv (FREAL -273.16) :f #X2 :d "Mean water temperture") (:var :t TEMP :n TIN :x U :iv 1.0 :kv (FREAL -273.16) :f #X2 :d "Inlet water temperature") (:var :t MASSFLOW :n MCOIL :x U :iv 1.0 :kv FREAL :f #XA :d "Design water flow") (:var :t MASSFLOW :n MBOILER :x U :iv 1.0 :kv FREAL :f #XA :d "Boiler water flow") (:var :t TEMP :n TSUPP :x X :iv 1.0 :kv (FREAL -273.16) :f #X1 :d "Supply water temperature") (:var :t CONTROL :n CTRL :x X :iv 1.0 :kv (REAL 0.0 1.0) :f #X1 :d "Control value") (:var :t PRESSURE :n PIN :x X :iv 1.0 :kv FREAL :f #X1 :d "Pressure with inlet") (:var :t PRESSURE :n POUT :x X :iv 1.0 :kv FREAL :f #X1 :d "Pressure with outlet") (:var :t GENERIC :n DPOK :x A_S :iv 1.0 :kv FREAL :f #X10 :d "Mode memory, = 0 for linear behavior, = 1 for controlled") (:var :t GENERIC :n G0 :x A_S :iv 600.0 :kv FREAL :f #X10 :d "") (:var :t HEATFLUX :n Q :x LOC :iv 1.0 :kv FREAL :f #X148 :d "Heat flux") (:var :t FACTOR :n EXPLOC :x LOC :iv 1.0 :kv FREAL :f #X140 :d "Value inside f:on exp(..)") (:var :t PRESSURE :n DP :x LOC :iv 1.0 :kv FREAL :f #X140 :d "Pressure difference") (:var :t TEMP :n TMAX_D :x LOC :iv 1.0 :kv (FREAL -273.16) :f #X140 :d "Maximum coil water temperature") (:var :t HEATFLUX :n Q_TQ :x X :ie 1.0 :kv FREAL :f #X9 :sp (N) :d "Heat fluxiz _tq") ;; :interfaces (:int :t TQ :n TERM :v (TSLAB Q_TQ) :dir (NIL 1) :sp (N)) (:int :t PMT :n INLET :v (PIN MBOILER TSUPP) :dir (NIL -1 NIL)) (:int :t PMT :n OUTLET :v (POUT MBOILER TOUT) :dir (NIL 1 NIL)) (:int :t CONTROLLINK :n CONTROL :v (CTRL) :dir (NIL))) ;;;;;; ;;;;;;end of model FLHEAT ;;;;;; ;;; ;;; model FLOWREP ;;; ((template :n FLOWREP :c :ceo :d "Generic flow report; flows are summed in up to four groups") ;; :model-parameters (:par :t system-parameter :n N_IN1 :x SMP :v 0 :kv (INTEGER 0 *) :f #X29 :d "Number of flows in group 1") (:par :t system-parameter :n N_IN2 :x SMP :v 0 :kv (INTEGER 0 *) :f #X29 :d "Number of flows in group 2") (:par :t system-parameter :n N_IN3 :x SMP :v 0 :kv (INTEGER 0 *) :f #X29 :d "Number of flows in group 3") (:par :t system-parameter :n N_IN4 :x SMP :v 0 :kv (INTEGER 0 *) :f #X29 :d "Number of flows in group 4") ;; :parameters ;; :variables (:var :t GENERIC :n SUM1 :x U :iv 0.0 :kv FREAL :f #X2 :d "") (:var :t GENERIC :n SUM2 :x U :iv 0.0 :kv FREAL :f #X2 :d "") (:var :t GENERIC :n SUM3 :x U :iv 0.0 :kv FREAL :f #X2 :d "") (:var :t GENERIC :n SUM4 :x U :iv 0.0 :kv FREAL :f #X2 :d "") (:var :t GENERIC :n FLOW1 :x X :ie 0.0 :kv FREAL :f #X1 :sp (N_IN1) :d "") (:var :t GENERIC :n FLOW2 :x X :ie 0.0 :kv FREAL :f #X1 :sp (N_IN2) :d "") (:var :t GENERIC :n FLOW3 :x X :ie 0.0 :kv FREAL :f #X1 :sp (N_IN3) :d "") (:var :t GENERIC :n FLOW4 :x X :ie 0.0 :kv FREAL :f #X1 :sp (N_IN4) :d "") ;; :interfaces (:int :t GENERIC :n OUT1 :v (SUM1) :dir (-1)) (:int :t GENERIC :n OUT2 :v (SUM2) :dir (-1)) (:int :t GENERIC :n OUT3 :v (SUM3) :dir (-1)) (:int :t GENERIC :n OUT4 :v (SUM4) :dir (-1)) (:int :t GENERIC :n IN1 :v (FLOW1) :dir (-1) :sp (N_IN1)) (:int :t GENERIC :n IN2 :v (FLOW2) :dir (-1) :sp (N_IN2)) (:int :t GENERIC :n IN3 :v (FLOW3) :dir (-1) :sp (N_IN3)) (:int :t GENERIC :n IN4 :v (FLOW4) :dir (-1) :sp (N_IN4))) ;;;;;; ;;;;;;end of model FLOWREP ;;;;;; ;;; ;;; model HCSIM ;;; ((template :n HCSIM :c :eo :d NIL) ;; :model-parameters ;; :parameters (:par :t HEATCAPM :n CP_LIQ :x S_P :v 4187.0 :kv (FREAL (0.0)) :f #X21 :d "Liquid specific heat") (:par :t FACTOR :n CONFIGHX :x S_P :v 3.0 :kv (REAL 0.0 6.0) :f #X21 :d "Coil configuration 0 independent of configuration 1 counterflow 2 parallel flow 3 cross flow, both streams unmixed 4 cross flow, both streams mixed 5 cross flow, stream 1 unmixed 6 cross flow, stream 2 unmixed") (:par :t HEATFLUX :n QTOTRAT :x S_P :v 44000.0 :kv FREAL :f #X29 :d "Total heat transfer at rating") (:par :t MASSFLOW :n MLIQRAT :x S_P :v 1.87 :kv (FREAL (0.0)) :f #X29 :d "Liquid mass flow at rating") (:par :t TEMP :n TLIQRAT :x S_P :v 48.9 :kv (FREAL -273.16) :f #X21 :d "Liquid temp at rating") (:par :t MASSFLOW :n MAIRRAT :x S_P :v 6.8 :kv (FREAL (0.0)) :f #X29 :d "Air mass flow at rating") (:par :t TEMP :n TAIRRAT :x S_P :v 15.6 :kv (FREAL -273.16) :f #X21 :d "Air temp at rating") (:par :t HUMRATIO :n WAIRRAT :x S_P :v 0.007 :kv (FREAL (0.0)) :f #X21 :d "Humidity ratio at rating") (:par :t PRESSURE :n DPRATE :x S_P :v 60.0 :kv (FREAL (0.0)) :f #X21 :d "Pressure difference at given rate") (:par :t PRESSURE :n DP0 :x S_P :v 0.1 :kv (FREAL (0.0)) :f #X21 :d "Limit for linear flow") (:par :t PRESSURE :n DPLIQ0 :x S_P :v 50.0 :kv (FREAL (0.0)) :f #X21 :d "Limit for on / off mode") ;; :variables (:var :t TEMP :n TEMPAIROUT :x U :iv 34.08 :kv (FREAL -273.16) :f #X2 :d "Outlet temp of air") (:var :t TEMP :n TEMPLIQOUT :x U :iv 54.15 :kv (FREAL -273.16) :f #X2 :d "Outlet temp of liq") (:var :t PRESSURE :n PAIROUT :x U :iv 101240.0 :kv (FREAL (0.0)) :f #X2 :d "Out air pressure") (:var :t MASSFLOW :n MAIR :x X :iv 2.887 :kv (FREAL 0.0) :f #X9 :d "Dry air massflow rate") (:var :t MASSFLOW :n MLIQ :x X :iv 1.6 :kv (FREAL 0.0) :f #X9 :d "Liquid massflow rate") (:var :t TEMP :n TEMPAIRIN :x X :iv 15.6 :kv (FREAL -273.16) :f #X1 :d "Inlet temp of air") (:var :t TEMP :n TEMPLIQIN :x X :iv 62.2 :kv (FREAL -273.16) :f #X1 :d "Inlet temp of liq") (:var :t HUMRATIO :n WAIR :x X :iv 0.008 :kv (FREAL (0.0)) :f #X1 :d "Moisture content of air") (:var :t PRESSURE :n PAIRIN :x X :iv 101300.0 :kv (FREAL (0.0)) :f #X1 :d "In air pressure") (:var :t PRESSURE :n PLIQ :x X :iv 1000.0 :kv (FREAL (0.0)) :f #X1 :d "Liq pressure") (:var :t FRACTION_Y :n XAIR :x X :iv 0.0 :kv (FREAL 0.0) :f #X1 :d "Pollutant fraction") (:var :t GENERIC :n CAIRMIN :x A_S :iv 0.0 :kv FREAL :f #X10 :d "") (:var :t GENERIC :n G0 :x A_S :iv 0.0 :kv FREAL :f #X10 :d "") (:var :t CAPRATE :n CAPAIR :x LOC :iv 2919.0 :kv (FREAL 0.0) :f #X148 :d "Capacity rate of air") (:var :t CAPRATE :n CAPLIQ :x LOC :iv 6699.0 :kv (FREAL 0.0) :f #X148 :d "Capacity rate of liq") (:var :t CAPRATE :n CMIN :x LOC :iv 2919.0 :kv (FREAL 0.0) :f #X148 :d "Min capacity rate") (:var :t CAPRATE :n CMAX :x LOC :iv 6699.0 :kv (FREAL 0.0) :f #X148 :d "Max capacity rate") (:var :t FACTOR :n CRATIO :x LOC :iv 0.4357 :kv (REAL 0.0 1.0) :f #X140 :d "Ratio of min to max capacity rate") (:var :t FACTOR :n ETA :x LOC :iv 1.127 :kv (FREAL (0.0)) :f #X140 :d "Help variable NTU**(-0.22)") (:var :t FACTOR :n NTU :x LOC :iv 0.5799 :kv (FREAL (0.0)) :f #X140 :d "Number of transfer units") (:var :t FACTOR :n EXPHELP1 :x LOC :iv -2.0 :kv FREAL :f #X140 :d "Help variable for EXP-function") (:var :t FACTOR :n EXPHELP2 :x LOC :iv -2.0 :kv FREAL :f #X140 :d "Help variable for EXP-function") (:var :t FACTOR :n EFFECTIVINESS :x LOC :iv 0.3936 :kv (REAL (0.0) 1.0) :f #X140 :d "Heat transfer effectiveness") (:var :t HEATFLUX :n QMAX :x LOC :iv 136014.0 :kv (FREAL 0.0) :f #X148 :d "Max heat transfer possible") (:var :t HEATFLUX :n Q :x LOC :iv 53897.0 :kv (FREAL 0.0) :f #X148 :d "Heat transfer") (:var :t PRESSURE :n DP :x LOC :iv 60.0 :kv (FREAL (0.0)) :f #X140 :d "Pressure difference") ;; :interfaces (:int :t UNIAIR :n AIRFLOWIN :v (PAIRIN MAIR TEMPAIRIN XAIR WAIR) :dir (NIL -1 NIL NIL NIL)) (:int :t UNIAIR :n AIRFLOWOUT :v (PAIROUT MAIR TEMPAIROUT XAIR WAIR) :dir (NIL 1 NIL NIL NIL)) (:int :t PMT :n LIQFLOWIN :v (PLIQ MLIQ TEMPLIQIN) :dir (NIL -1 NIL)) (:int :t PMT :n LIQFLOWOUT :v (PLIQ MLIQ TEMPLIQOUT) :dir (NIL 1 NIL))) ;;;;;; ;;;;;;end of model HCSIM ;;;;;; ;;; ;;; model HCSIMCTR ;;; ((template :n HCSIMCTR :c :eo :d "SIMplified air-to-liq Heating Coil w liquid massflow ConTRol.") ;; :model-parameters ;; :parameters (:par :t HEATCAPM :n CPLIQ :x S_P :v 4187.0 :kv (FREAL (0.0)) :f #X21 :d "Liquid specific heat") (:par :t MASSFLOW :n MMIN :x S_P :v 0.0001 :kv (FREAL (0.0)) :f #X29 :d "Liquid mass flow when coil is off") (:par :t PRESSURE :n DP0 :x S_P :v 200.0 :kv (FREAL (0.0)) :f #X21 :d "Water Dp limit for coil operation") (:par :t FACTOR :n ETAAIR :x S_P :v 1.0 :kv (REAL 0.0 1.0) :f #X21 :d "Air side effectiveness at capacity") (:par :t TEMP :n DTLIQ :x S_P :v 20.0 :kv (FREAL (0.0)) :f #X21 :d "Liq side temperature drop") ;; :variables (:var :t MASSFLOW :n MLIQ :x U :iv 0.0001 :kv (FREAL 0.0) :f #XA :d "Liquid massflow rate") (:var :t TEMP :n TAIROUT :x U :iv 25.0 :kv (FREAL -273.16) :f #X2 :d "Temp of leaving air") (:var :t TEMP :n TLIQOUT :x U :iv 29.0 :kv (FREAL -273.16) :f #X2 :d "Temp of leaving liquid") (:var :t PRESSURE :n PAIR :x X :iv 1325.0 :kv FREAL :f #X1 :d "Pressure of entering and leaving air") (:var :t PRESSURE :n PLIQIN :x X :iv 1000.0 :kv (FREAL (0.0)) :f #X1 :d "Pressure of entering liquid") (:var :t PRESSURE :n PLIQOUT :x X :iv 900.0 :kv (FREAL (0.0)) :f #X1 :d "Pressure of leaving liquid") (:var :t MASSFLOW :n MAIR :x X :iv 0.36 :kv (FREAL 0.0) :f #X9 :d "Dry air massflow rate") (:var :t TEMP :n TAIRIN :x X :iv 20.0 :kv (FREAL -273.16) :f #X1 :d "Temp of entering air") (:var :t TEMP :n TLIQIN :x X :iv 30.0 :kv (FREAL -273.16) :f #X1 :d "Temp of entering liquid") (:var :t TEMP :n TSET :x X :iv 20.0 :kv (FREAL -273.16) :f #X1 :d "Leaving air dry bulb temp. setpoint") (:var :t HUMRATIO :n WAIR :x X :iv 0.007 :kv (REAL 0.0 1.0) :f #X1 :d "Humidity ratio of entering air") (:var :t FRACTION_Y :n XAIR :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "Pollutant fraction") (:var :t GENERIC :n ON :x A_S :iv 1.0 :kv (REAL 0.0 1.0) :f #X10 :d "On/Off mode") (:var :t GENERIC :n CAP :x A_S :iv 0.0 :kv (REAL 0.0 1.0) :f #X10 :d "Cap/Modulated mode") (:var :t GENERIC :n SAT :x A_S :iv 1.0 :kv (REAL 0.0 1.0) :f #X10 :d "Saturated/normal mode") (:var :t GENERIC :n G0 :x A_S :iv -1.0 :kv FREAL :f #X10 :d "G-stop On") (:var :t GENERIC :n G1 :x A_S :iv 1.0 :kv FREAL :f #X10 :d "G-stop Cap") (:var :t GENERIC :n G2 :x A_S :iv 1.0 :kv FREAL :f #X10 :d "G-stop Cap") (:var :t MASSFLOW :n MLIQBAL :x LOC :iv 0.06 :kv (FREAL 0.0) :f #X148 :d "Liquid massflow rate") (:var :t TEMP :n TMAX :x LOC :iv 25.0 :kv (FREAL -273.16) :f #X140 :d "Minimum achievable leaving drybulb") (:var :t TEMP :n DTLIQACT :x LOC :iv 5.0 :kv (FREAL (0.0)) :f #X140 :d "Liq side actual temp rise") (:var :t PRESSURE :n DP :x LOC :iv 100.0 :kv (FREAL (0.0)) :f #X140 :d "Pressure difference of water stream") ;; :interfaces (:int :t UNIAIR :n AIRFLOWIN :v (PAIR MAIR TAIRIN XAIR WAIR) :dir (NIL -1 NIL NIL NIL)) (:int :t UNIAIR :n AIRFLOWOUT :v (PAIR MAIR TAIROUT XAIR WAIR) :dir (NIL 1 NIL NIL NIL)) (:int :t PMT :n LIQFLOWIN :v (PLIQIN MLIQ TLIQIN) :dir (NIL -1 NIL)) (:int :t PMT :n LIQFLOWOUT :v (PLIQOUT MLIQ TLIQOUT) :dir (NIL 1 NIL)) (:int :t T :n TEMPSETPOINT :v (TSET) :dir (NIL))) ;;;;;; ;;;;;;end of model HCSIMCTR ;;;;;; ;;; ;;; model HXSIMCTR ;;; ((template :n HXSIMCTR :c :eo :d "SIMplified air-to-air latent Heat eXchanger with ConTRol.") ;; :model-parameters ;; :parameters (:par :t FACTOR :n ETA :x S_P :v 0.6 :kv (REAL 0.0 1.0) :f #X21 :d "Supply side effectiveness at capacity") (:par :t TEMP :n TEXHOUTMIN :x S_P :v 1.0 :kv (REAL -273.16 5.0) :f #X21 :d "Minimum achievable leaving drybulb") ;; :variables (:var :t TEMP :n TSUPOUT :x U :iv 15.0 :kv (FREAL -273.16) :f #X2 :d "Leaving supply air temp.") (:var :t TEMP :n TEXHOUT :x U :iv 20.0 :kv (FREAL -273.16) :f #X2 :d "Leaving exhaust air temp.") (:var :t HUMRATIO :n WSUPOUT :x U :iv 0.01 :kv (REAL (0.0) 1.0) :f #X2 :d "Humidity ratio of leaving supply air") (:var :t HUMRATIO :n WEXHOUTMIN :x U :iv 0.01 :kv (REAL (0.0) 1.0) :f #X2 :d "") (:var :t HUMRATIO :n WEXHOUT :x U :iv 0.01 :kv (REAL (0.0) 1.0) :f #X2 :d "Humidity ratio of leaving exhaust air") (:var :t PRESSURE :n PSUP :x X :iv 1325.0 :kv FREAL :f #X1 :d "Pressure of entering and leaving supply air") (:var :t PRESSURE :n PEXH :x X :iv 1325.0 :kv FREAL :f #X1 :d "Pressure of entering and leaving exhaust air") (:var :t MASSFLOW :n MSUP :x X :iv 3.2 :kv (FREAL 0.0) :f #X9 :d "Dry air supply massflow rate") (:var :t MASSFLOW :n MEXH :x X :iv 3.2 :kv (FREAL 0.0) :f #X9 :d "Dry air exhaust massflow rate") (:var :t TEMP :n TSUPIN :x X :iv 10.0 :kv (FREAL -273.16) :f #X1 :d "Entering supply air temp.") (:var :t TEMP :n TEXHIN :x X :iv 25.0 :kv (FREAL -273.16) :f #X1 :d "Entering exhaust air temp.") (:var :t TEMP :n TSET :x X :iv 18.0 :kv (FREAL -273.16) :f #X1 :d "Leaving air dry bulb temp. setpoint") (:var :t HUMRATIO :n WSUPIN :x X :iv 0.01 :kv (REAL (0.0) 1.0) :f #X1 :d "Humidity ratio of entering supply air") (:var :t HUMRATIO :n WEXHIN :x X :iv 0.01 :kv (REAL (0.0) 1.0) :f #X1 :d "Humidity ratio of entering exhaust air") (:var :t FRACTION_Y :n XSUP :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "Pollutant fraction supply air") (:var :t FRACTION_Y :n XEXH :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "Pollutant fraction exhaust air") (:var :t CONTROL :n CTRL :x X :iv 1.0 :kv (REAL 0.0 1.0) :f #X1 :d "Control value") (:var :t GENERIC :n ON :x A_S :iv 1.0 :kv (REAL 0.0 1.0) :f #X10 :d "On/Off mode") (:var :t GENERIC :n CAP :x A_S :iv 0.0 :kv (REAL 0.0 1.0) :f #X10 :d "Cap/Modulated mode") (:var :t GENERIC :n WETSUP :x A_S :iv 0.0 :kv (REAL 0.0 1.0) :f #X10 :d "Wet supply side mode") (:var :t GENERIC :n WETEXH :x A_S :iv 0.0 :kv (REAL 0.0 1.0) :f #X10 :d "Wet exhaust side mode") (:var :t GENERIC :n POSHEAT :x A_S :iv 0.0 :kv (REAL 0.0 1.0) :f #X10 :d "Possible heating mode") (:var :t GENERIC :n G0 :x A_S :iv 1.0 :kv FREAL :f #X10 :d "G-stop On") (:var :t GENERIC :n G1 :x A_S :iv 1.0 :kv FREAL :f #X10 :d "G-stop Cap") (:var :t GENERIC :n G2 :x A_S :iv 1.0 :kv FREAL :f #X10 :d "G-stop WetSup") (:var :t GENERIC :n G3 :x A_S :iv -1.0 :kv FREAL :f #X10 :d "G-stop WetExh") (:var :t GENERIC :n G4 :x A_S :iv -1.0 :kv FREAL :f #X10 :d "G-stop PosHeat") (:var :t TEMP :n TSUPADP :x LOC :iv 25.0 :kv (FREAL -273.16) :f #X140 :d "Supply apparatus dewpoint temp.") (:var :t TEMP :n TEXHADP :x LOC :iv 10.0 :kv (FREAL -273.16) :f #X140 :d "Exhaust apparatus dewpoint temp.") (:var :t TEMP :n TATTAIN :x LOC :iv 14.0 :kv (FREAL -273.16) :f #X140 :d "Attainable leaving drybulb") (:var :t HUMRATIO :n WSUPADP :x LOC :iv 0.01 :kv (REAL (0.0) 1.0) :f #X140 :d "Humidity ratio of supply air at apparatus dewpoint") (:var :t HUMRATIO :n WEXHADP :x LOC :iv 0.01 :kv (REAL (0.0) 1.0) :f #X140 :d "Humidity ratio of exhaust air at apparatus dewpoint") (:var :t ENTHALPY :n HSUPIN :x LOC :iv 20.0 :kv FREAL :f #X140 :d "Enthalpy sup in") (:var :t ENTHALPY :n HSUPHEATED :x LOC :iv 20.0 :kv FREAL :f #X140 :d "Enthalpy sup heated") (:var :t ENTHALPY :n HSUPADP :x LOC :iv 20.0 :kv FREAL :f #X140 :d "Enthalpy sup wet") (:var :t ENTHALPY :n HSUPOUT :x LOC :iv 20.0 :kv FREAL :f #X140 :d "Enthalpy sup out") (:var :t ENTHALPY :n HEXHIN :x LOC :iv 20.0 :kv FREAL :f #X140 :d "Enthalpy exh in") (:var :t ENTHALPY :n HEXHHEATED :x LOC :iv 20.0 :kv FREAL :f #X140 :d "Enthalpy exh heated") (:var :t ENTHALPY :n HEXHADP :x LOC :iv 20.0 :kv FREAL :f #X140 :d "Enthalpy exh wet") (:var :t ENTHALPY :n HEXHOUT :x LOC :iv 20.0 :kv FREAL :f #X140 :d "Enthalpy exh out") (:var :t ENTHALPY :n HEXHMIN :x LOC :iv 20.0 :kv FREAL :f #X140 :d "Enthalpy exh min") (:var :t HEATFLUX :n QAVAIL :x LOC :iv 100.0 :kv FREAL :f #X148 :d "Available heating or cooling power") (:var :t HEATFLUX :n QACTUAL :x LOC :iv 100.0 :kv FREAL :f #X148 :d "Actual heating or cooling power") (:var :t HEATFLUX :n QMAX :x LOC :iv 100.0 :kv FREAL :f #X148 :d "Maximum heating or cooling power") (:var :t HEATFLUX :n QMAXEXH :x LOC :iv 100.0 :kv FREAL :f #X148 :d "Maximum exhaust heating or cooling power") (:var :t FACTOR :n ETA_ :x LOC :iv 0.6 :kv (REAL 0.0 1.0) :f #X140 :d "Modified supply side effectiveness at capacity") ;; :interfaces (:int :t UNIAIR :n SUPIN :v (PSUP MSUP TSUPIN XSUP WSUPIN) :dir (NIL -1 NIL NIL NIL)) (:int :t UNIAIR :n SUPOUT :v (PSUP MSUP TSUPOUT XSUP WSUPOUT) :dir (NIL 1 NIL NIL NIL)) (:int :t UNIAIR :n EXHIN :v (PEXH MEXH TEXHIN XEXH WEXHIN) :dir (NIL -1 NIL NIL NIL)) (:int :t UNIAIR :n EXHOUT :v (PEXH MEXH TEXHOUT XEXH WEXHOUT) :dir (NIL 1 NIL NIL NIL)) (:int :t T :n TEMPSETPOINT :v (TSET) :dir (NIL)) (:int :t CONTROLLINK :n CONTROL :v (CTRL) :dir (NIL))) ;;;;;; ;;;;;;end of model HXSIMCTR ;;;;;; ;;; ;;; model LINTRANA ;;; ((template :n LINTRANA :c :ceo :d "Algorithmic Linear Trans from control signal 0..1 to min .. max") ;; :model-parameters (:par :t system-parameter :n NLINKS :x SMP :v 1 :kv (INTEGER 0 *) :f #X29 :d "") ;; :parameters ;; :variables (:var :t GENERIC :n OUTSIGNAL :x U :iv 0.0 :kv FREAL :f #X2 :d "") (:var :t GENERIC :n INSIGNAL :x X :iv 0.0 :kv FREAL :f #X1 :d "") (:var :t GENERIC :n MINVALUE :x X :iv 0.0 :kv FREAL :f #X1 :d "") (:var :t GENERIC :n MAXVALUE :x X :iv 0.0 :kv FREAL :f #X1 :d "") ;; :interfaces (:int :t GENERIC :n INSIGNALLINK :v (INSIGNAL) :dir (NIL)) (:int :t GENERIC :n MINLINK :v (MINVALUE) :dir (NIL)) (:int :t GENERIC :n MAXLINK :v (MAXVALUE) :dir (NIL)) (:int :t GENERIC :n OUTSIGNALLINK :v (OUTSIGNAL) :dir (NIL) :sp (NLINKS))) ;;;;;; ;;;;;;end of model LINTRANA ;;;;;; ;;; ;;; model LINTRANS ;;; ((template :n LINTRANS :c :eo :d "Linear Trans from control signal 0..1 to min .. max") ;; :model-parameters (:par :t system-parameter :n NLINKS :x SMP :v 1 :kv (INTEGER 0 *) :f #X29 :d "") ;; :parameters ;; :variables (:var :t GENERIC :n OUTSIGNAL :x U :iv 0.0 :kv FREAL :f #X2 :d "") (:var :t GENERIC :n INSIGNAL :x X :iv 0.0 :kv FREAL :f #X1 :d "") (:var :t GENERIC :n MINVALUE :x X :iv 0.0 :kv FREAL :f #X1 :d "") (:var :t GENERIC :n MAXVALUE :x X :iv 0.0 :kv FREAL :f #X1 :d "") ;; :interfaces (:int :t GENERIC :n INSIGNALLINK :v (INSIGNAL) :dir (NIL)) (:int :t GENERIC :n MINLINK :v (MINVALUE) :dir (NIL)) (:int :t GENERIC :n MAXLINK :v (MAXVALUE) :dir (NIL)) (:int :t GENERIC :n OUTSIGNALLINK :v (OUTSIGNAL) :dir (NIL) :sp (NLINKS))) ;;;;;; ;;;;;;end of model LINTRANS ;;;;;; ;;; ;;; model MINMAX ;;; ((template :n MINMAX :c :eo :d "Select MINimum or MAXimun of multiple input signals.") ;; :model-parameters (:par :t system-parameter :n N_IN :x SMP :v 2 :kv (INTEGER 1 *) :f #X29 :d "number of input links") (:par :t system-parameter :n N_OUT :x SMP :v 1 :kv (INTEGER 1 *) :f #X29 :d "number of output links") ;; :parameters (:par :t GENERIC :n SELECTOR :x S_P :v 0.0 :kv (REAL 0.0 1.0) :f #X21 :d "0=Min , 1 = Max") ;; :variables (:var :t GENERIC :n OUTSIGNAL :x U :iv 0.0 :kv FREAL :f #X2 :d "Chosen min or max insignal") (:var :t GENERIC :n N_OLD :x A_S :iv 1.0 :kv (FREAL 1.0) :f #X10 :d "Previous timesteps chosen number of insignal") (:var :t GENERIC :n G0 :x A_S :iv 1.0 :kv FREAL :f #X10 :d "Memory of chosen number of insignal") (:var :t GENERIC :n VALUE :x LOC :iv 0.0 :kv FREAL :f #X140 :d "Chosen min or max insignal use din subroutine call") (:var :t GENERIC :n N :x LOC :iv 1.0 :kv (FREAL 1.0) :f #X140 :d "Chosen number of insignal") (:var :t GENERIC :n INSIGNAL :x X :ie 0.0 :kv FREAL :f #X1 :sp (N_IN) :d "Insignals") ;; :interfaces (:int :t GENERIC :n INSIGNALLINK :v (INSIGNAL) :dir (NIL) :sp (N_IN)) (:int :t GENERIC :n OUTSIGNALLINK :v (OUTSIGNAL) :dir (NIL) :sp (N_OUT))) ;;;;;; ;;;;;;end of model MINMAX ;;;;;; ;;; ;;; model MIXBXCTR ;;; ((template :n MIXBXCTR :c :eo :d "Recirculating MIXing BoX w ConTRol.") ;; :model-parameters ;; :parameters (:par :t MASSFLOW :n MFRESHPAR :x S_P :v 3.2 :kv (FREAL 0.0) :f #X29 :d "Dry air supply massflow rate") ;; :variables (:var :t MASSFLOW :n MFRESH :x U :iv 3.2 :kv (FREAL 0.0) :f #XA :d "Fresh air massflow rate") (:var :t MASSFLOW :n MEXHOUT :x U :iv 3.2 :kv (FREAL 0.0) :f #XA :d "Outgoing exhaust air massflow rate") (:var :t TEMP :n TSUPOUT :x U :iv 15.0 :kv (FREAL -273.16) :f #X2 :d "Leaving supply air temp.") (:var :t HUMRATIO :n WSUPOUT :x U :iv 0.01 :kv (REAL (0.0) 1.0) :f #X2 :d "Humidity ratio of leaving supply air") (:var :t FRACTION_Y :n XSUPOUT :x U :iv 594.0 :kv (FREAL 0.0) :f #X2 :d "Pollutant fraction supply air") (:var :t FACTOR :n X :x U :iv 0.0 :kv (FREAL 0.0) :f #X2 :d "Return air / max return air") (:var :t PRESSURE :n PSUP :x X :iv 1325.0 :kv FREAL :f #X1 :d "Pressure of entering and leaving supply air") (:var :t PRESSURE :n PEXH :x X :iv 1325.0 :kv FREAL :f #X1 :d "Pressure of entering and leaving exhaust air") (:var :t MASSFLOW :n MSUP :x X :iv 3.2 :kv (FREAL 0.0) :f #X9 :d "Supply air massflow rate") (:var :t MASSFLOW :n MEXH :x X :iv 3.2 :kv (FREAL 0.0) :f #X9 :d "Incoming exhaust air massflow rate") (:var :t TEMP :n TSUPIN :x X :iv 10.0 :kv (FREAL -273.16) :f #X1 :d "Entering supply air temp.") (:var :t TEMP :n TEXH :x X :iv 25.0 :kv (FREAL -273.16) :f #X1 :d "Entering exhaust air temp.") (:var :t TEMP :n TSET :x X :iv 18.0 :kv (FREAL -273.16) :f #X1 :d "Leaving air dry bulb temp. setpoint") (:var :t HUMRATIO :n WSUPIN :x X :iv 0.01 :kv (REAL (0.0) 1.0) :f #X1 :d "Humidity ratio of entering supply air") (:var :t HUMRATIO :n WEXH :x X :iv 0.01 :kv (REAL (0.0) 1.0) :f #X1 :d "Humidity ratio of entering exhaust air") (:var :t FRACTION_Y :n XSUPIN :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "Pollutant fraction fresh air") (:var :t FRACTION_Y :n XEXH :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "Pollutant fraction exhaust air") (:var :t FACTOR :n MFRESHON :x X :iv 1.0 :kv (FREAL 0.0) :f #X1 :d "Fresh air multiplier and On / Off") (:var :t GENERIC :n ON :x A_S :iv 1.0 :kv FREAL :f #X10 :d "Mixbox is on = some return air") (:var :t GENERIC :n CAP :x A_S :iv 1.0 :kv FREAL :f #X10 :d "Full Cap = Max amount of return air") (:var :t GENERIC :n G0 :x A_S :iv 1.0 :kv FREAL :f #X10 :d "Memory of mode above") (:var :t GENERIC :n G1 :x A_S :iv 1.0 :kv FREAL :f #X10 :d "Memory of mode above") (:var :t MASSFLOW :n MRETURNMAX :x LOC :iv 3.2 :kv (FREAL 0.0) :f #X148 :d "Max return air massflow rate") (:var :t MASSFLOW :n MFRESHMIN :x LOC :iv 3.2 :kv (FREAL 0.0) :f #X148 :d "Min fresh air massflow rate") (:var :t MASSFLOW :n MRETURN :x LOC :iv 3.2 :kv (FREAL 0.0) :f #X148 :d "Return air massflow rate") (:var :t ENTHALPY :n HSUPIN :x LOC :iv 10000.0 :kv FREAL :f #X140 :d "Incoming supply air enthalpy") (:var :t ENTHALPY :n HEXH :x LOC :iv 30000.0 :kv FREAL :f #X140 :d "Incoming exhaust air enthalpy") (:var :t HEATFLUX :n QACTUAL :x LOC :iv 100.0 :kv FREAL :f #X148 :d "Actual heating or cooling power") (:var :t HUMRATIO :n WSUPMAX :x LOC :iv 0.01 :kv (REAL (0.0) 1.0) :f #X140 :d "Max humidity ratio of leaving supply air") (:var :t HUMRATIO :n WSUPCTR :x LOC :iv 0.01 :kv (REAL (0.0) 1.0) :f #X140 :d "Humidity ratio of control calc.") ;; :interfaces (:int :t UNIAIR :n SUPIN :v (PSUP MFRESH TSUPIN XSUPIN WSUPIN) :dir (NIL -1 NIL NIL NIL)) (:int :t UNIAIR :n SUPOUT :v (PSUP MSUP TSUPOUT XSUPOUT WSUPOUT) :dir (NIL 1 NIL NIL NIL)) (:int :t UNIAIR :n EXHIN :v (PEXH MEXH TEXH XEXH WEXH) :dir (NIL -1 NIL NIL NIL)) (:int :t UNIAIR :n EXHOUT :v (PEXH MEXHOUT TEXH XEXH WEXH) :dir (NIL 1 NIL NIL NIL)) (:int :t T :n TEMPSETPOINT :v (TSET) :dir (NIL)) (:int :t Z :n FRESHON :v (MFRESHON) :dir (NIL))) ;;;;;; ;;;;;;end of model MIXBXCTR ;;;;;; ;;; ;;; model MULTA ;;; ((template :n MULTA :c :ceo :d "Multiply n_in input signals. Single output link. ALGORITHMIC model.") ;; :model-parameters (:par :t system-parameter :n N_IN :x SMP :v 2 :kv (INTEGER 1 *) :f #X29 :d "Number of InSignal links") ;; :parameters ;; :variables (:var :t GENERIC :n OUTSIGNAL :x U :iv 0.0 :kv FREAL :f #X2 :d "Output signal") (:var :t GENERIC :n INSIGNAL :x X :ie 0.0 :kv FREAL :f #X1 :sp (N_IN) :d "Input signals") (:var :t GENERIC :n TEMP :x LOC :ie 0.0 :kv FREAL :f #X140 :sp (N_IN) :d "Temporary vector (to avoid repeated assignments)") ;; :interfaces (:int :t GENERIC :n INSIGNALLINK :v (INSIGNAL) :dir (NIL) :sp (N_IN)) (:int :t GENERIC :n OUTSIGNALLINK :v (OUTSIGNAL) :dir (NIL))) ;;;;;; ;;;;;;end of model MULTA ;;;;;; ;;; ;;; model MULTIPLIER ;;; ((template :n MULTIPLIER :c :eo :d "Multiply n_in input signals. Multiple output links. CONTINUOUS model.") ;; :model-parameters (:par :t system-parameter :n N_OUT :x SMP :v 1 :kv (INTEGER 1 *) :f #X29 :d "Number of OutSignal links") (:par :t system-parameter :n N_IN :x SMP :v 2 :kv (INTEGER 1 *) :f #X29 :d "Number of InSignal links") ;; :parameters ;; :variables (:var :t GENERIC :n OUTSIGNAL :x U :iv 0.0 :kv FREAL :f #X2 :d "Output signal") (:var :t GENERIC :n INSIGNAL :x X :ie 0.0 :kv FREAL :f #X1 :sp (N_IN) :d "Input signals") (:var :t GENERIC :n TEMP :x LOC :ie 0.0 :kv FREAL :f #X140 :sp (N_IN) :d "Temporary vector (to avoid repeated assignments)") ;; :interfaces (:int :t GENERIC :n INSIGNALLINK :v (INSIGNAL) :dir (NIL) :sp (N_IN)) (:int :t GENERIC :n OUTSIGNALLINK :v (OUTSIGNAL) :dir (NIL) :sp (N_OUT))) ;;;;;; ;;;;;;end of model MULTIPLIER ;;;;;; ;;; ;;; model PICONTR ;;; ((template :n PICONTR :c :eo :d "PI-controller w multiple output signals.") ;; :model-parameters (:par :t system-parameter :n N :x SMP :v 1 :kv (INTEGER 1 *) :f #X29 :d "Number of OutSignal links") ;; :parameters (:par :t GENERIC :n K :x S_P :v 0.3 :kv (FREAL (0.0)) :f #X21 :d "Gain parameter") (:par :t GENERIC :n TI :x S_P :v 300.0 :kv (FREAL (0.0)) :f #X21 :d "Integration time in seconds") (:par :t GENERIC :n TT :x S_P :v 30.0 :kv (FREAL (0.0)) :f #X21 :d "Tracking time in seconds") (:par :t GENERIC :n MODE :x S_P :v 0.0 :kv (REAL 0.0 1.0) :f #X21 :d "Control mode: 0 heating type control, 1 cooling type control") (:par :t GENERIC :n HILIMIT :x S_P :v 1.0 :kv (FREAL (0.0)) :f #X21 :d "High limit for OutSignal") (:par :t GENERIC :n LOLIMIT :x S_P :v 0.0 :kv (FREAL * 0.0) :f #X21 :d "Low limit for OutSignal") ;; :variables (:var :t GENERIC :n INTEG :x DER :iv 0.0 :kv FREAL :f #X6 :d "Integrator term") (:var :t GENERIC :n OUTSIGNAL :x U :iv 0.5 :kv (REAL 0.0 1.0) :f #X2 :d "Control signal") (:var :t GENERIC :n SETPOINT :x X :iv 18.0 :kv FREAL :f #X1 :d "Reference signal") (:var :t GENERIC :n MEASURE :x X :iv 18.0 :kv FREAL :f #X1 :d "Input signal") (:var :t GENERIC :n E :x LOC :iv 0.0 :kv FREAL :f #X140 :d "Control difference") (:var :t GENERIC :n OUTSIGNALTEMP :x LOC :iv 0.5 :kv FREAL :f #X140 :d "Control signal (temp)") ;; :interfaces (:int :t GENERIC :n OUTSIGNALLINK :v (OUTSIGNAL) :dir (NIL) :sp (N)) (:int :t GENERIC :n SETPOINTLINK :v (SETPOINT) :dir (NIL)) (:int :t GENERIC :n MEASURELINK :v (MEASURE) :dir (NIL))) ;;;;;; ;;;;;;end of model PICONTR ;;;;;; ;;; ;;; model PLINSEGC ;;; ((template :n PLINSEGC :c :eo :d "P-controller w a number of LINear SEGments. CONTINUOUS model.") ;; :model-parameters (:par :t system-parameter :n NPOINT :x SMP :v 2 :kv (INTEGER 2 *) :f #X29 :d "Number of linear segments") (:par :t system-parameter :n NOUT :x SMP :v 1 :kv (INTEGER 1 *) :f #X29 :d "Number of outcomes") ;; :parameters (:par :t GENERIC :n INCOORD :x S_P :ie 1.0 :kv FREAL :f #X21 :sp (NPOINT) :d "X-coordinate of linear segments") (:par :t GENERIC :n OUTCOORD :x S_P :ie 1.0 :kv FREAL :f #X21 :sp (NPOINT) :d "Y-coordinate of linear segments") ;; :variables (:var :t GENERIC :n OUTSIGNAL :x U :iv 1.0 :kv FREAL :f #X2 :d "Outgoing signal") (:var :t GENERIC :n INSIGNAL :x X :iv 20.0 :kv FREAL :f #X1 :d "Incoming signal") (:var :t GENERIC :n I_OLD :x A_S :iv 1.0 :kv (FREAL 1.0) :f #X10 :d "Memory of old interval") (:var :t GENERIC :n G0 :x A_S :iv 1.0 :kv FREAL :f #X10 :d "Event memory") ;; :interfaces (:int :t GENERIC :n INSIGNALLINK :v (INSIGNAL) :dir (NIL)) (:int :t GENERIC :n OUTSIGNALLINK :v (OUTSIGNAL) :dir (NIL) :sp (NOUT))) ;;;;;; ;;;;;;end of model PLINSEGC ;;;;;; ;;; ;;; model PLINSEGM ;;; ((template :n PLINSEGM :c :ceo :d "P-controller w a number of LINear SEGMents. ALGORITHMIC model.") ;; :model-parameters (:par :t system-parameter :n NPOINT :x SMP :v 2 :kv (INTEGER 2 *) :f #X29 :d "Number of linear segments") (:par :t system-parameter :n NOUTLINK :x SMP :v 1 :kv (INTEGER 1 *) :f #X29 :d "Number of outcomings") ;; :parameters (:par :t GENERIC :n INCOORD :x S_P :ie 1.0 :kv FREAL :f #X21 :sp (NPOINT) :d "X-coordinate of linear segments") (:par :t GENERIC :n OUTCOORD :x S_P :ie 1.0 :kv FREAL :f #X21 :sp (NPOINT) :d "Y-coordinate of linear segments") ;; :variables (:var :t GENERIC :n OUTSIGNAL :x U :iv 1.0 :kv FREAL :f #X2 :d "Outgoing signal") (:var :t GENERIC :n INSIGNAL :x X :iv 20.0 :kv FREAL :f #X1 :d "Incoming signal") (:var :t GENERIC :n I_OLD :x A_S :iv 1.0 :kv (FREAL 1.0) :f #X10 :d "Memory of old interval") (:var :t GENERIC :n G0 :x A_S :iv 1.0 :kv FREAL :f #X10 :d "Event memory") ;; :interfaces (:int :t GENERIC :n INSIGNALLINK :v (INSIGNAL) :dir (NIL)) (:int :t GENERIC :n OUTSIGNALLINK :v (OUTSIGNAL) :dir (NIL))) ;;;;;; ;;;;;;end of model PLINSEGM ;;;;;; ;;; ;;; model PMTCONTR ;;; ((template :n PMTCONTR :c :eo :d "Idealized CONTRoller for liquid w PMT links.") ;; :model-parameters ;; :parameters (:par :t PRESSURE :n DP0 :x S_P :v 50.0 :kv (FREAL 0.0) :f #X21 :d "Pressure drop under which requested flow is nolonger maintained") (:par :t MASSFLOW :n MMAX :x S_P :v 0.01 :kv (FREAL (0.0)) :f #X29 :d "Fluid massflow at Contr = 1 and Dp > dp0") (:par :t MASSFLOW :n MMIN :x S_P :v 0.000001 :kv (FREAL (0.0)) :f #X29 :d "Fluid massflow at Contr = 0 and Dp > dp0") ;; :variables (:var :t MASSFLOW :n M :x U :iv 0.01 :kv (FREAL 0.0) :f #XA :d "Fluid massflow") (:var :t TEMP :n T :x X :iv 30.0 :kv FREAL :f #X1 :d "Fluid temperature") (:var :t PRESSURE :n P1 :x X :iv 0.0 :kv (FREAL 0.0) :f #X1 :d "Pressure at inlet") (:var :t PRESSURE :n P2 :x X :iv 0.0 :kv (FREAL 0.0) :f #X1 :d "Pressure at outlet") (:var :t CONTROL :n CONTR :x X :iv 0.5 :kv FREAL :f #X1 :d "Controller input 1 -> mmax, 0 -> mmin, a negative value (< -0.5) turns off control action") (:var :t PRESSURE :n DPM :x A_S :iv 0.0 :kv FREAL :f #X10 :d "Pressure drop at previous timestep") (:var :t GENERIC :n MODE :x A_S :iv 1.0 :kv (REAL 0.0 1.0) :f #X10 :d "Mode memory") (:var :t PRESSURE :n DP :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X140 :d "Valve total pressure drop") ;; :interfaces (:int :t PMT :n INLET :v (P1 M T) :dir (NIL -1 NIL)) (:int :t PMT :n OUTLET :v (P2 M T) :dir (NIL 1 NIL)) (:int :t CONTROLLINK :n CONTROL :v (CONTR) :dir (NIL))) ;;;;;; ;;;;;;end of model PMTCONTR ;;;;;; ;;; ;;; model PSMOOTH ;;; ((template :n PSMOOTH :c :eo :d "SMOOTHed (no events) approximation to P-controller.") ;; :model-parameters (:par :t system-parameter :n N :x SMP :v 1 :kv (INTEGER 1 *) :f #X29 :d "Number of OutSignal links") ;; :parameters (:par :t GENERIC :n HI :x S_P :v 23.0 :kv FREAL :f #X21 :d "Sensed signal at which OutSignal becomes 1") (:par :t GENERIC :n LO :x S_P :v 21.0 :kv FREAL :f #X21 :d "Sensed signal at which OutSignal becomes 0") ;; :variables (:var :t GENERIC :n OUTSIGNAL :x U :iv 0.5 :kv (REAL 0.0 1.0) :f #X2 :d "Control signal") (:var :t GENERIC :n MEASURE :x X :iv 20.0 :kv FREAL :f #X1 :d "Sensed signal") (:var :t GENERIC :n OVERRIDE :x X :iv 1.0 :kv FREAL :f #X1 :d "Control action override signal, <= 0 overrides") (:var :t GENERIC :n RAMPPOS :x LOC :iv 2.0 :kv FREAL :f #X140 :d "Normalized measurement signal") ;; :interfaces (:int :t GENERIC :n MEASURELINK :v (MEASURE) :dir (NIL)) (:int :t GENERIC :n OVERRIDELINK :v (OVERRIDE) :dir (NIL)) (:int :t GENERIC :n OUTSIGNALLINK :v (OUTSIGNAL) :dir (NIL) :sp (N))) ;;;;;; ;;;;;;end of model PSMOOTH ;;;;;; ;;; ;;; model PSMOOTH2 ;;; ((template :n PSMOOTH2 :c :eo :d "SMOOTHed (no events) version of P-controller. Variable setpoint.") ;; :model-parameters (:par :t system-parameter :n N :x SMP :v 1 :kv (INTEGER 0 *) :f #X29 :d "Number of OutSignal links") ;; :parameters ;; :variables (:var :t GENERIC :n OUTSIGNAL :x U :iv 0.0 :kv FREAL :f #X2 :d "Control signal") (:var :t GENERIC :n MEASURE :x X :iv 0.0 :kv FREAL :f #X1 :d "Sensed signal") (:var :t GENERIC :n OVERRIDE :x X :iv 0.0 :kv FREAL :f #X1 :d "Control action override signal, <= 0 overrides") (:var :t GENERIC :n SETPOINT :x X :iv 0.0 :kv FREAL :f #X1 :d "Setpoint") (:var :t GENERIC :n PROPBAND :x X :iv 0.0 :kv FREAL :f #X1 :d "Proportional band; > 0 -> cooling ctrl; < 0 -> heating") (:var :t GENERIC :n RAMPPOS :x LOC :iv 0.0 :kv FREAL :f #X140 :d "Normalized measurement signal") (:var :t GENERIC :n HI :x LOC :iv 0.0 :kv FREAL :f #X140 :d "Sensed signal at which OutSignal becomes 1") (:var :t GENERIC :n LO :x LOC :iv 0.0 :kv FREAL :f #X140 :d "Sensed signal at which OutSignal becomes 0") ;; :interfaces (:int :t GENERIC :n MEASURELINK :v (MEASURE) :dir (NIL)) (:int :t GENERIC :n OVERRIDELINK :v (OVERRIDE) :dir (NIL)) (:int :t GENERIC :n SETPOINTLINK :v (SETPOINT) :dir (NIL)) (:int :t GENERIC :n PROPBANDLINK :v (PROPBAND) :dir (NIL)) (:int :t GENERIC :n OUTSIGNALLINK :v (OUTSIGNAL) :dir (NIL) :sp (N))) ;;;;;; ;;;;;;end of model PSMOOTH2 ;;;;;; ;;; ;;; model RCWALL ;;; ((template :n RCWALL :c :eo :d "WALL model based on RC network. Auto select 2 or 3 nodes.") ;; :model-parameters (:par :t system-parameter :n N :x SMP :v 1 :kv (INTEGER 1 *) :f #X29 :d "Number of wall layers") (:par :t system-parameter :n NNODE :x CMP :v 2 :kv (INTEGER 2 3) :f #X168 :d "Number of nodes") ;; :parameters (:par :t AREA :n A :x S_P :v 5.3 :kv (FREAL (0.0)) :f #X21 :d "wall area") (:par :t LENGTH :n L :x S_P :ie 0.01 :kv (FREAL (0.0)) :f #X21 :sp (N) :d "layer thickness") (:par :t HEATCONDL :n LAMBDA :x S_P :ie 0.08 :kv (FREAL (0.0)) :f #X21 :sp (N) :d "layer heat conductivity") (:par :t DENSITY :n RHO :x S_P :ie 1800.0 :kv (FREAL (0.0)) :f #X21 :sp (N) :d "layer density") (:par :t HEATCAPM :n CP :x S_P :ie 790.0 :kv (FREAL (0.0)) :f #X21 :sp (N) :d "layer spec heat") ;; :variables (:var :t TEMP :n TPA :x U :iv 27.3 :kv (FREAL -273.16) :f #X2 :d "Temp at surface A") (:var :t TEMP :n TPB :x U :iv 24.2 :kv (FREAL -273.16) :f #X2 :d "Temp at surface B") (:var :t HEATFLUX :n QA :x X :iv -6.0 :kv FREAL :f #X9 :d "Influx at surface A") (:var :t HEATFLUX :n QB :x X :iv -146.0 :kv FREAL :f #X9 :d "Influx at surface B") (:var :t TEMP :n T :x DER :ie 24.0 :kv (FREAL -273.16) :f #X6 :sp (NNODE) :d "Temp at capacity [i]") ;; :interfaces (:int :t TQ :n TERM_A :v (TPA QA) :dir (NIL -1)) (:int :t TQ :n TERM_B :v (TPB QB) :dir (NIL -1))) ;;;;;; ;;;;;;end of model RCWALL ;;;;;; ;;; ;;; model SCHEDULE ;;; ((template :n SCHEDULE :c :ceo :d "Fetch data from SCHEDULE. Handle leap yrs & DST. Generate events.") ;; :model-parameters (:par :t system-parameter :n NDPW :x SMP :v 7 :kv (INTEGER 7 7) :f #X29 :d "number of days per week") (:par :t system-parameter :n N :x SMP :v 1 :kv (INTEGER 1 *) :f #X29 :d "number of rules") (:par :t system-parameter :n LEN :x SMP :v 1 :kv (INTEGER 1 *) :f #X29 :d "length of a profile") ;; :parameters (:par :t GENERIC :n DST_START :x S_P :v 88.0 :kv (REAL 0.0 366.0) :f #X21 :d "start day for daylight savings time") (:par :t GENERIC :n DST_END :x S_P :v 298.0 :kv (REAL 0.0 366.0) :f #X21 :d "end day for daylight savins time") (:par :t FACTOR :n SAMPLE_WIDTH :x S_P :v 0.2 :kv (FREAL (0.0)) :f #X21 :d "smoothing resolution, width of sample bin") (:par :t FACTOR :n SMOOTHING_FANOUT :x S_P :v 0.0 :kv (FREAL 0.0) :f #X21 :d "no of samples on each side, affected by sample") (:par :t GENERIC :n IN_PAR :x S_P :ie 1.0 :kv FREAL :f #X21 :sp (N) :d "values for rules") (:par :t GENERIC :n START_YEAR :x S_P :ie -1.0 :kv FREAL :f #X21 :sp (N) :d "start year for rule i") (:par :t GENERIC :n END_YEAR :x S_P :ie -1.0 :kv FREAL :f #X21 :sp (N) :d "end year for rule i") (:par :t GENERIC :n START_MONTH :x S_P :ie -1.0 :kv (REAL -1.0 12.0) :f #X21 :sp (N) :d "start month for rule i") (:par :t GENERIC :n END_MONTH :x S_P :ie -1.0 :kv (REAL -1.0 12.0) :f #X21 :sp (N) :d "end month for rule i") (:par :t GENERIC :n START_DAY :x S_P :ie -1.0 :kv (REAL -1.0 31.0) :f #X21 :sp (N) :d "start day for rule i") (:par :t GENERIC :n END_DAY :x S_P :ie -1.0 :kv (REAL -1.0 31.0) :f #X21 :sp (N) :d "end day for rule i") (:par :t GENERIC :n WD_CODE :x S_P :ie 0.0 :kv FREAL :f #X21 :sp (N NDPW) :d "weekday code for rule i") (:par :t GENERIC :n TIME_COL :x S_P :ie 0.0 :kv FREAL :f #X21 :sp (N LEN) :d "time cols for profiles") (:par :t GENERIC :n VALUE_COL :x S_P :ie 0.0 :kv FREAL :f #X21 :sp (N LEN) :d "value cols for profiles") ;; :variables (:var :t GENERIC :n OUT_VAR :x U :iv 0.0 :kv FREAL :f #X2 :d "output variable") (:var :t GENERIC :n PREV_HR1_IN_YR :x A_S :iv 9999.0 :kv (FREAL 0.0) :f #X10 :d "previous ditto") (:var :t GENERIC :n PREV_RULE_NO :x A_S :iv 0.0 :kv FREAL :f #X10 :d "preious rule number") (:var :t GENERIC :n PREV_HOUR :x A_S :iv 0.0 :kv FREAL :f #X10 :d "previous time coord") (:var :t FACTOR :n PREV_TAB_PTR :x A_S :iv 1.0 :kv (FREAL 1.0) :f #X10 :d "previous table pointer") (:var :t GENERIC :n SECONDS :x LOC :iv 0.0 :kv FREAL :f #X140 :d "second counter") (:var :t GENERIC :n DISC_TIME :x LOC :iv 0.0 :kv FREAL :f #X140 :d "time of possible event [hr]") (:var :t GENERIC :n WEEKDAY :x LOC :iv 0.0 :kv FREAL :f #X140 :d "day in week counter") (:var :t GENERIC :n YEAR_NO :x LOC :iv 0.0 :kv FREAL :f #X140 :d "years from start year") (:var :t GENERIC :n MONTH :x LOC :iv 0.0 :kv FREAL :f #X140 :d "month in current year (1-12)") (:var :t GENERIC :n DAY :x LOC :iv 0.0 :kv FREAL :f #X140 :d "day in current month (1-31)") (:var :t GENERIC :n HOUR1_IN_YEAR :x LOC :iv 0.0 :kv FREAL :f #X140 :d "hour in current year") (:var :t GENERIC :n HOUR1 :x LOC :iv 0.0 :kv FREAL :f #X140 :d "hour in current day (0-24)") (:var :t GENERIC :n DAY_IN_YEAR :x LOC :iv 0.0 :kv FREAL :f #X140 :d "day in current year") (:var :t GENERIC :n RULE_NO :x LOC :iv 0.0 :kv FREAL :f #X140 :d "the number of the valid rule") (:var :t FACTOR :n CURR_VAL :x LOC :iv 0.0 :kv FREAL :f #X140 :d "value from table lookup") (:var :t FACTOR :n VAL_0 :x LOC :iv 0.0 :kv FREAL :f #X140 :d "1st value in current rule") (:var :t FACTOR :n VAL_24 :x LOC :iv 0.0 :kv FREAL :f #X140 :d "last value in previous rule") (:var :t FACTOR :n TAB_PTR :x LOC :iv 0.0 :kv FREAL :f #X140 :d "pointer into table") ;; :interfaces (:int :t GENERIC :n OUT_LINK :v (OUT_VAR) :dir (NIL)) (:int :t GENERIC :n OUTSIGNALLINK :v (OUT_VAR) :dir (NIL))) ;;;;;; ;;;;;;end of model SCHEDULE ;;;;;; ;;; ;;; model SHADE ;;; ((template :n SHADE :c :ceo :d "Calc window SHADEing from external objects (fins and buildings).") ;; :model-parameters (:par :t system-parameter :n NSHADES :x SMP :v 1 :kv (INTEGER 0 *) :f #X29 :d "number of shading surfaces") (:par :t system-parameter :n NPOINTS :x SMP :v 4 :kv (INTEGER 0 *) :f #X29 :d "number of shading surfaces * 4") (:par :t system-parameter :n NCTRL :x SMP :v 0 :kv (INTEGER 0 *) :f #X29 :d "number of controlled shading surfaces") (:par :t system-parameter :n THREE :x CMP :v 3 :kv (INTEGER 3 3) :f #X168 :s (0 T 0 + 3) :d "The number 3") (:par :t system-parameter :n FOUR :x CMP :v 4 :kv (INTEGER 4 4) :f #X168 :s (0 T 0 + 4) :d "The number 4") ;; :parameters (:par :t ANGLE :n SLOPEFACE :x S_P :v 0.0 :kv (REAL 0.0 180.0) :f #X21 :d "Slope of face 0=hor up, 90=vert, 180=hor down") (:par :t VEL :n WLIMIT :x S_P :v 2000.0 :kv (FREAL 0.0) :f #X21 :d "Local wind speed limit") (:par :t RADA :n RLIMIT :x S_P :v -1.0 :kv (FREAL -1.0) :f #X21 :d "Radiation limit") (:par :t FACTOR :n TRANS :x S_P :ie 0.0 :kv (REAL 0.0 1.0) :f #X21 :sp (NSHADES) :d "Transparency of shade, 1 = totally transparent") (:par :t LENGTH :n COORDS :x S_P :ie 0.0 :kv FREAL :f #X21 :sp (NPOINTS THREE) :d "coordinates of surfaces, relative to window") (:par :t LENGTH :n WINDOW :x S_P :ie 0.0 :kv FREAL :f #X21 :sp (FOUR THREE) :d "coordinates of window") ;; :variables (:var :t TEMP :n TAMB_OUT :x U :iv 0.0 :kv (FREAL -273.16) :f #X2 :d "ambient temp") (:var :t TEMP :n TGROUND_OUT :x U :iv 0.0 :kv (FREAL -273.16) :f #X2 :d "ground temp") (:var :t TEMP :n TSKY_OUT :x U :iv 0.0 :kv (FREAL -273.16) :f #X2 :d "sky temp") (:var :t HEATCONDA :n HEXT_OUT :x U :iv 1.0 :kv (FREAL 0.0) :f #X2 :d "external conv heat coeff") (:var :t RADA :n IDIFSKYOUT :x U :iv 0.0 :kv (FREAL 0.0) :f #X2 :d "incident diffuse rad fr sky") (:var :t RADA :n IDIFGRDOUT :x U :iv 0.0 :kv (FREAL 0.0) :f #X2 :d "incident diffuse rad fr ground") (:var :t RADA :n IDIR_OUT :x U :iv 0.0 :kv (FREAL 0.0) :f #X2 :d "incident direct rad") (:var :t ANGLE :n AZIMUT_OUT :x U :iv 0.0 :kv (REAL 0.0 360.0) :f #X2 :d "sun's rel azimuth") (:var :t ANGLE :n ELEV_OUT :x U :iv 0.0 :kv (REAL 0.0 90.0) :f #X2 :d "sun's elevation") (:var :t ANGLE :n ANGLE_OUT :x U :iv 0.0 :kv (REAL 0.0 90.0) :f #X2 :d "incident angle of") (:var :t TEMP :n TAMB_IN :x X :iv 0.0 :kv (FREAL -273.16) :f #X1 :d "ambient temp") (:var :t TEMP :n TGROUND_IN :x X :iv 0.0 :kv (FREAL -273.16) :f #X1 :d "ground temp") (:var :t TEMP :n TSKY_IN :x X :iv 0.0 :kv (FREAL -273.16) :f #X1 :d "sky temp") (:var :t HEATCONDA :n HEXT_IN :x X :iv 1.0 :kv (FREAL 0.0) :f #X1 :d "external conv heat coeff") (:var :t RADA :n IDIFSKYIN :x X :iv 0.0 :kv (FREAL 0.0) :f #X1 :d "incident diffuse rad fr sky") (:var :t RADA :n IDIFGRDIN :x X :iv 0.0 :kv (FREAL 0.0) :f #X1 :d "incident diffuse rad fr ground") (:var :t RADA :n IDIR_IN :x X :iv 0.0 :kv (FREAL 0.0) :f #X1 :d "incident direct rad") (:var :t ANGLE :n AZIMUT_IN :x X :iv 0.0 :kv (REAL 0.0 360.0) :f #X1 :d "sun's rel azimuth") (:var :t ANGLE :n ELEV_IN :x X :iv 0.0 :kv (REAL 0.0 90.0) :f #X1 :d "sun's elevation") (:var :t ANGLE :n ANGLE_IN :x X :iv 0.0 :kv (REAL 0.0 90.0) :f #X1 :d "incident angle of") (:var :t VEL :n WINDVEL :x X :iv 1.0 :kv (FREAL 0.0) :f #X1 :d "Local wind speed") (:var :t FACTOR :n DIRECTSHAD :x LOC :iv 0.0 :kv FREAL :f #X140 :d "Eff factor for direct rad") (:var :t FACTOR :n CTRL :x LOC :iv 1.0 :kv (REAL 0.0 1.0) :f #X140 :d "Control value") (:var :t RADA :n RAD :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X140 :d "Total radiation") ;; :interfaces (:int :t FACE2WIND :n WINSIDE :v (TAMB_OUT TGROUND_OUT TSKY_OUT HEXT_OUT IDIR_OUT IDIFSKYOUT IDIFGRDOUT AZIMUT_OUT ELEV_OUT ANGLE_OUT) :dir (NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL)) (:int :t FACE2WIND :n AMBIENT :v (TAMB_IN TGROUND_IN TSKY_IN HEXT_IN IDIR_IN IDIFSKYIN IDIFGRDIN AZIMUT_IN ELEV_IN ANGLE_IN) :dir (NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL)) (:int :t SPEED :n VELLINK :v (WINDVEL) :dir (NIL))) ;;;;;; ;;;;;;end of model SHADE ;;;;;; ;;; ;;; model SIMBOIL ;;; ((template :n SIMBOIL :c :eo :d "SIMplified BOILer and water pump w ideal control.") ;; :model-parameters (:par :t system-parameter :n NIN :x SMP :v 1 :kv (INTEGER 1 *) :f #X29 :d "Number of inlet terminals") (:par :t system-parameter :n NOUT :x SMP :v 1 :kv (INTEGER 1 *) :f #X29 :d "Number of outlet terminals") ;; :parameters (:par :t FACTOR :n ETAPRIMARY :x S_P :v 0.66 :kv (REAL (0.0) 10.0) :f #X21 :d "Boiler Overall efficiency") (:par :t FACTOR :n ETAPUMP :x S_P :v 1.0 :kv (REAL (0.0) 1.0) :f #X21 :d "Pump efficiency") (:par :t POWER_K :n QMAX :x S_P :v 99999.0 :kv (FREAL 0.001) :f #X21 :d "Maximum heating capacity (excl. DHW)") (:par :t PRESSURE :n PSETMAX :x S_P :v 3000.0 :kv (FREAL (0.0)) :f #X21 :d "Outlet pressure at full pump speed") (:par :t PRESSURE :n PSETMIN :x S_P :v 1.0 :kv (FREAL (0.0)) :f #X21 :d "Outlet pressure at PumpOn = 0 (>0 for numerical reasons)") (:par :t HEATCAPM :n CPLIQ :x S_P :v 4187.0 :kv (FREAL (0.0)) :f #X21 :d "Liquid specific heat") (:par :t MASS :n MASS :x S_P :v 100.0 :kv (FREAL (0.0)) :f #X21 :d "Boiler and circuit mass") (:par :t TEMP :n TDOMWATOUT :x S_P :v 55.0 :kv (REAL (0.0) 99.0) :f #X21 :d "Domestic hot water supply temperature") (:par :t VOLFLOW_M :n DOMWATF :x S_P :v 0.0 :kv (FREAL 0.0) :f #X29 :d "Maximum domestic hot water vol flow [l/s]") ;; :variables (:var :t TEMP :n TOUT :x DER :iv 60.0 :kv (FREAL -273.16) :f #X6 :d "Temp of leaving liquid") (:var :t PRESSURE :n POUT :x U :iv 10000.0 :kv (FREAL 0.0) :f #X2 :d "Outlet pressure") (:var :t PRESSURE :n PIN :x U :iv 0.0 :kv (FREAL 0.0) :f #X2 :d "Inlet pressure, fixed, as from expansion vessel") (:var :t TEMP :n TOUTREQ :x X :iv 70.0 :kv (FREAL -273.16) :f #X1 :d "Requested leaving temperture") (:var :t CONTROL :n PUMPON :x X :iv 1.0 :kv (FREAL 0.0) :f #X1 :d "Pump control signal") (:var :t TEMP :n TDOMWATIN :x X :iv 5.0 :kv (FREAL (0.0)) :f #X1 :d "Incoming domestic water temp") (:var :t CONTROL :n DOMWATSCH :x X :iv 0.0 :kv (REAL 0.0 1.0) :f #X1 :d "DHW consumption schedule 0-1") (:var :t GENERIC :n MODE :x A_S :iv 1.0 :kv (REAL 0.0 2.0) :f #X10 :d "Boiler mode 0 = Off 1 = Normal regime 2 = Full capacity") (:var :t GENERIC :n G0 :x A_S :iv 0.0 :kv (FREAL 0.0) :f #X10 :d "G-stop memory") (:var :t MASSFLOW :n MTOT :x LOC :iv 0.002 :kv (FREAL 0.0) :f #X148 :d "Total massflow") (:var :t PRIMPOWERCONS :n QSUP :x LOC :iv 1186.0 :kv (FREAL 0.0) :f #X140 :d "Supplied primary power") (:var :t ELPOWERCONS :n PPUMP :x LOC :iv 0.6 :kv (FREAL 0.0) :f #X140 :d "Pump electrical power") (:var :t POWER :n TEMP :x LOC :iv -40.0 :kv FREAL :f #X148 :d "Temporary variable") (:var :t TEMP :n QTEMP :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X140 :d "Temporary variable") (:var :t POWER :n QDOMWAT :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X148 :d "Power for DHW heating") (:var :t MASSFLOW :n M_IN :x X :ie 0.002 :kv (FREAL 0.0) :f #X9 :sp (NIN) :d "Inlet[i] massflow") (:var :t TEMP :n TIN :x X :ie 50.0 :kv (FREAL -273.16) :f #X1 :sp (NIN) :d "Temp of entering liquid") (:var :t MASSFLOW :n M_OUT :x X :ie 0.002 :kv (FREAL 0.0) :f #X9 :sp (NOUT) :d "Outlet[i] massflow") (:var :t POWER :n Q :x LOC :ie -40.0 :kv FREAL :f #X148 :sp (NOUT) :d "Power added to each flow circuit") ;; :interfaces (:int :t PMT :n INLET :v (PIN M_IN TIN) :dir (NIL -1 NIL) :sp (NIN)) (:int :t PMT :n OUTLET :v (POUT M_OUT TOUT) :dir (NIL 1 NIL) :sp (NOUT)) (:int :t T :n TEMPSETPOINT :v (TOUTREQ) :dir (NIL)) (:int :t CONTROLLINK :n PUMPCONTROL :v (PUMPON) :dir (NIL)) (:int :t T :n TEMPWAT :v (TDOMWATIN) :dir (NIL)) (:int :t CONTROLLINK :n DOMWATCONTROL :v (DOMWATSCH) :dir (NIL))) ;;;;;; ;;;;;;end of model SIMBOIL ;;;;;; ;;; ;;; model SIMCHIL ;;; ((template :n SIMCHIL :c :eo :d "SIMplified CHILler and water pump w ideal control.") ;; :model-parameters ;; :parameters (:par :t FACTOR :n COP :x S_P :v 2.0 :kv (REAL (0.0) 100.0) :f #X21 :d "Overall coefficent of performance (efficiency)") (:par :t FACTOR :n ETAPUMP :x S_P :v 0.8 :kv (REAL (0.0) 1.0) :f #X21 :d "Pump efficiency") (:par :t POWER_K :n QMAX :x S_P :v 99999.0 :kv (FREAL 0.001) :f #X21 :d "Maximum cooling capacity") (:par :t PRESSURE :n PSETMAX :x S_P :v 3000.0 :kv (FREAL (0.0)) :f #X21 :d "Outlet pressure at full pump speed") (:par :t PRESSURE :n PSETMIN :x S_P :v 1.0 :kv (FREAL (0.0)) :f #X21 :d "Outlet pressure at PumpOn = 0 (>0 for numerical reasons)") (:par :t MASS :n MASS :x S_P :v 100.0 :kv (FREAL (0.0)) :f #X21 :d "Chiller and piping mass") (:par :t HEATCAPM :n CPLIQ :x S_P :v 4187.0 :kv (FREAL (0.0)) :f #X21 :d "Liquid specific heat") (:par :t DENSITY :n RHOLIQ :x S_P :v 1000.0 :kv (FREAL (0.0)) :f #X21 :d "Liquid density") ;; :variables (:var :t TEMP :n TCHIL :x DER :iv 4.3 :kv (FREAL -273.16) :f #X6 :d "Chiller storage temperature") (:var :t PRESSURE :n POUT :x U :iv 600.0 :kv (FREAL 0.0) :f #X2 :d "Outlet pressure") (:var :t PRESSURE :n PIN :x U :iv 0.0 :kv (FREAL 0.0) :f #X2 :d "Inlet pressure, fixed, as from expansion vessel") (:var :t TEMP :n TOUT1 :x U :iv 15.0 :kv (FREAL -273.16) :f #X2 :d "Outlet 1 temp of leaving liquid") (:var :t TEMP :n TOUT2 :x U :iv 9.0 :kv (FREAL -273.16) :f #X2 :d "Outlet 2 temp of leaving liquid") (:var :t MASSFLOW :n MOUT1 :x X :iv 0.75 :kv (FREAL 0.0) :f #X9 :d "Outlet 1 massflow") (:var :t MASSFLOW :n MOUT2 :x X :iv 0.05 :kv (FREAL 0.0) :f #X9 :d "Outlet 2 massflow") (:var :t MASSFLOW :n MIN1 :x X :iv 0.75 :kv (FREAL 0.0) :f #X9 :d "Inlet 1 massflow") (:var :t MASSFLOW :n MIN2 :x X :iv 0.05 :kv (FREAL 0.0) :f #X9 :d "Inlet 2 massflow") (:var :t TEMP :n TIN1 :x X :iv 15.0 :kv (FREAL -273.16) :f #X1 :d "Inlet 1 temp of entering liquid") (:var :t TEMP :n TIN2 :x X :iv 9.0 :kv (FREAL -273.16) :f #X1 :d "Inlet 2 temp of entering liquid") (:var :t TEMP :n TOUTREQ1 :x X :iv 15.0 :kv (FREAL -273.16) :f #X1 :d "Outlet 1 requested leaving temperture") (:var :t TEMP :n TOUTREQ2 :x X :iv 9.0 :kv (FREAL -273.16) :f #X1 :d "Outlet 2 requested leaving temperture") (:var :t CONTROL :n PUMPON :x X :iv 1.0 :kv (FREAL 0.0) :f #X1 :d "Pump control signal") (:var :t GENERIC :n MODE :x A_S :iv 1.0 :kv (REAL 0.0 2.0) :f #X10 :d "Chiller mode 0 = Off 1 = Normal regime 2 = Full capacity") (:var :t GENERIC :n G0 :x A_S :iv 0.0 :kv (FREAL 0.0) :f #X10 :d "G-stop memory") (:var :t MASSFLOW :n MTOT :x LOC :iv 0.8 :kv (FREAL 0.0) :f #X148 :d "Total massflow") (:var :t TEMP :n TLIQENT :x LOC :iv 14.0 :kv (FREAL -273.16) :f #X140 :d "Average temp of entering liquids") (:var :t ELPOWERCONS :n QSUP :x LOC :iv 1100.0 :kv (FREAL 0.0) :f #X140 :d "Supplied primary energy") (:var :t ELPOWERCONS :n PPUMP :x LOC :iv 0.6 :kv (FREAL 0.0) :f #X140 :d "Pump electrical power") (:var :t HEATFLUX :n QCOND :x LOC :iv 3500.0 :kv (FREAL 0.0) :f #X148 :d "Condenser heat") (:var :t POWER :n TEMP :x LOC :iv 2373.0 :kv (FREAL 0.0) :f #X148 :d "Temporary variable") (:var :t POWER :n Q :x LOC :iv 2373.0 :kv (FREAL 0.0) :f #X148 :d "Temporary variable") (:var :t POWER :n Q1 :x LOC :iv 2373.0 :kv (FREAL 0.0) :f #X148 :d "Power removed from flow circuit 1") (:var :t POWER :n Q2 :x LOC :iv 2373.0 :kv (FREAL 0.0) :f #X148 :d "Power removed from flow circuit 2") ;; :interfaces (:int :t PMT :n INLET1 :v (PIN MIN1 TIN1) :dir (NIL -1 NIL)) (:int :t PMT :n OUTLET1 :v (POUT MOUT1 TOUT1) :dir (NIL 1 NIL)) (:int :t PMT :n INLET2 :v (PIN MIN2 TIN2) :dir (NIL -1 NIL)) (:int :t PMT :n OUTLET2 :v (POUT MOUT2 TOUT2) :dir (NIL 1 NIL)) (:int :t T :n TEMPSETP1 :v (TOUTREQ1) :dir (NIL)) (:int :t T :n TEMPSETP2 :v (TOUTREQ2) :dir (NIL)) (:int :t CONTROLLINK :n PUMPCONTROL :v (PUMPON) :dir (NIL))) ;;;;;; ;;;;;;end of model SIMCHIL ;;;;;; ;;; ;;; model STATSENS ;;; ((template :n STATSENS :c :eo :d "Multi-purpose STATic SENSor with UniAir links") ;; :model-parameters ;; :parameters (:par :t FACTOR :n MODE :x S_P :v 3.0 :kv (REAL 1.0 5.0) :f #X21 :d "Sensor mode 1 = Pressure diffenrence 2 = massflow 3 = Temperature of air flow 4 = CO2 ratio of air flow 5 = Humidity ratio of air flow") ;; :variables (:var :t GENERIC :n OUTSIGNAL :x U :iv 1.0 :kv FREAL :f #X2 :d "Outgoing signal") (:var :t PRESSURE :n PAIR :x X :iv 1335.0 :kv (FREAL (0.0)) :f #X1 :d "Air pressure") (:var :t MASSFLOW :n MAIR :x X :iv 0.756 :kv FREAL :f #X9 :d "Air massflow") (:var :t TEMP :n TAIR :x X :iv 20.0 :kv (FREAL -273.16) :f #X1 :d "Air temperature") (:var :t FRACTION_Y :n XAIR :x X :iv 594.0 :kv (FREAL 0.0) :f #X1 :d "CO2 fraction") (:var :t HUMRATIO :n WAIR :x X :iv 0.002 :kv (FREAL 0.0) :f #X1 :d "Humidity ratio of air") (:var :t PRESSURE :n PAMBIENT :x X :iv 1325.0 :kv (FREAL (0.0)) :f #X1 :d "Atmospheric air pressure") (:var :t PRESSURE :n DP :x LOC :iv 10.0 :kv (FREAL (0.0)) :f #X140 :d "Local pressure difference") (:var :t FACTOR :n RHUM :x LOC :iv 50.0 :kv (FREAL (0.0)) :f #X140 :d "Relative humidity of air") ;; :interfaces (:int :t UNIAIR :n AIRFLOWIN :v (PAIR MAIR TAIR XAIR WAIR) :dir (NIL -1 NIL NIL NIL)) (:int :t UNIAIR :n AIRFLOWOUT :v (PAIR MAIR TAIR XAIR WAIR) :dir (NIL 1 NIL NIL NIL)) (:int :t P :n AMBIENTPRESS :v (PAMBIENT) :dir (NIL)) (:int :t GENERIC :n OUTSIGNALLINK :v (OUTSIGNAL) :dir (NIL))) ;;;;;; ;;;;;;end of model STATSENS ;;;;;; ;;; ;;; model STINJCTR ;;; ((template :n STINJCTR :c :eo :d "Dry STeam INJection humidifier w ConTRol.") ;; :model-parameters ;; :parameters ;; :variables (:var :t MASSFLOW :n MSTEAM :x U :iv 1.2 :kv (FREAL 0.0) :f #XA :d "Steam mass flow") (:var :t TEMP :n TAIROUT :x U :iv 17.25 :kv (FREAL -273.16) :f #X2 :d "Outlet air temperature") (:var :t TEMP :n TAIRMAX :x U :iv 17.25 :kv (FREAL -273.16) :f #X2 :d "Outlet air temperature") (:var :t HUMRATIO :n WAIROUT :x U :iv 0.012 :kv (FREAL (0.0)) :f #X2 :d "Outlet air humidity ratio") (:var :t MASSFLOW :n MAIR :x X :iv 1.35 :kv (FREAL (0.0)) :f #X9 :d "Dry air massflow rate") (:var :t TEMP :n TAIRIN :x X :iv 15.5 :kv (FREAL -273.16) :f #X1 :d "Inlet air temperature") (:var :t TEMP :n TSTEAM :x X :iv 100.0 :kv (FREAL 100.0) :f #X1 :d "Steam temperature") (:var :t TEMP :n TWAT :x X :iv 5.0 :kv (FREAL (0.0)) :f #X1 :d "Water temperature") (:var :t PRESSURE :n PAIR :x X :iv 1325.0 :kv (FREAL (0.0)) :f #X1 :d "Inlet air pressure of stream 1") (:var :t PRESSURE :n PWAT :x X :iv 50000.0 :kv (FREAL (0.0)) :f #X1 :d "Water pressure") (:var :t HUMRATIO :n WAIRIN :x X :iv 0.005 :kv (FREAL (0.0)) :f #X1 :d "Inlet air humidity ratio") (:var :t FRACTION_Y :n XAIR :x X :iv 594.0 :kv (FREAL (0.0)) :f #X1 :d "Pollutant fraction") (:var :t CONTROL :n CONTR :x X :iv 0.0 :kv (REAL 0.0 1.0) :f #X1 :d "0=Off 1=On") (:var :t FACTOR :n RHMAX :x X :iv 0.5 :kv (REAL (0.0) 1.0) :f #X1 :d "Outlet air max rel hum") (:var :t GENERIC :n ON :x A_S :iv 0.0 :kv (REAL 0.0 1.0) :f #X10 :d "Off = 0 / On = 1") (:var :t GENERIC :n G0 :x A_S :iv 0.0 :kv FREAL :f #X10 :d "Memory of On") (:var :t MASSFLOW :n MSTEAMMAX :x LOC :iv 1.2 :kv (FREAL 0.0) :f #X148 :d "Max steam mass flow") (:var :t ENTHALPY :n HAIRIN :x LOC :iv 43000.0 :kv FREAL :f #X140 :d "Incoming air enthalpy") (:var :t ENTHALPY :n HAIROUT :x LOC :iv 43000.0 :kv FREAL :f #X140 :d "Outcoming air enthalpy") (:var :t ENTHALPY :n HAIRMAX :x LOC :iv 43000.0 :kv FREAL :f #X140 :d "Max enthalpy of air") (:var :t ENTHALPY :n HSTEAM :x LOC :iv 43000.0 :kv FREAL :f #X140 :d "Enthalpy of steam") (:var :t HEATFLUX :n QTOT :x LOC :iv 1000.0 :kv FREAL :f #X148 :d "Total heat transfer rate") (:var :t ELPOWERCONS :n QEL :x LOC :iv 1000.0 :kv (FREAL 0.0) :f #X140 :d "El heater consump") (:var :t HUMRATIO :n WAIRMAX :x LOC :iv 0.002 :kv (FREAL (0.0)) :f #X140 :d "Maximum setpoint humidity ratio") (:var :t HUMRATIO :n WMAXCTR :x LOC :iv 0.002 :kv (FREAL (0.0)) :f #X140 :d "Control max humidity ratio of inflow") (:var :t FACTOR :n RHIN :x LOC :iv 1.0 :kv (REAL (0.0) 1.0) :f #X140 :d "RH of inflow") (:var :t FACTOR :n RHOUT :x LOC :iv 1.0 :kv (REAL (0.0) 1.0) :f #X140 :d "RH of outflow") ;; :interfaces (:int :t UNIAIR :n AIRFLOWIN :v (PAIR MAIR TAIRIN XAIR WAIRIN) :dir (NIL -1 NIL NIL NIL)) (:int :t UNIAIR :n AIRFLOWOUT :v (PAIR MAIR TAIROUT XAIR WAIROUT) :dir (NIL 1 NIL NIL NIL)) (:int :t PMT :n WATFLOW :v (PWAT MSTEAM TWAT) :dir (NIL -1 NIL)) (:int :t T :n STEAMTEMP :v (TSTEAM) :dir (NIL)) (:int :t CONTROLLINK :n CONTROL :v (CONTR) :dir (NIL)) (:int :t Z :n RHLINK :v (RHMAX) :dir (NIL))) ;;;;;; ;;;;;;end of model STINJCTR ;;;;;; ;;; ;;; model SWITCH ;;; ((template :n SWITCH :c :eo :d "Switch between n_in input signals. Muliple output links.") ;; :model-parameters (:par :t system-parameter :n N_OUT :x SMP :v 1 :kv (INTEGER 1 *) :f #X29 :d "Number of OutSignal links") (:par :t system-parameter :n N_IN :x SMP :v 1 :kv (INTEGER 1 *) :f #X29 :d "Number of InSignal links") ;; :parameters ;; :variables (:var :t GENERIC :n OUTSIGNAL :x U :iv 0.0 :kv FREAL :f #X2 :d "Output signal") (:var :t GENERIC :n SELECTOR :x X :iv 1.0 :kv (FREAL 1.0) :f #X1 :d "Input select signal") (:var :t GENERIC :n INSIGNAL :x X :ie 0.0 :kv FREAL :f #X1 :sp (N_IN) :d "Input signals") ;; :interfaces (:int :t GENERIC :n SELECTORLINK :v (SELECTOR) :dir (NIL)) (:int :t GENERIC :n INSIGNALLINK :v (INSIGNAL) :dir (NIL) :sp (N_IN)) (:int :t GENERIC :n OUTSIGNALLINK :v (OUTSIGNAL) :dir (NIL) :sp (N_OUT))) ;;;;;; ;;;;;;end of model SWITCH ;;;;;; ;;; ;;; model SYNTCLIM ;;; ((template :n SYNTCLIM :c :ceo :d "Generate SYNThetic data for input into CLIMate model.") ;; :model-parameters ;; :parameters (:par :t PRESSURE :n PAIRGIVEN :x S_P :v 1325.0 :kv (FREAL -50000.0) :f #X21 :d "(Atmospheric press)-1E5") (:par :t TEMP :n TDRYMEAN :x S_P :v 20.0 :kv (FREAL -273.16) :f #X21 :d "Mean temperature of air") (:par :t TEMP :n TDRYAMPL :x S_P :v 5.0 :kv (REAL 0.0 50.0) :f #X21 :d "Amplitude of air temp") (:par :t GENERIC :n HRMAXTEMP :x S_P :v 15.0 :kv (REAL 0.0 24.0) :f #X21 :d "Hour (solar) when temp peaks") (:par :t FRACTION_Y :n XAIRGIVEN :x S_P :v 594.0 :kv (FREAL 0.0) :f #X21 :d "CO2 fraction") (:par :t FACTOR :n RELHUMATMAX :x S_P :v 50.0 :kv (REAL 0.0 100.0) :f #X21 :d "Rel humiditiy at max TDry Specify 0 if tWetBulb given") (:par :t TEMP :n TWETBULB :x S_P :v 20.0 :kv (FREAL -273.16) :f #X21 :d "Design wet bulb temp Only used if relHumAtMax = 0") (:par :t ANGLE :n DOMINDIR :x S_P :v 0.0 :kv (REAL 0.0 360.0) :f #X21 :d "Dominating direction of wind") (:par :t VEL :n AVGWINDVEL :x S_P :v 2.0 :kv (FREAL 0.0) :f #X21 :d "Avg speed of meteorological wind") (:par :t ANGLE :n LAT :x S_P :v 60.0 :kv (REAL -90.0 90.0) :f #X21 :d "Local latitude") (:par :t ANGLE :n LONG :x S_P :v -25.0 :kv (REAL -180.0 180.0) :f #X21 :d "Local longitude") (:par :t ANGLE :n LONGTIMEZONE :x S_P :v -30.0 :kv (REAL -180.0 180.0) :f #X21 :d "Time zone longitude") (:par :t FACTOR :n DIFF_MODEL :x S_P :v 0.0 :kv (REAL 0.0 1.0) :f #X21 :d "0 = ASHRAE 1 = Threlkeld") (:par :t FACTOR :n RAD_MODEL :x S_P :v 0.0 :kv (REAL 0.0 1.0) :f #X21 :d "0 = ASHRAE 1 = BRIS") (:par :t FACTOR :n REDFAC :x S_P :v 1.0 :kv (REAL 0.0 1.25) :f #X21 :d "Clearness number (ie Reduction factor)") ;; :variables (:var :t PRESSURE :n PAIR :x U :iv 1325.0 :kv (FREAL (0.0)) :f #X2 :d "Atmospheric pressure") (:var :t TEMP :n TAIR :x U :iv 20.0 :kv (FREAL -273.16) :f #X2 :d "Temperature of air") (:var :t FRACTION_Y :n XAIR :x U :iv 594.0 :kv (FREAL 0.0) :f #X2 :d "CO2 fraction") (:var :t FACTOR :n RELHUM :x U :iv 50.0 :kv (REAL 0.0 100.0) :f #X2 :d "Rel humidity of air") (:var :t ANGLE :n WINDDIR :x U :iv 0.0 :kv (REAL 0.0 360.0) :f #X2 :d "Direction of wind") (:var :t VEL :n WINDVELREF :x U :iv 1.0 :kv (FREAL 0.0) :f #X2 :d "Speed of meteorological wind") (:var :t RADA :n IDIRNORM :x U :iv 0.0 :kv (FREAL 0.0) :f #X2 :d "Direct normal rad") (:var :t RADA :n IDIFFHOR :x U :iv 0.0 :kv (FREAL 0.0) :f #X2 :d "Diffuse rad on hor surf") (:var :t FACTOR :n RELHUMTRY :x LOC :iv 50.0 :kv (REAL 0.0 100.0) :f #X140 :d "Tentative rel humidity of air") (:var :t RADA :n IDIFFUSE :x LOC :iv 0.0 :kv (FREAL 0.0) :f #X140 :d "1st diffuse rad") (:var :t ANGLE :n ELEVSUN :x LOC :iv 27.0 :kv (REAL -90.0 90.0) :f #X140 :d "Elevation angle of sun") (:var :t PRESSURE :n PSAT :x LOC :iv 2365.0 :kv (FREAL (0.0)) :f #X140 :d "Saturation pressure of water vapor") (:var :t GENERIC :n DAYNR :x LOC :iv 80.0 :kv (REAL 1.0 366.0) :f #X140 :d "Whole day number in year, 1 = January 1st") (:var :t GENERIC :n DAYINYEAR :x LOC :iv 80.0 :kv (REAL 1.0 366.0) :f #X140 :d "Broken day nr in year, 0 = January 1st") (:var :t GENERIC :n DAYINFOURYEARS :x LOC :iv 80.0 :kv (REAL 1.0 366.0) :f #X140 :d "Broken day nr in four year leap period, 0 = January 1st") (:var :t GENERIC :n DAYFROM1901 :x LOC :iv 80.0 :kv (REAL 1.0 366.0) :f #X140 :d "Broken day nr from 1901-01-01, 0-..") (:var :t GENERIC :n HOUR :x LOC :iv 14.0 :kv (REAL 0.0 24.0) :f #X140 :d "Hour number in day, std clock time") (:var :t GENERIC :n SECONDS :x LOC :iv 86400.0 :kv (FREAL 0.0) :f #X140 :d "Time from 1900-01-01") (:var :t GENERIC :n TIMEHR :x LOC :iv 0.0 :kv FREAL :f #X140 :d "Integration time [hr]") (:var :t ANGLER :n DECLINATION :x LOC :iv -0.007 :kv (FREAL (0.0)) :f #X140 :d "Declination angle") (:var :t ANGLE :n B :x LOC :iv -0.017 :kv FREAL :f #X140 :d "Help var for solar time") (:var :t ANGLE :n E :x LOC :iv -7.84 :kv FREAL :f #X140 :d "Help var for solar time") (:var :t ANGLER :n OMEGA :x LOC :iv 0.402 :kv FREAL :f #X140 :d "Hour angle from south, 15 deg/hour") (:var :t HOUR :n SOLTIME :x LOC :iv 13.54 :kv (REAL 0.0 24.0) :f #X140 :d "Help var for solar time") (:var :t HOUR :n SOLARTIME :x LOC :iv 13.54 :kv (REAL 0.0 24.0) :f #X140 :d "Local solar time") (:var :t FACTOR :n SINELEVSUN :x LOC :iv 0.454 :kv (REAL -1.0 1.0) :f #X140 :d "Help var, SIN(ElevSun)") (:var :t RADA :n A :x LOC :iv 1088.0 :kv (REAL 1085.0 1233.0) :f #X140 :d "Factor of ASHRAE method") (:var :t FACTOR :n B1 :x LOC :iv 0.205 :kv (REAL 0.142 0.207) :f #X140 :d "Factor of ASHRAE method") (:var :t FACTOR :n C :x LOC :iv 0.136 :kv (REAL 0.057 0.136) :f #X140 :d "Sky diffuse factor of ASHRAE method") ;; :interfaces (:int :t CLIMDATA :n DATAOUT :v (PAIR TAIR XAIR RELHUM WINDDIR WINDVELREF IDIRNORM IDIFFHOR) :dir (NIL NIL NIL NIL NIL NIL NIL NIL))) ;;;;;; ;;;;;;end of model SYNTCLIM ;;;;;; ;;; ;;; model THERMOSA ;;; ((template :n THERMOSA :c :ceo :d "THERMOSTat w variable setpoint (ALGORITHMIC).") ;; :model-parameters (:par :t system-parameter :n N :x SMP :v 1 :kv (INTEGER 1 *) :f #X29 :d "Number of OutSignal links") ;; :parameters (:par :t GENERIC :n DEADBAND :x S_P :v 1.0 :kv FREAL :f #X21 :d "Dead band") ;; :variables (:var :t GENERIC :n OUTSIGNAL :x U :iv 0.0 :kv (REAL 0.0 1.0) :f #X2 :d "Out-signal On=1 or Off=0") (:var :t GENERIC :n MEASURE :x X :iv 20.0 :kv FREAL :f #X1 :d "In-signal") (:var :t GENERIC :n SETPOINT :x X :iv 0.0 :kv FREAL :f #X1 :d "Set value") (:var :t GENERIC :n HI :x A_S :iv 0.0 :kv FREAL :f #X10 :d "Event var up") (:var :t GENERIC :n LO :x A_S :iv 0.0 :kv FREAL :f #X10 :d "Event var down") (:var :t GENERIC :n OLD_SIGNAL :x A_S :iv 0.0 :kv FREAL :f #X10 :d "State On or Off") (:var :t GENERIC :n TOP :x LOC :iv 0.0 :kv FREAL :f #X140 :d "Over the top") (:var :t GENERIC :n BOTTOM :x LOC :iv 0.0 :kv FREAL :f #X140 :d "Down under") (:var :t GENERIC :n ONVAL :x LOC :iv 0.0 :kv FREAL :f #X140 :d "Set value + 0.5 dead band") (:var :t GENERIC :n OFFVAL :x LOC :iv 0.0 :kv FREAL :f #X140 :d "Set value - 0.5 dead band") ;; :interfaces (:int :t GENERIC :n OUTSIGNALLINK :v (OUTSIGNAL) :dir (NIL) :sp (N)) (:int :t GENERIC :n MEASURELINK :v (MEASURE) :dir (NIL)) (:int :t GENERIC :n SETPOINTLINK :v (SETPOINT) :dir (NIL))) ;;;;;; ;;;;;;end of model THERMOSA ;;;;;; ;;; ;;; model THERMOST ;;; ((template :n THERMOST :c :eo :d "THERMOSTat w variable setpoint.") ;; :model-parameters (:par :t system-parameter :n N :x SMP :v 1 :kv (INTEGER 1 *) :f #X29 :d "Number of OutSignal links") ;; :parameters (:par :t GENERIC :n DEADBAND :x S_P :v 1.0 :kv FREAL :f #X21 :d "Dead band") ;; :variables (:var :t GENERIC :n OUTSIGNAL :x U :iv 0.0 :kv (REAL 0.0 1.0) :f #X2 :d "Out-signal On=1 or Off=0") (:var :t GENERIC :n MEASURE :x X :iv 20.0 :kv FREAL :f #X1 :d "In-signal") (:var :t GENERIC :n SETPOINT :x X :iv 0.0 :kv FREAL :f #X1 :d "Set value") (:var :t GENERIC :n HI :x A_S :iv 0.0 :kv FREAL :f #X10 :d "Event var up") (:var :t GENERIC :n LO :x A_S :iv 0.0 :kv FREAL :f #X10 :d "Event var down") (:var :t GENERIC :n OLD_SIGNAL :x A_S :iv 0.0 :kv FREAL :f #X10 :d "State On or Off") (:var :t GENERIC :n TOP :x LOC :iv 0.0 :kv FREAL :f #X140 :d "Over the top") (:var :t GENERIC :n BOTTOM :x LOC :iv 0.0 :kv FREAL :f #X140 :d "Down under") (:var :t GENERIC :n ONVAL :x LOC :iv 0.0 :kv FREAL :f #X140 :d "Set value + 0.5 dead band") (:var :t GENERIC :n OFFVAL :x LOC :iv 0.0 :kv FREAL :f #X140 :d "Set value - 0.5 dead band") ;; :interfaces (:int :t GENERIC :n OUTSIGNALLINK :v (OUTSIGNAL) :dir (NIL) :sp (N)) (:int :t GENERIC :n MEASURELINK :v (MEASURE) :dir (NIL)) (:int :t GENERIC :n SETPOINTLINK :v (SETPOINT) :dir (NIL))) ;;;;;; ;;;;;;end of model THERMOST ;;;;;; ;;; ;;; model TQFACE ;;; ((template :n TQFACE :c :eo :d "Wall surface exposed to solar radiation") ;; :model-parameters ;; :parameters (:par :t AREA :n AWALL :x S_P :v 1.0 :kv (FREAL (0.0)) :f #X21 :d "wall surface area") (:par :t FACTOR :n ABSFACE :x S_P :v 0.6 :kv (REAL (0.0) 1.0) :f #X21 :d "absorption factor") (:par :t FACTOR :n EPSFACE :x S_P :v 0.9 :kv (REAL (0.0) 1.0) :f #X21 :d "emissivity") (:par :t ANGLE :n SLOPEWALL :x S_P :v 90.0 :kv (REAL 0.0 180.0) :f #X21 :d "surface slope, 90 = vertical 180 = hor upward") ;; :variables (:var :t TEMP :n TWALL :x U :iv 24.0 :kv (FREAL -273.16) :f #X2 :d "wall surface temp") (:var :t HEATFLUX :n QWALL :x X :iv 146.0 :kv FREAL :f #X9 :d "heat from wall") (:var :t TEMP :n TAMBIENT :x X :iv 21.0 :kv (FREAL -273.16) :f #X1 :d "ambient temp") (:var :t RADA :n PDIR :x X :iv 0.0 :kv (FREAL 0.0) :f #X1 :d "direct rad intensity") (:var :t RADA :n PDIFSKY :x X :iv 85.0 :kv (FREAL 0.0) :f #X1 :d "diffuse rad intensity fr sky") (:var :t RADA :n PDIFGRD :x X :iv 85.0 :kv (FREAL 0.0) :f #X1 :d "diffuse rad intensity fr ground") (:var :t TEMP :n TSKY :x X :iv 16.0 :kv (FREAL -273.16) :f #X1 :d "sky temperature") (:var :t TEMP :n TGROUND :x X :iv 21.0 :kv (FREAL -273.16) :f #X1 :d "ground temperature") (:var :t HEATCONDA :n UFACE :x X :iv 13.9 :kv (FREAL 0.0) :f #X1 :d "conv heat transf coef") ;; :interfaces (:int :t TQ :n WALLSIDE :v (TWALL QWALL) :dir (NIL -1)) (:int :t FACE2WALL :n AMBIENT :v (TAMBIENT TGROUND TSKY UFACE PDIR PDIFSKY PDIFGRD) :dir (NIL NIL NIL NIL NIL NIL NIL))) ;;;;;; ;;;;;;end of model TQFACE ;;;;;; ;;; ;;; model WATMERGE ;;; ((template :n WATMERGE :c :eo :d "n-way MERGE of WATer streams w PMT links.") ;; :model-parameters (:par :t system-parameter :n NIN :x SMP :v 1 :kv (INTEGER 1 *) :f #X29 :d "Number of inlet streams") ;; :parameters (:par :t FACTOR :n MULT :x S_P :ie 1.0 :kv (FREAL (0.0)) :f #X21 :sp (NIN) :d "Inlet stream multiplier, see abstract") ;; :variables (:var :t MASSFLOW :n MOUT :x U :iv 0.75 :kv (FREAL 0.0) :f #XA :d "Leaving water massflow rate") (:var :t TEMP :n TOUT :x U :iv 15.4 :kv (FREAL -273.16) :f #X2 :d "Temperature of leaving water") (:var :t PRESSURE :n P :x X :iv 600.0 :kv (FREAL 0.0) :f #X1 :d "Pressure of entering and leaving water") (:var :t MASSFLOW :n M_IN :x X :ie 0.05 :kv (FREAL 0.0) :f #X9 :sp (NIN) :d "Entering water massflow rate") (:var :t TEMP :n T :x X :ie 15.2 :kv (FREAL -273.16) :f #X1 :sp (NIN) :d "Temperature of entering water") ;; :interfaces (:int :t PMT :n OUTLET :v (P MOUT TOUT) :dir (NIL 1 NIL)) (:int :t PMT :n INLET :v (P M_IN T) :dir (NIL -1 NIL) :sp (NIN))) ;;;;;; ;;;;;;end of model WATMERGE ;;;;;; ;;; ;;; model WATSPLIT ;;; ((template :n WATSPLIT :c :eo :d "n-way SPLIT of a WATer stream w PMT link.") ;; :model-parameters (:par :t system-parameter :n NOUT :x SMP :v 1 :kv (INTEGER 1 *) :f #X29 :d "Number of outlet streams") ;; :parameters (:par :t FACTOR :n MULT :x S_P :ie 1.0 :kv (FREAL (0.0)) :f #X21 :sp (NOUT) :d "Outlet stream multiplier, see abstract") ;; :variables (:var :t MASSFLOW :n M_IN :x U :iv 0.75 :kv (FREAL 0.0) :f #XA :d "Entering dry water rate") (:var :t PRESSURE :n P :x X :iv 600.0 :kv (FREAL 0.0) :f #X1 :d "Pressure of entering and leaving water") (:var :t TEMP :n T :x X :iv 15.0 :kv (FREAL -273.16) :f #X1 :d "Temperature of entering and leaving water") (:var :t MASSFLOW :n MOUT :x X :ie 0.05 :kv (FREAL 0.0) :f #X9 :sp (NOUT) :d "Leaving dry water rate") ;; :interfaces (:int :t PMT :n INLET :v (P M_IN T) :dir (NIL -1 NIL)) (:int :t PMT :n OUTLET :v (P MOUT T) :dir (NIL 1 NIL) :sp (NOUT))) ;;;;;; ;;;;;;end of model WATSPLIT ;;;;;;