Running: ./testmodel.py --libraries=/home/hudson/saved_omc/libraries/.openmodelica/libraries/ --ompython_omhome=/usr Buildings_8_Buildings.Controls.Predictors.Validation.SineInputDayOfAdjustment.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: "" <> buildModelFMU(Buildings.Controls.Predictors.Validation.SineInputDayOfAdjustment,fileNamePrefix="Buildings_8_Buildings_Controls_Predictors_Validation_SineInputDayOfAdjustment",fmuType="me",version="2.0",platforms={"static"}) "" <> buildModelFMU(Buildings.Controls.Predictors.Validation.SineInputDayOfAdjustment,fileNamePrefix="Buildings_8_Buildings_Controls_Predictors_Validation_SineInputDayOfAdjustment",fmuType="me",version="2.0",platforms={"static"}) Notification: Performance of loadFile(/home/hudson/saved_omc/libraries/.openmodelica/libraries/ModelicaServices 4.0.0+maint.om/package.mo): time 0.0008352/0.0008352, allocations: 92 kB / 15.06 MB, free: 1.098 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.0009585/0.0009585, allocations: 172.7 kB / 15.95 MB, free: 208 kB / 14.72 MB Notification: Performance of loadFile(/home/hudson/saved_omc/libraries/.openmodelica/libraries/Modelica 3.2.3+maint.om/package.mo): time 1.525/1.525, allocations: 205.4 MB / 222.1 MB, free: 5.895 MB / 174.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.788/1.788, allocations: 292.7 MB / 0.5499 GB, free: 14.55 MB / 462.1 MB Notification: Modelica requested package Complex of version 3.2.3. Complex 4.0.0 is used instead which states that it is fully compatible without conversion script needed. Notification: Modelica requested package ModelicaServices of version 3.2.3. ModelicaServices 4.0.0 is used instead which states that it is fully compatible without conversion script needed. Notification: Performance of FrontEnd - loaded program: time 0.0005001/0.0005002, allocations: 12.09 kB / 0.6738 GB, free: 26.44 MB / 0.5294 GB Notification: Performance of FrontEnd - Absyn->SCode: time 0.247/0.2476, allocations: 116.3 MB / 0.7874 GB, free: 11.86 MB / 0.6075 GB Notification: Performance of NFInst.instantiate(Buildings.Controls.Predictors.Validation.SineInputDayOfAdjustment): time 0.003212/0.2508, allocations: 1.857 MB / 0.7892 GB, free: 9.992 MB / 0.6075 GB Notification: Performance of NFInst.instExpressions: time 0.002813/0.2537, allocations: 1.24 MB / 0.7904 GB, free: 8.742 MB / 0.6075 GB Notification: Performance of NFInst.updateImplicitVariability: time 0.0002767/0.254, allocations: 7.938 kB / 0.7904 GB, free: 8.734 MB / 0.6075 GB Notification: Performance of NFTyping.typeComponents: time 0.0003572/0.2544, allocations: 35.72 kB / 0.7905 GB, free: 8.699 MB / 0.6075 GB Notification: Performance of NFTyping.typeBindings: time 0.0002899/0.2547, allocations: 63.64 kB / 0.7905 GB, free: 8.637 MB / 0.6075 GB Notification: Performance of NFTyping.typeClassSections: time 0.001217/0.2559, allocations: 371.3 kB / 0.7909 GB, free: 8.273 MB / 0.6075 GB Notification: Performance of NFFlatten.flatten: time 0.0009851/0.2569, allocations: 0.5886 MB / 0.7914 GB, free: 7.684 MB / 0.6075 GB Notification: Performance of NFFlatten.resolveConnections: time 0.0002326/0.2572, allocations: 61.09 kB / 0.7915 GB, free: 7.621 MB / 0.6075 GB Notification: Performance of NFEvalConstants.evaluate: time 0.0006935/0.2579, allocations: 295.5 kB / 0.7918 GB, free: 7.332 MB / 0.6075 GB Notification: Performance of NFSimplifyModel.simplify: time 0.0009027/0.2588, allocations: 487.3 kB / 0.7922 GB, free: 6.855 MB / 0.6075 GB Notification: Performance of NFPackage.collectConstants: time 0.000215/0.259, allocations: 16 kB / 0.7923 GB, free: 6.84 MB / 0.6075 GB Notification: Performance of NFFlatten.collectFunctions: time 0.0005206/0.2596, allocations: 91.88 kB / 0.7924 GB, free: 6.75 MB / 0.6075 GB Notification: Performance of NFScalarize.scalarize: time 0.001376/0.261, allocations: 1.399 MB / 0.7937 GB, free: 5.348 MB / 0.6075 GB Notification: Performance of NFVerifyModel.verify: time 0.0009544/0.2619, allocations: 0.6602 MB / 0.7944 GB, free: 4.68 MB / 0.6075 GB Notification: Performance of NFConvertDAE.convert: time 0.002408/0.2643, allocations: 2.577 MB / 0.7969 GB, free: 2.098 MB / 0.6075 GB Notification: Performance of FrontEnd - DAE generated: time 6.001e-06/0.2643, allocations: 0 / 0.7969 GB, free: 2.098 MB / 0.6075 GB Notification: Performance of FrontEnd: time 1.663e-06/0.2644, allocations: 0 / 0.7969 GB, free: 2.098 MB / 0.6075 GB Notification: Performance of Transformations before backend: time 4.689e-05/0.2644, allocations: 0 / 0.7969 GB, free: 2.098 MB / 0.6075 GB Notification: Model statistics after passing the front-end and creating the data structures used by the back-end: * Number of equations: 1093 * Number of variables: 1093 Notification: Performance of Generate backend data structure: time 0.004725/0.2691, allocations: 3.647 MB / 0.8004 GB, free: 14.38 MB / 0.6231 GB Notification: Performance of prepare preOptimizeDAE: time 6.132e-05/0.2692, allocations: 12.03 kB / 0.8005 GB, free: 14.37 MB / 0.6231 GB Notification: Performance of preOpt introduceOutputAliases (simulation): time 0.0004915/0.2697, allocations: 498 kB / 0.8009 GB, free: 13.87 MB / 0.6231 GB Notification: Performance of preOpt normalInlineFunction (simulation): time 0.0004627/0.2702, allocations: 359.6 kB / 0.8013 GB, free: 13.52 MB / 0.6231 GB Notification: Performance of preOpt evaluateParameters (simulation): time 0.001713/0.2719, allocations: 1.091 MB / 0.8023 GB, free: 12.38 MB / 0.6231 GB Notification: Performance of preOpt simplifyIfEquations (simulation): time 0.0001855/0.2721, allocations: 244 kB / 0.8026 GB, free: 12.14 MB / 0.6231 GB Notification: Performance of preOpt expandDerOperator (simulation): time 0.0003937/0.2725, allocations: 372 kB / 0.8029 GB, free: 11.78 MB / 0.6231 GB Error: An independent subset of the model has imbalanced number of equations (1079) and variables (71). variables: PCon.y PCon.u2 PCon.u1 realExpression.y integrator.y integrator.u P.y P.u P.firstTrigger P.sampleTrigger PBas.y notEventDay.y notEventDay.u dayType.skipIDayIncrement dayType.sampleTrigger dayType.iDay dayType.y[2] dayType.y[1] tri.pulseStart 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 : algorithm when baseLoad.sampleTrigger then baseLoad._storeHistory := if not pre(baseLoad._storeHistory) and not Buildings.Controls.Predictors.Validation.SineInputDayOfAdjustment.baseLoad.isMidNight(time) then false else baseLoad.storeHistory; baseLoad._typeOfDay := Buildings.Controls.Predictors.Validation.SineInputDayOfAdjustment.baseLoad.getTypeOfDays(time, baseLoad.typeOfDay, baseLoad.dt, 12); baseLoad.idxSam := Buildings.Controls.Predictors.Validation.SineInputDayOfAdjustment.baseLoad.getIndex(baseLoad.iSam[1] - 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.Validation.SineInputDayOfAdjustment.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/* iter index 0 */ in 1:12 loop baseLoad.PPre[m] := Buildings.Controls.Predictors.BaseClasses.average(array(baseLoad.P[baseLoad._typeOfDay[m],baseLoad.iSam[m],i] for i in 1: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.Validation.SineInputDayOfAdjustment.baseLoad.getIndex(baseLoad.idxSam + 1, 24)] := baseLoad.PPre[1]; baseLoad.PPreHisSet[baseLoad._typeOfDay[1],Buildings.Controls.Predictors.Validation.SineInputDayOfAdjustment.baseLoad.getIndex(baseLoad.idxSam + 1, 24)] := baseLoad.iHis[baseLoad._typeOfDay[1],baseLoad.iSam[1]] > 0; end if; baseLoad.EHisAve := 0.0; baseLoad.EActAve := 0.0; for i/* iter index 0 */ in -4:-2 loop if Modelica.Math.BooleanVectors.allTrue(array(baseLoad.PPreHisSet[baseLoad._typeOfDay[1],Buildings.Controls.Predictors.Validation.SineInputDayOfAdjustment.baseLoad.getIndex(baseLoad.iSam[1] + i, 24)] for i in -4:-2)) then baseLoad.EHisAve := baseLoad.EHisAve + baseLoad.dt * baseLoad.PPreHis[baseLoad._typeOfDay[1],Buildings.Controls.Predictors.Validation.SineInputDayOfAdjustment.baseLoad.getIndex(baseLoad.idxSam + i + 1, 24)]; baseLoad.EActAve := baseLoad.EActAve + baseLoad.dt * baseLoad.P[baseLoad._typeOfDay[1],Buildings.Controls.Predictors.Validation.SineInputDayOfAdjustment.baseLoad.getIndex(baseLoad.idxSam + i + 1, 24),baseLoad.iHis[baseLoad._typeOfDay[1],Buildings.Controls.Predictors.Validation.SineInputDayOfAdjustment.baseLoad.getIndex(baseLoad.idxSam + i + 1, 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/* iter index 0 */ in 1:12 loop baseLoad.iSam[i] := Buildings.Controls.Predictors.Validation.SineInputDayOfAdjustment.baseLoad.incrementIndex(baseLoad.iSam[i], 24); end for; end when; 2 : P.y = integrator.u 3 : integrator.y = baseLoad.ECon 4 : PCon.u2 = PBas.y 5 : realExpression.y = PCon.u1 6 : PCon.y = P.u 7 : tri.y = notEventDay.u 8 : notEventDay.y = baseLoad.storeHistory 9 : dayType.y[1] = baseLoad.typeOfDay[1] 10 : dayType.y[2] = baseLoad.typeOfDay[2] 11 : baseLoad.sampleTrigger = sample(1, baseLoad.samStart, baseLoad.samplePeriod) 12 : baseLoad.intTOut = 0.0 13 : tri.y = time >= tri.pulseStart and time < tri.pulseStart + tri.Twidth 14 : dayType.y[1] = dayType.days[mod(dayType.iDay + 1 - 2, 7) + 1] 15 : dayType.y[2] = dayType.days[mod(dayType.iDay + 2 - 2, 7) + 1] 16 : dayType.sampleTrigger = sample(3, dayType.firstSample, dayType.samplePeriod) 17 : notEventDay.y = not notEventDay.u 18 : PBas.y = PBas.offset + (if time < PBas.startTime then 0.0 else PBas.amplitude * cos(6.283185307179586 * PBas.freqHz * (time - PBas.startTime) + PBas.phase)) 19 : P.sampleTrigger = sample(4, P.startTime, P.samplePeriod) 20 : der(integrator.y) = integrator.k * integrator.u 21 : PCon.y = PCon.k1 * PCon.u1 + PCon.k2 * PCon.u2 22 : realExpression.y = if dayType.y[1] == Buildings.Controls.Types.Day.WorkingDay then 0.0 else 1.0 23 : when P.sampleTrigger then P.firstTrigger := time <= P.startTime + 0.5 * P.samplePeriod; end when; 24 : when {P.sampleTrigger, initial()} then P.y := P.u; end when; 25 : when dayType.sampleTrigger then dayType.skipIDayIncrement := false; end when; 26 : when dayType.sampleTrigger then dayType.iDay := if pre(dayType.skipIDayIncrement) then pre(dayType.iDay) else mod(pre(dayType.iDay), 7) + 1; end when; 27 : when sample(2, tri.startTime, tri.period) then tri.pulseStart := time; end when; Notification: Performance of preOpt clockPartitioning (simulation) : time 0.001913/0.2744, allocations: 1.209 MB / 0.8041 GB, free: 10.51 MB / 0.6231 GB Error: pre-optimization module clockPartitioning (simulation) failed.