MATLAB:如何将(sym)函数转换为匿名函数?

时间:2017-11-25 08:12:09

标签: matlab octave

在大学我们使用Matlab进行数值分析,我们研究了一些找到根的方法,在牛顿方法中我们计算函数的导数但我想让Matlab为我做,但是当我拿出导数时,函数变成( sym)当我然后将值传递给它时它表示传递浮动值是危险的,有没有办法将它转换回正常的匿名函数?因为这解决了我的问题:D

syms x
f=@(x) x^2
df=diff(f(x),x)
f(1.2) #this is ok
df(1.2) #not allowed

我用Google搜索了很多,但我只找到了如何转换其他方式

1 个答案:

答案 0 :(得分:2)

简单,使用'matlabFunction':

syms x
f=@(x) x^2
df_=diff(f(x),x);

df=matlabFunction(df_);
df(1.2)