Changelog
On this site, an overview about the changes between the different MORLAB versions is provided.
Contents
Version 4.0 (2018)
New core features:
- new system class: second-order state-space systems
- balanced truncation for second-order systems
- frequency-limited balanced truncation for all supported system classes
- time-limited balanced truncation for all supported system classes
- HTML documentation is provided for all export formats of the toolbox
Interface changes:
- new naming scheme (mor functions and subroutines) for easier adding new types of systems
- nilpotent Lyapunov equation solver has been rewritten for the dual equation type
- unification of all factored matrix equation solvers to the Z'*Z or L'*D*L formulations
- the LQGBT and HINFBT routines use now the dual sign function Riccati equation solver as default
- the info structure is restricted to actually happened steps in the algorithm
Minor changes:
- generalization of the Sylvester equation solver
- new solver for indefinite factored Riccati equations
- new dual sign function solver for Riccati equations
- new LDL^T sign function solvers for Lyapunov equations
- updated/corrected and downsized documentation in all routines
- now providing stabilized subspace extraction method for descriptor systems
- all systems allow use of sparse matrices by the user
- storing more information about nested equation solvers my using cell arrays
- new subroutines for row/column compressions of Z'*Z and L'*D*L factorized matrices
- new contribution guide
- updated references for all routines
- help morlab or help morlab-[version] shows list of functions
Bug fixes:
- added missing default values for info structure in ml_mt
- corrected wrong named parameters in ml_hna_dss, ml_brbt_dss, ml_prbt_dss
- corrected error bound computation in ml_lqgbt, ml_lqgbt_dss, ml_hinfbt, ml_hinfbt_dss
- corrected using of sparse matrices for small examples
- fixed truncation of unstable eigenvalues in ml_mt_dss
- fixed truncation of no eigenvalues in ml_mt_dss
Version 3.0 (2017)
Structural changes:
- The toolbox is licensed under AGPLv3 or later.
- A new naming scheme for MORLAB functions is used to avoid overloading of foreign object names.
- MORLAB is now independent of SLICOT and can be used without the Control System Toolbox, Robust Control Toolbox and the Control Package.
- The code is properly generalized for the use under Otcave.
- The underlying data structure was generalized to descriptor state space objects (dss) and structs.
- Every computational subroutine has an optional argument for parameters.
- The subroutines are seperated by folders for better overview and an installation function was added.
- Proper documentation of every subroutine was added.
- Demo scripts for all model reduction routines with all assigned parameters were added.
- Toolbox internal check functions were added.
Subroutine changes:
- Changes in model reduction routines:
- generalized version of all previously existing model reduction routines following the improper Hankel singular value theory
- using disk function with double projection for descriptor system case
- several bug fixes
- Changes in matrix equation solvers:
- Newton iteration solver for the algebraic Riccati equation with changed sign in the quadratic term was replaced by factored version
- Smith method solver for the discrete-time Lyapunov equation with 0 spectrum added
- extension of all solvers to generalized matrix equations
- several bugfixes
- Changes in matrix functions/subroutines:
- renewed option set function with documentation opportunity
- new options function to get empty option structure or documentation
- subroutines for additive decomposition of the transfer function added
- sigma plot function now operates on struct inputs
Version 2.0 (2015)
Structural changes:
- The underlying data structure was generalized to Matlab's state space object (ss).
- Additional parameters for subroutines can be set by an option struct. Therefore, a set function was added.
- For the use of descriptor systems, the Control System Toolbox as well as some routines of the SLICOT toolbox are necessary.
Subroutine changes:
- Changes in model reduction routines:
- balanced stochastic truncation (BST) method added
- positive-real balanced truncation (PRBT) method added
- bounded-real balanced truncation (BRBT) method added
- Hankel-norm approximation (HNA) method added
- H-infinity balanced truncation (HinfBT) method added
- balancing-free square root method was added for all balancing related model reduction methods
- generalization of all methods to unstable and descriptor system by separation of corresponding eigenvalues
- Changes in matrix equation solvers:
- Newton iteration solver for the standard algebraic Riccati equation with changed sign in the quadratic term added
- Changes in matrix functions/subroutines:
- methods for partial stabilization of systems based on Lyapunov and Bernoulli equations added
Version 1.0 (2006)
The first release of MORLAB contained the following basic implementations:
- Model reduction routines:
- balanced truncation square root (BTSR) method
- LQG balanced truncation square root (LQGBT) method
- Modal Truncation (MT) method
- Matrix equation solvers:
- Sign function based solver for the standard Lyapunov equation
- Sign function based solver for the dual standard Lyapunov equations
- Sign function based solver for the standard Sylvester equation
- Newton iteration solver for the standard algebraic Riccati equation
- Matrix functions/subroutines:
- Newton iteration to compute the matrix sign function
- Disk function iteration to compute deflating subspaces of the unit circle