From d4518d2fd149d56b60c1955c551a909e1d349c25 Mon Sep 17 00:00:00 2001
From: sjplimp
This is different than a pairwise bond-order +potential such as Tersoff or AIREBO which infers bonds and many-body +interactions based on the current geometry of a small cluster of atoms +and effectively creates and destroys bonds and higher-order many-body +interactions from timestep to timestep as atoms move.
A check for possible bond breakage is performed every Nevery timesteps. If two bonded atoms I,J are further than a distance Rmax @@ -80,17 +82,21 @@ A uniform random number between 0.0 and 1.0 is generated and the eligible bond is only broken if the random number < fraction.
When a bond is broken, data structures within LAMMPS that store bond -topology are updated to reflect the breakage. This can also affect -subsequent computation of pairwise interactions involving the atoms in -the bond. See the Restriction section below for additional -information. +topology are updated to reflect the breakage. Likewise, if the bond +is part of a 3-body (angle) or 4-body (dihedral, improper) +interaction, that interaction is removed as well.
-Computationally, each timestep this fix operates, it loops over bond -lists and computes distances between pairs of bonded atoms in the -list. It also communicates between neighboring processors to -coordinate which bonds are broken. Thus it will increase the cost of -a timestep. Thus you should be cautious about invoking this fix too -frequently. +
Computationally, each timestep this fix operates, it loops over all +the bonds in the system and computes distances between pairs of bonded +atoms. It also communicates between neighboring processors to +coordinate which bonds are broken. Moreover, if any bonds are broken, +neighbor lists must be immediately updated on the same timestep. This +is to insure that any pairwise interactions that should be turned "on" +due to a bond breaking, because they are no longer excluded by the +presence of the bond and the settings of the +special_bonds command, will be immediately +recognized. All of these operations increase the cost of a timestep. +Thus you should be cautious about invoking this fix too frequently.
You can dump out snapshots of the current bond topology via the dump local command. @@ -132,22 +138,6 @@ minimization. built with that package. See the Making LAMMPS section for more info.
-Currently, there are 2 restrictions for using this fix. We may relax -these in the future if there are new models that would be enabled by -it. -
-When a bond is broken, you might wish to turn off angle and dihedral -interactions that include that bond. However, LAMMPS does not check -for these angles and dihedrals, even if your simulation defines an -angle_style or -dihedral_style. -
-This fix requires that the pairwise weightings defined by the -special_bonds command be *,1,1 for 1-3 and 1-4 -neighbors within the bond topology (the 1-2 setting is not -restricted). This means that the pairwise interaction of I with J's -other bond partners is unaffected by the breaking of the bond. -
Related commands:
fix bond/create, fix diff --git a/doc/fix_bond_break.txt b/doc/fix_bond_break.txt index c3b1a502c2..556bfc1dcb 100755 --- a/doc/fix_bond_break.txt +++ b/doc/fix_bond_break.txt @@ -36,12 +36,14 @@ specified criteria. This can be used to model the dissolution of a polymer network due to stretching of the simulation box or other deformations. In this context, a bond means an interaction between a pair of atoms computed by the "bond_style"_bond_style.html command. -Once the bond is broken it will be permanently deleted. This is -different than a "pairwise"_pair_style.html bond-order potential such -as Tersoff or AIREBO which infers bonds and many-body interactions -based on the current geometry of a small cluster of atoms and -effectively creates and destroys bonds from timestep to timestep as -atoms move. +Once the bond is broken it will be permanently deleted, as will all +angle, dihedral, and improper interactions that bond is part of. + +This is different than a "pairwise"_pair_style.html bond-order +potential such as Tersoff or AIREBO which infers bonds and many-body +interactions based on the current geometry of a small cluster of atoms +and effectively creates and destroys bonds and higher-order many-body +interactions from timestep to timestep as atoms move. A check for possible bond breakage is performed every {Nevery} timesteps. If two bonded atoms I,J are further than a distance {Rmax} @@ -69,17 +71,21 @@ A uniform random number between 0.0 and 1.0 is generated and the eligible bond is only broken if the random number < fraction. When a bond is broken, data structures within LAMMPS that store bond -topology are updated to reflect the breakage. This can also affect -subsequent computation of pairwise interactions involving the atoms in -the bond. See the Restriction section below for additional -information. +topology are updated to reflect the breakage. Likewise, if the bond +is part of a 3-body (angle) or 4-body (dihedral, improper) +interaction, that interaction is removed as well. -Computationally, each timestep this fix operates, it loops over bond -lists and computes distances between pairs of bonded atoms in the -list. It also communicates between neighboring processors to -coordinate which bonds are broken. Thus it will increase the cost of -a timestep. Thus you should be cautious about invoking this fix too -frequently. +Computationally, each timestep this fix operates, it loops over all +the bonds in the system and computes distances between pairs of bonded +atoms. It also communicates between neighboring processors to +coordinate which bonds are broken. Moreover, if any bonds are broken, +neighbor lists must be immediately updated on the same timestep. This +is to insure that any pairwise interactions that should be turned "on" +due to a bond breaking, because they are no longer excluded by the +presence of the bond and the settings of the +"special_bonds"_special_bonds.html command, will be immediately +recognized. All of these operations increase the cost of a timestep. +Thus you should be cautious about invoking this fix too frequently. You can dump out snapshots of the current bond topology via the "dump local"_dump.html command. @@ -121,22 +127,6 @@ This fix is part of the MC package. It is only enabled if LAMMPS was built with that package. See the "Making LAMMPS"_Section_start.html#start_3 section for more info. -Currently, there are 2 restrictions for using this fix. We may relax -these in the future if there are new models that would be enabled by -it. - -When a bond is broken, you might wish to turn off angle and dihedral -interactions that include that bond. However, LAMMPS does not check -for these angles and dihedrals, even if your simulation defines an -"angle_style"_angle_style.html or -"dihedral_style"_dihedral_style.html. - -This fix requires that the pairwise weightings defined by the -"special_bonds"_special_bonds.html command be *,1,1 for 1-3 and 1-4 -neighbors within the bond topology (the 1-2 setting is not -restricted). This means that the pairwise interaction of I with J's -other bond partners is unaffected by the breaking of the bond. - [Related commands:] "fix bond/create"_fix_bond_create.html, "fix