-fsSL https://install.julialang.org | sh curl
Introduction
Ces pages proposent une introduction à la simulation d’équations différentielles avec Julia
, centrée sur la simulation de modèles classiques en dynamique des populations.
Ces pages sont structurées comme suit :
la section sur les populations isolées introduit les bases en dimension 1 (modèle de Malthus, modèle logistique et effets Allee)
la section sur les populations exploitées introduit les diagrammes de bifurcations (prélèvements et effets Allee, interactions insectes-oiseaux)
la section sur les populations en interaction introduit la dimension 2, notamment via les représentations dans l’espace d’état, et traite des interactions entre populations sous l’angle des modèles proies-prédateurs (modèle de Lotka Volterra et modèle de Rosenzweig MacArthur)
Le site contient aussi du matétiel supplémentaire pour compléments plus avancés (graphiques, methodes d’intégration alternatives, équations de réaction-diffusion).
Installation de Julia
La façon la plus simple d’installer Julia
est d’utiliser juliaup.
Sur Linux, installez curl
sur votre système1. Puis dans un terminal :
1 sudo apt install curl
sur Ubuntu
et procédez à l’installation.
Fermez et réouvrez votre terminal (ou rechargez votre fichier de préférences comme vous l’indique l’installateur de juliaup) pour pouvoir exécuter Julia
.
Puis, si vous souhaitez utiliser Julia
dans un notebook jupyter
, installez le package IJulia
depuis Julia comme suit2:
2 si le profil est tout nouvellement, créé un redémarrage peut s’avérer nécessaire si vous rencontrez une erreur à l’exécution de jupyterlab()
ci-dessous
# executer julia dans un terminal
julia _(_)_ | Documentation: https://docs.julialang.org
_ _ | (_) (_) |
(_) | |_ __ _ | Type "?" for help, "]?" for Pkg help.
_ _ _| | | | | | |/ _` | |
| | |_| | | | (_| | | Version 1.10.0 (2023-12-25)
/ |\__'_|_|_|\__'_| | Official https://julialang.org/ release
_|__/ |
> ] # package mode
julia@v1.10) pkg> add IJulia
(@v1.10) pkg> build IJulia (
La première commande add IJulia
peut prendre un peu de temps.
Si vous avez déjà jupyterlab
installé, un noyau Julia
est ensuite disponible. Sinon vous pouvez l’installer et le démarrer directement depuis Julia :
> using IJulia # tapez backspace d'abord
julia# pour sortir du package mode
> jupyterlab() julia
Julia vous propose alors d’installer jupyterlab via miniconda, ce que vous accepterez, et démarre ensuite jupyterlab dans votre navigateur.
Une extension Julia est par ailleurs disponible pour VScode/VScodium, un environnement de développement que je vous conseille et qui permet d’éditer les notebooks jupyter en dehors du navigateur.
Packages utilisés
Nous allons utiliser différents package que je vous invite à installer avant de commencer (il est toujours possible de le faire en cours de route, mais cela peut prendre un certain temps selon la connexion internet et la machine).
Pour cela, il faut lancer Julia, entrer dans le package mode en appuyant sur la touche ]
, puis installer les package via add PackageName
:
> ] # package mode
julia@v1.10) pkg> add Plots
(@v1.10) pkg> add DifferentialEquations
(@v1.10) pkg> add DataFrames
(@v1.10) pkg> add Polynomials
(@v1.10) pkg> add Symbolics
(@v1.10) pkg> add CairoMakie (
Reproductibilité
Au fil du temps les différents packages Julia changent de version, perdant parfois des fonctionnalités ou ayant une interface ou des commandes qui changent. Une manière d’assurer la reproductibilité d’un code est de figer la version des packages (et de Julia) utilisés en spécifiant un environnement/projet de travail. Cela génère deux fichiers Project.toml
et Manifest.toml
qui décrivent les versions spécifiques de Julia et des packages utilisés par le code lorsque le projet a été créé.
Pour pouvoir utiliser le même environnement que celui utilisé ici, créez un répertoire de travail dans lequel vous placerez vos scripts/notebooks, mettons : ~/some/where/biomaths/
.
Téléchargez et placez dans ce répertoire les fichiers Project.toml et Manifest.toml. Ouvrez un terminal et démarrez Julia dans ce répertoire:
> ] # package mode
julia@v1.10) pkg> activate . # active l'environnement de ./Project.toml
(@v1.10) pkg> instantiate # installe ou lie à l'environnement les packages spécifiques (
Les packages sont alors installés dans la version spécifiée dans les fichiers Project.toml
et Manifest.toml
dans l’environnement propre au répertoire biomaths/
.
Par la suite, vos scripts/notebooks commenceront par:
using Pkg # utilise le gestionnaire de package
Pkg.activate(".") # active l'environnement local
Si pour vos projets ultérieurs, vous souhaitez créer votre propre environnement, vous pouvez consuter cette page de la documentation.