Running: ./testmodel.py --libraries=/home/hudson/saved_omc/libraries/.openmodelica/libraries --ompython_omhome=/usr Buildings_13_Buildings.Fluid.HeatPumps.ModularReversible.Validation.TableData2DLoadDepSHC.conf.json loadFile("/home/hudson/saved_omc/libraries/.openmodelica/libraries/ModelicaServices 4.1.0+maint.om/package.mo", uses=false) [Timeout 180] "Notification: Performance of loadFile(/home/hudson/saved_omc/libraries/.openmodelica/libraries/ModelicaServices 4.1.0+maint.om/package.mo): time 0.002005/0.002005, 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.002291/0.002291, allocations: 166.4 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.776/1.776, allocations: 177.1 MB / 205.4 MB, free: 5.082 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.229/3.229, allocations: 389.5 MB / 0.6361 GB, free: 12.34 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.Validation.TableData2DLoadDepSHC,tolerance=1e-06,outputFormat="empty",numberOfIntervals=2500,variableFilter="",fileNamePrefix="Buildings_13_Buildings.Fluid.HeatPumps.ModularReversible.Validation.TableData2DLoadDepSHC") translateModel(Buildings.Fluid.HeatPumps.ModularReversible.Validation.TableData2DLoadDepSHC,tolerance=1e-06,outputFormat="empty",numberOfIntervals=2500,variableFilter="",fileNamePrefix="Buildings_13_Buildings.Fluid.HeatPumps.ModularReversible.Validation.TableData2DLoadDepSHC") [Timeout 300] "Notification: Performance of FrontEnd - Absyn->SCode: time 2.734e-05/2.734e-05, allocations: 2.312 kB / 0.776 GB, free: 5.336 MB / 0.7292 GB [/home/hudson/saved_omc/libraries/.openmodelica/libraries/Buildings 13.0.2-maint.13.x/Templates/Plants/Controls/Utilities/PlaceholderReal.mo:9:3-12:47:writable] Warning: Parameter hp.TAmbIn.u_internal has no value, and is fixed during initialization (fixed=true), using available start value (start=0) as default value. Notification: Performance of NFInst.instantiate(Buildings.Fluid.HeatPumps.ModularReversible.Validation.TableData2DLoadDepSHC): time 0.05404/0.05407, allocations: 32.4 MB / 0.8076 GB, free: 4.879 MB / 0.7605 GB Notification: Performance of NFInst.instExpressions: time 0.04703/0.1011, allocations: 16.09 MB / 0.8233 GB, free: 4.848 MB / 0.7761 GB Notification: Performance of NFInst.updateImplicitVariability: time 0.009344/0.1104, allocations: 194.4 kB / 0.8235 GB, free: 4.656 MB / 0.7761 GB Notification: Performance of NFTyping.typeComponents: time 0.006512/0.117, allocations: 1.439 MB / 0.8249 GB, free: 3.211 MB / 0.7761 GB Notification: Performance of NFTyping.typeBindings: time 0.01343/0.1304, allocations: 3.244 MB / 0.8281 GB, free: 15.97 MB / 0.7917 GB Notification: Performance of NFTyping.typeClassSections: time 0.01192/0.1423, allocations: 3.398 MB / 0.8314 GB, free: 12.59 MB / 0.7917 GB Notification: Performance of NFFlatten.flatten: time 0.02037/0.1627, allocations: 10.5 MB / 0.8417 GB, free: 2.062 MB / 0.7917 GB Notification: Performance of NFFlatten.resolveConnections: time 0.01223/0.1749, allocations: 3.537 MB / 0.8451 GB, free: 14.46 MB / 0.8074 GB Notification: Performance of NFEvalConstants.evaluate: time 0.01845/0.1934, allocations: 5.383 MB / 0.8504 GB, free: 9.09 MB / 0.8074 GB Notification: Performance of NFSimplifyModel.simplify: time 0.007633/0.201, allocations: 2.538 MB / 0.8529 GB, free: 6.547 MB / 0.8074 GB Notification: Performance of NFPackage.collectConstants: time 0.002427/0.2034, allocations: 460 kB / 0.8533 GB, free: 6.098 MB / 0.8074 GB Notification: Performance of NFFlatten.collectFunctions: time 0.008122/0.2116, allocations: 1.957 MB / 0.8552 GB, free: 4.137 MB / 0.8074 GB Notification: Performance of combineBinaries: time 0.01651/0.2281, allocations: 7.43 MB / 0.8625 GB, free: 12.66 MB / 0.823 GB Notification: Performance of replaceArrayConstructors: time 0.007839/0.2359, allocations: 4.174 MB / 0.8665 GB, free: 8.461 MB / 0.823 GB Notification: Performance of NFVerifyModel.verify: time 0.00271/0.2386, allocations: 328 kB / 0.8668 GB, free: 8.141 MB / 0.823 GB Notification: Performance of FrontEnd: time 0.001558/0.2402, allocations: 131.4 kB / 0.867 GB, free: 8.012 MB / 0.823 GB Notification: Model statistics after passing the front-end and creating the data structures used by the back-end: * Number of equations: 562 (541) * Number of variables: 562 (537) Notification: Performance of [SIM] Bindings: time 0.04526/0.2854, allocations: 20.65 MB / 0.8871 GB, free: 2.836 MB / 0.8386 GB Notification: Performance of [SIM] FunctionAlias: time 0.009034/0.2945, allocations: 3.756 MB / 0.8908 GB, free: 15.07 MB / 0.8542 GB Notification: Performance of [SIM] Early Inline: time 0.1715/0.466, allocations: 98.19 MB / 0.9867 GB, free: 13.03 MB / 0.948 GB Notification: Performance of [SIM] Simplify 1: time 0.04808/0.5141, allocations: 23.7 MB / 1.01 GB, free: 5.629 MB / 0.9636 GB Warning: NBAlias.selectStartByConfidence: Alias set with conflicting unfixed start values of equal confidence detected. Use -d=dumprepl for more information. Notification: Performance of [SIM] Alias: time 0.07949/0.5936, allocations: 34.01 MB / 1.043 GB, free: 2.355 MB / 0.9949 GB Notification: Performance of [SIM] Simplify 2: time 0.02518/0.6187, allocations: 12.08 MB / 1.055 GB, free: 6.359 MB / 1.01 GB Notification: Performance of [SIM] Remove Stream: time 0.009918/0.6287, allocations: 3.556 MB / 1.058 GB, free: 2.727 MB / 1.01 GB Notification: Performance of [SIM] Detect States: time 0.6748/1.303, allocations: 14.53 MB / 1.073 GB, free: 219.2 MB / 1.01 GB Notification: Performance of [SIM] Events: time 0.009991/1.313, allocations: 3.998 MB / 1.076 GB, free: 219.1 MB / 1.01 GB Notification: Performance of [SIM] Partitioning: time 0.04522/1.359, allocations: 18.7 MB / 1.095 GB, free: 215.2 MB / 1.01 GB Notification: Performance of [SIM] Causalize: time 0.0512/1.41, allocations: 22.46 MB / 1.117 GB, free: 208.3 MB / 1.01 GB Notification: Performance of [SIM] After Index Reduction Inline: time 0.06451/1.474, allocations: 46.36 MB / 1.162 GB, free: 173 MB / 1.01 GB Notification: Performance of [INI] Simplify: time 0.05342/1.528, allocations: 23.61 MB / 1.185 GB, free: 151.6 MB / 1.01 GB Notification: Performance of [INI] Inline: time 0.142/1.67, allocations: 89.32 MB / 1.272 GB, free: 66.79 MB / 1.01 GB Notification: Performance of [INI] Partitioning: time 0.001481/1.671, allocations: 230.9 kB / 1.272 GB, free: 66.5 MB / 1.01 GB Notification: Performance of [INI] Cleanup: time 0.04119/1.712, allocations: 20.1 MB / 1.292 GB, free: 46.34 MB / 1.01 GB Notification: Performance of [INI] Causalize: time 0.1813/1.894, allocations: 58.46 MB / 1.349 GB, free: 3.184 MB / 1.026 GB Error: Internal error NFExpression.makeZero failed for: (Real, Integer) Notification: Performance of [INI] Tearing: time 0.1951/2.089, allocations: 119.1 MB / 1.465 GB, free: 11.18 MB / 1.151 GB Notification: Performance of [SIM] Initialization: time 4.619e-06/2.089, allocations: 0 / 1.465 GB, free: 11.18 MB / 1.151 GB Notification: Performance of [SIM] Remove Dummies: time 7.912e-05/2.089, allocations: 9.641 kB / 1.465 GB, free: 11.18 MB / 1.151 GB Error: Internal error NFExpression.makeZero failed for: (Real, Integer) Notification: Performance of [SIM] Tearing: time 0.684/2.773, allocations: 59.28 MB / 1.523 GB, free: 329.2 MB / 1.167 GB Notification: Performance of [SIM] Categorize: time 6.119e-05/2.773, allocations: 14.52 kB / 1.523 GB, free: 329.2 MB / 1.167 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 hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo (start = 0) [ALGB] (1) protected final Real hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcCyc_flow [ALGB] (1) protected final Real hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaShcCyc (start = 1.0) [ALGB] (1) protected final Real hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow [ALGB] (1) protected final Real hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcLoa [ALGB] (1) protected final Real hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSaf [ALGB] (1) protected final Real hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow [ALGB] (1) protected final Real hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow [ALGB] (1) protected final Real hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcCyc_flow [ALGB] (1) protected final Real hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooShcCyc (start = 1.0) ### Residual Equations: [SCAL] (1) $RES_SIM_260 = (if hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc > 0 then (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaShcCyc, 1)[1] else 0.0) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcCyc_flow; ($RES_SIM_260) [SCAL] (1) $RES_SIM_284 = (if hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc > 0 then smooth(1, if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.PLRHea_max - smooth(1, if noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * ((CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow), 1)[1] / 0.001) ^ 2.0) * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * ((CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow), 1)[1] / 0.001) ^ 2.0) * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1]) else if noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.PLRHea_max - smooth(1, if noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * ((CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow), 1)[1] / 0.001) ^ 2.0) * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1]) < (-0.001))) then hp.refCyc.refCycHeaPumHea.calQUseP.PLRHea_max else 0.25 * (hp.refCyc.refCycHeaPumHea.calQUseP.PLRHea_max - smooth(1, if noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * ((CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow), 1)[1] / 0.001) ^ 2.0) * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1])) * ((-3.0) + ((hp.refCyc.refCycHeaPumHea.calQUseP.PLRHea_max - smooth(1, if noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * ((CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow), 1)[1] > 0.001) then Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * ((CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow), 1)[1] else if noEvent(noEvent(noEvent(noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * ((CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow), 1)[1] < (-0.001))))) then 0.0 else 0.5 * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * ((CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow), 1)[1] - 250.0 * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * ((CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow), 1)[1] * ((-3.0) + (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * ((CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow), 1)[1] / 0.001) ^ 2.0) * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * ((CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow), 1)[1])) / 0.001) ^ 2.0) * (1000.0 * (hp.refCyc.refCycHeaPumHea.calQUseP.PLRHea_max - smooth(1, if noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * ((CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow), 1)[1] / 0.001) ^ 2.0) * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1]))) + 0.5 * (smooth(1, if noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * ((CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow), 1)[1] / 0.001) ^ 2.0) * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaSor), ((hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1]) + hp.refCyc.refCycHeaPumHea.calQUseP.PLRHea_max)) else 0.0) - hp.refCyc.refCycHeaPumHea.calQUseP.PLRHeaShcCyc; ($RES_SIM_284) [SCAL] (1) $RES_SIM_254 = (if hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc > 0 then Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), hp.refCyc.refCycHeaPumHea.calQUseP.PLRShc, 1)[1] else 0.0) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow; ($RES_SIM_254) [SCAL] (1) $RES_SIM_278 = (if hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc > 0 then smooth(1, if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.PLRShc_max - smooth(1, if noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1] > 0.001) then Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1] else if noEvent(noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1] < (-0.001))) then Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1] else 250.0 * (Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1] - Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1]) * ((-3.0) + ((Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc))), 1)[1]) / 0.001) ^ 2.0) * (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1]) + 0.5 * (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1] + Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1])) > 0.001) then smooth(1, if noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1] > 0.001) then Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1] else if noEvent(noEvent(noEvent(noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1] < (-0.001))))) then Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1] else 250.0 * (Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1] - Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1]) * ((-3.0) + ((Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc))), 1)[1]) / 0.001) ^ 2.0) * (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1]) + 0.5 * (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1] + Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1])) else if noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.PLRShc_max - smooth(1, if noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1] > 0.001) then Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1] else if noEvent(noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1] < (-0.001))) then Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1] else 250.0 * (Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1] - Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1]) * ((-3.0) + ((Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc))), 1)[1]) / 0.001) ^ 2.0) * (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1]) + 0.5 * (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1] + Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1])) < (-0.001))) then hp.refCyc.refCycHeaPumHea.calQUseP.PLRShc_max else 0.25 * (hp.refCyc.refCycHeaPumHea.calQUseP.PLRShc_max - smooth(1, if noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1] > 0.001) then Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1] else if noEvent(noEvent(noEvent(noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1] < (-0.001))))) then Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1] else 250.0 * (Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1] - Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1]) * ((-3.0) + ((Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc))), 1)[1]) / 0.001) ^ 2.0) * (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1]) + 0.5 * (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1] + Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1]))) * ((-3.0) + ((hp.refCyc.refCycHeaPumHea.calQUseP.PLRShc_max - smooth(1, if noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc))), 1)[1] > 0.001) then Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)), 1)[1] else if noEvent(noEvent(noEvent(noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc))), 1)[1] < (-0.001))))) then Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc))), 1)[1] else 0.5 * (Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc))), 1)[1] + Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)), 1)[1]) + 250.0 * (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc))), 1)[1]) * ((-3.0) + ((Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc))), 1)[1]) / 0.001) ^ 2.0) * (Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc))), 1)[1] - Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)), 1)[1]))) / 0.001) ^ 2.0) * (1000.0 * (hp.refCyc.refCycHeaPumHea.calQUseP.PLRShc_max - smooth(1, if noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1] > 0.001) then Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1] else if noEvent(noEvent(noEvent(noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1] < (-0.001))))) then Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1] else 250.0 * (Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1] - Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1]) * ((-3.0) + ((Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc))), 1)[1]) / 0.001) ^ 2.0) * (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1]) + 0.5 * (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1] + Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1])))) + 0.5 * (smooth(1, if noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1] > 0.001) then Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1] else if noEvent(noEvent(noEvent(noEvent(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1] < (-0.001))))) then Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1] else 250.0 * (Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1] - Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1]) * ((-3.0) + ((Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc))), 1)[1]) / 0.001) ^ 2.0) * (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1] - Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1]) + 0.5 * (Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1] + Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i22]) for $i22 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1])) + hp.refCyc.refCycHeaPumHea.calQUseP.PLRShc_max)) else 0.0) - hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcLoa; ($RES_SIM_278) [SCAL] (1) $RES_SIM_275 = (if hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc > 0 then min(Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcInt_flow), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSaf_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)), 1)[1], Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow))[$i21]) for $i21 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooSaf_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo))), 1)[1]) else 0.0) - hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSaf; ($RES_SIM_275) [SCAL] (1) $RES_SIM_266 = (if hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc > 0 then Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSor), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcInt_flow), hp.refCyc.refCycHeaPumHea.calQUseP.PLRShc, 1)[1] else 0.0) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow; ($RES_SIM_266) [SCAL] (1) $RES_SIM_257 = (if hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc > 0 then max(0.0, CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) * (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea)))) else 0.0) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow; ($RES_SIM_257) [SCAL] (1) $RES_SIM_272 = (if hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc > 0 then (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) * Modelica.Math.Vectors.interpolate(cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow), hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooShcCyc, 1)[1] else 0.0) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcCyc_flow; ($RES_SIM_272) [SCAL] (1) $RES_SIM_287 = (if hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc > 0 then smooth(1, if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.PLRCoo_max - smooth(1, if noEvent(Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * abs((CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) * hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow), 1)[1] / 0.001) ^ 2.0) * Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * abs((CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) * hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow), 1)[1] / 0.001) ^ 2.0) * Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1]) else if noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.PLRCoo_max - smooth(1, if noEvent(Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * abs((CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) * hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow), 1)[1] / 0.001) ^ 2.0) * Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1]) < (-0.001))) then hp.refCyc.refCycHeaPumHea.calQUseP.PLRCoo_max else 0.25 * (hp.refCyc.refCycHeaPumHea.calQUseP.PLRCoo_max - smooth(1, if noEvent(Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * abs((CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) * hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow), 1)[1] / 0.001) ^ 2.0) * Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1])) * ((-3.0) + ((hp.refCyc.refCycHeaPumHea.calQUseP.PLRCoo_max - smooth(1, if noEvent(Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * abs((CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) * hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow), 1)[1] > 0.001) then Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * abs((CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) * hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow), 1)[1] else if noEvent(noEvent(noEvent(noEvent(Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * abs((CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) * hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow), 1)[1] < (-0.001))))) then 0.0 else 0.5 * Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * abs((CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) * hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow), 1)[1] - 250.0 * Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * abs((CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) * hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow), 1)[1] * ((-3.0) + (Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * abs((CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) * hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow), 1)[1] / 0.001) ^ 2.0) * Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * abs((CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) * hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow), 1)[1])) / 0.001) ^ 2.0) * (1000.0 * (hp.refCyc.refCycHeaPumHea.calQUseP.PLRCoo_max - smooth(1, if noEvent(Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * abs((CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) * hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow), 1)[1] / 0.001) ^ 2.0) * Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1]))) + 0.5 * (smooth(1, if noEvent(Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.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}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)) * abs((CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) * hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow), 1)[1] / 0.001) ^ 2.0) * Modelica.Math.Vectors.interpolate({abs((cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.QCooInt_flow))[$i23]) for $i23 in 1:2}, cat(1, {0.0}, hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooSor), abs((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow * CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc)) / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow) * (if noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > 0.001 or 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < (-0.001)) then 1/(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else if noEvent(noEvent(noEvent(noEvent(noEvent(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc < 5e-4 and 1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc > (-5e-4)))))) then 1e6 * (1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(1.0 - hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc, 0.001, 1000.0, -15000.0, 1.19e8, -3.61e11, 5.34e14, -3.8e17, 1.04e20)), 1)[1]) + hp.refCyc.refCycHeaPumHea.calQUseP.PLRCoo_max)) else 0.0) - hp.refCyc.refCycHeaPumHea.calQUseP.PLRCooShcCyc; ($RES_SIM_287) ### Inner Equations: BLOCK: Single Strong Component (status = Solve.UNPROCESSED, size = 1) ----------------------------------------------------------------------- ### Variable: protected final Real hp.refCyc.refCycHeaPumHea.calQUseP.PLRShc ### Equation: [SCAL] (1) hp.refCyc.refCycHeaPumHea.calQUseP.PLRShc = if hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc > 0 then min(hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcSaf, hp.refCyc.refCycHeaPumHea.calQUseP.PLRShcLoa) else 0.0; ($RES_SIM_281) BLOCK: Single Strong Component (status = Solve.UNPROCESSED, size = 1) ----------------------------------------------------------------------- ### Variable: protected final Real hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow ### Equation: [SCAL] (1) hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow = if hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc > 0 then min(0.0, CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) * (hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow - hp.refCyc.refCycHeaPumHea.calQUseP.QCooSet_flow / CAST(Real, max(1, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo)))) else 0.0; ($RES_SIM_269) BLOCK: Single Strong Component (status = Solve.UNPROCESSED, size = 1) ----------------------------------------------------------------------- ### Variable: protected final Real hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc ### Equation: [SCAL] (1) hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc = if hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc > 0 then 1.0 - smooth(1, if noEvent((-1.0) + smooth(1, if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) > 0.001) then hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) else if noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) < (-0.001))) then hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) else 250.0 * (hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0))) * ((-3.0) + (((if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow - (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow) / 0.001) ^ 2.0) * (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0))) + 0.5 * (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) + hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)))) > 0.001) then 1.0 else if noEvent(noEvent((-1.0) + smooth(1, if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) > 0.001) then hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) else if noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) < (-0.001))) then hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) else 250.0 * (hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0))) * ((-3.0) + (((if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow - (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow) / 0.001) ^ 2.0) * (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0))) + 0.5 * (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) + hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)))) < (-0.001))) then smooth(1, if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) > 0.001) then hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) else if noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) < (-0.001))))) then hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) else 250.0 * (hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0))) * ((-3.0) + (((if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow - (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow) / 0.001) ^ 2.0) * (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0))) + 0.5 * (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) + hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)))) else 0.25 * ((-1.0) + smooth(1, if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) > 0.001) then hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) else if noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) < (-0.001))))) then hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) else 250.0 * (hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0))) * ((-3.0) + (((if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow - (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow) / 0.001) ^ 2.0) * (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0))) + 0.5 * (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) + hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0))))) * ((-3.0) + (((-1.0) + smooth(1, if noEvent((if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow - (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow > 0.001) then (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow else if noEvent(noEvent(noEvent(noEvent((if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow - (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow < (-0.001))))) then (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow else 0.5 * ((if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow + (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow) + 250.0 * ((if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow - (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow) * ((-3.0) + (((if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow - (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow) / 0.001) ^ 2.0) * ((if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow - (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow))) / 0.001) ^ 2.0) * (1000.0 * ((-1.0) + smooth(1, if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) > 0.001) then hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) else if noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) < (-0.001))))) then hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) else 250.0 * (hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0))) * ((-3.0) + (((if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow - (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow) / 0.001) ^ 2.0) * (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0))) + 0.5 * (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) + hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)))))) + 0.5 * (1.0 + smooth(1, if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) > 0.001) then hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) else if noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) < (-0.001))))) then hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) else 250.0 * (hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) - hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0))) * ((-3.0) + (((if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow - (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)) * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow) / 0.001) ^ 2.0) * (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) - hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0))) + 0.5 * (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal or hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < (-3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow < 1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal and hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow > (-1.6666666666666666e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal)))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow) / (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow, 3.333333333333333e-4 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 3000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, -45000.0 / hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal, 119.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow_nominal / 3.0)) ^ 6.0)) + hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcExc_flow * (if noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) or hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < (-3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))) then 1/hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else if noEvent(noEvent(noEvent(noEvent(noEvent(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow < 1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) and hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow > (-1.6666666666666666e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal))))))) then (9e6 * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow) / (abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal)) else Buildings.Utilities.Math.Functions.BaseClasses.smoothTransition(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow, 3.333333333333333e-4 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 3000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), -45000.0 / abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal), 119.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 2.0, -361.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 3.0, 534.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 4.0, -380.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 5.0, 104.0 * (1.0 / (0.001 * abs(hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow_nominal) / 3.0)) ^ 6.0)))))) else 0.0; ($RES_SIM_248) BLOCK: Single Strong Component (status = Solve.UNPROCESSED, size = 1) ----------------------------------------------------------------------- ### Variable: protected final Real hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow ### Equation: [SCAL] (1) hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow = if hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc > 0 then ((-1.0) + CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) + hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) * hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcNoCyc_flow else 0.0; ($RES_SIM_263) BLOCK: Single Strong Component (status = Solve.UNPROCESSED, size = 1) ----------------------------------------------------------------------- ### Variable: protected final Real hp.refCyc.refCycHeaPumHea.calQUseP.QCooSetResMea_flow ### Equation: [SCAL] (1) hp.refCyc.refCycHeaPumHea.calQUseP.QCooSetResMea_flow = hp.refCyc.refCycHeaPumHea.calQUseP.QCooSetMea_flow - (hp.refCyc.refCycHeaPumHea.calQUseP.QCooShcCyc_flow + hp.refCyc.refCycHeaPumHea.calQUseP.QCooShc_flow); ($RES_SIM_244) BLOCK: Single Strong Component (status = Solve.UNPROCESSED, size = 1) ----------------------------------------------------------------------- ### Variable: protected final Integer hp.refCyc.refCycHeaPumHea.calQUseP.nUniCooRaw ### Equation: [SCAL] (1) hp.refCyc.refCycHeaPumHea.calQUseP.nUniCooRaw = max(hp.refCyc.refCycHeaPumHea.calQUseP.useCooShc, hp.refCyc.refCycHeaPumHea.calQUseP.useCoo) * integer(ceil(((hp.refCyc.refCycHeaPumHea.calQUseP.QCooSetResMea_flow - 0.01 * hp.refCyc.refCycHeaPumHea.calQUseP.QCoo_flow_nominal) / hp.refCyc.refCycHeaPumHea.calQUseP.SPLR) / min($FUN_9), 6), 7); ($RES_SIM_242) BLOCK: Single Strong Component (status = Solve.UNPROCESSED, size = 1) ----------------------------------------------------------------------- ### Variable: Integer $PRE.hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo ### Equation: [SCAL] (1) $PRE.hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo = hp.refCyc.refCycHeaPumHea.calQUseP.nUniCooRaw; ($RES_SIM_42) BLOCK: Multi Strong Component (status = Solve.UNPROCESSED, size = 1) ---------------------------------------------------------------------- ### Variables: [DISS] (1) Integer hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea (start = 0) ### Equation: [ALGO] (1) ($RES_SIM_318) [----] $TMP.hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo := if time >= ($PRE.hp.refCyc.refCycHeaPumHea.calQUseP.entryTime + hp.refCyc.refCycHeaPumHea.calQUseP.dtRun) then $PRE.hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo + (if (hp.refCyc.refCycHeaPumHea.calQUseP.nUniCooRaw > $PRE.hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo and hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc <= $PRE.hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) and hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + $PRE.hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo < 3 then 1 else if ($PRE.hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo > 0 and hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc >= $PRE.hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) and (hp.refCyc.refCycHeaPumHea.calQUseP.nUniCooRaw < $PRE.hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo or hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + $PRE.hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo > 3) then -1 else 0) else $PRE.hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo; BLOCK: Algebraic Loop (Linear = false, Mixed = false, Homotopy = false, size = 2) ----------------------------------------------------------------------------------- Strict Tearing Set ******************** ### Iteration Variables: [DISC] (1) protected final Integer hp.refCyc.refCycHeaPumHea.calQUseP.nUniHeaRaw (fixed = true, start = 0) [PRE-] (1) Integer $PRE.hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea ### Residual Equations: [SCAL] (1) $PRE.hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea = hp.refCyc.refCycHeaPumHea.calQUseP.nUniHeaRaw; ($RES_SIM_43) [ALGO] (1) ($RES_SIM_319) [----] hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea := if time >= ($PRE.hp.refCyc.refCycHeaPumHea.calQUseP.entryTime + hp.refCyc.refCycHeaPumHea.calQUseP.dtRun) then $PRE.hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea + (if (hp.refCyc.refCycHeaPumHea.calQUseP.nUniHeaRaw > $PRE.hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea and hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc <= $PRE.hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) and hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + $PRE.hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea < 3 then 1 else if ($PRE.hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea > 0 and hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc >= $PRE.hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) and (hp.refCyc.refCycHeaPumHea.calQUseP.nUniHeaRaw < $PRE.hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea or $PRE.hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea + hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc + $PRE.hp.refCyc.refCycHeaPumHea.calQUseP.nUniCoo > 3) then -1 else 0) else $PRE.hp.refCyc.refCycHeaPumHea.calQUseP.nUniHea; ### Inner Equations: BLOCK: Single Strong Component (status = Solve.UNPROCESSED, size = 1) ----------------------------------------------------------------------- ### Variable: protected final Real hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow ### Equation: [SCAL] (1) hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow = if hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc > 0 then ((-1.0) + CAST(Real, hp.refCyc.refCycHeaPumHea.calQUseP.nUniShc) + hp.refCyc.refCycHeaPumHea.calQUseP.ratCycShc) * hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcNoCyc_flow else 0.0; ($RES_SIM_251) BLOCK: Single Strong Component (status = Solve.UNPROCESSED, size = 1) ----------------------------------------------------------------------- ### Variable: protected final Real hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSetResMea_flow ### Equation: [SCAL] (1) hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSetResMea_flow = hp.refCyc.refCycHeaPumHea.calQUseP.QHeaSetMea_flow - (hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShcCyc_flow + hp.refCyc.refCycHeaPumHea.calQUseP.QHeaShc_flow); ($RES_SIM_245) " [Timeout remaining time 297] [Calling sys.exit(0), Time elapsed: 9.453111688606441]