Zebre

Fiche dév Ens Sup - Recherche
  • Création ou MAJ importante : 15/09/08
  • Correction mineure : 18/08/09
Mots-clés

Zebre : résolution de systèmes de Réaction-Diffusion

Ce logiciel a été développé (ou est en cours de développement) dans la communauté de l'Enseignement Supérieur et de la Recherche. Son état peut être variable (cf champs ci-dessous) donc sans garantie de bon fonctionnement.
  • Site web
  • Système : UNIX-like, MacOS X
  • Version actuelle : 1.2 - 17 Septembre 2007.
  • Licence(s) : CeCILL
  • Etat : diffusé en beta, en développement
  • Support : maintenu, développement en cours
  • Concepteur(s) : Thierry Dumont
  • Contact concepteur(s) : tdumont@math.univ-lyon1.fr
  • Laboratoire(s), service(s)... : ICJ

 

Fonctionnalités générales du logiciel

Zebre résout les systèmes de Réaction-Diffusion en dimension 1, 2 et 3 d'espace, par différents schémas temporels.
Le code est développé en vue de la résolution de grands systèmes où la Réaction est raide (au sens des systèmes d'équations différentielles ordinaires), tels qu'on en rencontre en chimie complexe ou en modélisation du vivant.
La discrétisation spatiale est effectuée par différences finies, éléments finis ou volumes finis. Des solveurs rapides de la diffusion sont utilisés quand c'est possible.
La discrétisation temporelle est effectuée par des schémas Implicites -Explicites (cas non raide) ou des schémas de directions alternées de type Strang (ou Lie). Un large choix de méthodes est facilement utilisable pour la résolution des sous-pas de la méthode de Strang (theta-schéma, Euler extrapolé ou méthode de Runge-Kutta L-stable pour la diffusion, méthodes implicites simples (theta-schéma...) ou sophistiquées (Radau5, Rosenbrock etc, dans les cas raides) pour la réaction).
Parallélisme: le code est multithreadé et bien adapté aux architectures multicoeurs.
Limitations: la diffusion doit être diagonale, dans la version actuelle.
Développements en cours: maillages adaptatifs, diverses techniques pour l'accélération du calcul de la réaction.
Extensions en développement: ajout de termes de chemotactisme (schéma Weno).
décomposition de domaine, parallélisme (MPI).
Sorties graphiques: le code permet de créeer des fichiers vtk (pour la visualisation avec des outils comme Paraview, Mayavi ou Visit).

Contexte d’utilisation du logiciel

Le code est écrit en C++, avec des interfaces vers des bibliothèques Fortran ou C.

Le coeur du programme utilise la bibliothèque Blitz (pour les tableaux), et de nombreuses fonctionnalités de Boost.

Toutes les bibliothèques utilisées sont disponibles comme packages dans les bonnes distributions Linux et sur le Macintosh.

Le code est livré sous forme de fichier tar.gz, la compilation est effectuée avec les commandes classiques configure, make...

La documentation (guide d'installation et guide d'utilisation est en pdf).
Un répertoire d'exemples est fourni.

Entrée des données: les données définissant les enchainements des méthodes, la discrétisation spatiale, les sorties et les paramètres physiques etc. doivent être fournies sous forme de fichier xml, pour lequel une dtd est fournie (et donc, le code effectue une vérification formelle des données).

Publications liées au logiciel

Une introduction aux techniques utilisées, et l'application à un problème difficile et raide:

Commentaires

nouveau mot-clé métier activité "calcul scientifique"

ajout du nouveau mot-clé
Geneviève Romier