第14章 基本数值算法举例 数值计算是Fortran语言的强项,也是Fortran语言发明者的初衷。本节主要介绍在计算机程序设计语言学习中经常遇到的一些基本数值算法。目的在于加深对Fortran语言的理解和分析,解决问题的一般思路,并希望通过这些例程介绍一些代码编写方面的技巧。

Slides:



Advertisements
Similar presentations
1 4.5 高斯求积公式 一般理论 求积公式 含有 个待定参数 当 为等距节点时得到的插值求积公式其代数精度至少 为 次. 如果适当选取 有可能使求积公式 具有 次代数精度,这类求积公式称为高斯 (Gauss) 求积公式.
Advertisements

南 通. 南通概述 南通,位于江苏省东部, 东抵黄海,南望长江。 “ 据江 海之会、扼南北之喉 ” ,隔江 与中国经济最发达的上海及 苏南地区相依,被誉为 “ 北上 海 ” 。 南通也是中国首批对 外开放的 14 个沿海城市之一 ,被称为 “ 中国近代第一城 ” 。 南通面临海外和内陆两大经 济辐射扇面,素有.
均衡推进,确保质量 08学年第一学期教学工作会议 广州市培正中学
黑木耳.
投資權證13問 交易所宣導資料(104) 1.以大盤指數為標的之權證,和大盤指數的連動性,為什麼比和期交所期指的連動性差?
如何把作文写具体.
第一节 人口与人种 第一课时.
解读我党发展史 思索安惠美好明天 主讲人:王辰武.
第5课 长江和黄河.
銓敘部研究規劃自願退休公務人員月退休金起支年齡延後方案座談會
瓦罐湯 “瓦缸煨汤”是流行于南方民间的一种风味菜肴。它采用一种制特的大瓦缸,其缸底可以烧火,缸内置有铁架,厨师将装有汤的小瓦罐一层层地码入缸内的铁架上,然后点燃木炭,借用木炭火产生的高温将瓦罐内的汤煨熟。
1.數學的難題 如下圖所示,你知道表格中的問號應填入什麼數字嗎?
园林制图相关知识.
第九章 欧氏空间 §1 定义与基本性质 §2 标准正交基 §3 同构 §4 正交变换 §5 子空间 §6 对称矩阵的标准形
第九章 欧氏空间 §1 定义与基本性质 §6 对称矩阵的标准形 §2 标准正交基 §7 向量到子空间的 距离─最小二乘法 §3 同构
合肥学院外国语言系2012年度 学生工作表彰大会.
真题模拟 主讲:凌宇 时间:6月9日.
树立信心,沉着应战,吹响中考冲锋号 ——谈语文学科的复习备考及考试技巧.
请大家欣赏龙岩, 新罗区 上杭,武平, 连城,长汀, 永定,漳平 小吃和特产.
游 泳 理 论 课 位育中学 高蓉.
行政公文 纪 要 讲授人: 安学珍 铜仁职业技术学院.
1.某公司需购一台设备,有两个方案,假定公司要求的必要报酬率为10%,有关数据如下:
第一节 人口与人种 光山一中 屈应霞.
第五章 二次型.
抚宁县第五中学 教学暨新课改推进工作会.
主題:你看你看月亮的臉 課程:幼兒科學 教師:許衷源 組員:湘琳、鈺蓓、麗金、菊光
《社会体育指导员讲座》课程整体设计介绍 席永 副教授 2015 年 6 月
专项建设检查工作总结 本科试卷 毕业论文(设计) 合格课程 专项检查工作基本情况 专项建设的工作内容 专项建设检查工作情况
企业所得税几项热点难点 业务问题讲析 湛江市地税局税政科 钟胜强.
告状 一位叫杨鲁的孩子,告他父亲杨庆的状。他极其认真地向父亲所在的工厂党委书记指控,说父亲不让儿子“游戏人间”,每天“画地为牢”,要儿子“咬文嚼字”,稍不满意,还要“入室操戈”。他声称父亲打他总是“重于泰山”,不象母亲打他“轻如鸿毛”。并且表示“庆父不死,鲁难不已”。
學校社工師服務與家訪技巧 三峽區駐區學校社工師 陳若喬.
2014年玉溪市统测质量分析 及高考语文应注意的几个问题
第三部分 区域可持续发展 第二单元 区域可持续发展 第7课 资源跨区域调配. 第三部分 区域可持续发展 第二单元 区域可持续发展 第7课 资源跨区域调配.
钢铁工业产能置换与相关政策 工业和信息化部产业政策司 辛 仁 周 二〇一五年三月二十八日.
中餐烹調丙級技術士考照 介紹 劉曉宜老師.
忆一忆 1.什么叫财政? 2.财政收入的形式有哪些? 国家的收入和支出。 税、利、债、费 3.其中,财政收入的最主要的形式是什么? 税收.
模块 中国古代史 主题 古代大一统(隋前).
遭遇险情有对策.
生物七下复习.
經費結報注意事項 會 計 室 報告人:黃憶藍.
2015年度汇算清缴政策培训会 宁波市江东地方税务局 税政法规科 二〇一六年三月.
第五章-學習目標 瞭解組織人員任用與遷調的內涵 熟悉人員遷調的類型及實施方式 瞭解何謂消極面人員縮減計畫 瞭解何謂積極面人員縮減計畫.
会计学原理 模块二 会计凭证 复式记账法与会计凭证的在企业的应用
目 录 本月动态 简要信息 政策解读 党员官兵携手共建 环境整治迎接国庆…………………02
2015年高三地理复课交流 (从试题分析看后期备考)
昆明心桥心理健康研究所 心理健康工作者 钱锡安 讲座预约 个案咨询预约
公教人員退休、撫卹法制 宣導講習 教育部人事處 99年11月.
12.1 等可能性 常州市同济中学 李晓红.
高中地理新课程实施中要注意的几个问题 冯 凭.
合肥市地方税务局所得税处 (内部学习资料,请勿上传网络)
决胜2014 山西省考冲刺备考讲座 中公教育集团:熊安国.
第四章 时间序列的分析 本章教学目的:①了解从数量方面研究社会经济现象发展变化过程和发展趋势是统计分析的一种重要方法;②掌握时间数列编制的基本要求;③理解和掌握水平速度两方面指标的计算及运用④理解和掌握长期趋势分析和预测的方法。 本章教学重点:现象发展的水平指标和速度指标。 本章教学难点:现象变动的趋势分析。
分式方程(3) 1.
阅读下面的文字,完成1~4题。    南宋时,金国的作者就嫌宋诗“衰于前古……遂鄙薄而不道”,连他们里面都有人觉得“不已甚乎”。从此以后,宋诗也颇尝过世态炎凉或者市价涨落的滋味。在明代,苏平认为宋人的近体诗只有一首可取,那一首还有毛病,李攀龙甚至在一部从商周直到本朝诗歌的选本里,把明诗直接唐诗,宋诗半个字也插不进。在晚清,“同光体”提倡宋.
三年级上册教材内容及教学建议. 三年级上册教材内容及教学建议 第一单元“我在家庭中幸福成长 1、本单元主要落实课程表准中的内容标准“我 在成长”和“我与家庭”中的相关内容 2、本单元重点要把握的内容.
大学物理实验 衍射光栅.
国家税收 衡阳财工院会计系 刘会平.
发扬革命传统 争取更大光荣 “四大摇篮”在江西
第一部分 梳理教材 夯实基础 第 3 讲 新民主主义革命的兴起       真题演练 02 考情呈现 01 考点突破 03 高分技巧 04.
三.农村革命根据地的发展和土地革命的开展 1. 白区工作的恢复与农村革命根据地的广泛建立和发展 2.古田会议 3.苏区土地革命的开展
空間向量 朱泰吉 蔡宇翔 張力夫 莊孟霏.
蓝图·我到北京上大学励志夏令营 十一年家长见证,十五万青少年热爱,杰出青少年的摇篮!
第四节 眼睛和眼镜.
探寻气候的“特殊”分布 上海市奉贤区曙光中学 金彦.
四川省考申论备考 华图教育集团 刘洋.
歌曲《中国之最》 珠穆朗玛峰 我国地理工作者在喜马拉雅山考察时,发现岩石中含有鱼、海螺、海藻等海洋生物的化石。这一发现说明了什么?
曲 選 四塊玉-關漢卿 陽春曲-白樸 夜行船-馬致遠 游麗芳老師製作.
Chapter 指標.
風水 東北亞 亞洲大陸 南亞 東南亞 位置 地形 氣候 宜蘭縣文化國中
數學遊戲二 大象轉彎.
Presentation transcript:

