Lyapunov stability analysis function

191 vues (au cours des 30 derniers jours)
Lydia Abigail Garza Coello
Is there any function that can be used to compute the Lyapunov stability anlaisisy for a second order system?
I want to know if the following system is stable [1]:
[1] M. Dai, R. Qi and X. Cheng, "Super-Twisting Sliding Mode Control Design for Electric Dynamic Load Simulator," 2019 Chinese Control Conference (CCC), 2019, pp. 3078-3083, doi: 10.23919/ChiCC.2019.8865725

Réponse acceptée

Sam Chak
Sam Chak le 2 Déc 2022
As far as I know, there is no built-in function.m in MATLAB for directly performing the Lyapunov stability analysis. If you are referring to the Lyapunov candidate function, there is no standard technique to construct such a function for a given system, because the system must have a mathematical framework that lends itself to the formation of the Lyapunov function.
I haven't read the suggested paper, but here is an example. If and , then we can design so that the system becomes
.
This system is a special class of 2nd-order systems that is commonly seen in some mechanical motion systems and electrical RLC circuits. For this kind of system, the stability can always be proven without applying the LaSalle invariance principle by constructing the Quadratic Lyapunov Function
where is a positive symmetric matrix that can be designed based on the matrix formula given in the code.
syms x(t) y(t) k2 k3
% Assumptions
assume(k2 > 0 & k3 > 0)
assume([x(t) y(t)], 'real')
assumptions
ans = 
% System
dx = y;
dy = - k3*x - k2*y;
% Definitions
v = [x; y]
v(t) = 
P = [1/2*k2^2+k3 1/2*k2; 1/2*k2 1] % positive-definite matrix
P = 
% Lyapunov candidate function
V = v.'*P*v
V(t) = 
% Differentiate V along trajectories of the System
dV = diff(V, t)
dV(t) = 
dV = subs(dV, {diff(x,t), diff(y,t)}, {dx, dy});
dV = simplify(dV)
dV(t) = 
% Test
tf = isAlways(dV(t) <= 0)
tf = logical
1

Plus de réponses (0)

Catégories

En savoir plus sur Matrix Computations dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by