this shit works for all of the functions, one iteration, 20 dimensions, and one particle