Note: This page has been translated by MathWorks. Click here to see

To view all translated materials including this page, select Country from the country navigator on the bottom of this page.

To view all translated materials including this page, select Country from the country navigator on the bottom of this page.

Singular values plot of dynamic system

`sigma(sys)`

sigma(sys,w)

sigma(sys,[],type)

sigma(sys,w,type)

sigma(sys1,sys2,...,sysN,w,type)

sigma(sys1,'PlotStyle1',...,sysN,'PlotStyleN',w,type)

sv = sigma(sys,w)

[sv,w]
= sigma(sys)

`sigma `

calculates the singular values of the
frequency response of a dynamic system `sys`

.
For an FRD model, `sigma`

computes the singular values
of `sys.Response`

at the frequencies, `sys.frequency`

.
For continuous-time TF, SS, or ZPK models with transfer function *H*(*s*), `sigma`

computes
the singular values of *H*(*j*ω)
as a function of the frequency ω. For discrete-time TF, SS,
or ZPK models with transfer function *H*(*z*)
and sample time *T _{s}*,

`sigma`

computes
the singular values of$$H\left({e}^{j\omega {T}_{s}}\right)$$

for frequencies ω between 0 and the Nyquist frequency
ω* _{N}* = π/

The singular values of the frequency response extend the Bode
magnitude response for MIMO systems and are useful in robustness analysis.
The singular value response of a SISO system is identical to its Bode
magnitude response. When invoked without output arguments, `sigma`

produces
a singular value plot on the screen.

`sigma(sys)`

plots the singular
values of the frequency response of a model `sys`

.
This model can be continuous or discrete, and SISO or MIMO. The frequency
points are chosen automatically based on the system poles and zeros,
or from `sys.frequency`

if `sys`

is
an FRD.

`sigma(sys,w)`

explicitly
specifies the frequency range or frequency points to be used for the
plot. To focus on a particular frequency interval `[wmin,wmax]`

,
set `w = {wmin,wmax}`

. To use particular frequency
points, set `w`

to the corresponding vector of frequencies.
Use `logspace`

to generate logarithmically spaced
frequency vectors. Frequencies must be in `rad/TimeUnit`

,
where `TimeUnit`

is the time units of the input dynamic
system, specified in the `TimeUnit`

property
of `sys`

.

`sigma(sys,[],type)`

or `sigma(sys,w,type)`

plots
the following modified singular value responses:

| Singular values of the frequency response |

| Singular values of the frequency response |

| Singular values of the frequency response |

These options are available only for square systems, that is, with the same number of inputs and outputs.

`sigma(sys1,sys2,...,sysN,w,type)`

plots
the singular value plots of several LTI models on a single figure.
The arguments `w`

and `type`

are
optional. The models `sys1,sys2,...,sysN `

need not
have the same number of inputs and outputs. Each model can be either
continuous- or discrete-time.

`sigma(sys1,'PlotStyle1',...,sysN,'PlotStyleN',w,type)`

specifies
a distinctive color, linestyle, and/or marker for each system plot.
See `bode`

for an example.

`sv = sigma(sys,w)`

and ```
[sv,w]
= sigma(sys)
```

return the singular values `sv`

of
the frequency response at the frequencies `w`

. For
a system with `Nu`

input and `Ny`

outputs,
the array `sv`

has `min(Nu,Ny)`

rows
and as many columns as frequency points (length of `w`

).
The singular values at the frequency `w(k)`

are given
by `sv(:,k)`

.

You can change the properties of your plot, for example the units. For information on the ways to change properties of your plots, see Ways to Customize Plots.

`sigma`

uses the MATLAB^{®} function `svd`

to
compute the singular values of a complex matrix.

For TF, ZPK, and SS models, `sigma`

computes
the frequency response using the `freqresp`

algorithms.
As a result, small discrepancies may exist between the `sigma`

responses
for equivalent TF, ZPK, and SS representations of a given model.