If you’ve worked in computational fluid dynamics, then you’re probably aware of the Taylor-Green vortex – at least the two-dimensional case. A simple google search will land you on this wikipedia page. The classic solution there is presented in the form

\begin{equation}

u = \cos x \sin y F(t);\quad v = -\sin x \cos y F(t);\quad F(t) = e^{-2\nu t}

\end{equation}

There are also many variants on this form, some that exchange the sine and cosine such as McDermott and Almgren et. al – but the most interesting variation, is that presented by McDermott, and presents a non-stationary form (in space) – i.e. the vortices advect in space on an Eulerian computational grid.

There are four points that I want to address in this post:

- It seems that the wrong paper is always cited when referring to the original work for this TG Vortex solution
- In light of the previous point, we should call the 2D solution the Taylor vortex and keep the Taylor-Green designation to the 3D initial condition
- How the heck do you obtain solutions that are non-stationary in space (Thanks to Lee Shunn for opening my mind about this)
- Finally, I want to actually derive the TG vortex solution and discuss it a bit further

## Point 1: We are citing the wrong paper

I am the first to admit – I have always cited the wrong paper when referring to the 2d TG vortex – namely:

Taylor, G. I., & Green, A. E. (1937). Mechanism of the production of small eddies from large ones. Proceedings of the Royal Society of London. Series A-Mathematical and Physical Sciences, 158(895), 499.

For the life of me I cannot figure out how to recover the 2D solution from that paper. The correct paper to cite for the 2D vortex is the following:

G.I. Taylor F.R.S. (1923) LXXV. On the decay of vortices in a viscous fluid, The London, Edinburgh, and Dublin Philosophical Magazine and Journal of Science, 46:274, 671-674, DOI: 10.1080/14786442308634295

In light of the previous point, we should refer to the 2D solution as the Taylor vortex and reserve the Taylor-Green designation for the 3D case.

## Point 3: How to obtain “advecting” solutions on an Eulerian grid?

Simple – Thanks to the mysterious art of Galilean transformations! Let’s say you find a solution for the velocity field $$\mathbf{u}(\mathbf{x},t)$$ in an inertial reference frame $(\mathbf{x},t)$ and now you want your solution in a moving frame $(\mathbf{x}’=\mathbf{x} – \mathbf {c} t, t)$, then, the solution in the moving frame, $\mathbf{u}’$ is

\begin{equation}

\mathbf{u}’ =\mathbf{u}(\mathbf{x}-\mathbf{c} t) = \mathbf{u}(\mathbf{x}, t) – \mathbf{c}

\end{equation}

So that – in practice – where we implement our solutions on an Eulerian grid, we simply set

\begin{equation}

\mathbf{u}(\mathbf{x}, t) =\mathbf{c} + \mathbf{u}(\mathbf{x}-\mathbf{c} t)

\end{equation}

I owe it to Lee Shunn of Cascade Technologies for pointing that out to me in a private communication regarding one of his manufactured solutions for variable density flows.

## Point 4: How did Taylor do it?

Taylor is like Euler – not only virtue of their names rhyming – but also by virtue of their contributions to Fluid mechanics. His approach was based on a vorticity-streamfunction approach (heavily used in the rocket-motor stability analysis community – see Culick, Flandro, Majdalani, Saad) to eliminate the pressure. In two-dimensions, the only non-zero component of vorticity is

\begin{equation}

\omega_z = \frac{\partial v}{\partial x} – \frac{\partial u}{\partial y}

\end{equation}

Now, using the streamfunction ($u=-\frac{\partial \psi}{\partial y}$, $v = \frac{\partial \psi}{\partial x}$)

\begin{equation}

\omega_z = \nabla^2 \psi

\end{equation}

Great so far. Now we write the vorticity transport equation

\begin{equation}

\frac{\partial\omega_z}{\partial t}+\mathbf{u}\cdot\nabla\omega_z=\nu\nabla^{2}\omega_z

\end{equation}

or

\begin{equation}

\left( \frac{\partial}{\partial t}+\mathbf{u}\cdot\nabla -\nu\nabla^{2}\right)\omega_z=0

\end{equation}

Now Taylor makes a beautiful assumption: he sets $\omega_z = k \psi$. As I will explain later (maybe in the future), this is entire possible – this only means that lines of constant vorticity are also lines of constant streamfunction. More generally, this type of flow belongs to a general class of flows known as Generalized Beltrami flows where $\nabla\times\mathbf{u}\times\boldsymbol{\Omega} = 0$.

