Skip to content

Failed

tests / testsuite-clang / openmodelica_xml.XmlDumpComment.mos (from (result.xml))

Failing for the past 9 builds (Since #7 )
Took 0 ms.

Stacktrace

Output mismatch (see stdout for details)

Standard Output

 + XmlDumpComment                                                                    ... equation mismatch [time: 0]

==== Log /tmp/omc-rtest-unknown/openmodelica/xml/XmlDumpComment.mos_temp7491/log-XmlDumpComment.mos
true
true
"class XmlDumpComment
  parameter Real A \"test & in xml\";
  parameter Real B;
  Real x(start = 0.0) \"evaluated to 0 if A < B\";
  Real y(start = 0.0);
  Real z;
equation
  x = if A < B then 0.0 else 1.0;
  y = der(x);
  z = x + y;
end XmlDumpComment;
"
"Flat"
(true,"XmlDumpComment.xml")
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>
<dae xmlns:p1=\"http://www.w3.org/1998/Math/MathML\"
                                                xmlns:xlink=\"http://www.w3.org/1999/xlink\"
                                                xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"
                                                xsi:noNamespaceSchemaLocation=\"http://home.dei.polimi.it/donida/Projects/AutoEdit/Images/DAE.xsd\">
<variables dimension=\"5\">
<knownVariables dimension=\"4\">
<variablesList>
<variable id=\"1\" name=\"y\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\">
<bindExpression string=\"0.0\">
</bindExpression>
<classesNames>
<element>
XmlDumpComment
</element>
</classesNames>
<attributesValues>
<initialValue string=\"0.0\">
</initialValue>
</attributesValues>
</variable>
<variable id=\"2\" name=\"x\" variability=\"continuousDummyState\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"evaluated to 0 if A &lt; B\">
<bindExpression string=\"if A &lt; B then 0.0 else 1.0\">
</bindExpression>
<classesNames>
<element>
XmlDumpComment
</element>
</classesNames>
<attributesValues>
<initialValue string=\"0.0\">
</initialValue>
</attributesValues>
</variable>
<variable id=\"3\" name=\"A\" variability=\"parameter\" direction=\"none\" type=\"Real\" fixed=\"true\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"test &amp; in xml\">
<classesNames>
<element>
XmlDumpComment
</element>
</classesNames>
</variable>
<variable id=\"4\" name=\"B\" variability=\"parameter\" direction=\"none\" type=\"Real\" fixed=\"true\" flow=\"NonConnector\" stream=\"NonStreamConnector\">
<classesNames>
<element>
XmlDumpComment
</element>
</classesNames>
</variable>
</variablesList>
</knownVariables>
<aliasVariables dimension=\"1\">
<variablesList>
<variable id=\"1\" name=\"z\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\">
<bindExpression string=\"x\">
</bindExpression>
<classesNames>
<element>
XmlDumpComment
</element>
</classesNames>
</variable>
</variablesList>
</aliasVariables>
</variables>
<functions>
</functions>
</dae>"
"Optimiser"
false
"Error: Failed to load package Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum (3.2.1) using MODELICAPATH /var/lib/jenkins/workspace/OpenModelica_maintenance_v1.13/build/lib/omlibrary.
"
(false,"")
""

Equation mismatch: diff says:
--- /tmp/omc-rtest-unknown/openmodelica/xml/XmlDumpComment.mos_temp7491/equations-expected2019-01-14 23:24:43.781287662 +0000
+++ /tmp/omc-rtest-unknown/openmodelica/xml/XmlDumpComment.mos_temp7491/equations-got2019-01-14 23:24:43.909286440 +0000
@@ -80,22741 +80,10 @@
 </variables>
 <functions>
 </functions>
 </dae>"
 "Optimiser"
-true
+false
+"Error: Failed to load package Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum (3.2.1) using MODELICAPATH /var/lib/jenkins/workspace/OpenModelica_maintenance_v1.13/build/lib/omlibrary.
+"
+(false,"")
 ""
-(true,"Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum.xml")
-"<?xml version=\"1.0\" encoding=\"UTF-8\"?>
-<dae xmlns:p1=\"http://www.w3.org/1998/Math/MathML\"
-xmlns:xlink=\"http://www.w3.org/1999/xlink\"
-xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"
-xsi:noNamespaceSchemaLocation=\"http://home.dei.polimi.it/donida/Projects/AutoEdit/Images/DAE.xsd\">
-<variables dimension=\"1087\">
-<orderedVariables dimension=\"106\">
-<variablesList>
-<variable id=\"1\" name=\"world.x_label.cylinders[2].lengthDirection[3]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Vector in length direction, resolved in object frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$x_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$x_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<unit string=\"&quot;1&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"2\" name=\"world.x_label.cylinders[2].lengthDirection[2]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Vector in length direction, resolved in object frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$x_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$x_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<unit string=\"&quot;1&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"3\" name=\"world.x_label.cylinders[2].lengthDirection[1]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Vector in length direction, resolved in object frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$x_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$x_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<unit string=\"&quot;1&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"4\" name=\"world.x_label.cylinders[2].r[3]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Position vector from origin of world frame to origin of object frame, resolved in world frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$x_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$x_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<quantity string=\"&quot;Length&quot;\">
-</quantity>
-<unit string=\"&quot;m&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"5\" name=\"world.x_label.cylinders[2].r[2]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Position vector from origin of world frame to origin of object frame, resolved in world frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$x_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$x_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<quantity string=\"&quot;Length&quot;\">
-</quantity>
-<unit string=\"&quot;m&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"6\" name=\"world.x_label.cylinders[2].r[1]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Position vector from origin of world frame to origin of object frame, resolved in world frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$x_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$x_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<quantity string=\"&quot;Length&quot;\">
-</quantity>
-<unit string=\"&quot;m&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"7\" name=\"world.x_label.cylinders[1].lengthDirection[3]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Vector in length direction, resolved in object frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$x_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$x_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<unit string=\"&quot;1&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"8\" name=\"world.x_label.cylinders[1].lengthDirection[2]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Vector in length direction, resolved in object frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$x_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$x_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<unit string=\"&quot;1&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"9\" name=\"world.x_label.cylinders[1].lengthDirection[1]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Vector in length direction, resolved in object frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$x_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$x_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<unit string=\"&quot;1&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"10\" name=\"world.x_label.R_lines[3,3]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$x_label
-</element>
-</classesNames>
-</variable>
-<variable id=\"11\" name=\"world.x_label.R_lines[3,2]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$x_label
-</element>
-</classesNames>
-</variable>
-<variable id=\"12\" name=\"world.x_label.R_lines[3,1]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$x_label
-</element>
-</classesNames>
-</variable>
-<variable id=\"13\" name=\"world.x_label.R_lines[2,3]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$x_label
-</element>
-</classesNames>
-</variable>
-<variable id=\"14\" name=\"world.x_label.R_lines[2,2]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$x_label
-</element>
-</classesNames>
-</variable>
-<variable id=\"15\" name=\"world.x_label.R_lines[2,1]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$x_label
-</element>
-</classesNames>
-</variable>
-<variable id=\"16\" name=\"world.x_label.R_lines[1,3]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$x_label
-</element>
-</classesNames>
-</variable>
-<variable id=\"17\" name=\"world.x_label.R_lines[1,2]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$x_label
-</element>
-</classesNames>
-</variable>
-<variable id=\"18\" name=\"world.x_label.R_lines[1,1]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$x_label
-</element>
-</classesNames>
-</variable>
-<variable id=\"19\" name=\"world.y_label.cylinders[2].lengthDirection[3]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Vector in length direction, resolved in object frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$y_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$y_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<unit string=\"&quot;1&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"20\" name=\"world.y_label.cylinders[2].lengthDirection[2]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Vector in length direction, resolved in object frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$y_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$y_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<unit string=\"&quot;1&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"21\" name=\"world.y_label.cylinders[2].lengthDirection[1]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Vector in length direction, resolved in object frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$y_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$y_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<unit string=\"&quot;1&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"22\" name=\"world.y_label.cylinders[2].r[3]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Position vector from origin of world frame to origin of object frame, resolved in world frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$y_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$y_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<quantity string=\"&quot;Length&quot;\">
-</quantity>
-<unit string=\"&quot;m&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"23\" name=\"world.y_label.cylinders[2].r[2]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Position vector from origin of world frame to origin of object frame, resolved in world frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$y_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$y_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<quantity string=\"&quot;Length&quot;\">
-</quantity>
-<unit string=\"&quot;m&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"24\" name=\"world.y_label.cylinders[2].r[1]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Position vector from origin of world frame to origin of object frame, resolved in world frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$y_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$y_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<quantity string=\"&quot;Length&quot;\">
-</quantity>
-<unit string=\"&quot;m&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"25\" name=\"world.y_label.cylinders[1].lengthDirection[3]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Vector in length direction, resolved in object frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$y_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$y_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<unit string=\"&quot;1&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"26\" name=\"world.y_label.cylinders[1].lengthDirection[2]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Vector in length direction, resolved in object frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$y_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$y_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<unit string=\"&quot;1&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"27\" name=\"world.y_label.cylinders[1].lengthDirection[1]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Vector in length direction, resolved in object frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$y_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$y_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<unit string=\"&quot;1&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"28\" name=\"world.y_label.R_lines[3,3]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$y_label
-</element>
-</classesNames>
-</variable>
-<variable id=\"29\" name=\"world.y_label.R_lines[3,2]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$y_label
-</element>
-</classesNames>
-</variable>
-<variable id=\"30\" name=\"world.y_label.R_lines[3,1]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$y_label
-</element>
-</classesNames>
-</variable>
-<variable id=\"31\" name=\"world.y_label.R_lines[2,3]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$y_label
-</element>
-</classesNames>
-</variable>
-<variable id=\"32\" name=\"world.y_label.R_lines[2,2]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$y_label
-</element>
-</classesNames>
-</variable>
-<variable id=\"33\" name=\"world.y_label.R_lines[2,1]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$y_label
-</element>
-</classesNames>
-</variable>
-<variable id=\"34\" name=\"world.y_label.R_lines[1,3]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$y_label
-</element>
-</classesNames>
-</variable>
-<variable id=\"35\" name=\"world.y_label.R_lines[1,2]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$y_label
-</element>
-</classesNames>
-</variable>
-<variable id=\"36\" name=\"world.y_label.R_lines[1,1]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$y_label
-</element>
-</classesNames>
-</variable>
-<variable id=\"37\" name=\"world.z_label.cylinders[3].lengthDirection[3]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Vector in length direction, resolved in object frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$z_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$z_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<unit string=\"&quot;1&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"38\" name=\"world.z_label.cylinders[3].lengthDirection[2]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Vector in length direction, resolved in object frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$z_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$z_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<unit string=\"&quot;1&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"39\" name=\"world.z_label.cylinders[3].lengthDirection[1]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Vector in length direction, resolved in object frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$z_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$z_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<unit string=\"&quot;1&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"40\" name=\"world.z_label.cylinders[3].r[3]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Position vector from origin of world frame to origin of object frame, resolved in world frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$z_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$z_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<quantity string=\"&quot;Length&quot;\">
-</quantity>
-<unit string=\"&quot;m&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"41\" name=\"world.z_label.cylinders[3].r[2]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Position vector from origin of world frame to origin of object frame, resolved in world frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$z_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$z_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<quantity string=\"&quot;Length&quot;\">
-</quantity>
-<unit string=\"&quot;m&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"42\" name=\"world.z_label.cylinders[3].r[1]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Position vector from origin of world frame to origin of object frame, resolved in world frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$z_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$z_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<quantity string=\"&quot;Length&quot;\">
-</quantity>
-<unit string=\"&quot;m&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"43\" name=\"world.z_label.cylinders[2].lengthDirection[3]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Vector in length direction, resolved in object frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$z_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$z_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<unit string=\"&quot;1&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"44\" name=\"world.z_label.cylinders[2].lengthDirection[2]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Vector in length direction, resolved in object frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$z_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$z_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<unit string=\"&quot;1&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"45\" name=\"world.z_label.cylinders[2].lengthDirection[1]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Vector in length direction, resolved in object frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$z_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$z_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<unit string=\"&quot;1&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"46\" name=\"world.z_label.cylinders[2].r[3]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Position vector from origin of world frame to origin of object frame, resolved in world frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$z_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$z_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<quantity string=\"&quot;Length&quot;\">
-</quantity>
-<unit string=\"&quot;m&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"47\" name=\"world.z_label.cylinders[2].r[2]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Position vector from origin of world frame to origin of object frame, resolved in world frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$z_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$z_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<quantity string=\"&quot;Length&quot;\">
-</quantity>
-<unit string=\"&quot;m&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"48\" name=\"world.z_label.cylinders[2].r[1]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Position vector from origin of world frame to origin of object frame, resolved in world frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$z_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$z_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<quantity string=\"&quot;Length&quot;\">
-</quantity>
-<unit string=\"&quot;m&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"49\" name=\"world.z_label.cylinders[1].lengthDirection[3]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Vector in length direction, resolved in object frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$z_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$z_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<unit string=\"&quot;1&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"50\" name=\"world.z_label.cylinders[1].lengthDirection[2]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Vector in length direction, resolved in object frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$z_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$z_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<unit string=\"&quot;1&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"51\" name=\"world.z_label.cylinders[1].lengthDirection[1]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Vector in length direction, resolved in object frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$z_label
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Advanced.Shape$world$z_label$cylinders
-</element>
-</classesNames>
-<attributesValues>
-<unit string=\"&quot;1&quot;\">
-</unit>
-</attributesValues>
-</variable>
-<variable id=\"52\" name=\"world.z_label.R_lines[3,3]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$z_label
-</element>
-</classesNames>
-</variable>
-<variable id=\"53\" name=\"world.z_label.R_lines[3,2]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$z_label
-</element>
-</classesNames>
-</variable>
-<variable id=\"54\" name=\"world.z_label.R_lines[3,1]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$z_label
-</element>
-</classesNames>
-</variable>
-<variable id=\"55\" name=\"world.z_label.R_lines[2,3]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$z_label
-</element>
-</classesNames>
-</variable>
-<variable id=\"56\" name=\"world.z_label.R_lines[2,2]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$z_label
-</element>
-</classesNames>
-</variable>
-<variable id=\"57\" name=\"world.z_label.R_lines[2,1]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$z_label
-</element>
-</classesNames>
-</variable>
-<variable id=\"58\" name=\"world.z_label.R_lines[1,3]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$z_label
-</element>
-</classesNames>
-</variable>
-<variable id=\"59\" name=\"world.z_label.R_lines[1,2]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$z_label
-</element>
-</classesNames>
-</variable>
-<variable id=\"60\" name=\"world.z_label.R_lines[1,1]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.World$world
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Visualizers.Internal.Lines$world$z_label
-</element>
-</classesNames>
-</variable>
-<variable id=\"61\" name=\"body.z_a[3]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Absolute angular acceleration of frame_a resolved in frame_a\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Parts.Body$body
-</element>
-</classesNames>
-<attributesValues>
-<quantity string=\"&quot;AngularAcceleration&quot;\">
-</quantity>
-<unit string=\"&quot;rad/s2&quot;\">
-</unit>
-<initialValue string=\"body.z_0_start[3]\">
-</initialValue>
-<fixed string=\"false\">
-</fixed>
-</attributesValues>
-</variable>
-<variable id=\"62\" name=\"body.z_a[2]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Absolute angular acceleration of frame_a resolved in frame_a\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Parts.Body$body
-</element>
-</classesNames>
-<attributesValues>
-<quantity string=\"&quot;AngularAcceleration&quot;\">
-</quantity>
-<unit string=\"&quot;rad/s2&quot;\">
-</unit>
-<initialValue string=\"body.z_0_start[2]\">
-</initialValue>
-<fixed string=\"false\">
-</fixed>
-</attributesValues>
-</variable>
-<variable id=\"63\" name=\"body.z_a[1]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Absolute angular acceleration of frame_a resolved in frame_a\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Parts.Body$body
-</element>
-</classesNames>
-<attributesValues>
-<quantity string=\"&quot;AngularAcceleration&quot;\">
-</quantity>
-<unit string=\"&quot;rad/s2&quot;\">
-</unit>
-<initialValue string=\"body.z_0_start[1]\">
-</initialValue>
-<fixed string=\"false\">
-</fixed>
-</attributesValues>
-</variable>
-<variable id=\"64\" name=\"body.w_a[3]\" variability=\"continuousDummyState\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Absolute angular velocity of frame_a resolved in frame_a\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Parts.Body$body
-</element>
-</classesNames>
-<attributesValues>
-<quantity string=\"&quot;AngularVelocity&quot;\">
-</quantity>
-<unit string=\"&quot;rad/s&quot;\">
-</unit>
-<stateSelect>
-Avoid
-</stateSelect>
-<initialValue string=\"body.w_0_start[3]\">
-</initialValue>
-<fixed string=\"false\">
-</fixed>
-</attributesValues>
-</variable>
-<variable id=\"65\" name=\"body.w_a[2]\" variability=\"continuousDummyState\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Absolute angular velocity of frame_a resolved in frame_a\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Parts.Body$body
-</element>
-</classesNames>
-<attributesValues>
-<quantity string=\"&quot;AngularVelocity&quot;\">
-</quantity>
-<unit string=\"&quot;rad/s&quot;\">
-</unit>
-<stateSelect>
-Avoid
-</stateSelect>
-<initialValue string=\"body.w_0_start[2]\">
-</initialValue>
-<fixed string=\"false\">
-</fixed>
-</attributesValues>
-</variable>
-<variable id=\"66\" name=\"body.w_a[1]\" variability=\"continuousDummyState\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Absolute angular velocity of frame_a resolved in frame_a\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Parts.Body$body
-</element>
-</classesNames>
-<attributesValues>
-<quantity string=\"&quot;AngularVelocity&quot;\">
-</quantity>
-<unit string=\"&quot;rad/s&quot;\">
-</unit>
-<stateSelect>
-Avoid
-</stateSelect>
-<initialValue string=\"body.w_0_start[1]\">
-</initialValue>
-<fixed string=\"false\">
-</fixed>
-</attributesValues>
-</variable>
-<variable id=\"67\" name=\"body.frame_a.R.T[3,3]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Transformation matrix from world frame to local frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Parts.Body$body
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Interfaces.Frame_a
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Frames.Orientation
-</element>
-</classesNames>
-</variable>
-<variable id=\"68\" name=\"body.frame_a.R.T[3,2]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Transformation matrix from world frame to local frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Parts.Body$body
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Interfaces.Frame_a
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Frames.Orientation
-</element>
-</classesNames>
-</variable>
-<variable id=\"69\" name=\"body.frame_a.R.T[3,1]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Transformation matrix from world frame to local frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Parts.Body$body
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Interfaces.Frame_a
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Frames.Orientation
-</element>
-</classesNames>
-</variable>
-<variable id=\"70\" name=\"body.frame_a.R.T[2,3]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Transformation matrix from world frame to local frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Parts.Body$body
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Interfaces.Frame_a
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Frames.Orientation
-</element>
-</classesNames>
-</variable>
-<variable id=\"71\" name=\"body.frame_a.R.T[2,2]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Transformation matrix from world frame to local frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Parts.Body$body
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Interfaces.Frame_a
-</element>
-<element>
-Modelica.Mechanics.MultiBody.Frames.Orientation
-</element>
-</classesNames>
-</variable>
-<variable id=\"72\" name=\"body.frame_a.R.T[2,1]\" variability=\"continuous\" direction=\"none\" type=\"Real\" fixed=\"false\" flow=\"NonConnector\" stream=\"NonStreamConnector\" comment=\"Transformation matrix from world frame to local frame\">
-<classesNames>
-<element>
-Modelica.Mechanics.MultiBody.Examples.Elementary.Pendulum
-</element>
-<element>
-Modelica.Mechanics.Mu
...[truncated 747140 chars]...
PARAM, [DEFAULT VALUE])))[3] w VAR UNBOUND}).Modelica.Mechanics.MultiBody.Frames.nullRotationfunction Modelica.Mechanics.MultiBody.Frames.nullRotation &quot;Inline before index reduction&quot; &quot;Return orientation object that does not rotate a frame&quot;
-output Modelica.Mechanics.MultiBody.Frames.Orientation R &quot;Orientation object such that frame 1 and frame 2 are identical&quot;;
-algorithm
-R := Modelica.Mechanics.MultiBody.Frames.Orientation({{1.0, 0.0, 0.0}, {0.0, 1.0, 0.0}, {0.0, 0.0, 1.0}}, {0.0, 0.0, 0.0});
-end Modelica.Mechanics.MultiBody.Frames.nullRotation;
-
-
-</ModelicaImplementation>
-</function>
-<function name=\"Modelica.Mechanics.MultiBody.Frames.planarRotation\">
-<ModelicaImplementation>function(e :: array(Real(String unit PARAM DAE.EQBOUND(&quot;1&quot;, SOME(&quot;1&quot;), C_PARAM, [DEFAULT VALUE])))[3] * angle :: Real(String quantity PARAM DAE.EQBOUND(&quot;Angle&quot;, SOME(&quot;Angle&quot;), C_PARAM, [DEFAULT VALUE]), String unit PARAM DAE.EQBOUND(&quot;rad&quot;, SOME(&quot;rad&quot;), C_PARAM, [DEFAULT VALUE]), String displayUnit PARAM DAE.EQBOUND(&quot;deg&quot;, SOME(&quot;deg&quot;), C_PARAM, [DEFAULT VALUE])) * der_angle :: Real(String quantity PARAM DAE.EQBOUND(&quot;AngularVelocity&quot;, SOME(&quot;AngularVelocity&quot;), C_PARAM, [DEFAULT VALUE]), String unit PARAM DAE.EQBOUND(&quot;rad/s&quot;, SOME(&quot;rad/s&quot;), C_PARAM, [DEFAULT VALUE]))) =&gt; composite(record{array(array(Real)[3])[3] T VAR UNBOUND, array(Real(String quantity PARAM DAE.EQBOUND(&quot;AngularVelocity&quot;, SOME(&quot;AngularVelocity&quot;), C_PARAM, [DEFAULT VALUE]), String unit PARAM DAE.EQBOUND(&quot;rad/s&quot;, SOME(&quot;rad/s&quot;), C_PARAM, [DEFAULT VALUE])))[3] w VAR UNBOUND}).Modelica.Mechanics.MultiBody.Frames.planarRotationfunction Modelica.Mechanics.MultiBody.Frames.planarRotation &quot;Inline before index reduction&quot; &quot;Return orientation object of a planar rotation&quot;
-input Real[3] e(unit = &quot;1&quot;) &quot;Normalized axis of rotation (must have length=1)&quot;;
-input Real angle(quantity = &quot;Angle&quot;, unit = &quot;rad&quot;, displayUnit = &quot;deg&quot;) &quot;Rotation angle to rotate frame 1 into frame 2 along axis e&quot;;
-input Real der_angle(quantity = &quot;AngularVelocity&quot;, unit = &quot;rad/s&quot;) &quot;= der(angle)&quot;;
-output Modelica.Mechanics.MultiBody.Frames.Orientation R &quot;Orientation object to rotate frame 1 into frame 2&quot;;
-algorithm
-R := Modelica.Mechanics.MultiBody.Frames.Orientation({{e[1] ^ 2.0 + (1.0 - e[1] ^ 2.0) * cos(angle), (e[1] - e[1] * cos(angle)) * e[2] + e[3] * sin(angle), (e[1] - e[1] * cos(angle)) * e[3] - e[2] * sin(angle)}, {(e[2] - e[2] * cos(angle)) * e[1] - e[3] * sin(angle), e[2] ^ 2.0 + (1.0 - e[2] ^ 2.0) * cos(angle), (e[2] - e[2] * cos(angle)) * e[3] + e[1] * sin(angle)}, {(e[3] - e[3] * cos(angle)) * e[1] + e[2] * sin(angle), (e[3] - e[3] * cos(angle)) * e[2] - e[1] * sin(angle), e[3] ^ 2.0 + (1.0 - e[3] ^ 2.0) * cos(angle)}}, {e[1] * der_angle, e[2] * der_angle, e[3] * der_angle});
-end Modelica.Mechanics.MultiBody.Frames.planarRotation;
-
-
-</ModelicaImplementation>
-</function>
-<function name=\"Modelica.Mechanics.MultiBody.Frames.planarRotationAngle\">
-<ModelicaImplementation>function(e :: array(Real(String unit PARAM DAE.EQBOUND(&quot;1&quot;, SOME(&quot;1&quot;), C_PARAM, [DEFAULT VALUE])))[3] * v1 :: array(Real)[3] * v2 :: array(Real)[3]) =&gt; Real(String quantity PARAM DAE.EQBOUND(&quot;Angle&quot;, SOME(&quot;Angle&quot;), C_PARAM, [DEFAULT VALUE]), String unit PARAM DAE.EQBOUND(&quot;rad&quot;, SOME(&quot;rad&quot;), C_PARAM, [DEFAULT VALUE]), String displayUnit PARAM DAE.EQBOUND(&quot;deg&quot;, SOME(&quot;deg&quot;), C_PARAM, [DEFAULT VALUE])).Modelica.Mechanics.MultiBody.Frames.planarRotationAnglefunction Modelica.Mechanics.MultiBody.Frames.planarRotationAngle &quot;Inline before index reduction&quot; &quot;Return angle of a planar rotation, given the rotation axis and the representations of a vector in frame 1 and frame 2&quot;
-input Real[3] e(unit = &quot;1&quot;) &quot;Normalized axis of rotation to rotate frame 1 around e into frame 2 (must have length=1)&quot;;
-input Real[3] v1 &quot;A vector v resolved in frame 1 (shall not be parallel to e)&quot;;
-input Real[3] v2 &quot;Vector v resolved in frame 2, i.e., v2 = resolve2(planarRotation(e,angle),v1)&quot;;
-output Real angle(quantity = &quot;Angle&quot;, unit = &quot;rad&quot;, displayUnit = &quot;deg&quot;) &quot;Rotation angle to rotate frame 1 into frame 2 along axis e in the range: -pi &lt;= angle &lt;= pi&quot;;
-algorithm
-angle := atan2((e[1] * v1[3] - e[3] * v1[1]) * v2[2] - (e[1] * v1[2] - e[2] * v1[1]) * v2[3] - (e[2] * v1[3] - e[3] * v1[2]) * v2[1], v1[1] * v2[1] + v1[2] * v2[2] + v1[3] * v2[3] + ((-e[2]) * v1[2] - e[3] * v1[3] - e[1] * v1[1]) * (e[1] * v2[1] + e[2] * v2[2] + e[3] * v2[3]));
-end Modelica.Mechanics.MultiBody.Frames.planarRotationAngle;
-
-
-</ModelicaImplementation>
-</function>
-<function name=\"Modelica.Mechanics.MultiBody.Frames.resolve1\">
-<ModelicaImplementation>function(R :: composite(record{array(array(Real)[3])[3] T VAR UNBOUND, array(Real(String quantity PARAM DAE.EQBOUND(&quot;AngularVelocity&quot;, SOME(&quot;AngularVelocity&quot;), C_PARAM, [DEFAULT VALUE]), String unit PARAM DAE.EQBOUND(&quot;rad/s&quot;, SOME(&quot;rad/s&quot;), C_PARAM, [DEFAULT VALUE])))[3] w VAR UNBOUND}) * v2 :: array(Real)[3]) =&gt; array(Real)[3].Modelica.Mechanics.MultiBody.Frames.resolve1function Modelica.Mechanics.MultiBody.Frames.resolve1 &quot;Inline after index reduction&quot; &quot;Transform vector from frame 2 to frame 1&quot;
-input Modelica.Mechanics.MultiBody.Frames.Orientation R &quot;Orientation object to rotate frame 1 into frame 2&quot;;
-input Real[3] v2 &quot;Vector in frame 2&quot;;
-output Real[3] v1 &quot;Vector in frame 1&quot;;
-algorithm
-v1 := {R.T[1,1] * v2[1] + R.T[2,1] * v2[2] + R.T[3,1] * v2[3], R.T[1,2] * v2[1] + R.T[2,2] * v2[2] + R.T[3,2] * v2[3], R.T[1,3] * v2[1] + R.T[2,3] * v2[2] + R.T[3,3] * v2[3]};
-end Modelica.Mechanics.MultiBody.Frames.resolve1;
-
-
-</ModelicaImplementation>
-</function>
-<function name=\"Modelica.Mechanics.MultiBody.Frames.resolve2\">
-<ModelicaImplementation>function(R :: composite(record{array(array(Real)[3])[3] T VAR UNBOUND, array(Real(String quantity PARAM DAE.EQBOUND(&quot;AngularVelocity&quot;, SOME(&quot;AngularVelocity&quot;), C_PARAM, [DEFAULT VALUE]), String unit PARAM DAE.EQBOUND(&quot;rad/s&quot;, SOME(&quot;rad/s&quot;), C_PARAM, [DEFAULT VALUE])))[3] w VAR UNBOUND}) * v1 :: array(Real)[3]) =&gt; array(Real)[3].Modelica.Mechanics.MultiBody.Frames.resolve2function Modelica.Mechanics.MultiBody.Frames.resolve2 &quot;Inline after index reduction&quot; &quot;Transform vector from frame 1 to frame 2&quot;
-input Modelica.Mechanics.MultiBody.Frames.Orientation R &quot;Orientation object to rotate frame 1 into frame 2&quot;;
-input Real[3] v1 &quot;Vector in frame 1&quot;;
-output Real[3] v2 &quot;Vector in frame 2&quot;;
-algorithm
-v2 := {R.T[1,1] * v1[1] + R.T[1,2] * v1[2] + R.T[1,3] * v1[3], R.T[2,1] * v1[1] + R.T[2,2] * v1[2] + R.T[2,3] * v1[3], R.T[3,1] * v1[1] + R.T[3,2] * v1[2] + R.T[3,3] * v1[3]};
-end Modelica.Mechanics.MultiBody.Frames.resolve2;
-
-
-</ModelicaImplementation>
-</function>
-<function name=\"Modelica.Mechanics.MultiBody.Frames.to_Q\">
-<ModelicaImplementation>function(R :: composite(record{array(array(Real)[3])[3] T VAR UNBOUND, array(Real(String quantity PARAM DAE.EQBOUND(&quot;AngularVelocity&quot;, SOME(&quot;AngularVelocity&quot;), C_PARAM, [DEFAULT VALUE]), String unit PARAM DAE.EQBOUND(&quot;rad/s&quot;, SOME(&quot;rad/s&quot;), C_PARAM, [DEFAULT VALUE])))[3] w VAR UNBOUND}) * Q_guess :: array(Real)[4]) =&gt; array(Real)[4].Modelica.Mechanics.MultiBody.Frames.to_Qfunction Modelica.Mechanics.MultiBody.Frames.to_Q &quot;Inline before index reduction&quot; &quot;Return quaternion orientation object Q from orientation object R&quot;
-input Modelica.Mechanics.MultiBody.Frames.Orientation R &quot;Orientation object to rotate frame 1 into frame 2&quot;;
-input Real[4] Q_guess = {0.0, 0.0, 0.0, 1.0} &quot;Guess value for output Q (there are 2 solutions; the one closer to Q_guess is used&quot;;
-output Real[4] Q &quot;Quaternions orientation object to rotate frame 1 into frame 2&quot;;
-algorithm
-Q := Modelica.Mechanics.MultiBody.Frames.Quaternions.from_T({{R.T[1,1], R.T[1,2], R.T[1,3]}, {R.T[2,1], R.T[2,2], R.T[2,3]}, {R.T[3,1], R.T[3,2], R.T[3,3]}}, {Q_guess[1], Q_guess[2], Q_guess[3], Q_guess[4]});
-end Modelica.Mechanics.MultiBody.Frames.to_Q;
-
-
-</ModelicaImplementation>
-</function>
-<function name=\"Modelica.Mechanics.MultiBody.Frames.Internal.resolve1_der\">
-<ModelicaImplementation>function(R :: composite(record{array(array(Real)[3])[3] T VAR UNBOUND, array(Real(String quantity PARAM DAE.EQBOUND(&quot;AngularVelocity&quot;, SOME(&quot;AngularVelocity&quot;), C_PARAM, [DEFAULT VALUE]), String unit PARAM DAE.EQBOUND(&quot;rad/s&quot;, SOME(&quot;rad/s&quot;), C_PARAM, [DEFAULT VALUE])))[3] w VAR UNBOUND}) * v2 :: array(Real)[3] * v2_der :: array(Real)[3]) =&gt; array(Real)[3].Modelica.Mechanics.MultiBody.Frames.Internal.resolve1_derfunction Modelica.Mechanics.MultiBody.Frames.Internal.resolve1_der &quot;Inline before index reduction&quot; &quot;Derivative of function Frames.resolve1(..)&quot;
-input Modelica.Mechanics.MultiBody.Frames.Orientation R &quot;Orientation object to rotate frame 1 into frame 2&quot;;
-input Real[3] v2 &quot;Vector resolved in frame 2&quot;;
-input Real[3] v2_der &quot;= der(v2)&quot;;
-output Real[3] v1_der &quot;Derivative of vector v resolved in frame 1&quot;;
-algorithm
-v1_der := Modelica.Mechanics.MultiBody.Frames.resolve1(R, {v2_der[1] + R.w[2] * v2[3] - R.w[3] * v2[2], v2_der[2] + R.w[3] * v2[1] - R.w[1] * v2[3], v2_der[3] + R.w[1] * v2[2] - R.w[2] * v2[1]});
-end Modelica.Mechanics.MultiBody.Frames.Internal.resolve1_der;
-
-
-</ModelicaImplementation>
-</function>
-<function name=\"Modelica.Mechanics.MultiBody.Frames.Internal.resolve2_der\">
-<ModelicaImplementation>function(R :: composite(record{array(array(Real)[3])[3] T VAR UNBOUND, array(Real(String quantity PARAM DAE.EQBOUND(&quot;AngularVelocity&quot;, SOME(&quot;AngularVelocity&quot;), C_PARAM, [DEFAULT VALUE]), String unit PARAM DAE.EQBOUND(&quot;rad/s&quot;, SOME(&quot;rad/s&quot;), C_PARAM, [DEFAULT VALUE])))[3] w VAR UNBOUND}) * v1 :: array(Real)[3] * v1_der :: array(Real)[3]) =&gt; array(Real)[3].Modelica.Mechanics.MultiBody.Frames.Internal.resolve2_derfunction Modelica.Mechanics.MultiBody.Frames.Internal.resolve2_der &quot;Inline before index reduction&quot; &quot;Derivative of function Frames.resolve2(..)&quot;
-input Modelica.Mechanics.MultiBody.Frames.Orientation R &quot;Orientation object to rotate frame 1 into frame 2&quot;;
-input Real[3] v1 &quot;Vector resolved in frame 1&quot;;
-input Real[3] v1_der &quot;= der(v1)&quot;;
-output Real[3] v2_der &quot;Derivative of vector v resolved in frame 2&quot;;
-algorithm
-v2_der := Modelica.Mechanics.MultiBody.Frames.resolve2(R, {v1_der[1], v1_der[2], v1_der[3]}) - cross({R.w[1], R.w[2], R.w[3]}, Modelica.Mechanics.MultiBody.Frames.resolve2(R, {v1[1], v1[2], v1[3]}));
-end Modelica.Mechanics.MultiBody.Frames.Internal.resolve2_der;
-
-
-</ModelicaImplementation>
-</function>
-<function name=\"Modelica.Mechanics.MultiBody.Frames.Orientation.equalityConstraint\">
-<ModelicaImplementation>function(R1 :: composite(record{array(array(Real)[3])[3] T VAR UNBOUND, array(Real(String quantity PARAM DAE.EQBOUND(&quot;AngularVelocity&quot;, SOME(&quot;AngularVelocity&quot;), C_PARAM, [DEFAULT VALUE]), String unit PARAM DAE.EQBOUND(&quot;rad/s&quot;, SOME(&quot;rad/s&quot;), C_PARAM, [DEFAULT VALUE])))[3] w VAR UNBOUND}) * R2 :: composite(record{array(array(Real)[3])[3] T VAR UNBOUND, array(Real(String quantity PARAM DAE.EQBOUND(&quot;AngularVelocity&quot;, SOME(&quot;AngularVelocity&quot;), C_PARAM, [DEFAULT VALUE]), String unit PARAM DAE.EQBOUND(&quot;rad/s&quot;, SOME(&quot;rad/s&quot;), C_PARAM, [DEFAULT VALUE])))[3] w VAR UNBOUND})) =&gt; array(Real)[3].Modelica.Mechanics.MultiBody.Frames.Orientation.equalityConstraintfunction Modelica.Mechanics.MultiBody.Frames.Orientation.equalityConstraint &quot;Inline before index reduction&quot; &quot;Return the constraint residues to express that two frames have the same orientation&quot;
-input Modelica.Mechanics.MultiBody.Frames.Orientation R1 &quot;Orientation object to rotate frame 0 into frame 1&quot;;
-input Modelica.Mechanics.MultiBody.Frames.Orientation R2 &quot;Orientation object to rotate frame 0 into frame 2&quot;;
-output Real[3] residue &quot;The rotation angles around x-, y-, and z-axis of frame 1 to rotate frame 1 into frame 2 for a small rotation (should be zero)&quot;;
-algorithm
-residue := {atan2((R1.T[1,2] * R1.T[2,3] - R1.T[1,3] * R1.T[2,2]) * R2.T[2,1] + (R1.T[1,3] * R1.T[2,1] - R1.T[1,1] * R1.T[2,3]) * R2.T[2,2] + (R1.T[1,1] * R1.T[2,2] - R1.T[1,2] * R1.T[2,1]) * R2.T[2,3], R1.T[1,1] * R2.T[1,1] + R1.T[1,2] * R2.T[1,2] + R1.T[1,3] * R2.T[1,3]), atan2((R1.T[1,1] * R1.T[2,3] - R1.T[1,3] * R1.T[2,1]) * R2.T[1,2] - (R1.T[1,1] * R1.T[2,2] - R1.T[1,2] * R1.T[2,1]) * R2.T[1,3] - (R1.T[1,2] * R1.T[2,3] - R1.T[1,3] * R1.T[2,2]) * R2.T[1,1], R1.T[2,1] * R2.T[2,1] + R1.T[2,2] * R2.T[2,2] + R1.T[2,3] * R2.T[2,3]), atan2(R1.T[2,1] * R2.T[1,1] + R1.T[2,2] * R2.T[1,2] + R1.T[2,3] * R2.T[1,3], R1.T[3,1] * R2.T[3,1] + R1.T[3,2] * R2.T[3,2] + R1.T[3,3] * R2.T[3,3])};
-end Modelica.Mechanics.MultiBody.Frames.Orientation.equalityConstraint;
-
-
-</ModelicaImplementation>
-</function>
-<function name=\"Modelica.Mechanics.MultiBody.Frames.Quaternions.angularVelocity2\">
-<ModelicaImplementation>function(Q :: array(Real)[4] * der_Q :: array(Real(String unit PARAM DAE.EQBOUND(&quot;1/s&quot;, SOME(&quot;1/s&quot;), C_PARAM, [DEFAULT VALUE])))[4]) =&gt; array(Real(String quantity PARAM DAE.EQBOUND(&quot;AngularVelocity&quot;, SOME(&quot;AngularVelocity&quot;), C_PARAM, [DEFAULT VALUE]), String unit PARAM DAE.EQBOUND(&quot;rad/s&quot;, SOME(&quot;rad/s&quot;), C_PARAM, [DEFAULT VALUE])))[3].Modelica.Mechanics.MultiBody.Frames.Quaternions.angularVelocity2function Modelica.Mechanics.MultiBody.Frames.Quaternions.angularVelocity2 &quot;Inline before index reduction&quot; &quot;Compute angular velocity resolved in frame 2 from quaternions orientation object and its derivative&quot;
-input Real[4] Q &quot;Quaternions orientation object to rotate frame 1 into frame 2&quot;;
-input Real[4] der_Q(unit = &quot;1/s&quot;) &quot;Derivative of Q&quot;;
-output Real[3] w(quantity = &quot;AngularVelocity&quot;, unit = &quot;rad/s&quot;) &quot;Angular velocity of frame 2 with respect to frame 1 resolved in frame 2&quot;;
-algorithm
-w := {(Q[4] * der_Q[1] + Q[3] * der_Q[2] - Q[2] * der_Q[3] - Q[1] * der_Q[4]) * 2.0, (Q[4] * der_Q[2] - Q[3] * der_Q[1] + Q[1] * der_Q[3] - Q[2] * der_Q[4]) * 2.0, (Q[2] * der_Q[1] - Q[1] * der_Q[2] + Q[4] * der_Q[3] - Q[3] * der_Q[4]) * 2.0};
-end Modelica.Mechanics.MultiBody.Frames.Quaternions.angularVelocity2;
-
-
-</ModelicaImplementation>
-</function>
-<function name=\"Modelica.Mechanics.MultiBody.Frames.Quaternions.from_T\">
-<ModelicaImplementation>function(T :: array(array(Real)[3])[3] * Q_guess :: array(Real)[4]) =&gt; array(Real)[4].Modelica.Mechanics.MultiBody.Frames.Quaternions.from_Tfunction Modelica.Mechanics.MultiBody.Frames.Quaternions.from_T&quot;Inline if necessary&quot; &quot;Return quaternion orientation object Q from transformation matrix T&quot;
-input Real[3, 3] T &quot;Transformation matrix to transform vector from frame 1 to frame 2 (v2=T*v1)&quot;;
-input Real[4] Q_guess = {0.0, 0.0, 0.0, 1.0} &quot;Guess value for Q (there are 2 solutions; the one close to Q_guess is used&quot;;
-output Real[4] Q &quot;Quaternions orientation object to rotate frame 1 into frame 2 (Q and -Q have same transformation matrix)&quot;;
-protected Real paux;
-protected Real paux4;
-protected Real c1;
-protected Real c2;
-protected Real c3;
-protected Real c4;
-protected constant Real p4limit = 0.1;
-protected constant Real c4limit = 0.04000000000000001;
-algorithm
-c1 := 1.0 + T[1,1] + (-T[2,2]) - T[3,3];
-c2 := 1.0 + T[2,2] + (-T[1,1]) - T[3,3];
-c3 := 1.0 + T[3,3] + (-T[1,1]) - T[2,2];
-c4 := 1.0 + T[1,1] + T[2,2] + T[3,3];
-if c4 &gt; 0.04000000000000001 or c4 &gt; c1 and c4 &gt; c2 and c4 &gt; c3 then
-paux := 0.5 * sqrt(c4);
-paux4 := 4.0 * paux;
-Q := {(T[2,3] - T[3,2]) / paux4, (T[3,1] - T[1,3]) / paux4, (T[1,2] - T[2,1]) / paux4, paux};
-elseif c1 &gt; c2 and c1 &gt; c3 and c1 &gt; c4 then
-paux := 0.5 * sqrt(c1);
-paux4 := 4.0 * paux;
-Q := {paux, (T[1,2] + T[2,1]) / paux4, (T[1,3] + T[3,1]) / paux4, (T[2,3] - T[3,2]) / paux4};
-elseif c2 &gt; c1 and c2 &gt; c3 and c2 &gt; c4 then
-paux := 0.5 * sqrt(c2);
-paux4 := 4.0 * paux;
-Q := {(T[1,2] + T[2,1]) / paux4, paux, (T[2,3] + T[3,2]) / paux4, (T[3,1] - T[1,3]) / paux4};
-else
-paux := 0.5 * sqrt(c3);
-paux4 := 4.0 * paux;
-Q := {(T[1,3] + T[3,1]) / paux4, (T[2,3] + T[3,2]) / paux4, paux, (T[1,2] - T[2,1]) / paux4};
-end if;
-if Q[1] * Q_guess[1] + Q[2] * Q_guess[2] + Q[3] * Q_guess[3] + Q[4] * Q_guess[4] &lt; 0.0 then
-Q := {-Q[1], -Q[2], -Q[3], -Q[4]};
-end if;
-end Modelica.Mechanics.MultiBody.Frames.Quaternions.from_T;
-
-
-</ModelicaImplementation>
-</function>
-<function name=\"Modelica.Mechanics.MultiBody.Frames.Quaternions.nullRotation\">
-<ModelicaImplementation>function() =&gt; array(Real)[4].Modelica.Mechanics.MultiBody.Frames.Quaternions.nullRotationfunction Modelica.Mechanics.MultiBody.Frames.Quaternions.nullRotation &quot;Inline before index reduction&quot; &quot;Return quaternion orientation object that does not rotate a frame&quot;
-output Real[4] Q &quot;Quaternions orientation object to rotate frame 1 into frame 2&quot;;
-algorithm
-Q := {0.0, 0.0, 0.0, 1.0};
-end Modelica.Mechanics.MultiBody.Frames.Quaternions.nullRotation;
-
-
-</ModelicaImplementation>
-</function>
-<function name=\"Modelica.Mechanics.MultiBody.Frames.Quaternions.orientationConstraint\">
-<ModelicaImplementation>function(Q :: array(Real)[4]) =&gt; array(Real)[1].Modelica.Mechanics.MultiBody.Frames.Quaternions.orientationConstraintfunction Modelica.Mechanics.MultiBody.Frames.Quaternions.orientationConstraint &quot;Inline before index reduction&quot; &quot;Return residues of orientation constraints (shall be zero)&quot;
-input Real[4] Q &quot;Quaternions orientation object to rotate frame 1 into frame 2&quot;;
-output Real[1] residue &quot;Residue constraint (shall be zero)&quot;;
-algorithm
-residue := {-1.0 + Q[1] ^ 2.0 + Q[2] ^ 2.0 + Q[3] ^ 2.0 + Q[4] ^ 2.0};
-end Modelica.Mechanics.MultiBody.Frames.Quaternions.orientationConstraint;
-
-
-</ModelicaImplementation>
-</function>
-<function name=\"Modelica.Mechanics.MultiBody.Frames.TransformationMatrices.absoluteRotation\">
-<ModelicaImplementation>function(T1 :: array(array(Real)[3])[3] * T_rel :: array(array(Real)[3])[3]) =&gt; array(array(Real)[3])[3].Modelica.Mechanics.MultiBody.Frames.TransformationMatrices.absoluteRotationfunction Modelica.Mechanics.MultiBody.Frames.TransformationMatrices.absoluteRotation &quot;Inline before index reduction&quot; &quot;Return absolute orientation object from another absolute and a relative orientation object&quot;
-input Real[3, 3] T1 &quot;Orientation object to rotate frame 0 into frame 1&quot;;
-input Real[3, 3] T_rel &quot;Orientation object to rotate frame 1 into frame 2&quot;;
-output Real[3, 3] T2 &quot;Orientation object to rotate frame 0 into frame 2&quot;;
-algorithm
-T2 := {{T_rel[1,1] * T1[1,1] + T_rel[1,2] * T1[2,1] + T_rel[1,3] * T1[3,1], T_rel[1,1] * T1[1,2] + T_rel[1,2] * T1[2,2] + T_rel[1,3] * T1[3,2], T_rel[1,1] * T1[1,3] + T_rel[1,2] * T1[2,3] + T_rel[1,3] * T1[3,3]}, {T_rel[2,1] * T1[1,1] + T_rel[2,2] * T1[2,1] + T_rel[2,3] * T1[3,1], T_rel[2,1] * T1[1,2] + T_rel[2,2] * T1[2,2] + T_rel[2,3] * T1[3,2], T_rel[2,1] * T1[1,3] + T_rel[2,2] * T1[2,3] + T_rel[2,3] * T1[3,3]}, {T_rel[3,1] * T1[1,1] + T_rel[3,2] * T1[2,1] + T_rel[3,3] * T1[3,1], T_rel[3,1] * T1[1,2] + T_rel[3,2] * T1[2,2] + T_rel[3,3] * T1[3,2], T_rel[3,1] * T1[1,3] + T_rel[3,2] * T1[2,3] + T_rel[3,3] * T1[3,3]}};
-end Modelica.Mechanics.MultiBody.Frames.TransformationMatrices.absoluteRotation;
-
-
-</ModelicaImplementation>
-</function>
-<function name=\"Modelica.Mechanics.MultiBody.Frames.TransformationMatrices.axisRotation\">
-<ModelicaImplementation>function(axis :: Integer(Integer min PARAM DAE.EQBOUND(1, SOME(1), C_PARAM, [DEFAULT VALUE]), Integer max PARAM DAE.EQBOUND(3, SOME(3), C_PARAM, [DEFAULT VALUE])) * angle :: Real(String quantity PARAM DAE.EQBOUND(&quot;Angle&quot;, SOME(&quot;Angle&quot;), C_PARAM, [DEFAULT VALUE]), String unit PARAM DAE.EQBOUND(&quot;rad&quot;, SOME(&quot;rad&quot;), C_PARAM, [DEFAULT VALUE]), String displayUnit PARAM DAE.EQBOUND(&quot;deg&quot;, SOME(&quot;deg&quot;), C_PARAM, [DEFAULT VALUE]))) =&gt; array(array(Real)[3])[3].Modelica.Mechanics.MultiBody.Frames.TransformationMatrices.axisRotationfunction Modelica.Mechanics.MultiBody.Frames.TransformationMatrices.axisRotation &quot;Inline before index reduction&quot; &quot;Return rotation object to rotate around one frame axis&quot;
-input Integer axis(min = 1, max = 3) &quot;Rotate around 'axis' of frame 1&quot;;
-input Real angle(quantity = &quot;Angle&quot;, unit = &quot;rad&quot;, displayUnit = &quot;deg&quot;) &quot;Rotation angle to rotate frame 1 into frame 2 along 'axis' of frame 1&quot;;
-output Real[3, 3] T &quot;Orientation object to rotate frame 1 into frame 2&quot;;
-algorithm
-T := if axis == 1 then {{1.0, 0.0, 0.0}, {0.0, cos(angle), sin(angle)}, {0.0, -sin(angle), cos(angle)}} else if axis == 2 then {{cos(angle), 0.0, -sin(angle)}, {0.0, 1.0, 0.0}, {sin(angle), 0.0, cos(angle)}} else {{cos(angle), sin(angle), 0.0}, {-sin(angle), cos(angle), 0.0}, {0.0, 0.0, 1.0}};
-end Modelica.Mechanics.MultiBody.Frames.TransformationMatrices.axisRotation;
-
-
-</ModelicaImplementation>
-</function>
-<function name=\"Modelica.Mechanics.MultiBody.Frames.TransformationMatrices.from_nxy\">
-<ModelicaImplementation>function(n_x :: array(Real(String unit PARAM DAE.EQBOUND(&quot;1&quot;, SOME(&quot;1&quot;), C_PARAM, [DEFAULT VALUE])))[3] * n_y :: array(Real(String unit PARAM DAE.EQBOUND(&quot;1&quot;, SOME(&quot;1&quot;), C_PARAM, [DEFAULT VALUE])))[3]) =&gt; array(array(Real)[3])[3].Modelica.Mechanics.MultiBody.Frames.TransformationMatrices.from_nxyfunction Modelica.Mechanics.MultiBody.Frames.TransformationMatrices.from_nxy&quot;Inline if necessary&quot; &quot;Return orientation object from n_x and n_y vectors&quot;
-input Real[3] n_x(unit = &quot;1&quot;) &quot;Vector in direction of x-axis of frame 2, resolved in frame 1&quot;;
-input Real[3] n_y(unit = &quot;1&quot;) &quot;Vector in direction of y-axis of frame 2, resolved in frame 1&quot;;
-output Real[3, 3] T &quot;Orientation object to rotate frame 1 into frame 2&quot;;
-protected Real abs_n_x = sqrt(n_x[1] ^ 2.0 + n_x[2] ^ 2.0 + n_x[3] ^ 2.0);
-protected Real[3] e_x(unit = &quot;1&quot;) = if abs_n_x &lt; 1e-10 then {1.0, 0.0, 0.0} else {n_x[1] / abs_n_x, n_x[2] / abs_n_x, n_x[3] / abs_n_x};
-protected Real[3] n_z_aux(unit = &quot;1&quot;) = {e_x[2] * n_y[3] - e_x[3] * n_y[2], e_x[3] * n_y[1] - e_x[1] * n_y[3], e_x[1] * n_y[2] - e_x[2] * n_y[1]};
-protected Real[3] n_y_aux(unit = &quot;1&quot;) = if n_z_aux[1] ^ 2.0 + n_z_aux[2] ^ 2.0 + n_z_aux[3] ^ 2.0 &gt; 1e-06 then {n_y[1], n_y[2], n_y[3]} else if abs(e_x[1]) &gt; 1e-06 then {0.0, 1.0, 0.0} else {1.0, 0.0, 0.0};
-protected Real[3] e_z_aux(unit = &quot;1&quot;) = {e_x[2] * n_y_aux[3] - e_x[3] * n_y_aux[2], e_x[3] * n_y_aux[1] - e_x[1] * n_y_aux[3], e_x[1] * n_y_aux[2] - e_x[2] * n_y_aux[1]};
-protected Real[3] e_z(unit = &quot;1&quot;) = {e_z_aux[1] / sqrt(e_z_aux[1] ^ 2.0 + e_z_aux[2] ^ 2.0 + e_z_aux[3] ^ 2.0), e_z_aux[2] / sqrt(e_z_aux[1] ^ 2.0 + e_z_aux[2] ^ 2.0 + e_z_aux[3] ^ 2.0), e_z_aux[3] / sqrt(e_z_aux[1] ^ 2.0 + e_z_aux[2] ^ 2.0 + e_z_aux[3] ^ 2.0)};
-algorithm
-T := {{e_x[1], e_x[2], e_x[3]}, {e_z[2] * e_x[3] - e_z[3] * e_x[2], e_z[3] * e_x[1] - e_z[1] * e_x[3], e_z[1] * e_x[2] - e_z[2] * e_x[1]}, {e_z[1], e_z[2], e_z[3]}};
-end Modelica.Mechanics.MultiBody.Frames.TransformationMatrices.from_nxy;
-
-
-</ModelicaImplementation>
-</function>
-<function name=\"Modelica.Mechanics.MultiBody.Frames.TransformationMatrices.planarRotation\">
-<ModelicaImplementation>function(e :: array(Real(String unit PARAM DAE.EQBOUND(&quot;1&quot;, SOME(&quot;1&quot;), C_PARAM, [DEFAULT VALUE])))[3] * angle :: Real(String quantity PARAM DAE.EQBOUND(&quot;Angle&quot;, SOME(&quot;Angle&quot;), C_PARAM, [DEFAULT VALUE]), String unit PARAM DAE.EQBOUND(&quot;rad&quot;, SOME(&quot;rad&quot;), C_PARAM, [DEFAULT VALUE]), String displayUnit PARAM DAE.EQBOUND(&quot;deg&quot;, SOME(&quot;deg&quot;), C_PARAM, [DEFAULT VALUE]))) =&gt; array(array(Real)[3])[3].Modelica.Mechanics.MultiBody.Frames.TransformationMatrices.planarRotationfunction Modelica.Mechanics.MultiBody.Frames.TransformationMatrices.planarRotation &quot;Inline before index reduction&quot; &quot;Return orientation object of a planar rotation&quot;
-input Real[3] e(unit = &quot;1&quot;) &quot;Normalized axis of rotation (must have length=1)&quot;;
-input Real angle(quantity = &quot;Angle&quot;, unit = &quot;rad&quot;, displayUnit = &quot;deg&quot;) &quot;Rotation angle to rotate frame 1 into frame 2 along axis e&quot;;
-output Real[3, 3] T &quot;Orientation object to rotate frame 1 into frame 2&quot;;
-algorithm
-T := {{e[1] ^ 2.0 + (1.0 - e[1] ^ 2.0) * cos(angle), (e[1] - e[1] * cos(angle)) * e[2] + e[3] * sin(angle), (e[1] - e[1] * cos(angle)) * e[3] - e[2] * sin(angle)}, {(e[2] - e[2] * cos(angle)) * e[1] - e[3] * sin(angle), e[2] ^ 2.0 + (1.0 - e[2] ^ 2.0) * cos(angle), (e[2] - e[2] * cos(angle)) * e[3] + e[1] * sin(angle)}, {(e[3] - e[3] * cos(angle)) * e[1] + e[2] * sin(angle), (e[3] - e[3] * cos(angle)) * e[2] - e[1] * sin(angle), e[3] ^ 2.0 + (1.0 - e[3] ^ 2.0) * cos(angle)}};
-end Modelica.Mechanics.MultiBody.Frames.TransformationMatrices.planarRotation;
-
-
-</ModelicaImplementation>
-</function>
-<function name=\"Modelica.Mechanics.MultiBody.Frames.TransformationMatrices.resolve1\">
-<ModelicaImplementation>function(T :: array(array(Real)[3])[3] * v2 :: array(Real)[3]) =&gt; array(Real)[3].Modelica.Mechanics.MultiBody.Frames.TransformationMatrices.resolve1function Modelica.Mechanics.MultiBody.Frames.TransformationMatrices.resolve1 &quot;Inline before index reduction&quot; &quot;Transform vector from frame 2 to frame 1&quot;
-input Real[3, 3] T &quot;Orientation object to rotate frame 1 into frame 2&quot;;
-input Real[3] v2 &quot;Vector in frame 2&quot;;
-output Real[3] v1 &quot;Vector in frame 1&quot;;
-algorithm
-v1 := {T[1,1] * v2[1] + T[2,1] * v2[2] + T[3,1] * v2[3], T[1,2] * v2[1] + T[2,2] * v2[2] + T[3,2] * v2[3], T[1,3] * v2[1] + T[2,3] * v2[2] + T[3,3] * v2[3]};
-end Modelica.Mechanics.MultiBody.Frames.TransformationMatrices.resolve1;
-
-
-</ModelicaImplementation>
-</function>
-<function name=\"Modelica.Mechanics.MultiBody.Frames.TransformationMatrices.resolve2\">
-<ModelicaImplementation>function(T :: array(array(Real)[3])[3] * v1 :: array(Real)[3]) =&gt; array(Real)[3].Modelica.Mechanics.MultiBody.Frames.TransformationMatrices.resolve2function Modelica.Mechanics.MultiBody.Frames.TransformationMatrices.resolve2 &quot;Inline before index reduction&quot; &quot;Transform vector from frame 1 to frame 2&quot;
-input Real[3, 3] T &quot;Orientation object to rotate frame 1 into frame 2&quot;;
-input Real[3] v1 &quot;Vector in frame 1&quot;;
-output Real[3] v2 &quot;Vector in frame 2&quot;;
-algorithm
-v2 := {T[1,1] * v1[1] + T[1,2] * v1[2] + T[1,3] * v1[3], T[2,1] * v1[1] + T[2,2] * v1[2] + T[2,3] * v1[3], T[3,1] * v1[1] + T[3,2] * v1[2] + T[3,3] * v1[3]};
-end Modelica.Mechanics.MultiBody.Frames.TransformationMatrices.resolve2;
-
-
-</ModelicaImplementation>
-</function>
-<function name=\"Modelica.Mechanics.MultiBody.World$world.gravityAcceleration\">
-<ModelicaImplementation>function(r :: array(Real(String quantity PARAM DAE.EQBOUND(&quot;Length&quot;, SOME(&quot;Length&quot;), C_PARAM, [DEFAULT VALUE]), String unit PARAM DAE.EQBOUND(&quot;m&quot;, SOME(&quot;m&quot;), C_PARAM, [DEFAULT VALUE])))[3] * gravityType :: Enumeration(Enumeration NoGravity CONST UNBOUND, Enumeration UniformGravity CONST UNBOUND, Enumeration PointGravity CONST UNBOUND) * g :: array(Real(String quantity PARAM DAE.EQBOUND(&quot;Acceleration&quot;, SOME(&quot;Acceleration&quot;), C_PARAM, [DEFAULT VALUE]), String unit PARAM DAE.EQBOUND(&quot;m/s2&quot;, SOME(&quot;m/s2&quot;), C_PARAM, [DEFAULT VALUE])))[3] * mue :: Real) =&gt; array(Real(String quantity PARAM DAE.EQBOUND(&quot;Acceleration&quot;, SOME(&quot;Acceleration&quot;), C_PARAM, [DEFAULT VALUE]), String unit PARAM DAE.EQBOUND(&quot;m/s2&quot;, SOME(&quot;m/s2&quot;), C_PARAM, [DEFAULT VALUE])))[3].Modelica.Mechanics.MultiBody.World$world.gravityAccelerationfunction Modelica.Mechanics.MultiBody.World$world.gravityAcceleration &quot;Inline before index reduction&quot; &quot;Standard gravity fields (no/parallel/point field)&quot;
-input Real[3] r(quantity = &quot;Length&quot;, unit = &quot;m&quot;) &quot;Position vector from world frame to actual point, resolved in world frame&quot;;
-output Real[3] gravity(quantity = &quot;Acceleration&quot;, unit = &quot;m/s2&quot;) &quot;Gravity acceleration at position r, resolved in world frame&quot;;
-input enumeration(NoGravity, UniformGravity, PointGravity) gravityType = gravityType &quot;Type of gravity field&quot;;
-input Real[3] g(quantity = &quot;Acceleration&quot;, unit = &quot;m/s2&quot;) = {0.0, -g, 0.0} &quot;Constant gravity acceleration, resolved in world frame, if gravityType=UniformGravity&quot;;
-input Real mue(unit = &quot;m3/s2&quot;) = mue &quot;Field constant of point gravity field, if gravityType=PointGravity&quot;;
-algorithm
-gravity := if gravityType == Modelica.Mechanics.MultiBody.Types.GravityTypes.UniformGravity then {g[1], g[2], g[3]} else if gravityType == Modelica.Mechanics.MultiBody.Types.GravityTypes.PointGravity then {(-mue) * r[1] / (Modelica.Math.Vectors.length({r[1], r[2], r[3]}) * (r[1] ^ 2.0 + r[2] ^ 2.0 + r[3] ^ 2.0)), (-mue) * r[2] / (Modelica.Math.Vectors.length({r[1], r[2], r[3]}) * (r[1] ^ 2.0 + r[2] ^ 2.0 + r[3] ^ 2.0)), (-mue) * r[3] / (Modelica.Math.Vectors.length({r[1], r[2], r[3]}) * (r[1] ^ 2.0 + r[2] ^ 2.0 + r[3] ^ 2.0))} else {0.0, 0.0, 0.0};
-end Modelica.Mechanics.MultiBody.World$world.gravityAcceleration;
-
-
-</ModelicaImplementation>
-</function>
-<function name=\"Modelica.SIunits.Conversions.to_unit1\">
-<ModelicaImplementation>function(r :: Real) =&gt; Real(String unit PARAM DAE.EQBOUND(&quot;1&quot;, SOME(&quot;1&quot;), C_PARAM, [DEFAULT VALUE])).Modelica.SIunits.Conversions.to_unit1function Modelica.SIunits.Conversions.to_unit1 &quot;Inline before index reduction&quot; &quot;Change the unit of a Real number to unit=\\&quot;1\\&quot;&quot;
-input Real r &quot;Real number&quot;;
-output Real result(unit = &quot;1&quot;) &quot;Real number r with unit=\\&quot;1\\&quot;&quot;;
-algorithm
-result := r;
-end Modelica.SIunits.Conversions.to_unit1;
-
-
-</ModelicaImplementation>
-</function>
-</functions>
-<additionalInfo>
-<originalIncidenceMatrix>
-<MathML>
-<math xmlns=\"http://www.w3.org/1998/Math/MathML\">
-<matrix>
-<matrixrow id=\"1\">
-<ci>18
-</ci>
-<ci>17
-</ci>
-<ci>16
-</ci>
-<ci>15
-</ci>
-<ci>14
-</ci>
-<ci>13
-</ci>
-<ci>12
-</ci>
-<ci>11
-</ci>
-<ci>10
-</ci>
-</matrixrow>
-<matrixrow id=\"2\">
-<ci>18
-</ci>
-<ci>15
-</ci>
-<ci>9
-</ci>
-</matrixrow>
-<matrixrow id=\"3\">
-<ci>17
-</ci>
-<ci>14
-</ci>
-<ci>8
-</ci>
-</matrixrow>
-<matrixrow id=\"4\">
-<ci>16
-</ci>
-<ci>13
-</ci>
-<ci>7
-</ci>
-</matrixrow>
-<matrixrow id=\"5\">
-<ci>15
-</ci>
-<ci>6
-</ci>
-</matrixrow>
-<matrixrow id=\"6\">
-<ci>14
-</ci>
-<ci>5
-</ci>
-</matrixrow>
-<matrixrow id=\"7\">
-<ci>13
-</ci>
-<ci>4
-</ci>
-</matrixrow>
-<matrixrow id=\"8\">
-<ci>18
-</ci>
-<ci>15
-</ci>
-<ci>3
-</ci>
-</matrixrow>
-<matrixrow id=\"9\">
-<ci>17
-</ci>
-<ci>14
-</ci>
-<ci>2
-</ci>
-</matrixrow>
-<matrixrow id=\"10\">
-<ci>16
-</ci>
-<ci>13
-</ci>
-<ci>1
-</ci>
-</matrixrow>
-<matrixrow id=\"1\">
-<ci>28
-</ci>
-<ci>27
-</ci>
-<ci>26
-</ci>
-<ci>25
-</ci>
-<ci>24
-</ci>
-<ci>23
-</ci>
-<ci>22
-</ci>
-<ci>21
-</ci>
-<ci>20
-</ci>
-</matrixrow>
-<matrixrow id=\"2\">
-<ci>28
-</ci>
-<ci>25
-</ci>
-<ci>19
-</ci>
-</matrixrow>
-<matrixrow id=\"3\">
-<ci>27
-</ci>
-<ci>24
-</ci>
-<ci>18
-</ci>
-</matrixrow>
-<matrixrow id=\"4\">
-<ci>26
-</ci>
-<ci>23
-</ci>
-<ci>17
-</ci>
-</matrixrow>
-<matrixrow id=\"5\">
-<ci>25
-</ci>
-<ci>16
-</ci>
-</matrixrow>
-<matrixrow id=\"6\">
-<ci>24
-</ci>
-<ci>15
-</ci>
-</matrixrow>
-<matrixrow id=\"7\">
-<ci>23
-</ci>
-<ci>14
-</ci>
-</matrixrow>
-<matrixrow id=\"8\">
-<ci>28
-</ci>
-<ci>25
-</ci>
-<ci>13
-</ci>
-</matrixrow>
-<matrixrow id=\"9\">
-<ci>27
-</ci>
-<ci>24
-</ci>
-<ci>12
-</ci>
-</matrixrow>
-<matrixrow id=\"10\">
-<ci>26
-</ci>
-<ci>23
-</ci>
-<ci>11
-</ci>
-</matrixrow>
-<matrixrow id=\"1\">
-<ci>44
-</ci>
-<ci>43
-</ci>
-<ci>42
-</ci>
-<ci>41
-</ci>
-<ci>40
-</ci>
-<ci>39
-</ci>
-<ci>38
-</ci>
-<ci>37
-</ci>
-<ci>36
-</ci>
-</matrixrow>
-<matrixrow id=\"2\">
-<ci>35
-</ci>
-<ci>29
-</ci>
-</matrixrow>
-<matrixrow id=\"3\">
-<ci>34
-</ci>
-<ci>28
-</ci>
-</matrixrow>
-<matrixrow id=\"4\">
-<ci>33
-</ci>
-<ci>27
-</ci>
-</matrixrow>
-<matrixrow id=\"5\">
-<ci>32
-</ci>
-<ci>26
-</ci>
-</matrixrow>
-<matrixrow id=\"6\">
-<ci>31
-</ci>
-<ci>25
-</ci>
-</matrixrow>
-<matrixrow id=\"7\">
-<ci>30
-</ci>
-<ci>24
-</ci>
-</matrixrow>
-<matrixrow id=\"8\">
-<ci>44
-</ci>
-<ci>29
-</ci>
-</matrixrow>
-<matrixrow id=\"9\">
-<ci>43
-</ci>
-<ci>28
-</ci>
-</matrixrow>
-<matrixrow id=\"10\">
-<ci>42
-</ci>
-<ci>27
-</ci>
-</matrixrow>
-<matrixrow id=\"11\">
-<ci>41
-</ci>
-<ci>26
-</ci>
-</matrixrow>
-<matrixrow id=\"12\">
-<ci>40
-</ci>
-<ci>25
-</ci>
-</matrixrow>
-<matrixrow id=\"13\">
-<ci>39
-</ci>
-<ci>24
-</ci>
-</matrixrow>
-<matrixrow id=\"14\">
-<ci>44
-</ci>
-<ci>41
-</ci>
-<ci>23
-</ci>
-</matrixrow>
-<matrixrow id=\"15\">
-<ci>43
-</ci>
-<ci>40
-</ci>
-<ci>22
-</ci>
-</matrixrow>
-<matrixrow id=\"16\">
-<ci>42
-</ci>
-<ci>39
-</ci>
-<ci>21
-</ci>
-</matrixrow>
-<matrixrow id=\"1\">
-<ci>62
-</ci>
-<ci>-61
-</ci>
-</matrixrow>
-<matrixrow id=\"2\">
-<ci>61
-</ci>
-<ci>60
-</ci>
-</matrixrow>
-<matrixrow id=\"3\">
-<ci>78
-</ci>
-<ci>60
-</ci>
-</matrixrow>
-<matrixrow id=\"4\">
-<ci>79
-</ci>
-<ci>60
-</ci>
-</matrixrow>
-<matrixrow id=\"5\">
-<ci>80
-</ci>
-<ci>60
-</ci>
-</matrixrow>
-<matrixrow id=\"6\">
-<ci>51
-</ci>
-<ci>-62
-</ci>
-</matrixrow>
-<matrixrow id=\"7\">
-<ci>50
-</ci>
-<ci>-62
-</ci>
-</matrixrow>
-<matrixrow id=\"8\">
-<ci>49
-</ci>
-<ci>-62
-</ci>
-</matrixrow>
-<matrixrow id=\"9\">
-<ci>48
-</ci>
-<ci>-62
-</ci>
-</matrixrow>
-<matrixrow id=\"10\">
-<ci>47
-</ci>
-<ci>-62
-</ci>
-</matrixrow>
-<matrixrow id=\"11\">
-<ci>46
-</ci>
-<ci>-62
-</ci>
-</matrixrow>
-<matrixrow id=\"12\">
-<ci>45
-</ci>
-<ci>-62
-</ci>
-</matrixrow>
-<matrixrow id=\"13\">
-<ci>44
-</ci>
-<ci>-62
-</ci>
-</matrixrow>
-<matrixrow id=\"14\">
-<ci>43
-</ci>
-<ci>-62
-</ci>
-</matrixrow>
-<matrixrow id=\"15\">
-<ci>78
-</ci>
-<ci>39
-</ci>
-</matrixrow>
-<matrixrow id=\"16\">
-<ci>79
-</ci>
-<ci>38
-</ci>
-</matrixrow>
-<matrixrow id=\"17\">
-<ci>80
-</ci>
-<ci>37
-</ci>
-</matrixrow>
-<matrixrow id=\"18\">
-<ci>74
-</ci>
-<ci>68
-</ci>
-<ci>67
-</ci>
-<ci>66
-</ci>
-<ci>51
-</ci>
-<ci>48
-</ci>
-<ci>45
-</ci>
-</matrixrow>
-<matrixrow id=\"19\">
-<ci>73
-</ci>
-<ci>68
-</ci>
-<ci>67
-</ci>
-<ci>66
-</ci>
-<ci>50
-</ci>
-<ci>47
-</ci>
-<ci>44
-</ci>
-</matrixrow>
-<matrixrow id=\"20\">
-<ci>72
-</ci>
-<ci>68
-</ci>
-<ci>67
-</ci>
-<ci>66
-</ci>
-<ci>49
-</ci>
-<ci>46
-</ci>
-<ci>43
-</ci>
-</matrixrow>
-<matrixrow id=\"21\">
-<ci>71
-</ci>
-<ci>65
-</ci>
-<ci>64
-</ci>
-<ci>63
-</ci>
-<ci>51
-</ci>
-<ci>48
-</ci>
-<ci>45
-</ci>
-</matrixrow>
-<matrixrow id=\"22\">
-<ci>70
-</ci>
-<ci>65
-</ci>
-<ci>64
-</ci>
-<ci>63
-</ci>
-<ci>50
-</ci>
-<ci>47
-</ci>
-<ci>44
-</ci>
-</matrixrow>
-<matrixrow id=\"23\">
-<ci>69
-</ci>
-<ci>65
-</ci>
-<ci>64
-</ci>
-<ci>63
-</ci>
-<ci>49
-</ci>
-<ci>46
-</ci>
-<ci>43
-</ci>
-</matrixrow>
-<matrixrow id=\"24\">
-<ci>65
-</ci>
-<ci>64
-</ci>
-<ci>63
-</ci>
-<ci>59
-</ci>
-</matrixrow>
-<matrixrow id=\"25\">
-<ci>59
-</ci>
-<ci>54
-</ci>
-</matrixrow>
-<matrixrow id=\"26\">
-<ci>59
-</ci>
-<ci>54
-</ci>
-<ci>52
-</ci>
-</matrixrow>
-<matrixrow id=\"27\">
-<ci>60
-</ci>
-<ci>53
-</ci>
-</matrixrow>
-<matrixrow id=\"28\">
-<ci>82
-</ci>
-<ci>54
-</ci>
-</matrixrow>
-<matrixrow id=\"29\">
-<ci>81
-</ci>
-<ci>53
-</ci>
-</matrixrow>
-<matrixrow id=\"30\">
-<ci>75
-</ci>
-<ci>39
-</ci>
-</matrixrow>
-<matrixrow id=\"31\">
-<ci>76
-</ci>
-<ci>38
-</ci>
-</matrixrow>
-<matrixrow id=\"32\">
-<ci>77
-</ci>
-<ci>37
-</ci>
-</matrixrow>
-<matrixrow id=\"33\">
-<ci>68
-</ci>
-<ci>50
-</ci>
-<ci>42
-</ci>
-<ci>41
-</ci>
-<ci>40
-</ci>
-<ci>38
-</ci>
-<ci>37
-</ci>
-</matrixrow>
-<matrixrow id=\"34\">
-<ci>67
-</ci>
-<ci>47
-</ci>
-<ci>42
-</ci>
-<ci>41
-</ci>
-<ci>40
-</ci>
-<ci>39
-</ci>
-<ci>37
-</ci>
-</matrixrow>
-<matrixrow id=\"35\">
-<ci>66
-</ci>
-<ci>44
-</ci>
-<ci>42
-</ci>
-<ci>41
-</ci>
-<ci>40
-</ci>
-<ci>39
-</ci>
-<ci>38
-</ci>
-</matrixrow>
-<matrixrow id=\"36\">
-<ci>67
-</ci>
-<ci>66
-</ci>
-<ci>65
-</ci>
-<ci>42
-</ci>
-<ci>41
-</ci>
-<ci>40
-</ci>
-<ci>39
-</ci>
-<ci>38
-</ci>
-<ci>37
-</ci>
-</matrixrow>
-<matrixrow id=\"37\">
-<ci>68
-</ci>
-<ci>66
-</ci>
-<ci>64
-</ci>
-<ci>42
-</ci>
-<ci>41
-</ci>
-<ci>40
-</ci>
-<ci>39
-</ci>
-<ci>38
-</ci>
-<ci>37
-</ci>
-</matrixrow>
-<matrixrow id=\"38\">
-<ci>68
-</ci>
-<ci>67
-</ci>
-<ci>63
-</ci>
-<ci>42
-</ci>
-<ci>41
-</ci>
-<ci>40
-</ci>
-<ci>39
-</ci>
-<ci>38
-</ci>
-<ci>37
-</ci>
-</matrixrow>
-<matrixrow id=\"39\">
-<ci>54
-</ci>
-<ci>-61
-</ci>
-</matrixrow>
-<matrixrow id=\"40\">
-<ci>56
-</ci>
-<ci>40
-</ci>
-</matrixrow>
-<matrixrow id=\"41\">
-<ci>57
-</ci>
-<ci>41
-</ci>
-</matrixrow>
-<matrixrow id=\"42\">
-<ci>58
-</ci>
-<ci>42
-</ci>
-</matrixrow>
-<matrixrow id=\"43\">
-<ci>56
-</ci>
-<ci>-61
-</ci>
-</matrixrow>
-<matrixrow id=\"44\">
-<ci>57
-</ci>
-<ci>-61
-</ci>
-</matrixrow>
-<matrixrow id=\"45\">
-<ci>58
-</ci>
-<ci>-61
-</ci>
-</matrixrow>
-<matrixrow id=\"46\">
-<ci>55
-</ci>
-<ci>-62
-</ci>
-</matrixrow>
-</matrix>
-</math>
-</MathML>
-</originalIncidenceMatrix>
-<solvingInfo>
-<matchingAlgorithm>
-<solvedIn variableId=\"1\" equationId=\"10\" />
-<solvedIn variableId=\"2\" equationId=\"9\" />
-<solvedIn variableId=\"3\" equationId=\"8\" />
-<solvedIn variableId=\"4\" equationId=\"7\" />
-<solvedIn variableId=\"5\" equationId=\"6\" />
-<solvedIn variableId=\"6\" equationId=\"5\" />
-<solvedIn variableId=\"7\" equationId=\"4\" />
-<solvedIn variableId=\"8\" equationId=\"3\" />
-<solvedIn variableId=\"9\" equationId=\"2\" />
-<solvedIn variableId=\"10\" equationId=\"1\" />
-<solvedIn variableId=\"11\" equationId=\"1\" />
-<solvedIn variableId=\"12\" equationId=\"1\" />
-<solvedIn variableId=\"13\" equationId=\"1\" />
-<solvedIn variableId=\"14\" equationId=\"1\" />
-<solvedIn variableId=\"15\" equationId=\"1\" />
-<solvedIn variableId=\"16\" equationId=\"1\" />
-<solvedIn variableId=\"17\" equationId=\"1\" />
-<solvedIn variableId=\"18\" equationId=\"1\" />
-<solvedIn variableId=\"19\" equationId=\"28\" />
-<solvedIn variableId=\"20\" equationId=\"27\" />
-<solvedIn variableId=\"21\" equationId=\"26\" />
-<solvedIn variableId=\"22\" equationId=\"25\" />
-<solvedIn variableId=\"23\" equationId=\"24\" />
-<solvedIn variableId=\"24\" equationId=\"23\" />
-<solvedIn variableId=\"25\" equationId=\"22\" />
-<solvedIn variableId=\"26\" equationId=\"21\" />
-<solvedIn variableId=\"27\" equationId=\"20\" />
-<solvedIn variableId=\"28\" equationId=\"19\" />
-<solvedIn variableId=\"29\" equationId=\"19\" />
-<solvedIn variableId=\"30\" equationId=\"19\" />
-<solvedIn variableId=\"31\" equationId=\"19\" />
-<solvedIn variableId=\"32\" equationId=\"19\" />
-<solvedIn variableId=\"33\" equationId=\"19\" />
-<solvedIn variableId=\"34\" equationId=\"19\" />
-<solvedIn variableId=\"35\" equationId=\"19\" />
-<solvedIn variableId=\"36\" equationId=\"19\" />
-<solvedIn variableId=\"37\" equationId=\"52\" />
-<solvedIn variableId=\"38\" equationId=\"51\" />
-<solvedIn variableId=\"39\" equationId=\"50\" />
-<solvedIn variableId=\"40\" equationId=\"49\" />
-<solvedIn variableId=\"41\" equationId=\"48\" />
-<solvedIn variableId=\"42\" equationId=\"47\" />
-<solvedIn variableId=\"43\" equationId=\"46\" />
-<solvedIn variableId=\"44\" equationId=\"45\" />
-<solvedIn variableId=\"45\" equationId=\"44\" />
-<solvedIn variableId=\"46\" equationId=\"43\" />
-<solvedIn variableId=\"47\" equationId=\"42\" />
-<solvedIn variableId=\"48\" equationId=\"41\" />
-<solvedIn variableId=\"49\" equationId=\"40\" />
-<solvedIn variableId=\"50\" equationId=\"39\" />
-<solvedIn variableId=\"51\" equationId=\"38\" />
-<solvedIn variableId=\"52\" equationId=\"37\" />
-<solvedIn variableId=\"53\" equationId=\"37\" />
-<solvedIn variableId=\"54\" equationId=\"37\" />
-<solvedIn variableId=\"55\" equationId=\"37\" />
-<solvedIn variableId=\"56\" equationId=\"37\" />
-<solvedIn variableId=\"57\" equationId=\"37\" />
-<solvedIn variableId=\"58\" equationId=\"37\" />
-<solvedIn variableId=\"59\" equationId=\"37\" />
-<solvedIn variableId=\"60\" equationId=\"37\" />
-<solvedIn variableId=\"61\" equationId=\"77\" />
-<solvedIn variableId=\"62\" equationId=\"76\" />
-<solvedIn variableId=\"63\" equationId=\"94\" />
-<solvedIn variableId=\"64\" equationId=\"100\" />
-<solvedIn variableId=\"65\" equationId=\"101\" />
-<solvedIn variableId=\"66\" equationId=\"102\" />
-<solvedIn variableId=\"67\" equationId=\"74\" />
-<solvedIn variableId=\"68\" equationId=\"73\" />
-<solvedIn variableId=\"69\" equationId=\"72\" />
-<solvedIn variableId=\"70\" equationId=\"71\" />
-<solvedIn variableId=\"71\" equationId=\"70\" />
-<solvedIn variableId=\"72\" equationId=\"69\" />
-<solvedIn variableId=\"73\" equationId=\"68\" />
-<solvedIn variableId=\"74\" equationId=\"67\" />
-<solvedIn variableId=\"75\" equationId=\"66\" />
-<solvedIn variableId=\"76\" equationId=\"86\" />
-<solvedIn variableId=\"77\" equationId=\"87\" />
-<solvedIn variableId=\"78\" equationId=\"99\" />
-<solvedIn variableId=\"79\" equationId=\"106\" />
-<solvedIn variableId=\"80\" equationId=\"103\" />
-<solvedIn variableId=\"81\" equationId=\"104\" />
-<solvedIn variableId=\"82\" equationId=\"105\" />
-<solvedIn variableId=\"83\" equationId=\"85\" />
-<solvedIn variableId=\"84\" equationId=\"63\" />
-<solvedIn variableId=\"85\" equationId=\"62\" />
-<solvedIn variableId=\"86\" equationId=\"61\" />
-<solvedIn variableId=\"87\" equationId=\"98\" />
-<solvedIn variableId=\"88\" equationId=\"97\" />
-<solvedIn variableId=\"89\" equationId=\"84\" />
-<solvedIn variableId=\"90\" equationId=\"95\" />
-<solvedIn variableId=\"91\" equationId=\"96\" />
-<solvedIn variableId=\"92\" equationId=\"93\" />
-<solvedIn variableId=\"93\" equationId=\"83\" />
-<solvedIn variableId=\"94\" equationId=\"82\" />
-<solvedIn variableId=\"95\" equationId=\"81\" />
-<solvedIn variableId=\"96\" equationId=\"80\" />
-<solvedIn variableId=\"97\" equationId=\"79\" />
-<solvedIn variableId=\"98\" equationId=\"78\" />
-<solvedIn variableId=\"99\" equationId=\"90\" />
-<solvedIn variableId=\"100\" equationId=\"91\" />
-<solvedIn variableId=\"101\" equationId=\"92\" />
-<solvedIn variableId=\"102\" equationId=\"75\" />
-<solvedIn variableId=\"103\" equationId=\"64\" />
-<solvedIn variableId=\"104\" equationId=\"65\" />
-<solvedIn variableId=\"105\" equationId=\"89\" />
-<solvedIn variableId=\"106\" equationId=\"88\" />
-</matchingAlgorithm>
-<bltRepresentation>
-<bltRepresentation>
-<bltBlock id=\"1\">
-<involvedEquation equationId=\"1\" />
-</bltBlock>
-<bltBlock id=\"2\">
-<involvedEquation equationId=\"6\" />
-</bltBlock>
-<bltBlock id=\"3\">
-<involvedEquation equationId=\"2\" />
-</bltBlock>
-<bltBlock id=\"4\">
-<involvedEquation equationId=\"5\" />
-</bltBlock>
-<bltBlock id=\"5\">
-<involvedEquation equationId=\"8\" />
-</bltBlock>
-<bltBlock id=\"6\">
-<involvedEquation equationId=\"3\" />
-</bltBlock>
-<bltBlock id=\"7\">
-<involvedEquation equationId=\"9\" />
-</bltBlock>
-<bltBlock id=\"8\">
-<involvedEquation equationId=\"7\" />
-</bltBlock>
-<bltBlock id=\"9\">
-<involvedEquation equationId=\"4\" />
-</bltBlock>
-<bltBlock id=\"10\">
-<involvedEquation equationId=\"10\" />
-</bltBlock>
-</bltRepresentation>
-<bltRepresentation>
-<bltBlock id=\"19\">
-<involvedEquation equationId=\"19\" />
-</bltBlock>
-<bltBlock id=\"20\">
-<involvedEquation equationId=\"24\" />
-</bltBlock>
-<bltBlock id=\"21\">
-<involvedEquation equationId=\"20\" />
-</bltBlock>
-<bltBlock id=\"22\">
-<involvedEquation equationId=\"23\" />
-</bltBlock>
-<bltBlock id=\"23\">
-<involvedEquation equationId=\"26\" />
-</bltBlock>
-<bltBlock id=\"24\">
-<involvedEquation equationId=\"21\" />
-</bltBlock>
-<bltBlock id=\"25\">
-<involvedEquation equationId=\"27\" />
-</bltBlock>
-<bltBlock id=\"26\">
-<involvedEquation equationId=\"25\" />
-</bltBlock>
-<bltBlock id=\"27\">
-<involvedEquation equationId=\"22\" />
-</bltBlock>
-<bltBlock id=\"28\">
-<involvedEquation equationId=\"28\" />
-</bltBlock>
-</bltRepresentation>
-<bltRepresentation>
-<bltBlock id=\"37\">
-<involvedEquation equationId=\"37\" />
-</bltBlock>
-<bltBlock id=\"38\">
-<involvedEquation equationId=\"45\" />
-</bltBlock>
-<bltBlock id=\"39\">
-<involvedEquation equationId=\"39\" />
-</bltBlock>
-<bltBlock id=\"40\">
-<involvedEquation equationId=\"44\" />
-</bltBlock>
-<bltBlock id=\"41\">
-<involvedEquation equationId=\"38\" />
-</bltBlock>
-<bltBlock id=\"42\">
-<involvedEquation equationId=\"48\" />
-</bltBlock>
-<bltBlock id=\"43\">
-<involvedEquation equationId=\"42\" />
-</bltBlock>
-<bltBlock id=\"44\">
-<involvedEquation equationId=\"51\" />
-</bltBlock>
-<bltBlock id=\"45\">
-<involvedEquation equationId=\"47\" />
-</bltBlock>
-<bltBlock id=\"46\">
-<involvedEquation equationId=\"41\" />
-</bltBlock>
-<bltBlock id=\"47\">
-<involvedEquation equationId=\"50\" />
-</bltBlock>
-<bltBlock id=\"48\">
-<involvedEquation equationId=\"46\" />
-</bltBlock>
-<bltBlock id=\"49\">
-<involvedEquation equationId=\"40\" />
-</bltBlock>
-<bltBlock id=\"50\">
-<involvedEquation equationId=\"49\" />
-</bltBlock>
-<bltBlock id=\"51\">
-<involvedEquation equationId=\"43\" />
-</bltBlock>
-<bltBlock id=\"52\">
-<involvedEquation equationId=\"52\" />
-</bltBlock>
-</bltRepresentation>
-<bltRepresentation>
-<bltBlock id=\"61\">
-<involvedEquation equationId=\"106\" />
-</bltBlock>
-<bltBlock id=\"62\">
-<involvedEquation equationId=\"105\" />
-</bltBlock>
-<bltBlock id=\"63\">
-<involvedEquation equationId=\"104\" />
-</bltBlock>
-<bltBlock id=\"64\">
-<involvedEquation equationId=\"103\" />
-</bltBlock>
-<bltBlock id=\"65\">
-<involvedEquation equationId=\"102\" />
-</bltBlock>
-<bltBlock id=\"66\">
-<involvedEquation equationId=\"101\" />
-</bltBlock>
-<bltBlock id=\"67\">
-<involvedEquation equationId=\"100\" />
-</bltBlock>
-<bltBlock id=\"68\">
-<involvedEquation equationId=\"99\" />
-</bltBlock>
-<bltBlock id=\"69\">
-<involvedEquation equationId=\"88\" />
-</bltBlock>
-<bltBlock id=\"70\">
-<involvedEquation equationId=\"85\" />
-</bltBlock>
-<bltBlock id=\"71\">
-<involvedEquation equationId=\"86\" />
-</bltBlock>
-<bltBlock id=\"72\">
-<involvedEquation equationId=\"74\" />
-</bltBlock>
-<bltBlock id=\"73\">
-<involvedEquation equationId=\"73\" />
-</bltBlock>
-<bltBlock id=\"74\">
-<involvedEquation equationId=\"72\" />
-</bltBlock>
-<bltBlock id=\"75\">
-<involvedEquation equationId=\"71\" />
-</bltBlock>
-<bltBlock id=\"76\">
-<involvedEquation equationId=\"70\" />
-</bltBlock>
-<bltBlock id=\"77\">
-<involvedEquation equationId=\"69\" />
-</bltBlock>
-<bltBlock id=\"78\">
-<involvedEquation equationId=\"68\" />
-</bltBlock>
-<bltBlock id=\"79\">
-<involvedEquation equationId=\"67\" />
-</bltBlock>
-<bltBlock id=\"80\">
-<involvedEquation equationId=\"66\" />
-</bltBlock>
-<bltBlock id=\"81\">
-<involvedEquation equationId=\"63\" />
-<involvedEquation equationId=\"65\" />
-<involvedEquation equationId=\"77\" />
-<involvedEquation equationId=\"98\" />
-<involvedEquation equationId=\"84\" />
-<involvedEquation equationId=\"96\" />
-<involvedEquation equationId=\"94\" />
-<involvedEquation equationId=\"97\" />
-<involvedEquation equationId=\"95\" />
-<involvedEquation equationId=\"75\" />
-<involvedEquation equationId=\"93\" />
-<involvedEquation equationId=\"64\" />
-<involvedEquation equationId=\"76\" />
-</bltBlock>
-<bltBlock id=\"82\">
-<involvedEquation equationId=\"91\" />
-</bltBlock>
-<bltBlock id=\"83\">
-<involvedEquation equationId=\"92\" />
-</bltBlock>
-<bltBlock id=\"84\">
-<involvedEquation equationId=\"90\" />
-</bltBlock>
-<bltBlock id=\"85\">
-<involvedEquation equationId=\"78\" />
-</bltBlock>
-<bltBlock id=\"86\">
-<involvedEquation equationId=\"79\" />
-</bltBlock>
-<bltBlock id=\"87\">
-<involvedEquation equationId=\"80\" />
-</bltBlock>
-<bltBlock id=\"88\">
-<involvedEquation equationId=\"81\" />
-</bltBlock>
-<bltBlock id=\"89\">
-<involvedEquation equationId=\"82\" />
-</bltBlock>
-<bltBlock id=\"90\">
-<involvedEquation equationId=\"83\" />
-</bltBlock>
-<bltBlock id=\"91\">
-<involvedEquation equationId=\"87\" />
-</bltBlock>
-<bltBlock id=\"92\">
-<involvedEquation equationId=\"89\" />
-</bltBlock>
-<bltBlock id=\"93\">
-<involvedEquation equationId=\"62\" />
-</bltBlock>
-<bltBlock id=\"94\">
-<involvedEquation equationId=\"61\" />
-</bltBlock>
-</bltRepresentation>
-</bltRepresentation>
-</solvingInfo>
-</additionalInfo>
-</dae>"

Equation mismatch: omc-diff says:
Failed 't' 'f'
Line 85: Text differs:
expected: true
got:      false

== 1 out of 1 tests failed [openmodelica/xml/XmlDumpComment.mos_temp7491, time: 0]