数值分析课程设计牛顿迭代法割线法_第1页
数值分析课程设计牛顿迭代法割线法_第2页
数值分析课程设计牛顿迭代法割线法_第3页
数值分析课程设计牛顿迭代法割线法_第4页
数值分析课程设计牛顿迭代法割线法_第5页
已阅读5页,还剩4页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数值分析与实验课程设计班级姓名学号08级应用数学数值分析与实验(实践)»任务书一、设计目的通过数值分析与实验(实践)»实践环节,掌握本门课程的众多数值解法和原 理,并通过编写C语言或matlab程序,掌握各种基本算法在计算机中的具体表达 方法,并逐一了解它们的优劣、稳定性以及收敛性。在熟练掌握 C语言或matlab 语言编程的基础上,编写算法和稳定性均佳、通用性强、可读性好,输入输出方 便的程序,以解决实际中的一些科学计算问题。二、设计教学内容1、数值方法的稳定性;2、利用牛顿法和割线法程序求出非线性方程的解,并比较它们之间的优劣;3、高斯消去法和列主元高斯消去法求解线性方

2、程组;雅克比法和高斯-赛德尔迭代法解方程组;4、利用Lagrange插值多项式求未知点的近似值;5、利用所给数据进行数据的多项式和可转化成多项式形式的函数拟合;6、 编写复化辛卜生公式和龙贝格算法, 通过实际计算体会各种方法的精确度;7、利用改进Euler方法和四阶Runge-Kutta方法求解初值问题的微分方程 组;8、利用籍法求矩阵按模最大的特征值及对应特征向量;(8个中选取1个)二、设计时间20112012学年第1学期: 第16周 共计一周教师签名:2011年12月12日、八刖 言数值计算方法是一种利用计算机解决数学问题的数值近似解方法,特别是无 法用人工过计算器计算的数学问题。数值计算

3、方法常用于矩阵高次代数方程矩阵 特征值与特征向量的数值解法,插值法,线性方程组迭代法,函数逼近,数值积 分与微分,常微分方程初值问题数值解等。作为数学与计算机之间的一条通道,数值计算的应用范围已十分广泛,作为 用计算机解决实际问题的纽带,数值算法在求解线性方程组,曲线拟合、数值积 分、数值微分,迭代方法、插值法、拟合法、最小二乘法等应用广泛。数值计算方法是和计算机紧密相连的,现代计算机的出现为大规模的数值计 算创造了条件,集中而系统的研究适用于计算机的数值方法是十分必要的。数值 计算方法是在数值计算实践和理论分析的基础上发展起来的。通过数值计算方法与实验将有助于我们理解和掌握数值计算方法基本理

4、论和 相关软件的掌握,熟练求解一些数学模和运算。并提高我们的编程能力来解决实 际问题。9摘要随着计算机的迅速发展和广泛应用,在众多的领域内,人民越来越认识到科 学计算是科学研究的第三中方法,当今理科学生更应具备这方面的知识与能力, 计算方法作为科学计算的一门主十课程乂市我们的必修课,我们要认真学习,数 值计算方法不只注重理论分析还要求实验和实践,这样才能使我们更灵活地掌握 数值计算方法。所以我们也要认真作好数值分析与实验实践环节。本文通过编牛顿法和割线法的程序来解决实例问题,牛顿法和割线法程序均 用Matlab编写的,以此来达到学以致用的目的。关键字:牛顿迭代法;割线法前言 3摘要 4实验设计

5、内容 6一牛顿迭代法求解方程的根 61实验目的 62实验内容(牛顿迭代法)63.1算法 63.2Matlab 程序 63.3运行结果 7二、割线法求解方程的根 71实验目的 72实验内容(割线法) 73.1算法 73.2Matlab 程序 83.3运行结果 8三、结果分析 9四、参考文献 9实验设计内容一、牛顿迭代法求解方程的根1.实验目的:学会用牛顿迭代法求解方程的根2实验内容:牛顿迭代法利用牛顿法求非线性方程igx+x_2=0的根。牛顿迭代公式如下:Xk 1. =Xk f (Xk ) / f '(Xk )1-13.1算法给定初始值x0, N为迭代次数容许的最大值,听为f(x)的容许

6、误差,eps为根的容 许误差。 如果f'(x°)= 0或迭代次数大丁 N,则算法失败,结束;否则执行。 计算 x1 = x0 一 f ( x0 ) / f '( x0)。 若x1 -x0|<eps , f (xn,贝U输出x1,程序结束;否则执行。 令x0=x1,转向。3.2、Matlab 程序:eps=5e-6;delta=1e-6;N=100;k=0;x0=1.0;while(1)x1=x0-func2_2(x0)/func2_2_1(x0);k=k+1;if(k>N|abs(x1)<eps)disp('Newtow method fai

7、led')breakendif abs(x1)<1d=x1-x0;elsed=(x1-x0)反1;endx0=x1;fprintf('x%d=%fn',k,x0)if(abs(d)<eps|abs(func2_2(x1)<delta)breakendendfprintf('x=%fn',x0)function y=func2_2_1(x)y=log(2.17828)/x +1;endfunction y=func2_2(x) y=log(x)+x-2;end3.3、运行结果x1=1.562260x2=1.556658x3=1.55719

8、2x4=1.557141x5=1.557146 x=1.557146二、割线法求解方程的根1.实验目的:学会用割线法求解方程的根2实验内容:割线法利用割线法求非线性方程lg(x)+x-2=0的根。割线法公式如下:xk 1 = xk f (xk ) * ( xk -xk 盘 /( f (xk ) f (xk n)1-23.1算法 如果或迭代次数大丁 N,则算法失败,结束;否则执行。 计算 x1=x0-f1(x1)*(x1-x0)/(f1(x1)-f1(x0). 若x1 -x0|<eps ,则输出x1,程序结束;否则执行。 令x0=q,q=xk,转向。3.2Matlab程序如下:functi

9、on gexian(x0,x1,eps)k=1xk=x1-f1(x1)*(x1-x0)/(f1(x1)-f1(x0)x0=x1;while abs(xk-x0)k=k+1q=xk;xk=xk-f1(xk)*(xk-x0)/(f1(xk)-f1(x0)x0=q;endr=xkfunction y=f1(x)y=log(x)+x-23.3运行结果x0=0.5 x1=0.6k = 1y = -1.9108y = -1.9108y = -2.1931xk = 1.2768k = 2y = -0.4788y = -0.4788y = -1.9108xk = 1.5031k = 3y = -0.0893y = -0.0893y = -0.4788xk = 1.5550k = 4y = -0.0035y = -0.0035y =-0.0893xk = 1.5571k = 5y =-2.3988e-005y =-2.3988e-005y = -0.0035xk =1.5571r = 1.5571三、结果分析牛顿法具有较快的收敛速度,割线法比牛顿迭代法收敛慢,但迭代次数较少,每迭代1步,就只需计算1次f(x)的值,且避免了求导,计算量比牛顿法少。四、参考文献1 .孙志终吴宏伟闻震初.计算方法与实验.南京:东南大学出版社

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论