---
title: "Curvilinear coordinates"
firstLetter: "C"
publishDate: 2021-03-03
categories:
- Mathematics
- Physics
date: 2021-03-03T19:47:34+01:00
draft: false
markup: pandoc
---
# Curvilinear coordinates
In a 3D coordinate system, the isosurface of a coordinate
(i.e. the surface where that coordinate is constant while the others vary)
is known as a **coordinate surface**, and the intersections of
the surfaces of different coordinates are called **coordinate lines**.
A **curvilinear** coordinate system is one where at least one of the coordinate surfaces is curved,
e.g. in cylindrical coordinates the line between $r$ and $z$ is a circle.
If the coordinate surfaces are mutually perpendicular,
it is an **orthogonal** system, which is generally desirable.
A useful attribute of a coordinate system is its **line element** $\dd{\ell}$,
which represents the differential element of a line in any direction.
For an orthogonal system, its square $\dd{\ell}^2$ is calculated
by taking the differential elements of the old Cartesian $(x, y, z)$ system
and writing them out in the new $(x_1, x_2, x_3)$ system.
The resulting expression will be of the form:
$$\begin{aligned}
\boxed{
\dd{\ell}^2
= \dd{x}^2 + \dd{y}^2 + \dd{z}^2
= h_1^2 \dd{x_1}^2 + h_2^2 \dd{x_2}^2 + h_3^2 \dd{x_3}^2
}
\end{aligned}$$
Where $h_1$, $h_2$, and $h_3$ are called **scale factors**,
and need not be constants.
The equation above only contains quadratic terms
because the coordinate system is orthogonal by assumption.
Examples of orthogonal curvilinear coordinate systems include
[spherical coordinates](/know/concept/spherical-coordinates/),
cylindrical coordinates,
and [parabolic cylindrical coordinates](/know/concept/parabolic-cylindrical-coordinates/).
In the following subsections,
we derive general formulae to convert expressions
from Cartesian coordinates to the new orthogonal system $(x_1, x_2, x_3)$.
## Basis vectors
Consider the the vector form of the line element $\dd{\ell}$,
denoted by $\dd{\vu{\ell}}$ and expressed as:
$$\begin{aligned}
\dd{\vu{\ell}}
= \vu{e}_x \dd{x} + \vu{e}_y \dd{y} + \vu{e}_z \dd{z}
\end{aligned}$$
We can expand the Cartesian differential elements, e.g. $\dd{y}$,
in the new basis as follows:
$$\begin{aligned}
\dd{y}
= \pdv{y}{x_1} \dd{x_1} + \pdv{y}{x_2} \dd{x_2} + \pdv{y}{x_3} \dd{x_3}
\end{aligned}$$
If we write this out for $\dd{x}$, $\dd{y}$ and $\dd{z}$,
and group the terms according to $\dd{x}_1$, $\dd{x}_2$ and $\dd{x}_3$,
we can compare it the alternative form of $\dd{\vu{\ell}}$:
$$\begin{aligned}
\dd{\vu{\ell}}
= \vu{e}_1 \:h_1 \dd{x_1} + \vu{e}_2 \:h_2 \dd{x_2} + \vu{e}_3 \:h_3 \dd{x_4}
\end{aligned}$$
From this, we can read off $\vu{e}_1$, $\vu{e}_2$ and $\vu{e}_3$.
Here we only give $\vu{e}_1$, since $\vu{e}_2$ and $\vu{e}_3$ are analogous:
$$\begin{aligned}
\boxed{
h_1 \vu{e}_1
= \vu{e}_x \pdv{x}{x_1} + \vu{e}_y \pdv{y}{x_1} + \vu{e}_z \pdv{y}{x_1}
}
\end{aligned}$$
## Gradient
In an orthogonal coordinate system,
the gradient $\nabla f$ of a scalar $f$ is as follows,
where $\vu{e}_1$, $\vu{e}_2$ and $\vu{e}_3$
are the basis unit vectors respectively corresponding to $x_1$, $x_2$ and $x_3$:
$$\begin{gathered}
\boxed{
\nabla f
= \vu{e}_1 \frac{1}{h_1} \pdv{f}{x_1}
+ \vu{e}_2 \frac{1}{h_2} \pdv{f}{x_2}
+ \vu{e}_3 \frac{1}{h_3} \pdv{f}{x_3}
}
\end{gathered}$$
For a direction $\dd{\ell}$, we know that
$\dv*{f}{\ell}$ is the component of $\nabla f$ in that direction:
$$\begin{aligned}
\dv{f}{\ell}
= \pdv{f}{x} \dv{x}{\ell} + \pdv{f}{y} \dv{y}{\ell} + \pdv{f}{z} \dv{z}{\ell}
= \nabla f \cdot \bigg( \dv{x}{\ell}, \dv{y}{\ell}, \dv{z}{\ell} \bigg)
= \nabla f \cdot \vu{u}
\end{aligned}$$
Where $\vu{u}$ is simply a unit vector in the direction of $\dd{\ell}$.
We thus find the expression for the gradient $\nabla f$
by choosing $\dd{\ell}$ to be $h_1 \dd{x_1}$, $h_2 \dd{x_2}$ and $h_3 \dd{x_3}$ in turn:
$$\begin{gathered}
\nabla f
= \vu{e}_1 \dv{x_1}{\ell} \pdv{f}{x_1}
+ \vu{e}_2 \dv{x_2}{\ell} \pdv{f}{x_2}
+ \vu{e}_3 \dv{x_3}{\ell} \pdv{f}{x_3}
\end{gathered}$$
## Divergence
The divergence of a vector $\vb{V} = \vu{e}_1 V_1 + \vu{e}_2 V_2 + \vu{e}_3 V_3$
in an orthogonal system is given by:
$$\begin{aligned}
\boxed{
\nabla \cdot \vb{V}
= \frac{1}{h_1 h_2 h_3}
\Big( \pdv{(h_2 h_3 V_1)}{x_1} + \pdv{(h_1 h_3 V_2)}{x_2} + \pdv{(h_1 h_2 V_3)}{x_3} \Big)
}
\end{aligned}$$
As preparation, we rewrite $\vb{V}$ as follows
to introduce the scale factors:
$$\begin{aligned}
\vb{V}
&= \vu{e}_1 \frac{1}{h_2 h_3} (h_2 h_3 V_1)
+ \vu{e}_2 \frac{1}{h_1 h_3} (h_1 h_3 V_2)
+ \vu{e}_3 \frac{1}{h_1 h_2} (h_1 h_2 V_3)
\end{aligned}$$
We start by taking only the $\vu{e}_1$-component of this vector,
and expand its divergence using the following vector identity:
$$\begin{gathered}
\nabla \cdot (\vb{U} \: f)
= \vb{U} \cdot (\nabla f) + (\nabla \cdot \vb{U}) \: f
\end{gathered}$$
Inserting the scalar $f = h_2 h_3 V_1$
the vector $\vb{U} = \vu{e}_1 / (h_2 h_3)$,
we arrive at:
$$\begin{gathered}
\nabla \cdot \Big( \frac{\vu{e}_1}{h_2 h_3} (h_2 h_3 V_1) \Big)
= \frac{\vu{e}_1}{h_2 h_3} \cdot \Big( \nabla (h_2 h_3 V_1) \Big)
+ \Big( \nabla \cdot \frac{\vu{e}_1}{h_2 h_3} \Big) (h_2 h_3 V_1)
\end{gathered}$$
The first right-hand term is easy to calculate
thanks to our expression for the gradient $\nabla f$.
Only the $\vu{e}_1$-component survives due to the dot product:
$$\begin{aligned}
\frac{\vu{e}_1}{h_2 h_3} \cdot \Big( \nabla (h_2 h_3 V_1) \Big)
= \frac{\vu{e}_1}{h_1 h_2 h_3} \pdv{(h_2 h_3 V_1)}{x_1}
\end{aligned}$$
The second term is more involved.
First, we use the gradient formula to observe that:
$$\begin{aligned}
\nabla x_1
= \frac{\vu{e}_1}{h_1}
\qquad \quad
\nabla x_2
= \frac{\vu{e}_2}{h_2}
\qquad \quad
\nabla x_3
= \frac{\vu{e}_3}{h_3}
\end{aligned}$$
Because $\vu{e}_2 \cross \vu{e}_3 = \vu{e}_1$ in an orthogonal basis,
these gradients can be used to express the vector whose divergence we want:
$$\begin{aligned}
\nabla x_2 \cross \nabla x_3
= \frac{\vu{e}_2}{h_2} \cross \frac{\vu{e}_3}{h_3}
= \frac{\vu{e}_1}{h_2 h_3}
\end{aligned}$$
We then apply the divergence and expand the expression using a vector identity.
In all cases, the curl of a gradient $\nabla \cross \nabla f$ is zero, so:
$$\begin{aligned}
\nabla \cdot \frac{\vu{e}_1}{h_2 h_3}
= \nabla \cdot \big( \nabla x_2 \cross \nabla x_3 \big)
= \nabla x_3 \cdot (\nabla \cross \nabla x_2) - \nabla x_2 \cdot (\nabla \cross \nabla x_3)
= 0
\end{aligned}$$
After repeating this procedure for the other components of $\vb{V}$,
we get the desired general expression for the divergence.
## Laplacian
The Laplacian $\nabla^2 f$ is simply $\nabla \cdot \nabla f$,
so we can find the general formula
by combining the two preceding results
for the gradient and the divergence:
$$\begin{aligned}
\boxed{
\nabla^2 f
= \frac{1}{h_1 h_2 h_3}
\bigg(
\pdv{x_1} \Big(\! \frac{h_2 h_3}{h_1} \pdv{f}{x_1} \!\Big)
+ \pdv{x_2} \Big(\! \frac{h_1 h_3}{h_2} \pdv{f}{x_2} \!\Big)
+ \pdv{x_3} \Big(\! \frac{h_1 h_2}{h_3} \pdv{f}{x_3} \!\Big)
\bigg)
}
\end{aligned}$$
## Curl
The curl of a vector $\vb{V}$ is as follows
in a general orthogonal curvilinear system:
$$\begin{aligned}
\boxed{
\begin{aligned}
\nabla \times \vb{V}
&= \frac{\vu{e}_1}{h_2 h_3} \Big( \pdv{(h_3 V_3)}{x_2} - \pdv{(h_2 V_2)}{x_3} \Big)
\\
&+ \frac{\vu{e}_2}{h_1 h_3} \Big( \pdv{(h_1 V_1)}{x_3} - \pdv{(h_3 V_3)}{x_1} \Big)
\\
&+ \frac{\vu{e}_3}{h_1 h_2} \Big( \pdv{(h_2 V_2)}{x_1} - \pdv{(h_1 V_1)}{x_2} \Big)
\end{aligned}
}
\end{aligned}$$
The curl is found in a similar way as the divergence.
We rewrite $\vb{V}$ like so:
$$\begin{aligned}
\vb{V}
= \frac{\vu{e}_1}{h_1} (h_1 V_1) + \frac{\vu{e}_2}{h_2} (h_2 V_2) + \frac{\vu{e}_3}{h_3} (h_3 V_3)
\end{aligned}$$
We expand the curl of its $\vu{e}_1$-component using the following vector identity:
$$\begin{gathered}
\nabla \cross (\vb{U} \: f)
= (\nabla \cross \vb{U}) \: f - \vb{U} \cross (\nabla f)
\end{gathered}$$
Inserting the scalar $f = h_1 V_1$
and the vector $\vb{U} = \vu{e}_1 / h_1$, we arrive at:
$$\begin{gathered}
\nabla \cross \Big( \frac{\vu{e}_1}{h_1} (h_1 V_1) \Big)
= \Big( \nabla \cross \frac{\vu{e}_1}{h_1} \Big) (h_1 V_1) - \frac{\vu{e}_1}{h_1} \cross \Big( \nabla (h_1 V_1) \Big)
\end{gathered}$$
Previously, when proving the divergence,
we already showed that $\vu{e}_1 / h_1 = \nabla x_1$.
Because the curl of a gradient is zero,
the first term disappears, leaving only the second,
which contains a gradient that turns out to be:
$$\begin{aligned}
\nabla (h_1 V_1)
= \vu{e}_1 \frac{1}{h_1} \pdv{(h_1 V_1)}{x_1}
+ \vu{e}_2 \frac{1}{h_2} \pdv{(h_1 V_1)}{x_2}
+ \vu{e}_3 \frac{1}{h_3} \pdv{(h_1 V_1)}{x_3}
\end{aligned}$$
Consequently, the curl of the first component of $\vb{V}$ is as follows,
using the fact that $\vu{e}_1$, $\vu{e}_2$ and $\vu{e}_3$
are related to each other by cross products:
$$\begin{aligned}
\nabla \cross \Big( \frac{\vu{e}_1}{h_1} (h_1 V_1) \Big)
= - \frac{\vu{e}_1}{h_1} \cross \Big( \nabla (h_1 V_1) \Big)
= - \frac{\vu{e}_3}{h_1 h_2} \pdv{(h_1 V_1)}{x_2} + \frac{\vu{e}_2}{h_1 h_3} \pdv{(h_1 V_1)}{x_3}
\end{aligned}$$
If we go through the same process for the other components of $\vb{V}$
and add up the results, we get the desired expression for the curl.
## Differential elements
The point of the scale factors $h_1$, $h_2$ and $h_3$, as can seen from their derivation,
is to correct for "distortions" of the coordinates compared to the Cartesian system,
such that the line element $\dd{\ell}$ retains its length.
This property extends to the surface $\dd{S}$ and volume $\dd{V}$.
When handling a differential volume in curvilinear coordinates,
e.g. for a volume integral,
the size of the box $\dd{V}$ must be corrected by the scale factors:
$$\begin{aligned}
\boxed{
\dd{V}
= \dd{x}\dd{y}\dd{z}
= h_1 h_2 h_3 \dd{x_1} \dd{x_2} \dd{x_3}
}
\end{aligned}$$
The same is true for the isosurfaces $\dd{S_1}$, $\dd{S_2}$ and $\dd{S_3}$
where the coordinates $x_1$, $x_2$ and $x_3$ are respectively kept constant:
$$\begin{aligned}
\boxed{
\begin{aligned}
\dd{S_1} &= h_2 h_3 \dd{x_2} \dd{x_3}
\\
\dd{S_2} &= h_1 h_3 \dd{x_1} \dd{x_3}
\\
\dd{S_3} &= h_1 h_2 \dd{x_1} \dd{x_2}
\end{aligned}
}
\end{aligned}$$
Using the same logic, the normal vector element $\dd{\vu{S}}$
of an arbitrary surface is given by:
$$\begin{aligned}
\boxed{
\dd{\vu{S}}
= \vu{e}_1 h_2 h_3 \dd{x_2} \dd{x_3} + \vu{e}_2 h_1 h_3 \dd{x_1} \dd{x_3} + \vu{e}_3 h_1 h_2 \dd{x_1} \dd{x_2}
}
\end{aligned}$$
Finally, the tangent vector element $\dd{\vu{\ell}}$ takes the following form:
$$\begin{aligned}
\boxed{
\dd{\vu{\ell}}
= \vu{e}_1 h_1 \dd{x_1} + \vu{e}_2 h_2 \dd{x_2} + \vu{e}_3 h_3 \dd{x_3}
}
\end{aligned}$$
## References
1. M.L. Boas,
*Mathematical methods in the physical sciences*, 2nd edition,
Wiley.