How to implement dynamic key descriptions in Vitrimer with lammps

I am new to the use of lammps software and would like to ask a question. I would like to simulate a Vitrimer molecule that is characterized by having dynamic bonds, where bonds undergo constant exchange at a certain temperature and the number of dynamic bonds is always the same. That is, when there is a bond break, there must be a bond break (as shown below), I know that bond/react describes bond breaks and formation, but I don’t know how to realize that when R1-R2 and R1’-R2’ are in close proximity to each other up to a certain range, the bond between R1-R2 breaks, and R1 ‘-R2’ the bond between R1-R2’ is broken and then the command bond exchange occurs (simultaneously), please give me some suggestions.

This may be? fix bond/swap command — LAMMPS documentation

1 Like

I am glad for your advice, I am trying to use PCFF force field or CVFF force field to describe an all-atom model of a specific substance, and I read the contents of the bond/swap command, which is a command for bead-spring models, and it says “Thus a simulation that uses this fix cannot use a dihedral or improper potential”, so this command may not work for my model. I have tried to use bond/swap for an all-atom model before, and I can see from the results that this command tries many times to swap the keys, but it doesn’t work once, so I posted a thread about this problem. After posting about this issue once, Representative of LAMMPS told me that I should use bond/react to simulate swapping.

Yes, ‘fix bond/react’ can simultaneously create and break one or more specific bonds. For example, your reaction (1) above could be expressed in terms of a pre- and post-reaction template, with two broken bonds and two formed bonds. Does that answer your question?

I would like to know how to realize that when R1-R2 and R1’-R2’ are close to a certain distance, R1-R2 breaks and R1’-R2’ breaks to create R1-R2’ and R1’-R2 (R1 and R2’ must be connected after R1-R2 breaks, or R1’ and R2 must be connected after R1-R2 breaks. (That is, the bond breaks and connects in one complete reaction).

You must ask a concrete question to receive concrete advice. Have you read the REACTER papers and/or website (reacter.org), looked at the ‘fix bond/react’ documentation, and (perhaps most importantly) understood the examples that are shipped with LAMMPS here: examples/PACKAGES/reaction