Opened 9 years ago

Closed 9 years ago

#3428 closed defect (fixed)

ublas access error for MultiBody

Reported by: Rüdiger Franke Owned by: Niklas Worschech
Priority: high Milestone: 1.9.3
Component: Run-time Version: trunk
Keywords: Cc: Niklas Worschech, Marcus Walther

Description

This night the simulated models from MSL 3.2.1 reduced from 259 yesterday to 249 today. This all appear to be MultiBody examples, see e.g. Modelica.Mechanics.MultiBody.Examples.Constraints.SphericalConstraint. The examples raise the new error

Check failed in file /usr/include/boost/numeric/ublas/functional.hpp at line 1548:
i < size_i

What has happened?

Change History (6)

comment:1 by Rüdiger Franke, 9 years ago

See #3426. The problem is related to the system flag -DNDEBUG.

comment:2 by Marcus Walther, 9 years ago

The problem occurs because the default build-type of the cpp-runtime has changed from RelWithDebInfo (-O2 -g -DNDEBUG) to Debug (-g). The -DNDEBUG-Flag turns off the assertions, that's why we have not seen the issue before.
I will change it back, but we should keep the ticket open because the bug is still present.

comment:3 by Marcus Walther, 9 years ago

I've analyzed the model "Modelica.Mechanics.MultiBody.Examples.Constraints.SphericalConstraint", in the generated jacobian-class, there is a method called "getStateSetJac3Jacobian" with wrong index-operators. The matrix _StateSetJac3jacobian has the dimensions 1x4, but the values are accessed with the operators (0,0), (1,0), (2,0), (3,0) -- it should be (0,0), (0,1), (0,2), (0,3). So the issue is related to the code generation.

comment:4 by Marcus Walther, 9 years ago

Owner: changed from somebody to Niklas Worschech
Status: newassigned

comment:5 by Marcus Walther, 9 years ago

@niklwors: I think you have fixed the issue with your commit 3ba9138e982c33ba2e4af5fec29dc184ef0fefa8, right? Can you please close the ticket?

comment:6 by Niklas Worschech, 9 years ago

Resolution: fixed
Status: assignedclosed
Note: See TracTickets for help on using tickets.