一些简单方程的解我们可以很快地手算出来,但是还有很多方程的解我们手算很难算出或者根本无法算出。
比如解一道一元高次非线性方程,我们一般的解法是先确定方程的解所在的大致范围,然后用牛顿迭代法来算,很复杂。
这里我介绍用matlab来解方程,一个命令即可轻松得出方程的所有解。
利用Matlab解方程——工具/原料Matlab
利用Matlab解方程——解一元方程利用Matlab解方程 1、
先举一例,解方程"x^2+100*x+99=0"
在matlab ”Command Window"中输入如下命令:
x=solve('x^2+100*x+99=0','x')
见下图
利用Matlab解方程 2、
回车后,matlab就求出了这个一元二次方程的解。
见下图
利用Matlab解方程 3、
再举一例
解一元三次方程"x^3+1=0"
在matlab ”Command Window"中输入如下命令:
x=solve('x^3+1=0','x')
见下图
利用Matlab解方程 4、
回车后,matlab就求出了这个一元三次方程"x^3+1=0"的解。
见下图.
matlab解出来的解有三个,其中有一个实数解,两个虚数解。
我们都知道一元三次方程在复数范围内的解有3个,matlab的解是对的。
如果我们只要"x^3+1=0”的实数解,我们只要取下面图中的第一个解“-1”。
利用Matlab解方程_matlab解方程
利用Matlab解方程——解二元方程利用Matlab解方程 1、
首先来求一个二元一次方程组
9x+8y=10 式1
13x+14y=12 式2
我们一般的解法是代入法,或者加减消去法。比较繁琐。
这里我们只需输入如下命令即可求出解:
[x,y]=solve('9*x+8*y=10','13*x+14*y=12','x','y')
利用Matlab解方程 2、
回车后,matlab就求出了这个二元一次方程组的解。
见下图
利用Matlab解方程 3、
再来求一个二元非线性方程组
x^2+y^2=10 式1
2x+3y=0 式2
这里我们只需输入如下命令即可求出解:
[x,y]=solve('x^2+y^2=10','2*x+3*y=0','x','y')
利用Matlab解方程_matlab解方程
利用Matlab解方程 4、
x^2+y^2=10 式1
2x+3y=0 式2
其实不少人能看出来,上面的二元非线性方程组的解是一个圆与一条直线的交点坐标,我们的一般解法是先消去y,整理成关于x的一元二次方程,然后求出x值,再求出对应y值。
但这里,我们只用到了上面图片里的的一句命令,就求了这两个交点坐标。见下图。
利用Matlab解方程——解其他方程利用Matlab解方程 1、
解三元方程或更高方程的具体操作步骤我就不再说明了,大家可以参考前面所说的解一元方程到解二元方程的命令的变化,从而类比出来。
利用Matlab解方程 2、
相信聪明的读者读到这里,也发现matlab的这个解方程的功能十分简单实用吧。
前面举的例子都是比较简单的,其实matlab一般能解出所有存在解的方程的。
大家加油!