Control

Latest version: v0.10.0

Safety actively analyzes 622080 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 4

0.10.0

What's Changed
* Multivariable interconnect functionality by murrayrm in https://github.com/python-control/python-control/pull/881
* Remove NumPy matrix class by murrayrm in https://github.com/python-control/python-control/pull/913
* I/O system class restructuring by murrayrm in https://github.com/python-control/python-control/pull/916
* Documentation fixes by KybernetikJo in https://github.com/python-control/python-control/pull/919, https://github.com/python-control/python-control/pull/921, https://github.com/python-control/python-control/pull/922, https://github.com/python-control/python-control/pull/923
* Add two MRAC siso examples by KybernetikJo in https://github.com/python-control/python-control/pull/914
* Time response plots by murrayrm in https://github.com/python-control/python-control/pull/920
* Print a connection table for interconnected systems by sawyerbfuller in https://github.com/python-control/python-control/pull/925
* Update frequency response plots to use _response/_plot pattern by murrayrm in https://github.com/python-control/python-control/pull/924
* create_statefbk_iosystem and optimal control enhancements by murrayrm in https://github.com/python-control/python-control/pull/930
* Add unit test illustrating issue 935 + add method keyword for tf2ss by murrayrm in https://github.com/python-control/python-control/pull/937
* Vectorize optimal control cost calculation by urpok23 in https://github.com/python-control/python-control/pull/940
* Improved speed of ctrb and obsv functions by Jpickard1 in https://github.com/python-control/python-control/pull/941
* Fix sphinx bug (erroneous use of class template) by murrayrm in https://github.com/python-control/python-control/pull/943
* Fix bug in matched transformation + address other issues in 950 by murrayrm in https://github.com/python-control/python-control/pull/951
* Fix typo in header of Hinf example by jrforbes in https://github.com/python-control/python-control/pull/946
* Fix typo in stochresp.py by alex-damjanovic in https://github.com/python-control/python-control/pull/945
* Fix TimeResponseData.to_pandas() to handle zero state case by murrayrm in https://github.com/python-control/python-control/pull/958
* Update pole/zero and root locus plots to use _map/_plot pattern by murrayrm in https://github.com/python-control/python-control/pull/953
* Fix CI warnings by murrayrm in https://github.com/python-control/python-control/pull/955
* Support Python 3.12, bump minimum support according to SPEC 0 by bnavigator in https://github.com/python-control/python-control/pull/961
* Fix typos in pzmap.py by matejkarasek in https://github.com/python-control/python-control/pull/962
* Fix examples to work with SciPy 1.12 by bnavigator in https://github.com/python-control/python-control/pull/965
* Fix config test for missing old key warning by bnavigator in https://github.com/python-control/python-control/pull/972
* Implementation of system norms by henriks76 in https://github.com/python-control/python-control/pull/971, https://github.com/python-control/python-control/pull/976
* Updated gram() to support discrete-time systems by billtubbs in https://github.com/python-control/python-control/pull/969
* Update unit test infrastructure by murrayrm in https://github.com/python-control/python-control/pull/981, https://github.com/python-control/python-control/pull/986
* Remove external/ directory by murrayrm in https://github.com/python-control/python-control/pull/983
* Reimplementation of 2D phase plots by murrayrm in https://github.com/python-control/python-control/pull/980
* Update readthedocs to Python 3.12 by murrayrm in https://github.com/python-control/python-control/pull/985
* Fix warning messages in tests; update rlocus/pzmap limits by murrayrm in https://github.com/python-control/python-control/pull/984
* Allow passing and saving of params in time responses by murrayrm in https://github.com/python-control/python-control/pull/982

New Contributors
* KybernetikJo made their first contribution in https://github.com/python-control/python-control/pull/919
* urpok23 made their first contribution in https://github.com/python-control/python-control/pull/940
* Jpickard1 made their first contribution in https://github.com/python-control/python-control/pull/941
* alex-damjanovic made their first contribution in https://github.com/python-control/python-control/pull/945
* matejkarasek made their first contribution in https://github.com/python-control/python-control/pull/962
* henriks76 made their first contribution in https://github.com/python-control/python-control/pull/971

