Running: ./testmodel.py --libraries=/home/hudson/saved_omc/libraries/.openmodelica/libraries/ --ompython_omhome=/usr PNlib_PNlib.Examples.ExtTest.TDSTest.conf.json loadFile("/home/hudson/saved_omc/libraries/.openmodelica/libraries/ModelicaServices 4.0.0+maint.om/package.mo", uses=false) loadFile("/home/hudson/saved_omc/libraries/.openmodelica/libraries/Complex 4.0.0+maint.om/package.mo", uses=false) loadFile("/home/hudson/saved_omc/libraries/.openmodelica/libraries/Modelica 4.0.0+maint.om/package.mo", uses=false) loadFile("/home/hudson/saved_omc/libraries/.openmodelica/libraries/PNlib 3.0.0-master/package.mo", uses=false) Using package PNlib with version 3.0.0 (/home/hudson/saved_omc/libraries/.openmodelica/libraries/PNlib 3.0.0-master/package.mo) Using package Modelica with version 4.0.0 (/home/hudson/saved_omc/libraries/.openmodelica/libraries/Modelica 4.0.0+maint.om/package.mo) Using package Complex with version 4.0.0 (/home/hudson/saved_omc/libraries/.openmodelica/libraries/Complex 4.0.0+maint.om/package.mo) Using package ModelicaServices with version 4.0.0 (/home/hudson/saved_omc/libraries/.openmodelica/libraries/ModelicaServices 4.0.0+maint.om/package.mo) Running command: translateModel(PNlib.Examples.ExtTest.TDSTest,tolerance=1e-06,outputFormat="mat",numberOfIntervals=5000,variableFilter="P1.t|P2.t|T1.active|T1.fire|T1.putFireTime|Time",fileNamePrefix="PNlib_PNlib.Examples.ExtTest.TDSTest") translateModel(PNlib.Examples.ExtTest.TDSTest,tolerance=1e-06,outputFormat="mat",numberOfIntervals=5000,variableFilter="P1.t|P2.t|T1.active|T1.fire|T1.putFireTime|Time",fileNamePrefix="PNlib_PNlib.Examples.ExtTest.TDSTest") Notification: Performance of loadFile(/home/hudson/saved_omc/libraries/.openmodelica/libraries/ModelicaServices 4.0.0+maint.om/package.mo): time 0.001141/0.001141, allocations: 109 kB / 16.38 MB, free: 6.445 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.001101/0.001101, allocations: 192.2 kB / 17.32 MB, free: 5.789 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.25/1.25, allocations: 222.9 MB / 241 MB, free: 15.17 MB / 206.1 MB Notification: Performance of loadFile(/home/hudson/saved_omc/libraries/.openmodelica/libraries/PNlib 3.0.0-master/package.mo): time 0.07211/0.07211, allocations: 16.73 MB / 307.9 MB, free: 14.25 MB / 254.1 MB Notification: Performance of FrontEnd - Absyn->SCode: time 2.014e-05/2.016e-05, allocations: 2.938 kB / 373 MB, free: 48.62 MB / 302.1 MB Notification: Performance of NFInst.instantiate(PNlib.Examples.ExtTest.TDSTest): time 0.002903/0.002938, allocations: 2.51 MB / 375.5 MB, free: 48.14 MB / 302.1 MB Notification: Performance of NFInst.instExpressions: time 0.004786/0.007738, allocations: 4.257 MB / 379.7 MB, free: 47.09 MB / 302.1 MB Notification: Performance of NFInst.updateImplicitVariability: time 0.0003653/0.008116, allocations: 11.72 kB / 379.8 MB, free: 47.09 MB / 302.1 MB Notification: Performance of NFTyping.typeComponents: time 0.000364/0.008487, allocations: 183 kB / 379.9 MB, free: 47.09 MB / 302.1 MB Notification: Performance of NFTyping.typeBindings: time 0.0003959/0.008891, allocations: 200.7 kB / 380.1 MB, free: 47.07 MB / 302.1 MB Notification: Performance of NFTyping.typeClassSections: time 0.002486/0.01141, allocations: 1.587 MB / 381.7 MB, free: 46.98 MB / 302.1 MB Notification: Performance of NFFlatten.flatten: time 0.002342/0.01377, allocations: 2.962 MB / 384.7 MB, free: 46.32 MB / 302.1 MB Notification: Performance of NFFlatten.resolveConnections: time 0.0003813/0.01416, allocations: 347.6 kB / 385 MB, free: 46.21 MB / 302.1 MB Notification: Performance of NFEvalConstants.evaluate: time 0.0008333/0.015, allocations: 1.037 MB / 386.1 MB, free: 45.75 MB / 302.1 MB Notification: Performance of NFSimplifyModel.simplify: time 0.000533/0.01554, allocations: 0.6877 MB / 386.7 MB, free: 45.41 MB / 302.1 MB Notification: Performance of NFPackage.collectConstants: time 0.0002063/0.01575, allocations: 156.6 kB / 386.9 MB, free: 45.41 MB / 302.1 MB Notification: Performance of NFFlatten.collectFunctions: time 0.001149/0.01691, allocations: 0.8382 MB / 387.7 MB, free: 45.19 MB / 302.1 MB Notification: Performance of combineBinaries: time 0.001124/0.01804, allocations: 1.843 MB / 389.6 MB, free: 43.93 MB / 302.1 MB Notification: Performance of replaceArrayConstructors: time 0.0004609/0.01851, allocations: 1.054 MB / 390.6 MB, free: 43.15 MB / 302.1 MB Notification: Performance of NFVerifyModel.verify: time 0.0003366/0.01886, allocations: 270.7 kB / 390.9 MB, free: 43.04 MB / 302.1 MB Notification: Performance of FrontEnd: time 0.0001487/0.01901, allocations: 102.2 kB / 391 MB, free: 42.99 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: 306 (221) * Number of variables: 306 (285) Notification: Performance of Bindings: time 0.004814/0.02383, allocations: 5.736 MB / 396.7 MB, free: 39.36 MB / 302.1 MB Notification: Performance of FunctionAlias: time 0.001164/0.02501, allocations: 1.17 MB / 397.9 MB, free: 38.66 MB / 302.1 MB Notification: Performance of Early Inline: time 0.004771/0.02979, allocations: 6.113 MB / 404 MB, free: 33.51 MB / 302.1 MB Notification: Performance of simplify1: time 0.000188/0.02999, allocations: 193.2 kB / 404.2 MB, free: 33.38 MB / 302.1 MB Notification: Performance of Alias: time 0.003255/0.03325, allocations: 4.13 MB / 408.3 MB, free: 29.06 MB / 302.1 MB Notification: Performance of simplify2: time 0.0001148/0.03338, allocations: 163.7 kB / 408.5 MB, free: 28.9 MB / 302.1 MB Notification: Performance of Events: time 0.001299/0.03468, allocations: 1.578 MB / 410.1 MB, free: 27.41 MB / 302.1 MB Notification: Performance of Detect States: time 0.001545/0.03624, allocations: 2.301 MB / 412.4 MB, free: 25.07 MB / 302.1 MB Notification: Performance of Partitioning: time 0.001574/0.03782, allocations: 2.059 MB / 414.4 MB, free: 22.84 MB / 302.1 MB Error: Internal error NBAdjacency.Matrix.createPseudo failed for: [SCAL] (1) $FUN_3 = sum(P1.enableOut.enablingProb[P1.enableOut.remTAout[1:P1.enableOut.nremTAout]]) ($RES_$AUX_266) Error: Internal error NBAdjacency.Matrix.create failed to create adjacency matrix for system: System Variables (253/277) **************************** (1) [DISC] (1) protected Boolean T1.activation.active (2) [DISC] (1) protected discrete Real[1] P1.enableOut.cumEnablingProb (fixed = {true for $i1 in 1:1}, start = {0.0 for $i1 in 1:1}) (3) [DISC] (1) protected Integer T1.tokenChange.numtrue (4) [DISC] (1) protected Integer P2.enableIn.arcWeightSum (5) [DISC] (1) protected Integer[1] P1.enableOut.arcWeight = P1.arcWeightOut (6) [DISC] (1) protected Boolean[1] P2.enabledByInPlaces (7) [DISC] (1) Boolean $TEV_8 (8) [DISC] (1) protected discrete Real P2.enableIn.sumEnablingProbTAin (9) [DISS] (1) Integer P1.t (fixed = true, start = P1.startTokens) (10) [DISC] (1) protected Integer[1] T1.testValueInt (11) [DISC] (1) Boolean $TEV_7 (12) [DISC] (1) Boolean $TEV_6 (13) [ALGB] (1) protected Real[1] P2.enableIn.enablingBene = P2.enablingBeneIn (14) [DISC] (1) Boolean $TEV_5 (15) [DISC] (1) Boolean[1] T1.inPlaces.disPlace = {T1.disPlaceIn[1]} (16) [DISC] (1) Boolean $TEV_4 (17) [DISC] (1) Boolean $TEV_3 (18) [DISC] (1) protected enumeration PNlib.Types.ArcType(NormalArc, RealTestArc, TestArc, RealInhibitorArc, InhibitorArc)[1] T1.arcType (19) [ALGB] (3) Real[3] P1.color (20) [DISC] (1) Boolean[1] T1.outPlaces.disPlace = {T1.disPlaceOut[1]} (21) [DISC] (1) Boolean $TEV_0 (22) [DISC] (1) protected discrete Real P1.enableOut.benefitLimit (23) [ALGB] (1) protected Real[1] T1.activation.arcWeightOut = T1.arcWeightOut (24) [ALGB] (1) Real[1] T1.outPlaces.t = {T1.tOut[1]} (25) [DISC] (1) Boolean[1] T1.inPlaces.enable = {T1.enableIn[1]} (26) [DISC] (1) protected Integer[1] T1.activation.minTokensInt = T1.minTokensInt (27) [DISC] (1) protected Boolean[1] P2.enableIn.TEin_ (28) [DISC] (1) protected Integer[1] P1.arcWeightOut (29) [DISC] (1) Boolean $SEV_99 (30) [DISC] (1) Boolean $SEV_98 (31) [DISC] (1) protected Integer[1] P1.firingSumOut.arcWeight = P1.arcWeightOut (32) [DISC] (1) Boolean $SEV_97 (33) [DISS] (1) protected Boolean T1.ani (34) [DISC] (1) protected Integer P2.enableOut.t = P2.enableOut.t (35) [DISC] (1) protected discrete Real P2.enableIn.randNum (36) [DISC] (1) Boolean $SEV_93 (37) [DISC] (1) protected Integer P1.firingSumIn.firingSum (38) [ALGB] (1) Real[1] P2.inTransition.arcWeight (39) [DISC] (1) Boolean $SEV_92 (40) [DISC] (1) discrete Real T1.putDelay (41) [DISC] (1) Boolean $SEV_91 (42) [DISC] (1) Boolean $SEV_90 (43) [DISC] (1) Boolean[1] $SEV_81[$i1] (44) [DISC] (1) Integer[1] P2.inTransition.tint = {P2.pret} (45) [DISC] (1) protected Integer P1.enableOut.posTE (46) [ALGB] (1) protected Real[1] T1.activation.testValue = T1.testValue (47) [DISC] (1) Boolean[1] T1.outPlaces.enabledByInPlaces = {T1.enabledByInPlaces} (48) [ALGB] (1) Real[1] T1.outPlaces.arcWeight = {T1.arcWeightOut[1]} (49) [DISC] (1) protected Boolean[1] P2.enableIn.disTransition = P2.disTransitionIn (50) [ALGB] (1) protected Real[1] T1.maxTokens (51) [ALGB] (1) protected Real[1] T1.activation.minTokens = T1.minTokens (52) [DISC] (1) protected Integer[1] P2.enableIn.enablingPrio = P2.enablingPrioIn (53) [DISC] (1) protected Integer[1] T1.activation.maxTokensInt = T1.maxTokensInt (54) [DISC] (1) Boolean[1] P2.inTransition.enabledByInPlaces = {P2.enabledByInPlaces[1]} (55) [DISC] (4) protected Integer[4] P1.enableOut.state128 (56) [DISC] (1) enumeration PNlib.Types.ArcType(NormalArc, RealTestArc, TestArc, RealInhibitorArc, InhibitorArc)[1] P1.outTransition.arcType = {PNlib.Types.ArcType.NormalArc for $i1 in 1:1} (57) [DISC] (1) protected Boolean P2.tokeninout (fixed = true, start = false) (58) [DISC] (1) protected Integer P1.enableOut.nTAout (59) [DISC] (1) Boolean[1] T1.outPlaces.disTransition = {true for $i1 in 1:1} (60) [DISC] (1) Integer[1] T1.outPlaces.maxTokensint = {T1.maxTokensInt[1]} (61) [DISC] (1) protected Boolean[1] T1.disPlaceOut (62) [ALGB] (1) Real $FUN_31 (fixed = false) (63) [DISC] (4) Integer[4] $FUN_30 (64) [DISC] (1) protected Boolean[1] T1.activation.normalArc = T1.normalArc (65) [DISC] (1) protected Boolean[1] P2.enableIn.TAein = P2.enabledByInPlaces and P2.activeIn (66) [DISC] (1) Boolean $SEV_86 (67) [DISC] (1) Boolean $SEV_85 (68) [DISC] (1) protected Boolean[1] P1.enableOut.TEout (69) [DISC] (1) Boolean $SEV_84 (70) [DISC] (1) protected Integer[1] T1.activation.testValueInt = T1.testValueInt (71) [DISC] (1) protected Real T1.r128 (72) [DISC] (1) protected Integer[1] T1.tIntOut (73) [DISC] (1) protected Boolean[1] P2.firingSumIn.fire = P2.fireIn and P2.disTransitionIn (74) [DISC] (1) Boolean T1.active (75) [DISC] (1) protected Integer P1.enableOut.nremTAout (76) [DISC] (1) Boolean[1] P1.outTransition.tokenInOut = {pre(P1.tokeninout)} (77) [DISC] (1) protected enumeration PNlib.Types.ArcType(NormalArc, RealTestArc, TestArc, RealInhibitorArc, InhibitorArc)[1] T1.activation.arcType = T1.arcType (78) [DISC] (1) protected Integer P2.firingSumOut.firingSum (79) [ALGB] (1) protected Real P2.tokenscale (80) [DISC] (1) protected Boolean P1.enableOut.delayPassed = P1.enableOut.delayPassed (81) [DISC] (1) protected Boolean[1] P1.disTransitionOut (82) [ALGB] (1) Real $FUN_9 (83) [DISC] (1) Boolean[1] T1.outPlaces.enable = {T1.enableOut[1]} (84) [DISC] (1) Boolean[1] $FUN_8 (85) [DISC] (1) protected Boolean[1] P2.activeIn (86) [DISC] (1) protected Boolean[1] T1.activation.disPlaceOut = T1.disPlaceOut (87) [DISC] (1) Boolean[1] $FUN_7 (88) [ALGB] (1) Real $FUN_29 (89) [DISC] (1) Integer[1] $FUN_6 (90) [ALGB] (1) Real $FUN_28 (91) [DISC] (4) Integer[4] $FUN_5 (92) [ALGB] (1) Real $FUN_4 (93) [DISC] (1) Boolean $FUN_27 (94) [ALGB] (1) Real[1] P1.outTransition.t = {P1.pret} (95) [ALGB] (1) protected Real[1] T1.tIn (96) [ALGB] (1) Real $FUN_3 (97) [ALGB] (1) Real $FUN_26 (98) [DISC] (1) Boolean[1] P1.outTransition.active = {P1.activeOut[1]} (99) [DISC] (1) Integer $FUN_2 (100) [DISC] (1) Integer $FUN_25 (101) [DISC] (1) protected Boolean P1.enableOut.endWhile (102) [DISC] (1) protected Integer P2.enableIn.k (103) [DISC] (1) protected Boolean T1.tokenChange.anytrue (104) [DISC] (1) Integer $FUN_1 (105) [DISC] (1) Boolean[1] $FUN_24 (106) [DISC] (1) Boolean[1] $SEV_80[$i1] (107) [DISC] (1) Boolean[1] P2.inTransition.fire = {P2.fireIn[1]} (108) [ALGB] (1) Real $FUN_23 (109) [DISC] (1) Boolean[1] $FUN_22 (110) [DISC] (1) Boolean[1] $FUN_21 (111) [DISC] (1) Integer[1] P1.outTransition.minTokensint = {P1.minTokens} (112) [DISC] (1) protected Integer P1.enableOut.k (113) [DISC] (1) Integer[1] $FUN_20 (114) [DISC] (1) Boolean[1] T1.outPlaces.fire = {T1.fire} (115) [ALGB] (3) Real[3] T1.color (116) [DISC] (1) protected Integer P1.enableOut.t = P1.enableOut.t (117) [DISS] (1) protected discrete Real T1.fireTime (118) [DISC] (1) protected Integer P2.enableIn.posTE (119) [ALGB] (1) Real[1] P2.inTransition.maxTokens = {P2.maxTokens} (120) [DISC] (1) Boolean[1] T1.inPlaces.active = {T1.delayPassed} (121) [DISC] (1) protected discrete Real P1.enableOut.benefitMax (122) [DISC] (1) protected Integer[1] T1.activation.arcWeightIntOut = T1.arcWeightIntOut (123) [DISC] (1) protected Integer[1] P2.firingSumIn.arcWeight = P2.arcWeightIn (124) [DISC] (1) Integer[1] T1.outPlaces.arcWeightint = {T1.arcWeightIntOut[1]} (125) [DISC] (1) protected Boolean P2.enableIn.endWhile (126) [ALGB] (1) protected Real[1] T1.activation.tOut = T1.tOut (127) [DISC] (1) protected Boolean P1.enableOut.activeCon = P1.enableOut.activeCon (128) [DISC] (1) protected Boolean[1] P1.firingSumOut.fire = P1.fireOut and P1.disTransitionOut (129) [DISC] (4) Integer[4] $FUN_19 (130) [ALGB] (1) Real $FUN_18 (131) [DISC] (1) protected Integer[1] P1.enableOut.enablingPrio = P1.enablingPrioOut (132) [DISC] (1) Boolean[1] P2.inTransition.enable = {P2.enableIn.TEin_[1]} (133) [ALGB] (1) Real $FUN_17 (134) [DISC] (1) Integer $FUN_16 (135) [DISC] (1) protected Boolean[1] T1.enableIn (136) [DISC] (1) Integer $FUN_15 (137) [ALGB] (1) Real $FUN_14 (138) [DISC] (1) protected Integer P1.enableOut.Index (139) [DISC] (1) Boolean $FUN_13 (140) [ALGB] (1) Real $FUN_12 (141) [DISC] (1) protected Integer[1] T1.activation.tIntIn = T1.tIntIn (142) [DISC] (1) Integer $FUN_11 (143) [ALGB] (1) Real P2.levelCon (144) [DISC] (1) Boolean[1] T1.inPlaces.fire = {T1.fire} (145) [DISC] (1) Boolean[1] $FUN_10 (146) [DISC] (1) protected Integer[1] T1.activation.tIntOut = T1.tIntOut (147) [DISC] (1) Boolean[1] P1.outTransition.disTransition = {P1.disTransitionOut[1]} (148) [ALGB] (1) protected Real[1] T1.activation.tIn = T1.tIn (149) [DISC] (1) protected Boolean[1] P1.enableOut.TEout_ (150) [DISC] (1) protected Integer[1] T1.arcWeightIntIn (151) [DISC] (1) protected Boolean P1.tokeninout (fixed = true, start = false) (152) [DISC] (1) protected Boolean P1.enableOut.valid (153) [DISC] (1) Integer[1] P1.outTransition.testValueint = {-1 for $i1 in 1:1} (154) [DISC] (1) protected Boolean T1.delayPassed (fixed = true, start = false) (155) [DISC] (1) protected discrete Real P1.enableOut.randNum (156) [DISC] (1) protected Boolean[1] P2.delayPassedIn.vec = P2.activeIn and P2.disTransitionIn (157) [DISC] (1) Boolean[1] T1.inPlaces.disTransition = {true for $i1 in 1:1} (158) [DISC] (1) protected Boolean[1] P1.enableOut.disTransition = P1.disTransitionOut (159) [DISC] (1) enumeration PNlib.Types.ArcType(NormalArc, RealTestArc, TestArc, RealInhibitorArc, InhibitorArc)[1] T1.inPlaces.arcType = {T1.arcType[1]} (160) [DISC] (1) Boolean $SEV_106 (161) [DISC] (1) protected Boolean[1] T1.activation.disPlaceIn = T1.disPlaceIn (162) [DISC] (1) Boolean $SEV_105 (163) [DISC] (1) Boolean $SEV_104 (164) [DISC] (1) Integer[1] T1.outPlaces.tint = {T1.tIntOut[1]} (165) [DISC] (1) Boolean $SEV_103 (166) [DISC] (1) Boolean T1.fire (167) [DISC] (1) protected discrete Real P2.enableIn.benefitLimit (168) [DISC] (1) Boolean $SEV_102 (169) [DISC] (1) protected Boolean[1] P1.delayPassedOut.vec = P1.activeOut and P1.disTransitionOut (170) [ALGB] (1) protected Real[1] T1.testValue (171) [DISC] (1) Boolean $SEV_101 (172) [DISC] (4) protected Integer[4] P2.enableIn.state128 (173) [DISC] (1) Boolean $SEV_100 (174) [DISC] (1) protected Boolean[1] P2.enableIn.TEin (175) [DISC] (1) protected Boolean[1] T1.enableOut (176) [ALGB] (1) protected Real[1] T1.minTokens (177) [ALGB] (1) protected Real[1] P1.enableOut.enablingBene = P1.enablingBeneOut (178) [DISC] (1) protected Boolean[1] P2.disTransitionIn (179) [DISC] (1) protected Integer P1.delayPassedOut.numtrue (180) [ALGB] (1) protected Real P1.tokenscale (181) [DISC] (1) protected Boolean[1] T1.tokenChange.vec = T1.tokenInOut (182) [DISC] (1) Boolean[1] P1.outTransition.fire = {P1.fireOut[1]} (183) [DISC] (1) protected Integer P1.enableOut.arcWeightSum (184) [ALGB] (1) protected Real[1] T1.tOut (185) [DISC] (1) protected Boolean[1] T1.normalArc (186) [DISC] (1) protected Integer[1] T1.activation.arcWeightIntIn = T1.arcWeightIntIn (187) [DISC] (1) Integer[1] T1.inPlaces.arcWeightint = {T1.arcWeightIntIn[1]} (188) [DISC] (1) Boolean[1] P1.outTransition.enable = {P1.enableOut.TEout_[1]} (189) [DISC] (1) Integer[1] P2.inTransition.maxTokensint = {P2.maxTokens} (190) [DISC] (1) Integer[1] P1.outTransition.arcWeightint = {P1.arcWeightOut[1]} (191) [DISC] (1) protected Integer P2.delayPassedIn.numtrue (192) [DISC] (1) Integer[1] T1.inPlaces.tint = {T1.tIntIn[1]} (193) [DISC] (1) protected Boolean[1] P2.enableIn.active = P2.activeIn (194) [DISC] (1) protected Boolean[1] P1.fireOut (195) [DISC] (1) Boolean[1] $SEV_83[$i1] (196) [ALGB] (1) Real[1] T1.inPlaces.t = {T1.tIn[1]} (197) [DISC] (1) protected Integer P2.enableIn.Index (198) [DISC] (1) protected Integer P2.firingSumIn.firingSum (199) [ALGB] (1) Real[1] T1.arcWeightIn = {1.0 for $i1 in 1:1} (200) [DISC] (1) protected Integer[1] P2.enableIn.arcWeight = P2.arcWeightIn (201) [DISC] (1) protected discrete Real P2.enableIn.benefitMax (202) [ALGB] (1) protected Real[1] P1.enableOut.enablingProb = P1.enablingProbOut (203) [DISC] (1) Boolean[1] P1.outTransition.disPlace = {true for $i1 in 1:1} (204) [DISC] (1) protected Boolean[1] T1.disPlaceIn (205) [DISC] (1) protected Integer[1] P1.enableOut.remTAout (fixed = {true for $i1 in 1:1}, start = {0 for $i1 in 1:1}) (206) [DISC] (1) protected Integer[1] T1.tIntIn (207) [ALGB] (1) protected Real[1] T1.activation.maxTokens = T1.maxTokens (208) [DISC] (1) protected Boolean[1] P1.activeOut (fixed = {true for $i1 in 1:1}, start = {false for $i1 in 1:1}) (209) [DISC] (1) protected Boolean P2.enableIn.valid (210) [DISC] (1) Boolean[1] P2.inTransition.active = {P2.activeIn[1]} (211) [ALGB] (1) Real[1] P1.outTransition.arcWeight (212) [DISC] (1) protected Boolean T1.enabledByInPlaces = PNlib.Functions.OddsAndEnds.allTrue(T1.enableIn) (213) [DISC] (1) Boolean[1] T1.inPlaces.normalArc = {T1.normalArc[1]} (214) [DISC] (4) protected Integer[4] T1.state128 (215) [ALGB] (1) Real[1] P2.inTransition.t = {P2.pret} (216) [DISC] (1) Integer[1] T1.inPlaces.testValueint = {T1.testValueInt[1]} (217) [DISS] (1) Integer P2.t (fixed = true, start = P2.startTokens) (218) [DISC] (1) protected Integer P1.firingSumOut.firingSum (219) [DISC] (1) Integer[1] P1.outTransition.tint = {P1.pret} (220) [DISC] (1) Boolean[1] P2.inTransition.disPlace = {true for $i1 in 1:1} (221) [DISC] (1) protected Integer P2.enableIn.nremTAin (222) [ALGB] (1) protected Real[1] T1.activation.arcWeightIn = T1.arcWeightIn (223) [DISC] (1) protected Boolean[1] P2.fireIn (224) [DISC] (1) protected Boolean P2.enableIn.delayPassed = P2.enableIn.delayPassed (225) [ALGB] (1) Real[1] T1.inPlaces.minTokens = {T1.minTokens[1]} (226) [ALGB] (1) Real P1.levelCon (227) [DISC] (1) protected Boolean[1] P1.activeConOut.vec = pre(P1.activeOut) and not P1.disTransitionOut (fixed = {true for $i1 in 1:1}, start = {false for $i1 in 1:1}) (228) [ALGB] (1) Real[1] T1.inPlaces.testValue = {T1.testValue[1]} (229) [ALGB] (1) Real[1] T1.arcWeightOut = {1.0 for $i1 in 1:1} (230) [ALGB] (3) Real[3] P2.color (231) [DISC] (1) protected Integer[1] P2.enableIn.remTAin (fixed = {true for $i1 in 1:1}, start = {0 for $i1 in 1:1}) (232) [DISC] (1) protected Integer[1] T1.minTokensInt (233) [DISC] (1) Integer[1] P2.inTransition.arcWeightint = {P2.arcWeightIn[1]} (234) [ALGB] (1) Real[1] T1.outPlaces.maxTokens = {T1.maxTokens[1]} (235) [DISC] (1) Boolean[1] T1.inPlaces.tokenInOut = {T1.tokenInOut[1]} (236) [DISC] (1) protected discrete Real P1.enableOut.sumEnablingProbTAout (237) [ALGB] (1) Real[1] P1.outTransition.testValue = {-1.0 for $i1 in 1:1} (238) [DISC] (1) Boolean[1] P2.inTransition.disTransition = {P2.disTransitionIn[1]} (239) [ALGB] (1) protected Real[1] P2.enableIn.enablingProb = P2.enablingProbIn (240) [DISC] (1) protected Boolean[1] P1.enableOut.TAout = P1.activeOut (241) [DISC] (1) protected discrete Real[1] P2.enableIn.cumEnablingProb (fixed = {true for $i1 in 1:1}, start = {0.0 for $i1 in 1:1}) (242) [ALGB] (1) Real[1] P1.outTransition.minTokens = {P1.minTokens} (243) [DISC] (1) Boolean[1] $SEV_82[$i1] (244) [DISC] (1) protected Integer P2.enableIn.nTAin (245) [DISC] (1) protected Boolean[1] T1.tokenInOut (246) [DISC] (1) Integer[1] T1.inPlaces.minTokensint = {T1.minTokensInt[1]} (247) [DISC] (1) protected Integer[1] P2.arcWeightIn (248) [DISC] (1) Boolean[1] P1.outTransition.normalArc = {false for $i1 in 1:1} (249) [DISC] (1) protected Integer[1] T1.maxTokensInt (250) [ALGB] (1) Real[1] T1.inPlaces.arcWeight = {T1.arcWeightIn[1]} (251) [DISC] (1) protected Integer[1] T1.arcWeightIntOut (252) [DISC] (1) discrete Real T1.putFireTime (253) [DISC] (1) Boolean[1] T1.outPlaces.active = {T1.delayPassed} System Equations (204/277) **************************** (1) [SCAL] (1) T1.outPlaces[1].active = P2.inTransition[1].active ($RES_SIM_80) (2) [SCAL] (1) P1.outTransition[1].tokenInOut = T1.inPlaces[1].tokenInOut ($RES_SIM_81) (3) [SCAL] (1) P1.outTransition[1].tint = T1.inPlaces[1].tint ($RES_SIM_82) (4) [ARRY] (1) P2.enableIn.arcWeight = P2.arcWeightIn ($RES_BND_173) (5) [SCAL] (1) P1.outTransition[1].testValueint = T1.inPlaces[1].testValueint ($RES_SIM_83) (6) [SCAL] (1) P1.outTransition[1].testValue = T1.inPlaces[1].testValue ($RES_SIM_84) (7) [SCAL] (1) P1.outTransition[1].t = T1.inPlaces[1].t ($RES_SIM_85) (8) [ARRY] (1) P2.enableIn.TAein = $SEV_101 ($RES_BND_176) (9) [ARRY] (1) P2.enableIn.enablingPrio = P2.enablingPrioIn ($RES_BND_178) (10) [SCAL] (1) P1.outTransition[1].normalArc = T1.inPlaces[1].normalArc ($RES_SIM_88) (11) [ARRY] (1) P2.enableIn.enablingProb = P2.enablingProbIn ($RES_BND_179) (12) [SCAL] (1) P1.outTransition[1].minTokensint = T1.inPlaces[1].minTokensint ($RES_SIM_89) (13) [SCAL] (1) $SEV_85 = T1.active and time >= T1.putFireTime ($RES_EVT_290) (14) [SCAL] (1) $SEV_86 = T1.activation.active and not $PRE.T1.delayPassed ($RES_EVT_291) (15) [ALGO] (20) ($RES_SIM_10) (15) [----] P2.enableIn.TEin := fill(false, 1); (15) [----] P2.enableIn.arcWeightSum := 0; (15) [----] when P2.enableIn.delayPassed then (15) [----] P2.enableIn.arcWeightSum := $FUN_15; (15) [----] if P2.enableOut.t + P2.enableIn.arcWeightSum <= P2.maxTokens then (15) [----] P2.enableIn.TEin := P2.enableIn.TAein; (15) [----] elseif true then (15) [----] if P2.enablingType == PNlib.Types.EnablingType.Priority then (15) [----] P2.enableIn.arcWeightSum := 0; (15) [----] for i in 1:1 loop (15) [----] P2.enableIn.Index := $FUN_16; (15) [----] if ((P2.enableIn.Index > 0 and P2.enableIn.TAein[P2.enableIn.Index]) and P2.enableIn.disTransition[P2.enableIn.Index]) and P2.enableOut.t + P2.enableIn.arcWeight[P2.enableIn.Index] + P2.enableIn.arcWeightSum <= P2.maxTokens then (15) [----] P2.enableIn.TEin[P2.enableIn.Index] := true; (15) [----] P2.enableIn.arcWeightSum := P2.enableIn.arcWeightSum + P2.enableIn.arcWeight[P2.enableIn.Index]; (15) [----] end if; (15) [----] end for; (15) [----] for i in 1:1 loop (15) [----] P2.enableIn.Index := $FUN_16; (15) [----] if (P2.enableIn.TAein[P2.enableIn.Index] and not P2.enableIn.disTransition[P2.enableIn.Index]) and P2.enableOut.t + P2.enableIn.arcWeight[P2.enableIn.Index] + P2.enableIn.arcWeightSum <= P2.maxTokens then (15) [----] P2.enableIn.TEin[P2.enableIn.Index] := true; (15) [----] P2.enableIn.arcWeightSum := P2.enableIn.arcWeightSum + P2.enableIn.arcWeight[P2.enableIn.Index]; (15) [----] end if; (15) [----] end for; (15) [----] elseif P2.enablingType == PNlib.Types.EnablingType.Probability then (15) [----] P2.enableIn.arcWeightSum := 0; (15) [----] P2.enableIn.remTAin := fill(0, 1); (15) [----] P2.enableIn.nremTAin := 0; (15) [----] for i in 1:1 loop (15) [----] if P2.enableIn.TAein[i] and P2.enableIn.disTransition[i] then (15) [----] P2.enableIn.nremTAin := P2.enableIn.nremTAin + 1; (15) [----] P2.enableIn.remTAin[P2.enableIn.nremTAin] := i; (15) [----] end if; (15) [----] end for; (15) [----] P2.enableIn.nTAin := P2.enableIn.nremTAin; (15) [----] P2.enableIn.sumEnablingProbTAin := $FUN_17; (15) [----] P2.enableIn.cumEnablingProb := fill(0.0, 1); (15) [----] P2.enableIn.cumEnablingProb[1] := P2.enableIn.enablingProb[P2.enableIn.remTAin[1]] / P2.enableIn.sumEnablingProbTAin; (15) [----] for j in 2:P2.enableIn.nremTAin loop (15) [----] P2.enableIn.cumEnablingProb[j] := P2.enableIn.cumEnablingProb[j - 1] + P2.enableIn.enablingProb[P2.enableIn.remTAin[j]] / P2.enableIn.sumEnablingProbTAin; (15) [----] end for; (15) [----] for i in 1:P2.enableIn.nTAin loop (15) [----] (P2.enableIn.randNum, P2.enableIn.state128) := ($FUN_18, $FUN_19); (15) [----] P2.enableIn.endWhile := false; (15) [----] P2.enableIn.k := 1; (15) [----] while P2.enableIn.k <= P2.enableIn.nremTAin and not P2.enableIn.endWhile then (15) [----] if P2.enableIn.randNum <= P2.enableIn.cumEnablingProb[P2.enableIn.k] then (15) [----] P2.enableIn.posTE := P2.enableIn.remTAin[P2.enableIn.k]; (15) [----] P2.enableIn.endWhile := true; (15) [----] elseif true then (15) [----] P2.enableIn.k := P2.enableIn.k + 1; (15) [----] end if; (15) [----] end while; (15) [----] if P2.enableIn.arcWeightSum + P2.enableOut.t + P2.enableIn.arcWeight[P2.enableIn.posTE] <= P2.maxTokens then (15) [----] P2.enableIn.arcWeightSum := P2.enableIn.arcWeightSum + P2.enableIn.arcWeight[P2.enableIn.posTE]; (15) [----] P2.enableIn.TEin[P2.enableIn.posTE] := true; (15) [----] end if; (15) [----] P2.enableIn.nremTAin := P2.enableIn.nremTAin - 1; (15) [----] if P2.enableIn.nremTAin > 0 then (15) [----] P2.enableIn.remTAin := $FUN_20; (15) [----] P2.enableIn.cumEnablingProb := fill(0.0, 1); (15) [----] P2.enableIn.sumEnablingProbTAin := $FUN_17; (15) [----] if P2.enableIn.sumEnablingProbTAin > 0.0 then (15) [----] P2.enableIn.cumEnablingProb[1] := P2.enableIn.enablingProb[P2.enableIn.remTAin[1]] / P2.enableIn.sumEnablingProbTAin; (15) [----] for j in 2:P2.enableIn.nremTAin loop (15) [----] P2.enableIn.cumEnablingProb[j] := P2.enableIn.cumEnablingProb[j - 1] + P2.enableIn.enablingProb[P2.enableIn.remTAin[j]] / P2.enableIn.sumEnablingProbTAin; (15) [----] end for; (15) [----] elseif true then (15) [----] P2.enableIn.cumEnablingProb[1:P2.enableIn.nremTAin] := fill(1.0 / P2.enableIn.nremTAin, P2.enableIn.nremTAin); (15) [----] end if; (15) [----] end if; (15) [----] end for; (15) [----] elseif true then (15) [----] if P2.benefitType == PNlib.Types.BenefitType.Greedy then (15) [----] P2.enableIn.TEin := $FUN_21; (15) [----] elseif P2.benefitType == PNlib.Types.BenefitType.BenefitQuotient then (15) [----] P2.enableIn.TEin := $FUN_22; (15) [----] elseif true then (15) [----] P2.enableIn.arcWeightSum := 0; (15) [----] P2.enableIn.benefitMax := $FUN_23; (15) [----] P2.enableIn.benefitLimit := 0.0; (15) [----] (P2.enableIn.TEin, P2.enableIn.arcWeightSum, P2.enableIn.benefitMax, P2.enableIn.valid, P2.enableIn.benefitLimit) := ($FUN_24, $FUN_25, $FUN_26, $FUN_27, $FUN_28); (15) [----] end if; (15) [----] end if; (15) [----] end if; (15) [----] end when; (15) [----] for i in 1:1 loop (15) [----] P2.enableIn.TEin_[i] := P2.enableIn.TEin[i] and P2.enableIn.active[i]; (15) [----] end for; (16) [SCAL] (1) $SEV_90 = P2.tokenscale < 100.0 ($RES_EVT_295) (17) [SCAL] (1) $SEV_91 = $PRE.P2.firingSumIn.firingSum > 0 ($RES_EVT_296) (18) [ALGO] (1) ($RES_SIM_12) (18) [----] P2.firingSumOut.firingSum := 0; (19) [SCAL] (1) $SEV_92 = $PRE.P2.firingSumOut.firingSum > 0 ($RES_EVT_297) (20) [ALGO] (1) ($RES_SIM_13) (20) [----] P2.firingSumIn.firingSum := 0; (20) [----] for i in 1:1 loop (20) [----] if P2.firingSumIn.fire[i] then (20) [----] P2.firingSumIn.firingSum := P2.firingSumIn.firingSum + P2.firingSumIn.arcWeight[i]; (20) [----] end if; (20) [----] end for; (21) [SCAL] (1) $SEV_93 = $PRE.P2.firingSumIn.firingSum > 0 or $PRE.P2.firingSumOut.firingSum > 0 ($RES_EVT_298) (22) [ALGO] (2) ($RES_SIM_14) (22) [----] P2.enableIn.delayPassed := false; (22) [----] P2.delayPassedIn.numtrue := 0; (22) [----] for i in 1:1 loop (22) [----] P2.enableIn.delayPassed := P2.enableIn.delayPassed or P2.delayPassedIn.vec[i]; (22) [----] if P2.delayPassedIn.vec[i] then (22) [----] P2.delayPassedIn.numtrue := P2.delayPassedIn.numtrue + 1; (22) [----] end if; (22) [----] end for; (23) [SCAL] (1) P1.outTransition[1].normalArc = false ($RES_BND_106) (24) [ARRY] (1) P2.enableIn.enablingBene = P2.enablingBeneIn ($RES_BND_180) (25) [SCAL] (1) P1.outTransition[1].testValueint = -1 ($RES_BND_107) (26) [SCAL] (1) P1.outTransition[1].testValue = -1.0 ($RES_BND_108) (27) [SCAL] (1) P1.outTransition[1].minTokens = T1.inPlaces[1].minTokens ($RES_SIM_90) (28) [ALGO] (20) ($RES_SIM_18) (28) [----] P1.enableOut.TEout := fill(false, 1); (28) [----] P1.enableOut.arcWeightSum := 0; (28) [----] for i in 1:1 loop (28) [----] if (P1.enableOut.TAout[i] and not P1.enableOut.disTransition[i]) and P1.enableOut.t - (P1.enableOut.arcWeight[i] + P1.enableOut.arcWeightSum) >= P1.minTokens then (28) [----] P1.enableOut.TEout[i] := true; (28) [----] P1.enableOut.arcWeightSum := P1.enableOut.arcWeightSum + P1.enableOut.arcWeight[i]; (28) [----] end if; (28) [----] end for; (28) [----] when P1.enableOut.delayPassed or P1.enableOut.activeCon then (28) [----] P1.enableOut.arcWeightSum := $FUN_1; (28) [----] if P1.enableOut.t - P1.enableOut.arcWeightSum >= P1.minTokens then (28) [----] P1.enableOut.TEout := P1.enableOut.TAout; (28) [----] elseif true then (28) [----] if P1.enablingType == PNlib.Types.EnablingType.Priority then (28) [----] P1.enableOut.arcWeightSum := 0; (28) [----] for i in 1:1 loop (28) [----] P1.enableOut.Index := $FUN_2; (28) [----] if ((P1.enableOut.Index > 0 and P1.enableOut.TAout[P1.enableOut.Index]) and P1.enableOut.disTransition[P1.enableOut.Index]) and P1.enableOut.t - (P1.enableOut.arcWeight[P1.enableOut.Index] + P1.enableOut.arcWeightSum) >= P1.minTokens then (28) [----] P1.enableOut.TEout[P1.enableOut.Index] := true; (28) [----] P1.enableOut.arcWeightSum := P1.enableOut.arcWeightSum + P1.enableOut.arcWeight[P1.enableOut.Index]; (28) [----] end if; (28) [----] end for; (28) [----] for i in 1:1 loop (28) [----] P1.enableOut.Index := $FUN_2; (28) [----] if (P1.enableOut.TAout[P1.enableOut.Index] and not P1.enableOut.disTransition[P1.enableOut.Index]) and P1.enableOut.t - (P1.enableOut.arcWeight[P1.enableOut.Index] + P1.enableOut.arcWeightSum) >= P1.minTokens then (28) [----] P1.enableOut.TEout[P1.enableOut.Index] := true; (28) [----] P1.enableOut.arcWeightSum := P1.enableOut.arcWeightSum + P1.enableOut.arcWeight[P1.enableOut.Index]; (28) [----] end if; (28) [----] end for; (28) [----] elseif P1.enablingType == PNlib.Types.EnablingType.Probability then (28) [----] P1.enableOut.remTAout := fill(0, 1); (28) [----] P1.enableOut.nremTAout := 0; (28) [----] P1.enableOut.arcWeightSum := 0; (28) [----] for i in 1:1 loop (28) [----] if P1.enableOut.TAout[i] and P1.enableOut.disTransition[i] then (28) [----] P1.enableOut.nremTAout := P1.enableOut.nremTAout + 1; (28) [----] P1.enableOut.remTAout[P1.enableOut.nremTAout] := i; (28) [----] end if; (28) [----] end for; (28) [----] P1.enableOut.nTAout := P1.enableOut.nremTAout; (28) [----] if P1.enableOut.nTAout > 0 then (28) [----] P1.enableOut.sumEnablingProbTAout := $FUN_3; (28) [----] P1.enableOut.cumEnablingProb := fill(0.0, 1); (28) [----] P1.enableOut.cumEnablingProb[1] := P1.enableOut.enablingProb[P1.enableOut.remTAout[1]] / P1.enableOut.sumEnablingProbTAout; (28) [----] for j in 2:P1.enableOut.nremTAout loop (28) [----] P1.enableOut.cumEnablingProb[j] := P1.enableOut.cumEnablingProb[j - 1] + P1.enableOut.enablingProb[P1.enableOut.remTAout[j]] / P1.enableOut.sumEnablingProbTAout; (28) [----] end for; (28) [----] for i in 1:P1.enableOut.nTAout loop (28) [----] (P1.enableOut.randNum, P1.enableOut.state128) := ($FUN_4, $FUN_5); (28) [----] P1.enableOut.endWhile := false; (28) [----] P1.enableOut.k := 1; (28) [----] while P1.enableOut.k <= P1.enableOut.nremTAout and not P1.enableOut.endWhile then (28) [----] if P1.enableOut.randNum <= P1.enableOut.cumEnablingProb[P1.enableOut.k] then (28) [----] P1.enableOut.posTE := P1.enableOut.remTAout[P1.enableOut.k]; (28) [----] P1.enableOut.endWhile := true; (28) [----] elseif true then (28) [----] P1.enableOut.k := P1.enableOut.k + 1; (28) [----] end if; (28) [----] end while; (28) [----] if P1.enableOut.t - (P1.enableOut.arcWeight[P1.enableOut.posTE] + P1.enableOut.arcWeightSum) >= P1.minTokens then (28) [----] P1.enableOut.arcWeightSum := P1.enableOut.arcWeightSum + P1.enableOut.arcWeight[P1.enableOut.posTE]; (28) [----] P1.enableOut.TEout[P1.enableOut.posTE] := true; (28) [----] end if; (28) [----] P1.enableOut.nremTAout := P1.enableOut.nremTAout - 1; (28) [----] if P1.enableOut.nremTAout > 0 then (28) [----] P1.enableOut.remTAout := $FUN_6; (28) [----] P1.enableOut.cumEnablingProb := fill(0.0, 1); (28) [----] P1.enableOut.sumEnablingProbTAout := $FUN_3; (28) [----] if P1.enableOut.sumEnablingProbTAout > 0.0 then (28) [----] P1.enableOut.cumEnablingProb[1] := P1.enableOut.enablingProb[P1.enableOut.remTAout[1]] / P1.enableOut.sumEnablingProbTAout; (28) [----] for j in 2:P1.enableOut.nremTAout loop (28) [----] P1.enableOut.cumEnablingProb[j] := P1.enableOut.cumEnablingProb[j - 1] + P1.enableOut.enablingProb[P1.enableOut.remTAout[j]] / P1.enableOut.sumEnablingProbTAout; (28) [----] end for; (28) [----] elseif true then (28) [----] P1.enableOut.cumEnablingProb[1:P1.enableOut.nremTAout] := fill(1.0 / P1.enableOut.nremTAout, P1.enableOut.nremTAout); (28) [----] end if; (28) [----] end if; (28) [----] end for; (28) [----] end if; (28) [----] for i in 1:1 loop (28) [----] if (P1.enableOut.TAout[i] and not P1.enableOut.disTransition[i]) and P1.enableOut.t - (P1.enableOut.arcWeight[i] + P1.enableOut.arcWeightSum) >= P1.minTokens then (28) [----] P1.enableOut.TEout[i] := true; (28) [----] P1.enableOut.arcWeightSum := P1.enableOut.arcWeightSum + P1.enableOut.arcWeight[i]; (28) [----] end if; (28) [----] end for; (28) [----] elseif true then (28) [----] if P1.benefitType == PNlib.Types.BenefitType.Greedy then (28) [----] P1.enableOut.TEout := $FUN_7; (28) [----] elseif P1.benefitType == PNlib.Types.BenefitType.BenefitQuotient then (28) [----] P1.enableOut.TEout := $FUN_8; (28) [----] elseif true then (28) [----] P1.enableOut.arcWeightSum := 0; (28) [----] P1.enableOut.benefitMax := $FUN_9; (28) [----] P1.enableOut.benefitLimit := 0.0; (28) [----] (P1.enableOut.TEout, P1.enableOut.arcWeightSum, P1.enableOut.benefitMax, P1.enableOut.valid, P1.enableOut.benefitLimit) := ($FUN_10, $FUN_11, $FUN_12, $FUN_13, $FUN_14); (28) [----] end if; (28) [----] end if; (28) [----] end if; (28) [----] end when; (28) [----] for i in 1:1 loop (28) [----] P1.enableOut.TEout_[i] := P1.enableOut.TEout[i] and P1.enableOut.TAout[i]; (28) [----] end for; (29) [ARRY] (1) P2.enableIn.disTransition = P2.disTransitionIn ($RES_BND_182) (30) [ARRY] (1) P1.outTransition.tokenInOut = {$TEV_5} ($RES_BND_109) (31) [ALGO] (1) ($RES_SIM_19) (31) [----] P1.firingSumOut.firingSum := 0; (31) [----] for i in 1:1 loop (31) [----] if P1.firingSumOut.fire[i] then (31) [----] P1.firingSumOut.firingSum := P1.firingSumOut.firingSum + P1.firingSumOut.arcWeight[i]; (31) [----] end if; (31) [----] end for; (32) [SCAL] (1) P1.outTransition[1].fire = T1.inPlaces[1].fire ($RES_SIM_93) (33) [ARRY] (1) P2.enableIn.active = P2.activeIn ($RES_BND_184) (34) [SCAL] (1) T1.arcWeightIn[1] = 1.0 ($RES_BND_185) (35) [SCAL] (1) P1.outTransition[1].enable = T1.inPlaces[1].enable ($RES_SIM_95) (36) [SCAL] (1) T1.arcWeightOut[1] = 1.0 ($RES_BND_186) (37) [SCAL] (1) P1.outTransition[1].disTransition = T1.inPlaces[1].disTransition ($RES_SIM_96) (38) [SCAL] (1) P1.outTransition[1].disPlace = T1.inPlaces[1].disPlace ($RES_SIM_97) (39) [SCAL] (1) P1.outTransition[1].arcWeightint = T1.inPlaces[1].arcWeightint ($RES_SIM_99) (40) [SCAL] (1) $SEV_97 = P1.tokenscale < 100.0 ($RES_EVT_302) (41) [SCAL] (1) $SEV_98 = $PRE.P1.firingSumIn.firingSum > 0 ($RES_EVT_303) (42) [SCAL] (1) $SEV_99 = $PRE.P1.firingSumOut.firingSum > 0 ($RES_EVT_304) (43) [SCAL] (1) $SEV_100 = $PRE.P1.firingSumIn.firingSum > 0 or $PRE.P1.firingSumOut.firingSum > 0 ($RES_EVT_305) (44) [SCAL] (1) $SEV_101 = P2.enabledByInPlaces and P2.activeIn ($RES_EVT_306) (45) [SCAL] (1) $SEV_102 = P2.fireIn and P2.disTransitionIn ($RES_EVT_307) (46) [SCAL] (1) $SEV_103 = P2.activeIn and P2.disTransitionIn ($RES_EVT_308) (47) [SCAL] (1) $SEV_104 = P1.fireOut and P1.disTransitionOut ($RES_EVT_309) (48) [ALGO] (1) ($RES_SIM_20) (48) [----] P1.firingSumIn.firingSum := 0; (49) [SCAL] (1) P1.outTransition[1].arcType = PNlib.Types.ArcType.NormalArc ($RES_BND_112) (50) [ALGO] (2) ($RES_SIM_22) (50) [----] P1.enableOut.delayPassed := false; (50) [----] P1.delayPassedOut.numtrue := 0; (50) [----] for i in 1:1 loop (50) [----] P1.enableOut.delayPassed := P1.enableOut.delayPassed or P1.delayPassedOut.vec[i]; (50) [----] if P1.delayPassedOut.vec[i] then (50) [----] P1.delayPassedOut.numtrue := P1.delayPassedOut.numtrue + 1; (50) [----] end if; (50) [----] end for; (51) [SCAL] (1) P1.outTransition[1].disPlace = true ($RES_BND_113) (52) [ALGO] (1) ($RES_SIM_23) (52) [----] P1.enableOut.activeCon := false; (52) [----] for i in 1:1 loop (52) [----] P1.enableOut.activeCon := P1.enableOut.activeCon or change(P1.activeConOut.vec[i]); (52) [----] end for; (53) [ARRY] (1) P1.outTransition.enable = {P1.enableOut.TEout_[1]} ($RES_BND_115) (54) [-IF-] (1)if T1.disPlaceOut[1] then (54) [----] [SCAL] (1) T1.arcWeightIntOut[1] = integer(T1.arcWeightOut[1]) ($RES_SIM_26) (54) [----] else (54) [----] [SCAL] (1) T1.arcWeightIntOut[1] = 1 ($RES_SIM_27) (54) [----] end if; (55) [ARRY] (1) P1.outTransition.minTokensint = {P1.minTokens} ($RES_BND_116) (56) [ARRY] (1) P1.outTransition.minTokens = {P1.minTokens} ($RES_BND_117) (57) [ARRY] (1) P1.outTransition.tint = {P1.enableOut.t} ($RES_BND_118) (58) [ARRY] (1) P1.outTransition.t = {P1.enableOut.t} ($RES_BND_119) (59) [SCAL] (1) T1.inPlaces[1].disTransition = true ($RES_BND_194) (60) [SCAL] (1) $FUN_1 = PNlib.Functions.OddsAndEnds.conditionalSumInt(P1.enableOut.arcWeight, P1.enableOut.TAout) ($RES_$AUX_268) (61) [ARRY] (1) T1.inPlaces.arcWeightint = {T1.arcWeightIntIn[1]} ($RES_BND_195) (62) [SCAL] (1) $FUN_2 = Modelica.Math.Vectors.find(i, P1.enableOut.enablingPrio, 0.0) ($RES_$AUX_267) (63) [ARRY] (1) T1.inPlaces.arcWeight = {T1.arcWeightIn[1]} ($RES_BND_196) (64) [SCAL] (1) $FUN_3 = sum(P1.enableOut.enablingProb[P1.enableOut.remTAout[1:P1.enableOut.nremTAout]]) ($RES_$AUX_266) (65) [ARRY] (1) T1.inPlaces.fire = {T1.fire} ($RES_BND_197) (66) [TUPL] (5) ($FUN_4, $FUN_5) = Modelica.Math.Random.Generators.Xorshift128plus.random($TEV_6) ($RES_$AUX_265) (67) [ARRY] (1) T1.inPlaces.active = {T1.delayPassed} ($RES_BND_198) (68) [ARRY] (1) $FUN_6 = PNlib.Functions.OddsAndEnds.deleteElementInt(P1.enableOut.remTAout, P1.enableOut.k) ($RES_$AUX_264) (69) [ARRY] (1) T1.inPlaces.normalArc = {T1.normalArc[1]} ($RES_BND_199) (70) [ARRY] (1) $FUN_7 = PNlib.Functions.Enabling.benefitGreedyDisOut(1, P1.enableOut.arcWeight, P1.enableOut.t, P1.minTokens, P1.enableOut.TAout, P1.enableOut.enablingBene, P1.enableOut.disTransition) ($RES_$AUX_263) (71) [ARRY] (1) $FUN_8 = PNlib.Functions.Enabling.benefitQuotientDisOut(1, P1.enableOut.arcWeight, P1.enableOut.t, P1.minTokens, P1.enableOut.TAout, P1.enableOut.enablingBene, P1.enableOut.disTransition) ($RES_$AUX_262) (72) [SCAL] (1) $SEV_105 = P1.activeOut and P1.disTransitionOut ($RES_EVT_310) (73) [SCAL] (1) $FUN_9 = sum(P1.enableOut.enablingBene) ($RES_$AUX_261) (74) [SCAL] (1) $SEV_106 = $PRE.P1.activeOut and not P1.disTransitionOut ($RES_EVT_311) (75) [TUPL] (5) ($FUN_10, $FUN_11, $FUN_12, $FUN_13, $FUN_14) = PNlib.Functions.Enabling.benefitBaBDisOut(1, 1, P1.enableOut.enablingBene, P1.enableOut.arcWeight, P1.enableOut.enablingBene / P1.enableOut.arcWeight, P1.enableOut.t, P1.enableOut.benefitMax, P1.minTokens, P1.enableOut.TEout, 0, P1.enableOut.benefitLimit, P1.enableOut.TAout, P1.enableOut.disTransition) ($RES_$AUX_260) (76) [ARRY] (1) T1.inPlaces.testValueint = {T1.testValueInt[1]} ($RES_BND_200) (77) [ARRY] (1) T1.inPlaces.testValue = {T1.testValue[1]} ($RES_BND_201) (78) [ARRY] (1) T1.inPlaces.tokenInOut = {T1.tokenInOut[1]} ($RES_BND_202) (79) [ARRY] (1) T1.inPlaces.arcType = {T1.arcType[1]} ($RES_BND_203) (80) [ARRY] (1) T1.inPlaces.disPlace = {T1.disPlaceIn[1]} ($RES_BND_204) (81) [ARRY] (1) T1.inPlaces.enable = {T1.enableIn[1]} ($RES_BND_205) (82) [ARRY] (1) P1.outTransition.disTransition = {P1.disTransitionOut[1]} ($RES_BND_120) (83) [ARRY] (1) T1.inPlaces.minTokensint = {T1.minTokensInt[1]} ($RES_BND_206) (84) [ARRY] (1) P1.outTransition.arcWeightint = {P1.arcWeightOut[1]} ($RES_BND_121) (85) [ARRY] (1) T1.inPlaces.minTokens = {T1.minTokens[1]} ($RES_BND_207) (86) [ARRY] (1) P1.outTransition.fire = {P1.fireOut[1]} ($RES_BND_122) (87) [ARRY] (1) T1.inPlaces.tint = {T1.tIntIn[1]} ($RES_BND_208) (88) [-IF-] (1)if T1.disPlaceIn[1] then (88) [----] [SCAL] (1) T1.arcWeightIntIn[1] = integer(T1.arcWeightIn[1]) ($RES_SIM_33) (88) [----] else (88) [----] [SCAL] (1) T1.arcWeightIntIn[1] = 1 ($RES_SIM_34) (88) [----] end if; (89) [ARRY] (1) P1.outTransition.active = {P1.activeOut[1]} ($RES_BND_123) (90) [ARRY] (1) T1.inPlaces.t = {T1.tIn[1]} ($RES_BND_209) (91) [ARRY] (1) P1.activeConOut.vec = $SEV_106 ($RES_BND_125) (92) [ARRY] (1) P1.delayPassedOut.vec = $SEV_105 ($RES_BND_126) (93) [ARRY] (1) P1.firingSumOut.fire = $SEV_104 ($RES_BND_127) (94) [ARRY] (1) P1.firingSumOut.arcWeight = P1.arcWeightOut ($RES_BND_128) (95) [ARRY] (1) P1.enableOut.arcWeight = P1.arcWeightOut ($RES_BND_129) (96) [ARRY] (3) T1.color = if $SEV_84 then {255.0, 255.0, 0.0} else {0.0, 0.0, 0.0} ($RES_SIM_39) (97) [SCAL] (1) $FUN_15 = PNlib.Functions.OddsAndEnds.conditionalSumInt(P2.enableIn.arcWeight, P2.enableIn.TAein) ($RES_$AUX_259) (98) [SCAL] (1) $FUN_16 = Modelica.Math.Vectors.find(i, P2.enableIn.enablingPrio, 0.0) ($RES_$AUX_258) (99) [SCAL] (1) $FUN_17 = sum(P2.enableIn.enablingProb[P2.enableIn.remTAin[1:P2.enableIn.nremTAin]]) ($RES_$AUX_257) (100) [TUPL] (5) ($FUN_18, $FUN_19) = Modelica.Math.Random.Generators.Xorshift128plus.random($TEV_7) ($RES_$AUX_256) (101) [ARRY] (1) $FUN_20 = PNlib.Functions.OddsAndEnds.deleteElementInt(P2.enableIn.remTAin, P2.enableIn.k) ($RES_$AUX_255) (102) [ARRY] (1) $FUN_21 = PNlib.Functions.Enabling.benefitGreedyDisIn(1, P2.enableIn.arcWeight, P2.enableOut.t, P2.maxTokens, P2.enableIn.TAein, P2.enableIn.enablingBene, P2.enableIn.disTransition) ($RES_$AUX_254) (103) [ARRY] (1) $FUN_22 = PNlib.Functions.Enabling.benefitQuotientDisIn(1, P2.enableIn.arcWeight, P2.enableOut.t, P2.maxTokens, P2.enableIn.TAein, P2.enableIn.enablingBene, P2.enableIn.disTransition) ($RES_$AUX_253) (104) [SCAL] (1) $FUN_23 = sum(P2.enableIn.enablingBene) ($RES_$AUX_252) (105) [TUPL] (5) ($FUN_24, $FUN_25, $FUN_26, $FUN_27, $FUN_28) = PNlib.Functions.Enabling.benefitBaBDisIn(1, 1, P2.enableIn.enablingBene, P2.enableIn.arcWeight, P2.enableIn.enablingBene / P2.enableIn.arcWeight, P2.enableOut.t, P2.enableIn.benefitMax, P2.maxTokens, P2.enableIn.TEin, 0, P2.enableIn.benefitLimit, P2.enableIn.TAein, P2.enableIn.disTransition) ($RES_$AUX_251) (106) [TUPL] (5) ($FUN_29, $FUN_30) = Modelica.Math.Random.Generators.Xorshift128plus.random($TEV_8) ($RES_$AUX_250) (107) [SCAL] (1) T1.outPlaces[1].disTransition = true ($RES_BND_213) (108) [ARRY] (1) T1.outPlaces.enabledByInPlaces = {T1.enabledByInPlaces} ($RES_BND_214) (109) [ARRY] (1) T1.outPlaces.arcWeightint = {T1.arcWeightIntOut[1]} ($RES_BND_215) (110) [ARRY] (1) T1.outPlaces.arcWeight = {T1.arcWeightOut[1]} ($RES_BND_216) (111) [WHEN] (1)when T1.fire then (111) [----] T1.ani := true (111) [----] end when; (112) [ARRY] (1) T1.outPlaces.fire = {T1.fire} ($RES_BND_217) (113) [WHEN] (1)when T1.fire then (113) [----] T1.fireTime := time (113) [----] end when; (114) [ARRY] (1) P1.enableOut.TAout = P1.activeOut ($RES_BND_132) (115) [ARRY] (1) T1.outPlaces.active = {T1.delayPassed} ($RES_BND_218) (116) [ARRY] (1) T1.outPlaces.disPlace = {T1.disPlaceOut[1]} ($RES_BND_219) (117) [SCAL] (1) T1.delayPassed = $SEV_85 ($RES_SIM_43) (118) [ARRY] (1) P1.enableOut.enablingPrio = P1.enablingPrioOut ($RES_BND_134) (119) [SCAL] (1) T1.active = $SEV_86 ($RES_SIM_44) (120) [ARRY] (1) P1.enableOut.enablingProb = P1.enablingProbOut ($RES_BND_135) (121) [ARRY] (1) P1.enableOut.enablingBene = P1.enablingBeneOut ($RES_BND_136) (122) [ARRY] (1) P1.enableOut.disTransition = P1.disTransitionOut ($RES_BND_138) (123) [ARRY] (3) P2.color = if settings.animatePlace then if $SEV_90 then {255.0, 255.0 - 2.55 * P2.tokenscale, 255.0 - 2.55 * P2.tokenscale} else {255.0, 0.0, 0.0} else {255.0, 255.0, 255.0} ($RES_SIM_48) (124) [SCAL] (1) P2.tokenscale = P2.t * settings.scale ($RES_SIM_49) (125) [SCAL] (1) $FUN_31 = PNlib.Functions.Random.randomexp(T1.h, T1.r128) ($RES_$AUX_249) (126) [SCAL] (1) T1.fire = PNlib.Functions.OddsAndEnds.allTrue(T1.enableOut) ($RES_$AUX_248) (127) [SCAL] (1) T1.enabledByInPlaces = PNlib.Functions.OddsAndEnds.allTrue(T1.enableIn) ($RES_$AUX_247) (128) [ARRY] (1) T1.outPlaces.enable = {T1.enableOut[1]} ($RES_BND_220) (129) [ARRY] (1) T1.outPlaces.maxTokensint = {T1.maxTokensInt[1]} ($RES_BND_221) (130) [ARRY] (1) T1.outPlaces.maxTokens = {T1.maxTokens[1]} ($RES_BND_222) (131) [ARRY] (1) T1.outPlaces.tint = {T1.tIntOut[1]} ($RES_BND_223) (132) [ARRY] (1) T1.outPlaces.t = {T1.tOut[1]} ($RES_BND_224) (133) [ARRY] (1) T1.activation.tIn = T1.tIn ($RES_BND_225) (134) [ARRY] (1) T1.activation.tOut = T1.tOut ($RES_BND_226) (135) [SCAL] (1) P2.levelCon = (settings.M * P2.t) / P2.N ($RES_SIM_50) (136) [ARRY] (1) T1.activation.tIntIn = T1.tIntIn ($RES_BND_227) (137) [WHEN] (1)when {$SEV_91, $SEV_92} then (137) [----] P2.t := ($PRE.P2.firingSumIn.firingSum + P2.enableOut.t) - $PRE.P2.firingSumOut.firingSum (137) [----] else when pre(false) then (137) [----] P2.t := P2.reStartTokens (137) [----] end when; (138) [ARRY] (1) T1.activation.tIntOut = T1.tIntOut ($RES_BND_228) (139) [SCAL] (1) P2.tokeninout = $SEV_93 ($RES_SIM_52) (140) [ARRY] (1) T1.activation.arcType = T1.arcType ($RES_BND_229) (141) [SCAL] (1) P2.enableOut.t = $TEV_3 ($RES_SIM_53) (142) [ALGO] (1) ($RES_SIM_9) (142) [----] T1.activation.active := true; (142) [----] for i in 1:1 loop (142) [----] if T1.activation.disPlaceIn[i] then (142) [----] if (T1.activation.arcType[i] == PNlib.Types.ArcType.NormalArc or not T1.activation.normalArc[i]) and not T1.activation.tIntIn[i] - T1.activation.arcWeightIntIn[i] >= T1.activation.minTokensInt[i] then (142) [----] T1.activation.active := false; (142) [----] elseif T1.activation.arcType[i] == PNlib.Types.ArcType.RealTestArc and not T1.activation.tIntIn[i] > T1.activation.testValueInt[i] then (142) [----] T1.activation.active := false; (142) [----] elseif T1.activation.arcType[i] == PNlib.Types.ArcType.TestArc and not T1.activation.tIntIn[i] >= T1.activation.testValueInt[i] then (142) [----] T1.activation.active := false; (142) [----] elseif T1.activation.arcType[i] == PNlib.Types.ArcType.RealInhibitorArc and not T1.activation.tIntIn[i] < T1.activation.testValueInt[i] then (142) [----] T1.activation.active := false; (142) [----] elseif T1.activation.arcType[i] == PNlib.Types.ArcType.InhibitorArc and not T1.activation.tIntIn[i] <= T1.activation.testValueInt[i] then (142) [----] T1.activation.active := false; (142) [----] end if; (142) [----] elseif true then (142) [----] if (T1.activation.arcType[i] == PNlib.Types.ArcType.NormalArc or not T1.activation.normalArc[i]) and not T1.activation.tIn[i] - (T1.activation.minTokens[i] + T1.activation.arcWeightIn[i]) >= (-1e-9) then (142) [----] T1.activation.active := false; (142) [----] elseif T1.activation.arcType[i] == PNlib.Types.ArcType.RealTestArc and not T1.activation.tIn[i] > T1.activation.testValue[i] then (142) [----] T1.activation.active := false; (142) [----] elseif T1.activation.arcType[i] == PNlib.Types.ArcType.TestArc and not T1.activation.tIn[i] >= T1.activation.testValue[i] then (142) [----] T1.activation.active := false; (142) [----] elseif T1.activation.arcType[i] == PNlib.Types.ArcType.RealInhibitorArc and not T1.activation.tIn[i] < T1.activation.testValue[i] then (142) [----] T1.activation.active := false; (142) [----] elseif T1.activation.arcType[i] == PNlib.Types.ArcType.InhibitorArc and not T1.activation.tIn[i] <= T1.activation.testValue[i] then (142) [----] T1.activation.active := false; (142) [----] end if; (142) [----] end if; (142) [----] end for; (142) [----] for i in 1:1 loop (142) [----] if T1.activation.disPlaceOut[i] then (142) [----] if not T1.activation.tIntOut[i] + T1.activation.arcWeightIntOut[i] <= T1.activation.maxTokensInt[i] then (142) [----] T1.activation.active := false; (142) [----] end if; (142) [----] elseif true then (142) [----] if not (T1.activation.arcWeightOut[i] + T1.activation.tOut[i]) - T1.activation.maxTokens[i] <= 1e-9 then (142) [----] T1.activation.active := false; (142) [----] end if; (142) [----] end if; (142) [----] end for; (142) [----] T1.activation.active := T1.activation.active and true; (143) [ALGO] (2) ($RES_SIM_8) (143) [----] T1.tokenChange.anytrue := false; (143) [----] T1.tokenChange.numtrue := 0; (143) [----] for i in 1:1 loop (143) [----] T1.tokenChange.anytrue := T1.tokenChange.anytrue or T1.tokenChange.vec[i]; (143) [----] if T1.tokenChange.vec[i] then (143) [----] T1.tokenChange.numtrue := T1.tokenChange.numtrue + 1; (143) [----] end if; (143) [----] end for; (144) [ALGO] (7) ($RES_SIM_7) (144) [----] when $PRE.T1.fire then (144) [----] (T1.r128, T1.state128) := ($FUN_29, $FUN_30); (144) [----] T1.putDelay := $FUN_31; (144) [----] end when; (144) [----] when T1.active then (144) [----] T1.putFireTime := time + T1.putDelay; (144) [----] end when; (145) [ARRY] (3) P1.color = if settings.animatePlace then if $SEV_97 then {255.0, 255.0 - 2.55 * P1.tokenscale, 255.0 - 2.55 * P1.tokenscale} else {255.0, 0.0, 0.0} else {255.0, 255.0, 255.0} ($RES_SIM_57) (146) [SCAL] (1) P1.tokenscale = P1.t * settings.scale ($RES_SIM_58) (147) [SCAL] (1) P1.levelCon = (settings.M * P1.t) / P1.N ($RES_SIM_59) (148) [ARRY] (1) T1.activation.arcWeightIn = T1.arcWeightIn ($RES_BND_230) (149) [ARRY] (1) T1.activation.arcWeightIntIn = T1.arcWeightIntIn ($RES_BND_231) (150) [ARRY] (1) T1.activation.arcWeightOut = T1.arcWeightOut ($RES_BND_232) (151) [ARRY] (1) T1.activation.arcWeightIntOut = T1.arcWeightIntOut ($RES_BND_233) (152) [ARRY] (1) T1.activation.minTokens = T1.minTokens ($RES_BND_234) (153) [ARRY] (1) T1.activation.minTokensInt = T1.minTokensInt ($RES_BND_235) (154) [ARRY] (1) T1.activation.maxTokens = T1.maxTokens ($RES_BND_236) (155) [WHEN] (1)when {$SEV_98, $SEV_99} then (155) [----] P1.t := ($PRE.P1.firingSumIn.firingSum + P1.enableOut.t) - $PRE.P1.firingSumOut.firingSum (155) [----] else when pre(false) then (155) [----] P1.t := P1.reStartTokens (155) [----] end when; (156) [SCAL] (1) P1.outTransition[1].arcWeight = T1.inPlaces[1].arcWeight ($RES_SIM_100) (157) [SCAL] (1) P2.inTransition[1].disPlace = true ($RES_BND_151) (158) [ARRY] (1) T1.activation.maxTokensInt = T1.maxTokensInt ($RES_BND_237) (159) [SCAL] (1) P1.tokeninout = $SEV_100 ($RES_SIM_61) (160) [SCAL] (1) P1.outTransition[1].arcType = T1.inPlaces[1].arcType ($RES_SIM_101) (161) [SCAL] (1) P1.enableOut.t = $TEV_4 ($RES_SIM_62) (162) [SCAL] (1) P1.outTransition[1].active = T1.inPlaces[1].active ($RES_SIM_102) (163) [ARRY] (1) P2.inTransition.enable = {P2.enableIn.TEin_[1]} ($RES_BND_153) (164) [ARRY] (1) T1.activation.disPlaceIn = T1.disPlaceIn ($RES_BND_239) (165) [SCAL] (1) T1.outPlaces[1].tint = P2.inTransition[1].tint ($RES_SIM_63) (166) [ARRY] (1) P2.inTransition.maxTokensint = {P2.maxTokens} ($RES_BND_154) (167) [SCAL] (1) T1.outPlaces[1].t = P2.inTransition[1].t ($RES_SIM_64) (168) [ARRY] (1) P2.inTransition.maxTokens = {P2.maxTokens} ($RES_BND_155) (169) [ARRY] (1) P2.inTransition.tint = {P2.enableOut.t} ($RES_BND_156) (170) [ARRY] (1) P2.inTransition.t = {P2.enableOut.t} ($RES_BND_157) (171) [SCAL] (1) T1.outPlaces[1].maxTokensint = P2.inTransition[1].maxTokensint ($RES_SIM_67) (172) [ARRY] (1) P2.inTransition.disTransition = {P2.disTransitionIn[1]} ($RES_BND_158) (173) [SCAL] (1) T1.outPlaces[1].maxTokens = P2.inTransition[1].maxTokens ($RES_SIM_68) (174) [ARRY] (1) P2.inTransition.enabledByInPlaces = {P2.enabledByInPlaces[1]} ($RES_BND_159) (175) [SCAL] (1) $TEV_0 = $PRE.T1.fire ($RES_EVT_275) (176) [ARRY] (1) T1.activation.disPlaceOut = T1.disPlaceOut ($RES_BND_240) (177) [ARRY] (1) T1.activation.normalArc = T1.normalArc ($RES_BND_241) (178) [ARRY] (1) T1.activation.testValue = T1.testValue ($RES_BND_242) (179) [SCAL] (1) $TEV_3 = $PRE.P2.t ($RES_EVT_278) (180) [ARRY] (1) T1.activation.testValueInt = T1.testValueInt ($RES_BND_243) (181) [SCAL] (1) $TEV_4 = $PRE.P1.t ($RES_EVT_279) (182) [ARRY] (1) P2.inTransition.arcWeightint = {P2.arcWeightIn[1]} ($RES_BND_160) (183) [ARRY] (1) T1.tokenChange.vec = T1.tokenInOut ($RES_BND_246) (184) [ARRY] (1) P2.inTransition.fire = {P2.fireIn[1]} ($RES_BND_161) (185) [SCAL] (1) T1.outPlaces[1].fire = P2.inTransition[1].fire ($RES_SIM_71) (186) [ARRY] (1) P2.inTransition.active = {P2.activeIn[1]} ($RES_BND_162) (187) [SCAL] (1) T1.outPlaces[1].enabledByInPlaces = P2.inTransition[1].enabledByInPlaces ($RES_SIM_72) (188) [SCAL] (1) T1.outPlaces[1].enable = P2.inTransition[1].enable ($RES_SIM_73) (189) [ARRY] (1) P2.delayPassedIn.vec = $SEV_103 ($RES_BND_164) (190) [ARRY] (1) P2.firingSumIn.fire = $SEV_102 ($RES_BND_165) (191) [SCAL] (1) T1.outPlaces[1].disTransition = P2.inTransition[1].disTransition ($RES_SIM_75) (192) [ARRY] (1) P2.firingSumIn.arcWeight = P2.arcWeightIn ($RES_BND_166) (193) [SCAL] (1) T1.outPlaces[1].disPlace = P2.inTransition[1].disPlace ($RES_SIM_76) (194) [SCAL] (1) T1.outPlaces[1].arcWeightint = P2.inTransition[1].arcWeightint ($RES_SIM_78) (195) [SCAL] (1) T1.outPlaces[1].arcWeight = P2.inTransition[1].arcWeight ($RES_SIM_79) (196) [SCAL] (1) $TEV_5 = $PRE.P1.tokeninout ($RES_EVT_280) (197) [SCAL] (1) $TEV_6 = $PRE.P1.enableOut.state128 ($RES_EVT_281) (198) [SCAL] (1) $TEV_7 = $PRE.P2.enableIn.state128 ($RES_EVT_282) (199) [SCAL] (1) $TEV_8 = $PRE.T1.state128 ($RES_EVT_283) (200) [SCAL] (1) $SEV_80[1] = T1.disPlaceOut[1] and T1.arcWeightOut[1] - T1.arcWeightIntOut[1] <= 0.0 or not T1.disPlaceOut[1] ($RES_EVT_285) (201) [SCAL] (1) $SEV_81[1] = T1.arcWeightOut[1] >= 0.0 ($RES_EVT_286) (202) [SCAL] (1) $SEV_82[1] = T1.disPlaceIn[1] and T1.arcWeightIn[1] - T1.arcWeightIntIn[1] <= 0.0 or not T1.disPlaceIn[1] ($RES_EVT_287) (203) [SCAL] (1) $SEV_83[1] = T1.arcWeightIn[1] >= 0.0 ($RES_EVT_288) (204) [SCAL] (1) $SEV_84 = (T1.fireTime + settings.timeFire >= time and settings.animateTransition) and T1.ani ($RES_EVT_289)