# Discontinuous Galerkin methods for axisymmetric flows: extended version

Anthony Bosco, Vincent Perrier

► To cite this version:

Anthony Bosco, Vincent Perrier. Discontinuous Galerkin methods for axisymmetric flows: extended version. RR-9524, INRIA. 2023, pp.49. hal-04236220

HAL Id: hal-04236220

https://inria.hal.science/hal-04236220v1

Submitted on 19 Oct 2023

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons CC BY 4.0 - Attribution - International License
Ínria

# Discontinuous Galerkin methods for axisymmetric flows: extended version

Anthony Bosco, Vincent Perrier

## RESEARCH REPORT

### N° 9524

October 2023

Project-Teams Cagire
<figure><img src="image_2.png" /></figure>
<figure><img src="image_3.png" /></figure>

# Discontinuous Galerkin methods for axisymmetric flows: extended version

Anthony Bosco *†, Vincent Perrier † *

Project-Teams Cagire

Research Report n° 9524 — October 2023 — 47 pages

**Abstract:** In this article, high order discontinuous Galerkin methods for axisymmetric flows are developed. A first work is performed to put the equations in a so-called canonical form to gather terms of similar nature, and also for ensuring the three dimensional conservativity. Then the numerical scheme is developed. Instead of relying on the strong axisymmetric formulation, we rely on the $\theta$-averaged form of the standard three-dimensional discontinuous Galerkin method for the Navier-Stokes system. This allows to derive a numerical scheme without ambiguity on the source terms. The numerical scheme is new and makes link between different formulations previously proposed. A wide and progressive set of test cases, especially designed for axisymmetric problems is proposed. The numerical scheme is tested using these cases and the optimal order of accuracy is obtained.

**Key-words:** Discontinuous Galerkin methods, compressible Navier-Stokes equations, high order methods, axisymmetric problems

<footnote>* LMAP, E2S-UPPA, Avenue de l'Université, 64013 Pau Cedex.</footnote>

<footnote>† team Cagire, Centre INRIA de l'université de Bordeaux, 200, Avenue de la Vieille Tour, 33405 Talence Cedex.</footnote>
Méthode de Galerkin discontinue pour les écoulements
axisymétriques: version étendue

**Résumé** : Dans cet article, des méthodes de Galerkin discontinues d'ordre élevé pour les écoulements axisymétriques sont développées. Un premier travail est effectué pour mettre les équations sous une forme dite canonique afin de rassembler les termes de nature similaire, et aussi pour garantir la conservativité tridimensionnelle. Le schéma numérique est ensuite développé. Au lieu de s'appuyer sur la formulation axisymétrique forte, nous nous appuyons sur la forme moyennée sur θ de la méthode de Galerkin discontinue tridimensionnelle standard pour le système de Navier-Stokes. Ceci permet de dériver un schéma numérique sans ambiguïté sur les termes sources. Le schéma numérique est nouveau et fait le lien entre les différentes formulations proposées précédemment. Un ensemble large et progressif de cas de test, spécialement conçu pour les problèmes axisymétriques, est proposé. Le schéma numérique est testé en utilisant ces cas et l'ordre optimal de précision est obtenu.

**Mots-clés** : Méthode de Galerkin discontinue, équations de Navier-Stokes compressible, méthodes d'ordre élevé, problèmes axisymétriques
# Contents

<table><tr><td>1</td><td>Introduction</td><td>3</td></tr><tr><td>2</td><td>On the different formulations of the equations</td><td>5</td></tr><tr><td>2.1</td><td>Cylindrical coordinates</td><td>5</td></tr><tr><td>2.2</td><td>Conservativity</td><td>6</td></tr><tr><td>2.3</td><td>Cartesian formulation of axisymmetric Navier-Stokes equations</td><td>8</td></tr><tr><td>3</td><td>Derivation of the numerical scheme</td><td>12</td></tr><tr><td>3.1</td><td>Three dimensional numerical scheme</td><td>12</td></tr><tr><td>3.2</td><td>Derivation of the numerical scheme for axisymmetric models</td><td>13</td></tr><tr><td>3.2.1</td><td>Simplification of the mass integral</td><td>14</td></tr><tr><td>3.2.2</td><td>Simplification of the lifting operator</td><td>15</td></tr><tr><td>3.2.3</td><td>Simplification of the cell integrals</td><td>15</td></tr><tr><td>3.2.4</td><td>Simplification of the face integrals</td><td>17</td></tr><tr><td>3.2.5</td><td>Final expression of the scheme</td><td>20</td></tr><tr><td>3.3</td><td>Remark on the discretisation of the right hand side in Proposition 3</td><td>21</td></tr><tr><td>3.4</td><td>Link with dual consistent and asymptotic dual consistent discretisation of the source term</td><td>21</td></tr><tr><td>3.5</td><td>Boundary conditions</td><td>22</td></tr><tr><td>3.6</td><td>Practical implementation</td><td>22</td></tr><tr><td>4</td><td>Numerical results</td><td>24</td></tr><tr><td>4.1</td><td>Scalar diffusion</td><td>24</td></tr><tr><td>4.2</td><td>Advection-Diffusion problem</td><td>25</td></tr><tr><td>4.3</td><td>Poiseuille flow</td><td>26</td></tr><tr><td>4.3.1</td><td>Poiseuille flow between two cylinders</td><td>26</td></tr><tr><td>4.3.2</td><td>Poiseuille flow in a tube</td><td>29</td></tr><tr><td>4.4</td><td>Flow past a sphere in the axisymmetric regime</td><td>30</td></tr><tr><td>4.4.1</td><td>Sphere with Re<sub>d</sub> = 100</td><td>32</td></tr><tr><td>4.4.2</td><td>Sphere with Re<sub>d</sub> = 200</td><td>34</td></tr><tr><td>5</td><td>Conclusions</td><td>37</td></tr><tr><td>A</td><td>Proof of Proposition 1</td><td>42</td></tr><tr><td>B</td><td>Expression of vectorial differential operators in cylindrical coordinates and with axisymmetry</td><td>46</td></tr></table>

# 1 Introduction

Discontinuous Galerkin methods allows for arbitrarily high order numerical approximations, but at the cost of increasing the number of degrees of freedom, in particular for three dimensional problems where the computational cost can become large for complicated problems, even when running on many CPUs and other high performance computing architectures.
When the geometries involved possess cylindrical symmetries (see Figure 1a), it is possible to cast the original three dimensional problem into a two dimensional problem (see Figure 1b), which then results in less expensive numerical simulations, which helps when considering the aforementioned high costs linked with high order approximations of DG methods.

<figure><img src="image_4.png" /><figcaption>(a) Three dimensional geometry with axial symmetry around the z-axis. (b) Two dimensional representation in the $r-z$ plane.</figcaption></figure>

Figure 1: Geometry with axial symmetry and representation in the $r-z$ plane using cylindrical coordinates.

Axisymmetric simplifications have been developed for the Euler equations in the context of finite volume method in [11, 25] and discontinuous Galerkin methods in [15], and the context of the discretisation of compressible Navier-Stokes equations and RANS equations in [27] using the finite volume method, and in [3] in the context of discontinuous Galerkin methods. In these works, the numerical method is directly constructed from a strong form of the axisymmetric Navier-Stokes equations. Still, the derivation of a numerical method for such a strong form may be hazardous because the axisymmetric set of equations does not have a canonical form, and includes source terms that are not straightforward to integrate.

In [14, 23, 8, 26], a finite element discretisation for the Laplace equations, Stokes equations and incompressible Navier Stokes equations is obtained by simplifying the weak formulation for a three dimensional numerical scheme using the axisymmetric assumption with cylindrical coordinates. A study of the numerical method obtained in these works concludes that the error estimates can be compared to classical finite element error estimates, but where the error is computed in a weighted norm, which appears naturally due to the metric $r$ in the integrals [9].

In this article, we are interested in extending the method of [14, 23, 8] to a discontinuous Galerkin method for compressible Navier-Stokes equations. The discontinuous Galerkin method used is the BR2 discontinuous Galerkin method[4, 5]. The numerical scheme found is different from [3] and can be seen as an extension of [14, 23, 8, 26] to non-linear problems using the BR2 discontinuous Galerkin method. Also, as a source term depending on a gradient appears in the axisymmetric formulation, a link with the so-called dual consistent integration of source terms, which was introduced in [28] for RANS turbulence modelling, is performed. The last aim of this article is to provide a progressive set of test cases, including new ones, for testing the accuracy of the numerical method.
This article is organized as follows. In section 2 we start by a work on the different possible formulations of the compressible Navier-Stokes equations. We define canonical terms that can be clearly identified either by considering the conservativity of the equations or by highlighting the terms that cannot be formulated with so-called Cartesian operators.

Then in section 3, the numerical scheme for axisymmetric problems is derived by simplifying the three dimensional scheme written on a rotated two dimensional mesh. The numerical scheme obtained is compared with some previously proposed discretisation of the canonical terms defined in section 2. The main difference from previous work is that this method of deriving the numerical scheme leads to the introduction of a weighted lifting operator. It also allows us to clarify the discretisation of the canonical source term, as well as the discretisation of the additional non-Cartesian flux, in particular in regards to the numerical fluxes in the BR2 discretisation.

Last, in section 4, the numerical method obtained is validated using a range of test cases: scalar diffusion, scalar advection-diffusion [7], a laminar Poiseuille flow [13, 10] and a laminar flow past a sphere in the axisymmetric regime [12, 30, 16, 2].

# 2 On the different formulations of the equations

## 2.1 Cylindrical coordinates

Throughout this work, we consider geometries which possess rotational symmetries around an axis, which can be described using cylindrical coordinates. Let us consider the Cartesian basis ($e_x, e_y, e_z$) in a three dimensional space. Any vector $u$ can be decomposed into that basis

$$u = u_x e_x + u_y e_y + u_z e_z.$$

In order to represent the axisymmetric problem, we consider cylindrical coordinates in the moving basis ($e_r, e_\theta, e_z$), in which the coordinates ($r, \theta, z$) are defined, with reference to the Cartesian basis, with the relation

