matlab解方程组(matlab解方程的函数)

matlab怎么求解方程?

1.首先打开Matlab,直接在命令行输入solve函数,里面加上方程式,如下图所示,小编写的是一个二元一次方程

2.接着直接回车就可以得到结果了,如下图所示:

3.然后solve函数中还可以写两个方程式,如下图所示:

4.回车后会得到两个未知数的解,如下图所示:

5.上面都是比较简的写法,下面小编给大家演示一下常规的写法,如下图所示,先声明变量,然后编写方程式,并在solve中填入变量和方程式

6.最后直接用点的方式得到答案即可,如下图所示:

matlab怎么解一元三次方程?

把你方程的系数降幂排列,写成一个向量,利用roots命令即可。

>> p=[1,-6,9,-9];roots(p)

ans =

4.4260e+000

7.8701e-001 +1.1891e+000i

7.8701e-001 -1.1891e+000i

扩展资料

MATLAB线性方程求解

a为m*n的系数矩阵。

? m=n,该方程为“恰定”方程

? m>n,该方程为“超定”方程

? m<n,该方程为“欠定”方程

(1)恰定方程求解

方程ax+b(a为非奇异)

x=a-1 b

两种解:

①x=inv(a)*b 采用求逆运算解方程;

②x=ab 采用左除运算解方程。

(2)超定方程求解

方程 ax=b ,m>n时此时不存在唯一解。

方程解 (a’a)x=a’b

①x=(a’a)-1 a’b ——求逆法;

②x=ab matlab用最小二乘法找一个准确地基本解。

(3)欠定方程求解

当方程数少于未知量个数时,即不定情况,有无穷多个解存在。

matlab可求出两个解:

①用除法求的解x是具有最多零元素的解;

②是具有最小长度或范数的解,这个解是基于伪逆pinv求得的。

MATLAB用fsolve解方程?

[x,fval,exitflag]=fsolve(fun,x0)

你可以利用fsolve函数多返回两个信息

一个是返回的x对应的函数值fval,一个是函数返回状态exitflag

fsolve也不是万能的,不是对所有的函数都能找到解

特别是你的初值选取离正确解很远的时候

或者是函数比较多奇异点,不连续点

又或者选取的精度不合理

很可能找不到正确解的解,得到的x不是正确的

又或者问题太复杂,在经过设定的最大计算步数后,还没收敛到正确解

这个时候你可以利用fval和exitflag判断返回的解是否正确有效

fval对应的是返回的x值是,原来函数的值

如果x是正确解,那么得到的fval应该都满足误差要求,是很接近零的值

而exitflag是更直接地获得返回信息的标志

当返回的exitflag等于1时,是最后的情况,表明找到了符合精度要求的解

如果exitflag不等于1,就表明有一定的问题,解x不太可信,或者根本即使错误的

以下是exitflag返回值对应的所有意义

你可以多让fsolve返回这两个信息,然后根据它们判断时候得到正确解

如果得不到正确解

那么可以尝试更换初值

更改误差要求或者最大计算步数

怎么用MATLAB解方程?

1、先举一例,解方程“x^2+100*x+99=0”。  在Matlab ”Command Window“中输入如下命令:x=solve(‘x^2+100*x+99=0’,‘x’),见下图。

2、回车后,Matlab就求出了这个一元二次方程的解,见下图。

3、再举一例,解一元三次方程“x^3+1=0”。  在Matlab ”Command Window”中输入如下命令:x=solve(‘x^3+1=0’,‘x’),见下图。

4、回车后,Matlab就求出了这个一元三次方程“x^3+1=0”的解,见下图。  Matlab解出来的解有三个,其中有一个实数解,两个虚数解。  我们都知道一元三次方程在复数范围内的解有3个,Matlab的解是对的。  如果我们只要“x^3+1=0”的实数解,我们只要取下面图中的第一个解“-1”。

版权声明