国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python查找函數f(x)=0根的解決方法

2020-02-23 01:06:39
字體:
來源:轉載
供稿:網友

本文實例講述了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 errorfrom math import sqrtdef 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程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 丽江市| 新昌县| 元朗区| 漯河市| 伽师县| 平乐县| 辽阳县| 贵港市| 邹平县| 昌都县| 江孜县| 承德市| 界首市| 平顶山市| 彝良县| 绥化市| 石林| 县级市| 天门市| 临汾市| 桂东县| 宁强县| 石家庄市| 翁源县| 武平县| 天峻县| 顺昌县| 东乌珠穆沁旗| 桂平市| 苍山县| 武穴市| 湖南省| 克东县| 乌苏市| 富宁县| 大埔区| 藁城市| 鄯善县| 迭部县| 布尔津县| 桦甸市|