如何在函数subs MATLAB中没有元素化多个矩阵

时间:2013-11-10 08:04:16

标签: matlab

我有这个:

syms X Y;
F=X*Y;
A=ones(2);
B=ones(2);

为什么subs (F,{X,Y},{A,B}) == ones(2)?

我如何获得2*ones(2)

2 个答案:

答案 0 :(得分:0)

首先尝试此操作,将XY初始化为符号矩阵

X=sym('X',[2 2]);
Y=sym('Y',[2 2]);

答案 1 :(得分:0)

这可能是一个错误,但这是一个简单的解决方法。像大卫说的那样,将XY初始化为矩阵

X=sym('X',[2 2]);
Y=sym('Y',[2 2]);

之后你需要使用两个替换,因为有时Matlab会将“矢量化”输入与符号表达式进行斗争。

F = X*Y;
A = ones(2);
B = ones(2);
FA = subs(F, X, A);
FAB = subs(FA, X, B);