Extract operations from symbolic expression
Ältere Kommentare anzeigen
Hello,
given a symbolic expression, I want to extract the fundamental operations that take place in this symbolic expression. In the end, I want to create a Simulink model that does the same as the symbolic expression but without a simple matlab function block but with basic simulink blocks. For that, I need to know what happens to the inputs and in what order.
For example:
I have the symbolic expression z = cos(x)*y + y^2.
How exactly do I get the necessary information from the sym object? I want to extract that the cosine of x is computed which is then multiplied with y and then this product is added to the square of y.
Are there any built-in function that can help me with this? So far, the only solution I could think of was to parse the string generated by "simscapeEquation(z)"
Thanks so much!
2 Kommentare
Walter Roberson
am 28 Jan. 2023
If you have
z = cos(x)*y + y^2/cos(x)
then what would the desired output look like? For example are you hoping for a stream of RPN operations such as might be used for an HP29c calculator, with code like
x COS DUP y DUP SWAP2 * SWAP DUP * SWAP2 / +
? This specifies the stream of operations (and is at least partially optimized... I would have to think about whether you could do better by entering y first)
Cedric Kotitschke
am 28 Jan. 2023
Akzeptierte Antwort
Weitere Antworten (0)
Kategorien
Mehr zu General Applications 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!