# Gradient is covariant or contravariant?

I read somewhere people write gradient in covariant form because of their proposes. I think gradient expanded in covariant basis $$i$$, $$j$$, $$k$$, so by invariance nature of vectors, component of gradient must be in contravariant form. However we know by transformation properties and chain rule we find it is a covariant vector. What is wrong with my reasoning?

My second question is: if gradient has been written in covariant form, what is the contravariant form of gradient?

The gradient of $f$ is defined as the unique vector field whose dot product with any vector $v$ at each point $x$ is the directional derivative of $f$ along $v$.

A look at Theodore Frankel's The Geometry of Physics confirms this. Other posters have said that the components of the gradient of $f$ are given by $\partial_i f$; these are in fact the components of the differential of $f$, which is a covector. The gradient is this with the index raised.

Let's now calculate both sides of the expression from Wikipedia. The inner product of $\mathrm{grad}(f)$ with a vector $v$ is $$\mathrm{grad}(f)^{i} g_{i j} v^j =\mathrm{grad}(f)^i v_i.$$ The directional derivative of $f$ along $v$ is $$D_v f = v^i \partial_i f = g^{ij} \partial_i f ~v_j.$$ We can clearly identify $$\mathrm{grad}(f)^{i} = g^{ij} \partial_j f$$ or $$\mathrm{grad}f = g^{-1} \mathrm{d} f.$$

• Your post is true given your definition, but here's another true statement: On a coordinate patch $(x,y,\cdots)$, the list $(\partial_x f,\partial_y f,\cdots)$ transforms as the components of a one-form! IMO the most natural definitions for manifolds (the "true" definitions) are the ones that still have meaning even when no metric is defined, but your/wikipedia's definition makes use of the metric. I would argue that makes the definition not fundamental. – user12029 Jun 19 '16 at 14:32
• Yes, it is less fundamental than the differential. Anyway, it is very common for physicists to call this object the gradient (as seen in this thread). In physics, we virtually always have a metric, so it is more or less irrelevant. – ZachMcDargh Jun 20 '16 at 15:41

The components of a vector contravariant because they transform in the inverse (i.e. contra) way of the vector basis. It is customary to denote these components with an upper index. So, if your coordinates are called $q$'s, they are denoted $q^i$.

Therefore, the gradient (or a derivative if you prefer) is $$\partial_i = \frac{\partial}{\partial q^i},$$ which transform as the inverse of the component transformation ( 1 / contra-variant = co-variant ).

If you're still not convinced... try this!

• Propose a coordinate transformation -This is a transformation rule for the contravariant components- (e.g. from Cartesian to Polar)
• Use the chain rule to transform the derivative,
• Check that the transformation of the derivative is the inverse of the coordinate transformation.

Personal Note: Although the notation my homonym Oscar point out is correct [say $\partial^i$], I prefer to avoid it, because is not a derivative wrt the "real" coordinates. Please do not misunderstand my words... It is Ok to define that operator, but should be treated carefully!

Cheers! ;-)

• I like your answers regarding covariance and contravariance. You mentioned in some other post that you teach a class. Are the lecture notes posted online somewhere? Would love to take a look! – Constandinos Damalas Jul 21 '14 at 15:51
• @PhotonicBoom Unfortunately no! I've had no enough time to work on that... but it is in my todo list! In any case, you can find some academic material on my webpage sites.google.com/site/ocastillofelisola/Home/academic/methods (It is messy 'cause there are files I wrote as a student and the concepts were not matured). See for example GR00 – Dox Jul 21 '14 at 16:41
• @Dox- thank you for your answer. I know we can show the covariance nature of gradient components by using chain rule. But in fact my question is: Do you agree that if a vector expands by covariant bases, its components must transform in contravariance form, by the invariance nature of vector ? If so, gradient expanded by i, j, k (covariant bases), so its components are contravariant. Am I true ? – user27058 Jul 22 '14 at 13:11
• @aminliverpool Yes and No! Yes to your first comment "Do you agree that if a vector expands by covariant bases, its components must transform in contravariance form, by the invariance nature of vector?". But, No to the second "If so, gradient expanded by i, j, k (covariant bases), so its components are contravariant. Am I true?"... unfortunately, on Euclidean space there is no quantitative difference between co- and contra- variant components of a vector, so people tends to mix their rol. $i$, $j$ and $k$ are basis for contra-vector (not for co-vectors), they don't expand the gradient! :-) – Dox Jul 22 '14 at 13:26
• @Dox. Ok. Thank you. Is it possible for you, for an orthogonal coordinate system, write gradient in contravariance and covariance form ? – user27058 Jul 23 '14 at 15:03

