求教matlab编程问题,求矩阵中的未知量

来源:百度知道 编辑:UC知道 时间:2024/06/08 18:19:27
我想求矩阵中的未知量,例如,[x^2+x x^3+5;x x+6]*[x^3 1;x^2-1 x]*[3;0]=[y;8] 已知y=8求x的值,这个怎么做?望高手赐教!
x=0:10:1000;
>> y1=16*((((cos(1/10390*x)-2101897/4*sin(1/340*x))*cos(1/5900*x)-61301000*sin(1/340*x)^2)*cos(1/2787*x)+13935/476*(-1123360*(cos(1/10390*x)-2101897/4*sin(1/340*x))*sin(1/340*x)-11671710400*sin(1/340*x)*cos(1/340*x))*sin(1/340*x))*cos(1/3252*x)+4065/119*(-1326612/5*((cos(1/10390*x)-2101897/4*sin(1/340*x))*cos(1/5900*x)-61301000*sin(1/340*x)^2)*sin(1/340*x)+2787*(-1123360*(cos(1/10390*x)-2101897/4*sin(1/340*x))*sin(1/340*x)-11671710400*sin(1/340*x)*cos(1/340*x))*cos(1/340*x))*sin(1/340*x));
??? Error using ==> mtimes
Inner matrix dimensions must agree.
这个错误是怎么回事?应该怎么改?

这样的问题实际就是用matlab解方程组。可以试试使用solve命令解决
syms x
[x^2+x x^3+5;x x+6]*[x^3 1;x^2-1 x]*[3;0]

ans =

3*(x^2+x)*x^3+3*(x^3+5)*(x^2-1)
3*x^4+3*(x+6)*(x^2-1)

则用
[x,y]=solve('3*(x^2+x)*x^3+3*(x^3+5)*(x^2-1)-y=0','3*x^4+3*(x+6)*(x^2-1)-8=0')

可看到得到4组解,然后选择符合要求的。

矩阵式点乘(.*)是这种形式。