matlab怎么计算方程组

如题所述

第1个回答  2020-04-26
1、对于比较简单的方程组,可以用solve()函数命令求解。如方程组
x
+
y
=
1

x -
11y
=
5
>>[x,y]=solve('x
+
y
=
1','x
-
11*y
=
5')
又如方程组
exp(x+1)-y²=10 ;ln(x)+3y=7
>>syms
x
y
>>[x,y]=solve(exp(x+1)-y^2-10,log(x)+3*y-7,'x','y')
2、对于比较复杂的方程组,可以用数值方法中的牛顿迭代法,二分法来求解。如方程组

求解代码
x0=[1.0
1.0
1.0]';
tol
=
1.0e-6;
x
=
x0
-
newton_dfun(x0)\newton_fun(x0);
%newton_dfun导函数,newton_fun函数
n
=
1;
while
(norm(x-x0)>tol)
&&
(n<1000)
x0
=
x;
x
=
x0
-
newton_dfun(x0)\newton_fun(x0);
n
=
n
+
1;
end
x
求解结果为
x
=

0.69829;y
=

0.62852;z=

0.34256
相似回答