Skip to content

Commit 61835a3

Browse files
committed
Fix useFlatArrayNotation for arrays in time events (#10580 for C++)
See e.g. Buildings.Fluid.HydronicConfigurations.PassiveNetworks.Examples.SingleMixing
1 parent 1c1da71 commit 61835a3

File tree

2 files changed

+20
-22
lines changed

2 files changed

+20
-22
lines changed

OMCompiler/Compiler/Template/CodegenCpp.tpl

Lines changed: 19 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -3597,38 +3597,36 @@ case SIMCODE(modelInfo = MODELINFO(__)) then
35973597
return _algLoopSolverFactory;
35983598
}
35993599

3600-
36013600
<%updateFunctionsCode%>
36023601

3603-
<%DefaultImplementationCode(simCode , &extraFuncs , &extraFuncsDecl, extraFuncsNamespace, stateDerVectorName, useFlatArrayNotation)%>
3604-
3605-
<%checkForDiscreteEvents(discreteModelVars,simCode , &extraFuncs , &extraFuncsDecl, extraFuncsNamespace,stateDerVectorName,useFlatArrayNotation)%>
3606-
<%giveZeroFunc1(zeroCrossings,simCode , &extraFuncs , &extraFuncsDecl, extraFuncsNamespace, stateDerVectorName, useFlatArrayNotation)%>
3602+
<%DefaultImplementationCode(simCode, &extraFuncs, &extraFuncsDecl, extraFuncsNamespace, stateDerVectorName, useFlatArrayNotation)%>
36073603

3608-
<%setConditions(simCode , &extraFuncs , &extraFuncsDecl, extraFuncsNamespace)%>
3609-
<%getConditions(simCode , &extraFuncs , &extraFuncsDecl, extraFuncsNamespace)%>
3610-
<%isConsistent(simCode , &extraFuncs , &extraFuncsDecl, extraFuncsNamespace)%>
3604+
<%checkForDiscreteEvents(discreteModelVars, simCode, &extraFuncs, &extraFuncsDecl, extraFuncsNamespace, stateDerVectorName, useFlatArrayNotation)%>
3605+
<%giveZeroFunc1(zeroCrossings, simCode, &extraFuncs, &extraFuncsDecl, extraFuncsNamespace, stateDerVectorName, useFlatArrayNotation)%>
36113606

3612-
<%generateStepCompleted(listAppend(allEquations,initialEquations),simCode , &extraFuncs , &extraFuncsDecl, extraFuncsNamespace, stateDerVectorName, useFlatArrayNotation)%>
3613-
<%generateStepStarted(listAppend(allEquations,initialEquations),simCode , &extraFuncs , &extraFuncsDecl, extraFuncsNamespace,useFlatArrayNotation)%>
3607+
<%setConditions(simCode, &extraFuncs, &extraFuncsDecl, extraFuncsNamespace)%>
3608+
<%getConditions(simCode, &extraFuncs, &extraFuncsDecl, extraFuncsNamespace)%>
3609+
<%isConsistent(simCode, &extraFuncs, &extraFuncsDecl, extraFuncsNamespace)%>
36143610

3615-
<%generateRestoreOldValues(listAppend(allEquations,initialEquations),simCode , &extraFuncs , &extraFuncsDecl, extraFuncsNamespace, stateDerVectorName, useFlatArrayNotation)%>
3616-
<%generateRestoreNewValues(listAppend(allEquations,initialEquations),simCode , &extraFuncs , &extraFuncsDecl, extraFuncsNamespace, stateDerVectorName, useFlatArrayNotation)%>
3611+
<%generateStepCompleted(listAppend(allEquations, initialEquations), simCode, &extraFuncs, &extraFuncsDecl, extraFuncsNamespace, stateDerVectorName, useFlatArrayNotation)%>
3612+
<%generateStepStarted(listAppend(allEquations, initialEquations), simCode, &extraFuncs, &extraFuncsDecl, extraFuncsNamespace, useFlatArrayNotation)%>
36173613

