
ChangeLog
============
v.1.0.1
-------
+ Restructured documentation, now has a function reference template.
+ State and Transfer conversion with static cols/rows bugs fixed.
+ minimal_realization and staircase bugs fixed
+ random model creation in continuous and discrete time is possible.
+ pole placement via ackermann

v.1.0.0
-------
+ First public release
+ Time domain plots and auto time sequence generation.
+ Unit tests are significantly improved(>80%)
+ Lots and lots of bug fixes.
+ Change the documentation theme to guzzle
+ Added first order hold discretization method
+ Removed FAQ from docs

v.0.1.1rc1
----------
+ Unified State, Transfer checks via arg_utils
+ Fixed transfer_to_state argument signature
+ Added discretization and undiscretization funcs
+ Separated the frequency domain computations and plotting
+ Rewritten the frequency grid generation
+ Fixed some of the unwrapping bugs
+ Added lqr, dlqr, lqry and dlqry with a single signature
+ Refactored minimal_realization related funcs.
+ Fixed hinf-norm bugs
+ Started time domain plots.

v0.1.1b5
--------
+ Requirement of NumPy is changed to 1.13 and above. Among others, we need
  `__array_ufunc__` override mechanism for representation algebra. This
  should not be an issue since noone seems to use this.
+ The representations can now be sliced with `G[:,1:3]` etc.

v0.1.1b4
--------
+ Sanitized the circular dependencies a bit more
+ minimal_realization is changed to accept models instead of A,B,C triplet
+ minimal_realization for Transfer uses the pole zero cancellation check
+ more housekeeping and bug fixes
+ added damping, natural frequency properties of poles
+ state_to_transfer does not return minimal realizations (per request)

v0.1.1b3
--------
+ More tests
+ bode, nyquist plots with matplotlib
+ Rewritten the transmission_zeros to improve accuracy
+ Removed the single file and replaced it with modular files.
+ Refactored Riccati solvers to SciPy official repo
+ Lyapunov solver safety net is moot. Created PR #6775 in SciPy

v0.1.1b2
--------
+ Added Riccati solvers
+ More documentation
+ Added safety net for lyapunov solvers in case there is no solution

v0.1.1b1
--------
+ Added Lyapunov solvers
+ Fixed many bugs
+ Removed block diag and switched to scipy version

v0.1.1a
-------
+ Initial versioning and packaging.
+ Adding documentation and Sphinx integration.
+ Basically everything there is.