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 :

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

  • curl -fsSL https://install.julialang.org | sh

    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

  • julia # executer julia dans un terminal
       _       _ _(_)_     |  Documentation: https://docs.julialang.org
      (_)     | (_) (_)    |
       _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
      | | | | | | |/ _` |  |
      | | |_| | | | (_| |  |  Version 1.10.0 (2023-12-25)
     _/ |\__'_|_|_|\__'_|  |  Official https://julialang.org/ release
    |__/                   |
    
    julia> ]  # package mode
    (@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 :

    julia> using IJulia # tapez backspace d'abord
                        # pour sortir du package mode
    julia> jupyterlab()


    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:

    julia> ]   # package mode
    (@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:

    julia> ]                   # package mode
    (@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.

    Allons-y !