Opened 7 years ago

Closed 6 years ago

#4494 closed defect (fixed)

Incorrect/inconsistent nonlinear solution during simulation

Reported by: crupp@… Owned by: somebody
Priority: critical Milestone: Future
Component: Run-time Version: v1.12.0
Keywords: Cc:

Description

See the attached model in Loop.mo and the attached figure showing the problem.

This model is a four-bar linkage using a RevoluteConstraint joint to break the kinematic loop. At around 3 seconds (in the figure), the position of one of the hinges makes a large jump for no good reason. There is also some chattering between two different solutions.

I suspect there is some issue with the nonlinear solver since it is alternating between the correct and a different (kinematically admissible, but kinetically inconsistent) solution. Looking at LOG_NLS, the values of the iteration variables jump unexpectedly soon after 3 seconds. With LOG_NLS_V, there is a point at which the "System extrapolation" values are dramatically different for no reason, which changes the x0 values and the subsequent solution.

The locations of the jumps change with different solver tolerances. It is easy to see the effect if you simulate with 3D visualization.

Attachments (2)

Loop.mo (4.9 KB ) - added by crupp@… 7 years ago.
Probelmatic model
Jumping_linkage.png (36.6 KB ) - added by crupp@… 7 years ago.
Plot

Download all attachments as: .zip

Change History (3)

by crupp@…, 7 years ago

Attachment: Loop.mo added

Probelmatic model

by crupp@…, 7 years ago

Attachment: Jumping_linkage.png added

Plot

comment:1 by crupp@…, 6 years ago

Resolution: fixed
Status: newclosed

This seems to be working now with OpenModelica v1.14.0-dev-26497-gc8b2e0e0e6
No idea when it was actually fixed.

Note: See TracTickets for help on using tickets.