[lammps-users] Cross terms in LAMMPS

Dear All,

Are the cross terms, such as E(bond-bond), E(bond-angle), and E(angle-angle), not generally included in LAMMPS?

Of course, I note that a style of cross terms, i.e., Ebb and Eba, can be expressed by ‘angle_style class2’. However, this is the only ‘cross terms’ that I can find in LAMMPS, which ought to be not enough if I want to describe the cross terms for many other force fields, such as CVFF.

The cross terms of CVFF seem to be included in Materials Studio, so I am curious how to describe the cross terms of CVFF or of other force fields in LAMMPS.

If LAMMPS does not support the general cross terms, does it mean that the cross terms are not essential for most force fields (or even for the molecular simulation nowadays)?

In other words, for most force fields, can LAMMPS only describe their ‘E(bond)+E(angle)+E(dihedral)+E(improper)+E(vdW)+E(coul.)’ terms?

Many thanks for your teaching!


Hi Shi-Chao

There is also a “dihedral_style class2” and a “dihedral_style spherical”, both of which support cross terms:


(Note-to-self: The documentation for dihedral_style spherical needs to be updated. There should be an “=” equals sign following the “E()” in the formula.)

I’m not aware of any interactions in CVFF or PCFF or COMPASS which are not currently supported in LAMMPS. (I admit that, sometimes obtaining the correct force field parameters for your molecule can be tricky, depending on the molecule builder software you are using. But the LAMMPS code that calculates forces with the necessary cross-terms should be working.)


Dear Andrew,

Your teaching is so appreciated! I will study the manual more carefully.

Thanks again!