Opened 12 years ago

Last modified 11 years ago

#2432 closed defect

no support for mixed systems containing algorithms — at Version 8

Reported by: Lennart Ochel Owned by: Willi Braun
Priority: blocker Milestone: 1.9.1
Component: Backend Version: trunk
Keywords: Cc: Patrick Täuber, Martin Sjölund, Adrian Pop

Description (last modified by Lennart Ochel)

It seems that there is no support for mixed systems that contain algorithms.
Example:

model test
  Real a;
  Integer b;
algorithm
  b:=if a > 0 then 1 else -1;
algorithm
  a:=b * time;
end test;

Output:

Translation	17:22:17		0:0-0:0	Interner Fehler Transformation Module sort components failed!
Translation	17:22:17		0:0-0:0	Interner Fehler ./Compiler/BackEnd/BackendDAETransform.mo: function strongComponentsScalar failed
sorting equations (strongComponents) failed
Translation	17:22:17		0:0-0:0	Interner Fehler ./Compiler/BackEnd/BackendDAETransform.mo: function analyseStrongComponentBlock failed
Translation	17:22:17		0:0-0:0	Interner Fehler ./Compiler/BackEnd/BackendDAETransform.mo: function findDiscreteEquation failed
Your model contains a mixed system involving algorithms or other complex-equations.
Sorry. Currently are supported only mixed system involving simple equations and boolean variables.
Try to break the loop by using the pre operator.

Change History (8)

comment:1 by Lennart Ochel, 12 years ago

Cc: Lennart Ochel added
Owner: changed from probably noone to Willi Braun
Status: newassigned

comment:2 by Lennart Ochel, 12 years ago

Cc: ptauber added

Probably OpenModelica is not able to solve any mixed system containing integer variables. It seems that only Boolean variables are supported – in some way. Mixed systems containing integer variables are only solved using tearing. So this is probably a tearing ticket?!

comment:3 by Martin Sjölund, 12 years ago

Or about adding support for solving mixed integer systems :)

comment:4 by Willi Braun, 12 years ago

Owner: changed from Willi Braun to Lennart Ochel

yes, Martin is right.
We haven't support for mixed integer system at all.

comment:5 by Lennart Ochel, 12 years ago

Cc: Patrick Täuber added; ptauber removed

comment:6 by Lennart Ochel, 12 years ago

Owner: changed from Lennart Ochel to Willi Braun

comment:7 by Lennart Ochel, 12 years ago

Minor modifications to the initial example to get more interesting trajectories:

model test
  Real a;
  Integer b;
algorithm 
  b:=if a > 0 then integer(time*10) else -integer(time*10);
algorithm 
  a:=b * time;
end test;

comment:8 by Lennart Ochel, 12 years ago

Description: modified (diff)
Note: See TracTickets for help on using tickets.