第一篇:利用数值计算分析数据嵌套函数教学设计
利用数值计算分析数据
三维目标:
1,能使用图表处理工具软件加工表格信息,表达意图。2,掌握数据加工处理的基本方法。3,掌握加工处理的技巧。
4,感受利用图表工具软件加工处理信息的强大功能。
5,锻炼学生操作技能,培养合作精神及解决实际问题的能力。6,提高信息技术素养。
教学重点:
(1)用图表处理工具软件加工表格信息的基本过程和方法。
(2)根据任务需求,利用合适的图表处理工具软件加工表格信息,并以恰当的呈现方式表达意图。
(3)通过解决实际问题,培养同学们在以后的工作和生活中解决实际问题的能力。
教学难点:
如何根据任务需求,熟练使用图表处理等工具软件加工信息,表达意图。
教学方法:
任务驱动、讲解、演示、指导
学法:
预习、听讲、练习、探究、互助
教学流程设计:
功能介绍-需求分析—任务布置-解决问题-学生练习-上交作业-成果展示-课后作业。
导入:
同学们会创建表格了吗?用表格来展示信息简单、直观、清晰。但是,有时候仅用表格展示信息会显得苍白无力,如果对表格信息进行再加工,获取新的信息,可能会产生新的价值,效果更好,会给同学们带来惊喜。下面请同学们通过完成一个任务看一看。
在这里任务如下,请同学们帮助完成它。 1,快速判断与计算。(通过打开桌面上教师发放的学习资料完成任务) 2,根据需要获取详细、准确的信息。
3,对信息进行加工处理获取新信息,得到新的价值。
学生解决问题的过程:
学生根据教师设计的任务,发放的资料研究问题,分析问题,探讨问题,解决问题。老师观察,帮助,引导,特别注意对学习困难的学生、兴趣不浓的学生的帮助、引导和监督。另外,可以呈现学生的解决办法。
教师演示:(老师有针对性地进行演示)
任务:将身份证号码转换成年龄
目的:根据一定的信息需求,完成任务,达到目的。具体知识点:
1,left()函数:
LEFT 基于所指定的字符数返回文本字符串中的第一个或前几个字符。
LEFT(text,num_chars)Text
是包含要提取字符的文本字符串。Num_chars
指定要由 LEFT 所提取的字符数。 Num_chars 必须大于或等于 0。
如果 num_chars 大于文本长度,则 LEFT 返回所有文本。 如果省略 num_chars,则假定其为 1。
2,right()函数:
RIGHT 根据所指定的字符数返回文本字符串中最后一个或多个字符。
语法:
RIGHT(text,num_chars)Text
是包含要提取字符的文本字符串。Num_chars
指定希望 RIGHT 提取的字符数。说明:
Num_chars 必须大于或等于 0。
如果 num_chars 大于文本长度,则 RIGHT 返回所有文本。 如果忽略 num_chars,则假定其为 1。
3,嵌套函数:把一个函数作为另一个函数的组成部分(元素)参与运算。
在某些情况下,您可能需要将某函数作为另一函数的参数使用。例如,下面的公式使用了嵌套的 AVERAGE 函数并将结果与值 50 进行了比较。
有效的返回值:当嵌套函数作为参数使用时,它返回的数值类型必须与参数使用的数值类型相同。例如,如果参数返回一个 TRUE 或 FALSE 值,那么嵌套函数也必须返回一个 TRUE 或 FALSE 值。否则,Microsoft Excel 将显示 #VALUE!错误值。
嵌套级别限制:公式可包含多达七级的嵌套函数。当函数 B 在函数 A 中用作参数时,函数 B 则为第二级函数。例如,AVERAGE 函数和 SUM 函数都是第二级函数,因为它们都是 IF 函数的参数。在 AVERAGE 函数中嵌套的函数则为第三级函数,以此类推。
学生练习、教师指导:
1,2,3,发送作业给学生练习。教师指导。
请部分学生对公式进行表述。部分学生帮助其他同学指出错误所在。
探究:
请已经完成操作的同学将left()和right()函数交换一下位置来解决把身份证号码转换成年龄的问题。
要求:可以以两人为一小组进行探究。
上交作业:
1,指导学生上交作业的方法。
2,学生完成任务。
3,教师指导学生保存并上交作业。
展示成果:
1,通过学生上交的作业完成情况,全体同学欣赏,查看,发现和解决问题。2,教师对学生完成的情况进行展示、点评、讲解等。
课堂小结:
本节课主要的学习目的是深化对图表加工处理软件的认识,了解它对信息强大的加工处理能力,能够把旧信息进行加工处理,获取新信息,产生新价值。二是培养操作能力,增强学习兴趣。三是培养探究精神,不怕吃苦。四是提高认识,增强学习信心。为下一步好好学习奠定基础。五是提高信息素养。
课后作业:
1,请同学探究并解决用mid()函数解决把身份证号码转换为实际年龄的问题。
2,复习“利用数值计算分析数据”所学内容。
3,完成“中考成绩统计表”工作表中要求解决的问题。
第二篇:使用函数计算数据教学设计
使用函数计算数据教学设计
教材分析:
本节课是电子工业出版社出版的信息技术八年级(下)第四单元在Excel中进行数据计算的第二课时。《使用函数计算》一课是在学生学习了《使用公式计算数据》,掌握了在Excel中基本的数据计算方法后,学习的另外一种对Excel数据进行计算的内容,同时也是学生利用Excel软件处理数据的一个基本的、重要的内容。本节课的内容是函数在它与EXCEL前面所讲的单元格地址紧密联系,是它的延续;这部分内容在整册书中是重点也是难点,对于整个EXCEL的数据处理而言,它是一个基础。本节课实用性很强,在实际生活当中有很多运算都可以通过EXCEL的函数来解决,所以对学生以后的工作学习都显得很重要。学生分析:
八年级的学生已经掌握了一定的数学公式运算,而且他们有一定的自学能力和动手能力,学生对微机兴趣浓厚,但是,仅有热情是不够的,大多数学生基础差;在前面的学习中,学生已经掌握了Excel的一些基本概念和基本操作,但对数据处理的认识不多,学生在学习这部分知识之前,通过利用公式进行数据计算,初步具有了对数据进行处理的能力,掌握了数据计算的基本方法,了解数据计算过程中可以引用单元格地址等知识。
教学目标
知识与技能:
1、掌握函数基本的调用、编辑方法
2、能熟练运用常见函数对数据进行计算;
过程与方法:通过对课本内容的学习,让学生探索函数的使用方法; 情感态度与价值观:
1、了解信息技术在生活中数据处理方面的应用,培养学生解决实际问题的能力;
2、让学生体会到运用函数进行统计能有效地提高工作效率; 教学重点和难点
教学重点: EXCEL中函数计算的操作方法;
教学难点:根据需要选取正确的函数及函数参数的设置; 教学方法:
演示讲解法、任务驱动、教学过程
一、引课
复习:上节课我们学习了使用公式计算数据。输入公式的基本步骤需要大家掌握,同学们还记得是哪四步吗?(通过练习)发送任务文件
打开学生成绩表(广播教学演示上节课用公式计算数据和本节课用函数计算数据的不同而引入新课)
在我们刚开始学习数据处理,认识EXCEL的时候,就曾告诉大家EXCEL可以帮助我们快速、准确的处理大量繁杂的数据,而它这一优点的实现,正是我们本节课跟大家共同学习的内容——函数。
二、新课
1、什么是函数
Excel函数是公式的特殊形式,是Excel自带的内部公式,是执行计算、分析等处理数据任务的特殊公式。
2、函数的一般表达形式是:
函数名(参数1,参数2,„„)
3、函数的调用方法:(屏幕广播)①通过“插入”菜单的“函数”命令 ②通过“fx”按钮
③通过常用工具栏的“自动求和”下拉菜单中的“其它函数”命令
打开学生成绩表,演示函数的调用方法,并且通过分别计算个人总分和三科总分,让学生观察参数的变化,理解参数的意义。
步骤:
(1)选择目标单元格
(2)通过“∑”按钮下拉菜单选择常用函数、通过“fx”按钮、通过“插入”菜单的“函数”命令
(3)确定函数取值区域(4)回车完成函数应用
4、布置任务:按照课本62页“做一做”的要求,使用“自动求和”按钮,计算每个学生所有学科成绩的总分以及完成练习工作表
教师发送“任务”文件
教师巡视,给予指导 请个别学生演示操作过程
对学生的成绩予以肯定,同时指出操作中个别学生在参数定义时,将不同类型的数据一起求和,如文本型数据和数值型数据,这样做是不对的。总结:在Excel中,只有同一类型的数据才能进行求和。
提问:有了这么方便的求和函数,那么接下来各学科的平均分,又怎么求出呢?
5、布置任务:按照课本63页“做一做”的要求,使用求平均值函数Average计算全班各学科的平均分以及完成练习工作表.教师巡视、指导 请个别学生演示操作过程 给学生的操作给予评价
教师演示并总结普遍存在的问题。
三、解决问题、实践应用、巩固提高。教师发送“任务”文件,巡视给予个别指导
四、总结
今天我们学习了两个函数,分别是:求和函数SUM和求平均值函数AVERAGE:
1、调用所需函数的方法
2、会用求和函数和求平均值函数计算数据。
3、用于计算的数据范围不正确,可以通过哪些途径修改? 学习完后我们可以解决很多的实际问题,希望大家能通过本节课的学习掌握基本函数的使用方法。熟练运用常见函数对数据进行计算,并且高效,准确。
五、反思
本节课学生做的不错,能够快速准确的完成课本中的做一做和教师发送的任务。大多数学生学会了使用函数计算。就是时间分配不准,复习的时间有些长在后面没有时间对学生普遍存在的问题进行总结和演示。
第三篇:大数据与《数值分析》教学实践
大数据与《数值分析》教学实践
摘 要:联系时代发展,数值分析列为应用统计专业的专业基础课。考虑信息时代与数据时代的特点,对应用统计专业的数值分析课程教学内容进行再梳理,教学模式进行更新。开设专题,突出大数据与数值分析的联系,促使大家共同思考,逐步树立大数据理念。数值分析课程教学的深度改革以及教师与学生间的深度配合,培养创新性人才。通过系统学习和改革措施,取得一系列优秀成果。
关键词:大学教育 数值分析 大数据 专业课
中图分类号:G420 文献标识码:A 文章编号:1674-098X(2016)01(b)-0115-02
大型线性方程组,特别是大型稀疏矩阵方程组,为减少计算量、节约内存、充分利用系数矩阵拥有大量零元素的特点,使用迭代法更为合适[1]。插值、拟合、逼近、数值积分与数值微分、范数等无一不是在建构数据关系。
大数据是新事物吗?天气、地震、量子物理、基因、医学等都是大数据所在,借鉴他们的方法有益。过去多用统计类方法,如用抽样调查。这正是应用统计专业人士擅长的。互联网数据挖掘方法论也如此,不同的是:因为人的复杂性,所以更难。既然是关于人的研究就需应用所有研究人的方法梳理大数据。只要懂编程、懂调动数据的人就可以做大数据挖掘的说法显然不准确,因为移动互联网对社会生活的影响本质是时间与空间的解构。
2013年一年产生的全球信息量已经相当于人类文明史当中资料的总和。处在一个数字时代,价值判断主要通过大数据分析,颠覆性的创新以一个不可思议的速度在进行着,每个人必须要去适应。2015年李克强总理曾提出“数据是基础性资源,也是重要生产力”的重要论断,强调中国发展大数据产业空间无限。“海量数据如果能彼此打通,从这中间可以产生出大量的新知识。”中国工程院院士潘云鹤在由中国工程院主办的国际工程科技知识中心2015国际高端研讨会上说,“大数据的出现,表明信息开始独立于人,开始形成单独的空间,今后大数据一定会走向大知识时代。”
必然的时代变化,可怕吗?正视、拥抱?在变化中似乎更能感受到数学专业、尤其是应用统计专业的优点:韧性好、潜力足、回旋空间大。不过,相应的调整与变化也是必须的。数值分析曾经是我校应用统计学专业的选修课程。考虑到信息时代与数据时代的新特点,也在努力地用心地迈向大知识时代,而今数值分析已经成为我校应用统计专业的必修课,一门专业基础课。教学与成长
身为教师,都明白:从改变和提高自己开始,才有成功的教育。与学生们一起经历那一段无可替代的完整的生命体验,自然不是能由碎片讯息和夸张视频可以取代的。因此我们一直都在学习,不断提高教学的本领与技巧,更好地直面生活中众多的选择,并由此观察、体会、领悟全新的生活方式:改变着我们对自身以及人类关系的理解;影响着城市的建造和经济的变革;甚至改变我们成长与成年的方式,也改变着人类老去甚至去世的方式。
尽情地用心做足诗外功夫。尽心尽力地完成教研工作,认真钻研、用心备课、与时俱进,切实把握好重点难点和必要的知识细节,不断改进教案,启发创新思维,开展研究型教学,拓展相关应用的前沿、热点,通过理论分析与数值编程两个手段相结合,拓展研究前沿和实际应用,提供有益的研究信息和潜在思路。精心制作教学课件、算法编程与可视结果,调试正确高效的源程序代码,必要时可以运用多种模式教学、布置大作业。
学生维度方面,发挥主观能动性与学习自主性。不论课堂内外或是线上线下,我们都努力贯彻这样的学习过程:自学(寻疑)、互帮(答疑)、倾听(释疑)、群言(辨疑)、练习(测疑)和反思(质疑)。答疑、释疑和辨疑过程可以出现在同学之间以及师生之间。努力充分开发理解的认识性、道德性、感情性、实践性与创造性及其综合而成的理解的特殊本性,借此更好地提高教育实践的合理性。这样,无论教师还是学生,都处于理解的教育之中,可以更好地理解自己和他人,因而能被别人更好地理解。同时,作为影响其他教育条件更好地发挥作用的关键因素,在其他教育教学条件基本稳定的前提下,更好地发挥多角度理解的作用,从而收获更好的教育教学效果。
习题采用书面撰写与上机编程相配合来完成,布置有关实践应用的大作业,力求考试学术和创新素质的结合与统一。通过教学、科研、动手编写和调试程序,使学生掌握数值算法的构造原理和分析过程,熟悉设计算法的原则和思路,把握已有算法的优缺点、应用面和发展前景,提升知识的融会贯通,能够结合自己的专业和问题来考虑新数值算法的改进与应用。尝试面对科研实际中遇到的问题选择、应用和改进相应的计算方法,从而提升知识应用和思维创新。
每章学习过程中,我们都一起思考相应的数据复杂性、计算复杂性、系统复杂性和学习复杂性等多个方面带来的挑战;同时思考从数值分析出发的相应对策与处理措施。而且,我们开设几个专题,如从数据出发的建模与数值分析、大数据与计算方法的加速处理、大数据中误差的优化及与新方法的生成等等,突出大数据与数值分析的联系,促使大家共同思考,希望因此逐步树立大数据理念,加强目标、模型、数据、技术等多个方面的协同创新。尝试着对数值分析课程教学的深度改革、教师同学生间的深度配合,希望能超越因材施教,也盼望着能接收到超出想象的答案,从而让创新性人才凸现。
整个数值分析课程教学过程中,关注学生的成长过程,更加注意到学生正在寻找自己,构建自己的知识结构,以及他们的变化和发展。若以此为目标进行教改,改革必然会持续进行,一定能帮助学生了解自己,准确定位,为学生必然发生的变化做准备,而非将学生当作已经固定的人才实施因材施教。坚持抓反思、求提升,抓精细、求完美,抓执行、求速度,抓流程、求效果。期望着大家能有超越数据的视野与胸怀。成效
通过系统学习和改革措施,促使教学双方充分发挥“教师的主导作用,学生的主体作用”。教师的教学与科研得到良性发展,促进研究型教学展示,为在新时期培养创新型、复合型、高素质人才做出点滴贡献;学生掌握经典算法和了解了应用前沿,提高数值算法效率和数据分析能力,为利用计算机有效解决科学计算中的问题打好基础;也为更从容地面对世界的柔性、智能、精细发展奠定了基础。
用心投入实践中的好课与好课的实践[2],发表了一系列相关教学论文。持续开展:数值计算方法及相关课程教学改革的研究与实践;模块化、互衔接的数学类课程群优化的研究与实践;数学教育实验中心运行机制与管理模式的研究与实践;多元化人才培养模式的研究与实践。有如下书籍出版:
《应用数理统计》,机械工业出版社,2008。
《数学物理方程》,科学出版社,2008。
《数据库基础教程》,电子工业出版社,2009。
《基于MINITAB的现代实用统计》,中国人民大学出版社,2009。
《气象统计预报》,气象出版社,2009。
《Numerical Analysis and Computational》,MethodWorld Academic Press,2011。
《数值分析与计算方法》,科学出版社,2012。
《数值计算方法理论与典型例题选讲》,科学出版社,2012。
《Minitab软件入门:最易学实用的统计分析教程》,高等教育出版社,2012。
2012年,这里被确立了教育部专业综合改革试点专业。同年,拥有了中央财政支持地方高校发展――科研平台和专业能力实践基地建设项目,以及多项江苏省及国家级大学生实践创新训练计划项目,如基于地面以及CHAMP卫星数据的地球磁场区域建模研究,基于GPS和实时数据的青奥会期间公共交通调度优化研究,南京市PM2.5监测站分布合理性调查与分析。
2011获年教育部颁发全国大学生数学建模竞赛全国特等奖(高教社杯),全国唯一。2012年摘下全球仅7项的美国大学生数学建模竞赛ICM特等奖。
2015年全国大学生数学建模竞赛获国家一等奖四项、二等奖六项;2015首届中国“互联网+”大学生创新创业大赛金奖;在2015年全国大学生电子设计竞赛中获全国一等奖3项、全国二等奖4项。获奖数量和质量均取得历史性突破,展现了当代大学生的大气、生机和活力。
难怪,世界著名数值分析专家牛津大学教授Floyd N.Trefethen和David.BauIII指出:“如果除了微积分与微分方程之外,还有什么数学领域是数学科学基础的话,那就是数值线性代数。”
参考文献
[1] 蒋勇,李建良.数值分析与计算方法[M].北京:科学出版社,2012.[2] 周兴,叶惟寅.实践中的好课与好课的实践[J].数学教育学报,2005,14(2):80-82.
第四篇:计算数据教学设计
计算数据
【教材分析】
《计算数据》是山东省泰山版初中信息技术第一册(下)第四章第二节的内容。教材通过一个家庭收支账目表来让学生学会用excel计算数据,计算所需公式和函数都有各自的优点,其中所涉及的函数有sum(求和),average(求平均数),max(求最大值),min(求最小值)。
【学情分析】
初一(下)年级学生已经对word界面比较熟悉,对于excel也会很容易上手,公式的用法和数学是一样的,比较简单,只不过函数的用法需要学生用心学习。
【教学目标】
知识与技能
(1)能够自定义公式进行简单的数值计算。
(2)理解函数的意义,并能使用简单函数进行必要的数值计算。过程与方法
从自定义公式入手,由数学方法慢慢向excel的公式表达方式转化。然后再由公式过度到函数,通过实例让学生体验函数的便捷。
情感态度与价值观
通过案例体验公式和函数对数据计算所带来的方便,培养和提高学生对数据的加工能力。
【教学重点与难点】
重点是电子表格中利用公式进行数据计算。难点是函数的应用。
【教学策略】
采用任务驱动,微课教学,学生自主探究等方法,掌握公式和函数计算数据的方法并能解决实际问题。教师只是点拨和辅助,把课堂真正的交给学生,充分体现学生的主体作用。
【教学过程】
一、导入新课
大屏幕展示教师制作多媒体课件中《师傅被妖精抓走了》搞笑小视频,引出故事情节,小沙不满如来的封赏,在回家的路上伙同妖怪抓走了师傅,现在你变成了大侠,需要打怪升级和boss挑战才能救出师傅。
然后出示excel表格,说出任务,讲明用法,讲明加分细则。
(设计意图:通过有趣的故事,引出本课的教学内容。)
二、自主探究
任务一:打怪升级(基础知识)
参考导学案操作提示和微课程的操作演示完成任务一打怪升级。
学生活动:自学导学案任务一的内容,学生以小组为单位合作探究任务一的操作,完成后学生讲解计算的方法。小组长可以帮助组员完成,组员之间也可互相帮助。
师任务:引导学生解决任务一的问题,并且根据完成情况和回答问题情况给学生所在组加分。教师总结演示操作方法,然后布置没完成的同学继续完成,完成的学生尝试任务二。学生操作过程中可以适当放点音乐,创造一个轻松的气氛,也可以掌握时间。
(设计意图:通过有趣的任务,引导学生学会公式和函数计算数据。)
任务二:boss挑战(拓展提高)
参考导学案操作提示和微课程的操作演示完成任务二boss挑战。其中有四个boss:boss、大boss、超级大boss,终极boss。只有完成一关,才能进入下一关,这样学生必须做对才行。
学生活动:自学导学案任务二的内容,学生以小组为单位合作探究任务二的操作,完成后学生讲解计算的方法。小组长可以帮助组员完成,组员之间也可互相帮助。
师任务:引导学生解决任务二的问题,并且根据完成情况和回答问题情况给学生所在组加分,教师总结演示操作方法。
(设计意图:通过有难度的任务,引导学生学会用所学知识解决实际问题。)
三、总结归纳
总结本节课所有内容,根据得分选出优胜组。
作业是sheet3中的继续修行。
(设计意图:拓展延伸知识,教师总结本节课内容,系统的梳理知识点,强化操作技巧。通过作业再一次巩固本节课内容)【教学反思】
通过小故事的形式导入新课,从一开始就抓住了学生的兴趣所在,为下面的新课打下了坚实的基础。新课采用微课和导学案的方式,在兴趣的驱动下,学生自主学习,充分利用小组合作探究,充分体现学生的主体作用。课上学生积极性高,完成任务的效果很好。教师的作用从传道授业解惑变成了引导者,帮助学生养成了良好的学习习惯,提高自学能力,增强学习兴趣。
第五篇:数值分析计算实习题
《数值分析》计算实习题
姓名:
学号:
班级:
第二章
1、程序代码
Clear;clc;
x1=[0.2
0.4
0.6
0.8
1.0];
y1=[0.98
0.92
0.81
0.64
0.38];
n=length(y1);
c=y1(:);
for
j=2:n
%求差商
for
i=n:-1:j
c(i)=(c(i)-c(i-1))/(x1(i)-x1(i-j+1));
end
end
syms
x
df
d;
df(1)=1;d(1)=y1(1);
for
i=2:n
%求牛顿差值多项式
df(i)=df(i-1)*(x-x1(i-1));
d(i)=c(i-1)*df(i);
end
P4=vpa(sum(d),5)
%P4即为4次牛顿插值多项式,并保留小数点后5位数
pp=csape(x1,y1,'variational');%调用三次样条函数
q=pp.coefs;
q1=q(1,:)*[(x-.2)^3;(x-.2)^2;(x-.2);1];
q1=vpa(collect(q1),5)
q2=q(1,:)*[(x-.4)^3;(x-.4)^2;(x-.4);1];
q2=vpa(collect(q2),5)
q3=q(1,:)*[(x-.6)^3;(x-.6)^2;(x-.6);1];
q3=vpa(collect(q3),5)
q4=q(1,:)*[(x-.8)^3;(x-.8)^2;(x-.8);1];
q4=vpa(collect(q4),5)%求解并化简多项式
2、运行结果
P4
=
0.98*x
0.3*(x
0.2)*(x
0.4)
0.625*(x
0.2)*(x
0.4)*(x
0.6)
0.20833*(x
0.2)*(x
0.4)*(x
0.8)*(x
0.6)
+
0.784
q1
=
1.3393*x^3
+
0.80357*x^2
0.40714*x
+
1.04
q2
=
1.3393*x^3
+
1.6071*x^2
0.88929*x
+
1.1643
q3
=
1.3393*x^3
+
2.4107*x^2
1.6929*x
+
1.4171
q4
=
1.3393*x^3
+
3.2143*x^2
2.8179*x
+
1.86293、问题结果
4次牛顿差值多项式=
0.98*x
0.3*(x
0.2)*(x
0.4)
0.625*(x
0.2)*(x
0.4)*(x
0.6)
0.20833*(x
0.2)*(x
0.4)*(x
0.8)*(x
0.6)
+
0.784
三次样条差值多项式
第三章
1、程序代码
Clear;clc;
x=[0
0.1
0.2
0.3
0.5
0.8
1];
y=[1
0.41
0.5
0.61
0.91
2.02
2.46];
p1=polyfit(x,y,3)%三次多项式拟合p2=polyfit(x,y,4)%四次多项式拟合y1=polyval(p1,x);
y2=polyval(p2,x);%多项式求值
plot(x,y,'c--',x,y1,'r:',x,y2,'y-.')
p3=polyfit(x,y,2)%观察图像,类似抛物线,故用二次多项式拟合。
y3=polyval(p3,x);
plot(x,y,'c--',x,y1,'r:',x,y2,'y-.',x,y3,'k--')%画出四种拟合曲线
2、运行结果
p1
=
-6.6221
12.8147
-4.6591
0.9266
p2
=
2.8853
-12.3348
16.2747
-5.2987
0.9427
p3
=
3.1316
-1.2400
0.73563、问题结果
三次多项式拟合P1=
四次多项式拟合P2=
二次多项式拟合P3=
第四章
1、程序代码
1)建立函数文件f.m:
function
y=fun(x);
y=sqrt(x)*log(x);
2)编写程序:
a.利用复化梯形公式及复化辛普森公式求解:
Clear;clc;
h=0.001;%h为步长,可分别令h=1,0.1,0.01,0.001
n=1/h;t=0;s1=0;s2=0;
for
i=1:n-1
t=t+f(i*h);
end
T=h/2*(0+2*t+f(1));T=vpa(T,7)
%梯形公式
for
i=0:n-1
s1=s1+f(h/2+i*h);
end
for
i=1:n-1
s2=s2+f(i*h);
end
S=h/6*(0+4*s1+2*s2+f(1));S=vpa(S,7)
%辛普森公式
a’复化梯形公式和复化辛普生公式程序代码也可以是:
Clear;clc;
x=0:0.001:1;
%h为步长,可分别令h=1,0.1,0.01,0.001
y=sqrt(x).*log(x+eps);
T=trapz(x,y);
T=vpa(T,7)
(只是h=1的运行结果不一样,T=1.110223*10^(-16),而其余情况结果都相同)
Clear;clc;
f=inline('sqrt(x).*log(x)',x);
S=quadl(f,0,1);
S=vpa(S,7)
b.利用龙贝格公式求解:
Clear;clc;
m=14;%m+1即为二分次数
h=2;
for
i=1:m
h=h/2;n=1/h;t=0;
for
j=1:n-1
t=t+f(j*h);
end
T(i)=h/2*(0+2*t+f(1));%梯形公式
end
for
i=1:m-1
for
j=m:i+1
T(j)=4^i/(4^i-1)*T(j)-1/(4^i-1)*T(j-1);
%通过不断的迭代求得T(j),即T表的对角线上的元素。
end
end
vpa(T(m),7)
2、运行结果
T
=
-0.4443875
S
=
-0.4444345
ans
=
-0.44444143、问题结果
a.利用复合梯形公式及复合辛普森公式求解:
步长h
0.1
0.01
0.001
梯形求积T=
0
[1.110223*10^(-16)]
-0.4170628
-0.4431179
-0.4443875
辛普森求积S=
-0.3267527
-0.4386308
-0.4441945
-0.4444345
b.利用龙贝格公式求解:
通过15次二分,得到结果:-0.4444414
第五章
1、程序代码
(1)LU分解解线性方程组:
Clear;clc;
A=[10
0
2.099999
0
2];
b=[8;5.900001;5;1];
[m,n]=size(A);
L=eye(n);
U=zeros(n);
flag='ok';
for
i=1:n
U(1,i)=A(1,i);
end
for
r=2:n
L(r,1)=A(r,1)/U(1,1);
end
for
i=2:n
for
j=i:n
z=0;
for
r=1:i-1
z=z+L(i,r)*U(r,j);
end
U(i,j)=A(i,j)-z;
end
if
abs(U(i,i)) flag='failure' return; end for k=i+1:n m=0; for q=1:i-1 m=m+L(k,q)*U(q,i); end L(k,i)=(A(k,i)-m)/U(i,i); end end L U y=L\b;x=U\y detA=det(L*U) (2)列主元消去法: function x = gauss(A,b); A=[10 0 1;-3 2.099999 2;5 -1;2 0 2]; b=[8;5.900001;5;1]; [n,n] = size(A); x = zeros(n,1); Aug = [A,b]; %增广矩阵 for k = 1:n-1 [piv,r] = max(abs(Aug(k:n,k))); %找列主元所在子矩阵的行r r = r + k 1; % 列主元所在大矩阵的行 if r>k temp=Aug(k,:); Aug(k,:)=Aug(r,:); Aug(r,:)=temp; end if Aug(k,k)==0,error(‘对角元出现0’),end % 把增广矩阵消元成为上三角 for p = k+1:n Aug(p,:)=Aug(p,:)-Aug(k,:)*Aug(p,k)/Aug(k,k); end end % 解上三角方程组 A = Aug(:,1:n); b = Aug(:,n+1); x(n) = b(n)/A(n,n); for k = n-1:-1:1 x(k)=b(k); for p=n:-1:k+1 x(k) = x(k)-A(k,p)*x(p); end x(k)=x(k)/A(k,k); end detA=det(A) 2、运行结果 1) LU分解解线性方程组 L = 1.0e+006 * 0.0000 0 0 0 -0.0000 0.0000 0 0 0.0000 -2.5000 0.0000 0 0.0000 -2.4000 0.0000 0.0000 U = 1.0e+007 * 0.0000 -0.0000 0 0.0000 0 -0.0000 0.0000 0.0000 0 0 1.5000 0.5750 0 0 0 0.0000 x = -0.0000 -1.0000 1.0000 1.0000 detA = -762.0001 2)列主元消去法 detA = 762.0001 ans = 0.0000 -1.0000 1.0000 1.00003、问题结果 1) LU分解解线性方程组 L= U= x=(0.0000,-1.0000,1.0000,1.0000)T detA=-762.001 2)列主元消去法 x=(0.0000,-1.0000,1.0000,1.0000)T detA=762.001 第六章 1、程序代码 (1)Jacobi迭代 Clear;clc; n = 6; %也可取n=8,10 H = hilb(n); b = H * ones(n,1); e = 0.00001; for i = 1:n if H(i,i)==0 '对角元为零,不能求解' return end end x = zeros(n,1); k = 0; kend = 10000; r = 1; while k<=kend & r>e x0 = x; for i = 1:n s = 0; for j = 1:i s = s + H(i,j) * x0(j); end for j = i + 1:n s = s + H(i,j) * x0(j); end x(i) = b(i) / H(i,i) s / H(i,i); end r = norm(x x0,inf); k = k + 1; end if k>kend '迭代不收敛,失败' else '求解成功' x k end (2)SOR迭代 1)程序代码 function s = SOR(n,w); H = hilb(n); b = H*ones(n,1); e = 0.00001; for i = 1:n if H(i,i)==0 ‘对角线为零,不能求解’ return end end x = zeros(n,1); k = 0; kend = 10000; r = 1; while k<=kend & r>e x0 = x; for i = 1:n s = 0; for j = 1:i s = s + H(i,j) * x(j); end for j = i + 1:n s = s + H(i,j) * x0(j); end x(i) = (1 w) * x0(i) + w / H(i,i) * (b(i) s); end r = norm(x x0,inf); k = k + 1; end if k>kend '迭代不收敛,失败' else '求解成功' x end 2) 从命令窗口中分别输入: SOR(6,1) SOR(8,1) SOR(10,1) SOR(6,1.5) SOR(8,1.5) SOR(10,1.5) 2、运行结果 Jacobi迭代: ans = 迭代不收敛,失败 SOR迭代: 第七章 1、程序代码 (1)不动点迭代法 1)建立函数文件:g.m function f=g(x) f(1)=20/(x^2+2*x+10); 2)建立函数文件:bdd.m function [y,n] = bdd(x,eps) if nargin==1 eps=1.0e-8; elseif nargin<1 error return end x1 = g(x); n = 1; while (norm(x1-x)>=eps)&&(n<=10000) x = x1; x1 = g(x); n = n + 1; end y = x; n 3)从命令窗口输入:bdd(0) (2)牛顿迭代 clear;clc; format long; m=8; %m为迭代次数,可分别令m=2,4,6,8,10 x=sym('x'); f=sym('x^3+2*x^2+10*x-20'); df=diff(f,x); FX=x-f/df; %牛顿迭代公式 Fx=inline(FX); disp('x='); x1=0.5; disp(x1); Eps=1E-8; k=0; while x0=x1; k=k+1; x1=feval(Fx,x1); %将x1代入牛顿迭代公式替代x1 disp(x1); %在屏幕上显示x1 if k==m break; end end k,x12、运行结果 (1)不动点迭代法 >> bdd(0) n = ans = 1.3688 (2) 牛顿迭代 x= 0 1.*** 1.37***21 1.*** 1.*** 1.*** 1.*** 1.*** k = x1 = 1.*** 3、问题结果 (1)不动点迭代法 x=1.3688 n=25 收敛太慢 (2)牛顿迭代 初值取0 迭代次数k=8时,k x(k) 1.4666666 1.3715120 1.3688102 1.3688081 1.3688081 1.3688081 1.3688081