Skip to Main Content Skip to Search
Product Documentation

Linearizing Nonlinear Models

What Is Linearization?

Linearization is a linear approximation of a nonlinear system that is valid in a small region around the operating point.

For example, suppose that the nonlinear function is . Linearizing this nonlinear function about the operating point x=1, y=1 results in a linear function .

Near the operating point, is a good approximation to . Away from the operating point, the approximation is poor.

The next figure shows a possible region of good approximation for the linearization of . The actual region of validity depends on the nonlinear model.

Extending the concept of linearization to dynamic systems, you can write continuous-time nonlinear differential equations in this form:

In these equations, x(t) represents the system states, u(t) represents the inputs to the system, and y(t) represents the outputs of the system.

A linearized model of this system is valid in a small region around the operating point t=t0, x(t0)=x0, u(t0)=u0, and y(t0)=g(x0,u0,t0)=y0.

To represent the linearized model, define new variables centered about the operating point:

The linearized model in terms of δx, δu, and δy is valid when the values of these variables are small:

 Examples and How To

 More About

Applications of Linearization

Linearization is useful in model analysis and control design applications.

Exact linearization of the specified nonlinear Simulink model produces linear state-space, transfer-function, or zero-pole-gain equations that you can use to:

Linearization in Simulink Control Design

You can use Simulink Control Design to linearize continuous-time, discrete-time, or multirate Simulink models. The resulting linear time-invariant model is in state-space form.

Simulink Control Design uses a block-by-block approach to linearize models, instead of using full-model perturbation. This block-by-block approach individually linearizes each block in your Simulink model and combines the results to produce the linearization of the specified system.

The block-by-block linearization approach has several advantages to full-model numerical perturbation:

 More About

Choosing Linearization Tools

Choosing Simulink Control Design Linearization Tools

Simulink Control Design lets you perform linear analysis of nonlinear models using a graphical user interface, functions, or blocks.

Linearization ToolWhen to Use
Control and Estimation Tools Manager GUI
  • Interactively explore Simulink model linearization under different operating conditions.

  • Diagnose linearization issues.

  • Automatically generate MATLAB code for batch linearization.

MATLAB command-line interface
  • Batch linearize over multiple model configurations or operating points.

  • Linearize a Simulink model for command-line analysis of poles and zeros, plot responses, and control design.

Linear Analysis Plots blocks
  • Visualize linear characteristics of your Simulink model during simulation.

  • View bounds on linear characteristics of your Simulink model on plots.

  • Optionally, check that the linear characteristics of your Simulink model satisfy specified bounds.

    Note   Linear Analysis Plots blocks do not support code generation. You can only use these blocks in Normal simulation mode.

Choosing Exact Linearization Versus Frequency Response Estimation

In most cases, you should use exact linearization instead of frequency response estimation to obtaining a linear approximation of a Simulink model.

Exact linearization:

Use frequency response estimation:

 More About

Linearization Using Simulink Control Design Versus Simulink

How is Simulink linmod different from Simulink Control Design functionality for linearizing nonlinear models?

Although both Simulink Control Design and Simulinklinmod perform block-by-block linearization, Simulink Control Design functionality is enhanced by a more flexible user interface and Control System Toolbox™ numerical algorithms.

 Simulink Control Design LinearizationSimulink Linearization
Graphical-user interfaceYes
See Linearize Simulink Model.
No
Flexibility in defining which portion of the model to linearizeYes. Lets you specify linearization I/O points at any level of a Simulink model, either graphically or programmatically without having to modify your model.
See Linearize at Trimmed Operating Point.
No. Only root-level linearization I/O points, which is equivalent to linearizing the entire model.
Requires that you add and configure additional Linearization Point blocks.
Open-loop analysisYes. Lets you open feedback loops without deleting feedback signals in the model.
See Open-Loop Response of Control System for Stability Margin Analysis.
Yes, but requires that you delete feedback signals in your model to open the loop
Control linear model state orderingYes
See State Order in Linearized Model.
No
Control linearization of individual blocks Yes. Lets you specify custom linearization behavior for both blocks and subsystems.
See Controlling Block Linearization.
No
Linearization diagnosticsYes. Identifies problematic blocks and lets you examine the linearization value of each block.
See Basic Linearization Troubleshooting.
No
Block detection and reductionYes. Block reduction detects blocks that do not contribute to the overall linearization yielding a minimal realization.No
Control of rate conversion algorithm for multirate modelsYes No

Model Requirements for Exact Linearization

Exact linearization supports most Simulink blocks.

However, Simulink blocks with strong discontinuities or event-based dynamics linearize (correctly) to zero or large (infinite) gain. Sources of event-based or discontinuous behavior exist in models that have Simulink Control Design requires special handling of models that include:

For most applications, the states in your Simulink model should be at steady state. Otherwise, your linear model is only valid over a small time interval.

 More About

Operating Point Impact on Linearization

Choosing the right operating point for linearization is critical for obtaining an accurate linear model. The linear model is an approximation of the nonlinear model that is valid only near the operating point at which you linearize the model.

Although you specify which Simulink blocks to linearize, all blocks in the model affect the operating point.

A nonlinear model can have two very different linear approximations when you linearize about different operating points.

The linearization result for this model is shown next, with the initial condition for the integration x0 = 0.

This table summarizes the different linearization results for the two different operating points.

Operating PointLinearization Result
Initial Condition = 5, State x1 = 530/s
Initial Condition = 0, State x1 = 00

  


Free Control Systems Interactive Kit

Learn more about resources for designing, testing, and implementing control systems.

Get free kit

Trials Available

Try the latest control systems products.

Get trial software
 © 1984-2012- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS