本文实例讲述了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("\nPress return to exit")

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

python求方程的根_python计算方程式根的方法相关推荐

  1. python牛顿法求方程的根_python计算方程式根的方法 如何用python计算三元方程

    已知一元二次方程的3个参数a,b,c,编写python程序分享import math a = float(raw_input('Enter coefficient a')) b = float(raw ...

  2. python编程求1!+2!+…+n!_python计算阶乘和的方法(1!+2!+3!+...+n!)

    python计算阶乘和的方法(1!+2!+3!+...+n!) 更新时间:2019年02月01日 08:50:15 作者:一米阳光里的晴天娃娃 今天小编就为大家分享一篇python计算阶乘和的方法(1 ...

  3. python求平方根的代码_Python求解平方根的方法

    本文实例讲述了Python求解平方根的方法.分享给大家供大家参考.具体如下: 主要通过SICP的内容改写而来.基于newton method求解平方根.代码如下: #!/usr/bin/python ...

  4. 写一个判断方程根的C语言程序,写出求方程ax2+bx+c=0的根的算法,画出相应的程序框图,并要求输出它的实根....

    写出求方程ax2+bx+c=0的根的算法,画出相应的程序框图,并要求输出它的实根. 答案 思路分析:主要考查含参问题的讨论方法及条件嵌套结构的应用.输入三个实数a,b,c,先判断a是否为零,当a≠0时 ...

  5. python求数组平均值_用python求一个数组的和与平均值的实现方法

    用python求一个数组的和与平均值的实现方法 如下所示: # coding = GBK a =[1,2,3,4,5] sum=0 b = len(a) print("这个数组的长度为:&q ...

  6. python求n的阶乘_python求n的阶乘

    阶乘是基斯顿·卡曼(Christian Kramp,1760-1826)于1808年发明的运算符号,是数学术语.一个正整数的阶乘(factorial)是所有小于及等于该数的正整数的积,并且0的阶乘为1 ...

  7. python求50的阶乘_python中求阶乘

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 我如何去计算python中的一个整数的阶乘?... 写一个猜数字的游戏,预先设定 ...

  8. python简单小案例列表_python计算列表内各元素的个数实例

    python计算列表内各元素的个数实例 如下所示: list = [1,2,3,4,5,6,7,5,4,3,2,12] set = set(list) dict = {} for item in se ...

  9. python 求平面两点距离_Python求平面内点到直线距离的实现

    近期遇到个问题,需要计算平面内点到直线的距离,发现数学知识都还给老师了,度娘后找到计算方法,特此记录. 点到直线的计算公式: 通过公式推导,得到信息: A:直线斜率 B:固定值-1 C:直线截距b 转 ...

  10. python求两数最大公因数_Python求两个数的最大公约数

    Python求两个数的最大公约数 一.求最大公约数算法: 1. 整数A对整数B进行取整, 余数用整数C来表示 举例: C = A % B 2. 如果C等于0,则C就是整数A和整数B的最大公约数 3. ...

最新文章

  1. C# 面向对象之继承后初始化顺序
  2. ubuntu触电(转)
  3. 神经网络代码解读_强化学习、联邦学习、图神经网络,飞桨全新工具组件详解...
  4. easyui控件事件监听委托给jquery事件监听,keyup取最新值问题
  5. 读书笔记:javascript高级程序设计
  6. SurfaceFlinger draw/render/display流程(fps)
  7. HTML5 — 知识总结篇《VII》【图片元素】
  8. jeecgboot 查询_Jeecg-Boot 技术文档
  9. EF实体框架之CodeFirst五
  10. 怎么将CAD图纸快速导入转换成常见的黑白JPG格式?
  11. 汽车故障诊断技术【8】
  12. 程序员自学编程的6种方法,高效学习
  13. pcm5102a解码芯片音质评测_音乐更重要,iQOO Pro配备独立解码芯片,Hi-Fi音质更懂你...
  14. Android中使用Toast弹出信息提示时的用户体验优化
  15. pycharm中的Run with Python console功能是什么意思?
  16. 使用cef3开发的浏览器不支持flash问题的解决
  17. 学会Python后利用WiFi就可以获取妹子的微信号啦
  18. [Linux]-堡垒机/跳板机作用、登陆异常处理
  19. it行业se是_IT行业常见职位英文缩写
  20. 苹果怎么取消微信订阅服务器,教程:取消微信免密支付授权功能设置

热门文章

  1. CAD卸载/完美解决安装失败/如何彻底卸载清除干净cad各种残留注册表和文件的方法
  2. lptwrite matlab,matlab读取地震数据sgy
  3. B站网页端下载视频,直接浏览器下载或者Java实现下载
  4. Python--绘制点
  5. 开源 | 写了个微博去广告、屏蔽拉黑插件
  6. elasticsearch自定义分词器---拼音分词器
  7. python日期相减得到年龄_在dataframe两列日期相减并且得到具体的月数实例
  8. centos设置静态IP地址
  9. R语言随机抽样及分层抽样
  10. 洛谷P4568飞行路线