Python查找函数f(x)=0根的解决方法


Posted in Python onMay 07, 2015

本文实例讲述了Python查找函数f(x)=0根的解决方法。分享给大家供大家参考。具体实现方法如下:

''' root = ridder(f,a,b,tol=1.0e-9).
  Finds a root of f(x) = 0 with Ridder's method.
  The root must be bracketed in (a,b).
'''
import error
from math import sqrt
def ridder(f,a,b,tol=1.0e-9):  
  fa = f(a)
  if fa == 0.0: return a
  fb = f(b)
  if fb == 0.0: return b
  if fa*fb > 0.0: error.err('Root is not bracketed')
  for i in range(30):
   # Compute the improved root x from Ridder's formula
    c = 0.5*(a + b); fc = f(c)
    s = sqrt(fc**2 - fa*fb)
    if s == 0.0: return None
    dx = (c - a)*fc/s
    if (fa - fb) < 0.0: dx = -dx
    x = c + dx; fx = f(x)
   # Test for convergence
    if i > 0:
      if abs(x - xOld) < tol*max(abs(x),1.0): return x
    xOld = x
   # Re-bracket the root as tightly as possible
    if fc*fx > 0.0:
      if fa*fx < 0.0: b = x; fb = fx
      else:      a = x; fa = fx
    else:
      a = c; b = x; fa = fc; fb = fx
  return None
  print 'Too many iterations'

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
python使用wmi模块获取windows下的系统信息 监控系统
Oct 27 Python
django中send_mail功能实现详解
Feb 06 Python
Window 64位下python3.6.2环境搭建图文教程
Sep 19 Python
浅谈pyqt5中信号与槽的认识
Feb 17 Python
利用Python的sympy包求解一元三次方程示例
Nov 22 Python
如何给Python代码进行加密
Jan 10 Python
Python netmiko模块的使用
Feb 14 Python
解决Python发送Http请求时,中文乱码的问题
Apr 30 Python
python开发前景如何
Jun 11 Python
详解python百行有效代码实现汉诺塔小游戏(简约版)
Oct 30 Python
将不规则的Python多维数组拉平到一维的方法实现
Jan 11 Python
Python+DeOldify实现老照片上色功能
Jun 21 Python
python计算对角线有理函数插值的方法
May 07 #Python
python计算方程式根的方法
May 07 #Python
python计算牛顿迭代多项式实例分析
May 07 #Python
用C++封装MySQL的API的教程
May 06 #Python
使用wxPython获取系统剪贴板中的数据的教程
May 06 #Python
用Python遍历C盘dll文件的方法
May 06 #Python
使用Python压缩和解压缩zip文件的教程
May 06 #Python
You might like
php IP及IP段进行访问限制的代码
2008/12/17 PHP
Yii获取当前url和域名的方法
2015/06/08 PHP
php中array_unshift()修改数组key注意事项分析
2016/05/16 PHP
PHP实现上传图片到数据库并显示输出的方法
2018/05/31 PHP
jQuery.Autocomplete实现自动完成功能(详解)
2010/07/13 Javascript
基于jquery实现图片广告轮换效果代码
2011/07/07 Javascript
JS获取url链接字符串 location.href
2013/12/23 Javascript
JavaScript闭包详解
2015/02/02 Javascript
js获取当前日期时间及其它操作汇总
2015/04/17 Javascript
浅谈EasyUi ComBotree树修改 父节点选择的问题
2016/11/07 Javascript
JavaScript调试的多个必备小Tips
2017/01/15 Javascript
jQuery操作之效果详解
2017/05/19 jQuery
基于JS递归函数细化认识及实用实例(推荐)
2017/08/07 Javascript
JavaScript 判断对象中是否有某属性的常用方法
2018/06/14 Javascript
JS/HTML5游戏常用算法之碰撞检测 像素检测算法实例详解
2018/12/12 Javascript
javascript实现左右缓动动画函数
2020/11/25 Javascript
python的即时标记项目练习笔记
2014/09/18 Python
Python中的Numeric包和Numarray包使用教程
2015/04/13 Python
Python信息抽取之乱码解决办法
2017/06/29 Python
pycharm 将python文件打包为exe格式的方法
2019/01/16 Python
浅谈Python3中strip()、lstrip()、rstrip()用法详解
2019/04/29 Python
django组合搜索实现过程详解(附代码)
2019/08/06 Python
Python使用Opencv实现图像特征检测与匹配的方法
2019/10/30 Python
解决Python命令行下退格,删除,方向键乱码(亲测有效)
2020/01/16 Python
HTML5 Canvas中使用用路径描画圆弧
2015/01/01 HTML / CSS
FILA斐乐中国官方商城:意大利运动品牌
2017/01/25 全球购物
彪马美国官网:PUMA美国
2017/03/09 全球购物
美国网上眼镜供应商:LEOTONY(眼镜、RX太阳镜和太阳镜)
2017/10/31 全球购物
以工厂直接定价的传奇性能:Ben Hogan Golf
2019/01/04 全球购物
师范应届毕业生自荐信
2013/11/18 职场文书
个人四风问题对照检查材料
2014/09/26 职场文书
2014年客房部工作总结
2014/11/22 职场文书
2015年服务员工作总结
2015/04/08 职场文书
服务员岗位职责范本
2015/04/09 职场文书
电影雨中的树观后感
2015/06/15 职场文书
Sentry的安装、配置、使用教程(Sentry日志手机系统)
2022/07/23 Python