forked from modelica/ModelicaStandardLibrary
-
Notifications
You must be signed in to change notification settings - Fork 0
/
ReleaseNotes.mo
6216 lines (5599 loc) · 322 KB
/
ReleaseNotes.mo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
within Modelica.UsersGuide;
package ReleaseNotes "Release notes"
extends Modelica.Icons.ReleaseNotes;
class VersionManagement "Version Management"
extends Modelica.Icons.ReleaseNotes;
annotation (Documentation(info="<html>
<h4>Development branches</h4>
<p>
Further development and maintenance of the Modelica Standard Library is performed with
two branches on the public <a href=\"https://github.com/modelica/ModelicaStandardLibrary.git\">GitHub repository</a> of the Modelica Association.
</p>
<p>
Since version 4.0.0 the Modelica Standard Library uses semantic versioning following the
convention:
</p>
<blockquote><strong><code>MAJOR.MINOR.BUGFIX</code></strong></blockquote>
<p>
This provides a mechanism for maintaining releases and bug-fixes in a well defined way and is inspired
by (but not identical to) <a href=\"https://semver.org\">https://semver.org</a>.
</p>
<h5>Main development branch</h5>
<p>
Name: \"master\"
</p>
<p>
This branch contains the actual development version, i.e., all bug-fixes
and new features.
New features must have been tested before including them.
However, the exhaustive tests for a new version are (usually) not performed.
This version is usually only be used by the developers of the
Modelica Standard Library and is not utilized by Modelica users.
</p>
<h5>Maintenance branch</h5>
<p>
Name: \"maint/4.1.x\"
</p>
<p>
This branch contains the released Modelica Standard Library version (e.g., v4.1.0)
where all bug-fixes since this release date are included
(also consecutive <code>BUGFIX</code> versions 4.1.1, 4.1.2, etc.,
up to when a new <code>MINOR</code> or <code>MAJOR</code> release becomes available;
i.e., there will not be any further <code>BUGFIX</code> versions (i.e., 4.1.x) of a previous release).
These bug-fixes might not yet be tested with all test cases or with
other Modelica libraries. The goal is that a vendor may take this version at
any time for a new release of its software, in order to incorporate the latest
bug fixes.
</p>
<h4>Contribution workflow</h4>
<p>
The general <a href=\"https://guides.github.com/activities/forking/\">contribution workflow</a> is usually as follows:
</p>
<ol>
<li>Fork the repository to your account by
<a href=\"https://help.github.com/articles/fork-a-repo/\">using the Fork button</a> of the GitHub repository site.</li>
<li>Clone the forked repository to your computer. Make sure to checkout the maintenance branch if the bug fix is going to get merged to the maintenance branch.</li>
<li>Create a new topic branch and give it a meaningful name, like, e.g., \"issue2161-fix-formula\".</li>
<li>Do your code changes and commit them, one change per commit.<br>
Single commits can be copied to other branches.<br>
Multiple commits can be squashed into one, but splitting is difficult.</li>
<li>Once you are done, push your topic branch to your forked repository.</li>
<li>Go to the upstream <a href=\"https://github.com/modelica/ModelicaStandardLibrary.git\">https://github.com/modelica/ModelicaStandardLibrary.git</a> repository and submit a <a href=\"https://help.github.com/articles/about-pull-requests/\">Pull Request</a> (PR).
<ul>
<li>If the PR is related to a certain issue, reference it by its number like this: #2161.</li>
<li>Once a pull request is opened, you can discuss and <a href=\"https://help.github.com/articles/about-pull-request-reviews/\">review</a> the potential changes with collaborators and add follow-up commits before the changes are merged into the repository.</li>
<li>If you have not already signed the Modelica Association Contributor License Agreement (CLA) you need to do so one-time.<br>
You can sign the CLA electronically using the CLA Assistant service and your GitHub account. There is no need to scan and send any documents by mail.</li>
</ul></li>
<li>Update your branch with the requested changes. If necessary, merge the latest
\"master\" branch into your topic branch and solve all merge conflicts in your topic branch.</li>
</ol>
<p>
There are some special guidelines for changes to the maintenance branch.
</p>
<ul>
<li> Every change to the maintenance branch has to get cherry-picked at the \"master\"
branch (see above), too.</li>
<li> When a new <code>BUGFIX</code> release is due the annotations
\"version\" and \"versionDate\" need to be updated.<br>
Example:
<blockquote><pre>
annotation(version = \"4.0.1\",
versionDate = \"2020-09-29\",
dateModified = \"2020-09-29 07:40:19Z\",
revisionId = \"$F​ormat:%h %ci$\")
</pre></blockquote>
The \"dateModfied\" is optional but might help identify the exact creation time of a release.
The \"revisionId\" field is a special annotation to identify the exact commit that the released
version represents.<br>
Example:
<blockquote>
Running the export command \"<code>git archive -o msl.zip v4.0.0</code>\" will
expand the above \"revisionId\" place holder to something like:
<blockquote><pre>revisionId = \"c04e23a0d 2020-04-01 12:00:00 +0200$\"</pre></blockquote>
</blockquote>
</li>
</ul>
<p>
As a recommendation, a valid bug-fix to the maintenance branch may contain one or
more of the following changes.
</p>
<ul>
<li> Correcting an equation.</li>
<li> Correcting attributes quantity/unit/defaultUnit in a declaration.</li>
<li> Improving/fixing the documentation.</li>
<li> Introducing a new name in the public section of a class
(model, package, ...) or in any section of a partial class is <strong>not</strong> allowed.
Since otherwise, a user might use this new name and when storing its model
and loading it with an older bug-fix version, an error would occur.</li>
<li> Introducing a new name in the protected section of a non-partial
class should only be done if absolutely necessary to fix a bug.
The problem is that this might be non-backward compatible,
because a user might already extend from this class and already using the same name.</li>
</ul>
</html>"));
end VersionManagement;
class Version_4_1_0 "Version 4.1.0 (Month D, 20YY)"
extends Modelica.Icons.ReleaseNotes;
annotation (Documentation(info="<html>
<p>
Version 4.1.0 is backward compatible to version 4.0.0, that is models developed with
versions 4.0.0 will work without any changes also with version 4.1.0.
Short Overview:
</p>
<ul>
<li>About <a href=\"modelica://Modelica/Resources/Documentation/Version-4.1.0/ResolvedGitHubIssues.html\">393 issues (including 295 pull requests)</a> have been addressed for this release.</li>
<li>This version is based on the recent Modelica language standard version 3.6.</li>
</ul>
<p>
The following <font color=\"blue\"><strong>Modelica packages</strong></font> have been tested that they work together with this release of package Modelica (alphabetical list).
</p>
<table border=\"1\" cellspacing=\"0\" cellpadding=\"2\">
</table>
<p><br>
The following <font color=\"blue\"><strong>new libraries</strong></font> have been added:
</p>
<table border=\"1\" cellspacing=\"0\" cellpadding=\"2\">
</table>
<p><br>
The following <font color=\"blue\"><strong>new components</strong></font> have been added to <font color=\"blue\"><strong>existing</strong></font> libraries:
</p>
<table border=\"1\" cellspacing=\"0\" cellpadding=\"2\" style=\"border-collapse:collapse;\">
</table>
<p><br>
The following <font color=\"blue\"><strong>existing components</strong></font> have been <font color=\"blue\"><strong>improved</strong></font> in a <font color=\"blue\"><strong>backward compatible</strong></font> way:
</p>
<table border=\"1\" cellspacing=\"0\" cellpadding=\"2\" style=\"border-collapse:collapse;\">
<tr><td colspan=\"2\"><strong>Modelica.Blocks.Sources</strong></td></tr>
<tr><td>CombiTimeTable</td>
<td>Added support of reading CSV files.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Blocks.Tables</strong></td></tr>
<tr><td>CombiTable1Ds<br>CombiTable1Dv<br>CombiTable2Ds<br>CombiTable2Dv</td>
<td>Added support of reading CSV files.</td></tr>
<tr><td colspan=\"2\"><strong>Electrical.PowerConverters.DCDC</strong></td></tr>
<tr><td>HBridge</td>
<td>An enhanced distribution of the fire signals avoids a short circuit on the source, and enables an enhanced pwm algorithm.</td></tr>
<tr><td>Control.SignalPWM</td>
<td>The reference signal can be chosen between sawtooth and triangle, and
the comparison between dutyCycle and reference signal is either applied common or separated for both fire ports.</td></tr>
<tr><td colspan=\"2\"><strong>Mechanics.Rotational.Components</strong></td></tr>
<tr><td>BearingFriction</td>
<td>The table interpolation in <code>tau_pos</code> utilizes the interpolation based on <a href=\"modelica://Modelica.Blocks.Types.ExternalCombiTable1D\">ExternalCombiTable1D</a>.</td></tr>
<tr><td>LossyGear</td>
<td>The table interpolation in <code>lossTable</code> utilizes the interpolation based on <a href=\"modelica://Modelica.Blocks.Types.ExternalCombiTable1D\">ExternalCombiTable1D</a>.</td></tr>
<tr><td colspan=\"2\"><strong>Mechanics.Translational.Components</strong></td></tr>
<tr><td>SupportFriction</td>
<td>The table interpolation in <code>f_pos</code> utilizes the interpolation based on <a href=\"modelica://Modelica.Blocks.Types.ExternalCombiTable1D\">ExternalCombiTable1D</a>.</td></tr>
</table>
<p><br>
The following <font color=\"blue\"><strong>existing components</strong></font> have been <font color=\"blue\"><strong>changed</strong></font> in a <font color=\"blue\"><strong>non-backward compatible</strong></font> way:
</p>
<table border=\"1\" cellspacing=\"0\" cellpadding=\"2\" style=\"border-collapse:collapse;\">
<tr><td colspan=\"2\"><strong>Mechanics.MultiBody</strong></td></tr>
<tr><td>World</td>
<td>The protected parameters <code>ndim</code>, <code>ndim2</code> and
<code>ndim_pointGravity</code> have been removed.</td></tr>
<tr><td colspan=\"2\"><strong>Mechanics.Rotational.Components</strong></td></tr>
<tr><td>Brake<br>Clutch<br>OneWayClutch</td>
<td>The table interpolation in <code>mu_pos</code> utilizes the interpolation based on <a href=\"modelica://Modelica.Blocks.Types.ExternalCombiTable1D\">ExternalCombiTable1D</a>.<br>The public variable <code>mu0</code> was changed to a protected final parameter.</td></tr>
<tr><td colspan=\"2\"><strong>Mechanics.Translational.Components</strong></td></tr>
<tr><td>Brake</td>
<td>The table interpolation in <code>mu_pos</code> utilizes the interpolation based on <a href=\"modelica://Modelica.Blocks.Types.ExternalCombiTable1D\">ExternalCombiTable1D</a>.<br>The public variable <code>mu0</code> was changed to a protected final parameter.</td></tr>
</table>
<p><br>
The following <font color=\"red\"><strong>critical errors</strong></font> have been fixed (i.e., errors
that can lead to wrong simulation results):
</p>
<table border=\"1\" cellspacing=\"0\" cellpadding=\"2\" style=\"border-collapse:collapse;\">
<tr><td colspan=\"2\"><strong>Modelica.Blocks.Tables</strong></td></tr>
<tr><td>CombiTable2Ds<br>CombiTable2Dv</td>
<td>The derivatives for one-sided extrapolation by constant continuation (i.e., extrapolation=Modelica.Blocks.Types.Extrapolation.HoldLastPoint) returned a constant zero value. This has been corrected.</td></tr>
</table>
</html>"));
end Version_4_1_0;
class Version_4_0_0 "Version 4.0.0 (June 4, 2020)"
extends Modelica.Icons.ReleaseNotes;
annotation (Documentation(info="<html>
<p>
Version 4.0.0 is <strong>not</strong> backward compatible to previous versions.
A tested conversion script is provided to transform models and libraries of previous versions 3.x.y to the new version.
Short Overview:
</p>
<ul>
<li>About <a href=\"modelica://Modelica/Resources/Documentation/Version-4.0.0/ResolvedGitHubIssues.html\">649 issues (including 432 pull requests)</a> have been addressed for this release.</li>
<li>This version is based on the recent Modelica language standard version 3.4.</li>
<li>The library version (i.e., \"4.0.0\") follows semantic versioning using the convention <code>MAJOR.MINOR.BUGFIX</code>
(see <a href=\"modelica://Modelica.UsersGuide.ReleaseNotes.VersionManagement\">Version Management</a> for details)
and was decoupled from the version of the utilized version of the Modelica language standard.</li>
<li>Obsolete classes of previous versions 3.x.y have been replaced.</li>
<li>Obsolete classes, that could not be automatically converted to alternative implementations, have been moved to library ObsoleteModelica4.</li>
<li>Major emphasis was put on improvements of the overall quality with respect to class naming and package structuring, conventions and style guide-lines, icons, documentation style and example models. The following sublibraries have been renamed.
<ol>
<li>Modelica.SIunits → Modelica.Units.{SI, NonSI, Conversions}</li>
<li>Modelica.Electrical.MultiPhase → Modelica.Electrical.Polyphase</li>
<li>Modelica.Electrical.QuasiStationary → Modelica.Electrical.QuasiStatic</li>
</ol></li>
<li>The licenses of the utilized open-source third-party software components as well as the BSD 3-clause license of the Modelica Standard Library itself are available as separate <a href=\"modelica://Modelica/Resources/Licenses\">resources</a>.</li>
</ul>
<p>
The exact difference between package Modelica version 4.0.0 and version 3.2.3 is
summarized in a <a href=\"modelica://Modelica/Resources/Documentation/Version-4.0.0/DifferencesTo323.html\">comparison table</a>.
</p>
<p>
The following <font color=\"blue\"><strong>Modelica packages</strong></font> have been tested that they work together with this release of package Modelica
(alphabetical list).
Hereby simulation results of the listed packages have been produced with package Modelica version 3.2.3 and
compared with the simulation results produced with version 4.0.0 Beta.1. The tests have been performed with Dymola 2020/2020x/2021:
</p>
<table border=\"1\" cellspacing=\"0\" cellpadding=\"2\">
<tr>
<th>Library</th>
<th>Version</th>
<th>Library provider</th>
</tr>
<tr>
<td><a href=\"https://github.com/lbl-srg/modelica-buildings/issues/1789\">Buildings</a></td>
<td> > 6.0.0</td>
<td>LBNL</td>
</tr>
<tr>
<td>BrushlessDCDrives</td>
<td>1.1.1</td>
<td>Dassault Systèmes</td>
</tr>
<tr>
<td>Clara</td>
<td>1.5.0</td>
<td>XRG Simulation GmbH and TLK-Thermo GmbH</td>
</tr>
<tr>
<td>ClaraPlus</td>
<td>1.3.0</td>
<td>XRG Simulation GmbH and TLK-Thermo GmbH</td>
</tr>
<tr>
<td>DriveControl</td>
<td>4.0.0</td>
<td>Anton Haumer</td>
</tr>
<tr>
<td>DymolaModels</td>
<td>1.1</td>
<td>Dassault Systèmes</td>
</tr>
<tr>
<td>EDrives</td>
<td>1.0.1</td>
<td>Anton Haumer and Christian Kral</td>
</tr>
<tr>
<td>ElectricalMachines</td>
<td>0.9.1</td>
<td>Anton Haumer</td>
</tr>
<tr>
<td>ElectricPowerSystems</td>
<td>1.3.1</td>
<td>Dassault Systèmes</td>
</tr>
<tr>
<td>ElectrifiedPowertrains</td>
<td>1.3.2</td>
<td>Dassault Systèmes</td>
</tr>
<tr>
<td>ElectroMechanicalDrives</td>
<td>2.2.0</td>
<td>Christian Kral</td>
</tr>
<tr>
<td>EMOTH</td>
<td>1.4.1</td>
<td>Anton Haumer</td>
</tr>
<tr>
<td>HanserModelica</td>
<td>1.1.0</td>
<td>Christian Kral</td>
</tr>
<tr>
<td>IBPSA</td>
<td> > 3.0.0</td>
<td>IBPSA Project 1</td>
</tr>
<tr>
<td>KeywordIO</td>
<td>0.9.0</td>
<td>Christian Kral</td>
</tr>
<tr>
<td>Modelica_DeviceDrivers</td>
<td>1.8.1</td>
<td>DLR, ESI ITI, and Linköping University (PELAB)</td>
</tr>
<tr>
<td>Optimization</td>
<td>2.2.4</td>
<td>DLR</td>
</tr>
<tr>
<td>PhotoVoltaics</td>
<td>1.6.0</td>
<td>Christian Kral</td>
</tr>
<tr>
<td>PlanarMechanics</td>
<td>1.4.1</td>
<td>Dirk Zimmer</td>
</tr>
<tr>
<td>Testing</td>
<td>1.3</td>
<td>Dassault Systèmes</td>
</tr>
<tr>
<td>ThermalSystems</td>
<td>1.6.0</td>
<td>TLK-Thermo GmbH</td>
</tr>
<tr>
<td>TIL</td>
<td>3.9.0</td>
<td>TLK-Thermo GmbH</td>
</tr>
<tr>
<td>TILMedia</td>
<td>3.9.0</td>
<td>TLK-Thermo GmbH</td>
</tr>
<tr>
<td>TSMedia</td>
<td>1.6.0</td>
<td>TLK-Thermo GmbH</td>
</tr>
<tr>
<td>VehicleInterfaces</td>
<td>1.2.5</td>
<td>Modelica Association</td>
</tr>
<tr>
<td>WindPowerPlants</td>
<td>1.2.0</td>
<td>Christian Kral</td>
</tr>
</table>
<p><br>
The following <font color=\"blue\"><strong>new libraries</strong></font> have been added:
</p>
<table border=\"1\" cellspacing=\"0\" cellpadding=\"2\">
<tr><td><a href=\"modelica://Modelica.Clocked\">Modelica.Clocked</a></td>
<td>This library can be used to precisely define and synchronize sampled data systems with different sampling rates.<br>The library previously was
available as separate package <a href=\"https://github.com/modelica/Modelica_Synchronous\">Modelica_Synchronous</a>.
(This library was developed by DLR in close cooperation with Dassault Systèmes Lund.)
</td></tr>
<tr><td><a href=\"modelica://Modelica.Electrical.Batteries\">Modelica.Electrical.Batteries</a></td>
<td>This library offers simple battery models.<br>
(This library was developed by Anton Haumer and Christian Kral.)
</td></tr>
</table>
<p><br>
The following <font color=\"blue\"><strong>new components</strong></font> have been added to <font color=\"blue\"><strong>existing</strong></font> libraries:
</p>
<table border=\"1\" cellspacing=\"0\" cellpadding=\"2\" style=\"border-collapse:collapse;\">
<tr><td colspan=\"2\"><strong>Modelica.Blocks.Sources</strong></td></tr>
<tr><td>SineVariableFrequencyAndAmplitude<br>CosineVariableFrequencyAndAmplitude</td>
<td>Added signal sources with variable amplitude and frequency; sine and cosine waveforms are provided.</td></tr>
<tr><td>Sinc</td>
<td>Added signal source of <code> amplitude*sin(2*π*f*t)/(2*π*f*t)</code>.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Electrical.Analog.Sources</strong></td></tr>
<tr><td>SineVoltageVariableFrequencyAndAmplitude<br>CosineVoltageVariableFrequencyAndAmplitude<br>SineCurrentVariableFrequencyAndAmplitude<br>CosineCurrentVariableFrequencyAndAmplitude</td>
<td>Added voltage and current sources with variable amplitude and frequency; sine and cosine waveforms are provided.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Electrical.Machines.Sensors</strong></td></tr>
<tr><td>SinCosResolver</td>
<td>Added resolver with two sine and two cosine tracks to be used in drive control applications.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Electrical.Machines.Utilities</strong></td></tr>
<tr><td>SwitchYDwithArc</td>
<td>Added wye delta switch with arc model and time delay between the two switching events.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Electrical.PowerConverters</strong></td></tr>
<tr><td>ACAC</td>
<td>Added single-phase and polyphase triac models (AC/AC converters).</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Magnetic.FluxTubes.Shapes.FixedShape</strong></td></tr>
<tr><td>HollowCylinderCircumferentialFlux<br>Toroid</td>
<td>Added circumferential flux models of hollow cylinder and toroid with circular cross section.</td></tr>
<tr><td colspan=\"2\"><strong>Magnetic.QuasiStatic.FluxTubes.Shapes.FixedShape</strong></td></tr>
<tr><td>HollowCylinderCircumferentialFlux<br>Toroid</td>
<td>Added circumferential flux models of hollow cylinder and toroid with circular cross section.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Mechanics.MultiBody.Visualizers.Advanced</strong></td></tr>
<tr><td>Vector</td>
<td>Added 3-dimensional animation for visualization of vector quantities (force, torque, etc.)</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Mechanics.Translational.Components</strong></td></tr>
<tr><td>RollingResistance</td>
<td>Added resistance of a rolling wheel incorporating the inclination and rolling resistance coefficient.</td></tr>
<tr><td>Vehicle</td>
<td>Added simple vehicle model considering mass and inertia, drag and rolling resistance, inclination resistance.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Math</strong></td></tr>
<tr><td>BooleanVectors.andTrue</td>
<td>Similar to <code>allTrue</code>, but return <code>true</code> on empty input vector.</td></tr>
<tr><td>Matrices.LAPACK.dgeqp3</td>
<td>Compute the QR factorization with column pivoting of square or rectangular matrix.</td></tr>
<tr><td>Random.Utilities.automaticLocalSeed</td>
<td>Create an automatic local seed from the instance name.</td></tr>
</table>
<p><br>
The following <font color=\"blue\"><strong>existing components</strong></font> have been <font color=\"blue\"><strong>improved</strong></font> in a <font color=\"blue\"><strong>backward compatible</strong></font> way:
</p>
<table border=\"1\" cellspacing=\"0\" cellpadding=\"2\" style=\"border-collapse:collapse;\">
<tr><td colspan=\"2\"><strong>Modelica.Blocks.Sources</strong></td></tr>
<tr><td>CombiTimeTable</td>
<td>Added second derivative and modified Akima interpolation.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Blocks.Tables</strong></td></tr>
<tr><td>CombiTable1Ds<br>CombiTable1Dv</td>
<td>Added second derivatives and modified Akima interpolation.</td></tr>
<tr><td>CombiTable2Ds<br>CombiTable2Dv</td>
<td>Added second derivatives.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Electrical.Analog.Basic</strong></td></tr>
<tr><td>Gyrator</td>
<td>Serves as generalized gyrator model as IdealGyrator was removed.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Electrical.Analog.Ideal</strong></td></tr>
<tr><td>IdealizedOpAmpLimited</td>
<td>Added homotopy to operational amplifier.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Electrical.Semiconductors</strong></td></tr>
<tr><td>NPN<br>PNP</td>
<td>Added optional substrate connector.</td></tr>
</table>
<p><br>
The following <font color=\"blue\"><strong>existing components</strong></font> have been <font color=\"blue\"><strong>changed</strong></font> in a <font color=\"blue\"><strong>non-backward compatible</strong></font> way:
</p>
<table border=\"1\" cellspacing=\"0\" cellpadding=\"2\" style=\"border-collapse:collapse;\">
<tr><td colspan=\"2\"><strong>Modelica.Blocks</strong></td></tr>
<tr><td>Nonlinear.Limiter<br>Nonlinear.VariableLimiter</td>
<td>The superfluous parameter <code>limitsAtInit</code> has been removed.</td></tr>
<tr><td>Continuous.PID</td>
<td>The initialization option <code>initType</code> = <code>InitPID.DoNotUse_InitialIntegratorState</code> to only initialize the integrator state has been removed. This option has been converted to both initialize the integrator state and the derivative state, i.e., <code>initType</code> = <code>Init.InitialState</code>.</td></tr>
<tr><td>Continuous.LimPID</td>
<td>The superfluous parameter <code>limitsAtInit</code> has been removed.<br>The initialization option <code>initType</code> = <code>InitPID.DoNotUse_InitialIntegratorState</code> to only initialize the integrator state has been removed. This option has been converted to both initialize the integrator state and the derivative state, i.e., <code>initType</code> = <code>Init.InitialState</code>.</td></tr>
<tr><td>Nonlinear.DeadZone</td>
<td>The superfluous parameter <code>deadZoneAtInit</code> has been removed.</td></tr>
<tr><td>Interfaces.PartialNoise<br>Noise.UniformNoise<br>Noise.NormalNoise<br>Noise.TruncatedNormalNoise<br>Noise.BandLimitedWhiteNoise</td>
<td>As a side-effect of the updated computation in Modelica.Math.Random.Utilities.automaticLocalSeed the <code>localSeed</code> parameter is computed differently if <code>useAutomaticLocalSeed</code> is set to true.</td></tr>
<tr><td>Types.InitPID</td>
<td>The enumeration type has been converted to <code>Types.Init</code> with exception of the alternative <code>InitPID.DoNotUse_InitialIntegratorState</code>, that was converted to <code>Init.InitialState</code> leading to a different initialization behaviour.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Electrical.Machines.Utilities</strong></td></tr>
<tr><td>SwitchYD</td>
<td>The <a href=\"modelica://Modelica.Electrical.Polyphase.Ideal.IdealCommutingSwitch\">IdealCommutingSwitch</a> is replaced by an <a href=\"modelica://Modelica.Electrical.Polyphase.Ideal.IdealOpeningSwitch\">IdealOpeningSwitch</a> and an <a href=\"modelica://Modelica.Electrical.Polyphase.Ideal.IdealClosingSwitch\">IdealClosingSwitch</a> to allow a time delay between the two switching actions.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Electrical.Spice3</strong></td></tr>
<tr><td>Internal.MOS2<br>Semiconductors.M_NMOS2<br>Semiconductors.M_PMOS2</td>
<td>The final parameter <code>vp</code> has been removed.<br>The obsolete variables <code>cc_obsolete</code>, <code>icqmGB</code>, <code>icqmGS</code>, <code>icqmGD</code>, <code>MOScapgd</code>, <code>MOScapgs</code>, <code>MOScapgb</code>, <code>qm</code> and <code>vDS</code> have been removed.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Magnetic.QuasiStatic.FundamentalWave.Utilities</strong></td></tr>
<tr><td>SwitchYD</td>
<td>The <a href=\"modelica://Modelica.Electrical.QuasiStatic.Polyphase.Ideal.IdealCommutingSwitch\">IdealCommutingSwitch</a> is replaced by an <a href=\"modelica://Modelica.Electrical.QuasiStatic.Polyphase.Ideal.IdealOpeningSwitch\">IdealOpeningSwitch</a> and an <a href=\"modelica://Modelica.Electrical.QuasiStatic.Polyphase.Ideal.IdealClosingSwitch\">IdealClosingSwitch</a> to allow a time delay between the two switching actions.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Mechanics.MultiBody.Forces</strong></td></tr>
<tr><td>WorldForce</td>
<td>The parameters <code>diameter</code> and <code>N_to_m</code> have been removed.</td></tr>
<tr><td>WorldTorque</td>
<td>The parameters <code>diameter</code> and <code>Nm_to_m</code> have been removed.</td></tr>
<tr><td>WorldForceAndTorque</td>
<td>The parameters <code>forceDiameter</code>, <code>torqueDiameter</code>, <code>N_to_m</code>, and <code>Nm_to_m</code> have been removed.</td></tr>
<tr><td>Force</td>
<td>The parameter <code>N_to_m</code> has been removed.</td></tr>
<tr><td>Torque</td>
<td>The parameter <code>Nm_to_m</code> has been removed.</td></tr>
<tr><td>ForceAndTorque</td>
<td>The parameters <code>N_to_m</code> and <code>Nm_to_m</code> have been removed.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Mechanics.MultiBody.Joints</strong></td></tr>
<tr><td>Prismatic</td>
<td>The superfluous constant <code>s_offset</code> has been removed.</td></tr>
<tr><td>Revolute</td>
<td>The superfluous constant <code>phi_offset</code> has been removed.</td></tr>
<tr><td>FreeMotion<br>FreeMotionScalarInit</td>
<td>The parameter <code>arrowDiameter</code> has been removed.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Mechanics.MultiBody.Parts</strong></td></tr>
<tr><td>Body</td>
<td>The superfluous parameter <code>z_a_start</code> has been removed.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Mechanics.MultiBody.Sensors</strong></td></tr>
<tr><td>AbsoluteSensor<br>RelativeSensor<br>Distance</td>
<td>The parameter <code>arrowDiameter</code> has been removed.</td></tr>
<tr><td>CutForce</td>
<td>The parameters <code>forceDiameter</code> and <code>N_to_m</code> have been removed.</td></tr>
<tr><td>CutForce</td>
<td>The parameters <code>torqueDiameter</code> and <code>Nm_to_m</code> have been removed.</td></tr>
<tr><td>CutForceAndTorque</td>
<td>The parameters <code>forceDiameter</code>, <code>torqueDiameter</code>, <code>N_to_m</code>, and <code>Nm_to_m</code> have been removed.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Mechanics.MultiBody.Visualizers</strong></td></tr>
<tr><td>Advanced.Arrow<br>Advanced.DoubleArrow<br>FixedArrow<br>SignalArrow</td>
<td>The parameter <code>diameter</code> has been removed.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Fluid.Machines</strong></td></tr>
<tr><td>PartialPump</td>
<td>The superfluous parameter <code>show_NPSHa</code> has been removed.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Thermal.HeatTransfer</strong></td></tr>
<tr><td>Fahrenheit.FromKelvin<br>Rankine.FromKelvin<br>Rankine.ToKelvin</td>
<td>The superfluous parameter <code>n</code> has been removed.</td></tr>
</table>
<p><br>
The following <font color=\"red\"><strong>critical errors</strong></font> have been fixed (i.e., errors
that can lead to wrong simulation results):
</p>
<table border=\"1\" cellspacing=\"0\" cellpadding=\"2\" style=\"border-collapse:collapse;\">
<tr><td colspan=\"2\"><strong>Modelica.Blocks.Math</strong></td></tr>
<tr><td>Pythagoras</td>
<td>The case with negative <code>y2</code> was not correctly considered if <code>u1IsHypotenuse</code> is <code>true</code>. This has been corrected.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Electrical.Semiconductors</strong></td></tr>
<tr><td>Diode</td>
<td>Fixed unit error in current equations.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Electrical.Spice3.Additionals</strong></td></tr>
<tr><td>poly</td>
<td>The case with one coefficient and one variable was not correctly considered. This has been corrected.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Fluid.Dissipation.PressureLoss.General</strong></td></tr>
<tr><td>dp_volumeFlowRate_DP<br>dp_volumeFlowRate_MFLOW</td>
<td>The mass flow rate was not correctly computed if the pressure drop is a linear function of the volume flow rate. This has been corrected.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Media.Air.MoistAir</strong></td></tr>
<tr><td>density_derX<br>s_pTX<br>s_pTX_der</td>
<td>The calculation was wrong. This has been corrected.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Media.Air.ReferenceAir.Air_Base</strong></td></tr>
<tr><td>BaseProperties</td>
<td>The unit of the specific gas constant <code>R_s</code> was not correctly considered. This has been corrected.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Media.IdealGases.Common.Functions</strong></td></tr>
<tr><td>s0_Tlow_der</td>
<td>The calculation was wrong. This has been corrected.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Media.IdealGases.Common.MixtureGasNasa</strong></td></tr>
<tr><td>T_hX</td>
<td>The function inputs <code>exclEnthForm</code>, <code>refChoice</code> and <code>h_off</code> were not considered. This has been corrected.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Media.Incompressible.TableBased</strong></td></tr>
<tr><td>T_ph</td>
<td>The pressure negligence was not considered. This has been corrected.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Media.R134a.R134a_ph</strong></td></tr>
<tr><td>setState_pTX</td>
<td>Only applicable in one-phase regime: The Newton iteration for the calculation of the density may possibly converge to the wrong root. This has been improved.</td></tr>
<tr><td>setState_dTX<br>setState_psX</td>
<td>The calculation was wrong in two-phase regime. This has been corrected.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Utilities.System</strong></td></tr>
<tr><td>getTime</td>
<td>The month and year was only correctly returned if the implementing source file (ModelicaInternal.c) was compiled for Windows OS. This has been corrected.</td></tr>
</table>
</html>"));
end Version_4_0_0;
class Version_3_2_3 "Version 3.2.3 (January 23, 2019)"
extends Modelica.Icons.ReleaseNotes;
annotation (Documentation(info="<html>
<p>
Version 3.2.3 is backward compatible to version 3.2.2, that is models developed with
versions 3.0, 3.0.1, 3.1, 3.2, 3.2.1 or 3.2.2 will work without any changes also with version 3.2.3.
This version is a \"clean-up\" with major emphasis on quality improvement and
tool compatibility. The goal is that all
<a href=\"https://www.modelica.org/tools\">Modelica tools</a> will support this package
and will interpret it in the same way. Short Overview:
</p>
<ul>
<li>About <a href=\"modelica://Modelica/Resources/Documentation/Version-3.2.3/ResolvedGitHubIssues.html\">557 issues (including pull requests)</a>
have been addressed for this release.</li>
<li><strong>94</strong> component models and blocks, <strong>36</strong> example models and <strong>9</strong> functions are newly included.</li>
<li>The license has been changed to BSD 3-clause, visit: <a href=\"https://modelica.org/licenses/modelica-3-clause-bsd\">https://modelica.org/licenses/modelica-3-clause-bsd</a>.</li>
</ul>
<p>
The exact difference between package Modelica version 3.2.3 and version 3.2.2 is
summarized in a <a href=\"modelica://Modelica/Resources/Documentation/Version-3.2.3/DifferencesTo322.html\">comparison table</a>.
</p>
<p><br>
The following <font color=\"blue\"><strong>new libraries</strong></font> have been added:
</p>
<table border=\"1\" cellspacing=\"0\" cellpadding=\"2\">
<tr><td><a href=\"modelica://Modelica.Magnetic.QuasiStatic.FluxTubes\">Modelica.Magnetic.QuasiStatic.FluxTubes</a></td>
<td>
This library provides models for the investigation of quasi-static electromagnetic devices with lumped magnetic networks
in a comparable way as <a href=\"modelica://Modelica.Magnetic.FluxTubes\">Modelica.Magnetic.FluxTubes</a>.<br>
(This library was developed by Christian Kral.)
</td></tr>
<tr><td><a href=\"modelica://Modelica.Electrical.Machines.Examples.ControlledDCDrives\">Modelica.Electrical.Machines.Examples.ControlledDCDrives</a></td>
<td>
This library demonstrates the control of a permanent magnet dc machine: current control, speed control and position control
along with the necessary components in sublibrary Utilities.<br>
(This library was developed by Anton Haumer.)
</td></tr>
</table>
<p><br>
The following <font color=\"blue\"><strong>new components</strong></font> have been added
to <font color=\"blue\"><strong>existing</strong></font> libraries:
</p>
<table border=\"1\" cellspacing=\"0\" cellpadding=\"2\" style=\"border-collapse:collapse;\">
<tr><td colspan=\"2\"><strong>Modelica.Blocks.Interfaces.Adaptors</strong></td></tr>
<tr><td width=\"150\">FlowToPotentialAdaptor<br>PotentialToFlowAdaptor</td>
<td> Partial adaptors for generation of FMUs, optionally taking first and second derivative into account,
for consistent components in various domains.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Blocks.Math</strong></td></tr>
<tr><td width=\"150\">Power</td>
<td>Computes the power of the input signal.</td></tr>
<tr><td width=\"150\">WrapAngle</td>
<td> Wraps the angle signal at the input to the interval ]-π, π] or [0, 2π[.</td></tr>
<tr><td width=\"150\">Pythagoras</td>
<td> This block determines the hypotenuse from the legs or one leg from the hypotenuse and the other leg.</td></tr>
<tr><td width=\"150\">TotalHarmonicDistortion</td>
<td> This block calculates THD of the signal at the input.</td></tr>
<tr><td width=\"150\">RealFFT</td>
<td> This block samples the input and calculates the FFT, writing the result to a mat file when the simulation terminates.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Blocks.Routing</strong></td></tr>
<tr><td width=\"150\">Multiplex</td>
<td>Multiplexer block for <em>arbitrary</em> number of input signals</td></tr>
<tr><td width=\"150\">DeMultiplex</td>
<td>Demultiplexer block for <em>arbitrary</em> number of output signals</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Blocks.Tables</strong></td></tr>
<tr><td width=\"150\">CombiTable2Dv</td>
<td>Variant of CombiTable2D (table look-up in two dimensions) with vector inputs and vector output</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.ComplexBlocks.Routing</strong></td></tr>
<tr><td width=\"150\">Replicator<br>ExtractSignal<br>Extractor<br>ComplexPassThrough</td>
<td> Complex implementations analogous to the real implementations.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.ComplexBlocks.ComplexMath</strong></td></tr>
<tr><td width=\"150\">Bode</td>
<td> Determine variables of a Bode diagram.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.ComplexBlocks.Sources</strong></td></tr>
<tr><td width=\"150\">RampPhasor</td>
<td> A source of a phasor with constant angle and ramped amplitude.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Electrical.Analog.Basic</strong></td></tr>
<tr><td width=\"150\">GeneralCurrentToVoltageAdaptor<br>GeneralVoltageToCurrentAdaptor</td>
<td> Adaptors for the generation of FMUs, optionally taking first and second derivative into account.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Electrical.Analog.Sensors</strong></td></tr>
<tr><td width=\"150\">MultiSensor</td>
<td> Measures voltage, current and power simultaneously.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Electrical.Polyphase.Sensors</strong></td></tr>
<tr><td width=\"150\">MultiSensor</td>
<td> Measures voltage, current and active power for each phase as well as total power simultaneously.</td></tr>
<tr><td width=\"150\">AronSensor</td>
<td> Measures active power for a three-phase system by two single-phase power sensors in an Aron circuit.</td></tr>
<tr><td width=\"150\">ReactivePowerSensor</td>
<td> Measures reactive power for a three-phase system.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Electrical.Machines.Examples</strong></td></tr>
<tr><td width=\"150\">SMEE_DOL</td>
<td> Electrically excited synchronous machine, starting direct on line via the damper cage,
synchronised by increasing excitation voltage.</td></tr>
<tr><td width=\"150\">SMR_DOL</td>
<td> Synchronous reluctance machine, starting direct on line via the damper cage,
synchronised when reaching synchronous speed.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Electrical.Machines.Sensors</strong></td></tr>
<tr><td width=\"150\">HallSensor</td>
<td> Simple model of a hall sensor, measuring the angle aligned with the orientation of phase 1.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Electrical.PowerConverters.DCAC.Control</strong></td></tr>
<tr><td width=\"150\">PWM<br>SVPWM<br>IntersectivePWM</td>
<td> Standard three-phase pwm algorithms: space vector and intersective.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Electrical.PowerConverters.DCDC</strong></td></tr>
<tr><td width=\"150\">ChopperStepUp</td>
<td> Step up chopper (boost converter) model.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Electrical.QuasiStatic.SinglePhase.Sensors</strong></td></tr>
<tr><td width=\"150\">MultiSensor</td>
<td> Measures voltage, current and apparent power simultaneously.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Electrical.QuasiStatic.Polyphase.Sensors</strong></td></tr>
<tr><td width=\"150\">MultiSensor</td>
<td> Measures voltage, current and apparent power for m phases as well as total apparent power simultaneously.</td></tr>
<tr><td width=\"150\">AronSensor</td>
<td> Measures active power for a three-phase system by two single-phase power sensors in an Aron circuit.</td></tr>
<tr><td width=\"150\">ReactivePowerSensor</td>
<td> Measures reactive power for a three-phase system.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Electrical.QuasiStatic.{SinglePhase, Polyphase}.Sources</strong></td></tr>
<tr><td width=\"150\">FrequencySweepVoltageSource<br>FrequencySweepCurrentSource</td>
<td> Voltage source and current source with integrated frequency sweep.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Mechanics.MultiBody</strong></td></tr>
<tr><td width=\"150\">Visualizers.Rectangle</td>
<td>A planar rectangular surface.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Mechanics.Rotational.Components</strong></td></tr>
<tr><td width=\"150\">GeneralAngleToTorqueAdaptor<br>GeneralTorqueToAngleAdaptor</td>
<td> Adaptors for the generation of FMUs, optionally taking first and second derivative into account.<br>
Note: These adaptors give the same results as:<br>
AngleToTorqueAdaptor<br>TorqueToAngleAdaptor<br>
but extend from <a href=\"modelica://Modelica.Blocks.Interfaces.Adaptors\">Modelica.Blocks.Interfaces.Adaptors</a>
like adaptors in other domains.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Mechanics.Rotational.Sources</strong></td></tr>
<tr><td width=\"150\">EddyCurrentTorque</td>
<td> Rotational eddy current brake.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Mechanics.Translational.Components</strong></td></tr>
<tr><td width=\"150\">GeneralForceToPositionAdaptor<br>GeneralPositionToForceAdaptor</td>
<td> Adaptors for the generation of FMUs, optionally taking first and second derivative into account.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Mechanics.Translational.Sources</strong></td></tr>
<tr><td width=\"150\">EddyCurrentForce</td>
<td> Translational eddy current brake.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Magnetic.FundamentalWave.Examples</strong></td></tr>
<tr><td width=\"150\"> </td>
<td> A lot of new test examples for fundamental wave machines.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Magnetic.QuasiStatic.FundamentalWave.Sensors</strong></td></tr>
<tr><td width=\"150\">RotorDisplacementAngle</td>
<td> Measures the rotor displacement angle of a quasi-static machine.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Thermal.HeatTransfer.Components</strong></td></tr>
<tr><td width=\"150\">GeneralHeatFlowToTemperatureAdaptor<br>GeneralTemperatureToHeatFlowAdaptor</td>
<td> Adaptors for the generation of FMUs, optionally taking first derivative into account.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Thermal.FluidHeatFlow.Examples</strong></td></tr>
<tr><td width=\"150\">WaterPump<br>TestOpenTank<br>TwoTanks<br>TestCylinder</td>
<td> New examples testing and demonstrating the new resp. enhanced components.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Thermal.FluidHeatFlow.Components</strong></td></tr>
<tr><td width=\"150\">Pipe</td>
<td> A pipe model with optional heatPort which replaces the isolatedPipe and the heatedPipe.</td></tr>
<tr><td width=\"150\">OpenTank</td>
<td> A simple model of an open tank.</td></tr>
<tr><td width=\"150\">Cylinder</td>
<td> A simple model of a piston/cylinder with translational flange.</td></tr>
<tr><td width=\"150\">OneWayValve</td>
<td> A simple one way valve model (comparable to an electrical ideal diode)</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Thermal.FluidHeatFlow.Media</strong></td></tr>
<tr><td width=\"150\">Water_10degC<br>Water_90degC<br>Glycol20_20degC<br>Glycol50_20degC<br>MineralOil</td>
<td> Several new records defining media properties.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Thermal.FluidHeatFlow.Interfaces</strong></td></tr>
<tr><td width=\"150\">SinglePortLeft</td>
<td> Replaces the (now obsolete) partial model Ambient and is also used for Sources.AbsolutePressure.</td></tr>
<tr><td width=\"150\">SinglePortBottom</td>
<td> Same as SinglePortLeft but with the flowPort at the bottom; used for the new Components.OpenTank model.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Constants</strong></td></tr>
<tr><td width=\"150\">q</td>
<td> The elementary charge of an electron.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Icons</strong></td></tr>
<tr><td width=\"150\">FunctionsPackage</td>
<td> This icon indicates a package that contains functions.</td></tr>
<tr><td width=\"150\">RecordPackage</td>
<td> This icon indicates a package that contains records.</td></tr>
</table>
<p><br>
The following <font color=\"blue\"><strong>existing components</strong></font>
have been marked as <font color=\"blue\"><strong>obsolete</strong></font> and will be
<font color=\"blue\"><strong>removed</strong></font> in a future release:
</p>
<table border=\"1\" cellspacing=\"0\" cellpadding=\"2\" style=\"border-collapse:collapse;\">
<tr><td colspan=\"2\"><strong>Modelica.Blocks.Interfaces.Adaptors</strong></td></tr>
<tr><td>SendReal<br>SendBoolean<br>SendInteger<br>ReceiveReal<br>ReceiveBoolean<br>ReceiveInteger</td>
<td>Use expandable connectors instead.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.StateGraph.Temporary</strong></td></tr>
<tr><td>SetRealParameter</td>
<td>Use parameter Real instead.</td></tr>
<tr><td>anyTrue</td>
<td>Use Modelica.Math.BooleanVectors.anyTrue instead.</td></tr>
<tr><td>allTrue</td>
<td>Use Modelica.Math.BooleanVectors.allTrue instead instead.</td></tr>
<tr><td>RadioButton</td>
<td>Use future model from Modelica.Blocks.Interaction instead.</td></tr>
<tr><td>NumericValue</td>
<td>Use Modelica.Blocks.Interaction.Show.RealValue instead.</td></tr>
<tr><td>IndicatorLamp</td>
<td>Use Modelica.Blocks.Interaction.Show.BooleanValue instead.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Electrical.Digital.Converters</strong></td></tr>
<tr><td>LogicToXO1<br>LogicToXO1Z</td>
<td>Use LogicToX01 or LogicToX01Z instead.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Electrical.Machines</strong></td></tr>
<tr><td>BasicMachines.Components.BasicTransformer</td>
<td>Use Interfaces.PartialBasicTransformer instead.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Electrical.Spice3.Internal</strong></td></tr>
<tr><td>BJT</td>
<td>Use BJT2 instead.</td></tr>
<tr><td>Bjt3.*</td>
<td>Use revised classes instead.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Mechanics.MultiBody</strong></td></tr>
<tr><td>Examples.Loops.Utilities.GasForce</td>
<td>Use Examples.Loops.Utilities.GasForce2 instead.</td></tr>
<tr><td>Sensors.TansformAbsoluteVector<br>Sensors.TansformRelativeVector</td>
<td>Use Sensors.TransformAbsoluteVector or Sensors.TransformRelativeVector instead.</td></tr>
<tr><td>Visualizers.Ground</td>
<td>Use ground plane visualization of World or Visualizers.Rectangle instead.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Fluid.Icons</strong></td></tr>
<tr><td>VariantLibrary<br>BaseClassLibrary</td>
<td>Use icons from Modelica.Icons instead.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Media.Examples</strong></td></tr>
<tr><td>Tests.Components.*</td>
<td>Use classes from Utilities instead.</td></tr>
<tr><td>TestOnly.*<br>Tests.MediaTestModels.*</td>
<td>Use test models from ModelicaTest.Media instead.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Thermal.FluidHeatFlow</strong></td></tr>
<tr><td>Components.IsolatedPipe<br>Components.HeatedPipe</td>
<td>Extend from the new pipe model with optional heatPort.</td></tr>
<tr><td>Interfaces.Ambient</td>
<td>Extends from SinglePortLeft.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Math</strong></td></tr>
<tr><td>baseIcon1<br>baseIcon2</td>
<td>Use icons from Modelica.Math.Icons instead.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Icons</strong></td></tr>
<tr><td>Library<br>Library2<br>GearIcon<br>MotorIcon<br>Info</td>
<td>Use (substitute) icons from Modelica.Icons, Modelica.Mechanics.Rotational.Icons or Modelica.Electrical.Machines.Icons instead.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.SIunits.Conversions.NonSIunits</strong></td></tr>
<tr><td>FirstOrderTemperaturCoefficient<br>SecondOrderTemperaturCoefficient</td>
<td>Use Modelica.SIunits.LinearTemperatureCoefficientResistance or Modelica.SIunits.QuadraticTemperatureCoefficientResistance instead.</td></tr>
</table>
<p><br>
The following <font color=\"blue\"><strong>existing components</strong></font>
have been <font color=\"blue\"><strong>improved</strong></font> in a
<font color=\"blue\"><strong>backward compatible</strong></font> way:
</p>
<table border=\"1\" cellspacing=\"0\" cellpadding=\"2\" style=\"border-collapse:collapse;\">
<tr><td colspan=\"2\"><strong>Modelica.Blocks.Continuous</strong></td></tr>
<tr><td>Integrator<br>LimIntegrator</td>
<td>Added optional reset and set value inputs.</td></tr>
<tr><td>LimPID</td>
<td>Added an optional feed-forward input.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Blocks.Sources</strong></td></tr>
<tr><td>CombiTimeTable</td>
<td>The time events were not considered at the interval boundaries in case of linear interpolation and non-replicated sample points. This has been generalized by introduction of the new parameter <code>timeEvents</code> with the default option to always generate time events at the interval boundaries, which might lead to slower, but more accurate simulations.</td></tr>
<tr><td>BooleanTable<br>IntegerTable</td>
<td>Added options to set start time, shift time and extrapolation kind, especially to set periodic extrapolation.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Blocks.Tables</strong></td></tr>
<tr><td>CombiTable1D<br>CombiTable1Ds<br>CombiTable2D</td>
<td>Added option to set the extrapolation kind and to optionally print a warning in case of extrapolated table input.</td></tr>
</table>
<p><br>
The following <font color=\"blue\"><strong>existing components</strong></font> have been <font color=\"blue\"><strong>changed</strong></font> in a <font color=\"blue\"><strong>non-backward compatible</strong></font> way:
</p>
<table border=\"1\" cellspacing=\"0\" cellpadding=\"2\" style=\"border-collapse:collapse;\">
<tr><td colspan=\"2\"><strong>Modelica.Blocks</strong></td></tr>
<tr><td>Interfaces.PartialNoise<br>Noise.UniformNoise<br>Noise.NormalNoise<br>Noise.TruncatedNormalNoise<br>Noise.BandLimitedWhiteNoise</td>
<td>As a side-effect of the corrected computation in Modelica.Math.Random.Utilities.impureRandomInteger the <code>localSeed</code> parameter is computed differently if <code>useAutomaticLocalSeed</code> is set to true.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Mechanics.MultiBody</strong></td></tr>
<tr><td>World</td>
<td>Added new parameter <code>animateGround</code> for optional ground plane visualization.<br>
Users that have copied the World model (of MSL 3.0, 3.0.1, 3.1, 3.2, 3.2.1, or 3.2.2) as an own World model and used it as inner world component, might have broken their models.
Generally, for MSL models with sub-typing (due to inner/outer), it is strongly suggested to extend from this MSL model, instead of copying it.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Media.Interfaces</strong></td></tr>
<tr><td>PartialMedium</td>
<td>Added new constant <code>C_default</code> as default value for the trace substances of medium.<br>
Users that have created an own medium by inheritance from the PartialMedium package and already added the C_default constant, might have broken their models.<br>
Users that have copied the PartialMedium package (of MSL 3.0, 3.0.1, 3.1, 3.2, 3.2.1, or 3.2.2) as an own Medium package, might have broken their models.
Generally, for MSL classes with sub-typing (due to a replaceable declaration), it is strongly suggested to extend from this MSL class, instead of copying it.</td></tr>
</table>
<p><br>
The following <font color=\"red\"><strong>critical errors</strong></font> have been fixed (i.e., errors
that can lead to wrong simulation results):
</p>
<table border=\"1\" cellspacing=\"0\" cellpadding=\"2\" style=\"border-collapse:collapse;\">
<tr><td colspan=\"2\"><strong>Modelica.Blocks.Sources</strong></td></tr>
<tr><td>TimeTable</td>
<td>The derivative of the <code>TimeTable</code> output could no longer be determined. This has been corrected.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Media.Air</strong></td></tr>
<tr><td>MoistAir.molarMass<br>ReferenceMoistAir.molarMass</td>
<td>The computation of the function output <code>MM</code> was wrong. This has been corrected.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Media.IdealGases.Common.Functions</strong></td></tr>
<tr><td>thermalConductivityEstimate</td>
<td>The computation of the function output <code>lambda</code> was wrong for the modified Eucken correlation, i.e., if <code>method</code> is set to 2. This has been corrected.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Media.IdealGases.Common.SingleGasesData</strong></td></tr>
<tr><td>CH2<br>CH3<br>CH3OOH<br>C2CL2<br>C2CL4<br>C2CL6<br>C2HCL<br>C2HCL3<br>CH2CO_ketene<br>O_CH_2O<br>HO_CO_2OH<br>CH2BrminusCOOH<br>C2H3CL<br>CH2CLminusCOOH<br>HO2<br>HO2minus<br>OD<br>ODminus</td>
<td>The coefficients for <code>blow</code>, <code>ahigh</code> and <code>bhigh</code> were wrong. This has been corrected.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Media.IdealGases.Common.MixtureGasNasa</strong></td></tr>
<tr><td>mixtureViscosityChung</td>
<td>The computation of the function output <code>etaMixture</code> was wrong. This has been corrected.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Media.Incompressible.TableBased</strong></td></tr>
<tr><td>BaseProperties</td>
<td>The unit of the gas constant <code>R</code> for table based media was not correctly considered. This has been corrected.</td></tr>
<tr><td colspan=\"2\"><strong>Modelica.Math.Random.Utilities</strong></td></tr>
<tr><td>impureRandomInteger</td>
<td>The function output <code>y</code> was not computed to yield a discrete uniform distribution for a minimum value <code>imin</code> of 1. This has been corrected.</td></tr>
</table>
</html>"));
end Version_3_2_3;
class Version_3_2_2 "Version 3.2.2 (April 3, 2016)"
extends Modelica.Icons.ReleaseNotes;
annotation (Documentation(info="<html>
<p>
Version 3.2.2 is backward compatible to version 3.2.1, that is models developed with
versions 3.0, 3.0.1, 3.1, 3.2, or 3.2.1 will work without any changes also with version 3.2.2
(with exception of the, usually uncritical, non-backwards compatible changes listed below with regards to
external object libraries, and one bug fix introduced in 3.2.1 Build.3 for non-circular pipes
that can be non-backwards compatible if a user constructed a new pipe model based on
Modelica.Fluid.Pipes.BaseClasses.WallFriction.PartialWallFriction, see details below).
</p>
<ul>
<li> This version of the Modelica package is <strong>fully compatible</strong> to
Modelica Specification <strong>3.2 revision 2</strong>.<br>
</li>
<li> About <strong>240</strong> tickets have been fixed in this release and the previous maintenance releases:
<ul>
<li> <strong>Version 3.2.1 Build.3</strong> (July 30, 2015) with respect to 3.2.1 Build.2 (August 14, 2013):<br>
About <a href=\"modelica://Modelica/Resources/Documentation/Version-3.2.1/ResolvedTracTickets-build-3.html\">103 tickets</a>
have been fixed for this maintenance release.<br> </li>
<li> <strong>Version 3.2.1 Build.4</strong> (September 30, 2015) with respect to 3.2.1 Build.3 (July 30, 2015):
<ul>
<li> About <a href=\"modelica://Modelica/Resources/Documentation/Version-3.2.1/ResolvedTracTickets-build-4.html\">10 tickets</a>
have been fixed for this maintenance release. Critical tickets:</li>
<li> Ticket <a href=\"https://github.com/modelica/ModelicaStandardLibrary/issues/1768\">1768</a>
fixes an issue with block <a href=\"modelica://Modelica.Blocks.Sources.CombiTimeTable\">CombiTimeTable</a>
(wrong output when using fixed time step integrator with time step greater than table resolution).</li>
<li> Ticket <a href=\"https://github.com/modelica/ModelicaStandardLibrary/issues/1758\">1758</a>
states that simulation of
<a href=\"modelica://Modelica.Fluid.Examples.HeatingSystem\">Modelica.Fluid.Examples.HeatingSystem</a>
fails in Dymola 2016 if option \"pedantic mode for checking Modelica semantics\" is set.
This issue was not fixed in the library due to the following reasons:<br>
The Modelica.Fluid library uses a particular pattern to define some parameters resulting
in a cyclic dependency of parameters if only incident information is taken into account.
According to Modelica Specification 3.2 revision 2 this is not allowed
(and therefore Dymola 2016 correctly reports errors if the pedantic flag is set).
In ticket <a href=\"https://github.com/modelica/ModelicaStandardLibrary/issues/1320\">1320</a>
this issue was resolved for Modelica Specification 3.3 revision 1 by allowing
cyclic parameter definitions if the cycles disappear when evaluating parameters
that have annotation Evaluate=true. Modelica.Fluid is correct with respect
to Modelica Specification 3.3 revision 1.
Changing the Modelica.Fluid library for 3.2.1 build.4 so that no cyclic parameter dependencies
would be present anymore would (a) result in a non-backwards compatible
change and (b) make the usage of Modelica.Fluid less convenient. For this
reason Modelica.Fluid is not changed. (Practically, this means for example that
the pedantic flag in Dymola 2016 needs to be switched off, when using the
Modelica.Fluid library in version 3.2.1 build 4 and any previous version).</li>
<li> In ticket <a href=\"https://github.com/modelica/ModelicaStandardLibrary/issues/1757\">1757</a> it is (correctly) stated
that the example model <a href=\"modelica://Modelica.Media.Examples.PsychrometricData\">PsychrometricData</a>
was moved from Modelica.Media.Air.MoistAir.PsychrometricData and that this is a non-backwards compatible change.
This non-backwards compatible change is accepted, because it fixes a circular dependency (a model references
a package in which it resides), for details see ticket
<a href=\"https://github.com/modelica/ModelicaStandardLibrary/issues/1679\">1679</a>.
Fixing this ticket is seen as of much higher priority, as the small drawback that
an example model is moved (and the probability is very high that this moved model is not
used in any user model).<br>
</li>
</ul>
</li>
<li> <strong>Version 3.2.2 Build.2</strong> (March 16, 2016) with respect to 3.2.1 Build.4 (September 30, 2015):<br>
About <a href=\"modelica://Modelica/Resources/Documentation/Version-3.2.2/ResolvedTracTickets.html\">130 tickets</a>
have been fixed for this release.<br>
The ModelicaStandardTables object library (.lib, .dll, .a, .so, depending on tool) has
been split into the libraries <strong>ModelicaStandardTables</strong>, <strong>ModelicaMatIO</strong>, <strong>zlib</strong> and the new
object library <strong>ModelicaIO</strong> has been added.<br>
For a <strong>tool vendor</strong> this can be a non-backwards compatible change if the same object libraries have been used in the past
for different releases of package Modelica.
In <a href=\"modelica://Modelica/Resources/C-Sources/readme.txt\">Resources/C-Sources/readme.txt</a>
the issue is explained in detail and how to resolve it.
For a <strong>user</strong> this might be a non-backwards compatible change if he/she implemented an
own external C interface function to one of the functions in the ModelicaStandardTables,
ModelicaMatIO or zlib libraries. In this case, the library annotations to these functions need to be
adapted.<br> </li>
</ul>
</li>
<li> In version 3.2.1 Build.3 a new argument crossArea was introduced in the functions of