Source: https://publications.polymtl.ca/511/1/2011_MaximeDeRoucyDeFlacourt.pdf