Evaluation of the Potential Energy: Once interaction lists are created as described above, they stay constant throughout the optimization with unwanted interactions simply being masked out. Although masking wastes some computational power, it avoids the expensive reneighboring, interaction list recreation and recompilation steps as force field parameters evolve. It also leads to a simplified codebase, because the interaction list generation part can be separated from the force field optimization process. The interaction list creation is always performed on the CPU using multiprocessing, regardless of whether a hardware accelerator is used for the optimization part or not.