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 )
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 ...