怎么用Matlab解方程?

hdr是什么意思2022-06-21  25

怎么用Matlab解方程? 工具/材料

matlab 2016a

操作方法 01

打开matlab,先定义变量x:
symsx;

02

matlab中求解函数的格式为solve(f(x),x),解为f(x) = 0。

第一个例子是求解最常见的一元二次方程x2-3 * x+1 = 0:
SOLVE(x2-3 * x+1,x),结果用精确根表示。

03

matlab求解的根不仅包括实根,还包括复根。比如解三次方程x ^ 3+1 = 0:
SOLVE(x ^ 3+1,x)
我们知道这个方程有一对共轭复根,matlab也可以求出它的解。

04

对于5次(含)以上的一元函数,有时用solve指令找不到对应的根,如下图所示。
您可以使用roots命令来解决这个问题。
root命令的参数是一个向量,其中方程的系数按照从高次幂到低次幂的顺序排列,例如:x 5+3 * x 4-5 * x 3+4 * x 2-6 * x+2 = 0。如果solve命令获得的结果不令人满意,可以使用roots命令来满足。

05

对于非多项式方程,只能用solve。
比如exp (-x)-x 2+3 = 0的解法如下。
从黄色预警可以看出,这样的方程是没有解析解的,这和我们已知的知识是一样的。

06

最后一类方程是一组一元线性方程。
这是matlab的最佳运算,可以用矩阵求解。
对于齐次线性方程,使用null(A, aposr apos)。
其中“r apos就是用简化的梯形行列式求解。
对于下面的方程,可以得到一组线性无关的解。
这样,我们也可以引入常数k1和k2来表示通解。

07

对于线性非齐次解,可以使用linsolve(A,b)。
其中A为系数矩阵,B为非齐次项(如果B为多列矩阵,则表示求解多个具体系数齐次项不同的方程)。
对于图中的方程,可以这样解。

特别提示

matlab中解方程的方法有很多种,需要多练习才能找到适合自己需求的。

转载请注明原文地址:https://juke.outofmemory.cn/read/399720.html

最新回复(0)