Opened 12 years ago

Last modified 12 years ago

#1860 closed defect

Multibody MSL models containing springs don't simulate — at Version 1

Reported by: Bruno Scaglioni Owned by: somebody
Priority: high Milestone: 1.9.0
Component: Run-time Version: 1.9.0Beta
Keywords: Multibody MSL3.2.1 Cc: Jens Frenkel

Description (last modified by Martin Sjölund)

Using MSL 3.2.1 and the last nightly build for windows (13047)
Models from Multibody.Examples containing springs compile but simulation doesn't complete.

the first tested model is:

model SpringWithMass
 extends  Modelica.Mechanics.MultiBody.Examples.Elementary.SpringWithMass;
end SpringWithMass;

output file log contains this:

....
2 : assert(noEvent(spring.lineForce.length > spring.lineForce.s_small), "
The distance between the origin of frame_a and the origin of frame_b
of a LineForceWithMass component became smaller as parameter s_small
(= a small number, defined in the \"Advanced\" menu). The distance is
set to s_small, although it is smaller, to avoid a division by zero
when computing the direction of the line force. Possible reasons
for this situation:

  • At initial time the distance may already be zero: Change the initial positions of the bodies connected by this element.
  • Hardware stops are not modeled or are modeled not stiff enough. Include stops, e.g., stiff springs, or increase the stiffness if already present.
  • Another error in your model may lead to unrealistically large forces and torques that would in reality destroy the stops.
  • The flange_b connector might be defined by a pre-defined motion, e.g., with Modelica.Mechanics.Translational.Position and the predefined flange_b.s is zero or negative.

");
...

and the result is this:

record SimulationResult
    resultFile = "c:/temp/TestPolimi.MultiBody.MSLTest.Failed.SpringWithMass_res.mat",
    simulationOptions = "startTime = 0.0, stopTime = 1.0, numberOfIntervals = 500, tolerance = 1e-06, method = 'dassl', fileNamePrefix = 'TestPolimi.MultiBody.MSLTest.Failed.SpringWithMass', storeInTemp = false, noClean = false, options = '', outputFormat = 'mat', variableFilter = '.*', measureTime = false, cflags = '', simflags = ''",
    messages = "warning | Error solving nonlinear system residualFunc10 (size 1) at time 2.35831e-007

info    | model terminate | Simulation terminated at time 0.002
...

Change History (1)

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

Cc: Jens Frenkel added
Description: modified (diff)
Note: See TracTickets for help on using tickets.