Troubleshooting Linearization Results

Diagnosing Blocks

Blocks in Your Model That Impact Linearization Results

During block-by-block analytic linearization, the linearization of each block in the linearization path of your model impacts the overall linearization results.

You can locate the blocks that impact your linearization results by highlighting the blocks in the linearization path. For instructions about highlighting blocks in the linearization path, see Highlighting Blocks in the Linearization.

Which Blocks Linearize Correctly?

Nearly all core Simulink blocks give accurate linearization results. The exceptions are the blocks that are not supported for linearization. See Unsupported Blocks for Linearization for information on how to locate these blocks.

In some cases, the accurate linearization results you obtain might not be the result you expect. If you encounter unexpected linearization results, you can use the Simulink Control Design diagnostic messages to identify which blocks are causing problems in your linearization. For information on how to view diagnostic messages, see Using Diagnostics Messages to Find Problematic Blocks in Your Model.

Blocks with Configuration Warnings

Some linearization-compatible blocks encounter warning messages during linearization. You can use these messages as a guide for modifying your model to obtain the linearization results you expect.

To locate blocks in your model with configuration warnings and to read the warning messages, view the list of block with warning in the Simulink Control Design Diagnostics Messages tab. For information on how to view diagnostic messages, see Using Diagnostics Messages to Find Problematic Blocks in Your Model.

Unsupported Blocks for Linearization

Some Simulink blocks are not supported for linearization and give the wrong answer when linearized. If your model contains blocks that are not supported for linearization, you must replace them to obtain accurate linearization results.

You can find a list of unsupported blocks for linearization in the Simulink Control Design Diagnostics Messages tab. For information about viewing diagnostic messages, see Using Diagnostics Messages to Find Problematic Blocks in Your Model.

Blocks That Automatically Linearize Using Numerical Perturbation

Blocks that do not have pre-programmed exact analytic Jacobians automatically linearize using the numerical perturbation algorithm instead of block-by-block analytic linearization. Block behavior and numerical perturbation levels affect the accuracy of linearization results. For most blocks, you do not need to check these settings. However, to obtain the results you expect, consider adjusting the numerical perturbation levels in the following situations:

To locate blocks in your model that automatically linearize using numerical perturbation, click the hyperlink in the blocks without pre-programmed exact Jacobian (linearized using numerical perturbation) section of the Simulink Control Design Diagnostics Messages tab. For information about viewing diagnostic messages, see Using Diagnostics Messages to Find Problematic Blocks in Your Model.

For more information about numerical perturbation linearization and setting numerical perturbation levels, see Numerical-Perturbation Linearization.

Using Diagnostics Messages to Find Problematic Blocks in Your Model

Diagnostic messages identify the following types of blocks in your model:

To view the diagnostic messages for the blocks in your linearized model, perform these steps:

  1. Select the Model node in the project tree for your linearized model.

  2. Select the Linearization Diagnostic Messages tab.

  3. In the Show diagnostics for drop-down list, choose one of the following options:

Your result resembles the following figure.

Troubleshooting Your Model at the Subsystem and Block Level

If you obtain an unexpected linearization result, you can examine the subsystems and blocks in your model to determine which part of your model is not linearizing properly. If you find subsystems and blocks in your model that are not linearizing properly, replace them and then linearize your model again.

Some of the issues that affect your linearization results at the subsystem and block level include:

To examine subsystems and blocks in your model, you can use the following techniques:

Troubleshooting Linearization Settings

The following linearization settings affect your linearization results. Verify that these linearization settings are appropriate for your linearization.

For more information about these settings, see Changing Linearization Settings and Algorithms in the Simulink Control Design documentation and the linoptions reference page.

Troubleshooting Models with Events-Based Subsystems

Event-based subsystems do not trigger during linearization and therefore, you cannot linearize these subsystems. You must replace each of the event-based subsystem in the linearization path of your model with a representation that you can linearize.

For more information about linearizing event-based subsystems, see Event-Based Models and Triggered Subsystems.

Troubleshooting Your Operating Point

If you obtain unexpected linearization results, check if the operating point you used for linearization is causing inaccurate results.

If you find that the operating point you selected was not ideal for the linearization, choose another operating point and linearize your model again.

For more information, see the following information in the Simulink Control Design documentation:

  


 © 1984-2008- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS