From: Richard M. <no...@gi...> - 2019-06-09 03:34:47
|
Branch: refs/heads/master Home: https://github.com/python-control/python-control Commit: d267fa27bd8c9910a979acd237ede2aa5ce35b13 https://github.com/python-control/python-control/commit/d267fa27bd8c9910a979acd237ede2aa5ce35b13 Author: Richard Murray <mu...@cd...> Date: 2019-06-08 (Sat, 08 Jun 2019) Changed paths: M control/__init__.py M control/bdalg.py A control/iosys.py M control/lti.py M control/statesp.py A control/tests/iosys_test.py M control/timeresp.py M doc/classes.rst M doc/control.rst M doc/conventions.rst A examples/cruise-control.py A examples/steering-gainsched.py Log Message: ----------- initial release of I/O systems module (#301) This PR introduces a new module for representing (nonlinear) input/output systems and support for simulation, linearization, and composition. The following features are supported: * Input/output systems can be created using the LinearIOSystem and NonlinearIOSystem classes, and I/O systems can be simulated in continuous and discrete time using the input_output_response() function, which is equivalent to the forced_response() function for LTI system. * Input/output systems can be composed using the existing series, parallel, and feedback functions, as well as using the * and + operators. In addition, the InterconnectedSystem class can be used to interconnect a collection of I/O subsystems, with functionality similar to the connect function in MATLAB. * Input/output systems and input/output signals can be named and Interconnections between I/O systems can be specified using system and signal names. * Input/output systems can be linearized about an equilibrium point using the linearize() function, which returns a LinearIOSystem object. The LinearIOSystem is derived from the StateSpace class, allowing all operations on linear systems to be applied to the linearized system. The find_eqpt() function can be used to find an equilibrium point for an input/output system. Documentation and examples are included to illustrate the use of the iosys module. |