compute ke/atom command

Dear All,

Recently,I meet a question about ‘compute ke/atom’ command. I want to dump the kinetic energy of per atom in the simulation box, so I used the command as follows:

compute kinetic all ke/atom
dump 1 all custom 100000 E.dat c_kinetic

There are 72000 atoms in the simulation box. I think I only dumped c_kinetic once at step 100000, and should get 72000 energy data in E.dat, but actually I got 648072 data in E.dat.
I have read the manual of LAMMPS. Within the limits of my knowledge, kinetic energy of per-atom is a per-atom scalar quantity, but why this compute calculates a per-atom vector? What should I do to understand the data in E.dat?

Dear All,

        Recently,I meet a question about 'compute ke/atom' command. I
want to dump the kinetic energy of per atom in the simulation box, so I
used the command as follows:

>>>compute kinetic all ke/atom
>>>dump 1 all custom 100000 E.dat c_kinetic

​this is not enough information about your input.​

        There are 72000 atoms in the simulation box. I think I only dumped
c_kinetic once at step 100000, and should get 72000 energy data in E.dat,
but actually I got 648072 data in E.dat.
        I have read the manual of LAMMPS. Within the limits of my
knowledge, kinetic energy of per-atom is a per-atom scalar quantity, but
why this compute calculates a per-atom vector?

​a per-atom vector in LAMMPS-speak *is* a per atom scalar property. if
there would be multiple properties per atom, it would be called a "per-atom
array". see it from the perspective of the output file. a per-atom scalar
is a vector with natoms elements.

What should I do to understand the data in E.dat?

​please study your input more carefully. it looks like you are losing
atoms. is this intentional? do tell LAMMPS to ignore lost atoms? perhaps,
there is something wrong with your overall setup. however, nobody but you
cam know, since you are not providing sufficient information.

axel.​