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

在Matlab R2010b中将内联函数转换为sym,matlab,Matlab,我试图在MatlabR2010B中将内联函数转换为sym,但它不起作用。2008年,matlab运行良好。代码如下: 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

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

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,'');

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

f = @(t) t.^2;
syms t
F = sym(f);
这将为您提供相同的内联功能/可移植性。

使用

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

EDU>> f0

t^2

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

ans =

2*t