Skip to content

Releases: modelica/Modelica_LinearSystems2

Version v3.0.0 (2024-06-26)

26 Jun 12:29
Compare
Choose a tag to compare

Release 3.0.0 of the Modelica_LinearSystems2 Library.

GitHub issues resolved for v3.0.0

As part of this release 103 issues (including 70 pull requests (PR)) were closed.

--M_LS2-general--

Bugs

  • #127 Replace Polynomial.degree by Polynomial.degree2
  • #193 (PR) Fix wrong calculation of polynomial's degree

Enhancements

  • #43 Use loadResource instead of classDirectory
  • #119 (PR) Add 2nd derivation of polynomial
  • #220 (PR) Extend functions from Modelica.Icons.Function

Miscellaneous

  • #38 Use complex numbers from Modelica.ComplexMath
  • #65 Modelica_LinearSystems2.Math.Complex vs. Complex
  • #105 (PR) Merge changes for version 2.5.0 dev
  • #124 (PR) Emphase text in HTML according to MSL conventions
  • #126 Move evaluate_der into Internal
  • #128 (PR) Improve docu of Polynomial
  • #137 (PR) Unused imports
  • #140 (PR) Improve documentation where imaginary unit
  • #142 (PR) Improve docu
  • #151 (PR) Improve code indention
  • #152 (PR) Fix deprecated attributes of text primitive
  • #156 (PR) Improve description of inputs and outputs
  • #159 Make obsolete functions alias
  • #164 (PR) Fix typos
  • #166 (PR) Fix non-URI references
  • #167 (PR) Resolve dependency on unknown variables in annotations
  • #168 (PR) Consolidate imports
  • #169 Minor: Use lower-case modelica URI
  • #170 Broken class links
  • #171 Broken and moved weblinks
  • #173 (PR) Use lower case scheme of URI
  • #174 (PR) Fix broken links
  • #176 (PR) Fix broken weblinks
  • #177 (PR) Use the same weblink for EUROSYSLIB project
  • #178 (PR) Fix typos in class' documentation
  • #180 (PR) Fix deprecated attributes of graphical primitive 'Text'
  • #182 (PR) Improve code snippet
  • #184 (PR) Merge current stuff for v3.0.0
  • #185 (PR) Add conversion script to v3.0.0
  • #189 (PR) Add conversion tests for matrix reading and html state space string
  • #190 (PR) Use lower case name functions in documentation
  • #194 (PR) Fix broken link
  • #195 (PR) Fix flaws in conversion to v3.0
  • #213 (PR) Move obsolete internal functions into proper package
  • #215 (PR) Move internal polynomial functions into Internal package
  • #217 (PR) Minor improvements in code formating
  • #221 (PR) Extend functions from Modelica.Icons.Function and remove superfluous import
  • #222 (PR) Spaces instead of tabs in annotations
  • #223 (PR) Improve documentation
  • #224 (PR) Update version number and date
  • #225 (PR) More CI tests

ComplexMathAdds

Bugs

  • #138 Instantiate the imaginary unit "j" using import
  • #139 (PR) Instantiate imaginary unit

Controllers

Bugs

  • #147 Size expression problem when calling fromFile in a block

Enhancements

  • #148 (PR) Set initial value of matrix ABCD
  • #149 (PR) Improve declaration of StateSpace parameter
  • #197 Clear and rename package Templates

Miscellaneous

  • #11 Rename package Controller
  • #98 Rename package Components
  • #153 Delete obsolete double pendulum models
  • #165 (PR) Fix false Dialog.enable attribute of parameter 'beta'
  • #198 (PR) Rename package Controller
  • #199 (PR) Delete duplicated or deprecated classes in Templates
  • #200 (PR) Rename package Templates
  • #201 (PR) Delete deprecated PartialBlockIcon
  • #202 (PR) Rename ObserverTemplate and move it into proper package
  • #203 (PR) Delete deprecated double pendulum models
  • #218 (PR) Modify parameters of inverseDoublePendulum

DiscreteStateSpace

Miscellaneous

  • #150 (PR) Add initial documentation of operator record

Examples

Bugs

  • #143 (PR) Resolve input dependencies

Miscellaneous

  • #206 Delete deprecated functions
  • #210 (PR) Delete obsolete functions

Internal

Miscellaneous

  • #9 Delete obsolete from_Hz and to_Hz
  • #83 Delete ReadSystemDimension
  • #84 Delete obsolete functions for matrix reading
  • #92 Move Streams into Utilities
  • #117 False documentation of frequencyResponseGain
  • #162 (PR) Fix false documentation
  • #163 Delete obsolete ReadSystemDimension2
  • #206 Delete deprecated functions
  • #210 (PR) Delete obsolete functions

Math.Complex

Enhancements

  • #95 Convert Math.Complex.'+'
  • #96 Convert Math.Complex.'max'
  • #97 Utilize arithmetics of Complex numbers

