# Orthogonal coordinates

In mathematics, orthogonal coordinates are defined as a set of d coordinates q = (q1, q2, ..., qd) in which the coordinate surfaces all meet at right angles (note: superscripts are indices, not exponents). A coordinate surface for a particular coordinate qk is the curve, surface, or hypersurface on which qk is a constant. For example, the three-dimensional Cartesian coordinates (x, y, z) is an orthogonal coordinate system, since its coordinate surfaces x=constant, y=constant, and z=constant are planes that meet at right angles to one another, i.e., are perpendicular. Orthogonal coordinates are a special but extremely common case of curvilinear coordinates.

While vector operations and physical laws are normally easiest to derive in Cartesian coordinates, non-Cartesian orthogonal coordinates are often used instead for the solution of various problems, especially boundary value problems, such as those arising in field theories of quantum mechanics, fluid flow, electrodynamics and the diffusion of chemical species or heat.

The chief advantage of non-Cartesian coordinates is that they can be chosen to match the symmetry of the problem. For example, the pressure wave due to an explosion far from the ground (or other barriers) depends on 3D space in Cartesian coordinates, however the pressure predominantly moves away from the center, so that in spherical coordinates the problem becomes very nearly one dimensional (since the pressure wave dominantly depends only on time and the distance from the epicenter). Another example is (slow) fluid in a straight circular pipe: in Cartesian coordinates, one has to solve a (difficult) two dimensional boundary value problem involving a partial differential equation, but in cylindrical coordinates the problem becomes one dimensional with an ordinary differential equation instead of a partial differential equation.

The reason to prefer orthogonal coordinates instead of general curvilinear coordinates is simplicity: many complications arise when coordinates are not orthogonal. For example, in orthogonal coordinates many problems may be solved by separation of variables. Separation of variables is a mathematical technique that converts a complex d-dimensional problem into d one-dimensional problems that can be solved in terms of known functions. Many equations can be reduced to Laplace's equation or the Helmholtz equation. Laplace's equation is separable in 13 orthogonal coordinate systems, and the Helmholtz equation is separable in 11 orthogonal coordinate systems.[1][2]

Orthogonal coordinates never have off-diagonal terms in their metric tensor. In other words, the infinitesimal squared distance ds2 can always be written as a scaled sum of the squared infinitesimal coordinate displacements

$ds^{2} = \sum_{k=1}^{d} \left( h_{k} dq^{k} \right)^{2}$

where d is the dimension and the scaling functions (or scale factors)

$h_{k}(\mathbf{q})\ \stackrel{\mathrm{def}}{=}\ \sqrt{g_{kk}(\mathbf{q})} = |\mathbf e_k|$
A conformal map acting on a rectangular grid. Note that the orthogonality of the curved grid is retained.

equal the square roots of the diagonal components of the metric tensor, or the lengths of the local basis vectors $\mathbf e_k$ described below. These scaling functions hi are used to calculate differential operators in the new coordinates, e.g., the gradient, the Laplacian, the divergence and the curl.

A simple method for generating orthogonal coordinates systems in two dimensions is by a conformal mapping of a standard two-dimensional grid of Cartesian coordinates (x, y). A complex number z = x + iy can be formed from the real coordinates x and y, where i represents the square root of -1. Any holomorphic function w = f(z) with non-zero complex derivative will produce a conformal mapping; if the resulting complex number is written w = u + iv, then the curves of constant u and v intersect at right angles, just as the original lines of constant x and y did.

Orthogonal coordinates in three and higher dimensions can be generated from an orthogonal two-dimensional coordinate system, either by projecting it into a new dimension (cylindrical coordinates) or by rotating the two-dimensional system about one of its symmetry axes. However, there are other orthogonal coordinate systems in three dimensions that cannot be obtained by projecting or rotating a two-dimensional system, such as the ellipsoidal coordinates. More general orthogonal coordinates may be obtained by starting with some necessary coordinate surfaces and considering their orthogonal trajectories.

## Basis vectors

In Cartesian coordinates, the basis vectors are fixed (constant). In the more general setting of curvilinear coordinates, a point in space is specified by the coordinates, and at every such point there is bound a set of basis vectors, which generally are not constant: this is the essence of curvilinear coordinates in general and is a very important concept. What distinguishes orthogonal coordinates is that, though the basis vectors vary, they are always orthogonal with respect to each other. In other words,

$\mathbf e_i \cdot \mathbf e_j = 0 \quad \mbox{if} \quad i \neq j$

These basis vectors are by definition the tangent vectors of the curves obtained by varying one coordinate, keeping the others fixed:

Visualization of 2D orthogonal coordinates. Curves obtained by holding all but one coordinate constant are shown, along with basis vectors. Note that the basis vectors aren't of equal length: they need not be, they only need to be orthogonal.
$\mathbf e_i = \frac{\partial \mathbf r}{\partial q^i}$

where $\mathbf r$ is some point and $q^i$ is the coordinate for which the basis vector is extracted. In other words, a curve is obtained by fixing all but one coordinate; the unfixed coordinate is varied as in a parametric curve, and the derivative of the curve with respect to the parameter (the varying coordinate) is the basis vector for that coordinate.

