Generally, we can define the compute/fix to calculate the arrays of global quantity or the vector of per atom quantity. But I’d like to do Fourier Transformation of the velocity of each atom. Could I define the compute/fix to calculate the quantity F[M][N] in Lammps? M is the index for frequency and N is the index of atom No.
If you mean do an FFT of the velocities of all
atoms in a current snapshot, then you could
write a compute to do this. Though it wouldn't be
easily parallel, and I don't know what it means to do
an FFT of a bunch of per-atom quantities.
If you mean do an FFT of the time history of a single
atom, then no, you couldn't do that in a compute
(or even a fix very easily), b/c you'd have to store lots
of old time history information. It would be
better to do that as a post-processing step on