May 31, 2018 - In this final section of this chapter we will look at the cross product of two vectors. We should note that the cross product requires both of the.
Isn't that a matter of terminology? Exterior forms are often referred to as 'alternating tensors'.i.e. For any module or vector space, its exterior algebra is a quotient of the tensor algebra by the homogeneous ideal generated by all squares of elements of degree one. No?so in this sense an exterior form is an equivalence class of tensors.there are skew - symmetric and well as symmetric tensors.indeed if we think dually of a tensor as a field of multilinear functionals on the tangent spaces, as is usually done in differential geometry, then adding a condition like skew symmetry, merely restricts the class of tensors to a subclass.in this sense antisymmetric tensors are actually a subfamily of the general tensors, hence they are actual tensors, and not just equivalence classes of them. As duscussed at length elsewhere, given a dot product, each vector subspace of R^n has an orthogonal complement, hence given a k plane in R^n, and a number, we can pass to the orthogonal complement paired with the same number.this prthogonal dualization process is called cross products or hodge dual, or whatever you want in various contexts.in oriented three space a plane and a number thought of as an oriented area, passes to a line perpendicular to that plane, and that number thought of as an oriented area, i.e. A vector in that line. That is called 'cross product' of any two vectors in the original plane spanning the plane and spanniong a parallelogram with oriented area equal to the given number.in higher dimensions, the orthogonal complement of a k plane is an (n-k) plane, so the cross product of two vectors would be an (n-2) dimensional object.
It is simpler to just think of it as a 2 dimensional object, called the wedge product of the two vectors, i.e. Essentially the plane they span, plus the oriented area of the parallelogram they span.alternatively, one can take n-1 vectors instead of only 2, and say their cross product is the vector determined by the orthocomplement of the n-1 plane they span.
Implementation 1 returns the magnitude of the vector that would result from a regular 3D cross product of the input vectors, taking their Z values implicitly as 0 (i.e. Treating the 2D space as a plane in the 3D space).
The 3D cross product will be perpendicular to that plane, and thus have 0 X & Y components (thus the scalar returned is the Z value of the 3D cross product vector).Note that the magnitude of the vector resulting from 3D cross product is also equal to the area of the parallelogram between the two vectors, which gives Implementation 1 another purpose. In addition, this area is signed and can be used to determine whether rotating from V1 to V2 moves in an counter clockwise or clockwise direction. It should also be noted that implementation 1 is the determinant of the 2x2 matrix built from these two vectors.Implementation 2 returns a vector perpendicular to the input vector still in the same 2D plane. Not a cross product in the classical sense but consistent in the 'give me a perpendicular vector' sense.Note that 3D euclidean space is closed under the cross product operation-that is, a cross product of two 3D vectors returns another 3D vector. Both of the above 2D implementations are inconsistent with that in one way or another.Hope this helps. In short: It's a shorthand notation for a mathematical hack.Long explanation:You can't do a cross product with vectors in 2D space. The operation is not defined there.However, often it is interesting to evaluate the cross product of two vectors assuming that the 2D vectors are extended to 3D by setting their z-coordinate to zero.
This is the same as working with 3D vectors on the xy-plane.If you extend the vectors that way and calculate the cross product of such an extended vector pair you'll notice that only the z-component has a meaningful value: x and y will always be zero.That's the reason why the z-component of the result is often simply returned as a scalar. This scalar can for example be used to find the winding of three points in 2D space.From a pure mathematical point of view the cross product in 2D space does not exist, the scalar version is the hack and a 2D cross product that returns a 2D vector makes no sense at all. Implementation 1 is the perp dot product of the two vectors.
The best reference I know of for 2D graphics is the excellent series. If you're doing scratch 2D work, it's really important to have these books.
Volume IV has an article called 'The Pleasures of Perp Dot Products' that goes over a lot of uses for it.One major use of perp dot product is to get the scaled sin of the angle between the two vectors, just like the dot product returns the scaled cos of the angle. Of course you can use dot product and perp dot product together to determine the angle between two vectors.is a post on it and is the Wolfram Math World article.