fix bond/break

Dear Lammps users,

I tried to delete bonds using fix bond/break command. Before I used this command, I first checked the bond length using “compute property/local” and “compute bond/local dist”.

There were a bunch of very long bonds over 10 Angstrom stretched by “fix deform” in 0 step.

Then, I used the following command to delete bonds in a separate script

fix bond/break 1 1 3.0

As I understand, the above command states “every 1 step, bond type 1 is broken if the bond lengths are over 3.0 angstrom”.

write_data command was used to compare the topologies before and after the simulation.

Unfortunately, the bond topology did not change. Interestingly, I have used different lammps versions; 1) lammps-30Sep13, 2)lammps-12Dec18, 3)lammps-7Aug19.

Only the 30Sep13 version worked.

The following is the key lammps script.

please provide a simple, small, and complete(!) input deck, that reproduces your issue (you can post it to the mailing list or upload it as an issue on the LAMMPS github project).


Dear Lammps Users,

The latest “fix bond/break” (7Aug19) does not seem to work properly in parallel. A few lammps versions were tested to do breaking several stretched bonds. The following tests were summarized.

For 7Aug19 Lammps version, it seems to work breaking bonds with a serial executable but not in parallel of a cluster.

For 30Sep13 Lammps version, it works both in serial and parallel. Angles and dihedrals, however, won’t be altered.

For 12Dec18 Lammps version, it does not work in parallel.

Stretched bonds won’t be broken with the latest lammps version in parallel. In the data file attached, four unusual bond lengths exist, which were checked by “compute bond/local dist command”. After testing with different lammps versions, only 30Sep13 Lammps version worked in both serial and parallel. This version, however, does not update other bonded topologies.

I assume that the latest version lammps (7Aug19) has a problem with “fix bond/break” in the parallel calculation.

Attached are the files uploaded in github.


Incidentally, you might want to consider using fix bond/react. I’m glad you reported the bug.
But I also suspect that even if you solve the problem with fix bond/break, eventually you might reach the limit of what fix bond/break can do. (And more testing for fix bond/react is always a good thing.)
P.S. I do not see the github links.

Thanks Andrew. I will take a look at bond/react. Here is the lammps github link where I posted.



It’s possible there is a bug with fix bond/break. A simple example script like Axel
requested will help. But there is no guarantee that fix bond/break will
break all eligible bonds, even if run for many steps. It is designed for systems that
are slowly stretched with no breakable bonds initially. It might not work if you
start with many highly stretched bonds (possibly beyond the cutoff?). Or if
you stretch many bonds beyond the break point very rapidly.


James - you should look at the issue you posted on GHub. Both Axel and I have responded.
We cannot reproduce your issue with current LAMMPS. I.e. it seems to work fine.


Steve - Thanks for your reply.

Let me try to do it with the current LAMMPS.


I checked that the latest master source from GitHub worked with “fix bond/break” in parallel.


You should check out your machine, then. There have been no code changes at all in fix bond/break since July 2019 and no functional code changes since October 2015. That means that there might be something wrong with either your compiler and libraries or your hardware that will lead to erratic and inconsistent behavior. It cannot be due to the code in fix bond/break.