Stable model, but results show instability

6 ビュー (過去 30 日間)
Kiran Sagar
Kiran Sagar 2012 年 12 月 30 日
i have recently made a simulink model of a mechanical system, though complex in nature, but basically it is a second order ODE.
i think that my plant model is stable statically, and neutrally stable dynamically. yet i am getting results showing dynamic instability. i am thinking about possible reasons for this.
kindly clarify whether numerical scheme can lead to dynamic instability of a neutrally stable plant.
configuration parameters: variable step, step size- auto, tolerances- auto.
  1 件のコメント
Azzi Abdelmalek
Azzi Abdelmalek 2012 年 12 月 30 日
Can you post your model?

サインインしてコメントする。

採用された回答

Matt J
Matt J 2012 年 12 月 30 日
編集済み: Matt J 2012 年 12 月 30 日
Because a neutrally stable system (as I know the term) is on the threshold of instability, it definitely makes sense that numerical inaccuracies in the implementation of the plant can render it unstable.
Consider a system that simply multiplies its input by some constant
y=c*x
For c=1, it is neutrally stable at all inputs, x, whereas for any c>1, it is unstable. If c was the output of approximate calculations, then even though c may supposed to be 1 (stable), imprecision in the calculations can make it >1, i.e., unstable.

その他の回答 (1 件)

Jan
Jan 2012 年 12 月 30 日
編集済み: Jan 2012 年 12 月 30 日
Due to round-off errors and local discretization error the numerical and mathematical behavior is expected to be different. A simply example is the differential quotient as approximation of the derivative:
d = (f(x+h) - f(x)) / h;
If h is large, the linearization error is large. If h is small, the difference of the function evaluations can be such tiny, that the cancellation error dominates the result. Therefore the numerically determined derivative has a limited accuracy only, as a rule of thumb in the magnitude of sqrt(eps). Equivalent arguments appear for the two-sided differential quotient and any other scheme also.
Because all numerical ODE solvers are based on evaluating linearized derivatives, the limited accuracy is a fundamental effect, which cannot be avoided. Reducing the relative and absolute tolerances helps, but only until a certain limit, when the cancellation error dominates the linearization error and the accumulation of the round-off errors gets more important due to the higher number of steps.
However, an unexpected instability can be caused by a modelling error also. Did you validate the model exhaustively? How did you check the dynamic instability? Is the model continuously differentiable (I ask this, because in the past I saw so many users in this forum, who used integrands with discontinuities)?

カテゴリ

Help Center および File ExchangeState-Space Control Design and Estimation についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by