我的方程系统需要 N 个变量:
X = cell(N,1)
for k=1:N
X(k) = {sym('X(k)')};
end
创建这些变量后,我想在方程系统中使用它们:
for i=1:N
for j=1:N
if i~=j
S(i)=sum(X(j))
end
end
f(i)=x(i)+2*S(i)+3
end
我收到错误输入参数类型“cell”的未定义函数“sum”
。我应该如何在不使用“cell”的情况下定义变量X(1),...X(N)
?
最佳答案
根据sym
documentation你可以使用例如。 A = sym('A%d%d', [2 2]);
创建符号矩阵。
你是这个意思吗?
N = 5;
% Initialize symbolic matrices with proper size
X = sym('x%d', [N 1]);
S = sym(zeros(N, 1));
f = sym(zeros(N, 1));
for i=1:N
for j=1:N
if i~=j
S(i) = S(i) + X(j);
end
end
f(i)=X(i)+2*S(i)+3;
end
关于matlab - 如何使用 syms 来寻址 N 个不同的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17027187/