 # [lammps-users] momentum conservation problem

Dear Lammps Users,

I am doing a DPD simulation with only one type of particles. In the simulation I expect
the momentum to be conserved as the forces are all pairwise. So sum of Vx(or Vy or Vz) over all
the particles should go to zero at each time step. But the value I am getting is between +10^4 and -10^4,
which is much above zero. I am using g++ compiler, and the input script which I am using is the following:

dimension 3
atom_style dpd
boundary p p p
group water type 1
velocity all create 1.0 345677 mom yes dist uniform

pair_style dpd 1.0 1.0 123456
pair_coeff 1 1 25.0 1.0

fix 1 all nve
neighbor 0.5 bin
neigh_modify delay 1

dump 2 water custom 1000 dump-water.* tag type x y z vx vy vz
timestep 0.01
thermo 100
run 50000

Where am I making mistake?

Best Regards,
snigdha.

I believe you should conserve momentum exactly since
the forces are all pairwise and there are no external
forces, so the net force on the system is 0.0.

Is the initial momentum zero?
Can you dump the force on each atom and sum those to get zero?

Steve

Dear Steve,

I believe you should conserve momentum exactly since
the forces are all pairwise and there are no external
forces, so the net force on the system is 0.0.

This is what I would also expect. And also I am sorry I made a mistake in the last mail. Total Vx (Vy,Vz) is between +10^-4 and -10^-4 (I wrote 10^4 in the last mail). But still it is much above zero.

Is the initial momentum zero?

If I use " velocity all create 1.0 345677 mom yes dist uniform" command then initial momentum is not zero but is around 10^(-4). But if I don’t give any initial velocity then as all the atoms gets zero velocity, hence the momentum is zero. But as time progresses the momentum fluctuate between 10^-4 and -10^-4.

Can you dump the force on each atom and sum those to get zero?

No, I am not getting the sum of forces to be zero either. It is around 10^-2 - 10^-3.

I haven’t made any change in the source code. I am using lammps-12feb07 version. What else I can do?

Thank you very much for your help.

snigdha.