Recall the integral definition of the gradient:

$$\nabla \varphi = \lim_{V \to 0} \frac{1}{V} \oint_{\partial V} \varphi \hat n \, dS$$

This should tell you the gradient's components transform the same way as those of the normal vector $\hat n$, which is known to have covariant components.

You can verify that the normal vector has covariant components by recalling that the normal can be defined through a cross product of tangent vectors (which have contravariant components; the cross product of true vectors is a pseudovector, which has covariant components), for instance.

• Thank you for your answer. I know we can show the covariance nature of gradient components by using chain rule. But in fact my question is: Do you agree that if a vector expands by covariant bases, its components must transform in contravariance form, by the invariance nature of vector ? If so, gradient expanded by i, j, k (covariant bases), so its components are contravariant. Am I true ? – user27058 Jul 22 '14 at 13:13
• The Cartesian bases are the same whether they're covariant or contravariant, so I don't see how you can draw a conclusion from that. – Muphrid Jul 22 '14 at 14:41
• Thank you for your attention. Is it possible for you, for an orthogonal coordinate system, write gradient in contravariance and covariance form ? – user27058 Jul 23 '14 at 15:05
• Sorry, I don't understand what you're asking me to do. – Muphrid Jul 23 '14 at 15:11
• Excuse me. I should say for a "nonorthogonal coordinate system" instead of "orthogonal system". Do you agree gradient is a vector, so it can expanded by basis vectors? Ok. I want you in a nonorthogonal coordinate system, you expand gradient both in contravariance form(that is expanded by covariant basis) and covariance form (that is expanded by contavariant basis). – user27058 Jul 24 '14 at 3:16

A covariant vector is commonly a vector whose components are written with downstairs" index, like $x_{\mu}$. Now, the gradient is defined as $\partial_\mu := \dfrac{\partial}{\partial x^\mu}$. As you can see the covariant vector $\partial_\mu$ is the derivative with respect to the contravariant vector $x^\mu$. the contravariant form of $\partial_\mu$ is $\partial^\mu := g^{\mu\nu}\partial_\nu$ - and in case the metric is constant $\partial^\mu = \frac{\partial}{\partial x_\mu}$.

Sometimes the vector $\partial_\mu$ is used to indicate a coordinate basis of the tangent vector space in some point of a manifold. In that case the index $\mu$ is not the index of the component (that for a vector should be upstairs), but it indicates the $\mu$th vector of the basis.

• Thank you for your attention. Do you agree with me that covariant gradient expanded by covariant basis i, j, k ? – user27058 Jul 16 '14 at 14:24

Gradient is covariant. Let's consider gradient of a scalar function. The reason is that such a gradient is the difference of the function per unit distance in the direction of the basis vector.

We often treat gradient as usual vector because we often transform from one orthonormal basis into another orthonormal basis. And in this case matrix transpose and inverse are the same.

Let $E, E'$ be matrices of basis vectors and $A$ be the transformation matrix between them.

$$(E')^T = \begin{bmatrix} \hat{e}'_1 & \hat{e}'_2 & \vdots & \hat{e}'_n \end{bmatrix} = A \begin{bmatrix} \hat{e}_1 \\ \hat{e}_2 \\ \dots \\ \hat{e}_n \end{bmatrix} = A\ E$$

Let $\hat{v}, \hat{v}'$ be vectors in respective bases. Then $$\label{1} \tag{1} \hat{v} = v^i\hat{e}_i = E^T\begin{bmatrix}v_1\\v_2\\ \vdots \\v_n\end{bmatrix}$$ $$\label{2} \tag{2} \hat{v}' = v^i\hat{e}'_i = (E')^T\begin{bmatrix}v'_1\\v'_2\\ \vdots \\v'_n\end{bmatrix} = (A\ E)^T\begin{bmatrix}v'_1\\v'_2\\ \vdots \\v'_n\end{bmatrix} = E^TA^T\begin{bmatrix}v'_1\\v'_2\\ \vdots \\v'_n\end{bmatrix}$$ From $\ref{1}$ and $\ref{2}$ we have: $$A^T\hat{v}' = \hat{v}$$ and finally $$\boxed{\hat{v}' = (A^T)^{-1}\hat{v}}$$

I'll offer a simple explanation that relies only on the slope.

Suppose we have a line with slope 5, so for every 5 units up there corresponds one unit to the right. Now let us dilate the y axis by 3, that is, the spaces between each increment of 1 is now 3 times larger. In order for our slope to be invariant (equal 5), the slope's y component must also dilate by a factor of 3, that is, co-vary with the y axis.