VortexPasta.jl est un code de simulation de vortex conçu pour décrire les écoulements turbulents d'hélium liquide proche du zéro absolu. Dans cette limite, l'hélium se présente dans un état superfluide, et son mouvement se réduit à celui de tourbillons très fins, appelés vortex quantiques, qui peuvent être considérés comme des lignes dans l'espace. Ces lignes induisent un champ de vitesse dans tout l'espace selon la loi de Biot et Savart, bien connue en électromagnétisme, et qui décrit en particulier le mouvement instantané de chaque ligne. Dans des régimes turbulents, en présence d'un grand nombre de vortex, l'évaluation numérique des interactions de Biot et Savart est notoirement coûteuse si elle est faite de manière directe.
Le code VortexPasta.jl implémente une méthode numérique originale pour évaluer efficacement les interactions de Biot et Savart entre vortex dans des domaines périodiques. Cette méthode s'inspire des approches de sommation d'Ewald utilisées couramment dans les simulations de dynamique moléculaire. Elle utilise la transformée de Fourier rapide non uniforme (nonuniform FFT ou NUFFT), via la bibliothèque NonuniformFFTs.jl que j'ai également développée, pour calculer efficacement l'interaction entre vortex lointains. Ces deux codes sont compatibles avec un grand nombre de GPUs grâce à la bibliothèque KernelAbstractions.jl.
Dans ce webinaire je me focaliserai sur des aspects potentiellement utiles à des chercheurs et ingénieurs intéressés par le calcul scientifique en Julia. Je discuterai la documentation de VortexPasta.jl, où des efforts ont été faits pour introduire la thématique scientifique et l'utilisation du code à des nouveaux utilisateurs, avec le but de faciliter sa prise en main par des collaborateurs et étudiants. Je parlerai également de mon expérience récente avec le calcul GPU et les différentes possibilités offertes par le langage Julia et sa communauté. Finalement, j'illustrerai par des exemples l'utilisation du code VortexPasta.jl pour simuler et analyser des cas d'intérêt physique.
Pierre Navaro