Source: https://publications.polymtl.ca/2461/1/2016_SelimHani.pdf