Running: ./testmodel.py --libraries=/home/hudson/saved_omc/libraries/.openmodelica/libraries/ --ompython_omhome=/usr Modelica_4.0.0_Modelica.StateGraph.Examples.ControlledTanks.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.StateGraph.Examples.ControlledTanks,tolerance=1e-06,outputFormat="mat",numberOfIntervals=5000,variableFilter="time|tank1.level|tank2.level|shut.on|shut.reset.1.|shut.reset.2.|start.on|start.reset.1.|start.reset.2.|stop.on|stop.reset.1.|stop.reset.2.|tankController.T1.enableFire|tankController.T2.enableFire|tankController.T3.enableFire|tankController.T4.enableFire|tankController.T5.enableFire|tankController.T6.enableFire|tankController.makeProduct.T1.enableFire|tankController.makeProduct.T2.enableFire|tankController.makeProduct.T3.enableFire|tankController.makeProduct.T4.enableFire",fileNamePrefix="Modelica_4.0.0_Modelica.StateGraph.Examples.ControlledTanks") translateModel(Modelica.StateGraph.Examples.ControlledTanks,tolerance=1e-06,outputFormat="mat",numberOfIntervals=5000,variableFilter="time|tank1.level|tank2.level|shut.on|shut.reset.1.|shut.reset.2.|start.on|start.reset.1.|start.reset.2.|stop.on|stop.reset.1.|stop.reset.2.|tankController.T1.enableFire|tankController.T2.enableFire|tankController.T3.enableFire|tankController.T4.enableFire|tankController.T5.enableFire|tankController.T6.enableFire|tankController.makeProduct.T1.enableFire|tankController.makeProduct.T2.enableFire|tankController.makeProduct.T3.enableFire|tankController.makeProduct.T4.enableFire",fileNamePrefix="Modelica_4.0.0_Modelica.StateGraph.Examples.ControlledTanks") Notification: Performance of loadFile(/home/hudson/saved_omc/libraries/.openmodelica/libraries/ModelicaServices 4.0.0+maint.om/package.mo): time 0.001221/0.001221, allocations: 105.7 kB / 17.69 MB, free: 5.379 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.001253/0.001253, allocations: 192 kB / 18.63 MB, free: 4.461 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.252/1.252, allocations: 222.9 MB / 242.3 MB, free: 15.17 MB / 206.1 MB Notification: Performance of FrontEnd - Absyn->SCode: time 2.582e-05/2.585e-05, allocations: 10.16 kB / 302 MB, free: 5.211 MB / 238.1 MB Notification: Performance of NFInst.instantiate(Modelica.StateGraph.Examples.ControlledTanks): time 0.004813/0.004853, allocations: 3.805 MB / 305.8 MB, free: 1.398 MB / 238.1 MB Notification: Performance of NFInst.instExpressions: time 0.003874/0.008747, allocations: 2.59 MB / 308.4 MB, free: 14.8 MB / 254.1 MB Notification: Performance of NFInst.updateImplicitVariability: time 0.0004097/0.009173, allocations: 27.88 kB / 308.4 MB, free: 14.77 MB / 254.1 MB Notification: Performance of NFTyping.typeComponents: time 0.001126/0.01031, allocations: 0.5521 MB / 309 MB, free: 14.22 MB / 254.1 MB Notification: Performance of NFTyping.typeBindings: time 0.0008068/0.01115, allocations: 437.8 kB / 309.4 MB, free: 13.79 MB / 254.1 MB Notification: Performance of NFTyping.typeClassSections: time 0.002246/0.01341, allocations: 1.082 MB / 310.5 MB, free: 12.71 MB / 254.1 MB Notification: Performance of NFFlatten.flatten: time 0.002376/0.0158, allocations: 2.083 MB / 312.6 MB, free: 10.63 MB / 254.1 MB Notification: Performance of NFFlatten.resolveConnections: time 0.001755/0.01756, allocations: 1.344 MB / 313.9 MB, free: 9.254 MB / 254.1 MB Notification: Performance of NFEvalConstants.evaluate: time 0.000953/0.01853, allocations: 0.8725 MB / 314.8 MB, free: 8.379 MB / 254.1 MB Notification: Performance of NFSimplifyModel.simplify: time 0.0007887/0.01932, allocations: 0.8054 MB / 315.6 MB, free: 7.57 MB / 254.1 MB Notification: Performance of NFPackage.collectConstants: time 0.0002456/0.01958, allocations: 220 kB / 315.8 MB, free: 7.355 MB / 254.1 MB Notification: Performance of NFFlatten.collectFunctions: time 0.0004864/0.02007, allocations: 315.9 kB / 316.1 MB, free: 7.047 MB / 254.1 MB Notification: Performance of combineBinaries: time 0.001457/0.02154, allocations: 2.234 MB / 318.4 MB, free: 4.789 MB / 254.1 MB Notification: Performance of replaceArrayConstructors: time 0.0007512/0.0223, allocations: 1.308 MB / 319.7 MB, free: 3.461 MB / 254.1 MB Notification: Performance of NFVerifyModel.verify: time 0.0003994/0.02271, allocations: 259.2 kB / 319.9 MB, free: 3.207 MB / 254.1 MB Notification: Performance of FrontEnd: time 0.0003695/0.02308, allocations: 155 kB / 320.1 MB, free: 3.055 MB / 254.1 MB Notification: Model statistics after passing the front-end and creating the data structures used by the back-end: * Number of equations: 339 (326) * Number of variables: 319 (309) Notification: Performance of Bindings: time 0.006666/0.02976, allocations: 6.522 MB / 326.6 MB, free: 12.32 MB / 270.1 MB Notification: Performance of FunctionAlias: time 0.001157/0.03093, allocations: 1.16 MB / 327.7 MB, free: 11.13 MB / 270.1 MB Notification: Performance of Early Inline: time 0.004268/0.03521, allocations: 4.326 MB / 332.1 MB, free: 6.738 MB / 270.1 MB Notification: Performance of simplify1: time 0.0003123/0.03553, allocations: 259.6 kB / 332.3 MB, free: 6.484 MB / 270.1 MB Notification: Performance of Alias: time 0.007547/0.04309, allocations: 6.761 MB / 339.1 MB, free: 15.14 MB / 286.1 MB Notification: Performance of simplify2: time 0.0001977/0.04331, allocations: 191.7 kB / 339.3 MB, free: 14.95 MB / 286.1 MB Notification: Performance of Events: time 0.001281/0.0446, allocations: 1.322 MB / 340.6 MB, free: 13.56 MB / 286.1 MB Notification: Performance of Detect States: time 0.001504/0.04611, allocations: 1.818 MB / 342.4 MB, free: 11.7 MB / 286.1 MB Notification: Performance of Partitioning: time 0.001676/0.0478, allocations: 1.697 MB / 344.1 MB, free: 9.887 MB / 286.1 MB Error: Internal error NBSlice.fillDependencyArray failed because number of flattened indices 1 for dependency shut.on could not be devided by the body size 2 without rest. Error: Internal error NBAdjacency.Matrix.createPseudo failed for: [ARRY] (2) start.reset = {stop.on, shut.on} ($RES_BND_388) Error: Internal error NBAdjacency.Matrix.create failed to create adjacency matrix for system: System Variables (249/262) **************************** (1) [DISC] (1) final Boolean tankController.makeProduct.T1.localCondition = tankController.makeProduct.T1.localCondition (2) [ALGB] (1) protected flow Real tankController.s2.outerStatePort.subgraphStatePort.activeSteps (3) [DISC] (1) Boolean $SEV_29 (4) [DISC] (1) Boolean $SEV_28 (5) [DISC] (1) Boolean $SEV_27 (6) [DISC] (1) Boolean $SEV_26 (7) [DISC] (1) Boolean $SEV_25 (8) [DISC] (1) Boolean $SEV_24 (9) [DISS] (1) protected discrete Real shut.table.combiTimeTable.nextTimeEventScaled (fixed = true, start = 0.0) (10) [DISC] (1) Boolean $SEV_23 (11) [DISC] (1) Boolean $SEV_22 (12) [DISC] (1) Boolean $SEV_21 (13) [DISC] (1) Boolean $SEV_20 (14) [DISC] (1) Boolean $TEV_9 (15) [DISC] (1) Boolean $TEV_8 (16) [DISC] (1) Boolean $TEV_6 (17) [DISC] (1) Boolean $TEV_5 (18) [DISC] (1) Boolean $TEV_4 (19) [DISC] (1) Boolean $TEV_3 (20) [DISC] (1) Boolean[1] tankController.makeProduct.fillTank2.outPort.reset (21) [DISC] (1) Boolean $TEV_2 (22) [DISC] (1) Boolean $TEV_1 (23) [DISC] (1) Boolean $TEV_0 (24) [DISC] (1) Boolean $TEV_39 (25) [DISC] (2) protected Boolean[2] stop.pre_reset (26) [DISC] (1) Boolean $TEV_38 (27) [DISC] (1) Boolean tankController.makeProduct.T4.outPort.set (28) [DISC] (1) Boolean[1] tankController.makeProduct.wait1.outPort.reset (29) [DISC] (1) Boolean $TEV_36 (30) [DISC] (1) Boolean $TEV_35 (31) [DISC] (1) Boolean $TEV_34 (32) [DISC] (1) Boolean $TEV_33 (33) [DISC] (1) Boolean[1] tankController.makeProduct.fillTank2.inPort.occupied (34) [DISS] (1) protected discrete Real shut.table.combiTimeTable.nextTimeEvent (fixed = true, start = 0.0) (35) [DISC] (1) Boolean $TEV_32 (36) [DISC] (1) Boolean $TEV_31 (37) [ALGB] (1) Real tank1.inflow1.Fi (38) [DISC] (1) Boolean $TEV_30 (39) [DISC] (1) protected Boolean tankController.s1.outerStatePort.localActive = tankController.s1.outerStatePort.localActive (40) [DISC] (1) Boolean $SEV_19 (41) [DISC] (1) Boolean[1] tankController.s1.outPort.reset (42) [DISC] (1) Boolean $SEV_18 (43) [DISC] (1) Boolean tankController.makeProduct.T1.outPort.occupied (44) [DISC] (1) Boolean $SEV_17 (45) [ALGB] (1) protected Real tankController.makeProduct.T4.t_dummy (46) [DISC] (1) Boolean $SEV_16 (47) [ALGB] (1) protected flow Real tankController.makeProduct.wait1.outerStatePort.subgraphStatePort.activeSteps (48) [DISC] (1) Boolean $SEV_15 (49) [DISC] (1) Boolean[1] tankController.makeProduct.wait2.inPort.set (50) [DISC] (1) Boolean tankController.makeProduct.T2.outPort.occupied (51) [DER-] (1) Real $DER.tank2.level (52) [DISC] (2) Boolean[2] $SEV_14[$i1] (53) [DISC] (1) Boolean $SEV_12 (54) [DISC] (1) Boolean $SEV_11 (55) [DISC] (1) protected Boolean tankController.makeProduct.emptyTank2.newActive (56) [DISC] (2) Boolean[2] $SEV_31[$i1] (57) [DISC] (1) Boolean $SEV_10 (58) [DISS] (1) protected Boolean tankController.makeProduct.wait1.oldActive (59) [DISC] (1) Boolean tankController.makeProduct.T1.inPort.available (60) [DISC] (1) protected Boolean stop.table.y (fixed = true, start = false) (61) [DISC] (1) Boolean tankController.T2.outPort.set (62) [DISS] (1) protected discrete Real stop.table.combiTimeTable.nextTimeEventScaled (fixed = true, start = 0.0) (63) [DISC] (1) Boolean tankController.T6.outPort.occupied (64) [DISC] (1) Boolean $TEV_29 (65) [DISC] (1) Boolean $TEV_28 (66) [DISC] (1) Boolean $TEV_27 (67) [DISC] (1) Boolean $TEV_26 (68) [DISC] (1) Boolean $TEV_25 (69) [DISC] (1) Boolean tankController.T3.outPort.occupied (70) [DISC] (1) protected Boolean tankController.s2.newActive (71) [DISC] (1) Boolean $TEV_24 (72) [DISC] (1) Boolean tankController.T4.outPort.set (73) [DISC] (1) Boolean start.on (fixed = true, start = false) (74) [DISC] (1) Boolean $TEV_22 (75) [DISS] (1) protected Boolean tankController.makeProduct.wait2.oldActive (76) [DISC] (1) Boolean $TEV_20 (77) [ALGB] (1) protected flow Real tankController.makeProduct.emptyTank2.outerStatePort.subgraphStatePort.activeSteps (78) [DISC] (1) Boolean stop.on (fixed = true, start = false) (79) [DISS] (1) protected Boolean tankController.makeProduct.emptyTank2.oldActive (80) [DISC] (1) protected Boolean tankController.makeProduct.wait1.newActive (81) [DISC] (1) Boolean[1] tankController.makeProduct.emptyTank2.outPort.reset (82) [DISC] (1) Boolean tankController.T1.inPort.reset (83) [DISC] (2) Boolean[2] tankController.s1.inPort.occupied (84) [DISC] (1) Boolean tankController.makeProduct.T4.outPort.occupied (85) [DISC] (1) protected Boolean tankController.s1.newActive (86) [DISC] (1) protected Boolean tankController.makeProduct.fillTank2.newActive (87) [DISC] (1) protected Boolean shut.table.y (fixed = true, start = false) (88) [DISC] (1) Boolean $FUN_9 (89) [DISC] (1) Boolean $FUN_8 (90) [ALGB] (1) protected Real[1] start.table.combiTimeTable.y (91) [DISC] (1) Boolean $FUN_7 (92) [DISC] (1) Boolean tankController.makeProduct.T3.inPort.available (93) [DISC] (1) Boolean $FUN_6 (94) [DISC] (1) Boolean $FUN_5 (95) [DISC] (1) Boolean[1] tankController.makeProduct.fillTank1.inPort.occupied (96) [DISC] (1) Boolean[1] tankController.makeProduct.emptyTank2.inPort.occupied (97) [DISC] (1) Boolean valve2.valveControl (98) [DISC] (1) Boolean valve3.valveControl (99) [DISC] (1) Boolean $FUN_4 (100) [DISC] (1) Boolean $FUN_3 (101) [DISS] (1) protected Boolean tankController.s2.oldActive (102) [DISC] (1) Boolean tankController.makeProduct.T4.inPort.available (103) [ALGB] (1) Real tankController.makeProduct.T4.t (104) [DISC] (1) Boolean $FUN_2 (105) [DISC] (1) Boolean $TEV_18 (106) [DISC] (1) Boolean $FUN_1 (107) [DISC] (1) Boolean $TEV_17 (108) [DISC] (2) Boolean[2] tankController.s2.outPort.reset (109) [DISC] (1) Boolean $TEV_16 (110) [DISC] (1) Boolean $TEV_15 (111) [DISC] (1) protected Boolean tankController.makeProduct.wait2.newActive (112) [DISC] (1) Boolean[1] tankController.makeProduct.wait2.outPort.available (113) [ALGB] (1) Real $FUN_21 (114) [DISC] (1) Boolean[1] tankController.emptyTanks.inPort.set (115) [ALGB] (1) Real $FUN_20 (116) [DISC] (1) Boolean $TEV_13 (117) [DISC] (1) Boolean[1] tankController.makeProduct.wait1.outPort.available (118) [DISC] (2) Boolean[2] $SEV_13[$i1] (119) [DISC] (1) final Boolean tankController.T6.localCondition = tankController.T6.localCondition (120) [DISC] (1) Boolean $TEV_11 (121) [DISC] (1) Boolean $TEV_10 (122) [DISC] (1) protected Boolean tankController.makeProduct.fillTank1.newActive (123) [DISC] (1) Boolean[1] tankController.makeProduct.wait2.outPort.reset (124) [DISS] (1) protected Boolean tankController.s1.oldActive (125) [DISC] (1) Boolean[1] tankController.makeProduct.fillTank1.outPort.reset (126) [DISC] (1) Boolean tankController.T5.inPort.available (127) [DISS] (1) protected Boolean tankController.makeProduct.fillTank2.oldActive (128) [DISC] (1) Boolean tankController.T6.inPort.available (129) [DISS] (1) protected discrete Real start.table.combiTimeTable.nextTimeEventScaled (fixed = true, start = 0.0) (130) [DISC] (2) Boolean[2] stop.reset = {start.on, shut.on} (131) [ALGB] (1) Real $FUN_19 (132) [DISC] (1) Boolean $FUN_18 (133) [DISC] (1) Boolean[1] tankController.makeProduct.wait1.inPort.set (134) [DISC] (1) Boolean $FUN_17 (135) [DISC] (1) Boolean $FUN_16 (136) [DISC] (1) Boolean tankController.makeProduct.T2.enableFire (137) [DISC] (1) Boolean $FUN_15 (138) [DISC] (1) Boolean $FUN_14 (139) [DISC] (1) Boolean tankController.T3.outPort.set (140) [ALGB] (1) protected flow Real tankController.makeProduct.fillTank1.outerStatePort.subgraphStatePort.activeSteps (141) [DISC] (1) Boolean $FUN_13 (142) [DISC] (1) Boolean $FUN_12 (143) [DISC] (1) Boolean[1] tankController.emptyTanks.outPort.available (144) [DISC] (1) Boolean $FUN_11 (145) [DISS] (1) protected Boolean tankController.makeProduct.fillTank1.oldActive (146) [DISC] (1) Boolean[1] tankController.makeProduct.emptyTank2.inPort.set (147) [DISC] (1) Boolean $FUN_10 (148) [ALGB] (1) protected flow Real tankController.makeProduct.wait2.outerStatePort.subgraphStatePort.activeSteps (149) [ALGB] (1) protected flow Real tankController.emptyTanks.outerStatePort.subgraphStatePort.activeSteps (150) [DISC] (1) protected Boolean tankController.makeProduct.wait1.outerStatePort.localActive = tankController.makeProduct.wait1.outerStatePort.localActive (151) [DISC] (1) Boolean $SEV_9 (152) [DISC] (1) Boolean $SEV_8 (153) [DISC] (1) Boolean $SEV_7 (154) [DISC] (1) Boolean[1] tankController.s2.inPort.set (155) [DISC] (1) Boolean $SEV_5 (156) [DISC] (1) Boolean $SEV_4 (157) [DISC] (1) Boolean tankController.makeProduct.T2.outPort.set (158) [DISC] (1) Boolean $SEV_2 (159) [ALGB] (1) flow Real stateGraphRoot.subgraphStatePort.activeSteps (160) [DISC] (1) Boolean $SEV_1 (161) [ALGB] (1) protected Real start.table.realToBoolean.u (162) [DISC] (1) Boolean[1] tankController.makeProduct.resume.set (163) [DISC] (2) Boolean[2] shut.reset = {start.on, stop.on} (164) [DISC] (1) protected Boolean tankController.emptyTanks.newActive (165) [DISC] (1) Boolean tankController.T4.inPort.available (166) [DISC] (1) Boolean[1] tankController.makeProduct.fillTank1.inPort.set (167) [DISC] (1) Boolean[1] tankController.makeProduct.wait2.inPort.occupied (168) [DISC] (1) Boolean tankController.T3.inPort.available (169) [DISC] (1) Boolean shut.on (fixed = true, start = false) (170) [DISC] (1) Boolean tankController.makeProduct.stateGraphRoot.suspend = Modelica.Math.BooleanVectors.anyTrue(tankController.makeProduct.suspend.reset) or false (171) [DISC] (1) protected Boolean tankController.s2.outerStatePort.localActive = tankController.s2.outerStatePort.localActive (172) [DISC] (1) Boolean[1] tankController.makeProduct.fillTank2.outPort.available (173) [DISC] (1) Boolean tankController.makeProduct.outPort.available (174) [ALGB] (1) flow Real tankController.makeProduct.outerState.subgraphStatePort.activeSteps (175) [DISC] (1) Boolean tankController.makeProduct.T2.inPort.available (176) [ALGB] (1) protected flow Real tankController.makeProduct.fillTank2.outerStatePort.subgraphStatePort.activeSteps (177) [DISS] (1) protected Boolean tankController.emptyTanks.oldActive (178) [DISC] (1) Boolean tankController.T6.outPort.set (179) [DISC] (1) Boolean[1] tankController.makeProduct.resume.occupied (180) [DISC] (1) Boolean tankController.T1.outPort.occupied (181) [DISC] (1) protected Boolean tankController.makeProduct.fillTank2.outerStatePort.localActive = tankController.makeProduct.fillTank2.outerStatePort.localActive (182) [DISC] (1) protected Boolean tankController.makeProduct.fillTank1.outerStatePort.localActive = tankController.makeProduct.fillTank1.outerStatePort.localActive (183) [DISC] (1) protected Boolean tankController.makeProduct.newActive (184) [DISC] (1) Boolean tankController.T2.outPort.occupied (185) [DISC] (1) Boolean[1] tankController.emptyTanks.outPort.reset (186) [DISC] (1) Boolean tankController.T5.outPort.occupied (187) [DISC] (1) Boolean tankController.makeProduct.stateGraphRoot.resume = Modelica.Math.BooleanVectors.anyTrue(tankController.makeProduct.resume.set) or false (188) [ALGB] (1) protected Real stop.table.realToBoolean.u (189) [DISC] (1) Boolean tankController.T4.outPort.occupied (190) [DISC] (2) Boolean[2] tankController.s2.outPort.available (191) [DISC] (1) Boolean[1] tankController.s1.outPort.available (192) [ALGB] (1) protected Real[1] stop.table.combiTimeTable.y (193) [DISC] (1) Boolean tankController.makeProduct.T1.outPort.set (194) [ALGB] (1) flow Real tankController.makeProduct.stateGraphRoot.subgraphStatePort.activeSteps (195) [DISC] (1) protected Integer tankController.makeProduct.activeSteps (196) [ALGB] (1) Real tank2.inflow1.Fi (197) [ALGB] (1) protected flow Real tankController.s1.outerStatePort.subgraphStatePort.activeSteps (198) [DISC] (1) Boolean tankController.makeProduct.T3.outPort.occupied (199) [DISC] (1) Boolean tankController.makeProduct.T3.outPort.set (200) [DISC] (1) Boolean[1] tankController.emptyTanks.inPort.occupied (201) [DISC] (1) Boolean[1] tankController.makeProduct.fillTank1.outPort.available (202) [DISC] (2) Boolean[2] tankController.s1.inPort.set (203) [DISC] (1) final Boolean tankController.makeProduct.T3.localCondition = tankController.makeProduct.T3.localCondition (204) [DISC] (1) Boolean tankController.makeProduct.T4.enableFire (205) [DISC] (1) Boolean tankController.T1.inPort.available (206) [DISC] (1) Boolean $TEV_51 (207) [DISC] (1) Boolean[1] tankController.makeProduct.wait1.inPort.occupied (208) [DISC] (1) Boolean $TEV_50 (209) [ALGB] (1) Real tankController.makeProduct.T2.t (210) [DISC] (1) protected Boolean tankController.makeProduct.emptyTank2.outerStatePort.localActive = tankController.makeProduct.emptyTank2.outerStatePort.localActive (211) [ALGB] (1) protected Real tankController.makeProduct.T2.t_dummy (212) [DISC] (1) Boolean $SEV_38 (213) [DISC] (1) protected Boolean start.table.y (fixed = true, start = false) (214) [DISC] (1) Boolean $SEV_37 (215) [DISC] (1) Boolean $SEV_36 (216) [DISC] (1) final Boolean tankController.T2.localCondition = tankController.T2.localCondition (217) [DISC] (1) Boolean $SEV_35 (218) [DISC] (1) Boolean[1] tankController.makeProduct.emptyTank2.outPort.available (219) [DISC] (1) Boolean $SEV_34 (220) [DISC] (1) Boolean[1] tankController.makeProduct.fillTank2.inPort.set (221) [DISC] (1) Boolean $SEV_33 (222) [DISC] (1) Boolean $SEV_32 (223) [DISC] (1) Boolean $SEV_30 (224) [ALGB] (1) Real valve3.inflow1.Fi (225) [DISS] (1) protected discrete Real start.table.combiTimeTable.nextTimeEvent (fixed = true, start = 0.0) (226) [DISC] (1) Boolean[1] tankController.makeProduct.suspend.reset (227) [ALGB] (1) protected Real[1] shut.table.combiTimeTable.y (228) [ALGB] (1) protected Real shut.table.realToBoolean.u (229) [DISC] (2) protected Boolean[2] start.pre_reset (230) [DISC] (1) Boolean tankController.makeProduct.outerState.active = tankController.makeProduct.outerState.active (231) [DISC] (1) protected Boolean tankController.emptyTanks.outerStatePort.localActive = tankController.emptyTanks.outerStatePort.localActive (232) [DISC] (1) Boolean $TEV_49 (233) [DISC] (1) Boolean $TEV_48 (234) [DISC] (1) protected Boolean tankController.makeProduct.wait2.outerStatePort.localActive = tankController.makeProduct.wait2.outerStatePort.localActive (235) [DISC] (1) Boolean tankController.T5.outPort.set (236) [DISC] (2) protected Boolean[2] shut.pre_reset (237) [DISC] (1) Boolean $TEV_47 (238) [DER-] (1) Real $DER.tank1.level (239) [DISC] (2) Boolean[2] start.reset = {stop.on, shut.on} (240) [DISC] (1) Boolean[1] tankController.s2.inPort.occupied (241) [DISC] (1) Boolean $TEV_46 (242) [DISS] (1) protected discrete Real stop.table.combiTimeTable.nextTimeEvent (fixed = true, start = 0.0) (243) [DISC] (1) Boolean $TEV_45 (244) [DISC] (1) Boolean[1] tankController.makeProduct.suspend.available (245) [DISC] (1) Integer stateGraphRoot.activeSteps (246) [DISC] (1) Boolean $TEV_44 (247) [DISC] (1) Boolean $TEV_43 (248) [DISC] (1) Boolean $TEV_41 (249) [DISC] (1) Boolean $TEV_40 System Equations (266/282) **************************** (1) [SCAL] (1) tankController.s1.outerStatePort.subgraphStatePort.activeSteps = if tankController.s1.outerStatePort.localActive then 1.0 else 0.0 ($RES_SIM_254) (2) [SCAL] (1) tankController.makeProduct.fillTank1.outerStatePort.subgraphStatePort.activeSteps + tankController.makeProduct.fillTank2.outerStatePort.subgraphStatePort.activeSteps + tankController.makeProduct.emptyTank2.outerStatePort.subgraphStatePort.activeSteps + tankController.makeProduct.wait1.outerStatePort.subgraphStatePort.activeSteps + tankController.makeProduct.wait2.outerStatePort.subgraphStatePort.activeSteps + tankController.makeProduct.stateGraphRoot.subgraphStatePort.activeSteps = 0.0 ($RES_SIM_255) (3) [SCAL] (1) tankController.makeProduct.outerState.subgraphStatePort.activeSteps + tankController.s2.outerStatePort.subgraphStatePort.activeSteps + tankController.emptyTanks.outerStatePort.subgraphStatePort.activeSteps + stateGraphRoot.subgraphStatePort.activeSteps + tankController.s1.outerStatePort.subgraphStatePort.activeSteps = 0.0 ($RES_SIM_256) (4) [SCAL] (1) tankController.T6.localCondition = $SEV_35 ($RES_BND_383) (5) [SCAL] (1) valve2.valveControl = $SEV_34 ($RES_BND_386) (6) [SCAL] (1) valve3.valveControl = $SEV_33 ($RES_BND_387) (7) [ARRY] (2) start.reset = {stop.on, shut.on} ($RES_BND_388) (8) [ARRY] (2) stop.reset = {start.on, shut.on} ($RES_BND_389) (9) [SCAL] (1) tankController.makeProduct.T4.outPort.set = $SEV_21 ($RES_SIM_170) (10) [SCAL] (1) tankController.makeProduct.T4.t = if tankController.makeProduct.T4.enableFire then tankController.makeProduct.T4.t_dummy else 0.0 ($RES_SIM_171) (11) [WHEN] (1)when tankController.makeProduct.T4.enableFire then (11) [----] time - tankController.makeProduct.T4.t_dummy := time (11) [----] end when; (12) [SCAL] (1) tankController.makeProduct.wait2.outPort[1].reset = false ($RES_SIM_174) (13) [SCAL] (1) $SEV_2 = time >= $PRE.shut.table.combiTimeTable.nextTimeEvent ($RES_EVT_470) (14) [SCAL] (1) tankController.makeProduct.wait2.inPort[1].set = false ($RES_SIM_175) (15) [SCAL] (1) tankController.makeProduct.wait2.outPort[1].available = tankController.makeProduct.wait2.outerStatePort.localActive ($RES_SIM_176) (16) [SCAL] (1) $SEV_4 = stop.table.realToBoolean.u >= stop.table.realToBoolean.threshold ($RES_EVT_472) (17) [SCAL] (1) tankController.makeProduct.wait2.inPort[1].occupied = tankController.makeProduct.wait2.outerStatePort.localActive ($RES_SIM_177) (18) [SCAL] (1) $SEV_5 = time >= $PRE.stop.table.combiTimeTable.nextTimeEvent ($RES_EVT_473) (19) [WHEN] (1)when tankController.makeProduct.stateGraphRoot.suspend then (19) [----] tankController.makeProduct.wait2.oldActive := tankController.makeProduct.wait2.outerStatePort.localActive (19) [----] end when; (20) [SCAL] (1) tankController.makeProduct.wait2.newActive = if tankController.makeProduct.stateGraphRoot.resume then tankController.makeProduct.wait2.oldActive else $SEV_22 ($RES_SIM_179) (21) [SCAL] (1) $SEV_7 = start.table.realToBoolean.u >= start.table.realToBoolean.threshold ($RES_EVT_475) (22) [SCAL] (1) $SEV_8 = time >= $PRE.start.table.combiTimeTable.nextTimeEvent ($RES_EVT_476) (23) [SCAL] (1) $SEV_9 = (tankController.T6.localCondition and tankController.T6.inPort.available) and not tankController.T6.outPort.occupied ($RES_EVT_477) (24) [SCAL] (1) $SEV_10 = $FUN_17 or tankController.emptyTanks.outerStatePort.localActive and not $FUN_18 ($RES_EVT_478) (25) [SCAL] (1) $SEV_11 = (shut.on and tankController.T5.inPort.available) and not tankController.T5.outPort.occupied ($RES_EVT_479) (26) [ARRY] (2) shut.reset = {start.on, stop.on} ($RES_BND_390) (27) [SCAL] (1) tankController.makeProduct.wait2.outerStatePort.localActive = $TEV_28 ($RES_SIM_180) (28) [SCAL] (1) tankController.makeProduct.wait2.outerStatePort.subgraphStatePort.activeSteps = if tankController.makeProduct.wait2.outerStatePort.localActive then 1.0 else 0.0 ($RES_SIM_182) (29) [SCAL] (1) $SEV_12 = (start.on and tankController.T4.inPort.available) and not tankController.T4.outPort.occupied ($RES_EVT_480) (30) [SCAL] (1) tankController.makeProduct.T2.enableFire = $SEV_23 ($RES_SIM_185) (31) [FOR-] (2) ($RES_EVT_481) (31) [----] for $i1 in 1:2 loop (31) [----] [SCAL] (1) $SEV_13[$i1] = $i1 == 1 ($RES_EVT_482) (31) [----] end for; (32) [SCAL] (1) tankController.makeProduct.T2.outPort.set = $SEV_24 ($RES_SIM_186) (33) [SCAL] (1) tankController.makeProduct.T2.t = if tankController.makeProduct.T2.enableFire then tankController.makeProduct.T2.t_dummy else 0.0 ($RES_SIM_187) (34) [FOR-] (2) ($RES_EVT_483) (34) [----] for $i1 in 1:2 loop (34) [----] [SCAL] (1) $SEV_14[$i1] = tankController.s2.outPort[$i1 - 1].available and not tankController.s2.outPort[$i1 - 1].reset ($RES_EVT_484) (34) [----] end for; (35) [WHEN] (1)when tankController.makeProduct.T2.enableFire then (35) [----] time - tankController.makeProduct.T2.t_dummy := time (35) [----] end when; (36) [SCAL] (1) $SEV_15 = $FUN_15 or tankController.s2.outerStatePort.localActive and not $FUN_16 ($RES_EVT_485) (37) [SCAL] (1) $SEV_16 = (stop.on and tankController.T3.inPort.available) and not tankController.T3.outPort.occupied ($RES_EVT_486) (38) [SCAL] (1) $SEV_17 = (tankController.T2.localCondition and tankController.makeProduct.outPort.available) and not tankController.T2.outPort.occupied ($RES_EVT_487) (39) [SCAL] (1) $SEV_18 = (start.on and tankController.T1.inPort.available) and not tankController.T1.outPort.occupied ($RES_EVT_488) (40) [SCAL] (1) $SEV_19 = tankController.makeProduct.activeSteps > 0 and not $FUN_13 or $FUN_14 ($RES_EVT_489) (41) [SCAL] (1) $FUN_1 = Modelica.Math.BooleanVectors.anyTrue(tankController.s1.inPort.set) ($RES_$AUX_413) (42) [SCAL] (1) $FUN_2 = Modelica.Math.BooleanVectors.anyTrue(tankController.s1.outPort.reset) ($RES_$AUX_412) (43) [SCAL] (1) shut.table.combiTimeTable.y[1] = shut.table.realToBoolean.u ($RES_SIM_274) (44) [SCAL] (1) $FUN_3 = Modelica.Math.BooleanVectors.anyTrue(tankController.makeProduct.fillTank1.inPort.set) ($RES_$AUX_411) (45) [SCAL] (1) $FUN_4 = Modelica.Math.BooleanVectors.anyTrue(tankController.makeProduct.fillTank1.outPort.reset) ($RES_$AUX_410) (46) [SCAL] (1) stop.table.combiTimeTable.y[1] = stop.table.realToBoolean.u ($RES_SIM_276) (47) [SCAL] (1) start.table.combiTimeTable.y[1] = start.table.realToBoolean.u ($RES_SIM_278) (48) [SCAL] (1) tankController.T6.outPort.set = tankController.s1.inPort[2].set ($RES_SIM_279) (49) [SCAL] (1) tankController.makeProduct.wait1.outPort[1].reset = false ($RES_SIM_190) (50) [SCAL] (1) tankController.makeProduct.wait1.inPort[1].set = false ($RES_SIM_191) (51) [SCAL] (1) tankController.makeProduct.wait1.outPort[1].available = tankController.makeProduct.wait1.outerStatePort.localActive ($RES_SIM_192) (52) [SCAL] (1) tankController.makeProduct.wait1.inPort[1].occupied = tankController.makeProduct.wait1.outerStatePort.localActive ($RES_SIM_193) (53) [WHEN] (1)when tankController.makeProduct.stateGraphRoot.suspend then (53) [----] tankController.makeProduct.wait1.oldActive := tankController.makeProduct.wait1.outerStatePort.localActive (53) [----] end when; (54) [SCAL] (1) $SEV_20 = tankController.makeProduct.T4.inPort.available and not tankController.makeProduct.T4.outPort.occupied ($RES_EVT_490) (55) [SCAL] (1) tankController.makeProduct.wait1.newActive = if tankController.makeProduct.stateGraphRoot.resume then tankController.makeProduct.wait1.oldActive else $SEV_25 ($RES_SIM_195) (56) [SCAL] (1) $SEV_21 = tankController.makeProduct.T4.enableFire and time >= ((time - tankController.makeProduct.T4.t_dummy) + tankController.makeProduct.T4.waitTime) ($RES_EVT_491) (57) [SCAL] (1) tankController.makeProduct.wait1.outerStatePort.localActive = $TEV_32 ($RES_SIM_196) (58) [SCAL] (1) $SEV_22 = ($FUN_11 or tankController.makeProduct.wait2.outerStatePort.localActive and not $FUN_12) and not tankController.makeProduct.stateGraphRoot.suspend ($RES_EVT_492) (59) [SCAL] (1) $SEV_23 = tankController.makeProduct.T2.inPort.available and not tankController.makeProduct.T2.outPort.occupied ($RES_EVT_493) (60) [SCAL] (1) tankController.makeProduct.wait1.outerStatePort.subgraphStatePort.activeSteps = if tankController.makeProduct.wait1.outerStatePort.localActive then 1.0 else 0.0 ($RES_SIM_198) (61) [SCAL] (1) $SEV_24 = tankController.makeProduct.T2.enableFire and time >= ((time - tankController.makeProduct.T2.t_dummy) + tankController.makeProduct.T2.waitTime) ($RES_EVT_494) (62) [SCAL] (1) tankController.makeProduct.emptyTank2.outPort[1].reset = false ($RES_SIM_199) (63) [SCAL] (1) $SEV_25 = ($FUN_9 or tankController.makeProduct.wait1.outerStatePort.localActive and not $FUN_10) and not tankController.makeProduct.stateGraphRoot.suspend ($RES_EVT_495) (64) [SCAL] (1) $SEV_26 = ($FUN_7 or tankController.makeProduct.emptyTank2.outerStatePort.localActive and not $FUN_8) and not tankController.makeProduct.stateGraphRoot.suspend ($RES_EVT_496) (65) [SCAL] (1) $FUN_5 = Modelica.Math.BooleanVectors.anyTrue(tankController.makeProduct.fillTank2.inPort.set) ($RES_$AUX_409) (66) [SCAL] (1) $SEV_27 = (tankController.makeProduct.T3.localCondition and tankController.makeProduct.T3.inPort.available) and not tankController.makeProduct.T3.outPort.occupied ($RES_EVT_497) (67) [SCAL] (1) $FUN_6 = Modelica.Math.BooleanVectors.anyTrue(tankController.makeProduct.fillTank2.outPort.reset) ($RES_$AUX_408) (68) [SCAL] (1) $SEV_28 = ($FUN_5 or tankController.makeProduct.fillTank2.outerStatePort.localActive and not $FUN_6) and not tankController.makeProduct.stateGraphRoot.suspend ($RES_EVT_498) (69) [SCAL] (1) $FUN_7 = Modelica.Math.BooleanVectors.anyTrue(tankController.makeProduct.emptyTank2.inPort.set) ($RES_$AUX_407) (70) [SCAL] (1) $SEV_29 = (tankController.makeProduct.T1.localCondition and tankController.makeProduct.T1.inPort.available) and not tankController.makeProduct.T1.outPort.occupied ($RES_EVT_499) (71) [SCAL] (1) $FUN_8 = Modelica.Math.BooleanVectors.anyTrue(tankController.makeProduct.emptyTank2.outPort.reset) ($RES_$AUX_406) (72) [SCAL] (1) $FUN_9 = Modelica.Math.BooleanVectors.anyTrue(tankController.makeProduct.wait1.inPort.set) ($RES_$AUX_405) (73) [SCAL] (1) tankController.T6.outPort.occupied = tankController.s1.inPort[2].occupied ($RES_SIM_280) (74) [SCAL] (1) $FUN_10 = Modelica.Math.BooleanVectors.anyTrue(tankController.makeProduct.wait1.outPort.reset) ($RES_$AUX_404) (75) [SCAL] (1) tankController.T2.outPort.set = tankController.s1.inPort[1].set ($RES_SIM_281) (76) [SCAL] (1) $FUN_11 = Modelica.Math.BooleanVectors.anyTrue(tankController.makeProduct.wait2.inPort.set) ($RES_$AUX_403) (77) [SCAL] (1) tankController.T2.outPort.occupied = tankController.s1.inPort[1].occupied ($RES_SIM_282) (78) [SCAL] (1) $FUN_12 = Modelica.Math.BooleanVectors.anyTrue(tankController.makeProduct.wait2.outPort.reset) ($RES_$AUX_402) (79) [SCAL] (1) tankController.s2.outPort[2].reset = tankController.T4.outPort.set ($RES_SIM_283) (80) [SCAL] (1) $FUN_13 = Modelica.Math.BooleanVectors.anyTrue(tankController.makeProduct.suspend.reset) ($RES_$AUX_401) (81) [SCAL] (1) tankController.s2.outPort[2].available = tankController.T4.inPort.available ($RES_SIM_284) (82) [SCAL] (1) $FUN_14 = Modelica.Math.BooleanVectors.anyTrue(tankController.makeProduct.resume.set) ($RES_$AUX_400) (83) [SCAL] (1) tankController.s2.outPort[1].reset = tankController.T5.outPort.set ($RES_SIM_285) (84) [SCAL] (1) tankController.s2.outPort[1].available = tankController.T5.inPort.available ($RES_SIM_286) (85) [SCAL] (1) tankController.T4.outPort.set = tankController.makeProduct.resume[1].set ($RES_SIM_288) (86) [SCAL] (1) tankController.T4.outPort.occupied = tankController.makeProduct.resume[1].occupied ($RES_SIM_289) (87) [SCAL] (1) tankController.T3.outPort.set = tankController.s2.inPort[1].set ($RES_SIM_290) (88) [SCAL] (1) tankController.T3.outPort.occupied = tankController.s2.inPort[1].occupied ($RES_SIM_291) (89) [SCAL] (1) tankController.makeProduct.suspend[1].reset = tankController.T3.outPort.set ($RES_SIM_292) (90) [SCAL] (1) tankController.makeProduct.suspend[1].available = tankController.T3.inPort.available ($RES_SIM_293) (91) [SCAL] (1) tankController.emptyTanks.outPort[1].reset = tankController.T6.outPort.set ($RES_SIM_297) (92) [SCAL] (1) tankController.emptyTanks.outPort[1].available = tankController.T6.inPort.available ($RES_SIM_298) (93) [SCAL] (1) tankController.T5.outPort.set = tankController.emptyTanks.inPort[1].set ($RES_SIM_299) (94) [ALGO] (3) ($RES_SIM_54) (94) [----] shut.pre_reset := $PRE.shut.reset; (94) [----] when shut.pre_reset then (94) [----] shut.on := false; (94) [----] end when; (94) [----] when change(shut.table.y) then (94) [----] shut.on := true; (94) [----] end when; (95) [ALGO] (3) ($RES_SIM_55) (95) [----] stop.pre_reset := $PRE.stop.reset; (95) [----] when stop.pre_reset then (95) [----] stop.on := false; (95) [----] end when; (95) [----] when change(stop.table.y) then (95) [----] stop.on := true; (95) [----] end when; (96) [ALGO] (3) ($RES_SIM_56) (96) [----] start.pre_reset := $PRE.start.reset; (96) [----] when start.pre_reset then (96) [----] start.on := false; (96) [----] end when; (96) [----] when change(start.table.y) then (96) [----] start.on := true; (96) [----] end when; (97) [SCAL] (1) tankController.T6.outPort.set = $SEV_9 ($RES_SIM_100) (98) [SCAL] (1) tankController.emptyTanks.outPort[1].reset = false ($RES_SIM_105) (99) [SCAL] (1) tankController.emptyTanks.inPort[1].set = false ($RES_SIM_106) (100) [SCAL] (1) tankController.emptyTanks.outPort[1].available = tankController.emptyTanks.outerStatePort.localActive ($RES_SIM_107) (101) [SCAL] (1) tankController.emptyTanks.inPort[1].occupied = tankController.emptyTanks.outerStatePort.localActive ($RES_SIM_108) (102) [WHEN] (1)when false then (102) [----] tankController.emptyTanks.oldActive := tankController.emptyTanks.outerStatePort.localActive (102) [----] end when; (103) [SCAL] (1) stateGraphRoot.activeSteps = -integer(stateGraphRoot.subgraphStatePort.activeSteps) ($RES_SIM_60) (104) [-IF-] (1)if tankController.makeProduct.fillTank1.outerStatePort.localActive then (104) [----] [SCAL] (1) tank1.inflow1.Fi = source.maxflow ($RES_SIM_66) (104) [----] else (104) [----] [SCAL] (1) tank1.inflow1.Fi = 0.0 ($RES_SIM_67) (104) [----] end if; (105) [SCAL] (1) tankController.emptyTanks.newActive = $SEV_10 ($RES_SIM_110) (106) [SCAL] (1) tankController.emptyTanks.outerStatePort.localActive = $TEV_10 ($RES_SIM_111) (107) [SCAL] (1) tankController.emptyTanks.outerStatePort.subgraphStatePort.activeSteps = if tankController.emptyTanks.outerStatePort.localActive then 1.0 else 0.0 ($RES_SIM_113) (108) [SCAL] (1) tankController.T5.outPort.set = $SEV_11 ($RES_SIM_116) (109) [SCAL] (1) $TEV_0 = $PRE.shut.reset ($RES_EVT_416) (110) [SCAL] (1) $TEV_1 = $PRE.shut.pre_reset ($RES_EVT_417) (111) [SCAL] (1) $TEV_2 = $PRE.stop.reset ($RES_EVT_418) (112) [-IF-] (1)if valve3.valveControl then (112) [----] [SCAL] (1) valve3.inflow1.Fi = sqrt(max(0.0, tank2.hmax * 19.6133 * tank2.level)) * tank2.a ($RES_SIM_72) (112) [----] else (112) [----] [SCAL] (1) valve3.inflow1.Fi = 0.0 ($RES_SIM_73) (112) [----] end if; (113) [SCAL] (1) $TEV_3 = $PRE.stop.pre_reset ($RES_EVT_419) (114) [SCAL] (1) tankController.makeProduct.emptyTank2.inPort[1].set = false ($RES_SIM_200) (115) [SCAL] (1) tankController.makeProduct.emptyTank2.outPort[1].available = tankController.makeProduct.emptyTank2.outerStatePort.localActive ($RES_SIM_201) (116) [SCAL] (1) tankController.makeProduct.emptyTank2.inPort[1].occupied = tankController.makeProduct.emptyTank2.outerStatePort.localActive ($RES_SIM_202) (117) [SCAL] (1) $DER.tank2.level = (tank2.inflow1.Fi - valve3.inflow1.Fi) / (tank2.A * tank2.hmax) ($RES_SIM_74) (118) [WHEN] (1)when tankController.makeProduct.stateGraphRoot.suspend then (118) [----] tankController.makeProduct.emptyTank2.oldActive := tankController.makeProduct.emptyTank2.outerStatePort.localActive (118) [----] end when; (119) [-IF-] (1)if valve2.valveControl then (119) [----] [SCAL] (1) tank2.inflow1.Fi = sqrt(max(0.0, tank1.hmax * 19.6133 * tank1.level)) * tank1.a ($RES_SIM_77) (119) [----] else (119) [----] [SCAL] (1) tank2.inflow1.Fi = 0.0 ($RES_SIM_78) (119) [----] end if; (120) [SCAL] (1) $SEV_30 = ($FUN_3 or tankController.makeProduct.fillTank1.outerStatePort.localActive and not $FUN_4) and not tankController.makeProduct.stateGraphRoot.suspend ($RES_EVT_500) (121) [SCAL] (1) tankController.makeProduct.emptyTank2.newActive = if tankController.makeProduct.stateGraphRoot.resume then tankController.makeProduct.emptyTank2.oldActive else $SEV_26 ($RES_SIM_204) (122) [FOR-] (2) ($RES_EVT_501) (122) [----] for $i1 in 1:2 loop (122) [----] [SCAL] (1) $SEV_31[$i1] = tankController.s1.inPort[$i1 - 1].occupied or tankController.s1.inPort[$i1 - 1].set ($RES_EVT_502) (122) [----] end for; (123) [SCAL] (1) tankController.makeProduct.emptyTank2.outerStatePort.localActive = $TEV_35 ($RES_SIM_205) (124) [SCAL] (1) $DER.tank1.level = (tank1.inflow1.Fi - tank2.inflow1.Fi) / (tank1.A * tank1.hmax) ($RES_SIM_79) (125) [SCAL] (1) $SEV_32 = $FUN_1 or tankController.s1.outerStatePort.localActive and not $FUN_2 ($RES_EVT_503) (126) [SCAL] (1) tankController.makeProduct.emptyTank2.outerStatePort.subgraphStatePort.activeSteps = if tankController.makeProduct.emptyTank2.outerStatePort.localActive then 1.0 else 0.0 ($RES_SIM_207) (127) [SCAL] (1) $SEV_33 = tankController.makeProduct.emptyTank2.outerStatePort.localActive or tankController.emptyTanks.outerStatePort.localActive ($RES_EVT_504) (128) [SCAL] (1) $SEV_34 = tankController.makeProduct.fillTank2.outerStatePort.localActive or tankController.emptyTanks.outerStatePort.localActive ($RES_EVT_505) (129) [SCAL] (1) $SEV_35 = tank2.level + tank1.level < 0.001 ($RES_EVT_506) (130) [SCAL] (1) $FUN_15 = Modelica.Math.BooleanVectors.anyTrue(tankController.s2.inPort.set) ($RES_$AUX_399) (131) [SCAL] (1) $SEV_36 = tank2.level < 0.001 ($RES_EVT_507) (132) [SCAL] (1) $FUN_16 = Modelica.Math.BooleanVectors.anyTrue(tankController.s2.outPort.reset) ($RES_$AUX_398) (133) [SCAL] (1) $SEV_37 = tank1.level < 0.001 ($RES_EVT_508) (134) [SCAL] (1) $FUN_17 = Modelica.Math.BooleanVectors.anyTrue(tankController.emptyTanks.inPort.set) ($RES_$AUX_397) (135) [SCAL] (1) $SEV_38 = tank1.level > tankController.makeProduct.limit ($RES_EVT_509) (136) [SCAL] (1) $FUN_18 = Modelica.Math.BooleanVectors.anyTrue(tankController.emptyTanks.outPort.reset) ($RES_$AUX_396) (137) [SCAL] (1) $FUN_19 = Modelica.Blocks.Tables.Internal.getTimeTableValueNoDer(start.table.combiTimeTable.tableID, 1, time, start.table.combiTimeTable.nextTimeEventScaled, $TEV_49) ($RES_$AUX_395) (138) [SCAL] (1) $FUN_20 = Modelica.Blocks.Tables.Internal.getTimeTableValueNoDer(stop.table.combiTimeTable.tableID, 1, time, stop.table.combiTimeTable.nextTimeEventScaled, $TEV_50) ($RES_$AUX_394) (139) [SCAL] (1) $FUN_21 = Modelica.Blocks.Tables.Internal.getTimeTableValueNoDer(shut.table.combiTimeTable.tableID, 1, time, shut.table.combiTimeTable.nextTimeEventScaled, $TEV_51) ($RES_$AUX_393) (140) [SCAL] (1) tankController.T4.outPort.set = $SEV_12 ($RES_SIM_123) (141) [SCAL] (1) $TEV_4 = $PRE.start.reset ($RES_EVT_420) (142) [SCAL] (1) $TEV_5 = $PRE.start.pre_reset ($RES_EVT_421) (143) [SCAL] (1) $TEV_6 = $PRE.tankController.T6.outPort.set ($RES_EVT_422) (144) [FOR-] (2) ($RES_SIM_128) (144) [----] for $i1 in 1:2 loop (144) [----] [SCAL] (1) tankController.s2.outPort[$i1].reset = false ($RES_SIM_129) (144) [----] end for; (145) [SCAL] (1) $TEV_8 = $PRE.tankController.emptyTanks.oldActive ($RES_EVT_424) (146) [SCAL] (1) $TEV_9 = $PRE.tankController.emptyTanks.outerStatePort.localActive ($RES_EVT_425) (147) [SCAL] (1) $TEV_10 = $PRE.tankController.emptyTanks.newActive ($RES_EVT_426) (148) [SCAL] (1) $TEV_11 = $PRE.tankController.T5.outPort.set ($RES_EVT_427) (149) [SCAL] (1) $TEV_13 = $PRE.tankController.T4.outPort.set ($RES_EVT_429) (150) [SCAL] (1) shut.table.y = $SEV_1 ($RES_SIM_81) (151) [SCAL] (1) tankController.makeProduct.T3.outPort.set = $SEV_27 ($RES_SIM_210) (152) [SCAL] (1) shut.table.combiTimeTable.y[1] = shut.table.combiTimeTable.p_offset[1] + $FUN_21 ($RES_SIM_82) (153) [WHEN] (1)when {$SEV_2, initial()} then (153) [----] shut.table.combiTimeTable.nextTimeEventScaled := Modelica.Blocks.Tables.Internal.getNextTimeEvent(shut.table.combiTimeTable.tableID, time) (153) [----] end when; (154) [WHEN] (1)when {$SEV_2, initial()} then (154) [----] shut.table.combiTimeTable.nextTimeEvent := if shut.table.combiTimeTable.nextTimeEventScaled < 1e60 then shut.table.combiTimeTable.nextTimeEventScaled else 1e60 (154) [----] end when; (155) [SCAL] (1) tankController.makeProduct.fillTank2.outPort[1].reset = false ($RES_SIM_215) (156) [SCAL] (1) stop.table.y = $SEV_4 ($RES_SIM_87) (157) [SCAL] (1) tankController.makeProduct.fillTank2.inPort[1].set = false ($RES_SIM_216) (158) [SCAL] (1) stop.table.combiTimeTable.y[1] = stop.table.combiTimeTable.p_offset[1] + $FUN_20 ($RES_SIM_88) (159) [SCAL] (1) tankController.makeProduct.fillTank2.outPort[1].available = tankController.makeProduct.fillTank2.outerStatePort.localActive ($RES_SIM_217) (160) [WHEN] (1)when {$SEV_5, initial()} then (160) [----] stop.table.combiTimeTable.nextTimeEvent := if stop.table.combiTimeTable.nextTimeEventScaled < 1e60 then stop.table.combiTimeTable.nextTimeEventScaled else 1e60 (160) [----] end when; (161) [SCAL] (1) tankController.makeProduct.fillTank2.inPort[1].occupied = tankController.makeProduct.fillTank2.outerStatePort.localActive ($RES_SIM_218) (162) [WHEN] (1)when tankController.makeProduct.stateGraphRoot.suspend then (162) [----] tankController.makeProduct.fillTank2.oldActive := tankController.makeProduct.fillTank2.outerStatePort.localActive (162) [----] end when; (163) [SCAL] (1) tankController.T5.outPort.occupied = tankController.emptyTanks.inPort[1].occupied ($RES_SIM_300) (164) [SCAL] (1) tankController.s1.outPort[1].reset = tankController.T1.inPort.reset ($RES_SIM_305) (165) [SCAL] (1) tankController.s2.inPort[1].set = false ($RES_SIM_130) (166) [SCAL] (1) tankController.s1.outPort[1].available = tankController.T1.inPort.available ($RES_SIM_306) (167) [FOR-] (2) ($RES_SIM_131) (167) [----] for $i1 in 1:2 loop (167) [----] [SCAL] (1) tankController.s2.outPort[$i1].available = if $SEV_13[$i1] then tankController.s2.outerStatePort.localActive else $SEV_14[$i1] ($RES_SIM_132) (167) [----] end for; (168) [SCAL] (1) tankController.makeProduct.T4.outPort.set = tankController.makeProduct.emptyTank2.inPort[1].set ($RES_SIM_307) (169) [SCAL] (1) tankController.makeProduct.T4.outPort.occupied = tankController.makeProduct.emptyTank2.inPort[1].occupied ($RES_SIM_308) (170) [SCAL] (1) tankController.s2.inPort[1].occupied = tankController.s2.outerStatePort.localActive ($RES_SIM_133) (171) [SCAL] (1) tankController.makeProduct.T3.outPort.set = tankController.makeProduct.wait2.inPort[1].set ($RES_SIM_309) (172) [WHEN] (1)when false then (172) [----] tankController.s2.oldActive := tankController.s2.outerStatePort.localActive (172) [----] end when; (173) [SCAL] (1) $TEV_15 = $PRE.tankController.s2.oldActive ($RES_EVT_431) (174) [SCAL] (1) tankController.s2.newActive = $SEV_15 ($RES_SIM_135) (175) [SCAL] (1) $TEV_16 = $PRE.tankController.s2.outerStatePort.localActive ($RES_EVT_432) (176) [SCAL] (1) tankController.s2.outerStatePort.localActive = $TEV_17 ($RES_SIM_136) (177) [SCAL] (1) $TEV_17 = $PRE.tankController.s2.newActive ($RES_EVT_433) (178) [SCAL] (1) $TEV_18 = $PRE.tankController.T3.outPort.set ($RES_EVT_434) (179) [SCAL] (1) tankController.s2.outerStatePort.subgraphStatePort.activeSteps = if tankController.s2.outerStatePort.localActive then 1.0 else 0.0 ($RES_SIM_138) (180) [SCAL] (1) $TEV_20 = $PRE.tankController.T2.outPort.set ($RES_EVT_436) (181) [SCAL] (1) $TEV_22 = $PRE.tankController.T1.inPort.reset ($RES_EVT_438) (182) [WHEN] (1)when {$SEV_5, initial()} then (182) [----] stop.table.combiTimeTable.nextTimeEventScaled := Modelica.Blocks.Tables.Internal.getNextTimeEvent(stop.table.combiTimeTable.tableID, time) (182) [----] end when; (183) [SCAL] (1) tankController.makeProduct.fillTank2.newActive = if tankController.makeProduct.stateGraphRoot.resume then tankController.makeProduct.fillTank2.oldActive else $SEV_28 ($RES_SIM_220) (184) [SCAL] (1) tankController.makeProduct.fillTank2.outerStatePort.localActive = $TEV_40 ($RES_SIM_221) (185) [SCAL] (1) start.table.y = $SEV_7 ($RES_SIM_93) (186) [SCAL] (1) start.table.combiTimeTable.y[1] = start.table.combiTimeTable.p_offset[1] + $FUN_19 ($RES_SIM_94) (187) [SCAL] (1) tankController.makeProduct.fillTank2.outerStatePort.subgraphStatePort.activeSteps = if tankController.makeProduct.fillTank2.outerStatePort.localActive then 1.0 else 0.0 ($RES_SIM_223) (188) [WHEN] (1)when {$SEV_8, initial()} then (188) [----] start.table.combiTimeTable.nextTimeEventScaled := Modelica.Blocks.Tables.Internal.getNextTimeEvent(start.table.combiTimeTable.tableID, time) (188) [----] end when; (189) [WHEN] (1)when {$SEV_8, initial()} then (189) [----] start.table.combiTimeTable.nextTimeEvent := if start.table.combiTimeTable.nextTimeEventScaled < 1e60 then start.table.combiTimeTable.nextTimeEventScaled else 1e60 (189) [----] end when; (190) [SCAL] (1) tankController.makeProduct.T1.outPort.set = $SEV_29 ($RES_SIM_226) (191) [SCAL] (1) tankController.makeProduct.stateGraphRoot.suspend = $FUN_13 ($RES_BND_355) (192) [SCAL] (1) tankController.makeProduct.stateGraphRoot.resume = $FUN_14 ($RES_BND_356) (193) [SCAL] (1) tankController.makeProduct.T3.outPort.occupied = tankController.makeProduct.wait2.inPort[1].occupied ($RES_SIM_310) (194) [SCAL] (1) tankController.makeProduct.T1.localCondition = $SEV_38 ($RES_BND_359) (195) [SCAL] (1) tankController.makeProduct.wait2.outPort[1].reset = tankController.makeProduct.T4.outPort.set ($RES_SIM_311) (196) [SCAL] (1) tankController.makeProduct.wait2.outPort[1].available = tankController.makeProduct.T4.inPort.available ($RES_SIM_312) (197) [SCAL] (1) tankController.makeProduct.T1.outPort.set = tankController.makeProduct.wait1.inPort[1].set ($RES_SIM_313) (198) [SCAL] (1) tankController.makeProduct.T1.outPort.occupied = tankController.makeProduct.wait1.inPort[1].occupied ($RES_SIM_314) (199) [SCAL] (1) tankController.makeProduct.T2.outPort.set = tankController.makeProduct.fillTank2.inPort[1].set ($RES_SIM_315) (200) [SCAL] (1) tankController.makeProduct.T2.outPort.occupied = tankController.makeProduct.fillTank2.inPort[1].occupied ($RES_SIM_316) (201) [SCAL] (1) tankController.T3.outPort.set = $SEV_16 ($RES_SIM_141) (202) [SCAL] (1) tankController.makeProduct.wait1.outPort[1].reset = tankController.makeProduct.T2.outPort.set ($RES_SIM_317) (203) [SCAL] (1) tankController.makeProduct.wait1.outPort[1].available = tankController.makeProduct.T2.inPort.available ($RES_SIM_318) (204) [SCAL] (1) $TEV_24 = $PRE.tankController.makeProduct.newActive ($RES_EVT_440) (205) [SCAL] (1) tankController.makeProduct.emptyTank2.outPort[1].reset = tankController.T2.outPort.set ($RES_SIM_319) (206) [SCAL] (1) $TEV_25 = $PRE.tankController.makeProduct.T4.enableFire ($RES_EVT_441) (207) [SCAL] (1) $TEV_26 = $PRE.tankController.makeProduct.wait2.oldActive ($RES_EVT_442) (208) [SCAL] (1) $TEV_27 = $PRE.tankController.makeProduct.wait2.outerStatePort.localActive ($RES_EVT_443) (209) [SCAL] (1) $TEV_28 = $PRE.tankController.makeProduct.wait2.newActive ($RES_EVT_444) (210) [SCAL] (1) tankController.T2.outPort.set = $SEV_17 ($RES_SIM_148) (211) [SCAL] (1) $TEV_29 = $PRE.tankController.makeProduct.T2.enableFire ($RES_EVT_445) (212) [SCAL] (1) $TEV_30 = $PRE.tankController.makeProduct.wait1.oldActive ($RES_EVT_446) (213) [SCAL] (1) $TEV_31 = $PRE.tankController.makeProduct.wait1.outerStatePort.localActive ($RES_EVT_447) (214) [SCAL] (1) $TEV_32 = $PRE.tankController.makeProduct.wait1.newActive ($RES_EVT_448) (215) [SCAL] (1) $TEV_33 = $PRE.tankController.makeProduct.emptyTank2.oldActive ($RES_EVT_449) (216) [SCAL] (1) tankController.makeProduct.fillTank1.outPort[1].reset = false ($RES_SIM_231) (217) [SCAL] (1) tankController.makeProduct.fillTank1.inPort[1].set = false ($RES_SIM_232) (218) [SCAL] (1) tankController.makeProduct.fillTank1.outPort[1].available = tankController.makeProduct.fillTank1.outerStatePort.localActive ($RES_SIM_233) (219) [SCAL] (1) tankController.makeProduct.fillTank1.inPort[1].occupied = tankController.makeProduct.fillTank1.outerStatePort.localActive ($RES_SIM_234) (220) [WHEN] (1)when tankController.makeProduct.stateGraphRoot.suspend then (220) [----] tankController.makeProduct.fillTank1.oldActive := tankController.makeProduct.fillTank1.outerStatePort.localActive (220) [----] end when; (221) [SCAL] (1) tankController.makeProduct.fillTank1.newActive = if tankController.makeProduct.stateGraphRoot.resume then tankController.makeProduct.fillTank1.oldActive else $SEV_30 ($RES_SIM_236) (222) [SCAL] (1) tankController.makeProduct.fillTank1.outerStatePort.localActive = $TEV_45 ($RES_SIM_237) (223) [SCAL] (1) tankController.makeProduct.T3.localCondition = $SEV_37 ($RES_BND_362) (224) [SCAL] (1) tankController.makeProduct.fillTank1.outerStatePort.subgraphStatePort.activeSteps = if tankController.makeProduct.fillTank1.outerStatePort.localActive then 1.0 else 0.0 ($RES_SIM_239) (225) [SCAL] (1) tankController.makeProduct.emptyTank2.outPort[1].available = tankController.makeProduct.outPort.available ($RES_SIM_320) (226) [SCAL] (1) tankController.makeProduct.fillTank2.outPort[1].reset = tankController.makeProduct.T3.outPort.set ($RES_SIM_321) (227) [SCAL] (1) tankController.makeProduct.fillTank2.outPort[1].available = tankController.makeProduct.T3.inPort.available ($RES_SIM_322) (228) [SCAL] (1) tankController.makeProduct.fillTank1.outPort[1].reset = tankController.makeProduct.T1.outPort.set ($RES_SIM_323) (229) [SCAL] (1) tankController.makeProduct.fillTank1.outPort[1].available = tankController.makeProduct.T1.inPort.available ($RES_SIM_324) (230) [SCAL] (1) tankController.makeProduct.fillTank1.inPort[1].set = tankController.T1.inPort.reset ($RES_SIM_325) (231) [SCAL] (1) tankController.makeProduct.fillTank1.inPort[1].occupied = tankController.T1.outPort.occupied ($RES_SIM_326) (232) [SCAL] (1) $TEV_34 = $PRE.tankController.makeProduct.emptyTank2.outerStatePort.localActive ($RES_EVT_450) (233) [SCAL] (1) tankController.T1.inPort.reset = $SEV_18 ($RES_SIM_155) (234) [SCAL] (1) $TEV_35 = $PRE.tankController.makeProduct.emptyTank2.newActive ($RES_EVT_451) (235) [SCAL] (1) $TEV_36 = $PRE.tankController.makeProduct.T3.outPort.set ($RES_EVT_452) (236) [SCAL] (1) $TEV_38 = $PRE.tankController.makeProduct.fillTank2.oldActive ($RES_EVT_454) (237) [SCAL] (1) $TEV_39 = $PRE.tankController.makeProduct.fillTank2.outerStatePort.localActive ($RES_EVT_455) (238) [SCAL] (1) $TEV_40 = $PRE.tankController.makeProduct.fillTank2.newActive ($RES_EVT_456) (239) [SCAL] (1) $TEV_41 = $PRE.tankController.makeProduct.T1.outPort.set ($RES_EVT_457) (240) [SCAL] (1) $TEV_43 = $PRE.tankController.makeProduct.fillTank1.oldActive ($RES_EVT_459) (241) [SCAL] (1) tankController.makeProduct.outerState.subgraphStatePort.activeSteps = if tankController.makeProduct.outerState.active then 1.0 else 0.0 ($RES_SIM_240) (242) [SCAL] (1) tankController.s1.outPort[1].reset = false ($RES_SIM_244) (243) [FOR-] (2) ($RES_SIM_245) (243) [----] for $i1 in 1:2 loop (243) [----] [SCAL] (1) tankController.s1.inPort[$i1].set = false ($RES_SIM_246) (243) [----] end for; (244) [SCAL] (1) tankController.s1.outPort[1].available = tankController.s1.outerStatePort.localActive ($RES_SIM_247) (245) [FOR-] (2) ($RES_SIM_248) (245) [----] for $i1 in 1:2 loop (245) [----] [SCAL] (1) tankController.s1.inPort[$i1].occupied = if $SEV_13[$i1] then tankController.s1.outerStatePort.localActive else $SEV_31[$i1] ($RES_SIM_249) (245) [----] end for; (246) [SCAL] (1) tankController.T2.localCondition = $SEV_36 ($RES_BND_373) (247) [SCAL] (1) tankController.makeProduct.resume[1].set = false ($RES_SIM_160) (248) [SCAL] (1) tankController.makeProduct.suspend[1].reset = false ($RES_SIM_161) (249) [SCAL] (1) tankController.makeProduct.suspend[1].available = tankController.makeProduct.outerState.active ($RES_SIM_162) (250) [SCAL] (1) tankController.makeProduct.resume[1].occupied = tankController.makeProduct.outerState.active ($RES_SIM_163) (251) [SCAL] (1) tankController.makeProduct.newActive = $SEV_19 ($RES_SIM_164) (252) [SCAL] (1) $TEV_44 = $PRE.tankController.makeProduct.fillTank1.outerStatePort.localActive ($RES_EVT_460) (253) [SCAL] (1) tankController.makeProduct.outerState.active = $TEV_24 ($RES_SIM_165) (254) [SCAL] (1) $TEV_45 = $PRE.tankController.makeProduct.fillTank1.newActive ($RES_EVT_461) (255) [SCAL] (1) tankController.makeProduct.activeSteps = -integer(tankController.makeProduct.stateGraphRoot.subgraphStatePort.activeSteps) ($RES_SIM_166) (256) [SCAL] (1) $TEV_46 = $PRE.tankController.s1.oldActive ($RES_EVT_462) (257) [SCAL] (1) $TEV_47 = $PRE.tankController.s1.outerStatePort.localActive ($RES_EVT_463) (258) [SCAL] (1) $TEV_48 = $PRE.tankController.s1.newActive ($RES_EVT_464) (259) [SCAL] (1) tankController.makeProduct.T4.enableFire = $SEV_20 ($RES_SIM_169) (260) [SCAL] (1) $TEV_49 = $PRE.start.table.combiTimeTable.nextTimeEventScaled ($RES_EVT_465) (261) [SCAL] (1) $TEV_50 = $PRE.stop.table.combiTimeTable.nextTimeEventScaled ($RES_EVT_466) (262) [SCAL] (1) $TEV_51 = $PRE.shut.table.combiTimeTable.nextTimeEventScaled ($RES_EVT_467) (263) [SCAL] (1) $SEV_1 = shut.table.realToBoolean.u >= shut.table.realToBoolean.threshold ($RES_EVT_469) (264) [WHEN] (1)when false then (264) [----] tankController.s1.oldActive := tankController.s1.outerStatePort.localActive (264) [----] end when; (265) [SCAL] (1) tankController.s1.newActive = $SEV_32 ($RES_SIM_251) (266) [SCAL] (1) tankController.s1.outerStatePort.localActive = $TEV_48 ($RES_SIM_252)