Source: http://www.lama.univ-savoie.fr/~foare/files/teaching/map101/TD/sol_TD4.pdf