$$\left\{ \begin{array}{l} x = r \cos \theta, \\ y = r \sin \theta, \\ z = z. \end{array} \right. \qquad (1)$$

Any vector in the Cartesian basis can be rewritten in cylindrical coordinates as

$$u = u_r e_r + u_\theta e_\theta + u_z e_z,$$

where the relation between the component of the vector are given by

$$\begin{align} u_x &= \cos \theta u_r - \sin \theta u_\theta \nonumber \\ u_y &= \sin \theta u_r + \cos \theta u_\theta \nonumber \\ u_z &= u_z, \tag{2} \end{align}$$

or, introducing the rotation matrix $R$:

$$R(\theta) := \begin{pmatrix} \cos \theta & -\sin \theta & 0 \\ \sin \theta & \cos \theta & 0 \\ 0 & 0 & 1 \end{pmatrix}, \qquad (3)$$
the transformation between Cartesian and cylindrical coordinates is rewritten

$$ \mathbf{u}^{\text{cart}} = R(\theta)\mathbf{u}^{\text{cyl}}. $$

Similarly, for any tensor $\bar{\mathbf{f}}$, the transformation is

$$ \bar{\mathbf{f}}^{\text{cart}} = R(\theta)\bar{\mathbf{f}}^{\text{cyl}}R(\theta)^T. $$

Based on these transformations, the following definition of axisymmetric problems can be given

**Definition 1 (Axisymmetry).** A scalar is said to be axisymmetric if its value depends only on $r$ and $z$.

A vector or a tensor are said to be axisymmetric if all their components in the cylindrical basis depend only on $r$ and $z$.

A system of PDE is axisymmetric if all the scalars, vectors and tensors of the PDE are axisymmetric.

Last, we remark that the change of variable also introduces a change of metric with the Jacobian

$$ J(\theta) := \begin{pmatrix} \cos \theta & -r \sin \theta & 0 \\ \sin \theta & r \cos \theta & 0 \\ 0 & 0 & 1 \end{pmatrix}, \qquad (4) $$

from which we compute $\det(J) = r$, i.e.

$$ dxdydz = rdrd\theta dz. $$

## 2.2 Conservativity

An important concept that should be ensured in general when dealing with conservation laws is conservativity. A general property ensured by a conservation law in three dimensions

$$ \partial_t \mathbf{U} + \text{div}_x \mathbf{F}(\mathbf{U}, \nabla \mathbf{U}) = 0, \qquad (5) $$

is that any time variation over a domain $\Omega$ can be transformed into a flux through the boundary of $\Omega$; the integration over a domain $\Omega$ of (5):

$$ \int_{\Omega} (\partial_t \mathbf{U} + \text{div}_x \mathbf{F}(\mathbf{U}, \nabla \mathbf{U})) = 0, $$

can indeed be formally transformed into

$$ \frac{d}{dt} \left( \int_{\Omega} \mathbf{U} \right) = - \int_{\partial \Omega} \mathbf{F}(\mathbf{U}, \nabla \mathbf{U}) \cdot \mathbf{n}. \qquad (6) $$

Once written in axisymmetric coordinates, the momentum equation of the Euler or Navier-Stokes systems cannot be put into a divergence form in variable $(r, z)$. This raises some questions about how the equations should be integrated, and how to preserve the conservativity property, which is of paramount importance, for example for ensuring convergence on hyperbolic systems with shocks [19], but also for ensuring conservativity of the numerical method.

The link between conservativity in three dimensions and a consistent definition of conservativity on axisymmetric domains is given by
**Proposition 1** (Conservative formulation). Suppose that a scalar u follows the conservation law

$$ \partial_t u + \operatorname{div}_x \mathbf{f} = 0, \qquad (7) $$

where $\mathbf{f}$ is a vector. Suppose also that $u$ and $\mathbf{f}$ are axisymmetric. Then the three dimensional conservativity induces

$$ \forall \Omega \quad \int_{\Omega} \partial_t (ru) \, d\Omega + \int_{\partial\Omega} r\mathbf{f} \cdot \hat{\mathbf{n}} \, d(\partial\Omega) = 0, \qquad (8) $$

where $\hat{\mathbf{n}} = (\mathbf{n}_r, 0, \mathbf{n}_z)$.

Suppose now that a vector $\mathbf{u}$ follows the conservation law

$$ \partial_t \mathbf{u} + \operatorname{div}_x \bar{\mathbf{f}} = 0, \qquad (9) $$

and that $\mathbf{u}$ and $\bar{\mathbf{f}}$ are axisymmetric. Then the three dimensional conservativity induces

$$ \forall \Omega \quad \int_{\Omega} \partial_t (r\mathbf{u}) \, d\Omega + \int_{\partial\Omega} r\bar{\mathbf{f}} \cdot \hat{\mathbf{n}} \, d(\partial\Omega) = \left( \int_{\Omega} \bar{\mathbf{f}}_{\theta\theta} d\Omega \right) e_r - \left( \int_{\partial\Omega} \bar{\mathbf{f}}_{r\theta} d\Omega \right) e_{\theta}, \qquad (10) $$

where $\hat{\mathbf{n}} = (\mathbf{n}_r, 0, \mathbf{n}_z)$.

The proof of this is a bit long and was deferred in Appendix A. It is worth noting that the conservativity was numerically tested in [32]. Three different formulations for polar/spherical formulations are compared, and as far as conservativity is concerned, the numerical results are in agreement with the formulation (8) and (10) of Proposition 1.

Usually, an axisymmetric code is derived from a two dimensional Cartesian code. It may therefore be interesting to write the axisymmetric equations only in terms of Cartesian operators in the variables $(r, z)$ in order to explicit the additional terms that appear in the axisymmetric case. For this, we first define the Cartesian operators as follows.

**Definition 2** (Cartesian operators). In the case with swirl, namely when $\mathbf{u}_\theta \neq 0$, the following Cartesian operators in coordinates $(r, z)$ are defined as

$$ \begin{aligned} \nabla_{\{r,z\}}^{C} u &:= \left( \frac{\partial u}{\partial r}, 0, \frac{\partial u}{\partial z} \right)^{T} \\ \operatorname{div}_{\{r,z\}}^{C} \mathbf{u} &:= \frac{\partial \mathbf{u}_r}{\partial r} + \frac{\partial \mathbf{u}_z}{\partial z} \\ \operatorname{div}_{\{r,z\}}^{C} \bar{\mathbf{u}} &:= \left( \frac{\partial \bar{\mathbf{u}}_{rr}}{\partial r} + \frac{\partial \bar{\mathbf{u}}_{rz}}{\partial z} \right) e_r + \left( \frac{\partial \bar{\mathbf{u}}_{\theta r}}{\partial r} + \frac{\partial \bar{\mathbf{u}}_{\theta z}}{\partial z} \right) e_{\theta} + \left( \frac{\partial \bar{\mathbf{u}}_{rz}}{\partial r} + \frac{\partial \bar{\mathbf{u}}_{zz}}{\partial z} \right) e_z \\ \nabla_{\{r,z\}}^{C} \mathbf{u} &:= \begin{pmatrix} \frac{\partial \mathbf{u}_r}{\partial r} & \frac{\partial \mathbf{u}_\theta}{\partial r} & \frac{\partial \mathbf{u}_z}{\partial r} \\ 0 & 0 & 0 \\ \frac{\partial \mathbf{u}_r}{\partial z} & \frac{\partial \mathbf{u}_\theta}{\partial z} & \frac{\partial \mathbf{u}_z}{\partial z} \end{pmatrix}. \end{aligned} $$

In the case without swirl, namely when $\mathbf{u}_\theta = 0$, the following Cartesian operators in coordinates
$(r, z)$ are defined as

$$
\begin{align*}
\nabla_{\{r,z\}}^{C} u &:= \left( \frac{\partial u}{\partial r}, \frac{\partial u}{\partial z} \right)^{\mathrm{T}} \\
\mathrm{div}_{\{r,z\}}^{C} \mathbf{u} &:= \frac{\partial \mathbf{u}_r}{\partial r} + \frac{\partial \mathbf{u}_z}{\partial z} \\
\mathrm{div}_{\{r,z\}}^{C} \bar{\mathbf{u}} &:= \left( \frac{\partial \bar{\mathbf{u}}_{rr}}{\partial r} + \frac{\partial \bar{\mathbf{u}}_{rz}}{\partial z} \right) \mathbf{e}_r + \left( \frac{\partial \bar{\mathbf{u}}_{rz}}{\partial r} + \frac{\partial \bar{\mathbf{u}}_{zz}}{\partial z} \right) \mathbf{e}_z \\
\nabla_{\{r,z\}}^{C} \mathbf{u} &:= \begin{pmatrix} \frac{\partial \mathbf{u}_r}{\partial r} & \frac{\partial \mathbf{u}_z}{\partial r} \\ \frac{\partial \mathbf{u}_r}{\partial z} & \frac{\partial \mathbf{u}_z}{\partial z} \end{pmatrix}.
\end{align*}
$$

Considering Proposition 1, using Definition 2 it is natural to give the following definition

**Definition 3 (Canonical axisymmetric conservative form).** *A scalar conservation law*

$$ \partial_t u + \mathrm{div}_x \mathbf{f} = 0 $$

has the following Canonical axisymmetric conservative form

$$ \partial_t (ru) + \mathrm{div}_{\{r,z\}}^{C} (rf) = 0. $$

A vectorial conservation law

$$ \partial_t \mathbf{u} + \mathrm{div}_x \bar{\mathbf{f}} = 0, $$

has the following Canonical axisymmetric conservative form

$$ \partial_t (r\mathbf{u}) + \mathrm{div}_{\{r,z\}}^{C} (r\bar{\mathbf{f}}) = \bar{\mathbf{f}}_{\theta\theta} \mathbf{e}_r - \bar{\mathbf{f}}_{r\theta} \mathbf{e}_\theta. $$

**Remark 1.** *Note that for a problem with spherical symmetry, the conservative canonical form for a scalar conservation law is*

$$ \partial_t (r^2 u) + \frac{\partial (r^2 \mathbf{f}_r)}{\partial r} = 0, $$

whereas the conservative canonical form for a vector conservation law is

$$ \partial_t (r^2 \mathbf{u}_r) + \frac{\partial (r^2 \bar{\mathbf{f}}_{rr})}{\partial r} = r (\bar{\mathbf{f}}_{\theta\theta} + \bar{\mathbf{f}}_{\varphi\varphi}). $$

## 2.3 Cartesian formulation of axisymmetric Navier-Stokes equations

The Navier-Stokes equations reads, in three dimension

$$
\left\{
\begin{array}{l}
\partial_t \rho + \mathrm{div}_x (\rho \mathbf{v}) = 0 \\
\partial_t (\rho \mathbf{v}) + \mathrm{div}_x (\rho \mathbf{v} \mathbf{v}^T + P I_d) = \mathrm{div}_x \bar{\tau} \\
\partial_t (\rho E) + \mathrm{div}_x ((\rho E + P) \mathbf{v}) = \mathrm{div}_x (-\mathbf{q} + \bar{\tau} \cdot \mathbf{v}),
\end{array}
\right.
$$

where $\rho$ is the density, $\mathbf{v}$ the velocity, $P$ the pressure, $\bar{\tau}$ is the stress strain tensor:

$$ \bar{\tau} = \mu (\nabla \mathbf{v} + \nabla^T \mathbf{v}) + \lambda (\mathrm{div}_x \mathbf{v}) I_d, $$
$E$ is the specific total energy

$$E = \frac{v^2}{2} + \varepsilon,$$

where $\varepsilon$ is the specific internal energy. Last, $q = -\kappa \nabla T$ where $T$ is the temperature. The thermodynamic variables $\rho$, $P$, $T$ and $\varepsilon$ are linked with an equation of state: each thermodynamic variable can be expressed as a combination of two other independent thermodynamic variables. The Navier-Stokes equations will be shortly rewritten as

$$\partial_t \mathbf{U} + \operatorname{div}_{\mathbf{x}} \mathbf{F}_{\text{adv}}(\mathbf{U}) = \operatorname{div}_{\mathbf{x}} \mathbf{F}_{\text{diff}}(\mathbf{U}, \nabla \mathbf{U}),$$

where $\mathbf{F}_{\text{adv}}$ and $\mathbf{F}_{\text{diff}}$ are the advective and diffusive part of the Navier-Stokes equations

$$\mathbf{F}_{\text{adv}} = \begin{pmatrix} \rho \mathbf{v} \\ \rho \mathbf{v} \mathbf{v}^T + P \mathbf{I}_d \\ (\rho E + P) \mathbf{v} \end{pmatrix} \qquad \mathbf{F}_{\text{diff}} = \begin{pmatrix} 0 \\ \bar{\mathbf{\tau}} \\ \bar{\mathbf{\tau}} \cdot \mathbf{v} - \mathbf{q} \end{pmatrix}.$$

As the diffusive flux is linear with respect to the gradient of $\mathbf{U}$, $\mathbf{F}_{\text{diff}}$ will be rewritten $\mathbf{A}(\mathbf{U})\nabla \mathbf{U}$ when needed.

Based on the **Definition 3**, the Navier-Stokes system can be put in the canonical axisymmetric conservative form.

**Proposition 2** (Canonical axisymmetric formulation of the Navier-Stokes system). *The Navier-Stokes equations has the following canonical axisymmetric conservative form*

$$\left\{ \begin{array}{l} \partial_t (r\rho) + \operatorname{div}_{\{r,z\}} (r\rho\mathbf{v}) = 0 \\ \\ \partial_t (r\rho\mathbf{v}) + \operatorname{div}_{\{r,z\}} (r\rho\mathbf{v}\mathbf{v}^T) + \nabla_{\{r,z\}}^C (rP) = \operatorname{div}_{\{r,z\}} (r\bar{\mathbf{\tau}}) + \begin{pmatrix} P + \rho\mathbf{v}_{\theta}^2 - \bar{\mathbf{\tau}}_{\theta\theta} \\ \bar{\mathbf{\tau}}_{r\theta} - \rho\mathbf{v}_r \mathbf{v}_{\theta} \\ 0 \end{pmatrix} \\ \\ \partial_t (r\rho E) + \operatorname{div}_{\{r,z\}} (r(\rho E + P)\mathbf{v}) = \operatorname{div}_{\{r,z\}} (r\kappa\nabla_{\{r,z\}}^C T) + \operatorname{div}_{\{r,z\}} (r\bar{\mathbf{\tau}} \cdot \mathbf{v}), \end{array} \right.$$

*Proof.* The proof directly comes from the definition of the canonical conservative form. □

The formulation of **Proposition 2** still includes the stress-strain, that is not yet expressed in the Cartesian operators defined in **Definition 2**. Actually the stress strain tensor can be split into two parts, one matching with the Cartesian operators, and the remaining part that we call "non-Cartesian":

**Definition 4** (Cartesian and non-Cartesian stress strain). *The Cartesian stress-strain $\bar{\mathbf{\tau}}^C$ is defined as*

$$\bar{\mathbf{\tau}}^C = \mu (\nabla_{\{r,z\}}^C \mathbf{v} + \nabla_{\{r,z\}}^C \mathbf{v}^T) + \lambda (\operatorname{div}_{\{r,z\}} \mathbf{v}) \mathbf{I}_d.$$

and the non-Cartesian part is defined as

$$\bar{\mathbf{\tau}}^{\text{NC}} := r (\bar{\mathbf{\tau}} - \bar{\mathbf{\tau}}^C) = \begin{pmatrix} \lambda \mathbf{v}_r & -\mu \mathbf{v}_{\theta} & 0 \\ -\mu \mathbf{v}_{\theta} & (2\mu + \lambda) \mathbf{v}_r & 0 \\ 0 & 0 & \lambda \mathbf{v}_r \end{pmatrix}.$$

In the non-swirl case, it is defined as

$$\bar{\mathbf{\tau}}^{\text{NC}} = \lambda \mathbf{v}_r \mathbf{I}_d.$$
Proof. We just provide the computation of the non-Cartesian stress strain:

$$
\begin{align*}
\bar{\tau} &= \mu (\nabla \mathbf{v} + \nabla^T \mathbf{v}) + \lambda (\mathrm{div}_\mathbf{x} \mathbf{v}) \mathrm{I}_d \\
&= \mu \left( \begin{pmatrix} \frac{\partial \mathbf{v}_r}{\partial r} & \frac{\partial \mathbf{v}_\theta}{\partial r} & \frac{\partial \mathbf{v}_z}{\partial r} \\ -\frac{\partial \mathbf{v}_\theta}{\partial r} & \frac{\partial \mathbf{v}_r}{\partial r} & 0 \\ \frac{\partial \mathbf{v}_r}{\partial z} & \frac{\partial \mathbf{v}_\theta}{\partial z} & \frac{\partial \mathbf{v}_z}{\partial z} \end{pmatrix} \right) + \mu \left( \begin{pmatrix} \frac{\partial \mathbf{v}_r}{\partial r} & -\frac{\mathbf{v}_\theta}{r} & \frac{\partial \mathbf{v}_z}{\partial z} \\ \frac{\partial \mathbf{v}_\theta}{\partial r} & \frac{\mathbf{v}_r}{r} & 0 \\ \frac{\partial \mathbf{v}_z}{\partial r} & 0 & \frac{\partial \mathbf{v}_z}{\partial z} \end{pmatrix} \right) + \lambda \left( \frac{1}{r} \frac{\partial(r\mathbf{v}_r)}{\partial r} + \frac{\partial \mathbf{v}_z}{\partial z} \right) \mathrm{I}_d \\
&= \mu (\nabla_{\{r,z\}}^C \mathbf{v} + \nabla_{\{r,z\}}^C \mathbf{v}) + \lambda (\mathrm{div}_{\{r,z\}}^C \mathbf{v}) \mathrm{I}_d + \frac{1}{r} \begin{pmatrix} \lambda \mathbf{v}_r & -\mu \mathbf{v}_\theta & 0 \\ -\mu \mathbf{v}_\theta & (2\mu + \lambda) \mathbf{v}_r & 0 \\ 0 & 0 & \lambda \mathbf{v}_r \end{pmatrix} \\
\bar{\tau} &= \bar{\tau}^C + \frac{1}{r} \begin{pmatrix} \lambda \mathbf{v}_r & -\mu \mathbf{v}_\theta & 0 \\ -\mu \mathbf{v}_\theta & (2\mu + \lambda) \mathbf{v}_r & 0 \\ 0 & 0 & \lambda \mathbf{v}_r \end{pmatrix}.
\end{align*}
$$

□

Note that the non-Cartesian stress strain does not include any derivative. Based on Definition 4, the canonical conservative form can be further transformed by using only the Cartesian operators as follows.

**Proposition 3** (Canonical Cartesian axisymmetric conservative form). The Navier-Stokes equations can be put in the following canonical Cartesian axisymmetric conservative form

$$
\left\{
\begin{array}{l}
\partial_t (r\rho) + \mathrm{div}_{\{r,z\}}^C (r\rho\mathbf{v}) = 0 \\
\partial_t (r\rho\mathbf{v}) + \mathrm{div}_{\{r,z\}}^C (r(\rho\mathbf{v}\mathbf{v}^T + P\mathrm{I}_d)) = \mathrm{div}_{\{r,z\}}^C (r\bar{\tau}^C) + S_{[\rho\mathbf{v}]}^{\mathrm{NC}} + \mathbf{S}^{\mathrm{Can}} \\
\partial_t (r\rho E) + \mathrm{div}_{\{r,z\}}^C (r(\rho E + P)\mathbf{v}) = \mathrm{div}_{\{r,z\}}^C (r\kappa\nabla_{\{r,z\}}^C T) + \mathrm{div}_{\{r,z\}}^C (r\bar{\tau}^C \cdot \mathbf{v}) + S_{[\rho E]}^{\mathrm{NC}},
\end{array}
\right.
$$

with

$$
\left\{
\begin{aligned}
\mathbf{S}^{\text{Can}} &= \begin{pmatrix}
P + \rho \mathbf{v}_{\theta}^2 - \frac{2\mu + \lambda}{r} \mathbf{v}_r - \lambda \text{div}_{\{r,z\}}^{C} \mathbf{v} \\
\mu \left( \frac{\partial \mathbf{v}_{\theta}}{\partial r} - \frac{\mathbf{v}_{\theta}}{r} \right) - \rho \mathbf{v}_r \mathbf{v}_{\theta} \\
0
\end{pmatrix} \\
S_{[\rho \mathbf{v}]}^{\text{NC}} &= \text{div}_{\{r,z\}}^{C} \bar{\tau}^{\text{NC}} = \begin{pmatrix}
\frac{\partial (\lambda \mathbf{v}_r)}{\partial r} \\
-\frac{\partial (\mu \mathbf{v}_\theta)}{\partial r} \\
\frac{\partial (\lambda \mathbf{v}_r)}{\partial z}
\end{pmatrix} \\
S_{[\rho E]}^{\text{NC}} &= \text{div}_{\{r,z\}}^{C} (\bar{\tau}^{\text{NC}} \mathbf{v}) = \frac{\partial}{\partial r} (\lambda \mathbf{v}_r^2 - \mu \mathbf{v}_\theta^2) + \frac{\partial}{\partial z} (\lambda \mathbf{v}_r \mathbf{v}_z).
\end{aligned}
\right.
$$

Proof. The two unclosed terms of the canonical source term are

$$
\left\{
\begin{aligned}
\bar{\tau}_{\theta\theta} &= \frac{2\mu + \lambda}{r} \mathbf{v}_r + \lambda \mathrm{div}_{\{r,z\}}^{C} \mathbf{v} \\
\bar{\tau}_{r\theta} &= \mu \left( \frac{\partial \mathbf{v}_\theta}{\partial r} - \frac{\mathbf{v}_\theta}{r} \right).
\end{aligned}
\right.
$$
The non-Cartesian source term can be obtained by taking the divergence of $r\bar{\tau}$, and withdrawing the divergence of the Cartesian tensor:

$$ 
\begin{aligned}
\mathrm{div}_{\{r,z\}}^C (r\bar{\tau}) &= \mathrm{div}_{\{r,z\}}^C (r\bar{\tau}^C) + \mathrm{div}_{\{r,z\}}^C \begin{pmatrix} \lambda \mathbf{v}_r & -\mu \mathbf{v}_\theta & 0 \\ -\mu \mathbf{v}_\theta & (2\mu + \lambda)\mathbf{v}_r & 0 \\ 0 & 0 & \lambda \mathbf{v}_r \end{pmatrix} \\
&= \mathrm{div}_{\{r,z\}}^C (r\bar{\tau}^C) + \begin{pmatrix} \frac{\partial (\lambda \mathbf{v}_r)}{\partial r} \\ -\frac{\partial (\mu \mathbf{v}_\theta)}{\partial r} \\ \frac{\partial (\lambda \mathbf{v}_r)}{\partial z} \end{pmatrix}
\end{aligned}
$$

Last, the energy equation also includes a non-Cartesian source term:

$$ 
\begin{aligned}
\mathrm{div}_{\{r,z\}}^C (r\bar{\tau} \cdot \mathbf{v}) &= \mathrm{div}_{\{r,z\}}^C (r\bar{\tau}^C \cdot \mathbf{v}) + \mathrm{div}_{\{r,z\}}^C \begin{pmatrix} \begin{pmatrix} \lambda \mathbf{v}_r & -\mu \mathbf{v}_\theta & 0 \\ -\mu \mathbf{v}_\theta & (2\mu + \lambda)\mathbf{v}_r & 0 \\ 0 & 0 & \lambda \mathbf{v}_r \end{pmatrix} \cdot \mathbf{v} \\ \lambda \mathbf{v}_r^2 - \mu \mathbf{v}_\theta^2 \\ (\mu + \lambda)\mathbf{v}_r \\ \lambda \mathbf{v}_r \mathbf{v}_z \end{pmatrix} \\
&= \mathrm{div}_{\{r,z\}}^C (r\bar{\tau}^C \cdot \mathbf{v}) + \mathrm{div}_{\{r,z\}}^C \begin{pmatrix} \lambda \mathbf{v}_r^2 - \mu \mathbf{v}_\theta^2 \\ (\mu + \lambda)\mathbf{v}_r \\ \lambda \mathbf{v}_r \mathbf{v}_z \end{pmatrix} \\
\mathrm{div}_{\{r,z\}}^C (r\bar{\tau} \cdot \mathbf{v}) &= \mathrm{div}_{\{r,z\}}^C (r\bar{\tau}^C \cdot \mathbf{v}) + \frac{\partial}{\partial r} (\lambda \mathbf{v}_r^2 - \mu \mathbf{v}_\theta^2) + \frac{\partial}{\partial z} (\lambda \mathbf{v}_r \mathbf{v}_z).
\end{aligned}
$$

□

In the "no swirl" case, the system can be simplified into

**Proposition 4** (Canonical Cartesian axisymmetric conservative form without swirl). *The Navier-Stokes equations can be put in the following canonical Cartesian axisymmetric conservative form*

$$ 
\left\{ 
\begin{aligned}
\partial_t (r\rho) + \mathrm{div}_{\{r,z\}}^C (r\rho\mathbf{v}) &= 0 \\
\partial_t (r\rho\mathbf{v}) + \mathrm{div}_{\{r,z\}}^C (r(\rho\mathbf{v}\mathbf{v}^T + P\mathbf{I}_d)) &= \mathrm{div}_{\{r,z\}}^C (r\bar{\tau}^C) + S_{[\rho\mathbf{v}]}^{NC} + \mathbf{S}^{Can} \\
\partial_t (r\rho E) + \mathrm{div}_{\{r,z\}}^C (r(\rho E + P)\mathbf{v}) &= \mathrm{div}_{\{r,z\}}^C (r\kappa\nabla_{\{r,z\}}^C T) + \mathrm{div}_{\{r,z\}}^C (r\bar{\tau}^C \cdot \mathbf{v}) + S_{[\rho E]}^{NC},
\end{aligned}
\right. 
$$

with

$$ 
\left\{ 
\begin{aligned}
\mathbf{S}^{Can} &= \begin{pmatrix} P - \frac{2\mu + \lambda}{r} \mathbf{v}_r - \lambda \mathrm{div}_{\{r,z\}}^C \mathbf{v} \\ 0 \end{pmatrix} \\
S_{[\rho\mathbf{v}]}^{NC} &= \mathrm{div}_{\{r,z\}}^C \bar{\tau}^{NC} = \mathrm{div}_{\{r,z\}}^C (\lambda \mathbf{v}_r \mathbf{I}_d) = \nabla_{\{r,z\}}^C (\lambda \mathbf{v}_r) \\
S_{[\rho E]}^{NC} &= \mathrm{div}_{\{r,z\}}^C (\bar{\tau}^{NC} \mathbf{v}) = \mathrm{div}_{\{r,z\}}^C (\lambda \mathbf{v}_r \mathbf{v})
\end{aligned}
\right. 
$$

In this section, the Navier-Stokes models for axisymmetric flows with and without swirl were derived. The models were put in a canonical form, which can be shortly rewritten as

$$ 
\begin{aligned}
\partial_t (r\mathbf{U}) + \mathrm{div}_{\{r,z\}}^C (r\mathbf{F}_{adv}^C(\mathbf{U})) = \mathrm{div}_{\{r,z\}}^C & \begin{pmatrix} r\mathbf{F}_{diff}^C(\mathbf{U}, \nabla_{\{r,z\}}^C \mathbf{U}) \\ \mathbf{F}_{diff}^{NC}(\mathbf{U}) \end{pmatrix} \\
& + \mathrm{div}_{\{r,z\}}^C \begin{pmatrix} \mathbf{F}_{diff}^{NC}(\mathbf{U}) \\ S^{Can}(\mathbf{U}, \nabla_{\{r,z\}}^C \mathbf{U}) \end{pmatrix}.
\end{aligned}
\quad (11) 
$$

We remark that:
* The formulation is consistent with the conservativity of the three dimensional model, which defines a first source term, $S^{Can}$. This source term depends on the variables and their first order derivative.

* By using only two dimensional Cartesian operators in the $(r, z)$ variables, another source term induced by the second order terms appears, $\mathrm{div}_{\{r,z\}}^{C} \mathbf{F}_{\mathrm{diff}}^{NC}(\mathbf{U})$. This source term depends also on the variables and their first order derivative.

These two source terms essentially come from different transformations of the equations. Even if they depend on the same variables, we will see that their discretisation should be performed differently. Next section is dedicated to the discretisation of these operators.

**Remark 2** (Cartesian conservative canonical form for the spherical Navier-Stokes equations). In spherical coordinates, the Navier-Stokes system can be written in a similar form as (11) as

$$ \partial_t (r^2 \mathbf{U}) + \mathrm{div}_{\{r\}}^{C} (r^2 \mathbf{F}_{\mathrm{adv}}^{C}(\mathbf{U})) = \mathrm{div}_{\{r\}}^{C} \left( r^2 \mathbf{F}_{\mathrm{diff}}^{C}(\mathbf{U}, \nabla_{\{r\}}^{C} \mathbf{U}) \right) \\ + \mathrm{div}_{\{r\}}^{C} \left( \mathbf{F}_{\mathrm{diff}}^{NC}(\mathbf{U}) \right) + \mathbf{S}^{\mathrm{Can}}(\mathbf{U}, \nabla_{\{r\}}^{C} \mathbf{U}). $$

with the Cartesian operators $\star_{\{r\}}^{C}$ defined as in the axisymmetric, non-swirl case, with the $z$ derivatives equal to 0, and with the following canonical and non-Cartesian source terms:

$$ \left\{ \begin{array}{l} \mathbf{S}^{\mathrm{Can}}(\mathbf{U}, \nabla_{\{r\}}^{C} \mathbf{U}) = 2r \left( P - \frac{2\mu + \lambda}{r} \mathbf{v}_r - \lambda \mathrm{div}_{\{r\}}^{C} \mathbf{v} \right) \\ \\ \mathbf{F}_{\mathrm{diff}}^{NC}(\mathbf{U}) = \begin{pmatrix} 0 \\ \lambda \mathbf{v}_r I_d \\ \lambda \mathbf{v}_r \mathbf{v} \end{pmatrix} \end{array} \right. $$

# 3 Derivation of the numerical scheme

## 3.1 Three dimensional numerical scheme

The aim of this section is to recall the discontinuous Galerkin numerical scheme for the Navier-Stokes system. A possible discretisation of the Navier-Stokes system is the so-called BR2 formulation which was first introduced in [6], and later in [4, 5], and analysed in [1] for elliptic systems. The formulation of this numerical scheme is briefly recalled. For the sake of simplicity, we will not consider the boundary conditions for the moment.

The computational domain $\hat{\Omega}$ is divided into a partition of cells $\hat{K} \in \hat{\mathcal{K}}$. We denote by $\hat{\mathcal{F}}$ the set of faces, namely the $(d-1)$ dimensional intersections of elements of $\hat{\mathcal{K}}$. A face linking the elements $\hat{K}_i$ and $\hat{K}_j$ is denoted by $\hat{\Gamma}_{ij}$. It is oriented such that $\hat{K}_i$ is on the left, and $\hat{K}_j$ is on the right of $\hat{\Gamma}_{ij}$. A set of basis $\hat{\Psi}$ is defined on each cell $\hat{K}$; the $\hat{\Psi}$ are continuous inside $\hat{K}$, and a priori discontinuous at the faces.

Each face $\hat{\mathcal{F}}$ is oriented. From this orientation, the left cell (denoted with a $L$ subscript) is defined as the cell such that the normal to the face is outgoing, and the other one is defined as the right cell (denoted with a $R$ subscript). We then define the *average* operator on each face as

$$ \{\{\hat{\Psi}\}\} = \frac{\hat{\Psi}_L + \hat{\Psi}_R}{2}, $$
and the jump operator on each face as

$$ \llbracket \hat{\Psi} \rrbracket = \hat{\Psi}_L - \hat{\Psi}_R. $$

Then the BR2 formulation reads

$$ \sum_{\hat{K} \in \hat{\mathcal{K}}} \left( \int_{\hat{K}} \hat{\Psi} \partial_t \mathbf{U} - \int_{\hat{K}} \mathbf{F}_{adv}(\mathbf{U}) \nabla \hat{\Psi} + \int_{\hat{K}} (\mathbf{A}(\mathbf{U}) \nabla \mathbf{U}) \nabla \hat{\Psi} \right) \\ + \sum_{\hat{\Gamma}_{ij} \in \hat{\mathcal{F}}} \left( \int_{\hat{\Gamma}_{ij}} \tilde{F}(\mathbf{U}, \hat{\mathbf{n}}) \llbracket \hat{\Psi} \rrbracket - \int_{\hat{\Gamma}_{ij}} \left( \left\{ \mathbf{A}(\mathbf{U}) \nabla \mathbf{U} \right\} \llbracket \hat{\Psi} \rrbracket + \left\{ \mathbf{A}^T(\mathbf{U}) \nabla \hat{\Psi} \right\} \llbracket \mathbf{U} \rrbracket \right) \right) \\ - \sum_{\hat{\Gamma}_{ij} \in \hat{\mathcal{F}}} \left( \int_{\hat{\Gamma}_{ij}} \eta \left\{ \mathbf{A}(\mathbf{U}) \hat{\ell}^{ij} (\llbracket \mathbf{U} \rrbracket) \right\} \llbracket \hat{\Psi} \rrbracket \right) = 0. \quad (12) $$

This formulation depends on the definition of a local lifting operator, which is defined for a scalar u as

$$ \forall \hat{\Psi} \quad \int_{\hat{K}_i \cup \hat{K}_j} \hat{\Psi} \cdot \hat{\ell}^{ij} (\llbracket u \rrbracket) = - \int_{\hat{\Gamma}_{ij}} \left\{ \llbracket \hat{\Psi} \rrbracket \right\} \cdot \llbracket u \hat{\mathbf{n}} \rrbracket, \quad (13) $$

and which is defined componentwise by using (13) for a vector. Defining the global lifting operator $\mathcal{L}$ in each cell as

$$ \forall \hat{K}_i \in \hat{\mathcal{K}} \quad \hat{\mathcal{L}}(\llbracket \mathbf{U} \rrbracket) = \sum_{j \in \mathcal{N}(i)} \hat{\ell}^{ij}(\llbracket \mathbf{U} \rrbracket), \quad (14) $$

the numerical scheme (12) can be rewritten as

$$ \sum_{\hat{K} \in \hat{\mathcal{K}}} \left( \int_{\hat{K}} \hat{\Psi} \partial_t \mathbf{U} - \int_{\hat{K}} \mathbf{F}_{adv}(\mathbf{U}) \nabla \hat{\Psi} + \int_{\hat{K}} (\mathbf{A}(\mathbf{U}) (\nabla \mathbf{U} + \hat{\mathcal{L}}(\llbracket \mathbf{U} \rrbracket))) \nabla \hat{\Psi} \right) \\ + \sum_{\hat{\Gamma}_{ij} \in \hat{\mathcal{F}}} \left( \int_{\hat{\Gamma}_{ij}} \tilde{F}(\mathbf{U}, \hat{\mathbf{n}}) \llbracket \hat{\Psi} \rrbracket - \int_{\hat{\Gamma}_{ij}} \left( \left\{ \mathbf{A}(\mathbf{U}) (\nabla \mathbf{U} + \eta \hat{\ell}^{ij}(\llbracket \mathbf{U} \rrbracket)) \right\} \right) \llbracket \hat{\Psi} \rrbracket \right) = 0. \quad (15) $$

The last term in (12) and (15) depends on a penalty parameter $\eta$, which is set to ensure stability of discretisation. Indeed, it can be shown (e.g. [1]) that the BR2 method is stable for

$$ \eta \geq N_{\partial}, \quad (16) $$

where $N_{\partial}$ is the maximum number of face of the cells adjacent to the face $\hat{\Gamma}_{ij}$.

## 3.2 Derivation of the numerical scheme for axisymmetric models

As was remarked in the section 2, the axisymmetric model when written with Cartesian operators depends on source term that include derivatives, for which the derivation of an accurate numerical scheme is not straightforward [28]. Also the radial coordinate $r$ appears in front of the source term and the fluxes, which suggests that the system of equations is written on a space with a metric $r$ rather than on a Cartesian metric. This raises some questions on the expression of the lifting operator, that were already addressed for linear problems [14, 23, 9, 8, 26].
<figure><img src="image_5.png" /><figcaption>Figure 2: Three dimensional mesh cell generated by the rotation of a triangle with an angle $\theta_0$.</figcaption></figure>

For avoiding any ambiguity in the derivation of the numerical scheme for axisymmetric models, the derivation of the numerical scheme will not rely directly on the continuous axisymmetric formulation of the Navier-Stokes system, but rather on the axisymmetric simplification of the three dimensional numerical scheme (12) or (15), with the lifting operator defined by (13), (14). More precisely, starting from a computational domain $\Omega$ in the $(r, z)$ plane, a three dimensional computational domain $\hat{\Omega}$ is generated by rotation around the $z$ axis. We also start with a mesh of $\Omega$, composed of cells $K \in \mathcal{K}$. A mesh of $\hat{\Omega}$ is obtained by rotating the cells $K \in \mathcal{K}$, see Figure 2. We denote by $\mathcal{F}$ the set of the faces of $\mathcal{K}$, by $\Gamma_{ij}$ the face linking $K_i$ and $K_j$. A discontinuous approximation space is defined on the mesh $\mathcal{K}$: continuous in each cell $K \in \mathcal{K}$, and discontinuous across the faces $\Gamma_{ij}$. A set of basis $\hat{\Psi}$ is defined on each cell $\hat{K}$, such that

$$ \forall (r, \theta, z) \in \hat{K} \qquad \hat{\Psi}(r, \theta, z) = \Psi(r, z). $$

Then (12) or (15) provide a suitable numerical scheme for the three dimensional equations. Suppose now that no variable is depending on $\theta$. Then all the integrals on the cells $\hat{K}_i \in \hat{K}$ can be simplified into integrals on $K_i \in \mathcal{K}$, and all the integrals on $\hat{\Gamma}_{ij}$ can be simplified into integrals on $\Gamma_{ij}$. The remaining part of this section is dedicated to the reduction of all the integrals of (12) or (15) into integrals on the faces and cells of $\mathcal{K}$.

### 3.2.1 Simplification of the mass integral

The mass integral is

$$ \int_{\hat{K}} \hat{\Psi} \partial_t \mathbf{U} d\hat{K}. $$

It can be integrated in cylindrical coordinates. Provided $\mathbf{U}$ depends only on $r$ and $z$ (namely, the vectors were expressed in the basis $e_r, e_\theta$), we find

$$ \int_{\hat{K}} \hat{\Psi} \partial_t \mathbf{U} d\hat{K} = 2\pi \int_{K} \Psi \partial_t \mathbf{U} r dK. $$
### 3.2.2 Simplification of the lifting operator

On each face, the local lifting operator is defined as

$$ \forall \hat{\Psi} \quad \int_{\hat{K}_i \cup \hat{K}_j} \hat{\Psi} \cdot \hat{\ell}^{ij} (\llbracket u \rrbracket) = - \int_{\hat{\Gamma}_{ij}} \{\{\hat{\Psi}\}\} \cdot \llbracket u \hat{n} \rrbracket. $$

$\hat{\Psi}$ does not depend on $\theta$. As $\hat{n}$ is orthogonal to $e_\theta$, the right hand side always vanishes when $\hat{\Psi}$ is parallel to $e_\theta$. This means that $\hat{\ell}^{ij} (\llbracket u \rrbracket)$ has no component on $e_\theta$. Supposing that $u$ is axisymmetric, everything can be integrated in cylindrical coordinates for finding

$$ \forall \hat{\Psi} \quad 2\pi \int_{K_i \cup K_j} \hat{\Psi} \cdot \hat{\ell}^{ij} (\llbracket u \rrbracket) r \, dK = -2\pi \int_{\Gamma_{ij}} \{\{\hat{\Psi}\}\} \cdot \llbracket u \hat{n} \rrbracket r \, d\Gamma. $$

This last equality leads to the following definition

**Definition 5 (Weighted lifting operator).** The local weighted lifting operator $\ell_w^{ij}(\llbracket u \rrbracket)$ is a three dimensional vector defined as

$$ \ell_w^{ij}(\llbracket u \rrbracket) := (\ell_{w,r}^{ij}(\llbracket u \rrbracket), 0, \ell_{w,z}^{ij}(\llbracket u \rrbracket))^T, $$

with $\ell_{w,k}^{ij}(\llbracket u \rrbracket)$ defined for $k=r$ or $k=z$ as

$$ \forall \Psi \quad \int_{K_i \cup K_j} \Psi \ell_{w,k}^{ij}(\llbracket u \rrbracket) r \, dK = - \int_{\Gamma_{ij}} \{\{\Psi\}\} \llbracket u \rrbracket n \cdot e_k r \, d\Gamma. $$

The global weighted lifting operator $\mathcal{L}_w(\llbracket u \rrbracket)$ is a three dimensional vector defined as

$$ \mathcal{L}_w (\llbracket u \rrbracket) = \sum_{j \in \mathcal{N}(i)} \ell_w^{ij} (\llbracket u \rrbracket). $$

Note that for a vector $u$, the weighted lifting tensor is a 3 × 3 matrix defined as

$$ \ell_w^{ij}(\llbracket u \rrbracket) := (\ell_w^{ij}(\llbracket u_r \rrbracket), \ell_w^{ij}(\llbracket u_\theta \rrbracket), \ell_w^{ij}(\llbracket u_z \rrbracket)). $$

**Remark 3.** The weighted lifting operator defined here is derived from the original three dimension BR2 formulation. We note that, in previous work on axisymmetric problems for the compressible Navier-Stokes equations [3], the lifting operator used in the BR2 method is the usual Cartesian operator. Note that the numerical scheme with the weighted lifting operator is directly inheriting all the usual properties of the three dimensional scheme (consistency, stability, coercivity).

### 3.2.3 Simplification of the cell integrals

**Proposition 5 (Axisymmetric form of the cell integrals).** The cell integrals in the three dimension BR2 formulation

$$ \frac{1}{2\pi} \int_{\hat{K}} (\mathbf{F}(\mathbf{U}) - \mathbf{A}(\mathbf{U}) (\nabla \mathbf{U} + \hat{\mathcal{L}}(\llbracket \mathbf{U} \rrbracket))) \nabla \hat{\Psi} \, d\hat{K} $$

can be simplified into

$$ \int_K r \left( \mathbf{F}_{adv}^C(\mathbf{U}) - \mathbf{F}_{diff}^C(\mathbf{U}, \nabla_{\{r,z\}}^C \mathbf{U} + \mathcal{L}_w(\llbracket \mathbf{U} \rrbracket)) \right) \nabla_{\{r,z\}}^C \Psi \, dK \\ - \int_K \mathbf{F}_{diff}^{NC}(\mathbf{U}) \nabla_{\{r,z\}}^C \Psi \, dK - \int_K \mathbf{S}^{Can}(\mathbf{U}, \nabla_{\{r,z\}}^C \mathbf{U} + \mathcal{L}_w(\llbracket \mathbf{U} \rrbracket))) \Psi \, dK. \quad (17) $$
**Proof.** Continuous operator We first deal with the integral

$$\int_K (\mathbf{F}(\mathbf{U}) - \mathbf{A}(\mathbf{U})\nabla\mathbf{U}) \nabla\hat{\Psi}.$$

The mass component expressed in cylindrical coordinates gives

$$(\rho \mathbf{v}) \cdot \nabla \hat{\Psi} = \rho \mathbf{v}_r \frac{\partial \Psi}{\partial r} + \rho \mathbf{v}_z \frac{\partial \Psi}{\partial z} = \rho \mathbf{v} \cdot \nabla_{\{r,z\}}^C \Psi.$$

Concerning the momentum component, we have

$$\begin{align*}
(\rho \mathbf{v} \mathbf{v}^T + \mathrm{PI}_d - \bar{\tau}) : \nabla \hat{\Psi} &= (\rho \mathbf{v} \mathbf{v}^T + \mathrm{PI}_d - \bar{\tau}) : \begin{pmatrix} \frac{\partial \hat{\mathbf{\Psi}}_r}{\partial r} & \frac{\partial \hat{\mathbf{\Psi}}_\theta}{\partial r} & \frac{\partial \hat{\mathbf{\Psi}}_z}{\partial r} \\ -\frac{\hat{\mathbf{\Psi}}_\theta}{r} & \frac{\hat{\mathbf{\Psi}}_r}{r} & 0 \\ \frac{\partial \hat{\mathbf{\Psi}}_r}{\partial z} & \frac{\partial \hat{\mathbf{\Psi}}_\theta}{\partial z} & \frac{\partial \hat{\mathbf{\Psi}}_z}{\partial z} \end{pmatrix} \\
&= (\rho \mathbf{v} \mathbf{v}^T + \mathrm{PI}_d - \bar{\tau}) : \nabla_{\{r,z\}}^C \hat{\mathbf{\Psi}} - \frac{\hat{\mathbf{\Psi}}_\theta}{r} (\rho \mathbf{v}_r \mathbf{v}_\theta - \bar{\tau}_{r\theta}) \\
&\quad + \frac{\hat{\mathbf{\Psi}}_r}{r} (P + \rho \mathbf{v}_\theta^2 - \bar{\tau}_{\theta\theta}) \\
&= (\rho \mathbf{v} \mathbf{v}^T + \mathrm{PI}_d - \bar{\tau}) : \nabla_{\{r,z\}}^C \hat{\mathbf{\Psi}} + \frac{1}{r} \mathbf{S}^{\mathrm{Can}} \cdot \hat{\mathbf{\Psi}} \\
(\rho \mathbf{v} \mathbf{v}^T + \mathrm{PI}_d - \bar{\tau}) : \nabla \hat{\Psi} &= (\rho \mathbf{v} \mathbf{v}^T + \mathrm{PI}_d - \bar{\tau}^C) : \nabla_{\{r,z\}}^C \hat{\mathbf{\Psi}} - \frac{1}{r} \bar{\tau}^{\mathrm{NC}} : \nabla_{\{r,z\}}^C \hat{\mathbf{\Psi}} + \frac{1}{r} \mathbf{S}^{\mathrm{Can}} \cdot \hat{\mathbf{\Psi}}.
\end{align*}$$

It remains to deal with the energy equation, for which we have

$$((\rho E + P) \mathbf{v} - \kappa \nabla T - \bar{\tau} \cdot \mathbf{v}) \cdot \nabla \hat{\Psi} = ((\rho E + P) - \kappa \nabla_{\{r,z\}}^C T - \bar{\tau}^C \cdot \mathbf{v}) \cdot \nabla_{\{r,z\}}^C \hat{\Psi} - \frac{1}{r} (\bar{\tau}^{\mathrm{NC}} \cdot \mathbf{v}) \cdot \nabla_{\{r,z\}}^C \hat{\Psi}.$$

We can now integrate everything in cylindrical coordinates, replace the three dimensional test functions (with hats) by two dimensional test functions for finding

$$\frac{1}{2\pi} \int_{\bar{K}} (\mathbf{F}(\mathbf{U}) - \mathbf{A}(\mathbf{U})\nabla\mathbf{U}) \nabla\hat{\Psi} = \int_K r (\mathbf{F}_{\mathrm{adv}}^C(\mathbf{U}) - \mathbf{F}_{\mathrm{diff}}^C(\mathbf{U}, \nabla_{\{r,z\}}^C \mathbf{U})) \nabla_{\{r,z\}}^C \Psi \, dK \\ - \int_K \mathbf{F}_{\mathrm{diff}}^{\mathrm{NC}}(\mathbf{U}) \nabla_{\{r,z\}}^C \Psi \, dK - \int_K \mathbf{S}^{\mathrm{Can}}(\mathbf{U}, \nabla_{\{r,z\}}^C \mathbf{U}) \Psi \, dK.$$

**Lifting part** We are now interested in simplifying the following cell integral

$$\int_{\bar{K}} (\mathbf{A}(\mathbf{U}) \hat{\mathcal{L}} (\llbracket \mathbf{U} \rrbracket)) \nabla \hat{\Psi}.$$

The mass equation has no component. Concerning the momentum equation, we need to deal with

$$\bar{\tau}(\llbracket \mathbf{u} \rrbracket) := \mu(\hat{\mathcal{L}}(\llbracket \mathbf{u} \rrbracket) + \hat{\mathcal{L}}^T(\llbracket \mathbf{u} \rrbracket)) + \lambda \mathrm{Tr}(\hat{\mathcal{L}}(\llbracket \mathbf{u} \rrbracket)).$$
It is worth noting that as the second row of $\bar{\tau}(\llbracket u \rrbracket)$ is zero, we have $\bar{\tau}(\llbracket u \rrbracket) = \bar{\tau}^C(\llbracket u \rrbracket)$. Then

$$ \bar{\tau}(\llbracket u \rrbracket) : \nabla \hat{\Psi} = \bar{\tau}(\llbracket u \rrbracket) : \begin{pmatrix} \frac{\partial \hat{\Psi}_r}{\partial r} & \frac{\partial \hat{\Psi}_\theta}{\partial r} & \frac{\partial \hat{\Psi}_z}{\partial r} \\ -\frac{\hat{\Psi}_\theta}{r} & \frac{\hat{\Psi}_r}{r} & 0 \\ \frac{\partial \hat{\Psi}_r}{\partial z} & \frac{\partial \hat{\Psi}_\theta}{\partial z} & \frac{\partial \hat{\Psi}_z}{\partial z} \end{pmatrix} \tag{18} \\ = \bar{\tau}^C(\llbracket u \rrbracket) : \nabla^C_{\{r,z\}} \hat{\Psi} - \frac{\hat{\Psi}_\theta}{r} \bar{\tau}_{r\theta}(\llbracket u \rrbracket) + \frac{\Psi_r}{r} \bar{\tau}_{\theta\theta}(\llbracket u \rrbracket) $$

In this last equality, we recognise the lifting of the Cartesian diffusive operator, and the lifting evaluated at the components of the Canonical source term that depend on derivatives.

The energy term can be dealt in the same manner, and the Cartesian diffusive operator evaluated with the lifting is found. As done in the continuous case, the integrals can then be evaluated in cylindrical coordinates, and be explicitly integrated in $\theta$.

Last, the lifting operator is replaced by the weighted lifting operator of Definition 5.

**Summary** Gathering the part that depends on continuous derivatives and the part that depends on the lifting operator, we finally find that the three dimensional integral can be reduced into the computation of several two dimensional integrals which is given in (17) □

### 3.2.4 Simplification of the face integrals

For simplifying the face integrals, we will require the following property on the hyperbolic numerical flux:

**Definition 6** (Rotation invariant numerical flux). A numerical flux $\tilde{F}(U_L, U_R, \hat{n})$ for the Euler system is invariant by rotation if for any $R$, rotation of angle $\theta$, and by denoting

$$ \mathcal{R} = \begin{pmatrix} 1 & 0 & 0 \\ 0 & R & 0 \\ 0 & 0 & 1 \end{pmatrix}, $$

the following holds for any rotation

$$ \mathcal{R}^T \tilde{F}(\mathcal{R}U_L, \mathcal{R}U_R, R\hat{n}) = \tilde{F}(U_L, U_R, \hat{n}). $$

**Example** Let us consider the Lax-Friedrich numerical flux

$$ \tilde{F}(U, \hat{n}) = \{\{\mathbf{F}_{adv}(U) \cdot \hat{n}\}\} + \lambda \llbracket U \rrbracket \tag{19} $$

At the interface, using the definition of the normal vector, the normal flux $\mathbf{F} \cdot \mathbf{n}$, is given, in cylindrical coordinates, by

$$ \mathbf{F}_{adv}(\mathbf{U}) \cdot \hat{\mathbf{n}} = \begin{pmatrix} \rho u_n \\ \rho u_n u_r + P n_r \\ \rho u_n u_\theta \\ \rho u_n u_z + P n_z \\ (\rho E + P) u_n \end{pmatrix}, $$
where $u_n = u_r n_r + u_z n_z$ given the definition of the normal vector $\hat{n}$. Equation (19) in axisymmetric form is then given by

$$ \tilde{F}(\mathbf{U}, \hat{\mathbf{n}}) = \left\{ \left\{ \begin{pmatrix} \rho u_n \\ \rho u_n u_r + P n_r \\ \rho u_n u_\theta \\ \rho u_n u_z + P n_z \\ (\rho E + P) u_n \end{pmatrix} \right\} \right\} + \lambda \left[ \mathbf{U} \right]. $$

Note that, in the case without swirl, the third component is removed and gives the classical 2D Lax-Friedrich numerical flux.

We are now able to show the following proposition.

**Proposition 6 (Axisymmetric form of the face integrals).** If the numerical flux is invariant by rotation, then the face integrals in the three dimensional BR2 formulation

$$ \frac{1}{2\pi} \left( \int_{\hat{\Gamma}_{ij}} \tilde{F}(\mathbf{U}, \hat{\mathbf{n}}) \left[ \left[ \hat{\Psi} \right] \right] - \int_{\Gamma_{ij}} \left( \left\{ \left\{ \mathbf{A}(\mathbf{U}) \left( \nabla \mathbf{U} + \eta \hat{\ell}^{ij} (\left[ \mathbf{U} \right]) \right) \right\} \right\} \left[ \left[ \hat{\Psi} \right] \right] \right), $$

can be simplified into the axisymmetric form

$$ \int_{\Gamma_{ij}} \tilde{F}(\mathbf{U}, \hat{\mathbf{n}}) \left[ \left[ \hat{\Psi} \right] \right] r d\Gamma_{ij} - \int_{\Gamma_{ij}} \left\{ \left\{ \mathbf{F}_{\text{diff}}^{C}(\mathbf{U}, \nabla \mathbf{u} + \eta \hat{\ell}_{w}^{ij}(\left[ \mathbf{U} \right])) \right\} \left[ \left[ \hat{\Psi} \otimes \mathbf{n} \right] \right] r d\Gamma_{ij} \right. \\ \left. - \int_{\Gamma_{ij}} \left\{ \left\{ \mathbf{F}^{NC}(\mathbf{U}) \right\} \left[ \left[ \hat{\Psi} \otimes \mathbf{n} \right] \right] d\Gamma_{ij}. \right. \tag{20} $$

*Proof.* The face $\hat{\Gamma}_{ij}$ in the three dimensional formulation is induced by the rotation of a face $\Gamma_{ij}$, such that, using cylindrical coordinates, we may write

$$ d\hat{\Gamma}_{ij} = r d\theta d\Gamma_{ij}, $$

where $d\Gamma_{ij}$ is the infinitesimal surface element of the face in the two dimensional mesh. Moreover, on a rotated mesh cell, the normal vector $\hat{n}$ to a face $\hat{\Gamma}_{ij}$ does not have an angular component $n_\theta$ in cylindrical coordinates, i.e.

$$ \hat{\mathbf{n}} = (n_r, 0, n_z)^T. $$

**Convective part** First, let us consider the convective part, i.e.

$$ \int_{\hat{\Gamma}_{ij}} \tilde{F}(\mathbf{U}, \hat{\mathbf{n}}) \left[ \left[ \hat{\Psi} \right] \right]. $$

Considering a rotated mesh cell, the face integral for the convective part can be rewritten as

$$ \int_{\hat{\Gamma}_{ij}} \tilde{F}(\mathbf{U}, \hat{\mathbf{n}}) \left[ \left[ \hat{\Psi} \right] \right] = \int_{0}^{2\pi} \int_{\Gamma_{ij}} \tilde{F}(\mathbf{U}, \hat{\mathbf{n}}) \left[ \left[ \Psi \right] \right] r d\theta d\Gamma_{ij}. \tag{21} $$

With some abuse of notation, we denote by $\tilde{F}$ both the numerical flux that use the whole solution $\mathbf{U}: \tilde{F}(\mathbf{U}, \hat{\mathbf{n}})$ and the one that depends on the left and right states $\tilde{F}(\mathbf{U}_L, \mathbf{U}_R, \hat{\mathbf{n}})$.

In the special case of **Definition 6** where the rotation is done around the z-axis, this means that if a rotation invariant numerical flux is used, then its value in cylindrical coordinates does not
depend on $\theta$ provided $\mathbf{U}_L$ and $\mathbf{U}_R$ do not depend on $\theta$ in cylindrical coordinates. Then (21) can be simplified as

$$ 
\begin{aligned}
\int_{\hat{\Gamma}_{ij}} \tilde{F}(\mathbf{U}, \hat{\mathbf{n}}) \llbracket \hat{\Psi} \rrbracket &= \int_0^{2\pi} \int_{\Gamma_{ij}} \tilde{F}(\mathbf{U}, \hat{\mathbf{n}}) \llbracket \Psi \rrbracket r d\theta d\Gamma_{ij} \\
&= 2\pi \int_{\Gamma_{ij}} \tilde{F}(\mathbf{U}, \hat{\mathbf{n}}) \llbracket \Psi \rrbracket r d\Gamma_{ij}.
\end{aligned}
\quad (22) $$

**Diffusive part** Let us now consider the diffusive part of the BR2 formulation, which, in three dimensions, can be written

$$ \int_{\hat{\Gamma}_{ij}} \{ \mathbf{F}^v (\mathbf{U}, \nabla \mathbf{U} + \eta \hat{\mathbf{l}}^{ij} (\llbracket \mathbf{U} \rrbracket)) \} \llbracket \hat{\Psi} \otimes \mathbf{n} \rrbracket. $$

Similarly as in the case of cell integrals, the viscous flux can be written in cylindrical coordinates as a combination of a two dimensional conservative part, and a "non conservative" part, i.e.

$$ \mathbf{F}^v (\mathbf{U}, \nabla \mathbf{U} + \eta \hat{\mathbf{l}}^{ij} (\llbracket \mathbf{U} \rrbracket)) = \mathbf{F}_C^v (\mathbf{U}, \nabla \mathbf{U} + \eta \hat{\mathbf{l}}^{ij} (\llbracket \mathbf{U} \rrbracket)) + \mathbf{F}_{NC}^v (\mathbf{U}), $$

where the second part only depends on $\mathbf{U}$, and not on the gradient and lifting operator.

The mass equation has no component for this term. We are interested in the momentum equation, in which the viscous flux can be rewritten as

$$ \tau (\mathbf{U}, \nabla \mathbf{U} + \eta \hat{\mathbf{l}}^{ij} (\llbracket \mathbf{U} \rrbracket)) = \tau^C (\mathbf{U}, \nabla \mathbf{U} + \eta \hat{\mathbf{l}}^{ij} (\llbracket \mathbf{U} \rrbracket)) + \frac{1}{r} \tau^{NC} (\mathbf{U}), $$

Direct computation of $\hat{\Psi} \otimes \mathbf{n}$ in a rotated mesh cell, in cylindrical coordinates, gives

$$ \hat{\Psi} \otimes \mathbf{n} = \begin{pmatrix} \Psi_r n_r & 0 & \Psi_r n_z \\ \Psi_\theta n_r & 0 & \Psi_\theta n_z \\ \Psi_z n_r & 0 & \Psi_z n_z \end{pmatrix} = \Psi \otimes \mathbf{n}, $$

since the angular component $n_\theta = 0$.

Using cylindrical coordinates, we can then simplify the integral in a similar way as in the convective flux, i.e.

$$ 
\begin{aligned}
\int_{\hat{\Gamma}_{ij}} \{\hat{\tau}\} : [\hat{\Psi} \otimes \mathbf{n}] d\hat{\Gamma}_{ij} &= \int_0^{2\pi} \int_{\Gamma_{ij}} \{\tau\} : [\Psi \otimes \mathbf{n}] r d\theta d\Gamma_{ij} \\
&= 2\pi \int_{\Gamma_{ij}} \{\tau\} : [\Psi \otimes \mathbf{n}] r d\Gamma_{ij}.
\end{aligned}
\quad (23) $$

Similarly as in the case of cell integrals, we define

$$ \eta \bar{\tau} (\llbracket \mathbf{u} \rrbracket) := \eta \left( \mu (\hat{\mathbf{l}} (\llbracket \mathbf{u} \rrbracket) + \hat{\mathbf{l}}^T (\llbracket \mathbf{u} \rrbracket)) + \lambda \mathrm{Tr} (\hat{\mathbf{l}} (\llbracket \mathbf{u} \rrbracket)) \right), $$

such that the lifting part $\eta \tau (\llbracket \mathbf{u} \rrbracket)$ can be written in a similar way as previous face integrals, i.e.

$$ 
\begin{aligned}
\int_{\hat{\Gamma}_{ij}} \{\eta \bar{\tau}^c (\llbracket \mathbf{u} \rrbracket)\} : [\hat{\Psi} \otimes \mathbf{n}] d\hat{\Gamma}_{ij} &= \int_0^{2\pi} \int_{\Gamma_{ij}} \{\eta \bar{\tau}^c (\llbracket \mathbf{u} \rrbracket)\} : [\Psi \otimes \mathbf{n}] r d\theta d\Gamma_{ij} \\
&= 2\pi \int_{\Gamma_{ij}} \{\eta \bar{\tau}^c (\llbracket \mathbf{u} \rrbracket)\} : [\Psi \otimes \mathbf{n}] r d\Gamma_{ij}.
\end{aligned}
\quad (24) $$
The non-Cartesian part of the stress tensor $\boldsymbol{\tau}^{NC}$ can be treated similarly, resulting, for the momentum part, in the following

$$ \frac{1}{2\pi} \int_{\hat{\Gamma}_{ij}} \{\{\bar{\boldsymbol{\tau}}\}\} : [\hat{\Psi} \otimes \boldsymbol{n}] = \int_{\Gamma_{ij}} \{\{\boldsymbol{\tau}^C\}\} : [\Psi \otimes \boldsymbol{n}] r d\Gamma_{ij} + \int_{\Gamma_{ij}} \frac{1}{r} \{\{\boldsymbol{\tau}^{NC}\}\} : [\Psi \otimes \boldsymbol{n}] r d\Gamma_{ij}. \quad (25) $$

Regarding the energy equation, proceeding similarly as in the case of the cell integrals, we compute

$$ \int_{\hat{\Gamma}_{ij}} \{\{(-\kappa \nabla T - \bar{\boldsymbol{\tau}} \cdot \boldsymbol{v}) \cdot \boldsymbol{n}\}\} [\hat{\Psi}] d\hat{\Gamma}_{ij} = 2\pi \int_{\Gamma_{ij}} \{\{(-\kappa \nabla^C_{\{r,z\}} T - \boldsymbol{\tau}^c \cdot \boldsymbol{v}) \cdot \boldsymbol{n}\}\} [\Psi] r d\Gamma_{ij} \\ -2\pi \int_{\Gamma_{ij}} \frac{1}{r} \{\{\boldsymbol{\tau}^{NC} \cdot \boldsymbol{v}\} \cdot \boldsymbol{n}\} [\Psi] r d\Gamma_{ij} \quad (26) $$

**Final expression for the face integrals** Gathering (22), (23), (24), (25), and (26), the face integrals in the original three dimensional formulation can be rewritten as (20) □

**Remark 4.** The product $\hat{\Psi} \otimes \boldsymbol{n}$ can be rewritten

$$ \begin{pmatrix} \hat{\Psi}_r n_r & 0 & \hat{\Psi}_r n_z \\ \hat{\Psi}_\theta n_r & 0 & \hat{\Psi}_\theta n_z \\ \hat{\Psi}_z n_r & 0 & \hat{\Psi}_z n_z \end{pmatrix} = \underbrace{\begin{pmatrix} \hat{\Psi}_r n_r & 0 & \hat{\Psi}_r n_z \\ 0 & 0 & 0 \\ \hat{\Psi}_z n_r & 0 & \hat{\Psi}_z n_z \end{pmatrix}}_{2d \text{ part}} + \underbrace{\begin{pmatrix} 0 & 0 & 0 \\ \hat{\Psi}_\theta n_r & 0 & \hat{\Psi}_\theta n_z \\ 0 & 0 & 0 \end{pmatrix}}_{\text{swirl part}} $$

Then, using this decomposition, the product $\boldsymbol{\tau} : (\hat{\Psi} \otimes \boldsymbol{n})$ can be rewritten as a two dimensional $(r, z)$ part and a swirl contribution

$$ \boldsymbol{\tau} : (\hat{\Psi} \otimes \boldsymbol{n}) = (\boldsymbol{\tau} : \Psi \otimes \boldsymbol{n})_{\{r,z\}} + (\boldsymbol{\tau} : \Psi \otimes \boldsymbol{n})_{\theta}, $$

in accordance with the strong form of the axisymmetric equations (11).

### 3.2.5 Final expression of the scheme

Gathering the results of the previous subsections, namely the equations (17), (20), the following proposition was proven

**Proposition 7 (Axisymmetric discontinuous Galerkin scheme).** If a two dimensional axisymmetric model is discredited on a three dimensional mesh obtained by rotation of a two dimensional mesh, then the final numerical scheme on the two dimensional mesh reads

$$ \int_K \Psi \partial_t \mathbf{U} r dK + \int_K (\mathbf{F}_{adv}^C(\mathbf{U}) - \mathbf{F}_{diff}^C(\mathbf{U}, \nabla^C_{\{r,z\}} \mathbf{U} + \mathcal{L}_w(\llbracket \mathbf{U} \rrbracket))) \nabla^C_{\{r,z\}} \Psi r dK \\ - \int_K \mathbf{F}_{diff}^{NC}(\mathbf{U}) \nabla^C_{\{r,z\}} \Psi r dK - \int_{\Gamma_{ij}} \tilde{F}(\mathbf{U}, \hat{\mathbf{n}}) [\Psi] r d\Gamma_{ij} \\ + \int_{\Gamma_{ij}} \{\{\mathbf{F}_{diff}^C(\mathbf{U}, \nabla \mathbf{U}) + \eta \ell_w^{ij}(\llbracket \mathbf{U} \rrbracket)\}\} [\Psi \otimes \mathbf{n}] r d\Gamma_{ij} + \int_{\Gamma_{ij}} \{\{\mathbf{F}^{NC}(\mathbf{U})\}\} [\Psi \otimes \mathbf{n}] r d\Gamma_{ij} \\ = \int_K \mathbf{S}^{Can}(\mathbf{U}, \nabla^C_{\{r,z\}} \mathbf{U} + \mathcal{L}_w(\llbracket \mathbf{U} \rrbracket)) \Psi r dK. \quad (27) $$
### 3.3 Remark on the discretisation of the right hand side in Proposition 3

The DG discretisation obtained by simplifying the original three dimensional problem into a two dimensional problem using rotated mesh cells results in a numerical scheme which is comparable to that obtained by directly obtaining a weak formulation from the strong form of the axisymmetric Navier Stokes equations (11).

However, in the axisymmetric Navier-Stokes equations, the integration of the non Cartesian part of the diffusive flux is not straightforward, since it is a first order term, and a numerical flux has to be specified in the face integrals,

$$ \int_{\Gamma_{ij}} \hat{\mathbf{F}}^{NC}(\mathbf{U}) [\Psi \otimes \mathbf{n}] d\Gamma. $$

The numerical scheme obtained by simplifying the three dimensional problem directly introduces a centred numerical flux

$$ \int_{\Gamma_{ij}} \{\{\mathbf{F}^{NC}(\mathbf{U})\}\} [\Psi \otimes \mathbf{n}] d\Gamma. $$

It can also be noticed that the source term $S^{Can}$ is composed of two parts. The first part is the direct integration on cells of the source term appearing in the axisymmetric equations,

$$ \int_{K} S^{Can}(\mathbf{U}, \nabla_{\{r,z\}}^{C} \mathbf{U}) \Psi r dK. $$

We notice however that an additional term also appears, which depends of the lifting operator and takes the form

$$ \int_{K} S^{Can}(0, \mathcal{L}_{w}([\mathbf{U}])) \Psi r dK. $$

The relevance of the lifting operator in the source term will be discussed in the next section.

### 3.4 Link with dual consistent and asymptotic dual consistent discretisation of the source term

Dual consistency is a key property in the analysis of discontinuous Galerkin methods [1], for instance in the case of elliptic problem, it is used to prove optimal order of convergence in $L_2$ norm, and dual consistency of various DG methods have been studied in [18].

In the context of RANS turbulence modelling, Oliver [28] extended this analysis to the source terms arising from turbulence models, which depends non linearly on the gradient of the solution $\nabla u$. In particular, using a simplified elliptic model, he showed that in order to obtain a discretisation which converges with optimal order of convergence, a simple integration of the source term

$$ \int_{K} S(\mathbf{U}, \nabla \mathbf{U}) \Psi dK, $$

does not result in a dual consistent discretisation, and that in order to recover that property, correction terms need to be added. In particular, he showed that adding the lifting operator from the BR2 discretisation to the source term

$$ \int_{K} S(\mathbf{U}, \nabla \mathbf{U} + \mathcal{L}([\mathbf{U}])) \Psi dK, $$
results in an asymptotically dual consistent method, and recovers optimal order of convergence in $L_2$ norm.

The discretisation obtained when simplifying the original three dimensional formulation can be further developed. Indeed, the source term, which is composed of two parts - one from the convective flux, and one from the diffusive flux - can be rewritten in a more compact way. Indeed, the diffusive part of the source term is given by

$$ \int_K \mathbf{S}^v(\mathbf{U}, \nabla \mathbf{U}) \Psi \, r dK = \int_K \frac{\hat{\mathbf{\Psi}}_r}{r} (\bar{\tau}_{\theta\theta}(\nabla \mathbf{U}) + \bar{\tau}_{\theta\theta}(\llbracket \mathbf{u} \rrbracket)) \, r dK, $$

where the first part depends on the gradient $\nabla \mathbf{U}$ and the second part only on the lifting operator, as defined (18). Since the stress tensor is linear, we find that

$$ \int_K \mathbf{S}^v(\mathbf{U}, \nabla \mathbf{U}) \, r dK = \int_K \frac{\hat{\mathbf{\Psi}}_r}{r} (\bar{\tau}_{\theta\theta}(\nabla \mathbf{U} + \mathcal{L}(\llbracket \mathbf{U} \rrbracket))) \, r dK, $$

which is the asymptotically dual consistent discretisation from [28]. Thus, the simplification of the original three dimensional BR2 DG formulation using a rotated mesh is nothing but a dual consistent discretisation of the canonical source term.

## 3.5 Boundary conditions

In discontinuous Galerkin methods, boundary conditions are imposed weakly through the boundary face integrals. For geometries in which the axis of symmetry is not part of the domain, for instance in the case of a flow between two cylinders, classical boundary conditions on the flow variables $\mathbf{U}$ can be used.

For geometries in which the axis of symmetry $r = 0$ is part of the computational domain, the boundary conditions at the axis need to be specified. In particular, it is readily observable that most boundary integrals vanish for faces in which $r = 0$. Only the non-Cartesian part of the stress tensor remain, i.e.

$$ \int_{\Gamma_{ij}} \{\mathbf{F}^{NC}(\mathbf{U})\} : [\Psi \otimes \mathbf{n}] \, d\Gamma. $$

$\mathbf{F}^{NC}(\mathbf{U})$ depends only on $\mathbf{v}$. On the axis boundary, $\mathbf{v}_\theta$ should be set to 0 whereas the values of $\mathbf{v}_r$ and $\mathbf{v}_z$ should be taken as the inner values.

## 3.6 Practical implementation

The implementation started from a code able to deal with one, two, and three dimensional Navier-Stokes equations discredited with the BR2 discontinuous Galerkin method on unstructured hybrid meshes in equation (12).

The code is organized in modules called cells and faces integrators able to compute the integrals of (12).

The derivation of the numerical scheme for the axisymmetric Navier-Stokes equations in (27) resulted in a formulation that is slightly different from the original Cartesian formulation. As a consequence, in order to implement axisymmetric models on top of the existing two dimensional Cartesian code, the following change were considered:
* Add the weight $r$ in each of the integrals to switch from two dimensional Cartesian models to axisymmetric models.

* Add the weight $r$ also in the integrals required for the computation of the lifting for changing the classical lifting operator into the weighted lifting operator.

* Adding axisymmetric correction terms in the momentum and energy equations in the cells and faces which were not originally present in the two dimensional Cartesian formulation but appeared when simplifying the three dimensional problem (namely new terms arising from the non-Cartesian flux), i.e.

$$ \int_K \mathbf{F}^{\mathrm{NC}}(\mathbf{U}) \nabla \Psi \, dK, $$

for the cell integrals. They are added to the cell integrals in the BR2 formulation

$$ \sum_{K \in \mathcal{K}} \left( \int_K \Psi \partial_t \mathbf{U} r dK - \int_K (\mathbf{F}_{adv}(\mathbf{U}) - (\mathbf{A}(\mathbf{U})\nabla \mathbf{U})) \nabla \Psi r dK + \int_K \mathbf{F}^{\mathrm{NC}}(\mathbf{U}) \nabla \Psi \, dK \right) $$

Similarly, in the case of the face integrals, the derivation of the scheme starting from the three dimensional problem resulted in an additional non-Cartesian flux at the interface similar to the original diffusive flux, i.e. a centred flux

$$ \int_{\Gamma_{ij}} \{\{\mathbf{F}^{\mathrm{NC}}(\mathbf{U})\}\} : [\Psi \otimes \mathbf{n}] \, d\Gamma_{ij}. $$

This term is added to the face integrals in the BR2 formulation

$$ \sum_{\Gamma_{ij} \in \mathcal{F}} \left( \int_{\Gamma_{ij}} \left( \tilde{F}(\mathbf{U}, \mathbf{n}) [\Psi] - (\{\mathbf{A}(\mathbf{U})\nabla \mathbf{U}\} [\Psi] + \{\mathbf{A}^T(\mathbf{U})\nabla \Psi\} [\mathbf{U}]) \right) r d\Gamma_{ij} \right. \\ \left. + \int_{\Gamma_{ij}} \{\{\mathbf{F}^{\mathrm{NC}}(\mathbf{U})\}\} : [\Psi] \, d\Gamma_{ij} \right) $$

* For models in which the transformation from Cartesian to axisymmetric results in additional source terms, the source term cell integrals are computed in a dual consistent way by adding the global lifting operator to the gradient

$$ \int_K \mathbf{S}(\mathbf{U}, \nabla \mathbf{U} + \mathcal{L}_w(\llbracket \mathbf{U} \rrbracket)) \Psi r dK. $$

**Remark 5.** Using the formulation in (12), the global lifting operator needs not be explicitly computed and stored in memory. However, when needed, it can be reconstructed from the local lifting operators using the definition in equation (14), where the local lifting operators are computed in the penalty face integrals.
# 4 Numerical results

The validity and accuracy of the axisymmetric models implemented in the code AeroSol are assessed through a range of test cases of increasing difficulty: scalar diffusion, scalar advection-diffusion, Poiseuille flow, and a flow past a sphere at low Reynolds number. When an exact solution is known, the weighted $L_2$ error is computed, i.e.

$$||u - u_h||_r^2 = \int_{\Omega} |u - u_h|^2 r d\Omega.$$

This weighted error can be interpreted as the three dimensional error, up to a factor $2\pi$ on a rotated mesh. Moreover, in the case of a scalar elliptic problems, it can be seen that weighted function spaces appear as the natural space to study the numerical method [14, 23, 9, 8], and that typical error estimates can be obtained in weighted $H^1$ and $L_2$ norms. Considering the properties discussed in Remark 3, this weighted norm is the natural norm in which all the convergence theorems for linear problems hold.

In these simulations, the penalty coefficient used in the BR2 discretisation is the one in (16). In particular, since quadrangular elements are used, we have $N_\partial = 4$ and the penalty coefficient is set to $\eta = 6$. In the case of piecewise constant approximations, the penalty term also acts as a consistency term. In that case, the penalty parameter is set to $\eta = 2$ for quadrangular cells.

## 4.1 Scalar diffusion

As a first validation test case, a scalar elliptic problem is considered, in which no additional source needs to be added when switching from a three dimensional problem to the axisymmetric model. For an axisymmetric geometry, the diffusion equations reads

$$-\frac{1}{r}\mathrm{div}_{\{r,z\}}^{C}\left(r\nabla_{\{r,z\}}^{C}u\right) = f(r, z).$$

We consider the axisymmetric diffusion problem in a unit square $\Omega: (r, z) \in [0, 1] \times [0, 1]$, and the right hand side is set to

$$f(r, z) = \frac{\sin(r)}{r} \exp(-z).$$

Dirichlet boundary conditions are chosen such that the exact solution takes the form

$$u(r, z) = \cos(r) \exp(-z).$$

The diffusion problem is solved using uniform quadrangular meshes with size $h_0$ with $h_0 = 0.1$ and $i = 0, 1, 2, 3$, i.e. with $10 \times 10, 20 \times 20, 40 \times 40$ and $80 \times 80$ cells in the $r$ and $z$ direction. The numerical results obtained for the weighted $L_2$ error are shown in Figure 3a in the case the weighted lifting operator is used, and in Figure 3b with the regular lifting operator. In both cases, the optimal order of accuracy $O(h^{k+1})$ of the numerical scheme for $k = 0, 1, 2, 3$ is obtained. In particular, from a numerical point of view, we observe that both lifting operators lead to very similar results. This is not surprising for $k \ge 1$ as the role of the lifting operator in (27) is to stabilise the numerical scheme and because the two formulations of the lifting operators are equivalent up to the multiplication or division by the radius of a cell or a face. Still, the weighted lifting operator is the only one up to our knowledge on which the choice of penalisation parameter (16) gives a guarantee of optimal convergence for the axisymmetric formulation on linear problems. In the following, the weighted lifting operator, as determined when deriving the numerical scheme, will be used.
<figure><img src="image_6.png" /><figcaption>Figure 3: Convergence of the weighted $L_2$ in the case of an axisymmetric scalar diffusion problem</figcaption></figure>

## 4.2 Advection-Diffusion problem

We consider the advection-diffusion problem in a hollow cylinder, adapted from the three dimensional test case in [7]. In axisymmetric form, the scalar advection-diffusion writes

$$ \beta \cdot \nabla_{\{r,z\}}^{C}(ru) + \mathrm{div}_{\{r,z\}}^{C} \cdot (r\mu\nabla u) = 0, $$

where the advection velocity $\beta = (0, \beta_z)^T$. Dirichlet boundary conditions are imposed in order to obtain an exact solution of the form

$$ u(r, z) = \frac{\log(r)}{\log(r_2)} \left[ k_1 \exp\left(\frac{\beta_z z}{\mu}\right) + k_2 \right], $$

where $k_1$ and $k_2$ are two constants given by

$$ \left\{ \begin{array}{l} k_1 = \frac{1}{2 \left[ 1 - \exp\left(\frac{\beta_z L}{\mu}\right) \right]} \\ k_2 = 1 - k_1, \end{array} \right. $$

where $L$ is the height of the cylinder. Dirichlet boundary conditions are used in accordance with the exact solution $u(r, z)$.

The convergence of the axisymmetric advection-diffusion problem is analysed in a rectangular domain of dimension $\Omega: (r, z) \in [0.5, 1] \times [0, 1]$ using uniformly refined quadrangular meshes with size $h_0/2^i$, with $i = 0, 1, 2, 3$, i.e. with $5 \times 10, 10 \times 20, 20 \times 40$ and $40 \times 80$ cells in the $r$ and $z$ direction. The parameters are set as follows: the axial advection velocity is set to $\beta_z = 20$ and the diffusion coefficient $\mu = 5$.

The weighted $L_2$ error as a function of the mesh size $h$ for orders $k = 0, 1, 2, 3, 4$ is shown in Figure 4. The order of convergence is also computed, and the optimal order of convergence of the method $O(h^{k+1})$ is obtained.
<figure><img src="image_7.png" /><figcaption>Figure 4: Convergence of the weighted error with the mesh size h for the axisymmetric advection-diffusion problem.</figcaption></figure>

## 4.3 Poiseuille flow

In order to validate the axisymmetric solver for the Navier Stokes equations without swirl, we consider the case of a Poiseuille flow in an axisymmetric domain, which can be separated into two configurations: a flow between two cylinders and a flow in a tube.

These test-cases were adapted from three dimensional cylindrical Poiseuille flows implemented in the library AeroSol, which were previously used as validation test-cases for high order meshes [13]. These test-cases are also based on the two dimensional Poiseuille flow problem introduced in [10].

In both cases, the flow is driven by an external body force $f$, which induces a right hand side

$$ \begin{pmatrix} f_{\rho} \\ f_{\rho u} \\ f_{\rho e} \end{pmatrix} = \begin{pmatrix} 0 \\ \mathbf{f} \\ \mathbf{f} \cdot \mathbf{u} \end{pmatrix}, $$

where the term $\mathbf{f} \cdot \mathbf{u}$ is the work of the external force. The force is chosen so as to impose a parabolic velocity profile, i.e. the following equations are being solved

$$ \begin{aligned} \partial_t (r\mathbf{U}) + \mathrm{div}_{\{r,z\}} (r\mathbf{F}_{adv}^C(\mathbf{U})) ={}& \mathrm{div}_{\{r,z\}} (r\mathbf{F}_{diff}^C(\mathbf{U}, \nabla_{\{r,z\}}^C \mathbf{U})) \\ & + \mathrm{div}_{\{r,z\}} (\mathbf{F}_{diff}^{NC}(\mathbf{U})) + \mathbf{S}^{\mathrm{Can}}(\mathbf{U}, \nabla_{\{r,z\}}^C \mathbf{U}) + r\rho \begin{pmatrix} f_{\rho} \\ \mathbf{f} \\ \mathbf{f} \cdot \mathbf{u} \end{pmatrix}. \end{aligned} $$

### 4.3.1 Poiseuille flow between two cylinders

We first consider a flow between two cylinders of radii $r_1$ and $r_2$, in which the velocity $\mathbf{u}(r, z) = u_z(r)e_z$ is assumed to be parabolic, i.e. of the form

$$ u_z(r) = u_0 \left(1 - \frac{r}{r_1}\right) \left(1 - \frac{r}{r_2}\right), $$
which can be obtained by balancing the axial momentum equation so that

$$f_z = -\frac{\partial}{\partial r} \left( \mu r \frac{\partial u_z}{\partial r} (r) \right)$$

The forcing term $f$ can be computed and is given by

$$f = \begin{pmatrix} f_r \\ f_z \end{pmatrix} = \begin{pmatrix} 0 \\ -\frac{\mu u_0}{\rho} \frac{4r-r_1-r_2}{r_1 r_2 r} \end{pmatrix},$$

such that the right hand side is given by

$$\begin{pmatrix} f_{\rho} \\ \mathbf{f} \\ f_{\rho e} \end{pmatrix} = \begin{pmatrix} 0 \\ 0 \\ -\frac{\mu u_0}{\rho} \frac{4r-r_1-r_2}{r_1 r_2 r} \mathbf{f} \cdot \mathbf{u} \end{pmatrix}.$$

The cylinders are considered as isothermal walls with fixed temperature $T_w$,

$$T(r_1) = T(r_2) = T_w,$$

and periodic boundary conditions are used for in the streamwise direction.

Under these assumptions, the exact solution for the temperature is [13]

$$T(r) = \frac{4 \text{PrMa}_{\infty}^2 (\gamma - 1) T_w}{9 (\Delta r)^4} \left[ 9((r_1 + r_2)^2 + r^2)r^2 - 16(r_1 + r_2)r^3 \right] + k_1 + k_2 \log(r).$$

with $\Delta r = r_2 - r_1$, and where $k_1$ and $k_2$ are two constants determined so as to impose the wall temperature $T_w$, with

$$\left\{ \begin{aligned} k_1 &= \frac{(\log(r_2) - \log(r_1))T_w - \log(r_2)T_a + \log(r_1)T_b}{\log(r_2) - \log(r_1)}, \\ k_2 &= \frac{T_a - T_b}{\log(r_2) - \log(r_1)}, \end{aligned} \right.$$

where the temperatures $T_a$ and $T_b$ are defined as

$$\left\{ \begin{aligned} T_a &= \frac{4 \text{PrMa}_{\infty}^2 (\gamma - 1) T_w}{9 (\Delta r)^4} \left[ 9((r_1 + r_2)^2 + r_1^2)r_1^2 - 16(r_1 + r_2)r_1^3 \right], \\ T_b &= \frac{4 \text{PrMa}_{\infty}^2 (\gamma - 1) T_w}{9 (\Delta r)^4} \left[ 9((r_1 + r_2)^2 + r_1^2)r_2^2 - 16(r_1 + r_2)r_2^3 \right]. \end{aligned} \right.$$

The parameters are set as follows: we consider a flow of air, treated as an ideal gas with heat capacity ratio $\gamma = 1.4$. The centerline velocity $u_c = 1$, the reference density $\rho_{ref} = 0.001$, the Reynolds number $Re = 1$, the wall temperature $T_w = 10$, the Mach number $Ma_{\infty} = 0.2$ and the Prandtl number $Pr = 0.7$. Since we consider the centerline velocity $u_c$ as a parameter, we may also rewrite the velocity

$$u_z(r) = -\frac{4u_c r_1 r_2}{(\Delta r)^2} \left(1 - \frac{r}{r_1}\right) \left(1 - \frac{r}{r_2}\right).$$
<figure><img src="image_8.png" /><figcaption>Figure 5: Exact solution for the Poiseuille flow between two cylinders.</figcaption></figure>

<figure><img src="image_9.png" /><figcaption>Figure 6: Poiseuille flow between two cylinders - Problem definition.</figcaption></figure>

and the body force $\mathbf{f}$ as

$$ \mathbf{f} = \begin{pmatrix} f_r \\ f_z \end{pmatrix} = \begin{pmatrix} 0 \\ -\frac{4\rho_{\text{ref}}u_c^2}{\rho\text{Re}\Delta r} \frac{4r-\Delta r}{r} \end{pmatrix}. $$

Profiles for both the temperature and axial velocity can be found in Figure 5.

The geometry and definition of the problem are shown in Figure 6, with periodic boundary conditions on the left and right extremities of the domain. The numerical simulation is performed in a rectangular domain $\Omega: (r, z) \in [0.5, 1] \times [0, 1]$.

The convergence study is performed using a sequence of uniformly refined meshes of size $h_0 = 0.5$ for $i = 0, 1, 2, 3$, i.e. with $5 \times 10, 10 \times 20, 20 \times 40$ and $40 \times 80$ cells in the $r$ and $z$ direction respectively.

Numerical results for the Poiseuille flow between two cylinders are shown in Figure 7, in particular, the weighted $L_2$ errors for both the velocity and temperature profiles are shown for approximation orders $k = 0, 1, 2, 3, 4$, and the order of convergence of the method is found to be the optimal order $O(h^{k+1})$ for both variables.
<figure><img src="image_10.png" /><figcaption>Figure 7: Convergence of the weighted L₂ error with the mesh size h for the Poiseuille flow between two cylinders.</figcaption></figure>

<figure><img src="image_11.png" /><figcaption>Figure 8: Poiseuille flow in a tube.</figcaption></figure>

### 4.3.2 Poiseuille flow in a tube

We now consider a slightly different configuration, where the flow is now in a tube of radius R with imposed temperature $T_w$ at the wall (Figure 8).

As in the case of the flow between two cylinders, the velocity is assumed to be axial, i.e $u(r, z) = u_z(r)e_z$, and that it has the following expression

$$u_z(r) = u_c \left( 1 - \frac{r^2}{R^2} \right),$$
<figure><img src="image_12.png" /><figcaption>Figure 9: Exact solution for the Poiseuille flow in a tube</figcaption></figure>

which is again obtained using a forcing term $f$ in the right hand side of the equations

$$ \left( \begin{array}{c} f_{\rho} \\ \boldsymbol{f} \\ f_{\rho e} \end{array} \right) = \left( \begin{array}{c} 0 \\ 0 \\ -\frac{4\mu u_c}{\rho R^2} \boldsymbol{f} \cdot \boldsymbol{u} \end{array} \right) $$

Under these conditions, an exact solution for the temperature profile $T(r)$, with $T(R) = T_w$ can be computed and is given by

$$ T(r) = T_w \left[ 1 + \frac{\text{Pr}Ma_{\infty}^2(\gamma - 1)}{4} \left( 1 - \frac{r^4}{R^4} \right) \right] $$

The numerical simulation is performed in the computational domain $\Omega : (r, z) \in [0, 1] \times [0, 1]$ (Figure 8b), with periodic boundary conditions imposed in the streamwise direction.

The parameters used in the numerical simulations are set as follows: we consider a flow of air, treated as a perfect gas, with heat capacity ratio $\gamma = 1.4$. The centerline velocity $u_c = 1$, the reference density $\rho_{ref} = 0.001$, the Reynolds number $Re = 1$, the wall temperature $T_w = 10$, the Mach number $Ma_{\infty} = 0.2$, and the Prandtl number $Pr = 0.7$.

The exact solution for the temperature $T(r)$, along with the imposed axial velocity profile $v(r)$, is shown in Figure 9.

Convergence of the numerical method is assessed using a sequence of quadrangular meshes with cells of size $h = \frac{h_0}{2^i}$, with $h_0 = 0.1$ and $i = 0, 1, 2, 3$, i.e. with $10 \times 10, 20 \times 20, 40 \times 40$ and $80 \times 80$ cells in the $r$ and $z$ direction respectively.

The weighted $L_2$ error is shown in Figure 10 for the axial velocity and the temperature. The order of convergence computed from these errors is the expected optimal order of convergence $O(h^{k+1})$ for both variables.

## 4.4 Flow past a sphere in the axisymmetric regime

Finally, in order to validate the implementation of the axisymmetric Navier Stokes equations, we are interested in the flow past a sphere of diameter $d$, which has been used as a benchmark test
<figure><img src="image_13.png" /><figcaption>Figure 10: Convergence of the weighted $L_2$ error with the mesh size $h$ for the Poiseuille flow in a tube.</figcaption></figure>

case for three dimensional codes in [12, 17, 2].

In particular, despite being a rather simple configuration, the flow past a sphere can be divided into three regimes [16, 20] depending on the Reynolds number $Re_d$ (computed with respect to the diameter of the sphere $d$ and freestream quantities):

1. For small Reynolds number, namely $Re_d < 210$, the flow is expected to be in a steady axisymmetric flow regime, which is a behaviour that can be observed both experimentally [31] and numerically [12, 30]. In particular, an axisymmetric recirculation zone in the wake of the sphere is observed.

2. At slightly larger Reynolds number, i.e. $210 \le Re_d \lesssim 270 - 300$, a first bifurcation happens. While the flow remains steady, the recirculation zone in the wake of the sphere is no longer axisymmetric.

3. Last, if the Reynolds is further increased to $Re_d > 270 - 300$, the flow transition into an unsteady regime and vortex shedding [29] start taking place in the wake of the sphere.

In order to validate the axisymmetric code with existing experimental and numerical data, we will focus only on the first regime at low Reynolds number which is the only regime for which the experimental data are axisymmetric. The code could be run on the two other regimes, but it would produce axisymmetric data which could hardly be compared to the experimental results. In particular, we will consider the flow past a sphere at $Re_d = 100$ and $Re_d = 200$. The test case is that of a flow of air, which is considered to be a perfect gas with specific heat ratio $\gamma = 1.4$, the gas constant $R = 287 \text{ J kg}^{-1} \text{K}^{-1}$, with freestream Mach number $Ma_\infty = 0.1$, freestream pressure $P_\infty = 100000 \text{ MPa}$, freestream temperature $T_\infty = 300 \text{ K}$ and a constant Prandtl number $Pr = 0.7$.

The computational domain for the axisymmetric sphere test case, along with the boundary conditions used, is shown in Figure 11a. In particular, the surface of the sphere is considered to be an adiabatic wall, and subsonic inlet and outlet conditions are used with the aforementioned freestream values.
<figure><img src="image_14.png" /><figcaption>Figure 11: Geometry, boundary conditions and mesh for the case of the axisymmetric flow past a sphere.</figcaption></figure>

In order to guarantee high order solutions, the surface of the sphere also needs to be meshed with curved elements (e.g. Figure 11b). Every numerical simulations in the following were run using three meshes obtained by refining (splitting) the initial mesh in Figure 11b with respectively 476, 1736, and 6608 elements.

### 4.4.1 Sphere with Re<sub>d</sub> = 100

We first consider the case of a flow past a sphere at Re<sub>d</sub> = 100, which is in the axisymmetric regime described previously. Figure 12 shows the momentum magnitude and pressure field obtained using Q³ elements with the third mesh. In particular, the recirculation zone is visible in Figure 12a, and the ratio between length of the recirculation zone ℓ and the diameter of the sphere can be computed as ℓ/d ≈ 0.875, which is around the typical value found for a sphere at Re<sub>d</sub> = 100 [17, 20].

Experimental and numerical values can be found in the literature [12, 17, 30, 24, 22] regarding, for instance, the drag coefficient C<sub>d</sub> at various Reynolds numbers. In this test case, we are interested in comparing these values to the ones obtained with the axisymmetric solver. In particular, we are interested in the convergence to expected values using high order approximations on relatively coarse meshes.

It should be emphasised that, for an axisymmetric model, integral quantities on surfaces, such as the drag coefficient C<sub>d</sub>, should be simplified in a similar way to the simplification done when deriving the numerical scheme, i.e. we have

$$C_d = \frac{2\pi}{\rho u^2 A_{\text{ref}}} \int_S ((\boldsymbol{\tau} \cdot \mathbf{e}_z) \cdot \mathbf{n}) - P) r \, ds,$$

where, in the case of a sphere, the reference area A<sub>ref</sub> = πd²/4.

The drag coefficient C<sub>d</sub> was computed for Re<sub>d</sub> = 100 and is shown in Table 1 and in Figure 13, and shows good agreement with the numerical and experimental data available in the literature, even on relatively coarse meshes when the approximation order is increased, except for Q⁰ computations. In particular, it can be seen that the drag coefficient converges to a value of C<sub>d</sub> ≈ 1.093, except in the case where a piecewise constant approximation Q⁰ is used. In that case, the results of the numerical simulation were not valid. For instance, the Q⁰ approximation was not able to correctly predict the recirculation zone in the wake of the sphere.
<figure><img src="image_15.png" /><figcaption>(a) Momentum magnitude and streamlines near the surface of the sphere, with a visible recirculation zone.</figcaption></figure>

<figure><img src="image_16.png" /><figcaption>(b) Pressure isolines near the surface of the sphere. The isolines are taken as uniform values for $P \in [99500, 101000]$ with 50 samples.</figcaption></figure>

<caption>Figure 12: Numerical results for a flow past a sphere at $Re_d = 100$: Pressure and momentum fields. The results were obtained with the third mesh using $Q^3$ elements.</caption>

<table><caption>Table 1: Drag coefficient $C_d$ for the axisymmetric sphere at $Re_d = 100$. References values from Tabata et al [30]: $C_d = 1.0895$. Hartmann et al [17]: $C_d = 1.083$</caption><thead><tr><th></th><th>Q<sup>0</sup></th><th>Q<sup>1</sup></th><th>Q<sup>2</sup></th><th>Q<sup>3</sup></th><th>Q<sup>4</sup></th></tr></thead><tbody><tr><td>Mesh 1 (476 elements)</td><td>3.3983</td><td>1.4567</td><td>1.1354</td><td>1.0941</td><td>1.0928</td></tr><tr><td>Mesh 2 (1736 elements)</td><td>3.3095</td><td>1.1981</td><td>1.0991</td><td>1.0928</td><td>1.0926</td></tr><tr><td>Mesh 3 (6608 elements)</td><td>2.5603</td><td>1.1189</td><td>1.0935</td><td>1.0926</td><td>1.0926</td></tr></tbody></table>
<figure><img src="image_17.png" /><figcaption>Figure 13: Convergence of the drag coefficient</figcaption></figure>

<table><caption>Table 2: Drag coefficient $C_d$ for the axisymmetric sphere at $Re_d = 200$. References values from Tabata et al [30]: $C_d = 0.772$. Hartmann et al [17]: $C_d = 0.764$. Crivellini et al [12]: $C_d = 0.771$. Basile et al [2]: $C_d = 0.7781$.</caption><thead><tr><th></th><th>Q<sup>0</sup></th><th>Q<sup>1</sup></th><th>Q<sup>2</sup></th><th>Q<sup>3</sup></th><th>Q<sup>4</sup></th></tr></thead><tbody><tr><td>Mesh 1 (476 elements)</td><td>2.4568</td><td>1.1945</td><td>0.8247</td><td>0.7738</td><td>0.7737</td></tr><tr><td>Mesh 2 (1736 elements)</td><td>2.5977</td><td>0.8981</td><td>0.7808</td><td>0.7739</td><td>0.7739</td></tr><tr><td>Mesh 3 (6608 elements)</td><td>2.1005</td><td>0.8055</td><td>0.7749</td><td>0.7739</td><td>0.7739</td></tr></tbody></table>

The pressure coefficient along the surface of the sphere

$$C_p(\phi) = \frac{1}{0.5\rho u_{\infty}^2} (P(\phi) - P_{\infty})$$

where $\phi \in [0, \pi]$ is the angular position on the surface of the sphere, is shown in Figure 14 for the three meshes and shows good agreement with data from [22, 24], in particular as the order of the solution is increased.

### 4.4.2 Sphere with $Re_d = 200$

In this case, we consider a flow past a sphere with $Re_d = 200$, which is still in the axisymmetric regime. Figure 15 shows the numerical results for the momentum and pressure obtained with the third mesh and $Q^3$ elements, where the isolines and streamlines are shown for the pressure and momentum, respectively. The recirculation zone observed in Figure 15a is, as expected, longer than in the case $Re_d = 100$, and the ratio $\ell/d \approx 1.45$, which can be compared to values in the literature for $Re_d = 200$ [17, 20].

The drag coefficient $C_d$ is shown in Table 2 and in Figure 16, and it can be observed that it converges to a value $C_d = 0.7739$ when refining the mesh and approximation order, which is in agreement with values of the drag coefficient observed in the literature.

The pressure coefficient along the surface of the sphere is shown in Figure 17 for the three meshes and show good agreement with data from [22], in particular as the order of the solution is
<figure><img src="image_18.png" /><figcaption>Figure 14: Pressure coefficient $C_p(\phi)$ along the surface of the sphere at $Re_d = 100$.</figcaption></figure>
<figure><img src="image_19.png" /><figcaption>(a) Momentum magnitude and streamlines near the surface of the sphere, with a visible recirculation zone.</figcaption></figure>

<figure><img src="image_20.png" /><figcaption>(b) Pressure isolines near the surface of the sphere. The isolines are taken as uniform values for $P \in [99500, 101000]$ with 50 samples.</figcaption></figure>

Figure 15: Numerical results for a flow past a sphere at $Re_d = 200$: Pressure and momentum fields. The results were obtained with the third mesh using $Q^3$ elements.

<figure><img src="image_21.png" /><figcaption>Figure 16: Convergence of the drag coefficient</figcaption></figure>
increased.

# 5 Conclusions

In this work, the development of a discontinuous Galerkin method for the simulation of flows in axisymmetric geometries was considered. In the first place, the transformation of the strong form of the Navier Stokes equations from the three dimensional form into an axisymmetric formulation using cylindrical coordinates was discussed. The formulation of the equations that was obtained resulted in additional questions about the discretisation of terms which appear from geometrical manipulations on the equations, namely the non Cartesian part of the viscous flux, as well as the source term, which depends on the solution $U$ and its gradient $\nabla U$.

Instead of starting from the equations in strong form, a discretisation was derived by starting from the BR2 weak formulation of Navier-Stokes equations in three dimensions and simplifying it using three dimensional mesh induced by the rotation of a two dimensional mesh. By doing so, the aforementioned additional terms were naturally accounted for. More precisely, an expression of the numerical fluxes for both the advective and diffusive parts of the equations, as well as the discretisation of the non Cartesian terms in the diffusive part were obtained. Moreover, the resulting DG method directly provides a dual consistent discretisation of the geometrical source term by naturally adding the global lifting operator, which is a property required in order to ensure optimal orders of convergence in $L_2$ norm for problems with source terms depending on the gradient of the solution $\nabla U$. The axisymmetric BR2 method was then built on top of an existing code by simply adding the possibility to compute weighted integrals and adding the necessary additional terms. On the contrary to the previously proposed axisymmetric discontinuous Galerkin scheme [3], our discretisation relies on a weighted lifting operator, which is consistent with the axisymmetric numerical schemes proposed in [23, 14, 8]. As our numerical scheme is obtained by averaging over the $\theta$ variable the three dimensional scheme, it inherits all the properties (stability and convergence) and the weighted $L_2$ norm, under the classical hypothesis of (16).

The accuracy of the DG discretisation for axisymmetric problems was then validated on multiple and progressive test cases: scalar diffusion, advection diffusion and two types of Poiseuille flows. In these test cases, the optimal orders of convergence $O(h^{k+1})$ for approximation degrees up to $k=4$ in the weighted $L_2$ norm, which is the natural norm appearing for axisymmetric problems, were obtained. Even if our formulation and the formulation of [3] differ in the choice of the lifting operator, similar numerical results were obtained for the linear diffusion problem.

Finally, the numerical method was assessed on the problem of a laminar flow past a sphere in the axisymmetric regime, for which we were able to observe convergence of the aerodynamical coefficients (pressure, drag) to typical values found in experimental and numerical studies in the literature.

# References

[1] Douglas Norman Arnold, Franco Brezzi, Bernardo Cockburn, and L Donatella Marini. Unified analysis of discontinuous Galerkin methods for elliptic problems. *SIAM journal on numerical analysis*, 39(5):1749–1779, 2002.

[2] Francesca Basile, Jean-Baptiste Chapelier, Marta de la Llave Plata, Romain Laraufie, and Pascal Frey. Unstructured $h$-and $hp$-adaptive strategies for discontinuous Galerkin methods
<figure><img src="image_22.png" /><figcaption>Figure 17: Pressure coefficient $C_p(\phi)$ along the surface of the sphere at $Re_d = 200$.</figcaption></figure>
based on a posteriori error estimation for compressible flows. *Computers & Fluids*, 233:105245, 2022.

[3] Francesco Bassi, F Cecchi, Nicoletta Franchina, Stefano Rebay, and M Savini. High-order discontinuous Galerkin computation of axisymmetric transonic flows in safety relief valves. *Computers & fluids*, 49(1):203-213, 2011.

[4] Francesco Bassi and Stefano Rebay. GMRES discontinuous Galerkin solution of the compressible Navier-Stokes equations. In *Discontinuous Galerkin Methods*, pages 197-208. Springer, 2000.

[5] Francesco Bassi and Stefano Rebay. Numerical evaluation of two discontinuous Galerkin methods for the compressible Navier-Stokes equations. *International journal for numerical methods in fluids*, 40(1-2):197-207, 2002.

[6] Francesco Bassi, Stefano Rebay, G Mariotti, Savini Pedinotti, and M Savini. A high-order accurate discontinuous finite element method for inviscid and viscous turbomachinery flows. In *Proceedings of the 2nd European Conference on Turbomachinery Fluid Dynamics and Thermodynamics*, pages 99-109. Antwerpen, Belgium, 1997.

[7] Yuri Bazilevs, L. Beirao da Veiga, J. Austin Cottrell, Thomas J.R. Hughes, and Giancarlo Sangalli. Isogeometric analysis: approximation, stability and error estimates for h-refined meshes. *Mathematical Models and Methods in Applied Sciences*, 16(07):1031-1090, 2006.

[8] Zakaria Belhachmi, Christine Bernardi, and Simone Deparis. Weighted Clément operator and application to the finite element discretization of the axisymmetric Stokes problem. *Numerische Mathematik*, 105:217-247, 2006.

[9] Christine Bernardi and Yvon Maday. Properties of some weighted Sobolev spaces and application to spectral approximations. *SIAM Journal on Numerical Analysis*, 1989.

[10] Jean-Baptiste Chapelier, Marta De La Llave Plata, Florent Renac, and Éric Lamballais. Evaluation of a high-order discontinuous Galerkin method for the DNS of turbulent flows. *Computers & Fluids*, 95:210-226, 2014.

[11] Stephane Clain, David Rochette, and Rachid Touzani. A multislope MUSCL method on unstructured meshes applied to compressible Euler equations for axisymmetric swirling flows. *Journal of Computational Physics*, 229(13):4884-4906, 2010.

[12] Andrea Crivellini, Valerio D'Alessandro, and Francesco Bassi. Assessment of a high-order discontinuous Galerkin method for incompressible three-dimensional Navier-Stokes equations: Benchmark results for the flow past a sphere up to Re= 500. *Computers & Fluids*, 86:442-458, 2013.

[13] Simon Delmas. *Simulation d'écoulements pariétaux génériques à bas nombre de Mach pour l'amélioration du refroidissement des chambres de combustion aéronautiques*. Theses, Université de Pau et des Pays de l'Adour, December 2015.

[14] Simone Deparis. *Numerical analysis of axisymmetric flows and methods for fluid-structure interaction arising in blood flow simulation*. PhD thesis, EPFL, 2004.
[15] Bruno Despres. Axisymmetric geometry. *Discontinuous Galerkin Methods: Theory, Computation and Applications*, 11:315, 2012.

[16] David Fabre, Franck Auguste, and Jacques Magnaudet. Bifurcations and symmetry breaking in the wake of axisymmetric bodies. *Physics of Fluids*, 20(5):051702, 2008.

[17] Daniel Hartmann, Matthias Meinke, and Wolfgang Schröder. A strictly conservative Cartesian cut-cell method for compressible viscous flows on adaptive grids. *Computer Methods in Applied Mechanics and Engineering*, 200(9-12):1038-1052, 2011.

[18] Ralf Hartmann. Discontinuous Galerkin methods for compressible flows: higher order accuracy, error estimation and adaptivity. *Von Karman Institute Lecture Series*, 2006.

[19] Thomas Y. Hou and Philippe G. LeFloch. Why nonconservative schemes converge to wrong solutions: error analysis. *Mathematics of computation*, 62(206):497-530, 1994.

[20] TA Johnson and VC Patel. Flow past a sphere up to a Reynolds number of 300. *Journal of Fluid Mechanics*, 378:19-70, 1999.

[21] Kenneth Kuan-yun Kuo and Ragini Acharya. *Applications of turbulent and multiphase combustion*. John Wiley & Sons, 2012.

[22] B.P. Le Clair, A.E. Hamielec, and H.R. Pruppacher. A numerical study of the drag on a sphere at low and intermediate Reynolds numbers. *Journal of Atmospheric Sciences*, 1970.

[23] Hengguang Li. Finite element analysis for the axisymmetric Laplace operator on polygonal domains. *Journal of Computational and Applied Mathematics*, 235(17):5155-5176, 2011.

[24] Jacques Magnaudet, Mayela Rivero, and Jean Fabre. Accelerated flows past a rigid sphere or a spherical bubble. part 1. steady straining flow. *Journal of Fluid Mechanics*, 1995.

[25] Pierre-Henri Maire. A high-order cell-centered Lagrangian scheme for compressible fluid flows in two-dimensional cylindrical geometry. *Journal of Computational Physics*, 228(18):6882-6915, 2009.

[26] Bertrand Mercier and Genevieve Raugel. Résolution d'un problème aux limites dans un ouvert axisymétrique par éléments finis en r, z et séries de fourier en θ. *RAIRO. Analyse numérique*, 16(4):405-461, 1982.

[27] Bijan Mohammadi and Jacques Hervé Saiac. Turbulent compressible axisymmetric flows computation with the $k-ε$ model. *International Journal of Computational Fluid Dynamics*, 1(2):115-133, 1993.

[28] Todd A. Oliver and David L. Darmofal. Analysis of dual consistency for discontinuous Galerkin discretizations of source terms. *SIAM Journal on Numerical Analysis*, 47(5):3507-3525, 2009.

[29] H. Sakamoto and H. Haniu. A Study on Vortex Shedding From Spheres in a Uniform Flow. *Journal of Fluids Engineering*, 112(4):386-392, 12 1990.

[30] Masahisa Tabata and Kazuhiro Itakura. A precise computation of drag coefficients of a sphere. *International Journal of Computational Fluid Dynamics*, 1998.
[31] Sadatoshi Taneda. Experimental investigation of the wake behind a sphere at low Reynolds numbers. *Journal of the physical society of Japan*, 11(10):1104-1108, 1956.

[32] Sheng Wang and Eric Johnsen. High-order schemes for the Euler equations in cylindrical/spherical coordinates, 2017.
<figure><img src="image_23.png" /><figcaption>Figure 18: An original domain $\Omega$ of the $(r, z)$ plane generates a three dimensional volume $\hat{\Omega}$ by rotating it with an angle $\theta_0$ around the $z$ axis.</figcaption></figure>

## A Proof of Proposition 1

For proving the proposition, the original, three dimensional system is integrated over a domain $\hat{\Omega}$ obtained by rotation of a domain $\Omega$ in the $(r, z)$ plane around the symmetry axis between two angles $\theta_1$ and $\theta_2$, as shown in Figure 18.

Integrating the conservation law (7) on $\hat{\Omega}$ gives

$$ \int_{\hat{\Omega}} \partial_t u \, d\hat{\Omega} + \int_{\partial \hat{\Omega}} \mathbf{f} \cdot \mathbf{n} \, d(\partial \hat{\Omega}) = 0. $$

The time term can be integrated in cylindrical coordinates for finding

$$ \begin{aligned} \int_{\hat{\Omega}} \partial_t u \, d\hat{\Omega} &= \int_{\theta_1}^{\theta_2} \left( \int_{R(\theta)\Omega} \partial_t u(r, z) \, r dr dz \right) d\theta \\ &= \int_{\theta_1}^{\theta_2} \left( \int_{\Omega} \partial_t u(r, z) \, r dr dz \right) d\theta \\ &= (\theta_2 - \theta_1) \int_{\Omega} \partial_t u(r, z) \, r dr dz. \end{aligned} $$
We are now interested in simplifying the boundary integral:

$$
\begin{align*}
\int_{\partial \hat{\Omega}} \mathbf{f} \cdot \mathbf{n} \, d(\partial \hat{\Omega}) &= \int_{R(\theta_2)\Omega} \mathbf{f} \cdot \mathbf{n} \, d(R(\theta_2)\Omega) + \int_{R(\theta_1)\Omega} \mathbf{f} \cdot \mathbf{n} \, d(R(\theta_1)\Omega) \\
&\quad + \int_{\theta_1}^{\theta_2} \int_{R(\theta)\partial\Omega} \mathbf{f} \cdot \mathbf{n} \, r \, d(R(\theta)\partial\Omega) \, d\theta. \\
&= \int_{R(\theta_2)\Omega} \mathbf{f}_{\theta}(r, \theta_2, z) \, d(R(\theta_2)\Omega) - \int_{R(\theta_1)\Omega} \mathbf{f}_{\theta}(r, \theta_1, z) \, d\Omega \\
&\quad + \int_{\theta_1}^{\theta_2} \int_{R(\theta)\partial\Omega} \mathbf{f} \cdot \mathbf{n} \, r \, d(R(\theta)\partial\Omega) \, d\theta. \\
&= (\theta_2 - \theta_1) \int_{\partial\Omega} \mathbf{f} \cdot \hat{\mathbf{n}} \, r \, d(\partial\Omega),
\end{align*}
$$

because $\mathbf{f}_{\theta}(r, \theta_2, z) = \mathbf{f}_{\theta}(r, \theta_1, z)$ (because of axisymmetry of $\mathbf{f}$), and because along $R(\theta)\partial\Omega$, the normal is orthogonal to $\mathbf{e}_{\theta}$ and $\mathbf{f}_r$ and $\mathbf{f}_z$ do not depend on $\theta$. This ends the proof for scalar conservation laws.

We are now interested in the vector conservation laws (9). We first integrate (9) on $\hat{\Omega}$, and find

$$
\int_{\hat{\Omega}} \partial_t \mathbf{u} \, d\hat{\Omega} + \int_{\partial \hat{\Omega}} \bar{\tau} \cdot \mathbf{n} \, d(\partial \hat{\Omega}) = 0.
$$

The time term can be integrated as

$$
\begin{align*}
\int_{\hat{\Omega}} \partial_t \mathbf{u} \, d\hat{\Omega} &= \int_{\hat{\Omega}} \partial_t \mathbf{u} r dr d\theta dz \\
&= \int_{\hat{\Omega}} (\partial_t \mathbf{u}_r \mathbf{e}_r + \partial_t \mathbf{u}_\theta \mathbf{e}_\theta + \partial_t \mathbf{u}_z \mathbf{e}_z) \, r dr d\theta dz \\
&= \int_{\Omega} \partial_t \mathbf{u}_r \, r dr dz \int_{\theta_1}^{\theta_2} \mathbf{e}_r d\theta + \int_{\Omega} \partial_t \mathbf{u}_\theta \, r dr dz \int_{\theta_1}^{\theta_2} \mathbf{e}_\theta d\theta \\
&\quad + \int_{\Omega} \partial_t \mathbf{u}_z \, r dr dz \int_{\theta_1}^{\theta_2} \mathbf{e}_z d\theta,
\end{align*}
$$

because none of the components of $\mathbf{u}$ depend on $\theta$. We first remark that

$$
\int_{\theta_1}^{\theta_2} \mathbf{e}_z \mathrm{d}\theta = (\theta_2 - \theta_1) \mathbf{e}_z.
$$

We denote by $\tilde{\mathbf{e}}_r$ and $\tilde{\mathbf{e}}_\theta$ the vectors $\mathbf{e}_r$ and $\mathbf{e}_\theta$ evaluated at $\frac{\theta_1 + \theta_2}{2}$. We change all the integration over $\theta$ into an integration over $\theta - \frac{\theta_1 + \theta_2}{2}$, and define $\bar{\theta} = \frac{\theta_2 - \theta_1}{2}$, so that all integrations over $\theta$ will be performed between $-\bar{\theta}$ and $\bar{\theta}$. All the vectors will be decomposed into the basis $(\tilde{\mathbf{e}}_r, \tilde{\mathbf{e}}_\theta, \mathbf{e}_z)$. When dealing with an arbitrary $\theta$, the following formula will be used

$$
\begin{pmatrix} \tilde{\mathbf{e}}_r \\ \tilde{\mathbf{e}}_\theta \end{pmatrix} = \begin{pmatrix} \cos \theta & -\sin \theta \\ \sin \theta & \cos \theta \end{pmatrix} \begin{pmatrix} \mathbf{e}_r \\ \mathbf{e}_\theta \end{pmatrix}.
$$

We find then

$$
\tilde{\mathbf{e}}_r^T \int_{-\bar{\theta}}^{\bar{\theta}} \mathbf{e}_r \mathrm{d}\theta = \int_{-\bar{\theta}}^{\bar{\theta}} \cos \theta \, \mathrm{d}\theta = 2 \sin \bar{\theta},
$$
and we find also

$$ \tilde{\mathbf{e}}_{\theta}^{T} \int_{-\bar{\theta}}^{\bar{\theta}} \mathbf{e}_{\theta} \mathrm{d}\theta = \int_{-\bar{\theta}}^{\bar{\theta}} \cos \theta \mathrm{d}\theta = 2 \sin \bar{\theta}, $$

so that

$$ \int_{\hat{\Omega}} \partial_t \mathbf{u} \, d\hat{\Omega} = \left( 2 \sin \bar{\theta} \int_{\Omega} \partial_t \mathbf{u}_r \, r d\Omega \right) \tilde{\mathbf{e}}_r + \left( 2 \sin \bar{\theta} \int_{\Omega} \partial_t \mathbf{u}_{\theta} \, r d\Omega \right) \tilde{\mathbf{e}}_{\theta} + (\theta_2 - \theta_1) \int_{\Omega} \partial_t \mathbf{u}_z \, r d\Omega \mathbf{e}_z. $$

We are now interested in the boundary term

$$ \begin{aligned} \int_{\partial \hat{\Omega}} \bar{\tau} \cdot \mathbf{n} \, d(\partial \hat{\Omega}) &= \int_{R(\theta_2)\Omega} \bar{\tau} \cdot \mathbf{n} \, d(R(\theta_2)\Omega) + \int_{R(\theta_1)\Omega} \bar{\tau} \cdot \mathbf{n} \, d(R(\theta_1)\Omega) \\ &\quad + \int_{-\bar{\theta}}^{\bar{\theta}} \int_{R(\theta)\partial\Omega} \bar{\tau} \cdot \mathbf{n} \, r d(R(\theta)\partial\Omega) \, d\theta \\ &= \int_{R(\theta_2)\Omega} \bar{\tau} \cdot \mathbf{e}_{\theta}(\theta_2) \, d(R(\theta_2)\Omega) - \int_{R(\theta_1)\Omega} \bar{\tau} \cdot \mathbf{e}_{\theta}(\theta_1) \, d(R(\theta_1)\Omega) \\ &\quad + \int_{-\bar{\theta}}^{\bar{\theta}} \int_{R(\theta)\partial\Omega} \bar{\tau} \cdot \mathbf{n} \, r d(R(\theta)\partial\Omega) \, d\theta \end{aligned} $$

We are first interested in computing

$$ \mathbf{I}_S^1 = \int_{R(\theta_2)\Omega} \bar{\tau} \cdot \mathbf{e}_{\theta}(\theta_2) \, d(R(\theta_2)\Omega) - \int_{R(\theta_1)\Omega} \bar{\tau} \cdot \mathbf{e}_{\theta}(\theta_1) \, d(R(\theta_1)\Omega). $$

We now want to compute the dot product with $\tilde{\mathbf{e}}_r$ and $\tilde{\mathbf{e}}_{\theta}$. We remark that

$$ \left( \begin{array}{c} \tilde{\mathbf{e}}_r \\ \tilde{\mathbf{e}}_{\theta} \end{array} \right) = \left( \begin{array}{cc} \cos \bar{\theta} & -\sin \bar{\theta} \\ \sin \bar{\theta} & \cos \bar{\theta} \end{array} \right) \left( \begin{array}{c} \mathbf{e}_r(\theta_2) \\ \mathbf{e}_{\theta}(\theta_2) \end{array} \right) \quad \text{and} \quad \left( \begin{array}{c} \tilde{\mathbf{e}}_r \\ \tilde{\mathbf{e}}_{\theta} \end{array} \right) = \left( \begin{array}{cc} \cos \bar{\theta} & \sin \bar{\theta} \\ -\sin \bar{\theta} & \cos \bar{\theta} \end{array} \right) \left( \begin{array}{c} \mathbf{e}_r(\theta_1) \\ \mathbf{e}_{\theta}(\theta_1) \end{array} \right). $$

Therefore, by multiplying $\mathbf{I}_S^1$ by $\tilde{\mathbf{e}}_r^T$

$$ \begin{aligned} \tilde{\mathbf{e}}_r^T \mathbf{I}_S^1 &= \cos \bar{\theta} \int_{R(\theta_2)\Omega} \mathbf{e}_r^T(\theta_2) \bar{\tau} \cdot \mathbf{e}_\theta(\theta_2) \, d(R(\theta_2)\Omega) - \sin \bar{\theta} \int_{R(\theta_2)\Omega} \mathbf{e}_\theta^T(\theta_2) \bar{\tau} \cdot \mathbf{e}_\theta(\theta_2) \, d(R(\theta_2)\Omega) \\ &\quad - \cos \bar{\theta} \int_{R(\theta_1)\Omega} \mathbf{e}_r^T(\theta_1) \bar{\tau} \cdot \mathbf{e}_\theta(\theta_1) \, d(R(\theta_1)\Omega) - \sin \bar{\theta} \int_{R(\theta_1)\Omega} \mathbf{e}_\theta^T(\theta_1) \bar{\tau} \cdot \mathbf{e}_\theta(\theta_1) \, d(R(\theta_1)\Omega) \\ &= \cos \bar{\theta} \int_{R(\theta_2)\Omega} \bar{\tau}_{r\theta}(r, \theta_2, z) \, d(R(\theta_2)\Omega) - \sin \bar{\theta} \int_{R(\theta_2)\Omega} \bar{\tau}_{\theta\theta}(r, \theta_2, z) \, d(R(\theta_2)\Omega) \\ &\quad - \cos \bar{\theta} \int_{R(\theta_1)\Omega} \bar{\tau}_{r\theta}(r, \theta_1, z) \, d(R(\theta_1)\Omega) - \sin \bar{\theta} \int_{R(\theta_1)\Omega} \bar{\tau}_{\theta\theta}(r, \theta_1, z) \, d(R(\theta_1)\Omega) \quad \text{Inria} \\ \tilde{\mathbf{e}}_r^T \mathbf{I}_S^1 &= -2 \sin \bar{\theta} \int_{\Omega} \bar{\tau}_{\theta\theta}(r, 0, z) \, d\Omega. \end{aligned} $$
Then, multiplying $\mathbf{I}_S^1$ by $\tilde{\mathbf{e}}_\theta^T$

$$
\begin{align*}
\tilde{\mathbf{e}}_{\theta}^{T} \mathbf{I}_{S}^{1} &= \sin \bar{\theta} \int_{R(\theta_2)\Omega} \mathbf{e}_{r}^{T}(\theta_2) \bar{\tau} \cdot \mathbf{e}_{\theta}(\theta_2) \, d(R(\theta_2)\Omega) + \cos \bar{\theta} \int_{R(\theta_2)\Omega} \mathbf{e}_{\theta}^{T}(\theta_2) \bar{\tau} \cdot \mathbf{e}_{\theta}(\theta_2) \, d(R(\theta_2)\Omega) \\
&\quad + \sin \bar{\theta} \int_{R(\theta_1)\Omega} \mathbf{e}_{r}^{T}(\theta_1) \bar{\tau} \cdot \mathbf{e}_{\theta}(\theta_1) \, d(R(\theta_1)\Omega) - \cos \bar{\theta} \int_{R(\theta_1)\Omega} \mathbf{e}_{\theta}^{T}(\theta_1) \bar{\tau} \cdot \mathbf{e}_{\theta}(\theta_1) \, d(R(\theta_1)\Omega) \\
&= \sin \bar{\theta} \int_{R(\theta_2)\Omega} \bar{\tau}_{r\theta}(r, \theta_2, z) \, d(R(\theta_2)\Omega) + \cos \bar{\theta} \int_{R(\theta_2)\Omega} \bar{\tau}_{\theta\theta}(r, \theta_2, z) \, d(R(\theta_2)\Omega) \\
&\quad + \sin \bar{\theta} \int_{R(\theta_1)\Omega} \bar{\tau}_{r\theta}(r, \theta_1, z) \, d(R(\theta_1)\Omega) - \cos \bar{\theta} \int_{R(\theta_1)\Omega} \bar{\tau}_{\theta\theta}(r, \theta_1, z) \, d(R(\theta_1)\Omega) \\
\tilde{\mathbf{e}}_{\theta}^{T} \mathbf{I}_{S}^{1} &= 2 \sin \bar{\theta} \int_{\Omega} \bar{\tau}_{r\theta}(r, 0, z) \, d\Omega.
\end{align*}
$$

Last, multiplying $\mathbf{I}_S^1$ by $\tilde{\mathbf{e}}_z^T$, we find

$$
\begin{align*}
\tilde{\mathbf{e}}_z^T \mathbf{I}_S^1 &= \int_{R(\theta_2)\Omega} \mathbf{e}_z^T \bar{\tau} \cdot \mathbf{e}_\theta(\theta_2) \, d(R(\theta_2)\Omega) - \int_{R(\theta_1)\Omega} \mathbf{e}_z^T \bar{\tau} \cdot \mathbf{e}_\theta(\theta_1) \, d(R(\theta_1)\Omega) \\
&= \int_{R(\theta_2)\Omega} \bar{\tau}_{z\theta}(r, \theta_2, z) \, d(R(\theta_2)\Omega) - \int_{R(\theta_1)\Omega} \bar{\tau}_{z\theta}(r, \theta_1, z) \, d(R(\theta_1)\Omega) \\
\tilde{\mathbf{e}}_z^T \mathbf{I}_S^1 &= 0.
\end{align*}
$$

We are now interested in $\mathbf{I}_S^1$, the integral on $R(\theta)\partial\Omega$, which is rewritten for integrating between $\theta$ around $\bar{\theta}$

$$
\mathbf{I}_S^2 = \int_{-\bar{\theta}/2}^{\bar{\theta}/2} \int_{R(\theta)\partial\Omega} \bar{\tau} \cdot \mathbf{n} \, r d(\partial\Omega) d\theta.
$$

Locally, the normal to $R(\theta)\partial\Omega$ is orthogonal to $\mathbf{e}_\theta$ and therefore can be decomposed as

$$
\mathbf{n} = \omega_r \mathbf{e}_r + \omega_z \mathbf{e}_z,
$$

with $\sqrt{\omega_r^2 + \omega_z^2} = 1$, leading to

$$
\mathbf{I}_S^2 = \int_{-\bar{\theta}/2}^{\bar{\theta}/2} \int_{R(\theta)\partial\Omega} (\omega_r \bar{\tau} \cdot \mathbf{e}_r + \omega_z \bar{\tau} \cdot \mathbf{e}_z) \, r d(\partial\Omega) d\theta
$$

We now look for the components in the basis $(\tilde{\mathbf{e}}_r, \tilde{\mathbf{e}}_\theta, \tilde{\mathbf{e}}_z)$: we start by multiplying by $\mathbf{e}_z^T$

$$
\begin{align*}
\mathbf{e}_z^T \mathbf{I}_S^2 &= \int_{-\bar{\theta}/2}^{\bar{\theta}/2} \int_{R(\theta)\partial\Omega} (\omega_r \mathbf{e}_z^T \bar{\tau} \cdot \mathbf{e}_r + \omega_z \mathbf{e}_z^T \bar{\tau} \cdot \mathbf{e}_z) \, r \, d(\partial\Omega) \, d\theta \\
&= \int_{-\bar{\theta}/2}^{\bar{\theta}/2} \int_{R(\theta)\partial\Omega} (\omega_r \bar{\tau}_{rz} + \omega_z \bar{\tau}_{zz}) \, r \, d(\partial\Omega) \, d\theta \\
&= (\theta_2 - \theta_1) \int_{\partial\Omega} (\omega_r \bar{\tau}_{rz} + \omega_z \bar{\tau}_{zz}) \, r \, d(\partial\Omega) \\
\mathbf{e}_z^T \mathbf{I}_S^2 &= (\theta_2 - \theta_1) \int_{\partial\Omega} \bar{\tau} \cdot \hat{\mathbf{n}} \, r \, d(\partial\Omega)
\end{align*}
$$
We now multiply $\mathbf{I}_S^2$ by $\tilde{\mathbf{e}}_r^T$:

$$
\begin{align*}
\tilde{\mathbf{e}}_r^T \mathbf{I}_S^2 &= \int_{-\bar{\theta}}^{\bar{\theta}} \int_{R(\theta)\partial\Omega} (\omega_r \tilde{\mathbf{e}}_r^T \bar{\mathbf{\tau}} \cdot \mathbf{e}_r + \omega_z \tilde{\mathbf{e}}_r^T \bar{\mathbf{\tau}} \cdot \mathbf{e}_z) \, \mathrm{rd}(\partial\Omega) \, \mathrm{d}\theta \\
&= \int_{-\bar{\theta}}^{\bar{\theta}} \int_{R(\theta)\partial\Omega} (\omega_r (\cos\theta \mathbf{e}_r - \sin\theta \mathbf{e}_\theta)^T \bar{\mathbf{\tau}} \cdot \mathbf{e}_r + \omega_z (\cos\theta \mathbf{e}_r - \sin\theta \mathbf{e}_\theta)^T \bar{\mathbf{\tau}} \cdot \mathbf{e}_z) \, \mathrm{rd}(\partial\Omega) \, \mathrm{d}\theta \\
&= \int_{-\bar{\theta}}^{\bar{\theta}} \int_{R(\theta)\partial\Omega} (\omega_r \cos\theta \bar{\mathbf{\tau}}_{rr} + \omega_z \cos\theta \bar{\mathbf{\tau}}_{rz}) \, \mathrm{rd}(\partial\Omega) \, \mathrm{d}\theta \\
&= \left( \int_{-\bar{\theta}}^{\bar{\theta}} \cos\theta \, \mathrm{d}\theta \right) \int_{\partial\Omega} (\omega_r \bar{\mathbf{\tau}}_{rr} + \omega_z \bar{\mathbf{\tau}}_{rz}) \, \mathrm{rd}(\partial\Omega) \\
\tilde{\mathbf{e}}_r^T \mathbf{I}_S^2 &= 2 \sin\bar{\theta} \int_{\partial\Omega} \bar{\mathbf{\tau}} \cdot \hat{\mathbf{n}} \, \mathrm{rd}(\partial\Omega).
\end{align*}
$$

Last $\mathbf{I}_S^2$ is multiplied by $\tilde{\mathbf{e}}_\theta^T$:

$$
\begin{align*}
\tilde{\mathbf{e}}_{\theta}^{T} \mathbf{I}_{S}^{2} &= \int_{-\bar{\theta}}^{\bar{\theta}} \int_{R(\theta)\partial\Omega} (\omega_r \tilde{\mathbf{e}}_{\theta}^{T} \bar{\mathbf{\tau}} \cdot \mathbf{e}_r + \omega_z \tilde{\mathbf{e}}_{\theta}^{T} \bar{\mathbf{\tau}} \cdot \mathbf{e}_z) \, \mathrm{rd}(\partial\Omega) \, \mathrm{d}\theta \\
&= \int_{-\bar{\theta}}^{\bar{\theta}} \int_{R(\theta)\partial\Omega} (\omega_r (\sin\theta \mathbf{e}_r + \cos\theta \mathbf{e}_\theta)^T \bar{\mathbf{\tau}} \cdot \mathbf{e}_r + \omega_z (\sin\theta \mathbf{e}_r + \cos\theta \mathbf{e}_\theta)^T \bar{\mathbf{\tau}} \cdot \mathbf{e}_z) \, \mathrm{rd}(\partial\Omega) \, \mathrm{d}\theta \\
&= \int_{-\bar{\theta}}^{\bar{\theta}} \int_{R(\theta)\partial\Omega} (\omega_r \cos\theta \bar{\mathbf{\tau}}_{\theta r} + \omega_z \cos\theta \bar{\mathbf{\tau}}_{\theta z}) \, \mathrm{rd}(\partial\Omega) \, \mathrm{d}\theta \\
&= \left( \int_{-\bar{\theta}}^{\bar{\theta}} \cos\theta \, \mathrm{d}\theta \right) \int_{\partial\Omega} (\omega_r \bar{\mathbf{\tau}}_{rr} + \omega_z \bar{\mathbf{\tau}}_{rz}) \, \mathrm{rd}(\partial\Omega) \\
\tilde{\mathbf{e}}_{\theta}^{T} \mathbf{I}_{S}^{2} &= 2 \sin\bar{\theta} \int_{\partial\Omega} \bar{\mathbf{\tau}} \cdot \hat{\mathbf{n}} \, \mathrm{rd}(\partial\Omega).
\end{align*}
$$

Identifying the terms in the basis $(\tilde{\mathbf{e}}_r, \tilde{\mathbf{e}}_\theta, \mathbf{e}_z)$, leads to (10).

B Expression of vectorial differential operators in cylindrical coordinates and with axisymmetry

The coordinates of a vector **u** are transformed as

$$
\mathbf{u}^{\text{cyl}} = R_{\text{cyl}} \mathbf{u}^{\text{cart}}.
$$

The coordinates of a tensor $\bar{\mathbf{\tau}}$ are transformed as

$$
\bar{\mathbf{\tau}}^{\text{cyl}} = R_{\text{cyl}} \bar{\mathbf{\tau}}^{\text{cart}} R_{\text{cyl}}^{-1}.
$$

The divergence of a second order tensor in cylindrical coordinates are given as (see [21, Appendix A])

$$
\mathrm{div}_x \bar{\mathbf{\tau}} = \left( \frac{1}{r} \frac{\partial (r \bar{\mathbf{\tau}}_{rr})}{\partial r} + \frac{1}{r} \frac{\partial \bar{\mathbf{\tau}}_{r\theta}}{\partial \theta} - \frac{\bar{\mathbf{\tau}}_{\theta\theta}}{r} + \frac{\partial \bar{\mathbf{\tau}}_{rz}}{\partial z} \right) \mathbf{e}_r + \left( \frac{\partial \bar{\mathbf{\tau}}_{r\theta}}{\partial r} + \frac{2\bar{\mathbf{\tau}}_{r\theta}}{r} + \frac{1}{r} \frac{\partial \bar{\mathbf{\tau}}_{\theta\theta}}{\partial \theta} + \frac{\partial \bar{\mathbf{\tau}}_{\theta z}}{\partial z} \right) \mathbf{e}_\theta \\
+ \left( \frac{1}{r} \frac{\partial (r \bar{\mathbf{\tau}}_{rz})}{\partial r} + \frac{1}{r} \frac{\partial \bar{\mathbf{\tau}}_{\theta z}}{\partial \theta} + \frac{\partial \bar{\mathbf{\tau}}_{zz}}{\partial z} \right) \mathbf{e}_z
$$
When no component depends on $\theta$, this simplifies to

$$ \operatorname{div}_{\mathbf{x}} \bar{\tau} = \left( \frac{1}{r} \frac{\partial (r \bar{\tau}_{rr})}{\partial r} - \frac{\bar{\tau}_{\theta\theta}}{r} + \frac{\partial \bar{\tau}_{rz}}{\partial z} \right) \mathbf{e}_r + \left( \frac{\partial \bar{\tau}_{r\theta}}{\partial r} + \frac{2\bar{\tau}_{r\theta}}{r} + \frac{\partial \bar{\tau}_{\theta z}}{\partial z} \right) \mathbf{e}_\theta + \left( \frac{1}{r} \frac{\partial (r \bar{\tau}_{rz})}{\partial r} + \frac{\partial \bar{\tau}_{zz}}{\partial z} \right) \mathbf{e}_z $$

The gradient of a vector $\mathbf{u}$ is

$$ \nabla \mathbf{u} = \begin{pmatrix} \frac{\partial \mathbf{u}_r}{\partial r} & \frac{\partial \mathbf{u}_\theta}{\partial r} & \frac{\partial \mathbf{u}_z}{\partial r} \\ \frac{1}{r} \frac{\partial \mathbf{u}_r}{\partial \theta} - \frac{\mathbf{u}_\theta}{r} & \frac{1}{r} \frac{\partial \mathbf{u}_\theta}{\partial \theta} + \frac{\mathbf{u}_r}{r} & \frac{1}{r} \frac{\partial \mathbf{u}_z}{\partial \theta} \\ \frac{\partial \mathbf{u}_r}{\partial z} & \frac{\partial \mathbf{u}_\theta}{\partial z} & \frac{\partial \mathbf{u}_z}{\partial z} \end{pmatrix} $$

When no variable depends on $\theta$, this simplifies to

$$ \nabla \mathbf{u} = \begin{pmatrix} \frac{\partial \mathbf{u}_r}{\partial r} & \frac{\partial \mathbf{u}_\theta}{\partial r} & \frac{\partial \mathbf{u}_z}{\partial r} \\ -\frac{\partial \mathbf{u}_\theta}{\partial r} & \frac{\partial \mathbf{u}_r}{\partial r} & 0 \\ \frac{\partial \mathbf{u}_r}{\partial z} & \frac{\partial \mathbf{u}_\theta}{\partial z} & \frac{\partial \mathbf{u}_z}{\partial z} \end{pmatrix} $$
Inria

RESEARCH CENTRE
BORDEAUX - SUD-OUEST

200 avenue de la Vieille Tour
33405 Talence Cedex

Publisher
Inria
Domaine de Voluceau - Rocquencourt
BP 105 - 78153 Le Chesnay Cedex
inria.fr

ISSN 0249-6399