Source: https://cours.unjf.fr/repository/coursefilearea/file.php/133/Cours/D1-2 Amblard.pdf