3618-
<%generateDimTimeEvent(listAppend(allEquations,initialEquations),simCode , &extraFuncs , &extraFuncsDecl, extraFuncsNamespace)%>
3619-
<%generateGetTimeEvenData(listAppend(allEquations,initialEquations),simCode , &extraFuncs , &extraFuncsDecl, extraFuncsNamespace)%>
3620-
<%generateTimeEvent(timeEvents, simCode , &extraFuncs , &extraFuncsDecl, extraFuncsNamespace, stateDerVectorName, true)%>
3614+
<%generateRestoreOldValues(listAppend(allEquations, initialEquations), simCode, &extraFuncs, &extraFuncsDecl, extraFuncsNamespace, stateDerVectorName, useFlatArrayNotation)%>
3615+
<%generateRestoreNewValues(listAppend(allEquations, initialEquations), simCode, &extraFuncs, &extraFuncsDecl, extraFuncsNamespace, stateDerVectorName, useFlatArrayNotation)%>
36213616

3622-
<%isODE(simCode , &extraFuncs , &extraFuncsDecl, extraFuncsNamespace)%>
3623-
<%dimZeroFunc(simCode , &extraFuncs , &extraFuncsDecl, extraFuncsNamespace)%>
3617+
<%generateDimTimeEvent(listAppend(allEquations, initialEquations),simCode, &extraFuncs, &extraFuncsDecl, extraFuncsNamespace)%>
3618+
<%generateGetTimeEvenData(listAppend(allEquations, initialEquations), simCode, &extraFuncs, &extraFuncsDecl, extraFuncsNamespace)%>
3619+
<%generateTimeEvent(timeEvents, simCode, &extraFuncs, &extraFuncsDecl, extraFuncsNamespace, stateDerVectorName, useFlatArrayNotation)%>
36243620

3625-
<%getCondition(zeroCrossings,simCode , &extraFuncs , &extraFuncsDecl, extraFuncsNamespace, stateDerVectorName, useFlatArrayNotation)%>
3621+
<%isODE(simCode, &extraFuncs, &extraFuncsDecl, extraFuncsNamespace)%>
3622+
<%dimZeroFunc(simCode, &extraFuncs, &extraFuncsDecl, extraFuncsNamespace)%>
36263623

3627-
<%saveAll(modelInfo,simCode , &extraFuncs , &extraFuncsDecl, extraFuncsNamespace,stateDerVectorName,useFlatArrayNotation)%>
3624+
<%getCondition(zeroCrossings, simCode, &extraFuncs, &extraFuncsDecl, extraFuncsNamespace, stateDerVectorName, useFlatArrayNotation)%>
36283625

3626+
<%saveAll(modelInfo, simCode, &extraFuncs, &extraFuncsDecl, extraFuncsNamespace, stateDerVectorName, useFlatArrayNotation)%>
36293627

3630-
<%labeledDAE(modelInfo.labels,simCode , &extraFuncs , &extraFuncsDecl, extraFuncsNamespace, stateDerVectorName, useFlatArrayNotation)%>
3631-
<%giveVariables(modelInfo, context,useFlatArrayNotation,simCode , &extraFuncs , &extraFuncsDecl, extraFuncsNamespace,stateDerVectorName)%>
3628+
<%labeledDAE(modelInfo.labels, simCode, &extraFuncs, &extraFuncsDecl, extraFuncsNamespace, stateDerVectorName, useFlatArrayNotation)%>
3629+
<%giveVariables(modelInfo, context, useFlatArrayNotation, simCode, &extraFuncs, &extraFuncsDecl, extraFuncsNamespace,stateDerVectorName)%>
36323630

36333631
<%memberVariableInitialize%>
36343632
<%constVariableInitialize%>

OMCompiler/Compiler/Template/CodegenCppOMSI.tpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3392,7 +3392,7 @@ case SIMCODE(modelInfo = MODELINFO(__)) then
33923392

33933393
<%generateDimTimeEvent(listAppend(allEquations,initialEquations),simCode , &extraFuncs , &extraFuncsDecl, extraFuncsNamespace)%>
33943394
<%generateGetTimeEvenData(listAppend(allEquations,initialEquations),simCode , &extraFuncs , &extraFuncsDecl, extraFuncsNamespace)%>
3395-
<%generateTimeEvent(timeEvents, simCode , &extraFuncs , &extraFuncsDecl, extraFuncsNamespace, stateDerVectorName, true)%>
3395+
<%generateTimeEvent(timeEvents, simCode , &extraFuncs , &extraFuncsDecl, extraFuncsNamespace, stateDerVectorName, useFlatArrayNotation)%>
33963396

33973397
<%isODE(simCode , &extraFuncs , &extraFuncsDecl, extraFuncsNamespace)%>
33983398
<%dimZeroFunc(simCode , &extraFuncs , &extraFuncsDecl, extraFuncsNamespace)%>

0 commit comments

Comments
 (0)