Source: https://publications.polymtl.ca/1442/1/2014_EtienneSaloux.pdf