How to solve the Lyapunov equation with unknowns
Show older comments
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 Comments
Torsten
on 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
on 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
on 26 Jul 2022
Edited: Abdelkader Hd
on 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..
Accepted Answer
More Answers (0)
Categories
Find more on Matrix Computations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
