Uncertain LTI Dynamics Elements
Uncertain linear, time-invariant objects, ultidyn
, are used to represent unknown linear, time-invariant dynamics, whose
only known attributes are bounds on their frequency response.
Create Uncertain LTI Dynamics
You can create a 1-by-1 (scalar) positive-real uncertain linear dynamics element, whose frequency response always has real part greater than -0.5. Set the SampleStateDimension
property to 5. Plot a Nyquist plot of 30 instances of the element.
g = ultidyn('g',[1 1],'Type','Positivereal','Bound',-0.5); g.SampleStateDimension = 5;
nyquist(usample(g,30)) xlim([-2 10]) ylim([-6 6]);
Properties of ultidyn
Elements
Uncertain linear, time-invariant objects have an internal name (the
Name
property), and are created by specifying their size (number of
outputs and number of inputs).
The property Type
specifies whether the known attributes about the
frequency response are related to gain or phase. The property Type
may be
'GainBounded'
or 'PositiveReal'
. The default value
is 'GainBounded'
.
The property Bound
is a single number, which along with
Type
, completely specifies what is known about the uncertain frequency
response. Specifically, if Δ is an ultidyn
element, and if γ denotes the value of the Bound
property, then the element represents the set of all stable, linear, time-invariant systems
whose frequency response satisfies certain conditions:
If Type
is 'GainBounded'
, for all frequencies. When Type
is
'GainBounded'
, the default value for Bound
(i.e.,
γ) is 1. The NominalValue
of Δ is always the
0-matrix.
If Type
is 'PositiveReal'
, Δ(ω) + Δ*(ω) ≥ 2γ· for all frequencies. When Type
is
'PositiveReal'
, the default value for Bound
(i.e.,
γ) is 0. The NominalValue
is always (γ + 1 +2|γ|)I.
All properties of a ultidyn
are accessible with
get
and set
(although the
NominalValue
is determined from Type
and
Bound
, and not accessible with set
). The properties
are
Properties |
Meaning |
Class |
---|---|---|
|
Internal Name |
|
|
Nominal value of element |
|
|
|
|
|
Norm bound or minimum real |
|
|
State-space dimension of random samples of this uncertain element |
|
|
Maximum natural frequency for random sampling |
|
|
|
|
The SampleStateDim
property specifies the state dimension of random
samples of the element when using usample
. The default value is 1. The
AutoSimplify
property serves the same function as in the uncertain real
parameter.
Time Domain of ultidyn
Elements
On its own, every ultidyn
element is interpreted as a
continuous-time, system with uncertain behavior, quantified by bounds (gain or real-part) on
its frequency response. However, when a ultidyn
element is an uncertain
element of an uncertain state space model (uss
), then the time-domain characteristic of the element is determined from
the time-domain characteristic of the system. The bounds (gain-bounded or positivity) apply
to the frequency-response of the element.
Interpreting Uncertainty in Discrete Time
The interpretation of a ultidyn
element as a continuous-time or
discrete-time system depends on the nature of the uncertain system (uss
) within which it is an uncertain element.
For example, create a scalar ultidyn
object. Then, create two
1-input, 1-output uss objects using the ultidyn
object as their “D” matrix. In one case, create without
specifying sample-time, which indicates continuous time. In the second case, force
discrete-time, with a sample time of 0.42.
delta = ultidyn('delta',[1 1]); sys1 = uss([],[],[],delta) USS: 0 States, 1 Output, 1 Input, Continuous System delta: 1x1 LTI, max. gain = 1, 1 occurrence sys2 = uss([],[],[],delta,0.42) USS: 0 States, 1 Output, 1 Input, Discrete System, Ts = 0.42 delta: 1x1 LTI, max. gain = 1, 1 occurrence
Next, get a random sample of each system. When obtaining random samples using usample
, the values of the elements used in the sample are returned in the 2nd
argument from usample
as a structure.
[sys1s,d1v] = usample(sys1); [sys2s,d2v] = usample(sys2);
Look at d1v.delta.Ts
and d2v.delta.Ts
. In the
first case, since sys1
is continuous-time, the system
d1v.delta
is continuous-time. In the second case, since
sys2
is discrete-time, with sample time 0.42, the system
d2v.delta
is discrete-time, with sample time 0.42.
d1v.delta.Ts ans = 0 d2v.delta.Ts ans = 0.4200
Finally, in the case of a discrete-time uss
object, it is not the case that ultidyn
objects are interpreted as continuous-time uncertainty in feedback
with sampled-data systems. This very interesting hybrid theory is beyond the scope of the
toolbox.