UserDefinedComponents

class UserDefinedComponents "User Defined Components"
    extends Modelica.Icons.Information;

    annotation (
        DocumentationClass = true,
        Documentation(info = "<html>\n<p>\nIn this section some hints are given to define your own\n1-dimensional rotational components which are compatible with the\nelements of this package.\nIt is convenient to define a new\ncomponent by inheritance from one of the following base classes,\nwhich are defined in sublibrary Interfaces:\n</p>\n<table border=1 cellspacing=0 cellpadding=2>\n<tr><th>Name</th><th>Description</th></tr>\n<tr>\n  <td><a href=\"modelica://Modelica.Mechanics.Rotational.Interfaces.PartialCompliant\">PartialCompliant</a>\n  </td>\n  <td>Compliant connection of two rotational 1-dim. flanges\n                   (used for force laws such as a spring or a damper).</td>\n</tr>\n\n<tr>\n  <td><a href=\"modelica://Modelica.Mechanics.Rotational.Interfaces.PartialCompliantWithRelativeStates\">PartialCompliantWithRelativeStates</a>\n  </td>\n  <td> Same as \"PartialCompliant\", but relative angle and relative speed are\n                    defined as preferred states. Use this partial model if the force law\n                    needs anyway the relative speed. The advantage is that it is usually better\n                    to use relative angles between drive train components\n                    as states, especially, if the angle is not limited (e.g., as for drive trains\n                    in vehicles).\n</td>\n</tr>\n\n<tr>\n  <td><a href=\"modelica://Modelica.Mechanics.Rotational.Interfaces.PartialElementaryTwoFlangesAndSupport2\">PartialElementaryTwoFlangesAndSupport2</a>\n</td>\n  <td> Partial model for a 1-dim. rotational gear consisting of the flange of\n                    an input shaft, the flange of an output shaft and the support.\n  </td>\n</tr>\n\n<tr>\n  <td><a href=\"modelica://Modelica.Mechanics.Rotational.Interfaces.PartialTorque\">PartialTorque</a>\n</td>\n  <td> Partial model of a torque acting at the flange (accelerates the flange).\n  </td>\n</tr>\n\n<tr>\n  <td><a href=\"modelica://Modelica.Mechanics.Rotational.Interfaces.PartialTwoFlanges\">PartialTwoFlanges</a>\n</td>\n  <td>General connection of two rotational 1-dim. flanges.\n  </td>\n</tr>\n\n<tr>\n  <td><a href=\"modelica://Modelica.Mechanics.Rotational.Interfaces.PartialAbsoluteSensor\">PartialAbsoluteSensor</a>\n</td>\n  <td>Measure absolute flange variables.\n  </td>\n</tr>\n\n<tr>\n  <td><a href=\"modelica://Modelica.Mechanics.Rotational.Interfaces.PartialRelativeSensor\">PartialRelativeSensor</a>\n</td>\n  <td>Measure relative flange variables.\n  </td>\n</tr>\n</table>\n\n<p>\nThe difference between these base classes are the auxiliary\nvariables defined in the model and the relations between\nthe flange variables already defined in the base class.\nFor example, in model <strong>PartialCompliant</strong> there is no\nsupport flange, whereas in model\n<strong>PartialElementaryTwoFlangesAndSupport2</strong>\nthere is a support flange.\n</p>\n<p>\nThe equations of a mechanical component are vector equations, i.e.,\nthey need to be expressed in a common coordinate system.\nTherefore, for a component a <strong>local axis of rotation</strong> has to be\ndefined. All vector quantities, such as cut-torques or angular\nvelocities have to be expressed according to this definition.\nExamples for such a definition are given in the following figure\nfor an inertia component and a planetary gearbox:\n</p>\n\n<p>\n<img src=\"modelica://Modelica/Resources/Images/Mechanics/Rotational/driveAxis.png\" alt=\"driveAxis\">\n</p>\n\n<p>\nAs can be seen, all vectors are directed into the direction\nof the rotation axis. The angles in the flanges are defined\ncorrespondingly. For example, the angle <code>sun.phi</code> in the\nflange of the sun wheel of the planetary gearbox is positive,\nif rotated in mathematical positive direction (= counter clock\nwise) along the axis of rotation.\n</p>\n<p>\nOn first view, one may assume that the selected local\ncoordinate system has an influence on the usage of the\ncomponent. But this is not the case, as shown in the next figure:\n</p>\n\n<p>\n<img src=\"modelica://Modelica/Resources/Images/Mechanics/Rotational/inertias.png\" alt=\"inertias\">\n</p>\n\n<p>\nIn the figure the <strong>local</strong> axes of rotation of the components\nare shown. The connection of two inertias in the left and in the\nright part of the figure are completely equivalent, i.e., the right\npart is just a different drawing of the left part. This is due to the\nfact, that by a connection, the two local coordinate systems are\nmade identical and the (automatically) generated connection equations\n(= angles are identical, cut-torques sum-up to zero) are also\nexpressed in this common coordinate system. Therefore, even if in\nthe left figure it seems to be that the angular velocity vector of\n<code>J2</code> goes from right to left, in reality it goes from\nleft to right as shown in the right part of the figure, where the\nlocal coordinate systems are drawn such that they are aligned.\nNote, that the simple rule stated in section 4 (Sign conventions)\nalso determines that\nthe angular velocity of <code>J2</code> in the left part of the\nfigure is directed from left to right.\n</p>\n<p>\nTo summarize, the local coordinate system selected for a component\nis just necessary, in order that the equations of this component\nare expressed correctly. The selection of the coordinate system\nis arbitrary and has no influence on the usage of the component.\nEspecially, the actual direction of, e.g., a cut-torque is most\neasily determined by the rule of section 4. A more strict determination\nby aligning coordinate systems and then using the vector direction\nof the local coordinate systems, often requires a re-drawing of the\ndiagram and is therefore less convenient to use.\n</p>\n</html>"));
end UserDefinedComponents;