Source: https://modeleau.fsg.ulaval.ca/fileadmin/modeleau/documents/Publications/MSc_s/garneaucyril_msc.pdf