Note that the vectors are not necessarily of equal length. The normalized basis vectors are notated with a hat and obtained by dividing by the length:

$\hat \mathbf e_i = \frac{\mathbf e_i}{\left|\mathbf e_i\right|}$

A vector field may be specified by its components with respect to the basis vectors or the normalized basis vectors, one must be sure which case is dealt. Components in the normalized basis are most common in applications for clarity of the quantities (for example, one may want to deal with tangential velocity instead of tangential velocity times a scale factor); in derivations the normalized basis is less common since it is more complicated.

The useful functions known as scale factors (sometimes called Lamé coefficients, this should be avoided since some more well known coefficients in linear elasticity carry the same name) of the coordinates are simply the lengths of the basis vectors:

$h_i = \left|\mathbf e_i\right|$

### Contravariant basis

The basis vectors shown above are covariant basis vectors (because they "co-vary" with vectors). In the case of orthogonal coordinates, the contravariant basis vectors are easy to find since they will be in the same direction as the covariant vectors but reciprocal length(for this reason, the two sets of basis vectors are said to be reciprocal with respect to each other):

$\mathbf e^i = \frac{\hat \mathbf e_i}{h_i} = \frac{\mathbf e_i}{h_i^2}$

this follows from the fact that, by definition, $\mathbf e_i \cdot \mathbf e^j = \delta^j_i$, using the Kronecker delta. Note that:

$\hat \mathbf e_i = \frac{\mathbf e_i}{h_i} = h_i \mathbf e^i = \hat \mathbf e^i$

We now face three different basis sets commonly used to describe vectors in orthogonal coordinates: the covariant basis $\mathbf e_i$, the contravariant basis $\mathbf e^i$, and the normalized basis $\hat \mathbf e_i$. While a vector is an objective quantity, meaning its identity is independent of any coordinate system, the components of a vector depend on what basis the vector is represented in.

To avoid some confusion, the components of a vector $\mathbf x$ take the following notation:

$\mathbf x = \sum x^i e_i = \sum x_i e^i$

so that the position of the indices represent how the components are calculated (not to be confused with exponentiation). Note that the summation symbols, indicating summation over all basis vectors ($i = 1, 2, ... d$) are often omitted. The components are related simply by:

$h_i^2 x^i = x_i\,$

There is no distinguishing widespread notation in use for vector components with respect to the normalized basis; in this article we'll use subscripts for vector components and note that the components are calculated in the normalized basis.

## Vector algebra

Vector addition and negation are done component-wise just as in Cartesian coordinates with no complication. Extra considerations may be necessary for other vector operations.

Note however, that all of these operations assume that two vectors in a vector field are bound to the same point (in other words, the tails of vectors coincide). Since basis vectors generally vary in orthogonal coordinates, if two vectors are added whose components are calculated at different points in space, the different basis vectors require consideration.

### Dot product

The dot product in Cartesian coordinates (Euclidean space with an orthonormal basis set) is simply the sum of the products of components. In orthogonal coordinates, the dot product of two vectors $\mathbf x$ and $\mathbf y$ takes this familiar form when the components of the vectors are calculated in the normalized basis:

$\mathbf x \cdot \mathbf y = \sum x_i \hat \mathbf e_i \cdot \sum y_i \hat \mathbf e_i = \sum x_i y_i$

This is an immediate consequence of the fact that the normalized basis at some point can form a Cartesian coordinate system: the basis set is orthonormal.

For components in the covariant or contraviant bases,

$\mathbf x \cdot \mathbf y = \sum h_i^2 x^i y^i = \sum \frac{x_i y_i}{h_i^2} = \sum x^i y_i = \sum x_i y^i$

This can be readily derived by writing out the vectors in component form, normalizing the basis vectors, and taking the dot product. For example, in 2D:

$\mathbf x \cdot \mathbf y = \left(x^1 \mathbf e_1 + x^2 \mathbf e_2\right) \cdot \left(y_1 \mathbf e^1 + y_2 \mathbf e^2\right) = \left(x^1 h_1 \hat \mathbf e_1 + x^2 h_2 \hat \mathbf e_2\right) \cdot \left(y_1 \frac{\hat \mathbf e^1}{h_1} + y_2 \frac{\hat \mathbf e^2}{h_2}\right) = x^1 y_1 + x ^2 y_2$

where the fact that the normalized covariant and contravariant bases are equal has been used.

### Cross product

The cross product in 3D Cartesian coordinates is:

$\mathbf x \times \mathbf y = (x_2 y_3 - x_3 y_2) \hat \mathbf e_1 + (x_3 y_1 - x_1 y_3) \hat \mathbf e_2 + (x_1 y_2 - x_2 y_1) \hat \mathbf e_3$

The above formula then remains valid in orthogonal coordinates if the components are calculated in the normalized basis.

To construct the cross product in orthogonal coordinates with covariant or contravariant bases we again must simply normalize the basis vectors, for example:

