Running: ./testmodel.py --libraries=/var/lib/jenkins/ws/OpenModelicaLibraryTestingWork/OpenModelica/./OMCompiler/build/lib/omlibrary/ --ompython_omhome=/usr Buildings_6.0.0_Buildings.Controls.Predictors.Validation.ConstantInputDayOfAdjustment.conf.json Using package Buildings with version 6.0.0 (/var/lib/jenkins/ws/OpenModelicaLibraryTestingWork/OpenModelica/OMCompiler/build/lib/omlibrary/Buildings 6.0.0/package.mo) Using package Modelica with version 3.2.2 (/var/lib/jenkins/ws/OpenModelicaLibraryTestingWork/OpenModelica/OMCompiler/build/lib/omlibrary/Modelica 3.2.2/package.mo) Using package Complex with version 3.2.2 (/var/lib/jenkins/ws/OpenModelicaLibraryTestingWork/OpenModelica/OMCompiler/build/lib/omlibrary/Complex 3.2.2.mo) Using package ModelicaServices with version 3.2.2 (/var/lib/jenkins/ws/OpenModelicaLibraryTestingWork/OpenModelica/OMCompiler/build/lib/omlibrary/ModelicaServices 3.2.2/package.mo) Running command: "" <> buildModelFMU(Buildings.Controls.Predictors.Validation.ConstantInputDayOfAdjustment,fileNamePrefix="Buildings_6_0_0_Buildings_Controls_Predictors_Validation_ConstantInputDayOfAdjustment",fmuType="me",version="2.0",platforms={"static"}) Notification: Performance of loadFile(/var/lib/jenkins/ws/OpenModelicaLibraryTestingWork/OpenModelica/OMCompiler/build/lib/omlibrary/ModelicaServices 3.2.2/package.mo): time 0.01086/0.01086, allocations: 107.9 kB / 15.05 MB, free: 5.934 MB / 13.93 MB Notification: Performance of loadFile(/var/lib/jenkins/ws/OpenModelicaLibraryTestingWork/OpenModelica/OMCompiler/build/lib/omlibrary/Complex 3.2.2.mo): time 0.001124/0.001124, allocations: 185.8 kB / 15.95 MB, free: 5.898 MB / 13.93 MB Notification: Performance of loadFile(/var/lib/jenkins/ws/OpenModelicaLibraryTestingWork/OpenModelica/OMCompiler/build/lib/omlibrary/Modelica 3.2.2/package.mo): time 1.954/1.954, allocations: 194.6 MB / 211.3 MB, free: 11.06 MB / 170.7 MB Notification: Performance of loadFile(/var/lib/jenkins/ws/OpenModelicaLibraryTestingWork/OpenModelica/OMCompiler/build/lib/omlibrary/Buildings 6.0.0/package.mo): time 2.288/2.288, allocations: 236.1 MB / 492.6 MB, free: 11.36 MB / 394.7 MB Notification: Performance of FrontEnd - loaded program: time 0.0004748/0.000475, allocations: 12 kB / 0.587 GB, free: 2.082 MB / 490.7 MB Notification: Performance of FrontEnd - Absyn->SCode: time 0.7173/0.7178, allocations: 98.72 MB / 0.6834 GB, free: 16.73 MB / 0.5261 GB Notification: Performance of FrontEnd - scodeFlatten: time 0.2392/0.9571, allocations: 130.7 MB / 0.8111 GB, free: 11.44 MB / 0.6355 GB Notification: Performance of FrontEnd - mkProgramGraph: time 0.0003154/0.9574, allocations: 79.95 kB / 0.8111 GB, free: 11.36 MB / 0.6355 GB Notification: Performance of FrontEnd - DAE generated: time 0.1334/1.091, allocations: 36.24 MB / 0.8465 GB, free: 7 MB / 0.6667 GB Notification: Performance of FrontEnd: time 3.567e-06/1.091, allocations: 4 kB / 0.8465 GB, free: 6.996 MB / 0.6667 GB Notification: Performance of Transformations before backend: time 0.0001091/1.091, allocations: 64.19 kB / 0.8466 GB, free: 6.934 MB / 0.6667 GB Notification: Model statistics after passing the front-end and creating the data structures used by the back-end: * Number of equations: 1083 * Number of variables: 1083 Notification: Performance of Generate backend data structure: time 0.0081/1.099, allocations: 3.565 MB / 0.8501 GB, free: 3.297 MB / 0.6667 GB Notification: Performance of prepare preOptimizeDAE: time 5.588e-05/1.099, allocations: 12.03 kB / 0.8501 GB, free: 3.285 MB / 0.6667 GB Notification: Performance of preOpt introduceOutputAliases (simulation): time 0.001101/1.1, allocations: 489.8 kB / 0.8506 GB, free: 2.797 MB / 0.6667 GB Notification: Performance of preOpt normalInlineFunction (simulation): time 0.0009123/1.101, allocations: 355.7 kB / 0.8509 GB, free: 2.445 MB / 0.6667 GB Notification: Performance of preOpt evaluateParameters (simulation): time 0.003733/1.105, allocations: 1.146 MB / 0.852 GB, free: 1.254 MB / 0.6667 GB Notification: Performance of preOpt simplifyIfEquations (simulation): time 0.0003073/1.105, allocations: 240 kB / 0.8522 GB, free: 1.02 MB / 0.6667 GB Notification: Performance of preOpt expandDerOperator (simulation): time 0.0009086/1.106, allocations: 372 kB / 0.8526 GB, free: 0.6562 MB / 0.6667 GB Error: An independent subset of the model has imbalanced number of equations (1071) and variables (63). variables: integrator.y integrator.u PCon.y notEventDay.y notEventDay.u dayType.skipIDayIncrement dayType.sampleTrigger dayType.iDay dayType.y[2] dayType.y[1] tri.pulsStart tri.y baseLoad.idxSam baseLoad.intTOutLast baseLoad.intTOut baseLoad.EHisAve baseLoad.EActAve baseLoad._storeHistory baseLoad._typeOfDay[12] baseLoad._typeOfDay[11] baseLoad._typeOfDay[10] baseLoad._typeOfDay[9] baseLoad._typeOfDay[8] baseLoad._typeOfDay[7] baseLoad._typeOfDay[6] baseLoad._typeOfDay[5] baseLoad._typeOfDay[4] baseLoad._typeOfDay[3] baseLoad._typeOfDay[2] baseLoad._typeOfDay[1] baseLoad.iSam[12] baseLoad.iSam[11] baseLoad.iSam[10] baseLoad.iSam[9] baseLoad.iSam[8] baseLoad.iSam[7] baseLoad.iSam[6] baseLoad.iSam[5] baseLoad.iSam[4] baseLoad.iSam[3] baseLoad.iSam[2] baseLoad.iSam[1] baseLoad.tLast baseLoad.ELast baseLoad.sampleTrigger baseLoad.PAve baseLoad.adj baseLoad.storeHistory baseLoad.typeOfDay[2] baseLoad.typeOfDay[1] baseLoad.PPre[12] baseLoad.PPre[11] baseLoad.PPre[10] baseLoad.PPre[9] baseLoad.PPre[8] baseLoad.PPre[7] baseLoad.PPre[6] baseLoad.PPre[5] baseLoad.PPre[4] baseLoad.PPre[3] baseLoad.PPre[2] baseLoad.PPre[1] baseLoad.ECon equations: 1 : baseLoad.sampleTrigger = sample(1, baseLoad.samStart, 3600.0) 2 : baseLoad.intTOut = 0.0 3 : algorithm when baseLoad.sampleTrigger then baseLoad._storeHistory := if not pre(baseLoad._storeHistory) and not Buildings.Controls.Predictors.ElectricalLoad$baseLoad.isMidNight(time) then false else baseLoad.storeHistory; baseLoad._typeOfDay := Buildings.Controls.Predictors.ElectricalLoad$baseLoad.getTypeOfDays(time, {baseLoad.typeOfDay[1], baseLoad.typeOfDay[2]}, 3600.0, 12); baseLoad.idxSam := Buildings.Controls.Predictors.ElectricalLoad$baseLoad.getIndex(-1 + baseLoad.iSam[1], 24); if baseLoad._storeHistory or pre(baseLoad._storeHistory) then if time - baseLoad.tLast > 1e-05 then baseLoad.iHis[pre(baseLoad._typeOfDay[1]),baseLoad.idxSam] := Buildings.Controls.Predictors.ElectricalLoad$baseLoad.incrementIndex(baseLoad.iHis[pre(baseLoad._typeOfDay[1]),baseLoad.idxSam], 10); if baseLoad.iHis[pre(baseLoad._typeOfDay[1]),baseLoad.idxSam] == 10 then baseLoad.historyComplete[pre(baseLoad._typeOfDay[1]),baseLoad.idxSam] := true; end if; baseLoad.PAve := (baseLoad.ECon - baseLoad.ELast) / (time - baseLoad.tLast); baseLoad.P[pre(baseLoad._typeOfDay[1]),baseLoad.idxSam,baseLoad.iHis[pre(baseLoad._typeOfDay[1]),baseLoad.idxSam]] := baseLoad.PAve; end if; end if; baseLoad.ELast := baseLoad.ECon; baseLoad.intTOutLast := baseLoad.intTOut; baseLoad.tLast := time; for m in 1:12 loop baseLoad.PPre[m] := Buildings.Controls.Predictors.BaseClasses.average({baseLoad.P[baseLoad._typeOfDay[m],baseLoad.iSam[m],1], baseLoad.P[baseLoad._typeOfDay[m],baseLoad.iSam[m],2], baseLoad.P[baseLoad._typeOfDay[m],baseLoad.iSam[m],3], baseLoad.P[baseLoad._typeOfDay[m],baseLoad.iSam[m],4], baseLoad.P[baseLoad._typeOfDay[m],baseLoad.iSam[m],5], baseLoad.P[baseLoad._typeOfDay[m],baseLoad.iSam[m],6], baseLoad.P[baseLoad._typeOfDay[m],baseLoad.iSam[m],7], baseLoad.P[baseLoad._typeOfDay[m],baseLoad.iSam[m],8], baseLoad.P[baseLoad._typeOfDay[m],baseLoad.iSam[m],9], baseLoad.P[baseLoad._typeOfDay[m],baseLoad.iSam[m],10]}, if baseLoad.historyComplete[baseLoad._typeOfDay[m],baseLoad.iSam[m]] then 10 else baseLoad.iHis[baseLoad._typeOfDay[m],baseLoad.iSam[m]]); end for; if baseLoad._storeHistory or pre(baseLoad._storeHistory) then baseLoad.PPreHis[baseLoad._typeOfDay[1],Buildings.Controls.Predictors.ElectricalLoad$baseLoad.getIndex(1 + baseLoad.idxSam, 24)] := baseLoad.PPre[1]; baseLoad.PPreHisSet[baseLoad._typeOfDay[1],Buildings.Controls.Predictors.ElectricalLoad$baseLoad.getIndex(1 + baseLoad.idxSam, 24)] := baseLoad.iHis[baseLoad._typeOfDay[1],baseLoad.iSam[1]] > 0; end if; baseLoad.EHisAve := 0.0; baseLoad.EActAve := 0.0; for i in -4:-2 loop if Modelica.Math.BooleanVectors.allTrue({baseLoad.PPreHisSet[baseLoad._typeOfDay[1],Buildings.Controls.Predictors.ElectricalLoad$baseLoad.getIndex(baseLoad.iSam[1] + -4, 24)], baseLoad.PPreHisSet[baseLoad._typeOfDay[1],Buildings.Controls.Predictors.ElectricalLoad$baseLoad.getIndex(baseLoad.iSam[1] + -3, 24)], baseLoad.PPreHisSet[baseLoad._typeOfDay[1],Buildings.Controls.Predictors.ElectricalLoad$baseLoad.getIndex(baseLoad.iSam[1] + -2, 24)]}) then baseLoad.EHisAve := baseLoad.EHisAve + 3600.0 * baseLoad.PPreHis[baseLoad._typeOfDay[1],Buildings.Controls.Predictors.ElectricalLoad$baseLoad.getIndex(1 + baseLoad.idxSam + i, 24)]; baseLoad.EActAve := baseLoad.EActAve + 3600.0 * baseLoad.P[baseLoad._typeOfDay[1],Buildings.Controls.Predictors.ElectricalLoad$baseLoad.getIndex(1 + baseLoad.idxSam + i, 24),baseLoad.iHis[baseLoad._typeOfDay[1],Buildings.Controls.Predictors.ElectricalLoad$baseLoad.getIndex(1 + baseLoad.idxSam + i, 24)]]; else baseLoad.EHisAve := 0.0; baseLoad.EActAve := 0.0; end if; end for; if baseLoad.EHisAve > 1e-15 or baseLoad.EHisAve < -1e-15 then baseLoad.adj := min(baseLoad.maxAdjFac, max(baseLoad.minAdjFac, baseLoad.EActAve / baseLoad.EHisAve)); else baseLoad.adj := 1.0; end if; baseLoad.PPre[:] := {baseLoad.PPre[1] * baseLoad.adj, baseLoad.PPre[2] * baseLoad.adj, baseLoad.PPre[3] * baseLoad.adj, baseLoad.PPre[4] * baseLoad.adj, baseLoad.PPre[5] * baseLoad.adj, baseLoad.PPre[6] * baseLoad.adj, baseLoad.PPre[7] * baseLoad.adj, baseLoad.PPre[8] * baseLoad.adj, baseLoad.PPre[9] * baseLoad.adj, baseLoad.PPre[10] * baseLoad.adj, baseLoad.PPre[11] * baseLoad.adj, baseLoad.PPre[12] * baseLoad.adj}; for i in 1:12 loop baseLoad.iSam[i] := Buildings.Controls.Predictors.ElectricalLoad$baseLoad.incrementIndex(baseLoad.iSam[i], 24); end for; end when; 4 : tri.y = time >= tri.pulsStart and time < tri.pulsStart + tri.Twidth 5 : dayType.y[1] = dayType.days[1 + mod(-1 + dayType.iDay, 7)] 6 : dayType.y[2] = dayType.days[1 + mod(dayType.iDay, 7)] 7 : dayType.sampleTrigger = sample(3, dayType.firstSample, dayType.samplePeriod) 8 : notEventDay.y = not notEventDay.u 9 : PCon.y = PCon.k 10 : der(integrator.y) = integrator.k * integrator.u 11 : PCon.y = integrator.u 12 : baseLoad.ECon = integrator.y 13 : notEventDay.u = tri.y 14 : baseLoad.storeHistory = notEventDay.y 15 : baseLoad.typeOfDay[1] = dayType.y[1] 16 : baseLoad.typeOfDay[2] = dayType.y[2] 17 : when dayType.sampleTrigger then dayType.skipIDayIncrement := false; end when; 18 : when dayType.sampleTrigger then dayType.iDay := if pre(dayType.skipIDayIncrement) then pre(dayType.iDay) else 1 + mod(pre(dayType.iDay), 7); end when; 19 : when sample(2, tri.startTime, tri.period) then tri.pulsStart := time; end when; Notification: Performance of preOpt clockPartitioning (simulation) : time 0.003809/1.11, allocations: 1.705 MB / 0.8543 GB, free: 14.89 MB / 0.6823 GB Error: pre-optimization module clockPartitioning (simulation) failed.