| Products & Services | Industries | Academia | Support | User Community | Company |
| Download Product Updates | | | Get Pricing | | | Trial Software |
| Documentation → Control System Toolbox |
| Contents | Index |
| Learn more about Control System Toolbox |
sigma
sigma(sys)
sigma(sys,w)
sigma(sys,[],type)
sigma(sys,w,type)
sigma calculates the singular values of the
frequency response of an LTI model. For an FRD model, sys, sigma computes
the singular values of sys.Response at the frequencies, sys.frequency.
For continuous-time TF, SS, or ZPK models with transfer function
, sigma computes
the singular values of
as a function of the frequency
. For discrete-time TF, SS, or ZPK
models with transfer function
and sample time
, sigma computes
the singular values of
![]()
for frequencies
between 0 and the Nyquist frequency
.
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 an arbitrary LTI 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. The frequencies must be specified in rad/sec.
sigma(sys,[],type) or sigma(sys,w,type) plots the following modified singular value responses:
| type = 1 | Singular values of the frequency response
|
| type = 2 | Singular values of the frequency response
|
| type = 3 | Singular values of the frequency response
|
These options are available only for square systems, that is, with the same number of inputs and outputs.
To superimpose the singular value plots of several LTI models on a single figure, use
sigma(sys1,sys2,...,sysN) sigma(sys1,sys2,...,sysN,[],type) % modified SV plot sigma(sys1,sys2,...,sysN,w) % specify frequency range/grid
The models sys1,sys2,...,sysN need not have the same number of inputs and outputs. Each model can be either continuous- or discrete-time. You can also specify a distinctive color, linestyle, and/or marker for each system plot with the syntax
sigma(sys1,'PlotStyle1',...,sysN,'PlotStyleN')
See bode for an example.
When invoked with output arguments,
[sv,w] = sigma(sys) sv = sigma(sys,w)
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.
Plot the singular value responses of

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

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.
bode, evalfr, freqresp, ltiview, nichols, nyquist
![]() | sgrid | sigmaoptions | ![]() |

Includes the most popular MATLAB recorded presentations with Q&A sessions led by MATLAB experts.
| © 1984-2009- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |