0

我知道以前有人问过很多这样的问题,但我看到的案例更复杂(即我不明白),答案似乎只与具体案例有关。

我的案例非常简单(因此广泛适用),取自 MATLAB 自己的帮助页面

syms x
f(x) = [x x^2; x^3 x^4];
f(2)

输出应该如下:

ans =
[ 2,  4]
[ 8, 16]

但相反,我收到此错误消息。怎么来的?我该如何解决?谢谢。

If the input expression contains a symbolic variable, use the VPA
function instead.

Error in ==> sym.sym>sym.double at 936
            Xstr = mupadmex('symobj::double', S.s, 0);

Error in ==> sym.sym>privformatscalar at 2678
    x = double(x);

Error in ==> sym.sym>privformat at 2663
    s = privformatscalar(x);

Error in ==> sym.sym>sym.subsasgn at 1433
                [inds{k},refs{k}] = privformat(inds{k});
4

1 回答 1

3

您可能有旧版本的 MATLAB(此代码在 2011b 上也不适用于我)。这应该是等效的:

syms x
f = [x x^2; x^3 x^4];
subs(f,2);
于 2013-11-12T11:03:33.240 回答