Source: https://www.math.univ-toulouse.fr/~cbesse/mesassets/teaching/SpocPython/Files/V_Libraries/iii_scipy.pdf