网站大量收购独家精品文档,联系QQ:2885784924

matlab常用解方程及方程组函数.docVIP

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
matlab常用解方程及方程组函数

1.roots求解多项式的根 r roots c 注意:c为一维向量,者返回指定多项式的所有根 包括复根 ,poly和roots是互为反运算,还有就是roots只能求解多项式的解 还有下面几个函数poly2sym、sym2poly、eig syms x y x^5+3*x^3+3; c sym2poly y ;%求解多项式系数 r roots c ; poly r 2.residue求留数 [r, p, k] residue b,a b [ 5 3 -2 7] a [-4 0 8 3] [r, p, k] residue b,a 3.solve符号解方程 组 ——使用最多的 g solve eq1,eq2,...,eqn,var1,var2,...,varn 注意:eqn和varn可以是符号表达式,也可以是字符串表达式,但是使用符号表达式时不能有“ ”号,假如说varn没有给出,使用findsym函数找出默认的求解变量。返回的g是一个结构体,以varn为字段。由于符号求解的局限性,好多情况下可能得到空矩阵,此时只能用数值解法 解方程A solve a*x^2 + b*x + c 解方程组B solve a*u^2 + v^2, u - v 1, a^2 - 5*a + 6 4.fzero数值求零点 [x,fval,exitflag,output] fzero fun,x0,options,p1,p2... fun是目标函数,可以是句柄 @ 、inline函数或M文件名?? x0是初值,可以是标量也可以是长度为2的向量,前者给定一个位置,后者是给定一个范围 options是优化参数,通过optimset设置,optimget获取,一般使用默认的就可以了,具体参照帮助 p1,p2...为需要传递的其它参数 假如说 x/1446 ^2+p/504.1+ t/330.9 * log 1-x/1446 + 1-1/5.3 *x/1446 0的根,其中p,t是已知参数,但是每次都改变 那么目标函数如下三种书写格式,效果完全等效。注意参数列表中,未知数一定放第一位,其他参数放后面 1 objfun @ x,p,t x/1446 .^2+p/504.1+ t/330.9 .* log 1-x/1446 + 1-1/5.3 .*x/1446 ; 2 objfun inline x/1446 .^2+p/504.1+ t/330.9 .* log 1-x/1446 + 1-1/5.3 .*x/1446 ,x,p,t 此时的调用格式如下 fzero objfun,x0,options,p,t %如果options使用的默认的话,那直接使用[],p和t就是我们需要传递的参数 fzero @ x objfun x,p,t ,x0,options %这种格式与上面的等效 区别就是前者,将参数p和t作为fzero的参数进行传递,而后者是将p和t作为objfun的参数进行传递,没有本质区别 3 function f objfun x,p,t %以M文件格式书写目标函数 ? ?f x/1446 .^2+p/504.1+ t/330.9 .* log 1-x/1446 + 1-1/5.3 .*x/1446 ; 此时有三种调用格式 fzero @objfun,x0,options,p,t fzero objfun,x0,options,p,t fzero @ x objfun x,p,t ,x0,options 注意:fzero只能求解单变量的方程,没法求解复数、多变量以及方程组等。在搜索过程中出现inf,nan,复数将会终止计算,也就是说不能求解复数解,并且每次子返回一个解 5.fsolve数值解方程 组 ——使用最多的数值解法 [x,fval,exitflag,output,jacobian] fsolve fun,x0,options,p1,p2... fsolve的参数意义大部分与fzero相同,只是优化参数更多了,使用更灵活另外一定注意x0的长度必须与变量的个数相等。它与fzero的区别是,首先当然算法不同,另外fsolve的功能强大多很多,它可以直接方便的求解多变量方程组,线性和非线性,超静定和静不定方程,还可求解复数方程 fun同样可以是句柄、inline函数或M文件,但是一般M文件比较多,这是由于fsolve是解方程组的,目标函数一般比较烦,直接写比较困难 比如解方程组x1+x2 8 x1-2*x2-2*p 0 当然可以求解非线性的 目标函数同样有三种书写格式 1 objfun @ x,p [x 1

文档评论(0)

peain + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档