Changeset 4625825 in OpenModelica


Ignore:
Timestamp:
2021-04-07T15:45:39+02:00 (3 years ago)
Author:
Martin Sjölund <martin@…>
Children:
1d843055
Parents:
175becc
Message:

Disable the splitting of when to generate algorithm indexes for now

File:
1 edited

Legend:

Unmodified
Added
Removed
  • OMCompiler/Compiler/SimCode/SimCodeUtil.mo

    r175becc r4625825  
    867867    (_, _, equations, _, ouniqueEqIndex, clockedVars, oeqSccMapping, oeqBackendSimCodeMapping, oBackendMapping) :=
    868868        createEquationsForSystem(stateeqnsmark, zceqnsmarks, syst, inShared, comps, ouniqueEqIndex, {},
    869                                  sccOffset, oeqSccMapping, oeqBackendSimCodeMapping, oBackendMapping, true, true);
     869                                 sccOffset, oeqSccMapping, oeqBackendSimCodeMapping, oBackendMapping, true);
    870870    sccOffset := listLength(comps) + sccOffset;
    871871    //otempvars := listAppend(clockedVars, otempvars);
     
    14501450      SimCode.BackendMapping  /*backendSimCodeMapping*/,
    14511451      Integer  /*sccOffset*/>;
    1452 protected type CreateEquationsForSystemsArg = tuple<BackendDAE.Shared, list<BackendDAE.ZeroCrossing>, Boolean, Boolean>;
     1452protected type CreateEquationsForSystemsArg = tuple<BackendDAE.Shared, list<BackendDAE.ZeroCrossing>, Boolean>;
    14531453
    14541454protected function createEquationsForSystems "Some kind of comments would be very helpful!"
     
    14771477algorithm
    14781478  try
    1479     arg := (shared, inAllZeroCrossings, true, false);
     1479    arg := (shared, inAllZeroCrossings, createAlgebraicEquations);
    14801480    foldArg := (iuniqueEqIndex, {}, {}, {}, {}, itempvars, {}, {}, iBackendMapping, iSccOffset);
    14811481    foldArg := List.fold1(inSysts, createEquationsForSystems1, arg, foldArg);
    1482     if createAlgebraicEquations then
    1483       arg := (shared, inAllZeroCrossings, false, true);
    1484       foldArg := List.fold1(inSysts, createEquationsForSystems1, arg, foldArg);
    1485     end if;
    14861482    (ouniqueEqIndex, oodeEquations, oalgebraicEquations, oallEquations, oequationsForZeroCrossings, otempvars,
    14871483    oeqSccMapping, oeqBackendSimCodeMapping, obackendMapping, oSccOffset) := foldArg;
     
    15171513      list<BackendDAE.ZeroCrossing> zeroCrossings;
    15181514      BackendDAE.Shared shared;
    1519       Boolean createAlgebraicEquations, createDynamicEquations;
     1515      Boolean createAlgebraicEquations;
    15201516    case BackendDAE.MATCHING(ass1=ass1, comps=comps)
    15211517      equation
     
    15241520        end if;
    15251521
    1526         (shared, zeroCrossings, createDynamicEquations, createAlgebraicEquations) = inArg;
     1522        (shared, zeroCrossings, createAlgebraicEquations) = inArg;
    15271523        (uniqueEqIndex, odeEquations, algebraicEquations, allEquations, equationsForZeroCrossings, tempvars,
    15281524         eqSccMapping, eqBackendSimCodeMapping, backendMapping, sccOffset) = inFold;
     
    15401536            createEquationsForSystem(
    15411537                stateeqnsmark, zceqnsmarks, syst, shared, comps, uniqueEqIndex, tempvars,
    1542                 sccOffset, eqSccMapping, eqBackendSimCodeMapping, backendMapping, createDynamicEquations, createAlgebraicEquations);
     1538                sccOffset, eqSccMapping, eqBackendSimCodeMapping, backendMapping, createAlgebraicEquations);
    15431539        GC.free(stateeqnsmark);
    15441540        GC.free(zceqnsmarks);
     
    15691565protected type CreateEquationsForSystemArg =
    15701566tuple<array<Integer> /*stateeqnsmark*/, array<Integer> /*zceqnsmark*/,
    1571       BackendDAE.EqSystem /*syst*/, BackendDAE.Shared /*shared*/, Boolean, Boolean>;
     1567      BackendDAE.EqSystem /*syst*/, BackendDAE.Shared /*shared*/, Boolean>;
    15721568
    15731569protected function createEquationsForSystem
     
    15831579  input list<tuple<Integer,Integer>> ieqBackendSimCodeMapping;
    15841580  input SimCode.BackendMapping iBackendMapping;
    1585   input Boolean createDynamicEquations;
    15861581  input Boolean createAlgebraicEquations;
    15871582  output list<SimCode.SimEqSystem> outOdeEquations;
     
    15991594  list<list<SimCode.SimEqSystem>> odeEquations, algebraicEquations, allEquations, equationsforZeroCrossings;
    16001595algorithm
    1601   arg := (stateeqnsmark, zceqnsmark, syst, shared, createDynamicEquations, createAlgebraicEquations);
     1596  arg := (stateeqnsmark, zceqnsmark, syst, shared, createAlgebraicEquations);
    16021597  foldArg := (iuniqueEqIndex, {}, {}, {}, {}, itempvars, ieqSccMapping, ieqBackendSimCodeMapping, iBackendMapping, iSccIndex);
    16031598  foldArg := List.fold2(comps, createEquationsForSystem1, arg, partitionKindToClockIndex(syst.partitionKind), foldArg);
     
    16191614  input list<list<SimCode.SimEqSystem>> inAllEquations;
    16201615  input list<list<SimCode.SimEqSystem>> inEquationsforZeroCrossings;
    1621   input Boolean createDynamicEquations;
    16221616  output list<list<SimCode.SimEqSystem>> outOdeEquations;
    16231617  output list<list<SimCode.SimEqSystem>> outAlgebraicEquations;
     
    16301624  bdynamic := BackendDAEUtil.blockIsDynamic(eqsIdx, stateeqnsmark);
    16311625  bzceqns := BackendDAEUtil.blockIsDynamic(eqsIdx, zceqnsmark);
    1632   if createDynamicEquations then
    1633     outOdeEquations := if bdynamic then inEq::inOdeEquations else inOdeEquations;
    1634     outAllEquations := inEq::inAllEquations;
    1635     outEquationsforZeroCrossings := if bzceqns then inEq::inEquationsforZeroCrossings else inEquationsforZeroCrossings;
    1636   else
    1637     outOdeEquations := inOdeEquations;
    1638     outAllEquations := if not bdynamic then inEq::inAllEquations else inAllEquations;
    1639     outEquationsforZeroCrossings := inEquationsforZeroCrossings;
    1640   end if;
     1626  outOdeEquations := if bdynamic then inEq::inOdeEquations else inOdeEquations;
    16411627  outAlgebraicEquations := if not bdynamic then inEq::inAlgebraicEquations else inAlgebraicEquations;
     1628  outAllEquations := inEq::inAllEquations;
     1629  outEquationsforZeroCrossings := if bzceqns then inEq::inEquationsforZeroCrossings else inEquationsforZeroCrossings;
    16421630end addEquationsToLists;
    16431631
     
    16611649  list<BackendDAE.Var> varlst;
    16621650  list<BackendDAE.Equation> eqnlst;
    1663   Boolean createDynamicEquations, createAlgebraicEquations, bdynamic, skip;
     1651  Boolean createAlgebraicEquations, bdynamic, skip;
    16641652  Boolean debug = false;
    16651653algorithm
    1666   (stateeqnsmark, zceqnsmark, syst, shared, createDynamicEquations, createAlgebraicEquations) := inArg;
     1654  (stateeqnsmark, zceqnsmark, syst, shared, createAlgebraicEquations) := inArg;
    16671655  (uniqueEqIndex, odeEquations, algebraicEquations, allEquations, equationsforZeroCrossings,
    16681656  tempvars, eqSccMapping, eqBackendSimCodeMapping, backendMapping, sccIndex) := inFold;
     
    17121700          (odeEquations, algebraicEquations, allEquations, equationsforZeroCrossings) =
    17131701              addEquationsToLists(equations1, stateeqnsmark, zceqnsmark, {index}, odeEquations,
    1714                              algebraicEquations, allEquations, equationsforZeroCrossings, createDynamicEquations);
     1702                             algebraicEquations, allEquations, equationsforZeroCrossings);
    17151703        end if;
    17161704      then (uniqueEqIndex1, odeEquations, algebraicEquations, allEquations, equationsforZeroCrossings,
     
    17301718        (odeEquations, algebraicEquations, allEquations, equationsforZeroCrossings) =
    17311719            addEquationsToLists(equations1, stateeqnsmark, zceqnsmark, {e}, odeEquations,
    1732                            algebraicEquations, allEquations, equationsforZeroCrossings, createDynamicEquations);
     1720                           algebraicEquations, allEquations, equationsforZeroCrossings);
    17331721      then
    17341722        (uniqueEqIndex1, odeEquations, algebraicEquations, allEquations, equationsforZeroCrossings,
     
    17471735        (odeEquations, algebraicEquations, allEquations, equationsforZeroCrossings) =
    17481736            addEquationsToLists(equations1, stateeqnsmark, zceqnsmark, {e}, odeEquations,
    1749                            algebraicEquations, allEquations, equationsforZeroCrossings, createDynamicEquations);
     1737                           algebraicEquations, allEquations, equationsforZeroCrossings);
    17501738      then
    17511739        (uniqueEqIndex1, odeEquations, algebraicEquations, allEquations, equationsforZeroCrossings,
     
    17651753        (odeEquations, algebraicEquations, allEquations, equationsforZeroCrossings) =
    17661754            addEquationsToLists(equations1, stateeqnsmark, zceqnsmark, {e}, odeEquations,
    1767                            algebraicEquations, allEquations, equationsforZeroCrossings, createDynamicEquations);
     1755                           algebraicEquations, allEquations, equationsforZeroCrossings);
    17681756      then
    17691757        (uniqueEqIndex1, odeEquations, algebraicEquations, allEquations, equationsforZeroCrossings,
     
    18001788        (odeEquations, algebraicEquations, allEquations, equationsforZeroCrossings) =
    18011789            addEquationsToLists(equations1, stateeqnsmark, zceqnsmark, {e}, odeEquations,
    1802                            algebraicEquations, allEquations, equationsforZeroCrossings, createDynamicEquations);
     1790                           algebraicEquations, allEquations, equationsforZeroCrossings);
    18031791      then
    18041792        (uniqueEqIndex1, odeEquations, algebraicEquations, allEquations, equationsforZeroCrossings,
     
    18211809          (odeEquations, algebraicEquations, allEquations, equationsforZeroCrossings) =
    18221810              addEquationsToLists(equations1, stateeqnsmark, zceqnsmark, {index}, odeEquations,
    1823                              algebraicEquations, allEquations, equationsforZeroCrossings, createDynamicEquations);
     1811                             algebraicEquations, allEquations, equationsforZeroCrossings);
    18241812        end if;
    18251813      then
     
    18391827        (odeEquations, algebraicEquations, allEquations, equationsforZeroCrossings) =
    18401828            addEquationsToLists(noDiscEquations1, stateeqnsmark, zceqnsmark, eqnslst, odeEquations,
    1841                            algebraicEquations, allEquations, equationsforZeroCrossings, createDynamicEquations);
     1829                           algebraicEquations, allEquations, equationsforZeroCrossings);
    18421830      then
    18431831        (uniqueEqIndex1, odeEquations, algebraicEquations, allEquations, equationsforZeroCrossings, tempvars,
Note: See TracChangeset for help on using the changeset viewer.