在Python中求多项式的微分

在Python中求多项式的微分

要求多项式的微分,请使用Python的Numpy库中的多项式.polyder()方法。此方法返回按照给定次方差分m次的多项式系数c。在每次迭代中,结果将乘以scl(这个缩放因子用于线性变量的变化)。参数c是一个按照每个轴从低到高次幂排序的系数数组,例如,[1,2,3]代表多项式1 + 2*x + 3*x**2,而[[1,2],[1,2]]代表1 + 1*x + 2*y + 2*x*y,当axis=0时表示x,axis=1时表示y。

该方法返回导数的多项式系数。第一个参数c是一个多项式系数的数组。如果c是多维的,不同的轴对应不同的变量,每个轴的次数由相应的索引给出。第二个参数m是需要求导的次数,必须是非负的(默认为1)。

第三个参数是scl,每一次微分都会乘以scl。最终的结果是乘以scl**m。这是用于线性变量改变的。第四个参数是axis,它表示沿着哪个轴求导(默认为0)。结果是(d/dx)(c)= 2 + 6x + 12x**2

步骤

首先,导入所需的库:

import numpy as np
from numpy.polynomial import polynomial as P

创建一个多项式系数的数组,即 1 + 2x + 3x**2 + 4x**3

c = np.array([1,2,3,4])

显示系数数组 –

print("Our coefficient Array...\n",c)

检查尺寸 –

print("\nDimensions of our Array...\n",c.ndim)

获取数据类型−

print("\nDatatype of our Array object...\n",c.dtype)

获取形状 –

print("\nShape of our Array object...\n",c.shape)

要求一多项式,使用Python Numpy中的多项式.polyder()方法-

print("\nResult...\n",P.polyder(c))

示例

import numpy as np
from numpy.polynomial import polynomial as P

# Create an array of polynomial coefficients i.e.
# 1 + 2x + 3x**2 + 4x**3
c = np.array([1,2,3,4])

# Display the coefficient array
print("Our coefficient Array...\n",c)

# Check the Dimensions
print("\nDimensions of our Array...\n",c.ndim)

# Get the Datatype
print("\nDatatype of our Array object...\n",c.dtype)

# Get the Shape
print("\nShape of our Array object...\n",c.shape)

# To differentiate a polynomial, use the polynomial.polyder() method in Python Numpy.
# Return the polynomial coefficients c differentiated m times along axis. At each iteration the result is multiplied by scl (the scaling factor is for use in a linear change of variable). The argument c is an array of coefficients from low to high degree along each axis, e.g., [1,2,3] represents the polynomial 1 + 2*x + 3*x**2 while [[1,2],[1,2]] represents 1 + 1*x + 2*y + 2*x*y if axis=0 is x and axis=1 is y.

print("\nResult...\n",P.polyder(c))

输出

Our coefficient Array...
   [1 2 3 4]

Dimensions of our Array...
1

Datatype of our Array object...
int64

Shape of our Array object...
(4,)

Result...
   [ 2. 6. 12.]

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程