Source: https://perso-etis.ensea.fr/olivier.romain/Teaching_2A_IUT_UCP_files/cours_DSP_student_2016.pdf