第14章基本数值算法举例 - read.pptVIP

  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文档。上传文档
查看更多
第章基本数值算法举例数值计算是语言的强项也是语言发明者的初衷本节主要介绍在计算机程序设计语言学习中经常遇到的一些基本数值算法目的在于加深对语言的理解和分析解决问题的一般思路并希望通过这些例程介绍一些代码编写方面的技巧常用数值积分算法积分是大学数学中最基础的部分求积分最好的办法是通过找到积分函数来进行但有些时候积分函数并不容易找到在这种情况下计算机就派上用场了通过数值计算的方法就可以很容易的得出所求积分的近似结果假设被积函数的一般形式为则定义在区间上的定积分的几何意义就是曲线与直线所围图形的面积在

第14章 基本数值算法举例 数值计算是Fortran语言的强项,也是Fortran语言发明者的初衷。本节主要介绍在计算机程序设计语言学习中经常遇到的一些基本数值算法。目的在于加深对Fortran语言的理解和分析,解决问题的一般思路,并希望通过这些例程介绍一些代码编写方面的技巧。 14.1 常用数值积分算法 积分是大学数学中最基础的部分,求积分最好的办法是通过找到积分函数来进行。但有些时候,积分函数并不容易找到。在这种情况下,计算机就派上用场了。通过数值计算的方法,就可以很容易的得出所求积分的近似结果。 假设被积函数的一般形式为,则定义在区间[a,b]上的定积分的几何意义就是曲线与直线、、所围图形的面积。在求解的时候,可以将区间[a,b]划分为n个子区间,每个区间的宽度就是h=(b-a)/n。这样,原来的一大块面积就被划分为若干个小面积,只要这些小的子区间的面积能够求出来,那么最后将这些子区间的面积相加,就可以近似得到所求积分的值。子区间划分得越小(即n越大),同理论上的积分值的近似程度就越高。 14.1.1 矩形法 矩形的面积等于底与高的乘积。因此,第i个小矩形的面积可以表示为: 在设计矩形法积分计算程序前,先来做一个规划。假设最后的程序由三部分组成:一个主程序,用于管理各个子程序(其中包括矩形法积分子程序);一个具体的积分数值计算子程序,用于实现矩形法的积分计算(或者还有别的方法);在实际计算中,可能碰到的都是一些离散的数据,很少有仅仅是简单函数的情况,因此还可能需要一个读取离散数据的子程序。 14.1.2 梯形法 梯形法的基本思想和矩形法没什么不同,只是在求解子区间的面积时,使用梯形而不是矩形来进行近似处理。积分过程中,第i个小区间的面积可以用梯形面积公式求得: 14.1.3 Simpson法 Simpson(辛普森)法的基本思路就是用一段抛物线来代替子区间内原来的曲线。这样就用一系列的二抛物线段来对原来的曲线进行拟合,计算这些抛物线所在子区间的面积,最后就可以得到所需要的积分值。 14.1.4 数值积分计算子程序的应用 有了前面介绍的三个数值积分计算子程序之后,可以考虑将其放入同一个模块中。当需要调用其中的某一个子程序时,只要引用该模块就可以了。由于积分计算子程序已经在前面详细给出了,这里只给出模块程序单元的代码结构: MODULE INTEGRAL IMPLICIT NONE CONTAINS REAL FUNCTION Rectangle_Integral(FX, H) …… END FUNCTION Rectangle_Integral REAL FUNCTION Trape_Integral(FX, H) …… END FUNCTION Trape_Integral REAL FUNCTION Simpson_Integral(FX, H) …… END FUNCTION Simpson_Integral END MODULE INTEGRAL 14.2 简单线性代数问题 线性代数也是数值计算中经常会遇到的一类问题。在线性代数问题中,会遇到很多同数组操作有关的问题。通过这一节的学习,希望读者能够进一步掌握有关数组方面的程序设计方法和一些基本的技巧。 14.2.1 Gauss消去法求解线性方程组 一般来说,工科大学本科高年级和研究生低年级课程中都还设有数值计算的相关课程。在数值计算中,线性方程组的求解是最基本的要求。在进行线性方程组的求解中,会遇到大量处理整个数组或数组片段的问题。以求解有n个方程的齐次线性方程组为例,要求解的方程组得一般形式如下: 14.2.2 Gauss Jordan消去法求解线性方程组 除了上面介绍的基本高斯消去法外,还有一种高斯消去法的改进方法:Gauss Jordan消去法。该方法的基本思路与高斯消去法完全一样,但在消元这一步做的更为彻底。Gauss Jordan消元后的系数矩阵就是一个主对角矩阵,只有主对角线上的元素才有值。做完这一步后,回代的过程更为简单。 Gauss Jordan方法涉及到矩阵的上下三角化操作。通过对矩阵的上下三角化操作来使方程的系数矩阵变为对角化矩阵,即矩阵中除了对角线上的元素外,其余的元素都为零。 14.3 非线性函数求解 本节主要介绍非线性函数的基本数值解法。对于一元二次或三次方程,已经有求根公式可供使用。但是对于更高次数的方程而言,推导理论上的求根公式并不容易。反过来,借助数值方法就可以很容易的得到这些高次非线性方程的数值解。 假设非线性函数的一般形式为,则在特定区间[a,b]上求解的几何意义就是找曲线与直线的交点。求解的基本思路是一致的,就是通过迭代来不断逼近要找的交点。但是在具体的

文档评论(0)

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

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

1亿VIP精品文档

相关文档