วิธีการคำนวณ cross product ใน python
สมมติว่าเรามีเวกเตอร์ A ที่มีองค์ประกอบ (A 1 , A 2 , A 3 ) และเวกเตอร์ B ที่มีองค์ประกอบ (B 1 , B 2 , B 3 ) เราสามารถคำนวณผลคูณไขว้ของเวกเตอร์ทั้งสองนี้ได้ดังนี้:
ผลคูณข้าม = [(A 2 *B 3 ) – (A 3 *B 2 ), (A 3 *B 1 ) – (A 1 *B 3 ), (A 1 *B 2 ) – (A 2 *B 1 )]
ตัวอย่างเช่น สมมติว่าเรามีเวกเตอร์ต่อไปนี้:
- เวกเตอร์ ก: (1, 2, 3)
- เวกเตอร์ B: (4, 5, 6)
เราสามารถคำนวณผลคูณไขว้ของเวกเตอร์เหล่านี้ได้ดังนี้:
- ผลคูณข้าม = [(A 2 *B 3 ) – (A 3 *B 2 ), (A 3 *B 1 ) – (A 1 *B 3 ), (A 1 *B 2 ) – (A 2 *B 1 )]
- ผลคูณข้าม = [(2*6) – (3*5), (3*4) – (1*6), (1*5) – (2*4)]
- ผลคูณข้าม = (-3, 6, -3)
คุณสามารถใช้วิธีใดวิธีหนึ่งจากสองวิธีต่อไปนี้เพื่อคำนวณผลคูณไขว้ของเวกเตอร์สองตัวใน Python:
วิธีที่ 1: ใช้ฟังก์ชัน cross() ของ NumPy
import numpy as np #calculate cross product of vectors A and B n.p. cross (A, B)
วิธีที่ 2: กำหนดฟังก์ชันของคุณเอง
#define function to calculate cross product def cross_prod (a,b): result = [a[1] * b[2] - a[2] * b[1], a[2] * b[0] - a[0] * b[2], a[0] * b[1] - a[1] * b[0]] return result #calculate cross product cross_prod(A, B)
ตัวอย่างต่อไปนี้แสดงวิธีการใช้แต่ละวิธีในทางปฏิบัติ
ตัวอย่างที่ 1: การใช้ฟังก์ชัน NumPy cross()
รหัสต่อไปนี้แสดงวิธีใช้ฟังก์ชัน cross() ของ NumPy เพื่อคำนวณผลคูณไขว้ระหว่างเวกเตอร์สองตัว:
import numpy as np #definevectors A = np. array ([1, 2, 3]) B = np. array ([4, 5, 6]) #calculate cross product of vectors A and B n.p. cross (A, B) [-3, 6, -3]
ผลคูณไขว้กลายเป็น (-3, 6, -3) .
ซึ่งสอดคล้องกับผลิตภัณฑ์ข้ามที่เราคำนวณด้วยตนเองก่อนหน้านี้
ตัวอย่างที่ 2: กำหนดฟังก์ชันของคุณเอง
รหัสต่อไปนี้แสดงวิธีกำหนดฟังก์ชันของคุณเองเพื่อคำนวณผลคูณไขว้ระหว่างเวกเตอร์สองตัว:
#define function to calculate cross product def cross_prod (a,b): result = [a[1] * b[2] - a[2] * b[1], a[2] * b[0] - a[0] * b[2], a[0] * b[1] - a[1] * b[0]] return result #definevectors A = np. array ([1, 2, 3]) B = np. array ([4, 5, 6]) #calculate cross product cross_prod(A, B) [-3, 6, -3]
ผลคูณไขว้กลายเป็น (-3, 6, -3) .
ซึ่งสอดคล้องกับผลคูณไขว้ที่เราคำนวณในตัวอย่างก่อนหน้านี้
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีทำงานทั่วไปอื่นๆ ใน Python:
วิธีการคำนวณดอทโปรดัคโดยใช้ NumPy
วิธีทำให้เมทริกซ์ NumPy เป็นมาตรฐาน
วิธีเพิ่มแถวให้กับเมทริกซ์ใน NumPy