**Full Changelog**: https://github.com/python-control/python-control/compare/0.9.4...0.10.0

0.9.4

What's Changed
* remove __commit__ from version test by murrayrm in https://github.com/python-control/python-control/pull/833
* Add README to pyproject metadata by bnavigator in https://github.com/python-control/python-control/pull/835
* allow .postn for readthedocsversion by murrayrm in https://github.com/python-control/python-control/pull/836
* Sisotool: Fix Matplotlib deprecation of axis share handling by bnavigator in https://github.com/python-control/python-control/pull/834
* GHA run examples: Create a dedicated conda env and use it by bnavigator in https://github.com/python-control/python-control/pull/855
* iosys doc example: Use array types updatefcn input/output by bnavigator in https://github.com/python-control/python-control/pull/854
* Fix Interconnect name clobbering by henklaak in https://github.com/python-control/python-control/pull/857
* Solve 862 and 864: bode_plot phase wrapping incorrect for multiple systems by henklaak in https://github.com/python-control/python-control/pull/863
* Fix root_locus() handling of ax parameter by henklaak in https://github.com/python-control/python-control/pull/871
* Fix editsdefaults fixture by henklaak in https://github.com/python-control/python-control/pull/874
* Small fixes based on Caltech CDS 112 course by murrayrm in https://github.com/python-control/python-control/pull/849
* Feature print zpk by henklaak in https://github.com/python-control/python-control/pull/869
* Feature enable doctest by henklaak in https://github.com/python-control/python-control/pull/868
* Optimization-based and moving horizon estimation by murrayrm in https://github.com/python-control/python-control/pull/877
* Small fixes for 0.9.4 release by murrayrm in https://github.com/python-control/python-control/pull/880
* new examples for Simulink-like interconnection of digital and nonlinear systems by sawyerbfuller in https://github.com/python-control/python-control/pull/882
* fix blank bode plot in rootlocus_pid_designer by sawyerbfuller in https://github.com/python-control/python-control/pull/883
* bandwidth feature by SCLiao47 in https://github.com/python-control/python-control/pull/889
* update nyquist_plot for DT transfer functions with poles at 0 and 1 by sawyerbfuller in https://github.com/python-control/python-control/pull/885
* Add missing labels when returning TimeResponseData by joaoantoniocardoso in https://github.com/python-control/python-control/pull/892
* fix damp command natural frequency printout for discrete poles on real axis by sawyerbfuller in https://github.com/python-control/python-control/pull/894
* Add H2 and Hinf synthesis examples by jrforbes in https://github.com/python-control/python-control/pull/895
* warn if prewarp-frequency is not used by sawyerbfuller in https://github.com/python-control/python-control/pull/900
* make _convert_to_statespace properly pass signal and system names by sawyerbfuller in https://github.com/python-control/python-control/pull/884
* Change name of converted LinearIOSystems by murrayrm in https://github.com/python-control/python-control/pull/903
* add/cleanup documentation on simulation functions by murrayrm in https://github.com/python-control/python-control/pull/905
* Fixed spelling mistake in description by jrforbes in https://github.com/python-control/python-control/pull/909
* fix up some warning messages due to converted systems by murrayrm in https://github.com/python-control/python-control/pull/907
* fix bdschur (see issue 911) by murrayrm in https://github.com/python-control/python-control/pull/912

New Contributors
* henklaak made their first contribution in https://github.com/python-control/python-control/pull/857
* SCLiao47 made their first contribution in https://github.com/python-control/python-control/pull/889
* jrforbes made their first contribution in https://github.com/python-control/python-control/pull/895

**Full Changelog**: https://github.com/python-control/python-control/compare/0.9.3...0.9.4

0.9.3

