Commit d267fa2
authored
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.1 parent cda33a2 commit d267fa2
File tree
12 files changed
+3537
-13
lines changed- control
- tests
- doc
- examples
12 files changed
+3537
-13
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
68 | 68 | | |
69 | 69 | | |
70 | 70 | | |
| 71 | + | |
71 | 72 | | |
72 | 73 | | |
73 | 74 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
224 | 224 | | |
225 | 225 | | |
226 | 226 | | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
227 | 232 | | |
228 | 233 | | |
229 | 234 | | |
| |||
Large diffs are not rendered by default.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
178 | 178 | | |
179 | 179 | | |
180 | 180 | | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
181 | 203 | | |
182 | 204 | | |
183 | 205 | | |
| |||
200 | 222 | | |
201 | 223 | | |
202 | 224 | | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
| 232 | + | |
| 233 | + | |
203 | 234 | | |
204 | 235 | | |
205 | 236 | | |
| |||
225 | 256 | | |
226 | 257 | | |
227 | 258 | | |
| 259 | + | |
| 260 | + | |
| 261 | + | |
| 262 | + | |
| 263 | + | |
| 264 | + | |
| 265 | + | |
228 | 266 | | |
229 | 267 | | |
230 | 268 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
115 | 115 | | |
116 | 116 | | |
117 | 117 | | |
118 | | - | |
| 118 | + | |
119 | 119 | | |
120 | 120 | | |
121 | 121 | | |
| |||
152 | 152 | | |
153 | 153 | | |
154 | 154 | | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
155 | 158 | | |
156 | 159 | | |
157 | 160 | | |
| |||
183 | 186 | | |
184 | 187 | | |
185 | 188 | | |
186 | | - | |
| 189 | + | |
187 | 190 | | |
188 | 191 | | |
189 | 192 | | |
| |||
0 commit comments