Create uncertain linear time-invariant object


H = ultidyn('Name',iosize)
H = ultidyn('Name',iosize,'Property1',Value1,'Property2',Value2,...)


H = ultidyn('Name',iosize) creates an uncertain linear, time-invariant objects are used to represent unknown dynamic objects whose only known attributes are bounds on their frequency response. Uncertain linear, time-invariant objects have a name (the Name property), and an input/output size (ioSize property).

Trailing Property/Value pairs are allowed in the construction.

H = ultidyn('name',iosize,'Property1',Value1,'Property2',Value2,...)

The property Type is 'GainBounded' (default) or 'PositiveReal', and describes in what form the knowledge about the object's frequency response is specified.

  • If Type is 'GainBounded', then the knowledge is an upper bound on the magnitude (i.e., absolute value), namely abs(H)<= Bound at all frequencies. The matrix generalization of this is ∥H<= Bound.

  • If Type is 'PositiveReal' then the knowledge is a lower bound on the real part, namely Real(H) >= Bound at all frequencies. The matrix generalization of this is H+H' >= 2*Bound

The property Bound is a real, scalar that quantifies the bound on the frequency response of the uncertain object as described above.

The property SampleStateDimension is a positive integer, defining the state dimension of random samples of the uncertain object when sampled with usample. The default value is 1.

The property AutoSimplify controls how expressions involving the uncertain matrix are simplified. Its default value is 'basic', which means elementary methods of simplification are applied as operations are completed. Other values for AutoSimplify are 'off', no simplification performed, and 'full' which applies model-reduction-like techniques to the uncertain object.

Use the property SampleMaxFrequency to limit the natural frequency for sampling. Randomly sampled uncertain dynamics are no faster than the specified value. The default value is Inf (no limit).

To model frequency-dependent uncertainty levels, multiply the ultidyn object by a suitable shaping filter. For example, for a ultidyn object dH, the following commands specify an uncertainty bound that increases from 0.1 at low frequencies to 10 at high frequencies.

W = tf([1 .1],[.1 1]);
dH = W*dH;


MIMO Uncertain Dynamics

Create an ultidyn object with internal name 'H', dimensions 2-by-3, norm bounded by 7.

H = ultidyn('H',[2 3],'Bound',7) 
Uncertain GainBounded LTI Dynamics: Name H, 2x3, Gain Bound = 7 

Nyquist Plot of Uncertain Dynamics

Create a scalar ultidyn object with an internal name 'B', whose frequency response has a real part greater than 2.5.

B = ultidyn('B',[1 1],'Type','PositiveReal','Bound',2.5)
B =

  Uncertain LTI dynamics "B" with 1 outputs, 1 inputs, and positive real bound of 2.5.

Change the SampleStateDimension to 5, and plot the Nyquist plot of 30 random samples.

B.SampleStateDimension = 5; 

See Also

| |

Introduced before R2006a