What's Changed
* Handle t_eval for static systems in input_output_response by murrayrm in https://github.com/python-control/python-control/pull/743
* add GitHub URL for PyPi by andriyor in https://github.com/python-control/python-control/pull/708
* Remove Deprecated API calls to Pytest, SciPy <1.3, Python 2 by bnavigator in https://github.com/python-control/python-control/pull/745
* Add passivity module, ispassive function, and passivity_test. Introduces optional dependency cvxopt. by Mark-Yeatman in https://github.com/python-control/python-control/pull/739
* Slycot source uses setuptools_scm now by bnavigator in https://github.com/python-control/python-control/pull/751
* Passivity indices and support for discrete time systems. by Mark-Yeatman in https://github.com/python-control/python-control/pull/750
* Switch CI to mambaforge and conda-forge channel by bnavigator in https://github.com/python-control/python-control/pull/757
* Fix timebase bug in InterconnectedSystem (issue 754) by murrayrm in https://github.com/python-control/python-control/pull/755
* fix issue with slycot balred change in state by bnavigator in https://github.com/python-control/python-control/pull/762
* Build system and test suite update by bnavigator in https://github.com/python-control/python-control/pull/759
* fix control.matlab.lsim bug for discrete time system by murrayrm in https://github.com/python-control/python-control/pull/765
* Add B-splines and solve_flat_ocp to flatsys by murrayrm in https://github.com/python-control/python-control/pull/763
* CI: switch slycot and cvxopt installation order by murrayrm in https://github.com/python-control/python-control/pull/769
* Fixed a couple of typos in documentation by fredrhen in https://github.com/python-control/python-control/pull/775
* Allow new matplotlib 3.6 error message in kwargs tests by bnavigator in https://github.com/python-control/python-control/pull/777
* Move sys._update_params(params) before TimeResponseData return when nstate == 0 by hyumo in https://github.com/python-control/python-control/pull/774
* Update MANIFEST.in by bnavigator in https://github.com/python-control/python-control/pull/779
* Improve compatibility of state space representation using LaTeX by gonmolina in https://github.com/python-control/python-control/pull/780
* Fix interconnect type conversion bug for StateSpace systems by murrayrm in https://github.com/python-control/python-control/pull/788
* fix _isstatic() to use nstates==0 by murrayrm in https://github.com/python-control/python-control/pull/790
* fix error when an IOSystem is combined with a TransferFunction system by sawyerbfuller in https://github.com/python-control/python-control/pull/793
* check for and fix mutable keyword defaults by murrayrm in https://github.com/python-control/python-control/pull/794
* Fixes for bugs found by pylint by roryyorke in https://github.com/python-control/python-control/pull/795
* Support Python 3.11 and drop Python 3.7 by bnavigator in https://github.com/python-control/python-control/pull/796
* Fix find_eqpt when y0 is None by adswid in https://github.com/python-control/python-control/pull/798
* Preserve signal names upon conversion to discrete-time by sawyerbfuller in https://github.com/python-control/python-control/pull/797
* Update benchmarks to help with optimal control tuning by murrayrm in https://github.com/python-control/python-control/pull/800
* Update optimal.rst by htadashi in https://github.com/python-control/python-control/pull/802
* Add collocation method for optimal control problems by murrayrm in https://github.com/python-control/python-control/pull/799
* Update README.rst by sawyerbfuller in https://github.com/python-control/python-control/pull/810
* Update docstring for impulse for discrete sys by sawyerbfuller in https://github.com/python-control/python-control/pull/812
* Enable scalar division of state-space objects by roryyorke in https://github.com/python-control/python-control/pull/811
* fix gain handling in rlocus and sisotool by sawyerbfuller in https://github.com/python-control/python-control/pull/809
* Removed epsilon perturbation value in solve_passivity_LMI. Fix associated unit test. by Mark-Yeatman in https://github.com/python-control/python-control/pull/814
* docstring improvements by sawyerbfuller in https://github.com/python-control/python-control/pull/804
* add zpk() function by murrayrm in https://github.com/python-control/python-control/pull/816
* Fix readthedocs to use pip-based install by murrayrm in https://github.com/python-control/python-control/pull/817
* Relax comparison of floats in tests by bnavigator in https://github.com/python-control/python-control/pull/818
* Add test matrix against operating environments by murrayrm in https://github.com/python-control/python-control/pull/821
* Update find_eqpts to handle discrete time systems by murrayrm in https://github.com/python-control/python-control/pull/824
* Small fixes and tweaks by murrayrm in https://github.com/python-control/python-control/pull/826
* update docs to use use numpydoc + linkcode by murrayrm in https://github.com/python-control/python-control/pull/828
* Add gain scheduling to create_statefbk_iosystem() by murrayrm in https://github.com/python-control/python-control/pull/827
* continuous time system support for create_estimator_iosystem by murrayrm in https://github.com/python-control/python-control/pull/829
* Small docstring fixes for release by murrayrm in https://github.com/python-control/python-control/pull/832

