Introduction to Scientific Computing with Python