matlab subs错误求解先上一个例子:>>syms x Vx y Vy z Vz;>>syms b d;>>Xstate = [x Vx y Vy z Vz b d].';>>f = [x+T*Vx;Vx;y+T*Vy;Vy;z+T*Vz;Vz;b+T*dd];>>X=zeros(8,1);>> Xp=subs(f,Xstate,X)然后报错了:Error using ==> sym.subs>celleqnThe inp
来源:学生作业帮助网 编辑:作业帮 时间:2024/09/15 11:31:16
matlab subs错误求解先上一个例子:>>syms x Vx y Vy z Vz;>>syms b d;>>Xstate = [x Vx y Vy z Vz b d].';>>f = [x+T*Vx;Vx;y+T*Vy;Vy;z+T*Vz;Vz;b+T*dd];>>X=zeros(8,1);>> Xp=subs(f,Xstate,X)然后报错了:Error using ==> sym.subs>celleqnThe inp
matlab subs错误求解
先上一个例子:
>>syms x Vx y Vy z Vz;
>>syms b d;
>>Xstate = [x Vx y Vy z Vz b d].';
>>f = [x+T*Vx;
Vx;
y+T*Vy;
Vy;
z+T*Vz;
Vz;
b+T*d
d];
>>X=zeros(8,1);
>> Xp=subs(f,Xstate,X)
然后报错了:
Error using ==> sym.subs>celleqn
The input cells must be of the same size.
Error in ==> sym.subs at 206
NEWf = maple(['eval(subs(' celleqn(OLDexpr,CaQ) ',' char(OLDf) '));']);
如果换成:
Xp=subs(f,{x Vx y Vy z Vz b d},X)
就不会出错,那怎么样才能使用Xstate,并把它的元素当作自变量进行替换呢?
matlab subs错误求解先上一个例子:>>syms x Vx y Vy z Vz;>>syms b d;>>Xstate = [x Vx y Vy z Vz b d].';>>f = [x+T*Vx;Vx;y+T*Vy;Vy;z+T*Vz;Vz;b+T*dd];>>X=zeros(8,1);>> Xp=subs(f,Xstate,X)然后报错了:Error using ==> sym.subs>celleqnThe inp
好吧,没做验证,只是猜想,{...}是元胞矩阵,而xstate是一个数值矩阵
直接带入xstate={.},或者用mat2cell将xstate换成元胞矩阵试试