LAMMPS input script file using PCFF forcefield

I am trying to simulate a simple polymer (butane) using PCFF, but the results are too deviant. What is the problem with my input script? Please check out the input script attached. thanks in advance.

Initialization

clear
units real
dimension 3
boundary p p p
atom_style full
bond_style class2
angle_style class2
improper_style class2
dihedral_style class2
kspace_style ewald 1e-6

pair_style lj/class2/coul/long 10 10 # Adjust the parameters as needed

Atom definition

read_data butane_pcff_compostie.lmp # Provide your data file name

Force field

pair_coeff 1 1 0.054 4.01 # c-c
pair_coeff 2 2 0.02 2.995 # h-h
pair_coeff 1 2 0.0328 3.5025 # c-h

kspace_modify gewald 0.3

group l1 type 1 2
group d1 type 1 2

neigh_modify every 10 delay 10
dump sys all custom 2000 butane_sys.lammpstrj id type x y z
dump alk d1 custom 2000 butane_alk.lammpstrj id type x y z
dump_modify sys append no
dump_modify alk append no

compute t2 poly temp
compute t3 l1 temp
compute cm1 l1 com

compute ke1 all ke/atom
variable tempt1 atom c_ke12/311604.525
compute layers1 d1 chunk/atom bin/1d z lower 0.1 nchunk every units box
fix 4 all ave/chunk 1 2000 2000 layers1 v_tempt1 density/mass file nvttmp_12.profile

#fix 5 gra ave/time 1 2000 2000 c_t1 c_t2 c_t3 file nvtmeanT_14.out
#fix 6 gra ave/time 1 2000 2000 c_cm1[3] c_cm2[3] file nvtmeanCOM_14.out

thermo_style custom step temp vol pe ke etotal c_t3 density spcpu
thermo 1000

velocity all create 250 4928459 rot yes mom yes dist gaussian

minimize 1.0e-6 1.0e-6 100000 400000

restart 100000 restart.* #restartn2

timestep 0.001

fix mom all momentum 2500 linear 0 0 1 rescale

#fix 8 all nvt temp 272 272 1

fix 8 all npt temp 250 250 1 iso 0.987 0.987 5

run 500000

write_data restart1.data

What results were you expecting to get, and why? And what results did you get instead?

i need to get 0.65 but i got around 0.3. is there any wrong in that code?

O.65 what? What are property are you talking about?

Can you edit your initial post and format the input script so that it is easier for us to read and help you?

In general, please let us know which specific version of LAMMPS you are using and what platform with which command line you are running on. There is a post with guidelines and suggestions pinned to the forum category; it is a very good idea to read this carefully and follow the suggestions.

Why did you choose this kspace style?

Why did you make this setting?

Why did you make this setting?

Why two groups, if they are defined the same way?

Why did you choose this setting?

Why did you add this command?

Why did you choose these settings and this integrator?

H-BN sheet in a butane box. Why does the h-BN sheet explode whenever I run the simulation?

BN-final.tersoff (3.0 KB)
HBN-butane.inp (2.2 KB)
composite1.lmp (794.1 KB)

Hmm… I didnt go through your script very carefully, but I would blame the force field. Are you sure the potentials you are using to model the interactions were developed for such context? I mean, if the potentials for the interaction between the atoms in the sheet were developed for a bulk system for example, chances are the sheet is not going to be stable. You would also need to make sure the potentials for the other interactions are good to go for the system you are trying to model.

1 Like

Well spotted. There also is the question of whether the parameters were correctly converted to real units, since many publications for such potentials use eV instead of kcal/mol. Please note that there is a boron nitride Tersoff potential file in the LAMMPS which explicitly mentions “graphene like nanostructures” in the description (but don’t depend on that, study the references publications).

The PCFF parameters are definitely not correct, since there are no (partial) charges. Those need to be computed according to the rules given in the PCFF publication. Furthermore, since BN materials are polar, partial charges are required for the sheet as well or else the interaction with the sheet will be incorrect (even though the Tersoff potential will ignore the charges).

In summary, this very much looks like a case of GI-GO.

I have converted units from metal to real in the Tersoff file. While generating the PCFF data file, I applied charges to each atom type, but charges are not appearing in the data file. What is the solution to my problem? And how can I combine tersoff and PCFF potentials? Is there any mistake in the pair_style?

How did you do that? Charges are a per-atom property and need to be added to the Atoms section.
How can you even continue with a simulation when you know that you system is not correctly represented??

Your main problem is how you approach simulations and how you use the forum.

  • you don’t explain all the things that you did, what choices you made and why.
  • you don’t answer questions that you were asked
  • you start a topic with one kind of system and then continue discussing a more complex system without any indication that you have solved the original issue, let alone explained what the issue was
  • you continue to do simulations even though there are indications that they are flawed and then complain when you don’t the expected results
  • you worry about specific details but fail to see the “big picture” and that it is not just one detail that needs to be changed to resolve your problem, but all details need to be correct. In fact, your one problem is a combination of multiple problem.
  • you don’t seem to properly embrace the concept of “building a simulation in stages” and making tests and resolve all issues for individual parts before you try to combine them

If you have a tutor that teaches you how to do MD simulations, you need to consult him or her more. If you don’t, you need to find yourself one, best one that can train you in person. You should go back to the beginning and learn how to build simulations for simple atomic and then simple molecular systems and keep at them until they are reproducing published results. You cannot get this from an online forum., but you won’t even get much help without responding to questions and providing more details and show that you have understood what you are doing.

Syntactically, your input is correct, but whether that produces meaningful simulation depends on more than just syntax.