声明用symvar返回的变量(MATLAB)

时间:2014-11-05 02:43:50

标签: matlab variables symbolic-math declare symbolic-computation

我试图从输入声明一个函数(n维)及其变量,无论我在这个函数中有多少变量。例如:

input_func = '3*x*y^2 + x^3 -3*x'

我使用symvar来获取这些变量,它可以正常工作:

>> test = symvar('3*x*y^2 + x^3 -3*x')

test = 

    'x'
    'y'

不幸的是,我无法使用此输出直接声明这些变量。你能帮帮我吗?

顺便说一句,我使用的是MATLAB R2013a

1 个答案:

答案 0 :(得分:1)

怎么样:

>> vars = symvar('3*x*y^2 + x^3 -3*x');
>> syms(vars{:})
>> whos x y
  Name      Size            Bytes  Class    Attributes

  x         1x1               112  sym                
  y         1x1               112  sym