I was wondering whether LAMMPS supports calculations with "global vectors" like what you get from the compute "atom/molecule" or "com/molecule"?
I would be particularly interested in "on the fly" computing forces per molecules as well as com/molecule, and evaluating the inner product of the resulting vectors and then autocorrelate the results (in order to implement a Green-Kubo formalism applied to molecular instead of per atom quantities). The critical part of my implementation would look like this:
compute 1 all property/atom fx
compute 2 all atom/molecule c_1
compute 3 all com/molecule
variable a equal sum(c_2 * c_3) # multiply the x-force on each molecule i with the respective y-coordinates of molecule i and sum over all molecules
compute AC all ave/correlate 1 3000 8000 v_a type auto ave running file autocorr.log
I know that, according to the man pages, I can't use formulas as an argument of sum(), but since I also can't temporarily assign the global vectors to variables (at least according to the variable descriptions) I don't know how to implement this simple calculation. It would be of great help to do these calculations during the LAMMPS runs since if I would dump all the values to a file, it would become very large and hard to handle in post processing (several hundred GB for longer runs and with all the necessary coordinates).
So, my question to you is: Did I overlook something in the manual or is it not possible to calculate the inner product of two global vectors in LAMMPS?
ps.: I am sorry to send this message again, the first time I sent it, I forgot to set my mail client to Plain Text... friday afternoon..