Source: https://enseirb-matmeca.bordeaux-inp.fr/syllabus1415/pdf/syllabus_FR_E_5.pdf