Miscellaneous

  • #207 Delete operator record Math.Complex
  • #212 (PR) Delete deprecated operator record Complex
  • #216 (PR) Add conversion of operator record Complex

Math.Matrices

Enhancements

  • #146 (PR) Use LAPACK func...
Read more

Version v3.0.0-beta.1 (2024-05-22)

22 May 10:13
Compare
Choose a tag to compare
Pre-release

First beta version of 3.0.0 release

Version v3.0.0-alpha.1 (2024-05-03)

03 May 12:40
Compare
Choose a tag to compare
Pre-release

First alpha version of 3.0.0 release

Version v2.4.1+build.2 (2021-11-16)

16 Nov 09:07
Compare
Choose a tag to compare

First maintenance version of the 2.4.1 release of the Library.

Summary:

  • Bug fix: Remove buggy initialization of matrix ABCD in M_LS2.Controller.Internal.DiscreteStateSpace2.

Version v2.4.1 (2021-10-29)

29 Oct 14:22
Compare
Choose a tag to compare

Release 2.4.1 of the Modelica_LinearSystems2 Library.

Issues resolved for v2.4.1

As part of this release, 24 issues (including 19 pull requests (PR)) were closed.

General

Enhancements

  • #34 Utilize ModelicaIO functions for matrix I/O
  • #36 Invalid inheritance in M_LS2 icons
  • #66 Use functions from DymolaCommands instead of Dymola's build-in function
  • #85 (PR) Obsolete read matrix functions
  • #86 (PR) Use function readSystemDimension
  • #87 (PR) Fix false inheritance of operators and operator records
  • #88 (PR) Simplify Modelica code by calling read_dslin
  • #109 (PR) Improve declaration
  • #111 (PR) Use functions from DymolaCommands

Documentation

  • #2 Improve/fix documentation of Modelica_LinearSystems2
  • #91 (PR) Fix false input name in documentation
  • #106 (PR) Omit mentioning of Modelica_Controller library in documentation
  • #107 (PR) Improve documentation

Miscellaneous

  • #82 (PR) Remove unnecessary spaces in code
  • #89 (PR) Class ordering
  • #90 (PR) Use Dymola specific annotations
  • #94 (PR) Minor changes
  • #108 (PR) Do not use obsolete type MarkerStyles
  • #110 (PR) Improve code indention

Internal

Enhancements

  • #93 Use readStateSpaceMatrix

StateSpace

Enhancements

  • #129 (PR) readSystemDimension: Set emergency vector sizes

UsersGuide

Documentation

  • #121 (PR) Improve documentation
  • #122 (PR) Improve documentation

Utilities

Bugs

  • #130 (PR) Disable an assert causing function crash

Version v2.4.0 (2020-06-26)

26 Jun 11:08
325f2ed
Compare
Choose a tag to compare

Version 2.4.0 of the Modelica_LinearSystems2 library. This version requires the Modelica Standard Library 4.0.0. It is backward compatible to the previous version 2.3.5.

Version v2.3.5 (2019-03-20)

11 Apr 14:51
1a9735b
Compare
Choose a tag to compare

This version requires the Modelica Standard Library v3.2.3. It is backward compatible to the previous version 2.3.4.

  • Improvements in this version:
    • Updated to be compatible with Modelica 3.2.3
    • Dymola-specific parameter annotations start with prefix "_Dymola"
    • Git-issue #13: Package Types moved into Utilities package
    • Deleted obsolete package Examples.Utilities
  • Bug fixes performed in this version:
    • Fixed Git-issue #44: Incorrect Bode plot for MIMO systems

Version v2.3.4 (2016-03-11)

31 Jan 09:06
Compare
Choose a tag to compare
  • This version requires the Modelica Standard Library v3.2.2. It is backward compatible to the previous version 2.3.3.
  • Improvements in this version:
    • New functions in Modelica_LinearSystems2.Utilities.Plot to read FFT results from file and plot them (e.g., from Modelica.Math.FastFourierTransform.Examples.RealFFT1):
      • plot_FFT_fromFile
      • plot_FFTs_from_directory
      • plot_FFTs_of_model
    • Improved log output (by logging the full path name and not only the given file name) for:
      • StateSpace.Import.fromFile
      • Internal.StateSpace2.Import.fromFile
      • DiscreteStateSpace.Import.fromFile
    • Improved documentation of DiscreteStateSpace.Import.fromFile
    • HTML formatting of tables improved (left justifed instead of right justified, margins above and below)
  • Bug fixes performed in this version:
    • FilterFIR: Removed if-condition of a parameter declaration (not possible to disable a parameter declaration in Modelica)
    • Removed wrong C++ comment in Modelica_LinearSystems2.Internal.Streams.readMatrixInternal.
    • Minor issues corrected so that Dymola 2017 Beta.1 checkes successfully with pedantic flag:
      • import statements corrected
      • wrong Diagram annotations changed to Dialog annotations
      • non-standard annotation "translateModel" changed to __Dymola_translateModel

Version v2.3.3 (2015-09-08)

