[lammps-users] problem with “fix bond/create” command

Dear LAMMPS users,

I have a problem with uneven temperature distribution in simulations including the “fix bond/create” command under NVT ensemble. The temperature distribution is normal before any new bonds are created, however, most of the thermal energy is concentrated in few particles that are connected by the new bonds, the temperature of the other particles that are not involved gradually drops to around 0 k.

For example, the temperature of particles with ID 681 and 850 are 233.354 k and 160.547 k, respectively, before new bond is created. After bonding, the temperatures are 141432 k and 145517 k, respectively, the temperature of the other particles approaches 0 k.

Your response is highly appreciated.

Best wishes,


system.data (234 KB)

system.in (997 Bytes)

system.in.init (242 Bytes)

system.in.settings (107 KB)

This is obviously due to your choices of fix bond/create settings and force field parameters.

Whenever you create a bond, you change the nature of interactions between the two atoms and its neighbors significantly.
Your fix bond/create command makes atoms of type 14 eligible for a bond at 3.5 angstrom and then create a bond of type 14 which has an equilibrium distance of 1.5 angstrom. also you have special_bonds settings of lj 0.0 0.0 0.5 which will suddenly mostly remove non-bonded interactions with 1-2, 1-3, and 1-4 pairs due to the new bond and instead use the assigned angle/dihedral parameters instead. Thus if you create bonds in situations where atoms are way outside the “normal” situation for those new interactions, you get very high potential energy, which will translate into very high local kinetic energy. Please see the following “note” from the fix bond/create documentation:

Creating a bond typically alters the energy of a system. You should be careful not to choose bond creation criteria that induce a dramatic change in energy. For example, if you define a very stiff harmonic bond and create it when 2 atoms are separated by a distance far from the equilibrium bond length, then the 2 atoms will oscillate dramatically when the bond is formed. More generally, you may need to thermostat your system to compensate for energy changes resulting from created bonds (and angles, dihedrals, impropers).

Please note that the use of the thermostat in your case will control the temperature of the entire system, so that if you have some atoms with very high kinetic energy due to the changes in the bond topology, you will “drain” kinetic energy from those that are not to keep the global temperature at the desired target. The very design of a Nose-Hoover thermostat is about not interfering with the dynamics of the system and only couple rather weakly and indirectly, thus there is nothing to promote energy dissipation.


Using ‘fix bond/react’ with stabilization solves this problem.

Dear Axel and Jacob,

Thank you very much for your advice.

Best wishes,