Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Matlab 矩阵方程的符号解法_Matlab_Matrix_Solver - Fatal编程技术网

Matlab 矩阵方程的符号解法

Matlab 矩阵方程的符号解法,matlab,matrix,solver,Matlab,Matrix,Solver,我正在试用Matlab,目前正在尝试解一个简单的矩阵方程。这是我的剧本: syms b1 b2 b3 A = [1 2; 2 1; 3 3]; B = [b1; b2; b3]; X = linsolve(A, B) 输出是 Warning: System is inconsistent. Solution does not exist. X = Inf Inf 我可能做错了什么 编辑: 好的,我能修好它。然而,现在我正在努力完成其他事情 以下是我输入的内容: C = [

我正在试用Matlab,目前正在尝试解一个简单的矩阵方程。这是我的剧本:

syms b1 b2 b3 

A = [1 2; 2 1; 3 3];

B = [b1; b2; b3];

X = linsolve(A, B)
输出是

Warning: System is inconsistent.
Solution does not exist. 

X =

 Inf
 Inf
我可能做错了什么


编辑:

好的,我能修好它。然而,现在我正在努力完成其他事情

以下是我输入的内容:

C = [1 2 3 b1; 2 1 6 b2; 3 3 5 b3];

rref(C)
结果是:

[ 1, 0, 0, (3*b3)/4 - b2/12 - (13*b1)/12]
[ 0, 1, 0,               (2*b1)/3 - b2/3]
[ 0, 0, 1,            b1/4 + b2/4 - b3/4]
然而,我希望创建一个矩阵,使得第三行是0=f(b1,b2,b3),也就是说,我希望第三行在LHS上是0,而RHS只涉及b1,b2和/或b3。我该怎么办?我试着将每个条目都输入一个变量,但这似乎不起作用

这就是输出结果:

[ 1, 0, 0,  (a2*a6*b3 - a3*a5*b3 - a2*a9*b2 + a3*a8*b2 + a5*a9*b1 - a6*a8*b1)/(a1*a5*a9 - a1*a6*a8 - a2*a4*a9 + a2*a6*a7 + a3*a4*a8 - a3*a5*a7)]
[ 0, 1, 0, -(a1*a6*b3 - a3*a4*b3 - a1*a9*b2 + a3*a7*b2 + a4*a9*b1 - a6*a7*b1)/(a1*a5*a9 - a1*a6*a8 - a2*a4*a9 + a2*a6*a7 + a3*a4*a8 - a3*a5*a7)]
[ 0, 0, 1,  (a1*a5*b3 - a2*a4*b3 - a1*a8*b2 + a2*a7*b2 + a4*a8*b1 - a5*a7*b1)/(a1*a5*a9 - a1*a6*a8 - a2*a4*a9 + a2*a6*a7 + a3*a4*a8 - a3*a5*a7)]

您正在定义一个包含3个方程和2个未知数的方程组。一般来说,如果方程的数量大于未知数的数量,那么几乎总是不会有系统的解。尝试A=[12;21]和B=[b1;b2],你应该会得到一个答案,因为这样你就有了与未知数相同数量的方程,在这种情况下,系统的解将存在,并且如果A是可逆的,那么它也是唯一的。

我不知道你期望的是哪种输出,但使用数字函数进行符号输入有点奇怪

尝试:


这个问题包含5个未知数,[b1,b2,b3]和有2个未知数的解向量x。我认为x是未知的,[b1,b2,b3]是已知的(虽然是符号的)。一般来说,当人们谈论求解线性系统时,只把X称为“未知数”。这个例子有3个方程,只有2个未知数,所以通常不会有解。您好,非常感谢您的帮助,user2566092。然而,我还有一个问题,我想知道你是否可以看看我的帖子——我编辑了它。
b=sym('b',[3,1])
x=sym('x',[2,1])
f=solve(A*x==B)