hybrid command in Lammps

Dear LAMMPS users,

I am using hybrid command in LAMMPS . I would like to calculate He msd vs time in Ni.I am using 1 atom of He randomly place in 4000 atoms of FCC Ni. My problem is as I increase temperature my MSD going down and is not linear as shown in the attachment. Can you please advise me on my input script?

log 600.out

units metal

boundary p p p

atom_style atomic

lattice fcc 3.52

region box block 0 10.0 0 10.0 0 10.0

create_box 2 box

create_atoms 1 box

create_atoms 2 random 1 878567 box

pair_style hybrid eam beck 8.0 morse 10.0

pair_coeff 1 1 eam nimib

pair_coeff 2 2 beck 399.6438 0.867636 0.675 4.390 0.0003746 2.96

pair_coeff 1 2 morse 0.0029 1.287 4.1

mass 1 58.6934

mass 2 4.002

group Ni type 1

group he type 2

fix 1 all nve

timestep 0.001

thermo 1000

thermo_style custom step pe lx ly lz press pxx pyy pzz

min_style cg

minimize 1e-30 1e-30 100000 100000

unfix 1

fix 1 all box/relax aniso 0.0 vmax 0.1

thermo_style custom step pe lx ly lz press pxx pyy pzz c_eatoms vol etotal

thermo 100000

minimize 1.0e-30 1.0e-30 100000 1000000

unfix 1

velocity all create 1000 12345 mom yes rot no

fix 1 all npt temp 1000 1000 1 iso 0 0 1 drag 1

Set thermo output

timestep 0.001

thermo 10000

thermo_style custom step lx ly lz press pxx pyy pzz pe temp

Run for at least 10 picosecond (assuming 1 fs timestep)

run 500000

unfix 1

reset_timestep 0

fix 1 all nve

timestep 0.001

Set thermo output

thermo 100000

compute msd he msd

compute 2 Ni msd

variable twopoint equal c_msd[4]/6/(step*dt+1.0e-6)

fix 9 all vector 100000 c_msd[4]

variable fitslope equal slope(f_9)/6/(100000*dt)

thermo_style custom step temp c_msd[1] c_msd[2] c_msd[3] c_msd[4] c_2[4] v_twopoint v_fitslope

dump 3 all custom 1000 1000.dump id type x y z

dump_modify 3 every 1000000

fix 6 all recenter INIT INIT INIT

run 20000000

unfix 1

unfix 9

unfix 6

image.png

Thank You
Ravi

Dear LAMMPS users,

I am using hybrid command in LAMMPS . I would like to calculate He msd vs
time in Ni.I am using 1 atom of He randomly place in 4000 atoms of FCC Ni.
My problem is as I increase temperature my MSD going down and is not linear
as shown in the attachment. Can you please advise me on my input script?

​what has the MSD to do with using a hybrid pair style?
nobody will debug your input script for you, particularly when it is long
and complex.
the way to go about it is to break it down into small pieces and
reduce/simplify it to the absolute minimum and then test ​each stage of the
simulation individually and verify that you get the correct behavior.

does your Ni system behave correctly without He?
if not, you need to sort that out first.

does your system conserve energy properly?
if not, perhaps your time step is too large.

why do you need to use fix recenter?
​it can hide a center of mass drift that would turn your system into a
"flying ice cube".

you are using fix npt with a drag flag. is it required during the
production part of your MD?
perhaps you can change your settings so it works without.

the time constant for barostat is usually chose to be longer than that of
the thermostat. why do you chose them to be the same? how did you determine
whether they are good values in the first place?

and so on and so forth. you have to ask yourself these kinds of questions
and make tests and verify your choices for each individual item. there are
not global "do this, not that" settings that always work. even an
experienced person would have to do the very same thing.

axel.

image.png

Also, for a solid there is nothing
particularly wrong-looking about those MSD curves,
especially if not much diffusion is going on
at those timescales. A small increase initially
(ballistic motion on lattice sites), then some noise.

It may simply be that unless you run to much longer
timescale you won’t see a slow upward drift
in the MSD. If no (or very few) diffusive hops actually ever
happen, the MSD will just be flat and noisy.

Steve

image.png