0

我正在尝试将内联函数转换为 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,'');
4

2 回答 2

1

代替inline,您可以通过函数句柄使用匿名函数:

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

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

于 2012-11-14T21:01:37.663 回答
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
于 2012-11-15T07:45:47.547 回答