Running: ./testmodel.py --libraries=/home/hudson/saved_omc/libraries/.openmodelica/libraries/ --ompython_omhome=/usr Buildings_8_Buildings.Controls.OBC.CDL.Logical.Validation.IntegerSwitch.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 3.2.3+maint.om/package.mo", uses=false) loadFile("/home/hudson/saved_omc/libraries/.openmodelica/libraries/Buildings 8.1.4-maint.8.1.x/package.mo", uses=false) Using package Buildings with version 8.1.4 (/home/hudson/saved_omc/libraries/.openmodelica/libraries/Buildings 8.1.4-maint.8.1.x/package.mo) Using package Modelica with version 3.2.3 (/home/hudson/saved_omc/libraries/.openmodelica/libraries/Modelica 3.2.3+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(Buildings.Controls.OBC.CDL.Logical.Validation.IntegerSwitch,tolerance=1e-06,outputFormat="empty",numberOfIntervals=5000,variableFilter="",fileNamePrefix="Buildings_8_Buildings.Controls.OBC.CDL.Logical.Validation.IntegerSwitch") translateModel(Buildings.Controls.OBC.CDL.Logical.Validation.IntegerSwitch,tolerance=1e-06,outputFormat="empty",numberOfIntervals=5000,variableFilter="",fileNamePrefix="Buildings_8_Buildings.Controls.OBC.CDL.Logical.Validation.IntegerSwitch") Notification: Performance of loadFile(/home/hudson/saved_omc/libraries/.openmodelica/libraries/ModelicaServices 4.0.0+maint.om/package.mo): time 0.001063/0.001063, allocations: 105.3 kB / 16.37 MB, free: 6.352 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.001097/0.001098, allocations: 190.1 kB / 17.3 MB, free: 5.906 MB / 14.72 MB Notification: Performance of loadFile(/home/hudson/saved_omc/libraries/.openmodelica/libraries/Modelica 3.2.3+maint.om/package.mo): time 1.567/1.567, allocations: 205.1 MB / 223.2 MB, free: 12.26 MB / 190.1 MB Notification: Performance of loadFile(/home/hudson/saved_omc/libraries/.openmodelica/libraries/Buildings 8.1.4-maint.8.1.x/package.mo): time 1.861/1.861, allocations: 292.3 MB / 0.5496 GB, free: 17.48 MB / 462.1 MB Notification: Performance of FrontEnd - Absyn->SCode: time 2.771e-05/2.813e-05, allocations: 10.02 kB / 0.6729 GB, free: 5.93 MB / 0.545 GB Notification: Performance of NFInst.instantiate(Buildings.Controls.OBC.CDL.Logical.Validation.IntegerSwitch): time 0.002038/0.002083, allocations: 0.849 MB / 0.6737 GB, free: 5.078 MB / 0.545 GB Notification: Performance of NFInst.instExpressions: time 0.00157/0.003665, allocations: 1.289 MB / 0.675 GB, free: 3.773 MB / 0.545 GB Notification: Performance of NFInst.updateImplicitVariability: time 5.855e-05/0.003734, allocations: 0 / 0.675 GB, free: 3.773 MB / 0.545 GB Notification: Performance of NFTyping.typeComponents: time 3.91e-05/0.003781, allocations: 7.875 kB / 0.675 GB, free: 3.766 MB / 0.545 GB Notification: Performance of NFTyping.typeBindings: time 8.322e-05/0.003869, allocations: 27.78 kB / 0.675 GB, free: 3.738 MB / 0.545 GB Notification: Performance of NFTyping.typeClassSections: time 0.0007995/0.004682, allocations: 317.5 kB / 0.6753 GB, free: 3.434 MB / 0.545 GB Notification: Performance of NFFlatten.flatten: time 0.0003192/0.00501, allocations: 323.5 kB / 0.6756 GB, free: 3.117 MB / 0.545 GB Notification: Performance of NFFlatten.resolveConnections: time 0.0001392/0.005165, allocations: 37.42 kB / 0.6756 GB, free: 3.074 MB / 0.545 GB Notification: Performance of NFEvalConstants.evaluate: time 0.0001429/0.005314, allocations: 119.7 kB / 0.6757 GB, free: 2.957 MB / 0.545 GB Notification: Performance of NFSimplifyModel.simplify: time 0.0001457/0.005467, allocations: 123.5 kB / 0.6759 GB, free: 2.836 MB / 0.545 GB Notification: Performance of NFPackage.collectConstants: time 4.225e-05/0.005515, allocations: 24 kB / 0.6759 GB, free: 2.812 MB / 0.545 GB Notification: Performance of NFFlatten.collectFunctions: time 9.894e-05/0.00562, allocations: 39.98 kB / 0.6759 GB, free: 2.773 MB / 0.545 GB Notification: Performance of combineBinaries: time 0.0001989/0.005827, allocations: 257.7 kB / 0.6762 GB, free: 2.52 MB / 0.545 GB Notification: Performance of replaceArrayConstructors: time 5.425e-05/0.005887, allocations: 118.2 kB / 0.6763 GB, free: 2.402 MB / 0.545 GB Notification: Performance of NFVerifyModel.verify: time 5.601e-05/0.005948, allocations: 27.94 kB / 0.6763 GB, free: 2.375 MB / 0.545 GB Notification: Performance of FrontEnd: time 1.789e-05/0.005971, allocations: 0 / 0.6763 GB, free: 2.375 MB / 0.545 GB Notification: Model statistics after passing the front-end and creating the data structures used by the back-end: * Number of equations: 19 (19) * Number of variables: 19 (19) Notification: Performance of Bindings: time 0.0009235/0.006899, allocations: 0.8543 MB / 0.6771 GB, free: 1.422 MB / 0.545 GB Notification: Performance of FunctionAlias: time 0.0001452/0.007051, allocations: 115.8 kB / 0.6773 GB, free: 1.309 MB / 0.545 GB Notification: Performance of Early Inline: time 0.001047/0.008104, allocations: 0.7771 MB / 0.678 GB, free: 0.5039 MB / 0.545 GB Notification: Performance of simplify1: time 2.598e-05/0.008141, allocations: 19.97 kB / 0.678 GB, free: 496 kB / 0.545 GB Notification: Performance of Alias: time 0.0008218/0.008969, allocations: 0.5785 MB / 0.6786 GB, free: 15.8 MB / 0.5606 GB Notification: Performance of simplify2: time 1.394e-05/0.008994, allocations: 11.98 kB / 0.6786 GB, free: 15.79 MB / 0.5606 GB Notification: Performance of Events: time 0.0006042/0.009603, allocations: 448.7 kB / 0.679 GB, free: 15.35 MB / 0.5606 GB Notification: Performance of Detect States: time 0.0005053/0.01012, allocations: 406.2 kB / 0.6794 GB, free: 14.94 MB / 0.5606 GB Notification: Performance of Partitioning: time 9.948e-05/0.01024, allocations: 71.8 kB / 0.6795 GB, free: 14.86 MB / 0.5606 GB Notification: Performance of Causalize: time 0.000419/0.01066, allocations: 375.9 kB / 0.6799 GB, free: 14.49 MB / 0.5606 GB Notification: Performance of After Index Reduction Inline: time 0.0005676/0.01124, allocations: 0.5781 MB / 0.6804 GB, free: 13.88 MB / 0.5606 GB Notification: Performance of Inline: time 0.000918/0.01216, allocations: 0.8747 MB / 0.6813 GB, free: 12.97 MB / 0.5606 GB Notification: Performance of Partitioning: time 3.648e-05/0.01221, allocations: 36.05 kB / 0.6813 GB, free: 12.93 MB / 0.5606 GB Notification: Performance of Cleanup: time 1.973e-05/0.01223, allocations: 15.97 kB / 0.6813 GB, free: 12.91 MB / 0.5606 GB Warning: NBResolveSingularities.balanceInitialization reports an overdetermined initialization! Checking for consistency is not yet supported, following equations had to be removed: [ALGO] (3) ($RES_SIM_0) [----] booPul3.t0 := if $FUN_3 + booPul3.period * integer(time / booPul3.period) > 0.0 then 1e-6 * floor(0.5 + 1e6 * ($FUN_3 + booPul3.period * integer(time / booPul3.period))) else 1e-6 * ceil((-0.5) + 1e6 * ($FUN_3 + booPul3.period * integer(time / booPul3.period))); [----] booPul3.t1 := booPul3.t0 + booPul3.width * booPul3.period; [----] if time + booPul3.period < booPul3.t1 then [----] booPul3.t0 := booPul3.t0 - booPul3.period; [----] booPul3.t1 := booPul3.t1 - booPul3.period; [----] end if; [----] if time >= booPul3.t1 then [----] booPul3.t0 := booPul3.t0 + booPul3.period; [----] elseif time < booPul3.t0 then [----] booPul3.t1 := booPul3.t1 - booPul3.period; [----] end if; [----] if booPul3.t0 < booPul3.t1 then [----] assert(booPul3.t0 <= time and time < booPul3.t1, "IntegerSwitch.booPul3: Implementation error in initial time calculation: t0 = " + String(booPul3.t0, 6, 0, true) + ", t1 = " + String(booPul3.t1, 6, 0, true) + ", period = " + String(booPul3.period, 6, 0, true) + ", time = " + String(time, 6, 0, true), AssertionLevel.error); [----] booPul3.y := time >= booPul3.t0 and time < booPul3.t1; [----] elseif true then [----] assert(booPul3.t1 <= time and time < booPul3.t0, "IntegerSwitch.booPul3: Implementation error in initial time calculation: t0 = " + String(booPul3.t0, 6, 0, true) + ", t1 = " + String(booPul3.t1, 6, 0, true) + ", period = " + String(booPul3.period, 6, 0, true) + ", time = " + String(time, 6, 0, true), AssertionLevel.error); [----] booPul3.y := not (time >= booPul3.t1 and time < booPul3.t0); [----] end if; slice: {1, 2}; [ALGO] (3) ($RES_SIM_1) [----] booPul2.t0 := if $FUN_2 + booPul2.period * integer(time / booPul2.period) > 0.0 then 1e-6 * floor(0.5 + 1e6 * ($FUN_2 + booPul2.period * integer(time / booPul2.period))) else 1e-6 * ceil((-0.5) + 1e6 * ($FUN_2 + booPul2.period * integer(time / booPul2.period))); [----] booPul2.t1 := booPul2.t0 + booPul2.width * booPul2.period; [----] if time + booPul2.period < booPul2.t1 then [----] booPul2.t0 := booPul2.t0 - booPul2.period; [----] booPul2.t1 := booPul2.t1 - booPul2.period; [----] end if; [----] if time >= booPul2.t1 then [----] booPul2.t0 := booPul2.t0 + booPul2.period; [----] elseif time < booPul2.t0 then [----] booPul2.t1 := booPul2.t1 - booPul2.period; [----] end if; [----] if booPul2.t0 < booPul2.t1 then [----] assert(booPul2.t0 <= time and time < booPul2.t1, "IntegerSwitch.booPul2: Implementation error in initial time calculation: t0 = " + String(booPul2.t0, 6, 0, true) + ", t1 = " + String(booPul2.t1, 6, 0, true) + ", period = " + String(booPul2.period, 6, 0, true) + ", time = " + String(time, 6, 0, true), AssertionLevel.error); [----] booPul2.y := time >= booPul2.t0 and time < booPul2.t1; [----] elseif true then [----] assert(booPul2.t1 <= time and time < booPul2.t0, "IntegerSwitch.booPul2: Implementation error in initial time calculation: t0 = " + String(booPul2.t0, 6, 0, true) + ", t1 = " + String(booPul2.t1, 6, 0, true) + ", period = " + String(booPul2.period, 6, 0, true) + ", time = " + String(time, 6, 0, true), AssertionLevel.error); [----] booPul2.y := not (time >= booPul2.t1 and time < booPul2.t0); [----] end if; slice: {1, 2}; [ALGO] (3) ($RES_SIM_2) [----] booPul1.t0 := if $FUN_1 + booPul1.period * integer(time / booPul1.period) > 0.0 then 1e-6 * floor(0.5 + 1e6 * ($FUN_1 + booPul1.period * integer(time / booPul1.period))) else 1e-6 * ceil((-0.5) + 1e6 * ($FUN_1 + booPul1.period * integer(time / booPul1.period))); [----] booPul1.t1 := booPul1.t0 + booPul1.width * booPul1.period; [----] if time + booPul1.period < booPul1.t1 then [----] booPul1.t0 := booPul1.t0 - booPul1.period; [----] booPul1.t1 := booPul1.t1 - booPul1.period; [----] end if; [----] if time >= booPul1.t1 then [----] booPul1.t0 := booPul1.t0 + booPul1.period; [----] elseif time < booPul1.t0 then [----] booPul1.t1 := booPul1.t1 - booPul1.period; [----] end if; [----] if booPul1.t0 < booPul1.t1 then [----] assert(booPul1.t0 <= time and time < booPul1.t1, "IntegerSwitch.booPul1: Implementation error in initial time calculation: t0 = " + String(booPul1.t0, 6, 0, true) + ", t1 = " + String(booPul1.t1, 6, 0, true) + ", period = " + String(booPul1.period, 6, 0, true) + ", time = " + String(time, 6, 0, true), AssertionLevel.error); [----] booPul1.y := time >= booPul1.t0 and time < booPul1.t1; [----] elseif true then [----] assert(booPul1.t1 <= time and time < booPul1.t0, "IntegerSwitch.booPul1: Implementation error in initial time calculation: t0 = " + String(booPul1.t0, 6, 0, true) + ", t1 = " + String(booPul1.t1, 6, 0, true) + ", period = " + String(booPul1.period, 6, 0, true) + ", time = " + String(time, 6, 0, true), AssertionLevel.error); [----] booPul1.y := not (time >= booPul1.t1 and time < booPul1.t0); [----] end if; slice: {1, 2}; Notification: Performance of Causalize: time 0.002255/0.01449, allocations: 2.175 MB / 0.6834 GB, free: 10.72 MB / 0.5606 GB Notification: Performance of Tearing: time 1.094e-05/0.01452, allocations: 0 / 0.6834 GB, free: 10.72 MB / 0.5606 GB Notification: Performance of Initialization: time 5.31e-07/0.01452, allocations: 3.938 kB / 0.6834 GB, free: 10.72 MB / 0.5606 GB Notification: Performance of Tearing: time 1.783e-06/0.01453, allocations: 4 kB / 0.6835 GB, free: 10.71 MB / 0.5606 GB Notification: Performance of Categorize: time 7.454e-06/0.01454, allocations: 0 / 0.6835 GB, free: 10.71 MB / 0.5606 GB Error: Internal error NBSolve.solveStrongComponent failed with status = Solve.UNSOLVABLE while trying to solve following strong component: BLOCK: Single Strong Component (status = Solve.UNPROCESSED) ------------------------------------------------------------- ### Variable: Boolean booPul2.y ### Equation: [SCAL] (1) integerSwitch.y = if booPul2.y then proInt.y else proInt1.y ($RES_SIM_12)