Firedrake/fr
Firedrake est un système automatisé pour la résolution d'équations aux dérivées partielles par la méthode des éléments finis (MEF).
Veuillez noter que chaque version de Firedrake requiert une version spécifique de PETSc, plusieurs autres modules, ainsi que des wheels Python.
Installation¶
Tous les modules doivent être chargés avant la création et/ou l'activation de l'environnement virtuel Python.
module load StdEnv/2023 gcc/12.3 openmpi/4.1.5 python/3.14 mpi4py/4.1.0
module load vtk/9.4.2 symengine/0.14.0 libspatialindex/2.1.0 petsc/3.25.1
virtualenv venv-firedrake
source venv-firedrake/bin/activate
pip install -U pip
pip install --no-index msgpack tables==3.11.0 pytools==2026.1.1 immutabledict
pip install --no-index firedrake[check]==2026.4.1
python/3.14, python/3.13, python/3.12 et python/3.11.
module load StdEnv/2023 gcc/12.3 openmpi/4.1.5 python/3.13 mpi4py/4.0.3 symengine/0.14.0 libspatialindex/1.9.3 petsc/3.23.4
virtualenv venv-firedrake
source venv-firedrake/bin/activate
pip install -U pip
pip install --no-index pytools==2025.2.2 immutabledict
pip install --no-index firedrake[check]==2025.4.2
python/3.13 et python/3.12.
Exécuter des tâches¶
job_firedrake_multigrid.sh
Ceci a été testé avec #!/bin/bash
#SBATCH --time=0-00:15:00 # j-hh:mm:ss
#SBATCH --ntasks=2
#SBATCH --mem-per-cpu=4000M
export OMP_NUM_THREADS=${SLURM_CPUS_PER_TASK:-1}
# Charger les modules
module load StdEnv/2023 gcc/12.3 openmpi/4.1.5 python/3.14 mpi4py/4.1.0
module load vtk/9.4.2 symengine/0.14.0 libspatialindex/2.1.0 petsc/3.25.1
# Activer l'environnement virtuel
source venv-firedrake/bin/activate
# Exécuter la tâche MPI
# exemple de: https://firedrakeproject.org/demos/geometric_multigrid.py
srun python geometric_multigrid.py
python/3.14, python/3.13, python/3.12 et python/3.11.
job_firedrake_multigrid.sh
Ceci a été testé avec #!/bin/bash
#SBATCH --time=0-00:15:00 # j-hh:mm:ss
#SBATCH --ntasks=2
#SBATCH --mem-per-cpu=4000M
export OMP_NUM_THREADS=${SLURM_CPUS_PER_TASK:-1}
# Charger les modules
module load StdEnv/2023 gcc/12.3 openmpi/4.1.5
module load python/3.13 mpi4py/4.0.3
module load symengine/0.14.0 libspatialindex/1.9.3 petsc/3.23.4
# Activer l'environnement virtuel
source venv-firedrake/bin/activate
# Exécuter la tâche MPI
# exemple de: https://firedrakeproject.org/demos/geometric_multigrid.py
srun python geometric_multigrid.py
python/3.13 et python/3.12.
Dépendances optionnelles¶
Voir les dépendances optionnelles de Firedrake qui peuvent être installées dans un environnement virtuel Python :
- SLEPc et
slepc4pysont comprises dans le modulepetscet sont toujours disponibles. - netgen : Nous fournissons des wheels précompilés pour
ngsPETScetnetgen_mesher. - PyTorch : Nous fournissons des wheels précompilés pour
torch. - Jax : Nous fournissons des wheels précompilés pour
jax. - VTK : Le module
vtk/9.4.2est compatible avecpython/3.14,python/3.13,python/3.12etpython/3.11.