numpy.cross() tính tích chéo (cross product) của hai vector. Hỗ trợ vector chiều khác nhau: vector 3D × 2D coi 2D như nằm trên mặt phẳng xy (thêm z=0). Trả về vector vuông góc với cả hai (hoặc scalar nếu 2D×2D).
Tham số
- a, b (array_like): Hai vector đầu vào.
- axisa, axisb, axisc (int, tùy chọn): Trục xác định vector cho a, b, kết quả c.
- axis (int, tùy chọn): Ghi đè axisa/axisb/axisc nếu cung cấp.
Các bước thực hiện
Nhập NumPy, định nghĩa vector 3D và 2D:
import numpy as np
arr1 = [13, 11, 19] # 3D
arr2 = [19, 10] # 2D -> coi như [19, 10, 0]
print("Vector 1...\n", arr1)
print("\nVector 2...\n", arr2)
# Tích chéo
print("\nKết quả...\n", np.cross(arr1, arr2))
Ví dụ hoàn chỉnh
import numpy as np
arr1 = [13, 11, 19]
arr2 = [19, 10]
print("Vector 1...\n", arr1)
print("\nVector 2...\n", arr2)
print("\nKết quả...\n", np.cross(arr1, arr2))
Kết quả đầu ra
Vector 1...
[13, 11, 19]
Vector 2...
[19, 10]
Kết quả...
[-190 361 -79]
Giải thích: [13,11,19] × [19,10,0] = [11*0 - 19*10, 19*19 - 13*0, 13*10 - 11*19] = [-190, 361, -79].