Running: ./testmodel.py --libraries=/home/hudson/saved_omc/libraries/.openmodelica/libraries/ --ompython_omhome=/usr AixLib_latest_AixLib.Fluid.BoilerCHP.Examples.BoilerSystem.conf.json loadFile("/home/hudson/saved_omc/libraries/.openmodelica/libraries/ModelicaServices 4.0.0+maint.om/package.mo", uses=false) loadFile("/home/hudson/saved_omc/libraries/.openmodelica/libraries/Complex 4.0.0+maint.om/package.mo", uses=false) loadFile("/home/hudson/saved_omc/libraries/.openmodelica/libraries/Modelica 4.0.0+maint.om/package.mo", uses=false) loadFile("/home/hudson/saved_omc/libraries/.openmodelica/libraries/Modelica_DeviceDrivers 2.1.1/package.mo", uses=false) loadFile("/home/hudson/saved_omc/libraries/.openmodelica/libraries/SDF master/package.mo", uses=false) loadFile("/home/hudson/saved_omc/libraries/.openmodelica/libraries/AixLib 1.4.0-development/package.mo", uses=false) Using package AixLib with version 1.4.0 (/home/hudson/saved_omc/libraries/.openmodelica/libraries/AixLib 1.4.0-development/package.mo) Using package SDF with version 0.0.0 (/home/hudson/saved_omc/libraries/.openmodelica/libraries/SDF master/package.mo) Using package Modelica_DeviceDrivers with version 2.1.1 (/home/hudson/saved_omc/libraries/.openmodelica/libraries/Modelica_DeviceDrivers 2.1.1/package.mo) Using package Modelica with version 4.0.0 (/home/hudson/saved_omc/libraries/.openmodelica/libraries/Modelica 4.0.0+maint.om/package.mo) Using package Complex with version 4.0.0 (/home/hudson/saved_omc/libraries/.openmodelica/libraries/Complex 4.0.0+maint.om/package.mo) Using package ModelicaServices with version 4.0.0 (/home/hudson/saved_omc/libraries/.openmodelica/libraries/ModelicaServices 4.0.0+maint.om/package.mo) Running command: translateModel(AixLib.Fluid.BoilerCHP.Examples.BoilerSystem,tolerance=1e-06,outputFormat="empty",numberOfIntervals=2880,variableFilter="",fileNamePrefix="AixLib_latest_AixLib.Fluid.BoilerCHP.Examples.BoilerSystem") translateModel(AixLib.Fluid.BoilerCHP.Examples.BoilerSystem,tolerance=1e-06,outputFormat="empty",numberOfIntervals=2880,variableFilter="",fileNamePrefix="AixLib_latest_AixLib.Fluid.BoilerCHP.Examples.BoilerSystem") Notification: Performance of loadFile(/home/hudson/saved_omc/libraries/.openmodelica/libraries/ModelicaServices 4.0.0+maint.om/package.mo): time 0.001086/0.001086, allocations: 104.7 kB / 16.37 MB, free: 6.367 MB / 14.72 MB Notification: Performance of loadFile(/home/hudson/saved_omc/libraries/.openmodelica/libraries/Complex 4.0.0+maint.om/package.mo): time 0.00108/0.00108, allocations: 195.3 kB / 17.31 MB, free: 5.91 MB / 14.72 MB Notification: Performance of loadFile(/home/hudson/saved_omc/libraries/.openmodelica/libraries/Modelica 4.0.0+maint.om/package.mo): time 1.145/1.145, allocations: 222.9 MB / 241 MB, free: 15.18 MB / 206.1 MB Notification: Performance of loadFile(/home/hudson/saved_omc/libraries/.openmodelica/libraries/Modelica_DeviceDrivers 2.1.1/package.mo): time 0.05118/0.05118, allocations: 12.03 MB / 303.2 MB, free: 3.129 MB / 238.1 MB Notification: Performance of loadFile(/home/hudson/saved_omc/libraries/.openmodelica/libraries/SDF master/package.mo): time 0.0004689/0.0004693, allocations: 27.95 kB / 356.3 MB, free: 14 MB / 302.1 MB [/home/hudson/saved_omc/libraries/.openmodelica/libraries/AixLib 1.4.0-development/Obsolete/YearIndependent/FastHVAC/Components/HeatExchangers/RadiatorMultiLayer.mo:265:34-265:6228:writable] Warning: Lexer treating \ as \\, since \ is not a valid Modelica escape sequence. [/home/hudson/saved_omc/libraries/.openmodelica/libraries/AixLib 1.4.0-development/Obsolete/YearIndependent/FastHVAC/Components/HeatExchangers/RadiatorMultiLayer.mo:265:34-265:6853:writable] Warning: Lexer treating \ as \\, since \ is not a valid Modelica escape sequence. [/home/hudson/saved_omc/libraries/.openmodelica/libraries/AixLib 1.4.0-development/Obsolete/YearIndependent/FastHVAC/Components/HeatExchangers/RadiatorMultiLayer.mo:265:34-265:8435:writable] Warning: Lexer treating \ as \\, since \ is not a valid Modelica escape sequence. [/home/hudson/saved_omc/libraries/.openmodelica/libraries/AixLib 1.4.0-development/Obsolete/YearIndependent/FastHVAC/Components/HeatExchangers/RadiatorMultiLayer.mo:265:34-265:9369:writable] Warning: Lexer treating \ as \\, since \ is not a valid Modelica escape sequence. [/home/hudson/saved_omc/libraries/.openmodelica/libraries/AixLib 1.4.0-development/Obsolete/YearIndependent/FastHVAC/Components/HeatExchangers/RadiatorMultiLayer.mo:265:34-265:11505:writable] Warning: Lexer treating \ as \\, since \ is not a valid Modelica escape sequence. [/home/hudson/saved_omc/libraries/.openmodelica/libraries/AixLib 1.4.0-development/Obsolete/YearIndependent/FastHVAC/Components/HeatExchangers/RadiatorMultiLayer.mo:265:34-265:12875:writable] Warning: Lexer treating \ as \\, since \ is not a valid Modelica escape sequence. [/home/hudson/saved_omc/libraries/.openmodelica/libraries/AixLib 1.4.0-development/ThermalZones/HighOrder/Components/Examples/DryAir/DryAir_test.mo:71:18-71:405:writable] Warning: Lexer treating \ as \\, since \ is not a valid Modelica escape sequence. [/home/hudson/saved_omc/libraries/.openmodelica/libraries/AixLib 1.4.0-development/ThermalZones/HighOrder/Components/DryAir/InfiltrationRate_DIN12831.mo:20:192-20:2066:writable] Warning: Lexer treating \ as \\, since \ is not a valid Modelica escape sequence. [/home/hudson/saved_omc/libraries/.openmodelica/libraries/AixLib 1.4.0-development/ThermalZones/HighOrder/Components/DryAir/InfiltrationRate_DIN12831.mo:20:192-20:4252:writable] Warning: Lexer treating \ as \\, since \ is not a valid Modelica escape sequence. [/home/hudson/saved_omc/libraries/.openmodelica/libraries/AixLib 1.4.0-development/DataBase/Weather/SurfaceOrientation/SurfaceOrientationData_N_E_S_W_RoofN_Roof_S.mo:5:35-5:362:writable] Warning: Lexer treating \ as \\, since \ is not a valid Modelica escape sequence. [/home/hudson/saved_omc/libraries/.openmodelica/libraries/AixLib 1.4.0-development/DataBase/Weather/SurfaceOrientation/SurfaceOrientationData_N_E_S_W_Hor.mo:5:35-5:320:writable] Warning: Lexer treating \ as \\, since \ is not a valid Modelica escape sequence. [/home/hudson/saved_omc/libraries/.openmodelica/libraries/AixLib 1.4.0-development/DataBase/Weather/SurfaceOrientation/SurfaceOrientationData_NE_SE_SW_NW_Hor.mo:5:35-5:324:writable] Warning: Lexer treating \ as \\, since \ is not a valid Modelica escape sequence. [/home/hudson/saved_omc/libraries/.openmodelica/libraries/AixLib 1.4.0-development/DataBase/CHP/CHPDataSimple/CHP_XRGI_9kWel.mo:25:34-25:588:writable] Warning: Lexer treating \ as \\, since \ is not a valid Modelica escape sequence. [/home/hudson/saved_omc/libraries/.openmodelica/libraries/AixLib 1.4.0-development/DataBase/CHP/CHPDataSimple/CHP_XRGI_9kWel.mo:25:34-25:3852:writable] Warning: Lexer treating \ as \\, since \ is not a valid Modelica escape sequence. [/home/hudson/saved_omc/libraries/.openmodelica/libraries/AixLib 1.4.0-development/DataBase/CHP/CHPDataSimple/CHP_Cleanergy_C9G.mo:36:34-36:594:writable] Warning: Lexer treating \ as \\, since \ is not a valid Modelica escape sequence. [/home/hudson/saved_omc/libraries/.openmodelica/libraries/AixLib 1.4.0-development/BoundaryConditions/InternalGains/Examples/InternalGains/Machines.mo:31:20-31:400:writable] Warning: Lexer treating \ as \\, since \ is not a valid Modelica escape sequence. [/home/hudson/saved_omc/libraries/.openmodelica/libraries/AixLib 1.4.0-development/BoundaryConditions/InternalGains/Examples/InternalGains/Lights.mo:27:20-27:398:writable] Warning: Lexer treating \ as \\, since \ is not a valid Modelica escape sequence. Notification: Performance of loadFile(/home/hudson/saved_omc/libraries/.openmodelica/libraries/AixLib 1.4.0-development/package.mo): time 1.64/1.64, allocations: 272.3 MB / 0.6656 GB, free: 18.25 MB / 478.1 MB Notification: Performance of FrontEnd - Absyn->SCode: time 1.964e-05/1.972e-05, allocations: 2.281 kB / 0.7863 GB, free: 12.91 MB / 0.5607 GB Notification: Performance of NFInst.instantiate(AixLib.Fluid.BoilerCHP.Examples.BoilerSystem): time 0.04023/0.04026, allocations: 48.01 MB / 0.8332 GB, free: 12.73 MB / 0.6075 GB Notification: Performance of NFInst.instExpressions: time 0.01409/0.05438, allocations: 11.49 MB / 0.8444 GB, free: 1.215 MB / 0.6075 GB Notification: Performance of NFInst.updateImplicitVariability: time 0.001041/0.05545, allocations: 59.69 kB / 0.8445 GB, free: 1.156 MB / 0.6075 GB Notification: Performance of NFTyping.typeComponents: time 0.002065/0.05752, allocations: 1.533 MB / 0.846 GB, free: 15.62 MB / 0.6232 GB Notification: Performance of NFTyping.typeBindings: time 0.003491/0.06102, allocations: 1.982 MB / 0.8479 GB, free: 13.62 MB / 0.6232 GB Notification: Performance of NFTyping.typeClassSections: time 0.005185/0.06625, allocations: 2.933 MB / 0.8508 GB, free: 10.71 MB / 0.6232 GB Notification: Performance of NFFlatten.flatten: time 0.004471/0.07073, allocations: 5.142 MB / 0.8558 GB, free: 5.547 MB / 0.6232 GB Notification: Performance of NFFlatten.resolveConnections: time 0.001854/0.07259, allocations: 1.837 MB / 0.8576 GB, free: 3.676 MB / 0.6232 GB Notification: Performance of NFEvalConstants.evaluate: time 0.003363/0.07596, allocations: 2.307 MB / 0.8598 GB, free: 1.363 MB / 0.6232 GB Notification: Performance of NFSimplifyModel.simplify: time 0.001356/0.07733, allocations: 1.522 MB / 0.8613 GB, free: 15.84 MB / 0.6388 GB Notification: Performance of NFPackage.collectConstants: time 0.0002349/0.07758, allocations: 224 kB / 0.8615 GB, free: 15.62 MB / 0.6388 GB Notification: Performance of NFFlatten.collectFunctions: time 0.003878/0.08146, allocations: 3.479 MB / 0.8649 GB, free: 12.13 MB / 0.6388 GB Notification: Performance of combineBinaries: time 0.002232/0.0837, allocations: 3.39 MB / 0.8682 GB, free: 8.707 MB / 0.6388 GB Notification: Performance of replaceArrayConstructors: time 0.001084/0.08479, allocations: 2.115 MB / 0.8703 GB, free: 6.562 MB / 0.6388 GB Notification: Performance of NFVerifyModel.verify: time 0.0003731/0.08517, allocations: 370.9 kB / 0.8706 GB, free: 6.199 MB / 0.6388 GB Notification: Performance of FrontEnd: time 0.0003391/0.08552, allocations: 83.44 kB / 0.8707 GB, free: 6.117 MB / 0.6388 GB Notification: Model statistics after passing the front-end and creating the data structures used by the back-end: * Number of equations: 315 (302) * Number of variables: 319 (300) Notification: Performance of Bindings: time 0.007473/0.093, allocations: 9.958 MB / 0.8805 GB, free: 11.86 MB / 0.6544 GB Notification: Performance of FunctionAlias: time 0.0007744/0.09378, allocations: 0.975 MB / 0.8814 GB, free: 10.89 MB / 0.6544 GB Notification: Performance of Early Inline: time 0.004522/0.09831, allocations: 5.494 MB / 0.8868 GB, free: 5.328 MB / 0.6544 GB Notification: Performance of simplify1: time 0.0003013/0.09862, allocations: 335.5 kB / 0.8871 GB, free: 5 MB / 0.6544 GB Notification: Performance of Alias: time 0.007839/0.1065, allocations: 8.257 MB / 0.8952 GB, free: 12.14 MB / 0.67 GB Notification: Performance of simplify2: time 0.0002311/0.1067, allocations: 243.7 kB / 0.8954 GB, free: 11.91 MB / 0.67 GB Notification: Performance of Events: time 0.0008275/0.1075, allocations: 0.8277 MB / 0.8962 GB, free: 11.07 MB / 0.67 GB Notification: Performance of Detect States: time 0.0008899/0.1084, allocations: 1.079 MB / 0.8972 GB, free: 9.98 MB / 0.67 GB Notification: Performance of Partitioning: time 0.001224/0.1097, allocations: 1.368 MB / 0.8986 GB, free: 8.477 MB / 0.67 GB Error: Internal error NBAdjacency.Matrix.create failed to create adjacency matrix for system: System Variables (142/163) **************************** (1) [DER-] (1) Real $DER.boiler.internalControl.TFlowHot (2) [ALGB] (1) Real[1] source.ports.p (start = {3e5}, min = {0.0 for $i1 in 1:1}, max = {1e8 for $i1 in 1:1}, nominal = {1e5 for $i1 in 1:1}) (3) [ALGB] (1) Real boiler.myExternalControl.timer.y (4) [DISS] (1) protected discrete Real boiler.myExternalControl.timer.entryTime (5) [DISC] (1) protected Boolean boiler.myExternalControl.lower.y (6) [DISC] (1) Boolean $SEV_27 (7) [ALGB] (2) Real[2] pipe.flowModel.rhos = {AixLib.Fluid.BoilerCHP.Examples.BoilerSystem.pipe.flowModel.Medium.density(pipe.flowModel.states[$i1]) for $i1 in 1:2} (start = {1.0 for $i1 in 1:2}, min = {0.0 for $i1 in 1:2}, max = {1e5 for $i1 in 1:2}, nominal = {1.0 for $i1 in 1:2}) (8) [DISC] (1) Boolean $SEV_26 (9) [ALGB] (1) Real[1] pipe.flowModel.mus_act (start = {0.001 for $i1 in 1:1}, min = {0.0 for $i1 in 1:1}, max = {1e8 for $i1 in 1:1}, nominal = {0.001 for $i1 in 1:1}) (10) [DISC] (1) Boolean $SEV_24 (11) [DISS] (1) protected discrete Real boiler.internalControl.ControlerHeater.triggeredTrapezoid.rate (12) [DISC] (1) Boolean $SEV_23 (13) [DER-] (1) Real $DER.boiler.vol.dynBal.U (14) [DISC] (1) Boolean $SEV_22 (15) [ALGB] (1) protected flow Real boiler.vol.heaFloSen.port_a.Q_flow (16) [DISC] (1) Boolean $SEV_21 (17) [DISC] (1) Boolean $SEV_20 (18) [ALGB] (2) Real[2] pipe.flowModel.mus = {AixLib.Fluid.BoilerCHP.Examples.BoilerSystem.pipe.flowModel.Medium.dynamicViscosity(pipe.flowModel.states[$i1]) for $i1 in 1:2} (start = {0.001 for $i1 in 1:2}, min = {0.0 for $i1 in 1:2}, max = {1e8 for $i1 in 1:2}, nominal = {0.001 for $i1 in 1:2}) (19) [ALGB] (1) Real boiler.internalControl.ControlerHeater.PI.controlError = (273.15 + boiler.myExternalControl.switchIncreasedSetTemp.y) - boiler.internalControl.ControlerHeater.switch1.y (20) [ALGB] (1) Real[1] pipe.flowModel.m_flows (start = {0.0 for $i1 in 1:1}, min = {-1e60 for $i1 in 1:1}, max = {1e5 for $i1 in 1:1}, StateSelect = default) (21) [ALGB] (1) protected Real boiler.senTHot.TMed (start = boiler.senTHot.T_start, min = 1.0, max = 1e4, nominal = 300.0) (22) [DISC] (1) Boolean $TEV_1 (23) [DISC] (1) Boolean $TEV_0 (24) [ALGB] (1) protected Real boiler.vol.dynBal.medium.state.p (start = 3e5, min = 0.0, max = 1e8, nominal = 1e5) (25) [ALGB] (1) protected Real boiler.senTCold.T_a_inflow (start = 293.15, min = 1.0, max = 1e4, nominal = 300.0) (26) [ALGB] (2) protected flow Real[2] boiler.vol.dynBal.ports.m_flow (min = {-1e5 for $i1 in 1:2}, max = {1e5 for $i1 in 1:2}) (27) [ALGB] (1) protected Real boiler.vol.dynBal.medium.T_degC = Modelica.Units.Conversions.to_degC(-((-273.15) - boiler.vol.dynBal.medium.T_degC)) (28) [ALGB] (1) Real[1] pipe.flowModel.Fs_p (29) [ALGB] (2) final Real[2] pipe.flowModel.dimensions = {(4.0 * pipe.crossArea) / pipe.perimeter, (4.0 * pipe.crossArea) / pipe.perimeter} (30) [DISC] (1) Boolean $SEV_19 (31) [DISC] (1) Boolean $SEV_18 (32) [DISC] (1) Boolean $SEV_17 (33) [DISC] (1) Boolean $SEV_14 (34) [ALGB] (1) protected Real boiler.senTCold.mNor_flow (35) [ALGB] (1) stream Real[1] sink.ports.h_outflow (min = {-1e10 for $i1 in 1:1}, max = {1e10 for $i1 in 1:1}, nominal = {1e6 for $i1 in 1:1}) (36) [DISC] (1) Boolean $SEV_12 (37) [DISC] (1) Boolean $SEV_11 (38) [DISC] (1) Boolean $SEV_10 (39) [ALGB] (1) protected Real boiler.senTCold.k (start = 1.0) (40) [DER-] (1) Real $DER.boiler.internalControl.ControlerHeater.PI.I.y (41) [ALGB] (1) Real boiler.internalControl.ControlerHeater.PI.addI.y (42) [ALGB] (1) Real[1] pipe.flowModel.Fs_fg (43) [ALGB] (1) stream Real pipe.port_b.h_outflow (min = -1e10, max = 1e10, nominal = 1e6) (44) [DISS] (1) protected discrete Real boiler.internalControl.ControlerHeater.triggeredTrapezoid.endValue (45) [ALGB] (1) Real boiler.myExternalControl.increase.u (46) [ALGB] (1) Real boiler.internalControl.ControlerHeater.PI.P.y (47) [ALGB] (1) Real[1] pipe.flowModel.Is (48) [ALGB] (1) Real $FUN_7 (49) [ALGB] (1) Real boiler.myExternalControl.increase.y (50) [ALGB] (1) Real boiler.internalControl.ControlerHeater.switch2.u1 (51) [ALGB] (1) Real $FUN_4 (52) [ALGB] (1) Real $FUN_3 (53) [ALGB] (1) Real $FUN_2 (54) [ALGB] (1) protected Real boiler.senTHot.mNor_flow (55) [ALGB] (1) Real boiler.internalControl.eEnergyMeter_P.p (56) [ALGB] (1) Real pipe.port_a.p (start = 3e5, min = 0.0, max = 1e8, nominal = 1e5) (57) [ALGB] (1) Real[1] pipe.flowModel.rhos_act (start = {1.0 for $i1 in 1:1}, min = {0.0 for $i1 in 1:1}, max = {1e5 for $i1 in 1:1}, nominal = {1.0 for $i1 in 1:1}) (58) [ALGB] (1) Real source.medium.p_bar = Modelica.Units.Conversions.to_bar(99999.99999999999 * source.medium.p_bar) (59) [DISC] (1) Boolean boiler.myExternalControl.and1.y (60) [ALGB] (1) protected Real pipe.flowModel.dp_fric_nominal = sum({AixLib.Fluid.BoilerCHP.Examples.BoilerSystem.pipe.flowModel.WallFriction.pressureLoss_m_flow(pipe.flowModel.m_flow_nominal / pipe.flowModel.nParallel, pipe.flowModel.rho_nominal, pipe.flowModel.rho_nominal, pipe.flowModel.mu_nominal, pipe.flowModel.mu_nominal, pipe.flowModel.pathLengths_internal[1], pipe.flowModel.diameters[1], ((pipe.flowModel.crossAreas[2:2] + pipe.flowModel.crossAreas[1:1]) / 2.0)[1], ((pipe.flowModel.roughnesses[2:2] + pipe.flowModel.roughnesses[1:1]) / 2.0)[1], pipe.flowModel.m_flow_small / pipe.flowModel.nParallel, pipe.flowModel.Res_turbulent_internal[1])}) (min = 0.0, nominal = 1e5) (61) [ALGB] (1) stream Real[1] source.ports.h_outflow (min = {-1e10 for $i1 in 1:1}, max = {1e10 for $i1 in 1:1}, nominal = {1e6 for $i1 in 1:1}) (62) [ALGB] (1) stream Real boiler.pressureDrop.port_a.h_outflow (start = 83680.0, min = -1e10, max = 1e10, nominal = 83680.0) (63) [DISS] (1) protected discrete Real boiler.internalControl.ControlerHeater.triggeredTrapezoid.T (64) [ALGB] (1) Real[1] pipe.flowModel.pathLengths_internal = pipe.flowModel.pathLengths (65) [ALGB] (1) Real boiler.m_flow = boiler.m_flow (start = boiler._m_flow_start) (66) [ALGB] (1) final Real[1] pipe.flowModel.pathLengths = {pipe.length} (67) [ALGB] (1) final Real[1] pipe.flowModel.dheights = {pipe.height_ab} (68) [ALGB] (1) Real[1] pipe.flowModel.dps_fg (start = {pipe.flowModel.p_a_start - pipe.flowModel.p_b_start for $i1 in 1:1}) (69) [ALGB] (1) Real $FUN_11 (70) [ALGB] (1) Real $FUN_10 (71) [ALGB] (1) stream Real boiler.pressureDrop.port_b.h_outflow (start = 83680.0, min = -1e10, max = 1e10, nominal = 83680.0) (72) [ALGB] (1) Real boiler.vol.p = boiler.vol.ports[1].p (73) [DISC] (1) Boolean $SEV_9 (74) [ALGB] (1) protected Real boiler.myExternalControl.higher.u (75) [DISC] (1) Boolean $SEV_8 (76) [DER-] (1) Real $DER.boiler.internalControl.eEnergyMeter_P.q_kWh (77) [DISC] (1) Boolean $SEV_7 (78) [DISC] (1) Boolean $SEV_6 (79) [DISC] (1) protected Boolean boiler.myExternalControl.higher.y (80) [ALGB] (2) Real[2] pipe.flowModel.vs = {boiler.pressureDrop.m_flow / (pipe.flowModel.crossAreas[1] * AixLib.Fluid.BoilerCHP.Examples.BoilerSystem.pipe.Medium.density(pipe.flowModel.states[1])), -(-boiler.pressureDrop.m_flow) / (AixLib.Fluid.BoilerCHP.Examples.BoilerSystem.pipe.Medium.density(pipe.flowModel.states[2]) * pipe.flowModel.crossAreas[2])} / pipe.nParallel (81) [ALGB] (1) Real boiler.internalControl.ControlerHeater.triggeredTrapezoid.y (82) [ALGB] (1) Real[1] pipe.flowModel.Res_turbulent_internal = pipe.flowModel.Re_turbulent * {1.0 for $i1 in 1:1} (83) [ALGB] (1) Real boiler.pressureDrop.m_flow = boiler.pressureDrop.m_flow (start = boiler.pressureDrop._m_flow_start, nominal = if boiler.pressureDrop.m_flow_nominal_pos > 1e-15 then boiler.pressureDrop.m_flow_nominal_pos else 1.0) (84) [ALGB] (1) Real boiler.heater.Q_flow (85) [ALGB] (1) Real pipe.port_b.p (start = 3e5, min = 0.0, max = 1e8, nominal = 1e5) (86) [ALGB] (1) protected Real boiler.senTCold.TMed (start = boiler.senTCold.T_start, min = 1.0, max = 1e4, nominal = 300.0) (87) [ALGB] (1) Real boiler.internalControl.product.u2 (88) [ALGB] (1) Real boiler.internalControl.ControlerHeater.switch1.y (89) [ALGB] (2) final Real[2] pipe.flowModel.roughnesses = {pipe.roughness, pipe.roughness} (min = {0.0 for $i1 in 1:2}) (90) [ALGB] (1) Real sine.y (91) [ALGB] (1) Real boiler.pressureDrop.dp = boiler.pressureDrop.port_a.p - pipe.port_a.p (start = boiler.pressureDrop._dp_start, nominal = if boiler.pressureDrop.dp_nominal_pos > 1e-15 then boiler.pressureDrop.dp_nominal_pos else 1.0) (92) [ALGB] (1) Real boiler.internalControl.eEnergyMeter_S.p (93) [ALGB] (1) Real boiler.internalControl.ControlerHeater.PI.addPID.y (94) [ALGB] (1) Real boiler.myExternalControl.switchIncreasedSetTemp.y (95) [ALGB] (1) protected Real boiler.senTCold.T_b_inflow (start = 293.15, min = 1.0, max = 1e4, nominal = 300.0) (96) [ALGB] (1) protected Real boiler.vol.dynBal.Hb_flow (97) [ALGB] (1) protected Real boiler.myExternalControl.flowTempNight.y (98) [ALGB] (1) protected Real boiler.senTHot.k (start = 1.0) (99) [ALGB] (1) protected Real boiler.vol.dynBal.medium.p_bar = Modelica.Units.Conversions.to_bar(99999.99999999999 * boiler.vol.dynBal.medium.p_bar) (100) [ALGB] (1) protected Real boiler.myExternalControl.flowTempDay.y (101) [ALGB] (1) Real boiler.pressureDrop.port_a.p (start = 3e5, min = 0.0, max = 1e8, nominal = 1e5) (102) [ALGB] (2) flow Real[2] boiler.vol.ports.m_flow (min = {-1e5 for $i1 in 1:2}, max = {1e5 for $i1 in 1:2}) (103) [DER-] (1) Real $DER.boiler.senTCold.T (104) [ALGB] (1) Real boiler.internalControl.ControlerHeater.PI.gainTrack.y (105) [ALGB] (1) Real boiler.internalControl.ControlerHeater.product.y (106) [DISC] (2) Boolean[2] $SEV_33[$i1] (107) [ALGB] (1) Real source.medium.state.p (start = 3e5, min = 0.0, max = 1e8, nominal = 1e5) (108) [ALGB] (1) Real boiler.internalControl.QNormated.y (109) [ALGB] (1) protected Real boiler.vol.dynBal.medium.d (start = boiler.vol.dynBal.rho_start, min = 0.0, max = 1e5, nominal = 1.0) (110) [ALGB] (1) flow Real[1] source.ports.m_flow (min = {-1e60}, max = {1e60}) (111) [ALGB] (2) Real[2] boiler.vol.ports.p (start = {3e5 for $ports1 in 1:2}, min = {0.0 for $i1 in 1:2}, max = {1e8 for $i1 in 1:2}, nominal = {1e5 for $i1 in 1:2}) (112) [ALGB] (4) input Real[2, 2] pipe.flowModel.states.p (start = {3e5 for $states1 in 1:2}, min = {0.0 for $i1 in 1:2}, max = {1e8 for $i1 in 1:2}, nominal = {1e5 for $i1 in 1:2}) (113) [ALGB] (2) protected Real[2] boiler.vol.dynBal.ports.p (start = {3e5 for $ports1 in 1:2}, min = {0.0 for $i1 in 1:2}, max = {1e8 for $i1 in 1:2}, nominal = {1e5 for $i1 in 1:2}) (114) [ALGB] (1) flow Real[1] sink.ports.m_flow (min = {-1e60}, max = {1e60}) (115) [ALGB] (1) protected Real boiler.vol.dynBal.medium.u (min = -1e8, max = 1e8, nominal = 1e6) (116) [ALGB] (1) Real boiler.internalControl.ControlerHeater.PI.addSat.y (117) [ALGB] (1) protected Real boiler.internalControl.ControlerHeater.PI.limiter.simplifiedExpr (118) [ALGB] (1) Real boiler.dp = boiler.senTCold.port_b.p - pipe.port_a.p (start = boiler._dp_start) (119) [ALGB] (1) protected Real boiler.vol.dynBal.mb_flow (120) [ALGB] (1) Real boiler.internalControl.ControlerHeater.PI.addP.y (121) [ALGB] (1) Real boiler.senTCold.port_b.p (start = 3e5, min = 0.0, max = 1e8, nominal = 1e5) (122) [ALGB] (2) final Real[2] pipe.flowModel.crossAreas = {pipe.crossArea, pipe.crossArea} (123) [ALGB] (2) stream Real[2] boiler.vol.ports.h_outflow (min = {-1e10 for $i1 in 1:2}, max = {1e10 for $i1 in 1:2}, nominal = {1e6 for $i1 in 1:2}) (124) [DISC] (1) Boolean $SEV_35 (125) [DISC] (1) Boolean boiler.internalControl.isOn (126) [DISC] (1) Boolean $SEV_34 (127) [ALGB] (1) Real boiler.myExternalControl.noIncrease.y (128) [ALGB] (4) input Real[2, 2] pipe.flowModel.states.T (start = {293.15 for $states1 in 1:2}, min = {1.0 for $i1 in 1:2}, max = {1e4 for $i1 in 1:2}, nominal = {300.0 for $i1 in 1:2}) (129) [ALGB] (2) protected Real[2] boiler.vol.dynBal.ports_H_flow (min = {-1e8 for $i1 in 1:2}, max = {1e8 for $i1 in 1:2}, nominal = {1000.0 for $i1 in 1:2}) (130) [ALGB] (1) Real[1] sink.ports.p (start = {3e5}, min = {0.0 for $i1 in 1:1}, max = {1e8 for $i1 in 1:1}, nominal = {1e5 for $i1 in 1:1}) (131) [DER-] (1) Real $DER.boiler.vol.dynBal.m (132) [ALGB] (1) protected Real[1] pipe.flowModel.diameters = 0.5 * (pipe.flowModel.dimensions[2:2] + pipe.flowModel.dimensions[1:1]) (133) [DER-] (1) Real $DER.boiler.internalControl.eEnergyMeter_S.q_kWh (134) [ALGB] (1) Real[1] boiler.internalControl.efficiencyTable.u (135) [ALGB] (1) Real boiler.internalControl.ControlerHeater.PI.gainPID.y (136) [DISC] (1) Boolean boiler.myExternalControl.controlerOnOff.onOff.u2 (137) [DISC] (2) Boolean[2] $SEV_32[$i1] (138) [DISC] (1) Boolean boiler.myExternalControl.lessEqualThreshold.y (139) [ALGB] (1) protected Real boiler.vol.dynBal.medium.state.T (start = 293.15, min = 1.0, max = 1e4, nominal = 300.0) (140) [ALGB] (1) Real[1] boiler.internalControl.efficiencyTable.y (141) [ALGB] (1) Real[1] pipe.flowModel.Ib_flows (142) [ALGB] (2) protected stream Real[2] boiler.vol.dynBal.ports.h_outflow (min = {-1e10 for $i1 in 1:2}, max = {1e10 for $i1 in 1:2}, nominal = {1e6 for $i1 in 1:2}) System Equations (144/159) **************************** (1) [WHEN] (1)when {initial(), boiler.internalControl.isOn, not boiler.internalControl.isOn} then (1) [----] boiler.internalControl.ControlerHeater.triggeredTrapezoid.endValue := if boiler.internalControl.isOn then boiler.internalControl.ControlerHeater.triggeredTrapezoid.offset + boiler.internalControl.ControlerHeater.triggeredTrapezoid.amplitude else boiler.internalControl.ControlerHeater.triggeredTrapezoid.offset (1) [----] end when; (2) [WHEN] (1)when {initial(), boiler.internalControl.isOn, not boiler.internalControl.isOn} then (2) [----] boiler.internalControl.ControlerHeater.triggeredTrapezoid.T := if ((boiler.internalControl.isOn and not boiler.internalControl.ControlerHeater.triggeredTrapezoid.rising > 0.0 or not boiler.internalControl.isOn and not boiler.internalControl.ControlerHeater.triggeredTrapezoid.falling > 0.0) or not abs(boiler.internalControl.ControlerHeater.triggeredTrapezoid.amplitude) > 0.0) or initial() then time else time + (boiler.internalControl.ControlerHeater.triggeredTrapezoid.endValue - $PRE.boiler.internalControl.ControlerHeater.triggeredTrapezoid.y) / boiler.internalControl.ControlerHeater.triggeredTrapezoid.rate (2) [----] end when; (3) [SCAL] (1) boiler.internalControl.ControlerHeater.triggeredTrapezoid.y = if $SEV_14 then boiler.internalControl.ControlerHeater.triggeredTrapezoid.endValue - (boiler.internalControl.ControlerHeater.triggeredTrapezoid.T - time) * boiler.internalControl.ControlerHeater.triggeredTrapezoid.rate else boiler.internalControl.ControlerHeater.triggeredTrapezoid.endValue ($RES_SIM_82) (4) [SCAL] (1) boiler.internalControl.eEnergyMeter_P.p = if boiler.internalControl.isOn then boiler.internalControl.ControlerHeater.switch2.u1 else boiler.internalControl.ControlerHeater.product.y ($RES_SIM_83) (5) [SCAL] (1) boiler.pressureDrop.port_b.h_outflow = boiler.vol.ports[2].h_outflow ($RES_SIM_85) (6) [SCAL] (1) boiler.pressureDrop.dp = homotopy(AixLib.Fluid.BaseClasses.FlowModels.basicFlowFunction_m_flow(boiler.pressureDrop.m_flow, boiler.pressureDrop.k, boiler.pressureDrop.m_flow_turbulent), (boiler.pressureDrop.m_flow * boiler.pressureDrop.dp_nominal_pos) / boiler.pressureDrop.m_flow_nominal_pos) ($RES_SIM_87) (7) [SCAL] (1) boiler.senTHot.k = smooth(1, if $SEV_19 then boiler.senTHot.mNor_flow else if $SEV_20 then -boiler.senTHot.mNor_flow else if $SEV_21 then 0.25 * (-(boiler.senTHot.mNor_flow + boiler.senTHot.mNor_flow)) * ((-3.0) + (boiler.pressureDrop.m_flow / boiler.senTHot.m_flow_small) ^ 2.0) * (boiler.pressureDrop.m_flow / boiler.senTHot.m_flow_small) + 0.5 * (boiler.senTHot.mNor_flow - boiler.senTHot.mNor_flow) else 0.5 * (boiler.senTHot.mNor_flow - boiler.senTHot.mNor_flow)) ($RES_SIM_129) (8) [SCAL] (1) $TEV_0 = $PRE.boiler.myExternalControl.timer.entryTime ($RES_EVT_374) (9) [SCAL] (1) $TEV_1 = time < sine.startTime ($RES_EVT_375) (10) [SCAL] (1) sine.y = sine.offset + (if $TEV_1 then 0.0 else sine.amplitude * $FUN_10) ($RES_SIM_10) (11) [SCAL] (1) sink.ports[1].p = sink.p ($RES_SIM_12) (12) [SCAL] (1) sink.ports[1].h_outflow = 4184.0 * ((-273.15) + sink.T) ($RES_SIM_13) (13) [SCAL] (1) boiler.senTHot.mNor_flow = boiler.pressureDrop.m_flow / boiler.senTHot.m_flow_nominal ($RES_SIM_130) (14) [SCAL] (1) $DER.boiler.internalControl.TFlowHot = boiler.senTHot.k * (boiler.senTHot.TMed - boiler.internalControl.TFlowHot) * boiler.senTHot.tauInv ($RES_SIM_131) (15) [SCAL] (1) boiler.senTHot.TMed = smooth(1, if $SEV_19 then 273.15 + 2.390057361376673e-4 * boiler.pressureDrop.port_b.h_outflow else if $SEV_20 then 273.15 + 2.390057361376673e-4 * boiler.pressureDrop.port_a.h_outflow else if $SEV_21 then 0.25 * ((273.15 + 2.390057361376673e-4 * boiler.pressureDrop.port_a.h_outflow) - (273.15 + 2.390057361376673e-4 * boiler.pressureDrop.port_b.h_outflow)) * ((-3.0) + (boiler.pressureDrop.m_flow / boiler.senTHot.m_flow_small) ^ 2.0) * (boiler.pressureDrop.m_flow / boiler.senTHot.m_flow_small) + 0.5 * ((273.15 + 2.390057361376673e-4 * boiler.pressureDrop.port_b.h_outflow) + (273.15 + 2.390057361376673e-4 * boiler.pressureDrop.port_a.h_outflow)) else 0.5 * ((273.15 + 2.390057361376673e-4 * boiler.pressureDrop.port_b.h_outflow) + (273.15 + 2.390057361376673e-4 * boiler.pressureDrop.port_a.h_outflow))) ($RES_SIM_132) (16) [FOR-] (2) ($RES_SIM_94) (16) [----] for $i1 in 1:2 loop (16) [----] [SCAL] (1) boiler.vol.dynBal.ports[$i1].p = 99999.99999999999 * boiler.vol.dynBal.medium.p_bar ($RES_SIM_95) (16) [----] end for; (17) [SCAL] (1) -4184.0 * (273.15 - boiler.senTCold.T_a_inflow) = source.ports[1].h_outflow ($RES_SIM_135) (18) [SCAL] (1) boiler.vol.dynBal.ports[2].h_outflow = boiler.vol.ports[2].h_outflow ($RES_SIM_294) (19) [FOR-] (2) ($RES_SIM_96) (19) [----] for $i1 in 1:2 loop (19) [----] [SCAL] (1) boiler.vol.dynBal.ports[$i1].h_outflow = 4184.0 * ((-273.15) - ((-273.15) - boiler.vol.dynBal.medium.T_degC)) ($RES_SIM_97) (19) [----] end for; (20) [SCAL] (1) -4184.0 * (273.15 - boiler.senTCold.T_b_inflow) = boiler.vol.ports[1].h_outflow ($RES_SIM_136) (21) [SCAL] (1) boiler.vol.dynBal.ports[1].h_outflow = boiler.vol.ports[1].h_outflow ($RES_SIM_295) (22) [FOR-] (2) ($RES_SIM_296) (22) [----] for $i1 in 1:2 loop (22) [----] [SCAL] (1) boiler.vol.dynBal.ports[$i1].m_flow - boiler.vol.ports[$i1].m_flow = 0.0 ($RES_SIM_297) (22) [----] end for; (23) [SCAL] (1) $DER.boiler.vol.dynBal.m = boiler.vol.dynBal.mb_flow ($RES_SIM_98) (24) [SCAL] (1) $DER.boiler.vol.dynBal.U = boiler.vol.dynBal.Hb_flow + boiler.vol.heaFloSen.port_a.Q_flow ($RES_SIM_99) (25) [SCAL] (1) boiler.senTCold.k = smooth(1, if $SEV_22 then boiler.senTCold.mNor_flow else if $SEV_23 then -boiler.senTCold.mNor_flow else if $SEV_24 then 0.25 * (-(boiler.senTCold.mNor_flow + boiler.senTCold.mNor_flow)) * ((-3.0) + (boiler.m_flow / boiler.senTCold.m_flow_small) ^ 2.0) * (boiler.m_flow / boiler.senTCold.m_flow_small) + 0.5 * (boiler.senTCold.mNor_flow - boiler.senTCold.mNor_flow) else 0.5 * (boiler.senTCold.mNor_flow - boiler.senTCold.mNor_flow)) ($RES_SIM_139) (26) [ARRY] (2) boiler.vol.dynBal.ports.p = boiler.vol.ports.p ($RES_SIM_298) (27) [SCAL] (1) $SEV_6 = boiler.myExternalControl.higher.u < boiler.myExternalControl.lower.threshold ($RES_EVT_382) (28) [SCAL] (1) $SEV_7 = boiler.myExternalControl.higher.u > boiler.myExternalControl.higher.threshold ($RES_EVT_383) (29) [SCAL] (1) $SEV_8 = not isNight.k and boiler.myExternalControl.lessEqualThreshold.y ($RES_EVT_384) (30) [SCAL] (1) $SEV_9 = boiler.myExternalControl.timer.y <= boiler.myExternalControl.lessEqualThreshold.threshold ($RES_EVT_385) (31) [SCAL] (1) $SEV_10 = on.k and boiler.myExternalControl.controlerOnOff.onOff.u2 ($RES_EVT_386) (32) [SCAL] (1) $SEV_11 = boiler.internalControl.ControlerHeater.PI.limiter.simplifiedExpr > boiler.internalControl.ControlerHeater.PI.limiter.uMax ($RES_EVT_387) (33) [SCAL] (1) $SEV_12 = boiler.internalControl.ControlerHeater.PI.limiter.simplifiedExpr < boiler.internalControl.ControlerHeater.PI.limiter.uMin ($RES_EVT_388) (34) [SCAL] (1) boiler.senTCold.mNor_flow = boiler.m_flow / boiler.senTCold.m_flow_nominal ($RES_SIM_140) (35) [SCAL] (1) $DER.boiler.senTCold.T = boiler.senTCold.k * (boiler.senTCold.TMed - boiler.senTCold.T) * boiler.senTCold.tauInv ($RES_SIM_141) (36) [SCAL] (1) boiler.senTCold.TMed = smooth(1, if $SEV_22 then boiler.senTCold.T_a_inflow else if $SEV_23 then boiler.senTCold.T_b_inflow else if $SEV_24 then 0.25 * (boiler.senTCold.T_b_inflow - boiler.senTCold.T_a_inflow) * ((-3.0) + (boiler.m_flow / boiler.senTCold.m_flow_small) ^ 2.0) * (boiler.m_flow / boiler.senTCold.m_flow_small) + 0.5 * (boiler.senTCold.T_a_inflow + boiler.senTCold.T_b_inflow) else 0.5 * (boiler.senTCold.T_a_inflow + boiler.senTCold.T_b_inflow)) ($RES_SIM_142) (37) [SCAL] (1) boiler.pressureDrop.port_a.h_outflow = sink.ports[1].h_outflow + system.g * pipe.height_ab ($RES_SIM_146) (38) [SCAL] (1) pipe.port_b.h_outflow = boiler.pressureDrop.port_b.h_outflow - system.g * pipe.height_ab ($RES_SIM_147) (39) [SCAL] (1) boiler.pressureDrop.m_flow = pipe.flowModel.m_flows[1] ($RES_SIM_149) (40) [SCAL] (1) -source.m_flow = sum(source.ports.m_flow) ($RES_$AUX_340) (41) [SCAL] (1) $SEV_14 = time < boiler.internalControl.ControlerHeater.triggeredTrapezoid.T ($RES_EVT_390) (42) [SCAL] (1) $SEV_17 = boiler.vol.dynBal.medium.state.T < 278.15 ($RES_EVT_393) (43) [SCAL] (1) $SEV_18 = boiler.vol.dynBal.medium.state.T < 373.15 ($RES_EVT_394) (44) [SCAL] (1) $SEV_19 = boiler.pressureDrop.m_flow > boiler.senTHot.m_flow_small ($RES_EVT_395) (45) [SCAL] (1) $SEV_20 = boiler.pressureDrop.m_flow < (-boiler.senTHot.m_flow_small) ($RES_EVT_396) (46) [SCAL] (1) $SEV_21 = boiler.senTHot.m_flow_small > 0.0 ($RES_EVT_397) (47) [SCAL] (1) $SEV_22 = boiler.m_flow > boiler.senTCold.m_flow_small ($RES_EVT_398) (48) [SCAL] (1) $SEV_23 = boiler.m_flow < (-boiler.senTCold.m_flow_small) ($RES_EVT_399) (49) [SCAL] (1) boiler.myExternalControl.higher.u = boiler.internalControl.TFlowHot - (273.15 + boiler.myExternalControl.switchIncreasedSetTemp.y) ($RES_SIM_31) (50) [SCAL] (1) boiler.myExternalControl.lower.y = $SEV_6 ($RES_SIM_32) (51) [SCAL] (1) boiler.myExternalControl.higher.y = $SEV_7 ($RES_SIM_33) (52) [ARRY] (1) {0.0} = pipe.flowModel.Ib_flows - (pipe.flowModel.Fs_fg + pipe.flowModel.Fs_p) ($RES_SIM_150) (53) [ARRY] (1) pipe.flowModel.Is = {pipe.flowModel.m_flows[1] * pipe.flowModel.pathLengths[1]} ($RES_SIM_151) (54) [ARRY] (1) pipe.flowModel.dps_fg = {(2.0 * (pipe.flowModel.Fs_fg[1] / pipe.flowModel.nParallel)) / (pipe.flowModel.crossAreas[1] + pipe.flowModel.crossAreas[2])} ($RES_SIM_152) (55) [ARRY] (1) pipe.flowModel.Fs_p = pipe.flowModel.nParallel * {0.5 * (pipe.flowModel.crossAreas[1] + pipe.flowModel.crossAreas[2]) * (pipe.flowModel.states.T - pipe.flowModel.states.T)} ($RES_SIM_153) (56) [ARRY] (1) pipe.flowModel.Ib_flows = {0.0} ($RES_SIM_154) (57) [SCAL] (1) $SEV_24 = boiler.senTCold.m_flow_small > 0.0 ($RES_EVT_400) (58) [SCAL] (1) pipe.flowModel.rhos_act[1] = noEvent(if $SEV_26 then pipe.flowModel.rhos[1] else pipe.flowModel.rhos[2]) ($RES_SIM_155) (59) [SCAL] (1) pipe.flowModel.mus_act[1] = noEvent(if $SEV_26 then pipe.flowModel.mus[1] else pipe.flowModel.mus[2]) ($RES_SIM_156) (60) [SCAL] (1) $SEV_26 = pipe.flowModel.m_flows[1] > 0.0 ($RES_EVT_402) (61) [ARRY] (1) pipe.flowModel.m_flows = {homotopy(({$FUN_2} .* pipe.flowModel.nParallel)[1], (pipe.flowModel.m_flow_nominal / pipe.flowModel.dp_nominal * (pipe.flowModel.dps_fg - (pipe.flowModel.g * pipe.flowModel.dheights) .* pipe.flowModel.rho_nominal))[1])} ($RES_SIM_157) (62) [SCAL] (1) $FUN_2 = AixLib.Fluid.BoilerCHP.Examples.BoilerSystem.pipe.flowModel.WallFriction.massFlowRate_dp_staticHead(pipe.flowModel.dps_fg[1], pipe.flowModel.rhos[1], pipe.flowModel.rhos[2], pipe.flowModel.mus[1], pipe.flowModel.mus[2], pipe.flowModel.pathLengths_internal[1], pipe.flowModel.diameters[1], (pipe.flowModel.g * pipe.flowModel.dheights)[1], (0.5 .* (pipe.flowModel.crossAreas[1:1] + pipe.flowModel.crossAreas[2:2]))[1], (0.5 .* (pipe.flowModel.roughnesses[1:1] + pipe.flowModel.roughnesses[2:2]))[1], pipe.flowModel.dp_small, pipe.flowModel.Res_turbulent_internal[1]) ($RES_$AUX_339) (63) [SCAL] (1) $SEV_27 = abs(sum({abs(source.ports[1].m_flow)}) - abs(source.ports[1].m_flow)) <= 1e-60 ($RES_EVT_403) (64) [SCAL] (1) source.ports[1].p = 99999.99999999999 * source.medium.p_bar ($RES_SIM_158) (65) [SCAL] (1) $FUN_3 = semiLinear(boiler.vol.dynBal.ports[1].m_flow, -4184.0 * (273.15 - boiler.senTCold.T_a_inflow), boiler.vol.dynBal.ports[1].h_outflow) ($RES_$AUX_338) (66) [SCAL] (1) source.ports[1].h_outflow = 4184.0 * ((-273.15) + source.T) ($RES_SIM_159) (67) [SCAL] (1) $FUN_4 = semiLinear(boiler.vol.dynBal.ports[2].m_flow, boiler.pressureDrop.port_a.h_outflow, boiler.vol.dynBal.ports[2].h_outflow) ($RES_$AUX_337) (68) [SCAL] (1) boiler.vol.dynBal.mb_flow = sum(boiler.vol.dynBal.ports.m_flow) ($RES_$AUX_336) (69) [SCAL] (1) boiler.vol.dynBal.Hb_flow = sum(boiler.vol.dynBal.ports_H_flow) ($RES_$AUX_335) (70) [SCAL] (1) $FUN_7 = Modelica.Blocks.Tables.Internal.getTable1DValueNoDer2(boiler.internalControl.efficiencyTable.tableID, 1, boiler.internalControl.efficiencyTable.u[1]) ($RES_$AUX_334) (71) [FOR-] (2) ($RES_EVT_408) (71) [----] for $i1 in 1:2 loop (71) [----] [SCAL] (1) $SEV_32[$i1] = pipe.flowModel.states.p < 278.15 ($RES_EVT_409) (71) [----] end for; (72) [SCAL] (1) boiler.myExternalControl.flowTempNight.y = Modelica.Blocks.Tables.Internal.getTable2DValueNoDer2(boiler.myExternalControl.flowTempNight.tableID, (-273.15) + sine.y, boiler.myExternalControl.declinationConst.k) ($RES_$AUX_333) (73) [SCAL] (1) boiler.myExternalControl.flowTempDay.y = Modelica.Blocks.Tables.Internal.getTable2DValueNoDer2(boiler.myExternalControl.flowTempDay.tableID, (-273.15) + sine.y, boiler.myExternalControl.declinationConst.k) ($RES_$AUX_332) (74) [SCAL] (1) $FUN_10 = sin(6.283185307179586 * sine.f * (time - sine.startTime) + sine.phase) ($RES_$AUX_331) (75) [SCAL] (1) $FUN_11 = AixLib.Fluid.BoilerCHP.Examples.BoilerSystem.pipe.flowModel.WallFriction.pressureLoss_m_flow(pipe.flowModel.m_flow_nominal / pipe.flowModel.nParallel, pipe.flowModel.rho_nominal, pipe.flowModel.rho_nominal, pipe.flowModel.mu_nominal, pipe.flowModel.mu_nominal, pipe.flowModel.pathLengths_internal[1], pipe.flowModel.diameters[1], (0.5 .* (pipe.flowModel.crossAreas[2:2] + pipe.flowModel.crossAreas[1:1]))[1], (0.5 .* (pipe.flowModel.roughnesses[2:2] + pipe.flowModel.roughnesses[1:1]))[1], pipe.flowModel.m_flow_small / pipe.flowModel.nParallel, pipe.flowModel.Res_turbulent_internal[1]) ($RES_$AUX_330) (76) [SCAL] (1) boiler.myExternalControl.noIncrease.y = boiler.myExternalControl.noIncrease.k * boiler.myExternalControl.increase.u ($RES_SIM_40) (77) [SCAL] (1) boiler.myExternalControl.increase.y = boiler.myExternalControl.increase.k * boiler.myExternalControl.increase.u ($RES_SIM_41) (78) [SCAL] (1) boiler.myExternalControl.switchIncreasedSetTemp.y = if boiler.myExternalControl.and1.y then boiler.myExternalControl.increase.y else boiler.myExternalControl.noIncrease.y ($RES_SIM_42) (79) [SCAL] (1) boiler.myExternalControl.and1.y = $SEV_8 ($RES_SIM_43) (80) [SCAL] (1) boiler.myExternalControl.lessEqualThreshold.y = $SEV_9 ($RES_SIM_44) (81) [SCAL] (1) boiler.myExternalControl.timer.y = if not isNight.k then time - boiler.myExternalControl.timer.entryTime else 0.0 ($RES_SIM_45) (82) [WHEN] (1)when not isNight.k then (82) [----] boiler.myExternalControl.timer.entryTime := time (82) [----] end when; (83) [SCAL] (1) boiler.internalControl.isOn = $SEV_10 ($RES_SIM_47) (84) [SCAL] (1) boiler.myExternalControl.increase.u = if isNight.k then boiler.myExternalControl.flowTempNight.y else boiler.myExternalControl.flowTempDay.y ($RES_SIM_48) (85) [FOR-] (2) ($RES_EVT_410) (85) [----] for $i1 in 1:2 loop (85) [----] [SCAL] (1) $SEV_33[$i1] = pipe.flowModel.states.p < 373.15 ($RES_EVT_411) (85) [----] end for; (86) [SCAL] (1) $SEV_34 = pipe.flowModel.states.p < 278.15 ($RES_EVT_412) (87) [SCAL] (1) pipe.flowModel.dp_fric_nominal = sum({$FUN_11}) ($RES_$AUX_329) (88) [SCAL] (1) $SEV_35 = pipe.flowModel.states.p < 373.15 ($RES_EVT_413) (89) [ARRY] (2) pipe.flowModel.vs = {boiler.pressureDrop.m_flow / (pipe.flowModel.crossAreas[1] * smooth(1, if $SEV_34 then 1011.9695761 - 0.042860825 * pipe.flowModel.states.p else if $SEV_35 then (254.900074971947 + 6.5619527954075 * pipe.flowModel.states.p + 1.5009e-5 * pipe.flowModel.states.p ^ 3.0) - 0.01813488505 * pipe.flowModel.states.p ^ 2.0 else 1220.35045233 - 0.7025109 * pipe.flowModel.states.p)), boiler.pressureDrop.m_flow / (smooth(1, if $SEV_34 then 1011.9695761 - 0.042860825 * pipe.flowModel.states.p else if $SEV_35 then (254.900074971947 + 6.5619527954075 * pipe.flowModel.states.p + 1.5009e-5 * pipe.flowModel.states.p ^ 3.0) - 0.01813488505 * pipe.flowModel.states.p ^ 2.0 else 1220.35045233 - 0.7025109 * pipe.flowModel.states.p) * pipe.flowModel.crossAreas[2])} / pipe.nParallel ($RES_BND_302) (90) [ARRY] (2) pipe.flowModel.crossAreas = {pipe.crossArea, pipe.crossArea} ($RES_BND_303) (91) [ARRY] (2) pipe.flowModel.dimensions = {(4.0 * pipe.crossArea) / pipe.perimeter, (4.0 * pipe.crossArea) / pipe.perimeter} ($RES_BND_304) (92) [ARRY] (2) pipe.flowModel.roughnesses = {pipe.roughness, pipe.roughness} ($RES_BND_305) (93) [ARRY] (1) pipe.flowModel.dheights = {pipe.height_ab} ($RES_BND_306) (94) [ARRY] (1) pipe.flowModel.pathLengths = {pipe.length} ($RES_BND_307) (95) [FOR-] (2) ($RES_BND_308) (95) [----] for $i1 in 1:2 loop (95) [----] [SCAL] (1) pipe.flowModel.rhos[$i1] = smooth(1, if $SEV_32[$i1] then 1011.9695761 - 0.042860825 * pipe.flowModel.states.p else if $SEV_33[$i1] then (254.900074971947 + 6.5619527954075 * pipe.flowModel.states.p + 1.5009e-5 * pipe.flowModel.states.p ^ 3.0) - 0.01813488505 * pipe.flowModel.states.p ^ 2.0 else 1220.35045233 - 0.7025109 * pipe.flowModel.states.p) ($RES_BND_309) (95) [----] end for; (96) [SCAL] (1) boiler.internalControl.eEnergyMeter_S.p = 4184.0 * boiler.pressureDrop.m_flow * (boiler.internalControl.TFlowHot - boiler.senTCold.T) ($RES_SIM_50) (97) [SCAL] (1) boiler.heater.Q_flow = boiler.internalControl.eEnergyMeter_P.p * boiler.internalControl.product.u2 ($RES_SIM_52) (98) [SCAL] (1) boiler.internalControl.QNormated.y = boiler.internalControl.QNormated.k * boiler.internalControl.eEnergyMeter_P.p ($RES_SIM_53) (99) [SCAL] (1) boiler.internalControl.efficiencyTable.y[1] = boiler.internalControl.product.u2 ($RES_SIM_252) (100) [SCAL] (1) boiler.internalControl.efficiencyTable.y[1] = $FUN_7 ($RES_SIM_54) (101) [ALGO] (1) ($RES_SIM_8) (101) [----] if boiler.myExternalControl.lower.y then (101) [----] boiler.myExternalControl.controlerOnOff.onOff.u2 := true; (101) [----] elseif boiler.myExternalControl.higher.y then (101) [----] boiler.myExternalControl.controlerOnOff.onOff.u2 := false; (101) [----] end if; (102) [SCAL] (1) boiler.internalControl.QNormated.y = boiler.internalControl.efficiencyTable.u[1] ($RES_SIM_253) (103) [SCAL] (1) 3.6000000000000005e6 * $DER.boiler.internalControl.eEnergyMeter_S.q_kWh = boiler.internalControl.eEnergyMeter_S.p ($RES_SIM_56) (104) [SCAL] (1) 3.6000000000000005e6 * $DER.boiler.internalControl.eEnergyMeter_P.q_kWh = boiler.internalControl.eEnergyMeter_P.p ($RES_SIM_58) (105) [SCAL] (1) boiler.internalControl.ControlerHeater.switch1.y = if boiler.internalControl.isOn then boiler.internalControl.TFlowHot else 273.15 + boiler.myExternalControl.switchIncreasedSetTemp.y ($RES_SIM_59) (106) [SCAL] (1) source.medium.state.p = 99999.99999999999 * source.medium.p_bar ($RES_SIM_173) (107) [FOR-] (2) ($RES_BND_310) (107) [----] for $i1 in 1:2 loop (107) [----] [SCAL] (1) pipe.flowModel.mus[$i1] = smooth(1, if $SEV_32[$i1] then 1011.9695761 - 0.042860825 * pipe.flowModel.states.p else if $SEV_33[$i1] then (254.900074971947 + 6.5619527954075 * pipe.flowModel.states.p + 1.5009e-5 * pipe.flowModel.states.p ^ 3.0) - 0.01813488505 * pipe.flowModel.states.p ^ 2.0 else 1220.35045233 - 0.7025109 * pipe.flowModel.states.p) * smooth(1, if $SEV_32[$i1] then 1.44011135763e-5 - 4.63023776563e-8 * pipe.flowModel.states.p else 1e-6 * exp((40.4003044106506 + 8.0910285895e-4 * pipe.flowModel.states.p ^ 2.0) - (0.312920238272193 * pipe.flowModel.states.p + 7.22111e-7 * pipe.flowModel.states.p ^ 3.0))) ($RES_BND_311) (107) [----] end for; (108) [ARRY] (1) pipe.flowModel.pathLengths_internal = pipe.flowModel.pathLengths ($RES_BND_312) (109) [SCAL] (1) pipe.flowModel.Res_turbulent_internal[1] = pipe.flowModel.Re_turbulent ($RES_BND_313) (110) [ARRY] (1) pipe.flowModel.diameters = 0.5 * (pipe.flowModel.dimensions[2:2] + pipe.flowModel.dimensions[1:1]) ($RES_BND_314) (111) [SCAL] (1) boiler.dp = boiler.senTCold.port_b.p - pipe.port_a.p ($RES_BND_317) (112) [SCAL] (1) boiler.vol.p = boiler.vol.ports[1].p ($RES_BND_319) (113) [SCAL] (1) boiler.internalControl.ControlerHeater.PI.limiter.simplifiedExpr = boiler.internalControl.ControlerHeater.PI.addFF.k1 * boiler.internalControl.ControlerHeater.PI.gainPID.y + boiler.internalControl.ControlerHeater.PI.addFF.k2 * boiler.internalControl.ControlerHeater.PI.FFzero.k ($RES_SIM_62) (114) [SCAL] (1) boiler.vol.dynBal.ports_H_flow[2] = $FUN_4 ($RES_SIM_102) (115) [SCAL] (1) boiler.vol.dynBal.ports_H_flow[1] = $FUN_3 ($RES_SIM_103) (116) [SCAL] (1) boiler.internalControl.ControlerHeater.switch2.u1 = homotopy(smooth(0, if $SEV_11 then boiler.internalControl.ControlerHeater.PI.limiter.uMax else if $SEV_12 then boiler.internalControl.ControlerHeater.PI.limiter.uMin else boiler.internalControl.ControlerHeater.PI.limiter.simplifiedExpr), boiler.internalControl.ControlerHeater.PI.limiter.simplifiedExpr) ($RES_SIM_65) (117) [SCAL] (1) boiler.vol.dynBal.U = boiler.vol.dynBal.m * boiler.vol.dynBal.medium.u ($RES_SIM_105) (118) [SCAL] (1) boiler.vol.dynBal.m = boiler.vol.dynBal.fluidVolume * boiler.vol.dynBal.medium.d ($RES_SIM_106) (119) [SCAL] (1) boiler.internalControl.ControlerHeater.PI.gainTrack.y = boiler.internalControl.ControlerHeater.PI.gainTrack.k * boiler.internalControl.ControlerHeater.PI.addSat.y ($RES_SIM_68) (120) [SCAL] (1) boiler.internalControl.ControlerHeater.PI.addSat.y = boiler.internalControl.ControlerHeater.PI.addSat.k1 * boiler.internalControl.ControlerHeater.switch2.u1 + boiler.internalControl.ControlerHeater.PI.addSat.k2 * boiler.internalControl.ControlerHeater.PI.limiter.simplifiedExpr ($RES_SIM_69) (121) [SCAL] (1) boiler.pressureDrop.m_flow + boiler.vol.ports[2].m_flow = 0.0 ($RES_SIM_183) (122) [SCAL] (1) boiler.vol.ports[1].m_flow - boiler.m_flow = 0.0 ($RES_SIM_187) (123) [SCAL] (1) sink.ports[1].m_flow - boiler.pressureDrop.m_flow = 0.0 ($RES_SIM_189) (124) [SCAL] (1) boiler.pressureDrop.dp = boiler.pressureDrop.port_a.p - pipe.port_a.p ($RES_BND_324) (125) [SCAL] (1) boiler.internalControl.ControlerHeater.PI.controlError = (273.15 + boiler.myExternalControl.switchIncreasedSetTemp.y) - boiler.internalControl.ControlerHeater.switch1.y ($RES_BND_325) (126) [ARRY] (4) pipe.flowModel.states = {AixLib.Fluid.BoilerCHP.Examples.BoilerSystem.pipe.Medium.ThermodynamicState(273.15 + 2.390057361376673e-4 * boiler.pressureDrop.port_b.h_outflow, pipe.port_a.p), AixLib.Fluid.BoilerCHP.Examples.BoilerSystem.pipe.Medium.ThermodynamicState(273.15 + 2.390057361376673e-4 * sink.ports[1].h_outflow, pipe.port_b.p)} ($RES_BND_328) (127) [SCAL] (1) boiler.internalControl.ControlerHeater.PI.addI.y = boiler.internalControl.ControlerHeater.PI.addI.k2 * boiler.internalControl.ControlerHeater.switch1.y + boiler.internalControl.ControlerHeater.PI.addI.k1 * (273.15 + boiler.myExternalControl.switchIncreasedSetTemp.y) + boiler.internalControl.ControlerHeater.PI.addI.k3 * boiler.internalControl.ControlerHeater.PI.gainTrack.y ($RES_SIM_70) (128) [SCAL] (1) boiler.internalControl.ControlerHeater.PI.addPID.y = boiler.internalControl.ControlerHeater.PI.addPID.k2 * boiler.internalControl.ControlerHeater.PI.Dzero.k + boiler.internalControl.ControlerHeater.PI.addPID.k1 * boiler.internalControl.ControlerHeater.PI.P.y + boiler.internalControl.ControlerHeater.PI.addPID.k3 * boiler.internalControl.ControlerHeater.PI.I.y ($RES_SIM_71) (129) [SCAL] (1) boiler.internalControl.ControlerHeater.PI.gainPID.y = boiler.internalControl.ControlerHeater.PI.gainPID.k * boiler.internalControl.ControlerHeater.PI.addPID.y ($RES_SIM_72) (130) [SCAL] (1) $DER.boiler.internalControl.ControlerHeater.PI.I.y = boiler.internalControl.ControlerHeater.PI.I.k * boiler.internalControl.ControlerHeater.PI.addI.y ($RES_SIM_73) (131) [SCAL] (1) boiler.vol.dynBal.medium.state.p = 99999.99999999999 * boiler.vol.dynBal.medium.p_bar ($RES_SIM_114) (132) [SCAL] (1) boiler.vol.dynBal.medium.state.T = -((-273.15) - boiler.vol.dynBal.medium.T_degC) ($RES_SIM_115) (133) [SCAL] (1) boiler.internalControl.ControlerHeater.PI.P.y = boiler.internalControl.ControlerHeater.PI.P.k * boiler.internalControl.ControlerHeater.PI.addP.y ($RES_SIM_76) (134) [SCAL] (1) boiler.vol.dynBal.medium.d = smooth(1, if $SEV_17 then 1011.9695761 - 0.042860825 * boiler.vol.dynBal.medium.state.T else if $SEV_18 then (254.900074971947 + 6.5619527954075 * boiler.vol.dynBal.medium.state.T + 1.5009e-5 * boiler.vol.dynBal.medium.state.T ^ 3.0) - 0.01813488505 * boiler.vol.dynBal.medium.state.T ^ 2.0 else 1220.35045233 - 0.7025109 * boiler.vol.dynBal.medium.state.T) ($RES_SIM_116) (135) [SCAL] (1) boiler.internalControl.ControlerHeater.PI.addP.y = boiler.internalControl.ControlerHeater.PI.addP.k1 * (273.15 + boiler.myExternalControl.switchIncreasedSetTemp.y) + boiler.internalControl.ControlerHeater.PI.addP.k2 * boiler.internalControl.ControlerHeater.switch1.y ($RES_SIM_77) (136) [SCAL] (1) boiler.vol.dynBal.medium.u = 4184.0 * ((-273.15) - ((-273.15) - boiler.vol.dynBal.medium.T_degC)) - 3e5 / boiler.vol.dynBal.medium.d ($RES_SIM_117) (137) [SCAL] (1) boiler.internalControl.ControlerHeater.product.y = boiler.internalControl.ControlerHeater.triggeredTrapezoid.y * boiler.internalControl.ControlerHeater.switch2.u1 ($RES_SIM_78) (138) [WHEN] (1)when {initial(), boiler.internalControl.isOn, not boiler.internalControl.isOn} then (138) [----] boiler.internalControl.ControlerHeater.triggeredTrapezoid.rate := if boiler.internalControl.isOn and boiler.internalControl.ControlerHeater.triggeredTrapezoid.rising > 0.0 then boiler.internalControl.ControlerHeater.triggeredTrapezoid.amplitude / boiler.internalControl.ControlerHeater.triggeredTrapezoid.rising else if not boiler.internalControl.isOn and boiler.internalControl.ControlerHeater.triggeredTrapezoid.falling > 0.0 then -boiler.internalControl.ControlerHeater.triggeredTrapezoid.amplitude / boiler.internalControl.ControlerHeater.triggeredTrapezoid.falling else 0.0 (138) [----] end when; (139) [SCAL] (1) -boiler.vol.heaFloSen.port_a.Q_flow = -boiler.heater.Q_flow * (1.0 + boiler.heater.alpha * ((273.15 + 2.390057361376673e-4 * (4184.0 * ((-273.15) - ((-273.15) - boiler.vol.dynBal.medium.T_degC)))) - boiler.heater.T_ref)) ($RES_SIM_119) (140) [SCAL] (1) pipe.port_b.p = sink.ports[1].p ($RES_SIM_193) (141) [SCAL] (1) boiler.m_flow + source.ports[1].m_flow = 0.0 ($RES_SIM_195) (142) [SCAL] (1) source.ports[1].p = boiler.senTCold.port_b.p ($RES_SIM_196) (143) [SCAL] (1) boiler.vol.ports[2].p = boiler.pressureDrop.port_a.p ($RES_SIM_202) (144) [SCAL] (1) boiler.senTCold.port_b.p = boiler.vol.ports[1].p ($RES_SIM_203)