You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/model/linmodel.jl
+14-3Lines changed: 14 additions & 3 deletions
Original file line number
Diff line number
Diff line change
@@ -68,15 +68,17 @@ and `:zoh` for manipulated inputs, and `:tustin`, for measured disturbances. Las
68
68
the aforementioned discretization methods.
69
69
70
70
Note that the constructor transforms the system to its minimal realization using [`minreal`](https://juliacontrol.github.io/ControlSystems.jl/stable/lib/constructors/#ControlSystemsBase.minreal)
71
-
to favor observability. As a consequence, the final state-space representation may be
72
-
different from the one provided in `sys`. It is also converted into a more practical form
73
-
(``\mathbf{D_u=0}`` because of the zero-order hold):
71
+
to favor controllability and observability. As a consequence, the final state-space
72
+
representation may be different from the one provided in `sys`. It is also converted into a
73
+
more practical form (``\mathbf{D_u=0}`` because of the zero-order hold):
Use the syntax [`LinModel(A, Bu, C, Bd, Dd, Ts, nu, nx, ny, nd)`](@ref) to force a specific
81
+
state-space representation.
80
82
"""
81
83
functionLinModel(
82
84
sys::StateSpace,
@@ -180,6 +182,15 @@ function LinModel(sys::DelayLtiSystem, Ts::Real; kwargs...)
180
182
returnLinModel(sys_dis, Ts; kwargs...)
181
183
end
182
184
185
+
@docraw"""
186
+
LinModel(A, Bu, C, Bd, Dd, Ts, nu, nx, ny, nd)
187
+
188
+
Construct the model from the discrete state-space matrices `A, Bu, C, Bd, Dd` directly.
189
+
190
+
This syntax do not modify the state-space representation provided in argument ([`minreal`](https://juliacontrol.github.io/ControlSystems.jl/stable/lib/constructors/#ControlSystemsBase.minreal)
191
+
is not called). Care must be taken to ensure that the model is controllable and observable.
0 commit comments