用matlab解字母表示的方程组怎么输入命令,比如说x+y=a,x-y=b,想求出x,y用a,b表示的表达式.
问题描述:
用matlab解字母表示的方程组怎么输入命令,比如说x+y=a,x-y=b,想求出x,y用a,b表示的表达式.
如
e*x^(e-1)*l^(1-e)=u*(1-a)*z^a*y^(u-ua-1)*m^(1+ua-a-u)*p
(1-e)*x^e*l^(-e)=(1-au-a-u)*z^a*y^(u-ua)*m^(-u-a+au)*p
x+y=n
l+m=q
想求出x,y,l,m的表达式,该怎么输入?
答
x+y=a,x-y=b 求x,y不用输入x、y、a、b等字母.具体做的时候是将方程写成矩阵的形式,即AX=B,其中A=[1 1;1 -1],B=[a;b]然后在命令行直接输入A\B,即可得出解.例如x+y=3 x-y=1,根据系数可写出A=[1 1;1 -1] B=[3;1]A\B=[2 ...可以用sym()字符串函数得到字母表达式x+y=ax-y=b首先,仍然是获得系数矩阵A[1 1;1 -1],若某系数也是字母,例如c,则用sym('c')表示,例如若方程为x+y=a; cx-y=b,则系数矩阵为A[1 1; sym('c') -1];其次,获得常数项向量B[sym('a';sym('b');最后,用A\B则可在matlab中直接得到结果x=(b+a)/(c+1);y= (c*a-b)/(c+1)用a=3,b=1,c=1代入验证可知是正确的。其它方程也是同样道理