发布网友 发布时间:2022-03-25 19:55
共3个回答
懂视网 时间:2022-03-26 00:16
matlab求方程的解的方法是:
1、首先指明所解方程的变量,然后指明方程,未知数和条件,最后求解方程。
2、例如求解sin(x)=1方程,在matlab命令行窗口中输入syms x 、[x,params,conds]=solve(sin(x)==1,“ReturnConditions”,true) ,按回车键可以得到方程解。
3、转换一下,可以看到sin(x)=1方程的解。
热心网友 时间:2022-03-25 21:24
一、工具:Matlab2012b
二、操作步骤:
A.解一元方程
【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”。
B.解二元方程:
【1】 首先来求一个二元一次方程组
9x+8y=10 式1
13x+14y=12 式2
一般的解法是代入法,或者加减消去法。比较繁琐。这里只需输入如下命令即可求出解:[x,y]=solve('9*x+8*y=10','13*x+14*y=12','x','y')
【2】回车后,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')
【4】x^2+y^2=10 式1
2x+3y=0 式2
其实不少人能看出来,上面的二元非线性方程组的解是一个圆与一条直线的交点坐标,一般解法是先消去y,整理成关于x的一元二次方程,然后求出x值,再求出对应y值。但这里,只用到了上面图片里的的一句命令,就求了这两个交点坐标。见下图。
注意事项:Matlab可以进行复数运算,所以不需要计算方程的判别式,直接根据公式可求根。和c语言相比,简化了编程工作量。
热心网友 时间:2022-03-25 22:42
matlab解一元二次方程,可以直接用solve()函数来求解。例如:
1、求方程X²+5X-10=0的解。
>>X=solve('X^2+5*X-10')
>> X=double(X)
X =
-6.53112887414927
1.53112887414927
2、求方程X²+5X+10=0的解。
>>X=solve('X^2+5*X+10')
>> X=double(X)
X =
-2.5 - 1.939167310371i
-2.5 + 1.939167310371i