ConnectionOfLineForces

class ConnectionOfLineForces "Connection of LineForces"
    extends Modelica.Icons.Information;

    annotation (Documentation(info = "<html>\n<p>\nLine force elements, such as a\n<a href=\"modelica://Modelica.Mechanics.MultiBody.Forces.Spring\">Spring</a>,\nare usually connected between two parts. In fact, this is the only possibility\nin most multi-body programs. In an equation based system like Modelica, more\ngeneral connections are possible. In particular\n<strong>3-dimensional line force</strong> elements can be connected together\nin <strong>series</strong> without having a body with mass at the\nconnection point. This is advantageous since stiff systems can be avoided, say, due to\na stiff spring and a small mass at the connection point.\nFor an example, see model\n<a href=\"modelica://Modelica.Mechanics.MultiBody.Examples.Elementary.ThreeSprings\">ThreeSprings</a>:\n</p>\n\n<p>\n<img src=\"modelica://Modelica/Resources/Images/Mechanics/MultiBody/Examples/Elementary/ThreeSprings.png\">\n</p>\n\n<p>\nHere, three springs are connected together at one point, without having a body\nat the connection point of the springs. There is one difficulty: In such a situation\nthe orientation object at the connection point is undefined, because\nthe springs do not transmit torques. Translation will therefore fail, if three springs\nand a body are connected together in this way. To handle such a case, all line force\nelements have flags \"fixedRotationAtFrame_a\" and \"fixedRotationAtFrame_b\" in their\n\"Advanced\" parameter menu. For example, if \"fixedRotationAtFrame_b = <strong>true</strong>\",\nthe orientation object at frame_b is explicitly set to a null rotation, i.e.,\n</p>\n\n<blockquote><pre>\nframe_b.R = Modelica.Mechanics.MultiBody.Frames.nullRotation();\n</pre></blockquote>\n\n<p>\nThis means that the coordinate system in the connection point of the three springs\nis always parallel to the world frame. When this option is selected, the corresponding\nframe in the line force icon is marked with a red circle and with the text \"R=0\".\nThis is shown in the next figure, where this option is selected for spring3.frame_b:\n</p>\n\n<p>\n<img src=\"modelica://Modelica/Resources/Images/Mechanics/MultiBody/UsersGuide/ThreeSpringsDiagramLayer.png\">\n</p>\n\n<p>\nNote, if this flag is not set to <strong>true</strong>, a translation error will occur.\nDue to the usage of overdetermined connectors in the MultiBody library, the error\nmessage will be something like: .\n</p>\n\n<blockquote><p>\n\"The overdetermined connectors &lt;...&gt; are connected but do not have any root defined\"\n</p></blockquote>\n\n<p>\nThe two flags \"fixedRotationAtFrame_a\" and \"fixedRotationAtFrame_b must be set very carefully\nbecause a wrong definition can lead to a model that simulates, but the simulation\nresult is wrong. This is the case whenever the movement of the resulting system depends\non the orientation object that was arbitrarily set in parallel to the world frame.\nA typical example is shown in the next figure:\n</p>\n\n<p>\n<img src=\"modelica://Modelica/Resources/Images/Mechanics/MultiBody/UsersGuide/ThreeSprings2DiagramLayer.png\">\n</p>\n\n<p>\nHere, spring3.frame_b.R is defined to be in parallel to the world frame.\nHowever, this is then also the orientation of fixedTranslation.frame_a, and this\nin turn means that the left part of the fixedTranslation object is always in parallel\nto the world frame. Since this is not correct, this model\nwill result in a <strong>wrong simulation result</strong>\nThis system is mathematically not well-defined and does not have a solution.\nThe only way to model such a system is by providing a mass and an inertia tensor\nto fixedTranslation. Then, the flags are not needed, because the \"connection\"\npoint of the springs is a body where the absolution position vector and the\norientation matrix of the body-fixed coordinate system are used as states.\n</p>\n\n</html>"));
end ConnectionOfLineForces;