New Contributors
* andriyor made their first contribution in https://github.com/python-control/python-control/pull/708
* Mark-Yeatman made their first contribution in https://github.com/python-control/python-control/pull/739
* fredrhen made their first contribution in https://github.com/python-control/python-control/pull/775
* hyumo made their first contribution in https://github.com/python-control/python-control/pull/774
* adswid made their first contribution in https://github.com/python-control/python-control/pull/798
* htadashi made their first contribution in https://github.com/python-control/python-control/pull/802

**Full Changelog**: https://github.com/python-control/python-control/compare/0.9.2...0.9.3

0.9.2

What's Changed
* Round to nearest integer decade for default omega vector by bnavigator in https://github.com/python-control/python-control/pull/688
* Fix in documentation of ss2tf by miroslavfikar in https://github.com/python-control/python-control/pull/695
* Interpret str-type args to `interconnect` as non-sequence by roryyorke in https://github.com/python-control/python-control/pull/698
* Fixes to various optimization-based control functions by murrayrm in https://github.com/python-control/python-control/pull/709
* I/O system enhancements by murrayrm in https://github.com/python-control/python-control/pull/710
* Optimal control enhancements by murrayrm in https://github.com/python-control/python-control/pull/712
* Keyword argument checking by murrayrm in https://github.com/python-control/python-control/pull/713
* Stochastic systems additions by murrayrm in https://github.com/python-control/python-control/pull/714
* Updated system class functionality by murrayrm in https://github.com/python-control/python-control/pull/721
* Bug fix and improvements to Nyquist plots by murrayrm in https://github.com/python-control/python-control/pull/722
* Add `linform` to compute linear system L-infinity norm by roryyorke in https://github.com/python-control/python-control/pull/729
* Improvements to Nichols chart plotting by roryyorke in https://github.com/python-control/python-control/pull/723
* Add envs to gitignore by s35t in https://github.com/python-control/python-control/pull/731
* Added binder link by jonititan in https://github.com/python-control/python-control/pull/693
* Update python-package-conda workflow to use conda instead of conda-forge by murrayrm in https://github.com/python-control/python-control/pull/736
* Fix README.rst for twine by murrayrm in https://github.com/python-control/python-control/pull/738

New Contributors
* s35t made their first contribution in https://github.com/python-control/python-control/pull/731
* jonititan made their first contribution in https://github.com/python-control/python-control/pull/693

**Full Changelog**: https://github.com/python-control/python-control/compare/0.9.1...0.9.2

