Skip to content

New functionality for discrete time systems, flat systems, time responses + bug fixes and improvements

Compare
Choose a tag to compare
@murrayrm murrayrm released this 31 Dec 18:19
a111b03

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.