Running: ./testmodel.py --libraries=/home/hudson/saved_omc/libraries/.openmodelica/libraries --ompython_omhome=/usr Buildings_13_Buildings.Fluid.HeatPumps.ModularReversible.RefrigerantCycle.BaseClasses.Validation.TableData2DLoadDepSHCVariable.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.001963/0.001963, allocations: 80.88 kB / 21.56 MB, free: 2.934 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.00274/0.00274, allocations: 167.8 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.684/1.684, allocations: 177.1 MB / 205.4 MB, free: 5.039 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.299/3.299, 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.TableData2DLoadDepSHCVariable,tolerance=1e-06,outputFormat="empty",numberOfIntervals=2500,variableFilter="",fileNamePrefix="Buildings_13_Buildings.Fluid.HeatPumps.ModularReversible.RefrigerantCycle.BaseClasses.Validation.TableData2DLoadDepSHCVariable") translateModel(Buildings.Fluid.HeatPumps.ModularReversible.RefrigerantCycle.BaseClasses.Validation.TableData2DLoadDepSHCVariable,tolerance=1e-06,outputFormat="empty",numberOfIntervals=2500,variableFilter="",fileNamePrefix="Buildings_13_Buildings.Fluid.HeatPumps.ModularReversible.RefrigerantCycle.BaseClasses.Validation.TableData2DLoadDepSHCVariable") [Timeout 300] "Notification: Performance of FrontEnd - Absyn->SCode: time 3.086e-05/3.086e-05, allocations: 6.25 kB / 0.776 GB, free: 5.309 MB / 0.7292 GB Notification: Performance of NFInst.instantiate(Buildings.Fluid.HeatPumps.ModularReversible.RefrigerantCycle.BaseClasses.Validation.TableData2DLoadDepSHCVariable): time 0.008183/0.008214, allocations: 3.928 MB / 0.7798 GB, free: 1.406 MB / 0.7292 GB Notification: Performance of NFInst.instExpressions: time 0.02089/0.0291, allocations: 8.914 MB / 0.7886 GB, free: 8.512 MB / 0.7448 GB Notification: Performance of NFInst.updateImplicitVariability: time 0.001759/0.03086, allocations: 27.75 kB / 0.7886 GB, free: 8.484 MB / 0.7448 GB Notification: Performance of NFTyping.typeComponents: time 0.001806/0.03267, allocations: 387.2 kB / 0.7889 GB, free: 8.105 MB / 0.7448 GB Notification: Performance of NFTyping.typeBindings: time 0.003839/0.0365, allocations: 0.7383 MB / 0.7897 GB, free: 7.367 MB / 0.7448 GB Notification: Performance of NFTyping.typeClassSections: time 0.008621/0.04513, allocations: 2.453 MB / 0.7921 GB, free: 4.938 MB / 0.7448 GB Notification: Performance of NFFlatten.flatten: time 0.004972/0.0501, allocations: 2.079 MB / 0.7941 GB, free: 2.875 MB / 0.7448 GB Notification: Performance of NFFlatten.resolveConnections: time 0.0007746/0.05087, allocations: 132.8 kB / 0.7942 GB, free: 2.727 MB / 0.7448 GB Notification: Performance of NFEvalConstants.evaluate: time 0.004442/0.05531, allocations: 1.356 MB / 0.7955 GB, free: 1.387 MB / 0.7448 GB Notification: Performance of NFSimplifyModel.simplify: time 0.002424/0.05774, allocations: 0.8407 MB / 0.7964 GB, free: 0.5469 MB / 0.7448 GB Notification: Performance of NFPackage.collectConstants: time 0.0003287/0.05807, allocations: 104.5 kB / 0.7965 GB, free: 456 kB / 0.7448 GB Notification: Performance of NFFlatten.collectFunctions: time 0.002198/0.06027, allocations: 0.7378 MB / 0.7972 GB, free: 15.71 MB / 0.7605 GB Notification: Performance of combineBinaries: time 0.003204/0.06347, allocations: 2.048 MB / 0.7992 GB, free: 13.65 MB / 0.7605 GB Notification: Performance of replaceArrayConstructors: time 0.001206/0.06468, allocations: 0.936 MB / 0.8001 GB, free: 12.71 MB / 0.7605 GB Notification: Performance of NFVerifyModel.verify: time 0.0002754/0.06495, allocations: 60 kB / 0.8002 GB, free: 12.66 MB / 0.7605 GB Notification: Performance of FrontEnd: time 0.0003003/0.06525, allocations: 28.78 kB / 0.8002 GB, free: 12.63 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: 120 (116) * Number of variables: 120 (112) Notification: Performance of [SIM] Bindings: time 0.01001/0.07526, allocations: 5.47 MB / 0.8055 GB, free: 6.988 MB / 0.7605 GB Notification: Performance of [SIM] FunctionAlias: time 0.002901/0.07816, allocations: 1.225 MB / 0.8067 GB, free: 5.742 MB / 0.7605 GB Notification: Performance of [SIM] Early Inline: time 0.145/0.2231, allocations: 72.11 MB / 0.8771 GB, free: 13.19 MB / 0.8386 GB Notification: Performance of [SIM] Simplify 1: time 0.03664/0.2598, allocations: 16.47 MB / 0.8932 GB, free: 12.98 MB / 0.8542 GB Notification: Performance of [SIM] Alias: time 0.04799/0.3078, allocations: 17.54 MB / 0.9104 GB, free: 11.18 MB / 0.8698 GB Notification: Performance of [SIM] Simplify 2: time 0.01905/0.3268, allocations: 8.415 MB / 0.9186 GB, free: 2.859 MB / 0.8698 GB Notification: Performance of [SIM] Remove Stream: time 0.009078/0.3359, allocations: 2.638 MB / 0.9212 GB, free: 188 kB / 0.8698 GB Notification: Performance of [SIM] Detect States: time 0.02633/0.3622, allocations: 11.31 MB / 0.9322 GB, free: 4.785 MB / 0.8855 GB Notification: Performance of [SIM] Events: time 0.007935/0.3702, allocations: 3.391 MB / 0.9355 GB, free: 1.383 MB / 0.8855 GB Notification: Performance of [SIM] Partitioning: time 0.04143/0.4116, allocations: 15.35 MB / 0.9505 GB, free: 1.926 MB / 0.9011 GB Notification: Performance of [SIM] Causalize: time 0.02729/0.4389, allocations: 9.948 MB / 0.9602 GB, free: 7.914 MB / 0.9167 GB Notification: Performance of [SIM] After Index Reduction Inline: time 0.07841/0.5173, allocations: 36.26 MB / 0.9956 GB, free: 3.605 MB / 0.948 GB Notification: Performance of [INI] Simplify: time 0.03822/0.5555, allocations: 13.74 MB / 1.009 GB, free: 6.004 MB / 0.9636 GB Notification: Performance of [INI] Inline: time 0.8464/1.402, allocations: 68.76 MB / 1.076 GB, free: 240.3 MB / 0.9948 GB Notification: Performance of [INI] Partitioning: time 0.0006034/1.403, allocations: 95.7 kB / 1.076 GB, free: 240.2 MB / 0.9948 GB Notification: Performance of [INI] Cleanup: time 0.02302/1.426, allocations: 10.01 MB / 1.086 GB, free: 236.4 MB / 0.9948 GB Notification: Performance of [INI] Causalize: time 0.04328/1.469, allocations: 19.81 MB / 1.105 GB, free: 223.7 MB / 0.9948 GB Error: Internal error NFExpression.makeZero failed for: (Real, Integer) Notification: Performance of [INI] Tearing: time 0.06638/1.535, allocations: 51.36 MB / 1.156 GB, free: 172.1 MB / 0.9948 GB Notification: Performance of [SIM] Initialization: time 4.539e-06/1.535, allocations: 4 kB / 1.156 GB, free: 172.1 MB / 0.9948 GB Notification: Performance of [SIM] Remove Dummies: time 3.089e-05/1.535, allocations: 5.109 kB / 1.156 GB, free: 172.1 MB / 0.9948 GB Error: Internal error NFExpression.makeZero failed for: (Real, Integer) Notification: Performance of [SIM] Tearing: time 0.06325/1.598, allocations: 51.23 MB / 1.206 GB, free: 119.7 MB / 0.9948 GB Notification: Performance of [SIM] Categorize: time 3.181e-05/1.599, allocations: 11.52 kB / 1.206 GB, free: 119.7 MB / 0.9948 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_99 = (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_99) [SCAL] (1) $RES_SIM_123 = (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_123) [SCAL] (1) $RES_SIM_93 = (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_93) [SCAL] (1) $RES_SIM_117 = (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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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))[$i22]) for $i22 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_117) [SCAL] (1) $RES_SIM_114 = (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))[$i21]) for $i21 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_114) [SCAL] (1) $RES_SIM_105 = (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_105) [SCAL] (1) $RES_SIM_96 = (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_96) [SCAL] (1) $RES_SIM_111 = (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_111) [SCAL] (1) $RES_SIM_126 = (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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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))[$i23]) for $i23 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_126) ### 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_120) 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_108) 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_87) 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_102) 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_83) 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_9), 6), 7); ($RES_SIM_81) BLOCK: Single Strong Component (status = Solve.UNPROCESSED, size = 1) ----------------------------------------------------------------------- ### Variable: Integer $PRE.hpSup.nUniCoo ### Equation: [SCAL] (1) $PRE.hpSup.nUniCoo = hpSup.nUniCooRaw; ($RES_SIM_25) BLOCK: Multi Strong Component (status = Solve.UNPROCESSED, size = 1) ---------------------------------------------------------------------- ### Variables: [DISS] (1) Integer hpSup.nUniHea (start = 0) ### Equation: [ALGO] (1) ($RES_SIM_157) [----] $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_26) [ALGO] (1) ($RES_SIM_158) [----] 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_90) 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_84) " [Timeout remaining time 298] [Calling sys.exit(0), Time elapsed: 8.224106155335903]