Specifications
Table Of Contents
- Introduction
- LTI Models
- Operations on LTI Models
- Model Analysis Tools
- Arrays of LTI Models
- Customization
- Setting Toolbox Preferences
- Setting Tool Preferences
- Customizing Response Plot Properties
- Design Case Studies
- Reliable Computations
- GUI Reference
- SISO Design Tool Reference
- Menu Bar
- File
- Import
- Export
- Toolbox Preferences
- Print to Figure
- Close
- Edit
- Undo and Redo
- Root Locus and Bode Diagrams
- SISO Tool Preferences
- View
- Root Locus and Bode Diagrams
- System Data
- Closed Loop Poles
- Design History
- Tools
- Loop Responses
- Continuous/Discrete Conversions
- Draw a Simulink Diagram
- Compensator
- Format
- Edit
- Store
- Retrieve
- Clear
- Window
- Help
- Tool Bar
- Current Compensator
- Feedback Structure
- Root Locus Right-Click Menus
- Bode Diagram Right-Click Menus
- Status Panel
- Menu Bar
- LTI Viewer Reference
- Right-Click Menus for Response Plots
- Function Reference
- Functions by Category
- acker
- allmargin
- append
- augstate
- balreal
- bode
- bodemag
- c2d
- canon
- care
- chgunits
- connect
- covar
- ctrb
- ctrbf
- d2c
- d2d
- damp
- dare
- dcgain
- delay2z
- dlqr
- dlyap
- drss
- dsort
- dss
- dssdata
- esort
- estim
- evalfr
- feedback
- filt
- frd
- frdata
- freqresp
- gensig
- get
- gram
- hasdelay
- impulse
- initial
- interp
- inv
- isct, isdt
- isempty
- isproper
- issiso
- kalman
- kalmd
- lft
- lqgreg
- lqr
- lqrd
- lqry
- lsim
- ltimodels
- ltiprops
- ltiview
- lyap
- margin
- minreal
- modred
- ndims
- ngrid
- nichols
- norm
- nyquist
- obsv
- obsvf
- ord2
- pade
- parallel
- place
- pole
- pzmap
- reg
- reshape
- rlocus
- rss
- series
- set
- sgrid
- sigma
- sisotool
- size
- sminreal
- ss
- ss2ss
- ssbal
- ssdata
- stack
- step
- tf
- tfdata
- totaldelay
- zero
- zgrid
- zpk
- zpkdata
- Index

Conditioning and Numerical Stability
11-5
Notice how much the small change in the data is magnified in the solution.
One way to measure the magnification factor is by means of the quantity
called the condition number of with respect to inversion. The condition
number determines the loss in precision due to roundoff errors in Gaussian
elimination and can be used to estimate the accuracy of results obtained from
matrix inversion and linear equation solution. It arises naturally in
perturbationtheories that compare the perturbedsolution withthe
true solution .
In MATLAB, the function
cond calculates the condition number in 2-norm.
cond(A) is the ratio of the largest singular value of A to the smallest. Try it for
the example above. The usual rule is that the exponent
log10(cond(A)) on the
condition number indicates the number of decimal places that the computer
can lose to roundoff errors.
IEEE standard double precision numbers have about 16 decimal digits of
accuracy, so if a matrix has a condition number of 10
10
, you can expect only six
digits to be accurate in the answer. If the condition number is much greater
than
1/sqrt(eps), caution is advised for subsequent computations. For IEEE
arithmetic,themachineprecision,
eps,isabout
-16
,and1/sqrt(eps)
=
8
.
Another important aspect of conditioning is that, in general, residuals are
reliable indicators of accuracy only if the problem is well-conditioned. To
illustrate, try computing the residual vector for the two candidate
solutions
x = [0.999 –1.001]' and x = [0.341 –0.087]'. Notice that the
second, while clearly a much less accurate solution, gives a far smaller
residual. The conclusion is that residuals are unreliable indicators of relative
solution accuracy for ill-conditioned problems. This is a good reason to be
concerned with computing or estimating accurately the condition of your
problem.
Another simple example of an ill-conditioned problem is the -by- matrix
with ones on the first upper-diagonal.
A = diag(ones(1,n–1),1);
This matrix has eigenvalues at 0. Now consider a small perturbation of the
data consisting of adding the number to the first element in the last ( th)
AA
1–
A
AE+
()
1–
b
A
1–
b
2.2 10
×
6.7 10
×
rAxb–=
nn
n
2
n–
n