第14章 基本数值算法举例 数值计算是Fortran语言的强项,也是Fortran语言发明者的初衷。本节主要介绍在计算机程序设计语言学习中经常遇到的一些基本数值算法。目的在于加深对Fortran语言的理解和分析,解决问题的一般思路,并希望通过这些例程介绍一些代码编写方面的技巧。

14.1 常用数值积分算法 积分是大学数学中最基础的部分,求积分最好的办法是通过找到积分函数来进行。但有些时候,积分函数并不容易找到。在这种情况下,计算机就派上用场了。通过数值计算的方法,就可以很容易的得出所求积分的近似结果。 假设被积函数的一般形式为,则定义在区间[a,b]上的定积分的几何意义就是曲线与直线、、所围图形的面积。在求解的时候,可以将区间[a,b]划分为n个子区间,每个区间的宽度就是h=(b-a)/n。这样,原来的一大块面积就被划分为若干个小面积,只要这些小的子区间的面积能够求出来,那么最后将这些子区间的面积相加,就可以近似得到所求积分的值。子区间划分得越小(即n越大),同理论上的积分值的近似程度就越高。

14.1.1 矩形法 矩形的面积等于底与高的乘积。因此,第i个小矩形的面积可以表示为: 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]上求解的几何意义就是找曲线与直线的交点。求解的基本思路是一致的,就是通过迭代来不断逼近要找的交点。但是在具体的实现方法上各种方法是有区别的。根据迭代方式细节的不同,可以分为四种基本的迭代方法:最简单的一种方法就是迭代法,也可以称为简单迭代;一种是牛顿迭代法;一种是二分法;一种是弦截法。

