[lammps-users] timestep for Tersoff and tranfering velocity to new date files

Dear All

I am studying the interfacial region of Si nano-particle and polymer of PE, here I have two questions as following:

1, the potential for Si part that I am using is Tersoff. When I set the timestep to be 0.01 fs, it works well, yet, when I set 0.1, the “nan” appear on the log file, meaning it is working unphysically, when 1fs is used, the program does not run anymore. Therefore, I wonder whether is there a maximum timestep for the Tersoff potential?

2, I have prepared the equilibrated polymer matrix, and I am planning to insert the silica parts into the polymer. The problems come, I used restart2data tool to get the both date files of both Si and polymers, and then combined them together, but the velocity information of both was not stored in the new data file. Is there any method that I would transfer the prior velocity info into the new data file? if can, how? The other way is to reset the velocity of the atoms under the T again, but this would take extra time to relax again, and may have a unfavorable effect on the interfacial region.

Any suggestion would be appreciated.


0.01 fmsec sounds too small. I would try to figure
out why your system is unstable with a larger timestep.
Nans typiically appear b/c your system is blowing up from
overlaps or something else unphysical.

Restart2data creates a data file from one restart file. It should
put the velocities for those atoms into that file. So if you did it
twice, where did they go in your case?


Thaks, Steve,

Yes, I checked the restart2date tool again, the velocities are indeed written into the data file, and it worked well with the new data file.

To this first question, I attached part of my input file :

units metal
dimension 3
atom_style atomic

lattice diamond 5.431
boundary p p p

#=====================================================================================================Atom definition
region box block -6 6 -6 6 -6 6
create_box 1 box
create_atoms 1 region box

mass 1 28.0855

velocity all create 300.0 8487 mom yes

pair_style tersoff
pair_coeff * * Si.tersoff Si

neighbor 0.5 bin
neigh_modify every 20 delay 0 check no

region rball sphere 0 0 0 23 side in
group gball region rball

timestep 0.01
thermo 1000

fix mymsd all msd 1000 silicatersoffdiff.date

minimize 1.0e-12 0.0000001 100000 1000000



Dear Steve:

I made a na�ve mistakes in my prior model, as the silicon is metal units, therefore, the timestep 0.01 is 10 fs when transferred to real units. Here, a new problem comes, the silicon is metal units, yet the PE is modeled as real units. When I combined them into a new data file, some parameters would not agree on. For example: timestep 0.001 means 1 fs in metal and 1 means a fs in real, also the same problem with the velocities of both. My question is that how should I specify the parameters in later simulation in this model containing two kinds of units ( metal and real)?

Any suggestions.

You have to do the entire calculation in one set of consistent units.
Thus you will need to choose either metal or real and parameterize
everything in that. I suggest metal, since that is what the Tersoff
file uses.


Hi, steve,

I have made some modification on the Tersoff file in LAMMPS, and it works well for the real units now, I compared the results of metal and real units, it was satisfying. The next problem I have is the hybrid pair_style. In my model, the PE beads are type 1 and the Silicon is type 2. I wrote the pair_style as following, and also tried many other ways, it still does not work. Would you please give a sample based my current model if convenient. Thanks very much.

Problem Description:
1-1 lj/cut a
1-2 lj/cut b is a different cutoff
2-2 Tersoff

What I tried:
pair_style hybrid tersoff lj/cut 10.7
pair_coeff * * Si.real Si ==================this line does not pass with the error: ERROR: Pair coeff for hybrid has invalid style
pair_coeff 1 1 lj/cut 0.107290 3.825
pair_coeff 1 2 lj/cut ...

Any suggestion is appreciated.


This line:
pair_coeff * * Si.real Si
should be
pair_coeff * * tersoff Si.real Si