Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

แยกความแตกต่างของพหุนามใน Python


ในการแยกความแตกต่างของพหุนาม ให้ใช้เมธอด polynomial.polyder() ใน Python Numpy ส่งกลับค่าสัมประสิทธิ์พหุนาม c แตกต่าง m ครั้งตามแกน ในการวนซ้ำแต่ละครั้ง ผลลัพธ์จะถูกคูณด้วย scl (ตัวประกอบสเกลใช้สำหรับการเปลี่ยนแปลงเชิงเส้นของตัวแปร) อาร์กิวเมนต์ c คืออาร์เรย์ของสัมประสิทธิ์จากระดับต่ำถึงสูงในแต่ละแกน เช่น [1,2,3] แทนพหุนาม 1 + 2*x +3*x**2 ในขณะที่ [[1,2],[1 ,2]] แทน 1 + 1*x + 2*y + 2*x*y ถ้าแกน=0 คือ x และแกน=1 คือ y

วิธีการส่งกลับค่าสัมประสิทธิ์พหุนามของอนุพันธ์ พารามิเตอร์ที่ 1 c คืออาร์เรย์ของสัมประสิทธิ์พหุนาม ถ้า c เป็นแบบหลายมิติ แกนที่ต่างกันจะสัมพันธ์กับตัวแปรต่างๆ โดยมีระดับในแต่ละแกนที่กำหนดโดยดัชนีที่เกี่ยวข้อง พารามิเตอร์ตัวที่ 2 m คือจำนวนอนุพันธ์ที่นำมาต้องไม่เป็นค่าลบ (ค่าเริ่มต้น:1)

พารามิเตอร์ที่ 3 คือ scl ดิฟเฟอเรนติเอชันแต่ละตัวคูณด้วย scl ผลลัพธ์ที่ได้คือการคูณโดยcl**m ใช้สำหรับการเปลี่ยนแปลงเชิงเส้นของตัวแปร (ค่าเริ่มต้น:1). พารามิเตอร์ที่ 4 คือแกน มันคือแกนที่ใช้อนุพันธ์ (ค่าเริ่มต้น: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)

ในการแยกความแตกต่างของพหุนาม ให้ใช้เมธอด polynomial.polyder() ใน Python Numpy -

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.]