Fix method for switching bond types?

Hi LAMMPS community,

I’m looking to implement a fix in the vein of bond/create and bond/delete that simply switches the bond type of certain bonds, rather than creating new bonds or deleting old ones. The method should:

  • check to see if all bonds of type T between atom types itype and jtype are above a distance cutoff Rmin and below a cutoff Rmax
  • change selected bonds to type T2 with a specified probability P

Is anyone aware of a preexisting method to carry this out? I’m thinking about creating a custom fix, since I imagine it won’t be a huge change from the bond/create and bond/delete fixes.

I’ve already implemented something similar with a looping method, creating new groups on distance criteria and using “set group x bond T2” commands, but this becomes unwieldy for multiple bond types to switch with different attempt rates. (The application requires three bond types with specified attempt rates for all 6 possible transitions).

Any ideas (or tips on editing LAMMPS source - my first time on that) are appreciated.
Best,
Ari

Hi LAMMPS community,

I'm looking to implement a fix in the vein of bond/create and bond/delete
that simply switches the bond type of certain bonds, rather than creating
new bonds or deleting old ones. The method should:
* check to see if all bonds of type T between atom types itype and jtype are
above a distance cutoff Rmin and below a cutoff Rmax
* change selected bonds to type T2 with a specified probability P

Is anyone aware of a preexisting method to carry this out? I'm thinking
about creating a custom fix, since I imagine it won't be a huge change from
the bond/create and bond/delete fixes.

i don't know of any existing fix that can do this and your approach
seems reasonable.
if you are just switching bond types, some of the complications in
bond/create or bond/delete won't apply.

axel.

I agree - that would be a new capabtility. Please consider

submitting your fix for inclusion in LAMMPS when it is

working.

Steve