Skip to main content
Mathematics
GEOMETRY · VECTORS

Dot product & cross product

These are two defined operations on vectors. They are not ordinary multiplication, and their properties follow their definitions. We choose them because they capture useful geometry: alignment, area and orientation. No component formulas are needed on this page.

01Multiply a signed projection by a length.

Start with two nonparallel vectors u and v. |u| and |v| mean their lengths; θ is the angle between them, from 0° to 180°. Select either projection direction and play.

θuvOPurple segment = signed projection; dashed line is perpendicular.
0%
55°
2.2
1.8

A projection is the component along a chosen direction: drop a perpendicular onto that line. Start with an acute angle, then try an obtuse angle. We use a signed component, so a projection pointing opposite the chosen direction is negative.

proj. component=∣v∣cos⁡θ\text{proj. component}=|v|\cos\theta
∣u∣(∣v∣cos⁡θ)=2.2(1.032)=2.271|u|(|v|\cos\theta)=2.2(1.032)=2.271
Multiply the signed projected component by the length of the vector receiving the projection. The result is one number: a scalar.
v onto u, then × |u|1.032 × 2.2 = 2.271
u onto v, then × |v|1.262 × 1.8 = 2.271
u⋅v=∣u∣(∣v∣cos⁡θ)=∣v∣(∣u∣cos⁡θ)=v⋅uu\cdot v=|u|(|v|\cos\theta)=|v|(|u|\cos\theta)=v\cdot u

Both constructions multiply the same three numbers, so reversing the order gives the same scalar. This operation is the dot product; the centered dot · names the operation.

02A different product: a perpendicular vector.

Now enter three-dimensional space. Two linearly independent vectors are nonparallel; together they determine a plane. The cross product is a vector perpendicular to that plane, with a magnitude equal to their parallelogram area.

Drag the scene to orbit. Teal u and orange v lie in the same plane. Purple is the cross product, perpendicular to that plane. Here |u|=2 and |v|=1.5.

Parallelogram area2.598
Cross-product magnitude2.598
60.0°
u×v=∣u∣ ∣v∣sin⁡θ n^u\times v=|u|\,|v|\sin\theta\,\hat n
v×u=−(u×v)v\times u=-(u\times v)

n̂ means a unit normal: length 1 and perpendicular to the plane. Multiplying it by |u||v|sinθ gives the cross product its magnitude. Of the two possible normal directions, the right-hand rule selects one.

Two nonparallel vectors span a plane: all combinations of their directions lie in it. The cross product points out of this plane.
Index → uMiddle → vThumb → u × v

Use your RIGHT hand. Order matters.

This hand demonstrates the 90° example: the index finger follows the first vector, the middle finger the second, and the thumb the cross product. Rotate the hand on screen to inspect the three directions. Swapping the order above rotates the same right hand so its thumb reverses.

For angles strictly between 0° and 180°, use the curl version: curl your right-hand fingers from the first vector towards the second through the smaller angle; your thumb gives the normal direction. The hand indicates direction, not vector magnitude.

θOVH|u| = 2|v| = 1.5h = 1.229STEP 1 / 4 · Drop a perpendicularA = 2.457
0%

Why is the magnitude an area?

Choose u as the base. From the tip of v, draw a line perpendicular to the base. Its foot is H; the vertical distance VH is the height h.

VH=hVH=h
55°

This construction has its own angle control. Change the angle: the sloping side stays 1.5 long, while its vertical height changes.

03Two different ways to get zero.

Assume both input vectors are nonzero. A zero dot product means perpendicularity; a zero cross product means collinearity.

Dot product: perpendicular

θ=90∘⇒cos⁡θ=0⇒u⋅v=0\theta=90^\circ\Rightarrow \cos\theta=0\Rightarrow u\cdot v=0

Neither vector has a component along the other. The signed projection has zero length.

Cross product: collinear

θ=0∘ or 180∘⇒sin⁡θ=0⇒u×v=0\theta=0^\circ\text{ or }180^\circ\Rightarrow\sin\theta=0\Rightarrow u\times v=\mathbf0

The parallelogram collapses to a line, leaving no area. Same and opposite directions both give the zero vector.

If either input is the zero vector, both products are zero, but the angle of that vector is undefined. This is why the angle-based statements above specify nonzero inputs.

Stop here for now. Component calculations using unit vectors will be introduced in a later lesson.