Ce projet résout le problème d'élasticité linéaire par PETSc en 2D et 3D pour des coefficients de Lamé constants ou constants par cellule sur une grille cartésienne en utilisant l'algorithme GenEO décrit dans https://hal.archives-ouvertes.fr/hal-01170059/document .
Pour installer ce package, vous avez d'abord besoin d'une installation d'anaconda. Si vous n'avez pas d'anaconda sur votre système, vous pouvez télécharger miniconda pour Python 3 (https://conda.io/miniconda.html).
Pour installer ce projet, vous devez le cloner
git clone https://github.com/gouarin/GenEO.git
cd GenEO
Ensuite, nous allons créer un environnement avec tous les packages nécessaires à l'aide de la commande suivante.
conda env create -f environment.yml
Pour activer votre environnement
source activate petsc-geneo
Alors
python setup.py install
Dans le répertoire de ce projet vous avez un répertoire demos
avec des exemples 2D et 3D.
Il est important d'être dans l'environnement conda créé précédemment. Si ce n'est pas le cas
source activate petsc-geneo
Ceci est un exemple de la façon de tester l'un d'entre eux
mpiexec -np 4 python demo_elasticity_2d.py -AMPCG_verbose -ksp_monitor -PCBNN_verbose
Si l'exécution de demo_elasticity_2d.py
a réussi, vous devriez avoir un nom de fichier 'solution_2d_asm.vts'
.
Pour visualiser ce fichier, vous devez installer paraview (https://www.paraview.org/download/).
paraview
et sélectionnez fichier->état de chargement.paraview
de ce projet appelé visu_2d.pvsm
.vts
.Vous devriez voir les résultats.