Documentation Center

  • Trial Software
  • Product Updates

sigma

Singular values plot of dynamic system

Syntax

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)

Description

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 Ts, sigma computes the singular values of

for frequencies ω between 0 and the Nyquist frequency ωN = π/Ts.

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:

type = 1

Singular values of the frequency response H–1, where H is the frequency response of sys.

type = 2

Singular values of the frequency response I + H.

type = 3

Singular values of the frequency response I + H–1.

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).

Examples

Singular Values Plot of Dynamic System

Plot the singular value responses of

and I + H(s).

You can do this by typing

H = [0 tf([3 0],[1 1 10]) ; tf([1 1],[1 5]) tf(2,[1 6])]

subplot(211)
sigma(H)
subplot(212)
sigma(H,[],2)

More About

expand all

Tips

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.

Algorithms

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.

See Also

| | | | |

Was this topic helpful?