Source: https://publications.polymtl.ca/974/2/2012_AlexandreMerle.pdf