Is there a way to delete all bonds of a specific molecule at once?

Hi LAMMPS users,

I want to mimic the depolymerization of polymers in my simulation. One approach I have considered is to randomly select a polymer (based on molecule ID) and delete all of its bonds, thus releasing the monomers as non-bonded particles. I am aware that the bond/react module could potentially achieve a similar outcome. However, since the polymerization number of my polymers varies, I don’t have a good sense for how to create corresponding molecule templates. It will be appreciated if anyone can give any ideas about how to implement this kind of process in LAMMPS. Thank you for your assistance.

Please have a look at: delete_bonds command — LAMMPS documentation

You will need to have a temporarily used group (i.e. you can afterwards undefine and redefine the same group) to process all atoms/bonds involved in a specific set of bonded interactions.

That said, you don’t want otherwise unbound monomer atoms floating around. That would be a very strange behavior. It would be better to also delete those atoms or rather do it the other way around and delete all selected monomer atoms and all bonded interactions they were involved with. See delete_atoms command — LAMMPS documentation

Please note that this would leave “dangling” bonds in the remaining atoms where the monomer was disconnected.

Hi Axel,

Thank you for the rapid response and useful suggestion. I’ve found a way to implement the process by combining bond/react and delete bonds.

Best,
Mu-Hung