Opened 12 years ago

Closed 12 years ago

Last modified 12 years ago

#1901 closed defect (worksforme)

problems with event handling

Reported by: ekofman@… Owned by: Willi Braun
Priority: high Milestone: 1.9.0
Component: Run-time Version: trunk
Keywords: Event Handling, Zero Crossing Functions, Discontinuous Systems Cc:

Description

Today, I updated Open Modelica to rev 13538 (I had last updated about six months ago). I found that Event Handling is not working properly. Almost any model with discontinuities gets stuck after the first state event is detected.
Consider for instance model Modelica.Electrical.Analog.Examples.CharacteristicIdealDiodes

In previous versions of OpenModelica state events were not correctly detected (I think OM only searched for events at output instants, so accurate event detection was strongly dependent on the output interval), but the simulations did not get stuck.

Now, once a state event is detected, OM keeps detecting it forever.

I think this is a serious bug (now OM is not able to simulate discontinuous systems) but I assume it can be easily fixed.

Change History (4)

comment:1 by Adrian Pop, 12 years ago

Owner: changed from somebody to Willi Braun
Status: newassigned
Version: trunk

comment:2 by Willi Braun, 12 years ago

Resolution: worksforme
Status: assignedclosed

That' a bit strange, since that model you mention is in our testsuite and is now working for a long time as far as I see. Which version of MSL do you use?

However there were some issues with our event handling e.g. #1866, but with r13555 we have improved it a lot. So if you still have issues, please provide some model, open new tickets and we will see what we can do.

comment:3 by ekofman@…, 12 years ago

I was using MSL 3.1 and omc rev 13538. Now I switched to MSL 3.2.1 and omc r13569 but I have still the same problem. For model Modelica.Electrical.Analog.Examples.CharacteristicIdealDiodes the simulation is stuck at t= 0.0833517 when it keeps detecting events for ever.

Anyway, I think the problem is related to the solver. I am simulating from OMEdit. If I change dassl by dasslwort (I think it is DASSL without internal root finding) it works (but I suspect that it does not search for zero crossings).

in reply to:  3 comment:4 by Willi Braun, 12 years ago

Replying to ekofman@…:

I was using MSL 3.1 and omc rev 13538. Now I switched to MSL 3.2.1 and omc r13569 but I have still the same problem. For model Modelica.Electrical.Analog.Examples.CharacteristicIdealDiodes the simulation is stuck at t= 0.0833517 when it keeps detecting events for ever.

I've tested them yesterday and also right now again, but they run for me. And also our test-server does not claim this model. Which OS do you using?

Anyway, I think the problem is related to the solver. I am simulating from OMEdit. If I change dassl by dasslwort (I think it is DASSL without internal root finding) it works (but I suspect that it does not search for zero crossings).

Yes, "dasslwort" is without the internal root finding of DASSL, but it's performs the root finding procedure outside of dassl.

Note: See TracTickets for help on using tickets.