zhaojinhuan 发表于 2009-3-25 09:28

sym和vpa

sym和vpa的关系

我在编程时候想得到f(x)的表达式,用x1,x2...,xm表示。其中X是一个已知的n*m的矩阵。a是一个已知的m维向量
sumd=0;
for i=1:m
    x(i)=sym(sprintf('x%i',i));         
end
for i=1:n
    sumd=sumd+a(i)*exp(-(X(i,:)-x)*(X(i,:)-x)'
end
f=1+2*sumd;
运行结果是
??? The following error occurred converting from sym to double:
Error using ==> sym.double
DOUBLE cannot convert the input expression into a double array.
If the input expression contains a symbolic variable, use the VPA function instead.
Error in ==> jqsvm at 71
    x(i)=vpa(sprintf('x56666144',i));
为什么要用VPA函数呢?
页: [1]
查看完整版本: sym和vpa