Як обчислити перехресний добуток у 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) )]
Наприклад, припустимо, що ми маємо такі вектори:
- Вектор A: (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