0

Я пытаюсь объявить функцию (n-мерную) и ее переменные из ввода, независимо от того, сколько переменных у меня есть в этой функции. Пример:Объявить переменные, возвращенные с помощью symvar (MATLAB)

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

Я использую symvar, чтобы получить эти переменные, и она работает просто отлично:

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

test = 

    'x' 
    'y' 

К сожалению, я не могу использовать этот выход, чтобы объявить эти переменные напрямую. Не могли бы вы мне помочь?

Btw, я использую MATLAB R2013a

ответ

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     
+0

Он работал. Большое спасибо. – igocps