Due to the dynamic typing of Python, loops tend to be the most inefficient part of Python programs. Use cPython
and line_profiling
to
locate the functions and lines where the most time is being spent in the nbody_iter.py
program you wrote for Assignment 5. Use NumPy to
replace the high overhead loops with array operations in order to show a measurable improvement in the performance. Place a comment at the
start of the program indicating the performance improvement you achieved. Call the resulting program nbody_numpy.py
and commit it to
the same repository.