10 Sep 17:07
Compare
Choose a tag to compare
  • This version requires the Modelica 3.2.1 Library. It is backward compatible to the previous version 2.3.2
  • Improvements performed in version 2.3.3 Build 1 (Sept. 8, 2015):
    • New function StateSpace.Transformation.toBalancedForm: Performs a similarity transformation to a balanced form of the linear system. The goal is to find state so that further numerical computations on the system are more reliable.
    • Improved functions:
      • ModelAnalysis.Poles
      • ModelAnalysis.Zeros
      • StateSpace.Plot.polesAndZeros
        System is now balanced, before eigenvalues and transmission zeros are computed
        (to improve numerics for systems with largely varying zeros and poles).
        By default, the poles/zeros are also printed to the output window (and not only plotted).
    • Improved functions:
      • StateSpace.Plot.bodeSISO
      • StateSpace.Plot.bodeMIMO
        System is now balanced, before bode plot is computed
        (to improve numerics for systems with largely varying zeros and poles).
        The computation of the bode plot is now 1-2 orders of magnitudes faster
        for large systems (the implementation of the algorithm was restructured
        and part of the restructured functionality is now pre-compiled in object
        code using the __Dymola_translate=true annotation.
        Optionally, it is now possible to store the frequency, magnitude and angle
        vectors of the bode diagram on file.
    • Improved function:
      • ModelAnalysis.FullAnalysis
        If the system is too large (> 50 states, inputs, or outputs), then the
        system is not printed to the output.
        The step response is included as png-file in the html log file
        systemReport.html (if several plots are generated, only the last one is
        currently stored on file (needs to be improved in the future).
    • Bug fixes performed in version 2.3.3 Build 1 (Sept. 8, 2015):
      • StateSpace.Plot.bodeSISO,StateSpace.Plot.bodeMIMO, ZerosAndPoles.Plot.bode
        Defining logX=false, still computed the frequency vector in logarithmic scale
        (and f_min=0 gave an error). This has been fixed.
        If a system had many zeros and poles with large absolute values,
        an overflow could occur. The algorithm has been changed to make
        this situation much more unlikely.
      • Minor bugs fixed (due to stricter checking of Dymola 2016 FD01, warnings had been
        present that protected variables in functions have the input/output attributes;
        these wrong attributes have been removed.
      • The following functions are not correct Modelica because local and result arrays depend
        on dimensions defined locally (but must be from inputs or parameter expressions).
        Since this is not practical to fix, the Dymola specific annotation
        __Dymola_allowForSize=true was introduced in Dymola 2016 FD01
        to allow relaxed rules for Modelica dimension definition:
        • StateSpace.Import.fromFile
        • StateSpace.Import.fromModel
        • Internal.StateSpace2.Import.fromFile
        • DiscreteStateSpace.Import.fromFile
        • DiscreteStateSpace.Import.fromModel

Version v2.3.2 (2015-04-17)

23 Jul 16:26
Compare
Choose a tag to compare
  • This version requires the Modelica 3.2.1 Library. It is is backward compatible to the previous version 2.3.1
  • Improvements performed in version 2.3.2 Build 1 (Sept. 11, 2014):
    • All Bode diagrams (in all representation forms) can be optionally plotted as magnitude in dB over angular frequency in rad/s, instead of the default to use magnitude over frequency in Hz.
  • Bug fixes performed in version 2.3.2 Build 1 (Sept. 11, 2014):
    • Modelica_LinearSystems2.StateSpace.Conversion.toZerosAndPoles: When computing the gain of the ZerosAndPoles object, a better algorithm is used (the previous one could give bad results if there are large zeros or poles with positive Re-values).
    • Modelica_LinearSystems2.Controller.Interfaces.PartialSampledBlock,
      Modelica_LinearSystems2.Controller.Interfaces.PartialDiscreteBlock,
      Modelica_LinearSystems2.Controller.Internal.DiscreteStateSpace,
      Modelica_LinearSystems2.Controller.Internal.DiscreteStateSpace2:
      Enumeration1/Enumeration2 errors corrected (issued as warning due to stricter checking by Dymola 2015 FD01).
    • Some Enumeration/Integer errors corrected (issued as warning due to stricter checking by Dymola 2015 FD01).
    • Some Plot functions have been called without providing record input arguments. This has been fixed by providing a default record in the function definitions.
  • Bug fixes performed in version 2.3.2 Build 2 (April 17, 2015):
    • Several functions had used the input/output attribute in a protected declaration. Due to stricter checking by Dymola 2016, this is reported as warning. These wrong attributes have been removed.
    • ModelAnalysis.FullAnalysis: If the system is too large (> 50 states, inputs, or outputs), then the system is not printed to the output (previously, the tool "hangs" if printing a too large system).
    • ModelAnalysis.FullAnalysis: The step response is included as png-file in the html log file SystemReport.html.
    • ModelAnalysis.Poles and ModelAnalysis.Zeros: Besides plotted, the poles/zeros are also printed to the output window.