机械应用程序设计4(数学问题的处理).docVIP

机械应用程序设计4(数学问题的处理).doc

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

第三部分 常用数学方法的计算机处理 计算机具有能按给定的计算步骤高速进行数学运算,并给出准确结果的能力,因此它已成为设计人员强有力的工具。有效地利用计算机,可以使我们从重复、繁琐的计算工作中解脱出来,腾出时间做更富有创作性的工作。 虽然计算机具有很强的计算能力,但在具体应用时仍然必须选用合适的计算方法,否则就可能得不到预期的结果(《计算方法》)。例如:大部分计算过程只需将公式输入计算机即可完成,而某些计算过程则难以交给计算机完成,(如方程/方程组的求解,积分/微分计算等)。 本节将介绍一些机械设计中常用的一些数学方法的计算机处理方法、程序流程图,以便大家掌握这些计算方法的原理,正确应用这些方法来解决工作中的计算问题。 求方程的根。 对一元方程,如果是一次或二次方程,可以根据公式直接求出该方程的精确解。而对于三次以上的方程或三角函数、对数、指数方程,则往往难以用直接解法求出方程的根。对于这些方程,我们在使用计算机求解时常用迭代法(借助一组公式重复计算)求出满足精度要求的近似解。 基本思想:如右图,求解方程的根实际上就是找到曲线f(x)与X轴的交点。对于曲线f(x),我们先设定一个xi,则对应有yi = f(xi),按照某种方法不断产生xi,使yi→0。直到对于某个x有f(x)≦ε,则可认为这个x为方程的根。 对半法。 思路: 对某个单调函数f(x),若其区间[a, b]满足f(a)*f(b)0,取其中点xi,如果 f(xi)≦ε,则xi即为其近似根。否则 以xi为新区间的一个端点,构成一个 新的区间,重复上述过程。 步骤:①、输入求根区间a和b及精度要求ε。 ②、令xa=a,xb=b。 ③、计算xi,xi=(xa+xb)/2。 ④、计算f(xi)。 ⑤、判断f(xi)是否满足精度要求,若不满足,则用新的区间重复③到⑤的过程。 注:将此算法和下面的算法分别编成子程序/被调函数,以供以后编写程序时调用。 弓玄截法。 思路: 对某个单调函数f(x),若其区间[a, b]满足f(a)*f(b)0,则在区间内一定与X轴相交,交点为xi,如果f(xi)≦ε,则xi即为其近似根。否则以xi为新区间的一个端点,构成一个新的区间,重复上述过程。 步骤:①、输入求根区间a和b及精度要求ε。 ②、令xa=a,xb=b。 ③、计算fa=f(xa),fb=f(xb)。 ④、计算xi, 。 ⑤、求fi,fi=f(xi)。 ⑥、判断fi是否满足精度要求,若不满 足,则用新的区间重复④到⑥的过程。 牛顿法。 思路: 对某个单调函数f(x),若其区间[a, b]满足f(a)*f(b)0,过方程区间的某个端点作切线,用此切线方程的根作为原有方程的近似根,若不满足精度要求,则过此点(根)再作切线求根,不断重复直到满足条件。 步骤:①、输入求根区间端点a及精度要求ε。 ②、令xa=a。 ③、计算fa=f(xa)及导数值fa’。 ④、计算xi, 。 ⑤、求fi,fi=f(xi)。 ⑥、判断fi是否满足精度要求,若不满 足,则用新的区间重复④到⑥的过程。 注:上述三种求根的方法,一般来说以牛顿法求解速度最快,弓玄截法其次,对半法最慢。但这不是绝对的,实际上求跟根的速度还与方程的形式及区间情况有关。 例题: 求方程在[0.3,2.5]区间内的根。 (尝试分别用以上三种方法分别编写程序完成。) 区间内有几个根时的求解。 前面几种方法在讨论求解方程的根的时候都加上了限制条件(单调函数f(x)、 在区间[a, b]满足f(a)*f(b)0等),而在实际应用时函数f(x)可能不满足上述条 件。 下面我们来分析对某连续函数f(x)的曲线: 从上图我们可以看出: (1)、当区间两端函数值之积小于零时(异号),方程至少存在一个根,方程 也可能有奇数个根。 (2)、当区间两端函数值之积大于零时(同号),方程在区间内可能有偶数个 根,也可能无根。 由上述分析可知,若我们在一个比较大的区间范围内求方程的根时,可能有多个根 的存在。解决办法是把此较大的区间分作若干个较小的子区间来讨论。 如果子区间两端函数值符号相反则必定有根,如果子区间两端函数值符号相同则无根。而且只要子区间取得足够小,则可求得区间内的所有根。 所以:求某方程f(x)=0在区间内全部根时,过程如下: (1)、将区间[a,b]分为适当大小的区间,共n等分,区间宽度为h,h=(b-a)/n。 (2)、从区间下界a点出发,求第一个子区间两端的函数值,如果异号则求根(使用对半法、弓玄截法或牛顿法),否则换到下一个子区间。 一直到全部子区间求解完。 求解流程图如下: 连续函数在区间内有多个根时的求根方法的流程图: 例题:

文档评论(0)

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

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

1亿VIP精品文档

相关文档