Can I use a symbol as a variable?

8 visualizaciones (últimos 30 días)
Prasenjit Dewanjee
Prasenjit Dewanjee el 19 de Feb. de 2023
Comentada: Walter Roberson el 19 de Feb. de 2023
HI!
In my code, I have declared:
syms m
I have thes huge expressions that contain m in them as a symbol. Later in the code, I want to use m as a varibale in a loop like this:
m= 1:1:20
Is there any way to do this?
Any help will be appreciated.

Respuestas (1)

Paul
Paul el 19 de Feb. de 2023
Hi Prasenjit,
Yes, you can do that
syms m
f = m^2 % expression that contains m as a symbol
f = 
whos m % m is sym
Name Size Bytes Class Attributes m 1x1 8 sym
for m = 1:1:20; % loop with m
m; % do something with m
end
whos m % m is now a double
Name Size Bytes Class Attributes m 1x1 8 double
At this point f is still an expression in terms of m
f
f = 
However, the m that is in f is now not related to the variable m in the Matlab workspace. Are you sure that's what you want?
What is the goal of defining expressions in terms of sym m and then using m as a loop variable? If you show a simple example of what you're trying to do someone might be able to help do it in a different or better way.
  1 comentario
Walter Roberson
Walter Roberson el 19 de Feb. de 2023
if the idea is that you want the loop variable m to become the value of symbolic m, then see subs()

Iniciar sesión para comentar.

Categorías

Más información sobre Loops and Conditional Statements en Help Center y File Exchange.

Productos


Versión

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by