Problem running symbolic toolbox in a loop

2 次查看(过去 30 天)
hi,i am working on a model identification techinque, so i have used symbolic tool box for some mathematics. I am facing issues when i run the mathematics in a for loop. The program is taking too long to execute and sometimes it even hangs up. I would like to know if it is the symbolic tool box is so heavy on the compuation side if i run it in a loop.
  4 个评论
Torsten
Torsten 2022-9-1
Imagine how big the expressions for Ysim become for N=9 - this will make calculating Ysim symbolically extremely slow.
In the code above, I don't see any reason to use the symbolic toolbox. Try to avoid it for N large.
Prithvi Raj Murthy
Actually i am using a transfer function model to predict my system from data. so i used symbolic toolbox for the variables to calculate the different parameters of the model. Is there anyother alternate that i can work on

请先登录,再进行评论。

回答(1 个)

Vidip Jain
Vidip Jain 2023-10-5
I understand you are using symbolic toolbox for some mathematical computation in a for loop and the program is taking too long to execute.
Yes, the Symbolic Toolbox in MATLAB can be heavy on the computation side, especially when running in a for loop. This is because the Symbolic Toolbox has to perform a lot of symbolic operations, such as differentiation, integration, and simplification.
If you are using the Symbolic Toolbox to calculate the parameters of a transfer function model, then there are a few things you can do to improve the performance of your code:
  • Avoid using the Symbolic Toolbox in a for loop. If possible, try to calculate the parameters of the transfer function model outside of the for loop. For example, you could calculate the parameters in a separate function and then pass them to the for loop.
  • Use the Symbolic Toolbox function ‘simplify()’ to simplify the symbolic expressions. This can help to reduce the size of the symbolic expressions and improve the performance of the Symbolic Toolbox.
  • Use the Symbolic Toolbox function ‘assume()’ to specify the assumptions about the symbolic variables. This can help to improve the performance of the Symbolic Toolbox by reducing the number of symbolic operations that need to be performed.
For further information, refer to the documentation links below:

类别

Help CenterFile Exchange 中查找有关 Symbolic Math Toolbox 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by