最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

python计算方程式根的方法

来源:动视网 责编:小采 时间:2020-11-27 14:41:40
文档

python计算方程式根的方法

python计算方程式根的方法:本文实例讲述了python计算方程式根的方法。分享给大家供大家参考。具体实现方法如下: ''' roots = polyRoots(a). Uses Laguerre's method to compute all the roots of a[0] + a[1]*x + a[2]*x^2 +...+ a[n]*x^
推荐度:
导读python计算方程式根的方法:本文实例讲述了python计算方程式根的方法。分享给大家供大家参考。具体实现方法如下: ''' roots = polyRoots(a). Uses Laguerre's method to compute all the roots of a[0] + a[1]*x + a[2]*x^2 +...+ a[n]*x^


本文实例讲述了python计算方程式根的方法。分享给大家供大家参考。具体实现方法如下:

''' roots = polyRoots(a).
 Uses Laguerre's method to compute all the roots of
 a[0] + a[1]*x + a[2]*x^2 +...+ a[n]*x^n = 0.
 The roots are returned in the array 'roots',
''' 
from evalPoly import *
from numpy import zeros,complex
from cmath import sqrt
from random import random
def polyRoots(a,tol=1.0e-12):
 def laguerre(a,tol):
 x = random()
 # Starting value (random number)
 n = len(a) - 1
 for i in range(30):
 p,dp,ddp = evalPoly(a,x)
 if abs(p) < tol: return x
 g = dp/p
 h = g*g - ddp/p
 f = sqrt((n - 1)*(n*h - g*g))
 if abs(g + f) > abs(g - f): dx = n/(g + f)
 else: dx = n/(g - f)
 x = x - dx
 if abs(dx) < tol: return x
 print 'Too many iterations'
 def deflPoly(a,root): # Deflates a polynomial
 n = len(a)-1
 b = [(0.0 + 0.0j)]*n
 b[n-1] = a[n]
 for i in range(n-2,-1,-1):
 b[i] = a[i+1] + root*b[i+1]
 return b
 n = len(a) - 1
 roots = zeros((n),dtype=complex)
 for i in range(n):
 x = laguerre(a,tol)
 if abs(x.imag) < tol: x = x.real
 roots[i] = x
 a = deflPoly(a,x)
 return roots
 raw_input("
Press return to exit")

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

文档

python计算方程式根的方法

python计算方程式根的方法:本文实例讲述了python计算方程式根的方法。分享给大家供大家参考。具体实现方法如下: ''' roots = polyRoots(a). Uses Laguerre's method to compute all the roots of a[0] + a[1]*x + a[2]*x^2 +...+ a[n]*x^
推荐度:
标签: 方法 的方法 计算
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top