替换符号数组

时间:2014-02-24 16:04:53

标签: matlab

我正在寻找一种方法来替换长度为x的符号向量,其中所有条目都是符号。

首先,我创建了长度为y

的向量x
y = sym('y',[x 1]);

所以,对于x=3我得到了

 =[y1; y2; y3]

我使用符号y1y2y3来区分它们。 之后我想用一个值替换变量,(在我的情况下,所有y都变为0)。如果我写

y(:)=0;

我得到了

y= [0;0;0]

但稍后在我的代码中它不起作用,因为在我的等式中(我将其区分为y1,y2,y3y1,y2,y3不会被替换。如果我写

y1=0;

y2=0;

y3=0;

效果很好,

现在我需要找到一种方法来为自由选择的y数量生成x

1 个答案:

答案 0 :(得分:0)

使用subs功能。 E.g。

x = 3;
y = sym('y', [x 1]);
eq = sum(y .* y + 3 .* y);
J = jacobian(eq, y);
J = subs(J, y, zeros(x, 1));