The numpy.cross()
method computes the cross product of two vectors.
Example
import numpy as np
# create two input arrays
array1 = np.array([1, 2, 3])
array2 = np.array([4, 5, 6])
# compute the cross product of array1 and array2
result = np.cross(array1, array2)
print(result)
# Output:[-3 6 -3]
cross() Syntax
The syntax of the numpy.cross()
method is:
numpy.cross(a, b, axisa = -1, axisb = -1, axisc = -1, axis = None)
cross() Arguments
The numpy.cross()
method takes following arguments:
a
- the first input arrayb
- the second input arrayaxisa
(optional) - the axis along which to take the cross product for aaxisb
(optional) - the axis along which to take the cross product for baxisc
(optional) -the axis along which to take the cross product for caxis
(optional) - if specified, it overrides axisa, axisb, and axisc
Note: All the optionals arguments here take integer values.
cross() Return Value
The numpy.cross()
method returns an array containing the cross product of a and b.
Example 1: Find the Cross Product of Two Arrays
import numpy as np
# create two input arrays
array1 = np.array([1, 2, 3])
array2 = np.array([4, 5, 6])
# compute the cross product of array1 and array2
result = np.cross(array1, array2)
print(result)
Output
[-3 6 -3]
Here, we have two input arrays:
array1 = [1, 2, 3]
array2 = [4, 5, 6]
Now to compute the cross product, we apply the following formula:
cross product = (array1[1] * array2[2] - array1[2] * array2[1],
array1[2] * array2[0] - array1[0] * array2[2],
array1[0] * array2[1] - array1[1] * array2[0])
Then, substituting the values from the input arrays:
cross product = (2 * 6 - 3 * 5,
3 * 4 - 1 * 6,
1 * 5 - 2 * 4)
Finally, after evaluating the expressions:
cross product = (-3, 6, -3)
Therefore, the output array of np.cross(array1, array2)
is [ -3, 6, -3]
.
Example 2: Use of axisa, axisb, axisc Arguments in cross()
import numpy as np
# create two input arrays
array1 = np.array([[1, 2, 3], [4, 5, 6]])
array2 = np.array([[7, 8, 9], [10, 11, 12]])
# compute the cross product
# along the first axis of each array
resultAxis = np.cross(array1, array2, axisa = 1, axisb = 1, axisc = 1)
print("Result with axisa = 1, axisb = 1, axisc = 1:")
print(resultAxis)
Output
Result with axisa = 1, axisb = 1, axisc = 1: [[-6 12 -6] [-6 12 -6]]
Here, to compute the cross product along axis 1, we consider the vectors along axis 1 of both array1 and array2:
array1 = ([[1, 2, 3],
[4, 5, 6]])
array2 = ([[7, 8, 9],
[10, 11, 12]])
For the first row of array1 and array2, the cross product is calculated as:
[1, 2, 3] × [7, 8, 9] = [-6, 12, -6]
Similarly, for the second row of array1 and array2, the cross product is calculated as:
[4, 5, 6] × [10, 11, 12] = [-6, 12, -6]
Example 3: Use of axis Argument in cross()
import numpy as np
# create two input arrays
array1 = np.array([[1, 2, 3], [4, 5, 6]])
array2 = np.array([[7, 8, 9], [10, 11, 12]])
# compute the cross product along axis 0
axis0 = np.cross(array1, array2, axis = 0)
print("Result with axis = 0:")
print(axis0)
# compute the cross product along axis 1
axis1 = np.cross(array1, array2, axis = 1)
print("\nResult with axis = 1:")
print(axis1)
Output
Result with axis=0: [-18 -18 -18] Result with axis=1: [[-6 12 -6] [-6 12 -6]]
Here, when
axis = 0
- output[-18, -18, -18]
represents the cross product along the column vectors of array1 and array2.axis = 1
- output[[ -6, 12, -6], [ -6, 12, -6]]
represents the cross product along the row vectors of array1 and array2.