[Numpy-discussion] cross product of two 3xn arrays

Ian Harrison harrison.ian at gmail.com
Wed Feb 15 17:21:17 EST 2006


I have two groups of 3x1 arrays that are arranged into two larger 3xn
arrays. Each of the 3x1 sub-arrays represents a vector in 3D space. In
Matlab, I'd use the function cross() to calculate the cross product of
the corresponding 'vectors' from each array. In other words:

if ai and bj are 3x1 column vectors:

A = [ a1  a2  a3 ]

B = [ b1  b2  b3 ]

C = A x B = [ (a1 x b1)  (a2 x b2)  (a3 x b3) ]

Could someone suggest a clean way to do this? I suppose I could write
a for loop to cycle through each pair of vectors and send them to
numpy's cross(), but since I'm new to python/scipy/numpy, I'm guessing
that there's probably a better method that I'm overlooking.


More information about the NumPy-Discussion mailing list