Opened 8 years ago

Last modified 5 years ago

#4143 assigned defect

Initialization of systems with dynamic state selection is not handled properly

Reported by: Francesco Casella Owned by: Karim Adbdelhak
Priority: blocker Milestone: 2.0.0
Component: Backend Version:
Keywords: Cc:

Description

Lennart Ochel wrote me:

There is no approach in OpenModelica to select properly the initial states for the state sets yet [for the initialization of dynamic state selection]. Right now we choose the states randomly that are used for the initialization phase.

This should be fixed for the 2.0.0 release.

Attachments (1)

TestDynamicSelection.mo (722 bytes ) - added by Francesco Casella 5 years ago.

Download all attachments as: .zip

Change History (7)

comment:1 by Francesco Casella, 8 years ago

In the meantime while a proper solution is found for this issue, in case of failure couldn't we just re-try with some other random choice for a certain number of attempts? That would already be much better than an one-shot try

comment:2 by Francesco Casella, 6 years ago

Owner: changed from Lennart Ochel to Karim Adbdelhak
Status: newassigned

Karim has some ideas, will discuss them with Willi and Bernhard

comment:3 by Francesco Casella, 5 years ago

@Karim, could you post a comment here with an update on the status of this issue?

Thanks!

comment:4 by Karim Adbdelhak, 5 years ago

An alpha version for better initialization of models with dynamic state selection is available via the flag "--initialStateSelection", currently only working for C. Is there a model for which it can be tested?

by Francesco Casella, 5 years ago

Attachment: TestDynamicSelection.mo added

comment:5 by Francesco Casella, 5 years ago

The attached models are textbook examples - when the point mass is close to the x-axis, one should use y and vy as states, while x and vx should be used when close to the y-axis.

It seems that the current runtime can already select the right initial state in both cases, of course I couldn't easily find a case that fails (Murphy's law).

comment:6 by Francesco Casella, 5 years ago

See also #5574

Note: See TracTickets for help on using tickets.