![](https://secure.gravatar.com/avatar/3d3176cf99cae23d0ac119d1ea6c4d11.jpg?s=120&d=mm&r=g)
Hi Jeffrey, On Tue, Apr 26, 2011 at 2:40 PM, Jeffrey Armstrong <jba@sdf.lonestar.org> wrote:
Hi folks, I've been working on some additions to the scipy.signal module. A significant portion of my work involves dealing with linear systems in the discrete-time domain, but I found that most of the functionality I would need in scipy is implemented only in the continuous domain. I've therefore added some code to handle the discrete time cases. My fork is visible at:
https://github.com/ArmstrongJ/scipy
Additionally, I presented at PyCon 2011, and I briefly discussed a discrete algebraic Riccati equation solver I had implemented in Python. I've included that code into scipy.signal along with a continuous implementation.
I'd appreciate some comments and review of the code. Everything seems to be working for me at this point, but any constructive criticism is greatly appreciated.
I looked through your changes and at first glance it looks pretty good to me. It's not so easy to review however, because it's all in your master branch, it's a lot of code, and there is quite some code added that is later deleted again. It would be easier if you would create separate branches for separate features (not your master branch, keep that a clean mirror of the numpy master branch). There are at least two, the discrete versions of features already present for the continuous domain, and your additions of Riccati, Lyapunov and Sylvester solvers. Perhaps the sort kw for decomp_schur is a third. The current names of modules are not very descriptive. They could be changed to something like: c2d -> cont2discrete care+dare -> riccati lyap+dlyap -> lyapunov Or maybe put it in a "control" module. Can you explain the relation to pydare a bit? Is this code all from pydare and are you relicensing it as BSD and proposing it for inclusion, or is part of this new code? Cheers, Ralf