https://mysteryweevil.medium.com/master-python-numerical-computing-with-numpy-and-scipy-a-comprehensive-guide-3fb767a6f323