|
From: Richard M. <mu...@cd...> - 2012-10-07 05:57:14
|
I'm not sure whether SourceForge 2.0 sends out commit messages to everyone on the developers list (can someone let me know if you did/didn't get the note below?), but wanted to briefly comment on the most recent commit, which has a first cut implementation for discrete time systems. After thinking about this for a bit and looking at what others had done (eg, the new discrete time capability in scipy.signals), I decided to add a 'dt' class variable to both the StateSpace and TransferFunction classes that can be used to specify the "timebase" for a system: * dt = None => system timebase not specified (default) * dt = 0 => system is continuous time * dt > 0 => system is discrete time, with dt as the sampling time The ways things are set up, if you interconnected two systems using series (*), parallel (+) or feedback, then it will check to make sure that the timebases are consistent. If both systems have a timebase (dt != Null), then the timebase for both systems must match. If only one of the system has a timebase, the return timebase will be set to match it. By default, systems are created with dt=None and everything works as it did before. So if all you care about is continuous time systems, nothing changes. Right now, most other operations (bode, lsim, etc) will generate a NotImplementedError if you call them, but I'll start to add that functionality pretty soon. There are functions 'timebase' (returns 'ctime', 'dtime' or None), 'isctime' and 'isdtime' to test the timebase of a system without having to look at dt. I've updated the version number for the toolbox to 0.6a since this represents a reasonably large charge. As you should have also seen (via a post to python-control-announce), I also kicked out a release of the code just before this set of changes. Comments and feedback is welcome. The next set of things to do are implement c2d, time and frequency responses and perhaps a few other basic commands. I may also let dt = True be used to specify a discrete time system without a specific sampling period. -richard On 6 Oct 2012, at 21:44 , "Repository Python Control Systems Library code" <no...@co...> wrote: > : Initial support for discrete time systems (version 0.6) > > • Added dt class variable to keep track of whether system is discrete > • Algebraic operations check for timebase consistency > • Functions that don't support discrete time generate NotImplementedError > • Added unit tests for code that has been implemented so far > • Updated version number to 0.6a > http://sourceforge.net/p/python-control/code/193/ > > Sent from sourceforge.net because you indicated interest in https://sourceforge.net/p/python-control/code/ > > To unsubscribe from further messages, please visit https://sourceforge.net/auth/prefs/ > |