Logiciels
Découvrez les codes de calcul scientifique que j’ai développés ou auxquels j’ai contribué.
WaveBox — Plateforme numérique C++ multi-modèle pour les équations de vagues
- Mots-clés
- DG · HDG · Saint-Venant · Boussinesq · Green-Naghdi · FV subcells
- Stack
- C++ · Python
- Équipe
- Fabien Marche lead · Sacha Cardonna · Arnaud Duran · Matthieu Rigal ···
WaveBox est une plateforme numérique multi-modèle initiée par Fabien Marche pour approcher plusieurs modèles asymptotiques d’écoulements en eau peu profonde en dimension de surface d = 2. Elle combine efficacement les méthodes Hybridized Discontinuous Galerkin (HDG), Hybrid High-Order (HHO), DG/FV subcells monolithiques et DG sur des maillages non structurés généraux, pour les équations de Saint-Venant, Boussinesq et Green-Naghdi.
Les principales caractéristiques sont :
- Co-calcul CPU–GPU entre sous-modèles ;
- Ordre de précision arbitraire (h-adaptivity et p-adaptivity) ;
- Traitement robuste du run-up et des phénomènes d’inondation, avec respect strict du principe du maximum ;
- Well-balancing pour les états stationnaires au repos ;
- Subdivision de maillages non structurés et mouvement ALE ;
- Traitement du déferlement par stratégie de commutation dynamique.

Simulations numériques
ManicoreFV — Code discontinuous Galerkin pour les lois de conservation sur surfaces
- Mots-clés
- Discontinuous Galerkin · Volumes finis · Lois de conservation · EDP de surface · Maillages courbes
- Stack
- C++ · Python
- Équipe
- Marien Hanot · Sacha Cardonna
ManicoreFV est une plateforme C++ consacrée à l’approximation numérique de lois de conservation sur des surfaces courbes par des méthodes discontinuous Galerkin et volumes finis. Il s’agit d’un fork de Manicore, le code développé par Marien Hanot pour implémenter des schémas numériques sur des variétés munies de métriques riemanniennes générales.
Les principales caractéristiques sont :
- Formulations tenant compte de la géométrie basées sur les cartes locales, les paramétrisations et les métriques riemanniennes fournies par le framework Manicore ;
- Discrétisations discontinuous Galerkin de lois de conservation scalaires sur surfaces courbes, du degré zéro aux approximations polynomiales d’ordre élevé ;
- Intégration temporelle explicite de Runge–Kutta avec choix du pas de temps fondé sur une condition CFL ;
- Limiteur préservant les bornes pour les solutions discontinues, tout en conservant les moyennes locales et la masse globale.

Simulations numériques

Bfree — Solveur volumes finis préservant la structure pour une magnétohydrodynamique idéale
- Mots-clés
- Magnétohydrodynamique · Schémas sans divergence · Volumes finis · Méthodes semi-implicites · ALE
- Stack
- Fortran · Python
- Équipe
- Walter Boscheri lead · Mattia Lupi · Elena Bernardelli · Lidia Gude Vila · Sacha Cardonna
Bfree est une plateforme numérique de recherche pour la simulation bidimensionnelle de la magnétohydrodynamique idéale et des écoulements Euler–Heat. Elle vise à concevoir des méthodes de volumes finis structure-preserving qui maintiennent au niveau discret les contraintes différentielles fondamentales : la condition de divergence nulle du champ magnétique en MHD idéale et la condition de rotationnel nul de l’impulsion thermique pour le modèle Euler–Heat.
Les principales caractéristiques sont :
- Discrétisations sans divergence pour le champ magnétique en MHD idéal ;
- Discrétisations à rotationnel nul pour l’impulsion thermique dans le système Euler–Heat ;
- Schémas explicites de volumes finis Arbitrary Lagrangian–Eulerian (ALE) sur maillages mobiles ;
- Schémas volumes finis semi-implicites pour les régimes à faible nombre de Mach et à faible nombre d'Alfvén ;
- Évolution structure-preserving des contraintes différentielles discrètes ;
- Discrétisations spatiales d’ordre un et deux ;
- Suivi conservatif de la masse et de l’énergie totale.

ShoreVPINN - Solveur neuronal variationnel basé sur la physique pour les écoulements en eaux peu profondes
- Mots-clés
- Variational PINNs · Équations de Saint-Venant · Interfaces sec-mouillé · Run-up
- Stack
- Python · PyTorch
- Équipe
- Ali Haidar · Sacha Cardonna
ShoreVPINN est un code de recherche en Python qui explore les Variational Physics-Informed Neural Networks (VPINNs) pour approcher les équations non linéaires de Saint-Venant en dimension un. Plutôt que de s’appuyer uniquement sur des évaluations ponctuelles des équations, les résidus physiques sont intégrés contre des fonctions tests locales sur un maillage spatial. Cette formulation faible est particulièrement adaptée aux écoulements avec topographie variable et interfaces sec-mouillé mobiles.
Les principales caractéristiques sont :
- Application variationnelle des équations de masse et de quantité de mouvement à l'aide de fonctions de test locales par éléments finis ;
- Préservation exacte de la condition initiale grâce à un ansatz neuronal fortement contraint ;
- Traitement préservant la positivité de la profondeur de l'eau ;
- Formulation robuste du flux de quantité de mouvement au voisinage des interfaces sec-mouillé ;
- Maillages spatiaux non uniformes avec raffinement local optionnel dans la région de run-up ;
- Quadrature de Gauss-Legendre et batching stochastique sur des tranches de temps ;
- Exécution automatique sur CPU, CUDA GPUs et Apple Silicon GPUs.

DG4SCL - Code compact et convivial pour les étudiants pour les méthodes DG sur 1D SCL
- Mots-clés
- Discontinuous Galerkin · Lois de conservation scalaires
- Stack
- C++ · Python
- Développeur
- Sacha Cardonna
Au début de mon stage avec F. Vilar et F. Marche, j’ai développé un code C++ compact consacré aux schémas discontinuous Galerkin (DG) pour les lois de conservation en dimension un.
Ce code est un travail en cours, loin d'être complet ou impeccable. Sa création a été motivée par mon engagement envers la simplicité et la compréhensibilité. Je me suis efforcé de faire en sorte que la structure et la mise en œuvre du code soient aussi simples que possible, permettant aux utilisateurs de comprendre facilement les concepts sous-jacents.
En élargissant ses fonctionnalités et en la rendant plus complète, mon objectif est de créer une ressource précieuse pour les étudiants à la recherche d'un exemple simplifié de régimes DG. Cet effort découle de mes propres expériences en tant qu'étudiant, où l'accès à une telle ressource aurait grandement facilité ma compréhension et mon processus d'apprentissage.
Contactez-moi pour obtenir la source.
