如何利用matlab求解方程

如何利用matlab求解方程

1.    前言

作为三大数学软件之一,matlab在数值计算方法的能力首屈一指。求解方程是工科学习和工程计算中最基础、最常见的问题。掌握利用现代化工具求解方程的方法对于提升我们的工科素养至关重要。为此,本篇将对matlab中求解方程的方法进行介绍。

2.    用法

求解过程

2.1    指明变量

告诉电脑方程中所含有的变量,包括参数和未知变量。比如:所求解的方程为:,很显然该方程中有a,b,c,x符号变量,因此该步骤的写法为:

syms a b c x  

 

2.2    指明方程,未知数和限制条件(非必需)

eqns

方程,如果超过一个,则放在[ ]中,并用逗号隔开。如:

Vars

待求的未知数

Names-value(非必需)

Names:‘returnConditions’

是否返回出含有参数的通解。’true‘为返回,’false‘为否,即给出一个特解;

Name: 'IgnoreAnalyticConstraints'

是否给出解的最简形式。

‘true‘为是,‘false’为否

Name:'PrincipalValue'

是否仅给出一个解。False为返回所有的解,true为仅返回一个解;

Name:’Real’

是否仅返回实数解

2.3    获得所求方程的解

如果为多个函数,该解存储形式为结构体。

 

3.    具体实例

3.1   求解sin(x)=1的通解

 

具体代码:

syms x 

[x,params,conds]=solve(sin(x)==1,'ReturnConditions', true) 

 

结果

solx =pi/2+2*pi*

params =

conds =in(k,'integer')

 

可以看出,该方程的通解为:

 

3.2   求解以下方程:

代码:

syms a b c y x

[x,y]=solve([a*x^2+b*y+c==0,a*x+2*y==4],[x,y])

 

结果:

x =

 ((a*b)/4-(-(a*(- a*b^2+32*b +16*c))/16)^(1/2))/a

 ((a*b)/4+(-(a*(- a*b^2+32*b +16*c))/16)^(1/2))/a

 

y =

 (-(a*(- a*b^2+32*b +16*c))/16)^(1/2)/2-(a*b)/8+2

 2-(-(a*(- a*b^2+32*b +16*c))/16)^(1/2)/2-(a*b)/8

 

即:




  • 108
    点赞
  • 456
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值