Codes & Softwares
Read more about the scientific computing codes I made or participated in.
WaveBox - Multi-models C++ numerical platform for water-waves equations
Keywords. DG, HDG, Saint-Venant, Boussinesq, Green-Naghdi, Finite-Volume subcells methods.
Language. C++, Python (visualization).
WaveBox is a multi-models numerical platform created by Fabien Marche, dedicated to the approximations of the solutions of several shallow water asymptotics in the surface dimension d = 2 with efficient combined Hybridized Discontinuous Galerkin (HDG), Hybrid High Order (HHO), Monolithic DG-FV subcells and DG methods on general unstructured meshes (for Saint-Venant, Boussinesq and Green-Naghdi equations). Main features are:
- Sub-models CPU-GPU co-processing;
- Arbitrary order of accuracy (h and p-adaptivity);
- Robust treatment of the run-up and flooding processes (strict maximum-principle enforcement);
- Well-balancing for motionless steady states;
- Unstructured meshes & mesh subdivision;
- Wave breaking treatment with dynamic switching strategy.
During my Ph.D., I developped a whole new section dedicated to high-order monolithic DG-FV schemes, with grid subdivisions and a priori stabilization methods, in 1D & 2D. I also developped several vizualization tools on Python. One of the main goals of our future work is to implement monolithic schemes on NSW coupled with a floating object.
Some numerical simulations:
- $\mathbb{P}^6$ interaction between a collapsing wave and a rock (MP4)
- $\mathbb{P}^2$ interaction between a tidal wave and a rock (AVI_1 & AVI_2)
- $\mathbb{P}^4$ dam-break on a wet bed (AVI)
- $\mathbb{P}^3$ circular dam-break on a wet bed (AVI)
- $\mathbb{P}^2$ tsunami on three conical islands (MP4)
- $\mathbb{P}^3$ Green-Naghdi 1D dam-break with dispersive shock (GIF)
- $\mathbb{P}^3$ 1D motion-prescribed floating object interactions (GIF)
- $\mathbb{P}^2$ single wave on a partly immersed stationnary pontoon obstacle (AVI)
- $\mathbb{P}^2$ 2D wave generator (AVI)
- $\mathbb{P}^2$ single wave on a freely moving pontoon obstacle (AVI)
- $\mathbb{P}^2$ single wave on a partly immersed stationnary cylinder obstacle (AVI)
- $\mathbb{P}^2$ ALE mesh motion around an oscillating cylinder: Laplacian smoothing (GIF) and pseudo-elasticity (GIF)

DG4SCL - Compact and student friendly code for DG methods on 1D SCL
Keywords. Discontinuous Galerkin, Scalar Conservation Laws.
Language. C++.
During the early stages of my internship with F. Vilar and F. Marche, I embarked on the development of a compact C++ code focused on addressing Discontinuous Galerkin (DG) schemes for 1D conservation laws. This code is a work in progress, far from being complete or flawless. Its creation was driven by my commitment to simplicity and understandability. I strived to ensure that the code’s structure and implementation were as straightforward as possible, enabling users to grasp the underlying concepts with ease. By expanding its functionality and making it more comprehensive, I aim to create a valuable resource for students seeking a simplified example of DG schemes. This endeavor stems from my own experiences as a student, where access to such a resource would have greatly facilitated my understanding and learning process.
Contact me to get the source.

