1- ..currentmodule control
1+ .. currentmodule :: control
22
33Nonlinear system models
44=======================
@@ -111,7 +111,7 @@ Operating points and linearization
111111----------------------------------
112112
113113A nonlinear input/output system can be linearized around an equilibrium point
114- to obtain a :class: `~control. StateSpace ` linear system::
114+ to obtain a :class: `StateSpace ` linear system::
115115
116116 sys_ss = ct.linearize(sys_nl, xeq, ueq)
117117
@@ -143,7 +143,7 @@ Simulations and plotting
143143------------------------
144144
145145To simulate an input/output system, use the
146- :func: `~control. input_output_response ` function::
146+ :func: `input_output_response ` function::
147147
148148 resp = ct.input_output_response(io_sys, T, U, x0, params)
149149 t, y, x = resp.time, resp.outputs, resp.states
@@ -159,3 +159,32 @@ different plot elements. The :func:`combine_time_responses` function
159159an be used to combine multiple time responses into a single
160160`TimeResponseData ` object. See the :ref: `response-chapter ` chapter
161161for more information on this functionality.
162+
163+ Nonlinear system properties
164+ ---------------------------
165+
166+ The following basic attributes and methods are available for
167+ :class: `NonlinearIOSystem ` objects:
168+
169+ .. autosummary ::
170+
171+ ~NonlinearIOSystem.dynamics
172+ ~NonlinearIOSystem.output
173+ ~NonlinearIOSystem.linearize
174+ ~NonlinearIOSystem.__call__
175+
176+ The :func: `~NonlinearIOSystem.dynamics ` method returns the right hand
177+ side of the differential or difference equation, evaluated at the
178+ current time, state, input, and (optionally) parameter values. The
179+ :func: `~NonlinearIOSystem.output ` method returns the system output.
180+ For static nonlinear systems, it is also possible to obtain the value
181+ of the output by directly calling the system with the value of the
182+ input::
183+
184+ >>> sys = ct.nlsys(
185+ ... None, lambda t, x, u, params: np.sin(u), inputs=1, outputs=1)
186+ >>> sys(1)
187+ np.float64(0.8414709848078965)
188+
189+ The :func: `~NonlinearIOSystem.linearize ` method is equivalent to the
190+ :func: `linearize ` function.
0 commit comments