In 2d, this implies that the vorticity is an arbitrary function of $\psi$, i.e. $\omega_z = f(\psi)$. Taylor’s choice is simply $f(\psi) = k \psi$. This assumption leads to two simplifications:

- We now have $\nabla ^2 \psi = k \psi$
- The advection term in the vorticity equation disappears by virtue of the fact that $\mathbf{u}$ is perpendicular to $\nabla \psi$

The vorticity transport equation now reduces to

\begin{equation}

\frac{\partial \psi}{\partial t} -\nu\psi=0

\end{equation}

which leads to the general solution

\begin{equation}

\psi = F(x,y) e^{-k\nu t}

\end{equation}

where $F(x,y)$ is a solution to the vorticity equation (substitute $\psi = F e^{k\nu t}$ into the vorticity equation $\nabla^2 \psi = k \psi$)

\begin{equation}

\nabla F^2 = k F(x,y)

\label{eq:f-equation}

\end{equation}

Generic solutions for $F$ are therefore of the sine, cosine, or exponential type. Taylor then proceeds to set a solution of the form

\begin{equation}

F(x,y) = A \cos (\pi \frac{x}{d}) \cos (\pi \frac{y}{d})

\end{equation}

Substitution into \eqref{eq:f-equation} leads to

\begin{equation}

k = \frac{2\pi^2}{d^2}

\end{equation}

and the final solution is

\begin{equation}

\psi = A \cos (\pi \frac{x}{d}) \cos (\pi \frac{y}{d}) e^{-\frac{2\pi^2}{d^2} \nu t}

\end{equation}

This leads to the classical velocity field for the 2D Taylor vortex

\begin{equation}

u = A \frac{\pi}{d} \cos (\pi \frac{x}{d}) \sin (\pi \frac{y}{d})e^{-\frac{2\pi^2}{d^2} \nu t}; \\

v = – A \frac{\pi}{d} \sin (\pi \frac{x}{d}) \cos (\pi \frac{y}{d}) e^{-\frac{2\pi^2}{d^2} \nu t}

\end{equation}

or, more generally

\begin{equation}

\boxed{\psi = A \cos (\alpha x) \cos (\beta y) e^{-(\alpha^2 + \beta^2) \nu t}}

\end{equation}

\begin{equation}

u = A \beta \cos (\alpha x) \sin (\beta y)e^{-(\alpha^2 + \beta^2) \nu t}; \\

v = – A \alpha\sin (\alpha x) \cos (\beta y)e^{-(\alpha^2 + \beta^2) \nu t}

\end{equation}

If implemented in an Eulerian computational code, this solution will just decay in time. To obtain advecting solutions, apply the Galilean transformation discussed above. This leads to solutions of the form

\begin{equation}

\boxed{

u = u_f + A \beta \cos [\alpha (x-u_f t)] \sin [\beta (y – v_f t)]e^{-(\alpha^2 + \beta^2) \nu t}; \\

v = v_f – A \alpha \sin [\alpha (x-u_f t)] \cos [\beta (y – v_f t)]e^{-(\alpha^2 + \beta^2) \nu t}}

\end{equation}

Another interesting form (used by Almgren and McDermott) is

\begin{equation}

\boxed{\psi = -A \cos (\alpha x) \cos (\beta y) e^{-(\alpha^2 + \beta^2) \nu t}}

\end{equation}

\begin{equation}

u = -A \beta \cos (\alpha x) \sin (\beta y)e^{-(\alpha^2 + \beta^2) \nu t}; \\

v = A \alpha\sin (\alpha x) \cos (\beta y)e^{-(\alpha^2 + \beta^2) \nu t}

\end{equation}

or, for an advecting solution

\begin{equation}

u = u_f – A \beta \cos [\alpha (x-u_f t)] \sin [\beta (y – v_f t)]e^{-(\alpha^2 + \beta^2) \nu t}; \\

v = v_f + A \alpha \sin [\alpha (x-u_f t)] \cos [\beta (y – v_f t)]e^{-(\alpha^2 + \beta^2) \nu t}

\end{equation}

## Generalized Beltrami Flows

Taylor’s vortex belongs a class of flows known as generalized Beltrami flows. These are flows where $\nabla\times\mathbf{u}\times\boldsymbol{\Omega} = 0$.

To be continued…