14.3.1 迭代法

14.3.2 牛顿迭代法 同样是求一元非线性函数 的根,牛顿迭代法(简称牛顿法)则不需要对原始的公式进行变形,可以直接使用到程序中,但需要求出原函数的一阶倒数作为辅助函数。该方法的基本想法是通过曲线上任意一点的切线来逼近函数的根,

14.3.3 二分法 二分法是一种相当巧妙和简单的非线性函数求解方法。这种方法不仅应用在非线性函数的求解上,而且还在其他领域有着广泛的用途,是一种通用的基础搜索算法。 二分法求解非线性函数的前提是要确定一个区间[a,b]。在这个区间内,非线性函数应该有一个实根。在此基础上,二分法才能有效地进行工作。如果在给定区间[a,b]内,非线性函数都没有实根,那么求解就无从说起。

14.3.4 弦截法 弦截法(也称为割线法,英文原名为Secant)的基本思想和二分法是一致的。只不过搜索区间不再简单的划分成两半,而是由原区间两个端点的连线与x轴的交点来决定。弦截法的思路可以简单的用图来表示。

14.3.5 非线性函数求解子程序的应用 现在可以将上面介绍的4种不同的非线性函数求解子程序统统打包进一个模块程序单元中。由于具体的计算子程序代码在前面已经详细给出,因此下面只给出模块程序单元的结构,其中的具体函数可以自行添加。

14.4 常微分方程的基本解法 常微分方程是科学研究和工程实践经常遇到的问题,也是数值分析中一个重要的应用领域。在实际应用中,一些偏微分方程在最后也会通过某种形式转化成常微分方程来进行求解,例如计算流体力学中的一些算法。 本节主要介绍一种常用常微分方程的数直解法——龙格库塔法。假设要求解的常微分方程的一般形式如下:

14.5 插值与拟合 插值与拟合是数值分析中极为重要的一个方面,它在科学研究和工程分析领域有着非常广泛的应用。

14.5.1 拉格朗日多项式插值方法 插值的方法虽然多种多样,但是基本的思想都是一致的——即构造各种类型的插值多项式。例如已知在个自变量上的函数值,则惟一存在一个不超过次的多项式,它在这个自变量上具有与函数相同的值。但是在实际应用中,构造一个次数较高的插值多项式并不实用,而较多地采用低次插值多项式进行分段插值。 在众多的插值方法中,拉格朗日(Lagrange)多项式插值是实际使用中最为常见的一种。假设有n个离散的数据点,则采用拉格朗日多项式插值方法生成通过这n个离散数据的多项式函数如下:

14.5.2 牛顿前向插值方法 在插值方法中,牛顿前向插值可以解决拉格朗日方法中遇到的效率问题。牛顿前向插值同样可以得到一个通过n个离散数据的多项式,但在进行插值时它会事先创建插值过程中会用到的差分表格以加快插值的计算速度。牛顿前向插值方法中用来生成插值多项式的公式如下: