c语言计算机编程三种方法求解非线性方程

本 科 专 业 学 年 论 文题 目:非线性方程求解比较姓 名: 何 娟 专 业: 计算机科学技术系 班 级: 08 级本科(2)班 指 导 老 师: 刘 晓 娜 完成日期: 2010 年 11 月 21 日题 目:非线性方程求解比较摘 要本文给出了三种求解非线性方程的方法,分别是二分法,牛顿迭代法,割弦法。二分法巧妙地利用插值得到的点以及有根区间中点这两点处的函数值,缩小隔根区间,以期望得到更快的收敛速度。牛顿迭代法是非线性方程根的一种常见的数值方法,对于非线性方程的单重零点来说,牛顿迭代法一般具有局部二阶收敛性,但是当所求的根 X*是 F(X)的 M 重根时,M 是大于等于 2 的整数,此时牛顿迭代法只有一阶收敛性。弦截法是将牛顿迭代公式中用差商 F( )-F( )kx1/ ( - )代替导数 。本文给出了算法改进的具体步骤及算法流程图kx1 ()kFx相关的数值结果也说明了方法的有效性。关 键 词 : 二分法;牛顿迭代法;割弦法;非线性方程计算机学年专业论文 非线性方程求解- 1 -目 录第一章 绪 论 ……………………………………………………1 第二章 求解非线性方程的三种常见算法 …………………………… 2 2.1 二分法 ………………………………………………………2 2.2 牛顿迭代法 ……………………………………………………3 2.3 割弦法 ………………………………………………………5 第三章 求解非线性方程的三种算法比较 ……………………………6 3.1 二分法求解方法 ………………………………………………6 3.2 牛顿迭代法求解 ……………………………………………… 8 3.3 割弦法求解 ……………………………………………………9 参 考 文 献 …………………………………………………… 12计算机学年专业论文 非线性方程求解- 2 -第一章 绪 论在科技飞速发展的今天,计算机已经成为我们生活中不可缺少的一部分了,在我们生活与生产中扮演越来越重要的角色,而科学计算已经成为科学计算的重要方法之一,其应用范围已渗透到所有科学领域,作为科学与工程计算的数学工具,计算方法已成为高等院校数学与应用数学,信息与计算科学,应用物理学等必修课。 在永恒变化发展的自然界与人类社会中,在研究其内部规律的各个科学领域中,更深刻、更精确地描述其内部规律的数学工具之一,就是非线性方程。非线性代数是研究大规模离散数据的运算处理与内在性状的数学科学,科学技术离不开数据处理与数据分析,因此非线性代数具有广泛的应用。无论在物理学、力学、化学、控制论等科学领域中,非线性方程屡见不鲜。就是在生命科学领域中,也是用非线性方程来描述生命过程中的能量、信息、物质等传递过程的。因此,对非线性方程的求解自然就是一个非常重要了。然而求解非线性方程有很多种方法,每种方法都有自己的优缺点。目前已有的数学软件可以帮助我们实现上机计算,基本上已经将数值分析的主要内容设计成简单的函数,只要调用这些函数进行运算便可得到数值结果。非线性代数中许多数值计算与计算机结合,才能得到更很好,更快,更精准的结果。为了将计算机与线性代数方程组更好的结合在一起,本文做了比较全面的的解说。本文比较全面的介绍了现代计算机科学与工程计算中常见的数值计算方法,对这些数值计算方法的基本理论与实际计算机实践应用进行了详细的分析,同时还简要的分析了这些数值算法的计算效果,稳定性,收敛效果,适用范围以及优劣性与特点。本文着重于化抽象为具体,引用一个具体的非线性方程用发散性的思维对其进行彻底的分析,主要有:① 引入一个非线性方程,分别运用三种思想进行分析,得到三种解法的根本思想;② 把数学方法与数学思想提出来,并进行简洁易懂的理论证明,既突出了线性代数的理论和基本思想,又可以帮助读者对该数学方法的理解;③ 给出各种算法的循环思想以及流程图,展现出一个清新的框架在读者面前;④ 基于 c 语言的基础上,写出可执行的代码。⑤ 对各种算法得到的结果进行比较分析。第二章 求解非线性方程的三种常见算法2.1 二分法单变量函数方程:f(x)=0其中,f(x)在闭区间[a,b]上连续、单调,且 f(a)*f(b)0,00)(0f则由牛顿法产生的迭代序列 收敛于 f(x)=0 的根 ,且nx*x计算机学年专业论文 非线性方程求解- 5 -)(2)(**1limxfxk定理 2:对于方程 f(x)=0,设 f(x)在[a,b]上有二阶连续导数且满足下述条件:(1)f(a)f(b)* *x)(f0,当 【 -, + 】时,由牛顿迭代法 = (k=0,1,2,…)式产0 xx1k)( kfx生的序列 是以不低于二阶的收敛速度收敛到 .n *2.3 割弦法 设 , 为方程 f(x)=0 的两个近似根。用差商得:f( )-f( )/ - ,kx1 kx1kx1代替牛顿迭代公式中的导数 f’( ), 于是得到如下的迭代公式: kx= - 。下面研究割弦法的几何意义:1kx())(11kkkxff经过点( ,f( ))及点( ,f( ))两点作割线,其点斜式方程为:1kxY=f( )- ,其零点为 X= - kx()(1kkxff kx把 X 用 表示即得到迭代格式,它又称为双点弦割)())(11kkkff 1kx法,需要两个初值此割线与 X 轴交点的横坐标就是新的近似值 ,所以弦截法又称为割线1kx法,如图所示。 计算机学年专业论文 非线性方程求解- 6 -下面三个定理为弦割法收敛定理:定理 1:设 f(x)在其零点 的邻域 U( , )= [ - , + ] ( >0)*x*x*x*内有二阶连续导数, ,则当 U( , )时,由割弦法式产生的0)(f0序列 收敛于 ,且收敛的阶为 1.618。nx*定理 2:设 在区间[a,b] 上连续,且满足下述三点)(f(1)f(a)f(b)0)内有二阶连续导*x*x**x数,f’(x) 0 则当 U( , )时,由弦割 = -01k )())(11kkkxff式产生的序列 收敛于 ,且收敛的阶为 1.618。nx*第三章 求解非线性方程的三种算法比较本章主要通过具体实例比较了第二章中三种算法的优缺点,并得到相应结论,求解非线性方程 x*x*x+4*x*x-10=0 在[1,2]上,x0=1.5 附近的解精确到0.000 000 0

c语言编程非线性方程求解,c语言计算机编程三种方法求解非线性方程相关推荐

  1. c语言编程非线性方程求解,c语言计算机编程三种方法求解非线性方程.doc

    c语言计算机编程三种方法求解非线性方程.doc 本 科 专 业 学 年 论 文题 目非线性方程求解比较姓 名 何 娟 专 业 计算机科学技术系 班 级 08 级本科(2)班 指 导 老 师 刘 晓 娜 ...

  2. matlab迭代求解,[基于matlab平台的三种迭代法求解矩阵方程]matlab迭代法求方程的根...

     数值分析第二次作业 学院:电子工程学院 基于matlab平台的三种迭代法求解矩阵方程组 求解系数矩阵由16阶Hilbert方程组构成的线性方程组的解,其中右端项为[2877/851,3491/14 ...

  3. matlab解方程x 2-x-2=0,matlab用三种方法求解二阶微分方程x''+0.2x'=0.4x=0.2u(t),u(t)是单位阶跃函数,初始状态为0...

    问题描述: matlab用三种方法求解二阶微分方程x''+0.2x'=0.4x=0.2u(t),u(t)是单位阶跃函数,初始状态为0 1个回答 分类: 数学 2014-11-28 问题解答: 我来补答 ...

  4. 易语言删除数组里的指定成员的三种方法

    我们想从从数组里删除指定成员的时候,首先要遍历数组, 找到对应的成员名称,然后使用删除成员命令来删除.以下提供了三种思路. 方法一: 窗口程序集名 保 留 保 留 备 注 窗口程序集1 子程序名 返回 ...

  5. linux编程获取本机IP地址的三种方法

    这是一项不太清晰而且没有多大意义的工作.一个原因是网络地址的设置非常灵活而且都是允许用户进行个性化设置的,比如一台计算机上可以有多块物理网卡或者虚拟网卡,一个网卡上可以绑定多个IP地址,用户可以为网卡 ...

  6. (转载)Linux编程获取本机IP地址的三种方法

    (转载)http://blog.csdn.net/jcwKyl/article/details/6324147 这 是一项不太清晰而且没有多大意义的工作.一个原因是网络地址的设置非常灵活而且都是允许用 ...

  7. Fabonacci三种方法求解C++

    Fabonacci问题过于经典 三种解法 未优化递归 时间复杂度:O(2n^nn) 有记忆性的递归 时间复杂度:O(n) 动态规划(DP) 时间复杂度:O(n) 注意 有记忆性递归:增开一个数组,存储 ...

  8. 吉洪诺夫 matlab,使用三种方法求解吉洪诺夫正则化参数,为什么结果相同

    问题主要是使用了三种不同的方法去求解吉洪诺夫正则化的参数,具体过程在附件,但是求解的结果不怎么对劲 %以下为L曲线验证 [L,W]=get_l(76,2); [UU,sm,XX] = cgsvd (A ...

  9. 字符串的左旋右旋问题(C语言实现,三种方法求解)

    字符串左旋右旋问题其实是同理的,下边以左旋为例: 方法一 思路:左旋一次就是将整个字符串向左移一个字符,第一个字符(arr[0])移动到最右侧.这样循环操作左旋次数就是最终左旋结果,如上图所示. 实现 ...

最新文章

  1. VarGFaceNet
  2. WEUI picker组件无法js动态改变选项
  3. git Rebase 变基 教程
  4. 2017.3.20上午
  5. flask 知识点总结
  6. Java 导出 Excel 文件
  7. 传智播客--itcastbbs(四)
  8. 人机交互大作业_为百亿级未来布局 徐工XG新一代高空作业设备全球首发
  9. 简易实践的vue自定义tab入门
  10. 单目相机与激光标定相关文章与代码(草稿)
  11. PHP推流地址获取图片
  12. 数据仓库模型(星型模型和雪花模型 )
  13. 银企直连ukey 集中管理方案
  14. 中国经济社会大数据研究平台——国内统计数据
  15. linux使用jinja2模板_Jinja2 教程
  16. 深度学习【23】图像风格化总结
  17. 让站群排名稳步上升的策略
  18. 字节 找出最近时间(回溯) C++ 2021-07-17
  19. 【HTML505】HTML基础05_区块_布局
  20. 【Linux】git clone报错fatal: unable to access ‘https://github.com/xxx.git/‘: Encountered end of file

热门文章

  1. 拼多多首次盈利,陈磊做了什么?
  2. 用VHDL实现有限状态机
  3. ubuntu下最好用的截图工具flameshot
  4. 抛物线系列_02顶点不在原点
  5. 基于赫优讯COMX嵌入式模块开发EtherCAT从站设备
  6. 如何把PDF转换成长图?分享两种可以实现的方法
  7. Windows下Can't connect to MySQL server on localhost
  8. 超级好用的摸鱼神器,上班看小说阅读器
  9. js干货-Bom,Dom事件及各种案例
  10. 【愚公系列】2023年06月 网络安全(交通银行杯)-日志审计