How to solve the Lyapunov equation with unknowns
Afficher commentaires plus anciens
I'd like to ask those with unknowns Lyapunov What function does the equation use
The original equation is MV+VM‘=-D,
The matrix code is like this , There is only one unknown :
M=[0 w1 0 0 0 0;-q1 -r1 0 0 -g1u -g1v;0 0 0 w2 0 0;0 0 -q2 -r2 -g2u -g2v;g1v 0 g2v 0 -k x;-g1u 0 -g2u 0 -x -k];
d=[0 r1*(2n1+1) 0 r2(2*n2+1) k k];
D=diag(d);
V=lyap(M,D)
The following error occurred after running , Only numeric matrices can be calculated :
Misuse lyap (line 35)
The input arguments of the "lyap" command must be numeric arrays.
error Untitled (line 38)
V=lyap(M,D)
Thank you
6 commentaires
Torsten
le 25 Juil 2022
So you want to solve for V with an additional symbolic parameter in M and/or D ?
Then you have a linear system of 36 equations for 36 unknowns v_ij that has to be solved symbolically.
Means that MATLAB will have to calculate determinants of matrices of size 36x36. This is not realistic.
Abdelkader Hd
le 25 Juil 2022
What exactly do you gain from symbolically solving the linear matrix equation that is named after Lyapunov?
Do the symbolic parameters vary from
to ∞ in reality?
What are you trying to prove? Have you looked deeper into the problem such that it may be possible to decouple a few states to reduce the matrix size down to where it can be solved symbolically?
Do the reviewers suggest that you to solve the Lyapunov equation in order to get your manuscript accepted?
If you tell us your story, perhap we can find a workaround.
w1 = 1;
q1 = 1;
r1 = 1;
g1 = 1;
w2 = 1;
q2 = 1;
r2 = 1;
g2 = 1;
n1 = 1;
n2 = 1;
k = 1;
u = 1;
v = 1;
x = 1;
M = [0 w1 0 0 0 0; -q1 -r1 0 0 -g1*u -g1*v; 0 0 0 w2 0 0; 0 0 -q2 -r2 -g2*u -g2*v; g1*v 0 g2*v 0 -k x; -g1*u 0 -g2*u 0 -x -k];
d = [0 r1*(2*n1+1) 0 r2*(2*n2+1) k k];
D = diag(d);
V = lyap(M, D)
Abdelkader Hd
le 26 Juil 2022
Modifié(e) : Abdelkader Hd
le 26 Juil 2022
I'm not good at magnomechanics, but it can clearly says that the elements of 𝒱are fully defined as function of u

and in Eq. (3), it is given that
So, maybe you can use ode45() to solve for
. Then, you can find a steady-state 𝒱 when
no longer change in time..
Réponse acceptée
Plus de réponses (0)
Catégories
En savoir plus sur Matrix Computations dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

