非线性方程求根方法——二分法
1.1 非线性方程
- 非线性方程的一般形式: f(x)=0
代数方程: f(x) = a0 + a1x + …… +anx^n(an≠0)
超越方程 :f(x)中含三角函数、指数函数、或其他超越函数 - 用数值方法求解非线性方程的步骤:
找出有根区间:只含一个实根的区间称隔根区间
近似根的精确化:从隔根区间内的一个或多个点出发,逐次逼近,寻求满足精度的根的近似值
1.2 二分法
- 介值定理:设函数f(x)在区间[a, b]连续,且f(a)f(b)<0,则方程f(x)=0在区间[a, b] 内至少有一个根。
- 二分法的基本思想
a. 假定 f(x) = 0 在 [a, b] 内有唯一单实根x* ,考察有根区间[a, b]
b. 取中点 x0 = (a+b)/2 ,若 f(x0) = 0, 则 x* = x0 ,否则——若 f(x0)f(a)>0,则x在x0右侧,令 a1 = x0, b1 = b ; 若 f(x0)f(a)<0,则x在x0左侧,令 a1 = a, b1 = x0
c. 以 [a1,b1] 为新的隔根区间,且仅为 [a, b] 的一半, 对 [a1,b1] 重复前过程,得新的隔根区间 [a2,b2], 如此二分下去,得一系列隔根区间:……⊂[ak, bk]⊂……⊂[a2, b2]⊂[a1, b]⊂[a , b],其中每个区间都是前一区间的一半,故 [ak,bk] 的长度:bk - ak = (b - a)/2^k
d. 当k趋于无穷时长度趋于0,即若二分过程无限继续 下去,这些区间最后必收敛于一点x* ,即方程的根 - 二分法的收敛定理:设x为方程 f(x) = 0 在 [a, b] 内唯一根,且 f(x) 满足 f(a)f(b)<0,则由 二分法产生的第n个区间 [an,bn] 的中点 xn 满足不等式:|xn - x| ≤ (b - a)/2^(n + 1)。
1.3 二分法的代码实现(matlab)
- 用二分法求方程exp(-x)-sin(pi*x/2)=0在区间[0,1]内的根,要求误差不超过2^-5
f = inline('exp(-x) - sin(pi*x/2)');
a = 0; b = 1; n = 0; er0 = 2^(-5);
fa = f(a); fb = f(b); er = b-a;
while er>er0c = (a+b)/2;fc = f(c);if fa*fc<0b = c;elsea = c;fa = fc;enddisp([a,b]);er = b - a;k = k + 1
end
非线性方程求根方法——二分法相关推荐
- 非线性方程求根方法总结附代码(从二分法、试位法到牛顿迭代、二次插值等)
非线性方程求根方法总结&附代码(从二分法.试位法到牛顿迭代.二次插值等) 1 划界法 1.1 二分法 1.1 试位法 1.3 改进试位的法思路 1.4 Ridders方法 1.5 划界法的问题 ...
- 数值计算大作业:非线性方程求根(二分法、牛顿法、弦截法在Matlab实现)
作为研究生的入门课,数值计算的大作业算是所有研究生开学的重要编程作业. 我把二分法.牛顿法.弦截法求解非线性方程求根的数值计算作业在MATLAB中编程实现.具体的程序详细标注后放在文章附录了,算法数学 ...
- 工程数学(数值分析)第二讲:非线性方程求根
文章目录 第二讲:非线性方程求根 二分法 简单迭代法 收敛阶 牛顿迭代法 第二讲:非线性方程求根 二分法 简单迭代法 收敛阶 牛顿迭代法
- 数值分析方程求根实验matlab,基于matlab的数值分析( 非线性方程求根)上机实验报告1...
数值分析试验报告 非线性方程求根 二分法解方程 1. 题目:用二分法求方程0133 =--x x 的所有根 2. 方法:二分法 3. 程序 function x=erfenfa(a,b) if (a* ...
- 数值分析(7)-非线性方程求根
7 非线性方程求根 文章目录 7 非线性方程求根 7.1 二分法 4.2 简单迭代法 4.2.1 一般形式 4.2.2 收敛条件 4.2.3 收敛阶 4.3 Newton迭代法 4.3.1 迭代格式 ...
- python迭代法求解非线性方程_荐【数学知识】非线性方程求解的二分法以及牛顿迭代法...
[数学知识]非线性方程求解的二分法以及牛顿迭代法 本博客不谈及理论推导,只提供代码实现,关于理论推导,大家可以查看其它博客文章. 导入包 import sys import math import s ...
- 计算物理学(数值分析)上机实验答案6、非线性方程求根
实验六.非线性方程求根 在科学研究与工程技术中常会遇到求解非线性方程的问题.二分法简单易行, 但收敛较慢,仅有线性收敛速度.而且该方法不能用于求偶数重根或复根,但可 以用来确定迭代法的初始值.牛顿 ...
- 基础数学(六)——非线性方程求根的数值解法
文章目录 期末考核方式 求解的一般步骤 二分法求根 二分法计算样例 二分法的优缺点 不动点迭代法 全局收敛准则 收敛性证明样例 局部收敛性 收敛阶数的定义 迭代法具体例题(考试必考) 牛顿迭代法 例题 ...
- 2021-01-07 matlab数值分析 非线性方程求根 牛顿法
matlab数值分析 非线性方程求根 牛顿法 %牛顿法求非线性方程的根: % 输入:fun--非线性函数:dfun--非线性函数导数:x0--初始值:tol--精度: % 输出:x--非线性方程数值根 ...
- (简易)一元三次方程拆分/求根方法
(简易)一元三次方程拆分/求根方法 例:x3+7x2+14x+8=0x^3+7x^2+14x+8=0x3+7x2+14x+8=0 式中常数8的因子有[1,2,4,8] 为了让因子之和或差等于二次项的系 ...
最新文章
- 为Keil添加注释的快捷键
- ubuntu下安装Thinkpad指纹识别系统
- python守护进程windows_如何把 python predict程序 做成 windows 守护进程
- 【DS】时间复杂度排序
- spark sql合并小文件_Spark SQL小文件问题在OPPO的解决方案
- 通过CISA的一些经验分享(原文写于09年)
- 什么是eSIM技术,eSIM的工作原理以及为什么eSIM会很重要
- Java并发编程之CAS和AQS
- RSA的JavaScript程序
- 致远getshell
- HTK在win7下安装的一些问题
- Unity4.6版本下载
- abaqus2019安装教程_Xflow2019和Abaqus2019版本安装不成功的问题解决办法
- 微信小程序图片上传功能(PHP后端)
- 三极管的输入输出的特性曲线
- Learning to Track with Object Permanence阅读笔记
- linux18.04循环登陆,在Ubuntu 18.04 Bionic Beaver Linux上启用自动登录
- 电脑蓝屏个人解决办法————由程序引起的
- 数字 一阶低通滤波器 详细分析 冰三点水
- k8s在华为openeuler搭建
热门文章
- 2022年京东春节,如何批量设置延迟发货?
- capturing self strongly in this block is likely to lead to a retain cycle 警告解决
- 22. CTF综合靶机渗透(十五)
- error: no viable conversion from 'MyCalendar *' to 'MyCalendar'
- 人机对战五子棋(权值法)
- Mac Xshell 下载 (FinallShell)
- java之STS使用和相关目录解说、springBoot微服务项目、前后端发送和接收参数的方式、文件图片视频上传
- 液晶显示器常见故障维修方法
- 数据可视化技术是指运用计算机,计算机图形技术在数据计算方面的应用
- 新库上线 | CnOpenData中国各地区方言信息数据