Same input files got different results on different machines.

Dear everyone:

500.0.0.all.1 (41.4 KB)

500.0.0.all.2 (30.7 KB)

500.0.0.core.1 (10.8 KB)

500.0.0.core.2 (8.69 KB)

500.0.0.outcore.1 (10.8 KB)

500.0.0.outcore.2 (8.69 KB)

Dear everyone:
I used the same scripts, but got different results on different machines.
One machine is a computer cluster and the other one is my laptop, but I used
the same number of CPUs (4 CPUs). My scripts contain two input files, the
first one is for equilibration and the second one is for further simulation.
My problems are:
(1)When I ran the same equilibration input file on two different machines.
They created different number of atoms and got different final state. Parts

this issue has been discussed on this mailing list only a few million times.
you select the region to create atoms in so that (some of) its
boundary lies *exactly* on lattice points. thus whether an atom is
considered inside or outside the region depends on the tiniest of
differences. since floating point math is not associative, small
differences can occur due to different compilers, levels of compiler
optimization or use of hardware (FPU vs. SSE). move your region by a
small amount in all directions, and this ambiguity will be gone.

of my log files are shown below, the one from the cluster is shown firstly:
lattice fcc 4.0800
Lattice spacing in x,y,z = 4.08 4.08 4.08
region rwire cylinder z $r $r $r 0 $l
region rwire cylinder z 5 $r $r 0 $l
region rwire cylinder z 5 5 $r 0 $l
region rwire cylinder z 5 5 5 0 $l
region rwire cylinder z 5 5 5 0 24
create_box 1 rwire
Created orthogonal box = (0 0 0) to (40.8 40.8 97.92)
  1 by 1 by 4 MPI processor grid
create_atoms 1 region rwire
Created 7512 atoms
group wire region rwire
7512 atoms in group wire
mass 1 196.97

        lattice fcc 4.0800
Lattice spacing in x,y,z = 4.08 4.08 4.08
region rwire cylinder z $r $r $r 0 $l
region rwire cylinder z 5 $r $r 0 $l
region rwire cylinder z 5 5 $r 0 $l
region rwire cylinder z 5 5 5 0 $l
region rwire cylinder z 5 5 5 0 24
create_box 1 rwire
Created orthogonal box = (0 0 0) to (40.8 40.8 97.92)
  1 by 1 by 4 MPI processor grid
create_atoms 1 region rwire
Created 7464 atoms
group wire region rwire
7464 atoms in group wire
mass 1 196.97

Step Temp PotEng KinEng TotEng Press Volume Dt Pxx Pyy Pzz Pxy Pxz Pyz
  100000 302.44165 -28404.326 293.63242 -28110.693 883.9479
160600.13 0.001 1020.8991 898.6069 732.33774 362.0321
-110.6599 -302.22665

Step Temp PotEng KinEng TotEng Press Volume Dt Pxx Pyy Pzz Pxy Pxz Pyz
  100000 299.23411 -28213.414 288.66171 -27924.752 104.78059
161240.84 0.001 332.31034 35.21148 -53.180065 535.32662
238.86052 341.97469

The press, pxx, pyy, etc. are much different at the final state. Is this
reasonable or not?

those are *instantaneous* values. in an MD those do fluctuate. if they
were run on different machines with differently compiled binaries,
likely with a different number of processors. why *should* they be
identical?
since you don't provide your complete input, who can say whether your
simulation is reasonable?

(2)When I ran the second input file by reading the restart_file created by
the first input file, I think I got much different results. I defined a
region and a group of my simulation box and I output some data through
commands like "compute computer_ID group_ID temp/region region_ID"
,"variable mytemp equal c_ID" and "fix fix_ID group_ID print XXXXX". Parts
of one of my output files are:

those outputs without the input are useless and a waste of bandwidth.
it is quite possible that the difference is due to the same reason as
mentioned above, but who can say?

[...]

You can see that the results of temperature calculation of the same atoms
(in both the group and region) by two machines are much different. Full of
this kind output files are given is the attachments.

I do not know why they created different number of atoms and have very
different compute results. Can anybody help me? Thanks very much!

you need to find somebody local that has proper training and knowledge
in running MD simulations and that can teach your the practical basics
of how to properly setup, run and analyze such simulations. teaching
this over a mailing list is practically impossible and incredibly
tedious.

you can check if your issues go away by making your regions
unambiguous, but beyond that, you do get some more training to
understand how MD works and how to evaluate its output. you cannot
keep posting your outputs to the list and ask people to "bless" them.

axel.

Dear Dr. Axel Kohlmeyer :
Thank you very much for your help and your advice! I will try that.

With My Best Regards
Wenqiang Liu