Source: https://pagesperso.g-scop.grenoble-inp.fr/~bousquen/ECL_RO/RO_Cours1et2_bousquet.pdf