Particle System

Même si les codes de calcul sont principalement eulériens, il est possible de simuler des particules dans un fluide sur base d’un champ de débit/vitesse.

Dans cette approche lagrangienne, les particules sont des objets qui se déplacent dans le fluide et qui peuvent éventuellement interagir avec lui. Les particules peuvent être passives (elles ne modifient pas le fluide) ou actives (elles modifient le fluide).

Le paquet inclu un module particle_system qui permet de simuler des particules passives dans un fluide dans un état d’écoulement stationnaire ou transitoire.

Le calcul des particules est entièrement codé en Python et utilise la librairie numpy pour les calculs vectoriels et Numba (compilation JIT).

Options disponibles :

  • discrétisation temporelle : Euler, RK22, RK3, RK45

  • choix arbitraire de la position initiale des particules

  • horloge d’injection des particules

  • rendu 2D en OpenGL directement dans le viewer (zoom en live, pause, etc.)

Exemple de simulation de particules dans un fluide soumis à un champ de vitesse circulaire.