$\mathbf x \times \mathbf y = \sum x^i \mathbf e_i \times \sum y^i \mathbf e_i = \sum x^i h_i \hat \mathbf e_i \times \sum y^i h_i \hat \mathbf e_i$

which, written expanded out,

$\mathbf x \times \mathbf y = (x^2 y^3 - x^3 y^2) \frac{h_2 h_3}{h_1} \mathbf e_1 + (x^3 y^1 - x^1 y^3) \frac{h_1 h_3}{h_2} \mathbf e_2 + (x^1 y^2 - x^2 y^1) \frac{h_1 h_2}{h_3} \mathbf e_3$

Terse notation for the cross product, which simplifies generalization to non-orthogonal coordinates and higher dimensions, is possible with the Levi-Civita tensor, which will have components other than zeros and ones if the scale factors are not all equal to one.

## Vector calculus

### Differentiation

Looking at an infinitesimal displacement from some point, it's apparent that

$d\mathbf r = \sum \frac{\partial \mathbf r}{\partial q^i} dq^i = \sum \mathbf e_i dq^i$

By definition, the gradient of a function must satisfy (this definition remains true if $f$ is any tensor)

$df = \nabla f \cdot d\mathbf r \quad \Rightarrow \quad df = \nabla f \cdot \sum \mathbf e_i dq^i$

It follows then that del operator must be:

$\nabla = \sum \mathbf e^i \frac{\partial}{\partial q^i}$

and this happens to remain true in general curvilinear coordinates. Quantities like the gradient and Laplacian follow through proper application of this operator.

### Integration

Using the line element shown above, the line integral along a path $\mathcal P$ of a vector $\mathbf F$ is:

$\int_{\mathcal P} \mathbf F \cdot d\mathbf r = \int_{\mathcal P} \sum F_i \mathbf e^i \cdot \sum \mathbf e_i dq^i = \sum \int_{\mathcal P} F_i dq^i$

An infinitesimal element of area for a surface described by holding one coordinate $q_k$ constant is:

$dA = \prod_{i \neq k} ds_i = \prod_{i \neq k} h_i dq^i\,$

Similarly, the volume element is:

$dV = \prod ds_i = \prod h_i dq^i$

where the large uppercase Pi symbol indicates a product the same way that a large Sigma indicates summation. Note that the product of all the scale factors is the Jacobian determinant.

As an example, the surface integral of a vector function $\mathbf F$ over a $q^1 = constant$ surface $\mathcal S$ in 3D is:

$\int_{\mathcal S} \mathbf F \cdot d\mathbf A = \int_{\mathcal S} \mathbf F \cdot \hat \mathbf n \ d A = \int_{\mathcal S} \mathbf F \cdot \hat \mathbf e_1 \ d A = \int_{\mathcal S} F^1 \frac{h_2 h_3}{h_1} dq^2 dq^3$

Note that $\frac{F^1}{h_1}$ is the component of $\mathbf F$ normal to the surface.

## Differential operators in three dimensions

Since these operations are common in application, all vector components in this section are presented with respect to the normalized basis.

The gradient of a scalar equals

$\nabla \phi = \frac{\hat \mathbf e_1}{h_1} \frac{\partial \phi}{\partial q^1} + \frac{\hat \mathbf e_2}{h_2} \frac{\partial \phi}{\partial q^2} + \frac{\hat \mathbf e_3}{h_3} \frac{\partial \phi}{\partial q^3}.$

The Laplacian of a scalar equals

$\nabla^2 \phi = \frac{1}{h_1 h_2 h_3} \left[ \frac{\partial}{\partial q^1} \left( \frac{h_2 h_3}{h_1} \frac{\partial \phi}{\partial q^1} \right) + \frac{\partial}{\partial q^2} \left( \frac{h_3 h_1}{h_2} \frac{\partial \phi}{\partial q^2} \right) + \frac{\partial}{\partial q^3} \left( \frac{h_1 h_2}{h_3} \frac{\partial \phi}{\partial q^3} \right) \right].$

The divergence of a vector equals

$\nabla \cdot \mathbf F = \frac{1}{h_1 h_2 h_3} \left[ \frac{\partial}{\partial q^1} \left( F_1 h_2 h_3 \right) + \frac{\partial}{\partial q^2} \left( F_2 h_3 h_1 \right) + \frac{\partial}{\partial q^3} \left( F_3 h_1 h_2 \right) \right].$

The curl equals

$\nabla \times \mathbf F = \frac{\hat \mathbf e_1}{h_2 h_3} \left[ \frac{\partial}{\partial q^2} \left( h_3 F_3 \right) - \frac{\partial}{\partial q^3} \left( h_2 F_2 \right) \right] + \frac{\hat \mathbf e_2}{h_3 h_1} \left[ \frac{\partial}{\partial q^3} \left( h_1 F_1 \right) - \frac{\partial}{\partial q^1} \left( h_3 F_3 \right) \right] + \frac{\hat \mathbf e_3}{h_1 h_2} \left[ \frac{\partial}{\partial q^1} \left( h_2 F_2 \right) - \frac{\partial}{\partial q^2} \left( h_1 F_1 \right) \right].$