在Matlab R2010b中将内联函数转换为sym

时间:2012-11-14 20:57:34

标签: matlab

我正在尝试在matlab R2010b中将内联函数转换为sym,但它不起作用。在matlab 2008中运作良好。代码如下:

in = inline('t^2');
syms t real
sym(in);
??? Error using ==> sym.sym>tomupad at 2178
Conversion to 'sym' from 'inline' is not possible.

Error in ==> sym.sym>sym.sym at 111
                S.s = tomupad(x,'');

2 个答案:

答案 0 :(得分:1)

而不是inline,您可以通过函数句柄使用匿名函数:

f = @(t) t.^2;
syms t
F = sym(f);

应该为您提供相同的内联功能/可移植性。

答案 1 :(得分:0)

使用http://www.mathworks.com/matlabcentral/fileexchange/33025

in = inline('t^2');
f0 = inline2sym(in);

EDU>> f0

t^2

EDU>> syms t
EDU>> diff(f0,t)

ans =

2*t