I wonder if it is at all possible to solve the following equation with the Symbolic Toolbox. Matlab was working for more than 5 hours on this when I terminated the process.
The problem could be that the matrices Aa and Ya are not square. Actually I don't need a symbolic answer, numeric would be fine. The main reason to try the Symbolic Toolbox is that I don't see how to approach 'Ya*D' = Aa*Ya', as Ya is being both post- and pre-multiplied. I guess fine points of vector-matrix algebra are needed here.
-marcel
%%Differentiation script 3
syms e Aa Ya D
syms e1 e2 e3 e4
syms a11 a12 a13 a21 a22 a23 a31 a32 a33
syms y11 y12 y13 y14 y21 y22 y23 y24 y31 y32 y33 y34
syms d11 d12 d13 d14 d21 d22 d23 d24 d31 d32 d33 d34 d41 d42 d43 d44
e = [e1 e2 e2 e4];
Aa = [a11 a12 a13
a21 a22 a23
a31 a32 a33];
Ya = [y11 y12 y13 y14
y21 y22 y23 y24
y31 y32 y33 y34];
D = [d11 d12 d13 d14
d21 d22 d23 d24
d31 d32 d33 d34
d41 d42 d43 d44];
solve(Ya*D'- Aa*Ya==0, Ya)
%EOF

댓글 수: 9

Walter Roberson
Walter Roberson 2018년 9월 1일
There is a solution of Ya being all zero.
Are you expecting complex-valued results, or real-valued results?
Star Strider
Star Strider 2018년 9월 1일
This looks similar to the sylvester (link) Sylvester or lyap (link) Lyapunov equations. You might search online to see if you can find a numeric solution appropriate to your system, if these will not work.
Walter Roberson
Walter Roberson 2018년 9월 1일
편집: Walter Roberson 2018년 9월 1일
You can use stepwise elimination, solve for one variable at a time, substitute in, solve the next, and so on. However, after the 4th variable, the process of substituting in starts taking a long time. Ah, maybe it was the simplify() step that I added.... Nope, even just the subs() without simplify() takes a long time.
marcel hendrix
marcel hendrix 2018년 9월 1일
편집: marcel hendrix 2022년 5월 6일
@Walter: The idea is to use this for circuit simulation, to quickly find the steady-state of an electrical network. The solution is to be a real-valued matrix. Ya = 0 is a valid solution but not interesting.
marcel hendrix
marcel hendrix 2018년 9월 1일
@Star Strider: Thanks a lot, Sylvester indeed appears to be a equation that is very similar to what I have. The 'outerproduct' notation used in the solution is not familiar to me, but I think it describes how to find the solution element by element or column vector by column vector.
Meanwhile, studying the paper that inspired the question some more showed that there is an relatively easy way to do the computation inside out. Actually, it has become clear that the technique has no real advantage over what I am using already (although it would be a stunningly elegant algorithm).
Star Strider
Star Strider 2018년 9월 1일
@marcel hendrix —
My pleasure.
... (although it would be a stunningly elegant algorithm).
Publish it! Also create it as a function (with appropriate error-traps) and post it to the File Exchange (that may in the not distant future be renamed, so search it out now.).
The Sylvester and Lyapunov equations are well known in Control Theory, where I first encountered them.
marcel hendrix
marcel hendrix 2018년 9월 2일
At the moment. no time :-(
Further thought has shown that, although the algorithm is not efficient for finding the steady-state, it provides a very cheap way to see if we are in the steady-state. This means I may want to use it in my simulator after all. At some future time I will come around to it.
Thank you for the encouragement. I will also check if Sylvester and Lyapunov as such are relevant to my problem -- i.e. that the similarity of their matrix equation to mine is not an accident.
-marcel
Hi marcel,
I don't believe a nontrivial solution is even possible in general without some conditions on Aa and D. For example,
take
Aa = [1 0 0
0 2 0
0 0 3];
D = [5 0 0 0
0 6 0 0
0 0 7 0
0 0 0 8]
then If you solve
Ya*D' = Aa*Ya
all coefficients of Ya are forced to be zero.
marcel hendrix
marcel hendrix 2022년 10월 22일
Hi David,
It is very likely that you are right. The problem is from circuit simulation, and it assumes the (possibly non-linear) network has a '(periodic) steady-state'. Even when non-periodic, there can be multiple (or no) operating points.

댓글을 달려면 로그인하십시오.

답변 (0개)

카테고리

도움말 센터File Exchange에서 Matrix Computations에 대해 자세히 알아보기

질문:

2018년 9월 1일

댓글:

2022년 10월 22일

Community Treasure Hunt

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

Start Hunting!

Translated by