bond_style style args
style = none or zero or hybrid or bpm/rotational or bpm/spring or class2 or fene or fene/expand or fene/nm or gaussian or gromos or harmonic or harmonic/restrain harmonic/shift or harmonic/shift/cut or lepton or morse or nonlinear or oxdna/fene or oxdena2/fene or oxrna2/fene or quartic or special or table
args = none for any style except hybrid
hybrid args = list of one or more styles
bond_style harmonic bond_style fene bond_style hybrid harmonic fene
Set the formula(s) LAMMPS uses to compute bond interactions between pairs of atoms. In LAMMPS, a bond differs from a pairwise interaction, which are set via the pair_style command. Bonds are defined between specified pairs of atoms and remain in force for the duration of the simulation (unless new bonds are created or existing bonds break, which is possible in some fixes and bond potentials). The list of bonded atoms is read in by a read_data or read_restart command from a data or restart file. By contrast, pair potentials are typically defined between all pairs of atoms within a cutoff distance and the set of active interactions changes over time.
Hybrid models where bonds are computed using different bond potentials can be setup using the hybrid bond style.
The coefficients associated with a bond style can be specified in a data or restart file or via the bond_coeff command.
All bond potentials store their coefficient data in binary restart files which means bond_style and bond_coeff commands do not need to be re-specified in an input script that restarts a simulation. See the read_restart command for details on how to do this. The one exception is that bond_style hybrid only stores the list of sub-styles in the restart file; bond coefficients need to be re-specified.
When both a bond and pair style is defined, the special_bonds command often needs to be used to turn off (or weight) the pairwise interaction that would otherwise exist between 2 bonded atoms.
In the formulas listed for each bond style, r is the distance between the 2 atoms in the bond.
Here is an alphabetic list of bond styles defined in LAMMPS. Click on the style to display the formula it computes and coefficients specified by the associated bond_coeff command.
Click on the style to display the formula it computes, any additional arguments specified in the bond_style command, and coefficients specified by the associated bond_coeff command.
There are also additional accelerated pair styles included in the LAMMPS distribution for faster performance on CPUs, GPUs, and KNLs. The individual style names on the Commands bond doc page are followed by one or more of (g,i,k,o,t) to indicate which accelerated styles exist.
none - turn off bonded interactions
zero - topology but no interactions
hybrid - define multiple styles of bond interactions
bpm/rotational - breakable bond with forces and torques based on deviation from reference state
bpm/spring - breakable bond with forces based on deviation from reference length
class2 - COMPASS (class 2) bond
fene - FENE (finite-extensible non-linear elastic) bond
fene/expand - FENE bonds with variable size particles
fene/nm - FENE bonds with a generalized Lennard-Jones potential
gaussian - multicentered Gaussian-based bond potential
gromos - GROMOS force field bond
harmonic - harmonic bond
harmonic/restrain - harmonic bond to restrain to original bond distance
harmonic/shift - shifted harmonic bond
harmonic/shift/cut - shifted harmonic bond with a cutoff
lepton - bond potential from evaluating a string
mesocnt - Harmonic bond wrapper with parameterization presets for nanotubes
mm3 - MM3 anharmonic bond
morse - Morse bond
nonlinear - nonlinear bond
oxdna/fene - modified FENE bond suitable for DNA modeling
oxdna2/fene - same as oxdna but used with different pair styles
oxrna2/fene - modified FENE bond suitable for RNA modeling
quartic - breakable quartic bond
special - enable special bond exclusions for 1-5 pairs and beyond
table - tabulated by bond length
Bond styles can only be set for atom styles that allow bonds to be defined.
Most bond styles are part of the MOLECULE package. They are only enabled if LAMMPS was built with that package. See the Build package page for more info. The doc pages for individual bond potentials tell if it is part of a package.