root/trunk/ObsoleteModelica3.mo

Revision 1098, 172.1 kB (checked in by otter, 4 months ago)

- Tiny bug in conversion script corrected:

MultiBody.Joints.Internal.RevoluteWithLengthConstraint

PrismaticWithLengthConstraint

did not convert correctly, for default values of axisTorqueBalance/forceTorqueBalance

- thickness/lineThickness in ObsoleteModelica3 corrected.

Line 
1within ;
2package ObsoleteModelica3
3  "Library that contains components from Modelica Standard Library 2.2.2 that have been removed from version 3.0"
4
5  annotation (uses(Modelica(version="3.0")),
6Documentation(info="<html>
7<p>
8This package contains models and blocks from the Modelica Standard Library
9version 2.2.2 that are no longer available in version 3.0.
10The conversion script for version 3.0 changes references in existing
11user models automatically to the models and blocks of package
12ObsoleteModelica3. The user should <b>manually</b> replace all
13references to ObsoleteModelica3 in his/her models to the models
14that are recommended in the documentation of the respective model.
15</p>
16 
17<p>
18In most cases, this means that a model with the name
19\"ObsoleteModelica3.XXX\" should be renamed to \"Modelica.XXX\" (version 3.0)
20and then a manual adaptation is needed. For example, a reference to
21ObsoleteModelica3.Mechanics.MultiBody.Sensors.AbsoluteSensor
22should be replaced by
23Modelica.Mechanics.MultiBody.Sensors.AbsoluteSensor (version 3.0).
24Since the design of the component has changed (e.g., several
25optional connectors, and no longer one connector where all signals
26are packed together), this requires some changes at the place where
27the model is used (besides the renaming of the underlying class).
28</p>
29 
30<p>
31The models in ObsoleteModelica3 are either not according to the Modelica Language
32version 3.0 and higher, or the model was changed to get a better design.
33In all cases, an automatic conversion to the new implementation
34was not feasible, since too complicated.
35</p>
36 
37<p>
38In order to easily detect obsolete models and blocks, all of them are specially
39marked in the icon layer with a red box.
40</p>
41
42<p>
43Copyright &copy; 2007-2008, Modelica Association.
44</p>
45<p>
46<i>This Modelica package is <b>free</b> software; it can be redistributed and/or modified
47under the terms of the <b>Modelica license</b>, see the license conditions
48and the accompanying <b>disclaimer</b> 
49<a href=\"Modelica://Modelica.UsersGuide.ModelicaLicense\">here</a>.</i>
50</p>
51 
52</html>"));
53
54  package Blocks
55    "Library of basic input/output control blocks (continuous, discrete, logical, table blocks)"
56    package Interfaces
57      "Library of connectors and partial models for input/output blocks"
58    connector RealSignal = Real "Real port (both input/output possible)" 
59        annotation (__Dymola_obsolete="Connector is not valid according to Modelica 3, since input/output prefixes are missing. When using this connector, it is not possible to check for balanced models.",
60    Documentation(info="<html>
61<p>
62Connector with one signal of type Real (no icon, no input/output prefix).
63</p>
64</html>"));
65    connector BooleanSignal = Boolean
66        "Boolean port (both input/output possible)" 
67        annotation (__Dymola_obsolete="Connector is not valid according to Modelica 3, since input/output prefixes are missing. When using this connector, it is not possible to check for balanced models.",
68    Documentation(info="<html>
69<p>
70Connector with one signal of type Boolean (no icon, no input/output prefix).
71</p>
72</html>"));
73    connector IntegerSignal = Integer
74        "Integer port (both input/output possible)" 
75        annotation (__Dymola_obsolete="Connector is not valid according to Modelica 3, since input/output prefixes are missing. When using this connector, it is not possible to check for balanced models.",
76    Documentation(info="<html>
77<p>
78Connector with one signal of type Icon (no icon, no input/output prefix).
79</p>
80</html>"));
81      package Adaptors
82        "Obsolete package with components to send signals to a bus or receive signals from a bus (only for backward compatibility)"
83      model AdaptorReal
84          "Completely obsolete adaptor between 'old' and 'new' Real signal connectors (only for backward compatibility)"
85        extends ObsoleteModelica3.Icons.ObsoleteBlock;
86        ObsoleteModelica3.Blocks.Interfaces.RealSignal newReal
87            "Connector of Modelica version 2.1"                annotation (                            Hide=true,
88              Placement(transformation(extent={{100,-10},{120,10}}, rotation=0)));
89        RealPort oldReal(final n=1) "Connector of Modelica version 1.6" annotation (Placement(
90                transformation(extent={{-120,-10},{-100,10}}, rotation=0)));
91
92        annotation(structurallyIncomplete,
93          __Dymola_obsolete="Model is not balanced, so equation check will not work. This model is no longer needed",
94          Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100,-100},
95                    {100,100}}), graphics={
96                Rectangle(
97                  extent={{-100,40},{100,-40}},
98                  lineColor={0,0,255},
99                  fillColor={255,255,255},
100                  fillPattern=FillPattern.Solid),
101                Text(
102                  extent={{-144,96},{144,46}},
103                  lineColor={0,0,0},
104                  textString=""),
105                Text(
106                  extent={{-88,22},{88,-24}},
107                  lineColor={0,0,255},
108                  fillColor={191,0,0},
109                  fillPattern=FillPattern.Solid,
110                  textString="adaptor"),
111                Text(
112                  extent={{-216,-58},{36,-80}},
113                  lineColor={0,0,0},
114                  fillColor={255,255,255},
115                  fillPattern=FillPattern.Solid,
116                  textString="port.signal")}),
117                                      Documentation(info="<html>
118<p>
119Completely obsolete adaptor between the Real signal connector
120of version 1.6 and version &ge; 2.1 of the Modelica Standard Library.
121This block is only provided for backward compatibility.
122</p>
123</html>
124"));
125
126        protected
127        connector RealPort "Connector with signals of type Real"
128          parameter Integer n=1 "Dimension of signal vector" annotation (Hide=true);
129          replaceable type SignalType = Real "type of signal";
130          SignalType signal[n] "Real signals" annotation (Hide=true);
131
132        end RealPort;
133      equation
134        newReal = oldReal.signal[1];
135      end AdaptorReal;
136
137      model AdaptorBoolean
138          "Completely obsolete adaptor between 'old' and 'new' Boolean signal connectors (only for backward compatibility)"
139        extends ObsoleteModelica3.Icons.ObsoleteBlock;
140        ObsoleteModelica3.Blocks.Interfaces.BooleanSignal newBoolean
141            "Connector of Modelica version 2.1" 
142          annotation (                            Hide=true, Placement(
143                transformation(extent={{100,-10},{120,10}}, rotation=0)));
144        BooleanPort oldBoolean(final n=1) "Connector of Modelica version 1.6" annotation (Placement(
145                transformation(extent={{-120,-10},{-100,10}}, rotation=0)));
146
147        annotation(structurallyIncomplete,
148          __Dymola_obsolete="Model is not balanced, so equation check will not work. This model is no longer needed",
149          Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100,-100},
150                    {100,100}}), graphics={
151                Rectangle(
152                  extent={{-100,40},{100,-40}},
153                  lineColor={255,0,255},
154                  fillColor={255,255,255},
155                  fillPattern=FillPattern.Solid),
156                Text(
157                  extent={{-144,96},{144,46}},
158                  lineColor={0,0,0},
159                  textString=""),
160                Text(
161                  extent={{-88,22},{88,-24}},
162                  lineColor={255,0,255},
163                  textString="adaptor"),
164                Text(
165                  extent={{-216,-58},{36,-80}},
166                  lineColor={0,0,0},
167                  fillColor={255,255,255},
168                  fillPattern=FillPattern.Solid,
169                  textString="port.signal")}),
170                                      Documentation(info="<html>
171<p>
172Completely obsolete adaptor between the Real signal connector
173of version 1.6 and version &ge; 2.1 of the Modelica Standard Library.
174This block is only provided for backward compatibility.
175</p>
176</html>
177"));
178
179        protected
180        connector BooleanPort "Connector with signals of type Boolean"
181          parameter Integer n=1 "Dimension of signal vector" annotation (Hide=true);
182          replaceable type SignalType = Boolean "type of signal";
183          SignalType signal[n] "Boolean signals" annotation (Hide=true);
184
185        end BooleanPort;
186      equation
187
188        newBoolean = oldBoolean.signal[1];
189
190      end AdaptorBoolean;
191
192      model AdaptorInteger
193          "Completely obsolete adaptor between 'old' and 'new' Integer signal connectors (only for backward compatibility)"
194        extends ObsoleteModelica3.Icons.ObsoleteBlock;
195        ObsoleteModelica3.Blocks.Interfaces.IntegerSignal newInteger
196            "Connector of Modelica version 2.1" 
197          annotation (                            Hide=true, Placement(
198                transformation(extent={{100,-10},{120,10}}, rotation=0)));
199        IntegerPort oldInteger(final n=1) "Connector of Modelica version 1.6"  annotation (Placement(
200                transformation(extent={{-120,-10},{-100,10}}, rotation=0)));
201
202        annotation(structurallyIncomplete,
203          __Dymola_obsolete="Model is not balanced, so equation check will not work. This model is no longer needed",
204           Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100,-100},
205                    {100,100}}), graphics={
206                Rectangle(
207                  extent={{-100,40},{100,-40}},
208                  lineColor={255,127,0},
209                  fillColor={255,255,255},
210                  fillPattern=FillPattern.Solid),
211                Text(
212                  extent={{-144,96},{144,46}},
213                  lineColor={0,0,0},
214                  textString=""),
215                Text(
216                  extent={{-88,22},{88,-24}},
217                  lineColor={255,127,0},
218                  textString="adaptor"),
219                Text(
220                  extent={{-216,-58},{36,-80}},
221                  lineColor={0,0,0},
222                  fillColor={255,255,255},
223                  fillPattern=FillPattern.Solid,
224                  textString="port.signal")}),
225                                      Documentation(info="<html>
226<p>
227Completely obsolete adaptor between the Real signal connector
228of version 1.6 and version &ge; 2.1 of the Modelica Standard Library.
229This block is only provided for backward compatibility.
230</p>
231</html>
232"));
233
234        protected
235        connector IntegerPort "Connector with signals of type Integer"
236          parameter Integer n=1 "Dimension of signal vector" annotation (Hide=true);
237          replaceable type SignalType = Integer "type of signal";
238          SignalType signal[n] "Integer signals" annotation (Hide=true);
239
240        end IntegerPort;
241      equation
242
243        newInteger = oldInteger.signal[1];
244
245      end AdaptorInteger;
246      end Adaptors;
247    end Interfaces;
248
249    package Math "Library of mathematical functions as input/output blocks"
250      package UnitConversions
251        "Conversion blocks to convert between SI and non-SI unit signals"
252        block ConvertAllUnits
253          "Obsolete block. Use one of Modelica.Blocks.Math.UnitConversions.XXX instead"
254          replaceable block ConversionBlock = 
255              Modelica.Blocks.Interfaces.PartialConversionBlock
256            "Conversion block" 
257            annotation (choicesAllMatching=true,
258            Documentation(info=
259                           "<html>
260<p>
261Internal replaceable block that is used to construct the
262\"pull down menu\" of the available unit conversions.
263</p>
264</html>"));
265          extends ConversionBlock;
266          extends ObsoleteModelica3.Icons.ObsoleteBlock;
267
268          annotation (
269            __Dymola_obsolete="Model is not according to Modelica Language 3.0 since replaceable base class present. " +
270                              "Use instead one of Modelica.Blocks.Math.UnitConversions.XXX",
271            defaultComponentName="convert",
272            Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100,-100},
273                    {100,100}}), graphics={Line(points={{-90,0},{30,0}}, color=
274                      {191,0,0}), Polygon(
275                  points={{90,0},{30,20},{30,-20},{90,0}},
276                  lineColor={191,0,0},
277                  fillColor={191,0,0},
278                  fillPattern=FillPattern.Solid)}),
279            Documentation(info="<html>
280<p>This block implements the Modelica.SIunits.Conversions functions as a fixed causality block to
281simplify their use. The block contains a replaceable block class <b>ConversionBlock</b> that can be
282changed to be any of the blocks defined in Modelica.Blocks.Math.UnitConversions, and more generally, any
283blocks that extend from Modelica.Blocks.Interfaces.PartialConversionBlock.
284</p>
285 
286<p
287The desired conversion can be selected in the parameter menu 
288(the selected units are then displayed in the icon):</p>
289</p>
290 
291<p>
292<img src=\"../Modelica/Images/Blocks/ConvertAllUnits.png\">
293</p>
294 
295</html>"));
296        end ConvertAllUnits;
297      end UnitConversions;
298
299      block TwoInputs
300        "Obsolete block. Use instead Modelica.Blocks.Math.InverseBlockConstraints"
301        extends Modelica.Blocks.Interfaces.BlockIcon;
302        extends ObsoleteModelica3.Icons.ObsoleteBlock;
303            annotation(structurallyIncomplete,
304              __Dymola_obsolete="Model is not balanced, i.e., not according to Modelica Language 3.0. Use instead Modelica.Blocks.Math.InverseBlockConstraints",
305              Window(
306                x=0.15,
307                y=0.21,
308                width=0.6,
309                height=0.6),
310              Documentation(info="<HTML>
311<p>
312This block is used to enable asignment of values to variables preliminary
313defined as outputs (e.g. useful for inverse model generation).
314</p>
315 
316</HTML>
317"),           Icon(coordinateSystem(
318              preserveAspectRatio=false,
319              extent={{-100,-100},{100,100}},
320              grid={2,2}), graphics={Text(
321                extent={{-95,50},{95,-50}},
322                lineColor={0,0,127},
323                textString="=")}));
324            Modelica.Blocks.Interfaces.RealInput u1
325          "Connector of first Real input signal" 
326              annotation (                                       layer="icon",
327            Placement(transformation(extent={{-139.742,-19.0044},{-100,20}},
328                rotation=0)));
329            Modelica.Blocks.Interfaces.RealInput u2
330          "Connector of second Real input signal (u1=u2)" 
331                                           annotation (
332              layer="icon", Placement(transformation(
333              origin={120,0},
334              extent={{-20,-20},{20,20}},
335              rotation=180)));
336      equation
337            u1 = u2;
338      end TwoInputs;
339
340          block TwoOutputs
341        "Obsolete block. Use instead Modelica.Blocks.Math.InverseBlockConstraints"
342            extends Modelica.Blocks.Interfaces.BlockIcon;
343            extends ObsoleteModelica3.Icons.ObsoleteBlock;
344            annotation(structurallyIncomplete,
345              __Dymola_obsolete="Model is not balanced, i.e., not according to Modelica Language 3.0. Use instead Modelica.Blocks.Math.InverseBlockConstraints",
346              Window(
347                x=0.21,
348                y=0.28,
349                width=0.6,
350                height=0.6),
351              Documentation(info="
352<HTML>
353<p>
354This block is used to enable calculation of values preliminary defined as inputs.
355(e.g. useful for inverse model generation).
356</p>
357 
358</HTML>
359"),           Icon(coordinateSystem(
360              preserveAspectRatio=false,
361              extent={{-100,-100},{100,100}},
362              grid={2,2}), graphics={Text(
363                extent={{-95,50},{95,-50}},
364                lineColor={0,0,127},
365                textString="=")}));
366            output Modelica.Blocks.Interfaces.RealOutput y1
367          "Connector of first Real output signal" 
368              annotation (Placement(transformation(extent={{100,-10},{120,10}},
369                rotation=0)));
370            output Modelica.Blocks.Interfaces.RealOutput y2
371          "Connector of second Real output signal (y1=y2)" 
372                                                   annotation (Placement(
373              transformation(
374              origin={-110.366,-0.90289},
375              extent={{-10.0005,-10},{10.0005,10}},
376              rotation=180)));
377          equation
378            y1 = y2;
379          end TwoOutputs;
380    end Math;
381
382  end Blocks;
383
384  package Electrical
385    "Library of electrical models (analog, digital, machines, multi-phase)"
386    package Analog "Library for analog electrical models"
387      package Basic
388        "Basic electrical components such as resistor, capacitor, transformer"
389        model HeatingResistor
390          "Obsolete model. Use Modelica.Electrical.Analog.Basic.HeatingResistor instead"
391          extends Modelica.Electrical.Analog.Interfaces.OnePort;
392          extends ObsoleteModelica3.Icons.ObsoleteModel;
393
394          parameter Modelica.SIunits.Resistance R_ref=1
395            "Resistance at temperature T_ref";
396          parameter Modelica.SIunits.Temperature T_ref=300
397            "Reference temperature";
398          parameter Real alpha(unit="1/K") = 0
399            "Temperature coefficient of resistance";
400
401          Modelica.SIunits.Resistance R
402            "Resistance = R_ref*(1 + alpha*(heatPort.T - T_ref));";
403
404          annotation (
405            __Dymola_obsolete="Model equations depend on cardinality(..) which will become obsolete in the Modelica language. Use instead Modelica.Electrical.Analog.Basic.HeatingResistor",
406            Diagram(coordinateSystem(preserveAspectRatio=false, extent={{-100,
407                    -100},{100,100}}), graphics={
408                Line(points={{-110,20},{-85,20}}, color={160,160,164}),
409                Polygon(
410                  points={{-95,23},{-85,20},{-95,17},{-95,23}},
411                  lineColor={160,160,164},
412                  fillColor={160,160,164},
413                  fillPattern=FillPattern.Solid),
414                Line(points={{90,20},{115,20}}, color={160,160,164}),
415                Line(points={{-125,0},{-115,0}}, color={160,160,164}),
416                Line(points={{-120,-5},{-120,5}}, color={160,160,164}),
417                Text(
418                  extent={{-110,25},{-90,45}},
419                  lineColor={160,160,164},
420                  textString="i"),
421                Polygon(
422                  points={{105,23},{115,20},{105,17},{105,23}},
423                  lineColor={160,160,164},
424                  fillColor={160,160,164},
425                  fillPattern=FillPattern.Solid),
426                Line(points={{115,0},{125,0}}, color={160,160,164}),
427                Text(
428                  extent={{90,45},{110,25}},
429                  lineColor={160,160,164},
430                  textString="i"),
431                Rectangle(extent={{-70,30},{70,-30}}),
432                Line(points={{-96,0},{-70,0}}),
433                Line(points={{70,0},{96,0}}),
434                Line(points={{0,-30},{0,-90}}, color={191,0,0}),
435                Line(points={{-52,-50},{48,50}}, color={0,0,255}),
436                Polygon(
437                  points={{40,52},{50,42},{54,56},{40,52}},
438                  lineColor={0,0,255},
439                  fillColor={0,0,255},
440                  fillPattern=FillPattern.Solid)}),
441            Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100,-100},
442                    {100,100}}), graphics={
443                Text(extent={{-142,60},{143,118}}, textString="%name"),
444                Line(points={{-90,0},{-70,0}}),
445                Line(points={{70,0},{90,0}}),
446                Rectangle(
447                  extent={{-70,30},{70,-30}},
448                  lineColor={0,0,255},
449                  fillColor={255,255,255},
450                  fillPattern=FillPattern.Solid),
451                Line(points={{0,-30},{0,-91}}, color={191,0,0}),
452                Line(points={{-52,-50},{48,50}}, color={0,0,255}),
453                Polygon(
454                  points={{40,52},{50,42},{54,56},{40,52}},
455                  lineColor={0,0,255},
456                  fillColor={0,0,255},
457                  fillPattern=FillPattern.Solid)}),
458            Documentation(info="<HTML>
459<p>This is a model for an electrical resistor where the generated heat
460is dissipated to the environment via connector <b>heatPort</b> and where
461the resistance R is temperature dependent according to the following
462equation:</p>
463<pre>    R = R_ref*(1 + alpha*(heatPort.T - T_ref))
464</pre>
465<p><b>alpha</b> is the <b>temperature coefficient of resistance</b>, which
466is often abbreviated as <b>TCR</b>. In resistor catalogues, it is usually
467defined as <b>X [ppm/K]</b> (parts per million, similarly to per centage)
468meaning <b>X*1.e-6 [1/K]</b>. Resistors are available for 1 .. 7000 ppm/K,
469i.e., alpha = 1e-6 .. 7e-3 1/K;</p>
470<p>When connector <b>heatPort</b> is <b>not</b> connected, the temperature
471dependent behaviour is switched off by setting heatPort.T = T_ref.
472Additionally, the equation <tt>heatPort.Q_flow = 0</tt> is implicitly present
473due to a special rule in Modelica that flow variables of not connected
474connectors are set to zero.</p>
475</HTML>
476",         revisions=
477                 "<html>
478<ul>
479<li><i>  </i>
480       </li>
481<li><i> 2002   </i>
482       by Anton Haumer<br> initially implemented<br>
483       </li>
484</ul>
485</html>"),  uses(Modelica(version="2.2.1")));
486          Modelica.Thermal.HeatTransfer.Interfaces.HeatPort_a heatPort annotation (Placement(
487                transformation(
488                origin={0,-100},
489                extent={{10,-10},{-10,10}},
490                rotation=270)));
491        equation
492          v = R*i;
493
494          if cardinality(heatPort) > 0 then
495            R = R_ref*(1 + alpha*(heatPort.T - T_ref));
496            heatPort.Q_flow = -v*i;
497          else
498            /* heatPort is not connected resulting in the
499         implicit equation 'heatPort.Q_flow = 0'
500      */
501            R = R_ref;
502            heatPort.T = T_ref;
503          end if;
504        end HeatingResistor;
505      end Basic;
506    end Analog;
507  end Electrical;
508
509  package Icons "Library of icons"
510    partial block ObsoleteBlock
511      "Icon for an obsolete block (use only for this case)"
512
513      annotation (__Dymola_obsolete="Only used to mark an obsolete block. Do not use otherwise.",
514              Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100,
515                -100},{100,100}}), graphics={Rectangle(
516              extent={{-102,102},{102,-102}},
517              lineColor={255,0,0},
518              pattern=LinePattern.Dash,
519              lineThickness=0.5)}),        Documentation(info="<html>
520<p>
521This partial class is intended to design a <em>default icon
522for an obsolete class</em> that will be removed from the
523PowerTrain library later on.
524<p>
525</html>",
526        revisions="<html>
527<img src=\"../Extras/Images/dlr_logo.png\"  width=60 >
528 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
529 <b>      Copyright &copy; 1999-2007, DLR Institute of Robotics and Mechatronics</b>
530</html>"));
531    equation
532
533    end ObsoleteBlock;
534
535    partial model ObsoleteModel
536      "Icon for an obsolete model (use only for this case)"
537
538      annotation (__Dymola_obsolete="Only used to mark an obsolete model. Do not use otherwise.",
539              Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100,
540                -100},{100,100}}), graphics={Rectangle(
541              extent={{-102,102},{102,-102}},
542              lineColor={255,0,0},
543              pattern=LinePattern.Dash,
544              lineThickness=0.5)}),        Documentation(info="<html>
545<p>
546This partial class is intended to design a <em>default icon
547for an obsolete class</em> that will be removed from the
548PowerTrain library later on.
549<p>
550</html>",
551        revisions="<html>
552<img src=\"../Extras/Images/dlr_logo.png\"  width=60 >
553 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
554 <b>      Copyright &copy; 1999-2007, DLR Institute of Robotics and Mechatronics</b>
555</html>"));
556    equation
557
558    end ObsoleteModel;
559
560    partial class Enumeration
561      "Obsolete class (icon for an enumeration emulated by a package). Use a real enumeration instead"
562
563      annotation (__Dymola_obsolete="Icon for an emulated enumeration. Emulated enumerations are no longer used (only real enumerations)",
564            Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100,-100},
565                {100,100}}), graphics={
566            Text(extent={{-138,164},{138,104}}, textString="%name"),
567            Ellipse(
568              extent={{-100,100},{100,-100}},
569              lineColor={255,0,127},
570              fillColor={255,255,255},
571              fillPattern=FillPattern.Solid),
572            Text(
573              extent={{-100,100},{100,-100}},
574              lineColor={255,0,127},
575              fillColor={223,159,191},
576              fillPattern=FillPattern.Solid,
577              textString="e")}),
578                          Documentation(info="<html>
579<p>
580This icon is designed for an <b>enumeration</b>
581(that is emulated by a package).
582</p>
583</html>"));
584    end Enumeration;
585  end Icons;
586
587  package Mechanics
588    "Library of 1-dim. and 3-dim. mechanical components (multi-body, rotational, translational)"
589
590    package MultiBody "Library to model 3-dimensional mechanical systems"
591      package Forces
592        "Components that exert forces and/or torques between frames"
593        model WorldForceAndTorque
594          "Obsolete model. Use instead Modelica.Mechanics.MultiBody.Forces.WorldForceAndTorque"
595
596          import SI = Modelica.SIunits;
597          import Modelica.Mechanics.MultiBody.Types;
598          extends Modelica.Mechanics.MultiBody.Interfaces.PartialOneFrame_b;
599          extends ObsoleteModelica3.Icons.ObsoleteModel;
600
601          Modelica.Blocks.Interfaces.RealInput load[6]
602            "[1:6] = x-, y-, z-coordinates of force and x-, y-, z-coordiantes of torque resolved in world frame"
603            annotation (Placement(transformation(extent={{-140,-20},{-100,20}},
604                  rotation=0)));
605          parameter Boolean animation=true
606            "= true, if animation shall be enabled";
607          parameter Real N_to_m(unit="N/m") = world.defaultN_to_m
608            " Force arrow scaling (length = force/N_to_m)" 
609            annotation (Dialog(group="if animation = true", enable=animation));
610          parameter Real Nm_to_m(unit="N.m/m") = world.defaultNm_to_m
611            " Torque arrow scaling (length = torque/Nm_to_m)" 
612            annotation (Dialog(group="if animation = true", enable=animation));
613          input SI.Diameter forceDiameter=world.defaultArrowDiameter
614            " Diameter of force arrow" annotation (Dialog(group="if animation = true", enable=animation));
615          input SI.Diameter torqueDiameter=forceDiameter
616            " Diameter of torque arrow" annotation (Dialog(group="if animation = true", enable=animation));
617          input Types.Color forceColor=Modelica.Mechanics.MultiBody.Types.Defaults.ForceColor
618            " Color of force arrow" annotation (Dialog(group="if animation = true", enable=animation));
619          input Types.Color torqueColor=Modelica.Mechanics.MultiBody.Types.Defaults.TorqueColor
620            " Color of torque arrow" annotation (Dialog(group="if animation = true", enable