Running: ./testmodel.py --libraries=/home/hudson/saved_omc/libraries/.openmodelica/libraries --ompython_omhome=/usr Buildings_13_Buildings.Fluid.HeatPumps.ModularReversible.RefrigerantCycle.BaseClasses.Validation.TableData2DLoadDepSHC.conf.json loadFile("/home/hudson/saved_omc/libraries/.openmodelica/libraries/ModelicaServices 4.1.0+maint.om/package.mo", uses=false) [Timeout 180] "Notification: Performance of loadFile(/home/hudson/saved_omc/libraries/.openmodelica/libraries/ModelicaServices 4.1.0+maint.om/package.mo): time 0.002777/0.002777, allocations: 80.88 kB / 21.56 MB, free: 2.93 MB / 18.57 MB " [Timeout remaining time 180] loadFile("/home/hudson/saved_omc/libraries/.openmodelica/libraries/Complex 4.1.0+maint.om/package.mo", uses=false) [Timeout 180] "Notification: Performance of loadFile(/home/hudson/saved_omc/libraries/.openmodelica/libraries/Complex 4.1.0+maint.om/package.mo): time 0.003251/0.003251, allocations: 166.3 kB / 24.97 MB, free: 9.195 MB / 18.57 MB " [Timeout remaining time 180] loadFile("/home/hudson/saved_omc/libraries/.openmodelica/libraries/Modelica 4.1.0+maint.om/package.mo", uses=false) [Timeout 180] "Notification: Performance of loadFile(/home/hudson/saved_omc/libraries/.openmodelica/libraries/Modelica 4.1.0+maint.om/package.mo): time 1.691/1.691, allocations: 177.1 MB / 205.4 MB, free: 5 MB / 186.7 MB " [Timeout remaining time 178] loadFile("/home/hudson/saved_omc/libraries/.openmodelica/libraries/Buildings 13.0.2-maint.13.x/package.mo", uses=false) [Timeout 180] "Notification: Performance of loadFile(/home/hudson/saved_omc/libraries/.openmodelica/libraries/Buildings 13.0.2-maint.13.x/package.mo): time 3.341/3.341, allocations: 389.5 MB / 0.6361 GB, free: 12.31 MB / 0.6042 GB " [Timeout remaining time 176] Using package Buildings with version 13.0.2 (/home/hudson/saved_omc/libraries/.openmodelica/libraries/Buildings 13.0.2-maint.13.x/package.mo) Using package Modelica with version 4.1.0 (/home/hudson/saved_omc/libraries/.openmodelica/libraries/Modelica 4.1.0+maint.om/package.mo) Using package Complex with version 4.1.0 (/home/hudson/saved_omc/libraries/.openmodelica/libraries/Complex 4.1.0+maint.om/package.mo) Using package ModelicaServices with version 4.1.0 (/home/hudson/saved_omc/libraries/.openmodelica/libraries/ModelicaServices 4.1.0+maint.om/package.mo) Running command: translateModel(Buildings.Fluid.HeatPumps.ModularReversible.RefrigerantCycle.BaseClasses.Validation.TableData2DLoadDepSHC,tolerance=1e-06,outputFormat="empty",numberOfIntervals=2500,variableFilter="",fileNamePrefix="Buildings_13_Buildings.Fluid.HeatPumps.ModularReversible.RefrigerantCycle.BaseClasses.Validation.TableData2DLoadDepSHC") translateModel(Buildings.Fluid.HeatPumps.ModularReversible.RefrigerantCycle.BaseClasses.Validation.TableData2DLoadDepSHC,tolerance=1e-06,outputFormat="empty",numberOfIntervals=2500,variableFilter="",fileNamePrefix="Buildings_13_Buildings.Fluid.HeatPumps.ModularReversible.RefrigerantCycle.BaseClasses.Validation.TableData2DLoadDepSHC") [Timeout 300] "Notification: Performance of FrontEnd - Absyn->SCode: time 3.775e-05/3.775e-05, allocations: 2.312 kB / 0.776 GB, free: 5.289 MB / 0.7292 GB Notification: Performance of NFInst.instantiate(Buildings.Fluid.HeatPumps.ModularReversible.RefrigerantCycle.BaseClasses.Validation.TableData2DLoadDepSHC): time 0.009933/0.00997, allocations: 4.681 MB / 0.7806 GB, free: 0.6328 MB / 0.7292 GB Notification: Performance of NFInst.instExpressions: time 0.02334/0.03331, allocations: 8.949 MB / 0.7893 GB, free: 7.707 MB / 0.7448 GB Notification: Performance of NFInst.updateImplicitVariability: time 0.00193/0.03524, allocations: 39.62 kB / 0.7894 GB, free: 7.668 MB / 0.7448 GB Notification: Performance of NFTyping.typeComponents: time 0.001142/0.03638, allocations: 297.7 kB / 0.7897 GB, free: 7.375 MB / 0.7448 GB Notification: Performance of NFTyping.typeBindings: time 0.003814/0.04019, allocations: 0.9606 MB / 0.7906 GB, free: 6.414 MB / 0.7448 GB Notification: Performance of NFTyping.typeClassSections: time 0.01065/0.05084, allocations: 3.028 MB / 0.7936 GB, free: 3.426 MB / 0.7448 GB Notification: Performance of NFFlatten.flatten: time 0.007288/0.05813, allocations: 3.1 MB / 0.7966 GB, free: 352 kB / 0.7448 GB Notification: Performance of NFFlatten.resolveConnections: time 0.001347/0.05948, allocations: 182.3 kB / 0.7968 GB, free: 148 kB / 0.7448 GB Notification: Performance of NFEvalConstants.evaluate: time 0.006118/0.0656, allocations: 1.961 MB / 0.7987 GB, free: 14.18 MB / 0.7605 GB Notification: Performance of NFSimplifyModel.simplify: time 0.004519/0.07012, allocations: 1.297 MB / 0.7999 GB, free: 12.89 MB / 0.7605 GB Notification: Performance of NFPackage.collectConstants: time 0.00105/0.07117, allocations: 156 kB / 0.8001 GB, free: 12.74 MB / 0.7605 GB Notification: Performance of NFFlatten.collectFunctions: time 0.002614/0.07378, allocations: 0.6864 MB / 0.8008 GB, free: 12.05 MB / 0.7605 GB Notification: Performance of combineBinaries: time 0.005095/0.07888, allocations: 3.004 MB / 0.8037 GB, free: 9.031 MB / 0.7605 GB Notification: Performance of replaceArrayConstructors: time 0.002302/0.08118, allocations: 1.335 MB / 0.805 GB, free: 7.703 MB / 0.7605 GB Notification: Performance of NFVerifyModel.verify: time 0.0006656/0.08184, allocations: 84 kB / 0.8051 GB, free: 7.621 MB / 0.7605 GB Notification: Performance of FrontEnd: time 0.0003876/0.08223, allocations: 47.73 kB / 0.8051 GB, free: 7.574 MB / 0.7605 GB Notification: Model statistics after passing the front-end and creating the data structures used by the back-end: * Number of equations: 199 (191) * Number of variables: 199 (183) Notification: Performance of [SIM] Bindings: time 0.01612/0.09835, allocations: 7.871 MB / 0.8128 GB, free: 15.48 MB / 0.7761 GB Notification: Performance of [SIM] FunctionAlias: time 0.004629/0.103, allocations: 1.85 MB / 0.8146 GB, free: 13.56 MB / 0.7761 GB Notification: Performance of [SIM] Early Inline: time 0.2872/0.3902, allocations: 142.2 MB / 0.9535 GB, free: 14.38 MB / 0.9167 GB Notification: Performance of [SIM] Simplify 1: time 0.07564/0.4658, allocations: 32.62 MB / 0.9853 GB, free: 14.23 MB / 0.948 GB Notification: Performance of [SIM] Alias: time 0.09938/0.5652, allocations: 33.62 MB / 1.018 GB, free: 12.24 MB / 0.9792 GB Notification: Performance of [SIM] Simplify 2: time 0.04123/0.6064, allocations: 16.53 MB / 1.034 GB, free: 11.89 MB / 0.9948 GB Notification: Performance of [SIM] Remove Stream: time 0.01773/0.6242, allocations: 5.039 MB / 1.039 GB, free: 6.789 MB / 0.9948 GB Notification: Performance of [SIM] Detect States: time 0.05805/0.6822, allocations: 21.98 MB / 1.061 GB, free: 0.7031 MB / 1.01 GB Notification: Performance of [SIM] Events: time 0.7245/1.407, allocations: 6.313 MB / 1.067 GB, free: 262.6 MB / 1.01 GB Notification: Performance of [SIM] Partitioning: time 0.07498/1.482, allocations: 29.94 MB / 1.096 GB, free: 255 MB / 1.01 GB Notification: Performance of [SIM] Causalize: time 0.04125/1.523, allocations: 19.16 MB / 1.115 GB, free: 242 MB / 1.01 GB Notification: Performance of [SIM] After Index Reduction Inline: time 0.1032/1.626, allocations: 70.39 MB / 1.184 GB, free: 175.1 MB / 1.01 GB Notification: Performance of [INI] Simplify: time 0.05084/1.677, allocations: 25.31 MB / 1.208 GB, free: 151.3 MB / 1.01 GB Notification: Performance of [INI] Inline: time 0.2021/1.879, allocations: 134.1 MB / 1.339 GB, free: 16.94 MB / 1.01 GB Notification: Performance of [INI] Partitioning: time 0.0007068/1.88, allocations: 131.9 kB / 1.339 GB, free: 16.77 MB / 1.01 GB Notification: Performance of [INI] Cleanup: time 0.04146/1.921, allocations: 19.48 MB / 1.358 GB, free: 13.27 MB / 1.026 GB Notification: Performance of [INI] Causalize: time 0.06346/1.985, allocations: 21.63 MB / 1.38 GB, free: 7.449 MB / 1.042 GB Error: Internal error NFExpression.makeZero failed for: (Real, Integer) Notification: Performance of [INI] Tearing: time 0.2041/2.189, allocations: 102.6 MB / 1.48 GB, free: 14.5 MB / 1.151 GB Notification: Performance of [SIM] Initialization: time 5.51e-06/2.189, allocations: 0 / 1.48 GB, free: 14.5 MB / 1.151 GB Notification: Performance of [SIM] Remove Dummies: time 5.125e-05/2.189, allocations: 2 kB / 1.48 GB, free: 14.5 MB / 1.151 GB Error: Internal error NFExpression.makeZero failed for: (Real, Integer) Notification: Performance of [SIM] Tearing: time 0.8451/3.034, allocations: 109.1 MB / 1.586 GB, free: 325.1 MB / 1.151 GB Notification: Performance of [SIM] Categorize: time 2.919e-05/3.034, allocations: 8 kB / 1.586 GB, free: 325.1 MB / 1.151 GB Error: Internal error NBSolve.solveStrongComponent failed. Use -d=tearingdump for more information. Error: Internal error NBSolve.solveStrongComponent failed with status = Solve.UNSOLVABLE while trying to solve following strong component: BLOCK: Algebraic Loop (Linear = false, Mixed = true, Homotopy = false, size = 21) ----------------------------------------------------------------------------------- Strict Tearing Set ******************** ### Iteration Variables: [DISS] (1) Integer hpSup.nUniCoo (start = 0) [ALGB] (1) protected Real hpSup.QHeaShcCyc_flow [ALGB] (1) protected Real hpSup.PLRHeaShcCyc (start = 1.0) [ALGB] (1) protected Real hpSup.QHeaShcNoCyc_flow [ALGB] (1) protected Real hpSup.PLRShcLoa [ALGB] (1) protected Real hpSup.PLRShcSaf [ALGB] (1) protected Real hpSup.QCooShcNoCyc_flow [ALGB] (1) protected Real hpSup.QHeaShcExc_flow [ALGB] (1) protected Real hpSup.QCooShcCyc_flow [ALGB] (1) protected Real hpSup.PLRCooShcCyc (start = 1.0) ### Residual Equations: [SCAL] (1) $RES_SIM_214 = (if hpSup.nUniShc > 0 then (1.0 - hpSup.ratCycShc) * Modelica.Math.Vectors.interpolate({0.0, 1.0}, cat(1, {0.0}, hpSup.QHeaInt_flow), hpSup.PLRHeaShcCyc, 1)[1] else 0.0) - hpSup.QHeaShcCyc_flow; ($RES_SIM_214) [SCAL] (1) $RES_SIM_238 = (if hpSup.nUniShc > 0 then smooth(1, if noEvent(1.0 - smooth(1, if noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] > 0.001) then Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] else if noEvent(noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] < (-0.001))) then 0.0 else 0.5 * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] - 250.0 * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] * ((-3.0) + (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * ((CAST(Real, hpSup.nUniShc) * hpSup.QHeaSet_flow) / CAST(Real, max(1, hpSup.nUniHea + hpSup.nUniShc)) - hpSup.QHeaShc_flow), 1)[1] / 0.001) ^ 2.0) * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1]) > 0.001) then smooth(1, if noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] > 0.001) then Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] else if noEvent(noEvent(noEvent(noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] < (-0.001))))) then 0.0 else 0.5 * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] - 250.0 * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] * ((-3.0) + (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * ((CAST(Real, hpSup.nUniShc) * hpSup.QHeaSet_flow) / CAST(Real, max(1, hpSup.nUniHea + hpSup.nUniShc)) - hpSup.QHeaShc_flow), 1)[1] / 0.001) ^ 2.0) * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1]) else if noEvent(noEvent(1.0 - smooth(1, if noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] > 0.001) then Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] else if noEvent(noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] < (-0.001))) then 0.0 else 0.5 * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] - 250.0 * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] * ((-3.0) + (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * ((CAST(Real, hpSup.nUniShc) * hpSup.QHeaSet_flow) / CAST(Real, max(1, hpSup.nUniHea + hpSup.nUniShc)) - hpSup.QHeaShc_flow), 1)[1] / 0.001) ^ 2.0) * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1]) < (-0.001))) then 1.0 else 0.25 * (1.0 - smooth(1, if noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] > 0.001) then Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] else if noEvent(noEvent(noEvent(noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] < (-0.001))))) then 0.0 else 0.5 * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] - 250.0 * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] * ((-3.0) + (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * ((CAST(Real, hpSup.nUniShc) * hpSup.QHeaSet_flow) / CAST(Real, max(1, hpSup.nUniHea + hpSup.nUniShc)) - hpSup.QHeaShc_flow), 1)[1] / 0.001) ^ 2.0) * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1])) * ((-3.0) + ((1.0 - smooth(1, if noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * ((CAST(Real, hpSup.nUniShc) * hpSup.QHeaSet_flow) / CAST(Real, max(1, hpSup.nUniHea + hpSup.nUniShc)) - hpSup.QHeaShc_flow), 1)[1] > 0.001) then Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * ((CAST(Real, hpSup.nUniShc) * hpSup.QHeaSet_flow) / CAST(Real, max(1, hpSup.nUniHea + hpSup.nUniShc)) - hpSup.QHeaShc_flow), 1)[1] else if noEvent(noEvent(noEvent(noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * ((CAST(Real, hpSup.nUniShc) * hpSup.QHeaSet_flow) / CAST(Real, max(1, hpSup.nUniHea + hpSup.nUniShc)) - hpSup.QHeaShc_flow), 1)[1] < (-0.001))))) then 0.0 else 0.5 * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * ((CAST(Real, hpSup.nUniShc) * hpSup.QHeaSet_flow) / CAST(Real, max(1, hpSup.nUniHea + hpSup.nUniShc)) - hpSup.QHeaShc_flow), 1)[1] - 250.0 * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * ((CAST(Real, hpSup.nUniShc) * hpSup.QHeaSet_flow) / CAST(Real, max(1, hpSup.nUniHea + hpSup.nUniShc)) - hpSup.QHeaShc_flow), 1)[1] * ((-3.0) + (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * ((CAST(Real, hpSup.nUniShc) * hpSup.QHeaSet_flow) / CAST(Real, max(1, hpSup.nUniHea + hpSup.nUniShc)) - hpSup.QHeaShc_flow), 1)[1] / 0.001) ^ 2.0) * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * ((CAST(Real, hpSup.nUniShc) * hpSup.QHeaSet_flow) / CAST(Real, max(1, hpSup.nUniHea + hpSup.nUniShc)) - hpSup.QHeaShc_flow), 1)[1])) / 0.001) ^ 2.0) * (1000.0 * (1.0 - smooth(1, if noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] > 0.001) then Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] else if noEvent(noEvent(noEvent(noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] < (-0.001))))) then 0.0 else 0.5 * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] - 250.0 * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] * ((-3.0) + (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * ((CAST(Real, hpSup.nUniShc) * hpSup.QHeaSet_flow) / CAST(Real, max(1, hpSup.nUniHea + hpSup.nUniShc)) - hpSup.QHeaShc_flow), 1)[1] / 0.001) ^ 2.0) * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1]))) + 0.5 * (1.0 + smooth(1, if noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] > 0.001) then Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] else if noEvent(noEvent(noEvent(noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] < (-0.001))))) then 0.0 else 0.5 * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] - 250.0 * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] * ((-3.0) + (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * ((CAST(Real, hpSup.nUniShc) * hpSup.QHeaSet_flow) / CAST(Real, max(1, hpSup.nUniHea + hpSup.nUniShc)) - hpSup.QHeaShc_flow), 1)[1] / 0.001) ^ 2.0) * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaInt_flow), {0.0, 1.0}, ((hpSup.QHeaSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)) - hpSup.QHeaShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1]))) else 0.0) - hpSup.PLRHeaShcCyc; ($RES_SIM_238) [SCAL] (1) $RES_SIM_208 = (if hpSup.nUniShc > 0 then Modelica.Math.Vectors.interpolate({0.0, 1.0}, cat(1, {0.0}, hpSup.QHeaShcInt_flow), hpSup.PLRShc, 1)[1] else 0.0) - hpSup.QHeaShcNoCyc_flow; ($RES_SIM_208) [SCAL] (1) $RES_SIM_232 = (if hpSup.nUniShc > 0 then smooth(1, if noEvent(1.0 - smooth(1, if noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1] > 0.001) then Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1] else if noEvent(noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1] < (-0.001))) then Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1] else 250.0 * (Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1] - Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1]) * ((-3.0) + ((Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniHea + hpSup.nUniShc)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniCoo + hpSup.nUniShc))), 1)[1]) / 0.001) ^ 2.0) * (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1]) + 0.5 * (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1] + Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1])) > 0.001) then smooth(1, if noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1] > 0.001) then Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1] else if noEvent(noEvent(noEvent(noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1] < (-0.001))))) then Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1] else 250.0 * (Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1] - Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1]) * ((-3.0) + ((Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniHea + hpSup.nUniShc)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniCoo + hpSup.nUniShc))), 1)[1]) / 0.001) ^ 2.0) * (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1]) + 0.5 * (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1] + Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1])) else if noEvent(noEvent(1.0 - smooth(1, if noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1] > 0.001) then Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1] else if noEvent(noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1] < (-0.001))) then Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1] else 250.0 * (Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1] - Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1]) * ((-3.0) + ((Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniHea + hpSup.nUniShc)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniCoo + hpSup.nUniShc))), 1)[1]) / 0.001) ^ 2.0) * (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1]) + 0.5 * (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1] + Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1])) < (-0.001))) then 1.0 else 0.25 * (1.0 - smooth(1, if noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1] > 0.001) then Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1] else if noEvent(noEvent(noEvent(noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1] < (-0.001))))) then Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1] else 250.0 * (Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1] - Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1]) * ((-3.0) + ((Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniHea + hpSup.nUniShc)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniCoo + hpSup.nUniShc))), 1)[1]) / 0.001) ^ 2.0) * (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1]) + 0.5 * (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1] + Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1]))) * ((-3.0) + ((1.0 - smooth(1, if noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniHea + hpSup.nUniShc)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniCoo + hpSup.nUniShc))), 1)[1] > 0.001) then Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniHea + hpSup.nUniShc)), 1)[1] else if noEvent(noEvent(noEvent(noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniHea + hpSup.nUniShc)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniCoo + hpSup.nUniShc))), 1)[1] < (-0.001))))) then Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniCoo + hpSup.nUniShc))), 1)[1] else 0.5 * (Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniCoo + hpSup.nUniShc))), 1)[1] + Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniHea + hpSup.nUniShc)), 1)[1]) + 250.0 * (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniHea + hpSup.nUniShc)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniCoo + hpSup.nUniShc))), 1)[1]) * ((-3.0) + ((Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniHea + hpSup.nUniShc)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniCoo + hpSup.nUniShc))), 1)[1]) / 0.001) ^ 2.0) * (Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniCoo + hpSup.nUniShc))), 1)[1] - Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniHea + hpSup.nUniShc)), 1)[1]))) / 0.001) ^ 2.0) * (1000.0 * (1.0 - smooth(1, if noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1] > 0.001) then Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1] else if noEvent(noEvent(noEvent(noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1] < (-0.001))))) then Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1] else 250.0 * (Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1] - Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1]) * ((-3.0) + ((Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniHea + hpSup.nUniShc)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniCoo + hpSup.nUniShc))), 1)[1]) / 0.001) ^ 2.0) * (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1]) + 0.5 * (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1] + Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1])))) + 0.5 * (1.0 + smooth(1, if noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1] > 0.001) then Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1] else if noEvent(noEvent(noEvent(noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1] < (-0.001))))) then Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1] else 250.0 * (Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1] - Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1]) * ((-3.0) + ((Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniHea + hpSup.nUniShc)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniCoo + hpSup.nUniShc))), 1)[1]) / 0.001) ^ 2.0) * (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1]) + 0.5 * (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1] + Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i16]) for $i16 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1])))) else 0.0) - hpSup.PLRShcLoa; ($RES_SIM_232) [SCAL] (1) $RES_SIM_229 = (if hpSup.nUniShc > 0 then min(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hpSup.QHeaShcInt_flow), {0.0, 1.0}, hpSup.QHeaSaf_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)), 1)[1], Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooShcInt_flow))[$i15]) for $i15 in 1:2}, {0.0, 1.0}, abs(hpSup.QCooSaf_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo))), 1)[1]) else 0.0) - hpSup.PLRShcSaf; ($RES_SIM_229) [SCAL] (1) $RES_SIM_220 = (if hpSup.nUniShc > 0 then Modelica.Math.Vectors.interpolate({0.0, 1.0}, cat(1, {0.0}, hpSup.QCooShcInt_flow), hpSup.PLRShc, 1)[1] else 0.0) - hpSup.QCooShcNoCyc_flow; ($RES_SIM_220) [SCAL] (1) $RES_SIM_211 = (if hpSup.nUniShc > 0 then max(0.0, CAST(Real, hpSup.nUniShc) * (hpSup.QHeaShcNoCyc_flow - hpSup.QHeaSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniHea)))) else 0.0) - hpSup.QHeaShcExc_flow; ($RES_SIM_211) [SCAL] (1) $RES_SIM_226 = (if hpSup.nUniShc > 0 then (1.0 - hpSup.ratCycShc) * Modelica.Math.Vectors.interpolate({0.0, 1.0}, cat(1, {0.0}, hpSup.QCooInt_flow), hpSup.PLRCooShcCyc, 1)[1] else 0.0) - hpSup.QCooShcCyc_flow; ($RES_SIM_226) [SCAL] (1) $RES_SIM_241 = (if hpSup.nUniShc > 0 then smooth(1, if noEvent(1.0 - smooth(1, if noEvent(Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] > 0.001) then Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] else if noEvent(noEvent(Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] < (-0.001))) then 0.0 else 0.5 * Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] - 250.0 * Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] * ((-3.0) + (Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * abs((CAST(Real, hpSup.nUniShc) * hpSup.QCooSet_flow) / CAST(Real, max(1, hpSup.nUniCoo + hpSup.nUniShc)) - hpSup.QCooShc_flow), 1)[1] / 0.001) ^ 2.0) * Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1]) > 0.001) then smooth(1, if noEvent(Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] > 0.001) then Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] else if noEvent(noEvent(noEvent(noEvent(Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] < (-0.001))))) then 0.0 else 0.5 * Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] - 250.0 * Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] * ((-3.0) + (Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * abs((CAST(Real, hpSup.nUniShc) * hpSup.QCooSet_flow) / CAST(Real, max(1, hpSup.nUniCoo + hpSup.nUniShc)) - hpSup.QCooShc_flow), 1)[1] / 0.001) ^ 2.0) * Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1]) else if noEvent(noEvent(1.0 - smooth(1, if noEvent(Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] > 0.001) then Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] else if noEvent(noEvent(Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] < (-0.001))) then 0.0 else 0.5 * Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] - 250.0 * Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] * ((-3.0) + (Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * abs((CAST(Real, hpSup.nUniShc) * hpSup.QCooSet_flow) / CAST(Real, max(1, hpSup.nUniCoo + hpSup.nUniShc)) - hpSup.QCooShc_flow), 1)[1] / 0.001) ^ 2.0) * Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1]) < (-0.001))) then 1.0 else 0.25 * (1.0 - smooth(1, if noEvent(Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] > 0.001) then Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] else if noEvent(noEvent(noEvent(noEvent(Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] < (-0.001))))) then 0.0 else 0.5 * Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] - 250.0 * Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] * ((-3.0) + (Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * abs((CAST(Real, hpSup.nUniShc) * hpSup.QCooSet_flow) / CAST(Real, max(1, hpSup.nUniCoo + hpSup.nUniShc)) - hpSup.QCooShc_flow), 1)[1] / 0.001) ^ 2.0) * Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1])) * ((-3.0) + ((1.0 - smooth(1, if noEvent(Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * abs((CAST(Real, hpSup.nUniShc) * hpSup.QCooSet_flow) / CAST(Real, max(1, hpSup.nUniCoo + hpSup.nUniShc)) - hpSup.QCooShc_flow), 1)[1] > 0.001) then Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * abs((CAST(Real, hpSup.nUniShc) * hpSup.QCooSet_flow) / CAST(Real, max(1, hpSup.nUniCoo + hpSup.nUniShc)) - hpSup.QCooShc_flow), 1)[1] else if noEvent(noEvent(noEvent(noEvent(Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * abs((CAST(Real, hpSup.nUniShc) * hpSup.QCooSet_flow) / CAST(Real, max(1, hpSup.nUniCoo + hpSup.nUniShc)) - hpSup.QCooShc_flow), 1)[1] < (-0.001))))) then 0.0 else 0.5 * Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * abs((CAST(Real, hpSup.nUniShc) * hpSup.QCooSet_flow) / CAST(Real, max(1, hpSup.nUniCoo + hpSup.nUniShc)) - hpSup.QCooShc_flow), 1)[1] - 250.0 * Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * abs((CAST(Real, hpSup.nUniShc) * hpSup.QCooSet_flow) / CAST(Real, max(1, hpSup.nUniCoo + hpSup.nUniShc)) - hpSup.QCooShc_flow), 1)[1] * ((-3.0) + (Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * abs((CAST(Real, hpSup.nUniShc) * hpSup.QCooSet_flow) / CAST(Real, max(1, hpSup.nUniCoo + hpSup.nUniShc)) - hpSup.QCooShc_flow), 1)[1] / 0.001) ^ 2.0) * Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * abs((CAST(Real, hpSup.nUniShc) * hpSup.QCooSet_flow) / CAST(Real, max(1, hpSup.nUniCoo + hpSup.nUniShc)) - hpSup.QCooShc_flow), 1)[1])) / 0.001) ^ 2.0) * (1000.0 * (1.0 - smooth(1, if noEvent(Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] > 0.001) then Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] else if noEvent(noEvent(noEvent(noEvent(Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] < (-0.001))))) then 0.0 else 0.5 * Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] - 250.0 * Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] * ((-3.0) + (Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * abs((CAST(Real, hpSup.nUniShc) * hpSup.QCooSet_flow) / CAST(Real, max(1, hpSup.nUniCoo + hpSup.nUniShc)) - hpSup.QCooShc_flow), 1)[1] / 0.001) ^ 2.0) * Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1]))) + 0.5 * (1.0 + smooth(1, if noEvent(Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] > 0.001) then Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] else if noEvent(noEvent(noEvent(noEvent(Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] < (-0.001))))) then 0.0 else 0.5 * Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] - 250.0 * Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1] * ((-3.0) + (Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * abs((CAST(Real, hpSup.nUniShc) * hpSup.QCooSet_flow) / CAST(Real, max(1, hpSup.nUniCoo + hpSup.nUniShc)) - hpSup.QCooShc_flow), 1)[1] / 0.001) ^ 2.0) * Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hpSup.QCooInt_flow))[$i17]) for $i17 in 1:2}, {0.0, 1.0}, abs((hpSup.QCooSet_flow * CAST(Real, hpSup.nUniShc)) / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)) - hpSup.QCooShc_flow) * (if noEvent(1.0 - hpSup.ratCycShc > 0.001 or 1.0 - hpSup.ratCycShc < (-0.001)) then 1/(1.0 - hpSup.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hpSup.ratCycShc < 5e-4 and 1.0 - hpSup.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hpSup.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hpSup.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1]))) else 0.0) - hpSup.PLRCooShcCyc; ($RES_SIM_241) ### Inner Equations: BLOCK: Single Strong Component (status = Solve.UNPROCESSED, size = 1) ----------------------------------------------------------------------- ### Variable: protected Real hpSup.PLRShc ### Equation: [SCAL] (1) hpSup.PLRShc = if hpSup.nUniShc > 0 then min(hpSup.PLRShcSaf, hpSup.PLRShcLoa) else 0.0; ($RES_SIM_235) BLOCK: Single Strong Component (status = Solve.UNPROCESSED, size = 1) ----------------------------------------------------------------------- ### Variable: protected Real hpSup.QCooShcExc_flow ### Equation: [SCAL] (1) hpSup.QCooShcExc_flow = if hpSup.nUniShc > 0 then min(0.0, CAST(Real, hpSup.nUniShc) * (hpSup.QCooShcNoCyc_flow - hpSup.QCooSet_flow / CAST(Real, max(1, hpSup.nUniShc + hpSup.nUniCoo)))) else 0.0; ($RES_SIM_223) BLOCK: Single Strong Component (status = Solve.UNPROCESSED, size = 1) ----------------------------------------------------------------------- ### Variable: protected Real hpSup.ratCycShc ### Equation: [SCAL] (1) hpSup.ratCycShc = if hpSup.nUniShc > 0 then 1.0 - smooth(1, if noEvent((-1.0) + smooth(1, if noEvent(hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) - hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) > 0.001) then hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) else if noEvent(noEvent(hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) - hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) < (-0.001))) then hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) else 250.0 * (hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) - hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0))) * ((-3.0) + (((if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))) then (1e6 * hpSup.QHeaShcNoCyc_flow * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni)) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) * hpSup.QHeaShcExc_flow - (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))) then (1e6 * hpSup.QCooShcNoCyc_flow * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni)) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) * hpSup.QCooShcExc_flow) / 0.001) ^ 2.0) * (hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) - hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0))) + 0.5 * (hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) + hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)))) > 0.001) then 1.0 else if noEvent(noEvent((-1.0) + smooth(1, if noEvent(hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) - hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) > 0.001) then hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) else if noEvent(noEvent(hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) - hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) < (-0.001))) then hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) else 250.0 * (hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) - hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0))) * ((-3.0) + (((if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))) then (1e6 * hpSup.QHeaShcNoCyc_flow * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni)) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) * hpSup.QHeaShcExc_flow - (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))) then (1e6 * hpSup.QCooShcNoCyc_flow * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni)) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) * hpSup.QCooShcExc_flow) / 0.001) ^ 2.0) * (hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) - hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0))) + 0.5 * (hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) + hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)))) < (-0.001))) then smooth(1, if noEvent(hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) - hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) > 0.001) then hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) else if noEvent(noEvent(noEvent(noEvent(hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) - hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) < (-0.001))))) then hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) else 250.0 * (hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) - hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0))) * ((-3.0) + (((if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))))) then (1e6 * hpSup.QHeaShcNoCyc_flow * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni)) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) * hpSup.QHeaShcExc_flow - (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))))) then (1e6 * hpSup.QCooShcNoCyc_flow * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni)) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) * hpSup.QCooShcExc_flow) / 0.001) ^ 2.0) * (hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) - hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0))) + 0.5 * (hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) + hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)))) else 0.25 * ((-1.0) + smooth(1, if noEvent(hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) - hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) > 0.001) then hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) else if noEvent(noEvent(noEvent(noEvent(hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) - hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) < (-0.001))))) then hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) else 250.0 * (hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) - hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0))) * ((-3.0) + (((if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))))) then (1e6 * hpSup.QHeaShcNoCyc_flow * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni)) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) * hpSup.QHeaShcExc_flow - (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))))) then (1e6 * hpSup.QCooShcNoCyc_flow * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni)) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) * hpSup.QCooShcExc_flow) / 0.001) ^ 2.0) * (hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) - hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0))) + 0.5 * (hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) + hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0))))) * ((-3.0) + (((-1.0) + smooth(1, if noEvent((if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then (1e6 * hpSup.QHeaShcNoCyc_flow * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni)) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) * hpSup.QHeaShcExc_flow - (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then (1e6 * hpSup.QCooShcNoCyc_flow * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni)) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) * hpSup.QCooShcExc_flow > 0.001) then (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))))) then (1e6 * hpSup.QHeaShcNoCyc_flow * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni)) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) * hpSup.QHeaShcExc_flow else if noEvent(noEvent(noEvent(noEvent((if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then (1e6 * hpSup.QHeaShcNoCyc_flow * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni)) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) * hpSup.QHeaShcExc_flow - (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then (1e6 * hpSup.QCooShcNoCyc_flow * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni)) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) * hpSup.QCooShcExc_flow < (-0.001))))) then (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))))) then (1e6 * hpSup.QCooShcNoCyc_flow * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni)) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) * hpSup.QCooShcExc_flow else 0.5 * ((if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))))) then (1e6 * hpSup.QCooShcNoCyc_flow * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni)) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) * hpSup.QCooShcExc_flow + (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))))) then (1e6 * hpSup.QHeaShcNoCyc_flow * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni)) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) * hpSup.QHeaShcExc_flow) + 250.0 * ((if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))))) then (1e6 * hpSup.QHeaShcNoCyc_flow * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni)) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) * hpSup.QHeaShcExc_flow - (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))))) then (1e6 * hpSup.QCooShcNoCyc_flow * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni)) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) * hpSup.QCooShcExc_flow) * ((-3.0) + (((if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))))) then (1e6 * hpSup.QHeaShcNoCyc_flow * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni)) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) * hpSup.QHeaShcExc_flow - (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))))) then (1e6 * hpSup.QCooShcNoCyc_flow * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni)) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) * hpSup.QCooShcExc_flow) / 0.001) ^ 2.0) * ((if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))))) then (1e6 * hpSup.QCooShcNoCyc_flow * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni)) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) * hpSup.QCooShcExc_flow - (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))))) then (1e6 * hpSup.QHeaShcNoCyc_flow * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni)) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) * hpSup.QHeaShcExc_flow))) / 0.001) ^ 2.0) * (1000.0 * ((-1.0) + smooth(1, if noEvent(hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) - hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) > 0.001) then hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) else if noEvent(noEvent(noEvent(noEvent(hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) - hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) < (-0.001))))) then hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) else 250.0 * (hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) - hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0))) * ((-3.0) + (((if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))))) then (1e6 * hpSup.QHeaShcNoCyc_flow * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni)) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) * hpSup.QHeaShcExc_flow - (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))))) then (1e6 * hpSup.QCooShcNoCyc_flow * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni)) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) * hpSup.QCooShcExc_flow) / 0.001) ^ 2.0) * (hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) - hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0))) + 0.5 * (hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) + hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)))))) + 0.5 * (1.0 + smooth(1, if noEvent(hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) - hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) > 0.001) then hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) else if noEvent(noEvent(noEvent(noEvent(hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) - hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) < (-0.001))))) then hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) else 250.0 * (hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) - hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0))) * ((-3.0) + (((if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))))) then (1e6 * hpSup.QHeaShcNoCyc_flow * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni)) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) * hpSup.QHeaShcExc_flow - (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))))) then (1e6 * hpSup.QCooShcNoCyc_flow * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni)) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)) * hpSup.QCooShcExc_flow) / 0.001) ^ 2.0) * (hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) - hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0))) + 0.5 * (hpSup.QHeaShcExc_flow * (if noEvent(hpSup.QHeaShcNoCyc_flow > (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) or hpSup.QHeaShcNoCyc_flow < (-(0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))) then 1/hpSup.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QHeaShcNoCyc_flow < (5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni) and hpSup.QHeaShcNoCyc_flow > (-(5e-4 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QHeaShcNoCyc_flow) / (hpSup.QHeaShc_flow_nominal * hpSup.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QHeaShcNoCyc_flow, (0.001 * hpSup.QHeaShc_flow_nominal) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, -(15000.0 * CAST(Real, hpSup.nUni)) / hpSup.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * hpSup.QHeaShc_flow_nominal / CAST(Real, hpSup.nUni))) ^ 6.0)) + hpSup.QCooShcExc_flow * (if noEvent(hpSup.QCooShcNoCyc_flow > (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) or hpSup.QCooShcNoCyc_flow < (-(0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))) then 1/hpSup.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hpSup.QCooShcNoCyc_flow < (5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni) and hpSup.QCooShcNoCyc_flow > (-(5e-4 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni))))))) then (1e6 * CAST(Real, hpSup.nUni) * CAST(Real, hpSup.nUni) * hpSup.QCooShcNoCyc_flow) / (abs(hpSup.QCooShc_flow_nominal) * abs(hpSup.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hpSup.QCooShcNoCyc_flow, (0.001 * abs(hpSup.QCooShc_flow_nominal)) / CAST(Real, hpSup.nUni), (1000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), -(15000.0 * CAST(Real, hpSup.nUni)) / abs(hpSup.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hpSup.QCooShc_flow_nominal) / CAST(Real, hpSup.nUni))) ^ 6.0)))))) else 0.0; ($RES_SIM_202) BLOCK: Single Strong Component (status = Solve.UNPROCESSED, size = 1) ----------------------------------------------------------------------- ### Variable: protected Real hpSup.QCooShc_flow ### Equation: [SCAL] (1) hpSup.QCooShc_flow = if hpSup.nUniShc > 0 then ((-1.0) + CAST(Real, hpSup.nUniShc) + hpSup.ratCycShc) * hpSup.QCooShcNoCyc_flow else 0.0; ($RES_SIM_217) BLOCK: Single Strong Component (status = Solve.UNPROCESSED, size = 1) ----------------------------------------------------------------------- ### Variable: protected Real hpSup.QCooSetResMea_flow ### Equation: [SCAL] (1) hpSup.QCooSetResMea_flow = hpSup.QCooSetMea_flow - (hpSup.QCooShcCyc_flow + hpSup.QCooShc_flow); ($RES_SIM_198) BLOCK: Single Strong Component (status = Solve.UNPROCESSED, size = 1) ----------------------------------------------------------------------- ### Variable: protected Integer hpSup.nUniCooRaw ### Equation: [SCAL] (1) hpSup.nUniCooRaw = max(hpSup.useCooShc, hpSup.useCoo) * integer(ceil(((hpSup.QCooSetResMea_flow - 0.01 * hpSup.QCoo_flow_nominal) / hpSup.SPLR) / min($FUN_7), 6), 7); ($RES_SIM_196) BLOCK: Single Strong Component (status = Solve.UNPROCESSED, size = 1) ----------------------------------------------------------------------- ### Variable: Integer $PRE.hpSup.nUniCoo ### Equation: [SCAL] (1) $PRE.hpSup.nUniCoo = hpSup.nUniCooRaw; ($RES_SIM_31) BLOCK: Multi Strong Component (status = Solve.UNPROCESSED, size = 1) ---------------------------------------------------------------------- ### Variables: [DISS] (1) Integer hpSup.nUniHea (start = 0) ### Equation: [ALGO] (1) ($RES_SIM_272) [----] $TMP.hpSup.nUniCoo := if time >= ($PRE.hpSup.entryTime + hpSup.dtRun) then $PRE.hpSup.nUniCoo + (if (hpSup.nUniCooRaw > $PRE.hpSup.nUniCoo and hpSup.nUniShc <= $PRE.hpSup.nUniShc) and hpSup.nUniHea + hpSup.nUniShc + $PRE.hpSup.nUniCoo < hpSup.nUni then 1 else if ($PRE.hpSup.nUniCoo > 0 and hpSup.nUniShc >= $PRE.hpSup.nUniShc) and (hpSup.nUniCooRaw < $PRE.hpSup.nUniCoo or hpSup.nUniHea + hpSup.nUniShc + $PRE.hpSup.nUniCoo > hpSup.nUni) then -1 else 0) else $PRE.hpSup.nUniCoo; BLOCK: Algebraic Loop (Linear = false, Mixed = false, Homotopy = false, size = 2) ----------------------------------------------------------------------------------- Strict Tearing Set ******************** ### Iteration Variables: [DISC] (1) protected Integer hpSup.nUniHeaRaw (fixed = true, start = 0) [PRE-] (1) Integer $PRE.hpSup.nUniHea ### Residual Equations: [SCAL] (1) $PRE.hpSup.nUniHea = hpSup.nUniHeaRaw; ($RES_SIM_32) [ALGO] (1) ($RES_SIM_273) [----] hpSup.nUniHea := if time >= ($PRE.hpSup.entryTime + hpSup.dtRun) then $PRE.hpSup.nUniHea + (if (hpSup.nUniHeaRaw > $PRE.hpSup.nUniHea and hpSup.nUniShc <= $PRE.hpSup.nUniShc) and hpSup.nUniShc + $PRE.hpSup.nUniHea < hpSup.nUni then 1 else if ($PRE.hpSup.nUniHea > 0 and hpSup.nUniShc >= $PRE.hpSup.nUniShc) and (hpSup.nUniHeaRaw < $PRE.hpSup.nUniHea or $PRE.hpSup.nUniHea + hpSup.nUniShc + $PRE.hpSup.nUniCoo > hpSup.nUni) then -1 else 0) else $PRE.hpSup.nUniHea; ### Inner Equations: BLOCK: Single Strong Component (status = Solve.UNPROCESSED, size = 1) ----------------------------------------------------------------------- ### Variable: protected Real hpSup.QHeaShc_flow ### Equation: [SCAL] (1) hpSup.QHeaShc_flow = if hpSup.nUniShc > 0 then ((-1.0) + CAST(Real, hpSup.nUniShc) + hpSup.ratCycShc) * hpSup.QHeaShcNoCyc_flow else 0.0; ($RES_SIM_205) BLOCK: Single Strong Component (status = Solve.UNPROCESSED, size = 1) ----------------------------------------------------------------------- ### Variable: protected Real hpSup.QHeaSetResMea_flow ### Equation: [SCAL] (1) hpSup.QHeaSetResMea_flow = hpSup.QHeaSetMea_flow - (hpSup.QHeaShcCyc_flow + hpSup.QHeaShc_flow); ($RES_SIM_199) " [Timeout remaining time 297] [Calling sys.exit(0), Time elapsed: 9.707470625638962]