How to solve the Lyapunov equation with unknowns
Ältere Kommentare anzeigen
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 Kommentare
Torsten
am 25 Jul. 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
am 25 Jul. 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
am 26 Jul. 2022
Bearbeitet: Abdelkader Hd
am 26 Jul. 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..
Akzeptierte Antwort
Weitere Antworten (0)
Kategorien
Mehr zu Matrix Computations finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

