New functionality for discrete time systems, flat systems, time responses + bug fixes and improvements
Version 0.9.1 is a minor release that includes new functionality for discrete time systems (dlqr, dlqe, drss), flat systems (optimization and constraints), a new time response data class, and many individual improvements and bug fixes.
New features:
- Add optimization to flat systems trajectory generation (#569 by murrayrm)
- Return a discrete time system with drss() (#589 by bnavigator)
- A first implementation of the singular value plot (#593 by forgi86)
- Include InfValue into settling min/max calculation for step_info (#600 by bnavigator)
- New time response data class (#649 by murrayrm)
- Check for unused subsystem signals in InterconnectedSystem (#652 by roryyorke)
- New PID design function built on sisotool (#662 by sawyerbfuller)
- Modify discrete-time contour for Nyquist plots to indent around poles (#668 by sawyerbfuller)
- Additional I/O system type conversions (#672 by murrayrm)
- Remove Python 2.7 support and leverage @ operator (#679 by bnavigator)
- Discrete time LQR and LQE (#670 by sawyerbfuller, murrayrm)
Improvements, bug fixes:
- Change step_info undershoot percentage calculation (#590 by juanodecc)
- IPython LaTeX output only generated for small systems (#607 by roryyorke)
- Fix warnings generated by sisotool (#608 by roryyorke)
- Discrete time LaTeX repr of StateSpace systems (#609 by bnavigator)
- Updated rlocus.py to remove warning by sisotool() with rlocus_grid=True (#616 by nirjhar-das)
- Refine automatic contour determination in Nyquist plot (#620 by bnavigator)
- Fix damp method for discrete time systems with a negative real-valued pole (#647 by vincentchoqueuse)
- Plot Nyquist frequency correctly in Bode plot in Hz (#651 by murrayrm)
- Return frequency response for 0 and 1-state systems directly (#663 by bnavigator)
- Fixed prewarp not working in c2d and sample_system, margin docstring improvements (#669 by sawyerbfuller)
- Improved lqe calling functionality (#673 by murrayrm)
- Vectorize FRD feedback function (#680 by bnavigator)
- BUG: extrapolation in ufun throwing errors (#682 by miroslavfikar)
- Allow use of SciPy for LQR, LQE (#683 by murrayrm)
- Improve forced_response and its documentation (#588 by bnavigator)
- Add documentation about use of axis('equal') in pzmap, rlocus (#685 by murrayrm)
Additional changes:
- Replace Travis badge with GHA workflows, add PyPI and conda badges (#584 by bnavigator)
- Don't install toplevel benchmarks package (#585 by bnavigator)
- LTI squeeze: ndarray.ndim == 0 is also a scalar (#595 by bnavigator)
- xfail testmarkovResults until #588 is merged (#601 by bnavigator)
- Remove from readme.rst that you need a fortran compiler (#602 by sawyerbfuller)
- Remove statement that slycot only on linux (#603 by sawyerbfuller)
- Allow float precision in result assertions (#615 by bnavigator)
- Improved unit test coverage for root_locus: dtime and sisotool (#617 by bnavigator)
- Add DefaultDict for deprecation handling (#619 by bnavigator)
- Documentation updates (#633 by murrayrm)
- Various docstring edits + fixed plot legends on cruise control example (#643 by billtubbs)
- Ease test tolerance on timeseries (#659 by bnavigator)
- Use conda-forge for numpy (CI fix) (#667 by bnavigator)
- Fix doc escape (#674 by bnavigator)
- Remove duplicate Slycot error handling, require Slycot >=0.4 (#678 by bnavigator)
- Full list of merged pull requests associated with this release.
- Full list of commits associated with this release.