Understanding Dot and Cross Product

When you deal with vectors, sometimes you say to yourself, "Darn I wish there was a function that..."

  • was zero when two vectors are perpendicular, letting me test perpendicularness."

    Dot Product

  • would let me find the angle between two vectors."

    Dot Product (actually gives the cosine of the angle between two normalized vectors)

  • would let me 'project' one vector onto another, or give the length of one vector in the direction of another."

    Dot Product

  • could tell me how much force is actually helping the object move, when pushing at an angle."

    Dot Product

  • could tell me how much a vector field is 'spreading out'."

    Cross Product

  • could give me a vector that is perpendicular to two other vectors."

    Cross Product

  • could tell me how much torque a force was applying to a rotating system."

    Cross Product

  • could tell me how much this vector field is 'curling' up."

    Cross Product

There are actually a lot more uses, but the more I study vectors, the more and more I run into a situation where I need a function to do exactly something, and then realize that the cross/dot products already did exactly what I needed!


The dot product can be used to find the length of a vector or the angle between two vectors.

The cross product is used to find a vector which is perpendicular to the plane spanned by two vectors.


Two more uses that I haven't seen mentioned yet: if you want to find the area of the parallelogram formed by two vectors (each vector gives a pair of parallel sides), then you would use the magnitude of the cross product of the two vectors.

One use of this is to aid in defining a surface integral. Let x(u,v) be a parameterization of a surface. Then at each point, we can find tangent vectors Tu = ∂x/∂u and Tv = ∂x/∂v. From the idea of a linear approximation, Tu and Tv will define a tangent plane at that particular point. Consider the parallelogram formed with Tu and Tv as sides. Informally, we can see that each area element will be |Tu x Tv| du dv. Then a function f(u,v) integrated over this surface is ∫∫ f(u,v) |Tu x Tv| du dv.

As for the second use, if you wanted to find the volume of the parallelepiped having the three vectors a, b, c as sides, then you would use the magnitude of the scalar triple product |a ⋅ (b x c)|.


If you want me to name 2 concepts that are used in engineering calculations so frequently, they will be dot and cross products.There are several interpretations of the dot and cross product and can be applied in various scenarios: Angle between vectors, Projection of one vector in the direction of another as mentioned in the above posts.

Going a few steps above, interesting facts to remember are that the cross product of two vectors can be written as the product of a matrix(skew symmetric) and a vector.The norm of a cross product can be expressed as a determinant. The triple product of three vectors namely a.(b$\times$c) represents the area of a parallelopiped and this triple product can also be written as a determinant.This useful fact can be used to prove collinearity of 3 points (of course after representing/considering them as vectors)