Source: https://matheo.uliege.be/bitstream/2268.2/1538/10/TFE_s111734_calixte_2015_2016.pdf