python numpy学习笔记(8) 多项式

来源:互联网 发布:凌波城静脉不动的算法 编辑:程序博客网 时间:2024/06/03 11:58

介绍ploy相关操作,可以媲美matlab

1.从已知根求解多项式

# -*- coding:utf-8 -*-from numpy import *root = [1, -1]#   一个多项式的根为1,-1a = poly1d(poly(root))print a#   该多项式为a = [1. 0. -1.],即y = x^2 - 1

poly是已知的那个多项式的系数,然后通过poly1d得到那个多项式的带有x的格式。

2.使用roots求解多项式的根

print roots(a)#   求解a的根array_equal()print array_equal(root, roots(a))#   判断两个根是否相等

3.求导和已知导函数求原函数

der = polyder(a)print der#   多项式求导inter = polyint(a)print inter#   找到导函数为y = x^2 - 1的原函数
4.求多项式在某点处的值

print polyval(a, 5)#   求解函数在点x = 5的值
5.加减乘除四则运算

b = poly1d([1, 1])print b#   另一个多项式y = x + 1print polyadd(a, b)#   两个多项式相加print polysub(a, b)#   两个多项式相减print roots(polysub(a, b))#   两个多项式的交点,就是多项式相减之后的零点print polymul(a, b)#   两个多项式相乘print polydiv(a, b)#   两个多项式相除

完整的代码:
# -*- coding:utf-8 -*-from numpy import *root = [1, -1]#   一个多项式的根为1,-1a = poly1d(poly(root))print a#   该多项式为a = [1. 0. -1.],即y = x^2 - 1print roots(a)#   求解a的根array_equal()print array_equal(root, roots(a))#   判断两个根是否相等der = polyder(a)print der#   多项式求导inter = polyint(a)print inter#   找到导函数为y = x^2 - 1的原函数print polyval(a, 5)#   求解函数在点x = 5的值b = poly1d([1, 1])print b#   另一个多项式y = x + 1print polyadd(a, b)#   两个多项式相加print polysub(a, b)#   两个多项式相减print roots(polysub(a, b))#   两个多项式的交点,就是多项式相减之后的零点print polymul(a, b)#   两个多项式相乘print polydiv(a, b)#   两个多项式相除





原创粉丝点击