Running: ./testmodel.py --libraries=/home/hudson/saved_omc/libraries/.openmodelica/libraries/ --ompython_omhome=/usr Modelica_4.0.0_Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1.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) 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(Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1,tolerance=1e-06,outputFormat="mat",numberOfIntervals=5000,variableFilter="time|tank1.level|tank1.medium.T|tank2.level|tank2.medium.T|tank1.aboveLevel.1.|tank1.aboveLevel.2.|tank2.aboveLevel.1.|tank2.aboveLevel.2.",fileNamePrefix="Modelica_4.0.0_Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1") translateModel(Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1,tolerance=1e-06,outputFormat="mat",numberOfIntervals=5000,variableFilter="time|tank1.level|tank1.medium.T|tank2.level|tank2.medium.T|tank1.aboveLevel.1.|tank1.aboveLevel.2.|tank2.aboveLevel.1.|tank2.aboveLevel.2.",fileNamePrefix="Modelica_4.0.0_Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1") Notification: Performance of loadFile(/home/hudson/saved_omc/libraries/.openmodelica/libraries/ModelicaServices 4.0.0+maint.om/package.mo): time 0.001186/0.001186, allocations: 102.2 kB / 17.69 MB, free: 5.52 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.001111/0.001111, allocations: 192 kB / 18.63 MB, free: 4.586 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.23/1.23, allocations: 222.9 MB / 242.3 MB, free: 15.17 MB / 206.1 MB Notification: Performance of FrontEnd - Absyn->SCode: time 2.379e-05/2.39e-05, allocations: 8.891 kB / 302 MB, free: 5.211 MB / 238.1 MB Notification: Performance of NFInst.instantiate(Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1): time 0.02878/0.02882, allocations: 30.99 MB / 333 MB, free: 6.117 MB / 270.1 MB Notification: Performance of NFInst.instExpressions: time 0.01899/0.04787, allocations: 14.27 MB / 347.3 MB, free: 7.809 MB / 286.1 MB Notification: Performance of NFInst.updateImplicitVariability: time 0.002203/0.05014, allocations: 43.69 kB / 347.3 MB, free: 7.766 MB / 286.1 MB Notification: Performance of NFTyping.typeComponents: time 0.00173/0.05188, allocations: 0.5745 MB / 347.9 MB, free: 7.188 MB / 286.1 MB Notification: Performance of NFTyping.typeBindings: time 0.005434/0.05732, allocations: 2.18 MB / 350.1 MB, free: 5 MB / 286.1 MB Notification: Performance of NFTyping.typeClassSections: time 0.00819/0.06553, allocations: 3.677 MB / 353.7 MB, free: 1.328 MB / 286.1 MB Notification: Performance of NFFlatten.flatten: time 0.005087/0.07063, allocations: 4.174 MB / 357.9 MB, free: 13.14 MB / 302.1 MB Notification: Performance of NFFlatten.resolveConnections: time 0.00138/0.07202, allocations: 1.019 MB / 358.9 MB, free: 12.11 MB / 302.1 MB Notification: Performance of NFEvalConstants.evaluate: time 0.002257/0.07429, allocations: 1.667 MB / 360.6 MB, free: 10.43 MB / 302.1 MB Notification: Performance of NFSimplifyModel.simplify: time 0.001484/0.07578, allocations: 1.398 MB / 362 MB, free: 9.031 MB / 302.1 MB Notification: Performance of NFPackage.collectConstants: time 0.000196/0.07599, allocations: 136 kB / 362.1 MB, free: 8.898 MB / 302.1 MB Notification: Performance of NFFlatten.collectFunctions: time 0.004198/0.08019, allocations: 2.336 MB / 364.5 MB, free: 6.559 MB / 302.1 MB Notification: Performance of combineBinaries: time 0.002201/0.08241, allocations: 2.893 MB / 367.4 MB, free: 3.641 MB / 302.1 MB Notification: Performance of replaceArrayConstructors: time 0.001061/0.08348, allocations: 1.73 MB / 369.1 MB, free: 1.891 MB / 302.1 MB Notification: Performance of NFVerifyModel.verify: time 0.0003256/0.08381, allocations: 239.3 kB / 369.3 MB, free: 1.656 MB / 302.1 MB Notification: Performance of FrontEnd: time 0.0002155/0.08403, allocations: 39.81 kB / 369.4 MB, free: 1.617 MB / 302.1 MB Notification: Model statistics after passing the front-end and creating the data structures used by the back-end: * Number of equations: 256 (203) * Number of variables: 268 (204) Notification: Performance of Bindings: time 0.1436/0.2277, allocations: 7.549 MB / 376.9 MB, free: 20.82 MB / 302.1 MB Notification: Performance of FunctionAlias: time 0.000672/0.2284, allocations: 0.6374 MB / 377.6 MB, free: 20.64 MB / 302.1 MB Notification: Performance of Early Inline: time 0.004025/0.2324, allocations: 4.271 MB / 381.8 MB, free: 20.4 MB / 302.1 MB Notification: Performance of simplify1: time 0.0003269/0.2327, allocations: 271.1 kB / 382.1 MB, free: 20.39 MB / 302.1 MB Notification: Performance of Alias: time 0.003346/0.2361, allocations: 3.859 MB / 385.9 MB, free: 19.22 MB / 302.1 MB Notification: Performance of simplify2: time 0.0002423/0.2363, allocations: 237.5 kB / 386.2 MB, free: 19.21 MB / 302.1 MB Notification: Performance of Events: time 0.0008528/0.2372, allocations: 0.9433 MB / 387.1 MB, free: 19.02 MB / 302.1 MB Notification: Performance of Detect States: time 0.0007772/0.238, allocations: 1.068 MB / 388.2 MB, free: 18.92 MB / 302.1 MB Notification: Performance of Partitioning: time 0.001184/0.2392, allocations: 1.528 MB / 389.7 MB, free: 18.41 MB / 302.1 MB Error: Internal error NBAdjacency.Matrix.create failed to create adjacency matrix for system: System Variables (188/266) **************************** (1) [DISC] (2) Boolean[2] $SEV_6[$i1] (2) [ALGB] (1) stream Real[1] ambient_fixed1.ports.h_outflow (min = {-1e10 for $i1 in 1:1}, max = {1e10 for $i1 in 1:1}, nominal = {1e6 for $i1 in 1:1}) (3) [ALGB] (1) Real[1] pipe2.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}) (4) [DISC] (1) Boolean $SEV_24 (5) [DISC] (1) Boolean $SEV_22 (6) [DISC] (2) Boolean[2] $SEV_1[$i1] (7) [ALGB] (1) Real pipe2.port_a.p (start = 1e5, min = 0.0, max = 1e8, nominal = 1e5) (8) [ALGB] (1) Real[1] tank2.heatTransfer.heatPorts.T (start = {288.15 for $i1 in 1:1}, min = {0.0 for $i1 in 1:1}, nominal = {300.0 for $i1 in 1:1}) (9) [DISC] (1) Boolean $TEV_1 (10) [DISC] (1) Boolean $TEV_0 (11) [ALGB] (2) Real[2] tank2.port_b_H_flow_bottom (min = {-1e8 for $i1 in 1:2}, max = {1e8 for $i1 in 1:2}, nominal = {1000.0 for $i1 in 1:2}) (12) [ALGB] (1) Real[1] ambient_fixed2.ports.p (start = {1e5 for $i1 in 1:1}, min = {0.0 for $i1 in 1:1}, max = {1e8 for $i1 in 1:1}, nominal = {1e5 for $i1 in 1:1}) (13) [ALGB] (1) Real[1] pipe2.flowModel.Fs_p (14) [ALGB] (1) Real[1] pipe3.flowModel.Res_turbulent_internal = pipe3.flowModel.Re_turbulent * {1.0 for $i1 in 1:1} (15) [ALGB] (2) Real[2] pipe1.flowModel.mus = {Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1.pipe1.flowModel.Medium.dynamicViscosity(pipe1.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}) (16) [ALGB] (2) Real[2] pipe3.flowModel.mus = {Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1.pipe3.flowModel.Medium.dynamicViscosity(pipe3.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}) (17) [ALGB] (2) final Real[2] pipe2.flowModel.roughnesses = {pipe2.roughness, pipe2.roughness} (min = {0.0 for $i1 in 1:2}) (18) [ALGB] (1) Real[1] pipe3.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) (19) [ALGB] (2) protected Real[2] tank2.ports_emptyPipeHysteresis (min = {0.0 for $i1 in 1:2}) (20) [DISC] (2) Boolean[2] $SEV_25[$i1] (21) [ALGB] (2) protected Real[2] tank2.levelAbovePort (22) [ALGB] (1) Real tank2.level (start = tank2.level_start, StateSelect = prefer) (23) [DISC] (1) Boolean $SEV_14 (24) [DISC] (1) Boolean $SEV_13 (25) [DISC] (1) Boolean $SEV_12 (26) [DISC] (1) Boolean $SEV_11 (27) [ALGB] (2) protected Real[2] tank1.portsData_diameter2 (28) [ALGB] (1) Real[1] pipe3.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}) (29) [DISC] (2) Boolean[2] $SEV_31[$i1] (30) [ALGB] (1) Real[1] tank1.heatTransfer.surfaceAreas = {sqrt(3.141592653589793 * tank1.crossArea) * 2.0 * tank1.level + tank1.crossArea} (31) [ALGB] (2) Real[2] pipe2.flowModel.rhos = {Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1.pipe2.flowModel.Medium.density(pipe2.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}) (32) [ALGB] (1) Real pipe3.port_b.p (start = 1e5, min = 0.0, max = 1e8, nominal = 1e5) (33) [ALGB] (2) stream Real[2] tank1.ports.h_outflow (min = {-1e10 for $i1 in 1:2}, max = {1e10 for $i1 in 1:2}, nominal = {1e6 for $i1 in 1:2}) (34) [ALGB] (1) Real[1] pipe3.flowModel.Ib_flows (35) [ALGB] (1) Real[1] pipe1.flowModel.pathLengths_internal = pipe1.flowModel.pathLengths (36) [ALGB] (1) final input Real[1, 1] tank1.heatTransfer.states.p = {tank1.medium.state.p} (start = {1e5 for $i1 in 1:1}, min = {0.0 for $i1 in 1:1}, max = {1e8 for $i1 in 1:1}, nominal = {1e5 for $i1 in 1:1}) (37) [DISC] (2) Boolean[2] $SEV_5[$i1] (38) [ALGB] (1) Real tank2.medium.state.T (start = 288.15, min = 1.0, max = 1e4, nominal = 300.0) (39) [DISC] (2) protected Boolean[2] tank1.aboveLevel (40) [ALGB] (2) protected Real[2] tank2.portsData_diameter2 (41) [ALGB] (1) Real tank2.medium.T_degC = Modelica.Units.Conversions.to_degC(-((-273.15) - tank2.medium.T_degC)) (42) [ALGB] (1) stream Real[1] ambient_fixed2.ports.h_outflow (min = {-1e10 for $i1 in 1:1}, max = {1e10 for $i1 in 1:1}, nominal = {1e6 for $i1 in 1:1}) (43) [ALGB] (1) Real tank1.mb_flow (44) [DISC] (2) Boolean[2] $SEV_0[$i1] (45) [ALGB] (1) Real[1] pipe1.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}) (46) [ALGB] (1) Real tank1.medium.T_degC = Modelica.Units.Conversions.to_degC(-((-273.15) - tank1.medium.T_degC)) (47) [ALGB] (2) final Real[2] pipe3.flowModel.dimensions = {(4.0 * pipe3.crossArea) / pipe3.perimeter, (4.0 * pipe3.crossArea) / pipe3.perimeter} (48) [ALGB] (4) input Real[2, 2] pipe3.flowModel.states.T (start = {288.15 for $i1 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}) (49) [ALGB] (1) final input Real[1, 1] tank2.heatTransfer.states.T = {tank2.medium.state.T} (start = {288.15 for $i1 in 1:1}, min = {1.0 for $i1 in 1:1}, max = {1e4 for $i1 in 1:1}, nominal = {300.0 for $i1 in 1:1}) (50) [ALGB] (1) flow Real[1] tank2.heatTransfer.heatPorts.Q_flow (51) [ALGB] (2) Real[2] tank1.ports.p (start = {1e5 for $i1 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}) (52) [ALGB] (1) stream Real pipe1.port_a.h_outflow (min = -1e10, max = 1e10, nominal = 1e6) (53) [ALGB] (2) protected Real[2] tank2.bottomArea (54) [ALGB] (1) Real[1] pipe1.flowModel.Fs_fg (55) [ALGB] (1) final input Real[1, 1] tank1.heatTransfer.states.T = {tank1.medium.state.T} (start = {288.15 for $i1 in 1:1}, min = {1.0 for $i1 in 1:1}, max = {1e4 for $i1 in 1:1}, nominal = {300.0 for $i1 in 1:1}) (56) [ALGB] (1) Real[1] pipe1.flowModel.Res_turbulent_internal = pipe1.flowModel.Re_turbulent * {1.0 for $i1 in 1:1} (57) [ALGB] (1) Real $FUN_9 (58) [ALGB] (1) final Real tank1.fluidVolume = tank1.fluidVolume (59) [ALGB] (1) Real $FUN_8 (60) [ALGB] (1) Real[1] pipe2.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}) (61) [ALGB] (1) Real tank2.medium.state.p (start = 1e5, min = 0.0, max = 1e8, nominal = 1e5) (62) [ALGB] (1) Real $FUN_7 (63) [DISC] (2) Boolean[2] $SEV_29[$i1] (64) [ALGB] (1) Real $FUN_6 (65) [ALGB] (1) Real[1] pipe1.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}) (66) [ALGB] (1) Real $FUN_5 (67) [ALGB] (1) Real $FUN_4 (68) [ALGB] (1) Real $FUN_3 (69) [ALGB] (2) protected Real[2] tank2.portsData_diameter = tank2.portsData.diameter (70) [ALGB] (1) Real $FUN_2 (71) [ALGB] (1) Real[1] tank1.heatTransfer.heatPorts.T (start = {288.15 for $i1 in 1:1}, min = {0.0 for $i1 in 1:1}, nominal = {300.0 for $i1 in 1:1}) (72) [ALGB] (1) Real[1] pipe2.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) (73) [ALGB] (1) final Real[1] pipe1.flowModel.dheights = {pipe1.height_ab} (74) [ALGB] (1) stream Real pipe1.port_b.h_outflow (min = -1e10, max = 1e10, nominal = 1e6) (75) [ALGB] (1) Real[1] pipe1.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) (76) [ALGB] (1) Real tank2.mb_flow (77) [ALGB] (2) Real[2] pipe2.flowModel.mus = {Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1.pipe2.flowModel.Medium.dynamicViscosity(pipe2.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}) (78) [ALGB] (4) input Real[2, 2] pipe3.flowModel.states.p (start = {1e5 for $i1 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}) (79) [DISC] (2) Boolean[2] $SEV_30[$i1] (80) [DISC] (2) Boolean[2] $SEV_9[$i1] (81) [ALGB] (1) final input Real[1, 1] tank2.heatTransfer.states.p = {tank2.medium.state.p} (start = {1e5 for $i1 in 1:1}, min = {0.0 for $i1 in 1:1}, max = {1e8 for $i1 in 1:1}, nominal = {1e5 for $i1 in 1:1}) (82) [ALGB] (1) Real[1] pipe2.flowModel.pathLengths_internal = pipe2.flowModel.pathLengths (83) [ALGB] (1) Real[1] tank2.heatTransfer.Q_flows (84) [DER-] (1) Real $DER.tank1.U (85) [ALGB] (1) Real[1] pipe2.flowModel.Ib_flows (86) [ALGB] (1) Real[1] pipe3.flowModel.dps_fg (start = {pipe3.flowModel.p_a_start - pipe3.flowModel.p_b_start for $i1 in 1:1}) (87) [DISC] (2) Boolean[2] $SEV_4[$i1] (88) [ALGB] (2) Real[2] tank2.ports.p (start = {1e5 for $i1 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}) (89) [ALGB] (2) stream Real[2] tank2.ports.h_outflow (min = {-1e10 for $i1 in 1:2}, max = {1e10 for $i1 in 1:2}, nominal = {1e6 for $i1 in 1:2}) (90) [ALGB] (1) Real tank1.Hb_flow (91) [ALGB] (1) Real pipe3.port_a.p (start = 1e5, min = 0.0, max = 1e8, nominal = 1e5) (92) [ALGB] (2) protected Real[2] tank2.portsData_height2 (93) [ALGB] (2) final Real[2] pipe3.flowModel.roughnesses = {pipe3.roughness, pipe3.roughness} (min = {0.0 for $i1 in 1:2}) (94) [ALGB] (2) protected Real[2] tank1.portsData_height = tank1.portsData.height (95) [ALGB] (1) Real pipe1.port_b.p (start = 1e5, min = 0.0, max = 1e8, nominal = 1e5) (96) [ALGB] (1) protected Real[1] pipe3.flowModel.diameters = 0.5 * (pipe3.flowModel.dimensions[2:2] + pipe3.flowModel.dimensions[1:1]) (97) [ALGB] (1) Real $FUN_16 (98) [ALGB] (1) Real $FUN_14 (99) [ALGB] (4) input Real[2, 2] pipe2.flowModel.states.T (start = {288.15 for $i1 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}) (100) [ALGB] (2) final Real[2] pipe1.flowModel.dimensions = {(4.0 * pipe1.crossArea) / pipe1.perimeter, (4.0 * pipe1.crossArea) / pipe1.perimeter} (101) [ALGB] (1) Real $FUN_12 (102) [ALGB] (2) final Real[2] pipe3.flowModel.crossAreas = {pipe3.crossArea, pipe3.crossArea} (103) [ALGB] (1) Real[1] pipe3.flowModel.pathLengths_internal = pipe3.flowModel.pathLengths (104) [ALGB] (1) Real $FUN_11 (105) [DER-] (1) Real $DER.tank1.m (106) [ALGB] (1) Real[1] pipe1.flowModel.Fs_p (107) [ALGB] (1) Real[1] pipe2.flowModel.Fs_fg (108) [DISC] (2) Boolean[2] $SEV_28[$i1] (109) [ALGB] (2) protected Real[2] tank1.ports_emptyPipeHysteresis (min = {0.0 for $i1 in 1:2}) (110) [DISC] (1) Boolean $SEV_3 (111) [ALGB] (2) protected Real[2] tank2.portsData_height = tank2.portsData.height (112) [ALGB] (1) protected Real pipe2.flowModel.dp_fric_nominal = sum({Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1.pipe2.flowModel.WallFriction.pressureLoss_m_flow(pipe2.flowModel.m_flow_nominal / pipe2.flowModel.nParallel, pipe2.flowModel.rho_nominal, pipe2.flowModel.rho_nominal, pipe2.flowModel.mu_nominal, pipe2.flowModel.mu_nominal, pipe2.flowModel.pathLengths_internal[1], pipe2.flowModel.diameters[1], ((pipe2.flowModel.crossAreas[2:2] + pipe2.flowModel.crossAreas[1:1]) / 2.0)[1], ((pipe2.flowModel.roughnesses[2:2] + pipe2.flowModel.roughnesses[1:1]) / 2.0)[1], pipe2.flowModel.m_flow_small / pipe2.flowModel.nParallel, pipe2.flowModel.Res_turbulent_internal[1])}) (min = 0.0, nominal = 1e5) (113) [ALGB] (2) protected Real[2] tank1.portsData_diameter = tank1.portsData.diameter (114) [ALGB] (1) Real[1] tank1.heatTransfer.Ts = {Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1.tank1.heatTransfer.Medium.temperature(tank1.heatTransfer.states[1])} (start = {288.15 for $i1 in 1:1}, min = {0.0 for $i1 in 1:1}, nominal = {300.0 for $i1 in 1:1}) (115) [ALGB] (1) Real tank2.Hb_flow (116) [ALGB] (4) input Real[2, 2] pipe2.flowModel.states.p (start = {1e5 for $i1 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}) (117) [ALGB] (1) Real[1] pipe2.flowModel.dps_fg (start = {pipe2.flowModel.p_a_start - pipe2.flowModel.p_b_start for $i1 in 1:1}) (118) [ALGB] (1) Real[1] pipe1.flowModel.Is (119) [ALGB] (1) Real[1] pipe2.flowModel.Is (120) [ALGB] (1) Real[1] pipe3.flowModel.Is (121) [DISC] (2) Boolean[2] $SEV_8[$i1] (122) [ALGB] (1) Real[1] pipe1.flowModel.dps_fg (start = {pipe1.flowModel.p_a_start - pipe1.flowModel.p_b_start for $i1 in 1:1}) (123) [ALGB] (2) protected Real[2] tank1.bottomArea (124) [ALGB] (1) final Real[1] pipe3.flowModel.pathLengths = {pipe3.length} (125) [ALGB] (2) Real[2] pipe1.flowModel.rhos = {Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1.pipe1.flowModel.Medium.density(pipe1.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}) (126) [ALGB] (2) final Real[2] pipe2.flowModel.crossAreas = {pipe2.crossArea, pipe2.crossArea} (127) [ALGB] (1) stream Real pipe2.port_b.h_outflow (min = -1e10, max = 1e10, nominal = 1e6) (128) [ALGB] (1) Real tank1.medium.state.T (start = 288.15, min = 1.0, max = 1e4, nominal = 300.0) (129) [DER-] (1) Real $DER.tank2.U (130) [ALGB] (1) stream Real pipe3.port_b.h_outflow (min = -1e10, max = 1e10, nominal = 1e6) (131) [ALGB] (1) Real tank1.Qb_flow (132) [ALGB] (4) input Real[2, 2] pipe1.flowModel.states.p (start = {1e5 for $i1 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}) (133) [ALGB] (1) Real pipe1.port_a.p (start = 1e5, min = 0.0, max = 1e8, nominal = 1e5) (134) [ALGB] (1) final Real[1] pipe3.flowModel.dheights = {pipe3.height_ab} (135) [ALGB] (2) final Real[2] pipe1.flowModel.crossAreas = {pipe1.crossArea, pipe1.crossArea} (136) [ALGB] (1) stream Real pipe2.port_a.h_outflow (min = -1e10, max = 1e10, nominal = 1e6) (137) [ALGB] (1) flow Real pipe2.port_b.m_flow (min = -1e5, max = 1e60) (138) [ALGB] (1) stream Real pipe3.port_a.h_outflow (min = -1e10, max = 1e10, nominal = 1e6) (139) [ALGB] (1) Real[1] tank1.heatTransfer.Q_flows (140) [ALGB] (1) Real[1] pipe3.flowModel.Fs_fg (141) [ALGB] (2) Real[2] pipe3.flowModel.rhos = {Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1.pipe3.flowModel.Medium.density(pipe3.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}) (142) [DISC] (2) Boolean[2] $SEV_27[$i1] (143) [ALGB] (2) final Real[2] pipe1.flowModel.roughnesses = {pipe1.roughness, pipe1.roughness} (min = {0.0 for $i1 in 1:2}) (144) [DER-] (1) Real $DER.tank2.m (145) [ALGB] (1) Real tank1.medium.state.p (start = 1e5, min = 0.0, max = 1e8, nominal = 1e5) (146) [ALGB] (1) flow Real pipe1.port_b.m_flow (min = -1e5, max = 1e60) (147) [ALGB] (2) protected Real[2] tank1.levelAbovePort (148) [ALGB] (1) flow Real pipe3.port_b.m_flow (min = -1e5, max = 1e60) (149) [ALGB] (2) Real[2] tank1.port_b_H_flow_bottom (min = {-1e8 for $i1 in 1:2}, max = {1e8 for $i1 in 1:2}, nominal = {1000.0 for $i1 in 1:2}) (150) [ALGB] (1) Real[1] tank2.heatTransfer.Ts = {Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1.tank2.heatTransfer.Medium.temperature(tank2.heatTransfer.states[1])} (start = {288.15 for $i1 in 1:1}, min = {0.0 for $i1 in 1:1}, nominal = {300.0 for $i1 in 1:1}) (151) [ALGB] (4) input Real[2, 2] pipe1.flowModel.states.T (start = {288.15 for $i1 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}) (152) [DISC] (2) Boolean[2] $SEV_7[$i1] (153) [ALGB] (1) Real[1] pipe3.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}) (154) [ALGB] (2) Real[2] pipe3.flowModel.vs = {(-pipe3.port_b.m_flow) / (pipe3.flowModel.crossAreas[1] * Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1.pipe3.Medium.density(pipe3.flowModel.states[1])), -pipe3.port_b.m_flow / (Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1.pipe3.Medium.density(pipe3.flowModel.states[2]) * pipe3.flowModel.crossAreas[2])} / pipe3.nParallel (155) [ALGB] (2) Real[2] pipe1.flowModel.vs = {(-pipe1.port_b.m_flow) / (pipe1.flowModel.crossAreas[1] * Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1.pipe1.Medium.density(pipe1.flowModel.states[1])), -pipe1.port_b.m_flow / (Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1.pipe1.Medium.density(pipe1.flowModel.states[2]) * pipe1.flowModel.crossAreas[2])} / pipe1.nParallel (156) [ALGB] (1) Real tank2.Qb_flow (157) [ALGB] (2) Real[2] pipe2.flowModel.vs = {(-pipe2.port_b.m_flow) / (pipe2.flowModel.crossAreas[1] * Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1.pipe2.Medium.density(pipe2.flowModel.states[1])), -pipe2.port_b.m_flow / (Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1.pipe2.Medium.density(pipe2.flowModel.states[2]) * pipe2.flowModel.crossAreas[2])} / pipe2.nParallel (158) [ALGB] (1) flow Real[1] tank1.heatTransfer.heatPorts.Q_flow (159) [ALGB] (2) protected Real[2] tank1.zetas_out (160) [ALGB] (1) Real[1] pipe3.flowModel.Fs_p (161) [ALGB] (1) protected Real pipe1.flowModel.dp_fric_nominal = sum({Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1.pipe1.flowModel.WallFriction.pressureLoss_m_flow(pipe1.flowModel.m_flow_nominal / pipe1.flowModel.nParallel, pipe1.flowModel.rho_nominal, pipe1.flowModel.rho_nominal, pipe1.flowModel.mu_nominal, pipe1.flowModel.mu_nominal, pipe1.flowModel.pathLengths_internal[1], pipe1.flowModel.diameters[1], ((pipe1.flowModel.crossAreas[2:2] + pipe1.flowModel.crossAreas[1:1]) / 2.0)[1], ((pipe1.flowModel.roughnesses[2:2] + pipe1.flowModel.roughnesses[1:1]) / 2.0)[1], pipe1.flowModel.m_flow_small / pipe1.flowModel.nParallel, pipe1.flowModel.Res_turbulent_internal[1])}) (min = 0.0, nominal = 1e5) (162) [ALGB] (1) flow Real[1] ambient_fixed1.ports.m_flow (min = {-1e60}, max = {1e60}) (163) [ALGB] (1) Real pipe2.port_b.p (start = 1e5, min = 0.0, max = 1e8, nominal = 1e5) (164) [ALGB] (1) flow Real[1] ambient_fixed2.ports.m_flow (min = {-1e60}, max = {1e60}) (165) [ALGB] (2) flow Real[2] tank2.ports.m_flow (start = {0.0 for $i1 in 1:2}, min = {-1e5 for $i1 in 1:2}, max = {1e5 for $i1 in 1:2}) (166) [ALGB] (2) flow Real[2] tank1.ports.m_flow (start = {0.0 for $i1 in 1:2}, min = {-1e5 for $i1 in 1:2}, max = {1e5 for $i1 in 1:2}) (167) [ALGB] (1) protected Real[1] pipe1.flowModel.diameters = 0.5 * (pipe1.flowModel.dimensions[2:2] + pipe1.flowModel.dimensions[1:1]) (168) [ALGB] (1) Real[1] pipe2.flowModel.Res_turbulent_internal = pipe2.flowModel.Re_turbulent * {1.0 for $i1 in 1:1} (169) [ALGB] (1) Real[1] pipe1.flowModel.Ib_flows (170) [ALGB] (2) final Real[2] pipe2.flowModel.dimensions = {(4.0 * pipe2.crossArea) / pipe2.perimeter, (4.0 * pipe2.crossArea) / pipe2.perimeter} (171) [ALGB] (2) protected Real[2] tank2.zetas_out (172) [DISC] (1) Boolean $SEV_35 (173) [DISC] (1) Boolean $SEV_34 (174) [ALGB] (1) final Real[1] pipe1.flowModel.pathLengths = {pipe1.length} (175) [DISC] (1) Boolean $SEV_33 (176) [DISC] (1) Boolean $SEV_32 (177) [DISC] (2) protected Boolean[2] tank2.aboveLevel (178) [ALGB] (1) final Real[1] pipe2.flowModel.dheights = {pipe2.height_ab} (179) [ALGB] (1) Real[1] tank2.heatTransfer.surfaceAreas = {sqrt(3.141592653589793 * tank2.crossArea) * 2.0 * tank2.level + tank2.crossArea} (180) [ALGB] (1) protected Real[1] pipe2.flowModel.diameters = 0.5 * (pipe2.flowModel.dimensions[2:2] + pipe2.flowModel.dimensions[1:1]) (181) [ALGB] (2) protected Real[2] tank1.portsData_height2 (182) [ALGB] (1) final Real tank2.fluidVolume = tank2.fluidVolume (183) [DISC] (2) Boolean[2] $SEV_26[$i1] (184) [ALGB] (1) protected Real pipe3.flowModel.dp_fric_nominal = sum({Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1.pipe3.flowModel.WallFriction.pressureLoss_m_flow(pipe3.flowModel.m_flow_nominal / pipe3.flowModel.nParallel, pipe3.flowModel.rho_nominal, pipe3.flowModel.rho_nominal, pipe3.flowModel.mu_nominal, pipe3.flowModel.mu_nominal, pipe3.flowModel.pathLengths_internal[1], pipe3.flowModel.diameters[1], ((pipe3.flowModel.crossAreas[2:2] + pipe3.flowModel.crossAreas[1:1]) / 2.0)[1], ((pipe3.flowModel.roughnesses[2:2] + pipe3.flowModel.roughnesses[1:1]) / 2.0)[1], pipe3.flowModel.m_flow_small / pipe3.flowModel.nParallel, pipe3.flowModel.Res_turbulent_internal[1])}) (min = 0.0, nominal = 1e5) (185) [ALGB] (1) Real[1] ambient_fixed1.ports.p (start = {1e5 for $i1 in 1:1}, min = {0.0 for $i1 in 1:1}, max = {1e8 for $i1 in 1:1}, nominal = {1e5 for $i1 in 1:1}) (186) [ALGB] (1) Real tank1.level (start = tank1.level_start, StateSelect = prefer) (187) [ALGB] (1) final Real[1] pipe2.flowModel.pathLengths = {pipe2.length} (188) [DISC] (2) Boolean[2] $SEV_10[$i1] System Equations (187/254) **************************** (1) [ARRY] (1) pipe3.flowModel.pathLengths_internal = pipe3.flowModel.pathLengths ($RES_BND_255) (2) [SCAL] (1) pipe3.flowModel.Res_turbulent_internal[1] = pipe3.flowModel.Re_turbulent ($RES_BND_256) (3) [SCAL] (1) tank1.m = 995.586 * tank1.fluidVolume ($RES_SIM_120) (4) [ARRY] (1) pipe3.flowModel.diameters = 0.5 * (pipe3.flowModel.dimensions[2:2] + pipe3.flowModel.dimensions[1:1]) ($RES_BND_257) (5) [FOR-] (2) ($RES_SIM_121) (5) [----] for $i1 in 1:2 loop (5) [----] [SCAL] (1) tank1.aboveLevel[$i1] = $SEV_28[$i1] ($RES_SIM_122) (5) [----] end for; (6) [FOR-] (2) ($RES_SIM_123) (6) [----] for $i1 in 1:2 loop (6) [----] [SCAL] (1) tank1.levelAbovePort[$i1] = if tank1.aboveLevel[$i1] then tank1.level - tank1.portsData_height2[$i1] else 0.0 ($RES_SIM_124) (6) [----] end for; (7) [ARRY] (2) tank1.heatTransfer.states = {tank1.medium.state} ($RES_BND_259) (8) [FOR-] (2) ($RES_SIM_125) (8) [----] for $i1 in 1:2 loop (8) [----] [SCAL] (1) tank1.ports[$i1].h_outflow = 4184.0 * ((-273.15) - ((-273.15) - tank1.medium.T_degC)) ($RES_SIM_126) (8) [----] end for; (9) [FOR-] (2) ($RES_SIM_127) (9) [----] for $i1 in 1:2 loop (9) [----] [SCAL] (1) tank1.zetas_out[$i1] = 1.0 + (if tank1.aboveLevel[$i1] then 0.0 else tank1.zetaLarge) ($RES_SIM_128) (9) [----] end for; (10) [FOR-] (2) ($RES_SIM_129) (10) [----] for $i1 in 1:2 loop (10) [----] [SCAL] (1) tank1.ports[$i1].p = system.g * tank1.levelAbovePort[$i1] * 995.586 + tank1.p_ambient + smooth(2, if $SEV_29[$i1] then (0.008105694691387022 * tank1.ports[$i1].m_flow ^ 2.0) / (995.586 * tank1.portsData_diameter2[$i1] * tank1.portsData_diameter2[$i1] * tank1.portsData_diameter2[$i1] * tank1.portsData_diameter2[$i1]) else if $SEV_30[$i1] then -(0.8105694691387022 * tank1.zetas_out[$i1] * tank1.ports[$i1].m_flow ^ 2.0) / (995.586 * tank1.portsData_diameter2[$i1] * tank1.portsData_diameter2[$i1] * tank1.portsData_diameter2[$i1] * tank1.portsData_diameter2[$i1]) else if $SEV_31[$i1] then Modelica.Fluid.Utilities.regSquare2.regSquare2_utility(tank1.ports[$i1].m_flow, tank1.m_flow_small, 0.008105694691387022 / (995.586 * tank1.portsData_diameter2[$i1] * tank1.portsData_diameter2[$i1] * tank1.portsData_diameter2[$i1] * tank1.portsData_diameter2[$i1]), (0.8105694691387022 * tank1.zetas_out[$i1]) / (995.586 * tank1.portsData_diameter2[$i1] * tank1.portsData_diameter2[$i1] * tank1.portsData_diameter2[$i1] * tank1.portsData_diameter2[$i1]), false, 1.0) else -Modelica.Fluid.Utilities.regSquare2.regSquare2_utility(-tank1.ports[$i1].m_flow, tank1.m_flow_small, (0.8105694691387022 * tank1.zetas_out[$i1]) / (995.586 * tank1.portsData_diameter2[$i1] * tank1.portsData_diameter2[$i1] * tank1.portsData_diameter2[$i1] * tank1.portsData_diameter2[$i1]), 0.008105694691387022 / (995.586 * tank1.portsData_diameter2[$i1] * tank1.portsData_diameter2[$i1] * tank1.portsData_diameter2[$i1] * tank1.portsData_diameter2[$i1]), false, 1.0)) ($RES_SIM_130) (10) [----] end for; (11) [FOR-] (2) ($RES_EVT_290) (11) [----] for $i1 in 1:2 loop (11) [----] [SCAL] (1) $SEV_1[$i1] = tank1.level_start >= tank1.portsData_height2[$i1] ($RES_EVT_291) (11) [----] end for; (12) [SCAL] (1) $SEV_3 = pipe3.flowModel.m_flows[1] > 0.0 ($RES_EVT_293) (13) [FOR-] (2) ($RES_EVT_294) (13) [----] for $i1 in 1:2 loop (13) [----] [SCAL] (1) $SEV_4[$i1] = tank2.level >= (tank2.portsData_height2[$i1] + tank2.ports_emptyPipeHysteresis[$i1]) ($RES_EVT_295) (13) [----] end for; (14) [ARRY] (4) pipe1.flowModel.states = {Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1.pipe1.Medium.ThermodynamicState(pipe1.port_a.p, 273.15 + 2.390057361376673e-4 * ambient_fixed1.ports[1].h_outflow), Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1.pipe1.Medium.ThermodynamicState(pipe1.port_b.p, 273.15 + 2.390057361376673e-4 * tank1.ports[1].h_outflow)} ($RES_BND_260) (15) [FOR-] (2) ($RES_EVT_296) (15) [----] for $i1 in 1:2 loop (15) [----] [SCAL] (1) $SEV_5[$i1] = tank2.level >= (tank2.portsData_height2[$i1] - tank2.ports_emptyPipeHysteresis[$i1]) ($RES_EVT_297) (15) [----] end for; (16) [ARRY] (4) pipe2.flowModel.states = {Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1.pipe2.Medium.ThermodynamicState(pipe2.port_a.p, 273.15 + 2.390057361376673e-4 * ambient_fixed2.ports[1].h_outflow), Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1.pipe2.Medium.ThermodynamicState(pipe2.port_b.p, 273.15 + 2.390057361376673e-4 * tank2.ports[1].h_outflow)} ($RES_BND_261) (17) [ARRY] (2) tank2.heatTransfer.states = {tank2.medium.state} ($RES_BND_262) (18) [FOR-] (2) ($RES_EVT_298) (18) [----] for $i1 in 1:2 loop (18) [----] [SCAL] (1) $SEV_6[$i1] = $TEV_0 and $SEV_5[$i1] ($RES_EVT_299) (18) [----] end for; (19) [ARRY] (4) pipe3.flowModel.states = {Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1.pipe3.Medium.ThermodynamicState(pipe3.port_a.p, 273.15 + 2.390057361376673e-4 * tank1.ports[2].h_outflow), Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1.pipe3.Medium.ThermodynamicState(pipe3.port_b.p, 273.15 + 2.390057361376673e-4 * tank2.ports[2].h_outflow)} ($RES_BND_263) (20) [SCAL] (1) pipe3.port_a.h_outflow = tank2.ports[2].h_outflow + system.g * pipe3.height_ab ($RES_SIM_15) (21) [SCAL] (1) pipe3.port_b.h_outflow = tank1.ports[2].h_outflow - system.g * pipe3.height_ab ($RES_SIM_16) (22) [SCAL] (1) -pipe3.port_b.m_flow = pipe3.flowModel.m_flows[1] ($RES_SIM_18) (23) [SCAL] (1) pipe2.port_a.h_outflow = tank2.ports[1].h_outflow + system.g * pipe2.height_ab ($RES_SIM_92) (24) [ARRY] (1) {0.0} = pipe3.flowModel.Ib_flows - (pipe3.flowModel.Fs_fg + pipe3.flowModel.Fs_p) ($RES_SIM_19) (25) [SCAL] (1) pipe2.port_b.h_outflow = ambient_fixed2.ports[1].h_outflow - system.g * pipe2.height_ab ($RES_SIM_93) (26) [SCAL] (1) tank1.port_b_H_flow_bottom[2] = smooth(0, tank1.ports[2].m_flow * (if $SEV_32 then pipe3.port_a.h_outflow else tank1.ports[2].h_outflow)) ($RES_SIM_133) (27) [SCAL] (1) $FUN_2 = sum(tank1.ports.m_flow) ($RES_$AUX_278) (28) [SCAL] (1) tank1.port_b_H_flow_bottom[1] = smooth(0, tank1.ports[1].m_flow * (if $SEV_33 then pipe1.port_b.h_outflow else tank1.ports[1].h_outflow)) ($RES_SIM_134) (29) [SCAL] (1) $FUN_3 = sum(tank1.port_b_H_flow_bottom) ($RES_$AUX_277) (30) [SCAL] (1) -pipe2.port_b.m_flow = pipe2.flowModel.m_flows[1] ($RES_SIM_95) (31) [SCAL] (1) $FUN_4 = Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1.pipe1.flowModel.WallFriction.massFlowRate_dp_staticHead(pipe1.flowModel.dps_fg[1], pipe1.flowModel.rhos[1], pipe1.flowModel.rhos[2], pipe1.flowModel.mus[1], pipe1.flowModel.mus[2], pipe1.flowModel.pathLengths_internal[1], pipe1.flowModel.diameters[1], (pipe1.flowModel.g * pipe1.flowModel.dheights)[1], (0.5 .* (pipe1.flowModel.crossAreas[1:1] + pipe1.flowModel.crossAreas[2:2]))[1], (0.5 .* (pipe1.flowModel.roughnesses[1:1] + pipe1.flowModel.roughnesses[2:2]))[1], pipe1.flowModel.dp_small, pipe1.flowModel.Res_turbulent_internal[1]) ($RES_$AUX_276) (32) [ARRY] (1) {0.0} = pipe2.flowModel.Ib_flows - (pipe2.flowModel.Fs_fg + pipe2.flowModel.Fs_p) ($RES_SIM_96) (33) [SCAL] (1) tank1.Qb_flow = tank1.heatTransfer.Q_flows[1] ($RES_SIM_136) (34) [SCAL] (1) $FUN_5 = Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1.pipe2.flowModel.WallFriction.massFlowRate_dp_staticHead(pipe2.flowModel.dps_fg[1], pipe2.flowModel.rhos[1], pipe2.flowModel.rhos[2], pipe2.flowModel.mus[1], pipe2.flowModel.mus[2], pipe2.flowModel.pathLengths_internal[1], pipe2.flowModel.diameters[1], (pipe2.flowModel.g * pipe2.flowModel.dheights)[1], (0.5 .* (pipe2.flowModel.crossAreas[1:1] + pipe2.flowModel.crossAreas[2:2]))[1], (0.5 .* (pipe2.flowModel.roughnesses[1:1] + pipe2.flowModel.roughnesses[2:2]))[1], pipe2.flowModel.dp_small, pipe2.flowModel.Res_turbulent_internal[1]) ($RES_$AUX_275) (35) [ARRY] (1) pipe2.flowModel.Is = {pipe2.flowModel.m_flows[1] * pipe2.flowModel.pathLengths[1]} ($RES_SIM_97) (36) [SCAL] (1) tank1.Hb_flow = $FUN_3 ($RES_SIM_137) (37) [SCAL] (1) $FUN_6 = sum(tank2.ports.m_flow) ($RES_$AUX_274) (38) [ARRY] (1) pipe2.flowModel.dps_fg = {(2.0 * (pipe2.flowModel.Fs_fg[1] / pipe2.flowModel.nParallel)) / (pipe2.flowModel.crossAreas[1] + pipe2.flowModel.crossAreas[2])} ($RES_SIM_98) (39) [SCAL] (1) tank1.mb_flow = $FUN_2 ($RES_SIM_138) (40) [SCAL] (1) $FUN_7 = sum(tank2.port_b_H_flow_bottom) ($RES_$AUX_273) (41) [ARRY] (1) pipe2.flowModel.Fs_p = pipe2.flowModel.nParallel * {0.5 * (pipe2.flowModel.crossAreas[1] + pipe2.flowModel.crossAreas[2]) * (pipe2.flowModel.states.T - pipe2.flowModel.states.T)} ($RES_SIM_99) (42) [SCAL] (1) tank1.fluidVolume = tank1.crossArea * tank1.level + tank1.V0 ($RES_SIM_139) (43) [SCAL] (1) $FUN_8 = Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1.pipe3.flowModel.WallFriction.massFlowRate_dp_staticHead(pipe3.flowModel.dps_fg[1], pipe3.flowModel.rhos[1], pipe3.flowModel.rhos[2], pipe3.flowModel.mus[1], pipe3.flowModel.mus[2], pipe3.flowModel.pathLengths_internal[1], pipe3.flowModel.diameters[1], (pipe3.flowModel.g * pipe3.flowModel.dheights)[1], (0.5 .* (pipe3.flowModel.crossAreas[1:1] + pipe3.flowModel.crossAreas[2:2]))[1], (0.5 .* (pipe3.flowModel.roughnesses[1:1] + pipe3.flowModel.roughnesses[2:2]))[1], pipe3.flowModel.dp_small, pipe3.flowModel.Res_turbulent_internal[1]) ($RES_$AUX_272) (44) [FOR-] (2) ($RES_EVT_300) (44) [----] for $i1 in 1:2 loop (44) [----] [SCAL] (1) $SEV_7[$i1] = $SEV_4[$i1] or $SEV_6[$i1] ($RES_EVT_301) (44) [----] end for; (45) [SCAL] (1) $FUN_9 = Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1.pipe3.flowModel.WallFriction.pressureLoss_m_flow(pipe3.flowModel.m_flow_nominal / pipe3.flowModel.nParallel, pipe3.flowModel.rho_nominal, pipe3.flowModel.rho_nominal, pipe3.flowModel.mu_nominal, pipe3.flowModel.mu_nominal, pipe3.flowModel.pathLengths_internal[1], pipe3.flowModel.diameters[1], (0.5 .* (pipe3.flowModel.crossAreas[2:2] + pipe3.flowModel.crossAreas[1:1]))[1], (0.5 .* (pipe3.flowModel.roughnesses[2:2] + pipe3.flowModel.roughnesses[1:1]))[1], pipe3.flowModel.m_flow_small / pipe3.flowModel.nParallel, pipe3.flowModel.Res_turbulent_internal[1]) ($RES_$AUX_271) (46) [SCAL] (1) pipe3.flowModel.dp_fric_nominal = sum({$FUN_9}) ($RES_$AUX_270) (47) [FOR-] (2) ($RES_EVT_302) (47) [----] for $i1 in 1:2 loop (47) [----] [SCAL] (1) $SEV_8[$i1] = tank2.ports[$i1].m_flow >= tank2.m_flow_small ($RES_EVT_303) (47) [----] end for; (48) [FOR-] (2) ($RES_EVT_304) (48) [----] for $i1 in 1:2 loop (48) [----] [SCAL] (1) $SEV_9[$i1] = tank2.ports[$i1].m_flow <= (-tank2.m_flow_small) ($RES_EVT_305) (48) [----] end for; (49) [FOR-] (2) ($RES_EVT_306) (49) [----] for $i1 in 1:2 loop (49) [----] [SCAL] (1) $SEV_10[$i1] = 0.008105694691387022 / (995.586 * tank2.portsData_diameter2[$i1] * tank2.portsData_diameter2[$i1] * tank2.portsData_diameter2[$i1] * tank2.portsData_diameter2[$i1]) >= (0.8105694691387022 * tank2.zetas_out[$i1]) / (995.586 * tank2.portsData_diameter2[$i1] * tank2.portsData_diameter2[$i1] * tank2.portsData_diameter2[$i1] * tank2.portsData_diameter2[$i1]) ($RES_EVT_307) (49) [----] end for; (50) [SCAL] (1) $SEV_11 = tank2.ports[2].m_flow > 0.0 ($RES_EVT_308) (51) [SCAL] (1) $SEV_12 = tank2.ports[1].m_flow > 0.0 ($RES_EVT_309) (52) [ARRY] (1) pipe3.flowModel.Is = {pipe3.flowModel.m_flows[1] * pipe3.flowModel.pathLengths[1]} ($RES_SIM_20) (53) [ARRY] (1) pipe3.flowModel.dps_fg = {(2.0 * (pipe3.flowModel.Fs_fg[1] / pipe3.flowModel.nParallel)) / (pipe3.flowModel.crossAreas[1] + pipe3.flowModel.crossAreas[2])} ($RES_SIM_21) (54) [ARRY] (1) pipe3.flowModel.Fs_p = pipe3.flowModel.nParallel * {0.5 * (pipe3.flowModel.crossAreas[1] + pipe3.flowModel.crossAreas[2]) * (pipe3.flowModel.states.T - pipe3.flowModel.states.T)} ($RES_SIM_22) (55) [ARRY] (1) pipe3.flowModel.Ib_flows = {0.0} ($RES_SIM_23) (56) [SCAL] (1) pipe3.flowModel.rhos_act[1] = noEvent(if $SEV_3 then pipe3.flowModel.rhos[1] else pipe3.flowModel.rhos[2]) ($RES_SIM_24) (57) [SCAL] (1) pipe3.flowModel.mus_act[1] = noEvent(if $SEV_3 then pipe3.flowModel.mus[1] else pipe3.flowModel.mus[2]) ($RES_SIM_25) (58) [ARRY] (1) pipe3.flowModel.m_flows = {homotopy(({$FUN_8} .* pipe3.flowModel.nParallel)[1], (pipe3.flowModel.m_flow_nominal / pipe3.flowModel.dp_nominal * (pipe3.flowModel.dps_fg - (pipe3.flowModel.g * pipe3.flowModel.dheights) .* pipe3.flowModel.rho_nominal))[1])} ($RES_SIM_26) (59) [SCAL] (1) $DER.tank2.m = tank2.mb_flow ($RES_SIM_27) (60) [SCAL] (1) $DER.tank2.U = tank2.Qb_flow + tank2.Hb_flow ($RES_SIM_28) (61) [FOR-] (2) ($RES_SIM_141) (61) [----] for $i1 in 1:2 loop (61) [----] [SCAL] (1) tank1.bottomArea[$i1] = 3.141592653589793 * (tank1.portsData_diameter2[$i1] / 2.0) ^ 2.0 ($RES_SIM_142) (61) [----] end for; (62) [SCAL] (1) tank2.U = tank2.m * (4184.0 * ((-273.15) - ((-273.15) - tank2.medium.T_degC))) ($RES_SIM_29) (63) [SCAL] (1) $FUN_11 = sqrt(3.141592653589793 * tank2.crossArea) ($RES_$AUX_269) (64) [FOR-] (2) ($RES_SIM_143) (64) [----] for $i1 in 1:2 loop (64) [----] [SCAL] (1) tank1.ports_emptyPipeHysteresis[$i1] = tank1.portsData_diameter2[$i1] * tank1.hysteresisFactor ($RES_SIM_144) (64) [----] end for; (65) [SCAL] (1) $FUN_12 = Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1.pipe2.flowModel.WallFriction.pressureLoss_m_flow(pipe2.flowModel.m_flow_nominal / pipe2.flowModel.nParallel, pipe2.flowModel.rho_nominal, pipe2.flowModel.rho_nominal, pipe2.flowModel.mu_nominal, pipe2.flowModel.mu_nominal, pipe2.flowModel.pathLengths_internal[1], pipe2.flowModel.diameters[1], (0.5 .* (pipe2.flowModel.crossAreas[2:2] + pipe2.flowModel.crossAreas[1:1]))[1], (0.5 .* (pipe2.flowModel.roughnesses[2:2] + pipe2.flowModel.roughnesses[1:1]))[1], pipe2.flowModel.m_flow_small / pipe2.flowModel.nParallel, pipe2.flowModel.Res_turbulent_internal[1]) ($RES_$AUX_268) (66) [SCAL] (1) pipe2.flowModel.dp_fric_nominal = sum({$FUN_12}) ($RES_$AUX_267) (67) [SCAL] (1) $FUN_14 = Modelica.Fluid.Examples.AST_BatchPlant.Test.TanksWithEmptyingPipe1.pipe1.flowModel.WallFriction.pressureLoss_m_flow(pipe1.flowModel.m_flow_nominal / pipe1.flowModel.nParallel, pipe1.flowModel.rho_nominal, pipe1.flowModel.rho_nominal, pipe1.flowModel.mu_nominal, pipe1.flowModel.mu_nominal, pipe1.flowModel.pathLengths_internal[1], pipe1.flowModel.diameters[1], (0.5 .* (pipe1.flowModel.crossAreas[2:2] + pipe1.flowModel.crossAreas[1:1]))[1], (0.5 .* (pipe1.flowModel.roughnesses[2:2] + pipe1.flowModel.roughnesses[1:1]))[1], pipe1.flowModel.m_flow_small / pipe1.flowModel.nParallel, pipe1.flowModel.Res_turbulent_internal[1]) ($RES_$AUX_266) (68) [SCAL] (1) pipe1.flowModel.dp_fric_nominal = sum({$FUN_14}) ($RES_$AUX_265) (69) [ARRY] (1) tank1.heatTransfer.Q_flows = tank1.heatTransfer.heatPorts.Q_flow ($RES_SIM_147) (70) [SCAL] (1) $FUN_16 = sqrt(3.141592653589793 * tank1.crossArea) ($RES_$AUX_264) (71) [ARRY] (1) tank1.heatTransfer.Ts = tank1.heatTransfer.heatPorts.T ($RES_SIM_148) (72) [SCAL] (1) $SEV_13 = tank2.m >= 0.0 ($RES_EVT_310) (73) [SCAL] (1) $SEV_14 = tank2.level <= tank2.height ($RES_EVT_311) (74) [SCAL] (1) $SEV_22 = pipe2.flowModel.m_flows[1] > 0.0 ($RES_EVT_319) (75) [ARRY] (1) tank1.heatTransfer.surfaceAreas = {2.0 * $FUN_16 * tank1.level + tank1.crossArea} ($RES_BND_204) (76) [ARRY] (1) tank1.heatTransfer.Ts = {tank1.heatTransfer.states.p} ($RES_BND_205) (77) [SCAL] (1) tank2.m = 995.586 * tank2.fluidVolume ($RES_SIM_30) (78) [ARRY] (2) tank1.portsData_diameter = tank1.portsData.diameter ($RES_BND_206) (79) [FOR-] (2) ($RES_SIM_31) (79) [----] for $i1 in 1:2 loop (79) [----] [SCAL] (1) tank2.aboveLevel[$i1] = $SEV_7[$i1] ($RES_SIM_32) (79) [----] end for; (80) [ARRY] (2) tank1.portsData_height = tank1.portsData.height ($RES_BND_207) (81) [ARRY] (2) pipe1.flowModel.vs = {-(0.0010044335697769957 * pipe1.port_b.m_flow) / pipe1.flowModel.crossAreas[1], -(0.0010044335697769957 * pipe1.port_b.m_flow) / pipe1.flowModel.crossAreas[2]} / pipe1.nParallel ($RES_BND_208) (82) [FOR-] (2) ($RES_SIM_33) (82) [----] for $i1 in 1:2 loop (82) [----] [SCAL] (1) tank2.levelAbovePort[$i1] = if tank2.aboveLevel[$i1] then tank2.level - tank2.portsData_height2[$i1] else 0.0 ($RES_SIM_34) (82) [----] end for; (83) [ARRY] (2) pipe1.flowModel.crossAreas = {pipe1.crossArea, pipe1.crossArea} ($RES_BND_209) (84) [FOR-] (2) ($RES_SIM_35) (84) [----] for $i1 in 1:2 loop (84) [----] [SCAL] (1) tank2.ports[$i1].h_outflow = 4184.0 * ((-273.15) - ((-273.15) - tank2.medium.T_degC)) ($RES_SIM_36) (84) [----] end for; (85) [FOR-] (2) ($RES_SIM_37) (85) [----] for $i1 in 1:2 loop (85) [----] [SCAL] (1) tank2.zetas_out[$i1] = 1.0 + (if tank2.aboveLevel[$i1] then 0.0 else tank2.zetaLarge) ($RES_SIM_38) (85) [----] end for; (86) [FOR-] (2) ($RES_SIM_39) (86) [----] for $i1 in 1:2 loop (86) [----] [SCAL] (1) tank2.ports[$i1].p = system.g * tank2.levelAbovePort[$i1] * 995.586 + tank2.p_ambient + smooth(2, if $SEV_8[$i1] then (0.008105694691387022 * tank2.ports[$i1].m_flow ^ 2.0) / (995.586 * tank2.portsData_diameter2[$i1] * tank2.portsData_diameter2[$i1] * tank2.portsData_diameter2[$i1] * tank2.portsData_diameter2[$i1]) else if $SEV_9[$i1] then -(0.8105694691387022 * tank2.zetas_out[$i1] * tank2.ports[$i1].m_flow ^ 2.0) / (995.586 * tank2.portsData_diameter2[$i1] * tank2.portsData_diameter2[$i1] * tank2.portsData_diameter2[$i1] * tank2.portsData_diameter2[$i1]) else if $SEV_10[$i1] then Modelica.Fluid.Utilities.regSquare2.regSquare2_utility(tank2.ports[$i1].m_flow, tank2.m_flow_small, 0.008105694691387022 / (995.586 * tank2.portsData_diameter2[$i1] * tank2.portsData_diameter2[$i1] * tank2.portsData_diameter2[$i1] * tank2.portsData_diameter2[$i1]), (0.8105694691387022 * tank2.zetas_out[$i1]) / (995.586 * tank2.portsData_diameter2[$i1] * tank2.portsData_diameter2[$i1] * tank2.portsData_diameter2[$i1] * tank2.portsData_diameter2[$i1]), false, 1.0) else -Modelica.Fluid.Utilities.regSquare2.regSquare2_utility(-tank2.ports[$i1].m_flow, tank2.m_flow_small, (0.8105694691387022 * tank2.zetas_out[$i1]) / (995.586 * tank2.portsData_diameter2[$i1] * tank2.portsData_diameter2[$i1] * tank2.portsData_diameter2[$i1] * tank2.portsData_diameter2[$i1]), 0.008105694691387022 / (995.586 * tank2.portsData_diameter2[$i1] * tank2.portsData_diameter2[$i1] * tank2.portsData_diameter2[$i1] * tank2.portsData_diameter2[$i1]), false, 1.0)) ($RES_SIM_40) (86) [----] end for; (87) [SCAL] (1) tank1.medium.state.p = tank1.p_ambient ($RES_SIM_153) (88) [SCAL] (1) tank1.medium.state.T = -((-273.15) - tank1.medium.T_degC) ($RES_SIM_154) (89) [SCAL] (1) $SEV_24 = pipe1.flowModel.m_flows[1] > 0.0 ($RES_EVT_321) (90) [FOR-] (2) ($RES_EVT_322) (90) [----] for $i1 in 1:2 loop (90) [----] [SCAL] (1) $SEV_25[$i1] = tank1.level >= (tank1.portsData_height2[$i1] + tank1.ports_emptyPipeHysteresis[$i1]) ($RES_EVT_323) (90) [----] end for; (91) [FOR-] (2) ($RES_EVT_324) (91) [----] for $i1 in 1:2 loop (91) [----] [SCAL] (1) $SEV_26[$i1] = tank1.level >= (tank1.portsData_height2[$i1] - tank1.ports_emptyPipeHysteresis[$i1]) ($RES_EVT_325) (91) [----] end for; (92) [FOR-] (2) ($RES_EVT_326) (92) [----] for $i1 in 1:2 loop (92) [----] [SCAL] (1) $SEV_27[$i1] = $TEV_1 and $SEV_26[$i1] ($RES_EVT_327) (92) [----] end for; (93) [FOR-] (2) ($RES_EVT_328) (93) [----] for $i1 in 1:2 loop (93) [----] [SCAL] (1) $SEV_28[$i1] = $SEV_25[$i1] or $SEV_27[$i1] ($RES_EVT_329) (93) [----] end for; (94) [ARRY] (2) pipe1.flowModel.dimensions = {(4.0 * pipe1.crossArea) / pipe1.perimeter, (4.0 * pipe1.crossArea) / pipe1.perimeter} ($RES_BND_210) (95) [ARRY] (2) pipe1.flowModel.roughnesses = {pipe1.roughness, pipe1.roughness} ($RES_BND_211) (96) [ARRY] (1) pipe1.flowModel.dheights = {pipe1.height_ab} ($RES_BND_212) (97) [ARRY] (1) pipe1.flowModel.pathLengths = {pipe1.length} ($RES_BND_213) (98) [FOR-] (2) ($RES_BND_214) (98) [----] for $i1 in 1:2 loop (98) [----] [SCAL] (1) pipe1.flowModel.rhos[$i1] = 995.586 ($RES_BND_215) (98) [----] end for; (99) [FOR-] (2) ($RES_BND_216) (99) [----] for $i1 in 1:2 loop (99) [----] [SCAL] (1) pipe1.flowModel.mus[$i1] = 0.001 ($RES_BND_217) (99) [----] end for; (100) [ARRY] (1) pipe1.flowModel.pathLengths_internal = pipe1.flowModel.pathLengths ($RES_BND_218) (101) [SCAL] (1) pipe1.flowModel.Res_turbulent_internal[1] = pipe1.flowModel.Re_turbulent ($RES_BND_219) (102) [SCAL] (1) tank2.port_b_H_flow_bottom[2] = smooth(0, tank2.ports[2].m_flow * (if $SEV_11 then pipe3.port_b.h_outflow else tank2.ports[2].h_outflow)) ($RES_SIM_43) (103) [SCAL] (1) tank2.port_b_H_flow_bottom[1] = smooth(0, tank2.ports[1].m_flow * (if $SEV_12 then pipe2.port_b.h_outflow else tank2.ports[1].h_outflow)) ($RES_SIM_44) (104) [SCAL] (1) tank2.Qb_flow = tank2.heatTransfer.Q_flows[1] ($RES_SIM_46) (105) [SCAL] (1) tank2.Hb_flow = $FUN_7 ($RES_SIM_47) (106) [SCAL] (1) tank2.mb_flow = $FUN_6 ($RES_SIM_48) (107) [SCAL] (1) ambient_fixed1.ports[1].p = ambient_fixed1.p ($RES_SIM_161) (108) [SCAL] (1) tank2.fluidVolume = tank2.crossArea * tank2.level + tank2.V0 ($RES_SIM_49) (109) [SCAL] (1) ambient_fixed1.ports[1].h_outflow = 4184.0 * ((-273.15) + ambient_fixed1.T) ($RES_SIM_162) (110) [FOR-] (2) ($RES_EVT_330) (110) [----] for $i1 in 1:2 loop (110) [----] [SCAL] (1) $SEV_29[$i1] = tank1.ports[$i1].m_flow >= tank1.m_flow_small ($RES_EVT_331) (110) [----] end for; (111) [FOR-] (2) ($RES_EVT_332) (111) [----] for $i1 in 1:2 loop (111) [----] [SCAL] (1) $SEV_30[$i1] = tank1.ports[$i1].m_flow <= (-tank1.m_flow_small) ($RES_EVT_333) (111) [----] end for; (112) [FOR-] (2) ($RES_EVT_334) (112) [----] for $i1 in 1:2 loop (112) [----] [SCAL] (1) $SEV_31[$i1] = 0.008105694691387022 / (995.586 * tank1.portsData_diameter2[$i1] * tank1.portsData_diameter2[$i1] * tank1.portsData_diameter2[$i1] * tank1.portsData_diameter2[$i1]) >= (0.8105694691387022 * tank1.zetas_out[$i1]) / (995.586 * tank1.portsData_diameter2[$i1] * tank1.portsData_diameter2[$i1] * tank1.portsData_diameter2[$i1] * tank1.portsData_diameter2[$i1]) ($RES_EVT_335) (112) [----] end for; (113) [SCAL] (1) $SEV_32 = tank1.ports[2].m_flow > 0.0 ($RES_EVT_336) (114) [SCAL] (1) $SEV_33 = tank1.ports[1].m_flow > 0.0 ($RES_EVT_337) (115) [SCAL] (1) $SEV_34 = tank1.m >= 0.0 ($RES_EVT_338) (116) [SCAL] (1) $SEV_35 = tank1.level <= tank1.height ($RES_EVT_339) (117) [ARRY] (1) pipe1.flowModel.diameters = 0.5 * (pipe1.flowModel.dimensions[2:2] + pipe1.flowModel.dimensions[1:1]) ($RES_BND_220) (118) [ARRY] (2) pipe2.flowModel.vs = {-(0.0010044335697769957 * pipe2.port_b.m_flow) / pipe2.flowModel.crossAreas[1], -(0.0010044335697769957 * pipe2.port_b.m_flow) / pipe2.flowModel.crossAreas[2]} / pipe2.nParallel ($RES_BND_222) (119) [ARRY] (2) pipe2.flowModel.crossAreas = {pipe2.crossArea, pipe2.crossArea} ($RES_BND_223) (120) [ARRY] (2) pipe2.flowModel.dimensions = {(4.0 * pipe2.crossArea) / pipe2.perimeter, (4.0 * pipe2.crossArea) / pipe2.perimeter} ($RES_BND_224) (121) [ARRY] (2) pipe2.flowModel.roughnesses = {pipe2.roughness, pipe2.roughness} ($RES_BND_225) (122) [ARRY] (1) pipe2.flowModel.dheights = {pipe2.height_ab} ($RES_BND_226) (123) [ARRY] (1) pipe2.flowModel.pathLengths = {pipe2.length} ($RES_BND_227) (124) [FOR-] (2) ($RES_SIM_51) (124) [----] for $i1 in 1:2 loop (124) [----] [SCAL] (1) tank2.bottomArea[$i1] = 3.141592653589793 * (tank2.portsData_diameter2[$i1] / 2.0) ^ 2.0 ($RES_SIM_52) (124) [----] end for; (125) [FOR-] (2) ($RES_BND_228) (125) [----] for $i1 in 1:2 loop (125) [----] [SCAL] (1) pipe2.flowModel.rhos[$i1] = 995.586 ($RES_BND_229) (125) [----] end for; (126) [FOR-] (2) ($RES_SIM_53) (126) [----] for $i1 in 1:2 loop (126) [----] [SCAL] (1) tank2.ports_emptyPipeHysteresis[$i1] = tank2.portsData_diameter2[$i1] * tank2.hysteresisFactor ($RES_SIM_54) (126) [----] end for; (127) [ARRY] (1) tank2.heatTransfer.Q_flows = tank2.heatTransfer.heatPorts.Q_flow ($RES_SIM_57) (128) [ARRY] (1) tank2.heatTransfer.Ts = tank2.heatTransfer.heatPorts.T ($RES_SIM_58) (129) [FOR-] (2) ($RES_BND_230) (129) [----] for $i1 in 1:2 loop (129) [----] [SCAL] (1) pipe2.flowModel.mus[$i1] = 0.001 ($RES_BND_231) (129) [----] end for; (130) [ARRY] (1) pipe2.flowModel.pathLengths_internal = pipe2.flowModel.pathLengths ($RES_BND_232) (131) [SCAL] (1) pipe2.flowModel.Res_turbulent_internal[1] = pipe2.flowModel.Re_turbulent ($RES_BND_233) (132) [ARRY] (1) pipe2.flowModel.diameters = 0.5 * (pipe2.flowModel.dimensions[2:2] + pipe2.flowModel.dimensions[1:1]) ($RES_BND_234) (133) [ARRY] (1) pipe2.flowModel.Ib_flows = {0.0} ($RES_SIM_100) (134) [SCAL] (1) pipe2.flowModel.rhos_act[1] = noEvent(if $SEV_22 then pipe2.flowModel.rhos[1] else pipe2.flowModel.rhos[2]) ($RES_SIM_101) (135) [SCAL] (1) pipe2.flowModel.mus_act[1] = noEvent(if $SEV_22 then pipe2.flowModel.mus[1] else pipe2.flowModel.mus[2]) ($RES_SIM_102) (136) [SCAL] (1) tank2.medium.state.p = tank2.p_ambient ($RES_SIM_63) (137) [ARRY] (1) pipe2.flowModel.m_flows = {homotopy(({$FUN_5} .* pipe2.flowModel.nParallel)[1], (pipe2.flowModel.m_flow_nominal / pipe2.flowModel.dp_nominal * (pipe2.flowModel.dps_fg - (pipe2.flowModel.g * pipe2.flowModel.dheights) .* pipe2.flowModel.rho_nominal))[1])} ($RES_SIM_103) (138) [SCAL] (1) tank2.medium.state.T = -((-273.15) - tank2.medium.T_degC) ($RES_SIM_64) (139) [SCAL] (1) pipe1.port_a.h_outflow = tank1.ports[1].h_outflow + system.g * pipe1.height_ab ($RES_SIM_105) (140) [SCAL] (1) pipe1.port_b.h_outflow = ambient_fixed1.ports[1].h_outflow - system.g * pipe1.height_ab ($RES_SIM_106) (141) [SCAL] (1) pipe3.port_b.m_flow + tank2.ports[2].m_flow = 0.0 ($RES_SIM_181) (142) [SCAL] (1) -pipe1.port_b.m_flow = pipe1.flowModel.m_flows[1] ($RES_SIM_108) (143) [SCAL] (1) tank1.ports[2].m_flow - pipe3.port_b.m_flow = 0.0 ($RES_SIM_182) (144) [ARRY] (1) {0.0} = pipe1.flowModel.Ib_flows - (pipe1.flowModel.Fs_fg + pipe1.flowModel.Fs_p) ($RES_SIM_109) (145) [SCAL] (1) tank2.heatTransfer.heatPorts[1].Q_flow = 0.0 ($RES_SIM_183) (146) [SCAL] (1) tank2.ports[1].m_flow + pipe2.port_b.m_flow = 0.0 ($RES_SIM_184) (147) [SCAL] (1) tank1.heatTransfer.heatPorts[1].Q_flow = 0.0 ($RES_SIM_185) (148) [SCAL] (1) pipe1.port_b.m_flow + tank1.ports[1].m_flow = 0.0 ($RES_SIM_186) (149) [SCAL] (1) pipe3.port_b.p = tank2.ports[2].p ($RES_SIM_187) (150) [SCAL] (1) pipe3.port_a.p = tank1.ports[2].p ($RES_SIM_188) (151) [SCAL] (1) tank2.ports[1].p = pipe2.port_b.p ($RES_SIM_189) (152) [ARRY] (1) tank2.heatTransfer.surfaceAreas = {2.0 * $FUN_11 * tank2.level + tank2.crossArea} ($RES_BND_241) (153) [ARRY] (1) tank2.heatTransfer.Ts = {tank2.heatTransfer.states.p} ($RES_BND_242) (154) [ARRY] (2) tank2.portsData_diameter = tank2.portsData.diameter ($RES_BND_243) (155) [ARRY] (2) tank2.portsData_height = tank2.portsData.height ($RES_BND_244) (156) [ARRY] (2) pipe3.flowModel.vs = {-(0.0010044335697769957 * pipe3.port_b.m_flow) / pipe3.flowModel.crossAreas[1], -(0.0010044335697769957 * pipe3.port_b.m_flow) / pipe3.flowModel.crossAreas[2]} / pipe3.nParallel ($RES_BND_245) (157) [ARRY] (2) pipe3.flowModel.crossAreas = {pipe3.crossArea, pipe3.crossArea} ($RES_BND_246) (158) [ARRY] (1) pipe1.flowModel.Is = {pipe1.flowModel.m_flows[1] * pipe1.flowModel.pathLengths[1]} ($RES_SIM_110) (159) [ARRY] (2) pipe3.flowModel.dimensions = {(4.0 * pipe3.crossArea) / pipe3.perimeter, (4.0 * pipe3.crossArea) / pipe3.perimeter} ($RES_BND_247) (160) [SCAL] (1) ambient_fixed2.ports[1].p = ambient_fixed2.p ($RES_SIM_71) (161) [ARRY] (1) pipe1.flowModel.dps_fg = {(2.0 * (pipe1.flowModel.Fs_fg[1] / pipe1.flowModel.nParallel)) / (pipe1.flowModel.crossAreas[1] + pipe1.flowModel.crossAreas[2])} ($RES_SIM_111) (162) [ARRY] (2) pipe3.flowModel.roughnesses = {pipe3.roughness, pipe3.roughness} ($RES_BND_248) (163) [SCAL] (1) ambient_fixed2.ports[1].h_outflow = 4184.0 * ((-273.15) + ambient_fixed2.T) ($RES_SIM_72) (164) [ARRY] (1) pipe1.flowModel.Fs_p = pipe1.flowModel.nParallel * {0.5 * (pipe1.flowModel.crossAreas[1] + pipe1.flowModel.crossAreas[2]) * (pipe1.flowModel.states.T - pipe1.flowModel.states.T)} ($RES_SIM_112) (165) [ARRY] (1) pipe3.flowModel.dheights = {pipe3.height_ab} ($RES_BND_249) (166) [ARRY] (1) pipe1.flowModel.Ib_flows = {0.0} ($RES_SIM_113) (167) [SCAL] (1) pipe1.flowModel.rhos_act[1] = noEvent(if $SEV_24 then pipe1.flowModel.rhos[1] else pipe1.flowModel.rhos[2]) ($RES_SIM_114) (168) [SCAL] (1) pipe1.flowModel.mus_act[1] = noEvent(if $SEV_24 then pipe1.flowModel.mus[1] else pipe1.flowModel.mus[2]) ($RES_SIM_115) (169) [ARRY] (1) pipe1.flowModel.m_flows = {homotopy(({$FUN_4} .* pipe1.flowModel.nParallel)[1], (pipe1.flowModel.m_flow_nominal / pipe1.flowModel.dp_nominal * (pipe1.flowModel.dps_fg - (pipe1.flowModel.g * pipe1.flowModel.dheights) .* pipe1.flowModel.rho_nominal))[1])} ($RES_SIM_116) (170) [SCAL] (1) ambient_fixed2.ports[1].m_flow - pipe2.port_b.m_flow = 0.0 ($RES_SIM_190) (171) [SCAL] (1) $DER.tank1.m = tank1.mb_flow ($RES_SIM_117) (172) [SCAL] (1) ambient_fixed2.ports[1].p = pipe2.port_a.p ($RES_SIM_191) (173) [SCAL] (1) $DER.tank1.U = tank1.Qb_flow + tank1.Hb_flow ($RES_SIM_118) (174) [SCAL] (1) ambient_fixed1.ports[1].m_flow - pipe1.port_b.m_flow = 0.0 ($RES_SIM_192) (175) [SCAL] (1) tank1.U = tank1.m * (4184.0 * ((-273.15) - ((-273.15) - tank1.medium.T_degC))) ($RES_SIM_119) (176) [SCAL] (1) ambient_fixed1.ports[1].p = pipe1.port_a.p ($RES_SIM_193) (177) [SCAL] (1) tank1.ports[1].p = pipe1.port_b.p ($RES_SIM_194) (178) [ARRY] (2) tank2.portsData_height = tank2.portsData_height2 ($RES_SIM_195) (179) [ARRY] (2) tank2.portsData_diameter = tank2.portsData_diameter2 ($RES_SIM_196) (180) [ARRY] (2) tank1.portsData_height = tank1.portsData_height2 ($RES_SIM_197) (181) [ARRY] (2) tank1.portsData_diameter = tank1.portsData_diameter2 ($RES_SIM_198) (182) [ARRY] (1) pipe3.flowModel.pathLengths = {pipe3.length} ($RES_BND_250) (183) [SCAL] (1) $TEV_0 = $PRE.tank2.aboveLevel[$i1] ($RES_EVT_286) (184) [FOR-] (2) ($RES_BND_251) (184) [----] for $i1 in 1:2 loop (184) [----] [SCAL] (1) pipe3.flowModel.rhos[$i1] = 995.586 ($RES_BND_252) (184) [----] end for; (185) [SCAL] (1) $TEV_1 = $PRE.tank1.aboveLevel[$i1] ($RES_EVT_287) (186) [FOR-] (2) ($RES_EVT_288) (186) [----] for $i1 in 1:2 loop (186) [----] [SCAL] (1) $SEV_0[$i1] = tank2.level_start >= tank2.portsData_height2[$i1] ($RES_EVT_289) (186) [----] end for; (187) [FOR-] (2) ($RES_BND_253) (187) [----] for $i1 in 1:2 loop (187) [----] [SCAL] (1) pipe3.flowModel.mus[$i1] = 0.001 ($RES_BND_254) (187) [----] end for;