Dear all:
In my simulation, i have multiple simulation boxes. Molecules can randomly interchange between boxes based on potential energy calculation, so i need to append new molecule and delete moved molecule from/to data structure. During potential energy calculation, a particular molecules can only interact with others molecules of same box not molecules of other boxes. Natural choice can be linked list of such kind of cases. But as far i know, linked list are not allocated side by side in memory that might worsen performance in xeon phi and no 64 byte alignment( please correct me, if i am wrong). I have another plan, like, i will keep all co-ordinates of molecules of all boxes in a single array, and at the same time, i will have integer array that is same size of molecules number which will keep track box identity of molecules and it will be updated if molecule moves, so in that case i do not need to append and delete from data structure. But i am worried for this idea, as molecules of same box are not together rather they are scattered at different location of array of coordinates, i need to search them and calculate potential energy. Can any body give me ideas how should i approach for such kind of problem. I am using fortran.
Regards
Masrul