High order discretisation by Residual Distribution schemes
Nadege Villedieu
Promoter: Prof. Herman Deconinck
November 27, 2009
Contents
1 Introduction 1
1.1 Motivation . . . . 1
1.1.1 Evolution of RDS . . . . 2
1.1.2 High order discretisation . . . . 3
1.1.3 Shock capturing . . . . 3
1.1.4 Viscous term . . . . 4
1.1.5 Unsteady problems . . . . 4
1.2 Objective of the thesis . . . . 4
1.3 Layout of the manuscript . . . . 5
I Scalar case 7 2 State of the art 9 2.1 RDS on P
1elements . . . . 9
2.1.1 Geometry and notations . . . . 9
2.1.2 Residual Distribution schemes . . . . 11
2.1.3 Analogy with Petrov-Galerkin method . . . . 14
2.2 Extension to high order discretisations . . . . 16
2.2.1 Geometry and notations . . . . 16
2.2.2 Residual Distribution schemes on P
kelements (k > 1) 19 2.2.3 Analogy with Petrov-Galerkin method . . . . 20
2.3 Properties . . . . 21
2.3.1 Multidimensional Upwinding (MU ) . . . . 22
2.3.2 Positivity (P) . . . . 23
2.3.3 Accuracy and Order Preservation (OP ) . . . . 24
2.3.4 Godunov’s theorem . . . . 27
2.4 Example of two linear schemes . . . . 27
2.4.1 LDA scheme (MU, (k + 1)-th order, OP) . . . . 27
2.4.2 N scheme (MU, 1-st order, P ) . . . . 29
2.5 Non-linear schemes . . . . 32
2.5.1 N limited scheme . . . . 32
2.5.2 Blended scheme . . . . 34
iii
3 Non-oscillatory HO schemes 35
3.1 Motivation . . . . 35
3.2 Design of high order non-oscillatory schemes . . . . 35
3.2.1 Extension of the N scheme to P
kelements . . . . 35
3.2.2 Non-linear schemes . . . . 36
3.3 Results . . . . 38
3.3.1 Constant advection of a discontinuous profile . . . . . 38
3.3.2 Rotation of a discontinuous profile . . . . 42
3.3.3 Rotation with a source term . . . . 42
3.3.4 Rotation of a smooth profile . . . . 51
3.3.5 Grid convergence study . . . . 52
3.4 Conclusion . . . . 54
4 Extension to diffusive terms 55 4.1 Introduction . . . . 55
4.2 Background . . . . 56
4.2.1 Presentation of the usual method . . . . 56
4.2.2 Drawbacks of the usual method . . . . 56
4.3 Design of a new method based on SUPG . . . . 58
4.3.1 SUPG and linearity preserving RD . . . . 58
4.3.2 Extension to order preserving RD schemes . . . . 60
4.3.3 A numerical verification . . . . 61
4.4 Extension to P
kelements . . . . 64
4.4.1 RD and PG : a formulation with bubble functions . . 64
4.4.2 RD flavoured PG discretisations . . . . 65
4.4.3 RD schemes for advection-diffusion on P
2meshes . . 67
4.4.4 Quasi non-oscillatory schemes for advection diffusion . 68 4.4.5 Numerical experiments on P
2elements . . . . 68
4.5 Conclusion . . . . 73
5 Unsteady HO schemes 75 5.1 Introduction . . . . 75
5.2 Space-time methodology . . . . 76
5.3 Extension to high order discretisations . . . . 78
5.4 Linear space-time schemes . . . . 80
5.5 HO monotone unsteady schemes . . . . 80
5.5.1 Extension of ST-N(P
1) to high order discretisations . 81 5.5.2 Blended scheme . . . . 81
5.5.3 ST-N limited scheme (ST-LN) . . . . 82
5.6 Conclusion . . . . 82
CONTENTS v II Extension to system of equations 83
6 Non-linear system of steady CL 85
6.1 Generalities and notations . . . . 85
6.2 Methodology and properties . . . . 86
6.2.1 Matrix RD schemes . . . . 86
6.2.2 Multidimensional Upwind (MU ) . . . . 87
6.2.3 Accuracy and Order Preserving (OP) schemes . . . . 87
6.2.4 Monotonicity (M) . . . . 88
6.3 Matrix schemes . . . . 88
6.3.1 Linear schemes . . . . 88
6.3.2 Non-linear schemes . . . . 88
6.4 2D Euler equations . . . . 90
6.4.1 A particular blended scheme for the Euler equations: the Bx scheme . . . . 91
6.4.2 Boundary conditions . . . . 91
6.5 Results . . . . 97
6.5.1 Subsonic flow over a NACA-0012 airfoil . . . . 97
6.5.2 Transonic flow over a NACA-0012 airfoil . . . 103
6.5.3 Wedge . . . 109
6.6 Conclusion . . . 117
7 System of CL with a viscous term 119 7.1 Methodology . . . 119
7.1.1 Navier-Stokes equations . . . 119
7.1.2 Details of the implementation . . . 120
7.2 Results . . . 121
7.2.1 Flat plate . . . 121
7.2.2 Flow over a cylinder: Re = 40, M = 0.2, α = 0
◦. . . . 123
7.2.3 Flow over a NACA-0012: Re = 5000, M = 0.5, α = 0 . 125 7.3 Conclusion . . . 128
8 Unsteady matrix schemes 129 8.1 Methodology . . . 129
8.2 Unsteady matrix-schemes . . . 130
8.2.1 ST-LDA scheme (MU , OP) . . . 130
8.2.2 ST-N scheme (MU, 1
storder, P) . . . 130
8.3 Unsteady Euler equation . . . 130
8.3.1 Boundary conditions . . . 131
8.3.2 Results . . . 132
8.3.3 Convection of a vortex . . . 132
8.4 Results on acoustic test cases . . . 136
8.4.1 Linearised Euler equations . . . 136
8.4.2 Treatment of the source terms . . . 137
8.4.3 Fourier analysis . . . 139
8.4.4 Results . . . 140
8.5 Conclusion . . . 144
9 Conclusion 145 9.1 Achievements . . . 145
9.1.1 Steady inviscid flow and shock capturing . . . 145
9.1.2 Viscous flow . . . 146
9.1.3 Unsteady flow . . . 146
9.2 Future perspectives . . . 147
9.2.1 Steady hyperbolic CL and shock capturing . . . 147
9.2.2 Unsteady . . . 147
Acknowledgements
I would like to thank my supervisor Herman Deconinck for the opportunity that he gave me to do this thesis and for his understanding in this last months of my thesis.
I would also like to acknowledge Mario Ricchiuto for his help during the beginning of my thesis. I am very happy that even when he was in Bordeaux, he kept helping me when I needed.
Working at the Institute has been a great opportunity for me. I found there some colleagues and friends that helped me to achieve parts of my thesis. In particular, I would like to thanks the COOLFLUID team: Andrea Lani, Tiago Quintino and Thomas Wuilbault. They taught me how to use COOLFLUID with lot of patience. I would like to thank Tiago deeply for all his support during these years that I have been working with him. Then, I am also very grateful to Lilla Kolosz´ ar with who I have been working for the aeroacoustic. It was very nice to work with her.
I would also like to thank all the people that helped me to improve my manuscript: Alban Ligout my husband who spent lot of time correcting my English, Herman Deconinck, Tiago and Andrea. I thank also the members of my jury, Prof. Abgrall, Prof. Coussement, Prof. Deconinck, Prof. De- grez, Prof. Lacor, Prof. Migeot and Dr. Ricchiuto for all their interesting comments on the thesis.
N. Villedieu, Rhodes Saint Gen` ese, November 2009
vii
List of symbols and acronyms
Acronyms
B : Blended scheme
Bx : Blended scheme using a special shock detector of [36]
CFL : Courant-Friedrich-Levy Condition
CL : Conservative law
COOLFLUID : Computational Object Oriented Library for Fluid Dynamics.
CRD : Conservative Residual Distribution CPU : Central processing unit
DG : Discontinuous Galerkin
DOF : Degree of freedom
ENO : Essentially Non-Oscillatory (finite volume)
F E : Finite Element
FV : Finite Volume
HO : High Order
G : Galerkin method
LEE : Linearised Euler Equations LDA : Low Diffusion A scheme
LN : Limited Narrow scheme
MU : Multidimensional Upwind
N : Narrow scheme
NACA : National Advisory Committee for Aeronautics NQP : Number of quadrature points
OP : Order Preserving
P : Positivity
P e : Peclet number (4.4)
PETSc : Portable, Extensible Toolkit for Scientific computation
PG : Petrov-Galerkin
PSI : Positive Streamwise Invariant scheme
QRD : Method to compute the residual on each element that use the quasi-linear form of the CL
RD : Residual distribution
RDS : Residual distribution schemes ST-B : Space-time Blending scheme ST-LDA : Space-time LDA scheme ST-LN : Space-time N limited scheme ST-N : Space-time N scheme
SUPG : Streamline Upwind Petrov Galerkin
WENO : Weighted Essentially Non-Oscillatory (finite volume)
ix
Alphanumeric symbols
a
j: Weight of the quadratic rule used for the corrective flux : of the wall boundary condition
A
x, A
y: Jacobians of the fluxes f
x, f
y(system case)
~a : Jacobian of the flux F (scalar case) (m.s
−1)
~a
∗: Averaged Jacobian of the flux F (m.s
−1)
B
i: Distribution matrix
C
i: Scaling constant in the pseudo-time procedure d
N,Ti s: Cross-wind dissipation used to build the N scheme D
i: Set of triangle having i as a vertex
D
is: Set of sub-triangles having i as a vertex E : Total energy per unit of mass (J) F : Vector of convective flux
f
a: Face on the wall boundary, its length is |f
a| f
x(u) : x-component of the convective flux
f
y(u) : y-component of the convective flux
G : Viscous flux
h : Averaged size of the elements of the triangulation τ
h(m) H : Time Lagrangian basis function
: or ,when considering Euler equations, the enthalpy (J)
J
l:
Z
tn+1tn
H
ldt
k
i, K
i: Space upwind parameter/matrix (see equation (2.5) ˆ k
i: Space-time upwind parameter of level n
˜ k
i: Space-time upwind parameter of level n + 1 K : Prism of the space-time framework
k : Order of the discretisation
l
i: Face of triangle opposite to node i
M : Mach number
m : Dimension ( number of equations) of the system of equations
m
ij: Mass matrix
N : X
i∈Ts
k
i+!
−1N ˜ : X
i∈Ts
˜ k
i+!
−1n − 1, n, n + 1 : Reference to the past, present and future level in the : space-time prism
~ n
i: Inward normal of the side opposite to node i
p : Pressure (P a)
P e : Peclet number (adimensional number)
P e0 : Global Peclet number: minimal value of the formula (4.4) on the mesh P e1 : Local Peclet number defined by (4.16)
q : Heat flux (W.m
−2)
R
i: Matrix of the right eigenvectors of K
iCONTENTS xi sc : Shock detector of Bx scheme
s
i: Perturbation of the PG weight function S : Source term
S
T: Bubble function of the element T (defined by equation 2.22) T : Triangle of τ
h: or the temperature (Navier-Stoke equation) (K) t : Time (s)
∆t : Time step (s)
∆t
0: Time step of the low layer (P
2discretisation): t
n− t
n−1(s)
∆t
1: Time step of the top layer (P
2discretisation): t
n+1− t
n(s) u : Unknown of the scalar problem or
: x- component of the velocity when considering Euler equations (m.s
−1) U : Vector of the conservative variables
u
i: Value of the solution u
hat the point i
v : y-component of the velocity when considering Euler equation (m.s
−1) x : First space variable (m)
X ~
i: Vector which have as coordinate x
i, y
iy : Second space variable (m)
w
q: Weight of the quadrature formula
Greek symbols
α
i: Coefficient which is in front of the bubble function in ω
iα : Angle of incidence when considering the flow over a body (
◦) β
iT: Distribution coefficient to node i in the element T
δ
i: Parameter of the pseudo-time iterations:
∆τCi
ζ : Coefficient used to distribute the corrective flux in the wall boundary conditions θ : Blending coefficient
κ : Label of the pseudo-time iteration
: or thermal conductivity coefficient (W.m
−1.K
−1) Λ
i: Diagonal matrix of the eigenvalues of K
iµ : Dynamic viscosity (kg.m
−1.s
−1)
ν : Diffusion coefficient in the advection-diffusion equation (m
2.s
−1)
ξ : Parameter used to activate or not the hybridisation between F E and RDS : used to discretise advection-diffusion
ρ : Density (g.m
−2)
τ
h: Triangulation of the domain Ω τ : Pseudo-time (s)
: In Chapter 4, τ represents the tuning parameter of the SUPG method
∆τ : Pseudo-time step (s)
Φ : Residual
Φ
adv: Residual of the advective part:
Z
Ts
~a · ∇u dΩ Φ
source: Residual of the source term:
Z
Ts
S dΩ χ
T: Function equal to one in T and 0 outside ψ
iPk: k-th order basis function of node i
Ω : Domain on which we solve the conservation law ω
i: Weight function of the Petrov-Galerkin method
Superscripts symbols
h : Reference to the mesh (and time) dependent approximation l : Reference to the time t
lP
k: Reference to the order of discretisation T : Relative to the triangle T
T
i: Triangle number i
+ and − : Respectively positive and negative part.
~. : Spatial vectors
CONTENTS xiii
Subscripts symbols
i, j or k : Reference to the point i, j or k
in : Reference to an inflow boundary or node g : Reference to the gravity centre of the element out : Reference to an outflow boundary or node q : Reference to the quadrature point q s : Sub-triangle number s
x : x-component of a vector y : y-component of a vector
0 : When considering LEE, this refer to the mean flow
Mathematical symbols
∇(.) ~ : Gradient operator
∇(.). : Divergence operator bold : Vectors
|.| : Area (m
2)
||.|| : Euclidean norm (m)
Chapter 1
Introduction
1.1 Motivation
Nowadays, with the increasing air traffic, many flow issues receive increased attention: augmentation of the noise linked with this traffic, raise of the emissions by engines....Thanks to the improvements in Computational Fluid Dynamics, it is very interesting to use simulation tools to tackle all these problems. Indeed, the main advantage compared to experiments is that several geometries of aircraft can be tested without need to manufacture a new prototype each time. Moreover, to solve such problems as traffic congestion around airports it is necessary to catch the wake of the aircraft created by the flow. This is possible if we use very accurate, robust and efficient discretisation schemes which is the subject of this thesis.
Most of the fluid-mechanic problems can be modelled by a so-called Conservation Law (CL). It is a partial differential equation stating the conservation of some quantities like mass, momentum and energy over a given region of space and time. To design new numerical schemes for true flows it is necessary to start with simple CL for which the analytical solution is known. This allows to study well the scheme and to enlighten and solve some issues.
To solve a system of CL on complex problems like aeroacoustic or vortical flow, it is desirable to use a scheme that would be high order accurate (> 2) and which support is compact (only close neighbours are involved in the scheme). Another interesting property is upwinding. Actually, in many applications where an advective phenomenon is present, upwind schemes can be more accurate on this kind of problems than centred ones. Indeed, their construction follows more closely the physic of the flow. In this thesis we will develop multidimensional upwind residual distribution schemes (RDS). The multidimensional upwind residual distribution schemes are a very robust class of schemes for the solution of hyperbolic systems of equations. Their main advantages are the following:
1
• They are designed for truly unstructured grids which is useful when working with complex geometry.
• They use multidimensional upwinding , rendering the solution less de- pendent on the regularity and direction of the mesh unlike finite vo- lume method, which is based on the solution of quasi 1D Riemann problems in the direction of the edge normals. Basically, the multidi- mensional upwinding reduces cross diffusivity, giving a higher resolu- tion.
• They possess a multidimensional dissipation which allows to avoid any tuning of the artificial dissipation as in stabilised Finite Element method (F E )
• Like the F E method, a compact stencil is used, allowing an easier code implementation and parallelisation and more sparseness in the system matrix.
• Thanks to a residual property truly high order schemes can be con- structed on arbitrary unstructured meshes.
Application of these schemes to the solution of steady and unsteady conser- vation laws has already shown the potential of the method [62], [88], [38], [54]. Next, we will give a small historical review of RDS. Finally, we will quickly describe how RDS is designed for shock capturing, viscous flow....
and compare these strategies with the one employed by other methodologies.
1.1.1 Evolution of RDS
The concept of fluctuation splitting was first introduced in the eighties by P.L. Roe [97]. This new concept was an open door for a brand new class of methodologies which has been developed in the last decades. As already mentioned above, what makes this method so attractive is upwinding that has been first applied to RDS by P.L. Roe and D. Sidilkover [95, 96, 98, 105].
Since then, these schemes has been improved by several research groups:
University of Michigan [111, 61, 67, 69, 68, 85, 66] under the supervision of P. L. Roe, Von Karman Institute led by H. Deconinck [107, 32, 100, 101, 76, 75, 17, 49, 116, 28, 26, 27, 84, 39, 118, 120], University of Bordeaux under the guidance of R. Abgrall [3, 5, 63, 1, 8, 4, 64, 59], Politecnico di Bari lead by M. Napolitano [79, 77, 80, 74, 72, 78, 99, 81], the University of Leeds under the supervision of M.E. Hubbard [45, 44, 46, 47] and University of Lund (D. Caraeni) [20, 19]. In the last years, this methodology has shown its potential on many applications:
• Magnetohydrodynamics (MHD) : [25, 24]
1.1. MOTIVATION 3
• Hypersonic flows including thermo-chemical non-equilibrium : [35, 56, 55, 54]
• Two phase flows : [112, 87]
• Moving meshes, aero-elasticity : [37, 36]
• Shallow water : [89, 87, 48, 41]
• Acoustic : [52, 51]
Finally, in the last decades the extension to higher order discretisations has been developed [93, 110, 92, 117, 118, 120, 10, 58, 109].
1.1.2 High order discretisation
Since, we use a finite element discretisation, the main advantage is that the support of the scheme is always the neighbour elements of a node. This is not the case in methodologies such as WENO (Weighted Essentially Non- Oscillatory) or ENO (Essentially Non-Oscillatory) finite volume or finite difference [104, 102] where a reconstruction is necessary which restricts the performance of the method on unstructured meshes. In the RDS family, several strategies have been developed. R. Abgrall et al. [2, 110] developed the Lax-Fredrichs scheme that uses a central distribution of the residual but which makes the distribution in high order elements easy and efficient. In our case, since we want to distribute to the downwind nodes it is necessary to split the high order elements in linear elements where we know how to use a multidimensional upwind distribution [2, 117]. When considering high order discretisation, because of the low dissipation, it is more difficult to catch well the discontinuities such as shocks.
1.1.3 Shock capturing
There are lots of technologies available to cure the spurious oscillations near
shocks. In the Finite Volume (FV) methodology it is usuall to reconstruct
the flux using the side of the discontinuity having less spurious oscillations
[43, 50]. One technique used by Discontinuous Galerkin (DG) is to decrease
locally the order of the polynomial discretisation allowing a monotone so-
lution. This strategy needs to be combined with a shock detector in order
to not decrease the accuracy of the solution in the part where the solution
is smooth. The addition of an artificial viscosity is also a strategy used by
Discontinuous Galerkin [82]. This methodology was first used by [119]. The
main drawback is that it is necessary to tune well the amount of dissipation
that one want to add. Finally, in RDS two strategies are used. Or we limit
the distribution coefficient of a first order and monotone scheme, or we blend
the monotone scheme with an high order one [64, 93].
1.1.4 Viscous term
Since viscosity is an isotropic phenomenon, upwinding is not the optimal way to discretise it. Usually, it is better to use a central scheme to discretise viscous terms. In the Finite Volume strategy to solve this duality they use different discretisations (not consistent between each other) for both physics. In fact, in RDS, the usual strategy is not much different, since the common approach is to discretise the viscous part by a Galerkin method.
Unfortunately, when using quadratic elements, this lack of consistency yields a scheme that does not even converge. For this reason, it is necessary to find a scheme that is still consistent with the discretisation of the convective part and that is in agreement with the physical property of viscosity. A natural way to discretise the viscous term would be to include it in the residual, but unfortunately it is not possible to compute the residual of the viscous term because it involves second order derivatives of the unknowns.
One possible solution to this problem is described in [66] for the solution of the scalar advection-diffusion. There, the author uses the gradient of the solution as an unknown resulting in a first order system of equations which is solved by a RDS. This methodology is also used by other methods such as Discontinuous Galerkin [15] or spectral finite-volume method [108]. The approach used here is different. We build a continuous weight function such that RDS and PG are equivalent on a linear advection problem. Then, the convective part is discretised by RD and the viscous part by PG.
1.1.5 Unsteady problems
A good discretisation of the time dependency is very important to keep accuracy in time. One way to do it, is to use a finite element mass matrix.
The main drawback is the difficulty to construct non-oscillatory schemes.
Another way used by the Discontinuous Galerkin methodology and the finite volume is to use a Runge-Kutta method to discretise the time dependency of the problem [23]. The best way to have a consistent discretisation of time is to use a space-time framework. This is the strategy used by Van der Vegt et al. [113, 114]. In this case the discretisation is discontinuous both in time and in space. In fact, we will use exactly the same strategy but using a continuous discretisation.
1.2 Objective of the thesis
This thesis was involved in two projects that define its objectives. The
first one is an European Union project called ”A European project on the
development of adaptive higher order variational methods for aerospace ap-
plications“ (ADIGMA). The goal of the project is to explore innovative high
order numerical methodologies for application in aircraft industries. The de-
1.3. LAYOUT OF THE MANUSCRIPT 5 sign of such methods is done in this thesis based on easy geometries such as NACA airfoil, to be able to study well their performances. In particular, in ADIGMA the objective of this thesis was to provide:
• High order schemes for non-viscous flow (2D Euler equations)
• Good shock capturing
• High order schemes for viscous flow (2D Navier-Stokes equations) The second project is a Strategic Basic Research (SBO) project of the Flemish government organisation IWT called CAPRICORN. The goal of this project is to develop high order methodologies to understand the cre- ation and propagation of sound of confined flows. The success of the project would allow to decrease the sound created by an aircraft. In particular, the objective of this thesis in this second project is to apply high order residual distribution schemes to aeroacoustic problems and more particularly to Li- nearised Euler Equations (LEE). The design of proper boundary conditions for acoustics is not done here and is still under development.
To be able to work on all these applications, it was usefull to use a Multi-physics code to avoid the implementation of the whole methodology for each new set of equations. This has been the main motivation to use COOLFLUID [83, 57], an in-house code of the Von Karman Institute. The other advantage was the possibility to run simulations in parallel and with implicit discretisation without need for much implementation. In fact, the scalar schemes and their extension to steady/unsteady Euler equations and Navier-Stokes equations were first implemented in a personal reseach code to test and understand well the main issues. Then, all these schemes were added to COOLFLUID. So, most of the results presented here were obtained with COOLFLUID. The exceptions are the results of chapter 4 and the flat plate simulation.
Finally, we want to clarify that, in all this thesis we deal only with a high order discretisation for the solution. The geometries are still discretised by linear elements. The extension to curved elements is still under development but some preliminary results are already available in [120].
To conclude, the main objective here is to compare the results obtained with 2
nd, 3
rdand 4
thorder residual distribution schemes in order to under- stand the advantages and disadvantages of high order schemes.
1.3 Layout of the manuscript
This manuscript is divided in two parts. The first part is dedicated to the
design of the high order schemes for scalar equations and focus more on the
theoretical design of the schemes. The second part deals with the extension
to system of equations, in particular we will compare the performances of 2
nd, 3
rdand 4
thorder schemes.
The first part is subdivided in four chapters:
• The aim of the second chapter is to present the multidimensional up- wind RDS and to explain what was the status of their development at the beginning of this work.
• The third chapter is dedicated to the first contribution: the design of 3
rdand 4
thorder quasi non-oscillatory schemes.
• The fourth chapter is composed of two parts:
– We start by understanding the non-uniformity of the accuracy of the 2
ndorder schemes for advection-diffusion problem. To solve this issue we use a Finite Element (F E ) hybridisation.
– This deep study of the 2
ndorder scheme is used as a basis to design a 3
rdorder scheme for advection-diffusion.
• Finally, in the fifth chapter we extend the high order quasi non- oscillatory schemes to unsteady problems.
In the second part, we extend the schemes of the first part to systems of equations as follows:
• The sixth chapter deals with the extension to steady systems of hyper- bolic equations. In particular, we discuss how to solve some issues such as boundary conditions and the discretisation of curved geometries.
• Then, we look at the performance of 2
ndand 3
rdorder schemes on viscous flow.
• Finally, we test the space-time schemes on several test cases. In parti-
cular, we will test the monotonicity of the space-time non-oscillatory
schemes and we apply RDS to acoustic problems.
Part I
Scalar case
7
Chapter 2
State of the art
In this chapter, we consider the steady advection equation in two space dimensions:
∂u
∂t + ∇ · F (u) = S ∀(x, y) ∈ Ω ⊂ R
2(2.1) where u ∈ R and F = (f
x, f
y) ∈ R
2, and S(u, x, y) is a source term. We will present the RD methodology and its properties. In particular, we will first focus on the basic schemes on triangular P
1elements. The second section is dedicated to the extension to P
kelements (k > 1). To begin with, we will point out the utility of a high order discretisation. Then we will present how we split the P
kelements in several sub-elements in which we distribute the high order residual as in a P
1element. In the third section, we will define and explain the importance of the main properties of RDS:
Multidimensional Upwinding (MU ), Positivity (P ) and Order Preservation (OP). Finally, we will present the upwind schemes that were developed until now and the way they were extended to high order discretisations.
2.1 Residual Distribution schemes on linear ele- ments
2.1.1 Geometry and notations
For a given domain Ω let denote by τ
ha generic triangulation of Ω composed of a set of non-overlapping triangles T ∈ τ
h. The mesh parameter h denotes a reference element length (e.g diameter of the circumcircle of the largest element). We assume that the mesh is regular, in the sense that for some finite positive constants C
1, C
2we have
0 < C
1< sup
T∈τh
h
2|T | < C
2< ∞ (2.2) with C
1, C
2independent on h and |T |, the area of T.
9
For any given function u, we define u
h= X
i∈τh
ψ
Pi1u
i, (2.3)
where u
iis the value of u
hat node i: u
i= u
h(x
i, y
i); and ψ
iP1(x, y) denotes the (mesh dependent) linear continuous Lagrangian basis function for which the restriction to the element T is plotted on figure 2.1. Its (constant) gradient on each triangle is computed by :
∇ψ ~
Pi1= ~ n
i2|T|
where ~ n
iis the inward normal to the edge of T facing node i ∈ T . The norm of ~ n
iis equal to the length of this edge. Indeed, on figure 2.2, ~ n
jis normal to the face l
jand its norm is || X ~
i− X ~
k||.
Figure 2.1: Restriction to element T of the linear basis function ψ
iP1of node i.
Figure 2.2: Definition of the ~ n
is For each node i ∈ τ
h, we define D
i, the subset of elements of τ
hsharing i as a node, as shown on figure 2.3. By abuse of notation we will say that node j belongs to D
iif it is the node of an element T ∈ D
i. D
iis the support of the basis function ψ
iP1.
Lastly, for a given flux F (u) in (2.1), we denote its Jacobian by
~a(u) = ∂F(u)
∂u =
∂f
x(u)
∂u , ∂f
y(u)
∂u
(2.4) On each element we define the following so called upwind parameters (see figure 2.4):
k
j= 1
2 ~a
∗· ~ n
j(2.5)
2.1. RDS ON P
1ELEMENTS 11
Figure 2.3: Support D
iof the ψ
Pi 1Figure 2.4: Sign of the upwind para- meters
with ~a
∗a properly defined local average of ~a(u). Moreover, we denote by k
i−and k
i+the negative and positive part of k
igiven by
k
±i= k
i± |k
i| 2
From the definition of the upwind parameter we can deduce that : X
i∈T
k
i= 0 (2.6)
2.1.2 Residual Distribution schemes
Now, we have all the tools to describe the construction of the RDS. They consist of three steps:
• Computation of the residual
• Distribution of the residual to the nodes
• Resolution of a system of nodal equations
The goal of this section is to explain these three steps.
Computation of the residual
To solve equation (2.1), we compute first the residual on each element T : Φ
T=
Z
T
(∇ · F (u) − S) dΩ. (2.7)
There are two ways to compute the flux term in this residual:
• We integrate directly on the element
• We use Gauss’ theorem, and we compute a contour integration.
In this section we will describe both formulations and check that they yield to conservative schemes:
Definition 2.1.1. A scheme is said conservative if for any approximation F
hof F (for example F
h= F (u
h)):
Φ
T= I
∂T
F
hd~l (2.8)
First, we consider the direct integration. In this case, if F is a linear function of u and omitting the source term, the residual can be rewritten as:
Φ
T(u
h) = Z
T
~a · ∇u
hdΩ = |T |~a
∗· ∇u
hT
=
|T | X
j∈T
u
j~a
∗· ∇ψ
jP1 T= |T | X
j∈T
u
j~a
∗· ~ n
j2|T | = X
j∈T
k
ju
j(2.9)
where
~a
∗= 1
|T | Z
T
~a dΩ
This is equivalent to using a numerical quadrature to approximate the mean value ~a
∗. We denote this approach by QRD because it uses the quasi-linear form of the conservation law. The formulation (2.9) is conservative only if the linearisation ~a
∗is well chosen and verify:
I
∂T
F
h(u
h) · d~l = Z
T
~a
∗· ∇u
hdΩ (2.10) It is cheap but it can yield a non-conservative solution. Indeed, this formulation needs that the upwind parameter is computed with a suitable average of the Jacobian of F (~a
∗). For this reason Ricchiuto et al. in [26]
have developed another methodology to compute the residual. It uses Gauss’
theorem to compute the residual of the advective part (whereas the source term is still integrated on the volume in both cases):
Φ
T= I
∂T
F(u) · n d~l. ˆ − Z
T
S (x, y) dΩ. (2.11) We use a quadrature formula to compute the first term of equation (2.11):
I
∂T
F (u) · d~l =
3
X
lj=1
F
lj· ~ n
ljwith F
lj=
N QP
X
q=1
w
qF
h(x
q, y
q) (x
q, y
q) ∈ l
j(2.12)
2.1. RDS ON P
1ELEMENTS 13 with ~ n
ljbeing the outward normal of the face l
jand where (x
q, y
q) repre- sents the quadrature point, N QP is the number of quadrature points and w
qits associated weight. The formulation (2.11), called Conservative Residual Distribution (CRD), ensures conservativity automatically. More informa- tion can be found in [87]. The main weakness of CRD is that it is much more expensive than the QRD approach. However, since this manuscript is dedicated to high order discretisation, for which the solution is not li- near any more, we consider only CRD schemes to avoid any conservativity problems due to the linearisation.
Distribution of the residual
The second step is the distribution of the residual Φ
T(see figure 2.5) to each node of T . We use a distribution coefficient β
iTand denote by Φ
Tithe contribution assigned to node i:
Φ
Ti= β
iTΦ
T(2.13)
To ensure consistency it is necessary that:
X
i∈T
Φ
Ti= Φ
T⇔ X
i∈T
β
iT= 1 (2.14)
The different choices of β
idefine several numerical schemes which have their own characteristics.
Figure 2.5: Distribution of the global residual from element T to nodes i,j,k
Figure 2.6: Illustration of the sys-
tem (2.15)
Solution of a system of nodal equations
Then, after assembling all contributions from all elements, we solve the following system (see figure 2.6) of nodal equations:
X
T∈Di
Φ
Ti= 0 (2.15)
This system is solved by pseudo-time iterations; denoting by κ the pseudo- time index:
C
i∂u
i∂τ + X
T∈Di
Φ
Ti= 0 (2.16)
where C
irepresents some scaling constant proportional to the median dual area around node i. For example, we can solve (2.16) by an explicit proce- dure like forward-Euler method:
u
κ+1i= u
κi− ∆τ C
i
X
T∈Di
Φ
Ti
κ
(2.17)
where ∆τ is chosen such that a CFL condition is verified. It is also possible to solve (2.16) using an implicit solver:
C
iu
κ+1i− u
κi∆τ = −
X
T∈Di
Φ
Ti
κ+1
(2.18)
This system is solved by a Newton method and in each Newton steps the library PETSc (Portable, Extensible Toolkit for Scientific computation) [13, 12] is used more or less as a black box to solve the linear solver. For more details on the implicit method we refer to the work of Van der Weide [115].
2.1.3 Analogy with Petrov-Galerkin method
Now, having presented the methodology, we can link it to a Petrov-Galerkin Finite Element (PG ) method. PG and RD are both using the same discreti- sation of the solution by continuous Lagrangian functions. Moreover, RD schemes are designed for steady hyperbolic CL equations whereas PG can be used for any CL equations. Then, one idea to extend RDS to the vis- cous case is to use a Petrov-Galerkin approach. This is possible because we can find a weight function such that the two methodologies are equivalent in some cases. Let us consider a linear advection equation with u
hbeing linear:
~a · ∇u
h= 0 (2.19)
2.1. RDS ON P
1ELEMENTS 15 We are looking for a weight function ω
isuch that the contributions of the element T to the node i are equal for both methods, where ω
iis the Petrov- Galerkin test function of the finite element method:
β
iTZ
T
~a · ∇u dΩ = Z
T
ω
i~a · ∇u dΩ β
iT|T |~a
∗· ∇u = ~a
∗· ∇u
Z
T
ω
idΩ Giving the following condition:
Z
T
ω
idΩ = β
iT|T | (2.20)
Several weight functions verify this condition. In particular, one choice can be ω
iP1defined by:
ω
iP1(x, y) = ψ
iP1(x, y) + (3β
Ti− 1)S
T(x, y) (2.21) where S
Tis a piecewise linear function named bubble function (see also figure 2.7) and defined by:
S
T(x, y) =
0 if (x, y) ∈ ∂T
1 if (x, y) = (x
g, y
g) (2.22) where (x
g, y
g) is the gravity centre of the element T . This weight function
Figure 2.7: Bubble function
ω
iP1is not the one usually used to get this equivalence. Another weight function that verifies (2.20) and is more commonly used [9]. It is given by:
ω
iold= ψ
iP1(x, y) + (β
iT− 1
3 )χ
T(x, y) (2.23) where χ
Tis defined by :
χ
T(x, y) =
1 if (x, y) ∈ T
0 otherwise (2.24)
In section 4.2 we will show why it is better to use weight function (2.21)
than (2.23).
2.2 Extension to high order discretisations
Until now we have considered the basis of the methodology on linear ele- ments. However, the goal of this work is the extension of those schemes to High Order (HO) discretisations. To achieve this, we first discretise the domain by triangular P
kfinite-elements, and then we follow the idea of Ab- grall [9, 7]: we split each element in sub-elements and we apply the strategy of section 2.1 in each of those sub-elements. This strategy has also been explored by Deconinck and Barth [31].
2.2.1 Geometry and notations
Now, the elements of the triangulation are P
khigher order finite elements where k is the order of the Lagrange polynomial basis functions. Each element is equipped with
K = (k + 1)(k + 2) 2
degrees of freedom (see figure 2.8). Only continuous polynomial basis func- tions are considered.
Moreover, ∀ k ≥ 1 on a given T ∈ τ
hwe also introduce the P
1conformal triangulation, and denote by {T
s}
s=1,Nthe sub-elements in T , as on figure 2.8. A P
kelement has N = k
2sub-elements.
Figure 2.8: Sub-triangulations of Lagrangian elements The solution is approximated by :
u
h= X
i∈τh
ψ
Pi ku
i, (2.25)
2.2. EXTENSION TO HIGH ORDER DISCRETISATIONS 17 where ψ
Pi kis the basis function of node i. ψ
iPkis a polynomial of order k. As an example, we will develop more in details the discretisation by P
2elements. In particular, example of quadratic basis functions are drawn on figure 2.9.
x 0 0.2 0.4 0.6 0.8 1 y
0 0.2
0.4 0.6
0.8 1
u
-1 -0.5 0 0.5 1
X Y
Z
(a) Basis function of a vertex
x
0 0.2 0.4 0.6 0.8 1 y 0
0.2 0.4
0.6 0.8
1
-1 -0.5 0 0.5 1
(b) Basis function of a mid-point
Figure 2.9: Example of basis functions for k = 2
The P
2elements are composed of 3 vertexes and 3 midpoints (one per face). The basis functions are quadratic and can be expressed as a function of the linear ones, following the numbering of figure 2.10.
ψ
Pi2= ψ
iP1(2ψ
Pi1− 1) ∀i ∈ {0, 1, 2}
ψ
P32= 4ψ
P01ψ
P11ψ
P42= 4ψ
P11ψ
P21ψ
P52= 4ψ
P21ψ
P01Figure 2.10: Numbering of the nodes in a P
2element
We are interested in using a high order interpolation of the solution because it will give after the possibility of a higher order scheme. Let us show the residual interpolation error on a concrete example. On the triangle which have as vertexes (0, 0), (1, 0), (0, 1), We compare the P
1and the P
2discretisation of the function f defined by:
f (x, y) = exp(xy)
This function is plotted on figure 2.11(a). First, we discretise this triangle
by a P
2element composed of 6 degrees of freedom. Then, we divide this
P
2element in four P
1elements. And we compare the two interpolations:
On figure 2.11(b) and 2.11(c) we compare the approximation by P
1and P
20 0.2 0.4 x 0.6 0.8 1
y
0 0.2 0.4 0.6 0.8 1
u
1 1.1 1.2
(a) Exact function
x
y
0 0.2 0.4 0.6 0.8 1
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
1 P1
Exact
(b) P
1approximation vs Exact function
x
y
0 0.2 0.4 0.6 0.8 1
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
1 P2
Exact
(c) P
2approximation vs Exact function
Figure 2.11: Discretisation of exp(xy) by P
1and P
2elements.
elements with the exact function. We can see that the linear (P
1element) approximation is less accurate than the quadratic (P
2element) one.
As in the linear case each sub-element is equipped with a set of inward normals ~ n
i. In the general case P
kwith k > 1, we will assume that the ~ n
jare defined on a local sub-element T
s∈ T , as shown on figure 2.12. Since, we consider here only a P
kdiscretisation for the solution and not for the geometry (meaning that we do not deal with curved elements), the inward normals of the sub-elements can be deduced from the ones of the elements.
Indeed, if the orientation of the sub-element is the same as the one of the element the normal just need to be rescaled by the length of the sub-face.
Otherwise the orientation of the normal also need to be changed.
Finally, the upwind parameters are computed using formula (2.5) where
2.2. EXTENSION TO HIGH ORDER DISCRETISATIONS 19
~ n
iis defined per sub-elements as mentioned above.
Figure 2.12: Comparison between the normals in P
1and P
2elements The support of the high order basis functions is still D
i. We denote by D
isthe new set containing all the sub-elements having i as a node (see figure 2.13).
Figure 2.13: Definition of D
isfor a P
2mesh
Figure 2.14: Φ
Tsis distributed to each node of T
s2.2.2 Residual Distribution schemes on P
kelements (k > 1) Here we consider the extension of the RD methodology to a high order discretisation. The residual is computed on each sub-element :
Φ
Ts= I
Ts
F(u)d~l − Z
Ts
S(x, y) dΩ.
We have chosen to use the CRD approach because it avoids any problems of conservativity in the computation of the residual. Once computed, the residual is distributed to each node of the sub-element (illustrated on figure 2.14):
Φ
iTs= β
iΦ
Tswhere the β
iverify :
X
i∈Ts
β
iTs= 1
We end up by solving the following system of nodal equations (illustrated on figure 2.15):
X
Ts,∈Dsi
Φ
iTs= 0 (2.26)
The order of accuracy of (2.26) will be studied in section 2.3.3.
Figure 2.15: Summation of all the contributions to node i
Remark 2.2.1. This is not the only way to achieve high order for RD. For example, in [110] the authors present a Lax-Friedrichs scheme. This scheme does not use a subdivision of the triangle but the residual is computed on the whole triangle and then distributed to all the nodes of the element. Finally, the system of nodal equations to be solved is :
X
T,i∈T
Φ
Ti= 0 (2.27)
Another way, explained in [20] is to use Hermitian elements using a recon- struction of the gradients.
2.2.3 Analogy with Petrov-Galerkin method
As in the linear case we are interested in the equivalence between RD and
PG because we will use it to extend the methodology to the viscous term.
2.3. PROPERTIES 21 The weight function has the same form as (2.21). The main difference is that here the support of the basis function is wider than D
is. Let us look for the weight function ω
iPksuch that, if we consider a linear advection and if u is linear on each sub-element, we have:
β
TsZ
Ts
~a · ∇u dΩ = Z
Ts
ω
iPk~a · ∇u dΩ if i ∈ T
s0 = Z
Ts
ω
iPk~a · ∇u dΩ if i / ∈ T
s(2.28)
This yields the following conditions because we consider that ~a
∗· ∇u is constant:
Z
Ts
ω
iPkdΩ = β
iTs|T
s| if i ∈ T
sZ
Ts
ω
iPkdΩ = 0 if i / ∈ T
s(2.29)
A weight function that verifies this condition is:
ω
Pik|Ts
= ψ
iPk+ α
TisS
Ts(2.30) where S
Tsis the piecewise linear bubble function of the sub-element T
s, and the definition of the constants α
Tisis:
α
Tis=
β
iTs|T
s| − Z
Ts
ψ
iPkdΩ Z
Ts
S
TsdΩ
if i ∈ T
s− Z
Ts
ψ
iPkdΩ Z
Ts
S
TsdΩ
if i / ∈ T
s(2.31)
Compared to the shape functions ψ
iPk, the local regularity (within T ) of the bubble function S
Tsis quite low. However, ultimately both shape and bubble functions are in the same functional space H
01(Ω) and share simple C
0continuity.
2.3 Properties
Until now we have presented the general methodology of RDS. In this thesis,
we want to build schemes that are multidimensional upwind, monotone and
high order accurate (3
rdor 4
th). The goal of this section is to define all these
properties.
2.3.1 Multidimensional Upwinding (MU)
We consider here the homogeneous case : S = 0. A multi-dimensional upwinding scheme distributes the residual only in the direction of the ad- vection velocity, which means that the information is following the natural convection of the problem. This brings very low cross diffusion. For this reason schemes that have this property are very attractive and are robust schemes for hyperbolic problems.
Denoting by ∂T
outthe outflow part of ∂T , and by ∂T
inits inflow part (see figure 2.16), simple geometrical arguments show that if the edge facing a node l is in ∂T
out, then k
l< 0. Similarly, if the edge facing a node l is in ∂T
in, then k
l> 0 as illustrated on figure 2.16. By analogy, we say that l ∈ ∂T
outif k
l> 0, and that l ∈ ∂T
inif k
l< 0. Then, we give the following definition of a multidimensional upwind scheme.
Figure 2.16: Definition of inflow and outflow faces.
Definition 2.3.1 (Multidimensional Upwind scheme). A scheme is multi- dimensional upwind (MU) if Φ
i(u
h) = 0 ∀ i ∈ ∂T
inIn order to mimic the behaviour of exact solutions of (2.1), multidimensional upwind schemes only distribute the residual to nodes which belong to ∂T
out, this means to the nodes which are downstream with respect to the orien- tation of ~a. Note that if ∂T
inis composed only by one edge, then there is only one node in ∂T
out. For a MU scheme, this is normally called a 1-target configuration. Due to their definition, all MU schemes are equivalent in the 1-target case, in which the whole residual is sent to the unique point belonging to ∂T
out. Similarly, if ∂T
inis composed of two edges, two nodes are in ∂T
out. This is called a 2-target configuration.
The extension of the MU property to the case of P
kvariable representa-
tion with k > 1 is not trivial. As long as one considers elements with degrees
of freedom located only on ∂T , as e.g. in the P
2case (see figure 2.8), geo-
metrical arguments can still be used to define the inflow and outflow parts
2.3. PROPERTIES 23 of the boundary of an element, and inflow and outflow nodes [93]. However, already for k = 3 some degrees of freedom are placed within the element (see rightmost picture on figure 2.8), making the task of defining inflow/outflow entities less obvious. For this reason, we have chosen to adopt the following local construction of MU schemes.
Definition 2.3.2 (MU schemes on P
kelements, k > 1). Scheme (2.26) is multidimensional upwind (MU ) if Φ
Tis(u
h) = 0 whenever ~a
∗· ~ n
Tis≤ 0 where
~a
∗is a some suitable average over the sub-triangle T
s.
Note that in the last definition ~ n
Tisdenotes the local nodal normals of figure 2.12. Clearly, this definition boils down to the one of 2.3.1 in the P
1case, and it characterises all the schemes distributing Φ
Ts(u
h) only to the nodes belonging to ∂T
s, out, where ∂T
s, outis locally defined as in the P
1case.
2.3.2 Positivity (P )
In the framework of RD schemes, the monotonicity of the discrete solution is characterised by means of the theory of positive coefficients discretisation.
We can write the residual as:
Φ
i(u
h) = X
Ts∈T i∈Ts
Φ
Tis(u
h) = X
j∈T
c
ij(u
i− u
j) (2.32)
where the c
ijeventually depend on the choice of ~a
∗. Lastly, by plugging (2.32) into (2.17) (where we set δ
i=
∆τCi
) we get u
κ+1i= (1−δ
iX
T∈Di
X
j∈T
c
ij)u
κi+δ
iX
T∈Di
X
j∈T j6=i
c
iju
κj= (1−δ
iX
j∈Di
e c
ij)u
κi+δ
iX
j∈Di
e c
iju
κjhaving introduced the e c
ijcoefficients e c
ij= X
T∈DiT Dj
c
ijWe have the following definitions.
Definition 2.3.3 (Positivity). A scheme is positive if e c
ij≥ 0 ∀ i, j.
Definition 2.3.4 (Local positivity). A scheme is locally positive if c
ij≥ 0 ∀ i, j and T
Trivially, local positivity implies positivity. Finally, the monotonicity of
a scheme is characterised by the satisfaction of a discrete local maximum
principle (DMP).
Proposition 2.3.5 (Positivity and DMP). The discrete solution obtained with a positive scheme of type (2.17) satisfies the discrete local maximum principle
j∈D
min
iu
κj≤ u
κ+1i≤ max
j∈Di
u
κj∀i ∈ τ
hprovided that the condition δ
i≤ 1/ P
j∈Di
e c
ijis satisfied ∀ i (similar to a CFL condition).
One can show that, as a consequence of proposition 2.3.5, positive schemes are uniformly L
∞stable. We refer to [14] and references therein for further details. Moreover, the same proof can be find in [87] for implicit solvers.
2.3.3 Accuracy and Order Preservation (OP )
The characterisation of the accuracy of the prototypes (2.26) and (2.15) is discussed in [2] (see also [9]). We extend the analysis to the non-homogeneous case (2.1). In the following we use the notation
Φ
i(u
h) = X
Ts∈T
Φ
Tis(u
h)
Consider a smooth function ϕ ∈ C
01(Ω) such that, denoting by ϕ
i= ϕ(x
i, y
i) and by ϕ
hthe P
kcontinuous Lagrangian interpolant of {ϕ
i}
i∈τh, we have
|ϕ
i− ϕ
j| ≤ k∇ϕk
L∞(Ω)h ≤ C
1h,
kϕ
hk
L∞(Ω)≤ kϕk
L∞(Ω)< ∞, k∇ϕ
hk
L∞(Ω)≤ C
2(2.33) for some constants C
1, C
2. Following [2, 9], we note that the discrete solution obtained in the steady limit of (2.26) (or equivalently (2.15)) satisfies
0 = P
i∈τh
ϕ
iP
T∈Di
Φ
i(u
h) = R
Ω
ϕ
h∇ · F
h(u
h) − S
h(u
h, x, y)
dΩ + P
T∈τh
P
i∈T
ϕ
i(Φ
i(u
h) − Φ
Gi(u
h)) where Φ
Gi(u
h) is the Galerkin fluctuation (ψ
ibeing the Galerkin test func- tion):
Φ
Gi(u
h) = Z
T
ψ
i∇ · F
h(u
h) − S
h(u
h, x, y)
dΩ (2.34)
We note that ∀ T ∈ τ
hwe have, since P
j∈T
ψ
j= 1 X
i∈T
Φ
i(u
h) − X
i∈T
Φ
Gi(u
h) = Φ
h(u
h) − Φ
h(u
h) = 0 where we remind that
Φ
h(u
h) = Z
T