Fix bond/break and fix bond/create for multiple bonds per atom

Hi all,

I am relatively new to lammps and I am trying to make a lattice based network with bonds reminiscent of fiber networks. The bonds must have both central force energy between the springs as well as energy due to bending. Therefore I chose bpm/rotational bond style. However, when using fix bond/create or fix bond/break, the bonds do not create or break with an equal probability among all the bonds. It’s because it does not create more than one bond per atom. Fix bond/break does not break more than one bond per atom either. From the documentation of fix bond/create, it says every atom bonds to an atom that is considered to be “sole” among the multiple possible partners. I’m supposed to make a triangular network with 6 bonds per atom. However, fix bond/create only creates 1 bond per atom. I tried to work around that by running fix bond/create multiple times. But, that’s not creating bonds with equal probability amongst all bonds but favors only certain bonds per random number. Can anyone help me with that?
I have attached the image where it deletes bonds with some bias. Also the probability used for the image to break bonds was 1.0!! At prob = 1.0, I believe it must break all bonds. I’m not sure if I’m missing something here.

I am not sure that ‘bond/create’ is the best option for creating your initial topology, at least not for your system (I may be wrong, I don’t know what ‘a network with bonds reminiscent of fiber network’ is). If I were you, I would rather create the system using some external software (Python or other). It would make it easier to choose which atoms you want to connect with bonds…

1 Like

Thanks Simon for the reply.
By fiber networks, I meant fiber like biological polymer networks.
I do have a code written in C++, however I’m trying to create the system in LAMMPS with multiple goals in mind. For example, some transitions would be easier like going from a 2D system to a 3D system, multiple topologies can be worked out easily as well and so on…
Do you think there’s any other way?

Fix bond/create is rather simpleminded. I agree with Simon on preferring an external, custom tool.
You know a lot about your specific compounds that can be used to steer the model building that a generic tool does not easily have available.

If you still want to use something more sophisticated in LAMMPS, you may want to have a look at fix bond/react instead.


Thanks Alex, I’ll look into it.