poly1d在python中的用法
时间: 2023-10-13 09:16:09 浏览: 190
`numpy.poly1d` 是一个 Numpy 库中的类,用于处理多项式。它可以将系数数组转换为多项式对象,执行多项式运算,计算多项式的导数和积分等。下面是 `numpy.poly1d` 的几个常用用法:
1. 创建多项式对象
通过给定系数,使用 `numpy.poly1d` 可以创建一个多项式对象,例如:
```python
import numpy as np
# 创建多项式对象: f(x) = 2x^3 + x^2 + 3x + 1
p = np.poly1d([2, 1, 3, 1])
print(p)
```
输出结果为:
```
3 2
2 x + 1 x + 3 x + 1
```
2. 计算多项式的值
使用多项式对象可以计算多项式在某个点 x 处的值,例如:
```python
# 计算多项式在 x=2 处的值
print(p(2))
```
输出结果为:
```
25
```
3. 多项式加减乘除运算
多项式对象支持加减乘除等运算,例如:
```python
# 创建多项式对象: g(x) = x^2 + 4
q = np.poly1d([1, 0, 4])
# 多项式相加
print(p + q)
# 多项式相减
print(p - q)
# 多项式相乘
print(p * q)
# 多项式相除
print(p / q)
```
输出结果为:
```
3 2
2 x + 2 x + 3 x + 5
3 2
2 x 3 x - 3
5 4 3 2
2 x + 1 x + 11 x + 7 x + 4 x + 4
2
2 x + 1
```
4. 计算多项式的导数和积分
使用多项式对象可以计算多项式的导数和积分,例如:
```python
# 计算多项式的一阶导数
print(np.poly1d.deriv(p))
# 计算多项式的二阶导数
print(np.poly1d.deriv(p, 2))
# 计算多项式的不定积分
print(np.poly1d.integ(p))
# 计算多项式在 [0, 1] 区间上的定积分
print(np.poly1d.integ(p)(1) - np.poly1d.integ(p)(0))
```
输出结果为:
```
2
6 x + 2 x + 3
1
12 x + 2
4 3 2
1 x + 0.3333 x + 1.5 x + 1 x
18.666666666666668
```
以上就是 `numpy.poly1d` 的基本用法。
阅读全文