Tensor Calculus & Differential Geometry

contravariant and covariant components

Pick any vector and try to describe it with numbers. You need a frame — a set of basis directions — and the numbers are the vector's components in that frame. But there are two natural ways to read off components, and in a skewed or curved frame they disagree. One way drops the vector onto the basis directions by parallel projection (how many of each basis arrow you stack to build the vector); the other reads off perpendicular shadows onto the basis directions. These give the contravariant components and the covariant components, written with upper and lower indices respectively.

The deeper reason there are two kinds is that they belong to two different (but linked) species of object. Contravariant components v^i go with ordinary vectors — displacements, velocities, arrows — and they transform oppositely to the basis: if you shrink your ruler (smaller basis vectors), the numbers must grow to describe the same arrow, hence 'contra'. Covariant components v_i go with covectors — gradients, planes of constant value, things that eat a vector and return a number — and they transform the same way as the basis ('co'). In an orthonormal Cartesian frame the two sets of numbers happen to coincide, which is why elementary courses never distinguish them; but the moment the basis is non-orthonormal or position-dependent (polar, spherical, curved spacetime) they split apart. The metric tensor g_{ij} is precisely the dictionary between them: v_i = g_{ij} v^j lowers an index, and its inverse raises one.

This distinction is the backbone of tensor calculus. The gradient of a scalar is naturally covariant (its components are partial derivatives, which transform like the basis), while a position displacement is naturally contravariant; a contraction that pairs one up with one down, like v^i w_i, produces a coordinate-independent number — a real geometric scalar. Forgetting which kind you are holding is the classic beginner error: in flat space you get away with it, but in curved space or non-Cartesian coordinates it produces wrong formulas, because raising and lowering with the metric is no longer a do-nothing operation.

In 2-D with a skewed basis where the two basis vectors meet at 60 degrees, a single arrow has contravariant components (the amounts of each basis arrow you add) that differ from its covariant components (its perpendicular projections onto each basis direction). Only in the orthonormal Cartesian frame, where g_{ij} is the identity, do v^i and v_i hold the same numbers — there raising or lowering does nothing.

Two ways to read components agree only when the basis is orthonormal — the metric measures the gap.

Contravariant versus covariant is a property of components in a chosen basis, not of the abstract arrow; the same physical vector has both kinds of components at once. The names 'co/contra' describe how the numbers move relative to the basis under a coordinate change, nothing more mystical.

Also called
upper and lower componentsvector and covector components上指标与下指标分量上指標與下指標分量