[lammps-users] Modifying bondlist

Dear LAMMPers,

    To simulate reversible bonding, that's, new bond will be built
between two atoms if their distance is shorter than certain cutoff
distance, and bond will be broken if its two atoms are more far away
than this cutoff distance, ( two bonds at maximum per atom), I need to
update the bondlist every time step. There are several questions when
I am doing this by modifying the FENE bond style in LAMMPS,

1, For such a changing bondlist, is it possible to build it by only
modifying the bond_fene.cpp and bond_fene.h files? Need the bond and
bond-related attributes of atoms in atom.cpp to be changed also, such
as the tag, num_bond? Any other attributes should be modified for
bond-forming or bond-breaking?

2, When the atoms of a bond are assigned to different processors,
how does LAMMPS treat them? What need to be updated in this changing
bondlist case?

Any other comments are welcome. Thanks !



This is definitely non-trivial, especially in parallel. The answers
to Q1 are yes for everything. Many data structures, on different
procs, need to be changed.