0.9.1

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](https://github.com/python-control/python-control/pull/569) by murrayrm)
* Return a discrete time system with drss() ([589](https://github.com/python-control/python-control/pull/589) by bnavigator)
* A first implementation of the singular value plot ([593](https://github.com/python-control/python-control/pull/593) by forgi86)
* Include InfValue into settling min/max calculation for step_info ([600](https://github.com/python-control/python-control/pull/600) by bnavigator)
* New time response data class ([649](https://github.com/python-control/python-control/pull/649) by murrayrm)
* Check for unused subsystem signals in InterconnectedSystem ([652](https://github.com/python-control/python-control/pull/652) by roryyorke)
* New PID design function built on sisotool ([662](https://github.com/python-control/python-control/pull/662) by sawyerbfuller)
* Modify discrete-time contour for Nyquist plots to indent around poles ([668](https://github.com/python-control/python-control/pull/668) by sawyerbfuller)
* Additional I/O system type conversions ([672](https://github.com/python-control/python-control/pull/672) by murrayrm)
* Remove Python 2.7 support and leverage operator ([679](https://github.com/python-control/python-control/pull/679) by bnavigator)
* Discrete time LQR and LQE ([670](https://github.com/python-control/python-control/pull/670) by sawyerbfuller, murrayrm)

Improvements, bug fixes:
* Change step_info undershoot percentage calculation ([590](https://github.com/python-control/python-control/pull/590) by juanodecc)
* IPython LaTeX output only generated for small systems ([607](https://github.com/python-control/python-control/pull/607) by roryyorke)
* Fix warnings generated by sisotool ([608](https://github.com/python-control/python-control/pull/608) by roryyorke)
* Discrete time LaTeX repr of StateSpace systems ([609](https://github.com/python-control/python-control/pull/609) by bnavigator)
* Updated rlocus.py to remove warning by sisotool() with rlocus_grid=True ([616](https://github.com/python-control/python-control/pull/616) by nirjhar-das)
* Refine automatic contour determination in Nyquist plot ([620](https://github.com/python-control/python-control/pull/620) by bnavigator)
* Fix damp method for discrete time systems with a negative real-valued pole ([647](https://github.com/python-control/python-control/pull/647) by vincentchoqueuse)
* Plot Nyquist frequency correctly in Bode plot in Hz ([651](https://github.com/python-control/python-control/pull/651) by murrayrm)
* Return frequency response for 0 and 1-state systems directly ([663](https://github.com/python-control/python-control/pull/663) by bnavigator)
* Fixed prewarp not working in c2d and sample_system, margin docstring improvements ([669](https://github.com/python-control/python-control/pull/669) by sawyerbfuller)
* Improved lqe calling functionality ([673](https://github.com/python-control/python-control/pull/673) by murrayrm)
* Vectorize FRD feedback function ([680](https://github.com/python-control/python-control/pull/680) by bnavigator)
* BUG: extrapolation in ufun throwing errors ([682](https://github.com/python-control/python-control/pull/682) by miroslavfikar)
* Allow use of SciPy for LQR, LQE ([683](https://github.com/python-control/python-control/pull/683) by murrayrm)
* Improve forced_response and its documentation ([588](https://github.com/python-control/python-control/pull/588) by bnavigator)
* Add documentation about use of axis('equal') in pzmap, rlocus ([685](https://github.com/python-control/python-control/pull/685) by murrayrm)

Additional changes:
* Replace Travis badge with GHA workflows, add PyPI and conda badges ([584](https://github.com/python-control/python-control/pull/584) by bnavigator)
* Don't install toplevel benchmarks package ([585](https://github.com/python-control/python-control/pull/585) by bnavigator)
* LTI squeeze: ndarray.ndim == 0 is also a scalar ([595](https://github.com/python-control/python-control/pull/595) by bnavigator)
* xfail testmarkovResults until 588 is merged ([601](https://github.com/python-control/python-control/pull/601) by bnavigator)
* Remove from readme.rst that you need a fortran compiler ([602](https://github.com/python-control/python-control/pull/602) by sawyerbfuller)
* Remove statement that slycot only on linux ([603](https://github.com/python-control/python-control/pull/603) by sawyerbfuller)
* Allow float precision in result assertions ([615](https://github.com/python-control/python-control/pull/615) by bnavigator)
* Improved unit test coverage for root_locus: dtime and sisotool ([617](https://github.com/python-control/python-control/pull/617) by bnavigator)
* Add DefaultDict for deprecation handling ([619](https://github.com/python-control/python-control/pull/619) by bnavigator)
* Documentation updates ([633](https://github.com/python-control/python-control/pull/633) by murrayrm)
* Various docstring edits + fixed plot legends on cruise control example ([643](https://github.com/python-control/python-control/pull/643) by billtubbs)
* Ease test tolerance on timeseries ([659](https://github.com/python-control/python-control/pull/659) by bnavigator)
* Use conda-forge for numpy (CI fix) ([667](https://github.com/python-control/python-control/pull/667) by bnavigator)
* Fix doc escape ([674](https://github.com/python-control/python-control/pull/674) by bnavigator)
* Remove duplicate Slycot error handling, require Slycot >=0.4 ([678](https://github.com/python-control/python-control/pull/678) by bnavigator)
* Full list of [merged pull requests](https://github.com/python-control/python-control/pulls?utf8=✓&q=is%3Amerged+milestone%3A0.9.1) associated with this release.
* Full list of [commits](https://github.com/python-control/python-control/compare/0.9.0..0.9.1) associated with this release.

0.9.0

Version 0.9.0 of the Python Control Toolbox (python-control) contains a number of enhanced features and changes to functions. Some of these changes may require modifications to existing user code and, in addition, some default settings have changed that may affect the appearance of plots or operation of certain functions.

Significant new additions including improvements in the I/O systems modules that allow automatic interconnection of signals having the same name (via the `interconnect` function), generation and plotting of describing functions for closed loop systems with static nonlinearities, and a new optimal control module that allows basic computation of optimal controls (including model predictive controllers). Some of the changes that may break use code include the deprecation of the NumPy `matrix` type (2D NumPy arrays are used instead), changes in the return value for Nyquist plots (now returns number of encirclements rather than the frequency response), switching the default timebase of systems to be 0 rather than `None` (no timebase), and changes in the processing of return values for time and frequency responses (to make them more consistent). In many cases, the earlier behavior can be restored by calling `use_legacy_defaults('0.8.4')`. A full list of additions and changes is described below.

New features
* Optimal control module, including rudimentary MPC control ([549](https://github.com/python-control/python-control/pull/549) by murrayrm)
* Describing functions plots ([521](https://github.com/python-control/python-control/pull/521) by murrayrm)
* MIMO impulse and step response ([514](https://github.com/python-control/python-control/pull/514) by murrayrm)
* I/O system improvements:
* linearize() retains signal names plus new interconnect() function ([497](https://github.com/python-control/python-control/pull/497) by murrayrm)
* Add summing junction + implicit signal interconnection ([517](https://github.com/python-control/python-control/pull/517) by murrayrm)
* Implementation of initial_phase, wrap_phase keywords for bode_plot ([494](https://github.com/python-control/python-control/pull/494) by murrayrm)
* Added IPython LaTeX representation method for StateSpace objects ([450](https://github.com/python-control/python-control/pull/450) by roryyorke)
* New dynamics() and output() methods in StateSpace ([566](https://github.com/python-control/python-control/pull/566) by sawyerbfuller)
* FRD systems can now be created from a discrete time LTI system ([568](https://github.com/python-control/python-control/pull/568) by bnavigator)
* Cost and constraints are now allowed for flatsys.point_to_point() ([569](https://github.com/python-control/python-control/pull/569) by murrayrm)

Interface changes
* Switch default state space matrix type to 'array' (instead of 'matrix') ([480](https://github.com/python-control/python-control/pull/480) by murrayrm, #[486](https://github.com/python-control/python-control/pull/486) by bnavigator, #[433](https://github.com/python-control/python-control/pull/433) by sawyerbfuller)
* Use \_\_call\_\_ instead of evalfr in lti system classes ([449](https://github.com/python-control/python-control/pull/449) by sawyerbfuller)
* Default dt is now 0 instead of None ([431](https://github.com/python-control/python-control/pull/431) by sawyerbfuller, #[490](https://github.com/python-control/python-control/pull/490) by bnavigator)
* Change default value of statesp.remove_useless_states to False ([509](https://github.com/python-control/python-control/pull/509) by murrayrm)
* Standardize time response return values, return_x/squeeze keyword processing ([511](https://github.com/python-control/python-control/pull/511) by murrayrm)
* Standardize squeeze processing in frequency response functions ([507](https://github.com/python-control/python-control/pull/507) by murrayrm)
* Nyquist plot now returns number of encirclements ([534](https://github.com/python-control/python-control/pull/534) by murrayrm)
* Switch LTI class and subclasses to use ninputs, noutputs, nstates ([515](https://github.com/python-control/python-control/pull/515) by murrayrm)
* Use standard time series convention for markov() input data ([508](https://github.com/python-control/python-control/pull/508) by murrayrm)
* TransferFunction array priority plus system type conversion checking ([498](https://github.com/python-control/python-control/pull/498) by murrayrm)
* Generate error for tf2ss of non-proper transfer function ([492](https://github.com/python-control/python-control/pull/492) by murrayrm)
* Updated return values for frequency response evaluated at poles ([542](https://github.com/python-control/python-control/pull/542) by murrayrm)

Improvements, bug fixes
* Nyquist plot improvements: better arrows, handle poles on imaginary axis ([534](https://github.com/python-control/python-control/pull/534) by murrayrm)
* Sisotool small visual cleanup, new feature to show step response of different input-output than loop ([531](https://github.com/python-control/python-control/pull/531) by sawyerbfuller)
* Add bdschur() and fox modal form with repeated eigenvalues ([495](https://github.com/python-control/python-control/pull/495) by roryyorke)
* Fix rlocus timeout due to inefficient _default_wn calculation ([527](https://github.com/python-control/python-control/pull/527) by murrayrm)
* Fix [523](https://github.com/python-control/python-control/pull/523): finding z for |H(z)|=1 computed the wrong polynomials (#[525](https://github.com/python-control/python-control/pull/525) by bnavigator)
* Freqplot improvements ([522](https://github.com/python-control/python-control/pull/522) by sawyerbfuller)
* Fix rlocus plotting problem in Jupyter notebooks ([503](https://github.com/python-control/python-control/pull/503) by murrayrm)
* Handle empty pole vector for timevector calculation ([485](https://github.com/python-control/python-control/pull/485) by bnavigator)
* Fix lqe() docstring and input array type ([483](https://github.com/python-control/python-control/pull/483) by bnavigator)
* Updated markov() to add tranpose keyword + default warning ([478](https://github.com/python-control/python-control/pull/478) by murrayrm)
* Fix impulse size for discrete-time impulse response ([447](https://github.com/python-control/python-control/pull/447) by sawyerbfuller)
* Extend returnScipySignalLTI() to handle discrete-time systems ([445](https://github.com/python-control/python-control/pull/445) by bnavigator)
* Bug fixes and extensions for step_info() ([555](https://github.com/python-control/python-control/pull/555) by sawyerbfuller, #[567](https://github.com/python-control/python-control/pull/567) by juanodecc, #[577](https://github.com/python-control/python-control/pull/577) by bnavigator)

Additional changes
* Address NumPy deprecations np.int, np.float ([539](https://github.com/python-control/python-control/pull/539) by dapperfu, #[548](https://github.com/python-control/python-control/pull/548) by murrayrm)
* Shift CI tests from Travis CI to GitHub Actions ([504](https://github.com/python-control/python-control/pull/504) by murrayrm)
* Link to developer wiki in docs. ([502](https://github.com/python-control/python-control/pull/502) by sawyerbfuller)
* Reduce Python 3 testing to speed up Travis CI testing ([487](https://github.com/python-control/python-control/pull/487) by murrayrm)
* Refactor the test suite using pytest for array and matrix types ([438](https://github.com/python-control/python-control/pull/438) by bnavigator)
* Full list of [merged pull requests](https://github.com/python-control/python-control/pulls?utf8=✓&q=is%3Amerged+milestone%3A0.9.0) associated with this release.
* Full list of [commits](https://github.com/python-control/python-control/compare/0.8.4..0.9.0) associated with this release.

Page 1 of 4

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.