diff --git a/doc/pair_bop.html b/doc/pair_bop.html deleted file mode 100644 index b1f46a4853..0000000000 --- a/doc/pair_bop.html +++ /dev/null @@ -1,562 +0,0 @@ - - - - - - - - - - - pair_style bop command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style bop command

-
-

Syntax

-
pair_style bop keyword ...
-
-
-
    -
  • zero or more keywords may be appended
  • -
  • keyword = save
  • -
-
save = pre-compute and save some values
-
-
-
-
-

Examples

-
pair_style bop
-pair_coeff * * ../potentials/CdTe_bop Cd Te
-pair_style bop save
-pair_coeff * * ../potentials/CdTe.bop.table Cd Te Te
-comm_modify cutoff 14.70
-
-
-
-
-

Description

-

The bop pair style computes Bond-Order Potentials (BOP) based on -quantum mechanical theory incorporating both sigma and pi bondings. -By analytically deriving the BOP from quantum mechanical theory its -transferability to different phases can approach that of quantum -mechanical methods. This potential is similar to the original BOP -developed by Pettifor (Pettifor_1, -Pettifor_2, Pettifor_3) and later updated -by Murdick, Zhou, and Ward (Murdick, Ward). -Currently, BOP potential files for these systems are provided with -LAMMPS: AlCu, CCu, CdTe, CdTeSe, CdZnTe, CuH, GaAs. A sysstem with -only a subset of these elements, including a single element (e.g. C or -Cu or Al or Ga or Zn or CdZn), can also be modeled by using the -appropriate alloy file and assigning all atom types to the -singleelement or subset of elements via the pair_coeff command, as -discussed below.

-

The BOP potential consists of three terms:

-_images/pair_bop.jpg -

where phi_ij(r_ij) is a short-range two-body function representing the -repulsion between a pair of ion cores, beta_(sigma,ij)(r_ij) and -beta_(sigma,ij)(r_ij) are respectively sigma and pi bond ingtegrals, -THETA_(sigma,ij) and THETA_(pi,ij) are sigma and pi bond-orders, and -U_prom is the promotion energy for sp-valent systems.

-

The detailed formulas for this potential are given in Ward -(Ward); here we provide only a brief description.

-

The repulsive energy phi_ij(r_ij) and the bond integrals -beta_(sigma,ij)(r_ij) and beta_(phi,ij)(r_ij) are functions of the -interatomic distance r_ij between atom i and j. Each of these -potentials has a smooth cutoff at a radius of r_(cut,ij). These -smooth cutoffs ensure stable behavior at situations with high sampling -near the cutoff such as melts and surfaces.

-

The bond-orders can be viewed as environment-dependent local variables -that are ij bond specific. The maximum value of the sigma bond-order -(THETA_sigma) is 1, while that of the pi bond-order (THETA_pi) is 2, -attributing to a maximum value of the total bond-order -(THETA_sigma+THETA_pi) of 3. The sigma and pi bond-orders reflect the -ubiquitous single-, double-, and triple- bond behavior of -chemistry. Their analytical expressions can be derived from tight- -binding theory by recursively expanding an inter-site Green’s function -as a continued fraction. To accurately represent the bonding with a -computationally efficient potential formulation suitable for MD -simulations, the derived BOP only takes (and retains) the first two -levels of the recursive representations for both the sigma and the pi -bond-orders. Bond-order terms can be understood in terms of molecular -orbital hopping paths based upon the Cyrot-Lackmann theorem -(Pettifor_1). The sigma bond-order with a half-full -valence shell is used to interpolate the bond-order expressiont that -incorporated explicite valance band filling. This pi bond-order -expression also contains also contains a three-member ring term that -allows implementation of an asymmetric density of states, which helps -to either stabilize or destabilize close-packed structures. The pi -bond-order includes hopping paths of length 4. This enables the -incorporation of dihedral angles effects.

-
-

Note

-

Note that unlike for other potentials, cutoffs for BOP -potentials are not set in the pair_style or pair_coeff command; they -are specified in the BOP potential files themselves. Likewise, the -BOP potential files list atomic masses; thus you do not need to use -the mass command to specify them. Note that for BOP -potentials with hydrogen, you will likely want to set the mass of H -atoms to be 10x or 20x larger to avoid having to use a tiny timestep. -You can do this by using the mass command after using the -pair_coeff command to read the BOP potential -file.

-
-

One option can be specified as a keyword with the pair_style command.

-

The save keyword gives you the option to calculate in advance and -store a set of distances, angles, and derivatives of angles. The -default is to not do this, but to calculate them on-the-fly each time -they are needed. The former may be faster, but takes more memory. -The latter requires less memory, but may be slower. It is best to -test this option to optimize the speed of BOP for your particular -system configuration.

-
-

Only a single pair_coeff command is used with the bop style which -specifies a BOP potential file, with parameters for all needed -elements. These are mapped to LAMMPS atom types by specifying -N additional arguments after the filename in the pair_coeff command, -where N is the number of LAMMPS atom types:

-
    -
  • filename
  • -
  • N element names = mapping of BOP elements to atom types
  • -
-

As an example, imagine the CdTe.bop file has BOP values for Cd -and Te. If your LAMMPS simulation has 4 atoms types and you want the -1st 3 to be Cd, and the 4th to be Te, you would use the following -pair_coeff command:

-
pair_coeff * * CdTe Cd Cd Cd Te
-
-
-

The 1st 2 arguments must be * * so as to span all LAMMPS atom types. -The first three Cd arguments map LAMMPS atom types 1,2,3 to the Cd -element in the BOP file. The final Te argument maps LAMMPS atom type -4 to the Te element in the BOP file.

-

BOP files in the potentials directory of the LAMMPS distribution -have a ”.bop” suffix. The potentials are in tabulated form containing -pre-tabulated pair functions for phi_ij(r_ij), beta_(sigma,ij)(r_ij), -and beta_pi,ij)(r_ij).

-

The parameters/coefficients format for the different kinds of BOP -files are given below with variables matching the formulation of Ward -(Ward) and Zhou (Zhou). Each header line containing a -”:” is preceded by a blank line.

-
-

No angular table file format:

-

The parameters/coefficients format for the BOP potentials input file -containing pre-tabulated functions of g is given below with variables -matching the formulation of Ward (Ward). This format also -assumes the angular functions have the formulation of (Ward).

-
    -
  • Line 1: # elements N
  • -
-

The first line is followed by N lines containing the atomic -number, mass, and element symbol of each element.

-

Following the definition of the elements several global variables for -the tabulated functions are given.

-
    -
  • Line 1: nr, nBOt (nr is the number of divisions the radius is broken -into for function tables and MUST be a factor of 5; nBOt is the number -of divisions for the tabulated values of THETA_(S,ij)
  • -
  • Line 2: delta_1-delta_7 (if all are not used in the particular
  • -
  • formulation, set unused values to 0.0)
  • -
-

Following this N lines for e_1-e_N containing p_pi.

-
    -
  • Line 3: p_pi (for e_1)
  • -
  • Line 4: p_pi (for e_2 and continues to e_N)
  • -
-

The next section contains several pair constants for the number of -interaction types e_i-e_j, with i=1->N, j=i->N

-
    -
  • Line 1: r_cut (for e_1-e_1 interactions)
  • -
  • Line 2: c_sigma, a_sigma, c_pi, a_pi
  • -
  • Line 3: delta_sigma, delta_pi
  • -
  • Line 4: f_sigma, k_sigma, delta_3 (This delta_3 is similar to that of -the previous section but is interaction type dependent)
  • -
-

The next section contains a line for each three body interaction type -e_j-e_i-e_k with i=0->N, j=0->N, k=j->N

-
    -
  • Line 1: g_(sigma0), g_(sigma1), g_(sigma2) (These are coefficients for -g_(sigma,jik)(THETA_ijk) for e_1-e_1-e_1 interaction. Ward -contains the full expressions for the constants as functions of -b_(sigma,ijk), p_(sigma,ijk), u_(sigma,ijk))
  • -
  • Line 2: g_(sigma0), g_(sigma1), g_(sigma2) (for e_1-e_1-e_2)
  • -
-

The next section contains a block for each interaction type for the -phi_ij(r_ij). Each block has nr entries with 5 entries per line.

-
    -
  • Line 1: phi(r1), phi(r2), phi(r3), phi(r4), phi(r5) (for the e_1-e_1 -interaction type)
  • -
  • Line 2: phi(r6), phi(r7), phi(r8), phi(r9), phi(r10) (this continues -until nr)
  • -
  • ...
  • -
  • Line nr/5_1: phi(r1), phi(r2), phi(r3), phi(r4), phi(r5), (for the -e_1-e_1 interaction type)
  • -
-

The next section contains a block for each interaction type for the -beta_(sigma,ij)(r_ij). Each block has nr entries with 5 entries per -line.

-
    -
  • Line 1: beta_sigma(r1), beta_sigma(r2), beta_sigma(r3), beta_sigma(r4), -beta_sigma(r5) (for the e_1-e_1 interaction type)
  • -
  • Line 2: beta_sigma(r6), beta_sigma(r7), beta_sigma(r8), beta_sigma(r9), -beta_sigma(r10) (this continues until nr)
  • -
  • ...
  • -
  • Line nr/5+1: beta_sigma(r1), beta_sigma(r2), beta_sigma(r3), -beta_sigma(r4), beta_sigma(r5) (for the e_1-e_2 interaction type)
  • -
-

The next section contains a block for each interaction type for -beta_(pi,ij)(r_ij). Each block has nr entries with 5 entries per line.

-
    -
  • Line 1: beta_pi(r1), beta_pi(r2), beta_pi(r3), beta_pi(r4), beta_pi(r5) -(for the e_1-e_1 interaction type)
  • -
  • Line 2: beta_pi(r6), beta_pi(r7), beta_pi(r8), beta_pi(r9), -beta_pi(r10) (this continues until nr)
  • -
  • ...
  • -
  • Line nr/5+1: beta_pi(r1), beta_pi(r2), beta_pi(r3), beta_pi(r4), -beta_pi(r5) (for the e_1-e_2 interaction type)
  • -
-

The next section contains a block for each interaction type for the -THETA_(S,ij)((THETA_(sigma,ij))^(1/2), f_(sigma,ij)). Each block has -nBOt entries with 5 entries per line.

-
    -
  • Line 1: THETA_(S,ij)(r1), THETA_(S,ij)(r2), THETA_(S,ij)(r3), -THETA_(S,ij)(r4), THETA_(S,ij)(r5) (for the e_1-e_2 interaction type)
  • -
  • Line 2: THETA_(S,ij)(r6), THETA_(S,ij)(r7), THETA_(S,ij)(r8), -THETA_(S,ij)(r9), THETA_(S,ij)(r10) (this continues until nBOt)
  • -
  • ...
  • -
  • Line nBOt/5+1: THETA_(S,ij)(r1), THETA_(S,ij)(r2), THETA_(S,ij)(r3), -THETA_(S,ij)(r4), THETA_(S,ij)(r5) (for the e_1-e_2 interaction type)
  • -
-

The next section contains a block of N lines for e_1-e_N

-
    -
  • Line 1: delta^mu (for e_1)
  • -
  • Line 2: delta^mu (for e_2 and repeats to e_N)
  • -
-

The last section contains more constants for e_i-e_j interactions with -i=0->N, j=i->N

-
    -
  • Line 1: (A_ij)^(mu*nu) (for e1-e1)
  • -
  • Line 2: (A_ij)^(mu*nu) (for e1-e2 and repeats as above)
  • -
-
-

Angular spline table file format:

-

The parameters/coefficients format for the BOP potentials input file -containing pre-tabulated functions of g is given below with variables -matching the formulation of Ward (Ward). This format also -assumes the angular functions have the formulation of (Zhou).

-
    -
  • Line 1: # elements N
  • -
-

The first line is followed by N lines containing the atomic -number, mass, and element symbol of each element.

-

Following the definition of the elements several global variables for -the tabulated functions are given.

-
    -
  • Line 1: nr, ntheta, nBOt (nr is the number of divisions the radius is broken -into for function tables and MUST be a factor of 5; ntheta is the power of the -power of the spline used to fit the angular function; nBOt is the number -of divisions for the tabulated values of THETA_(S,ij)
  • -
  • Line 2: delta_1-delta_7 (if all are not used in the particular
  • -
  • formulation, set unused values to 0.0)
  • -
-

Following this N lines for e_1-e_N containing p_pi.

-
    -
  • Line 3: p_pi (for e_1)
  • -
  • Line 4: p_pi (for e_2 and continues to e_N)
  • -
-

The next section contains several pair constants for the number of -interaction types e_i-e_j, with i=1->N, j=i->N

-
    -
  • Line 1: r_cut (for e_1-e_1 interactions)
  • -
  • Line 2: c_sigma, a_sigma, c_pi, a_pi
  • -
  • Line 3: delta_sigma, delta_pi
  • -
  • Line 4: f_sigma, k_sigma, delta_3 (This delta_3 is similar to that of -the previous section but is interaction type dependent)
  • -
-

The next section contains a line for each three body interaction type -e_j-e_i-e_k with i=0->N, j=0->N, k=j->N

-
    -
  • Line 1: g0, g1, g2... (These are coefficients for the angular spline -of the g_(sigma,jik)(THETA_ijk) for e_1-e_1-e_1 interaction. The -function can contain up to 10 term thus 10 constants. The first line -can contain up to five constants. If the spline has more than five -terms the second line will contain the remaining constants The -following lines will then contain the constants for the remainaing g0, -g1, g2... (for e_1-e_1-e_2) and the other three body -interactions
  • -
-

The rest of the table has the same structure as the previous section -(see above).

-
-

Angular no-spline table file format:

-

The parameters/coefficients format for the BOP potentials input file -containing pre-tabulated functions of g is given below with variables -matching the formulation of Ward (Ward). This format also -assumes the angular functions have the formulation of (Zhou).

-
    -
  • Line 1: # elements N
  • -
-

The first two lines are followed by N lines containing the atomic -number, mass, and element symbol of each element.

-

Following the definition of the elements several global variables for -the tabulated functions are given.

-
    -
  • Line 1: nr, ntheta, nBOt (nr is the number of divisions the radius is broken -into for function tables and MUST be a factor of 5; ntheta is the number of -divisions for the tabulated values of the g angular function; nBOt is the number -of divisions for the tabulated values of THETA_(S,ij)
  • -
  • Line 2: delta_1-delta_7 (if all are not used in the particular
  • -
  • formulation, set unused values to 0.0)
  • -
-

Following this N lines for e_1-e_N containing p_pi.

-
    -
  • Line 3: p_pi (for e_1)
  • -
  • Line 4: p_pi (for e_2 and continues to e_N)
  • -
-

The next section contains several pair constants for the number of -interaction types e_i-e_j, with i=1->N, j=i->N

-
    -
  • Line 1: r_cut (for e_1-e_1 interactions)
  • -
  • Line 2: c_sigma, a_sigma, c_pi, a_pi
  • -
  • Line 3: delta_sigma, delta_pi
  • -
  • Line 4: f_sigma, k_sigma, delta_3 (This delta_3 is similar to that of -the previous section but is interaction type dependent)
  • -
-

The next section contains a line for each three body interaction type -e_j-e_i-e_k with i=0->N, j=0->N, k=j->N

-
    -
  • Line 1: g(theta1), g(theta2), g(theta3), g(theta4), g(theta5) (for the e_1-e_1-e_1 -interaction type)
  • -
  • Line 2: g(theta6), g(theta7), g(theta8), g(theta9), g(theta10) (this continues -until ntheta)
  • -
  • ...
  • -
  • Line ntheta/5+1: g(theta1), g(theta2), g(theta3), g(theta4), g(theta5), (for the -e_1-e_1-e_2 interaction type)
  • -
-

The rest of the table has the same structure as the previous section (see above).

-
-

Mixing, shift, table tail correction, restart:

-

This pair style does not support the pair_modify -mix, shift, table, and tail options.

-

This pair style does not write its information to binary restart files, since it is stored in potential files. Thus, you -need to re-specify the pair_style and pair_coeff commands in an input -script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-

These pair styles are part of the MANYBODY package. They are only -enabled if LAMMPS was built with that package (which it is by default). -See the Making LAMMPS section for more -info.

-

These pair potentials require the newtion setting to be -“on” for pair interactions.

-

The CdTe.bop and GaAs.bop potential files provided with LAMMPS (see the -potentials directory) are parameterized for metal units. -You can use the BOP potential with any LAMMPS units, but you would need -to create your own BOP potential file with coefficients listed in the -appropriate units if your simulation does not use “metal” units.

-
- -
-

Default

-

non-tabulated potential file, a_0 is non-zero.

-
-

(Pettifor_1) D.G. Pettifor and I.I. Oleinik, Phys. Rev. B, 59, 8487 -(1999).

-

(Pettifor_2) D.G. Pettifor and I.I. Oleinik, Phys. Rev. Lett., 84, -4124 (2000).

-

(Pettifor_3) D.G. Pettifor and I.I. Oleinik, Phys. Rev. B, 65, 172103 -(2002).

-

(Murdick) D.A. Murdick, X.W. Zhou, H.N.G. Wadley, D. Nguyen-Manh, R. -Drautz, and D.G. Pettifor, Phys. Rev. B, 73, 45206 (2006).

-

(Ward) D.K. Ward, X.W. Zhou, B.M. Wong, F.P. Doty, and J.A. -Zimmerman, Phys. Rev. B, 85,115206 (2012).

-

(Zhou) X.W. Zhou, D.K. Ward, M. Foster (TBP).

-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_born.html b/doc/pair_born.html deleted file mode 100644 index 65da629fb9..0000000000 --- a/doc/pair_born.html +++ /dev/null @@ -1,377 +0,0 @@ - - - - - - - - - - - pair_style born command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style born command

-
-
-

pair_style born/omp command

-
-
-

pair_style born/gpu command

-
-
-

pair_style born/coul/long command

-
-
-

pair_style born/coul/long/cs command

-
-
-

pair_style born/coul/long/cuda command

-
-
-

pair_style born/coul/long/gpu command

-
-
-

pair_style born/coul/long/omp command

-
-
-

pair_style born/coul/msm command

-
-
-

pair_style born/coul/msm/omp command

-
-
-

pair_style born/coul/wolf command

-
-
-

pair_style born/coul/wolf/gpu command

-
-
-

pair_style born/coul/wolf/omp command

-
-

Syntax

-
pair_style style args
-
-
-
    -
  • style = born or born/coul/long or born/coul/long/cs or born/coul/msm or born/coul/wolf
  • -
  • args = list of arguments for a particular style
  • -
-
-born args = cutoff
-  cutoff = global cutoff for non-Coulombic interactions (distance units)
-born/coul/long or born/coul/long/cs args = cutoff (cutoff2)
-  cutoff = global cutoff for non-Coulombic (and Coulombic if only 1 arg) (distance units)
-  cutoff2 = global cutoff for Coulombic (optional) (distance units)
-born/coul/msm args = cutoff (cutoff2)
-  cutoff = global cutoff for non-Coulombic (and Coulombic if only 1 arg) (distance units)
-  cutoff2 = global cutoff for Coulombic (optional) (distance units)
-born/coul/wolf args = alpha cutoff (cutoff2)
-  alpha = damping parameter (inverse distance units)
-  cutoff = global cutoff for non-Coulombic (and Coulombic if only 1 arg) (distance units)
-  cutoff2 = global cutoff for Coulombic (optional) (distance units)
-
-
-
-

Examples

-
pair_style born 10.0
-pair_coeff * * 6.08 0.317 2.340 24.18 11.51
-pair_coeff 1 1 6.08 0.317 2.340 24.18 11.51
-
-
-
pair_style born/coul/long 10.0
-pair_style born/coul/long/cs 10.0
-pair_style born/coul/long 10.0 8.0
-pair_style born/coul/long/cs 10.0 8.0
-pair_coeff * * 6.08 0.317 2.340 24.18 11.51
-pair_coeff 1 1 6.08 0.317 2.340 24.18 11.51
-
-
-
pair_style born/coul/msm 10.0
-pair_style born/coul/msm 10.0 8.0
-pair_coeff * * 6.08 0.317 2.340 24.18 11.51
-pair_coeff 1 1 6.08 0.317 2.340 24.18 11.51
-
-
-
pair_style born/coul/wolf 0.25 10.0
-pair_style born/coul/wolf 0.25 10.0 9.0
-pair_coeff * * 6.08 0.317 2.340 24.18 11.51
-pair_coeff 1 1 6.08 0.317 2.340 24.18 11.51
-
-
-
-
-

Description

-

The born style computes the Born-Mayer-Huggins or Tosi/Fumi -potential described in (Fumi and Tosi), given by

-_images/pair_born.jpg -

where sigma is an interaction-dependent length parameter, rho is an -ionic-pair dependent length parameter, and Rc is the cutoff.

-

The styles with coul/long or coul/msm add a Coulombic term as -described for the lj/cut pair styles. An additional -damping factor is applied to the Coulombic term so it can be used in -conjunction with the kspace_style command and its -ewald or pppm of msm option. The Coulombic cutoff specified for -this style means that pairwise interactions within this distance are -computed directly; interactions outside that distance are computed in -reciprocal space.

-

If one cutoff is specified for the born/coul/long and -born/coul/msm style, it is used for both the A,C,D and Coulombic -terms. If two cutoffs are specified, the first is used as the cutoff -for the A,C,D terms, and the second is the cutoff for the Coulombic -term.

-

The born/coul/wolf style adds a Coulombic term as described for the -Wolf potential in the coul/wolf pair style.

-

Style born/coul/long/cs is identical to born/coul/long except that -a term is added for the core/shell model -to allow charges on core and shell particles to be separated by r = -0.0.

-

Note that these potentials are related to the Buckingham potential.

-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above, or in the data file or restart files read by the -read_data or read_restart -commands, or by mixing as described below:

-
    -
  • A (energy units)
  • -
  • rho (distance units)
  • -
  • sigma (distance units)
  • -
  • C (energy units * distance units^6)
  • -
  • D (energy units * distance units^8)
  • -
  • cutoff (distance units)
  • -
-

The second coefficient, rho, must be greater than zero.

-

The last coefficient is optional. If not specified, the global A,C,D -cutoff specified in the pair_style command is used.

-

For born/coul/long and born/coul/wolf no Coulombic cutoff can be -specified for an individual I,J type pair. All type pairs use the -same global Coulombic cutoff specified in the pair_style command.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

These pair styles do not support mixing. Thus, coefficients for all -I,J pairs must be specified explicitly.

-

These styles support the pair_modify shift option -for the energy of the exp(), 1/r^6, and 1/r^8 portion of the pair -interaction.

-

The born/coul/long pair style supports the -pair_modify table option ti tabulate the -short-range portion of the long-range Coulombic interaction.

-

These styles support the pair_modify tail option for adding long-range -tail corrections to energy and pressure.

-

Thess styles writes thei information to binary restart -files, so pair_style and pair_coeff commands do not need to be -specified in an input script that reads a restart file.

-

These styles can only be used via the pair keyword of the run_style respa command. They do not support the inner, -middle, outer keywords.

-
-
-
-

Restrictions

-

The born/coul/long style is part of the KSPACE package. It is only -enabled if LAMMPS was built with that package (which it is by -default). See the Making LAMMPS section -for more info.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_brownian.html b/doc/pair_brownian.html deleted file mode 100644 index 53447f642b..0000000000 --- a/doc/pair_brownian.html +++ /dev/null @@ -1,308 +0,0 @@ - - - - - - - - - - - pair_style brownian command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style brownian command

-
-
-

pair_style brownian/omp command

-
-
-

pair_style brownian/poly command

-
-
-

pair_style brownian/poly/omp command

-
-

Syntax

-
pair_style style mu flaglog flagfld cutinner cutoff t_target seed flagHI flagVF
-
-
-
    -
  • style = brownian or brownian/poly
  • -
  • mu = dynamic viscosity (dynamic viscosity units)
  • -
  • flaglog = 0/1 log terms in the lubrication approximation on/off
  • -
  • flagfld = 0/1 to include/exclude Fast Lubrication Dynamics effects
  • -
  • cutinner = inner cutoff distance (distance units)
  • -
  • cutoff = outer cutoff for interactions (distance units)
  • -
  • t_target = target temp of the system (temperature units)
  • -
  • seed = seed for the random number generator (positive integer)
  • -
  • flagHI (optional) = 0/1 to include/exclude 1/r hydrodynamic interactions
  • -
  • flagVF (optional) = 0/1 to include/exclude volume fraction corrections in the long-range isotropic terms
  • -
-
-
-

Examples

-
pair_style brownian 1.5 1 1 2.01 2.5 2.0 5878567 (assuming radius = 1)
-pair_coeff 1 1 2.05 2.8
-pair_coeff * *
-
-
-
-
-

Description

-

Styles brownian and brownain/poly compute Brownian forces and -torques on finite-size spherical particles. The former requires -monodisperse spherical particles; the latter allows for polydisperse -spherical particles.

-

These pair styles are designed to be used with either the pair_style lubricate or pair_style lubricateU commands to provide thermostatting -when dissipative lubrication forces are acting. Thus the parameters -mu, flaglog, flagfld, cutinner, and cutoff should be -specified consistent with the settings in the lubrication pair styles. -For details, refer to either of the lubrication pair styles.

-

The t_target setting is used to specify the target temperature of -the system. The random number seed is used to generate random -numbers for the thermostatting procedure.

-

The flagHI and flagVF settings are optional. Neither should be -used, or both must be defined.

-
-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above, or in the data file or restart files read by the -read_data or read_restart -commands, or by mixing as described below:

-
    -
  • cutinner (distance units)
  • -
  • cutoff (distance units)
  • -
-

The two coefficients are optional. If neither is specified, the two -cutoffs specified in the pair_style command are used. Otherwise both -must be specified.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in this section of -the manual. The accelerated styles take the same arguments and should -produce the same results, except for round-off and precision issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See this section of the manual for more -instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, the two cutoff distances for this -pair style can be mixed. The default mix value is geometric. See -the “pair_modify” command for details.

-

This pair style does not support the pair_modify -shift option for the energy of the pair interaction.

-

The pair_modify table option is not relevant -for this pair style.

-

This pair style does not support the pair_modify -tail option for adding long-range tail corrections to energy and -pressure.

-

This pair style writes its information to binary restart files, so pair_style and pair_coeff commands do not need -to be specified in an input script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-

These styles are part of the COLLOID package. They are only enabled -if LAMMPS was built with that package. See the Making LAMMPS section for more info.

-

Only spherical monodisperse particles are allowed for pair_style -brownian.

-

Only spherical particles are allowed for pair_style brownian/poly.

-
- -
-

Default

-

The default settings for the optional args are flagHI = 1 and flagVF = -1.

-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_buck.html b/doc/pair_buck.html deleted file mode 100644 index 560fdd0d02..0000000000 --- a/doc/pair_buck.html +++ /dev/null @@ -1,407 +0,0 @@ - - - - - - - - - - - pair_style buck command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style buck command

-
-
-

pair_style buck/cuda command

-
-
-

pair_style buck/gpu command

-
-
-

pair_style buck/intel command

-
-
-

pair_style buck/kk command

-
-
-

pair_style buck/omp command

-
-
-

pair_style buck/coul/cut command

-
-
-

pair_style buck/coul/cut/cuda command

-
-
-

pair_style buck/coul/cut/gpu command

-
-
-

pair_style buck/coul/cut/intel command

-
-
-

pair_style buck/coul/cut/kk command

-
-
-

pair_style buck/coul/cut/omp command

-
-
-

pair_style buck/coul/long command

-
-
-

pair_style buck/coul/long/cs command

-
-
-

pair_style buck/coul/long/cuda command

-
-
-

pair_style buck/coul/long/gpu command

-
-
-

pair_style buck/coul/long/intel command

-
-
-

pair_style buck/coul/long/kk command

-
-
-

pair_style buck/coul/long/omp command

-
-
-

pair_style buck/coul/msm command

-
-
-

pair_style buck/coul/msm/omp command

-
-

Syntax

-
pair_style style args
-
-
-
    -
  • style = buck or buck/coul/cut or buck/coul/long or buck/coul/long/cs or buck/coul/msm
  • -
  • args = list of arguments for a particular style
  • -
-
-buck args = cutoff
-  cutoff = global cutoff for Buckingham interactions (distance units)
-buck/coul/cut args = cutoff (cutoff2)
-  cutoff = global cutoff for Buckingham (and Coulombic if only 1 arg) (distance units)
-  cutoff2 = global cutoff for Coulombic (optional) (distance units)
-buck/coul/long or buck/coul/long/cs args = cutoff (cutoff2)
-  cutoff = global cutoff for Buckingham (and Coulombic if only 1 arg) (distance units)
-  cutoff2 = global cutoff for Coulombic (optional) (distance units)
-buck/coul/msm args = cutoff (cutoff2)
-  cutoff = global cutoff for Buckingham (and Coulombic if only 1 arg) (distance units)
-  cutoff2 = global cutoff for Coulombic (optional) (distance units)
-
-
-
-

Examples

-
pair_style buck 2.5
-pair_coeff * * 100.0 1.5 200.0
-pair_coeff * * 100.0 1.5 200.0 3.0
-
-
-
pair_style buck/coul/cut 10.0
-pair_style buck/coul/cut 10.0 8.0
-pair_coeff * * 100.0 1.5 200.0
-pair_coeff 1 1 100.0 1.5 200.0 9.0
-pair_coeff 1 1 100.0 1.5 200.0 9.0 8.0
-
-
-
pair_style buck/coul/long 10.0
-pair_style buck/coul/long/cs 10.0
-pair_style buck/coul/long 10.0 8.0
-pair_style buck/coul/long/cs 10.0 8.0
-pair_coeff * * 100.0 1.5 200.0
-pair_coeff 1 1 100.0 1.5 200.0 9.0
-
-
-
pair_style buck/coul/msm 10.0
-pair_style buck/coul/msm 10.0 8.0
-pair_coeff * * 100.0 1.5 200.0
-pair_coeff 1 1 100.0 1.5 200.0 9.0
-
-
-
-
-

Description

-

The buck style computes a Buckingham potential (exp/6 instead of -Lennard-Jones 12/6) given by

-_images/pair_buck.jpg -

where rho is an ionic-pair dependent length parameter, and Rc is the -cutoff on both terms.

-

The styles with coul/cut or coul/long or coul/msm add a -Coulombic term as described for the lj/cut pair styles. -For buck/coul/long and buc/coul/msm, an additional damping factor -is applied to the Coulombic term so it can be used in conjunction with -the kspace_style command and its ewald or pppm -or msm option. The Coulombic cutoff specified for this style means -that pairwise interactions within this distance are computed directly; -interactions outside that distance are computed in reciprocal space.

-

If one cutoff is specified for the born/coul/cut and -born/coul/long and born/coul/msm styles, it is used for both the -A,C and Coulombic terms. If two cutoffs are specified, the first is -used as the cutoff for the A,C terms, and the second is the cutoff for -the Coulombic term.

-

Style buck/coul/long/cs is identical to buck/coul/long except that -a term is added for the core/shell model -to allow charges on core and shell particles to be separated by r = -0.0.

-

Note that these potentials are related to the Born-Mayer-Huggins potential.

-
-

Note

-

For all these pair styles, the terms with A and C are always -cutoff. The additional Coulombic term can be cutoff or long-range (no -cutoff) depending on whether the style name includes coul/cut or -coul/long or coul/msm. If you wish the C/r^6 term to be long-range -(no cutoff), then see the pair_style buck/long/coul/long command.

-
-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above, or in the data file or restart files read by the -read_data or read_restart -commands:

-
    -
  • A (energy units)
  • -
  • rho (distance units)
  • -
  • C (energy-distance^6 units)
  • -
  • cutoff (distance units)
  • -
  • cutoff2 (distance units)
  • -
-

The second coefficient, rho, must be greater than zero.

-

The latter 2 coefficients are optional. If not specified, the global -A,C and Coulombic cutoffs are used. If only one cutoff is specified, -it is used as the cutoff for both A,C and Coulombic interactions for -this type pair. If both coefficients are specified, they are used as -the A,C and Coulombic cutoffs for this type pair. You cannot specify -2 cutoffs for style buck, since it has no Coulombic terms.

-

For buck/coul/long only the LJ cutoff can be specified since a -Coulombic cutoff cannot be specified for an individual I,J type pair. -All type pairs use the same global Coulombic cutoff specified in the -pair_style command.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

These pair styles do not support mixing. Thus, coefficients for all -I,J pairs must be specified explicitly.

-

These styles support the pair_modify shift option -for the energy of the exp() and 1/r^6 portion of the pair interaction.

-

The buck/coul/long pair style supports the -pair_modify table option to tabulate the -short-range portion of the long-range Coulombic interaction.

-

These styles support the pair_modify tail option for adding long-range -tail corrections to energy and pressure for the A,C terms in the -pair interaction.

-

These styles write their information to binary restart files, so pair_style and pair_coeff commands do not need -to be specified in an input script that reads a restart file.

-

These styles can only be used via the pair keyword of the run_style respa command. They do not support the inner, -middle, outer keywords.

-
-
-

Restrictions

-

The buck/coul/long style is part of the KSPACE package. The -buck/coul/long/cs style is part of the CORESHELL package. They are -only enabled if LAMMPS was built with that package (which it is by -default). See the Making LAMMPS section -for more info.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_buck_long.html b/doc/pair_buck_long.html deleted file mode 100644 index 60cf58db93..0000000000 --- a/doc/pair_buck_long.html +++ /dev/null @@ -1,338 +0,0 @@ - - - - - - - - - - - pair_style buck/long/coul/long command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style buck/long/coul/long command

-
-
-

pair_style buck/long/coul/long/omp command

-
-

Syntax

-
pair_style buck/long/coul/long flag_buck flag_coul cutoff (cutoff2)
-
-
-
    -
  • flag_buck = long or cut
  • -
-
-long = use Kspace long-range summation for the dispersion term 1/r^6
-cut = use a cutoff
-
-
    -
  • flag_coul = long or off
  • -
-
-long = use Kspace long-range summation for the Coulombic term 1/r
-off = omit the Coulombic term
-
-
    -
  • cutoff = global cutoff for Buckingham (and Coulombic if only 1 cutoff) (distance units)
  • -
  • cutoff2 = global cutoff for Coulombic (optional) (distance units)
  • -
-
-
-

Examples

-
pair_style buck/long/coul/long cut off 2.5
-pair_style buck/long/coul/long cut long 2.5 4.0
-pair_style buck/long/coul/long long long 4.0
-pair_coeff * * 1 1
-pair_coeff 1 1 1 3 4
-
-
-
-
-

Description

-

The buck/long/coul/long style computes a Buckingham potential (exp/6 -instead of Lennard-Jones 12/6) and Coulombic potential, given by

-_images/pair_buck.jpg -_images/pair_coulomb.jpg -

Rc is the cutoff. If one cutoff is specified in the pair_style -command, it is used for both the Buckingham and Coulombic terms. If -two cutoffs are specified, they are used as cutoffs for the Buckingham -and Coulombic terms respectively.

-

The purpose of this pair style is to capture long-range interactions -resulting from both attractive 1/r^6 Buckingham and Coulombic 1/r -interactions. This is done by use of the flag_buck and flag_coul -settings. The “Ismail paper has more details on when it is -appropriate to include long-range 1/r^6 interactions, using this -potential.

-

If flag_buck is set to long, no cutoff is used on the Buckingham -1/r^6 dispersion term. The long-range portion can be calculated by -using the kspace_style ewald/disp or pppm/disp -commands. The specified Buckingham cutoff then determines which -portion of the Buckingham interactions are computed directly by the -pair potential versus which part is computed in reciprocal space via -the Kspace style. If flag_buck is set to cut, the Buckingham -interactions are simply cutoff, as with pair_style buck.

-

If flag_coul is set to long, no cutoff is used on the Coulombic -interactions. The long-range portion can calculated by using any of -several kspace_style command options such as -pppm or ewald. Note that if flag_buck is also set to long, then -the ewald/disp or pppm/disp Kspace style needs to be used to -perform the long-range calculations for both the Buckingham and -Coulombic interactions. If flag_coul is set to off, Coulombic -interactions are not computed.

-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above, or in the data file or restart files read by the -read_data or read_restart -commands:

-
    -
  • A (energy units)
  • -
  • rho (distance units)
  • -
  • C (energy-distance^6 units)
  • -
  • cutoff (distance units)
  • -
  • cutoff2 (distance units)
  • -
-

The second coefficient, rho, must be greater than zero.

-

The latter 2 coefficients are optional. If not specified, the global -Buckingham and Coulombic cutoffs specified in the pair_style command -are used. If only one cutoff is specified, it is used as the cutoff -for both Buckingham and Coulombic interactions for this type pair. If -both coefficients are specified, they are used as the Buckingham and -Coulombic cutoffs for this type pair. Note that if you are using -flag_buck set to long, you cannot specify a Buckingham cutoff for -an atom type pair, since only one global Buckingham cutoff is allowed. -Similarly, if you are using flag_coul set to long, you cannot -specify a Coulombic cutoff for an atom type pair, since only one -global Coulombic cutoff is allowed.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

This pair styles does not support mixing. Thus, coefficients for all -I,J pairs must be specified explicitly.

-

This pair style supports the pair_modify shift -option for the energy of the exp() and 1/r^6 portion of the pair -interaction, assuming flag_buck is cut.

-

This pair style does not support the pair_modify -shift option for the energy of the Buckingham portion of the pair -interaction.

-

This pair style supports the pair_modify table and -table/disp options since they can tabulate the short-range portion of -the long-range Coulombic and dispersion interactions.

-

This pair style write its information to binary restart files, so pair_style and pair_coeff commands do not need -to be specified in an input script that reads a restart file.

-

This pair style supports the use of the inner, middle, and outer -keywords of the run_style respa command, meaning the -pairwise forces can be partitioned by distance at different levels of -the rRESPA hierarchy. See the run_style command for -details.

-
-
-
-

Restrictions

-

This style is part of the KSPACE package. It is only enabled if -LAMMPS was built with that package. See the Making LAMMPS section for more info. Note that -the KSPACE package is installed by default.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_charmm.html b/doc/pair_charmm.html deleted file mode 100644 index ce2f66921c..0000000000 --- a/doc/pair_charmm.html +++ /dev/null @@ -1,391 +0,0 @@ - - - - - - - - - - - pair_style lj/charmm/coul/charmm command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style lj/charmm/coul/charmm command

-
-
-

pair_style lj/charmm/coul/charmm/cuda command

-
-
-

pair_style lj/charmm/coul/charmm/omp command

-
-
-

pair_style lj/charmm/coul/charmm/implicit command

-
-
-

pair_style lj/charmm/coul/charmm/implicit/cuda command

-
-
-

pair_style lj/charmm/coul/charmm/implicit/omp command

-
-
-

pair_style lj/charmm/coul/long command

-
-
-

pair_style lj/charmm/coul/long/cuda command

-
-
-

pair_style lj/charmm/coul/long/gpu command

-
-
-

pair_style lj/charmm/coul/long/intel command

-
-
-

pair_style lj/charmm/coul/long/opt command

-
-
-

pair_style lj/charmm/coul/long/omp command

-
-
-

pair_style lj/charmm/coul/msm command

-
-
-

pair_style lj/charmm/coul/msm/omp command

-
-

Syntax

-
pair_style style args
-
-
-
    -
  • style = lj/charmm/coul/charmm or lj/charmm/coul/charmm/implicit or lj/charmm/coul/long or lj/charmm/coul/msm
  • -
  • args = list of arguments for a particular style
  • -
-
-lj/charmm/coul/charmm args = inner outer (inner2) (outer2)
-  inner, outer = global switching cutoffs for Lennard Jones (and Coulombic if only 2 args)
-  inner2, outer2 = global switching cutoffs for Coulombic (optional)
-lj/charmm/coul/charmm/implicit args = inner outer (inner2) (outer2)
-  inner, outer = global switching cutoffs for LJ (and Coulombic if only 2 args)
-  inner2, outer2 = global switching cutoffs for Coulombic (optional)
-lj/charmm/coul/long args = inner outer (cutoff)
-  inner, outer = global switching cutoffs for LJ (and Coulombic if only 2 args)
-  cutoff = global cutoff for Coulombic (optional, outer is Coulombic cutoff if only 2 args)
-lj/charmm/coul/msm args = inner outer (cutoff)
-  inner, outer = global switching cutoffs for LJ (and Coulombic if only 2 args)
-  cutoff = global cutoff for Coulombic (optional, outer is Coulombic cutoff if only 2 args)
-
-
-
-

Examples

-
pair_style lj/charmm/coul/charmm 8.0 10.0
-pair_style lj/charmm/coul/charmm 8.0 10.0 7.0 9.0
-pair_coeff * * 100.0 2.0
-pair_coeff 1 1 100.0 2.0 150.0 3.5
-
-
-
pair_style lj/charmm/coul/charmm/implicit 8.0 10.0
-pair_style lj/charmm/coul/charmm/implicit 8.0 10.0 7.0 9.0
-pair_coeff * * 100.0 2.0
-pair_coeff 1 1 100.0 2.0 150.0 3.5
-
-
-
pair_style lj/charmm/coul/long 8.0 10.0
-pair_style lj/charmm/coul/long 8.0 10.0 9.0
-pair_coeff * * 100.0 2.0
-pair_coeff 1 1 100.0 2.0 150.0 3.5
-
-
-
pair_style lj/charmm/coul/msm 8.0 10.0
-pair_style lj/charmm/coul/msm 8.0 10.0 9.0
-pair_coeff * * 100.0 2.0
-pair_coeff 1 1 100.0 2.0 150.0 3.5
-
-
-
-
-

Description

-

The lj/charmm styles compute LJ and Coulombic interactions with an -additional switching function S(r) that ramps the energy and force -smoothly to zero between an inner and outer cutoff. It is a widely -used potential in the CHARMM MD code. -See (MacKerell) for a description of the CHARMM force -field.

-_images/pair_charmm.jpg -

Both the LJ and Coulombic terms require an inner and outer cutoff. -They can be the same for both formulas or different depending on -whether 2 or 4 arguments are used in the pair_style command. In each -case, the inner cutoff distance must be less than the outer cutoff. -It it typical to make the difference between the 2 cutoffs about 1.0 -Angstrom.

-

Style lj/charmm/coul/charmm/implicit computes the same formulas as -style lj/charmm/coul/charmm except that an additional 1/r term is -included in the Coulombic formula. The Coulombic energy thus varies -as 1/r^2. This is effectively a distance-dependent dielectric term -which is a simple model for an implicit solvent with additional -screening. It is designed for use in a simulation of an unsolvated -biomolecule (no explicit water molecules).

-

Styles lj/charmm/coul/long and lj/charmm/coul/msm compute the same -formulas as style lj/charmm/coul/charmm except that an additional -damping factor is applied to the Coulombic term, as described for the -lj/cut pair styles. Only one Coulombic cutoff is -specified for lj/charmm/coul/long and lj/charmm/coul/msm; if only -2 arguments are used in the pair_style command, then the outer LJ -cutoff is used as the single Coulombic cutoff.

-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above, or in the data file or restart files read by the -read_data or read_restart -commands, or by mixing as described below:

-
    -
  • epsilon (energy units)
  • -
  • sigma (distance units)
  • -
  • epsilon_14 (energy units)
  • -
  • sigma_14 (distance units)
  • -
-

Note that sigma is defined in the LJ formula as the zero-crossing -distance for the potential, not as the energy minimum at 2^(1/6) -sigma.

-

The latter 2 coefficients are optional. If they are specified, they -are used in the LJ formula between 2 atoms of these types which are -also first and fourth atoms in any dihedral. No cutoffs are specified -because this CHARMM force field does not allow varying cutoffs for -individual atom pairs; all pairs use the global cutoff(s) specified in -the pair_style command.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, the epsilon, sigma, epsilon_14, -and sigma_14 coefficients for all of the lj/charmm pair styles can be -mixed. The default mix value is arithmetic to coincide with the -usual settings for the CHARMM force field. See the “pair_modify” -command for details.

-

None of the lj/charmm pair styles support the -pair_modify shift option, since the Lennard-Jones -portion of the pair interaction is smoothed to 0.0 at the cutoff.

-

The lj/charmm/coul/long style supports the -pair_modify table option since it can tabulate the -short-range portion of the long-range Coulombic interaction.

-

None of the lj/charmm pair styles support the -pair_modify tail option for adding long-range tail -corrections to energy and pressure, since the Lennard-Jones portion of -the pair interaction is smoothed to 0.0 at the cutoff.

-

All of the lj/charmm pair styles write their information to binary restart files, so pair_style and pair_coeff commands do -not need to be specified in an input script that reads a restart file.

-

The lj/charmm/coul/long pair style supports the use of the inner, -middle, and outer keywords of the run_style respa -command, meaning the pairwise forces can be partitioned by distance at -different levels of the rRESPA hierarchy. The other styles only -support the pair keyword of run_style respa. See the -run_style command for details.

-
-
-
-

Restrictions

-

The lj/charmm/coul/charmm and lj/charmm/coul/charmm/implicit -styles are part of the MOLECULE package. The lj/charmm/coul/long -style is part of the KSPACE package. They are only enabled if LAMMPS -was built with those packages. See the Making LAMMPS section for more info. Note that -the MOLECULE and KSPACE packages are installed by default.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_class2.html b/doc/pair_class2.html deleted file mode 100644 index 2cbaf1e5f4..0000000000 --- a/doc/pair_class2.html +++ /dev/null @@ -1,362 +0,0 @@ - - - - - - - - - - - pair_style lj/class2 command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style lj/class2 command

-
-
-

pair_style lj/class2/cuda command

-
-
-

pair_style lj/class2/gpu command

-
-
-

pair_style lj/class2/kk command

-
-
-

pair_style lj/class2/omp command

-
-
-

pair_style lj/class2/coul/cut command

-
-
-

pair_style lj/class2/coul/cut/cuda command

-
-
-

pair_style lj/class2/coul/cut/kk command

-
-
-

pair_style lj/class2/coul/cut/omp command

-
-
-

pair_style lj/class2/coul/long command

-
-
-

pair_style lj/class2/coul/long/cuda command

-
-
-

pair_style lj/class2/coul/long/gpu command

-
-
-

pair_style lj/class2/coul/long/kk command

-
-
-

pair_style lj/class2/coul/long/omp command

-
-

Syntax

-
pair_style style args
-
-
-
    -
  • style = lj/class2 or lj/class2/coul/cut or lj/class2/coul/long
  • -
  • args = list of arguments for a particular style
  • -
-
-lj/class2 args = cutoff
-  cutoff = global cutoff for class 2 interactions (distance units)
-lj/class2/coul/cut args = cutoff (cutoff2)
-  cutoff = global cutoff for class 2 (and Coulombic if only 1 arg) (distance units)
-  cutoff2 = global cutoff for Coulombic (optional) (distance units)
-lj/class2/coul/long args = cutoff (cutoff2)
-  cutoff = global cutoff for class 2 (and Coulombic if only 1 arg) (distance units)
-  cutoff2 = global cutoff for Coulombic (optional) (distance units)
-
-
-
-

Examples

-
pair_style lj/class2 10.0
-pair_coeff * * 100.0 2.5
-pair_coeff 1 2* 100.0 2.5 9.0
-
-
-
pair_style lj/class2/coul/cut 10.0
-pair_style lj/class2/coul/cut 10.0 8.0
-pair_coeff * * 100.0 3.0
-pair_coeff 1 1 100.0 3.5 9.0
-pair_coeff 1 1 100.0 3.5 9.0 9.0
-
-
-
pair_style lj/class2/coul/long 10.0
-pair_style lj/class2/coul/long 10.0 8.0
-pair_coeff * * 100.0 3.0
-pair_coeff 1 1 100.0 3.5 9.0
-
-
-
-
-

Description

-

The lj/class2 styles compute a 6/9 Lennard-Jones potential given by

-_images/pair_class2.jpg -

Rc is the cutoff.

-

The lj/class2/coul/cut and lj/class2/coul/long styles add a -Coulombic term as described for the lj/cut pair styles.

-

See (Sun) for a description of the COMPASS class2 force field.

-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above, or in the data file or restart files read by the -read_data or read_restart -commands, or by mixing as described below:

-
    -
  • epsilon (energy units)
  • -
  • sigma (distance units)
  • -
  • cutoff1 (distance units)
  • -
  • cutoff2 (distance units)
  • -
-

The latter 2 coefficients are optional. If not specified, the global -class 2 and Coulombic cutoffs are used. If only one cutoff is -specified, it is used as the cutoff for both class 2 and Coulombic -interactions for this type pair. If both coefficients are specified, -they are used as the class 2 and Coulombic cutoffs for this type pair. -You cannot specify 2 cutoffs for style lj/class2, since it has no -Coulombic terms.

-

For lj/class2/coul/long only the class 2 cutoff can be specified -since a Coulombic cutoff cannot be specified for an individual I,J -type pair. All type pairs use the same global Coulombic cutoff -specified in the pair_style command.

-
-

If the pair_coeff command is not used to define coefficients for a -particular I != J type pair, the mixing rule for epsilon and sigma for -all class2 potentials is to use the sixthpower formulas documented -by the pair_modify command. The pair_modify mix setting is thus ignored for class2 potentials -for epsilon and sigma. However it is still followed for mixing the -cutoff distance.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, the epsilon and sigma coefficients -and cutoff distance for all of the lj/class2 pair styles can be mixed. -Epsilon and sigma are always mixed with the value sixthpower. The -cutoff distance is mixed by whatever option is set by the pair_modify -command (default = geometric). See the “pair_modify” command for -details.

-

All of the lj/class2 pair styles support the -pair_modify shift option for the energy of the -Lennard-Jones portion of the pair interaction.

-

The lj/class2/coul/long pair style does not support the -pair_modify table option since a tabulation -capability has not yet been added to this potential.

-

All of the lj/class2 pair styles support the -pair_modify tail option for adding a long-range -tail correction to the energy and pressure of the Lennard-Jones -portion of the pair interaction.

-

All of the lj/class2 pair styles write their information to binary restart files, so pair_style and pair_coeff commands do -not need to be specified in an input script that reads a restart file.

-

All of the lj/class2 pair styles can only be used via the pair -keyword of the run_style respa command. They do not -support the inner, middle, outer keywords.

-
-
-

Restrictions

-

These styles are part of the CLASS2 package. They are only enabled if -LAMMPS was built with that package. See the Making LAMMPS section for more info.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_coeff.html b/doc/pair_coeff.html deleted file mode 100644 index fff1626975..0000000000 --- a/doc/pair_coeff.html +++ /dev/null @@ -1,323 +0,0 @@ - - - - - - - - - - - pair_coeff command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_coeff command

-
-

Syntax

-
pair_coeff I J args
-
-
-
    -
  • I,J = atom types (see asterisk form below)
  • -
  • args = coefficients for one or more pairs of atom types
  • -
-
-
-

Examples

-
pair_coeff 1 2 1.0 1.0 2.5
-pair_coeff 2 * 1.0 1.0
-pair_coeff 3* 1*2 1.0 1.0 2.5
-pair_coeff * * 1.0 1.0
-pair_coeff * * nialhjea 1 1 2
-pair_coeff * 3 morse.table ENTRY1
-pair_coeff 1 2 lj/cut 1.0 1.0 2.5 (for pair_style hybrid)
-
-
-
-
-

Description

-

Specify the pairwise force field coefficients for one or more pairs of -atom types. The number and meaning of the coefficients depends on the -pair style. Pair coefficients can also be set in the data file read -by the read_data command or in a restart file.

-

I and J can be specified in one of two ways. Explicit numeric values -can be used for each, as in the 1st example above. I <= J is -required. LAMMPS sets the coefficients for the symmetric J,I -interaction to the same values.

-

A wildcard asterisk can be used in place of or in conjunction with the -I,J arguments to set the coefficients for multiple pairs of atom -types. This takes the form “*” or “n” or “n” or “m*n”. If N = the -number of atom types, then an asterisk with no numeric values means all -types from 1 to N. A leading asterisk means all types from 1 to n -(inclusive). A trailing asterisk means all types from n to N -(inclusive). A middle asterisk means all types from m to n -(inclusive). Note that only type pairs with I <= J are considered; if -asterisks imply type pairs where J < I, they are ignored.

-

Note that a pair_coeff command can override a previous setting for the -same I,J pair. For example, these commands set the coeffs for all I,J -pairs, then overwrite the coeffs for just the I,J = 2,3 pair:

-
pair_coeff * * 1.0 1.0 2.5
-pair_coeff 2 3 2.0 1.0 1.12
-
-
-

A line in a data file that specifies pair coefficients uses the exact -same format as the arguments of the pair_coeff command in an input -script, with the exception of the I,J type arguments. In each line of -the “Pair Coeffs” section of a data file, only a single type I is -specified, which sets the coefficients for type I interacting with -type I. This is because the section has exactly N lines, where N = -the number of atom types. For this reason, the wild-card asterisk -should also not be used as part of the I argument. Thus in a data -file, the line corresponding to the 1st example above would be listed -as

-
2 1.0 1.0 2.5
-
-
-

For many potentials, if coefficients for type pairs with I != J are -not set explicitly by a pair_coeff command, the values are inferred -from the I,I and J,J settings by mixing rules; see the -pair_modify command for a discussion. Details on -this option as it pertains to individual potentials are described on -the doc page for the potential.

-

Many pair styles, typically for many-body potentials, use tabulated -potential files as input, when specifying the pair_coeff command. -Potential files provided with LAMMPS are in the potentials directory -of the distribution. For some potentials, such as EAM, other archives -of suitable files can be found on the Web. They can be used with -LAMMPS so long as they are in the format LAMMPS expects, as discussed -on the individual doc pages.

-

When a pair_coeff command using a potential file is specified, LAMMPS -looks for the potential file in 2 places. First it looks in the -location specified. E.g. if the file is specified as “niu3.eam”, it -is looked for in the current working directory. If it is specified as -”../potentials/niu3.eam”, then it is looked for in the potentials -directory, assuming it is a sister directory of the current working -directory. If the file is not found, it is then looked for in the -directory specified by the LAMMPS_POTENTIALS environment variable. -Thus if this is set to the potentials directory in the LAMMPS distro, -then you can use those files from anywhere on your system, without -copying them into your working directory. Environment variables are -set in different ways for different shells. Here are example settings -for

-

csh, tcsh:

-
% setenv LAMMPS_POTENTIALS /path/to/lammps/potentials
-
-
-

bash:

-
% export LAMMPS_POTENTIALS=/path/to/lammps/potentials
-
-
-

Windows:

-
-% set LAMMPS_POTENTIALS="C:Path to LAMMPSPotentials"
-
-
-

The alphabetic list of pair styles defined in LAMMPS is given on the -pair_style doc page. They are also given in more -compact form in the pair section of this page.

-

Click on the style to display the formula it computes, arguments -specified in the pair_style command, and coefficients specified by the -associated pair_coeff command.

-

Note that there are also additional pair styles (not listed on the -pair_style doc page) submitted by users which are -included in the LAMMPS distribution. The list of these with links to -the individual styles are given in the pair section of this page.

-

There are also additional accelerated pair styles (not listed on the -pair_style doc page) included in the LAMMPS -distribution for faster performance on CPUs and GPUs. The list of -these with links to the individual styles are given in the pair -section of this page.

-
-
-
-

Restrictions

-

This command must come after the simulation box is defined by a -read_data, read_restart, or -create_box command.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_colloid.html b/doc/pair_colloid.html deleted file mode 100644 index 494653cece..0000000000 --- a/doc/pair_colloid.html +++ /dev/null @@ -1,360 +0,0 @@ - - - - - - - - - - - pair_style colloid command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style colloid command

-
-
-

pair_style colloid/gpu command

-
-
-

pair_style colloid/omp command

-
-

Syntax

-
pair_style colloid cutoff
-
-
-
    -
  • cutoff = global cutoff for colloidal interactions (distance units)
  • -
-
-
-

Examples

-
pair_style colloid 10.0
-pair_coeff * *  25 1.0 10.0 10.0
-pair_coeff 1 1 144 1.0 0.0 0.0 3.0
-pair_coeff 1 2  75.398 1.0 0.0 10.0 9.0
-pair_coeff 2 2  39.478 1.0 10.0 10.0 25.0
-
-
-
-
-

Description

-

Style colloid computes pairwise interactions between large colloidal -particles and small solvent particles using 3 formulas. A colloidal -particle has a size > sigma; a solvent particle is the usual -Lennard-Jones particle of size sigma.

-

The colloid-colloid interaction energy is given by

-_images/pair_colloid_cc.jpg -

where A_cc is the Hamaker constant, a1 and a2 are the radii of the two -colloidal particles, and Rc is the cutoff. This equation results from -describing each colloidal particle as an integrated collection of -Lennard-Jones particles of size sigma and is derived in -(Everaers).

-

The colloid-solvent interaction energy is given by

-_images/pair_colloid_cs.jpg -

where A_cs is the Hamaker constant, a is the radius of the colloidal -particle, and Rc is the cutoff. This formula is derived from the -colloid-colloid interaction, letting one of the particle sizes go to -zero.

-

The solvent-solvent interaction energy is given by the usual -Lennard-Jones formula

-_images/pair_colloid_ss.jpg -

with A_ss set appropriately, which results from letting both particle -sizes go to zero.

-

When used in combination with pair_style yukawa/colloid, the two terms become the so-called -DLVO potential, which combines electrostatic repulsion and van der -Waals attraction.

-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above, or in the data file or restart files read by the -read_data or read_restart -commands, or by mixing as described below:

-
    -
  • A (energy units)
  • -
  • sigma (distance units)
  • -
  • d1 (distance units)
  • -
  • d2 (distance units)
  • -
  • cutoff (distance units)
  • -
-

A is the Hamaker energy prefactor and should typically be set as -follows:

-
    -
  • A_cc = colloid/colloid = 4 pi^2 = 39.5
  • -
  • A_cs = colloid/solvent = sqrt(A_cc*A_ss)
  • -
  • A_ss = solvent/solvent = 144 (assuming epsilon = 1, so that 144/36 = 4)
  • -
-

Sigma is the size of the solvent particle or the constituent particles -integrated over in the colloidal particle and should typically be set -as follows:

-
    -
  • Sigma_cc = colloid/colloid = 1.0
  • -
  • Sigma_cs = colloid/solvent = arithmetic mixing between colloid sigma and solvent sigma
  • -
  • Sigma_ss = solvent/solvent = 1.0 or whatever size the solvent particle is
  • -
-

Thus typically Sigma_cs = 1.0, unless the solvent particle’s size != -1.0.

-

D1 and d2 are particle diameters, so that d1 = 2*a1 and d2 = 2*a2 in -the formulas above. Both d1 and d2 must be values >= 0. If d1 > 0 -and d2 > 0, then the pair interacts via the colloid-colloid formula -above. If d1 = 0 and d2 = 0, then the pair interacts via the -solvent-solvent formula. I.e. a d value of 0 is a Lennard-Jones -particle of size sigma. If either d1 = 0 or d2 = 0 and the other is -larger, then the pair interacts via the colloid-solvent formula.

-

Note that the diameter of a particular particle type may appear in -multiple pair_coeff commands, as it interacts with other particle -types. You should insure the particle diameter is specified -consistently each time it appears.

-

The last coefficient is optional. If not specified, the global cutoff -specified in the pair_style command is used. However, you typically -want different cutoffs for interactions between different particle -sizes. E.g. if colloidal particles of diameter 10 are used with -solvent particles of diameter 1, then a solvent-solvent cutoff of 2.5 -would correspond to a colloid-colloid cutoff of 25. A good -rule-of-thumb is to use a colloid-solvent cutoff that is half the big -diameter + 4 times the small diameter. I.e. 9 = 5 + 4 for the -colloid-solvent cutoff in this case.

-
-

Note

-

When using pair_style colloid for a mixture with 2 (or more) -widely different particles sizes (e.g. sigma=10 colloids in a -background sigma=1 LJ fluid), you will likely want to use these -commands for efficiency: neighbor multi and -comm_modify multi.

-
-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, the A, sigma, d1, and d2 -coefficients and cutoff distance for this pair style can be mixed. A -is an energy value mixed like a LJ epsilon. D1 and d2 are distance -values and are mixed like sigma. The default mix value is -geometric. See the “pair_modify” command for details.

-

This pair style supports the pair_modify shift -option for the energy of the pair interaction.

-

The pair_modify table option is not relevant -for this pair style.

-

This pair style does not support the pair_modify -tail option for adding long-range tail corrections to energy and -pressure.

-

This pair style writes its information to binary restart files, so pair_style and pair_coeff commands do not need -to be specified in an input script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-

This style is part of the COLLOID package. It is only enabled if -LAMMPS was built with that package. See the Making LAMMPS section for more info.

-

Normally, this pair style should be used with finite-size particles -which have a diameter, e.g. see the atom_style sphere command. However, this is not a requirement, -since the only definition of particle size is via the pair_coeff -parameters for each type. In other words, the physical radius of the -particle is ignored. Thus you should insure that the d1,d2 parameters -you specify are consistent with the physical size of the particles of -that type.

-

Per-particle polydispersity is not yet supported by this pair style; -only per-type polydispersity is enabled via the pair_coeff parameters.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_comb.html b/doc/pair_comb.html deleted file mode 100644 index 175eeda7e2..0000000000 --- a/doc/pair_comb.html +++ /dev/null @@ -1,352 +0,0 @@ - - - - - - - - - - - pair_style comb command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style comb command

-
-
-

pair_style comb/omp command

-
-
-

pair_style comb3 command

-
-

Syntax

-
pair_style comb
-pair_style comb3 keyword
-
-
-
-keyword = polar
-  polar value = polar_on or polar_off = whether or not to include atomic polarization
-
-
-
-

Examples

-
pair_style comb
-pair_coeff * * ../potentials/ffield.comb Si
-pair_coeff * * ../potentials/ffield.comb Hf Si O
-
-
-
pair_style comb3 polar_off
-pair_coeff * * ../potentials/ffield.comb3 O Cu N C O
-
-
-
-
-

Description

-

Style comb computes the second-generation variable charge COMB -(Charge-Optimized Many-Body) potential. Style comb3 computes the -third-generation COMB potential. These COMB potentials are described -in (COMB) and (COMB3). Briefly, the total energy -E<sub>T</sub> of a system of atoms is given by

-_images/pair_comb1.jpg -

where E<sub>i</sub><sup>self</sup> is the self-energy of atom i -(including atomic ionization energies and electron affinities), -E<sub>ij</sub><sup>short</sup> is the bond-order potential between -atoms i and j, -E<sub>ij</sub><sup>Coul</sup> is the Coulomb interactions, -E<sup>polar</sup> is the polarization term for organic systems -(style comb3 only), -E<sup>vdW</sup> is the van der Waals energy (style comb3 only), -E<sup>barr</sup> is a charge barrier function, and -E<sup>corr</sup> are angular correction terms.

-

The COMB potentials (styles comb and comb3) are variable charge -potentials. The equilibrium charge on each atom is calculated by the -electronegativity equalization (QEq) method. See Rick for -further details. This is implemented by the fix qeq/comb command, which should normally be -specified in the input script when running a model with the COMB -potential. The fix qeq/comb command has options -that determine how often charge equilibration is performed, its -convergence criterion, and which atoms are included in the -calculation.

-

Only a single pair_coeff command is used with the comb and comb3 -styles which specifies the COMB potential file with parameters for all -needed elements. These are mapped to LAMMPS atom types by specifying -N additional arguments after the potential file in the pair_coeff -command, where N is the number of LAMMPS atom types.

-

For example, if your LAMMPS simulation of a Si/SiO<sub>2</sub>/ -HfO<sub>2</sub> interface has 4 atom types, and you want the 1st and -last to be Si, the 2nd to be Hf, and the 3rd to be O, and you would -use the following pair_coeff command:

-
pair_coeff * * ../potentials/ffield.comb Si Hf O Si
-
-
-

The first two arguments must be * * so as to span all LAMMPS atom -types. The first and last Si arguments map LAMMPS atom types 1 and 4 -to the Si element in the ffield.comb file. The second Hf argument -maps LAMMPS atom type 2 to the Hf element, and the third O argument -maps LAMMPS atom type 3 to the O element in the potential file. If a -mapping value is specified as NULL, the mapping is not performed. -This can be used when a comb potential is used as part of the -hybrid pair style. The NULL values are placeholders for atom types -that will be used with other potentials.

-

For style comb, the provided potential file ffield.comb contains -all currently-available 2nd generation COMB parameterizations: for Si, -Cu, Hf, Ti, O, their oxides and Zr, Zn and U metals. For style -comb3, the potential file ffield.comb3 contains all -currently-available 3rd generation COMB paramterizations: O, Cu, N, C, -H, Ti, Zn and Zr. The status of the optimization of the compounds, for -example Cu<sub>2</sub>O, TiN and hydrocarbons, are given in the -following table:

-_images/pair_comb2.jpg -

For style comb3, in addition to ffield.comb3, a special parameter -file, lib.comb3, that is exclusively used for C/O/H systems, will be -automatically loaded if carbon atom is detected in LAMMPS input -structure. This file must be in your working directory or in the -directory pointed to by the environment variable LAMMPS_POTENTIALS, as -described on the pair_coeff command doc page.

-

Keyword polar indicates whether the force field includes -the atomic polarization. Since the equilibration of the polarization -has not yet been implemented, it can only set polar_off at present.

-
-

Note

-

You can not use potential file ffield.comb with style comb3, -nor file ffield.comb3 with style comb.

-
-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, where types I and J correspond to -two different element types, mixing is performed by LAMMPS as -described above from values in the potential file.

-

These pair styles does not support the pair_modify -shift, table, and tail options.

-

These pair styles do not write its information to binary restart files, since it is stored in potential files. Thus, you -need to re-specify the pair_style, pair_coeff, and fix qeq/comb commands in an input script that reads a -restart file.

-

These pair styles can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-

These pair styles are part of the MANYBODY package. It is only enabled -if LAMMPS was built with that package (which it is by default). See -the Making LAMMPS section for more info.

-

These pair styles requires the newton setting to be “on” -for pair interactions.

-

The COMB potentials in the ffield.comb and ffield.comb3 files provided -with LAMMPS (see the potentials directory) are parameterized for metal -units. You can use the COMB potential with any LAMMPS -units, but you would need to create your own COMB potential file with -coefficients listed in the appropriate units if your simulation -doesn’t use “metal” units.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_coul.html b/doc/pair_coul.html deleted file mode 100644 index 2c923363e6..0000000000 --- a/doc/pair_coul.html +++ /dev/null @@ -1,533 +0,0 @@ - - - - - - - - - - - pair_style coul/cut command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style coul/cut command

-
-
-

pair_style coul/cut/gpu command

-
-
-

pair_style coul/cut/kk command

-
-
-

pair_style coul/cut/omp command

-
-
-

pair_style coul/debye command

-
-
-

pair_style coul/debye/gpu command

-
-
-

pair_style coul/debye/kk command

-
-
-

pair_style coul/debye/omp command

-
-
-

pair_style coul/dsf command

-
-
-

pair_style coul/dsf/gpu command

-
-
-

pair_style coul/dsf/kk command

-
-
-

pair_style coul/dsf/omp command

-
-
-

pair_style coul/long command

-
-
-

pair_style coul/long/cs command

-
-
-

pair_style coul/long/omp command

-
-
-

pair_style coul/long/gpu command

-
-
-

pair_style coul/long/kk command

-
-
-

pair_style coul/msm command

-
-
-

pair_style coul/msm/omp command

-
-
-

pair_style coul/streitz command

-
-
-

pair_style coul/wolf command

-
-
-

pair_style coul/wolf/kk command

-
-
-

pair_style coul/wolf/omp command

-
-
-

pair_style tip4p/cut command

-
-
-

pair_style tip4p/long command

-
-
-

pair_style tip4p/cut/omp command

-
-
-

pair_style tip4p/long/omp command

-
-

Syntax

-
pair_style coul/cut cutoff
-pair_style coul/debye kappa cutoff
-pair_style coul/dsf alpha cutoff
-pair_style coul/long cutoff
-pair_style coul/long/cs cutoff
-pair_style coul/long/gpu cutoff
-pair_style coul/wolf alpha cutoff
-pair_style coul/streitz cutoff keyword alpha
-pair_style tip4p/cut otype htype btype atype qdist cutoff
-pair_style tip4p/long otype htype btype atype qdist cutoff
-
-
-
    -
  • cutoff = global cutoff for Coulombic interactions
  • -
  • kappa = Debye length (inverse distance units)
  • -
  • alpha = damping parameter (inverse distance units)
  • -
-
-
-

Examples

-
pair_style coul/cut 2.5
-pair_coeff * *
-pair_coeff 2 2 3.5
-
-
-
pair_style coul/debye 1.4 3.0
-pair_coeff * *
-pair_coeff 2 2 3.5
-
-
-
pair_style coul/dsf 0.05 10.0
-pair_coeff * *
-
-
-
pair_style coul/long 10.0
-pair_style coul/long/cs 10.0
-pair_coeff * *
-
-
-
pair_style coul/msm 10.0
-pair_coeff * *
-
-
-
pair_style coul/wolf 0.2 9.0
-pair_coeff * *
-
-
-
pair_style coul/streitz 12.0 ewald
-pair_style coul/streitz 12.0 wolf 0.30
-pair_coeff * * AlO.streitz Al O
-
-
-
pair_style tip4p/cut 1 2 7 8 0.15 12.0
-pair_coeff * *
-
-
-
pair_style tip4p/long 1 2 7 8 0.15 10.0
-pair_coeff * *
-
-
-
-
-

Description

-

The coul/cut style computes the standard Coulombic interaction -potential given by

-_images/pair_coulomb.jpg -

where C is an energy-conversion constant, Qi and Qj are the charges on -the 2 atoms, and epsilon is the dielectric constant which can be set -by the dielectric command. The cutoff Rc truncates -the interaction distance.

-
-

Style coul/debye adds an additional exp() damping factor to the -Coulombic term, given by

-_images/pair_debye.jpg -

where kappa is the Debye length. This potential is another way to -mimic the screening effect of a polar solvent.

-
-

Style coul/dsf computes Coulombic interactions via the damped -shifted force model described in Fennell, given by:

-_images/pair_coul_dsf.jpg -

where alpha is the damping parameter and erfc() is the -complementary error-function. The potential corrects issues in the -Wolf model (described below) to provide consistent forces and energies -(the Wolf potential is not differentiable at the cutoff) and smooth -decay to zero.

-
-

Style coul/wolf computes Coulombic interactions via the Wolf -summation method, described in Wolf, given by:

-_images/pair_coul_wolf.jpg -

where alpha is the damping parameter, and erc() and erfc() are -error-fuction and complementary error-function terms. This potential -is essentially a short-range, spherically-truncated, -charge-neutralized, shifted, pairwise 1/r summation. With a -manipulation of adding and substracting a self term (for i = j) to the -first and second term on the right-hand-side, respectively, and a -small enough alpha damping parameter, the second term shrinks and -the potential becomes a rapidly-converging real-space summation. With -a long enough cutoff and small enough alpha parameter, the energy and -forces calcluated by the Wolf summation method approach those of the -Ewald sum. So it is a means of getting effective long-range -interactions with a short-range potential.

-
-

Style coul/streitz is the Coulomb pair interaction defined as part -of the Streitz-Mintmire potential, as described in this paper, in which charge distribution about an atom is modeled -as a Slater 1*s* orbital. More details can be found in the referenced -paper. To fully reproduce the published Streitz-Mintmire potential, -which is a variable charge potential, style coul/streitz must be -used with pair_style eam/alloy (or some other -short-range potential that has been parameterized appropriately) via -the pair_style hybrid/overlay command. Likewise, -charge equilibration must be performed via the fix qeq/slater command. For example:

-
pair_style hybrid/overlay coul/streitz 12.0 wolf 0.31 eam/alloy
-pair_coeff * * coul/streitz AlO.streitz Al O
-pair_coeff * * eam/alloy AlO.eam.alloy Al O
-fix 1 all qeq/slater 1 12.0 1.0e-6 100 coul/streitz
-
-
-

The keyword wolf in the coul/streitz command denotes computing -Coulombic interactions via Wolf summation. An additional damping -parameter is required for the Wolf summation, as described for the -coul/wolf potential above. Alternatively, Coulombic interactions can -be computed via an Ewald summation. For example:

-
pair_style hybrid/overlay coul/streitz 12.0 ewald eam/alloy
-kspace_style ewald 1e-6
-
-
-

Keyword ewald does not need a damping parameter, but a -kspace_style must be defined, which can be style -ewald or pppm. The Ewald method was used in Streitz and -Mintmire’s original paper, but a Wolf summation offers a speed-up in -some cases.

-

For the fix qeq/slater command, the qfile can be a filename that -contains QEq parameters as discussed on the fix qeq -command doc page. Alternatively qfile can be replaced by -“coul/streitz”, in which case the fix will extract QEq parameters from -the coul/streitz pair style itself.

-

See the examples/strietz directory for an example input script that -uses the Streitz-Mintmire potential. The potentials directory has the -AlO.eam.alloy and AlO.streitz potential files used by the example.

-

Note that the Streiz-Mintmire potential is generally used for oxides, -but there is no conceptual problem with extending it to nitrides and -carbides (such as SiC, TiN). Pair coul/strietz used by itself or with -any other pair style such as EAM, MEAM, Tersoff, or LJ in -hybrid/overlay mode. To do this, you would need to provide a -Streitz-Mintmire parameterizaion for the material being modeled.

-
-

Styles coul/long and coul/msm compute the same Coulombic -interactions as style coul/cut except that an additional damping -factor is applied so it can be used in conjunction with the -kspace_style command and its ewald or pppm -option. The Coulombic cutoff specified for this style means that -pairwise interactions within this distance are computed directly; -interactions outside that distance are computed in reciprocal space.

-

Style coul/long/cs is identical to coul/long except that a term is -added for the core/shell model to allow -charges on core and shell particles to be separated by r = 0.0.

-

Styles tip4p/cut and tip4p/long implement the coulomb part of -the TIP4P water model of (Jorgensen), which introduces -a massless site located a short distance away from the oxygen atom -along the bisector of the HOH angle. The atomic types of the oxygen and -hydrogen atoms, the bond and angle types for OH and HOH interactions, -and the distance to the massless charge site are specified as -pair_style arguments. Style tip4p/cut uses a global cutoff for -Coulomb interactions; style tip4p/long is for use with a long-range -Coulombic solver (Ewald or PPPM).

-
-

Note

-

For each TIP4P water molecule in your system, the atom IDs for -the O and 2 H atoms must be consecutive, with the O atom first. This -is to enable LAMMPS to “find” the 2 H atoms associated with each O -atom. For example, if the atom ID of an O atom in a TIP4P water -molecule is 500, then its 2 H atoms must have IDs 501 and 502.

-
-

See the howto section for more -information on how to use the TIP4P pair styles and lists of -parameters to set. Note that the neighobr list cutoff for Coulomb -interactions is effectively extended by a distance 2*qdist when using -the TIP4P pair style, to account for the offset distance of the -fictitious charges on O atoms in water molecules. Thus it is -typically best in an efficiency sense to use a LJ cutoff >= Coulomb -cutoff + 2*qdist, to shrink the size of the neighbor list. This leads -to slightly larger cost for the long-range calculation, so you can -test the trade-off for your model.

-
-

Note that these potentials are designed to be combined with other pair -potentials via the pair_style hybrid/overlay -command. This is because they have no repulsive core. Hence if they -are used by themselves, there will be no repulsion to keep two -oppositely charged particles from moving arbitrarily close to each -other.

-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above, or in the data file or restart files read by the -read_data or read_restart -commands, or by mixing as described below:

-
    -
  • cutoff (distance units)
  • -
-

For coul/cut and coul/debye, the cutoff coefficient is optional. -If it is not used (as in some of the examples above), the default -global value specified in the pair_style command is used.

-

For coul/long and coul/msm no cutoff can be specified for an -individual I,J type pair via the pair_coeff command. All type pairs -use the same global Coulombic cutoff specified in the pair_style -command.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, the cutoff distance for the -coul/cut style can be mixed. The default mix value is geometric. -See the “pair_modify” command for details.

-

The pair_modify shift option is not relevant -for these pair styles.

-

The coul/long style supports the pair_modify -table option for tabulation of the short-range portion of the -long-range Coulombic interaction.

-

These pair styles do not support the pair_modify -tail option for adding long-range tail corrections to energy and -pressure.

-

These pair styles write their information to binary restart files, so pair_style and pair_coeff commands do not need -to be specified in an input script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-

The coul/long, coul/msm and tip4p/long styles are part of the -KSPACE package. The coul/long/cs style is part of the CORESHELL -package. They are only enabled if LAMMPS was built with that package -(which it is by default). See the Making LAMMPS section for more info.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_coul_diel.html b/doc/pair_coul_diel.html deleted file mode 100644 index f713a4fe62..0000000000 --- a/doc/pair_coul_diel.html +++ /dev/null @@ -1,280 +0,0 @@ - - - - - - - - - - - pair_style coul/diel command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style coul/diel command

-
-
-

pair_style coul/diel/omp command

-
-

Syntax

-
pair_style coul/diel cutoff
-
-
-

cutoff = global cutoff (distance units)

-
-
-

Examples

-
pair_style coul/diel 3.5
-pair_coeff 1 4 78. 1.375 0.112
-
-
-
-
-

Description

-

Style coul/diel computes a Coulomb correction for implict solvent -ion interactions in which the dielectric perimittivity is distance dependent. -The dielectric permittivity epsilon_D(r) connects to limiting regimes: -One limit is defined by a small dielectric permittivity (close to vacuum) -at or close to contact seperation between the ions. At larger separations -the dielectric permittivity reaches a bulk value used in the regular Coulomb -interaction coul/long or coul/cut. -The transition is modeled by a hyperbolic function which is incorporated -in the Coulomb correction term for small ion separations as follows

-_images/pair_coul_diel.jpg -

where r_me is the inflection point of epsilon_D(r) and sigma_e is a slope -defining length scale. C is the same Coulomb conversion factor as in the -pair_styles coul/cut, coul/long, and coul/debye. In this way the Coulomb -interaction between ions is corrected at small distances r. The lower -limit of epsilon_D(r->0)=5.2 due to dielectric saturation (Stiles) -while the Coulomb interaction reaches its bulk limit by setting -epsilon_D(r->infty)=epsilon, the bulk value of the solvent which is 78 -for water at 298K.

-

Examples of the use of this type of Coulomb interaction include implicit -solvent simulations of salt ions -(Lenart) and of ionic surfactants (Jusufi). -Note that this potential is only reasonable for implicit solvent simulations -and in combiantion with coul/cut or coul/long. It is also usually combined -with gauss/cut, see (Lenart) or (Jusufi).

-

The following coefficients must be defined for each pair of atom -types via the pair_coeff command as in the example -above, or in the data file or restart files read by the -read_data or read_restart -commands:

-
    -
  • epsilon (no units)
  • -
  • r_me (distance units)
  • -
  • sigma_e (distance units)
  • -
-

The global cutoff (r_c) specified in the pair_style command is used.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

This pair style does not support parameter mixing. Coefficients must be given explicitly for each type of particle pairs.

-

This pair style supports the pair_modify shift -option for the energy of the Gauss-potential portion of the pair -interaction.

-

The pair_modify table option is not relevant -for this pair style.

-

This pair style does not support the pair_modify -tail option for adding long-range tail corrections to energy and -pressure.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-

Restrictions

-

This style is part of the “user-misc” package. It is only enabled -if LAMMPS was built with that package. See the Making LAMMPS section for more info.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_cs.html b/doc/pair_cs.html deleted file mode 100644 index 3050dad1db..0000000000 --- a/doc/pair_cs.html +++ /dev/null @@ -1,266 +0,0 @@ - - - - - - - - - - - pair_style born/coul/long/cs command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style born/coul/long/cs command

-
-
-

pair_style buck/coul/long/cs command

-
-

Syntax

-
pair_style style args
-
-
-
    -
  • style = born/coul/long/cs or buck/coul/long/cs
  • -
  • args = list of arguments for a particular style
  • -
-
-born/coul/long/cs args = cutoff (cutoff2)
-  cutoff = global cutoff for non-Coulombic (and Coulombic if only 1 arg) (distance units)
-  cutoff2 = global cutoff for Coulombic (optional) (distance units)
-buck/coul/long/cs args = cutoff (cutoff2)
-  cutoff = global cutoff for Buckingham (and Coulombic if only 1 arg) (distance units)
-  cutoff2 = global cutoff for Coulombic (optional) (distance units)
-
-
-
-

Examples

-
pair_style born/coul/long/cs 10.0 8.0
-pair_coeff 1 1 6.08 0.317 2.340 24.18 11.51
-
-
-
pair_style buck/coul/long/cs 10.0
-pair_style buck/coul/long/cs 10.0 8.0
-pair_coeff * * 100.0 1.5 200.0
-pair_coeff 1 1 100.0 1.5 200.0 9.0
-
-
-
-
-

Description

-

These pair styles are designed to be used with the adiabatic -core/shell model of (Mitchell and Finchham). See -Section_howto 25 of the manual for an -overview of the model as implemented in LAMMPS.

-

These pair styles are identical to the pair_style born/coul/long and pair_style buck/coul/long styles, except they correctly treat the -special case where the distance between two charged core and shell -atoms in the same core/shell pair approach r = 0.0. This needs -special treatment when a long-range solver for Coulombic interactions -is also used, i.e. via the kspace_style command.

-

More specifically, the short-range Coulomb interaction between a core -and its shell should be turned off using the -special_bonds command by setting the 1-2 weight -to 0.0, which works because the core and shell atoms are bonded to -each other. This induces a long-range correction approximation which -fails at small distances (~< 10e-8). Therefore, the Coulomb term which -is used to calculate the correction factor is extended by a minimal -distance (r_min = 1.0-6) when the interaction between a core/shell -pair is treated, as follows

-_images/pair_cs.jpg -

where C is an energy-conversion constant, Qi and Qj are the charges on -the core and shell, epsilon is the dielectric constant and r_min is the -minimal distance.

-
-
-

Restrictions

-

These pair styles are part of the CORESHELL package. They are only -enabled if LAMMPS was built with that package. See the Making LAMMPS section for more info.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_dipole.html b/doc/pair_dipole.html deleted file mode 100644 index b96cf5251f..0000000000 --- a/doc/pair_dipole.html +++ /dev/null @@ -1,425 +0,0 @@ - - - - - - - - - - - pair_style lj/cut/dipole/cut command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style lj/cut/dipole/cut command

-
-
-

pair_style lj/cut/dipole/cut/gpu command

-
-
-

pair_style lj/cut/dipole/cut/omp command

-
-
-

pair_style lj/sf/dipole/sf command

-
-
-

pair_style lj/sf/dipole/sf/gpu command

-
-
-

pair_style lj/sf/dipole/sf/omp command

-
-
-

pair_style lj/cut/dipole/long command

-
-
-

pair_style lj/long/dipole/long command

-
-

Syntax

-
pair_style lj/cut/dipole/cut cutoff (cutoff2)
-pair_style lj/sf/dipole/sf cutoff (cutoff2)
-pair_style lj/cut/dipole/long cutoff (cutoff2)
-pair_style lj/long/dipole/long flag_lj flag_coul cutoff (cutoff2)
-
-
-
    -
  • cutoff = global cutoff LJ (and Coulombic if only 1 arg) (distance units)
  • -
  • cutoff2 = global cutoff for Coulombic and dipole (optional) (distance units)
  • -
  • flag_lj = long or cut or off
  • -
-
-long = use long-range damping on dispersion 1/r^6 term
-cut = use a cutoff on dispersion 1/r^6 term
-off = omit disperion 1/r^6 term entirely
-
-
    -
  • flag_coul = long or off
  • -
-
-long = use long-range damping on Coulombic 1/r and point-dipole terms
-off = omit Coulombic and point-dipole terms entirely
-
-
-
-

Examples

-
pair_style lj/cut/dipole/cut 10.0
-pair_coeff * * 1.0 1.0
-pair_coeff 2 3 1.0 1.0 2.5 4.0
-
-
-
pair_style lj/sf/dipole/sf 9.0
-pair_coeff * * 1.0 1.0
-pair_coeff 2 3 1.0 1.0 2.5 4.0
-
-
-
pair_style lj/cut/dipole/long 10.0
-pair_coeff * * 1.0 1.0
-pair_coeff 2 3 1.0 1.0 2.5 4.0
-
-
-
pair_style lj/long/dipole/long long long 3.5 10.0
-pair_coeff * * 1.0 1.0
-pair_coeff 2 3 1.0 1.0 2.5 4.0
-
-
-
-
-

Description

-

Style lj/cut/dipole/cut computes interactions between pairs of particles -that each have a charge and/or a point dipole moment. In addition to -the usual Lennard-Jones interaction between the particles (Elj) the -charge-charge (Eqq), charge-dipole (Eqp), and dipole-dipole (Epp) -interactions are computed by these formulas for the energy (E), force -(F), and torque (T) between particles I and J.

-_images/pair_dipole.jpg -

where qi and qj are the charges on the two particles, pi and pj are -the dipole moment vectors of the two particles, r is their separation -distance, and the vector r = Ri - Rj is the separation vector between -the two particles. Note that Eqq and Fqq are simply Coulombic energy -and force, Fij = -Fji as symmetric forces, and Tij != -Tji since the -torques do not act symmetrically. These formulas are discussed in -(Allen) and in (Toukmaji).

-

Style lj/sf/dipole/sf computes “shifted-force” interactions between -pairs of particles that each have a charge and/or a point dipole -moment. In general, a shifted-force potential is a (sligthly) modified -potential containing extra terms that make both the energy and its -derivative go to zero at the cutoff distance; this removes -(cutoff-related) problems in energy conservation and any numerical -instability in the equations of motion (Allen). Shifted-force -interactions for the Lennard-Jones (E_LJ), charge-charge (Eqq), -charge-dipole (Eqp), dipole-charge (Epq) and dipole-dipole (Epp) -potentials are computed by these formulas for the energy (E), force -(F), and torque (T) between particles I and J:

-_images/pair_dipole_sf.jpg -_images/pair_dipole_sf2.jpg -

where epsilon and sigma are the standard LJ parameters, r_c is the -cutoff, qi and qj are the charges on the two particles, pi and pj are -the dipole moment vectors of the two particles, r is their separation -distance, and the vector r = Ri - Rj is the separation vector between -the two particles. Note that Eqq and Fqq are simply Coulombic energy -and force, Fij = -Fji as symmetric forces, and Tij != -Tji since the -torques do not act symmetrically. The shifted-force formula for the -Lennard-Jones potential is reported in (Stoddard). The -original (unshifted) formulas for the electrostatic potentials, forces -and torques can be found in (Price). The shifted-force -electrostatic potentials have been obtained by applying equation 5.13 -of (Allen). The formulas for the corresponding forces and -torques have been obtained by applying the ‘chain rule’ as in appendix -C.3 of (Allen).

-

If one cutoff is specified in the pair_style command, it is used for -both the LJ and Coulombic (q,p) terms. If two cutoffs are specified, -they are used as cutoffs for the LJ and Coulombic (q,p) terms -respectively.

-

Style lj/cut/dipole/long computes long-range point-dipole -interactions as discussed in (Toukmaji). Dipole-dipole, -dipole-charge, and charge-charge interactions are all supported, along -with the standard 12/6 Lennard-Jones interactions, which are computed -with a cutoff. A kspace_style must be defined to -use this pair style. Currently, only kspace_style ewald/disp support long-range point-dipole -interactions.

-

Style lj/long/dipole/long also computes point-dipole interactions as -discussed in (Toukmaji). Long-range dipole-dipole, -dipole-charge, and charge-charge interactions are all supported, along -with the standard 12/6 Lennard-Jones interactions. LJ interactions -can be cutoff or long-ranged.

-

For style lj/long/dipole/long, if flag_lj is set to long, no -cutoff is used on the LJ 1/r^6 dispersion term. The long-range -portion is calculated by using the kspace_style ewald_disp command. The specified LJ cutoff then -determines which portion of the LJ interactions are computed directly -by the pair potential versus which part is computed in reciprocal -space via the Kspace style. If flag_lj is set to cut, the LJ -interactions are simply cutoff, as with pair_style lj/cut. If flag_lj is set to off, LJ interactions -are not computed at all.

-

If flag_coul is set to long, no cutoff is used on the Coulombic or -dipole interactions. The long-range portion is calculated by using -ewald_disp of the kspace_style command. If -flag_coul is set to off, Coulombic and dipole interactions are not -computed at all.

-

Atoms with dipole moments should be integrated using the fix nve/sphere update dipole command to rotate the -dipole moments. The omega option on the fix langevin command can be used to thermostat the -rotational motion. The compute temp/sphere -command can be used to monitor the temperature, since it includes -rotational degrees of freedom. The atom_style dipole command should be used since it defines the -point dipoles and their rotational state. The magnitude of the dipole -moment for each type of particle can be defined by the -dipole command or in the “Dipoles” section of the data -file read in by the read_data command. Their initial -orientation can be defined by the set dipole command or in -the “Atoms” section of the data file.

-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above, or in the data file or restart files read by the -read_data or read_restart -commands, or by mixing as described below:

-
    -
  • epsilon (energy units)
  • -
  • sigma (distance units)
  • -
  • cutoff1 (distance units)
  • -
  • cutoff2 (distance units)
  • -
-

The latter 2 coefficients are optional. If not specified, the global -LJ and Coulombic cutoffs specified in the pair_style command are used. -If only one cutoff is specified, it is used as the cutoff for both LJ -and Coulombic interactions for this type pair. If both coefficients -are specified, they are used as the LJ and Coulombic cutoffs for this -type pair.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, the epsilon and sigma coefficients -and cutoff distances for this pair style can be mixed. The default -mix value is geometric. See the “pair_modify” command for details.

-

For atom type pairs I,J and I != J, the A, sigma, d1, and d2 -coefficients and cutoff distance for this pair style can be mixed. A -is an energy value mixed like a LJ epsilon. D1 and d2 are distance -values and are mixed like sigma. The default mix value is -geometric. See the “pair_modify” command for details.

-

This pair style does not support the pair_modify -shift option for the energy of the Lennard-Jones portion of the pair -interaction; such energy goes to zero at the cutoff by construction.

-

The pair_modify table option is not relevant -for this pair style.

-

This pair style does not support the pair_modify -tail option for adding long-range tail corrections to energy and -pressure.

-

This pair style writes its information to binary restart files, so pair_style and pair_coeff commands do not need -to be specified in an input script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-

Restrictions

-

The lj/cut/dipole/cut, lj/cut/dipole/long, and -lj/long/dipole/long styles are part of the DIPOLE package. They are -only enabled if LAMMPS was built with that package. See the Making LAMMPS section for more info.

-

The lj/sf/dipole/sf style is part of the USER-MISC package. It is -only enabled if LAMMPS was built with that package. See the Making LAMMPS section for more info.

-

Using dipole pair styles with electron units is not -currently supported.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_dpd.html b/doc/pair_dpd.html deleted file mode 100644 index efd2360e27..0000000000 --- a/doc/pair_dpd.html +++ /dev/null @@ -1,372 +0,0 @@ - - - - - - - - - - - pair_style dpd command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style dpd command

-
-
-

pair_style dpd/gpu command

-
-
-

pair_style dpd/omp command

-
-
-

pair_style dpd/tstat command

-
-
-

pair_style dpd/tstat/gpu command

-
-
-

pair_style dpd/tstat/omp command

-
-

Syntax

-
pair_style dpd T cutoff seed
-pair_style dpd/tstat Tstart Tstop cutoff seed
-
-
-
    -
  • T = temperature (temperature units)
  • -
  • Tstart,Tstop = desired temperature at start/end of run (temperature units)
  • -
  • cutoff = global cutoff for DPD interactions (distance units)
  • -
  • seed = random # seed (positive integer)
  • -
-
-
-

Examples

-
pair_style dpd 1.0 2.5 34387
-pair_coeff * * 3.0 1.0
-pair_coeff 1 1 3.0 1.0 1.0
-
-
-
pair_style dpd/tstat 1.0 1.0 2.5 34387
-pair_coeff * * 1.0
-pair_coeff 1 1 1.0 1.0
-
-
-
-
-

Description

-

Style dpd computes a force field for dissipative particle dynamics -(DPD) following the exposition in (Groot).

-

Style dpd/tstat invokes a DPD thermostat on pairwise interactions, -which is equivalent to the non-conservative portion of the DPD force -field. This pair-wise thermostat can be used in conjunction with any -pair style, and in leiu of per-particle thermostats -like fix langevin or ensemble thermostats like -Nose Hoover as implemented by fix nvt. To use -dpd/tstat as a thermostat for another pair style, use the pair_style hybrid/overlay command to compute both the desired -pair interaction and the thermostat for each pair of particles.

-

For style dpd, the force on atom I due to atom J is given as a sum -of 3 terms

-_images/pair_dpd.jpg -

where Fc is a conservative force, Fd is a dissipative force, and Fr is -a random force. Rij is a unit vector in the direction Ri - Rj, Vij is -the vector difference in velocities of the two atoms = Vi - Vj, alpha -is a Gaussian random number with zero mean and unit variance, dt is -the timestep size, and w(r) is a weighting factor that varies between -0 and 1. Rc is the cutoff. Sigma is set equal to sqrt(2 Kb T gamma), -where Kb is the Boltzmann constant and T is the temperature parameter -in the pair_style command.

-

For style dpd/tstat, the force on atom I due to atom J is the same -as the above equation, except that the conservative Fc term is -dropped. Also, during the run, T is set each timestep to a ramped -value from Tstart to Tstop.

-

For style dpd, the pairwise energy associated with style dpd is -only due to the conservative force term Fc, and is shifted to be zero -at the cutoff distance Rc. The pairwise virial is calculated using -all 3 terms. For style dpd/tstat there is no pairwise energy, but -the last two terms of the formula make a contribution to the virial.

-

For style dpd, the following coefficients must be defined for each -pair of atoms types via the pair_coeff command as in -the examples above, or in the data file or restart files read by the -read_data or read_restart -commands:

-
    -
  • A (force units)
  • -
  • gamma (force/velocity units)
  • -
  • cutoff (distance units)
  • -
-

The last coefficient is optional. If not specified, the global DPD -cutoff is used. Note that sigma is set equal to sqrt(2 T gamma), -where T is the temperature set by the pair_style -command so it does not need to be specified.

-

For style dpd/tstat, the coefficiencts defined for each pair of -atoms types via the pair_coeff command is the same, -except that A is not included.

-

The GPU-accelerated versions of these styles are implemented based on -the work of (Afshar) and (Phillips).

-
-

Note

-

If you are modeling DPD polymer chains, you may want to use the -pair_style srp command in conjuction with these pair -styles. It is a soft segmental repulsive potential (SRP) that can -prevent DPD polymer chains from crossing each other.

-
-
-

Note

-

The virial calculation for pressure when using this pair style -includes all the components of force listed above, including the -random force.

-
-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

These pair styles do not support mixing. Thus, coefficients for all -I,J pairs must be specified explicitly.

-

These pair styles do not support the pair_modify -shift option for the energy of the pair interaction. Note that as -discussed above, the energy due to the conservative Fc term is already -shifted to be 0.0 at the cutoff distance Rc.

-

The pair_modify table option is not relevant -for these pair styles.

-

These pair style do not support the pair_modify -tail option for adding long-range tail corrections to energy and -pressure.

-

These pair styles writes their information to binary restart files, so pair_style and pair_coeff commands do not need -to be specified in an input script that reads a restart file. Note -that the user-specified random number seed is stored in the restart -file, so when a simulation is restarted, each processor will -re-initialize its random number generator the same way it did -initially. This means the random forces will be random, but will not -be the same as they would have been if the original simulation had -continued past the restart time.

-

These pair styles can only be used via the pair keyword of the -run_style respa command. They do not support the -inner, middle, outer keywords.

-

The dpd/tstat style can ramp its target temperature over multiple -runs, using the start and stop keywords of the run -command. See the run command for details of how to do -this.

-
-
-
-

Restrictions

-

The default frequency for rebuilding neighbor lists is every 10 steps -(see the neigh_modify command). This may be too -infrequent for style dpd simulations since particles move rapidly -and can overlap by large amounts. If this setting yields a non-zero -number of “dangerous” reneighborings (printed at the end of a -simulation), you should experiment with forcing reneighboring more -often and see if system energies/trajectories change.

-

These pair styles requires you to use the comm_modify vel yes command so that velocites are stored by ghost -atoms.

-

These pair styles will not restart exactly when using the -read_restart command, though they should provide -statistically similar results. This is because the forces they -compute depend on atom velocities. See the -read_restart command for more details.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_dpd_conservative.html b/doc/pair_dpd_conservative.html deleted file mode 100644 index 3c72a6a929..0000000000 --- a/doc/pair_dpd_conservative.html +++ /dev/null @@ -1,252 +0,0 @@ - - - - - - - - - - - pair_style dpd/conservative command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style dpd/conservative command

-
-

Syntax

-
pair_style dpd/conservative cutoff
-
-
-
    -
  • cutoff = global cutoff for DPD interactions (distance units)
  • -
-
-
-

Examples

-
pair_style dpd/conservative 2.5
-pair_coeff * * 3.0 2.5
-pair_coeff 1 1 3.0
-
-
-
-
-

Description

-

Style dpd/conservative computes the conservative force for -dissipative particle dynamics (DPD). The conservative force on atom I -due to atom J is given by

-_images/pair_dpd_conservative.jpg -

where the weighting factor, omega_ij, varies between 0 and 1, and is -chosen to have the following functional form:

-_images/pair_dpd_omega.jpg -

where Rij is a unit vector in the direction Ri - Rj, and Rc is the -cutoff. Note that alternative definitions of the weighting function -exist, but would have to be implemented as a separate pair style -command.

-

Style dpd/conservative differs from the other dpd styles in that the -dissipative and random forces are not computed within the pair style.

-

For style dpd/conservative, the pairwise energy is due only to the -conservative force term Fc, and is shifted to be zero at the cutoff -distance Rc. The pairwise virial is calculated using only the -conservative term.

-

Style dpd/conservative requires the following coefficients to be -defined for each pair of atoms types via the -pair_coeff command as in the examples above, or in -the data file or restart files read by the read_data -or read_restart commands:

-
    -
  • A (force units)
  • -
  • cutoff (distance units)
  • -
-

The last coefficient is optional. If not specified, the global DPD -cutoff is used.

-
-
-
-

Restrictions

-

The pair style dpd/conservative is only available if LAMMPS is built -with the USER-DPD package.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_dpd_fdt.html b/doc/pair_dpd_fdt.html deleted file mode 100644 index 319def9f26..0000000000 --- a/doc/pair_dpd_fdt.html +++ /dev/null @@ -1,313 +0,0 @@ - - - - - - - - - - - pair_style dpd/fdt command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style dpd/fdt command

-
-
-

pair_style dpd/fdt/energy command

-
-

Syntax

-
pair_style style args
-
-
-
    -
  • style = dpd/fdt or dpd/fdt/energy
  • -
  • args = list of arguments for a particular style
  • -
-
-dpd/fdt args = T cutoff seed
-  T = temperature (temperature units)
-  cutoff = global cutoff for DPD interactions (distance units)
-  seed = random # seed (positive integer)
-dpd/fdt/energy args = cutoff seed
-  cutoff = global cutoff for DPD interactions (distance units)
-  seed = random # seed (positive integer)
-
-
-
-

Examples

-
pair_style dpd/fdt 300.0 2.5 34387
-pair_coeff * * 3.0 1.0 2.5
-
-
-
pair_style dpd/fdt/energy 2.5 34387
-pair_coeff * * 3.0 1.0 0.1 2.5
-
-
-
-
-

Description

-

Styles dpd/fdt and dpd/fdt/energy set the fluctuation-dissipation -theorem parameters and compute the conservative force for dissipative -particle dynamics (DPD). The conservative force on atom I due to atom -J is given by

-_images/pair_dpd_conservative.jpg -

where the weighting factor, omega_ij, varies between 0 and 1, and is -chosen to have the following functional form:

-_images/pair_dpd_omega.jpg -

where Rij is a unit vector in the direction Ri - Rj, and Rc is the -cutoff. Note that alternative definitions of the weighting function -exist, but would have to be implemented as a separate pair style -command.

-

These pair style differ from the other dpd styles in that the -dissipative and random forces are not computed within the pair style. -This style can be combined with the fix shardlow -to perform the stochastic integration of the dissipative and random -forces through the Shardlow splitting algorithm approach.

-

The pairwise energy associated with styles dpd/fdt and -dpd/fdt/energy is only due to the conservative force term Fc, and is -shifted to be zero at the cutoff distance Rc. The pairwise virial is -calculated using only the conservative term.

-

For style dpd/fdt, the fluctuation-dissipation theorem defines gamma -to be set equal to sigma*sigma/(2 T), where T is the set point -temperature specified as a pair style parameter in the above examples. -This style can be combined with fix shardlow to -perform DPD simulations under isothermal and isobaric conditions (see -(Lisal)). The following coefficients must be defined for -each pair of atoms types via the pair_coeff command -as in the examples above, or in the data file or restart files read by -the read_data or read_restart -commands:

-
    -
  • A (force units)
  • -
  • sigma (force*time^(1/2) units)
  • -
  • cutoff (distance units)
  • -
-

The last coefficient is optional. If not specified, the global DPD -cutoff is used.

-

For style dpd/fdt/energy, the fluctuation-dissipation theorem -defines gamma to be set equal to sigma*sigma/(2 dpdTheta), where -dpdTheta is the average internal temperature for the pair. -Furthermore, the fluctuation-dissipation defines alpha*alpha to be set -equal to 2*kB*kappa, where kappa is the mesoparticle thermal -conductivity parameter. This style can be combined with fix shardlow to perform DPD simulations under -isoenergetic and isoenthalpic conditions (see (Lisal)). The -following coefficients must be defined for each pair of atoms types -via the pair_coeff command as in the examples above, -or in the data file or restart files read by the -read_data or read_restart -commands:

-
    -
  • A (force units)
  • -
  • sigma (force*time^(1/2) units)
  • -
  • kappa (1/time units)
  • -
  • cutoff (distance units)
  • -
-

The last coefficient is optional. If not specified, the global DPD -cutoff is used.

-

For style dpd/fdt/energy, the particle internal temperature is -related to the particle internal energy through a mesoparticle -equation of state. Thus, an an additional fix eos must be -specified.

-
-
-
-

Restrictions

-

Pair styles dpd/fdt and dpd/fdt/energy are only available if -LAMMPS is built with the USER-DPD package.

-

Pair styles dpd/fdt and dpd/fdt/energy require use of the -communicate vel yes option so that velocites are -stored by ghost atoms.

-

Pair style dpd/fdt/energy requires atom_style dpd -to be used in order to properly account for the particle internal -energies and temperatures.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_dsmc.html b/doc/pair_dsmc.html deleted file mode 100644 index 0f7a513ea0..0000000000 --- a/doc/pair_dsmc.html +++ /dev/null @@ -1,316 +0,0 @@ - - - - - - - - - - - pair_style dsmc command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style dsmc command

-
-

Syntax

-
pair_style dsmc max_cell_size seed weighting Tref Nrecompute Nsample
-
-
-
    -
  • max_cell_size = global maximum cell size for DSMC interactions (distance units)
  • -
  • seed = random # seed (positive integer)
  • -
  • weighting = macroparticle weighting
  • -
  • Tref = reference temperature (temperature units)
  • -
  • Nrecompute = recompute v*sigma_max every this many timesteps (timesteps)
  • -
  • Nsample = sample this many times in recomputing v*sigma_max
  • -
-
-
-

Examples

-
pair_style dsmc 2.5 34387 10 1.0 100 20
-pair_coeff * * 1.0
-pair_coeff 1 1 1.0
-
-
-
-
-

Description

-

Style dsmc computes collisions between pairs of particles for a -direct simulation Monte Carlo (DSMC) model following the exposition in -(Bird). Each collision resets the velocities of the two -particles involved. The number of pairwise collisions for each pair -or particle types and the length scale within which they occur are -determined by the parameters of the pair_style and pair_coeff -commands.

-

Stochastic collisions are performed using the variable hard sphere -(VHS) approach, with the user-defined max_cell_size value used as -the maximum DSMC cell size, and reference cross-sections for -collisions given using the pair_coeff command.

-

There is no pairwise energy or virial contributions associated with -this pair style.

-

The following coefficient must be defined for each pair of atoms types -via the pair_coeff command as in the examples above, -or in the data file or restart files read by the -read_data or read_restart -commands:

-
    -
  • sigma (area units, i.e. distance-squared)
  • -
-

The global DSMC max_cell_size determines the maximum cell length -used in the DSMC calculation. A structured mesh is overlayed on the -simulation box such that an integer number of cells are created in -each direction for each processor’s sub-domain. Cell lengths are -adjusted up to the user-specified maximum cell size.

-
-

To perform a DSMC simulation with LAMMPS, several additional options -should be set in your input script, though LAMMPS does not check for -these settings.

-

Since this pair style does not compute particle forces, you should use -the “fix nve/noforce” time integration fix for the DSMC particles, -e.g.

-
fix 1 all nve/noforce
-
-
-

This pair style assumes that all particles will communicated to -neighboring processors every timestep as they move. This makes it -possible to perform all collisions between pairs of particles that are -on the same processor. To ensure this occurs, you should use -these commands:

-
neighbor 0.0 bin
-neigh_modify every 1 delay 0 check no
-atom_modify sort 0 0.0
-communicate single cutoff 0.0
-
-
-

These commands ensure that LAMMPS communicates particles to -neighboring processors every timestep and that no ghost atoms are -created. The output statistics for a simulation run should indicate -there are no ghost particles or neighbors.

-

In order to get correct DSMC collision statistics, users should -specify a Gaussian velocity distribution when populating the -simulation domain. Note that the default velocity distribution is -uniform, which will not give good DSMC collision rates. Specify -“dist gaussian” when using the velocity command -as in the following:

-
velocity all create 594.6 87287 loop geom dist gaussian
-
-
-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

This pair style does not support mixing. Thus, coefficients for all -I,J pairs must be specified explicitly.

-

This pair style does not support the pair_modify -shift option for the energy of the pair interaction.

-

The pair_modify table option is not relevant -for this pair style.

-

This pair style does not support the pair_modify -tail option for adding long-range tail corrections to energy and -pressure.

-

This pair style writes its information to binary restart files, so pair_style and pair_coeff commands do not need -to be specified in an input script that reads a restart file. Note -that the user-specified random number seed is stored in the restart -file, so when a simulation is restarted, each processor will -re-initialize its random number generator the same way it did -initially. This means the random forces will be random, but will not -be the same as they would have been if the original simulation had -continued past the restart time.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-

This style is part of the MC package. It is only enabled if LAMMPS -was built with that package. See the Making LAMMPS section for more info.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_eam.html b/doc/pair_eam.html deleted file mode 100644 index f3711bdf8a..0000000000 --- a/doc/pair_eam.html +++ /dev/null @@ -1,621 +0,0 @@ - - - - - - - - - - - pair_style eam command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style eam command

-
-
-

pair_style eam/cuda command

-
-
-

pair_style eam/gpu command

-
-
-

pair_style eam/kk command

-
-
-

pair_style eam/omp command

-
-
-

pair_style eam/opt command

-
-
-

pair_style eam/alloy command

-
-
-

pair_style eam/alloy/cuda command

-
-
-

pair_style eam/alloy/gpu command

-
-
-

pair_style eam/alloy/kk command

-
-
-

pair_style eam/alloy/omp command

-
-
-

pair_style eam/alloy/opt command

-
-
-

pair_style eam/cd command

-
-
-

pair_style eam/cd/omp command

-
-
-

pair_style eam/fs command

-
-
-

pair_style eam/fs/cuda command

-
-
-

pair_style eam/fs/gpu command

-
-
-

pair_style eam/fs/kk command

-
-
-

pair_style eam/fs/omp command

-
-
-

pair_style eam/fs/opt command

-
-

Syntax

-
pair_style style
-
-
-
    -
  • style = eam or eam/alloy or eam/cd or eam/fs
  • -
-
-
-

Examples

-
pair_style eam
-pair_coeff * * cuu3
-pair_coeff 1*3 1*3 niu3.eam
-
-
-
pair_style eam/alloy
-pair_coeff * * ../potentials/NiAlH_jea.eam.alloy Ni Al Ni Ni
-
-
-
pair_style eam/cd
-pair_coeff * * ../potentials/FeCr.cdeam Fe Cr
-
-
-
pair_style eam/fs
-pair_coeff * * NiAlH_jea.eam.fs Ni Al Ni Ni
-
-
-
-
-

Description

-

Style eam computes pairwise interactions for metals and metal alloys -using embedded-atom method (EAM) potentials (Daw). The total -energy Ei of an atom I is given by

-_images/pair_eam.jpg -

where F is the embedding energy which is a function of the atomic -electron density rho, phi is a pair potential interaction, and alpha -and beta are the element types of atoms I and J. The multi-body -nature of the EAM potential is a result of the embedding energy term. -Both summations in the formula are over all neighbors J of atom I -within the cutoff distance.

-

The cutoff distance and the tabulated values of the functionals F, -rho, and phi are listed in one or more files which are specified by -the pair_coeff command. These are ASCII text files -in a DYNAMO-style format which is described below. DYNAMO was the -original serial EAM MD code, written by the EAM originators. Several -DYNAMO potential files for different metals are included in the -“potentials” directory of the LAMMPS distribution. All of these files -are parameterized in terms of LAMMPS metal units.

-
-

Note

-

The eam style reads single-element EAM potentials in the -DYNAMO funcfl format. Either single element or alloy systems can be -modeled using multiple funcfl files and style eam. For the alloy -case LAMMPS mixes the single-element potentials to produce alloy -potentials, the same way that DYNAMO does. Alternatively, a single -DYNAMO setfl file or Finnis/Sinclair EAM file can be used by LAMMPS -to model alloy systems by invoking the eam/alloy or eam/cd or -eam/fs styles as described below. These files require no mixing -since they specify alloy interactions explicitly.

-
-
-

Note

-

Note that unlike for other potentials, cutoffs for EAM -potentials are not set in the pair_style or pair_coeff command; they -are specified in the EAM potential files themselves. Likewise, the -EAM potential files list atomic masses; thus you do not need to use -the mass command to specify them.

-
-

There are several WWW sites that distribute and document EAM -potentials stored in DYNAMO or other formats:

-
http://www.ctcms.nist.gov/potentials
-http://cst-www.nrl.navy.mil/ccm6/ap
-http://enpub.fulton.asu.edu/cms/potentials/main/main.htm
-
-
-

These potentials should be usable with LAMMPS, though the alternate -formats would need to be converted to the DYNAMO format used by LAMMPS -and described on this page. The NIST site is maintained by Chandler -Becker (cbecker at nist.gov) who is good resource for info on -interatomic potentials and file formats.

-
-

For style eam, potential values are read from a file that is in the -DYNAMO single-element funcfl format. If the DYNAMO file was created -by a Fortran program, it cannot have “D” values in it for exponents. -C only recognizes “e” or “E” for scientific notation.

-

Note that unlike for other potentials, cutoffs for EAM potentials are -not set in the pair_style or pair_coeff command; they are specified in -the EAM potential files themselves.

-

For style eam a potential file must be assigned to each I,I pair of -atom types by using one or more pair_coeff commands, each with a -single argument:

-
    -
  • filename
  • -
-

Thus the following command

-
pair_coeff *2 1*2 cuu3.eam
-
-
-

will read the cuu3 potential file and use the tabulated Cu values for -F, phi, rho that it contains for type pairs 1,1 and 2,2 (type pairs -1,2 and 2,1 are ignored). See the pair_coeff doc -page for alternate ways to specify the path for the potential file. -In effect, this makes atom types 1 and 2 in LAMMPS be Cu atoms. -Different single-element files can be assigned to different atom types -to model an alloy system. The mixing to create alloy potentials for -type pairs with I != J is done automatically the same way that the -serial DYNAMO code originally did it; you do not need to specify -coefficients for these type pairs.

-

Funcfl files in the potentials directory of the LAMMPS -distribution have an ”.eam” suffix. A DYNAMO single-element funcfl -file is formatted as follows:

-
    -
  • line 1: comment (ignored)
  • -
  • line 2: atomic number, mass, lattice constant, lattice type (e.g. FCC)
  • -
  • line 3: Nrho, drho, Nr, dr, cutoff
  • -
-

On line 2, all values but the mass are ignored by LAMMPS. The mass is -in mass units, e.g. mass number or grams/mole for metal -units. The cubic lattice constant is in Angstroms. On line 3, Nrho -and Nr are the number of tabulated values in the subsequent arrays, -drho and dr are the spacing in density and distance space for the -values in those arrays, and the specified cutoff becomes the pairwise -cutoff used by LAMMPS for the potential. The units of dr are -Angstroms; I’m not sure of the units for drho - some measure of -electron density.

-

Following the three header lines are three arrays of tabulated values:

-
    -
  • embedding function F(rho) (Nrho values)
  • -
  • effective charge function Z(r) (Nr values)
  • -
  • density function rho(r) (Nr values)
  • -
-

The values for each array can be listed as multiple values per line, -so long as each array starts on a new line. For example, the -individual Z(r) values are for r = 0,dr,2*dr, ... (Nr-1)*dr.

-

The units for the embedding function F are eV. The units for the -density function rho are the same as for drho (see above, electron -density). The units for the effective charge Z are “atomic charge” or -sqrt(Hartree * Bohr-radii). For two interacting atoms i,j this is used -by LAMMPS to compute the pair potential term in the EAM energy -expression as r*phi, in units of eV-Angstroms, via the formula

-
r*phi = 27.2 * 0.529 * Zi * Zj
-
-
-

where 1 Hartree = 27.2 eV and 1 Bohr = 0.529 Angstroms.

-
-

Style eam/alloy computes pairwise interactions using the same -formula as style eam. However the associated -pair_coeff command reads a DYNAMO setfl file -instead of a funcfl file. Setfl files can be used to model a -single-element or alloy system. In the alloy case, as explained -above, setfl files contain explicit tabulated values for alloy -interactions. Thus they allow more generality than funcfl files for -modeling alloys.

-

For style eam/alloy, potential values are read from a file that is -in the DYNAMO multi-element setfl format, except that element names -(Ni, Cu, etc) are added to one of the lines in the file. If the -DYNAMO file was created by a Fortran program, it cannot have “D” -values in it for exponents. C only recognizes “e” or “E” for -scientific notation.

-

Only a single pair_coeff command is used with the eam/alloy style -which specifies a DYNAMO setfl file, which contains information for -M elements. These are mapped to LAMMPS atom types by specifying N -additional arguments after the filename in the pair_coeff command, -where N is the number of LAMMPS atom types:

-
    -
  • filename
  • -
  • N element names = mapping of setfl elements to atom types
  • -
-

As an example, the potentials/NiAlH_jea.eam.alloy file is a setfl -file which has tabulated EAM values for 3 elements and their alloy -interactions: Ni, Al, and H. See the pair_coeff doc -page for alternate ways to specify the path for the potential file. -If your LAMMPS simulation has 4 atoms types and you want the 1st 3 to -be Ni, and the 4th to be Al, you would use the following pair_coeff -command:

-
pair_coeff * * NiAlH_jea.eam.alloy Ni Ni Ni Al
-
-
-

The 1st 2 arguments must be * * so as to span all LAMMPS atom types. -The first three Ni arguments map LAMMPS atom types 1,2,3 to the Ni -element in the setfl file. The final Al argument maps LAMMPS atom -type 4 to the Al element in the setfl file. Note that there is no -requirement that your simulation use all the elements specified by the -setfl file.

-

If a mapping value is specified as NULL, the mapping is not performed. -This can be used when an eam/alloy potential is used as part of the -hybrid pair style. The NULL values are placeholders for atom types -that will be used with other potentials.

-

Setfl files in the potentials directory of the LAMMPS distribution -have an ”.eam.alloy” suffix. A DYNAMO multi-element setfl file is -formatted as follows:

-
    -
  • lines 1,2,3 = comments (ignored)
  • -
  • line 4: Nelements Element1 Element2 ... ElementN
  • -
  • line 5: Nrho, drho, Nr, dr, cutoff
  • -
-

In a DYNAMO setfl file, line 4 only lists Nelements = the # of -elements in the setfl file. For LAMMPS, the element name (Ni, Cu, -etc) of each element must be added to the line, in the order the -elements appear in the file.

-

The meaning and units of the values in line 5 is the same as for the -funcfl file described above. Note that the cutoff (in Angstroms) is -a global value, valid for all pairwise interactions for all element -pairings.

-

Following the 5 header lines are Nelements sections, one for each -element, each with the following format:

-
    -
  • line 1 = atomic number, mass, lattice constant, lattice type (e.g. FCC)
  • -
  • embedding function F(rho) (Nrho values)
  • -
  • density function rho(r) (Nr values)
  • -
-

As with the funcfl files, only the mass (in mass units, -e.g. mass number or grams/mole for metal units) is used by LAMMPS from -the 1st line. The cubic lattice constant is in Angstroms. The F and -rho arrays are unique to a single element and have the same format and -units as in a funcfl file.

-

Following the Nelements sections, Nr values for each pair potential -phi(r) array are listed for all i,j element pairs in the same format -as other arrays. Since these interactions are symmetric (i,j = j,i) -only phi arrays with i >= j are listed, in the following order: i,j = -(1,1), (2,1), (2,2), (3,1), (3,2), (3,3), (4,1), ..., (Nelements, -Nelements). Unlike the effective charge array Z(r) in funcfl files, -the tabulated values for each phi function are listed in setfl files -directly as r*phi (in units of eV-Angstroms), since they are for atom -pairs.

-
-

Style eam/cd is similar to the eam/alloy style, except that it -computes alloy pairwise interactions using the concentration-dependent -embedded-atom method (CD-EAM). This model can reproduce the enthalpy -of mixing of alloys over the full composition range, as described in -(Stukowski).

-

The pair_coeff command is specified the same as for the eam/alloy -style. However the DYNAMO setfl file must has two -lines added to it, at the end of the file:

-
    -
  • line 1: Comment line (ignored)
  • -
  • line 2: N Coefficient0 Coefficient1 ... CoeffincientN
  • -
-

The last line begins with the degree N of the polynomial function -h(x) that modifies the cross interaction between A and B elements. -Then N+1 coefficients for the terms of the polynomial are then -listed.

-

Modified EAM setfl files used with the eam/cd style must contain -exactly two elements, i.e. in the current implementation the eam/cd -style only supports binary alloys. The first and second elements in -the input EAM file are always taken as the A and B species.

-

CD-EAM files in the potentials directory of the LAMMPS -distribution have a ”.cdeam” suffix.

-
-

Style eam/fs computes pairwise interactions for metals and metal -alloys using a generalized form of EAM potentials due to Finnis and -Sinclair (Finnis). The total energy Ei of an atom I is -given by

-_images/pair_eam_fs.jpg -

This has the same form as the EAM formula above, except that rho is -now a functional specific to the atomic types of both atoms I and J, -so that different elements can contribute differently to the total -electron density at an atomic site depending on the identity of the -element at that atomic site.

-

The associated pair_coeff command for style eam/fs -reads a DYNAMO setfl file that has been extended to include -additional rho_alpha_beta arrays of tabulated values. A discussion of -how FS EAM differs from conventional EAM alloy potentials is given in -(Ackland1). An example of such a potential is the same -author’s Fe-P FS potential (Ackland2). Note that while FS -potentials always specify the embedding energy with a square root -dependence on the total density, the implementation in LAMMPS does not -require that; the user can tabulate any functional form desired in the -FS potential files.

-

For style eam/fs, the form of the pair_coeff command is exactly the -same as for style eam/alloy, e.g.

-
pair_coeff * * NiAlH_jea.eam.fs Ni Ni Ni Al
-
-
-

where there are N additional arguments after the filename, where N is -the number of LAMMPS atom types. See the pair_coeff -doc page for alternate ways to specify the path for the potential -file. The N values determine the mapping of LAMMPS atom types to EAM -elements in the file, as described above for style eam/alloy. As -with eam/alloy, if a mapping value is NULL, the mapping is not -performed. This can be used when an eam/fs potential is used as -part of the hybrid pair style. The NULL values are used as -placeholders for atom types that will be used with other potentials.

-

FS EAM files include more information than the DYNAMO setfl format -files read by eam/alloy, in that i,j density functionals for all -pairs of elements are included as needed by the Finnis/Sinclair -formulation of the EAM.

-

FS EAM files in the potentials directory of the LAMMPS distribution -have an ”.eam.fs” suffix. They are formatted as follows:

-
    -
  • lines 1,2,3 = comments (ignored)
  • -
  • line 4: Nelements Element1 Element2 ... ElementN
  • -
  • line 5: Nrho, drho, Nr, dr, cutoff
  • -
-

The 5-line header section is identical to an EAM setfl file.

-

Following the header are Nelements sections, one for each element I, -each with the following format:

-
    -
  • line 1 = atomic number, mass, lattice constant, lattice type (e.g. FCC)
  • -
  • embedding function F(rho) (Nrho values)
  • -
  • density function rho(r) for element I at element 1 (Nr values)
  • -
  • density function rho(r) for element I at element 2
  • -
  • ...
  • -
  • density function rho(r) for element I at element Nelement
  • -
-

The units of these quantities in line 1 are the same as for setfl -files. Note that the rho(r) arrays in Finnis/Sinclair can be -asymmetric (i,j != j,i) so there are Nelements^2 of them listed in the -file.

-

Following the Nelements sections, Nr values for each pair potential -phi(r) array are listed in the same manner (r*phi, units of -eV-Angstroms) as in EAM setfl files. Note that in Finnis/Sinclair, -the phi(r) arrays are still symmetric, so only phi arrays for i >= j -are listed.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accerlate of the manual for more -instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, where types I and J correspond to -two different element types, mixing is performed by LAMMPS as -described above with the individual styles. You never need to specify -a pair_coeff command with I != J arguments for the eam styles.

-

This pair style does not support the pair_modify -shift, table, and tail options.

-

The eam pair styles do not write their information to binary restart files, since it is stored in tabulated potential files. -Thus, you need to re-specify the pair_style and pair_coeff commands in -an input script that reads a restart file.

-

The eam pair styles can only be used via the pair keyword of the -run_style respa command. They do not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-

All of these styles except the eam/cd style are part of the MANYBODY -package. They are only enabled if LAMMPS was built with that package -(which it is by default). See the Making LAMMPS section for more info.

-

The eam/cd style is part of the USER-MISC package and also requires -the MANYBODY package. It is only enabled if LAMMPS was built with -those packages. See the Making LAMMPS -section for more info.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_edip.html b/doc/pair_edip.html deleted file mode 100644 index d1db1e4c8f..0000000000 --- a/doc/pair_edip.html +++ /dev/null @@ -1,327 +0,0 @@ - - - - - - - - - - - pair_style edip command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style edip command

-
-

Syntax

-
pair_style edip
-
-
-
pair_style edip/omp
-
-
-
-
-

Examples

-

pair_style edip -pair_coeff * * Si.edip Si

-
-
-

Description

-

The edip style computes a 3-body EDIP potential which is -popular for modeling silicon materials where it can have advantages -over other models such as the Stillinger-Weber or -Tersoff potentials. In EDIP, the energy E of a -system of atoms is

-_images/pair_edip.jpg -

where phi2 is a two-body term and phi3 is a three-body term. The -summations in the formula are over all neighbors J and K of atom I -within a cutoff distance = a. -Both terms depend on the local environment of atom I through its -effective coordination number defined by Z, which is unity for a -cutoff distance < c and gently goes to 0 at distance = a.

-

Only a single pair_coeff command is used with the edip style which -specifies a EDIP potential file with parameters for all -needed elements. These are mapped to LAMMPS atom types by specifying -N additional arguments after the filename in the pair_coeff command, -where N is the number of LAMMPS atom types:

-
    -
  • filename
  • -
  • N element names = mapping of EDIP elements to atom types
  • -
-

See the pair_coeff doc page for alternate ways -to specify the path for the potential file.

-

As an example, imagine a file Si.edip has EDIP values for Si.

-

EDIP files in the potentials directory of the LAMMPS -distribution have a ”.edip” suffix. Lines that are not blank or -comments (starting with #) define parameters for a triplet of -elements. The parameters in a single entry correspond to the two-body -and three-body coefficients in the formula above:

-
    -
  • element 1 (the center atom in a 3-body interaction)
  • -
  • element 2
  • -
  • element 3
  • -
  • A (energy units)
  • -
  • B (distance units)
  • -
  • cutoffA (distance units)
  • -
  • cutoffC (distance units)
  • -
  • alpha
  • -
  • beta
  • -
  • eta
  • -
  • gamma (distance units)
  • -
  • lambda (energy units)
  • -
  • mu
  • -
  • tho
  • -
  • sigma (distance units)
  • -
  • Q0
  • -
  • u1
  • -
  • u2
  • -
  • u3
  • -
  • u4
  • -
-

The A, B, beta, sigma parameters are used only for two-body interactions. -The eta, gamma, lambda, mu, Q0 and all u1 to u4 parameters are used only -for three-body interactions. The alpha and cutoffC parameters are used -for the coordination environment function only.

-

The EDIP potential file must contain entries for all the -elements listed in the pair_coeff command. It can also contain -entries for additional elements not being used in a particular -simulation; LAMMPS ignores those entries.

-

For a single-element simulation, only a single entry is required -(e.g. SiSiSi). For a two-element simulation, the file must contain 8 -entries (for SiSiSi, SiSiC, SiCSi, SiCC, CSiSi, CSiC, CCSi, CCC), that -specify EDIP parameters for all permutations of the two elements -interacting in three-body configurations. Thus for 3 elements, 27 -entries would be required, etc.

-

At the moment, only a single element parametrization is -implemented. However, the author is not aware of other -multi-element EDIP parametrizations. If you know any and -you are interest in that, please contact the author of -the EDIP package.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

This pair style does not support the pair_modify -shift, table, and tail options.

-

This pair style does not write its information to binary restart files, since it is stored in potential files. Thus, you -need to re-specify the pair_style and pair_coeff commands in an input -script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-

This angle style can only be used if LAMMPS was built with the -USER-MISC package. See the Making LAMMPS -section for more info on packages.

-

This pair style requires the newton setting to be “on” -for pair interactions.

-

The EDIP potential files provided with LAMMPS (see the potentials directory) -are parameterized for metal units. -You can use the SW potential with any LAMMPS units, but you would need -to create your own EDIP potential file with coefficients listed in the -appropriate units if your simulation doesn’t use “metal” units.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_eff.html b/doc/pair_eff.html deleted file mode 100644 index a3ecacb972..0000000000 --- a/doc/pair_eff.html +++ /dev/null @@ -1,465 +0,0 @@ - - - - - - - - - - - pair_style eff/cut command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style eff/cut command

-
-

Syntax

-
pair_style eff/cut cutoff keyword args ...
-
-
-
    -
  • cutoff = global cutoff for Coulombic interactions
  • -
  • zero or more keyword/value pairs may be appended
  • -
-
-keyword = limit/eradius or pressure/evirials or ecp
-  limit/eradius args = none
-  pressure/evirials args = none
-  ecp args = type element type element ...
-    type = LAMMPS atom type (1 to Ntypes)
-    element = element symbol (e.g. H, Si)
-
-
-
-

Examples

-
pair_style eff/cut 39.7
-pair_style eff/cut 40.0 limit/eradius
-pair_style eff/cut 40.0 limit/eradius pressure/evirials
-pair_style eff/cut 40.0 ecp 1 Si 3 C
-pair_coeff * *
-pair_coeff 2 2 20.0
-pair_coeff 1 s 0.320852 2.283269 0.814857
-pair_coeff 3 p 22.721015 0.728733 1.103199 17.695345 6.693621
-
-
-
-
-

Description

-

This pair style contains a LAMMPS implementation of the electron Force -Field (eFF) potential currently under development at Caltech, as -described in (Jaramillo-Botero). The eFF for Z<6 -was first introduced by (Su) in 2007. It has been extended to -higher Zs by using effective core potentials (ECPs) that now cover up -to 2nd and 3rd row p-block elements of the periodic table.

-

eFF can be viewed as an approximation to QM wave packet dynamics and -Fermionic molecular dynamics, combining the ability of electronic -structure methods to describe atomic structure, bonding, and chemistry -in materials, and of plasma methods to describe nonequilibrium -dynamics of large systems with a large number of highly excited -electrons. Yet, eFF relies on a simplification of the electronic -wavefunction in which electrons are described as floating Gaussian -wave packets whose position and size respond to the various dynamic -forces between interacting classical nuclear particles and spherical -Gaussian electron wavepackets. The wavefunction is taken to be a -Hartree product of the wave packets. To compensate for the lack of -explicit antisymmetry in the resulting wavefunction, a spin-dependent -Pauli potential is included in the Hamiltonian. Substituting this -wavefunction into the time-dependent Schrodinger equation produces -equations of motion that correspond - to second order - to classical -Hamiltonian relations between electron position and size, and their -conjugate momenta. The N-electron wavefunction is described as a -product of one-electron Gaussian functions, whose size is a dynamical -variable and whose position is not constrained to a nuclear -center. This form allows for straightforward propagation of the -wavefunction, with time, using a simple formulation from which the -equations of motion are then integrated with conventional MD -algorithms. In addition to this spin-dependent Pauli repulsion -potential term between Gaussians, eFF includes the electron kinetic -energy from the Gaussians. These two terms are based on -first-principles quantum mechanics. On the other hand, nuclei are -described as point charges, which interact with other nuclei and -electrons through standard electrostatic potential forms.

-

The full Hamiltonian (shown below), contains then a standard -description for electrostatic interactions between a set of -delocalized point and Gaussian charges which include, nuclei-nuclei -(NN), electron-electron (ee), and nuclei-electron (Ne). Thus, eFF is a -mixed QM-classical mechanics method rather than a conventional force -field method (in which electron motions are averaged out into ground -state nuclear motions, i.e a single electronic state, and particle -interactions are described via empirically parameterized interatomic -potential functions). This makes eFF uniquely suited to simulate -materials over a wide range of temperatures and pressures where -electronically excited and ionized states of matter can occur and -coexist. Furthermore, the interactions between particles -nuclei and -electrons- reduce to the sum of a set of effective pairwise potentials -in the eFF formulation. The eff/cut style computes the pairwise -Coulomb interactions between nuclei and electrons (E_NN,E_Ne,E_ee), -and the quantum-derived Pauli (E_PR) and Kinetic energy interactions -potentials between electrons (E_KE) for a total energy expression -given as,

-_images/eff_energy_expression.jpg -

The individual terms are defined as follows:

-_images/eff_KE.jpg -_images/eff_NN.jpg -_images/eff_Ne.jpg -_images/eff_ee.jpg -_images/eff_Pauli.jpg -

where, s_i correspond to the electron sizes, the sigmas i’s to the -fixed spins of the electrons, Z_i to the charges on the nuclei, R_ij -to the distances between the nuclei or the nuclei and electrons, and -r_ij to the distances between electrons. For additional details see -(Jaramillo-Botero).

-

The overall electrostatics energy is given in Hartree units of energy -by default and can be modified by an energy-conversion constant, -according to the units chosen (see electron_units). The -cutoff Rc, given in Bohrs (by default), truncates the interaction -distance. The recommended cutoff for this pair style should follow -the minimum image criterion, i.e. half of the minimum unit cell -length.

-

Style eff/long (not yet available) computes the same interactions as -style eff/cut except that an additional damping factor is applied so -it can be used in conjunction with the -kspace_style command and its ewald or pppm -option. The Coulombic cutoff specified for this style means that -pairwise interactions within this distance are computed directly; -interactions outside that distance are computed in reciprocal space.

-

This potential is designed to be used with atom_style electron definitions, in order to handle the -description of systems with interacting nuclei and explicit electrons.

-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above, or in the data file or restart files read by the -read_data or read_restart -commands, or by mixing as described below:

-
    -
  • cutoff (distance units)
  • -
-

For eff/cut, the cutoff coefficient is optional. If it is not used -(as in some of the examples above), the default global value specified -in the pair_style command is used.

-

For eff/long (not yet available) no cutoff will be specified for an -individual I,J type pair via the pair_coeff command. -All type pairs use the same global cutoff specified in the pair_style -command.

-
-

The limit/eradius and pressure/evirials keywrods are optional. -Neither or both must be specified. If not specified they are unset.

-

The limit/eradius keyword is used to restrain electron size from -becoming excessively diffuse at very high temperatures were the -Gaussian wave packet representation breaks down, and from expanding as -free particles to infinite size. If unset, electron radius is free to -increase without bounds. If set, a restraining harmonic potential of -the form E = 1/2k_ss^2 for s > L_box/2, where k_s = 1 Hartrees/Bohr^2, -is applied on the electron radius.

-

The pressure/evirials keyword is used to control between two types -of pressure computation: if unset, the computed pressure does not -include the electronic radial virials contributions to the total -pressure (scalar or tensor). If set, the computed pressure will -include the electronic radial virial contributions to the total -pressure (scalar and tensor).

-

The ecp keyword is used to associate an ECP representation for a -particular atom type. The ECP captures the orbital overlap between a -core pseudo particle and valence electrons within the Pauli repulsion. -A list of type:element-symbol pairs may be provided for all ECP -representations, after the “ecp” keyword.

-
-

Note

-

Default ECP parameters are provided for C, N, O, Al, and Si. -Users can modify these using the pair_coeff command as exemplified -above. For this, the User must distinguish between two different -functional forms supported, one that captures the orbital overlap -assuming the s-type core interacts with an s-like valence electron -(s-s) and another that assumes the interaction is s-p. For systems -that exhibit significant p-character (e.g. C, N, O) the s-p form is -recommended. The “s” ECP form requires 3 parameters and the “p” 5 -parameters.

-
-
-

Note

-

there are two different pressures that can be reported for eFF -when defining this pair_style, one (default) that considers electrons -do not contribute radial virial components (i.e. electrons treated as -incompressible ‘rigid’ spheres) and one that does. The radial -electronic contributions to the virials are only tallied if the -flexible pressure option is set, and this will affect both global and -per-atom quantities. In principle, the true pressure of a system is -somewhere in between the rigid and the flexible eFF pressures, but, -for most cases, the difference between these two pressures will not be -significant over long-term averaged runs (i.e. even though the energy -partitioning changes, the total energy remains similar).

-
-
-
-

Note

-

This implemention of eFF gives a reasonably accurate description -for systems containing nuclei from Z = 1-6 in “all electron” -representations. For systems with increasingly non-spherical -electrons, Users should use the ECP representations. ECPs are now -supported and validated for most of the 2nd and 3rd row elements of -the p-block. Predefined parameters are provided for C, N, O, Al, and -Si. The ECP captures the orbital overlap between the core and valence -electrons (i.e. Pauli repulsion) with one of the functional forms:

-
-_images/eff_ECP1.jpg -_images/eff_ECP2.jpg -

Where the 1st form correspond to core interactions with s-type valence -electrons and the 2nd to core interactions with p-type valence -electrons.

-

The current version adds full support for models with fixed-core and -ECP definitions. to enable larger timesteps (i.e. by avoiding the -high frequency vibrational modes -translational and radial- of the 2 s -electrons), and in the ECP case to reduce the increased orbital -complexity in higher Z elements (up to Z<18). A fixed-core should be -defined with a mass that includes the corresponding nuclear mass plus -the 2 s electrons in atomic mass units (2x5.4857990943e-4), and a -radius equivalent to that of minimized 1s electrons (see examples -under /examples/USER/eff/fixed-core). An pseudo-core should be -described with a mass that includes the corresponding nuclear mass, -plus all the core electrons (i.e no outer shell electrons), and a -radius equivalent to that of a corresponding minimized full-electron -system. The charge for a pseudo-core atom should be given by the -number of outer shell electrons.

-

In general, eFF excels at computing the properties of materials in -extreme conditions and tracing the system dynamics over multi-picosend -timescales; this is particularly relevant where electron excitations -can change significantly the nature of bonding in the system. It can -capture with surprising accuracy the behavior of such systems because -it describes consistently and in an unbiased manner many different -kinds of bonds, including covalent, ionic, multicenter, ionic, and -plasma, and how they interconvert and/or change when they become -excited. eFF also excels in computing the relative thermochemistry of -isodemic reactions and conformational changes, where the bonds of the -reactants are of the same type as the bonds of the products. eFF -assumes that kinetic energy differences dominate the overall exchange -energy, which is true when the electrons present are nearly spherical -and nodeless and valid for covalent compounds such as dense hydrogen, -hydrocarbons, and diamond; alkali metals (e.g. lithium), alkali earth -metals (e.g. beryllium) and semimetals such as boron; and various -compounds containing ionic and/or multicenter bonds, such as boron -dihydride.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, the cutoff distance for the -eff/cut style can be mixed. The default mix value is geometric. -See the “pair_modify” command for details.

-

The pair_modify shift option is not relevant for -these pair styles.

-

The eff/long (not yet available) style supports the -pair_modify table option for tabulation of the -short-range portion of the long-range Coulombic interaction.

-

These pair styles do not support the pair_modify -tail option for adding long-range tail corrections to energy and -pressure.

-

These pair styles write their information to binary restart files, so pair_style and pair_coeff commands do not need -to be specified in an input script that reads a restart file.

-

These pair styles can only be used via the pair keyword of the -run_style respa command. They do not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-

These pair styles will only be enabled if LAMMPS is built with the -USER-EFF package. It will only be enabled if LAMMPS was built with -that package. See the Making LAMMPS -section for more info.

-

These pair styles require that particles store electron attributes -such as radius, radial velocity, and radital force, as defined by the -atom_style. The electron atom style does all of -this.

-

Thes pair styles require you to use the comm_modify vel yes command so that velocites are stored by ghost -atoms.

-
- -
-

Default

-

If not specified, limit_eradius = 0 and pressure_with_evirials = 0.

-
-

(Su) Su and Goddard, Excited Electron Dynamics Modeling of Warm -Dense Matter, Phys Rev Lett, 99:185003 (2007).

-

(Jaramillo-Botero) Jaramillo-Botero, Su, Qi, Goddard, Large-scale, -Long-term Non-adiabatic Electron Molecular Dynamics for Describing -Material Properties and Phenomena in Extreme Environments, J Comp -Chem, 32, 497-512 (2011).

-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_eim.html b/doc/pair_eim.html deleted file mode 100644 index dc26eed34e..0000000000 --- a/doc/pair_eim.html +++ /dev/null @@ -1,338 +0,0 @@ - - - - - - - - - - - pair_style eim command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style eim command

-
-
-

pair_style eim/omp command

-
-

Syntax

-
pair_style style
-
-
-
    -
  • style = eim
  • -
-
-
-

Examples

-
pair_style eim
-pair_coeff * * Na Cl ../potentials/ffield.eim Na Cl
-pair_coeff * * Na Cl ffield.eim  Na Na Na Cl
-pair_coeff * * Na Cl ../potentials/ffield.eim Cl NULL Na
-
-
-
-
-

Description

-

Style eim computes pairwise interactions for ionic compounds -using embedded-ion method (EIM) potentials (Zhou). The -energy of the system E is given by

-_images/pair_eim1.jpg -

The first term is a double pairwise sum over the J neighbors of all I -atoms, where phi_ij is a pair potential. The second term sums over -the embedding energy E_i of atom I, which is a function of its charge -q_i and the electrical potential sigma_i at its location. E_i, q_i, -and sigma_i are calculated as

-_images/pair_eim2.jpg -

where eta_ji is a pairwise function describing electron flow from atom -I to atom J, and psi_ij is another pairwise function. The multi-body -nature of the EIM potential is a result of the embedding energy term. -A complete list of all the pair functions used in EIM is summarized -below

-_images/pair_eim3.jpg -

Here E_b, r_e, r_(c,phi), alpha, beta, A_(psi), zeta, r_(s,psi), -r_(c,psi), A_(eta), r_(s,eta), r_(c,eta), chi, and pair function type -p are parameters, with subscripts ij indicating the two species of -atoms in the atomic pair.

-
-

Note

-

Even though the EIM potential is treating atoms as charged ions, -you should not use a LAMMPS atom_style that stores a -charge on each atom and thus requires you to assign a charge to each -atom, e.g. the charge or full atom styles. This is because the -EIM potential infers the charge on an atom from the equation above for -q_i; you do not assign charges explicitly.

-
-
-

All the EIM parameters are listed in a potential file which is -specified by the pair_coeff command. This is an -ASCII text file in a format described below. The “ffield.eim” file -included in the “potentials” directory of the LAMMPS distribution -currently includes nine elements Li, Na, K, Rb, Cs, F, Cl, Br, and I. -A system with any combination of these elements can be modeled. This -file is parameterized in terms of LAMMPS metal units.

-

Note that unlike other potentials, cutoffs for EIM potentials are not -set in the pair_style or pair_coeff command; they are specified in the -EIM potential file itself. Likewise, the EIM potential file lists -atomic masses; thus you do not need to use the mass -command to specify them.

-

Only a single pair_coeff command is used with the eim style which -specifies an EIM potential file and the element(s) to extract -information for. The EIM elements are mapped to LAMMPS atom types by -specifying N additional arguments after the filename in the pair_coeff -command, where N is the number of LAMMPS atom types:

-
    -
  • Elem1, Elem2, ...
  • -
  • EIM potential file
  • -
  • N element names = mapping of EIM elements to atom types
  • -
-

See the pair_coeff doc page for alternate ways -to specify the path for the potential file.

-

As an example like one of those above, suppose you want to model a -system with Na and Cl atoms. If your LAMMPS simulation has 4 atoms -types and you want the 1st 3 to be Na, and the 4th to be Cl, you would -use the following pair_coeff command:

-
pair_coeff * * Na Cl ffield.eim Na Na Na Cl
-
-
-

The 1st 2 arguments must be * * so as to span all LAMMPS atom types. -The filename is the EIM potential file. The Na and Cl arguments -(before the file name) are the two elements for which info will be -extracted from the potentail file. The first three trailing Na -arguments map LAMMPS atom types 1,2,3 to the EIM Na element. The -final Cl argument maps LAMMPS atom type 4 to the EIM Cl element.

-

If a mapping value is specified as NULL, the mapping is not performed. -This can be used when an eim potential is used as part of the -hybrid pair style. The NULL values are placeholders for atom types -that will be used with other potentials.

-

The ffield.eim file in the potentials directory of the LAMMPS -distribution is formated as follows:

-

Lines starting with # are comments and are ignored by LAMMPS. Lines -starting with “global:” include three global values. The first value -divides the cations from anions, i.e., any elements with -electronegativity above this value are viewed as anions, and any -elements with electronegativity below this value are viewed as -cations. The second and third values are related to the cutoff -function - i.e. the 0.510204, 1.64498, and 0.010204 shown in the above -equation can be derived from these values.

-

Lines starting with “element:” are formatted as follows: name of -element, atomic number, atomic mass, electronic negativity, atomic -radius (LAMMPS ignores it), ionic radius (LAMMPS ignores it), cohesive -energy (LAMMPS ignores it), and q0 (must be 0).

-

Lines starting with “pair:” are entered as: element 1, element 2, -r_(c,phi), r_(c,phi) (redundant for historical reasons), E_b, r_e, -alpha, beta, r_(c,eta), A_(eta), r_(s,eta), r_(c,psi), A_(psi), zeta, -r_(s,psi), and p.

-

The lines in the file can be in any order; LAMMPS extracts the info it -needs.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-
-
-

Restrictions

-

This style is part of the MANYBODY package. It is only enabled if -LAMMPS was built with that package (which it is by default).

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_gauss.html b/doc/pair_gauss.html deleted file mode 100644 index 7edf68e729..0000000000 --- a/doc/pair_gauss.html +++ /dev/null @@ -1,328 +0,0 @@ - - - - - - - - - - - pair_style gauss command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style gauss command

-
-
-

pair_style gauss/gpu command

-
-
-

pair_style gauss/omp command

-
-
-

pair_style gauss/cut command

-
-
-

pair_style gauss/cut/omp command

-
-

Syntax

-
pair_style gauss cutoff
-pair_style gauss/cut cutoff
-
-
-
    -
  • cutoff = global cutoff for Gauss interactions (distance units)
  • -
-
-
-

Examples

-
pair_style gauss 12.0
-pair_coeff * * 1.0 0.9
-pair_coeff 1 4 1.0 0.9 10.0
-
-
-
pair_style gauss/cut 3.5
-pair_coeff 1 4 0.2805 1.45 0.112
-
-
-
-
-

Description

-

Style gauss computes a tethering potential of the form

-_images/pair_gauss.jpg -

between an atom and its corresponding tether site which will typically -be a frozen atom in the simulation. Rc is the cutoff.

-

The following coefficients must be defined for each pair of atom types -via the pair_coeff command as in the examples above, -or in the data file or restart files read by the -read_data or read_restart -commands:

-
    -
  • A (energy units)
  • -
  • B (1/distance^2 units)
  • -
  • cutoff (distance units)
  • -
-

The last coefficient is optional. If not specified, the global cutoff -is used.

-

Style gauss/cut computes a generalized Gaussian interaction potential -between pairs of particles:

-_images/pair_gauss_cut.jpg -

where H determines together with the standard deviation sigma_h the -peak height of the Gaussian function, and r_mh the peak position. -Examples of the use of the Gaussian potentials include implicit -solvent simulations of salt ions (Lenart) and of surfactants -(Jusufi). In these instances the Gaussian potential mimics -the hydration barrier between a pair of particles. The hydration -barrier is located at r_mh and has a width of sigma_h. The prefactor -determines the hight of the potential barrier.

-

The following coefficients must be defined for each pair of atom types -via the pair_coeff command as in the example above, -or in the data file or restart files read by the -read_data or read_restart -commands:

-
    -
  • H (energy * distance units)
  • -
  • r_mh (distance units)
  • -
  • sigma_h (distance units)
  • -
-

The global cutoff (r_c) specified in the pair_style command is used.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the “-suffix command-line -switch7_Section_start.html#start_6 when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

These pair styles do not support mixing. Thus, coefficients for all -I,J pairs must be specified explicitly.

-

The gauss style does not support the pair_modify -shift option. There is no effect due to the Gaussian well beyond the -cutoff; hence reasonable cutoffs need to be specified.

-

The gauss/cut style supports the pair_modify shift -option for the energy of the Gauss-potential portion of the pair -interaction.

-

The pair_modify table and tail options are not -relevant for these pair styles.

-

These pair styles write their information to binary restart files, so pair_style and pair_coeff commands do not need -to be specified in an input script that reads a restart file.

-

These pair styles can only be used via the pair keyword of the -run_style respa command. They do not support the -inner, middle, outer keywords.

-

The gauss pair style tallies an “occupancy” count of how many Gaussian-well -sites have an atom within the distance at which the force is a maximum -= sqrt(0.5/b). This quantity can be accessed via the compute pair command as a vector of values of length 1.

-

To print this quantity to the log file (with a descriptive column -heading) the following commands could be included in an input script:

-
compute gauss all pair gauss
-variable occ equal c_gauss[1]
-thermo_style custom step temp epair v_occ
-
-
-
-
-
-

Restrictions

-

The gauss/cut style is part of the “user-misc” package. It is only -enabled if LAMMPS is build with that package. See the Making of LAMMPS section for more info.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_gayberne.html b/doc/pair_gayberne.html deleted file mode 100644 index dd580ceeb5..0000000000 --- a/doc/pair_gayberne.html +++ /dev/null @@ -1,380 +0,0 @@ - - - - - - - - - - - pair_style gayberne command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style gayberne command

-
-
-

pair_style gayberne/gpu command

-
-
-

pair_style gayberne/intel command

-
-
-

pair_style gayberne/omp command

-
-

Syntax

-
pair_style gayberne gamma upsilon mu cutoff
-
-
-
    -
  • gamma = shift for potential minimum (typically 1)
  • -
  • upsilon = exponent for eta orientation-dependent energy function
  • -
  • mu = exponent for chi orientation-dependent energy function
  • -
  • cutoff = global cutoff for interactions (distance units)
  • -
-
-
-

Examples

-
pair_style gayberne 1.0 1.0 1.0 10.0
-pair_coeff * * 1.0 1.7 1.7 3.4 3.4 1.0 1.0 1.0
-
-
-
-
-

Description

-

The gayberne styles compute a Gay-Berne anisotropic LJ interaction -(Berardi) between pairs of ellipsoidal particles or an -ellipsoidal and spherical particle via the formulas

-_images/pair_gayberne.jpg -

where A1 and A2 are the transformation matrices from the simulation -box frame to the body frame and r12 is the center to center vector -between the particles. Ur controls the shifted distance dependent -interaction based on the distance of closest approach of the two -particles (h12) and the user-specified shift parameter gamma. When -both particles are spherical, the formula reduces to the usual -Lennard-Jones interaction (see details below for when Gay-Berne treats -a particle as “spherical”).

-

For large uniform molecules it has been shown that the energy -parameters are approximately representable in terms of local contact -curvatures (Everaers):

-_images/pair_gayberne2.jpg -

The variable names utilized as potential parameters are for the most -part taken from (Everaers) in order to be consistent with -the RE-squared pair potential. Details on the -upsilon and mu parameters are given -here.

-

More details of the Gay-Berne formulation are given in the references -listed below and in this supplementary document.

-

Use of this pair style requires the NVE, NVT, or NPT fixes with the -asphere extension (e.g. fix nve/asphere) in -order to integrate particle rotation. Additionally, atom_style ellipsoid should be used since it defines the -rotational state and the size and shape of each ellipsoidal particle.

-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above, or in the data file or restart files read by the -read_data or read_restart -commands, or by mixing as described below:

-
    -
  • epsilon = well depth (energy units)
  • -
  • sigma = minimum effective particle radii (distance units)
  • -
  • epsilon_i_a = relative well depth of type I for side-to-side interactions
  • -
  • epsilon_i_b = relative well depth of type I for face-to-face interactions
  • -
  • epsilon_i_c = relative well depth of type I for end-to-end interactions
  • -
  • epsilon_j_a = relative well depth of type J for side-to-side interactions
  • -
  • epsilon_j_b = relative well depth of type J for face-to-face interactions
  • -
  • epsilon_j_c = relative well depth of type J for end-to-end interactions
  • -
  • cutoff (distance units)
  • -
-

The last coefficient is optional. If not specified, the global -cutoff specified in the pair_style command is used.

-

It is typical with the Gay-Berne potential to define sigma as the -minimum of the 3 shape diameters of the particles involved in an I,I -interaction, though this is not required. Note that this is a -different meaning for sigma than the pair_style resquared potential uses.

-

The epsilon_i and epsilon_j coefficients are actually defined for atom -types, not for pairs of atom types. Thus, in a series of pair_coeff -commands, they only need to be specified once for each atom type.

-

Specifically, if any of epsilon_i_a, epsilon_i_b, epsilon_i_c are -non-zero, the three values are assigned to atom type I. If all the -epsilon_i values are zero, they are ignored. If any of epsilon_j_a, -epsilon_j_b, epsilon_j_c are non-zero, the three values are assigned -to atom type J. If all three epsilon_j values are zero, they are -ignored. Thus the typical way to define the epsilon_i and epsilon_j -coefficients is to list their values in “pair_coeff I J” commands when -I = J, but set them to 0.0 when I != J. If you do list them when I != -J, you should insure they are consistent with their values in other -pair_coeff commands, since only the last setting will be in effect.

-

Note that if this potential is being used as a sub-style of -pair_style hybrid, and there is no “pair_coeff I I” -setting made for Gay-Berne for a particular type I (because I-I -interactions are computed by another hybrid pair potential), then you -still need to insure the epsilon a,b,c coefficients are assigned to -that type. e.g. in a “pair_coeff I J” command.

-
-

Note

-

If the epsilon a = b = c for an atom type, and if the shape of -the particle itself is spherical, meaning its 3 shape parameters are -all the same, then the particle is treated as an LJ sphere by the -Gay-Berne potential. This is significant because if two LJ spheres -interact, then the simple Lennard-Jones formula is used to compute -their interaction energy/force using the specified epsilon and sigma -as the standard LJ parameters. This is much cheaper to compute than -the full Gay-Berne formula. To treat the particle as a LJ sphere with -sigma = D, you should normally set epsilon a = b = c = 1.0, set the -pair_coeff sigma = D, and also set the 3 shape parameters for the -particle to D. The one exception is that if the 3 shape parameters -are set to 0.0, which is a valid way in LAMMPS to specify a point -particle, then the Gay-Berne potential will treat that as shape -parameters of 1.0 (i.e. a LJ particle with sigma = 1), since it -requires finite-size particles. In this case you should still set the -pair_coeff sigma to 1.0 as well.

-
-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, the epsilon and sigma coefficients -and cutoff distance for this pair style can be mixed. The default mix -value is geometric. See the “pair_modify” command for details.

-

This pair styles supports the pair_modify shift -option for the energy of the Lennard-Jones portion of the pair -interaction, but only for sphere-sphere interactions. There is no -shifting performed for ellipsoidal interactions due to the anisotropic -dependence of the interaction.

-

The pair_modify table option is not relevant -for this pair style.

-

This pair style does not support the pair_modify -tail option for adding long-range tail corrections to energy and -pressure.

-

This pair style writes its information to binary restart files, so pair_style and pair_coeff commands do not need -to be specified in an input script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-

The gayberne style is part of the ASPHERE package. It is only -enabled if LAMMPS was built with that package. See the Making LAMMPS section for more info.

-

These pair style require that atoms store torque and a quaternion to -represent their orientation, as defined by the -atom_style. It also require they store a per-type -shape. The particles cannot store a per-particle -diameter.

-

This pair style requires that atoms be ellipsoids as defined by the -atom_style ellipsoid command.

-

Particles acted on by the potential can be finite-size aspherical or -spherical particles, or point particles. Spherical particles have all -3 of their shape parameters equal to each other. Point particles have -all 3 of their shape parameters equal to 0.0.

-

The Gay-Berne potential does not become isotropic as r increases -(Everaers). The distance-of-closest-approach -approximation used by LAMMPS becomes less accurate when high-aspect -ratio ellipsoids are used.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_gran.html b/doc/pair_gran.html deleted file mode 100644 index 4fff807920..0000000000 --- a/doc/pair_gran.html +++ /dev/null @@ -1,425 +0,0 @@ - - - - - - - - - - - pair_style gran/hooke command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style gran/hooke command

-
-
-

pair_style gran/cuda command

-
-
-

pair_style gran/omp command

-
-
-

pair_style gran/hooke/history command

-
-
-

pair_style gran/hooke/history/omp command

-
-
-

pair_style gran/hertz/history command

-
-
-

pair_style gran/hertz/history/omp command

-
-

Syntax

-
pair_style style Kn Kt gamma_n gamma_t xmu dampflag
-
-
-
    -
  • style = gran/hooke or gran/hooke/history or gran/hertz/history
  • -
  • Kn = elastic constant for normal particle repulsion (force/distance units or pressure units - see discussion below)
  • -
  • Kt = elastic constant for tangential contact (force/distance units or pressure units - see discussion below)
  • -
  • gamma_n = damping coefficient for collisions in normal direction (1/time units or 1/time-distance units - see discussion below)
  • -
  • gamma_t = damping coefficient for collisions in tangential direction (1/time units or 1/time-distance units - see discussion below)
  • -
  • xmu = static yield criterion (unitless value between 0.0 and 1.0e4)
  • -
  • dampflag = 0 or 1 if tangential damping force is excluded or included
  • -
-
-

Note

-

Versions of LAMMPS before 9Jan09 had different style names for -granular force fields. This is to emphasize the fact that the -Hertzian equation has changed to model polydispersity more accurately. -A side effect of the change is that the Kn, Kt, gamma_n, and gamma_t -coefficients in the pair_style command must be specified with -different values in order to reproduce calculations made with earlier -versions of LAMMPS, even for monodisperse systems. See the NOTE below -for details.

-
-
-
-

Examples

-
pair_style gran/hooke/history 200000.0 NULL 50.0 NULL 0.5 1
-pair_style gran/hooke 200000.0 70000.0 50.0 30.0 0.5 0
-
-
-
-
-

Description

-

The gran styles use the following formulas for the frictional force -between two granular particles, as described in -(Brilliantov), (Silbert), and -(Zhang), when the distance r between two particles of radii -Ri and Rj is less than their contact distance d = Ri + Rj. There is -no force between the particles when r > d.

-

The two Hookean styles use this formula:

-_images/pair_gran_hooke.jpg -

The Hertzian style uses this formula:

-_images/pair_gran_hertz.jpg -

In both equations the first parenthesized term is the normal force -between the two particles and the second parenthesized term is the -tangential force. The normal force has 2 terms, a contact force and a -damping force. The tangential force also has 2 terms: a shear force -and a damping force. The shear force is a “history” effect that -accounts for the tangential displacement between the particles for the -duration of the time they are in contact. This term is included in -pair styles hooke/history and hertz/history, but is not included -in pair style hooke. The tangential damping force term is included -in all three pair styles if dampflag is set to 1; it is not included -if dampflag is set to 0.

-

The other quantities in the equations are as follows:

-
    -
  • delta = d - r = overlap distance of 2 particles
  • -
  • Kn = elastic constant for normal contact
  • -
  • Kt = elastic constant for tangential contact
  • -
  • gamma_n = viscoelastic damping constant for normal contact
  • -
  • gamma_t = viscoelastic damping constant for tangential contact
  • -
  • m_eff = Mi Mj / (Mi + Mj) = effective mass of 2 particles of mass Mi and Mj
  • -
  • Delta St = tangential displacement vector between 2 spherical particles which is truncated to satisfy a frictional yield criterion
  • -
  • n_ij = unit vector along the line connecting the centers of the 2 particles
  • -
  • Vn = normal component of the relative velocity of the 2 particles
  • -
  • Vt = tangential component of the relative velocity of the 2 particles
  • -
-

The Kn, Kt, gamma_n, and gamma_t coefficients are specified as -parameters to the pair_style command. If a NULL is used for Kt, then -a default value is used where Kt = 2/7 Kn. If a NULL is used for -gamma_t, then a default value is used where gamma_t = 1/2 gamma_n.

-

The interpretation and units for these 4 coefficients are different in -the Hookean versus Hertzian equations.

-

The Hookean model is one where the normal push-back force for two -overlapping particles is a linear function of the overlap distance. -Thus the specified Kn is in units of (force/distance). Note that this -push-back force is independent of absolute particle size (in the -monodisperse case) and of the relative sizes of the two particles (in -the polydisperse case). This model also applies to the other terms in -the force equation so that the specified gamma_n is in units of -(1/time), Kt is in units of (force/distance), and gamma_t is in units -of (1/time).

-

The Hertzian model is one where the normal push-back force for two -overlapping particles is proportional to the area of overlap of the -two particles, and is thus a non-linear function of overlap distance. -Thus Kn has units of force per area and is thus specified in units of -(pressure). The effects of absolute particle size (monodispersity) -and relative size (polydispersity) are captured in the radii-dependent -pre-factors. When these pre-factors are carried through to the other -terms in the force equation it means that the specified gamma_n is in -units of (1/(time*distance)), Kt is in units of (pressure), and -gamma_t is in units of (1/(time*distance)).

-

Note that in the Hookean case, Kn can be thought of as a linear spring -constant with units of force/distance. In the Hertzian case, Kn is -like a non-linear spring constant with units of force/area or -pressure, and as shown in the (Zhang) paper, Kn = 4G / -(3(1-nu)) where nu = the Poisson ratio, G = shear modulus = E / -(2(1+nu)), and E = Young’s modulus. Similarly, Kt = 4G / (2-nu). -(NOTE: in an earlier version of the manual, we incorrectly stated that -Kt = 8G / (2-nu).)

-

Thus in the Hertzian case Kn and Kt can be set to values that -corresponds to properties of the material being modeled. This is also -true in the Hookean case, except that a spring constant must be chosen -that is appropriate for the absolute size of particles in the model. -Since relative particle sizes are not accounted for, the Hookean -styles may not be a suitable model for polydisperse systems.

-
-

Note

-

In versions of LAMMPS before 9Jan09, the equation for Hertzian -interactions did not include the sqrt(RiRj/Ri+Rj) term and thus was -not as accurate for polydisperse systems. For monodisperse systems, -sqrt(RiRj/Ri+Rj) is a constant factor that effectively scales all 4 -coefficients: Kn, Kt, gamma_n, gamma_t. Thus you can set the values -of these 4 coefficients appropriately in the current code to reproduce -the results of a previous Hertzian monodisperse calculation. For -example, for the common case of a monodisperse system with particles -of diameter 1, all 4 of these coefficients should now be set 2x larger -than they were previously.

-
-

Xmu is also specified in the pair_style command and is the upper limit -of the tangential force through the Coulomb criterion Ft = xmu*Fn, -where Ft and Fn are the total tangential and normal force components -in the formulas above. Thus in the Hookean case, the tangential force -between 2 particles grows according to a tangential spring and -dash-pot model until Ft/Fn = xmu and is then held at Ft = Fn*xmu until -the particles lose contact. In the Hertzian case, a similar analogy -holds, though the spring is no longer linear.

-
-

Note

-

Normally, xmu should be specified as a fractional value between -0.0 and 1.0, however LAMMPS allows large values (up to 1.0e4) to allow -for modeling of systems which can sustain very large tangential -forces.

-
-

For granular styles there are no additional coefficients to set for -each pair of atom types via the pair_coeff command. -All settings are global and are made via the pair_style command. -However you must still use the pair_coeff for all -pairs of granular atom types. For example the command

-
pair_coeff * *
-
-
-

should be used if all atoms in the simulation interact via a granular -potential (i.e. one of the pair styles above is used). If a granular -potential is used as a sub-style of pair_style hybrid, then specific atom types can be used in the -pair_coeff command to determine which atoms interact via a granular -potential.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

The pair_modify mix, shift, table, and tail options -are not relevant for granular pair styles.

-

These pair styles write their information to binary restart files, so a pair_style command does not need to be -specified in an input script that reads a restart file.

-

These pair styles can only be used via the pair keyword of the -run_style respa command. They do not support the -inner, middle, outer keywords.

-

The single() function of these pair styles returns 0.0 for the energy -of a pairwise interaction, since energy is not conserved in these -dissipative potentials. It also returns only the normal component of -the pairwise interaction force. However, the single() function also -calculates 4 extra pairwise quantities. The first 3 are the -components of the tangential force between particles I and J, acting -on particle I. P4 is the magnitude of this tangential force. These -extra quantites can be accessed by the compute pair/local command, as p1, p2, p3, -p4.

-
-
-
-

Restrictions

-
-
none
-

All the granular pair styles are part of the GRANULAR package. It is -only enabled if LAMMPS was built with that package. See the Making LAMMPS section for more info.

-

These pair styles require that atoms store torque and angular velocity -(omega) as defined by the atom_style. They also -require a per-particle radius is stored. The sphere atom style does -all of this.

-

This pair style requires you to use the comm_modify vel yes command so that velocites are stored by ghost -atoms.

-

These pair styles will not restart exactly when using the -read_restart command, though they should provide -statistically similar results. This is because the forces they -compute depend on atom velocities. See the -read_restart command for more details.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_gromacs.html b/doc/pair_gromacs.html deleted file mode 100644 index cf11c5ccd6..0000000000 --- a/doc/pair_gromacs.html +++ /dev/null @@ -1,337 +0,0 @@ - - - - - - - - - - - pair_style lj/gromacs command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style lj/gromacs command

-
-
-

pair_style lj/gromacs/cuda command

-
-
-

pair_style lj/gromacs/gpu command

-
-
-

pair_style lj/gromacs/omp command

-
-
-

pair_style lj/gromacs/coul/gromacs command

-
-
-

pair_style lj/gromacs/coul/gromacs/cuda command

-
-
-

pair_style lj/gromacs/coul/gromacs/omp command

-
-

Syntax

-
pair_style style args
-
-
-
    -
  • style = lj/gromacs or lj/gromacs/coul/gromacs
  • -
  • args = list of arguments for a particular style
  • -
-
-lj/gromacs args = inner outer
-  inner, outer = global switching cutoffs for Lennard Jones
-lj/gromacs/coul/gromacs args = inner outer (inner2) (outer2)
-  inner, outer = global switching cutoffs for Lennard Jones (and Coulombic if only 2 args)
-  inner2, outer2 = global switching cutoffs for Coulombic (optional)
-
-
-
-

Examples

-
pair_style lj/gromacs 9.0 12.0
-pair_coeff * * 100.0 2.0
-pair_coeff 2 2 100.0 2.0 8.0 10.0
-
-
-
pair_style lj/gromacs/coul/gromacs 9.0 12.0
-pair_style lj/gromacs/coul/gromacs 8.0 10.0 7.0 9.0
-pair_coeff * * 100.0 2.0
-
-
-
-
-

Description

-

The lj/gromacs styles compute shifted LJ and Coulombic interactions -with an additional switching function S(r) that ramps the energy and force -smoothly to zero between an inner and outer cutoff. It is a commonly -used potential in the GROMACS MD code and for -the coarse-grained models of (Marrink).

-_images/pair_gromacs.jpg -

r1 is the inner cutoff; rc is the outer cutoff. The coefficients A, B, -and C are computed by LAMMPS to perform the shifting and smoothing. -The function -S(r) is actually applied once to each term of the LJ formula and once -to the Coulombic formula, so there are 2 or 3 sets of A,B,C coefficients -depending on which pair_style is used. The boundary conditions -applied to the smoothing function are as follows: S’(r1) = S’‘(r1) = 0, -S(rc) = -E(rc), S’(rc) = -E’(rc), and S’‘(rc) = -E’‘(rc), -where E(r) is the corresponding term -in the LJ or Coulombic potential energy function. -Single and double primes denote first and second -derivatives with respect to r, respectively.

-

The inner and outer cutoff for the LJ and Coulombic terms can be the -same or different depending on whether 2 or 4 arguments are used in -the pair_style command. The inner LJ cutoff must be > 0, but the -inner Coulombic cutoff can be >= 0.

-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above, or in the data file or restart files read by the -read_data or read_restart -commands, or by mixing as described below:

-
    -
  • epsilon (energy units)
  • -
  • sigma (distance units)
  • -
  • inner (distance units)
  • -
  • outer (distance units)
  • -
-

Note that sigma is defined in the LJ formula as the zero-crossing -distance for the potential, not as the energy minimum at 2^(1/6) -sigma.

-

The last 2 coefficients are optional inner and outer cutoffs for style -lj/gromacs. If not specified, the global inner and outer values -are used.

-

The last 2 coefficients cannot be used with style -lj/gromacs/coul/gromacs because this force field does not allow -varying cutoffs for individual atom pairs; all pairs use the global -cutoff(s) specified in the pair_style command.

-
-

Styles intel, kk, with a cuda, gpu, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, the epsilon and sigma coefficients -and cutoff distance for all of the lj/cut pair styles can be mixed. -The default mix value is geometric. See the “pair_modify” command -for details.

-

None of the GROMACS pair styles support the -pair_modify shift option, since the Lennard-Jones -portion of the pair interaction is already smoothed to 0.0 at the -cutoff.

-

The pair_modify table option is not relevant -for this pair style.

-

None of the GROMACS pair styles support the -pair_modify tail option for adding long-range tail -corrections to energy and pressure, since there are no corrections for -a potential that goes to 0.0 at the cutoff.

-

All of the GROMACS pair styles write their information to binary restart files, so pair_style and pair_coeff commands do -not need to be specified in an input script that reads a restart file.

-

All of the GROMACS pair styles can only be used via the pair -keyword of the run_style respa command. They do not -support the inner, middle, outer keywords.

-
-
-
-

Restrictions

-
-
none
-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_hbond_dreiding.html b/doc/pair_hbond_dreiding.html deleted file mode 100644 index d2ee0639b4..0000000000 --- a/doc/pair_hbond_dreiding.html +++ /dev/null @@ -1,411 +0,0 @@ - - - - - - - - - - - pair_style hbond/dreiding/lj command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style hbond/dreiding/lj command

-
-
-

pair_style hbond/dreiding/lj/omp command

-
-
-

pair_style hbond/dreiding/morse command

-
-
-

pair_style hbond/dreiding/morse/omp command

-
-

Syntax

-
pair_style style N inner_distance_cutoff outer_distance_cutoff angle_cutof
-
-
-
    -
  • style = hbond/dreiding/lj or hbond/dreiding/morse
  • -
  • n = cosine angle periodicity
  • -
  • inner_distance_cutoff = global inner cutoff for Donor-Acceptor interactions (distance units)
  • -
  • outer_distance_cutoff = global cutoff for Donor-Acceptor interactions (distance units)
  • -
  • angle_cutoff = global angle cutoff for Acceptor-Hydrogen-Donor
  • -
  • interactions (degrees)
  • -
-
-
-

Examples

-
pair_style hybrid/overlay lj/cut 10.0 hbond/dreiding/lj 4 9.0 11.0 90
-pair_coeff 1 2 hbond/dreiding/lj 3 i 9.5 2.75 4 9.0 11.0 90.0
-
-
-
pair_style hybrid/overlay lj/cut 10.0 hbond/dreiding/morse 2 9.0 11.0 90
-pair_coeff 1 2 hbond/dreiding/morse 3 i 3.88 1.7241379 2.9 2 9 11 90
-
-
-
-
-

Description

-

The hbond/dreiding styles compute the Acceptor-Hydrogen-Donor (AHD) -3-body hydrogen bond interaction for the -DREIDING force field, given by:

-_images/pair_hbond_dreiding.jpg -

where Rin is the inner spline distance cutoff, Rout is the outer -distance cutoff, theta_c is the angle cutoff, and n is the cosine -periodicity.

-

Here, r is the radial distance between the donor (D) and acceptor -(A) atoms and theta is the bond angle between the acceptor, the -hydrogen (H) and the donor atoms:

-_images/dreiding_hbond.jpg -

These 3-body interactions can be defined for pairs of acceptor and -donor atoms, based on atom types. For each donor/acceptor atom pair, -the 3rd atom in the interaction is a hydrogen permanently bonded to -the donor atom, e.g. in a bond list read in from a data file via the -read_data command. The atom types of possible -hydrogen atoms for each donor/acceptor type pair are specified by the -pair_coeff command (see below).

-

Style hbond/dreiding/lj is the original DREIDING potential of -(Mayo). It uses a LJ 12/10 functional for the Donor-Acceptor -interactions. To match the results in the original paper, use n = 4.

-

Style hbond/dreiding/morse is an improved version using a Morse -potential for the Donor-Acceptor interactions. (Liu) showed -that the Morse form gives improved results for Dendrimer simulations, -when n = 2.

-

See this howto section of the manual for -more information on the DREIDING forcefield.

-
-

Note

-

Because the Dreiding hydrogen bond potential is only one portion -of an overall force field which typically includes other pairwise -interactions, it is common to use it as a sub-style in a pair_style hybrid/overlay command, where another pair style -provides the repulsive core interaction between pairs of atoms, e.g. a -1/r^12 Lennard-Jones repulsion.

-
-
-

Note

-

When using the hbond/dreiding pair styles with pair_style hybrid/overlay, you should explicitly define pair -interactions between the donor atom and acceptor atoms, (as well as -between these atoms and ALL other atoms in your system). Whenever -pair_style hybrid/overlay is used, ordinary mixing -rules are not applied to atoms like the donor and acceptor atoms -because they are typically referenced in multiple pair styles. -Neglecting to do this can cause difficult-to-detect physics problems.

-
-
-

Note

-

In the original Dreiding force field paper 1-4 non-bonded -interactions ARE allowed. If this is desired for your model, use the -special_bonds command (e.g. “special_bonds lj 0.0 0.0 1.0”) to turn -these interactions on.

-
-
-

The following coefficients must be defined for pairs of eligible -donor/acceptor types via the pair_coeff command as -in the examples above.

-
-

Note

-

Unlike other pair styles and their associated -pair_coeff commands, you do not need to specify -pair_coeff settings for all possible I,J type pairs. Only I,J type -pairs for atoms which act as joint donors/acceptors need to be -specified; all other type pairs are assumed to be inactive.

-
-
-

Note

-

A pair_coeff command can be speficied multiple -times for the same donor/acceptor type pair. This enables multiple -hydrogen types to be assigned to the same donor/acceptor type pair. -For other pair_styles, if the pair_coeff command is re-used for the -same I.J type pair, the settings for that type pair are overwritten. -For the hydrogen bond potentials this is not the case; the settings -are cummulative. This means the only way to turn off a previous -setting, is to re-use the pair_style command and start over.

-
-

For the hbond/dreiding/lj style the list of coefficients is as -follows:

-
    -
  • K = hydrogen atom type = 1 to Ntypes
  • -
  • donor flag = i or j
  • -
  • epsilon (energy units)
  • -
  • sigma (distance units)
  • -
  • n = exponent in formula above
  • -
  • distance cutoff Rin (distance units)
  • -
  • distance cutoff Rout (distance units)
  • -
  • angle cutoff (degrees)
  • -
-

For the hbond/dreiding/morse style the list of coefficients is as -follows:

-
    -
  • K = hydrogen atom type = 1 to Ntypes
  • -
  • donor flag = i or j
  • -
  • D0 (energy units)
  • -
  • alpha (1/distance units)
  • -
  • r0 (distance units)
  • -
  • n = exponent in formula above
  • -
  • distance cutoff Rin (distance units)
  • -
  • distance cutoff Rout (distance units)
  • -
  • angle cutoff (degrees)
  • -
-

A single hydrogen atom type K can be specified, or a wild-card -asterisk can be used in place of or in conjunction with the K -arguments to select multiple types as hydrogens. This takes the form -“*” or “n” or “n” or “m*n”. See the pair_coeff command -doc page for details.

-

If the donor flag is i, then the atom of type I in the pair_coeff -command is treated as the donor, and J is the acceptor. If the donor -flag is j, then the atom of type J in the pair_coeff command is -treated as the donor and I is the donor. This option is required -because the pair_coeff command requires that I <= J.

-

Epsilon and sigma are settings for the hydrogen bond potential based -on a Lennard-Jones functional form. Note that sigma is defined as the -zero-crossing distance for the potential, not as the energy minimum at -2^(1/6) sigma.

-

D0 and alpha and r0 are settings for the hydrogen bond potential based -on a Morse functional form.

-

The last 3 coefficients for both styles are optional. If not -specified, the global n, distance cutoff, and angle cutoff specified -in the pair_style command are used. If you wish to only override the -2nd or 3rd optional parameter, you must also specify the preceding -optional parameters.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

These pair styles do not support mixing. You must explicitly identify -each donor/acceptor type pair.

-

These styles do not support the pair_modify shift -option for the energy of the interactions.

-

The pair_modify table option is not relevant for -these pair styles.

-

These pair styles do not support the pair_modify -tail option for adding long-range tail corrections to energy and -pressure.

-

These pair styles do not write their information to binary restart files, so pair_style and pair_coeff commands need to be -re-specified in an input script that reads a restart file.

-

These pair styles can only be used via the pair keyword of the -run_style respa command. They do not support the -inner, middle, outer keywords.

-

These pair styles tally a count of how many hydrogen bonding -interactions they calculate each timestep and the hbond energy. These -quantities can be accessed via the compute pair -command as a vector of values of length 2.

-

To print these quantities to the log file (with a descriptive column -heading) the following commands could be included in an input script:

-
compute hb all pair hbond/dreiding/lj
-variable n_hbond equal c_hb[1] #number hbonds
-variable E_hbond equal c_hb[2] #hbond energy
-thermo_style custom step temp epair v_E_hbond
-
-
-
-
-
-

Restrictions

-
-
none
-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_hybrid.html b/doc/pair_hybrid.html deleted file mode 100644 index 5b15cc1d68..0000000000 --- a/doc/pair_hybrid.html +++ /dev/null @@ -1,545 +0,0 @@ - - - - - - - - - - - pair_style hybrid command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style hybrid command

-
-
-

pair_style hybrid/omp command

-
-
-

pair_style hybrid/overlay command

-
-
-

pair_style hybrid/overlay/omp command

-
-

Syntax

-
pair_style hybrid style1 args style2 args ...
-pair_style hybrid/overlay style1 args style2 args ...
-
-
-
    -
  • style1,style2 = list of one or more pair styles and their arguments
  • -
-
-
-

Examples

-
pair_style hybrid lj/cut/coul/cut 10.0 eam lj/cut 5.0
-pair_coeff 1*2 1*2 eam niu3
-pair_coeff 3 3 lj/cut/coul/cut 1.0 1.0
-pair_coeff 1*2 3 lj/cut 0.5 1.2
-
-
-
pair_style hybrid/overlay lj/cut 2.5 coul/long 2.0
-pair_coeff * * lj/cut 1.0 1.0
-pair_coeff * * coul/long
-
-
-
-
-

Description

-

The hybrid and hybrid/overlay styles enable the use of multiple -pair styles in one simulation. With the hybrid style, exactly one -pair style is assigned to each pair of atom types. With the -hybrid/overlay style, one or more pair styles can be assigned to -each pair of atom types. The assignment of pair styles to type pairs -is made via the pair_coeff command.

-

Here are two examples of hybrid simulations. The hybrid style could -be used for a simulation of a metal droplet on a LJ surface. The -metal atoms interact with each other via an eam potential, the -surface atoms interact with each other via a lj/cut potential, and -the metal/surface interaction is also computed via a lj/cut -potential. The hybrid/overlay style could be used as in the 2nd -example above, where multiple potentials are superposed in an additive -fashion to compute the interaction between atoms. In this example, -using lj/cut and coul/long together gives the same result as if -the lj/cut/coul/long potential were used by itself. In this case, -it would be more efficient to use the single combined potential, but -in general any combination of pair potentials can be used together in -to produce an interaction that is not encoded in any single pair_style -file, e.g. adding Coulombic forces between granular particles.

-

All pair styles that will be used are listed as “sub-styles” following -the hybrid or hybrid/overlay keyword, in any order. Each -sub-style’s name is followed by its usual arguments, as illustrated in -the example above. See the doc pages of individual pair styles for a -listing and explanation of the appropriate arguments.

-

Note that an individual pair style can be used multiple times as a -sub-style. For efficiency this should only be done if your model -requires it. E.g. if you have different regions of Si and C atoms and -wish to use a Tersoff potential for pure Si for one set of atoms, and -a Tersoff potetnial for pure C for the other set (presumably with some -3rd potential for Si-C interactions), then the sub-style tersoff -could be listed twice. But if you just want to use a Lennard-Jones or -other pairwise potential for several different atom type pairs in your -model, then you should just list the sub-style once and use the -pair_coeff command to assign parameters for the different type pairs.

-
-

Note

-

There are two exceptions to this option to list an individual -pair style multiple times. The first is for pair styles implemented -as Fortran libraries: pair_style meam and pair_style reax (pair_style reax/c is OK). -This is because unlike a C++ class, they can not be instantiated -multiple times, due to the manner in which they were coded in Fortran. -The second is for GPU-enabled pair styles in the GPU package. This is -b/c the GPU package also currently assumes that only one instance of a -pair style is being used.

-
-

In the pair_coeff commands, the name of a pair style must be added -after the I,J type specification, with the remaining coefficients -being those appropriate to that style. If the pair style is used -multiple times in the pair_style command, then an additional numeric -argument must also be specified which is a number from 1 to M where M -is the number of times the sub-style was listed in the pair style -command. The extra number indicates which instance of the sub-style -these coefficients apply to.

-

For example, consider a simulation with 3 atom types: types 1 and 2 -are Ni atoms, type 3 are LJ atoms with charges. The following -commands would set up a hybrid simulation:

-
pair_style hybrid eam/alloy lj/cut/coul/cut 10.0 lj/cut 8.0
-pair_coeff * * eam/alloy nialhjea Ni Ni NULL
-pair_coeff 3 3 lj/cut/coul/cut 1.0 1.0
-pair_coeff 1*2 3 lj/cut 0.8 1.3
-
-
-

As an example of using the same pair style multiple times, consider a -simulation with 2 atom types. Type 1 is Si, type 2 is C. The -following commands would model the Si atoms with Tersoff, the C atoms -with Tersoff, and the cross-interactions with Lennard-Jones:

-
pair_style hybrid lj/cut 2.5 tersoff tersoff
-pair_coeff * * tersoff 1 Si.tersoff Si NULL
-pair_coeff * * tersoff 2 C.tersoff NULL C
-pair_coeff 1 2 lj/cut 1.0 1.5
-
-
-

If pair coefficients are specified in the data file read via the -read_data command, then the same rule applies. -E.g. “eam/alloy” or “lj/cut” must be added after the atom type, for -each line in the “Pair Coeffs” section, e.g.

-
Pair Coeffs
-
-
-
1 lj/cut/coul/cut 1.0 1.0
-...
-
-
-

Note that the pair_coeff command for some potentials such as -pair_style eam/alloy includes a mapping specification -of elements to all atom types, which in the hybrid case, can include -atom types not assigned to the eam/alloy potential. The NULL -keyword is used by many such potentials (eam/alloy, Tersoff, AIREBO, -etc), to denote an atom type that will be assigned to a different -sub-style.

-

For the hybrid style, each atom type pair I,J is assigned to exactly -one sub-style. Just as with a simulation using a single pair style, -if you specify the same atom type pair in a second pair_coeff command, -the previous assignment will be overwritten.

-

For the hybrid/overlay style, each atom type pair I,J can be -assigned to one or more sub-styles. If you specify the same atom type -pair in a second pair_coeff command with a new sub-style, then the -second sub-style is added to the list of potentials that will be -calculated for two interacting atoms of those types. If you specify -the same atom type pair in a second pair_coeff command with a -sub-style that has already been defined for that pair of atoms, then -the new pair coefficients simply override the previous ones, as in the -normal usage of the pair_coeff command. E.g. these two sets of -commands are the same:

-
pair_style lj/cut 2.5
-pair_coeff * * 1.0 1.0
-pair_coeff 2 2 1.5 0.8
-
-
-
pair_style hybrid/overlay lj/cut 2.5
-pair_coeff * * lj/cut 1.0 1.0
-pair_coeff 2 2 lj/cut 1.5 0.8
-
-
-

Coefficients must be defined for each pair of atoms types via the -pair_coeff command as described above, or in the -data file or restart files read by the read_data or -read_restart commands, or by mixing as described -below.

-

For both the hybrid and hybrid/overlay styles, every atom type -pair I,J (where I <= J) must be assigned to at least one sub-style via -the pair_coeff command as in the examples above, or -in the data file read by the read_data, or by mixing -as described below.

-

If you want there to be no interactions between a particular pair of -atom types, you have 3 choices. You can assign the type pair to some -sub-style and use the neigh_modify exclude type -command. You can assign it to some sub-style and set the coefficients -so that there is effectively no interaction (e.g. epsilon = 0.0 in a -LJ potential). Or, for hybrid and hybrid/overlay simulations, you -can use this form of the pair_coeff command in your input script:

-
pair_coeff   2 3 none
-
-
-

or this form in the “Pair Coeffs” section of the data file:

-
3 none
-
-
-

If an assignment to none is made in a simulation with the -hybrid/overlay pair style, it wipes out all previous assignments of -that atom type pair to sub-styles.

-

Note that you may need to use an atom_style hybrid -command in your input script, if atoms in the simulation will need -attributes from several atom styles, due to using multiple pair -potentials.

-
-

Different force fields (e.g. CHARMM vs AMBER) may have different rules -for applying weightings that change the strength of pairwise -interactions bewteen pairs of atoms that are also 1-2, 1-3, and 1-4 -neighbors in the molecular bond topology, as normally set by the -special_bonds command. Different weights can be -assigned to different pair hybrid sub-styles via the pair_modify special command. This allows multiple force fields -to be used in a model of a hybrid system, however, there is no consistent -approach to determine parameters automatically for the interactions -between the two force fields, this is only recommended when particles -described by the different force fields do not mix.

-

Here is an example for mixing CHARMM and AMBER: The global amber -setting sets the 1-4 interactions to non-zero scaling factors and -then overrides them with 0.0 only for CHARMM:

-
special_bonds amber
-pair_hybrid lj/charmm/coul/long 8.0 10.0 lj/cut/coul/long 10.0
-pair_modify pair lj/charmm/coul/long special lj/coul 0.0 0.0 0.0
-
-
-

The this input achieves the same effect:

-
special_bonds 0.0 0.0 0.1
-pair_hybrid lj/charmm/coul/long 8.0 10.0 lj/cut/coul/long 10.0
-pair_modify pair lj/cut/coul/long special lj 0.0 0.0 0.5
-pair_modify pair lj/cut/coul/long special coul 0.0 0.0 0.83333333
-pair_modify pair lj/charmm/coul/long special lj/coul 0.0 0.0 0.0
-
-
-

Here is an example for mixing Tersoff with OPLS/AA based on -a data file that defines bonds for all atoms where for the -Tersoff part of the system the force constants for the bonded -interactions have been set to 0. Note the global settings are -effectively lj/coul 0.0 0.0 0.5 as required for OPLS/AA:

-
special_bonds lj/coul 1e-20 1e-20 0.5
-pair_hybrid tersoff lj/cut/coul/long 12.0
-pair_modify pair tersoff special lj/coul 1.0 1.0 1.0
-
-
-

See the pair_modify doc page for details on -the specific syntax, requirements and restrictions.

-
-

The potential energy contribution to the overall system due to an -individual sub-style can be accessed and output via the compute pair command.

-
-
-

Note

-

Several of the potentials defined via the pair_style command in -LAMMPS are really many-body potentials, such as Tersoff, AIREBO, MEAM, -ReaxFF, etc. The way to think about using these potentials in a -hybrid setting is as follows.

-
-

A subset of atom types is assigned to the many-body potential with a -single pair_coeff command, using “* *” to include -all types and the NULL keywords described above to exclude specific -types not assigned to that potential. If types 1,3,4 were assigned in -that way (but not type 2), this means that all many-body interactions -between all atoms of types 1,3,4 will be computed by that potential. -Pair_style hybrid allows interactions between type pairs 2-2, 1-2, -2-3, 2-4 to be specified for computation by other pair styles. You -could even add a second interaction for 1-1 to be computed by another -pair style, assuming pair_style hybrid/overlay is used.

-

But you should not, as a general rule, attempt to exclude the -many-body interactions for some subset of the type pairs within the -set of 1,3,4 interactions, e.g. exclude 1-1 or 1-3 interactions. That -is not conceptually well-defined for many-body interactions, since the -potential will typically calculate energies and foces for small groups -of atoms, e.g. 3 or 4 atoms, using the neighbor lists of the atoms to -find the additional atoms in the group. It is typically non-physical -to think of excluding an interaction between a particular pair of -atoms when the potential computes 3-body or 4-body interactions.

-

However, you can still use the pair_coeff none setting or the -neigh_modify exclude command to exclude certain -type pairs from the neighbor list that will be passed to a manybody -sub-style. This will alter the calculations made by a many-body -potential, since it builds its list of 3-body, 4-body, etc -interactions from the pair list. You will need to think carefully as -to whether it produces a physically meaningful result for your model.

-

For example, imagine you have two atom types in your model, type 1 for -atoms in one surface, and type 2 for atoms in the other, and you wish -to use a Tersoff potential to compute interactions within each -surface, but not between surfaces. Then either of these two command -sequences would implement that model:

-
pair_style hybrid tersoff
-pair_coeff * * tersoff SiC.tersoff C C
-pair_coeff 1 2 none
-
-
-
pair_style tersoff
-pair_coeff * * SiC.tersoff C C
-neigh_modify exclude type 1 2
-
-
-

Either way, only neighbor lists with 1-1 or 2-2 interactions would be -passed to the Tersoff potential, which means it would compute no -3-body interactions containing both type 1 and 2 atoms.

-

Here is another example, using hybrid/overlay, to use 2 many-body -potentials together, in an overlapping manner. Imagine you have CNT -(C atoms) on a Si surface. You want to use Tersoff for Si/Si and Si/C -interactions, and AIREBO for C/C interactions. Si atoms are type 1; C -atoms are type 2. Something like this will work:

-
pair_style hybrid/overlay tersoff airebo 3.0
-pair_coeff * * tersoff SiC.tersoff.custom Si C
-pair_coeff * * airebo CH.airebo NULL C
-
-
-

Note that to prevent the Tersoff potential from computing C/C -interactions, you would need to modify the SiC.tersoff file to turn -off C/C interaction, i.e. by setting the appropriate coefficients to -0.0.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual.

-

Since the hybrid and hybrid/overlay styles delegate computation -to the individual sub-styles, the suffix versions of the hybrid -and hybrid/overlay styles are used to propagate the corresponding -suffix to all sub-styles, if those versions exist. Otherwise the -non-accelerated version will be used.

-

The individual accelerated sub-styles are part of the USER-CUDA, GPU, -USER-OMP and OPT packages, respectively. They are only enabled if -LAMMPS was built with those packages. See the -Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

Any pair potential settings made via the -pair_modify command are passed along to all -sub-styles of the hybrid potential.

-

For atom type pairs I,J and I != J, if the sub-style assigned to I,I -and J,J is the same, and if the sub-style allows for mixing, then the -coefficients for I,J can be mixed. This means you do not have to -specify a pair_coeff command for I,J since the I,J type pair will be -assigned automatically to the sub-style defined for both I,I and J,J -and its coefficients generated by the mixing rule used by that -sub-style. For the hybrid/overlay style, there is an additional -requirement that both the I,I and J,J pairs are assigned to a single -sub-style. See the “pair_modify” command for details of mixing rules. -See the See the doc page for the sub-style to see if allows for -mixing.

-

The hybrid pair styles supports the pair_modify -shift, table, and tail options for an I,J pair interaction, if the -associated sub-style supports it.

-

For the hybrid pair styles, the list of sub-styles and their -respective settings are written to binary restart files, so a pair_style command does -not need to specified in an input script that reads a restart file. -However, the coefficient information is not stored in the restart -file. Thus, pair_coeff commands need to be re-specified in the -restart input script.

-

These pair styles support the use of the inner, middle, and -outer keywords of the run_style respa command, if -their sub-styles do.

-
-
-

Restrictions

-

When using a long-range Coulombic solver (via the -kspace_style command) with a hybrid pair_style, -one or more sub-styles will be of the “long” variety, -e.g. lj/cut/coul/long or buck/coul/long. You must insure that the -short-range Coulombic cutoff used by each of these long pair styles is -the same or else LAMMPS will generate an error.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_kim.html b/doc/pair_kim.html deleted file mode 100644 index 6997bc1f18..0000000000 --- a/doc/pair_kim.html +++ /dev/null @@ -1,289 +0,0 @@ - - - - - - - - - - - pair_style kim command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style kim command

-
-

Syntax

-
pair_style kim virialmode model printflag
-
-
-
    -
  • virialmode = KIMvirial or LAMMPSvirial
  • -
  • model = name of KIM model (potential)
  • -
  • printflag = 1/0 do or do not print KIM descriptor file, optional
  • -
-
-
-

Examples

-
pair_style kim KIMvirial model_Ar_P_Morse
-pair_coeff * * Ar Ar
-
-
-
pair_style kim KIMvirial model_Ar_P_Morse 1
-pair_coeff * * Ar Ar
-
-
-
-
-

Description

-

This pair style is a wrapper on the Knowledge Base for Interatomic Models (KIM) repository of interatomic potentials, -so that they can be used by LAMMPS scripts.

-

In KIM lingo, a potential is a “model” and a model contains both the -analytic formulas that define the potential as well as the parameters -needed to run it for one or more materials, including coefficients and -cutoffs.

-

The argument virialmode determines how the global virial is -calculated. If KIMvirial is specified, the KIM model performs the -global virial calculation (if it knows how). If LAMMPSvirial is -specified, LAMMPS computes the global virial using its fdotr mechanism.

-

The argument model is the name of the KIM model for a specific -potential as KIM defines it. In principle, LAMMPS can invoke any KIM -model. You should get an error or warning message from either LAMMPS -or KIM if there is an incompatibility.

-

The argument printflag is optional. If it is set to a non-zero -value then a KIM dsecriptor file is printed when KIM is invoked. This -can be useful for debugging. The default is to not print this file.

-

Only a single pair_coeff command is used with the kim style which -specifies the mapping of LAMMPS atom types to KIM elements. This is -done by specifying N additional arguments after the * * in the -pair_coeff command, where N is the number of LAMMPS atom types:

-
    -
  • N element names = mapping of KIM elements to atom types
  • -
-

As an example, imagine the KIM model supports Si and C atoms. If your -LAMMPS simulation has 4 atom types and you want the 1st 3 to be Si, -and the 4th to be C, you would use the following pair_coeff command:

-
pair_coeff * * Si Si Si C
-
-
-

The 1st 2 arguments must be * * so as to span all LAMMPS atom types. -The first three Si arguments map LAMMPS atom types 1,2,3 to Si as -defined within KIM. The final C argument maps LAMMPS atom type 4 to C -as defined within KIM. If a mapping value is specified as NULL, the -mapping is not performed. This can only be used when a kim -potential is used as part of the hybrid pair style. The NULL values -are placeholders for atom types that will be used with other -potentials.

-
-

In addition to the usual LAMMPS error messages, the KIM library itself -may generate errors, which should be printed to the screen. In this -case it is also useful to check the kim.log file for additional error -information. This file kim.log should be generated in the same -directory where LAMMPS is running.

-

To download, build, and install the KIM library on your system, see -the lib/kim/README file. Once you have done this and built LAMMPS -with the KIM package installed you can run the example input scripts -in examples/kim.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

This pair style does not support the pair_modify -mix, shift, table, and tail options.

-

This pair style does not write its information to binary restart files, since KIM stores the potential parameters. -Thus, you need to re-specify the pair_style and pair_coeff commands in -an input script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-

This pair style is part of the KIM package. It is only enabled if -LAMMPS was built with that package. See the Making LAMMPS section for more info.

-

This current version of pair_style kim is compatible with the -kim-api package version 1.6.0 and higher.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_lcbop.html b/doc/pair_lcbop.html deleted file mode 100644 index 9e9fe1c795..0000000000 --- a/doc/pair_lcbop.html +++ /dev/null @@ -1,269 +0,0 @@ - - - - - - - - - - - pair_style lcbop command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style lcbop command

-
-

Syntax

-
pair_style lcbop
-
-
-
-
-

Examples

-
pair_style lcbop
-pair_coeff * * ../potentials/C.lcbop C
-
-
-
-
-

Description

-

The lcbop pair style computes the long-range bond-order potential -for carbon (LCBOP) of (Los and Fasolino). See section II in -that paper for the analytic equations associated with the potential.

-

Only a single pair_coeff command is used with the lcbop style which -specifies an LCBOP potential file with parameters for specific -elements. These are mapped to LAMMPS atom types by specifying N -additional arguments after the filename in the pair_coeff command, -where N is the number of LAMMPS atom types:

-
    -
  • filename
  • -
  • N element names = mapping of LCBOP elements to atom types
  • -
-

See the pair_coeff doc page for alternate ways -to specify the path for the potential file.

-

As an example, if your LAMMPS simulation has 4 atom types and you want -the 1st 3 to be C you would use the following pair_coeff command:

-
pair_coeff * * C.lcbop C C C NULL
-
-
-

The 1st 2 arguments must be * * so as to span all LAMMPS atom types. -The first C argument maps LAMMPS atom type 1 to the C element in the -LCBOP file. If a mapping value is specified as NULL, the mapping is -not performed. This can be used when a lcbop potential is used as -part of the hybrid pair style. The NULL values are placeholders for -atom types that will be used with other potentials.

-

The parameters/coefficients for the LCBOP potential as applied to C -are listed in the C.lcbop file to agree with the original (Los and Fasolino) paper. Thus the parameters are specific to this -potential and the way it was fit, so modifying the file should be done -carefully.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

This pair style does not support the pair_modify -mix, shift, table, and tail options.

-

This pair style does not write its information to binary restart files, since it is stored in potential files. Thus, you -need to re-specify the pair_style and pair_coeff commands in an input -script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-

Restrictions

-

This pair styles is part of the MANYBODY package. It is only enabled -if LAMMPS was built with that package (which it is by default). See -the Making LAMMPS section for more info.

-

This pair potential requires the newton setting to be -“on” for pair interactions.

-

The C.lcbop potential file provided with LAMMPS (see the potentials -directory) is parameterized for metal units. You can use -the LCBOP potential with any LAMMPS units, but you would need to -create your own LCBOP potential file with coefficients listed in the -appropriate units if your simulation doesn’t use “metal” units.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_line_lj.html b/doc/pair_line_lj.html deleted file mode 100644 index 18723f4b69..0000000000 --- a/doc/pair_line_lj.html +++ /dev/null @@ -1,315 +0,0 @@ - - - - - - - - - - - pair_style line/lj command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style line/lj command

-
-

Syntax

-
pair_style line/lj cutoff
-
-
-

cutoff = global cutoff for interactions (distance units)

-
-
-

Examples

-
pair_style line/lj 3.0
-pair_coeff * * 1.0 1.0 1.0 0.8 1.12
-pair_coeff 1 2 1.0 2.0 1.0 1.5 1.12 5.0
-pair_coeff 1 2 1.0 0.0 1.0 1.0 2.5
-
-
-
-
-

Description

-

Style line/lj treats particles which are line segments as a set of -small spherical particles that tile the line segment length as -explained below. Interactions between two line segments, each with N1 -and N2 spherical particles, are calculated as the pairwise sum of -N1*N2 Lennard-Jones interactions. Interactions between a line segment -with N spherical particles and a point particle are treated as the -pairwise sum of N Lennard-Jones interactions. See the pair_style lj/cut doc page for the definition of Lennard-Jones -interactions.

-

The set of non-overlapping spherical sub-particles that represent a -line segment are generated in the following manner. Their size is a -function of the line segment length and the specified sub-particle -size for that particle type. If a line segment has a length L and is -of type I, then the number of spheres N that represent the segment is -calculated as N = L/sizeI, rounded up to an integer value. Thus if L -is not evenly divisibly by sizeI, N is incremented to include one -extra sphere. The centers of the spheres are spaced equally along the -line segment. Imagine N+1 equally-space points, which include the 2 -end points of the segment. The sphere centers are halfway between -each pair of points.

-

The LJ interaction between 2 spheres on different line segments (or a -sphere on a line segment and a point particles) is computed with -sub-particle epsilon, sigma, and cutoff values that are set by the -pair_coeff command, as described below. If the distance bewteen the 2 -spheres is greater than the sub-particle cutoff, there is no -interaction. This means that some pairs of sub-particles on 2 line -segments may interact, but others may not.

-

For purposes of creating the neighbor list for pairs of interacting -line segments or lines/point particles, a regular particle-particle -cutoff is used, as defined by the cutoff setting above in the -pair_style command or overridden with an optional argument in the -pair_coeff command for a type pair as discussed below. The distance -between the centers of 2 line segments, or the center of a line -segment and a point particle, must be less than this distance (plus -the neighbor skin; see the neighbor command), for the pair -of particles to be included in the neighbor list.

-
-

Note

-

This means that a too-short value for the cutoff setting can -exclude a pair of particles from the neighbor list even if pairs of -their sub-particle spheres would interact, based on the sub-particle -cutoff specified in the pair_coeff command. E.g. sub-particles at the -ends of the line segments that are close to each other. Which may not -be what you want, since it means the ends of 2 line segments could -pass through each other. It is up to you to specify a cutoff -setting that is consistent with the length of the line segments you -are using and the sub-particle cutoff settings.

-
-

For style line/lj, the following coefficients must be defined for -each pair of atom types via the pair_coeff command -as in the examples above, or in the data file or restart files read by -the read_data or read_restart -commands:

-
    -
  • sizeI (distance units)
  • -
  • sizeJ (distance units)
  • -
  • epsilon (energy units)
  • -
  • sigma (distance units)
  • -
  • subcutoff (distance units)
  • -
  • cutoff (distance units)
  • -
-

The sizeI and sizeJ coefficients are the sub-particle sizes for -line particles of type I and type J. They are used to define the N -sub-particles per segment as described above. These coefficients are -actually stored on a per-type basis. Thus if there are multiple -pair_coeff commmands that involve type I, as either the first or -second atom type, you should use consistent values for sizeI or sizeJ -in all of them. If you do not do this, the last value specified for -sizeI will apply to all segments of type I. If typeI or typeJ refers -to point particles, the corresponding sizeI or sizeJ is ignored; it -can be set to 0.0.

-

The epsilon, sigma, and subcutoff coefficients are used to -compute an LJ interactions between a pair of sub-particles on 2 line -segments (of type I and J), or between a sub particle/point particle -pair. As discussed above, the subcutoff and cutoff params are -different. The latter is only used for building the neighbor list -when the distance between centers of two line segments or one segment -and a point particle is calculated.

-

The cutoff coefficient is optional. If not specified, the global -cutoff is used.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, coeffiecients must be specified. -No default mixing rules are used.

-

This pair style does not support the pair_modify -shift, table, and tail options.

-

This pair style does not write its information to binary restart files.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-

This style is part of the ASPHERE package. It is only enabled if -LAMMPS was built with that package. See the Making LAMMPS section for more info.

-

Defining particles to be line segments so they participate in -line/line or line/particle interactions requires the use the -atom_style line command.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_list.html b/doc/pair_list.html deleted file mode 100644 index 90d4c7f69f..0000000000 --- a/doc/pair_list.html +++ /dev/null @@ -1,315 +0,0 @@ - - - - - - - - - - - pair_style list command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style list command

-
-

Syntax

-
pair_style list listfile cutoff keyword
-
-
-
    -
  • listfile = name of file with list of pairwise interactions
  • -
  • cutoff = global cutoff (distance units)
  • -
  • keyword = optional flag nocheck or check (default is check)
  • -
-
-
-

Examples

-
pair_style list restraints.txt 200.0
-pair_coeff * *
-
-
-
pair_style hybrid/overlay lj/cut 1.1225 list pair_list.txt 300.0
-pair_coeff * * lj/cut 1.0 1.0
-pair_coeff 3* 3* list
-
-
-
-
-

Description

-

Style list computes interactions between explicitly listed pairs of -atoms with the option to select functional form and parameters for -each individual pair. Because the parameters are set in the list -file, the pair_coeff command has no parameters (but still needs to be -provided). The check and nocheck keywords enable/disable a test -that checks whether all listed bonds were present and computed.

-

This pair style can be thought of as a hybrid between bonded, -non-bonded, and restraint interactions. It will typically be used as -an additional interaction within the hybrid/overlay pair style. It -currently supports three interaction styles: a 12-6 Lennard-Jones, a -Morse and a harmonic potential.

-

The format of the list file is as follows:

-
    -
  • one line per pair of atoms
  • -
  • empty lines will be ignored
  • -
  • comment text starts with a ‘#’ character
  • -
  • line syntax: ID1 ID2 style coeffs cutoff
  • -
-
ID1 = atom ID of first atom
-ID2 = atom ID of second atom
-style = style of interaction
-coeffs = list of coeffs
-cutoff = cutoff for interaction (optional)
-
-
-

The cutoff parameter is optional. If not specified, the global cutoff -is used.

-

Here is an example file:

-
# this is a comment
-
-
-
15 259 lj126     1.0 1.0      50.0
-15 603 morse    10.0 1.2 2.0  10.0 # and another comment
-18 470 harmonic 50.0 1.2       5.0
-
-
-

The style lj126 computes pairwise interactions with the formula

-_images/pair_lj.jpg -

and the coefficients:

-
    -
  • epsilon (energy units)
  • -
  • sigma (distance units)
  • -
-

The style morse computes pairwise interactions with the formula

-_images/pair_morse.jpg -

and the coefficients:

-
    -
  • D0 (energy units)
  • -
  • alpha (1/distance units)
  • -
  • r0 (distance units)
  • -
-

The style harmonic computes pairwise interactions with the formula

-_images/bond_harmonic.jpg -

and the coefficients:

-
    -
  • K (energy units)
  • -
  • r0 (distance units)
  • -
-

Note that the usual 1/2 factor is included in K.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

This pair style does not support mixing since all parameters are -explicit for each pair.

-

The pair_modify shift option is supported by this -pair style.

-

The pair_modify table and tail options are not -relevant for this pair style.

-

This pair style does not write its information to binary restart files, so pair_style and pair_coeff commands need -to be specified in an input script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-

This pair style does not use a neighbor list and instead identifies -atoms by their IDs. This has two consequences: 1) The cutoff has to be -chosen sufficiently large, so that the second atom of a pair has to be -a ghost atom on the same node on which the first atom is local; -otherwise the interaction will be skipped. You can use the check -option to detect, if interactions are missing. 2) Unlike other pair -styles in LAMMPS, an atom I will not interact with multiple images of -atom J (assuming the images are within the cutoff distance), but only -with the nearest image.

-

This style is part of the USER-MISC package. It is only enabled if -LAMMPS is build with that package. See the Making of LAMMPS section for more info.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_lj.html b/doc/pair_lj.html deleted file mode 100644 index b5211c032b..0000000000 --- a/doc/pair_lj.html +++ /dev/null @@ -1,549 +0,0 @@ - - - - - - - - - - - pair_style lj/cut command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style lj/cut command

-
-
-

pair_style lj/cut/cuda command

-
-
-

pair_style lj/cut/gpu command

-
-
-

pair_style lj/cut/intel command

-
-
-

pair_style lj/cut/kk command

-
-
-

pair_style lj/cut/opt command

-
-
-

pair_style lj/cut/omp command

-
-
-

pair_style lj/cut/coul/cut command

-
-
-

pair_style lj/cut/coul/cut/cuda command

-
-
-

pair_style lj/cut/coul/cut/gpu command

-
-
-

pair_style lj/cut/coul/cut/omp command

-
-
-

pair_style lj/cut/coul/debye command

-
-
-

pair_style lj/cut/coul/debye/cuda command

-
-
-

pair_style lj/cut/coul/debye/gpu command

-
-
-

pair_style lj/cut/coul/debye/kk command

-
-
-

pair_style lj/cut/coul/debye/omp command

-
-
-

pair_style lj/cut/coul/dsf command

-
-
-

pair_style lj/cut/coul/dsf/gpu command

-
-
-

pair_style lj/cut/coul/dsf/kk command

-
-
-

pair_style lj/cut/coul/dsf/omp command

-
-
-

pair_style lj/cut/coul/long command

-
-
-

pair_style lj/cut/coul/long/cs command

-
-
-

pair_style lj/cut/coul/long/cuda command

-
-
-

pair_style lj/cut/coul/long/gpu command

-
-
-

pair_style lj/cut/coul/long/intel command

-
-
-

pair_style lj/cut/coul/long/opt command

-
-
-

pair_style lj/cut/coul/long/omp command

-
-
-

pair_style lj/cut/coul/msm command

-
-
-

pair_style lj/cut/coul/msm/gpu command

-
-
-

pair_style lj/cut/coul/msm/omp command

-
-
-

pair_style lj/cut/tip4p/cut command

-
-
-

pair_style lj/cut/tip4p/cut/omp command

-
-
-

pair_style lj/cut/tip4p/long command

-
-
-

pair_style lj/cut/tip4p/long/omp command

-
-
-

pair_style lj/cut/tip4p/long/opt command

-
-

Syntax

-
pair_style style args
-
-
-
    -
  • style = lj/cut or lj/cut/coul/cut or lj/cut/coul/debye or lj/cut/coul/dsf or lj/cut/coul/long or lj/cut/coul/long/cs or lj/cut/coul/msm or lj/cut/tip4p/long
  • -
  • args = list of arguments for a particular style
  • -
-
-lj/cut args = cutoff
-  cutoff = global cutoff for Lennard Jones interactions (distance units)
-lj/cut/coul/cut args = cutoff (cutoff2)
-  cutoff = global cutoff for LJ (and Coulombic if only 1 arg) (distance units)
-  cutoff2 = global cutoff for Coulombic (optional) (distance units)
-lj/cut/coul/debye args = kappa cutoff (cutoff2)
-  kappa = inverse of the Debye length (inverse distance units)
-  cutoff = global cutoff for LJ (and Coulombic if only 1 arg) (distance units)
-  cutoff2 = global cutoff for Coulombic (optional) (distance units)
-lj/cut/coul/dsf args = alpha cutoff (cutoff2)
-  alpha = damping parameter (inverse distance units)
-  cutoff = global cutoff for LJ (and Coulombic if only 1 arg) (distance units)
-  cutoff2 = global cutoff for Coulombic (distance units)
-lj/cut/coul/long args = cutoff (cutoff2)
-  cutoff = global cutoff for LJ (and Coulombic if only 1 arg) (distance units)
-  cutoff2 = global cutoff for Coulombic (optional) (distance units)
-lj/cut/coul/msm args = cutoff (cutoff2)
-  cutoff = global cutoff for LJ (and Coulombic if only 1 arg) (distance units)
-  cutoff2 = global cutoff for Coulombic (optional) (distance units)
-lj/cut/tip4p/cut args = otype htype btype atype qdist cutoff (cutoff2)
-  otype,htype = atom types for TIP4P O and H
-  btype,atype = bond and angle types for TIP4P waters
-  qdist = distance from O atom to massless charge (distance units)
-  cutoff = global cutoff for LJ (and Coulombic if only 1 arg) (distance units)
-  cutoff2 = global cutoff for Coulombic (optional) (distance units)
-lj/cut/tip4p/long args = otype htype btype atype qdist cutoff (cutoff2)
-  otype,htype = atom types for TIP4P O and H
-  btype,atype = bond and angle types for TIP4P waters
-  qdist = distance from O atom to massless charge (distance units)
-  cutoff = global cutoff for LJ (and Coulombic if only 1 arg) (distance units)
-  cutoff2 = global cutoff for Coulombic (optional) (distance units)
-
-
-
-

Examples

-
pair_style lj/cut 2.5
-pair_coeff * * 1 1
-pair_coeff 1 1 1 1.1 2.8
-
-
-
pair_style lj/cut/coul/cut 10.0
-pair_style lj/cut/coul/cut 10.0 8.0
-pair_coeff * * 100.0 3.0
-pair_coeff 1 1 100.0 3.5 9.0
-pair_coeff 1 1 100.0 3.5 9.0 9.0
-
-
-
pair_style lj/cut/coul/debye 1.5 3.0
-pair_style lj/cut/coul/debye 1.5 2.5 5.0
-pair_coeff * * 1.0 1.0
-pair_coeff 1 1 1.0 1.5 2.5
-pair_coeff 1 1 1.0 1.5 2.5 5.0
-
-
-
pair_style lj/cut/coul/dsf 0.05 2.5 10.0
-pair_coeff * * 1.0 1.0
-pair_coeff 1 1 1.0 1.0 2.5
-
-
-
pair_style lj/cut/coul/long 10.0
-pair_style lj/cut/coul/long/cs 10.0
-pair_style lj/cut/coul/long 10.0 8.0
-pair_style lj/cut/coul/long/cs 10.0 8.0
-pair_coeff * * 100.0 3.0
-pair_coeff 1 1 100.0 3.5 9.0
-
-
-
pair_style lj/cut/coul/msm 10.0
-pair_style lj/cut/coul/msm 10.0 8.0
-pair_coeff * * 100.0 3.0
-pair_coeff 1 1 100.0 3.5 9.0
-
-
-
pair_style lj/cut/tip4p/cut 1 2 7 8 0.15 12.0
-pair_style lj/cut/tip4p/cut 1 2 7 8 0.15 12.0 10.0
-pair_coeff * * 100.0 3.0
-pair_coeff 1 1 100.0 3.5 9.0
-
-
-
pair_style lj/cut/tip4p/long 1 2 7 8 0.15 12.0
-pair_style lj/cut/tip4p/long 1 2 7 8 0.15 12.0 10.0
-pair_coeff * * 100.0 3.0
-pair_coeff 1 1 100.0 3.5 9.0
-
-
-
-
-

Description

-

The lj/cut styles compute the standard 12/6 Lennard-Jones potential, -given by

-_images/pair_lj.jpg -

Rc is the cutoff.

-

Style lj/cut/coul/cut adds a Coulombic pairwise interaction given by

-_images/pair_coulomb.jpg -

where C is an energy-conversion constant, Qi and Qj are the charges on -the 2 atoms, and epsilon is the dielectric constant which can be set -by the dielectric command. If one cutoff is -specified in the pair_style command, it is used for both the LJ and -Coulombic terms. If two cutoffs are specified, they are used as -cutoffs for the LJ and Coulombic terms respectively.

-

Style lj/cut/coul/debye adds an additional exp() damping factor -to the Coulombic term, given by

-_images/pair_debye.jpg -

where kappa is the inverse of the Debye length. This potential is -another way to mimic the screening effect of a polar solvent.

-

Style lj/cut/coul/dsf computes the Coulombic term via the damped -shifted force model described in Fennell, given by:

-_images/pair_coul_dsf.jpg -

where alpha is the damping parameter and erfc() is the complementary -error-function. This potential is essentially a short-range, -spherically-truncated, charge-neutralized, shifted, pairwise 1/r -summation. The potential is based on Wolf summation, proposed as an -alternative to Ewald summation for condensed phase systems where -charge screening causes electrostatic interactions to become -effectively short-ranged. In order for the electrostatic sum to be -absolutely convergent, charge neutralization within the cutoff radius -is enforced by shifting the potential through placement of image -charges on the cutoff sphere. Convergence can often be improved by -setting alpha to a small non-zero value.

-

Styles lj/cut/coul/long and lj/cut/coul/msm compute the same -Coulombic interactions as style lj/cut/coul/cut except that an -additional damping factor is applied to the Coulombic term so it can -be used in conjunction with the kspace_style -command and its ewald or pppm option. The Coulombic cutoff -specified for this style means that pairwise interactions within this -distance are computed directly; interactions outside that distance are -computed in reciprocal space.

-

Style lj/cut/coul/long/cs is identical to lj/cut/coul/long except -that a term is added for the core/shell model to allow charges on core and shell -particles to be separated by r = 0.0.

-

Styles lj/cut/tip4p/cut and lj/cut/tip4p/long implement the TIP4P -water model of (Jorgensen), which introduces a massless -site located a short distance away from the oxygen atom along the -bisector of the HOH angle. The atomic types of the oxygen and -hydrogen atoms, the bond and angle types for OH and HOH interactions, -and the distance to the massless charge site are specified as -pair_style arguments. Style lj/cut/tip4p/cut uses a cutoff for -Coulomb interactions; style lj/cut/tip4p/long is for use with a -long-range Coulombic solver (Ewald or PPPM).

-
-

Note

-

For each TIP4P water molecule in your system, the atom IDs for -the O and 2 H atoms must be consecutive, with the O atom first. This -is to enable LAMMPS to “find” the 2 H atoms associated with each O -atom. For example, if the atom ID of an O atom in a TIP4P water -molecule is 500, then its 2 H atoms must have IDs 501 and 502.

-
-

See the howto section for more -information on how to use the TIP4P pair styles and lists of -parameters to set. Note that the neighobr list cutoff for Coulomb -interactions is effectively extended by a distance 2*qdist when using -the TIP4P pair style, to account for the offset distance of the -fictitious charges on O atoms in water molecules. Thus it is -typically best in an efficiency sense to use a LJ cutoff >= Coulomb -cutoff + 2*qdist, to shrink the size of the neighbor list. This leads -to slightly larger cost for the long-range calculation, so you can -test the trade-off for your model.

-

For all of the lj/cut pair styles, the following coefficients must -be defined for each pair of atoms types via the -pair_coeff command as in the examples above, or in -the data file or restart files read by the read_data -or read_restart commands, or by mixing as -described below:

-
    -
  • epsilon (energy units)
  • -
  • sigma (distance units)
  • -
  • cutoff1 (distance units)
  • -
  • cutoff2 (distance units)
  • -
-

Note that sigma is defined in the LJ formula as the zero-crossing -distance for the potential, not as the energy minimum at 2^(1/6) -sigma.

-

The latter 2 coefficients are optional. If not specified, the global -LJ and Coulombic cutoffs specified in the pair_style command are used. -If only one cutoff is specified, it is used as the cutoff for both LJ -and Coulombic interactions for this type pair. If both coefficients -are specified, they are used as the LJ and Coulombic cutoffs for this -type pair. You cannot specify 2 cutoffs for style lj/cut, since it -has no Coulombic terms.

-

For lj/cut/coul/long and lj/cut/coul/msm and lj/cut/tip4p/cut -and lj/cut/tip4p/long only the LJ cutoff can be specified since a -Coulombic cutoff cannot be specified for an individual I,J type pair. -All type pairs use the same global Coulombic cutoff specified in the -pair_style command.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, the epsilon and sigma coefficients -and cutoff distance for all of the lj/cut pair styles can be mixed. -The default mix value is geometric. See the “pair_modify” command -for details.

-

All of the lj/cut pair styles support the -pair_modify shift option for the energy of the -Lennard-Jones portion of the pair interaction.

-

The lj/cut/coul/long and lj/cut/tip4p/long pair styles support the -pair_modify table option since they can tabulate -the short-range portion of the long-range Coulombic interaction.

-

All of the lj/cut pair styles support the -pair_modify tail option for adding a long-range -tail correction to the energy and pressure for the Lennard-Jones -portion of the pair interaction.

-

All of the lj/cut pair styles write their information to binary restart files, so pair_style and pair_coeff commands do -not need to be specified in an input script that reads a restart file.

-

The lj/cut and lj/cut/coul/long pair styles support the use of the -inner, middle, and outer keywords of the run_style respa command, meaning the pairwise forces can be -partitioned by distance at different levels of the rRESPA hierarchy. -The other styles only support the pair keyword of run_style respa. -See the run_style command for details.

-
-
-
-

Restrictions

-

The lj/cut/coul/long and lj/cut/tip4p/long styles are part of the -KSPACE package. The lj/cut/tip4p/cut style is part of the MOLECULE -package. These styles are only enabled if LAMMPS was built with those -packages. See the Making LAMMPS section -for more info. Note that the KSPACE and MOLECULE packages are -installed by default.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_lj96.html b/doc/pair_lj96.html deleted file mode 100644 index e3d77b7443..0000000000 --- a/doc/pair_lj96.html +++ /dev/null @@ -1,285 +0,0 @@ - - - - - - - - - - - pair_style lj96/cut command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style lj96/cut command

-
-
-

pair_style lj96/cut/cuda command

-
-
-

pair_style lj96/cut/gpu command

-
-
-

pair_style lj96/cut/omp command

-
-

Syntax

-
pair_style lj96/cut cutoff
-
-
-
    -
  • cutoff = global cutoff for lj96/cut interactions (distance units)
  • -
-
-
-

Examples

-
pair_style lj96/cut 2.5
-pair_coeff * * 1.0 1.0 4.0
-pair_coeff 1 1 1.0 1.0
-
-
-
-
-

Description

-

The lj96/cut style compute a 9/6 Lennard-Jones potential, instead -of the standard 12/6 potential, given by

-_images/pair_lj96.jpg -

Rc is the cutoff.

-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above, or in the data file or restart files read by the -read_data or read_restart -commands, or by mixing as described below:

-
    -
  • epsilon (energy units)
  • -
  • sigma (distance units)
  • -
  • cutoff (distance units)
  • -
-

The last coefficient is optional. If not specified, the global LJ -cutoff specified in the pair_style command is used.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, the epsilon and sigma coefficients -and cutoff distance for all of the lj/cut pair styles can be mixed. -The default mix value is geometric. See the “pair_modify” command -for details.

-

This pair style supports the pair_modify shift -option for the energy of the pair interaction.

-

The pair_modify table option is not relevant -for this pair style.

-

This pair style supports the pair_modify tail -option for adding a long-range tail correction to the energy and -pressure of the pair interaction.

-

This pair style writes its information to binary restart files, so pair_style and pair_coeff commands do not need -to be specified in an input script that reads a restart file.

-

This pair style supports the use of the inner, middle, and outer -keywords of the run_style respa command, meaning the -pairwise forces can be partitioned by distance at different levels of -the rRESPA hierarchy. See the run_style command for -details.

-
-
-
-

Restrictions

-
-
none
-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_lj_cubic.html b/doc/pair_lj_cubic.html deleted file mode 100644 index c4a7ca82e8..0000000000 --- a/doc/pair_lj_cubic.html +++ /dev/null @@ -1,298 +0,0 @@ - - - - - - - - - - - pair_style lj/cubic command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style lj/cubic command

-
-
-

pair_style lj/cubic/gpu command

-
-
-

pair_style lj/cubic/omp command

-
-

Syntax

-
pair_style lj/cubic
-
-
-
-
-

Examples

-
pair_style lj/cubic
-pair_coeff * * 1.0 0.8908987
-
-
-
-
-

Description

-

The lj/cubic style computes a truncated LJ interaction potential -whose energy and force are continuous everywhere. Inside the -inflection point the interaction is identical to the standard 12/6 -Lennard-Jones potential. The LJ function outside the -inflection point is replaced with a cubic function of distance. The -energy, force, and second derivative are continuous at the inflection -point. The cubic coefficient A3 is chosen so that both energy and -force go to zero at the cutoff distance. Outside the cutoff distance -the energy and force are zero.

-_images/pair_lj_cubic.jpg -

The location of the inflection point rs is defined -by the LJ diameter, rs/sigma = (26/7)^1/6. The cutoff distance -is defined by rc/rs = 67/48 or rc/sigma = 1.737.... -The analytic expression for the -the cubic coefficient -A3*rmin^3/epsilon = 27.93... is given in the paper by -Holian and Ravelo (Holian).

-

This potential is commonly used to study the shock mechanics of FCC -solids, as in Ravelo et al. (Ravelo).

-

The following coefficients must be defined for each pair of atom types -via the pair_coeff command as in the example above, -or in the data file or restart files read by the -read_data or read_restart -commands, or by mixing as described below:

-
    -
  • epsilon (energy units)
  • -
  • sigma (distance units)
  • -
-

Note that sigma is defined in the LJ formula as the zero-crossing -distance for the potential, not as the energy minimum, which is -located at rmin = 2^(1/6)*sigma. In the above example, sigma = -0.8908987, so rmin = 1.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, the epsilon and sigma coefficients -and cutoff distance for all of the lj/cut pair styles can be mixed. -The default mix value is geometric. See the “pair_modify” command -for details.

-

The lj/cubic pair style does not support the -pair_modify shift option, -since pair interaction is already smoothed to 0.0 at the -cutoff.

-

The pair_modify table option is not relevant -for this pair style.

-

The lj/cubic pair style does not support the -pair_modify tail option for adding long-range tail -corrections to energy and pressure, since there are no corrections for -a potential that goes to 0.0 at the cutoff.

-

The lj/cubic pair style writes its information to binary restart files, so pair_style and pair_coeff commands do -not need to be specified in an input script that reads a restart file.

-

The lj/cubic pair style can only be used via the pair -keyword of the run_style respa command. It does not -support the inner, middle, outer keywords.

-
-
-
-

Restrictions

-
-
none
-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_lj_cut_smooth.html b/doc/pair_lj_cut_smooth.html deleted file mode 100644 index 1430313a80..0000000000 --- a/doc/pair_lj_cut_smooth.html +++ /dev/null @@ -1,111 +0,0 @@ - -
LAMMPS WWW Site - LAMMPS Documentation - LAMMPS Commands -
- - - - - - -
- -

pair_style lj/cut/smooth command -

-

pair_style lj/cut/smooth/cuda command -

-

pair_style lj/cut/smooth/omp command -

-

Syntax: -

-
pair_style lj/cut/smooth Rc 
-
- -

Examples: -

-
pair_style lj/cut/smooth 5.456108274435118
-pair_coeff * * 0.7242785984051078 2.598146797350056
-pair_coeff 1 1 20.0 1.3 9.0 
-
-

Description: -

-

Style lj/cut/smooth computes a LJ interaction that combines the standard -12/6 Lennard-Jones function and subtracts a linear term that includes a -cutoff distance Rc. -

-
-
-

At the cutoff Rc, the energy and force (its 1st derivative) will be 0.0. -

-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above, or in the data file or restart files read by the -read_data or read_restart -commands, or by mixing as described below: -

- -

If not specified, the global value for Rc is used. -

-
- -

Styles with a cuda, gpu, omp, or opt suffix are functionally -the same as the corresponding style without the suffix. They have -been optimized to run faster, depending on your available hardware, as -discussed in Section_accelerate of the -manual. The accelerated styles take the same arguments and should -produce the same results, except for round-off and precision issues. -

-

These accelerated styles are part of the USER-CUDA, GPU, USER-OMP and OPT -packages, respectively. They are only enabled if LAMMPS was built with -those packages. See the Making LAMMPS -section for more info. -

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line -switch when you invoke LAMMPS, or you can -use the suffix command in your input script. -

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively. -

-
- -

Mixing, shift, table, tail correction, restart, rRESPA info: -

-

For atom type pairs I,J and I != J, the epsilon and sigma coefficients and -cutoff distance can be mixed. The default mix value is geometric. -See the "pair_modify" command for details. -

-

This pair style does not support the pair_modify shift -option for the energy of the pair interaction. -

-

The pair_modify table option is not relevant -for this pair style. -

-

This pair style does not support the pair_modify -tail option for adding long-range tail corrections to energy and -pressure, since the energy of the pair interaction is smoothed to 0.0 -at the cutoff. -

-

This pair style writes its information to binary restart -files, so pair_style and pair_coeff commands do not need -to be specified in an input script that reads a restart file. -

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords. -

-
- -

Restrictions: none -

-

Related commands: -

-

pair_coeff -

-

Default: none -

- diff --git a/doc/pair_lj_expand.html b/doc/pair_lj_expand.html deleted file mode 100644 index 4948651f96..0000000000 --- a/doc/pair_lj_expand.html +++ /dev/null @@ -1,289 +0,0 @@ - - - - - - - - - - - pair_style lj/expand command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style lj/expand command

-
-
-

pair_style lj/expand/cuda command

-
-
-

pair_style lj/expand/gpu command

-
-
-

pair_style lj/expand/omp command

-
-

Syntax

-
pair_style lj/expand cutoff
-
-
-
    -
  • cutoff = global cutoff for lj/expand interactions (distance units)
  • -
-
-
-

Examples

-
pair_style lj/expand 2.5
-pair_coeff * * 1.0 1.0 0.5
-pair_coeff 1 1 1.0 1.0 -0.2 2.0
-
-
-
-
-

Description

-

Style lj/expand computes a LJ interaction with a distance shifted by -delta which can be useful when particles are of different sizes, since -it is different that using different sigma values in a standard LJ -formula:

-_images/pair_lj_expand.jpg -

Rc is the cutoff which does not include the delta distance. I.e. the -actual force cutoff is the sum of cutoff + delta.

-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above, or in the data file or restart files read by the -read_data or read_restart -commands, or by mixing as described below:

-
    -
  • epsilon (energy units)
  • -
  • sigma (distance units)
  • -
  • delta (distance units)
  • -
  • cutoff (distance units)
  • -
-

The delta values can be positive or negative. The last coefficient is -optional. If not specified, the global LJ cutoff is used.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, the epsilon, sigma, and shift -coefficients and cutoff distance for this pair style can be mixed. -Shift is always mixed via an arithmetic rule. The other -coefficients are mixed according to the pair_modify mix value. The -default mix value is geometric. See the “pair_modify” command for -details.

-

This pair style supports the pair_modify shift -option for the energy of the pair interaction.

-

The pair_modify table option is not relevant -for this pair style.

-

This pair style supports the pair_modify tail -option for adding a long-range tail correction to the energy and -pressure of the pair interaction.

-

This pair style writes its information to binary restart files, so pair_style and pair_coeff commands do not need -to be specified in an input script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-
-
none
-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_lj_long.html b/doc/pair_lj_long.html deleted file mode 100644 index 02908e53a8..0000000000 --- a/doc/pair_lj_long.html +++ /dev/null @@ -1,391 +0,0 @@ - - - - - - - - - - - pair_style lj/long/coul/long command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style lj/long/coul/long command

-
-
-

pair_style lj/long/coul/long/omp command

-
-
-

pair_style lj/long/coul/long/opt command

-
-
-

pair_style lj/long/tip4p/long command

-
-

Syntax

-
pair_style style args
-
-
-
    -
  • style = lj/long/coul/long or lj/long/tip4p/long
  • -
  • args = list of arguments for a particular style
  • -
-
-lj/long/coul/long args = flag_lj flag_coul cutoff (cutoff2)
-  flag_lj = long or cut or off
-    long = use Kspace long-range summation for dispersion 1/r^6 term
-    cut = use a cutoff on dispersion 1/r^6 term
-    off = omit disperion 1/r^6 term entirely
-  flag_coul = long or off
-    long = use Kspace long-range summation for Coulombic 1/r term
-    off = omit Coulombic term
-  cutoff = global cutoff for LJ (and Coulombic if only 1 arg) (distance units)
-  cutoff2 = global cutoff for Coulombic (optional) (distance units)
-lj/long/tip4p/long args = flag_lj flag_coul otype htype btype atype qdist cutoff (cutoff2)
-  flag_lj = long or cut
-    long = use Kspace long-range summation for dispersion 1/r^6 term
-    cut = use a cutoff
-  flag_coul = long or off
-    long = use Kspace long-range summation for Coulombic 1/r term
-    off = omit Coulombic term
-  otype,htype = atom types for TIP4P O and H
-  btype,atype = bond and angle types for TIP4P waters
-  qdist = distance from O atom to massless charge (distance units)
-  cutoff = global cutoff for LJ (and Coulombic if only 1 arg) (distance units)
-  cutoff2 = global cutoff for Coulombic (optional) (distance units)
-
-
-
-

Examples

-
pair_style lj/long/coul/long cut off 2.5
-pair_style lj/long/coul/long cut long 2.5 4.0
-pair_style lj/long/coul/long long long 2.5 4.0
-pair_coeff * * 1 1
-pair_coeff 1 1 1 3 4
-
-
-
pair_style lj/long/tip4p/long long long 1 2 7 8 0.15 12.0
-pair_style lj/long/tip4p/long long long 1 2 7 8 0.15 12.0 10.0
-pair_coeff * * 100.0 3.0
-pair_coeff 1 1 100.0 3.5 9.0
-
-
-
-
-

Description

-

Style lj/long/coul/long computes the standard 12/6 Lennard-Jones and -Coulombic potentials, given by

-_images/pair_lj.jpg -_images/pair_coulomb.jpg -

where C is an energy-conversion constant, Qi and Qj are the charges on -the 2 atoms, epsilon is the dielectric constant which can be set by -the dielectric command, and Rc is the cutoff. If -one cutoff is specified in the pair_style command, it is used for both -the LJ and Coulombic terms. If two cutoffs are specified, they are -used as cutoffs for the LJ and Coulombic terms respectively.

-

The purpose of this pair style is to capture long-range interactions -resulting from both attractive 1/r^6 Lennard-Jones and Coulombic 1/r -interactions. This is done by use of the flag_lj and flag_coul -settings. The In ‘t Veld paper has more details on when it is -appropriate to include long-range 1/r^6 interactions, using this -potential.

-

Style lj/long/tip4p/long implements the TIP4P water model of -(Jorgensen), which introduces a massless site located a -short distance away from the oxygen atom along the bisector of the HOH -angle. The atomic types of the oxygen and hydrogen atoms, the bond -and angle types for OH and HOH interactions, and the distance to the -massless charge site are specified as pair_style arguments.

-
-

Note

-

For each TIP4P water molecule in your system, the atom IDs for -the O and 2 H atoms must be consecutive, with the O atom first. This -is to enable LAMMPS to “find” the 2 H atoms associated with each O -atom. For example, if the atom ID of an O atom in a TIP4P water -molecule is 500, then its 2 H atoms must have IDs 501 and 502.

-
-

See the howto section for more -information on how to use the TIP4P pair style. Note that the -neighobr list cutoff for Coulomb interactions is effectively extended -by a distance 2*qdist when using the TIP4P pair style, to account for -the offset distance of the fictitious charges on O atoms in water -molecules. Thus it is typically best in an efficiency sense to use a -LJ cutoff >= Coulomb cutoff + 2*qdist, to shrink the size of the -neighbor list. This leads to slightly larger cost for the long-range -calculation, so you can test the trade-off for your model.

-

If flag_lj is set to long, no cutoff is used on the LJ 1/r^6 -dispersion term. The long-range portion can be calculated by using -the kspace_style ewald/disp or pppm/disp commands. -The specified LJ cutoff then determines which portion of the LJ -interactions are computed directly by the pair potential versus which -part is computed in reciprocal space via the Kspace style. If -flag_lj is set to cut, the LJ interactions are simply cutoff, as -with pair_style lj/cut.

-

If flag_coul is set to long, no cutoff is used on the Coulombic -interactions. The long-range portion can calculated by using any of -several kspace_style command options such as -pppm or ewald. Note that if flag_lj is also set to long, then -the ewald/disp or pppm/disp Kspace style needs to be used to -perform the long-range calculations for both the LJ and Coulombic -interactions. If flag_coul is set to off, Coulombic interactions -are not computed.

-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above, or in the data file or restart files read by the -read_data or read_restart -commands, or by mixing as described below:

-
    -
  • epsilon (energy units)
  • -
  • sigma (distance units)
  • -
  • cutoff1 (distance units)
  • -
  • cutoff2 (distance units)
  • -
-

Note that sigma is defined in the LJ formula as the zero-crossing -distance for the potential, not as the energy minimum at 2^(1/6) -sigma.

-

The latter 2 coefficients are optional. If not specified, the global -LJ and Coulombic cutoffs specified in the pair_style command are used. -If only one cutoff is specified, it is used as the cutoff for both LJ -and Coulombic interactions for this type pair. If both coefficients -are specified, they are used as the LJ and Coulombic cutoffs for this -type pair.

-

Note that if you are using flag_lj set to long, you -cannot specify a LJ cutoff for an atom type pair, since only one -global LJ cutoff is allowed. Similarly, if you are using flag_coul -set to long, you cannot specify a Coulombic cutoff for an atom type -pair, since only one global Coulombic cutoff is allowed.

-

For lj/long/tip4p/long only the LJ cutoff can be specified -since a Coulombic cutoff cannot be specified for an individual I,J -type pair. All type pairs use the same global Coulombic cutoff -specified in the pair_style command.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, the epsilon and sigma coefficients -and cutoff distance for all of the lj/long pair styles can be mixed. -The default mix value is geometric. See the “pair_modify” command -for details.

-

These pair styles support the pair_modify shift -option for the energy of the Lennard-Jones portion of the pair -interaction, assuming flag_lj is cut.

-

These pair styles support the pair_modify table and -table/disp options since they can tabulate the short-range portion of -the long-range Coulombic and dispersion interactions.

-

Thes pair styles do not support the pair_modify -tail option for adding a long-range tail correction to the -Lennard-Jones portion of the energy and pressure.

-

These pair styles write their information to binary restart files, so pair_style and pair_coeff commands do not need -to be specified in an input script that reads a restart file.

-

The pair lj/long/coul/long styles support the use of the inner, -middle, and outer keywords of the run_style respa -command, meaning the pairwise forces can be partitioned by distance at -different levels of the rRESPA hierarchy. See the -run_style command for details.

-
-
-
-

Restrictions

-

These styles are part of the KSPACE package. They are only enabled if -LAMMPS was built with that package. See the Making LAMMPS section for more info. Note that -the KSPACE package is installed by default.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_lj_sf.html b/doc/pair_lj_sf.html deleted file mode 100644 index 6cc2709815..0000000000 --- a/doc/pair_lj_sf.html +++ /dev/null @@ -1,281 +0,0 @@ - - - - - - - - - - - pair_style lj/sf command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style lj/sf command

-
-
-

pair_style lj/sf/omp command

-
-

Syntax

-
pair_style lj/sf cutoff
-
-
-
    -
  • cutoff = global cutoff for Lennard-Jones interactions (distance units)
  • -
-
-
-

Examples

-
pair_style lj/sf 2.5
-pair_coeff * * 1.0 1.0
-pair_coeff 1 1 1.0 1.0 3.0
-
-
-
-
-

Description

-

Style lj/sf computes a truncated and force-shifted LJ interaction -(Shifted Force Lennard-Jones), so that both the potential and the -force go continuously to zero at the cutoff (Toxvaerd):

-_images/pair_lj_sf.jpg -

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above, or in the data file or restart files read by the -read_data or read_restart -commands, or by mixing as described below:

-
    -
  • epsilon (energy units)
  • -
  • sigma (distance units)
  • -
  • cutoff (distance units)
  • -
-

The last coefficient is optional. If not specified, the global -LJ cutoff specified in the pair_style command is used.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, the epsilon and sigma -coefficients and cutoff distance for this pair style can be mixed. -Rin is a cutoff value and is mixed like the cutoff. The -default mix value is geometric. See the “pair_modify” command for -details.

-

The pair_modify shift option is not relevant for -this pair style, since the pair interaction goes to 0.0 at the cutoff.

-

The pair_modify table option is not relevant -for this pair style.

-

This pair style does not support the pair_modify -tail option for adding long-range tail corrections to energy and -pressure, since the energy of the pair interaction is smoothed to 0.0 -at the cutoff.

-

This pair style writes its information to binary restart files, so pair_style and pair_coeff commands do not need -to be specified in an input script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-

This pair style is part of the USER-MISC package. It is only enabled -if LAMMPS was built with that package. See the Making LAMMPS section for more info.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_lj_smooth.html b/doc/pair_lj_smooth.html deleted file mode 100644 index d91e72b377..0000000000 --- a/doc/pair_lj_smooth.html +++ /dev/null @@ -1,298 +0,0 @@ - - - - - - - - - - - pair_style lj/smooth command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style lj/smooth command

-
-
-

pair_style lj/smooth/cuda command

-
-
-

pair_style lj/smooth/omp command

-
-

Syntax

-
pair_style lj/smooth Rin Rc
-
-
-
    -
  • Rin = inner cutoff beyond which force smoothing will be applied (distance units)
  • -
  • Rc = outer cutoff for lj/smooth interactions (distance units)
  • -
-
-
-

Examples

-
pair_style lj/smooth 8.0 10.0
-pair_coeff * * 10.0 1.5
-pair_coeff 1 1 20.0 1.3 7.0 9.0
-
-
-
-
-

Description

-

Style lj/smooth computes a LJ interaction with a force smoothing -applied between the inner and outer cutoff.

-_images/pair_lj_smooth.jpg -

The polynomial coefficients C1, C2, C3, C4 are computed by LAMMPS to -cause the force to vary smoothly from the inner cutoff Rin to the -outer cutoff Rc.

-

At the inner cutoff the force and its 1st derivative -will match the unsmoothed LJ formula. At the outer cutoff the force -and its 1st derivative will be 0.0. The inner cutoff cannot be 0.0.

-
-

Note

-

this force smoothing causes the energy to be discontinuous both -in its values and 1st derivative. This can lead to poor energy -conservation and may require the use of a thermostat. Plot the energy -and force resulting from this formula via the -pair_write command to see the effect.

-
-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above, or in the data file or restart files read by the -read_data or read_restart -commands, or by mixing as described below:

-
    -
  • epsilon (energy units)
  • -
  • sigma (distance units)
  • -
  • innner (distance units)
  • -
  • outer (distance units)
  • -
-

The last 2 coefficients are optional inner and outer cutoffs. If not -specified, the global values for Rin and Rc are used.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, the epsilon, sigma, Rin -coefficients and the cutoff distance for this pair style can be mixed. -Rin is a cutoff value and is mixed like the cutoff. The other -coefficients are mixed according to the pair_modify mix option. The -default mix value is geometric. See the “pair_modify” command for -details.

-

This pair style supports the pair_modify shift -option for the energy of the pair interaction.

-

The pair_modify table option is not relevant -for this pair style.

-

This pair style does not support the pair_modify -tail option for adding long-range tail corrections to energy and -pressure, since the energy of the pair interaction is smoothed to 0.0 -at the cutoff.

-

This pair style writes its information to binary restart files, so pair_style and pair_coeff commands do not need -to be specified in an input script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-
-
none
-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_lj_smooth_linear.html b/doc/pair_lj_smooth_linear.html deleted file mode 100644 index 9d1b6610cc..0000000000 --- a/doc/pair_lj_smooth_linear.html +++ /dev/null @@ -1,278 +0,0 @@ - - - - - - - - - - - pair_style lj/smooth/linear command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style lj/smooth/linear command

-
-
-

pair_style lj/smooth/linear/omp command

-
-

Syntax

-
pair_style lj/smooth/linear Rc
-
-
-
    -
  • Rc = cutoff for lj/smooth/linear interactions (distance units)
  • -
-
-
-

Examples

-
pair_style lj/smooth/linear 5.456108274435118
-pair_coeff * * 0.7242785984051078 2.598146797350056
-pair_coeff 1 1 20.0 1.3 9.0
-
-
-
-
-

Description

-

Style lj/smooth/linear computes a LJ interaction that combines the -standard 12/6 Lennard-Jones function and subtracts a linear term that -includes the cutoff distance Rc, as in this formula:

-_images/pair_lj_smooth_linear.jpg -

At the cutoff Rc, the energy and force (its 1st derivative) will be 0.0.

-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above, or in the data file or restart files read by the -read_data or read_restart -commands, or by mixing as described below:

-
    -
  • epsilon (energy units)
  • -
  • sigma (distance units)
  • -
  • cutoff (distance units)
  • -
-

The last coefficient is optional. If not specified, the global value -for Rc is used.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, the epsilon and sigma coefficients -and cutoff distance can be mixed. The default mix value is geometric. -See the “pair_modify” command for details.

-

This pair style does not support the pair_modify -shift option for the energy of the pair interaction.

-

The pair_modify table option is not relevant for -this pair style.

-

This pair style does not support the pair_modify -tail option for adding long-range tail corrections to energy and -pressure, since the energy of the pair interaction is smoothed to 0.0 -at the cutoff.

-

This pair style writes its information to binary restart files, so pair_style and pair_coeff commands do not need -to be specified in an input script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-
-
none
-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_lj_soft.html b/doc/pair_lj_soft.html deleted file mode 100644 index 379ffb7ce0..0000000000 --- a/doc/pair_lj_soft.html +++ /dev/null @@ -1,471 +0,0 @@ - - - - - - - - - - - pair_style lj/cut/soft command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style lj/cut/soft command

-
-
-

pair_style lj/cut/soft/omp command

-
-
-

pair_style lj/cut/coul/cut/soft command

-
-
-

pair_style lj/cut/coul/cut/soft/omp command

-
-
-

pair_style lj/cut/coul/long/soft command

-
-
-

pair_style lj/cut/coul/long/soft/omp command

-
-
-

pair_style lj/cut/tip4p/long/soft command

-
-
-

pair_style lj/cut/tip4p/long/soft/omp command

-
-
-

pair_style lj/charmm/coul/long/soft command

-
-
-

pair_style lj/charmm/coul/long/soft/omp command

-
-
-

pair_style coul/cut/soft command

-
-
-

pair_style coul/cut/soft/omp command

-
-
-

pair_style coul/long/soft command

-
-
-

pair_style coul/long/soft/omp command

-
-
-

pair_style tip4p/long/soft command

-
-
-

pair_style tip4p/long/soft/omp command

-
-

Syntax

-
pair_style style args
-
-
-
    -
  • style = lj/cut/soft or lj/cut/coul/cut/soft or lj/cut/coul/long/soft or lj/cut/tip4p/long/soft or lj/charmm/coul/long/soft or coul/cut/soft or coul/long/soft or tip4p/long/soft
  • -
  • args = list of arguments for a particular style
  • -
-
-lj/cut/soft args = n alpha_lj cutoff
-  n, alpha_LJ = parameters of soft-core potential
-  cutoff = global cutoff for Lennard-Jones interactions (distance units)
-lj/cut/coul/cut/soft args = n alpha_LJ alpha_C cutoff (cutoff2)
-  n, alpha_LJ, alpha_C = parameters of soft-core potential
-  cutoff = global cutoff for LJ (and Coulombic if only 1 arg) (distance units)
-  cutoff2 = global cutoff for Coulombic (optional) (distance units)
-lj/cut/coul/long/soft args = n alpha_LJ alpha_C cutoff
-  n, alpha_LJ, alpha_C = parameters of the soft-core potential
-  cutoff = global cutoff for LJ (and Coulombic if only 1 arg) (distance units)
-  cutoff2 = global cutoff for Coulombic (optional) (distance units)
-lj/cut/tip4p/long/soft args = otype htype btype atype qdist n alpha_LJ alpha_C cutoff (cutoff2)
-  otype,htype = atom types for TIP4P O and H
-  btype,atype = bond and angle types for TIP4P waters
-  qdist = distance from O atom to massless charge (distance units)
-  n, alpha_LJ, alpha_C = parameters of the soft-core potential
-  cutoff = global cutoff for LJ (and Coulombic if only 1 arg) (distance units)
-  cutoff2 = global cutoff for Coulombic (optional) (distance units)
-lj/charmm/coul/long/soft args = n alpha_LJ alpha_C inner outer (cutoff)
-  n, alpha_LJ, alpha_C = parameters of the soft-core potential
-  inner, outer = global switching cutoffs for LJ (and Coulombic if only 5 args)
-  cutoff = global cutoff for Coulombic (optional, outer is Coulombic cutoff if only 5 args)
-coul/cut/soft args = n alpha_C cutoff
-  n, alpha_C = parameters of the soft-core potential
-  cutoff = global cutoff for Coulomb interactions (distance units)
-coul/long/soft args = n alpha_C cutoff
-  n, alpha_C = parameters of the soft-core potential
-  cutoff = global cutoff for Coulomb interactions (distance units)
-tip4p/long/soft args = otype htype btype atype qdist n alpha_C cutoff
-  otype,htype = atom types for TIP4P O and H
-  btype,atype = bond and angle types for TIP4P waters
-  qdist = distance from O atom to massless charge (distance units)
-  n, alpha_C = parameters of the soft-core potential
-  cutoff = global cutoff for Coulomb interactions (distance units)
-
-
-
-

Examples

-
pair_style lj/cut/soft 2.0 0.5 9.5
-pair_coeff * * 0.28 3.1 1.0
-pair_coeff 1 1 0.28 3.1 1.0 9.5
-
-
-
pair_style lj/cut/coul/cut/soft 2.0 0.5 10.0 9.5
-pair_style lj/cut/coul/cut/soft 2.0 0.5 10.0 9.5 9.5
-pair_coeff * * 0.28 3.1 1.0
-pair_coeff 1 1 0.28 3.1 0.5 10.0
-pair_coeff 1 1 0.28 3.1 0.5 10.0 9.5
-
-
-
pair_style lj/cut/coul/long/soft 2.0 0.5 10.0 9.5
-pair_style lj/cut/coul/long/soft 2.0 0.5 10.0 9.5 9.5
-pair_coeff * * 0.28 3.1 1.0
-pair_coeff 1 1 0.28 3.1 0.0 10.0
-pair_coeff 1 1 0.28 3.1 0.0 10.0 9.5
-
-
-
pair_style lj/cut/tip4p/long/soft 1 2 7 8 0.15 2.0 0.5 10.0 9.8
-pair_style lj/cut/tip4p/long/soft 1 2 7 8 0.15 2.0 0.5 10.0 9.8 9.5
-pair_coeff * * 0.155 3.1536 1.0
-pair_coeff 1 1 0.155 3.1536 1.0 9.5
-
-
-
pair_style lj/charmm/coul/long 2.0 0.5 10.0 8.0 10.0
-pair_style lj/charmm/coul/long 2.0 0.5 10.0 8.0 10.0 9.0
-pair_coeff * * 0.28 3.1 1.0
-pair_coeff 1 1 0.28 3.1 1.0 0.14 3.1
-
-
-
pair_style coul/long/soft 1.0 10.0 9.5
-pair_coeff * * 1.0
-pair_coeff 1 1 1.0 9.5
-
-
-
pair_style tip4p/long/soft 1 2 7 8 0.15 2.0 0.5 10.0 9.8
-pair_coeff * * 1.0
-pair_coeff 1 1 1.0 9.5
-
-
-
-
-

Description

-

The lj/cut/soft style and substyles compute the 12/6 Lennard-Jones -and Coulomb potential modified by a soft core, in order to avoid -singularities during free energy calculations when sites are created -or anihilated (Beutler),

-_images/pair_lj_soft.jpg -

Coulomb interactions are also damped with a soft core at short -distance,

-_images/pair_coul_soft.jpg -

In the Coulomb part C is an energy-conversion constant, q_i and q_j -are the charges on the 2 atoms, and epsilon is the dielectric constant -which can be set by the dielectric command.

-

The coefficient lambda is an activation parameter. When lambda = 1 the -pair potentiel is identical to a Lennard-Jones term or a Coulomb term -or a combination of both. When lambda = 0 the interactions are -deactivated. The transition between these two extrema is smoothed by a -soft repulsive core in order to avoid singularities in potential -energy and forces when sites are created or anihilated and can overlap -(Beutler).

-

The paratemers n, alpha_LJ and alpha_C are set in the -pair_style command, before the cutoffs. Usual -choices for the exponent are n = 2 or n = 1. For the remaining -coefficients alpha_LJ = 0.5 and alpha_C = 10 Angstrom^2 are -appropriate choices. Plots of the LJ and Coulomb terms are shown -below, for lambda ranging from 1 to 0 every 0.1.

-_images/lj_soft.jpg -_images/coul_soft.jpg -

For the lj/cut/coul/cut/soft or lj/cut/coul/long/soft pair styles, -the following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above, or in the data file or restart files read by the -read_data or read_restart -commands, or by mixing as described below:

-
    -
  • epsilon (energy units)
  • -
  • sigma (distance units)
  • -
  • lambda (activation parameter between 0 and 1)
  • -
  • cutoff1 (distance units)
  • -
  • cutoff2 (distance units)
  • -
-

The latter two coefficients are optional. If not specified, the global -LJ and Coulombic cutoffs specified in the pair_style command are used. -If only one cutoff is specified, it is used as the cutoff for both LJ -and Coulombic interactions for this type pair. If both coefficients -are specified, they are used as the LJ and Coulombic cutoffs for this -type pair. You cannot specify 2 cutoffs for style lj/cut/soft, -since it has no Coulombic terms. For the coul/cut/soft and -coul/long/soft only lambda and the optional cutoff2 are to be -specified.

-

Style lj/cut/tip4p/long/soft implements a soft-core version of the -TIP4P water model. The usage of this pair style is documented in the -pair_lj styles. The soft-core version introduces the -lambda parameter to the list of arguments, after epsilon and sigma in -the pair_coeff command. The paratemers n, alpha_LJ -and alpha_C are set in the pair_style command, -before the cutoffs.

-

Style lj/charmm/coul/long/soft implements a soft-core version of the -CHARMM version of LJ interactions with an additional switching -function S(r) that ramps the energy and force smoothly to zero between -an inner and outer cutoff. The usage of this pair style is documented -in the pair_charmm styles. The soft-core version -introduces the lambda parameter to the list of arguments, after -epsilon and sigma in the pair_coeff command (and -before the optional eps14 and sigma14). The paratemers n, -alpha_LJ and alpha_C are set in the pair_style -command, before the cutoffs.

-

The coul/cut/soft, coul/long/soft and tip4p/long/soft substyles -are designed to be combined with other pair potentials via the -pair_style hybrid/overlay command. This is because -they have no repulsive core. Hence, if used by themselves, there will -be no repulsion to keep two oppositely charged particles from -overlapping each other. In this case, if lambda = 1, a singularity may -occur. These substyles are suitable to represent charges embedded in -the Lennard-Jones radius of another site (for example hydrogen atoms -in several water models).

-

NOTES: When using the core-softed Coulomb potentials with long-range -solvers (coul/long/soft, lj/cut/coul/long/soft, etc.) in a free -energy calculation in which sites holding electrostatic charges are -being created or anihilated (using fix adapt/fep -and compute fep) it is important to adapt both the -lambda activation parameter (from 0 to 1, or the reverse) and the -value of the charge (from 0 to its final value, or the reverse). This -ensures that long-range electrostatic terms (kspace) are correct. It -is not necessary to use core-softed Coulomb potentials if the van der -Waals site is present during the free-energy route, thus avoiding -overlap of the charges. Examples are provided in the LAMMPS source -directory tree, under examples/USER/fep.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, tail correction, restart info:

-

For atom type pairs I,J and I != J, the epsilon and sigma coefficients -and cutoff distance for this pair style can be mixed. -The default mix value is geometric. See the “pair_modify” command -for details.

-

These pair styles support the pair_modify shift -option for the energy of the Lennard-Jones portion of the pair -interaction.

-

These pair styles support the pair_modify tail -option for adding a long-range tail correction to the energy and -pressure for the Lennard-Jones portion of the pair interaction.

-

These pair styles write information to binary restart files, so pair_style and pair_coeff commands do not need -to be specified in an input script that reads a restart file.

-
-
-
-

Restrictions

-

To avoid division by zero do not set sigma = 0; use the lambda -parameter instead to activate/deactivate interactions, or use -epsilon = 0 and sigma = 1. Alternatively, when sites do not -interact though the Lennard-Jones term the coul/long/soft or -similar substyle can be used via the -pair_style hybrid/overlay command.

-
-

All of the plain soft pair styles are part of the USER-FEP package. -The long styles also requires the KSPACE package to be installed. -They are only enabled if LAMMPS was built with those packages. See -the Making LAMMPS section for more info.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_lubricate.html b/doc/pair_lubricate.html deleted file mode 100644 index dec98e2f9f..0000000000 --- a/doc/pair_lubricate.html +++ /dev/null @@ -1,379 +0,0 @@ - - - - - - - - - - - pair_style lubricate command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style lubricate command

-
-
-

pair_style lubricate/omp command

-
-
-

pair_style lubricate/poly command

-
-
-

pair_style lubricate/poly/omp command

-
-

Syntax

-
pair_style style mu flaglog flagfld cutinner cutoff flagHI flagVF
-
-
-
    -
  • style = lubricate or lubricate/poly
  • -
  • mu = dynamic viscosity (dynamic viscosity units)
  • -
  • flaglog = 0/1 to exclude/include log terms in the lubrication approximation
  • -
  • flagfld = 0/1 to exclude/include Fast Lubrication Dynamics (FLD) effects
  • -
  • cutinner = inner cutoff distance (distance units)
  • -
  • cutoff = outer cutoff for interactions (distance units)
  • -
  • flagHI (optional) = 0/1 to exclude/include 1/r hydrodynamic interactions
  • -
  • flagVF (optional) = 0/1 to exclude/include volume fraction corrections in the long-range isotropic terms
  • -
-

Examples: (all assume radius = 1)

-
pair_style lubricate 1.5 1 1 2.01 2.5
-pair_coeff 1 1 2.05 2.8
-pair_coeff * *
-
-
-
pair_style lubricate 1.5 1 1 2.01 2.5
-pair_coeff * *
-variable mu equal ramp(1,2)
-fix 1 all adapt 1 pair lubricate mu * * v_mu
-
-
-
-
-

Description

-

Styles lubricate and lubricate/poly compute hydrodynamic -interactions between mono-disperse finite-size spherical particles in -a pairwise fashion. The interactions have 2 components. The first is -Ball-Melrose lubrication terms via the formulas in (Ball and Melrose)

-_images/pair_lubricate.jpg -

which represents the dissipation W between two nearby particles due to -their relative velocities in the presence of a background solvent with -viscosity mu. Note that this is dynamic viscosity which has units of -mass/distance/time, not kinematic viscosity.

-

The Asq (squeeze) term is the strongest and is included if flagHI is -set to 1 (default). It scales as 1/gap where gap is the separation -between the surfaces of the 2 particles. The Ash (shear) and Apu -(pump) terms are only included if flaglog is set to 1. They are the -next strongest interactions, and the only other singular interaction, -and scale as log(gap). Note that flaglog = 1 and flagHI = 0 is -invalid, and will result in a warning message, after which flagHI will -be set to 1. The Atw (twist) term is currently not included. It is -typically a very small contribution to the lubrication forces.

-

The flagHI and flagVF settings are optional. Neither should be -used, or both must be defined.

-

Cutinner sets the minimum center-to-center separation that will be -used in calculations irrespective of the actual separation. Cutoff -is the maximum center-to-center separation at which an interaction is -computed. Using a cutoff less than 3 radii is recommended if -flaglog is set to 1.

-

The other component is due to the Fast Lubrication Dynamics (FLD) -approximation, described in (Kumar), which can be -represented by the following equation

-_images/fld.jpg -

where U represents the velocities and angular velocities of the -particles, U^*infty* represents the velocity and the angular velocity -of the undisturbed fluid, and E^*infty* represents the rate of strain -tensor of the undisturbed fluid with viscosity mu. Again, note that -this is dynamic viscosity which has units of mass/distance/time, not -kinematic viscosity. Volume fraction corrections to R_FU are included -as long as flagVF is set to 1 (default).

-
-

Note

-

When using the FLD terms, these pair styles are designed to be -used with explicit time integration and a correspondingly small -timestep. Thus either fix nve/sphere or fix nve/asphere should be used for time integration. -To perform implicit FLD, see the pair_style lubricateU command.

-
-

Style lubricate requires monodisperse spherical particles; style -lubricate/poly allows for polydisperse spherical particles.

-

The viscosity mu can be varied in a time-dependent manner over the -course of a simluation, in which case in which case the pair_style -setting for mu will be overridden. See the fix adapt -command for details.

-

If the suspension is sheared via the fix deform -command then the pair style uses the shear rate to adjust the -hydrodynamic interactions accordingly. Volume changes due to fix -deform are accounted for when computing the volume fraction -corrections to R_FU.

-

When computing the volume fraction corrections to R_FU, the presence -of walls (whether moving or stationary) will affect the volume -fraction available to colloidal particles. This is currently accounted -for with the following types of walls: wall/lj93, -wall/lj126, wall/colloid, and -wall/harmonic. For these wall styles, the correct -volume fraction will be used when walls do not coincide with the box -boundary, as well as when walls move and thereby cause a change in the -volume fraction. Other wall styles will still work, but they will -result in the volume fraction being computed based on the box -boundaries.

-

Since lubrication forces are dissipative, it is usually desirable to -thermostat the system at a constant temperature. If Brownian motion -(at a constant temperature) is desired, it can be set using the -pair_style brownian command. These pair styles -and the brownian style should use consistent parameters for mu, -flaglog, flagfld, cutinner, cutoff, flagHI and flagVF.

-
-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above, or in the data file or restart files read by the -read_data or read_restart -commands, or by mixing as described below:

-
    -
  • cutinner (distance units)
  • -
  • cutoff (distance units)
  • -
-

The two coefficients are optional. If neither is specified, the two -cutoffs specified in the pair_style command are used. Otherwise both -must be specified.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in this section of -the manual. The accelerated styles take the same arguments and should -produce the same results, except for round-off and precision issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See this section of the manual for more -instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, the two cutoff distances for this -pair style can be mixed. The default mix value is geometric. See -the “pair_modify” command for details.

-

This pair style does not support the pair_modify -shift option for the energy of the pair interaction.

-

The pair_modify table option is not relevant -for this pair style.

-

This pair style does not support the pair_modify -tail option for adding long-range tail corrections to energy and -pressure.

-

This pair style writes its information to binary restart files, so pair_style and pair_coeff commands do not need -to be specified in an input script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-

These styles are part of the COLLOID package. They are only enabled -if LAMMPS was built with that package. See the Making LAMMPS section for more info.

-

Only spherical monodisperse particles are allowed for pair_style -lubricate.

-

Only spherical particles are allowed for pair_style lubricate/poly.

-

These pair styles will not restart exactly when using the -read_restart command, though they should provide -statistically similar results. This is because the forces they -compute depend on atom velocities. See the -read_restart command for more details.

-
- -
-

Default

-

The default settings for the optional args are flagHI = 1 and flagVF = -1.

-
-

(Ball) Ball and Melrose, Physica A, 247, 444-472 (1997).

-

(Kumar) Kumar and Higdon, Phys Rev E, 82, 051401 (2010). See also -his thesis for more details: A. Kumar, “Microscale Dynamics in -Suspensions of Non-spherical Particles”, Thesis, University of -Illinois Urbana-Champaign, -(2010). (https://www.ideals.illinois.edu/handle/2142/16032)

-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_lubricateU.html b/doc/pair_lubricateU.html deleted file mode 100644 index 43e79577f3..0000000000 --- a/doc/pair_lubricateU.html +++ /dev/null @@ -1,367 +0,0 @@ - - - - - - - - - - - pair_style lubricateU command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style lubricateU command

-
-
-

pair_style lubricateU/poly command

-
-

Syntax

-
pair_style style mu flaglog cutinner cutoff gdot flagHI flagVF
-
-
-
    -
  • style = lubricateU or lubricateU/poly
  • -
  • mu = dynamic viscosity (dynamic viscosity units)
  • -
  • flaglog = 0/1 to exclude/include log terms in the lubrication approximation
  • -
  • cutinner = inner cut off distance (distance units)
  • -
  • cutoff = outer cutoff for interactions (distance units)
  • -
  • gdot = shear rate (1/time units)
  • -
  • flagHI (optional) = 0/1 to exclude/include 1/r hydrodynamic interactions
  • -
  • flagVF (optional) = 0/1 to exclude/include volume fraction corrections in the long-range isotropic terms
  • -
-

Examples: (all assume radius = 1)

-
pair_style lubricateU 1.5 1 2.01 2.5 0.01 1 1
-pair_coeff 1 1 2.05 2.8
-pair_coeff * *
-
-
-
-
-

Description

-

Styles lubricateU and lubricateU/poly compute velocities and -angular velocities for finite-size spherical particles such that the -hydrodynamic interaction balances the force and torque due to all -other types of interactions.

-

The interactions have 2 components. The first is -Ball-Melrose lubrication terms via the formulas in (Ball and Melrose)

-_images/pair_lubricate.jpg -

which represents the dissipation W between two nearby particles due to -their relative velocities in the presence of a background solvent with -viscosity mu. Note that this is dynamic viscosity which has units of -mass/distance/time, not kinematic viscosity.

-

The Asq (squeeze) term is the strongest and is included as long as -flagHI is set to 1 (default). It scales as 1/gap where gap is the -separation between the surfaces of the 2 particles. The Ash (shear) -and Apu (pump) terms are only included if flaglog is set to 1. They -are the next strongest interactions, and the only other singular -interaction, and scale as log(gap). Note that flaglog = 1 and -flagHI = 0 is invalid, and will result in a warning message, after -which flagHI will be set to 1. The Atw (twist) term is currently not -included. It is typically a very small contribution to the lubrication -forces.

-

The flagHI and flagVF settings are optional. Neither should be -used, or both must be defined.

-

Cutinner sets the minimum center-to-center separation that will be -used in calculations irrespective of the actual separation. Cutoff -is the maximum center-to-center separation at which an interaction is -computed. Using a cutoff less than 3 radii is recommended if -flaglog is set to 1.

-

The other component is due to the Fast Lubrication Dynamics (FLD) -approximation, described in (Kumar). The equation being -solved to balance the forces and torques is

-_images/fld2.jpg -

where U represents the velocities and angular velocities of the -particles, U^*infty* represents the velocities and the angular -velocities of the undisturbed fluid, and E^*infty* represents the rate -of strain tensor of the undisturbed fluid flow with viscosity -mu. Again, note that this is dynamic viscosity which has units of -mass/distance/time, not kinematic viscosity. Volume fraction -corrections to R_FU are included if flagVF is set to 1 (default).

-

F*rest* represents the forces and torques due to all other types of -interactions, e.g. Brownian, electrostatic etc. Note that this -algorithm neglects the inertial terms, thereby removing the -restriction of resolving the small interial time scale, which may not -be of interest for colloidal particles. This pair style solves for -the velocity such that the hydrodynamic force balances all other types -of forces, thereby resulting in a net zero force (zero inertia limit). -When defining this pair style, it must be defined last so that when -this style is invoked all other types of forces have already been -computed. For the same reason, it won’t work if additional non-pair -styles are defined (such as bond or Kspace forces) as they are -calculated in LAMMPS after the pairwise interactions have been -computed.

-
-

Note

-

When using these styles, the these pair styles are designed to -be used with implicit time integration and a correspondingly larger -timestep. Thus either fix nve/noforce should -be used for spherical particles defined via atom_style sphere or fix nve/asphere/noforce should be used for -spherical particles defined via atom_style ellipsoid. This is because the velocity and angular -momentum of each particle is set by the pair style, and should not be -reset by the time integration fix.

-
-

Style lubricateU requires monodisperse spherical particles; style -lubricateU/poly allows for polydisperse spherical particles.

-

If the suspension is sheared via the fix deform -command then the pair style uses the shear rate to adjust the -hydrodynamic interactions accordingly. Volume changes due to fix -deform are accounted for when computing the volume fraction -corrections to R_FU.

-

When computing the volume fraction corrections to R_FU, the presence -of walls (whether moving or stationary) will affect the volume -fraction available to colloidal particles. This is currently accounted -for with the following types of walls: wall/lj93, -wall/lj126, wall/colloid, and -“wall/harmonic_fix_wall.html”. For these wall styles, the correct -volume fraction will be used when walls do not coincide with the box -boundary, as well as when walls move and thereby cause a change in the -volume fraction. To use these wall styles with pair_style lubricateU -or lubricateU/poly, the fld yes option must be specified in the -fix wall command.

-

Since lubrication forces are dissipative, it is usually desirable to -thermostat the system at a constant temperature. If Brownian motion -(at a constant temperature) is desired, it can be set using the -pair_style brownian command. These pair styles -and the brownian style should use consistent parameters for mu, -flaglog, flagfld, cutinner, cutoff, flagHI and flagVF.

-
-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above, or in the data file or restart files read by the -read_data or read_restart -commands, or by mixing as described below:

-
    -
  • cutinner (distance units)
  • -
  • cutoff (distance units)
  • -
-

The two coefficients are optional. If neither is specified, the two -cutoffs specified in the pair_style command are used. Otherwise both -must be specified.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, the two cutoff distances for this -pair style can be mixed. The default mix value is geometric. See -the “pair_modify” command for details.

-

This pair style does not support the pair_modify -shift option for the energy of the pair interaction.

-

The pair_modify table option is not relevant -for this pair style.

-

This pair style does not support the pair_modify -tail option for adding long-range tail corrections to energy and -pressure.

-

This pair style writes its information to binary restart files, so pair_style and pair_coeff commands do not need -to be specified in an input script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-

These styles are part of the COLLOID package. They are only enabled -if LAMMPS was built with that package. See the Making LAMMPS section for more info.

-

Currently, these pair styles assume that all other types of -forces/torques on the particles have been already been computed when -it is invoked. This requires this style to be defined as the last of -the pair styles, and that no fixes apply additional constraint forces. -One exception is the fix wall/colloid commands, which -has an “fld” option to apply their wall forces correctly.

-

Only spherical monodisperse particles are allowed for pair_style -lubricateU.

-

Only spherical particles are allowed for pair_style lubricateU/poly.

-

For sheared suspensions, it is assumed that the shearing is done in -the xy plane, with x being the velocity direction and y being the -velocity-gradient direction. In this case, one must use fix deform with the same rate of shear (erate).

-
- -
-

Default

-

The default settings for the optional args are flagHI = 1 and flagVF = -1.

-
-

(Ball) Ball and Melrose, Physica A, 247, 444-472 (1997).

-

(Kumar) Kumar and Higdon, Phys Rev E, 82, 051401 (2010).

-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_mdf.html b/doc/pair_mdf.html deleted file mode 100644 index 8ab58dea99..0000000000 --- a/doc/pair_mdf.html +++ /dev/null @@ -1,330 +0,0 @@ - - - - - - - - - - - pair_style lj/mdf command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style lj/mdf command

-
-
-

pair_style buck/mdf command

-
-
-

pair_style lennard/mdf command

-
-

Syntax

-
pair_style style args
-
-
-
    -
  • style = lj/mdf or buck/mdf or lennard/mdf
  • -
  • args = list of arguments for a particular style
  • -
-
-lj/mdf args = cutoff1 cutoff2
-  cutoff1 = inner cutoff for the start of the tapering function
-  cutoff1 = out cutoff for the end of the tapering function
-buck/mdf args = cutoff1 cutoff2
-  cutoff1 = inner cutoff for the start of the tapering function
-  cutoff1 = out cutoff for the end of the tapering function
-lennard/mdf args = cutoff1 cutoff2
-  cutoff1 = inner cutoff for the start of the tapering function
-  cutoff1 = out cutoff for the end of the tapering function
-
-
-
-

Examples

-
pair_style lj/mdf 2.5 3.0
-pair_coeff * * 1 1
-pair_coeff 1 1 1 1.1 2.8 3.0 3.2
-
-
-
pair_style buck 2.5 3.0
-pair_coeff * * 100.0 1.5 200.0
-pair_coeff * * 100.0 1.5 200.0 3.0 3.5
-
-
-
pair_style lennard/mdf 2.5 3.0
-pair_coeff * * 1 1
-pair_coeff 1 1 1 1.1 2.8 3.0 3.2
-
-
-
-
-

Description

-

The lj/mdf, buck/mdf and lennard/mdf compute the standard 12-6 -Lennard-Jones and Buckingham potential with the addition of a taper -function that ramps the energy and force smoothly to zero between an -inner and outer cutoff.

-_images/pair_mdf-1.jpg -

The tapering, f(r), is done by using the Mei, Davenport, Fernando -function (Mei).

-_images/pair_mdf-2.jpg -

where

-_images/pair_mdf-3.jpg -

Here r_m is the inner cutoff radius and r_cut is the outer cutoff -radius.

-
-

For the lj/mdf pair_style, the potential energy, E(r), is the -standard 12-6 Lennard-Jones written in the epsilon/sigma form:

-_images/pair_mdf-4.jpg -

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples above, or in the -data file or restart files read by the read_data or -read_restart commands, or by mixing as described -below:

-
    -
  • epsilon (energy units)
  • -
  • sigma (distance units)
  • -
  • r_m (distance units)
  • -
  • r_*cut* (distance units)
  • -
-
-

For the buck/mdf pair_style, the potential energy, E(r), is the -standard Buckingham potential:

-_images/pair_mdf-5.jpg -
    -
  • A (energy units)
  • -
  • rho (distance units)
  • -
  • C (energy-distance^6 units)
  • -
  • r_m (distance units)
  • -
  • r_*cut*$ (distance units)
  • -
-
-

For the lennard/mdf pair_style, the potential energy, E(r), is the -standard 12-6 Lennard-Jones written in the $A/B$ form:

-_images/pair_mdf-6.jpg -

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples above, or in the -data file or restart files read by the read_data or read_restart -commands, or by mixing as described below:

-
    -
  • A (energy-distance^12 units)
  • -
  • B (energy-distance^6 units)
  • -
  • r_m (distance units)
  • -
  • r_*cut* (distance units)
  • -
-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, the epsilon and sigma coefficients -and cutoff distance for all of the lj/cut pair styles can be mixed. -The default mix value is geometric. See the “pair_modify” command -for details.

-

All of the lj/cut pair styles support the -pair_modify shift option for the energy of the -Lennard-Jones portion of the pair interaction.

-

The lj/cut/coul/long and lj/cut/tip4p/long pair styles support the -pair_modify table option since they can tabulate -the short-range portion of the long-range Coulombic interaction.

-

All of the lj/cut pair styles support the -pair_modify tail option for adding a long-range -tail correction to the energy and pressure for the Lennard-Jones -portion of the pair interaction.

-

All of the lj/cut pair styles write their information to binary restart files, so pair_style and pair_coeff commands do -not need to be specified in an input script that reads a restart file.

-

The lj/cut and lj/cut/coul/long pair styles support the use of the -inner, middle, and outer keywords of the run_style respa command, meaning the pairwise forces can be -partitioned by distance at different levels of the rRESPA hierarchy. -The other styles only support the pair keyword of run_style respa. -See the run_style command for details.

-
-
-
-

Restrictions

-

These pair styles can only be used if LAMMPS was built with the -USER-MISC package. See the Making LAMMPS -section for more info on packages.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_meam.html b/doc/pair_meam.html deleted file mode 100644 index 08243e9634..0000000000 --- a/doc/pair_meam.html +++ /dev/null @@ -1,516 +0,0 @@ - - - - - - - - - - - pair_style meam command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style meam command

-
-

Syntax

-
pair_style meam
-
-
-
-
-

Examples

-
pair_style meam
-pair_coeff * * ../potentials/library.meam Si ../potentials/si.meam Si
-pair_coeff * * ../potentials/library.meam Ni Al NULL Ni Al Ni Ni
-
-
-
-
-

Description

-
-

Note

-

The behavior of the MEAM potential for alloy systems has changed -as of November 2010; see description below of the mixture_ref_t -parameter

-
-

Style meam computes pairwise interactions for a variety of materials -using modified embedded-atom method (MEAM) potentials -(Baskes). Conceptually, it is an extension to the original -EAM potentials which adds angular forces. It is -thus suitable for modeling metals and alloys with fcc, bcc, hcp and -diamond cubic structures, as well as covalently bonded materials like -silicon and carbon.

-

In the MEAM formulation, the total energy E of a system of atoms is -given by:

-_images/pair_meam.jpg -

where F is the embedding energy which is a function of the atomic -electron density rho, and phi is a pair potential interaction. The -pair interaction is summed over all neighbors J of atom I within the -cutoff distance. As with EAM, the multi-body nature of the MEAM -potential is a result of the embedding energy term. Details of the -computation of the embedding and pair energies, as implemented in -LAMMPS, are given in (Gullet) and references therein.

-

The various parameters in the MEAM formulas are listed in two files -which are specified by the pair_coeff command. -These are ASCII text files in a format consistent with other MD codes -that implement MEAM potentials, such as the serial DYNAMO code and -Warp. Several MEAM potential files with parameters for different -materials are included in the “potentials” directory of the LAMMPS -distribution with a ”.meam” suffix. All of these are parameterized in -terms of LAMMPS metal units.

-

Note that unlike for other potentials, cutoffs for MEAM potentials are -not set in the pair_style or pair_coeff command; they are specified in -the MEAM potential files themselves.

-

Only a single pair_coeff command is used with the meam style which -specifies two MEAM files and the element(s) to extract information -for. The MEAM elements are mapped to LAMMPS atom types by specifying -N additional arguments after the 2nd filename in the pair_coeff -command, where N is the number of LAMMPS atom types:

-
    -
  • MEAM library file
  • -
  • Elem1, Elem2, ...
  • -
  • MEAM parameter file
  • -
  • N element names = mapping of MEAM elements to atom types
  • -
-

See the pair_coeff doc page for alternate ways -to specify the path for the potential files.

-

As an example, the potentials/library.meam file has generic MEAM -settings for a variety of elements. The potentials/sic.meam file has -specific parameter settings for a Si and C alloy system. If your -LAMMPS simulation has 4 atoms types and you want the 1st 3 to be Si, -and the 4th to be C, you would use the following pair_coeff command:

-
pair_coeff * * library.meam Si C sic.meam Si Si Si C
-
-
-

The 1st 2 arguments must be * * so as to span all LAMMPS atom types. -The two filenames are for the library and parameter file respectively. -The Si and C arguments (between the file names) are the two elements -for which info will be extracted from the library file. The first -three trailing Si arguments map LAMMPS atom types 1,2,3 to the MEAM Si -element. The final C argument maps LAMMPS atom type 4 to the MEAM C -element.

-

If the 2nd filename is specified as NULL, no parameter file is read, -which simply means the generic parameters in the library file are -used. Use of the NULL specification for the parameter file is -discouraged for systems with more than a single element type -(e.g. alloys), since the parameter file is expected to set element -interaction terms that are not captured by the information in the -library file.

-

If a mapping value is specified as NULL, the mapping is not performed. -This can be used when a meam potential is used as part of the -hybrid pair style. The NULL values are placeholders for atom types -that will be used with other potentials.

-

The MEAM library file provided with LAMMPS has the name -potentials/library.meam. It is the “meamf” file used by other MD -codes. Aside from blank and comment lines (start with #) which can -appear anywhere, it is formatted as a series of entries, each of which -has 19 parameters and can span multiple lines:

-

elt, lat, z, ielement, atwt, alpha, b0, b1, b2, b3, alat, esub, asub, -t0, t1, t2, t3, rozero, ibar

-

The “elt” and “lat” parameters are text strings, such as elt = Si or -Cu and lat = dia or fcc. Because the library file is used by Fortran -MD codes, these strings may be enclosed in single quotes, but this is -not required. The other numeric parameters match values in the -formulas above. The value of the “elt” string is what is used in the -pair_coeff command to identify which settings from the library file -you wish to read in. There can be multiple entries in the library -file with the same “elt” value; LAMMPS reads the 1st matching entry it -finds and ignores the rest.

-

Other parameters in the MEAM library file correspond to single-element -potential parameters:

-
-lat      = lattice structure of reference configuration
-z        = number of nearest neighbors in the reference structure
-ielement = atomic number
-atwt     = atomic weight
-alat     = lattice constant of reference structure
-esub     = energy per atom (eV) in the reference structure at equilibrium
-asub     = "A" parameter for MEAM (see e.g. (Baskes))
-
-

The alpha, b0, b1, b2, b3, t0, t1, t2, t3 parameters correspond to the -standard MEAM parameters in the literature (Baskes) (the b -parameters are the standard beta parameters). The rozero parameter is -an element-dependent density scaling that weights the reference -background density (see e.g. equation 4.5 in (Gullet)) and -is typically 1.0 for single-element systems. The ibar parameter -selects the form of the function G(Gamma) used to compute the electron -density; options are

-
 0 => G = sqrt(1+Gamma)
- 1 => G = exp(Gamma/2)
- 2 => not implemented
- 3 => G = 2/(1+exp(-Gamma))
- 4 => G = sqrt(1+Gamma)
--5 => G = +-sqrt(abs(1+Gamma))
-
-
-

If used, the MEAM parameter file contains settings that override or -complement the library file settings. Examples of such parameter -files are in the potentials directory with a ”.meam” suffix. Their -format is the same as is read by other Fortran MD codes. Aside from -blank and comment lines (start with #) which can appear anywhere, each -line has one of the following forms. Each line can also have a -trailing comment (starting with #) which is ignored.

-
keyword = value
-keyword(I) = value
-keyword(I,J) = value
-keyword(I,J,K) = value
-
-
-

The recognized keywords are as follows:

-

Ec, alpha, rho0, delta, lattce, attrac, repuls, nn2, Cmin, Cmax, rc, delr, -augt1, gsmooth_factor, re

-

where

-
-rc          = cutoff radius for cutoff function; default = 4.0
-delr        = length of smoothing distance for cutoff function; default = 0.1
-rho0(I)     = relative density for element I (overwrites value
-              read from meamf file)
-Ec(I,J)     = cohesive energy of reference structure for I-J mixture
-delta(I,J)  = heat of formation for I-J alloy; if Ec_IJ is input as
-              zero, then LAMMPS sets Ec_IJ = (Ec_II + Ec_JJ)/2 - delta_IJ
-alpha(I,J)  = alpha parameter for pair potential between I and J (can
-              be computed from bulk modulus of reference structure
-re(I,J)     = equilibrium distance between I and J in the reference
-              structure
-Cmax(I,J,K) = Cmax screening parameter when I-J pair is screened
-              by K (I<=J); default = 2.8
-Cmin(I,J,K) = Cmin screening parameter when I-J pair is screened
-              by K (I<=J); default = 2.0
-lattce(I,J) = lattice structure of I-J reference structure:
-                dia = diamond (interlaced fcc for alloy)
-                fcc = face centered cubic
-                bcc = body centered cubic
-                dim = dimer
-                b1  = rock salt (NaCl structure)
-             hcp = hexagonal close-packed
-             c11 = MoSi2 structure
-             l12 = Cu3Au structure (lower case L, followed by 12)
-                b2  = CsCl structure (interpenetrating simple cubic)
-nn2(I,J)    = turn on second-nearest neighbor MEAM formulation for
-              I-J pair (see for example (Lee)).
-                0 = second-nearest neighbor formulation off
-                1 = second-nearest neighbor formulation on
-                default = 0
-attrac(I,J) = additional cubic attraction term in Rose energy I-J pair potential
-                default = 0
-repuls(I,J) = additional cubic repulsive term in Rose energy I-J pair potential
-                default = 0
-zbl(I,J)    = blend the MEAM I-J pair potential with the ZBL potential for small
-              atom separations (ZBL)
-                default = 1
-gsmooth_factor  = factor determining the length of the G-function smoothing
-                  region; only significant for ibar=0 or ibar=4.
-                      99.0 = short smoothing region, sharp step
-                      0.5  = long smoothing region, smooth step
-                      default = 99.0
-augt1           = integer flag for whether to augment t1 parameter by
-                  3/5*t3 to account for old vs. new meam formulations;
-                    0 = don't augment t1
-                    1 = augment t1
-                    default = 1
-ialloy          = integer flag to use alternative averaging rule for t parameters,
-                  for comparison with the DYNAMO MEAM code
-                    0 = standard averaging (matches ialloy=0 in DYNAMO)
-                    1 = alternative averaging (matches ialloy=1 in DYNAMO)
-                    2 = no averaging of t (use single-element values)
-                    default = 0
-mixture_ref_t   = integer flag to use mixture average of t to compute the background
-                  reference density for alloys, instead of the single-element values
-                  (see description and warning elsewhere in this doc page)
-                    0 = do not use mixture averaging for t in the reference density
-                    1 = use mixture averaging for t in the reference density
-                    default = 0
-erose_form      = integer value to select the form of the Rose energy function
-                  (see description below).
-                    default = 0
-emb_lin_neg     = integer value to select embedding function for negative densities
-                    0 = F(rho)=0
-                    1 = F(rho) = -asub*esub*rho (linear in rho, matches DYNAMO)
-                    default = 0
-bkgd_dyn        = integer value to select background density formula
-                    0 = rho_bkgd = rho_ref_meam(a) (as in the reference structure)
-                    1 = rho_bkgd = rho0_meam(a)*Z_meam(a) (matches DYNAMO)
-                    default = 0
-
-

Rc, delr, re are in distance units (Angstroms in the case of metal -units). Ec and delta are in energy units (eV in the case of metal -units).

-

Each keyword represents a quantity which is either a scalar, vector, -2d array, or 3d array and must be specified with the correct -corresponding array syntax. The indices I,J,K each run from 1 to N -where N is the number of MEAM elements being used.

-

Thus these lines

-
rho0(2) = 2.25
-alpha(1,2) = 4.37
-
-
-

set rho0 for the 2nd element to the value 2.25 and set alpha for the -alloy interaction between elements 1 and 2 to 4.37.

-

The augt1 parameter is related to modifications in the MEAM -formulation of the partial electron density function. In recent -literature, an extra term is included in the expression for the -third-order density in order to make the densities orthogonal (see for -example (Wang), equation 3d); this term is included in the -MEAM implementation in lammps. However, in earlier published work -this term was not included when deriving parameters, including most of -those provided in the library.meam file included with lammps, and to -account for this difference the parameter t1 must be augmented by -3/5*t3. If augt1=1, the default, this augmentation is done -automatically. When parameter values are fit using the modified -density function, as in more recent literature, augt1 should be set to -0.

-

The mixture_ref_t parameter is available to match results with those -of previous versions of lammps (before January 2011). Newer versions -of lammps, by default, use the single-element values of the t -parameters to compute the background reference density. This is the -proper way to compute these parameters. Earlier versions of lammps -used an alloy mixture averaged value of t to compute the background -reference density. Setting mixture_ref_t=1 gives the old behavior. -WARNING: using mixture_ref_t=1 will give results that are demonstrably -incorrect for second-neighbor MEAM, and non-standard for -first-neighbor MEAM; this option is included only for matching with -previous versions of lammps and should be avoided if possible.

-

The parameters attrac and repuls, along with the integer selection -parameter erose_form, can be used to modify the Rose energy function -used to compute the pair potential. This function gives the energy of -the reference state as a function of interatomic spacing. The form of -this function is:

-
astar = alpha * (r/re - 1.d0)
-if erose_form = 0: erose = -Ec*(1+astar+a3*(astar**3)/(r/re))*exp(-astar)
-if erose_form = 1: erose = -Ec*(1+astar+(-attrac+repuls/r)*(astar**3))*exp(-astar)
-if erose_form = 2: erose = -Ec*(1 +astar + a3*(astar**3))*exp(-astar)
-a3 = repuls, astar < 0
-a3 = attrac, astar >= 0
-
-
-

Most published MEAM parameter sets use the default values attrac=repulse=0. -Setting repuls=attrac=delta corresponds to the form used in several -recent published MEAM parameter sets, such as (Vallone)

-
-

Note

-

The default form of the erose expression in LAMMPS was corrected -in March 2009. The current version is correct, but may show different -behavior compared with earlier versions of lammps with the attrac -and/or repuls parameters are non-zero. To obtain the previous default -form, use erose_form = 1 (this form does not seem to appear in the -literature). An alternative form (see e.g. (Lee2)) is -available using erose_form = 2.

-
-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, where types I and J correspond to -two different element types, mixing is performed by LAMMPS with -user-specifiable parameters as described above. You never need to -specify a pair_coeff command with I != J arguments for this style.

-

This pair style does not support the pair_modify -shift, table, and tail options.

-

This pair style does not write its information to binary restart files, since it is stored in potential files. Thus, you -need to re-specify the pair_style and pair_coeff commands in an input -script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-

This style is part of the MEAM package. It is only enabled if LAMMPS -was built with that package, which also requires the MEAM library be -built and linked with LAMMPS. See the Making LAMMPS section for more info.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_meam_spline.html b/doc/pair_meam_spline.html deleted file mode 100644 index c106ec1ec4..0000000000 --- a/doc/pair_meam_spline.html +++ /dev/null @@ -1,309 +0,0 @@ - - - - - - - - - - - pair_style meam/spline — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style meam/spline

-
-
-

pair_style meam/spline/omp

-
-

Syntax

-
pair_style meam/spline
-
-
-
-
-

Examples

-
pair_style meam/spline
-pair_coeff * * Ti.meam.spline Ti
-pair_coeff * * Ti.meam.spline Ti Ti Ti
-
-
-
-
-

Description

-

The meam/spline style computes pairwise interactions for metals -using a variant of modified embedded-atom method (MEAM) potentials -(Lenosky). The total energy E is given by

-_images/pair_meam_spline.jpg -

where rho_i is the density at atom I, theta_jik is the angle between -atoms J, I, and K centered on atom I. The five functions Phi, U, rho, -f, and g are represented by cubic splines.

-

The cutoffs and the coefficients for these spline functions are listed -in a parameter file which is specified by the -pair_coeff command. Parameter files for different -elements are included in the “potentials” directory of the LAMMPS -distribution and have a ”.meam.spline” file suffix. All of these -files are parameterized in terms of LAMMPS metal units.

-

Note that unlike for other potentials, cutoffs for spline-based MEAM -potentials are not set in the pair_style or pair_coeff command; they -are specified in the potential files themselves.

-

Unlike the EAM pair style, which retrieves the atomic mass from the -potential file, the spline-based MEAM potentials do not include mass -information; thus you need to use the mass command to -specify it.

-

Only a single pair_coeff command is used with the meam/spline style -which specifies a potential file with parameters for all needed -elements. These are mapped to LAMMPS atom types by specifying N -additional arguments after the filename in the pair_coeff command, -where N is the number of LAMMPS atom types:

-
    -
  • filename
  • -
  • N element names = mapping of spline-based MEAM elements to atom types
  • -
-

See the pair_coeff doc page for alternate ways -to specify the path for the potential file.

-

As an example, imagine the Ti.meam.spline file has values for Ti. If -your LAMMPS simulation has 3 atoms types and they are all to be -treated with this potentials, you would use the following pair_coeff -command:

-
pair_coeff * * Ti.meam.spline Ti Ti Ti
-
-
-

The 1st 2 arguments must be * * so as to span all LAMMPS atom types. -The three Ti arguments map LAMMPS atom types 1,2,3 to the Ti element -in the potential file. If a mapping value is specified as NULL, the -mapping is not performed. This can be used when a meam/spline -potential is used as part of the hybrid pair style. The NULL values -are placeholders for atom types that will be used with other -potentials.

-
-

Note

-

The meam/spline style currently supports only single-element -MEAM potentials. It may be extended for alloy systems in the future.

-
-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

The current version of this pair style does not support multiple -element types or mixing. It has been designed for pure elements only.

-

This pair style does not support the pair_modify -shift, table, and tail options.

-

The meam/spline pair style does not write its information to binary restart files, since it is stored in an external -potential parameter file. Thus, you need to re-specify the pair_style -and pair_coeff commands in an input script that reads a restart file.

-

The meam/spline pair style can only be used via the pair keyword of the -run_style respa command. They do not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-

This pair style requires the newton setting to be “on” -for pair interactions.

-

This pair style is only enabled if LAMMPS was built with the USER-MISC -package. See the Making LAMMPS section -for more info.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_meam_sw_spline.html b/doc/pair_meam_sw_spline.html deleted file mode 100644 index 2985c53861..0000000000 --- a/doc/pair_meam_sw_spline.html +++ /dev/null @@ -1,303 +0,0 @@ - - - - - - - - - - - pair_style meam/sw/spline — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style meam/sw/spline

-
-
-

pair_style meam/sw/spline/omp

-
-

Syntax

-
pair_style meam/sw/spline
-
-
-
-
-

Examples

-
pair_style meam/sw/spline
-pair_coeff * * Ti.meam.sw.spline Ti
-pair_coeff * * Ti.meam.sw.spline Ti Ti Ti
-
-
-
-
-

Description

-

The meam/sw/spline style computes pairwise interactions for metals -using a variant of modified embedded-atom method (MEAM) potentials -(Lenosky) with an additional Stillinger-Weber (SW) term -(Stillinger) in the energy. This form of the potential -was first proposed by Nicklas, Fellinger, and Park -(Nicklas). We refer to it as MEAM+SW. The total energy E -is given by

-_images/pair_meam_sw_spline.jpg -

where rho_I is the density at atom I, theta_JIK is the angle between -atoms J, I, and K centered on atom I. The seven functions -Phi, F, G, U, rho, f, and g are represented by cubic splines.

-

The cutoffs and the coefficients for these spline functions are listed -in a parameter file which is specified by the -pair_coeff command. Parameter files for different -elements are included in the “potentials” directory of the LAMMPS -distribution and have a ”.meam.sw.spline” file suffix. All of these -files are parameterized in terms of LAMMPS metal units.

-

Note that unlike for other potentials, cutoffs for spline-based -MEAM+SW potentials are not set in the pair_style or pair_coeff -command; they are specified in the potential files themselves.

-

Unlike the EAM pair style, which retrieves the atomic mass from the -potential file, the spline-based MEAM+SW potentials do not include -mass information; thus you need to use the mass command to -specify it.

-

Only a single pair_coeff command is used with the meam/sw/spline style -which specifies a potential file with parameters for all needed -elements. These are mapped to LAMMPS atom types by specifying N -additional arguments after the filename in the pair_coeff command, -where N is the number of LAMMPS atom types:

-
    -
  • filename
  • -
  • N element names = mapping of spline-based MEAM+SW elements to atom types
  • -
-

See the pair_coeff doc page for alternate ways -to specify the path for the potential file.

-

As an example, imagine the Ti.meam.sw.spline file has values for Ti. -If your LAMMPS simulation has 3 atoms types and they are all to be -treated with this potential, you would use the following pair_coeff -command:

-

pair_coeff * * Ti.meam.sw.spline Ti Ti Ti

-

The 1st 2 arguments must be * * so as to span all LAMMPS atom types. -The three Ti arguments map LAMMPS atom types 1,2,3 to the Ti element -in the potential file. If a mapping value is specified as NULL, the -mapping is not performed. This can be used when a meam/sw/spline -potential is used as part of the hybrid pair style. The NULL values -are placeholders for atom types that will be used with other -potentials.

-
-

Note

-

The meam/sw/spline style currently supports only -single-element MEAM+SW potentials. It may be extended for alloy -systems in the future.

-
-

Example input scripts that use this pair style are provided -in the examples/USER/misc/meam_sw_spline directory.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

The pair style does not support multiple element types or mixing. -It has been designed for pure elements only.

-

This pair style does not support the pair_modify -shift, table, and tail options.

-

The meam/sw/spline pair style does not write its information to -binary restart files, since it is stored in an external -potential parameter file. Thus, you need to re-specify the pair_style -and pair_coeff commands in an input script that reads a restart file.

-

The meam/sw/spline pair style can only be used via the pair -keyword of the run_style respa command. They do not -support the inner, middle, outer keywords.

-
-
-
-

Restrictions

-

This pair style requires the newton setting to be “on” -for pair interactions.

-

This pair style is only enabled if LAMMPS was built with the USER-MISC package. -See the Making LAMMPS section for more info.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_mgpt.html b/doc/pair_mgpt.html deleted file mode 100644 index d3dd099867..0000000000 --- a/doc/pair_mgpt.html +++ /dev/null @@ -1,378 +0,0 @@ - - - - - - - - - - - pair_style mgpt command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style mgpt command

-
-

Syntax

-
pair_style mgpt
-
-
-
-
-

Examples

-
pair_style mgpt
-pair_coeff * * Ta6.8x.mgpt.parmin Ta6.8x.mgpt.potin Omega
-cp ~/lammps/potentials/Ta6.8x.mgpt.parmin parmin
-cp ~/lammps/potentials/Ta6.8x.mgpt.potin potin
-pair_coeff * * parmin potin Omega volpress yes nbody 1234 precision double
-pair_coeff * * parmin potin Omega volpress yes nbody 12
-
-
-
-
-

Description

-

Within DFT quantum mechanics, generalized pseudopotential theory (GPT) -(Moriarty1) provides a first-principles approach to -multi-ion interatomic potentials in d-band transition metals, with a -volume-dependent, real-space total-energy functional for the N-ion -elemental bulk material in the form

-_images/pair_mgpt.jpg -

where the prime on each summation sign indicates the exclusion of all -self-interaction terms from the summation. The leading volume term -E_vol as well as the two-ion central-force pair potential v_2 and the -three- and four-ion angular-force potentials, v_3 and v_4, depend -explicitly on the atomic volume Omega, but are structure independent -and transferable to all bulk ion configurations, either ordered or -disordered, and with of without the presence of point and line -defects. The simplified model GPT or MGPT (Moriarty2, -Moriarty3), which retains the form of E_tot and permits -more efficient large-scale atomistic simulations, derives from the GPT -through a series of systematic approximations applied to E_vol and the -potentials v_n that are valid for mid-period transition metals with -nearly half-filled d bands.

-

Both analytic (Moriarty2) and matrix -(Moriarty3) representations of MGPT have been developed. -In the more general matrix representation, which can also be applied -to f-band actinide metals and permits both canonical and non-canonical -d/f bands, the multi-ion potentials are evaluated on the fly during a -simulation through d- or f-state matrix multiplication, and the forces -that move the ions are determined analytically. Fast matrix-MGPT -algorithms have been developed independently by Glosli -(Glosli, Moriarty3) and by Oppelstrup -(Oppelstrup)

-

The mgpt pair style calculates forces, energies, and the total -energy per atom, E_tot/N, using the Oppelstrup matrix-MGPT algorithm. -Input potential and control data are entered through the -pair_coeff command. Each material treated requires -input parmin and potin potential files, as shown in the above -examples, as well as specification by the user of the initial atomic -volume Omega through pair_coeff. At the beginning of a time step in -any simulation, the total volume of the simulation cell V should -always be equal to Omega*N, where N is the number of metal ions -present, taking into account the presence of any vacancies and/or -interstitials in the case of a solid. In a constant-volume -simulation, which is the normal mode of operation for the mgpt pair -style, Omega, V and N all remain constant throughout the simulation -and thus are equal to their initial values. In a constant-stress -simulation, the cell volume V will change (slowly) as the simulation -proceeds. After each time step, the atomic volume should be updated -by the code as Omega = V/N. In addition, the volume term E_vol and -the potentials v_2, v_3 and v_4 have to be removed at the end of the -time step, and then respecified at the new value of Omega. In all -smulations, Omega must remain within the defined volume range for -E_vol and the potentials for the given material.

-

The default option volpress yes in the pair_coeff -command includes all volume derivatives of E_tot required to calculate -the stress tensor and pressure correctly. The option volpress no -disregards the pressure contribution resulting from the volume term -E_vol, and can be used for testing and analysis purposes. The -additional optional variable nbody controls the specific terms in -E_tot that are calculated. The default option and the normal option -for mid-period transition and actinide metals is nbody 1234 for which -all four terms in E_tot are retained. The option nbody 12, for -example, retains only the volume term and the two-ion pair potential -term and can be used for GPT series-end transition metals that can be -well described without v_3 and v_4. The nbody option can also be used -to test or analyze the contribution of any of the four terms in E_tot -to a given calculated property.

-

The mgpt pair style makes extensive use of matrix algebra and -includes optimized kernels for the BlueGene/Q architecture and the -Intel/AMD (x86) architectures. When compiled with the appropriate -compiler and compiler switches (-msse3 on x86, and using the IBM XL -compiler on BG/Q), these optimized routines are used automatically. -For BG/Q machines, building with the default Makefile for that -architecture (e.g., “make bgq”) should enable the optimized algebra -routines. For x-86 machines, the here provided Makefile.mpi_fastmgpt -(build with “make mpi_fastmgpt”) enables the fast algebra routines. -The user will be informed in the output files of the matrix kernels in -use. To further improve speed, on x86 the option precision single can -be added to the pair_coeff command line, which -improves speed (up to a factor of two) at the cost of doing matrix -calculations with 7 digit precision instead of the default 16. For -consistency the default option can be specified explicitly by the -option precision double.

-

All remaining potential and control data are contained with the parmin -and potin files, including cutoffs, atomic mass, and other basic MGPT -variables. Specific MGPT potential data for the transition metals -tantalum (Ta4 and Ta6.8x potentials), molybdenum (Mo5.2 potentials), -and vanadium (V6.1 potentials) are contained in the LAMMPS potentials -directory. The stored files are, respectively, Ta4.mgpt.parmin, -Ta4.mgpt.potin, Ta6.8x.mgpt.parmin, Ta6.8x.mgpt.potin, -Mo5.2.mgpt.parmin, Mo5.2.mgpt.potin, V6.1.mgpt.parmin, and -V6.1.mgpt.potin . Useful corresponding informational “README” files -on the Ta4, Ta6.8x, Mo5.2 and V6.1 potentials are also included in the -potentials directory. These latter files indicate the volume mesh and -range for each potential and give appropriate references for the -potentials. It is expected that MGPT potentials for additional -materials will be added over time.

-

Useful example MGPT scripts are given in the examples/USER/mgpt -directory. These scripts show the necessary steps to perform -constant-volume calculations and simulations. It is strongly -recommended that the user work through and understand these examples -before proceeding to more complex simulations.

-
-

Note

-

For good performance, LAMMPS should be built with the compiler -flags “-O3 -msse3 -funroll-loops” when including this pair style. The -src/MAKE/OPTIONS/Makefile.mpi_fastmgpt is an example machine Makefile -with these options included as part of a standard MPI build. Note -that as-is it will build with whatever low-level compiler (g++, icc, -etc) is the default for your MPI installation.

-
-
-

Mixing, shift, table tail correction, restart:

-

This pair style does not support the pair_modify -mix, shift, table, and tail options.

-

This pair style does not write its information to binary restart files, since it is stored in potential files. Thus, you -needs to re-specify the pair_style and pair_coeff commands in an input -script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-

This pair style is part of the USER-MGPT package and is only enabled -if LAMMPS is built with that package. See the Making LAMMPS section for more info.

-

The MGPT potentials require the newtion setting to be -“on” for pair style interactions.

-

The stored parmin and potin potential files provided with LAMMPS in -the “potentials” directory are written in Rydberg atomic units, with -energies in Rydbergs and distances in Bohr radii. The mgpt pair -style converts Rydbergs to Hartrees to make the potential files -compatible with LAMMPS electron units.

-

The form of E_tot used in the mgpt pair style is only appropriate -for elemental bulk solids and liquids. This includes solids with -point and extended defects such as vacancies, interstitials, grain -boundaries and dislocations. Alloys and free surfaces, however, -require significant modifications, which are not included in the -mgpt pair style. Likewise, the hybrid pair style is not allowed, -where MGPT would be used for some atoms but not for others.

-

Electron-thermal effects are not included in the standard MGPT -potentials provided in the “potentials” directory, where the -potentials have been constructed at zero electron temperature. -Physically, electron-thermal effects may be important in 3d (e.g., V) -and 4d (e.g., Mo) transition metals at high temperatures near melt and -above. It is expected that temperature-dependent MGPT potentials for -such cases will be added over time.

-
- -
-

Default

-

The options defaults for the pair_coeff command are -volpress yes, nbody 1234, and precision double.

-
-

(Moriarty1) Moriarty, Physical Review B, 38, 3199 (1988).

-

(Moriarty2) Moriarty, Physical Review B, 42, 1609 (1990). -Moriarty, Physical Review B 49, 12431 (1994).

-

(Moriarty3) Moriarty, Benedict, Glosli, Hood, Orlikowski, Patel, Soderlind, Streitz, Tang, and Yang, -Journal of Materials Research, 21, 563 (2006).

-

(Glosli) Glosli, unpublished, 2005. -Streitz, Glosli, Patel, Chan, Yates, de Supinski, Sexton and Gunnels, Journal of Physics: Conference -Series, 46, 254 (2006).

-

(Oppelstrup) Oppelstrup, unpublished, 2015. -Oppelstrup and Moriarty, to be published.

-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_mie.html b/doc/pair_mie.html deleted file mode 100644 index 7fd03b0af0..0000000000 --- a/doc/pair_mie.html +++ /dev/null @@ -1,273 +0,0 @@ - - - - - - - - - - - pair_style mie/cut command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style mie/cut command

-
-
-

pair_style mie/cut/gpu command

-
-

Syntax

-
pair_style mie/cut cutoff
-
-
-
    -
  • cutoff = global cutoff for mie/cut interactions (distance units)
  • -
-
-
-

Examples

-
pair_style mie/cut 10.0
-pair_coeff 1 1 0.72 3.40 23.00 6.66
-pair_coeff 2 2 0.30 3.55 12.65 6.00
-pair_coeff 1 2 0.46 3.32 16.90 6.31
-
-
-
-
-

Description

-

The mie/cut style computes the Mie potential, given by

-_images/pair_mie.jpg -

Rc is the cutoff and C is a function that depends on the repulsive and -attractive exponents, given by:

-_images/pair_mie2.jpg -

Note that for 12/6 exponents, C is equal to 4 and the formula is the -same as the standard Lennard-Jones potential.

-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above, or in the data file or restart files read by the -read_data or read_restart -commands, or by mixing as described below:

-
    -
  • epsilon (energy units)
  • -
  • sigma (distance units)
  • -
  • gammaR
  • -
  • gammaA
  • -
  • cutoff (distance units)
  • -
-

The last coefficient is optional. If not specified, the global -cutoff specified in the pair_style command is used.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, the epsilon and sigma coefficients -and cutoff distance for all of the mie/cut pair styles can be mixed. -If not explicity defined, both the repulsive and attractive gamma -exponents for different atoms will be calculated following the same -mixing rule defined for distances. The default mix value is -geometric. See the “pair_modify” command for details.

-

This pair style supports the pair_modify shift -option for the energy of the pair interaction.

-

This pair style supports the pair_modify tail -option for adding a long-range tail correction to the energy and -pressure of the pair interaction.

-

This pair style writes its information to binary restart files, so pair_style and pair_coeff commands do not need -to be specified in an input script that reads a restart file.

-

This pair style supports the use of the inner, middle, and outer -keywords of the run_style respa command, meaning the -pairwise forces can be partitioned by distance at different levels of -the rRESPA hierarchy. See the run_style command for -details.

-
-
-
-

Restrictions

-
-
none
-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_modify.html b/doc/pair_modify.html deleted file mode 100644 index a73d2889c8..0000000000 --- a/doc/pair_modify.html +++ /dev/null @@ -1,434 +0,0 @@ - - - - - - - - - - - pair_modify command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_modify command

-
-

Syntax

-
pair_modify keyword values ...
-
-
-
    -
  • one or more keyword/value pairs may be listed
  • -
  • keyword = pair or shift or mix or table or table/disp or tabinner or tabinner/disp or tail or compute
  • -
-
-pair values = sub-style N special which wt1 wt2 wt3
-  sub-style = sub-style of pair hybrid
-  N = which instance of sub-style (only if sub-style is used multiple times)
-  special which wt1 wt2 wt3 = override special_bonds settings (optional)
-  which = lj/coul or lj or coul
-  w1,w2,w3 = 1-2, 1-3, and 1-4 weights from 0.0 to 1.0 inclusive
-mix value = geometric or arithmetic or sixthpower
-shift value = yes or no
-table value = N
-  2^N = # of values in table
-table/disp value = N
-  2^N = # of values in table
-tabinner value = cutoff
-  cutoff = inner cutoff at which to begin table (distance units)
-tabinner/disp value = cutoff
-  cutoff = inner cutoff at which to begin table (distance units)
-tail value = yes or no
-compute value = yes or no
-
-
-
-

Examples

-
pair_modify shift yes mix geometric
-pair_modify tail yes
-pair_modify table 12
-pair_modify pair lj/cut compute no
-pair_modify pair lj/cut/coul/long 1 special lj/coul 0.0 0.0 0.0
-
-
-
-
-

Description

-

Modify the parameters of the currently defined pair style. Not all -parameters are relevant to all pair styles.

-

If used, the pair keyword must appear first in the list of keywords. -It can only be used with the hybrid and hybrid/overlay pair styles. It means that all the -following parameters will only be modified for the specified -sub-style. If the sub-style is defined multiple times, then an -additional numeric argument N must also be specified, which is a -number from 1 to M where M is the number of times the sub-style was -listed in the pair_style hybrid command. The extra -number indicates which instance of the sub-style the remaining -keywords will be applied to. Note that if the pair keyword is not -used, and the pair style is hybrid or hybrid/overlay, then all the -specified keywords will be applied to all sub-styles.

-

The special keyword can only be used in conjunction with the pair -keyword and must directly follow it. It allows to override the -special_bonds settings for the specified sub-style. -More details are given below.

-

The mix keyword affects pair coefficients for interactions between -atoms of type I and J, when I != J and the coefficients are not -explicitly set in the input script. Note that coefficients for I = J -must be set explicitly, either in the input script via the -“pair_coeff” command or in the “Pair Coeffs” section of the data file. For some pair styles it is not necessary to -specify coefficients when I != J, since a “mixing” rule will create -them from the I,I and J,J settings. The pair_modify mix value -determines what formulas are used to compute the mixed coefficients. -In each case, the cutoff distance is mixed the same way as sigma.

-

Note that not all pair styles support mixing. Also, some mix options -are not available for certain pair styles. See the doc page for -individual pair styles for those restrictions. Note also that the -pair_coeff command also can be to directly set -coefficients for a specific I != J pairing, in which case no mixing is -performed.

-

mix geometric

-
epsilon_ij = sqrt(epsilon_i * epsilon_j)
-sigma_ij = sqrt(sigma_i * sigma_j)
-
-
-

mix arithmetic

-
epsilon_ij = sqrt(epsilon_i * epsilon_j)
-sigma_ij = (sigma_i + sigma_j) / 2
-
-
-

mix sixthpower

-
epsilon_ij = (2 * sqrt(epsilon_i*epsilon_j) * sigma_i^3 * sigma_j^3) /
-             (sigma_i^6 + sigma_j^6)
-sigma_ij = ((sigma_i**6 + sigma_j**6) / 2) ^ (1/6)
-
-
-

The shift keyword determines whether a Lennard-Jones potential is -shifted at its cutoff to 0.0. If so, this adds an energy term to each -pairwise interaction which will be included in the thermodynamic -output, but does not affect pair forces or atom trajectories. See the -doc page for individual pair styles to see which ones support this -option.

-

The table and table/disp keywords apply to pair styles with a -long-range Coulombic term or long-range dispersion term respectively; -see the doc page for individual styles to see which potentials support -these options. If N is non-zero, a table of length 2^N is -pre-computed for forces and energies, which can shrink their -computational cost by up to a factor of 2. The table is indexed via a -bit-mapping technique (Wolff) and a linear interpolation is -performed between adjacent table values. In our experiments with -different table styles (lookup, linear, spline), this method typically -gave the best performance in terms of speed and accuracy.

-

The choice of table length is a tradeoff in accuracy versus speed. A -larger N yields more accurate force computations, but requires more -memory which can slow down the computation due to cache misses. A -reasonable value of N is between 8 and 16. The default value of 12 -(table of length 4096) gives approximately the same accuracy as the -no-table (N = 0) option. For N = 0, forces and energies are computed -directly, using a polynomial fit for the needed erfc() function -evaluation, which is what earlier versions of LAMMPS did. Values -greater than 16 typically slow down the simulation and will not -improve accuracy; values from 1 to 8 give unreliable results.

-

The tabinner and tabinner/disp keywords set an inner cutoff above -which the pairwise computation is done by table lookup (if tables are -invoked), for the corresponding Coulombic and dispersion tables -discussed with the table and table/disp keywords. The smaller the -cutoff is set, the less accurate the table becomes (for a given number -of table values), which can require use of larger tables. The default -cutoff value is sqrt(2.0) distance units which means nearly all -pairwise interactions are computed via table lookup for simulations -with “real” units, but some close pairs may be computed directly -(non-table) for simulations with “lj” units.

-

When the tail keyword is set to yes, certain pair styles will add -a long-range VanderWaals tail “correction” to the energy and pressure. -These corrections are bookkeeping terms which do not affect dynamics, -unless a constant-pressure simulation is being performed. See the doc -page for individual styles to see which support this option. These -corrections are included in the calculation and printing of -thermodynamic quantities (see the thermo_style -command). Their effect will also be included in constant NPT or NPH -simulations where the pressure influences the simulation box -dimensions (e.g. the fix npt and fix nph -commands). The formulas used for the long-range corrections come from -equation 5 of (Sun).

-
-

Note

-

The tail correction terms are computed at the beginning of each -run, using the current atom counts of each atom type. If atoms are -deleted (or lost) or created during a simulation, e.g. via the fix gcmc command, the correction factors are not -re-computed. If you expect the counts to change dramatically, you can -break a run into a series of shorter runs so that the correction -factors are re-computed more frequently.

-
-

Several additional assumptions are inherent in using tail corrections, -including the following:

-
    -
  • The simulated system is a 3d bulk homogeneous liquid. This option -should not be used for systems that are non-liquid, 2d, have a slab -geometry (only 2d periodic), or inhomogeneous.
  • -
  • G(r), the radial distribution function (rdf), is unity beyond the -cutoff, so a fairly large cutoff should be used (i.e. 2.5 sigma for an -LJ fluid), and it is probably a good idea to verify this assumption by -checking the rdf. The rdf is not exactly unity beyond the cutoff for -each pair of interaction types, so the tail correction is necessarily -an approximation.
  • -
-

The tail corrections are computed at the beginning of each simulation -run. If the number of atoms changes during the run, e.g. due to atoms -leaving the simulation domain, or use of the fix gcmc -command, then the corrections are not updates to relect the changed -atom count. If this is a large effect in your simulation, you should -break the long run into several short runs, so that the correction -factors are re-computed multiple times.

-
    -
  • Thermophysical properties obtained from calculations with this option -enabled will not be thermodynamically consistent with the truncated -force-field that was used. In other words, atoms do not feel any LJ -pair interactions beyond the cutoff, but the energy and pressure -reported by the simulation include an estimated contribution from -those interactions.
  • -
-

The compute keyword allows pairwise computations to be turned off, -even though a pair_style is defined. This is not -useful for running a real simulation, but can be useful for debugging -purposes or for performing a rerun simulation, when you -only wish to compute partial forces that do not include the pairwise -contribution.

-

Two examples are as follows. First, this option allows you to perform -a simulation with pair_style hybrid with only a -subset of the hybrid sub-styles enabled. Second, this option allows -you to perform a simulation with only long-range interactions but no -short-range pairwise interactions. Doing this by simply not defining -a pair style will not work, because the -kspace_style command requires a Kspace-compatible -pair style be defined.

-
-
-

Use of special keyword

-

The special keyword allows to override the 1-2, 1-3, and 1-4 -exclusion settings for individual sub-styles of a -hybrid pair style. It requires 4 arguments similar -to the special_bonds command, which and -wt1,wt2,wt3. The which argument can be lj to change the -Lennard-Jones settings, coul to change the Coulombic settings, -or lj/coul to change both to the same set of 3 values. The wt1,wt2,wt3 -values are numeric weights from 0.0 to 1.0 inclusive, for the 1-2, -1-3, and 1-4 bond topology neighbors, respectively. The special -keyword can only be used in conjunction with the pair keyword -and has to directly follow it.

-
-

Note

-

The global settings specified by the -special_bonds command affect the construction of -neighbor lists. Weights of 0.0 (for 1-2, 1-3, or 1-4 neighbors) -exclude those pairs from the neighbor list entirely. Weights of 1.0 -store the neighbor with no weighting applied. Thus only global values -different from exactly 0.0 or 1.0 can be overridden and an error is -generated if the requested setting is not compatible with the global -setting. Substituting 1.0e-10 for 0.0 and 0.9999999999 for 1.0 is -usually a sufficient workaround in this case without causing a -significant error.

-
-
-
-
-
-

Restrictions

-
-
none
-

You cannot use shift yes with tail yes, since those are -conflicting options. You cannot use tail yes with 2d simulations.

-
- -
-

Default

-

The option defaults are mix = geometric, shift = no, table = 12, -tabinner = sqrt(2.0), tail = no, and compute = yes.

-

Note that some pair styles perform mixing, but only a certain style of -mixing. See the doc pages for individual pair styles for details.

-
-

(Wolff) Wolff and Rudd, Comp Phys Comm, 120, 200-32 (1999).

-

(Sun) Sun, J Phys Chem B, 102, 7338-7364 (1998).

-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_morse.html b/doc/pair_morse.html deleted file mode 100644 index a844791475..0000000000 --- a/doc/pair_morse.html +++ /dev/null @@ -1,298 +0,0 @@ - - - - - - - - - - - pair_style morse command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style morse command

-
-
-

pair_style morse/cuda command

-
-
-

pair_style morse/gpu command

-
-
-

pair_style morse/omp command

-
-
-

pair_style morse/opt command

-
-
-

pair_style morse/smooth/linear command

-
-
-

pair_style morse/smooth/linear/omp command

-
-

Syntax

-
pair_style morse cutoff
-
-
-
    -
  • cutoff = global cutoff for Morse interactions (distance units)
  • -
-
-
-

Examples

-
pair_style morse 2.5
-pair_style morse/smooth/linear 2.5
-pair_coeff * * 100.0 2.0 1.5
-pair_coeff 1 1 100.0 2.0 1.5 3.0
-
-
-
-
-

Description

-

Style morse computes pairwise interactions with the formula

-_images/pair_morse.jpg -

Rc is the cutoff.

-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above, or in the data file or restart files read by the -read_data or read_restart -commands:

-
    -
  • D0 (energy units)
  • -
  • alpha (1/distance units)
  • -
  • r0 (distance units)
  • -
  • cutoff (distance units)
  • -
  • The last coefficient is optional. If not specified, the global morse
  • -
  • cutoff is used.
  • -
-
-

The smooth/linear variant is similar to the lj/smooth/linear variant -in that it adds to the potential a shift and a linear term to make both -the potential energy and force go to zero at the cut-off:

-_images/pair_morse_smooth_linear.jpg -

The syntax of the pair_style and pair_coeff commands are the same for -the morse and morse/smooth/linear styles.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

None of these pair styles support mixing. Thus, coefficients for all -I,J pairs must be specified explicitly.

-

All of these pair styles support the pair_modify -shift option for the energy of the pair interaction.

-

The pair_modify table options is not relevant for -the Morse pair styles.

-

None of these pair styles support the pair_modify -tail option for adding long-range tail corrections to energy and -pressure.

-

All of these pair styles write their information to binary restart files, so pair_style and pair_coeff commands do not need -to be specified in an input script that reads a restart file.

-

These pair styles can only be used via the pair keyword of the -run_style respa command. They do not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-

The morse/smooth/linear pair style is only enabled if LAMMPS was -built with the USER-MISC package. See the Making LAMMPS section for more info.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_nb3b_harmonic.html b/doc/pair_nb3b_harmonic.html deleted file mode 100644 index 73d70cca57..0000000000 --- a/doc/pair_nb3b_harmonic.html +++ /dev/null @@ -1,293 +0,0 @@ - - - - - - - - - - - pair_style nb3b/harmonic command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style nb3b/harmonic command

-
-
-

pair_style nb3b/harmonic/omp command

-
-

Syntax

-
pair_style nb3b/harmonic
-
-
-
-
-

Examples

-
pair_style nb3b/harmonic
-pair_coeff * * MgOH.nb3bharmonic Mg O H
-
-
-
-
-

Description

-

This pair style computes a nonbonded 3-body harmonic potential for the -energy E of a system of atoms as

-_images/pair_nb3b_harmonic.jpg -

where theta_0 is the equilibrium value of the angle and K is a -prefactor. Note that the usual 1/2 factor is included in K. The form -of the potential is identical to that used in angle_style harmonic, -but in this case, the atoms do not need to be explicitly bonded.

-

Only a single pair_coeff command is used with this style which -specifies a potential file with parameters for specified elements. -These are mapped to LAMMPS atom types by specifying N additional -arguments after the filename in the pair_coeff command, where N is the -number of LAMMPS atom types:

-
    -
  • filename
  • -
  • N element names = mapping of elements to atom types
  • -
-

See the pair_coeff doc page for alternate ways -to specify the path for the potential file.

-

As an example, imagine a file SiC.nb3b.harmonic has potential values -for Si and C. If your LAMMPS simulation has 4 atoms types and you -want the 1st 3 to be Si, and the 4th to be C, you would use the -following pair_coeff command:

-
pair_coeff * * SiC.nb3b.harmonic Si Si Si C
-
-
-

The 1st 2 arguments must be * * so as to span all LAMMPS atom types. -The first three Si arguments map LAMMPS atom types 1,2,3 to the Si -element in the potential file. The final C argument maps LAMMPS atom -type 4 to the C element in the potential file. If a mapping value is -specified as NULL, the mapping is not performed. This can be used -when the potential is used as part of the hybrid pair style. The -NULL values are placeholders for atom types that will be used with -other potentials. An example of a pair_coeff command for use with the -hybrid pair style is:

-

pair_coeff * * nb3b/harmonic MgOH.nb3b.harmonic Mg O H

-

Three-body nonbonded harmonic files in the potentials directory of -the LAMMPS distribution have a ”.nb3b.harmonic” suffix. Lines that -are not blank or comments (starting with #) define parameters for a -triplet of elements.

-

Each entry has six arguments. The first three are atom types as -referenced in the LAMMPS input file. The first argument specifies the -central atom. The fourth argument indicates the K parameter. The -fifth argument indicates theta_0. The sixth argument indicates a -separation cutoff in Angstroms.

-

For a given entry, if the second and third arguments are identical, -then the entry is for a cutoff for the distance between types 1 and 2 -(values for K and theta_0 are irrelevant in this case).

-

For a given entry, if the first three arguments are all different, -then the entry is for the K and theta_0 parameters (the cutoff in -this case is irrelevant).

-

It is not required that the potential file contain entries for all -of the elements listed in the pair_coeff command. It can also contain -entries for additional elements not being used in a particular -simulation; LAMMPS ignores those entries.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-
-
-

Restrictions

-

This pair style can only be used if LAMMPS was built with the MANYBODY -package (which it is by default). See the Making LAMMPS section for more info on packages.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_nm.html b/doc/pair_nm.html deleted file mode 100644 index 4e03608f09..0000000000 --- a/doc/pair_nm.html +++ /dev/null @@ -1,342 +0,0 @@ - - - - - - - - - - - pair_style nm/cut command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style nm/cut command

-
-
-

pair_style nm/cut/coul/cut command

-
-
-

pair_style nm/cut/coul/long command

-
-
-

pair_style nm/cut/omp command

-
-
-

pair_style nm/cut/coul/cut/omp command

-
-
-

pair_style nm/cut/coul/long/omp command

-
-

Syntax

-
pair_style style args
-
-
-
    -
  • style = nm/cut or nm/cut/coul/cut or nm/cut/coul/long
  • -
  • args = list of arguments for a particular style
  • -
-
-nm/cut args = cutoff
-  cutoff = global cutoff for Pair interactions (distance units)
-nm/cut/coul/cut args = cutoff (cutoff2)
-  cutoff = global cutoff for Pair (and Coulombic if only 1 arg) (distance units)
-  cutoff2 = global cutoff for Coulombic (optional) (distance units)
-nm/cut/coul/long args = cutoff (cutoff2)
-  cutoff = global cutoff for Pair (and Coulombic if only 1 arg) (distance units)
-  cutoff2 = global cutoff for Coulombic (optional) (distance units)
-
-
-
-

Examples

-
pair_style nm/cut 12.0
-pair_coeff * * 0.01 5.4 8.0 7.0
-pair_coeff 1 1 0.01 4.4 7.0 6.0
-
-
-
pair_style nm/cut/coul/cut 12.0 15.0
-pair_coeff * * 0.01 5.4 8.0 7.0
-pair_coeff 1 1 0.01 4.4 7.0 6.0
-
-
-
pair_style nm/cut/coul/long 12.0 15.0
-pair_coeff * * 0.01 5.4 8.0 7.0
-pair_coeff 1 1 0.01 4.4 7.0 6.0
-
-
-
-
-

Description

-

Style nm computes site-site interactions based on the N-M potential -by Clarke, mainly used for ionic liquids. A site can -represent a single atom or a united-atom site. The energy of an -interaction has the following form:

-_images/pair_nm.jpg -

Rc is the cutoff.

-

Style nm/cut/coul/cut adds a Coulombic pairwise interaction given by

-_images/pair_coulomb.jpg -

where C is an energy-conversion constant, Qi and Qj are the charges on -the 2 atoms, and epsilon is the dielectric constant which can be set -by the dielectric command. If one cutoff is -specified in the pair_style command, it is used for both the NM and -Coulombic terms. If two cutoffs are specified, they are used as -cutoffs for the NM and Coulombic terms respectively.

-

Styles nm/cut/coul/long compute the same -Coulombic interactions as style nm/cut/coul/cut except that an -additional damping factor is applied to the Coulombic term so it can -be used in conjunction with the kspace_style -command and its ewald or pppm option. The Coulombic cutoff -specified for this style means that pairwise interactions within this -distance are computed directly; interactions outside that distance are -computed in reciprocal space.

-

For all of the nm pair styles, the following coefficients must -be defined for each pair of atoms types -via the pair_coeff command as in the -examples above, or in the data file or restart files read by the -read_data or read_restart -commands.

-
    -
  • E0 (energy units)
  • -
  • r0 (distance units)
  • -
  • n (unitless)
  • -
  • m (unitless)
  • -
  • cutoff1 (distance units)
  • -
  • cutoff2 (distance units)
  • -
-

The latter 2 coefficients are optional. If not specified, the global -NM and Coulombic cutoffs specified in the pair_style command are used. -If only one cutoff is specified, it is used as the cutoff for both NM -and Coulombic interactions for this type pair. If both coefficients -are specified, they are used as the NM and Coulombic cutoffs for this -type pair. You cannot specify 2 cutoffs for style nm, since it -has no Coulombic terms.

-

For nm/cut/coul/long only the NM cutoff can be specified since a -Coulombic cutoff cannot be specified for an individual I,J type pair. -All type pairs use the same global Coulombic cutoff specified in the -pair_style command.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

These pair styles do not support mixing. Thus, coefficients for all -I,J pairs must be specified explicitly.

-

All of the nm pair styles supports the -pair_modify shift option for the energy of the pair -interaction.

-

The nm/cut/coul/long pair styles support the -pair_modify table option since they can tabulate -the short-range portion of the long-range Coulombic interaction.

-

All of the nm pair styles support the pair_modify -tail option for adding a long-range tail correction to the energy and -pressure for the NM portion of the pair interaction.

-

All of the nm pair styles write their information to binary restart files, so pair_style and pair_coeff commands do not need -to be specified in an input script that reads a restart file.

-

All of the nm pair styles can only be used via the pair keyword of -the run_style respa command. They do not support the -inner, middle, outer keywords.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-
-

Restrictions

-

These pair styles are part of the MISC package. It is only enabled if -LAMMPS was built with that package. See the Making LAMMPS section for more info.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_none.html b/doc/pair_none.html deleted file mode 100644 index fb2246af31..0000000000 --- a/doc/pair_none.html +++ /dev/null @@ -1,233 +0,0 @@ - - - - - - - - - - - pair_style none command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style none command

-
-

Syntax

-
pair_style none
-
-
-
-
-

Examples

-
pair_style none
-
-
-
-
-

Description

-

Using a pair style of none means pair forces and energies are not -computed.

-

With this choice, the force cutoff is 0.0, which means that only atoms -within the neighbor skin distance (see the neighbor -command) are communicated between processors. You must insure the -skin distance is large enough to acquire atoms needed for computing -bonds, angles, etc.

-

A pair style of none will also prevent pairwise neighbor lists from -being built. However if the neighbor style is bin, -data structures for binning are still allocated. If the neighbor skin -distance is small, then these data structures can consume a large -amount of memory. So you should either set the neighbor style to -nsq or set the skin distance to a larger value.

-

See the pair_style zero for a way to trigger the -building of a neighbor lists, but compute no pairwise interactions.

-
-
-

Restrictions

-
-
none
-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_peri.html b/doc/pair_peri.html deleted file mode 100644 index 2f2580d90e..0000000000 --- a/doc/pair_peri.html +++ /dev/null @@ -1,374 +0,0 @@ - - - - - - - - - - - pair_style peri/pmb command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style peri/pmb command

-
-
-

pair_style peri/pmb/omp command

-
-
-

pair_style peri/lps command

-
-
-

pair_style peri/lps/omp command

-
-
-

pair_style peri/ves command

-
-
-

pair_style peri/eps command

-
-

Syntax

-
pair_style style
-
-
-
    -
  • style = peri/pmb or peri/lps or peri/ves or peri/eps
  • -
-
-
-

Examples

-
pair_style peri/pmb
-pair_coeff * * 1.6863e22 0.0015001 0.0005 0.25
-
-
-
pair_style peri/lps
-pair_coeff * * 14.9e9 14.9e9 0.0015001 0.0005 0.25
-
-
-
pair_style peri/ves
-pair_coeff * * 14.9e9 14.9e9 0.0015001 0.0005 0.25 0.5 0.001
-
-
-
pair_style peri/eps
-pair_coeff * * 14.9e9 14.9e9 0.0015001 0.0005 0.25 118.43
-
-
-
-
-

Description

-

The peridynamic pair styles implement material models that can be used -at the mescscopic and macroscopic scales. See this document for an overview of LAMMPS commands -for Peridynamics modeling.

-

Style peri/pmb implements the Peridynamic bond-based prototype -microelastic brittle (PMB) model.

-

Style peri/lps implements the Peridynamic state-based linear -peridynamic solid (LPS) model.

-

Style peri/ves implements the Peridynamic state-based linear -peridynamic viscoelastic solid (VES) model.

-

Style peri/eps implements the Peridynamic state-based elastic-plastic -solid (EPS) model.

-

The canonical papers on Peridynamics are (Silling 2000) -and (Silling 2007). The implementation of Peridynamics -in LAMMPS is described in (Parks). Also see the PDLAMMPS user guide for -more details about its implementation.

-

The peridynamic VES and EPS models in PDLAMMPS were implemented by -R. Rahman and J. T. Foster at University of Texas at San Antonio. The -original VES formulation is described in “(Mitchell2011)” and the -original EPS formulation is in “(Mitchell2011a)”. Additional PDF docs -that describe the VES and EPS implementations are include in the -LAMMPS distro in doc/PDF/PDLammps_VES.pdf and -doc/PDF/PDLammps_EPS.pdf. For questions -regarding the VES and EPS models in LAMMPS you can contact R. Rahman -(rezwanur.rahman at utsa.edu).

-

The following coefficients must be defined for each pair of atom types -via the pair_coeff command as in the examples above, -or in the data file or restart files read by the -read_data or read_restart -commands, or by mixing as described below.

-

For the peri/pmb style:

-
    -
  • c (energy/distance/volume^2 units)
  • -
  • horizon (distance units)
  • -
  • s00 (unitless)
  • -
  • alpha (unitless)
  • -
-

C is the effectively a spring constant for Peridynamic bonds, the -horizon is a cutoff distance for truncating interactions, and s00 and -alpha are used as a bond breaking criteria. The units of c are such -that c/distance = stiffness/volume^2, where stiffness is -energy/distance^2 and volume is distance^3. See the users guide for -more details.

-

For the peri/lps style:

-
    -
  • K (force/area units)
  • -
  • G (force/area units)
  • -
  • horizon (distance units)
  • -
  • s00 (unitless)
  • -
  • alpha (unitless)
  • -
-

K is the bulk modulus and G is the shear modulus. The horizon is a -cutoff distance for truncating interactions, and s00 and alpha are -used as a bond breaking criteria. See the users guide for more -details.

-

For the peri/ves style:

-
    -
  • K (force/area units)
  • -
  • G (force/area units)
  • -
  • horizon (distance units)
  • -
  • s00 (unitless)
  • -
  • alpha (unitless)
  • -
  • m_lambdai (unitless)
  • -
  • m_taubi (unitless)
  • -
-

K is the bulk modulus and G is the shear modulus. The horizon is a -cutoff distance for truncating interactions, and s00 and alpha are -used as a bond breaking criteria. m_lambdai and m_taubi are the -viscoelastic relaxation parameter and time constant, -respectively. m_lambdai varies within zero to one. For very small -values of m_lambdai the viscoelsatic model responds very similar to a -linear elastic model. For details please see the description in -“(Mtchell2011)”.

-

For the peri/eps style:

-

K (force/area units) -G (force/area units) -horizon (distance units) -s00 (unitless) -alpha (unitless) -m_yield_stress (force/area units)

-

K is the bulk modulus and G is the shear modulus. The horizon is a -cutoff distance and s00 and alpha are used as a bond breaking -criteria. m_yield_stress is the yield stress of the material. For -details please see the description in “(Mtchell2011a)”.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

These pair styles do not support mixing. Thus, coefficients for all -I,J pairs must be specified explicitly.

-

These pair styles do not support the pair_modify -shift option.

-

The pair_modify table and tail options are not -relevant for these pair styles.

-

These pair styles write their information to binary restart files, so pair_style and pair_coeff commands do not need -to be specified in an input script that reads a restart file.

-

These pair styles can only be used via the pair keyword of the -run_style respa command. They do not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-

All of these styles are part of the PERI package. They are only -enabled if LAMMPS was built with that package. See the Making LAMMPS section for more info.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_polymorphic.html b/doc/pair_polymorphic.html deleted file mode 100644 index 6327f29619..0000000000 --- a/doc/pair_polymorphic.html +++ /dev/null @@ -1,380 +0,0 @@ - - - - - - - - - - - pair_style polymorphic command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style polymorphic command

-
-

Syntax

-
pair_style polymorphic
-
-
-

style = polymorphic

-
-
-

Examples

-
pair_style polymorphic
-pair_coeff * * TlBr_msw.polymorphic Tl Br
-pair_coeff * * AlCu_eam.polymorphic Al Cu
-pair_coeff * * GaN_tersoff.polymorphic Ga N
-pair_coeff * * GaN_sw.polymorphic GaN
-
-
-
-
-

Description

-

The polymorphic pair style computes a 3-body free-form potential -(Zhou) for the energy E of a system of atoms as

-_images/polymorphic1.jpg -_images/polymorphic2.jpg -_images/polymorphic3.jpg -

where I, J, K represent species of atoms i, j, and k, i_1, ..., i_N -represents a list of i’s neighbors, delta_ij is a Direc constant -(i.e., delta_ij = 1 when i = j, and delta_ij = 0 otherwise), eta_ij is -similar constant that can be set either to eta_ij = delta_ij or eta_ij -= 1 - delta_ij depending on the potential type, U_IJ(r_ij), -V_IJ(r_ij), W_IK(r_ik) are pair functions, G_JIK(cos(theta)) is an -angular function, P_IK(delta r_jik) is a function of atomic spacing -differential delta r_jik = r_ij - xi_IJ*r_ik with xi_IJ being a -pair-dependent parameter, and F_IJ(X_ij) is a function of the local -environment variable X_ij. This generic potential is fully defined -once the constants eta_ij and xi_IJ, and the six functions U_IJ(r_ij), -V_IJ(r_ij), W_IK(r_ik), G_JIK(cos(theta)), P_IK(delta r_jik), and -F_IJ(X_ij) are given. Note that these six functions are all one -dimensional, and hence can be provided in an analytic or tabular -form. This allows users to design different potentials solely based on -a manipulation of these functions. For instance, the potential reduces -to Stillinger-Weber potential (SW) if we set

-_images/polymorphic4.jpg -

The potential reduces to Tersoff types of potential -(Tersoff or Albe) if we set

-_images/polymorphic5.jpg -_images/polymorphic6.jpg -

The potential reduces to Rockett-Tersoff (Wang) type if we set

-_images/polymorphic7.jpg -_images/polymorphic6.jpg -_images/polymorphic8.jpg -

The potential becomes embedded atom method (Daw) if we set

-_images/polymorphic9.jpg -

In the embedded atom method case, phi_IJ(r_ij) is the pair energy, -F_I(X) is the embedding energy, X is the local electron density, and -f_K(r) is the atomic electron density function.

-

If the tabulated functions are created using the parameters of sw, -tersoff, and eam potentials, the polymorphic pair style will produce -the same global properties (energies and stresses) and the same forces -as the sw, tersoff, and eam pair styles. The polymorphic pair style -also produces the same atom properties (energies and stresses) as the -corresponding tersoff and eam pair styles. However, due to a different -partition of global properties to atom properties, the polymorphic -pair style will produce different atom properties (energies and -stresses) as the sw pair style. This does not mean that polymorphic -pair style is different from the sw pair style in this case. It just -means that the definitions of the atom energies and atom stresses are -different.

-

Only a single pair_coeff command is used with the polymorphic style -which specifies an potential file for all needed elements. These are -mapped to LAMMPS atom types by specifying N additional arguments after -the filename in the pair_coeff command, where N is the number of -LAMMPS atom types:

-
    -
  • filename
  • -
  • N element names = mapping of Tersoff elements to atom types
  • -
-

See the pair_coeff doc page for alternate ways to specify the path for -the potential file. Several files for polymorphic potentials are -included in the potentials dir of the LAMMPS distro. They have a -“poly” suffix.

-

As an example, imagine the SiC_tersoff.polymorphic file has tabulated -functions for Si-C tersoff potential. If your LAMMPS simulation has 4 -atoms types and you want the 1st 3 to be Si, and the 4th to be C, you -would use the following pair_coeff command:

-
pair_coeff * * SiC_tersoff.polymorphic Si Si Si C
-
-
-

The 1st 2 arguments must be * * so as to span all LAMMPS atom -types. The first three Si arguments map LAMMPS atom types 1,2,3 to the -Si element in the polymorphic file. The final C argument maps LAMMPS -atom type 4 to the C element in the polymorphic file. If a mapping -value is specified as NULL, the mapping is not performed. This can be -used when an polymorphic potential is used as part of the hybrid pair -style. The NULL values are placeholders for atom types that will be -used with other potentials.

-

Potential files in the potentials directory of the LAMMPS distribution -have a ”.poly” suffix. At the beginning of the files, an unlimited -number of lines starting with ‘#’ are used to describe the potential -and are ignored by LAMMPS. The next line lists two numbers:

-
ntypes eta
-
-
-

Here ntypes represent total number of species defined in the potential -file, and eta = 0 or 1. The number ntypes must equal the total number -of different species defined in the pair_coeff command. When eta = 1, -eta_ij defined in the potential functions above is set to 1 - -delta_ij, otherwise eta_ij is set to delta_ij. The next ntypes lines -each lists two numbers and a character string representing atomic -number, atomic mass, and name of the species of the ntypes elements:

-
atomic_number atomic-mass element (1)
-atomic_number atomic-mass element (2)
-...
-atomic_number atomic-mass element (ntypes)
-
-
-

The next ntypes*(ntypes+1)/2 lines contain two numbers:

-
cut xi (1)
-cut xi (2)
-...
-cut xi (ntypes*(ntypes+1)/2)
-
-
-

Here cut means the cutoff distance of the pair functions, xi is the -same as defined in the potential functions above. The -ntypes*(ntypes+1)/2 lines are related to the pairs according to the -sequence of first ii (self) pairs, i = 1, 2, ..., ntypes, and then -then ij (cross) pairs, i = 1, 2, ..., ntypes-1, and j = i+1, i+2, ..., -ntypes (i.e., the sequence of the ij pairs follows 11, 22, ..., 12, -13, 14, ..., 23, 24, ...).

-

The final blocks of the potential file are the U, V, W, P, G, and F -functions are listed sequentially. First, U functions are given for -each of the ntypes*(ntypes+1)/2 pairs according to the sequence -described above. For each of the pairs, nr values are listed. Next, -similar arrays are given for V, W, and P functions. Then G functions -are given for all the ntypes*ntypes*ntypes ijk triplets in a natural -sequence i from 1 to ntypes, j from 1 to ntypes, and k from 1 to -ntypes (i.e., ijk = 111, 112, 113, ..., 121, 122, 123 ..., 211, 212, -...). Each of the ijk functions contains ng values. Finally, the F -functions are listed for all ntypes*(ntypes+1)/2 pairs, each -containing nx values. Either analytic or tabulated functions can be -specified. Currently, constant, exponential, sine and cosine analytic -functions are available which are specified with: constant c1 , where -f(x) = c1 exponential c1 c2 , where f(x) = c1 exp(c2*x) sine c1 c2 , -where f(x) = c1 sin(c2*x) cos c1 c2 , where f(x) = c1 cos(c2*x) -Tabulated functions are specified by spline n x1 x2, where n=number of -point, (x1,x2)=range and then followed by n values evaluated uniformly -over these argument ranges. The valid argument ranges of the -functions are between 0 <= r <= cut for the U(r), V(r), W(r) -functions, -cutmax <= delta_r <= cutmax for the P(delta_r) functions, --1 <= costheta <= 1 for the G(costheta) functions, and 0 <= X <= maxX -for the F(X) functions.

-

Mixing, shift, table tail correction, restart:

-

This pair styles does not support the pair_modify -shift, table, and tail options.

-

This pair style does not write their information to binary restart files, since it is stored in potential files. Thus, you -need to re-specify the pair_style and pair_coeff commands in an input -script that reads a restart file.

-
-
-
-

Restrictions

-

If using create_atoms command, atomic masses must be defined in the -input script. If using read_data, atomic masses must be defined in the -atomic structure data file.

-

This pair style is part of the MANYBODY package. It is only enabled if -LAMMPS was built with that package (which it is by default). See the -Making LAMMPS section for more info.

-

This pair potential requires the newtion setting to be -“on” for pair interactions.

-

The potential files provided with LAMMPS (see the potentials -directory) are parameterized for metal units. You can use -any LAMMPS units, but you would need to create your own potential -files.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_quip.html b/doc/pair_quip.html deleted file mode 100644 index 9b336414a3..0000000000 --- a/doc/pair_quip.html +++ /dev/null @@ -1,266 +0,0 @@ - - - - - - - - - - - pair_style quip command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style quip command

-
-

Syntax

-
pair_style quip
-
-
-
-
-

Examples

-
pair_style      quip
-pair_coeff      * * gap_example.xml "Potential xml_label=GAP_2014_5_8_60_17_10_38_466" 14
-pair_coeff      * * sw_example.xml "IP SW" 14
-
-
-
-
-

Description

-

Style quip provides an interface for calling potential routines from -the QUIP package. QUIP is built separately, and then linked to -LAMMPS. The most recent version of the QUIP package can be downloaded -from GitHub: -https://github.com/libAtoms/QUIP. The -interface is chiefly intended to be used to run Gaussian Approximation -Potentials (GAP), which are described in the following publications: -(Bartok et al) and (PhD thesis of Bartok).

-

Only a single pair_coeff command is used with the quip style that -specifies a QUIP potential file containing the parameters of the -potential for all needed elements in XML format. This is followed by a -QUIP initialization string. Finally, the QUIP elements are mapped to -LAMMPS atom types by specifying N atomic numbers, where N is the -number of LAMMPS atom types:

-
    -
  • QUIP filename
  • -
  • QUIP initialization string
  • -
  • N atomic numbers = mapping of QUIP elements to atom types
  • -
-

See the pair_coeff doc page for alternate ways -to specify the path for the potential file.

-

A QUIP potential is fully specified by the filename which contains the -parameters of the potential in XML format, the initialisation string, -and the map of atomic numbers.

-

GAP potentials can be obtained from the Data repository section of -http://www.libatoms.org, where the -appropriate initialisation strings are also advised. The list of -atomic numbers must be matched to the LAMMPS atom types specified in -the LAMMPS data file or elsewhere.

-

Two examples input scripts are provided in the examples/USER/quip -directory.

-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

This pair style does not support the pair_modify -mix, shift, table, and tail options.

-

This pair style does not write its information to binary restart files, since it is stored in potential files. Thus, you -need to re-specify the pair_style and pair_coeff commands in an input -script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-

Restrictions

-

This pair style is part of the USER-QUIP package. It is only enabled -if LAMMPS was built with that package. See the Making LAMMPS section for more info.

-

QUIP potentials are parametrized in electron-volts and Angstroms and -therefore should be used with LAMMPS metal units.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_reax.html b/doc/pair_reax.html deleted file mode 100644 index 09aff4b60a..0000000000 --- a/doc/pair_reax.html +++ /dev/null @@ -1,388 +0,0 @@ - - - - - - - - - - - pair_style reax command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style reax command

-
-

Syntax

-
pair_style reax hbcut hbnewflag tripflag precision
-
-
-
    -
  • hbcut = hydrogen-bond cutoff (optional) (distance units)
  • -
  • hbnewflag = use old or new hbond function style (0 or 1) (optional)
  • -
  • tripflag = apply stabilization to all triple bonds (0 or 1) (optional)
  • -
  • precision = precision for charge equilibration (optional)
  • -
-
-
-

Examples

-
pair_style reax
-pair_style reax 10.0 0 1 1.0e-5
-pair_coeff * * ffield.reax 3 1 2 2
-pair_coeff * * ffield.reax 3 NULL NULL 3
-
-
-
-
-

Description

-

Style reax computes the ReaxFF potential of van Duin, Goddard and -co-workers. ReaxFF uses distance-dependent bond-order functions to -represent the contributions of chemical bonding to the potential -energy. There is more than one version of ReaxFF. The version -implemented in LAMMPS uses the functional forms documented in the -supplemental information of the following paper: -(Chenoweth). The version integrated into LAMMPS matches -the most up-to-date version of ReaxFF as of summer 2010.

-

WARNING: pair style reax is now deprecated and will soon be retired. Users -should switch to pair_style reax/c. The reax style -differs from the reax/c style in the lo-level implementation details. -The reax style is a -Fortran library, linked to LAMMPS. The reax/c style was initially -implemented as stand-alone C code and is now integrated into LAMMPS as -a package.

-

LAMMPS requires that a file called ffield.reax be provided, containing -the ReaxFF parameters for each atom type, bond type, etc. The format -is identical to the ffield file used by van Duin and co-workers. The -filename is required as an argument in the pair_coeff command. Any -value other than “ffield.reax” will be rejected (see below).

-

LAMMPS provides several different versions of ffield.reax in its -potentials dir, each called potentials/ffield.reax.label. These are -documented in potentials/README.reax. The default ffield.reax -contains parameterizations for the following elements: C, H, O, N.

-
-

Note

-

We do not distribute a wide variety of ReaxFF force field files -with LAMMPS. Adri van Duin’s group at PSU is the central repository -for this kind of data as they are continuously deriving and updating -parameterizations for different classes of materials. You can submit -a contact request at the Materials Computation Center (MCC) website -https://www.mri.psu.edu/materials-computation-center/connect-mcc, -describing the material(s) you are interested in modeling with ReaxFF. -They can tell -you what is currently available or what it would take to create a -suitable ReaxFF parameterization.

-
-

The format of these files is identical to that used originally by van -Duin. We have tested the accuracy of pair_style reax potential -against the original ReaxFF code for the systems mentioned above. You -can use other ffield files for specific chemical systems that may be -available elsewhere (but note that their accuracy may not have been -tested).

-

The hbcut, hbnewflag, tripflag, and precision settings are -optional arguments. If none are provided, default settings are used: -hbcut = 6 (which is Angstroms in real units), hbnewflag = 1 (use -new hbond function style), tripflag = 1 (apply stabilization to all -triple bonds), and precision = 1.0e-6 (one part in 10^6). If you -wish to override any of these defaults, then all of the settings must -be specified.

-

Two examples using pair_style reax are provided in the examples/reax -sub-directory, along with corresponding examples for -pair_style reax/c. Note that while the energy and force -calculated by both of these pair styles match very closely, the -contributions due to the valence angles differ slightly due to -the fact that with pair_style reax/c the default value of thb_cutoff_sq -is 0.00001, while for pair_style reax it is hard-coded to be 0.001.

-

Use of this pair style requires that a charge be defined for every -atom since the reax pair style performs a charge equilibration (QEq) -calculation. See the atom_style and -read_data commands for details on how to specify -charges.

-

The thermo variable evdwl stores the sum of all the ReaxFF potential -energy contributions, with the exception of the Coulombic and charge -equilibration contributions which are stored in the thermo variable -ecoul. The output of these quantities is controlled by the -thermo command.

-

This pair style tallies a breakdown of the total ReaxFF potential -energy into sub-categories, which can be accessed via the compute pair command as a vector of values of length 14. -The 14 values correspond to the following sub-categories (the variable -names in italics match those used in the ReaxFF FORTRAN library):

-
    -
  1. eb = bond energy
  2. -
  3. ea = atom energy
  4. -
  5. elp = lone-pair energy
  6. -
  7. emol = molecule energy (always 0.0)
  8. -
  9. ev = valence angle energy
  10. -
  11. epen = double-bond valence angle penalty
  12. -
  13. ecoa = valence angle conjugation energy
  14. -
  15. ehb = hydrogen bond energy
  16. -
  17. et = torsion energy
  18. -
  19. eco = conjugation energy
  20. -
  21. ew = van der Waals energy
  22. -
  23. ep = Coulomb energy
  24. -
  25. efi = electric field energy (always 0.0)
  26. -
  27. eqeq = charge equilibration energy
  28. -
-

To print these quantities to the log file (with descriptive column -headings) the following commands could be included in an input script:

-
compute reax all pair reax
-variable eb           equal c_reax[1]
-variable ea           equal c_reax[2]
-...
-variable eqeq         equal c_reax[14]
-thermo_style custom step temp epair v_eb v_ea ... v_eqeq
-
-
-

Only a single pair_coeff command is used with the reax style which -specifies a ReaxFF potential file with parameters for all needed -elements. These are mapped to LAMMPS atom types by specifying N -additional arguments after the filename in the pair_coeff command, -where N is the number of LAMMPS atom types:

-
    -
  • filename
  • -
  • N indices = mapping of ReaxFF elements to atom types
  • -
-

The specification of the filename and the mapping of LAMMPS atom types -recognized by the ReaxFF is done differently than for other LAMMPS -potentials, due to the non-portable difficulty of passing character -strings (e.g. filename, element names) between C++ and Fortran.

-

The filename has to be “ffield.reax” and it has to exist in the -directory you are running LAMMPS in. This means you cannot prepend a -path to the file in the potentials dir. Rather, you should copy that -file into the directory you are running from. If you wish to use -another ReaxFF potential file, then name it “ffield.reax” and put it -in the directory you run from.

-

In the ReaxFF potential file, near the top, after the general -parameters, is the atomic parameters section that contains element -names, each with a couple dozen numeric parameters. If there are M -elements specified in the ffield file, think of these as numbered 1 -to M. Each of the N indices you specify for the N atom types of LAMMPS -atoms must be an integer from 1 to M. Atoms with LAMMPS type 1 will -be mapped to whatever element you specify as the first index value, -etc. If a mapping value is specified as NULL, the mapping is not -performed. This can be used when a ReaxFF potential is used as part -of the hybrid pair style. The NULL values are placeholders for atom -types that will be used with other potentials.

-
-

Note

-

Currently the reax pair style cannot be used as part of the -hybrid pair style. Some additional changes still need to be made to -enable this.

-
-

As an example, say your LAMMPS simulation has 4 atom types and the -elements are ordered as C, H, O, N in the ffield file. If you want -the LAMMPS atom type 1 and 2 to be C, type 3 to be N, and type 4 to be -H, you would use the following pair_coeff command:

-
pair_coeff * * ffield.reax 1 1 4 2
-
-
-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

This pair style does not support the pair_modify -mix, shift, table, and tail options.

-

This pair style does not write its information to binary restart files, since it is stored in potential files. Thus, you -need to re-specify the pair_style and pair_coeff commands in an input -script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-

Restrictions

-

The ReaxFF potential files provided with LAMMPS in the potentials -directory are parameterized for real units. You can use -the ReaxFF potential with any LAMMPS units, but you would need to -create your own potential file with coefficients listed in the -appropriate units if your simulation doesn’t use “real” units.

-
- -
-

Default

-

The keyword defaults are hbcut = 6, hbnewflag = 1, tripflag = 1, -precision = 1.0e-6.

-
-

(Chenoweth_2008) Chenoweth, van Duin and Goddard, -Journal of Physical Chemistry A, 112, 1040-1053 (2008).

-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_reax_c.html b/doc/pair_reax_c.html deleted file mode 100644 index b8498f7055..0000000000 --- a/doc/pair_reax_c.html +++ /dev/null @@ -1,455 +0,0 @@ - - - - - - - - - - - pair_style reax/c command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style reax/c command

-
-

Syntax

-
pair_style reax/c cfile keyword value
-
-
-
    -
  • cfile = NULL or name of a control file
  • -
  • zero or more keyword/value pairs may be appended
  • -
-
-keyword = checkqeq or lgvdw or safezone or mincap
-  checkqeq value = yes or no = whether or not to require qeq/reax fix
-  lgvdw value = yes or no = whether or not to use a low gradient vdW correction
-  safezone = factor used for array allocation
-  mincap = minimum size for array allocation
-
-
-
-

Examples

-
pair_style reax/c NULL
-pair_style reax/c controlfile checkqeq no
-pair_style reax/c NULL lgvdw yes
-pair_style reax/c NULL safezone 1.6 mincap 100
-pair_coeff * * ffield.reax C H O N
-
-
-
-
-

Description

-

Style reax/c computes the ReaxFF potential of van Duin, Goddard and -co-workers. ReaxFF uses distance-dependent bond-order functions to -represent the contributions of chemical bonding to the potential -energy. There is more than one version of ReaxFF. The version -implemented in LAMMPS uses the functional forms documented in the -supplemental information of the following paper: (Chenoweth et al., 2008). The version integrated into LAMMPS matches -the most up-to-date version of ReaxFF as of summer 2010. For more -technical details about the pair reax/c implementation of ReaxFF, see -the (Aktulga) paper.

-

The reax/c style differs from the pair_style reax -command in the lo-level implementation details. The reax style is a -Fortran library, linked to LAMMPS. The reax/c style was initially -implemented as stand-alone C code and is now integrated into LAMMPS as -a package.

-

LAMMPS provides several different versions of ffield.reax in its -potentials dir, each called potentials/ffield.reax.label. These are -documented in potentials/README.reax. The default ffield.reax -contains parameterizations for the following elements: C, H, O, N.

-

The format of these files is identical to that used originally by van -Duin. We have tested the accuracy of pair_style reax/c potential -against the original ReaxFF code for the systems mentioned above. You -can use other ffield files for specific chemical systems that may be -available elsewhere (but note that their accuracy may not have been -tested).

-
-

Note

-

We do not distribute a wide variety of ReaxFF force field files -with LAMMPS. Adri van Duin’s group at PSU is the central repository -for this kind of data as they are continuously deriving and updating -parameterizations for different classes of materials. You can submit -a contact request at the Materials Computation Center (MCC) website -https://www.mri.psu.edu/materials-computation-center/connect-mcc, -describing the material(s) you are interested in modeling with ReaxFF. -They can tell -you what is currently available or what it would take to create a -suitable ReaxFF parameterization.

-
-

The cfile setting can be specified as NULL, in which case default -settings are used. A control file can be specified which defines -values of control variables. Some control variables are -global parameters for the ReaxFF potential. Others define certain -performance and output settings. -Each line in the control file specifies the value for -a control variable. The format of the control file is described -below.

-
-

Note

-

The LAMMPS default values for the ReaxFF global parameters -correspond to those used by Adri van Duin’s stand-alone serial -code. If these are changed by setting control variables in the control -file, the results from LAMMPS and the serial code will not agree.

-
-

Two examples using pair_style reax/c are provided in the examples/reax -sub-directory, along with corresponding examples for -pair_style reax.

-

Use of this pair style requires that a charge be defined for every -atom. See the atom_style and -read_data commands for details on how to specify -charges.

-

The ReaxFF parameter files provided were created using a charge -equilibration (QEq) model for handling the electrostatic interactions. -Therefore, by default, LAMMPS requires that the fix qeq/reax command be used with pair_style reax/c -when simulating a ReaxFF model, to equilibrate charge each timestep. -Using the keyword checkqeq with the value no -turns off the check for fix qeq/reax, -allowing a simulation to be run without charge equilibration. -In this case, the static charges you -assign to each atom will be used for computing the electrostatic -interactions in the system. -See the fix qeq/reax command for details.

-

Using the optional keyword lgvdw with the value yes turns on -the low-gradient correction of the ReaxFF/C for long-range -London Dispersion, as described in the (Liu) paper. Force field -file ffield.reax.lg is designed for this correction, and is trained -for several energetic materials (see “Liu”). When using lg-correction, -recommended value for parameter thb is 0.01, which can be set in the -control file. Note: Force field files are different for the original -or lg corrected pair styles, using wrong ffield file generates an error message.

-

Optional keywords safezone and mincap are used for allocating -reax/c arrays. Increase these values can avoid memory problems, such -as segmentation faults and bondchk failed errors, that could occur under -certain conditions.

-

The thermo variable evdwl stores the sum of all the ReaxFF potential -energy contributions, with the exception of the Coulombic and charge -equilibration contributions which are stored in the thermo variable -ecoul. The output of these quantities is controlled by the -thermo command.

-

This pair style tallies a breakdown of the total ReaxFF potential -energy into sub-categories, which can be accessed via the compute pair command as a vector of values of length 14. -The 14 values correspond to the following sub-categories (the variable -names in italics match those used in the original FORTRAN ReaxFF code):

-
    -
  1. eb = bond energy
  2. -
  3. ea = atom energy
  4. -
  5. elp = lone-pair energy
  6. -
  7. emol = molecule energy (always 0.0)
  8. -
  9. ev = valence angle energy
  10. -
  11. epen = double-bond valence angle penalty
  12. -
  13. ecoa = valence angle conjugation energy
  14. -
  15. ehb = hydrogen bond energy
  16. -
  17. et = torsion energy
  18. -
  19. eco = conjugation energy
  20. -
  21. ew = van der Waals energy
  22. -
  23. ep = Coulomb energy
  24. -
  25. efi = electric field energy (always 0.0)
  26. -
  27. eqeq = charge equilibration energy
  28. -
-

To print these quantities to the log file (with descriptive column -headings) the following commands could be included in an input script:

-
compute reax all pair reax/c
-variable eb           equal c_reax[1]
-variable ea           equal c_reax[2]
-...
-variable eqeq         equal c_reax[14]
-thermo_style custom step temp epair v_eb v_ea ... v_eqeq
-
-
-

Only a single pair_coeff command is used with the reax/c style which -specifies a ReaxFF potential file with parameters for all needed -elements. These are mapped to LAMMPS atom types by specifying N -additional arguments after the filename in the pair_coeff command, -where N is the number of LAMMPS atom types:

-
    -
  • filename
  • -
  • N indices = ReaxFF elements
  • -
-

The filename is the ReaxFF potential file. Unlike for the reax -pair style, any filename can be used.

-

In the ReaxFF potential file, near the top, after the general -parameters, is the atomic parameters section that contains element -names, each with a couple dozen numeric parameters. If there are M -elements specified in the ffield file, think of these as numbered 1 -to M. Each of the N indices you specify for the N atom types of LAMMPS -atoms must be an integer from 1 to M. Atoms with LAMMPS type 1 will -be mapped to whatever element you specify as the first index value, -etc. If a mapping value is specified as NULL, the mapping is not -performed. This can be used when the reax/c style is used as part -of the hybrid pair style. The NULL values are placeholders for atom -types that will be used with other potentials.

-

As an example, say your LAMMPS simulation has 4 atom types and the -elements are ordered as C, H, O, N in the ffield file. If you want -the LAMMPS atom type 1 and 2 to be C, type 3 to be N, and type 4 to be -H, you would use the following pair_coeff command:

-
pair_coeff * * ffield.reax C C N H
-
-
-
-

The format of a line in the control file is as follows:

-
variable_name value
-
-
-

and it may be followed by an ”!” character and a trailing comment.

-

If the value of a control variable is not specified, then default -values are used. What follows is the list of variables along with a -brief description of their use and default values.

-

simulation_name: Output files produced by pair_style reax/c carry -this name + extensions specific to their contents. Partial energies -are reported with a ”.pot” extension, while the trajectory file has -”.trj” extension.

-

tabulate_long_range: To improve performance, long range interactions -can optionally be tabulated (0 means no tabulation). Value of this -variable denotes the size of the long range interaction table. The -range from 0 to long range cutoff (defined in the ffield file) is -divided into tabulate_long_range points. Then at the start of -simulation, we fill in the entries of the long range interaction table -by computing the energies and forces resulting from van der Waals and -Coulomb interactions between every possible atom type pairs present in -the input system. During the simulation we consult to the long range -interaction table to estimate the energy and forces between a pair of -atoms. Linear interpolation is used for estimation. (default value = -0)

-

energy_update_freq: Denotes the frequency (in number of steps) of -writes into the partial energies file. (default value = 0)

-

nbrhood_cutoff: Denotes the near neighbors cutoff (in Angstroms) -regarding the bonded interactions. (default value = 5.0)

-

hbond_cutoff: Denotes the cutoff distance (in Angstroms) for hydrogen -bond interactions.(default value = 7.5. Value of 0.0 turns off hydrogen

-
-
bonds)
-

bond_graph_cutoff: is the threshold used in determining what is a -physical bond, what is not. Bonds and angles reported in the -trajectory file rely on this cutoff. (default value = 0.3)

-

thb_cutoff: cutoff value for the strength of bonds to be considered in -three body interactions. (default value = 0.001)

-

thb_cutoff_sq: cutoff value for the strength of bond order products -to be considered in three body interactions. (default value = 0.00001)

-

write_freq: Frequency of writes into the trajectory file. (default -value = 0)

-

traj_title: Title of the trajectory - not the name of the trajectory -file.

-

atom_info: 1 means print only atomic positions + charge (default = 0)

-

atom_forces: 1 adds net forces to atom lines in the trajectory file -(default = 0)

-

atom_velocities: 1 adds atomic velocities to atoms line (default = 0)

-

bond_info: 1 prints bonds in the trajectory file (default = 0)

-

angle_info: 1 prints angles in the trajectory file (default = 0)

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

This pair style does not support the pair_modify -mix, shift, table, and tail options.

-

This pair style does not write its information to binary restart files, since it is stored in potential files. Thus, you -need to re-specify the pair_style and pair_coeff commands in an input -script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-

Restrictions

-

This pair style is part of the USER-REAXC package. It is only enabled -if LAMMPS was built with that package. See the Making LAMMPS section for more info.

-

The ReaxFF potential files provided with LAMMPS in the potentials -directory are parameterized for real units. You can use -the ReaxFF potential with any LAMMPS units, but you would need to -create your own potential file with coefficients listed in the -appropriate units if your simulation doesn’t use “real” units.

-
- -
-

Default

-

The keyword defaults are checkqeq = yes, lgvdw = no, safezone = 1.2, -mincap = 50.

-
-

(Chenoweth_2008) Chenoweth, van Duin and Goddard, -Journal of Physical Chemistry A, 112, 1040-1053 (2008).

-

(Aktulga) Aktulga, Fogarty, Pandit, Grama, Parallel Computing, 38, -245-259 (2012).

-

(Liu) L. Liu, Y. Liu, S. V. Zybin, H. Sun and W. A. Goddard, Journal -of Physical Chemistry A, 115, 11016-11022 (2011).

-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_resquared.html b/doc/pair_resquared.html deleted file mode 100644 index a2c6fa6493..0000000000 --- a/doc/pair_resquared.html +++ /dev/null @@ -1,376 +0,0 @@ - - - - - - - - - - - pair_style resquared command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style resquared command

-
-
-

pair_style resquared/gpu command

-
-
-

pair_style resquared/omp command

-
-

Syntax

-
pair_style resquared cutoff
-
-
-
    -
  • cutoff = global cutoff for interactions (distance units)
  • -
-
-
-

Examples

-
pair_style resquared 10.0
-pair_coeff * * 1.0 1.0 1.7 3.4 3.4 1.0 1.0 1.0
-
-
-
-
-

Description

-

Style resquared computes the RE-squared anisotropic interaction -(Everaers), (Babadi) between pairs of -ellipsoidal and/or spherical Lennard-Jones particles. For ellipsoidal -interactions, the potential considers the ellipsoid as being comprised -of small spheres of size sigma. LJ particles are a single sphere of -size sigma. The distinction is made to allow the pair style to make -efficient calculations of ellipsoid/solvent interactions.

-

Details for the equations used are given in the references below and -in this supplementary document.

-

Use of this pair style requires the NVE, NVT, or NPT fixes with the -asphere extension (e.g. fix nve/asphere) in -order to integrate particle rotation. Additionally, atom_style ellipsoid should be used since it defines the -rotational state and the size and shape of each ellipsoidal particle.

-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above, or in the data file or restart files read by the -read_data or read_restart -commands:

-
    -
  • A12 = Energy Prefactor/Hamaker constant (energy units)
  • -
  • sigma = atomic interaction diameter (distance units)
  • -
  • epsilon_i_a = relative well depth of type I for side-to-side interactions
  • -
  • epsilon_i_b = relative well depth of type I for face-to-face interactions
  • -
  • epsilon_i_c = relative well depth of type I for end-to-end interactions
  • -
  • epsilon_j_a = relative well depth of type J for side-to-side interactions
  • -
  • epsilon_j_b = relative well depth of type J for face-to-face interactions
  • -
  • epsilon_j_c = relative well depth of type J for end-to-end interactions
  • -
  • cutoff (distance units)
  • -
-

The parameters used depend on the type of the interacting particles, -i.e. ellipsoids or LJ spheres. The type of a particle is determined -by the diameters specified for its 3 shape paramters. If all 3 shape -parameters = 0.0, then the particle is treated as an LJ sphere. The -epsilon_i_* or epsilon_j_* parameters are ignored for LJ spheres. If -the 3 shape paraemters are > 0.0, then the particle is treated as an -ellipsoid (even if the 3 parameters are equal to each other).

-

A12 specifies the energy prefactor which depends on the types of the -two interacting particles.

-

For ellipsoid/ellipsoid interactions, the interaction is computed by -the formulas in the supplementary docuement referenced above. A12 is -the Hamaker constant as described in (Everaers). In LJ -units:

-_images/pair_resquared.jpg -

where rho gives the number density of the spherical particles -composing the ellipsoids and epsilon_LJ determines the interaction -strength of the spherical particles.

-

For ellipsoid/LJ sphere interactions, the interaction is also computed -by the formulas in the supplementary docuement referenced above. A12 -has a modifed form (see here for -details):

-_images/pair_resquared2.jpg -

For ellipsoid/LJ sphere interactions, a correction to the distance- -of-closest approach equation has been implemented to reduce the error -from two particles of disparate sizes; see this supplementary document.

-

For LJ sphere/LJ sphere interactions, the interaction is computed -using the standard Lennard-Jones formula, which is much cheaper to -compute than the ellipsoidal formulas. A12 is used as epsilon in the -standard LJ formula:

-_images/pair_resquared3.jpg -

and the specified sigma is used as the sigma in the standard LJ -formula.

-

When one of both of the interacting particles are ellipsoids, then -sigma specifies the diameter of the continuous distribution of -constituent particles within each ellipsoid used to model the -RE-squared potential. Note that this is a different meaning for -sigma than the pair_style gayberne potential -uses.

-

The epsilon_i and epsilon_j coefficients are defined for atom types, -not for pairs of atom types. Thus, in a series of pair_coeff -commands, they only need to be specified once for each atom type.

-

Specifically, if any of epsilon_i_a, epsilon_i_b, epsilon_i_c are -non-zero, the three values are assigned to atom type I. If all the -epsilon_i values are zero, they are ignored. If any of epsilon_j_a, -epsilon_j_b, epsilon_j_c are non-zero, the three values are assigned -to atom type J. If all three epsilon_i values are zero, they are -ignored. Thus the typical way to define the epsilon_i and epsilon_j -coefficients is to list their values in “pair_coeff I J” commands when -I = J, but set them to 0.0 when I != J. If you do list them when I != -J, you should insure they are consistent with their values in other -pair_coeff commands.

-

Note that if this potential is being used as a sub-style of -pair_style hybrid, and there is no “pair_coeff I I” -setting made for RE-squared for a particular type I (because I-I -interactions are computed by another hybrid pair potential), then you -still need to insure the epsilon a,b,c coefficients are assigned to -that type in a “pair_coeff I J” command.

-

For large uniform molecules it has been shown that the epsilon_*_* -energy parameters are approximately representable in terms of local -contact curvatures (Everaers):

-_images/pair_resquared4.jpg -

where a, b, and c give the particle diameters.

-

The last coefficient is optional. If not specified, the global cutoff -specified in the pair_style command is used.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, the epsilon and sigma coefficients -and cutoff distance can be mixed, but only for sphere pairs. The -default mix value is geometric. See the “pair_modify” command for -details. Other type pairs cannot be mixed, due to the different -meanings of the energy prefactors used to calculate the interactions -and the implicit dependence of the ellipsoid-sphere interaction on the -equation for the Hamaker constant presented here. Mixing of sigma and -epsilon followed by calculation of the energy prefactors using the -equations above is recommended.

-

This pair styles supports the pair_modify shift -option for the energy of the Lennard-Jones portion of the pair -interaction, but only for sphere-sphere interactions. There is no -shifting performed for ellipsoidal interactions due to the anisotropic -dependence of the interaction.

-

The pair_modify table option is not relevant -for this pair style.

-

This pair style does not support the pair_modify -tail option for adding long-range tail corrections to energy and -pressure.

-

This pair style writes its information to binary restart files, so pair_style and pair_coeff commands do not need -to be specified in an input script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords of the run_style command.

-
-
-
-

Restrictions

-

This style is part of the ASPHERE package. It is only enabled if -LAMMPS was built with that package. See the Making LAMMPS section for more info.

-

This pair style requires that atoms be ellipsoids as defined by the -atom_style ellipsoid command.

-

Particles acted on by the potential can be finite-size aspherical or -spherical particles, or point particles. Spherical particles have all -3 of their shape parameters equal to each other. Point particles have -all 3 of their shape parameters equal to 0.0.

-

The distance-of-closest-approach approximation used by LAMMPS becomes -less accurate when high-aspect ratio ellipsoids are used.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_sdk.html b/doc/pair_sdk.html deleted file mode 100644 index 0b4ac3ecdb..0000000000 --- a/doc/pair_sdk.html +++ /dev/null @@ -1,329 +0,0 @@ - - - - - - - - - - - pair_style lj/sdk command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style lj/sdk command

-
-
-

pair_style lj/sdk/gpu command

-
-
-

pair_style lj/sdk/kk command

-
-
-

pair_style lj/sdk/omp command

-
-
-

pair_style lj/sdk/coul/long command

-
-
-

pair_style lj/sdk/coul/long/gpu command

-
-
-

pair_style lj/sdk/coul/long/omp command

-
-

Syntax

-
pair_style style args
-
-
-
    -
  • style = lj/sdk or lj/sdk/coul/long
  • -
  • args = list of arguments for a particular style
  • -
-
-lj/sdk args = cutoff
-  cutoff = global cutoff for Lennard Jones interactions (distance units)
-lj/sdk/coul/long args = cutoff (cutoff2)
-  cutoff = global cutoff for LJ (and Coulombic if only 1 arg) (distance units)
-  cutoff2 = global cutoff for Coulombic (optional) (distance units)
-
-
-
-

Examples

-
pair_style lj/sdk 2.5
-pair_coeff 1 1 lj12_6 1 1.1 2.8
-
-
-
pair_style lj/sdk/coul/long 10.0
-pair_style lj/sdk/coul/long 10.0 12.0
-pair_coeff 1 1 lj9_6 100.0 3.5 12.0
-
-
-
-
-

Description

-

The lj/sdk styles compute a 9/6, 12/4, or 12/6 Lennard-Jones potential, -given by

-_images/pair_cmm.jpg -

as required for the SDK Coarse-grained MD parametrization discussed in -(Shinoda) and (DeVane). Rc is the cutoff.

-

Style lj/sdk/coul/long computes the adds Coulombic interactions -with an additional damping factor applied so it can be used in -conjunction with the kspace_style command and -its ewald or pppm or pppm/cg option. The Coulombic cutoff -specified for this style means that pairwise interactions within -this distance are computed directly; interactions outside that -distance are computed in reciprocal space.

-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above, or in the data file or restart files read by the -read_data or read_restart -commands, or by mixing as described below:

-
    -
  • cg_type (lj9_6, lj12_4, or lj12_6)
  • -
  • epsilon (energy units)
  • -
  • sigma (distance units)
  • -
  • cutoff1 (distance units)
  • -
-

Note that sigma is defined in the LJ formula as the zero-crossing -distance for the potential, not as the energy minimum. The prefactors -are chosen so that the potential minimum is at -epsilon.

-

The latter 2 coefficients are optional. If not specified, the global -LJ and Coulombic cutoffs specified in the pair_style command are used. -If only one cutoff is specified, it is used as the cutoff for both LJ -and Coulombic interactions for this type pair. If both coefficients -are specified, they are used as the LJ and Coulombic cutoffs for this -type pair.

-

For lj/sdk/coul/long only the LJ cutoff can be specified since a -Coulombic cutoff cannot be specified for an individual I,J type pair. -All type pairs use the same global Coulombic cutoff specified in the -pair_style command.

-
-

Styles with a cuda, gpu, intel, kk, omp or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP, and OPT packages respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, and rRESPA info:

-

For atom type pairs I,J and I != J, the epsilon and sigma coefficients -and cutoff distance for all of the lj/sdk pair styles cannot be mixed, -since different pairs may have different exponents. So all parameters -for all pairs have to be specified explicitly through the “pair_coeff” -command. Defining then in a data file is also not supported, due to -limitations of that file format.

-

All of the lj/sdk pair styles support the -pair_modify shift option for the energy of the -Lennard-Jones portion of the pair interaction.

-

The lj/sdk/coul/long pair styles support the -pair_modify table option since they can tabulate -the short-range portion of the long-range Coulombic interaction.

-

All of the lj/sdk pair styles write their information to binary restart files, so pair_style and pair_coeff commands do -not need to be specified in an input script that reads a restart file.

-

The lj/sdk and lj/cut/coul/long pair styles do not support -the use of the inner, middle, and outer keywords of the run_style respa command.

-
-
-
-

Restrictions

-

All of the lj/sdk pair styles are part of the USER-CG-CMM package. -The lj/sdk/coul/long style also requires the KSPACE package to be -built (which is enabled by default). They are only enabled if LAMMPS -was built with that package. See the Making LAMMPS section for more info.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_smd_hertz.html b/doc/pair_smd_hertz.html deleted file mode 100644 index 923c520a0e..0000000000 --- a/doc/pair_smd_hertz.html +++ /dev/null @@ -1,233 +0,0 @@ - - - - - - - - - - - pair_style smd/hertz command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style smd/hertz command

-
-

Syntax

-
pair_style smd/hertz scale_factor
-
-
-
-
-

Examples

-

pair_style smd/hertz 1.0 -pair_coeff 1 1 <contact_stiffness>

-
-
-

Description

-

The smd/hertz style calculates contact forces between SPH particles belonging to different physical bodies.

-

The contact forces are calculated using a Hertz potential, which evaluates the overlap between two particles -(whose spatial extents are defined via its contact radius). -The effect is that a particles cannot penetrate into each other. -The parameter <contact_stiffness> has units of pressure and should equal roughly one half -of the Young’s modulus (or bulk modulus in the case of fluids) of the material model associated with the SPH particles.

-

The parameter scale_factor can be used to scale the particles’ contact radii. This can be useful to control how close -particles can approach each other. Usually, *scale_factor*=1.0.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

No mixing is performed automatically. -Currently, no part of USER-SMD supports restarting nor minimization. -rRESPA does not apply to this pair style.

-
-
-
-

Restrictions

-

This fix is part of the USER-SMD package. It is only enabled if -LAMMPS was built with that package. See the Making LAMMPS -section for more info.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_smd_tlsph.html b/doc/pair_smd_tlsph.html deleted file mode 100644 index 3d3b251331..0000000000 --- a/doc/pair_smd_tlsph.html +++ /dev/null @@ -1,243 +0,0 @@ - - - - - - - - - - - pair_style smd/tlsph command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style smd/tlsph command

-
-

Syntax

-
pair_style smd/tlsph args
-
-
-
-
-

Examples

-

pair_style smd/tlsph

-
-
-

Description

-

The smd/tlsph style computes particle interactions according to continuum mechanics constitutive laws and a Total-Lagrangian Smooth-Particle Hydrodynamics algorithm.

-

This pair style is invoked with the following command:

-
pair_style smd/tlsph
-pair_coeff i j *COMMON rho0 E nu Q1 Q2 hg Cp &
-               *END
-
-
-

Here, i and j denote the LAMMPS particle types for which this pair style is -defined. Note that i and j must be equal, i.e., no tlsph cross interactions -between different particle types are allowed. -In contrast to the usual LAMMPS pair coeff definitions, which are given solely a -number of floats and integers, the tlsph pair coeff definition is organised using -keywords. These keywords mark the beginning of different sets of parameters for particle properties, -material constitutive models, and damage models. The pair coeff line must be terminated with -the **END* keyword. The use the line continuation operator & is recommended. A typical -invocation of the tlsph for a solid body would consist of an equation of state for computing -the pressure (the diagonal components of the stress tensor), and a material model to compute shear -stresses (the off-diagonal components of the stress tensor). Damage and failure models can also be added.

-

Please see the SMD user guide for a complete listing of the possible keywords and material models.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

No mixing is performed automatically. -Currently, no part of USER-SMD supports restarting nor minimization. -rRESPA does not apply to this pair style.

-
-
-
-

Restrictions

-

This fix is part of the USER-SMD package. It is only enabled if -LAMMPS was built with that package. See the Making LAMMPS -section for more info.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_smd_triangulated_surface.html b/doc/pair_smd_triangulated_surface.html deleted file mode 100644 index 8d901e6f1c..0000000000 --- a/doc/pair_smd_triangulated_surface.html +++ /dev/null @@ -1,234 +0,0 @@ - - - - - - - - - - - pair_style smd/tri_surface command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style smd/tri_surface command

-
-

Syntax

-
pair_style smd/tri_surface scale_factor
-
-
-
-
-

Examples

-

pair_style smd/tri_surface 1.0 -pair_coeff 1 1 <contact_stiffness>

-
-
-

Description

-

The smd/tri_surface style calculates contact forces between SPH particles and a rigid wall boundary defined via the -smd/wall_surface fix.

-

The contact forces are calculated using a Hertz potential, which evaluates the overlap between a particle -(whose spatial extents are defined via its contact radius) and the triangle. -The effect is that a particle cannot penetrate into the triangular surface. -The parameter <contact_stiffness> has units of pressure and should equal roughly one half -of the Young’s modulus (or bulk modulus in the case of fluids) of the material model associated with the SPH particle

-

The parameter scale_factor can be used to scale the particles’ contact radii. This can be useful to control how close -particles can approach the triangulated surface. Usually, *scale_factor*=1.0.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

No mixing is performed automatically. -Currently, no part of USER-SMD supports restarting nor minimization. -rRESPA does not apply to this pair style.

-
-
-
-

Restrictions

-

This fix is part of the USER-SMD package. It is only enabled if -LAMMPS was built with that package. See the Making LAMMPS -section for more info.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_smd_ulsph.html b/doc/pair_smd_ulsph.html deleted file mode 100644 index d91d9a06d6..0000000000 --- a/doc/pair_smd_ulsph.html +++ /dev/null @@ -1,248 +0,0 @@ - - - - - - - - - - - pair_style smd/ulsph command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style smd/ulsph command

-
-

Syntax

-
pair_style smd/ulsph args
-
-
-
    -
  • these keywords must be given
  • -
-

keyword = **DENSITY_SUMMATION* or **DENSITY_CONTINUITY* and **VELOCITY_GRADIENT* or **NO_VELOCITY_GRADIENT* and **GRADIENT_CORRECTION* or **NO_GRADIENT_CORRECTION*

-
-
-

Examples

-

pair_style smd/ulsph *DENSITY_CONTINUITY *VELOCITY_GRADIENT *NO_GRADIENT_CORRECTION

-
-
-

Description

-

The smd/ulsph style computes particle interactions according to continuum mechanics constitutive laws and an updated Lagrangian Smooth-Particle Hydrodynamics algorithm.

-

This pair style is invoked similar to the following command:

-
pair_style smd/ulsph *DENSITY_CONTINUITY *VELOCITY_GRADIENT *NO_GRADIENT_CORRECTION
-pair_coeff i j *COMMON rho0 c0 Q1 Cp hg &
-               *END
-
-
-

Here, i and j denote the LAMMPS particle types for which this pair style is -defined. Note that i and j can be different, i.e., ulsph cross interactions -between different particle types are allowed. However, ii respectively jj pair_coeff lines have to preceed a cross interaction. -In contrast to the usual LAMMPS pair coeff definitions, which are given solely a -number of floats and integers, the ulsph pair coeff definition is organised using -keywords. These keywords mark the beginning of different sets of parameters for particle properties, -material constitutive models, and damage models. The pair coeff line must be terminated with -the **END* keyword. The use the line continuation operator & is recommended. A typical -invocation of the ulsph for a solid body would consist of an equation of state for computing -the pressure (the diagonal components of the stress tensor), and a material model to compute shear -stresses (the off-diagonal components of the stress tensor).

-

Note that the use of *GRADIENT_CORRECTION can lead to severe numerical instabilities. For a general fluid simulation, *NO_GRADIENT_CORRECTION is recommended.

-

Please see the SMD user guide for a complete listing of the possible keywords and material models.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

No mixing is performed automatically. -Currently, no part of USER-SMD supports restarting nor minimization. -rRESPA does not apply to this pair style.

-
-
-
-

Restrictions

-

This fix is part of the USER-SMD package. It is only enabled if -LAMMPS was built with that package. See the Making LAMMPS -section for more info.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_smtbq.html b/doc/pair_smtbq.html deleted file mode 100644 index a75f5ca923..0000000000 --- a/doc/pair_smtbq.html +++ /dev/null @@ -1,428 +0,0 @@ - - - - - - - - - - - pair_style smtbq command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style smtbq command

-
-

Syntax

-
pair_style smtbq
-
-
-
-
-

Examples

-
pair_style smtbq
-pair_coeff * * ffield.smtbq.Al2O3 O Al
-
-
-
-
-

Description

-

This pair stylecomputes a variable charge SMTB-Q (Second-Moment -tight-Binding QEq) potential as described in SMTB-Q_1 and -SMTB-Q_2. Briefly, the energy of metallic-oxygen systems -is given by three contributions:

-_images/pair_smtbq1.jpg -

where E<sub>tot</sub> is the total potential energy of the system, -E<sub>ES</sub> is the electrostatic part of the total energy, -E<sub>OO</sub> is the interaction between oxygens and -E<sub>MO</sub> is a short-range interaction between metal and oxygen -atoms. This interactions depend on interatomic distance -r<sub>ij</sub> and/or the charge Q<sub>i</sub> of atoms -i. Cut-off function enables smooth convergence to zero interaction.

-

The parameters appearing in the upper expressions are set in the -ffield.SMTBQ.Syst file where Syst corresponds to the selected system -(e.g. field.SMTBQ.Al2O3). Exemples for TiO<sub>2</sub>, -Al<sub>2</sub>O<sub>3</sub> are provided. A single pair_coeff command -is used with the SMTBQ styles which provides the path to the potential -file with parameters for needed elements. These are mapped to LAMMPS -atom types by specifying additional arguments after the potential -filename in the pair_coeff command. Note that atom type 1 must always -correspond to oxygen atoms. As an example, to simulate a TiO2 system, -atom type 1 has to be oxygen and atom type 2 Ti. The following -pair_coeff command should then be used:

-
pair_coeff * * PathToLammps/potentials/ffield.smtbq.TiO2 O Ti
-
-
-

The electrostatic part of the energy consists of two components

-

self-energy of atom i in the form of a second order charge dependent -polynomial and a long-range Coulombic electrostatic interaction. The -latter uses the wolf summation method described in Wolf, -spherically truncated at a longer cutoff, R<sub>coul</sub>. The -charge of each ion is modeled by an orbital Slater which depends on -the principal quantum number (n) of the outer orbital shared by the -ion.

-

Interaction between oxygen, E<sub>OO</sub>, consists of two parts, -an attractive and a repulsive part. The attractive part is effective -only at short range (< r<sub>2</sub><sup>OO</sup>). The attractive -contribution was optimized to study surfaces reconstruction -(e.g. SMTB-Q_2 in TiO<sub>2</sub>) and is not necessary -for oxide bulk modeling. The repulsive part is the Pauli interaction -between the electron clouds of oxygen. The Pauli repulsion and the -coulombic electrostatic interaction have same cut off value. In the -ffield.SMTBQ.Syst, the keyword ‘buck’ allows to consider only the -repulsive O-O interactions. The keyword ‘buckPlusAttr’ allows to -consider the repulsive and the attractive O-O interactions.

-

The short-range interaction between metal-oxygen, E<sub>MO</sub> is -based on the second moment approximation of the density of states with -a N-body potential for the band energy term, -E<sup>i</sup><sub>cov</sub>, and a Born-Mayer type repulsive terms -as indicated by the keyword ‘second_moment’ in the -ffield.SMTBQ.Syst. The energy band term is given by:

-_images/pair_smtbq2.jpg -

where &#951<sub>i</sub> is the stoichiometry of atom i, -&#948Q<sub>i</sub> is the charge delocalization of atom i, -compared to its formal charge -Q<sup>F</sup><sub>i</sub>. n<sub>0</sub>, the number of hybridized -orbitals, is calculated with to the atomic orbitals shared -d<sub>i</sub> and the stoichiometry -&#951<sub>i</sub>. r<sub>c1</sub> and r<sub>c2</sub> are the two -cutoff radius around the fourth neighbors in the cutoff function.

-

In the formalism used here, &#958<sup>0</sup> is the energy -parameter. &#958<sup>0</sup> is in tight-binding approximation the -hopping integral between the hybridized orbitals of the cation and the -anion. In the literature we find many ways to write the hopping -integral depending on whether one takes the point of view of the anion -or cation. These are equivalent vision. The correspondence between the -two visions is explained in appendix A of the article in the -SrTiO<sub>3</sub> SMTB-Q_3 (parameter &#946 shown in -this article is in fact the &#946<sub>O</sub>). To summarize the -relationship between the hopping integral &#958<sup>0</sup> and the -others, we have in an oxide C<sub>n</sub>O<sub>m</sub> the following -relationship:

-_images/pair_smtbq3.jpg -

Thus parameter &#956, indicated above, is given by : &#956 = (&#8730n -+ &#8730m) &#8260 2

-

The potential offers the possibility to consider the polarizability of -the electron clouds of oxygen by changing the slater radius of the -charge density around the oxygens through the parameters rBB, rB and -rS in the ffield.SMTBQ.Syst. This change in radius is performed -according to the method developed by E. Maras -SMTB-Q_2. This method needs to determine the number of -nearest neighbors around the oxygen. This calculation is based on -first (r<sub>1n</sub>) and second (r<sub>2n</sub>) distances -neighbors.

-

The SMTB-Q potential is a variable charge potential. The equilibrium -charge on each atom is calculated by the electronegativity -equalization (QEq) method. See Rick for further detail. One -can adjust the frequency, the maximum number of iterative loop and the -convergence of the equilibrium charge calculation. To obtain the -energy conservation in NVE thermodynamic ensemble, we recommend to use -a convergence parameter in the interval 10<sup>-5</sup> - -10<sup>-6</sup> eV.

-

The ffield.SMTBQ.Syst files are provided for few systems. They consist -of nine parts and the lines beginning with ‘#’ are comments (note that -the number of comment lines matter). The first sections are on the -potential parameters and others are on the simulation options and -might be modified. Keywords are character type and must be enclosed in -quotation marks (‘’).

-
    -
  1. Number of different element in the oxide:
  2. -
-
    -
  • N<sub>elem</sub>= 2 or 3
  • -
  • Divided line
  • -
-
    -
  1. Atomic parameters
  2. -
-

For the anion (oxygen)

-
    -
  • Name of element (char) and stoichiometry in oxide
  • -
  • Formal charge and mass of element
  • -
  • Principal quantic number of outer orbital (n), electronegativity (&#967<sup>0</sup><sub>i</simulationub>) and hardness (J<sup>0</sup><sub>i</sub>)
  • -
  • Ionic radius parameters : max coordination number (coordBB = 6 by default), bulk coordination number (coordB), surface coordination number (coordS) and rBB, rB and rS the slater radius for each coordination number. (<b>note : If you don’t want to change the slater radius, use three identical radius values</b>)
  • -
  • Number of orbital shared by the element in the oxide (d<sub>i</sub>)
  • -
  • Divided line
  • -
-

For each cations (metal):

-
    -
  • Name of element (char) and stoichiometry in oxide
  • -
  • Formal charge and mass of element
  • -
  • Number of electron in outer orbital (ne), electronegativity (&#967<sup>0</sup><sub>i</simulationub>), hardness (J<sup>0</sup><sub>i</sub>) and r<sub>Salter</sub> the slater radius for the cation.
  • -
  • Number of orbitals shared by the elements in the oxide (d<sub>i</sub>)
  • -
  • Divided line
  • -
-
    -
  1. Potential parameters:
  2. -
-
    -
  • Keyword for element1, element2 and interaction potential (‘second_moment’ or ‘buck’ or ‘buckPlusAttr’) between element 1 and 2. If the potential is ‘second_moment’, specify ‘oxide’ or ‘metal’ for metal-oxygen or metal-metal interactions respectively.
  • -
  • Potential parameter: <pre><br/> If type of potential is ‘second_moment’ : A (eV), p, &#958<sup>0</sup> (eV) and q <br/> r<sub>c1</sub> (&#197), r<sub>c2</sub> (&#197) and r<sub>0</sub> (&#197) <br/> If type of potential is ‘buck’ : C (eV) and &#961 (&#197) <br/> If type of potential is ‘buckPlusAttr’ : C (eV) and &#961 (&#197) <br/> D (eV), B (&#197<sup>-1</sup>), r<sub>1</sub><sup>OO</sup> (&#197) and r<sub>2</sub><sup>OO</sup> (&#197) </pre>
  • -
  • Divided line
  • -
-
    -
  1. Tables parameters:
  2. -
-
    -
  • Cutoff radius for the Coulomb interaction (R<sub>coul</sub>)
  • -
  • Starting radius (r<sub>min</sub> = 1,18845 &#197) and increments (dr = 0,001 &#197) for creating the potential table.
  • -
  • Divided line
  • -
-
    -
  1. Rick model parameter:
  2. -
-
    -
  • Nevery : parameter to set the frequency (1/Nevery) of the charge resolution. The charges are evaluated each Nevery time steps.
  • -
  • Max number of iterative loop (loopmax) and precision criterion (prec) in eV of the charge resolution
  • -
  • Divided line
  • -
-
    -
  1. Coordination parameter:
  2. -
-
    -
  • First (r<sub>1n</sub>) and second (r<sub>2n</sub>) neighbor distances in &#197
  • -
  • Divided line
  • -
-
    -
  1. Charge initialization mode:
  2. -
-
    -
  • Keyword (QInitMode) and initial oxygen charge (Q<sub>init</sub>). If keyword = ‘true’, all oxygen charges are initially set equal to Q<sub>init</sub>. The charges on the cations are initially set in order to respect the neutrality of the box. If keyword = ‘false’, all atom charges are initially set equal to 0 if you use “create_atom”#create_atom command or the charge specified in the file structure using read_data command.
  • -
  • Divided line
  • -
-
    -
  1. Mode for the electronegativity equalization (Qeq)
  2. -
-
    -
  • Keyword mode: <pre> <br/> QEqAll (one QEq group) | no parameters <br/> QEqAllParallel (several QEq groups) | no parameters <br/> Surface | zlim (QEq only for z>zlim) </pre>
  • -
  • Parameter if necessary
  • -
  • Divided line
  • -
-
    -
  1. Verbose
  2. -
-
    -
  • If you want the code to work in verbose mode or not : ‘true’ or ‘false’
  • -
  • If you want to print or not in file ‘Energy_component.txt’ the three main contributions to the energy of the system according to the description presented above : ‘true’ or ‘false’ and N<sub>Energy</sub>. This option writes in file every N<sub>Energy</sub> time step. If the value is ‘false’ then N<sub>Energy</sub> = 0. The file take into account the possibility to have several QEq group g then it writes: time step, number of atoms in group g, electrostatic part of energy, E<sub>ES</sub>, the interaction between oxygen, E<sub>OO</sub>, and short range metal-oxygen interaction, E<sub>MO</sub>.
  • -
  • If you want to print in file ‘Electroneg_component.txt’ the electronegativity component (&#8706E<sub>tot</sub> &#8260&#8706Q<sub>i</sub>) or not: ‘true’ or ‘false’ and N<sub>Electroneg</sub>.This option writes in file every N<sub>Electroneg</sub> time step. If the value is ‘false’ then N<sub>Electroneg</sub> = 0. The file consist in atom number i, atom type (1 for oxygen and # higher than 1 for metal), atom position: x, y and z, atomic charge of atom i, electrostatic part of atom i electronegativity, covalent part of atom i electronegativity, the hopping integral of atom i (Z&#946<sup>2</sup>)<sub>i<sub> and box electronegativity.
  • -
-
-

Note

-

This last option slows down the calculation dramatically. Use -only with a single processor simulation.

-
-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

This pair style does not support the pair_modify -mix, shift, table, and tail options.

-

This pair style does not write its information to binary restart files, since it is stored in potential files. Thus, you -needs to re-specify the pair_style and pair_coeff commands in an input -script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-

Restriction:

-

This pair style is part of the USER-SMTBQ package and is only enabled -if LAMMPS is built with that package. See the Making LAMMPS section for more info.

-

This potential requires using atom type 1 for oxygen and atom type -higher than 1 for metal atoms.

-

This pair style requires the newton setting to be “on” -for pair interactions.

-

The SMTB-Q potential files provided with LAMMPS (see the potentials -directory) are parameterized for metal units.

-
-

Citing this work:

-

Please cite related publication: N. Salles, O. Politano, E. Amzallag -and R. Tetot, Comput. Mater. Sci. 111 (2016) 181-189

-
-

(SMTB-Q_1) N. Salles, O. Politano, E. Amzallag, R. Tetot, -Comput. Mater. Sci. 111 (2016) 181-189

-

(SMTB-Q_2) E. Maras, N. Salles, R. Tetot, T. Ala-Nissila, -H. Jonsson, J. Phys. Chem. C 2015, 119, 10391-10399

-

(SMTB-Q_3) R. Tetot, N. Salles, S. Landron, E. Amzallag, Surface -Science 616, 19-8722 28 (2013)

-

(Wolf) D. Wolf, P. Keblinski, S. R. Phillpot, J. Eggebrecht, J Chem -Phys, 110, 8254 (1999).

-

(Rick) S. W. Rick, S. J. Stuart, B. J. Berne, J Chem Phys 101, 6141 -(1994).

-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_snap.html b/doc/pair_snap.html deleted file mode 100644 index 2434b49481..0000000000 --- a/doc/pair_snap.html +++ /dev/null @@ -1,353 +0,0 @@ - - - - - - - - - - - pair_style snap command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style snap command

-
-

Syntax

-
pair_style snap
-
-
-
-
-

Examples

-
pair_style snap
-pair_coeff * * snap InP.snapcoeff In P InP.snapparam In In P P
-
-
-
-
-

Description

-

Style snap computes interactions -using the spectral neighbor analysis potential (SNAP) -(Thompson). Like the GAP framework of Bartok et al. -(Bartok2010), (Bartok2013) -it uses bispectrum components -to characterize the local neighborhood of each atom -in a very general way. The mathematical definition of the -bispectrum calculation used by SNAP is identical -to that used of compute sna/atom. -In SNAP, the total energy is decomposed into a sum over -atom energies. The energy of atom i is -expressed as a weighted sum over bispectrum components.

-_images/pair_snap.jpg -

where B_k^i is the k-th bispectrum component of atom i, -and beta_k^alpha_i is the corresponding linear coefficient -that depends on alpha_i, the SNAP element of atom i. The -number of bispectrum components used and their definitions -depend on the values of twojmax and diagonalstyle -defined in the SNAP parameter file described below. -The bispectrum calculation is described in more detail -in compute sna/atom.

-

Note that unlike for other potentials, cutoffs for SNAP potentials are -not set in the pair_style or pair_coeff command; they are specified in -the SNAP potential files themselves.

-

Only a single pair_coeff command is used with the snap style which -specifies two SNAP files and the list SNAP element(s) to be -extracted. -The SNAP elements are mapped to LAMMPS atom types by specifying -N additional arguments after the 2nd filename in the pair_coeff -command, where N is the number of LAMMPS atom types:

-
    -
  • SNAP element file
  • -
  • Elem1, Elem2, ...
  • -
  • SNAP parameter file
  • -
  • N element names = mapping of SNAP elements to atom types
  • -
-

As an example, if a LAMMPS indium phosphide simulation has 4 atoms -types, with the first two being indium and the 3rd and 4th being -phophorous, the pair_coeff command would look like this:

-
pair_coeff * * snap InP.snapcoeff In P InP.snapparam In In P P
-
-
-

The 1st 2 arguments must be * * so as to span all LAMMPS atom types. -The two filenames are for the element and parameter files, respectively. -The ‘In’ and ‘P’ arguments (between the file names) are the two elements -which will be extracted from the element file. The -two trailing ‘In’ arguments map LAMMPS atom types 1 and 2 to the -SNAP ‘In’ element. The two trailing ‘P’ arguments map LAMMPS atom types -3 and 4 to the SNAP ‘P’ element.

-

If a SNAP mapping value is -specified as NULL, the mapping is not performed. -This can be used when a snap potential is used as part of the -hybrid pair style. The NULL values are placeholders for atom types -that will be used with other potentials.

-

The name of the SNAP element file usually ends in the -”.snapcoeff” extension. It may contain coefficients -for many SNAP elements. -Only those elements listed in the pair_coeff command are extracted. -The name of the SNAP parameter file usually ends in the ”.snapparam” -extension. It contains a small number -of parameters that define the overall form of the SNAP potential. -See the pair_coeff doc page for alternate ways -to specify the path for these files.

-

Quite commonly, -SNAP potentials are combined with one or more other LAMMPS pair styles -using the hybrid/overlay pair style. As an example, the SNAP -tantalum potential provided in the LAMMPS potentials directory -combines the snap and zbl pair styles. It is invoked -by the following commands:

-
variable zblcutinner equal 4
-variable zblcutouter equal 4.8
-variable zblz equal 73
-pair_style hybrid/overlay &
-zbl ${zblcutinner} ${zblcutouter} snap
-pair_coeff * * zbl 0.0
-pair_coeff 1 1 zbl ${zblz}
-pair_coeff * * snap ../potentials/Ta06A.snapcoeff Ta &
-../potentials/Ta06A.snapparam Ta
-
-
-

It is convenient to keep these commands in a separate file that can -be inserted in any LAMMPS input script using the include -command.

-

The top of the SNAP element file can contain any number of blank and comment -lines (start with #), but follows a strict -format after that. The first non-blank non-comment -line must contain two integers:

-
    -
  • nelem = Number of elements
  • -
  • ncoeff = Number of coefficients
  • -
-

This is followed by one block for each of the nelem elements. -The first line of each block contains three entries:

-
    -
  • Element symbol (text string)
  • -
  • R = Element radius (distance units)
  • -
  • w = Element weight (dimensionless)
  • -
-

This line is followed by ncoeff coefficients, one per line.

-

The SNAP parameter file can contain blank and comment lines (start -with #) anywhere. Each non-blank non-comment line must contain one -keyword/value pair. The required keywords are rcutfac and -twojmax. Optional keywords are rfac0, rmin0, diagonalstyle, -and switchflag.

-

The default values for these keywords are

-
    -
  • rfac0 = 0.99363
  • -
  • rmin0 = 0.0
  • -
  • diagonalstyle = 3
  • -
  • switchflag = 0
  • -
-

Detailed definitions of these keywords are given on the compute sna/atom doc page.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, where types I and J correspond to -two different element types, mixing is performed by LAMMPS with -user-specifiable parameters as described above. You never need to -specify a pair_coeff command with I != J arguments for this style.

-

This pair style does not support the pair_modify -shift, table, and tail options.

-

This pair style does not write its information to binary restart files, since it is stored in potential files. Thus, you -need to re-specify the pair_style and pair_coeff commands in an input -script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-

This style is part of the SNAP package. It is only enabled if -LAMMPS was built with that package. See the Making LAMMPS section for more info.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_soft.html b/doc/pair_soft.html deleted file mode 100644 index cd747dab97..0000000000 --- a/doc/pair_soft.html +++ /dev/null @@ -1,312 +0,0 @@ - - - - - - - - - - - pair_style soft command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style soft command

-
-
-

pair_style soft/gpu command

-
-
-

pair_style soft/omp command

-
-

Syntax

-
pair_style soft cutoff
-
-
-
    -
  • cutoff = global cutoff for soft interactions (distance units)
  • -
-
-
-

Examples

-
pair_style soft 1.0
-pair_coeff * * 10.0
-pair_coeff 1 1 10.0 3.0
-
-
-
pair_style soft 1.0
-pair_coeff * * 0.0
-variable prefactor equal ramp(0,30)
-fix 1 all adapt 1 pair soft a * * v_prefactor
-
-
-
-
-

Description

-

Style soft computes pairwise interactions with the formula

-_images/pair_soft.jpg -

It is useful for pushing apart overlapping atoms, since it does not -blow up as r goes to 0. A is a pre-factor that can be made to vary in -time from the start to the end of the run (see discussion below), -e.g. to start with a very soft potential and slowly harden the -interactions over time. Rc is the cutoff. See the fix nve/limit command for another way to push apart -overlapping atoms.

-

The following coefficients must be defined for each pair of atom types -via the pair_coeff command as in the examples above, -or in the data file or restart files read by the -read_data or read_restart -commands, or by mixing as described below:

-
    -
  • A (energy units)
  • -
  • cutoff (distance units)
  • -
-

The last coefficient is optional. If not specified, the global soft -cutoff is used.

-
-

Note

-

The syntax for pair_coeff with a single A -coeff is different in the current version of LAMMPS than in older -versions which took two values, Astart and Astop, to ramp between -them. This functionality is now available in a more general form -through the fix adapt command, as explained below. -Note that if you use an old input script and specify Astart and Astop -without a cutoff, then LAMMPS will interpret that as A and a cutoff, -which is probabably not what you want.

-
-

The fix adapt command can be used to vary A for one -or more pair types over the course of a simulation, in which case -pair_coeff settings for A must still be specified, but will be -overridden. For example these commands will vary the prefactor A for -all pairwise interactions from 0.0 at the beginning to 30.0 at the end -of a run:

-
variable prefactor equal ramp(0,30)
-fix 1 all adapt 1 pair soft a * * v_prefactor
-
-
-

Note that a formula defined by an equal-style variable -can use the current timestep, elapsed time in the current run, elapsed -time since the beginning of a series of runs, as well as access other -variables.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, the A coefficient and cutoff -distance for this pair style can be mixed. A is always mixed via a -geometric rule. The cutoff is mixed according to the pair_modify -mix value. The default mix value is geometric. See the -“pair_modify” command for details.

-

This pair style does not support the pair_modify -shift option, since the pair interaction goes to 0.0 at the cutoff.

-

The pair_modify table and tail options are not -relevant for this pair style.

-

This pair style writes its information to binary restart files, so pair_style and pair_coeff commands do not need -to be specified in an input script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-
-
none
-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_sph_heatconduction.html b/doc/pair_sph_heatconduction.html deleted file mode 100644 index c82a8d8009..0000000000 --- a/doc/pair_sph_heatconduction.html +++ /dev/null @@ -1,240 +0,0 @@ - - - - - - - - - - - pair_style sph/heatconduction command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style sph/heatconduction command

-
-

Syntax

-
pair_style sph/heatconduction
-
-
-
-
-

Examples

-
pair_style sph/heatconduction
-pair_coeff * * 1.0 2.4
-
-
-
-
-

Description

-

The sph/heatconduction style computes heat transport between SPH particles. -The transport model is the diffusion euqation for the internal energy.

-

See this PDF guide to using SPH in -LAMMPS.

-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above.

-
    -
  • D diffusion coefficient (length^2/time units)
  • -
  • h kernel function cutoff (distance units)
  • -
-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

This style does not support mixing. Thus, coefficients for all -I,J pairs must be specified explicitly.

-

This style does not support the pair_modify -shift, table, and tail options.

-

This style does not write information to binary restart files. Thus, you need to re-specify the pair_style and -pair_coeff commands in an input script that reads a restart file.

-

This style can only be used via the pair keyword of the run_style respa command. It does not support the inner, -middle, outer keywords.

-
-
-

Restrictions

-

This pair style is part of the USER-SPH package. It is only enabled -if LAMMPS was built with that package. See the Making LAMMPS section for more info.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_sph_idealgas.html b/doc/pair_sph_idealgas.html deleted file mode 100644 index de6668d37b..0000000000 --- a/doc/pair_sph_idealgas.html +++ /dev/null @@ -1,248 +0,0 @@ - - - - - - - - - - - pair_style sph/idealgas command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style sph/idealgas command

-
-

Syntax

-
pair_style sph/idealgas
-
-
-
-
-

Examples

-
pair_style sph/idealgas
-pair_coeff * * 1.0 2.4
-
-
-
-
-

Description

-

The sph/idealgas style computes pressure forces between particles -according to the ideal gas equation of state:

-_images/pair_sph_ideal.jpg -

where gamma = 1.4 is the heat capacity ratio, rho is the local -density, and e is the internal energy per unit mass. This pair style -also computes Monaghan’s artificial viscosity to prevent particles -from interpentrating (Monaghan).

-

See this PDF guide to using SPH in -LAMMPS.

-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above.

-
    -
  • nu artificial viscosity (no units)
  • -
  • h kernel function cutoff (distance units)
  • -
-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

This style does not support mixing. Thus, coefficients for all -I,J pairs must be specified explicitly.

-

This style does not support the pair_modify -shift, table, and tail options.

-

This style does not write information to binary restart files. Thus, you need to re-specify the pair_style and -pair_coeff commands in an input script that reads a restart file.

-

This style can only be used via the pair keyword of the run_style respa command. It does not support the inner, -middle, outer keywords.

-
-
-

Restrictions

-

This pair style is part of the USER-SPH package. It is only enabled -if LAMMPS was built with that package. See the Making LAMMPS section for more info.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_sph_lj.html b/doc/pair_sph_lj.html deleted file mode 100644 index 45c07793f4..0000000000 --- a/doc/pair_sph_lj.html +++ /dev/null @@ -1,250 +0,0 @@ - - - - - - - - - - - pair_style sph/lj command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style sph/lj command

-
-

Syntax

-
pair_style sph/lj
-
-
-
-
-

Examples

-
pair_style sph/lj
-pair_coeff * * 1.0 2.4
-
-
-
-
-

Description

-

The sph/lj style computes pressure forces between particles according -to the Lennard-Jones equation of state, which is computed according to -Ree’s 1980 polynomial fit (Ree). The Lennard-Jones parameters -epsilon and sigma are set to unity. This pair style also computes -Monaghan’s artificial viscosity to prevent particles from -interpentrating (Monaghan).

-

See this PDF guide to using SPH in -LAMMPS.

-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above.

-
    -
  • nu artificial viscosity (no units)
  • -
  • h kernel function cutoff (distance units)
  • -
-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

This style does not support mixing. Thus, coefficients for all -I,J pairs must be specified explicitly.

-

This style does not support the pair_modify -shift, table, and tail options.

-

This style does not write information to binary restart files. Thus, you need to re-specify the pair_style and -pair_coeff commands in an input script that reads a restart file.

-

This style can only be used via the pair keyword of the run_style respa command. It does not support the inner, -middle, outer keywords.

-
-
-

Restrictions

-

As noted above, the Lennard-Jones parameters epsilon and sigma are set -to unity.

-

This pair style is part of the USER-SPH package. It is only enabled -if LAMMPS was built with that package. See the Making LAMMPS section for more info.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_sph_rhosum.html b/doc/pair_sph_rhosum.html deleted file mode 100644 index c29d4e1a31..0000000000 --- a/doc/pair_sph_rhosum.html +++ /dev/null @@ -1,242 +0,0 @@ - - - - - - - - - - - pair_style sph/rhosum command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style sph/rhosum command

-
-

Syntax

-
pair_style sph/rhosum Nstep
-
-
-
    -
  • Nstep = timestep interval
  • -
-
-
-

Examples

-
pair_style sph/rhosum 10
-pair_coeff * * 2.4
-
-
-
-
-

Description

-

The sph/rhosum style computes the local particle mass density rho for -SPH particles by kernel function interpolation, every Nstep timesteps.

-

See this PDF guide to using SPH in -LAMMPS.

-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above.

-
    -
  • h (distance units)
  • -
-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

This style does not support mixing. Thus, coefficients for all -I,J pairs must be specified explicitly.

-

This style does not support the pair_modify -shift, table, and tail options.

-

This style does not write information to binary restart files. Thus, you need to re-specify the pair_style and -pair_coeff commands in an input script that reads a restart file.

-

This style can only be used via the pair keyword of the run_style respa command. It does not support the inner, -middle, outer keywords.

-
-
-

Restrictions

-

This pair style is part of the USER-SPH package. It is only enabled -if LAMMPS was built with that package. See the Making LAMMPS section for more info.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_sph_taitwater.html b/doc/pair_sph_taitwater.html deleted file mode 100644 index 2e9a5a70d1..0000000000 --- a/doc/pair_sph_taitwater.html +++ /dev/null @@ -1,250 +0,0 @@ - - - - - - - - - - - pair_style sph/taitwater command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style sph/taitwater command

-
-

Syntax

-
pair_style sph/taitwater
-
-
-
-
-

Examples

-
pair_style sph/taitwater
-pair_coeff * * 1000.0 1430.0 1.0 2.4
-
-
-
-
-

Description

-

The sph/taitwater style computes pressure forces between SPH particles -according to Tait’s equation of state:

-_images/pair_sph_tait.jpg -

where gamma = 7 and B = c_0^2 rho_0 / gamma, with rho_0 being the -reference density and c_0 the reference speed of sound.

-

This pair style also computes Monaghan’s artificial viscosity to -prevent particles from interpentrating (Monaghan).

-

See this PDF guide to using SPH in -LAMMPS.

-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above.

-
    -
  • rho0 reference density (mass/volume units)
  • -
  • c0 reference soundspeed (distance/time units)
  • -
  • nu artificial viscosity (no units)
  • -
  • h kernel function cutoff (distance units)
  • -
-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

This style does not support mixing. Thus, coefficients for all -I,J pairs must be specified explicitly.

-

This style does not support the pair_modify -shift, table, and tail options.

-

This style does not write information to binary restart files. Thus, you need to re-specify the pair_style and -pair_coeff commands in an input script that reads a restart file.

-

This style can only be used via the pair keyword of the run_style respa command. It does not support the inner, -middle, outer keywords.

-
-
-

Restrictions

-

This pair style is part of the USER-SPH package. It is only enabled -if LAMMPS was built with that package. See the Making LAMMPS section for more info.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_sph_taitwater_morris.html b/doc/pair_sph_taitwater_morris.html deleted file mode 100644 index 9228b09287..0000000000 --- a/doc/pair_sph_taitwater_morris.html +++ /dev/null @@ -1,248 +0,0 @@ - - - - - - - - - - - pair_style sph/taitwater/morris command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style sph/taitwater/morris command

-
-

Syntax

-
pair_style sph/taitwater/morris
-
-
-
-
-

Examples

-
pair_style sph/taitwater/morris
-pair_coeff * * 1000.0 1430.0 1.0 2.4
-
-
-
-
-

Description

-

The sph/taitwater/morris style computes pressure forces between SPH -particles according to Tait’s equation of state:

-_images/pair_sph_tait.jpg -

where gamma = 7 and B = c_0^2 rho_0 / gamma, with rho_0 being the -reference density and c_0 the reference speed of sound.

-

This pair style also computes laminar viscosity (Morris).

-

See this PDF guide to using SPH in -LAMMPS.

-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above.

-
    -
  • rho0 reference density (mass/volume units)
  • -
  • c0 reference soundspeed (distance/time units)
  • -
  • nu dynamic viscosity (mass*distance/time units)
  • -
  • h kernel function cutoff (distance units)
  • -
-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

This style does not support mixing. Thus, coefficients for all -I,J pairs must be specified explicitly.

-

This style does not support the pair_modify -shift, table, and tail options.

-

This style does not write information to binary restart files. Thus, you need to re-specify the pair_style and -pair_coeff commands in an input script that reads a restart file.

-

This style can only be used via the pair keyword of the run_style respa command. It does not support the inner, -middle, outer keywords.

-
-
-

Restrictions

-

This pair style is part of the USER-SPH package. It is only enabled -if LAMMPS was built with that package. See the Making LAMMPS section for more info.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_srp.html b/doc/pair_srp.html deleted file mode 100644 index 4db86f8f06..0000000000 --- a/doc/pair_srp.html +++ /dev/null @@ -1,330 +0,0 @@ - - - - - - - - - - - pair_style srp command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style srp command

-
-

Syntax

-

pair_style srp cutoff btype dist keyword value ...

-
    -
  • cutoff = global cutoff for SRP interactions (distance units)
  • -
  • btype = bond type to apply SRP interactions to (can be wildcard, see below)
  • -
  • distance = min or mid
  • -
  • zero or more keyword/value pairs may be appended
  • -
  • keyword = exclude
  • -
-
-bptype value = atom type for bond particles
-exclude value = yes or no
-
-
-
-

Examples

-
pair_style hybrid dpd 1.0 1.0 12345 srp 0.8 1 mid exclude yes
-pair_coeff 1 1 dpd 60.0 4.5 1.0
-pair_coeff 1 2 none
-pair_coeff 2 2 srp 100.0 0.8
-
-
-
pair_style hybrid dpd 1.0 1.0 12345 srp 0.8 * min exclude yes
-pair_coeff 1 1 dpd 60.0 50 1.0
-pair_coeff 1 2 none
-pair_coeff 2 2 srp 40.0
-
-
-
pair_style hybrid srp 0.8 2 mid
-pair_coeff 1 1 none
-pair_coeff 1 2 none
-pair_coeff 2 2 srp 100.0 0.8
-
-
-
-
-

Description

-

Style srp computes a soft segmental repulsive potential (SRP) that -acts between pairs of bonds. This potential is useful for preventing -bonds from passing through one another when a soft non-bonded -potential acts between beads in, for example, DPD polymer chains. An -example input script that uses this command is provided in -examples/USER/srp.

-

Bonds of specified type btype interact with one another through a -bond-pairwise potential, such that the force on bond i due to bond -j is as follows

-_images/pair_srp1.jpg -

where r and rij are the distance and unit vector between the two -bonds. Note that btype can be specified as an asterisk “*”, which -case the interaction is applied to all bond types. The mid option -computes r and rij from the midpoint distance between bonds. The -min option computes r and rij from the minimum distance between -bonds. The force acting on a bond is mapped onto the two bond atoms -according to the lever rule,

-_images/pair_srp2.jpg -

where L is the normalized distance from the atom to the point of -closest approach of bond i and j. The mid option takes L as -0.5 for each interaction as described in (Sirk).

-

The following coefficients must be defined via the -pair_coeff command as in the examples above, or in -the data file or restart file read by the read_data -or read_restart commands:

-
    -
  • C (force units)
  • -
  • rc (distance units)
  • -
-

The last coefficient is optional. If not specified, the global cutoff -is used.

-
-

Note

-

Pair style srp considers each bond of type btype to be a -fictitious “particle” of type bptype, where bptype is either the -largest atom type in the system, or the type set by the bptype flag. -Any actual existing particles with this atom type will be deleted at -the beginning of a run. This means you must specify the number of -types in your system accordingly; usually to be one larger than what -would normally be the case, e.g. via the create_box -or by changing the header in your data file. The -ficitious “bond particles” are inserted at the beginning of the run, -and serve as placeholders that define the position of the bonds. This -allows neighbor lists to be constructed and pairwise interactions to -be computed in almost the same way as is done for actual particles. -Because bonds interact only with other bonds, pair_style hybrid should be used to turn off interactions -between atom type bptype and all other types of atoms. An error -will be flagged if pair_style hybrid is not used.

-
-

The optional exclude keyword determines if forces are computed -between first neighbor (directly connected) bonds. For a setting of -no, first neighbor forces are computed; for yes they are not -computed. A setting of no cannot be used with the min option for -distance calculation because the the minimum distance between directly -connected bonds is zero.

-

Pair style srp turns off normalization of thermodynamic properties -by particle number, as if the command thermo_modify norm no had been issued.

-

The pairwise energy associated with style srp is shifted to be zero -at the cutoff distance rc.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

This pair styles does not support mixing.

-

This pair style does not support the pair_modify -shift option for the energy of the pair interaction. Note that as -discussed above, the energy term is already shifted to be 0.0 at the -cutoff distance rc.

-

The pair_modify table option is not relevant for -this pair style.

-

This pair style does not support the pair_modify -tail option for adding long-range tail corrections to energy and -pressure.

-

This pair style writes global and per-atom information to binary restart files. Pair srp should be used with pair_style hybrid, thus the pair_coeff commands need to be -specified in the input script when reading a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-

This pair style is part of the USER-MISC package. It is only enabled -if LAMMPS was built with that package. See the Making LAMMPS section -for more info.

-

This pair style must be used with pair_style hybrid.

-

This pair style requires the newton command to be on -for non-bonded interactions.

-
- -
-

Default

-

The default keyword value is exclude = yes.

-
-

(Sirk) Sirk TW, Sliozberg YR, Brennan JK, Lisal M, Andzelm JW, J -Chem Phys, 136 (13) 134903, 2012.

-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_style.html b/doc/pair_style.html deleted file mode 100644 index 74929347d9..0000000000 --- a/doc/pair_style.html +++ /dev/null @@ -1,409 +0,0 @@ - - - - - - - - - - - pair_style command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style command

-
-

Syntax

-
pair_style style args
-
-
-
    -
  • style = one of the styles from the list below
  • -
  • args = arguments used by a particular style
  • -
-
-
-

Examples

-
pair_style lj/cut 2.5
-pair_style eam/alloy
-pair_style hybrid lj/charmm/coul/long 10.0 eam
-pair_style table linear 1000
-pair_style none
-
-
-
-
-

Description

-

Set the formula(s) LAMMPS uses to compute pairwise interactions. In -LAMMPS, pair potentials are defined between pairs of atoms that are -within a cutoff distance and the set of active interactions typically -changes over time. See the bond_style command to -define potentials between pairs of bonded atoms, which typically -remain in place for the duration of a simulation.

-

In LAMMPS, pairwise force fields encompass a variety of interactions, -some of which include many-body effects, e.g. EAM, Stillinger-Weber, -Tersoff, REBO potentials. They are still classified as “pairwise” -potentials because the set of interacting atoms changes with time -(unlike molecular bonds) and thus a neighbor list is used to find -nearby interacting atoms.

-

Hybrid models where specified pairs of atom types interact via -different pair potentials can be setup using the hybrid pair style.

-

The coefficients associated with a pair style are typically set for -each pair of atom types, and are specified by the -pair_coeff command or read from a file by the -read_data or read_restart -commands.

-

The pair_modify command sets options for mixing of -type I-J interaction coefficients and adding energy offsets or tail -corrections to Lennard-Jones potentials. Details on these options as -they pertain to individual potentials are described on the doc page -for the potential. Likewise, info on whether the potential -information is stored in a restart file is listed -on the potential doc page.

-

In the formulas listed for each pair style, E is the energy of a -pairwise interaction between two atoms separated by a distance r. -The force between the atoms is the negative derivative of this -expression.

-

If the pair_style command has a cutoff argument, it sets global -cutoffs for all pairs of atom types. The distance(s) can be smaller -or larger than the dimensions of the simulation box.

-

Typically, the global cutoff value can be overridden for a specific -pair of atom types by the pair_coeff command. The -pair style settings (including global cutoffs) can be changed by a -subsequent pair_style command using the same style. This will reset -the cutoffs for all atom type pairs, including those previously set -explicitly by a pair_coeff command. The exceptions -to this are that pair_style table and hybrid settings cannot be -reset. A new pair_style command for these styles will wipe out all -previously specified pair_coeff values.

-
-

Here is an alphabetic list of pair styles defined in LAMMPS. They are -also given in more compact form in the pair section of this page.

-

Click on the style to display the formula it computes, arguments -specified in the pair_style command, and coefficients specified by the -associated pair_coeff command.

-

There are also additional pair styles (not listed here) submitted by -users which are included in the LAMMPS distribution. The list of -these with links to the individual styles are given in the pair -section of this page.

-

There are also additional accelerated pair styles (not listed here) -included in the LAMMPS distribution for faster performance on CPUs and -GPUs. The list of these with links to the individual styles are given -in the pair section of this page.

- -
-
-
-

Restrictions

-

This command must be used before any coefficients are set by the -pair_coeff, read_data, or -read_restart commands.

-

Some pair styles are part of specific packages. They are only enabled -if LAMMPS was built with that package. See the Making LAMMPS section for more info on packages. -The doc pages for individual pair potentials tell if it is part of a -package.

-
- -
-

Default

-
pair_style none
-
-
-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_sw.html b/doc/pair_sw.html deleted file mode 100644 index e5c375773d..0000000000 --- a/doc/pair_sw.html +++ /dev/null @@ -1,384 +0,0 @@ - - - - - - - - - - - pair_style sw command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style sw command

-
-
-

pair_style sw/cuda command

-
-
-

pair_style sw/gpu command

-
-
-

pair_style sw/intel command

-
-
-

pair_style sw/kk command

-
-
-

pair_style sw/omp command

-
-

Syntax

-
pair_style sw
-
-
-
-
-

Examples

-
pair_style sw
-pair_coeff * * si.sw Si
-pair_coeff * * GaN.sw Ga N Ga
-
-
-
-
-

Description

-

The sw style computes a 3-body Stillinger-Weber -potential for the energy E of a system of atoms as

-_images/pair_sw.jpg -

where phi2 is a two-body term and phi3 is a three-body term. The -summations in the formula are over all neighbors J and K of atom I -within a cutoff distance = a*sigma.

-

Only a single pair_coeff command is used with the sw style which -specifies a Stillinger-Weber potential file with parameters for all -needed elements. These are mapped to LAMMPS atom types by specifying -N additional arguments after the filename in the pair_coeff command, -where N is the number of LAMMPS atom types:

-
    -
  • filename
  • -
  • N element names = mapping of SW elements to atom types
  • -
-

See the pair_coeff doc page for alternate ways -to specify the path for the potential file.

-

As an example, imagine a file SiC.sw has Stillinger-Weber values for -Si and C. If your LAMMPS simulation has 4 atoms types and you want -the 1st 3 to be Si, and the 4th to be C, you would use the following -pair_coeff command:

-
pair_coeff * * SiC.sw Si Si Si C
-
-
-

The 1st 2 arguments must be * * so as to span all LAMMPS atom types. -The first three Si arguments map LAMMPS atom types 1,2,3 to the Si -element in the SW file. The final C argument maps LAMMPS atom type 4 -to the C element in the SW file. If a mapping value is specified as -NULL, the mapping is not performed. This can be used when a sw -potential is used as part of the hybrid pair style. The NULL values -are placeholders for atom types that will be used with other -potentials.

-

Stillinger-Weber files in the potentials directory of the LAMMPS -distribution have a ”.sw” suffix. Lines that are not blank or -comments (starting with #) define parameters for a triplet of -elements. The parameters in a single entry correspond to the two-body -and three-body coefficients in the formula above:

-
    -
  • element 1 (the center atom in a 3-body interaction)
  • -
  • element 2
  • -
  • element 3
  • -
  • epsilon (energy units)
  • -
  • sigma (distance units)
  • -
  • a
  • -
  • lambda
  • -
  • gamma
  • -
  • costheta0
  • -
  • A
  • -
  • B
  • -
  • p
  • -
  • q
  • -
  • tol
  • -
-

The A, B, p, and q parameters are used only for two-body -interactions. The lambda and costheta0 parameters are used only for -three-body interactions. The epsilon, sigma and a parameters are used -for both two-body and three-body interactions. gamma is used only in the -three-body interactions, but is defined for pairs of atoms. -The non-annotated parameters are unitless.

-

LAMMPS introduces an additional performance-optimization parameter tol -that is used for both two-body and three-body interactions. In the -Stillinger-Weber potential, the interaction energies become negligibly -small at atomic separations substantially less than the theoretical -cutoff distances. LAMMPS therefore defines a virtual cutoff distance -based on a user defined tolerance tol. The use of the virtual cutoff -distance in constructing atom neighbor lists can significantly reduce -the neighbor list sizes and therefore the computational cost. LAMMPS -provides a tol value for each of the three-body entries so that they -can be separately controlled. If tol = 0.0, then the standard -Stillinger-Weber cutoff is used.

-

The Stillinger-Weber potential file must contain entries for all the -elements listed in the pair_coeff command. It can also contain -entries for additional elements not being used in a particular -simulation; LAMMPS ignores those entries.

-

For a single-element simulation, only a single entry is required -(e.g. SiSiSi). For a two-element simulation, the file must contain 8 -entries (for SiSiSi, SiSiC, SiCSi, SiCC, CSiSi, CSiC, CCSi, CCC), that -specify SW parameters for all permutations of the two elements -interacting in three-body configurations. Thus for 3 elements, 27 -entries would be required, etc.

-

As annotated above, the first element in the entry is the center atom -in a three-body interaction. Thus an entry for SiCC means a Si atom -with 2 C atoms as neighbors. The parameter values used for the -two-body interaction come from the entry where the 2nd and 3rd -elements are the same. Thus the two-body parameters for Si -interacting with C, comes from the SiCC entry. The three-body -parameters can in principle be specific to the three elements of the -configuration. In the literature, however, the three-body parameters -are usually defined by simple formulas involving two sets of pair-wise -parameters, corresponding to the ij and ik pairs, where i is the -center atom. The user must ensure that the correct combining rule is -used to calculate the values of the threebody parameters for -alloys. Note also that the function phi3 contains two exponential -screening factors with parameter values from the ij pair and ik -pairs. So phi3 for a C atom bonded to a Si atom and a second C atom -will depend on the three-body parameters for the CSiC entry, and also -on the two-body parameters for the CCC and CSiSi entries. Since the -order of the two neighbors is arbitrary, the threebody parameters for -entries CSiC and CCSi should be the same. Similarly, the two-body -parameters for entries SiCC and CSiSi should also be the same. The -parameters used only for two-body interactions (A, B, p, and q) in -entries whose 2nd and 3rd element are different (e.g. SiCSi) are not -used for anything and can be set to 0.0 if desired. -This is also true for the parameters in phi3 that are -taken from the ij and ik pairs (sigma, a, gamma)

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

When using the USER-INTEL package with this style, there is an -additional 5 to 10 percent performance improvement when the -Stillinger-Weber parameters p and q are set to 4 and 0 respectively. -These parameters are common for modeling silicon and water.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, where types I and J correspond to -two different element types, mixing is performed by LAMMPS as -described above from values in the potential file.

-

This pair style does not support the pair_modify -shift, table, and tail options.

-

This pair style does not write its information to binary restart files, since it is stored in potential files. Thus, you -need to re-specify the pair_style and pair_coeff commands in an input -script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-

This pair style is part of the MANYBODY package. It is only enabled -if LAMMPS was built with that package (which it is by default). See -the Making LAMMPS section for more info.

-

This pair style requires the newton setting to be “on” -for pair interactions.

-

The Stillinger-Weber potential files provided with LAMMPS (see the -potentials directory) are parameterized for metal units. -You can use the SW potential with any LAMMPS units, but you would need -to create your own SW potential file with coefficients listed in the -appropriate units if your simulation doesn’t use “metal” units.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_table.html b/doc/pair_table.html deleted file mode 100644 index db745338dd..0000000000 --- a/doc/pair_table.html +++ /dev/null @@ -1,431 +0,0 @@ - - - - - - - - - - - pair_style table command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style table command

-
-
-

pair_style table/gpu command

-
-
-

pair_style table/kk command

-
-
-

pair_style table/omp command

-
-

Syntax

-
pair_style table style N keyword ...
-
-
-
    -
  • style = lookup or linear or spline or bitmap = method of interpolation
  • -
  • N = use N values in lookup, linear, spline tables
  • -
  • N = use 2^N values in bitmap tables
  • -
  • zero or more keywords may be appended
  • -
  • keyword = ewald or pppm or msm or dispersion or tip4p
  • -
-
-
-

Examples

-
pair_style table linear 1000
-pair_style table linear 1000 pppm
-pair_style table bitmap 12
-pair_coeff * 3 morse.table ENTRY1
-pair_coeff * 3 morse.table ENTRY1 7.0
-
-
-
-
-

Description

-

Style table creates interpolation tables from potential energy and -force values listed in a file(s) as a function of distance. When -performing dynamics or minimation, the interpolation tables are used -to evaluate energy and forces for pairwise interactions between -particles, similar to how analytic formulas are used for other pair -styles.

-

The interpolation tables are created as a pre-computation by fitting -cubic splines to the file values and interpolating energy and force -values at each of N distances. During a simulation, the tables are -used to interpolate energy and force values as needed for each pair of -particles separated by a distance R. The interpolation is done in -one of 4 styles: lookup, linear, spline, or bitmap.

-

For the lookup style, the distance R is used to find the nearest -table entry, which is the energy or force.

-

For the linear style, the distance R is used to find the 2 -surrounding table values from which an energy or force is computed by -linear interpolation.

-

For the spline style, a cubic spline coefficients are computed and -stored for each of the N values in the table, one set of splines for -energy, another for force. Note that these splines are different than -the ones used to pre-compute the N values. Those splines were fit -to the Nfile values in the tabulated file, where often Nfile < -N. The distance R is used to find the appropriate set of spline -coefficients which are used to evaluate a cubic polynomial which -computes the energy or force.

-

For the bitmap style, the specified N is used to create -interpolation tables that are 2^N in length. The distance R is used -to index into the table via a fast bit-mapping technique due to -(Wolff), and a linear interpolation is performed between -adjacent table values.

-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above.

-
    -
  • filename
  • -
  • keyword
  • -
  • cutoff (distance units)
  • -
-

The filename specifies a file containing tabulated energy and force -values. The keyword specifies a section of the file. The cutoff is -an optional coefficient. If not specified, the outer cutoff in the -table itself (see below) will be used to build an interpolation table -that extend to the largest tabulated distance. If specified, only -file values up to the cutoff are used to create the interpolation -table. The format of this file is described below.

-

If your tabulated potential(s) are designed to be used as the -short-range part of one of the long-range solvers specified by the -kspace_style command, then you must use one or -more of the optional keywords listed above for the pair_style command. -These are ewald or pppm or msm or dispersion or tip4p. This -is so LAMMPS can insure the short-range potential and long-range -solver are compatible with each other, as it does for other -short-range pair styles, such as pair_style lj/cut/coul/long. Note that it is up to you to insure -the tabulated values for each pair of atom types has the correct -functional form to be compatible with the matching long-range solver.

-
-

Here are some guidelines for using the pair_style table command to -best effect:

-
    -
  • Vary the number of table points; you may need to use more than you think -to get good resolution.
  • -
  • Always use the pair_write command to produce a plot -of what the final interpolated potential looks like. This can show up -interpolation “features” you may not like.
  • -
  • Start with the linear style; it’s the style least likely to have problems.
  • -
  • Use N in the pair_style command equal to the “N” in the tabulation -file, and use the “RSQ” or “BITMAP” parameter, so additional interpolation -is not needed. See discussion below.
  • -
  • Make sure that your tabulated forces and tabulated energies are -consistent (dE/dr = -F) over the entire range of r values. LAMMPS -will warn if this is not the case.
  • -
  • Use as large an inner cutoff as possible. This avoids fitting splines -to very steep parts of the potential.
  • -
-
-

The format of a tabulated file is a series of one or more sections, -defined as follows (without the parenthesized comments):

-
# Morse potential for Fe   (one or more comment or blank lines)
-
-
-
MORSE_FE                   (keyword is first text on line)
-N 500 R 1.0 10.0           (N, R, RSQ, BITMAP, FPRIME parameters)
-                           (blank)
-1 1.0 25.5 102.34          (index, r, energy, force)
-2 1.02 23.4 98.5
-...
-500 10.0 0.001 0.003
-
-
-

A section begins with a non-blank line whose 1st character is not a -“#”; blank lines or lines starting with “#” can be used as comments -between sections. The first line begins with a keyword which -identifies the section. The line can contain additional text, but the -initial text must match the argument specified in the pair_coeff -command. The next line lists (in any order) one or more parameters -for the table. Each parameter is a keyword followed by one or more -numeric values.

-

The parameter “N” is required and its value is the number of table -entries that follow. Note that this may be different than the N -specified in the pair_style table command. Let -Ntable = N in the pair_style command, and Nfile = “N” in the -tabulated file. What LAMMPS does is a preliminary interpolation by -creating splines using the Nfile tabulated values as nodal points. It -uses these to interpolate energy and force values at Ntable different -points. The resulting tables of length Ntable are then used as -described above, when computing energy and force for individual pair -distances. This means that if you want the interpolation tables of -length Ntable to match exactly what is in the tabulated file (with -effectively no preliminary interpolation), you should set Ntable = -Nfile, and use the “RSQ” or “BITMAP” parameter. This is because the -internal table abscissa is always RSQ (separation distance squared), -for efficient lookup.

-

All other parameters are optional. If “R” or “RSQ” or “BITMAP” does -not appear, then the distances in each line of the table are used -as-is to perform spline interpolation. In this case, the table values -can be spaced in r uniformly or however you wish to position table -values in regions of large gradients.

-

If used, the parameters “R” or “RSQ” are followed by 2 values rlo -and rhi. If specified, the distance associated with each energy and -force value is computed from these 2 values (at high accuracy), rather -than using the (low-accuracy) value listed in each line of the table. -The distance values in the table file are ignored in this case. -For “R”, distances uniformly spaced between rlo and rhi are -computed; for “RSQ”, squared distances uniformly spaced between -rlo*rlo and rhi*rhi are computed.

-
-

Note

-

If you use “R” or “RSQ”, the tabulated distance values in the -file are effectively ignored, and replaced by new values as described -in the previous paragraph. If the distance value in the table is not -very close to the new value (i.e. round-off difference), then you will -be assingning energy/force values to a different distance, which is -probably not what you want. LAMMPS will warn if this is occurring.

-
-

If used, the parameter “BITMAP” is also followed by 2 values rlo and -rhi. These values, along with the “N” value determine the ordering -of the N lines that follow and what distance is associated with each. -This ordering is complex, so it is not documented here, since this -file is typically produced by the pair_write command -with its bitmap option. When the table is in BITMAP format, the “N” -parameter in the file must be equal to 2^M where M is the value -specified in the pair_style command. Also, a cutoff parameter cannot -be used as an optional 3rd argument in the pair_coeff command; the -entire table extent as specified in the file must be used.

-

If used, the parameter “FPRIME” is followed by 2 values fplo and -fphi which are the derivative of the force at the innermost and -outermost distances listed in the table. These values are needed by -the spline construction routines. If not specified by the “FPRIME” -parameter, they are estimated (less accurately) by the first 2 and -last 2 force values in the table. This parameter is not used by -BITMAP tables.

-

Following a blank line, the next N lines list the tabulated values. -On each line, the 1st value is the index from 1 to N, the 2nd value is -r (in distance units), the 3rd value is the energy (in energy units), -and the 4th is the force (in force units). The r values must increase -from one line to the next (unless the BITMAP parameter is specified).

-

Note that one file can contain many sections, each with a tabulated -potential. LAMMPS reads the file section by section until it finds -one that matches the specified keyword.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

This pair style does not support mixing. Thus, coefficients for all -I,J pairs must be specified explicitly.

-

The pair_modify shift, table, and tail options are -not relevant for this pair style.

-

This pair style writes the settings for the “pair_style table” command -to binary restart files, so a pair_style command does -not need to specified in an input script that reads a restart file. -However, the coefficient information is not stored in the restart -file, since it is tabulated in the potential files. Thus, pair_coeff -commands do need to be specified in the restart input script.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-
-
none
-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_tersoff.html b/doc/pair_tersoff.html deleted file mode 100644 index bf6261354c..0000000000 --- a/doc/pair_tersoff.html +++ /dev/null @@ -1,414 +0,0 @@ - - - - - - - - - - - pair_style tersoff command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style tersoff command

-
-
-

pair_style tersoff/table command

-
-
-

pair_style tersoff/cuda

-
-
-

pair_style tersoff/gpu

-
-
-

pair_style tersoff/intel

-
-
-

pair_style tersoff/kk

-
-
-

pair_style tersoff/omp

-
-
-

pair_style tersoff/table/omp command

-
-

Syntax

-
pair_style style
-
-
-

style = tersoff or tersoff/table or tersoff/cuda or tersoff/gpu or tersoff/omp or tersoff/table/omp

-
-
-

Examples

-
pair_style tersoff
-pair_coeff * * Si.tersoff Si
-pair_coeff * * SiC.tersoff Si C Si
-
-
-
pair_style tersoff/table
-pair_coeff * * SiCGe.tersoff Si(D)
-
-
-
-
-

Description

-

The tersoff style computes a 3-body Tersoff potential -(Tersoff_1) for the energy E of a system of atoms as

-_images/pair_tersoff_1.jpg -

where f_R is a two-body term and f_A includes three-body interactions. -The summations in the formula are over all neighbors J and K of atom I -within a cutoff distance = R + D.

-

The tersoff/table style uses tabulated forms for the two-body, -environment and angular functions. Linear interpolation is performed -between adjacent table entries. The table length is chosen to be -accurate within 10^-6 with respect to the tersoff style energy. -The tersoff/table should give better performance in terms of speed.

-

Only a single pair_coeff command is used with the tersoff style -which specifies a Tersoff potential file with parameters for all -needed elements. These are mapped to LAMMPS atom types by specifying -N additional arguments after the filename in the pair_coeff command, -where N is the number of LAMMPS atom types:

-
    -
  • filename
  • -
  • N element names = mapping of Tersoff elements to atom types
  • -
-

See the pair_coeff doc page for alternate ways -to specify the path for the potential file.

-

As an example, imagine the SiC.tersoff file has Tersoff values for Si -and C. If your LAMMPS simulation has 4 atoms types and you want the -1st 3 to be Si, and the 4th to be C, you would use the following -pair_coeff command:

-
pair_coeff * * SiC.tersoff Si Si Si C
-
-
-

The 1st 2 arguments must be * * so as to span all LAMMPS atom types. -The first three Si arguments map LAMMPS atom types 1,2,3 to the Si -element in the Tersoff file. The final C argument maps LAMMPS atom -type 4 to the C element in the Tersoff file. If a mapping value is -specified as NULL, the mapping is not performed. This can be used -when a tersoff potential is used as part of the hybrid pair style. -The NULL values are placeholders for atom types that will be used with -other potentials.

-

Tersoff files in the potentials directory of the LAMMPS distribution -have a ”.tersoff” suffix. Lines that are not blank or comments -(starting with #) define parameters for a triplet of elements. The -parameters in a single entry correspond to coefficients in the formula -above:

-
    -
  • element 1 (the center atom in a 3-body interaction)
  • -
  • element 2 (the atom bonded to the center atom)
  • -
  • element 3 (the atom influencing the 1-2 bond in a bond-order sense)
  • -
  • m
  • -
  • gamma
  • -
  • lambda3 (1/distance units)
  • -
  • c
  • -
  • d
  • -
  • costheta0 (can be a value < -1 or > 1)
  • -
  • n
  • -
  • beta
  • -
  • lambda2 (1/distance units)
  • -
  • B (energy units)
  • -
  • R (distance units)
  • -
  • D (distance units)
  • -
  • lambda1 (1/distance units)
  • -
  • A (energy units)
  • -
-

The n, beta, lambda2, B, lambda1, and A parameters are only used for -two-body interactions. The m, gamma, lambda3, c, d, and costheta0 -parameters are only used for three-body interactions. The R and D -parameters are used for both two-body and three-body interactions. The -non-annotated parameters are unitless. The value of m must be 3 or 1.

-

The Tersoff potential file must contain entries for all the elements -listed in the pair_coeff command. It can also contain entries for -additional elements not being used in a particular simulation; LAMMPS -ignores those entries.

-

For a single-element simulation, only a single entry is required -(e.g. SiSiSi). For a two-element simulation, the file must contain 8 -entries (for SiSiSi, SiSiC, SiCSi, SiCC, CSiSi, CSiC, CCSi, CCC), that -specify Tersoff parameters for all permutations of the two elements -interacting in three-body configurations. Thus for 3 elements, 27 -entries would be required, etc.

-

As annotated above, the first element in the entry is the center atom -in a three-body interaction and it is bonded to the 2nd atom and the -bond is influenced by the 3rd atom. Thus an entry for SiCC means Si -bonded to a C with another C atom influencing the bond. Thus -three-body parameters for SiCSi and SiSiC entries will not, in -general, be the same. The parameters used for the two-body -interaction come from the entry where the 2nd element is repeated. -Thus the two-body parameters for Si interacting with C, comes from the -SiCC entry.

-

The parameters used for a particular -three-body interaction come from the entry with the corresponding -three elements. The parameters used only for two-body interactions -(n, beta, lambda2, B, lambda1, and A) in entries whose 2nd and 3rd -element are different (e.g. SiCSi) are not used for anything and can -be set to 0.0 if desired.

-

Note that the twobody parameters in entries such as SiCC and CSiSi -are often the same, due to the common use of symmetric mixing rules, -but this is not always the case. For example, the beta and n parameters in -Tersoff_2 (Tersoff_2) are not symmetric.

-

We chose the above form so as to enable users to define all commonly -used variants of the Tersoff potential. In particular, our form -reduces to the original Tersoff form when m = 3 and gamma = 1, while -it reduces to the form of Albe et al. when beta = 1 and m = 1. -Note that in the current Tersoff implementation in LAMMPS, m must be -specified as either 3 or 1. Tersoff used a slightly different but -equivalent form for alloys, which we will refer to as Tersoff_2 -potential (Tersoff_2). The tersoff/table style implements -Tersoff_2 parameterization only.

-

LAMMPS parameter values for Tersoff_2 can be obtained as follows: -gamma_ijk = omega_ik, lambda3 = 0 and the value of -m has no effect. The parameters for species i and j can be calculated -using the Tersoff_2 mixing rules:

-_images/pair_tersoff_2.jpg -

Tersoff_2 parameters R and S must be converted to the LAMMPS -parameters R and D (R is different in both forms), using the following -relations: R=(R’+S’)/2 and D=(S’-R’)/2, where the primes indicate the -Tersoff_2 parameters.

-

In the potentials directory, the file SiCGe.tersoff provides the -LAMMPS parameters for Tersoff’s various versions of Si, as well as his -alloy parameters for Si, C, and Ge. This file can be used for pure Si, -(three different versions), pure C, pure Ge, binary SiC, and binary -SiGe. LAMMPS will generate an error if this file is used with any -combination involving C and Ge, since there are no entries for the GeC -interactions (Tersoff did not publish parameters for this -cross-interaction.) Tersoff files are also provided for the SiC alloy -(SiC.tersoff) and the GaN (GaN.tersoff) alloys.

-

Many thanks to Rutuparna Narulkar, David Farrell, and Xiaowang Zhou -for helping clarify how Tersoff parameters for alloys have been -defined in various papers.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, where types I and J correspond to -two different element types, mixing is performed by LAMMPS as -described above from values in the potential file.

-

This pair style does not support the pair_modify -shift, table, and tail options.

-

This pair style does not write its information to binary restart files, since it is stored in potential files. Thus, you -need to re-specify the pair_style and pair_coeff commands in an input -script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-

This pair style is part of the MANYBODY package. It is only enabled -if LAMMPS was built with that package (which it is by default). See -the Making LAMMPS section for more info.

-

This pair style requires the newton setting to be “on” -for pair interactions.

-

The Tersoff potential files provided with LAMMPS (see the potentials -directory) are parameterized for metal units. You can -use the Tersoff potential with any LAMMPS units, but you would need to -create your own Tersoff potential file with coefficients listed in the -appropriate units if your simulation doesn’t use “metal” units.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_tersoff_mod.html b/doc/pair_tersoff_mod.html deleted file mode 100644 index 694bbb5988..0000000000 --- a/doc/pair_tersoff_mod.html +++ /dev/null @@ -1,351 +0,0 @@ - - - - - - - - - - - pair_style tersoff/mod command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style tersoff/mod command

-
-
-

pair_style tersoff/mod/gpu command

-
-
-

pair_style tersoff/mod/kk command

-
-
-

pair_style tersoff/mod/omp command

-
-

Syntax

-
pair_style tersoff/mod
-
-
-
-
-

Examples

-
pair_style tersoff/mod
-pair_coeff * * Si.tersoff.mod Si Si
-
-
-
-
-

Description

-

The tersoff/mod style computes a bond-order type interatomic -potential (Kumagai) based on a 3-body Tersoff potential -(Tersoff_1), (Tersoff_2) with modified -cutoff function and angular-dependent term, giving the energy E of a -system of atoms as

-_images/pair_tersoff_mod.jpg -

where f_R is a two-body term and f_A includes three-body interactions. -The summations in the formula are over all neighbors J and K of atom I -within a cutoff distance = R + D.

-

The modified cutoff function f_C proposed by (Murty) and -having a continuous second-order differential is employed. The -angular-dependent term g(theta) was modified to increase the -flexibility of the potential.

-

The tersoff/mod potential is fitted to both the elastic constants -and melting point by employing the modified Tersoff potential function -form in which the angular-dependent term is improved. The model -performs extremely well in describing the crystalline, liquid, and -amorphous phases (Schelling).

-

Only a single pair_coeff command is used with the tersoff/mod style -which specifies a Tersoff/MOD potential file with parameters for all -needed elements. These are mapped to LAMMPS atom types by specifying -N additional arguments after the filename in the pair_coeff command, -where N is the number of LAMMPS atom types:

-
    -
  • filename
  • -
  • N element names = mapping of Tersoff/MOD elements to atom types
  • -
-

As an example, imagine the Si.tersoff_mod file has Tersoff values for Si. -If your LAMMPS simulation has 3 Si atoms types, you would use the following -pair_coeff command:

-
pair_coeff * * Si.tersoff_mod Si Si Si
-
-
-

The 1st 2 arguments must be * * so as to span all LAMMPS atom types. -The three Si arguments map LAMMPS atom types 1,2,3 to the Si element -in the Tersoff/MOD file. If a mapping value is specified as NULL, the -mapping is not performed. This can be used when a tersoff/mod -potential is used as part of the hybrid pair style. The NULL values -are placeholders for atom types that will be used with other -potentials.

-

Tersoff/MOD file in the potentials directory of the LAMMPS -distribution have a ”.tersoff.mod” suffix. Lines that are not blank -or comments (starting with #) define parameters for a triplet of -elements. The parameters in a single entry correspond to coefficients -in the formula above:

-
    -
  • element 1 (the center atom in a 3-body interaction)
  • -
  • element 2 (the atom bonded to the center atom)
  • -
  • element 3 (the atom influencing the 1-2 bond in a bond-order sense)
  • -
  • beta
  • -
  • alpha
  • -
  • h
  • -
  • eta
  • -
  • beta_ters = 1 (dummy parameter)
  • -
  • lambda2 (1/distance units)
  • -
  • B (energy units)
  • -
  • R (distance units)
  • -
  • D (distance units)
  • -
  • lambda1 (1/distance units)
  • -
  • A (energy units)
  • -
  • n
  • -
  • c1
  • -
  • c2
  • -
  • c3
  • -
  • c4
  • -
  • c5
  • -
-

The n, eta, lambda2, B, lambda1, and A parameters are only used for -two-body interactions. The beta, alpha, c1, c2, c3, c4, c5, h -parameters are only used for three-body interactions. The R and D -parameters are used for both two-body and three-body interactions. The -non-annotated parameters are unitless.

-

The Tersoff/MOD potential file must contain entries for all the elements -listed in the pair_coeff command. It can also contain entries for -additional elements not being used in a particular simulation; LAMMPS -ignores those entries.

-

For a single-element simulation, only a single entry is required -(e.g. SiSiSi). As annotated above, the first element in the entry is -the center atom in a three-body interaction and it is bonded to the -2nd atom and the bond is influenced by the 3rd atom. Thus an entry -for SiSiSi means Si bonded to a Si with another Si atom influencing the bond.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

This pair style does not support the pair_modify -shift, table, and tail options.

-

This pair style does not write its information to binary restart files, since it is stored in potential files. Thus, you -need to re-specify the pair_style and pair_coeff commands in an input -script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-

This pair style is part of the MANYBODY package. It is only enabled -if LAMMPS was built with that package (which it is by default). See -the Making LAMMPS section for more info.

-

This pair style requires the newton setting to be “on” -for pair interactions.

-

The Tersoff/MOD potential files provided with LAMMPS (see the potentials -directory) are parameterized for metal units. You can -use the Tersoff/MOD potential with any LAMMPS units, but you would need to -create your own Tersoff/MOD potential file with coefficients listed in the -appropriate units if your simulation doesn’t use “metal” units.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_tersoff_zbl.html b/doc/pair_tersoff_zbl.html deleted file mode 100644 index 003636dc71..0000000000 --- a/doc/pair_tersoff_zbl.html +++ /dev/null @@ -1,417 +0,0 @@ - - - - - - - - - - - pair_style tersoff/zbl command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style tersoff/zbl command

-
-
-

pair_style tersoff/zbl/gpu command

-
-
-

pair_style tersoff/zbl/kk command

-
-
-

pair_style tersoff/zbl/omp command

-
-

Syntax

-
pair_style tersoff/zbl
-
-
-
-
-

Examples

-
pair_style tersoff/zbl
-pair_coeff * * SiC.tersoff.zbl Si C Si
-
-
-
-
-

Description

-

The tersoff/zbl style computes a 3-body Tersoff potential -(Tersoff_1) with a close-separation pairwise modification -based on a Coulomb potential and the Ziegler-Biersack-Littmark -universal screening function (ZBL), giving the energy E of a -system of atoms as

-_images/pair_tersoff_zbl.jpg -

The f_F term is a fermi-like function used to smoothly connect the ZBL -repulsive potential with the Tersoff potential. There are 2 -parameters used to adjust it: A_F and r_C. A_F controls how “sharp” -the transition is between the two, and r_C is essentially the cutoff -for the ZBL potential.

-

For the ZBL portion, there are two terms. The first is the Coulomb -repulsive term, with Z1, Z2 as the number of protons in each nucleus, -e as the electron charge (1 for metal and real units) and epsilon0 as -the permittivity of vacuum. The second part is the ZBL universal -screening function, with a0 being the Bohr radius (typically 0.529 -Angstroms), and the remainder of the coefficients provided by the -original paper. This screening function should be applicable to most -systems. However, it is only accurate for small separations -(i.e. less than 1 Angstrom).

-

For the Tersoff portion, f_R is a two-body term and f_A includes -three-body interactions. The summations in the formula are over all -neighbors J and K of atom I within a cutoff distance = R + D.

-

Only a single pair_coeff command is used with the tersoff/zbl style -which specifies a Tersoff/ZBL potential file with parameters for all -needed elements. These are mapped to LAMMPS atom types by specifying -N additional arguments after the filename in the pair_coeff command, -where N is the number of LAMMPS atom types:

-
    -
  • filename
  • -
  • N element names = mapping of Tersoff/ZBL elements to atom types
  • -
-

See the pair_coeff doc page for alternate ways -to specify the path for the potential file.

-

As an example, imagine the SiC.tersoff.zbl file has Tersoff/ZBL values -for Si and C. If your LAMMPS simulation has 4 atoms types and you -want the 1st 3 to be Si, and the 4th to be C, you would use the -following pair_coeff command:

-
pair_coeff * * SiC.tersoff Si Si Si C
-
-
-

The 1st 2 arguments must be * * so as to span all LAMMPS atom types. -The first three Si arguments map LAMMPS atom types 1,2,3 to the Si -element in the Tersoff/ZBL file. The final C argument maps LAMMPS -atom type 4 to the C element in the Tersoff/ZBL file. If a mapping -value is specified as NULL, the mapping is not performed. This can be -used when a tersoff/zbl potential is used as part of the hybrid -pair style. The NULL values are placeholders for atom types that will -be used with other potentials.

-

Tersoff/ZBL files in the potentials directory of the LAMMPS -distribution have a ”.tersoff.zbl” suffix. Lines that are not blank -or comments (starting with #) define parameters for a triplet of -elements. The parameters in a single entry correspond to coefficients -in the formula above:

-
    -
  • element 1 (the center atom in a 3-body interaction)
  • -
  • element 2 (the atom bonded to the center atom)
  • -
  • element 3 (the atom influencing the 1-2 bond in a bond-order sense)
  • -
  • m
  • -
  • gamma
  • -
  • lambda3 (1/distance units)
  • -
  • c
  • -
  • d
  • -
  • costheta0 (can be a value < -1 or > 1)
  • -
  • n
  • -
  • beta
  • -
  • lambda2 (1/distance units)
  • -
  • B (energy units)
  • -
  • R (distance units)
  • -
  • D (distance units)
  • -
  • lambda1 (1/distance units)
  • -
  • A (energy units)
  • -
  • Z_i
  • -
  • Z_j
  • -
  • ZBLcut (distance units)
  • -
  • ZBLexpscale (1/distance units)
  • -
-

The n, beta, lambda2, B, lambda1, and A parameters are only used for -two-body interactions. The m, gamma, lambda3, c, d, and costheta0 -parameters are only used for three-body interactions. The R and D -parameters are used for both two-body and three-body interactions. The -Z_i,Z_j, ZBLcut, ZBLexpscale parameters are used in the ZBL repulsive -portion of the potential and in the Fermi-like function. The -non-annotated parameters are unitless. The value of m must be 3 or 1.

-

The Tersoff/ZBL potential file must contain entries for all the -elements listed in the pair_coeff command. It can also contain -entries for additional elements not being used in a particular -simulation; LAMMPS ignores those entries.

-

For a single-element simulation, only a single entry is required -(e.g. SiSiSi). For a two-element simulation, the file must contain 8 -entries (for SiSiSi, SiSiC, SiCSi, SiCC, CSiSi, CSiC, CCSi, CCC), that -specify Tersoff parameters for all permutations of the two elements -interacting in three-body configurations. Thus for 3 elements, 27 -entries would be required, etc.

-

As annotated above, the first element in the entry is the center atom -in a three-body interaction and it is bonded to the 2nd atom and the -bond is influenced by the 3rd atom. Thus an entry for SiCC means Si -bonded to a C with another C atom influencing the bond. Thus -three-body parameters for SiCSi and SiSiC entries will not, in -general, be the same. The parameters used for the two-body -interaction come from the entry where the 2nd element is repeated. -Thus the two-body parameters for Si interacting with C, comes from the -SiCC entry.

-

The parameters used for a particular -three-body interaction come from the entry with the corresponding -three elements. The parameters used only for two-body interactions -(n, beta, lambda2, B, lambda1, and A) in entries whose 2nd and 3rd -element are different (e.g. SiCSi) are not used for anything and can -be set to 0.0 if desired.

-

Note that the twobody parameters in entries such as SiCC and CSiSi -are often the same, due to the common use of symmetric mixing rules, -but this is not always the case. For example, the beta and n parameters in -Tersoff_2 (Tersoff_2) are not symmetric.

-

We chose the above form so as to enable users to define all commonly -used variants of the Tersoff portion of the potential. In particular, -our form reduces to the original Tersoff form when m = 3 and gamma = -1, while it reduces to the form of Albe et al. when beta = 1 -and m = 1. Note that in the current Tersoff implementation in LAMMPS, -m must be specified as either 3 or 1. Tersoff used a slightly -different but equivalent form for alloys, which we will refer to as -Tersoff_2 potential (Tersoff_2).

-

LAMMPS parameter values for Tersoff_2 can be obtained as follows: -gamma = omega_ijk, lambda3 = 0 and the value of -m has no effect. The parameters for species i and j can be calculated -using the Tersoff_2 mixing rules:

-_images/pair_tersoff_2.jpg -

Tersoff_2 parameters R and S must be converted to the LAMMPS -parameters R and D (R is different in both forms), using the following -relations: R=(R’+S’)/2 and D=(S’-R’)/2, where the primes indicate the -Tersoff_2 parameters.

-

In the potentials directory, the file SiCGe.tersoff provides the -LAMMPS parameters for Tersoff’s various versions of Si, as well as his -alloy parameters for Si, C, and Ge. This file can be used for pure Si, -(three different versions), pure C, pure Ge, binary SiC, and binary -SiGe. LAMMPS will generate an error if this file is used with any -combination involving C and Ge, since there are no entries for the GeC -interactions (Tersoff did not publish parameters for this -cross-interaction.) Tersoff files are also provided for the SiC alloy -(SiC.tersoff) and the GaN (GaN.tersoff) alloys.

-

Many thanks to Rutuparna Narulkar, David Farrell, and Xiaowang Zhou -for helping clarify how Tersoff parameters for alloys have been -defined in various papers. Also thanks to Ram Devanathan for -providing the base ZBL implementation.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, where types I and J correspond to -two different element types, mixing is performed by LAMMPS as -described above from values in the potential file.

-

This pair style does not support the pair_modify -shift, table, and tail options.

-

This pair style does not write its information to binary restart files, since it is stored in potential files. Thus, you -need to re-specify the pair_style and pair_coeff commands in an input -script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-

This pair style is part of the MANYBODY package. It is only enabled -if LAMMPS was built with that package (which it is by default). See -the Making LAMMPS section for more info.

-

This pair style requires the newton setting to be “on” -for pair interactions.

-

The Tersoff/ZBL potential files provided with LAMMPS (see the -potentials directory) are parameterized for metal units. -You can use the Tersoff potential with any LAMMPS units, but you would -need to create your own Tersoff potential file with coefficients -listed in the appropriate units if your simulation doesn’t use “metal” -units.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_thole.html b/doc/pair_thole.html deleted file mode 100644 index e26ded833b..0000000000 --- a/doc/pair_thole.html +++ /dev/null @@ -1,351 +0,0 @@ - - - - - - - - - - - pair_style thole command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style thole command

-
-
-

pair_style lj/cut/thole/long command

-
-
-

pair_style lj/cut/thole/long/omp command

-
-

Syntax

-
pair_style style args
-
-
-
    -
  • style = thole or lj/cut/thole/long or lj/cut/thole/long/omp
  • -
  • args = list of arguments for a particular style
  • -
-
-thole args = damp cutoff
-  damp = global damping parameter
-  cutoff = global cutoff (distance units)
-lj/cut/thole/long or lj/cut/thole/long/omp args = damp cutoff (cutoff2)
-  damp = global damping parameter
-  cutoff = global cutoff for LJ (and Thole if only 1 arg) (distance units)
-  cutoff2 = global cutoff for Thole (optional) (distance units)
-
-
-
-

Examples

-
pair_style hybrid/overlay ... thole 2.6 12.0
-pair_coeff 1 1 thole 1.0
-pair_coeff 1 2 thole 1.0 2.6 10.0
-pair_coeff * 2 thole 1.0 2.6
-
-
-
pair_style lj/cut/thole/long 2.6 12.0
-
-
-
-
-

Description

-

The thole pair styles are meant to be used with force fields that -include explicit polarization through Drude dipoles. This link -describes how to use the thermalized Drude oscillator model in LAMMPS and polarizable models in LAMMPS -are discussed in this Section.

-

The thole pair style should be used as a sub-style within in the -pair_hybrid/overlay command, in conjunction with a -main pair style including Coulomb interactions, i.e. any pair style -containing coul/cut or coul/long in its style name.

-

The lj/cut/thole/long pair style is equivalent to, but more convenient that -the frequent combination hybrid/overlay lj/cut/coul/long cutoff thole damp -cutoff2. It is not only a shorthand for this pair_style combination, but -it also allows for mixing pair coefficients instead of listing them all. -The lj/cut/thole/long pair style is also a bit faster because it avoids an -overlay and can benefit from OMP acceleration. Moreover, it uses a more -precise approximation of the direct Coulomb interaction at short range similar -to coul/long/cs, which stabilizes the temperature of -Drude particles.

-

The thole pair styles compute the Coulomb interaction damped at -short distances by a function

-
-\[\begin{equation} T_{ij}(r_{ij}) = 1 - \left( 1 + -\frac{s_{ij} r_{ij} }{2} \right) -\exp \left( - s_{ij} r_{ij} \right) \end{equation}\]
-

This function results from an adaptation to point charges -(Noskov) of the dipole screening scheme originally proposed -by Thole. The scaling coefficient \(s_{ij}\) is determined -by the polarizability of the atoms, \(\alpha_i\), and by a Thole -damping parameter \(a\). This Thole damping parameter usually takes -a value of 2.6, but in certain force fields the value can depend upon -the atom types. The mixing rule for Thole damping parameters is the -arithmetic average, and for polarizabilities the geometric average -between the atom-specific values.

-
-\[\begin{equation} s_{ij} = \frac{ a_{ij} }{ -(\alpha_{ij})^{1/3} } = \frac{ (a_i + a_j)/2 }{ -[(\alpha_i\alpha_j)^{1/2}]^{1/3} } \end{equation}\]
-

The damping function is only applied to the interactions between the -point charges representing the induced dipoles on polarizable sites, -that is, charges on Drude particles, \(q_{D,i}\), and opposite -charges, \(-q_{D,i}\), located on the respective core particles -(to which each Drude particle is bonded). Therefore, Thole screening -is not applied to the full charge of the core particle \(q_i\), but -only to the \(-q_{D,i}\) part of it.

-

The interactions between core charges are subject to the weighting -factors set by the special_bonds command. The -interactions between Drude particles and core charges or -non-polarizable atoms are also subject to these weighting factors. The -Drude particles inherit the 1-2, 1-3 and 1-4 neighbor relations from -their respective cores.

-

For pair_style thole, the following coefficients must be defined for -each pair of atoms types via the pair_coeff command -as in the example above.

-
    -
  • alpha (distance units^3)
  • -
  • damp
  • -
  • cutoff (distance units)
  • -
-

The last two coefficients are optional. If not specified the global -Thole damping parameter or global cutoff specified in the pair_style -command are used. In order to specify a cutoff (third argument) a damp -parameter (second argument) must also be specified.

-

For pair style lj/cut/thole/long, the following coefficients must be -defined for each pair of atoms types via the pair_coeff -command.

-
    -
  • epsilon (energy units)
  • -
  • sigma (length units)
  • -
  • alpha (distance units^3)
  • -
  • damps
  • -
  • LJ cutoff (distance units)
  • -
-

The last two coefficients are optional and default to the global values from -the pair_style command line.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-

Mixing:

-

The thole pair style does not support mixing. Thus, coefficients -for all I,J pairs must be specified explicitly.

-

The lj/cut/thole/long pair style does support mixing. Mixed coefficients -are defined using

-
-\[\begin{equation} \alpha_{ij} = \sqrt{\alpha_i\alpha_j}\end{equation}\]
-
-\[\begin{equation} a_{ij} = \frac 1 2 (a_i + a_j)\end{equation}\]
-
-
-

Restrictions

-

These pair styles are part of the USER-DRUDE package. They are only -enabled if LAMMPS was built with that package. See the Making LAMMPS section for more info.

-

This pair_style should currently not be used with the charmm dihedral style if the latter has non-zero 1-4 weighting -factors. This is because the thole pair style does not know which -pairs are 1-4 partners of which dihedrals.

-

The lj/cut/thole/long pair style should be used with a Kspace solver -like PPPM or Ewald, which is only enabled if LAMMPS was built with the kspace -package.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_tri_lj.html b/doc/pair_tri_lj.html deleted file mode 100644 index 819622a377..0000000000 --- a/doc/pair_tri_lj.html +++ /dev/null @@ -1,286 +0,0 @@ - - - - - - - - - - - pair_style tri/lj command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style tri/lj command

-
-

Syntax

-
pair_style tri/lj cutoff
-
-
-

cutoff = global cutoff for interactions (distance units)

-
-
-

Examples

-
pair_style tri/lj 3.0
-pair_coeff * * 1.0 1.0
-pair_coeff 1 1 1.0 1.5 2.5
-
-
-
-
-

Description

-

Style tri/lj treats particles which are triangles as a set of small -spherical particles that tile the triangle surface as explained below. -Interactions between two triangles, each with N1 and N2 spherical -particles, are calculated as the pairwise sum of N1*N2 Lennard-Jones -interactions. Interactions between a triangle with N spherical -particles and a point particle are treated as the pairwise sum of N -Lennard-Jones interactions. See the pair_style lj/cut -doc page for the definition of Lennard-Jones interactions.

-

The cutoff distance for an interaction between 2 triangles, or between -a triangle and a point particle, is calculated from the position of -the triangle (its centroid), not between pairs of individual spheres -comprising the triangle. Thus an interaction is either calculated in -its entirety or not at all.

-

The set of non-overlapping spherical particles that represent a -triangle, for purposes of this pair style, are generated in the -following manner. Assume the triangle is of type I, and sigma_II has -been specified. We want a set of spheres with centers in the plane of -the triangle, none of them larger in diameter than sigma_II, which -completely cover the triangle’s area, but with minimial overlap and a -minimal total number of spheres. This is done in a recursive manner. -Place a sphere at the centroid of the original triangle. Calculate -what diameter it must have to just cover all 3 corner points of the -triangle. If that diameter is equal to or smaller than sigma_II, then -include a sphere of the calculated diameter in the set of covering -spheres. It the diameter is larger than sigma_II, then split the -triangle into 2 triangles by bisecting its longest side. Repeat the -process on each sub-triangle, recursing as far as needed to generate a -set of covering spheres. When finished, the original criteria are -met, and the set of covering spheres shoule be near minimal in number -and overlap, at least for input triangles with a reasonable -aspect-ratio.

-

The LJ interaction between 2 spheres on different triangles of types -I,J is computed with an arithmetic mixing of the sigma values of the 2 -spheres and using the specified epsilon value for I,J atom types. -Note that because the sigma values for triangles spheres is computed -using only sigma_II values, specific to the triangles’s type, this -means that any specified sigma_IJ values (for I != J) are effectively -ignored.

-

For style tri/lj, the following coefficients must be defined for -each pair of atoms types via the pair_coeff command -as in the examples above, or in the data file or restart files read by -the read_data or read_restart -commands:

-
    -
  • epsilon (energy units)
  • -
  • sigma (distance units)
  • -
  • cutoff (distance units)
  • -
-

The last coefficient is optional. If not specified, the global cutoff -is used.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, the epsilon and sigma coefficients -and cutoff distance for all of this pair style can be mixed. The -default mix value is geometric. See the “pair_modify” command for -details.

-

This pair style does not support the pair_modify -shift, table, and tail options.

-

This pair style does not write its information to binary restart files.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-

This style is part of the ASPHERE package. It is only enabled if -LAMMPS was built with that package. See the Making LAMMPS section for more info.

-

Defining particles to be triangles so they participate in tri/tri or -tri/particle interactions requires the use the atom_style tri command.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_vashishta.html b/doc/pair_vashishta.html deleted file mode 100644 index 277821dbe1..0000000000 --- a/doc/pair_vashishta.html +++ /dev/null @@ -1,384 +0,0 @@ - - - - - - - - - - - pair_style vashishta command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style vashishta command

-
-
-

pair_style vashishta/omp command

-
-

Syntax

-
pair_style vashishta
-
-
-
-
-

Examples

-
pair_style vashishta
-pair_coeff * * SiC.vashishta Si C
-
-
-
-
-

Description

-

The vashishta style computes the combined 2-body and 3-body -family of potentials developed in the group of Vashishta and -co-workers. By combining repulsive, screened Coulombic, -screened charge-dipole, and dispersion interactions with a -bond-angle energy based on the Stillinger-Weber potential, -this potential has been used to describe a variety of inorganic -compounds, including SiO2 Vashishta1990, -SiC Vashishta2007, -and InP Branicio2009.

-

The potential for the energy U of a system of atoms is

-_images/pair_vashishta.jpg -

where we follow the notation used in Branicio2009. -U2 is a two-body term and U3 is a three-body term. The -summation over two-body terms is over all neighbors J within -a cutoff distance = rc. The twobody terms are shifted and -tilted by a linear function so that the energy and force are -both zero at rc. The summation over three-body terms -is over all neighbors J and K within a cut-off distance = r0, -where the exponential screening function becomes zero.

-

Only a single pair_coeff command is used with the vashishta style which -specifies a Vashishta potential file with parameters for all -needed elements. These are mapped to LAMMPS atom types by specifying -N additional arguments after the filename in the pair_coeff command, -where N is the number of LAMMPS atom types:

-
    -
  • filename
  • -
  • N element names = mapping of Vashishta elements to atom types
  • -
-

See the pair_coeff doc page for alternate ways -to specify the path for the potential file.

-

As an example, imagine a file SiC.vashishta has parameters for -Si and C. If your LAMMPS simulation has 4 atoms types and you want -the 1st 3 to be Si, and the 4th to be C, you would use the following -pair_coeff command:

-
pair_coeff * * SiC.vashishta Si Si Si C
-
-
-

The 1st 2 arguments must be * * so as to span all LAMMPS atom types. -The first three Si arguments map LAMMPS atom types 1,2,3 to the Si -element in the file. The final C argument maps LAMMPS atom type 4 -to the C element in the file. If a mapping value is specified as -NULL, the mapping is not performed. This can be used when a vashishta -potential is used as part of the hybrid pair style. The NULL values -are placeholders for atom types that will be used with other -potentials.

-

Vashishta files in the potentials directory of the LAMMPS -distribution have a ”.vashishta” suffix. Lines that are not blank or -comments (starting with #) define parameters for a triplet of -elements. The parameters in a single entry correspond to the two-body -and three-body coefficients in the formulae above:

-
    -
  • element 1 (the center atom in a 3-body interaction)
  • -
  • element 2
  • -
  • element 3
  • -
  • H (energy units)
  • -
  • eta
  • -
  • Zi (electron charge units)
  • -
  • Zj (electron charge units)
  • -
  • lambda1 (distance units)
  • -
  • D (energy units)
  • -
  • lambda4 (distance units)
  • -
  • W (energy units)
  • -
  • rc (distance units)
  • -
  • B (energy units)
  • -
  • gamma
  • -
  • r0 (distance units)
  • -
  • C
  • -
  • costheta0
  • -
-

The non-annotated parameters are unitless. -The Vashishta potential file must contain entries for all the -elements listed in the pair_coeff command. It can also contain -entries for additional elements not being used in a particular -simulation; LAMMPS ignores those entries. -For a single-element simulation, only a single entry is required -(e.g. SiSiSi). For a two-element simulation, the file must contain 8 -entries (for SiSiSi, SiSiC, SiCSi, SiCC, CSiSi, CSiC, CCSi, CCC), that -specify parameters for all permutations of the two elements -interacting in three-body configurations. Thus for 3 elements, 27 -entries would be required, etc.

-

Depending on the particular version of the Vashishta potential, -the values of these parameters may be keyed to the identities of -zero, one, two, or three elements. -In order to make the input file format unambiguous, general, -and simple to code, -LAMMPS uses a slightly confusing method for specifying parameters. -All parameters are divided into two classes: two-body and three-body. -Two-body and three-body parameters are handled differently, -as described below. -The two-body parameters are H, eta, lambda1, D, lambda4, W, rc, gamma, and r0. -They appear in the above formulae with two subscripts. -The parameters Zi and Zj are also classified as two-body parameters, -even though they only have 1 subscript. -The three-body parameters are B, C, costheta0. -They appear in the above formulae with three subscripts. -Two-body and three-body parameters are handled differently, -as described below.

-

The first element in each entry is the center atom -in a three-body interaction, while the second and third elements -are two neighbor atoms. Three-body parameters for a central atom I -and two neighbors J and K are taken from the IJK entry. -Note that even though three-body parameters do not depend on the order of -J and K, LAMMPS stores three-body parameters for both IJK and IKJ. -The user must ensure that these values are equal. -Two-body parameters for an atom I interacting with atom J are taken from -the IJJ entry, where the 2nd and 3rd -elements are the same. Thus the two-body parameters -for Si interacting with C come from the SiCC entry. Note that even -though two-body parameters (except possibly gamma and r0 in U3) -do not depend on the order of the two elements, -LAMMPS will get the Si-C value from the SiCC entry -and the C-Si value from the CSiSi entry. The user must ensure -that these values are equal. Two-body parameters appearing -in entries where the 2nd and 3rd elements are different are -stored but never used. It is good practice to enter zero for -these values. Note that the three-body function U3 above -contains the two-body parameters gamma and r0. So U3 for a -central C atom bonded to an Si atom and a second C atom -will take three-body parameters from the CSiC entry, but -two-body parameters from the CCC and CSiSi entries.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, where types I and J correspond to -two different element types, mixing is performed by LAMMPS as -described above from values in the potential file.

-

This pair style does not support the pair_modify -shift, table, and tail options.

-

This pair style does not write its information to binary restart files, since it is stored in potential files. Thus, you -need to re-specify the pair_style and pair_coeff commands in an input -script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-

This pair style is part of the MANYBODY package. It is only enabled -if LAMMPS was built with that package (which it is by default). See -the Making LAMMPS section for more info.

-

This pair style requires the newton setting to be “on” -for pair interactions.

-

The Vashishta potential files provided with LAMMPS (see the -potentials directory) are parameterized for metal units. -You can use the Vashishta potential with any LAMMPS units, but you would need -to create your own Vashishta potential file with coefficients listed in the -appropriate units if your simulation doesn’t use “metal” units.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_write.html b/doc/pair_write.html deleted file mode 100644 index 086cbcd7bf..0000000000 --- a/doc/pair_write.html +++ /dev/null @@ -1,260 +0,0 @@ - - - - - - - - - - - pair_write command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_write command

-
-

Syntax

-
pair_write itype jtype N style inner outer file keyword Qi Qj
-
-
-
    -
  • itype,jtype = 2 atom types
  • -
  • N = # of values
  • -
  • style = r or rsq or bitmap
  • -
  • inner,outer = inner and outer cutoff (distance units)
  • -
  • file = name of file to write values to
  • -
  • keyword = section name in file for this set of tabulated values
  • -
  • Qi,Qj = 2 atom charges (charge units) (optional)
  • -
-
-
-

Examples

-
pair_write 1 3 500 r 1.0 10.0 table.txt LJ
-pair_write 1 1 1000 rsq 2.0 8.0 table.txt Yukawa_1_1 -0.5 0.5
-
-
-
-
-

Description

-

Write energy and force values to a file as a function of distance for -the currently defined pair potential. This is useful for plotting the -potential function or otherwise debugging its values. If the file -already exists, the table of values is appended to the end of the file -to allow multiple tables of energy and force to be included in one -file.

-

The energy and force values are computed at distances from inner to -outer for 2 interacting atoms of type itype and jtype, using the -appropriate pair_coeff coefficients. If the style -is r, then N distances are used, evenly spaced in r; if the style is -rsq, N distances are used, evenly spaced in r^2.

-

For example, for N = 7, style = r, inner = 1.0, and outer = 4.0, -values are computed at r = 1.0, 1.5, 2.0, 2.5, 3.0, 3.5, 4.0.

-

If the style is bitmap, then 2^N values are written to the file in a -format and order consistent with how they are read in by the -pair_coeff command for pair style table. For -reasonable accuracy in a bitmapped table, choose N >= 12, an inner -value that is smaller than the distance of closest approach of 2 -atoms, and an outer value <= cutoff of the potential.

-

If the pair potential is computed between charged atoms, the charges -of the pair of interacting atoms can optionally be specified. If not -specified, values of Qi = Qj = 1.0 are used.

-

The file is written in the format used as input for the -pair_style table option with keyword as the -section name. Each line written to the file lists an index number -(1-N), a distance (in distance units), an energy (in energy units), -and a force (in force units).

-
-
-

Restrictions

-

All force field coefficients for pair and other kinds of interactions -must be set before this command can be invoked.

-

Due to how the pairwise force is computed, an inner value > 0.0 must -be specified even if the potential has a finite value at r = 0.0.

-

For EAM potentials, the pair_write command only tabulates the -pairwise portion of the potential, not the embedding portion.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_yukawa.html b/doc/pair_yukawa.html deleted file mode 100644 index 303fb44825..0000000000 --- a/doc/pair_yukawa.html +++ /dev/null @@ -1,279 +0,0 @@ - - - - - - - - - - - pair_style yukawa command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style yukawa command

-
-
-

pair_style yukawa/gpu command

-
-
-

pair_style yukawa/omp command

-
-

Syntax

-
pair_style yukawa kappa cutoff
-
-
-
    -
  • kappa = screening length (inverse distance units)
  • -
  • cutoff = global cutoff for Yukawa interactions (distance units)
  • -
-
-
-

Examples

-
pair_style yukawa 2.0 2.5
-pair_coeff 1 1 100.0 2.3
-pair_coeff * * 100.0
-
-
-
-
-

Description

-

Style yukawa computes pairwise interactions with the formula

-_images/pair_yukawa.jpg -

Rc is the cutoff.

-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above, or in the data file or restart files read by the -read_data or read_restart -commands, or by mixing as described below:

-
    -
  • A (energy*distance units)
  • -
  • cutoff (distance units)
  • -
-

The last coefficient is optional. If not specified, the global yukawa -cutoff is used.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, the A coefficient and cutoff -distance for this pair style can be mixed. A is an energy value mixed -like a LJ epsilon. The default mix value is geometric. See the -“pair_modify” command for details.

-

This pair style supports the pair_modify shift -option for the energy of the pair interaction.

-

The pair_modify table option is not relevant -for this pair style.

-

This pair style does not support the pair_modify -tail option for adding long-range tail corrections to energy and -pressure.

-

This pair style writes its information to binary restart files, so pair_style and pair_coeff commands do not need -to be specified in an input script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-
-
none
-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_yukawa_colloid.html b/doc/pair_yukawa_colloid.html deleted file mode 100644 index 6fb1ff16fa..0000000000 --- a/doc/pair_yukawa_colloid.html +++ /dev/null @@ -1,318 +0,0 @@ - - - - - - - - - - - pair_style yukawa/colloid command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style yukawa/colloid command

-
-
-

pair_style yukawa/colloid/gpu command

-
-
-

pair_style yukawa/colloid/omp command

-
-

Syntax

-
pair_style yukawa/colloid kappa cutoff
-
-
-
    -
  • kappa = screening length (inverse distance units)
  • -
  • cutoff = global cutoff for colloidal Yukawa interactions (distance units)
  • -
-
-
-

Examples

-
pair_style yukawa/colloid 2.0 2.5
-pair_coeff 1 1 100.0 2.3
-pair_coeff * * 100.0
-
-
-
-
-

Description

-

Style yukawa/colloid computes pairwise interactions with the formula

-_images/pair_yukawa_colloid.jpg -

where Ri and Rj are the radii of the two particles and Rc is the -cutoff.

-

In contrast to pair_style yukawa, this functional -form arises from the Coulombic interaction between two colloid -particles, screened due to the presence of an electrolyte, see the -book by Safran for a derivation in the context of DVLO -theory. Pair_style yukawa is a screened Coulombic -potential between two point-charges and uses no such approximation.

-

This potential applies to nearby particle pairs for which the Derjagin -approximation holds, meaning h << Ri + Rj, where h is the -surface-to-surface separation of the two particles.

-

When used in combination with pair_style colloid, -the two terms become the so-called DLVO potential, which combines -electrostatic repulsion and van der Waals attraction.

-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above, or in the data file or restart files read by the -read_data or read_restart -commands, or by mixing as described below:

-
    -
  • A (energy/distance units)
  • -
  • cutoff (distance units)
  • -
-

The prefactor A is determined from the relationship between surface -charge and surface potential due to the presence of electrolyte. Note -that the A for this potential style has different units than the A -used in pair_style yukawa. For low surface -potentials, i.e. less than about 25 mV, A can be written as:

-
A = 2 * PI * R*eps*eps0 * kappa * psi^2
-
-
-

where

-
    -
  • R = colloid radius (distance units)
  • -
  • eps0 = permittivity of free space (charge^2/energy/distance units)
  • -
  • eps = relative permittivity of fluid medium (dimensionless)
  • -
  • kappa = inverse screening length (1/distance units)
  • -
  • psi = surface potential (energy/charge units)
  • -
-

The last coefficient is optional. If not specified, the global -yukawa/colloid cutoff is used.

-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, the A coefficient and cutoff -distance for this pair style can be mixed. A is an energy value mixed -like a LJ epsilon. The default mix value is geometric. See the -“pair_modify” command for details.

-

This pair style supports the pair_modify shift -option for the energy of the pair interaction.

-

The pair_modify table option is not relevant -for this pair style.

-

This pair style does not support the pair_modify -tail option for adding long-range tail corrections to energy and -pressure.

-

This pair style writes its information to binary restart files, so pair_style and pair_coeff commands do not need -to be specified in an input script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-

This style is part of the COLLOID package. It is only enabled if -LAMMPS was built with that package. See the Making LAMMPS section for more info.

-

This pair style requires that atoms be finite-size spheres with a -diameter, as defined by the atom_style sphere -command.

-

Per-particle polydispersity is not yet supported by this pair style; -per-type polydispersity is allowed. This means all particles of the -same type must have the same diameter. Each type can have a different -diameter.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_zbl.html b/doc/pair_zbl.html deleted file mode 100644 index b26b67f91b..0000000000 --- a/doc/pair_zbl.html +++ /dev/null @@ -1,313 +0,0 @@ - - - - - - - - - - - pair_style zbl command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style zbl command

-
-
-

pair_style zbl/gpu command

-
-
-

pair_style zbl/omp command

-
-

Syntax

-
pair_style zbl inner outer
-
-
-
    -
  • inner = distance where switching function begins
  • -
  • outer = global cutoff for ZBL interaction
  • -
-
-
-

Examples

-
pair_style zbl 3.0 4.0
-pair_coeff * * 73.0 73.0
-pair_coeff 1 1 14.0 14.0
-
-
-
-
-

Description

-

Style zbl computes the Ziegler-Biersack-Littmark (ZBL) screened nuclear -repulsion for describing high-energy collisions between atoms. -(Ziegler). It includes an additional switching function -that ramps the energy, force, and curvature smoothly to zero -between an inner and outer cutoff. The potential -energy due to a pair of atoms at a distance r_ij is given by:

-_images/pair_zbl.jpg -

where e is the electron charge, epsilon_0 is the electrical -permittivity of vacuum, and Z_i and Z_j are the nuclear charges of the -two atoms. The switching function S(r) is identical to that used by -pair_style lj/gromacs. Here, the inner and outer -cutoff are the same for all pairs of atom types.

-

The following coefficients must be defined for each pair of atom types -via the pair_coeff command as in the examples above, -or in the LAMMPS data file.

-
    -
  • Z_i (atomic number for first atom type, e.g. 13.0 for aluminum)
  • -
  • Z_j (ditto for second atom type)
  • -
-

The values of Z_i and Z_j are normally equal to the atomic -numbers of the two atom types. Thus, the user may optionally -specify only the coefficients for each I==I pair, and rely -on the obvious mixing rule for cross interactions (see below). -Note that when I==I it is required that Z_i == Z_j. When used -with hybrid/overlay and pairs are assigned -to more than one sub-style, the mixing rule is not used and -each pair of types interacting with the ZBL sub-style must -be included in a pair_coeff command.

-
-

Note

-

The numerical values of the exponential decay constants in the -screening function depend on the unit of distance. In the above -equation they are given for units of angstroms. LAMMPS will -automatically convert these values to the distance unit of the -specified LAMMPS units setting. The values of Z should -always be given as multiples of a proton’s charge, e.g. 29.0 for -copper.

-
-
-

Styles with a cuda, gpu, intel, kk, omp, or opt suffix are -functionally the same as the corresponding style without the suffix. -They have been optimized to run faster, depending on your available -hardware, as discussed in Section_accelerate -of the manual. The accelerated styles take the same arguments and -should produce the same results, except for round-off and precision -issues.

-

These accelerated styles are part of the USER-CUDA, GPU, USER-INTEL, -KOKKOS, USER-OMP and OPT packages, respectively. They are only -enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

For atom type pairs I,J and I != J, the Z_i and Z_j coefficients -can be mixed by taking Z_i and Z_j from the values specified for -I == I and J == J cases. When used -with hybrid/overlay and pairs are assigned -to more than one sub-style, the mixing rule is not used and -each pair of types interacting with the ZBL sub-style -must be included in a pair_coeff command. -The pair_modify mix option has no effect on -the mixing behavior

-

The ZBL pair style does not support the pair_modify -shift option, since the ZBL interaction is already smoothed to 0.0 at -the cutoff.

-

The pair_modify table option is not relevant for -this pair style.

-

This pair style does not support the pair_modify -tail option for adding long-range tail corrections to energy and -pressure, since there are no corrections for a potential that goes to -0.0 at the cutoff.

-

This pair style does not write information to binary restart files, so pair_style and pair_coeff commands must be -specified in an input script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-
-
none
-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/pair_zero.html b/doc/pair_zero.html deleted file mode 100644 index 5dd1c21460..0000000000 --- a/doc/pair_zero.html +++ /dev/null @@ -1,264 +0,0 @@ - - - - - - - - - - - pair_style zero command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

pair_style zero command

-
-

Syntax

-
-pair_style zero cutoff nocoeff
-
-
    -
  • zero = style name of this pair style -cutoff = global cutoff (distance units) -nocoeff = ignore all pair_coeff parameters (optional)
  • -
-
-
-

Examples

-
pair_style zero 10.0
-pair_style zero 5.0 nocoeff
-pair_coeff * *
-pair_coeff 1 2*4 3.0
-
-
-
-
-

Description

-

Define a global or per-type cutoff length for the purpose of -building a neighbor list and acquiring ghost atoms, but do -not compute any pairwise forces or energies.

-

This can be useful for fixes or computes which require a neighbor list -to enumerate pairs of atoms within some cutoff distance, but when -pairwise forces are not otherwise needed. Examples are the fix bond/create, compute rdf, -compute voronoi/atom commands.

-

Note that the comm_modify cutoff command can be -used to insure communication of ghost atoms even when a pair style is -not defined, but it will not trigger neighbor list generation.

-

The optional nocoeff flag allows to read data files with a PairCoeff -section for any pair style. Similarly, any pair_coeff commands -will only be checked for the atom type numbers and the rest ignored. -In this case, only the global cutoff will be used.

-

The following coefficients must be defined for each pair of atoms -types via the pair_coeff command as in the examples -above, or in the data file or restart files read by the -read_data or read_restart -commands, or by mixing as described below:

-
    -
  • cutoff (distance units)
  • -
-

This coefficient is optional. If not specified, the global cutoff -specified in the pair_style command is used. If the pair_style has -been specified with the optional nocoeff flag, then a cutoff -pair coefficient is ignored.

-
-

Mixing, shift, table, tail correction, restart, rRESPA info:

-

The cutoff distance for this pair style can be mixed. The default mix -value is geometric. See the “pair_modify” command for details.

-

This pair style does not support the pair_modify -shift, table, and tail options.

-

This pair style writes its information to binary restart files, so pair_style and pair_coeff commands do not need -to be specified in an input script that reads a restart file.

-

This pair style can only be used via the pair keyword of the -run_style respa command. It does not support the -inner, middle, outer keywords.

-
-
-
-

Restrictions

-
-
none
-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/partition.html b/doc/partition.html deleted file mode 100644 index eb2520890d..0000000000 --- a/doc/partition.html +++ /dev/null @@ -1,257 +0,0 @@ - - - - - - - - - - - partition command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

partition command

-
-

Syntax

-
partition style N command ...
-
-
-
    -
  • style = yes or no
  • -
  • N = partition number (see asterisk form below)
  • -
  • command = any LAMMPS command
  • -
-
-
-

Examples

-
-partition yes 1 processors 4 10 6
-partition no 5 print "Active partition"
-partition yes 5 fix all nve
-partition yes 6 fix all nvt temp 1.0 1.0 0.1
-
-
-
-

Description

-

This command invokes the specified command on a subset of the -partitions of processors you have defined via the -partition -command-line switch. See Section_start 6 -for an explanation of the switch.

-

Normally, every input script command in your script is invoked by -every partition. This behavior can be modified by defining world- or -universe-style variables that have different values -for each partition. This mechanism can be used to cause your script -to jump to different input script files on different partitions, if -such a variable is used in a jump command.

-

The “partition” command is another mechanism for having as input -script operate differently on different partitions. It is basically a -prefix on any LAMMPS command. The commmand will only be invoked on -the partition(s) specified by the style and N arguments.

-

If the style is yes, the command will be invoked on any partition -which matches the N argument. If the style is no the command -will be invoked on all the partitions which do not match the Np -argument.

-

Partitions are numbered from 1 to Np, where Np is the number of -partitions specified by the -partition command-line switch.

-

N can be specified in one of two ways. An explicit numeric value -can be used, as in the 1st example above. Or a wild-card asterisk can -be used to span a range of partition numbers. This takes the form “*” -or “n” or “n” or “m*n”. An asterisk with no numeric values means -all partitions from 1 to Np. A leading asterisk means all partitions -from 1 to n (inclusive). A trailing asterisk means all partitions -from n to Np (inclusive). A middle asterisk means all partitions from -m to n (inclusive).

-

This command can be useful for the “run_style verlet/split” command -which imposed requirements on how the processors -command lays out a 3d grid of processors in each of 2 partitions.

-
-
-

Restrictions

-
-
none
-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/prd.html b/doc/prd.html deleted file mode 100644 index 12655d4fc7..0000000000 --- a/doc/prd.html +++ /dev/null @@ -1,465 +0,0 @@ - - - - - - - - - - - prd command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

prd command

-
-

Syntax

-
prd N t_event n_dephase t_dephase t_correlate compute-ID seed keyword value ...
-
-
-
    -
  • N = # of timesteps to run (not including dephasing/quenching)
  • -
  • t_event = timestep interval between event checks
  • -
  • n_dephase = number of velocity randomizations to perform in each dephase run
  • -
  • t_dephase = number of timesteps to run dynamics after each velocity randomization during dephase
  • -
  • t_correlate = number of timesteps within which 2 consecutive events are considered to be correlated
  • -
  • compute-ID = ID of the compute used for event detection
  • -
  • random_seed = random # seed (positive integer)
  • -
  • zero or more keyword/value pairs may be appended
  • -
  • keyword = min or temp or vel
  • -
-
-min values = etol ftol maxiter maxeval
-  etol = stopping tolerance for energy, used in quenching
-  ftol = stopping tolerance for force, used in quenching
-  maxiter = max iterations of minimize, used in quenching
-  maxeval = max number of force/energy evaluations, used in quenching
-temp value = Tdephase
-  Tdephase = target temperature for velocity randomization, used in dephasing
-vel values = loop dist
-  loop = all or local or geom, used in dephasing
-  dist = uniform or gaussian, used in dephasing
-time value = steps or clock
-  steps = simulation runs for N timesteps on each replica (default)
-  clock = simulation runs for N timesteps across all replicas
-
-
-
-

Examples

-
prd 5000 100 10 10 100 1 54982
-prd 5000 100 10 10 100 1 54982 min 0.1 0.1 100 200
-
-
-
-
-

Description

-

Run a parallel replica dynamics (PRD) simulation using multiple -replicas of a system. One or more replicas can be used. The total -number of steps N to run can be interpreted in one of two ways; see -discussion of the time keyword below.

-

PRD is described in this paper by Art Voter. It is a method -for performing accelerated dynamics that is suitable for -infrequent-event systems that obey first-order kinetics. A good -overview of accelerated dynamics methods for such systems in given in -this review paper from the same group. To quote from the -paper: “The dynamical evolution is characterized by vibrational -excursions within a potential basin, punctuated by occasional -transitions between basins.” The transition probability is -characterized by p(t) = k*exp(-kt) where k is the rate constant. -Running multiple replicas gives an effective enhancement in the -timescale spanned by the multiple simulations, while waiting for an -event to occur.

-

Each replica runs on a partition of one or more processors. Processor -partitions are defined at run-time using the -partition command-line -switch; see Section_start 6 of the -manual. Note that if you have MPI installed, you can run a -multi-replica simulation with more replicas (partitions) than you have -physical processors, e.g you can run a 10-replica simulation on one or -two processors. For PRD, this makes little sense, since this offers -no effective parallel speed-up in searching for infrequent events. See -Section_howto 5 of the manual for further -discussion.

-

When a PRD simulation is performed, it is assumed that each replica is -running the same model, though LAMMPS does not check for this. -I.e. the simulation domain, the number of atoms, the interaction -potentials, etc should be the same for every replica.

-

A PRD run has several stages, which are repeated each time an “event” -occurs in one of the replicas, as defined below. The logic for a PRD -run is as follows:

-
while (time remains):
-  dephase for n_dephase*t_dephase steps
-  until (event occurs on some replica):
-    run dynamics for t_event steps
-    quench
-    check for uncorrelated event on any replica
-  until (no correlated event occurs):
-    run dynamics for t_correlate steps
-    quench
-    check for correlated event on this replica
-  event replica shares state with all replicas
-
-
-

Before this loop begins, the state of the system on replica 0 is -shared with all replicas, so that all replicas begin from the same -initial state. The first potential energy basin is identified by -quenching (an energy minimization, see below) the initial state and -storing the resulting coordinates for reference.

-

In the first stage, dephasing is performed by each replica -independently to eliminate correlations between replicas. This is -done by choosing a random set of velocities, based on the -random_seed that is specified, and running t_dephase timesteps of -dynamics. This is repeated n_dephase times. At each of the -n_dephase stages, if an event occurs during the t_dephase steps of -dynamics for a particular replica, the replica repeats the stage until -no event occurs.

-

If the temp keyword is not specified, the target temperature for -velocity randomization for each replica is the current temperature of -that replica. Otherwise, it is the specified Tdephase temperature. -The style of velocity randomization is controlled using the keyword -vel with arguments that have the same meaning as their counterparts -in the velocity command.

-

In the second stage, each replica runs dynamics continuously, stopping -every t_event steps to check if a transition event has occurred. -This check is performed by quenching the system and comparing the -resulting atom coordinates to the coordinates from the previous basin. -The first time through the PRD loop, the “previous basin” is the set -of quenched coordinates from the initial state of the system.

-

A quench is an energy minimization and is performed by whichever -algorithm has been defined by the min_style command. -Minimization parameters may be set via the -min_modify command and by the min keyword of the -PRD command. The latter are the settings that would be used with the -minimize command. Note that typically, you do not -need to perform a highly-converged minimization to detect a transition -event.

-

The event check is performed by a compute with the specified -compute-ID. Currently there is only one compute that works with the -PRD commmand, which is the compute event/displace command. Other -event-checking computes may be added. Compute event/displace checks whether any atom in -the compute group has moved further than a specified threshold -distance. If so, an “event” has occurred.

-

In the third stage, the replica on which the event occurred (event -replica) continues to run dynamics to search for correlated events. -This is done by running dynamics for t_correlate steps, quenching -every t_event steps, and checking if another event has occurred.

-

The first time no correlated event occurs, the final state of the -event replica is shared with all replicas, the new basin reference -coordinates are updated with the quenched state, and the outer loop -begins again. While the replica event is searching for correlated -events, all the other replicas also run dynamics and event checking -with the same schedule, but the final states are always overwritten by -the state of the event replica.

-

The outer loop of the pseudo-code above continues until N steps of -dynamics have been performed. Note that N only includes the -dynamics of stages 2 and 3, not the steps taken during dephasing or -the minimization iterations of quenching. The specified N is -interpreted in one of two ways, depending on the time keyword. If -the time value is steps, which is the default, then each replica -runs for N timesteps. If the time value is clock, then the -simulation runs until N aggregate timesteps across all replicas have -elapsed. This aggregate time is the “clock” time defined below, which -typically advances nearly M times faster than the timestepping on a -single replica.

-
-

Four kinds of output can be generated during a PRD run: event -statistics, thermodynamic output by each replica, dump files, and -restart files.

-

When running with multiple partitions (each of which is a replica in -this case), the print-out to the screen and master log.lammps file is -limited to event statistics. Note that if a PRD run is performed on -only a single replica then the event statistics will be intermixed -with the usual thermodynamic output discussed below.

-

The quantities printed each time an event occurs are the timestep, CPU -time, clock, event number, a correlation flag, the number of -coincident events, and the replica number of the chosen event.

-

The timestep is the usual LAMMPS timestep, except that time does not -advance during dephasing or quenches, but only during dynamics. Note -that are two kinds of dynamics in the PRD loop listed above. The -first is when all replicas are performing independent dynamics, -waiting for an event to occur. The second is when correlated events -are being searched for and only one replica is running dynamics.

-

The CPU time is the total processor time since the start of the PRD -run.

-

The clock is the same as the timestep except that it advances by M -steps every timestep during the first kind of dynamics when the M -replicas are running independently. The clock advances by only 1 step -per timestep during the second kind of dynamics, since only a single -replica is checking for a correlated event. Thus “clock” time -represents the aggregate time (in steps) that effectively elapses -during a PRD simulation on M replicas. If most of the PRD run is -spent in the second stage of the loop above, searching for infrequent -events, then the clock will advance nearly M times faster than it -would if a single replica was running. Note the clock time between -events will be drawn from p(t).

-

The event number is a counter that increments with each event, whether -it is uncorrelated or correlated.

-

The correlation flag will be 0 when an uncorrelated event occurs -during the second stage of the loop listed above, i.e. when all -replicas are running independently. The correlation flag will be 1 -when a correlated event occurs during the third stage of the loop -listed above, i.e. when only one replica is running dynamics.

-

When more than one replica detects an event at the end of the second -stage, then one of them is chosen at random. The number of coincident -events is the number of replicas that detected an event. Normally, we -expect this value to be 1. If it is often greater than 1, then either -the number of replicas is too large, or t_event is too large.

-

The replica number is the ID of the replica (from 0 to M-1) that -found the event.

-
-

When running on multiple partitions, LAMMPS produces additional log -files for each partition, e.g. log.lammps.0, log.lammps.1, etc. For -the PRD command, these contain the thermodynamic output for each -replica. You will see short runs and minimizations corresponding to -the dynamics and quench operations of the loop listed above. The -timestep will be reset aprpopriately depending on whether the -operation advances time or not.

-

After the PRD command completes, timing statistics for the PRD run are -printed in each replica’s log file, giving a breakdown of how much CPU -time was spent in each stage (dephasing, dynamics, quenching, etc).

-
-

Any dump files defined in the input script, will be -written to during a PRD run at timesteps corresponding to both -uncorrelated and correlated events. This means the the requested dump -frequency in the dump command is ignored. There will be -one dump file (per dump command) created for all partitions.

-

The atom coordinates of the dump snapshot are those of the minimum -energy configuration resulting from quenching following a transition -event. The timesteps written into the dump files correspond to the -timestep at which the event occurred and NOT the clock. A dump -snapshot corresponding to the initial minimum state used for event -detection is written to the dump file at the beginning of each PRD -run.

-
-

If the restart command is used, a single restart file -for all the partitions is generated, which allows a PRD run to be -continued by a new input script in the usual manner.

-

The restart file is generated at the end of the loop listed above. If -no correlated events are found, this means it contains a snapshot of -the system at time T + t_correlate, where T is the time at which the -uncorrelated event occurred. If correlated events were found, then it -contains a snapshot of the system at time T + t_correlate, where T -is the time of the last correlated event.

-

The restart frequency specified in the restart command -is interpreted differently when performing a PRD run. It does not -mean the timestep interval between restart files. Instead it means an -event interval for uncorrelated events. Thus a frequency of 1 means -write a restart file every time an uncorrelated event occurs. A -frequency of 10 means write a restart file every 10th uncorrelated -event.

-

When an input script reads a restart file from a previous PRD run, the -new script can be run on a different number of replicas or processors. -However, it is assumed that t_correlate in the new PRD command is -the same as it was previously. If not, the calculation of the “clock” -value for the first event in the new run will be slightly off.

-
-
-
-

Restrictions

-

This command can only be used if LAMMPS was built with the REPLICA -package. See the Making LAMMPS section -for more info on packages.

-

N and t_correlate settings must be integer multiples of -t_event.

-

Runs restarted from restart file written during a PRD run will not -produce identical results due to changes in the random numbers used -for dephasing.

-

This command cannot be used when any fixes are defined that keep track -of elapsed time to perform time-dependent operations. Examples -include the “ave” fixes such as fix ave/spatial. Also fix dt/reset and fix deposit.

-
- -
-

Default

-

The option defaults are min = 0.1 0.1 40 50, no temp setting, vel = -geom gaussian, and time = steps.

-
-

(Voter) Voter, Phys Rev B, 57, 13985 (1998).

-

(Voter2) Voter, Montalenti, Germann, Annual Review of Materials -Research 32, 321 (2002).

-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/print.html b/doc/print.html deleted file mode 100644 index 6bd73df123..0000000000 --- a/doc/print.html +++ /dev/null @@ -1,266 +0,0 @@ - - - - - - - - - - - print command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- - - - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/processors.html b/doc/processors.html deleted file mode 100644 index 5f8a4c2431..0000000000 --- a/doc/processors.html +++ /dev/null @@ -1,498 +0,0 @@ - - - - - - - - - - - processors command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

processors command

-
-

Syntax

-
processors Px Py Pz keyword args ...
-
-
-
    -
  • Px,Py,Pz = # of processors in each dimension of 3d grid overlaying the simulation domain
  • -
  • zero or more keyword/arg pairs may be appended
  • -
  • keyword = grid or map or part or file
  • -
-
-grid arg = gstyle params ...
-  gstyle = onelevel or twolevel or numa or custom
-    onelevel params = none
-    twolevel params = Nc Cx Cy Cz
-      Nc = number of cores per node
-      Cx,Cy,Cz = # of cores in each dimension of 3d sub-grid assigned to each node
-    numa params = none
-    custom params = infile
-      infile = file containing grid layout
-map arg = cart or cart/reorder or xyz or xzy or yxz or yzx or zxy or zyx
-   cart = use MPI_Cart() methods to map processors to 3d grid with reorder = 0
-   cart/reorder = use MPI_Cart() methods to map processors to 3d grid with reorder = 1
-   xyz,xzy,yxz,yzx,zxy,zyx = map procesors to 3d grid in IJK ordering
-numa arg = none
-part args = Psend Precv cstyle
-  Psend = partition # (1 to Np) which will send its processor layout
-  Precv = partition # (1 to Np) which will recv the processor layout
-  cstyle = multiple
-    multiple = Psend grid will be multiple of Precv grid in each dimension
-file arg = outfile
-  outfile = name of file to write 3d grid of processors to
-
-
-
-

Examples

-
processors * * 5
-processors 2 4 4
-processors * * 8 map xyz
-processors * * * grid numa
-processors * * * grid twolevel 4 * * 1
-processors 4 8 16 grid custom myfile
-processors * * * part 1 2 multiple
-
-
-
-
-

Description

-

Specify how processors are mapped as a regular 3d grid to the global -simulation box. The mapping involves 2 steps. First if there are P -processors it means choosing a factorization P = Px by Py by Pz so -that there are Px processors in the x dimension, and similarly for the -y and z dimensions. Second, the P processors are mapped to the -regular 3d grid. The arguments to this command control each of these -2 steps.

-

The Px, Py, Pz parameters affect the factorization. Any of the 3 -parameters can be specified with an asterisk “*”, which means LAMMPS -will choose the number of processors in that dimension of the grid. -It will do this based on the size and shape of the global simulation -box so as to minimize the surface-to-volume ratio of each processor’s -sub-domain.

-

Choosing explicit values for Px or Py or Pz can be used to override -the default manner in which LAMMPS will create the regular 3d grid of -processors, if it is known to be sub-optimal for a particular problem. -E.g. a problem where the extent of atoms will change dramatically in a -particular dimension over the course of the simulation.

-

The product of Px, Py, Pz must equal P, the total # of processors -LAMMPS is running on. For a 2d simulation, Pz must -equal 1.

-

Note that if you run on a prime number of processors P, then a grid -such as 1 x P x 1 will be required, which may incur extra -communication costs due to the high surface area of each processor’s -sub-domain.

-

Also note that if multiple partitions are being used then P is the -number of processors in this partition; see this section for an explanation of the --partition command-line switch. Also note that you can prefix the -processors command with the partition command to -easily specify different Px,Py,Pz values for different partitions.

-

You can use the partition command to specify -different processor grids for different partitions, e.g.

-
partition yes 1 processors 4 4 4
-partition yes 2 processors 2 3 2
-
-
-
-

Note

-

This command only affects the initial regular 3d grid created -when the simulation box is first specified via a -create_box or read_data or -read_restart command. Or if the simulation box is -re-created via the replicate command. The same -regular grid is initially created, regardless of which -comm_style command is in effect.

-
-

If load-balancing is never invoked via the balance or -fix balance commands, then the initial regular grid -will persist for all simulations. If balancing is performed, some of -the methods invoked by those commands retain the logical toplogy of -the initial 3d grid, and the mapping of processors to the grid -specified by the processors command. However the grid spacings in -different dimensions may change, so that processors own sub-domains of -different sizes. If the comm_style tiled command is -used, methods invoked by the balancing commands may discard the 3d -grid of processors and tile the simulation domain with sub-domains of -different sizes and shapes which no longer have a logical 3d -connectivity. If that occurs, all the information specified by the -processors command is ignored.

-
-

The grid keyword affects the factorization of P into Px,Py,Pz and it -can also affect how the P processor IDs are mapped to the 3d grid of -processors.

-

The onelevel style creates a 3d grid that is compatible with the -Px,Py,Pz settings, and which minimizes the surface-to-volume ratio of -each processor’s sub-domain, as described above. The mapping of -processors to the grid is determined by the map keyword setting.

-

The twolevel style can be used on machines with multicore nodes to -minimize off-node communication. It insures that contiguous -sub-sections of the 3d grid are assigned to all the cores of a node. -For example if Nc is 4, then 2x2x1 or 2x1x2 or 1x2x2 sub-sections of -the 3d grid will correspond to the cores of each node. This affects -both the factorization and mapping steps.

-

The Cx, Cy, Cz settings are similar to the Px, Py, Pz -settings, only their product should equal Nc. Any of the 3 -parameters can be specified with an asterisk “*”, which means LAMMPS -will choose the number of cores in that dimension of the node’s -sub-grid. As with Px,Py,Pz, it will do this based on the size and -shape of the global simulation box so as to minimize the -surface-to-volume ratio of each processor’s sub-domain.

-
-

Note

-

For the twolevel style to work correctly, it assumes the MPI -ranks of processors LAMMPS is running on are ordered by core and then -by node. E.g. if you are running on 2 quad-core nodes, for a total of -8 processors, then it assumes processors 0,1,2,3 are on node 1, and -processors 4,5,6,7 are on node 2. This is the default rank ordering -for most MPI implementations, but some MPIs provide options for this -ordering, e.g. via environment variable settings.

-
-

The numa style operates similar to the twolevel keyword except -that it auto-detects which cores are running on which nodes. -Currently, it does this in only 2 levels, but it may be extended in -the future to account for socket topology and other non-uniform memory -access (NUMA) costs. It also uses a different algorithm than the -twolevel keyword for doing the two-level factorization of the -simulation box into a 3d processor grid to minimize off-node -communication, and it does its own MPI-based mapping of nodes and -cores to the regular 3d grid. Thus it may produce a different layout -of the processors than the twolevel options.

-

The numa style will give an error if the number of MPI processes is -not divisible by the number of cores used per node, or any of the Px -or Py of Pz values is greater than 1.

-
-

Note

-

Unlike the twolevel style, the numa style does not require -any particular ordering of MPI ranks i norder to work correctly. This -is because it auto-detects which processes are running on which nodes.

-
-

The custom style uses the file infile to define both the 3d -factorization and the mapping of processors to the grid.

-

The file should have the following format. Any number of initial -blank or comment lines (starting with a “#” character) can be present. -The first non-blank, non-comment line should have -3 values:

-
Px Py Py
-
-
-

These must be compatible with the total number of processors -and the Px, Py, Pz settings of the processors commmand.

-

This line should be immediately followed by -P = Px*Py*Pz lines of the form:

-
ID I J K
-
-
-

where ID is a processor ID (from 0 to P-1) and I,J,K are the -processors location in the 3d grid. I must be a number from 1 to Px -(inclusive) and similarly for J and K. The P lines can be listed in -any order, but no processor ID should appear more than once.

-
-

The map keyword affects how the P processor IDs (from 0 to P-1) are -mapped to the 3d grid of processors. It is only used by the -onelevel and twolevel grid settings.

-

The cart style uses the family of MPI Cartesian functions to perform -the mapping, namely MPI_Cart_create(), MPI_Cart_get(), -MPI_Cart_shift(), and MPI_Cart_rank(). It invokes the -MPI_Cart_create() function with its reorder flag = 0, so that MPI is -not free to reorder the processors.

-

The cart/reorder style does the same thing as the cart style -except it sets the reorder flag to 1, so that MPI can reorder -processors if it desires.

-

The xyz, xzy, yxz, yzx, zxy, and zyx styles are all -similar. If the style is IJK, then it maps the P processors to the -grid so that the processor ID in the I direction varies fastest, the -processor ID in the J direction varies next fastest, and the processor -ID in the K direction varies slowest. For example, if you select -style xyz and you have a 2x2x2 grid of 8 processors, the assignments -of the 8 octants of the simulation domain will be:

-
proc 0 = lo x, lo y, lo z octant
-proc 1 = hi x, lo y, lo z octant
-proc 2 = lo x, hi y, lo z octant
-proc 3 = hi x, hi y, lo z octant
-proc 4 = lo x, lo y, hi z octant
-proc 5 = hi x, lo y, hi z octant
-proc 6 = lo x, hi y, hi z octant
-proc 7 = hi x, hi y, hi z octant
-
-
-

Note that, in principle, an MPI implementation on a particular machine -should be aware of both the machine’s network topology and the -specific subset of processors and nodes that were assigned to your -simulation. Thus its MPI_Cart calls can optimize the assignment of -MPI processes to the 3d grid to minimize communication costs. In -practice, however, few if any MPI implementations actually do this. -So it is likely that the cart and cart/reorder styles simply give -the same result as one of the IJK styles.

-

Also note, that for the twolevel grid style, the map setting is -used to first map the nodes to the 3d grid, then again to the cores -within each node. For the latter step, the cart and cart/reorder -styles are not supported, so an xyz style is used in their place.

-
-

The part keyword affects the factorization of P into Px,Py,Pz.

-

It can be useful when running in multi-partition mode, e.g. with the -run_style verlet/split command. It specifies a -dependency bewteen a sending partition Psend and a receiving -partition Precv which is enforced when each is setting up their own -mapping of their processors to the simulation box. Each of Psend -and Precv must be integers from 1 to Np, where Np is the number of -partitions you have defined via the -partition command-line switch.

-

A “dependency” means that the sending partition will create its -regular 3d grid as Px by Py by Pz and after it has done this, it will -send the Px,Py,Pz values to the receiving partition. The receiving -partition will wait to receive these values before creating its own -regular 3d grid and will use the sender’s Px,Py,Pz values as a -constraint. The nature of the constraint is determined by the -cstyle argument.

-

For a cstyle of multiple, each dimension of the sender’s processor -grid is required to be an integer multiple of the corresponding -dimension in the receiver’s processor grid. This is a requirement of -the run_style verlet/split command.

-

For example, assume the sending partition creates a 4x6x10 grid = 240 -processor grid. If the receiving partition is running on 80 -processors, it could create a 4x2x10 grid, but it will not create a -2x4x10 grid, since in the y-dimension, 6 is not an integer multiple of -4.

-
-

Note

-

If you use the partition command to invoke -different “processsors” commands on different partitions, and you also -use the part keyword, then you must insure that both the sending and -receiving partitions invoke the “processors” command that connects the -2 partitions via the part keyword. LAMMPS cannot easily check for -this, but your simulation will likely hang in its setup phase if this -error has been made.

-
-
-

The file keyword writes the mapping of the factorization of P -processors and their mapping to the 3d grid to the specified file -outfile. This is useful to check that you assigned physical -processors in the manner you desired, which can be tricky to figure -out, especially when running on multiple partitions or on, a multicore -machine or when the processor ranks were reordered by use of the --reorder command-line switch or due to -use of MPI-specific launch options such as a config file.

-

If you have multiple partitions you should insure that each one writes -to a different file, e.g. using a world-style variable -for the filename. The file has a self-explanatory header, followed by -one-line per processor in this format:

-

world-ID universe-ID original-ID: I J K: name

-

The IDs are the processor’s rank in this simulation (the world), the -universe (of multiple simulations), and the original MPI communicator -used to instantiate LAMMPS, respectively. The world and universe IDs -will only be different if you are running on more than one partition; -see the -partition command-line switch. -The universe and original IDs will only be different if you used the --reorder command-line switch to reorder -the processors differently than their rank in the original -communicator LAMMPS was instantiated with.

-

I,J,K are the indices of the processor in the regular 3d grid, each -from 1 to Nd, where Nd is the number of processors in that dimension -of the grid.

-

The name is what is returned by a call to MPI_Get_processor_name() -and should represent an identifier relevant to the physical processors -in your machine. Note that depending on the MPI implementation, -multiple cores can have the same name.

-
-
-
-

Restrictions

-

This command cannot be used after the simulation box is defined by a -read_data or create_box command. -It can be used before a restart file is read to change the 3d -processor grid from what is specified in the restart file.

-

The grid numa keyword only currently works with the map cart -option.

-

The part keyword (for the receiving partition) only works with the -grid onelevel or grid twolevel options.

-
- -
-

Default

-

The option defaults are Px Py Pz = * * *, grid = onelevel, and map = -cart.

-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/python.html b/doc/python.html deleted file mode 100644 index 61ab2661ba..0000000000 --- a/doc/python.html +++ /dev/null @@ -1,640 +0,0 @@ - - - - - - - - - - - python command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

python command

-
-

Syntax

-
python func keyword args ...
-
-
-
    -
  • func = name of Python function
  • -
  • one or more keyword/args pairs must be appended
  • -
-
-keyword = invoke or input or return or format or file or here or exists
-  invoke arg = none = invoke the previously defined Python function
-  input args = N i1 i2 ... iN
-    N = # of inputs to function
-    i1,...,iN = value, SELF, or LAMMPS variable name
-      value = integer number, floating point number, or string
-      SELF = reference to LAMMPS itself which can be accessed by Python function
-      variable = v_name, where name = name of LAMMPS variable, e.g. v_abc
-  return arg = varReturn
-    varReturn = v_name  = LAMMPS variable name which return value of function will be assigned to
-  format arg = fstring with M characters
-    M = N if no return value, where N = # of inputs
-    M = N+1 if there is a return value
-    fstring = each character (i,f,s,p) corresponds in order to an input or return value
-    'i' = integer, 'f' = floating point, 's' = string, 'p' = SELF
-  file arg = filename
-    filename = file of Python code, which defines func
-  here arg = inline
-    inline = one or more lines of Python code which defines func
-             must be a single argument, typically enclosed between triple quotes
-  exists arg = none = Python code has been loaded by previous python command
-
-
-
-

Examples

-
python pForce input 2 v_x 20.0 return v_f format fff file force.py
-python pForce invoke
-
-
-
python factorial input 1 myN return v_fac format ii here """
-def factorial(n):
-  if n == 1: return n
-  return n * factorial(n-1)
- """
-
-
-
python loop input 1 SELF return v_value format -f here """
-def loop(lmpptr,N,cut0):
-  from lammps import lammps
-  lmp = lammps(ptr=lmpptr)
-
-
-
# loop N times, increasing cutoff each time
-
-
-
 for i in range(N):
-   cut = cut0 + i*0.1
-   lmp.set_variable("cut",cut)               # set a variable in LAMMPS
-   lmp.command("pair_style lj/cut ${cut}")   # LAMMPS commands
-   lmp.command("pair_coeff * * 1.0 1.0")
-   lmp.command("run 100")
-"""
-
-
-
-
-

Description

-
-

Note

-

It is not currently possible to use the python -command described in this section with Python 3, only with Python 2. -The C API changed from Python 2 to 3 and the LAMMPS code is not -compatible with both.

-
-

Define a Python function or execute a previously defined function. -Arguments, including LAMMPS variables, can be passed to the function -from the LAMMPS input script and a value returned by the Python -function to a LAMMPS variable. The Python code for the function can -be included directly in the input script or in a separate Python file. -The function can be standard Python code or it can make “callbacks” to -LAMMPS through its library interface to query or set internal values -within LAMMPS. This is a powerful mechanism for performing complex -operations in a LAMMPS input script that are not possible with the -simple input script and variable syntax which LAMMPS defines. Thus -your input script can operate more like a true programming language.

-

Use of this command requires building LAMMPS with the PYTHON package -which links to the Python library so that the Python interpreter is -embedded in LAMMPS. More details about this process are given below.

-

There are two ways to invoke a Python function once it has been -defined. One is using the invoke keyword. The other is to assign -the function to a python-style variable defined in -your input script. Whenever the variable is evaluated, it will -execute the Python function to assign a value to the variable. Note -that variables can be evaluated in many different ways within LAMMPS. -They can be substituted for directly in an input script. Or they can -be passed to various commands as arguments, so that the variable is -evaluated during a simulation run.

-

A broader overview of how Python can be used with LAMMPS is -given in Section python. There is an -examples/python directory which illustrates use of the python -command.

-
-

The func setting specifies the name of the Python function. The -code for the function is defined using the file or here keywords -as explained below.

-

If the invoke keyword is used, no other keywords can be used, and a -previous python command must have defined the Python function -referenced by this command. This invokes the Python function with the -previously defined arguments and return value processed as explained -below. You can invoke the function as many times as you wish in your -input script.

-

The input keyword defines how many arguments N the Python function -expects. If it takes no arguments, then the input keyword should -not be used. Each argument can be specified directly as a value, -e.g. 6 or 3.14159 or abc (a string of characters). The type of each -argument is specified by the format keyword as explained below, so -that Python will know how to interpret the value. If the word SELF is -used for an argument it has a special meaning. A pointer is passed to -the Python function which it converts into a reference to LAMMPS -itself. This enables the function to call back to LAMMPS through its -library interface as explained below. This allows the Python function -to query or set values internal to LAMMPS which can affect the -subsequent execution of the input script. A LAMMPS variable can also -be used as an argument, specified as v_name, where “name” is the name -of the variable. Any style of LAMMPS variable can be used, as defined -by the variable command. Each time the Python -function is invoked, the LAMMPS variable is evaluated and its value is -passed to the Python function.

-

The return keyword is only needed if the Python function returns a -value. The specified varReturn must be of the form v_name, where -“name” is the name of a python-style LAMMPS variable, defined by the -variable command. The Python function can return a -numeric or string value, as specified by the format keyword.

-

As explained on the variable doc page, the definition -of a python-style variable associates a Python function name with the -variable. This must match the func setting for this command. For -exampe these two commands would be self-consistent:

-
variable foo python myMultiply
-python myMultiply return v_foo format f file funcs.py
-
-
-

The two commands can appear in either order in the input script so -long as both are specified before the Python function is invoked for -the first time.

-

The format keyword must be used if the input or return keyword -is used. It defines an fstring with M characters, where M = sum of -number of inputs and outputs. The order of characters corresponds to -the N inputs, followed by the return value (if it exists). Each -character must be one of the following: “i” for integer, “f” for -floating point, “s” for string, or “p” for SELF. Each character -defines the type of the corresponding input or output value of the -Python function and affects the type conversion that is performed -internally as data is passed back and forth between LAMMPS and Python. -Note that it is permissible to use a python-style variable in a LAMMPS command that allows for an -equal-style variable as an argument, but only if the output of the -Python function is flagged as a numeric value (“i” or “f”) via the -format keyword.

-

Either the file, here, or exists keyword must be used, but only -one of them. These keywords specify what Python code to load into the -Python interpreter. The file keyword gives the name of a file, -which should end with a ”.py” suffix, which contains Python code. The -code will be immediately loaded into and run in the “main” module of -the Python interpreter. Note that Python code which contains a -function definition does not “execute” the function when it is run; it -simply defines the function so that it can be invoked later.

-

The here keyword does the same thing, except that the Python code -follows as a single argument to the here keyword. This can be done -using triple quotes as delimiters, as in the examples above. This -allows Python code to be listed verbatim in your input script, with -proper indentation, blank lines, and comments, as desired. See -Section 3.2, for an explanation of how -triple quotes can be used as part of input script syntax.

-

The exists keyword takes no argument. It means that Python code -containing the required Python function defined by the func setting, -is assumed to have been previously loaded by another python command.

-

Note that the Python code that is loaded and run must contain a -function with the specified func name. To operate properly when -later invoked, the the function code must match the input and -return and format keywords specified by the python command. -Otherwise Python will generate an error.

-
-

This section describes how Python code can be written to work with -LAMMPS.

-

Whether you load Python code from a file or directly from your input -script, via the file and here keywords, the code can be identical. -It must be indented properly as Python requires. It can contain -comments or blank lines. If the code is in your input script, it -cannot however contain triple-quoted Python strings, since that will -conflict with the triple-quote parsing that the LAMMPS input script -performs.

-

All the Python code you specify via one or more python commands is -loaded into the Python “main” module, i.e. __main__. The code can -define global variables or statements that are outside of function -definitions. It can contain multiple functions, only one of which -matches the func setting in the python command. This means you can -use the file keyword once to load several functions, and the -exists keyword thereafter in subsequent python commands to access -the other functions previously loaded.

-

A Python function you define (or more generally, the code you load) -can import other Python modules or classes, it can make calls to other -system functions or functions you define, and it can access or modify -global variables (in the “main” module) which will persist between -successive function calls. The latter can be useful, for example, to -prevent a function from being invoke multiple times per timestep by -different commands in a LAMMPS input script that access the returned -python-style variable associated with the function. For example, -consider this function loaded with two global variables defined -outside the function:

-
nsteplast = -1
-nvaluelast = 0
-
-
-
def expensive(nstep):
-  global nsteplast,nvaluelast
-  if nstep == nsteplast: return nvaluelast
-  nsteplast = nstep
-  # perform complicated calculation
-  nvalue = ...
-  nvaluelast = nvalue
-  return nvalue
-
-
-

Nsteplast stores the previous timestep the function was invoked -(passed as an argument to the function). Nvaluelast stores the return -value computed on the last function invocation. If the function is -invoked again on the same timestep, the previous value is simply -returned, without re-computing it. The “global” statement inside the -Python function allows it to overwrite the global variables.

-

Note that if you load Python code multiple times (via multiple python -commands), you can overwrite previously loaded variables and functions -if you are not careful. E.g. if the code above were loaded twice, the -global variables would be re-initialized, which might not be what you -want. Likewise, if a function with the same name exists in two chunks -of Python code you load, the function loaded second will override the -function loaded first.

-

It’s important to realize that if you are running LAMMPS in parallel, -each MPI task will load the Python interpreter and execute a local -copy of the Python function(s) you define. There is no connection -between the Python interpreters running on different processors. -This implies three important things.

-

First, if you put a print statement in your Python function, you will -see P copies of the output, when running on P processors. If the -prints occur at (nearly) the same time, the P copies of the output may -be mixed together. Welcome to the world of parallel programming and -debugging.

-

Second, if your Python code loads modules that are not pre-loaded by -the Python library, then it will load the module from disk. This may -be a bottleneck if 1000s of processors try to load a module at the -same time. On some large supercomputers, loading of modules from disk -by Python may be disabled. In this case you would need to pre-build a -Python library that has the required modules pre-loaded and link -LAMMPS with that library.

-

Third, if your Python code calls back to LAMMPS (discussed in the -next section) and causes LAMMPS to perform an MPI operation requires -global communication (e.g. via MPI_Allreduce), such as computing the -global temperature of the system, then you must insure all your Python -functions (running independently on different processors) call back to -LAMMPS. Otherwise the code may hang.

-
-

Your Python function can “call back” to LAMMPS through its -library interface, if you use the SELF input to pass Python -a pointer to LAMMPS. The mechanism for doing this in your -Python function is as follows:

-
def foo(lmpptr,...):
-  from lammps import lammps
-  lmp = lammps(ptr=lmpptr)
-  lmp.command('print "Hello from inside Python"')
-  ...
-
-
-

The function definition must include a variable (lmpptr in this case) -which corresponds to SELF in the python command. The first line of -the function imports the Python module lammps.py in the python dir of -the distribution. The second line creates a Python object “lmp” which -wraps the instance of LAMMPS that called the function. The -“ptr=lmpptr” argument is what makes that happen. The thrid line -invokes the command() function in the LAMMPS library interface. It -takes a single string argument which is a LAMMPS input script command -for LAMMPS to execute, the same as if it appeared in your input -script. In this case, LAMMPS should output

-
Hello from inside Python
-
-
-

to the screen and log file. Note that since the LAMMPS print command -itself takes a string in quotes as its argument, the Python string -must be delimited with a different style of quotes.

-

Section 11.7 describes the syntax for how -Python wraps the various functions included in the LAMMPS library -interface.

-

A more interesting example is in the examples/python/in.python script -which loads and runs the following function from examples/python/funcs.py:

-
def loop(N,cut0,thresh,lmpptr):
-  print "LOOP ARGS",N,cut0,thresh,lmpptr
-  from lammps import lammps
-  lmp = lammps(ptr=lmpptr)
-  natoms = lmp.get_natoms()
-
-
-
for i in range(N):
-  cut = cut0 + i*0.1
-
-
-
lmp.set_variable("cut",cut)                 # set a variable in LAMMPS
-lmp.command("pair_style lj/cut ${cut}")     # LAMMPS command
-#lmp.command("pair_style lj/cut %d" % cut)  # LAMMPS command option
-
-
-
lmp.command("pair_coeff * * 1.0 1.0")       # ditto
-lmp.command("run 10")                       # ditto
-pe = lmp.extract_compute("thermo_pe",0,0)   # extract total PE from LAMMPS
-print "PE",pe/natoms,thresh
-if pe/natoms < thresh: return
-
-
-

with these input script commands:

-
python          loop input 4 10 1.0 -4.0 SELF format iffp file funcs.py
-python          loop invoke
-
-
-

This has the effect of looping over a series of 10 short runs (10 -timesteps each) where the pair style cutoff is increased from a value -of 1.0 in distance units, in increments of 0.1. The looping stops -when the per-atom potential energy falls below a threshhold of -4.0 in -energy units. More generally, Python can be used to implement a loop -with complex logic, much more so than can be created using the LAMMPS -jump and if commands.

-

Several LAMMPS library functions are called from the loop function. -Get_natoms() returns the number of atoms in the simulation, so that it -can be used to normalize the potential energy that is returned by -extract_compute() for the “thermo_pe” compute that is defined by -default for LAMMPS thermodynamic output. Set_variable() sets the -value of a string variable defined in LAMMPS. This library function -is a useful way for a Python function to return multiple values to -LAMMPS, more than the single value that can be passed back via a -return statement. This cutoff value in the “cut” variable is then -substituted (by LAMMPS) in the pair_style command that is executed -next. Alternatively, the “LAMMPS command option” line could be used -in place of the 2 preceeding lines, to have Python insert the value -into the LAMMPS command string.

-
-

Note

-

When using the callback mechanism just described, recognize that -there are some operations you should not attempt because LAMMPS cannot -execute them correctly. If the Python function is invoked between -runs in the LAMMPS input script, then it should be OK to invoke any -LAMMPS input script command via the library interface command() or -file() functions, so long as the command would work if it were -executed in the LAMMPS input script directly at the same point.

-
-

However, a Python function can also be invoked during a run, whenever -an associated LAMMPS variable it is assigned to is evaluted. If the -variable is an input argument to another LAMMPS command (e.g. fix setforce), then the Python function will be invoked -inside the class for that command, in one of its methods that is -invoked in the middle of a timestep. You cannot execute arbitrary -input script commands from the Python function (again, via the -command() or file() functions) at that point in the run and expect it -to work. Other library functions such as those that invoke computes -or other variables may have hidden side effects as well. In these -cases, LAMMPS has no simple way to check that something illogical is -being attempted.

-
-

If you run Python code directly on your workstation, either -interactively or by using Python to launch a Python script stored in a -file, and your code has an error, you will typically see informative -error messages. That is not the case when you run Python code from -LAMMPS using an embedded Python interpreter. The code will typically -fail silently. LAMMPS will catch some errors but cannot tell you -where in the Python code the problem occurred. For example, if the -Python code cannot be loaded and run because it has syntax or other -logic errors, you may get an error from Python pointing to the -offending line, or you may get one of these generic errors from -LAMMPS:

-
Could not process Python file
-Could not process Python string
-
-
-

When the Python function is invoked, if it does not return properly, -you will typically get this generic error from LAMMPS:

-
Python function evaluation failed
-
-
-

Here are three suggestions for debugging your Python code while -running it under LAMMPS.

-

First, don’t run it under LAMMPS, at least to start with! Debug it -using plain Python. Load and invoke your function, pass it arguments, -check return values, etc.

-

Second, add Python print statements to the function to check how far -it gets and intermediate values it calculates. See the discussion -above about printing from Python when running in parallel.

-

Third, use Python exception handling. For example, say this statement -in your Python function is failing, because you have not initialized the -variable foo:

-
foo += 1
-
-
-

If you put one (or more) statements inside a “try” statement, -like this:

-
import exceptions
-print "Inside simple function"
-try:
-  foo += 1      # one or more statements here
-except Exception, e:
-  print "FOO error:",e
-
-
-

then you will get this message printed to the screen:

-
FOO error: local variable 'foo' referenced before assignment
-
-
-

If there is no error in the try statements, then nothing is printed. -Either way the function continues on (unless you put a return or -sys.exit() in the except clause).

-
-
-
-

Restrictions

-

This command is part of the PYTHON package. It is only enabled if -LAMMPS was built with that package. See the Making LAMMPS section for more info.

-

Building LAMMPS with the PYTHON package will link LAMMPS with the -Python library on your system. Settings to enable this are in the -lib/python/Makefile.lammps file. See the lib/python/README file for -information on those settings.

-

If you use Python code which calls back to LAMMPS, via the SELF input -argument explained above, there is an extra step required when -building LAMMPS. LAMMPS must also be built as a shared library and -your Python function must be able to to load the Python module in -python/lammps.py that wraps the LAMMPS library interface. These are -the same steps required to use Python by itself to wrap LAMMPS. -Details on these steps are explained in Section python. Note that it is important that the -stand-alone LAMMPS executable and the LAMMPS shared library be -consistent (built from the same source code files) in order for this -to work. If the two have been built at different times using -different source files, problems may occur.

-

As described above, you can use the python command to invoke a Python -function which calls back to LAMMPS through its Python-wrapped library -interface. However you cannot do the opposite. I.e. you cannot call -LAMMPS from Python and invoke the python command to “callback” to -Python and execute a Python function. LAMMPS will generate an error -if you try to do that. Note that we think there actually should be a -way to do that, but haven’t yet been able to figure out how to do it -successfully.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/quit.html b/doc/quit.html deleted file mode 100644 index 79feecc43b..0000000000 --- a/doc/quit.html +++ /dev/null @@ -1,230 +0,0 @@ - - - - - - - - - - - quit command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

quit command

-
-

Syntax

-
quit status
-
-
-

status = numerical exit status (optional)

-
-
-

Examples

-

quit -if “$n > 10000” then “quit 1”:pre

-
-
-

Description

-

This command causes LAMMPS to exit, after shutting down all output -cleanly.

-

It can be used as a debug statement in an input script, to terminate -the script at some intermediate point.

-

It can also be used as an invoked command inside the “then” or “else” -portion of an if command.

-

The optional status argument is an integer which signals the return -status to a program calling LAMMPS. A return status of 0 usually -indicates success. A status != 0 is failure, where the specified -value can be used to distinguish the kind of error, e.g. where in the -input script the quit was invoked. If not specified, a status of 0 is -returned.

-
-
-

Restrictions

-
-
none
-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/read_data.html b/doc/read_data.html deleted file mode 100644 index f3086bdd4b..0000000000 --- a/doc/read_data.html +++ /dev/null @@ -1,1353 +0,0 @@ - - - - - - - - - - - read_data command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

read_data command

-
-

Syntax

-
read_data file keyword args ...
-
-
-
    -
  • file = name of data file to read in
  • -
  • zero or more keyword/arg pairs may be appended
  • -
  • keyword = add or offset or shift or extra/atom/types or extra/bond/types or extra/angle/types or extra/dihedral/types or extra/improper/types or group or nocoeff or fix
  • -
-
-add arg = append or Nstart or merge
-  append = add new atoms with IDs appended to current IDs
-  Nstart = add new atoms with IDs starting with Nstart
-  merge = add new atoms with their IDs unchanged
-offset args = toff boff aoff doff ioff
-  toff = offset to add to atom types
-  boff = offset to add to bond types
-  aoff = offset to add to angle types
-  doff = offset to add to dihedral types
-  ioff = offset to add to improper types
-shift args = Sx Sy Sz
-  Sx,Sy,Sz = distance to shift atoms when adding to system (distance units)
-extra/atom/types arg = # of extra atom types
-extra/bond/types arg = # of extra bond types
-extra/angle/types arg = # of extra angle types
-extra/dihedral/types arg = # of extra dihedral types
-extra/improper/types arg = # of extra improper types
-group args = groupID
-  groupID = add atoms in data file to this group
-nocoeff = ignore force field parameters
-fix args = fix-ID header-string section-string
-  fix-ID = ID of fix to process header lines and sections of data file
-  header-string = header lines containing this string will be passed to fix
-  section-string = section names with this string will be passed to fix
-
-
-
-

Examples

-
read_data data.lj
-read_data ../run7/data.polymer.gz
-read_data data.protein fix mycmap crossterm CMAP
-read_data data.water add append offset 3 1 1 1 1 shift 0.0 0.0 50.0
-read_data data.water add merge 1 group solvent
-
-
-
-
-

Description

-

Read in a data file containing information LAMMPS needs to run a -simulation. The file can be ASCII text or a gzipped text file -(detected by a .gz suffix). This is one of 3 ways to specify initial -atom coordinates; see the read_restart and -create_atoms commands for alternative methods. -Also see the explanation of the -restart command-line switch which can convert a restart file to -a data file.

-

This command can be used multiple times to add new atoms and their -properties to an existing system by using the add, offset, and -shift keywords. See more details below, which includes the use case -for the extra keywords.

-

The group keyword adds all the atoms in the data file to the -specified group-ID. The group will be created if it does not already -exist. This is useful if you are reading multiple data files and wish -to put sets of atoms into different groups so they can be operated on -later. E.g. a group of added atoms can be moved to new positions via -the displace_atoms command. Note that atoms -read from the data file are also always added to the “all” group. The -group command discusses atom groups, as used in LAMMPS.

-

The nocoeff keyword tells read_data to ignore force field parameters. -The various Coeff sections are still read and have to have the correct -number of lines, but they are not applied. This also allows to read a -data file without having any pair, bond, angle, dihedral or improper -styles defined, or to read a data file for a different force field.

-

The use of the fix keyword is discussed below.

-
-

Reading multiple data files

-

The read_data command can be used multiple times with the same or -different data files to build up a complex system from components -contained in individual data files. For example one data file could -contain fluid in a confined domain; a second could contain wall atoms, -and the second file could be read a third time to create a wall on the -other side of the fluid. The third set of atoms could be rotated to -an opposing direction using the displace_atoms -command, after the third read_data command is used.

-

The add, offset, shift, extra, and group keywords are -useful in this context.

-

If a simulation box does not yet exist, the add keyword -cannot be used; the read_data command is being used for the first -time. If a simulation box does exist, due to using the -create_box command, or a previous read_data command, -then the add keyword must be used.

-
-

Note

-

The simulation box size (xlo to xhi, ylo to yhi, zlo to zhi) in -the new data file will be merged with the existing simulation box to -create a large enough box in each dimension to contain both the -existing and new atoms. Each box dimension never shrinks due to this -merge operation, it only stays the same or grows. Care must be used if -you are growing the existing simulation box in a periodic dimension. -If there are existing atoms with bonds that straddle that periodic -boundary, then the atoms may become far apart if the box size grows. -This will separate the atoms in the bond, which can lead to “lost” -bond atoms or bad dynamics.

-
-

The three choices for the add argument affect how the IDs of atoms -in the data file are treated. If append is specified, atoms in the -data file are added to the current system, with their atom IDs reset -so that an atomID = M in the data file becomes atomID = N+M, where N -is the largest atom ID in the current system. This rule is applied to -all occurrences of atom IDs in the data file, e.g. in the Velocity or -Bonds section. If Nstart is specified, then Nstart is a numeric -value is given, e.g. 1000, so that an atomID = M in the data file -becomes atomID = 1000+M. If merge is specified, the data file atoms -are added to the current system without changing their IDs. They are -assumed to merge (without duplication) with the currently defined -atoms. It is up to you to insure there are no multiply defined atom -IDs, as LAMMPS only performs an incomplete check that this is the case -by insuring the resulting max atomID >= the number of atoms.

-

The offset and shift keywords can only be used if the add -keyword is also specified.

-

The offset keyword adds the specified offset values to the atom -types, bond types, angle types, dihedral types, and improper types as -they are read from the data file. E.g. if toff = 2, and the file -uses atom types 1,2,3, then the added atoms will have atom types -3,4,5. These offsets apply to all occurrences of types in the data -file, e.g. for the Atoms or Masses or Pair Coeffs or Bond Coeffs -sections. This makes it easy to use atoms and molecules and their -attributes from a data file in different simulations, where you want -their types (atom, bond, angle, etc) to be different depending on what -other types already exist. All five offset values must be specified, -but individual values will be ignored if the data file does not use -that attribute (e.g. no bonds).

-

The shift keyword can be used to specify an (Sx, Sy, Sz) -displacement applied to the coordinates of each atom. Sz must be 0.0 -for a 2d simulation. This is a mechanism for adding structured -collections of atoms at different locations within the simulation box, -to build up a complex geometry. It is up to you to insure atoms do -not end up overlapping unphysically which would lead to bad dynamics. -Note that the displace_atoms command can be used -to move a subset of atoms after they have been read from a data file. -Likewise, the delete_atoms command can be used to -remove overlapping atoms. Note that the shift values (Sx, Sy, Sz) are -also added to the simulation box information (xlo, xhi, ylo, yhi, zlo, -zhi) in the data file to shift its boundaries. E.g. xlo_new = xlo + -Sx, xhi_new = xhi + Sx.

-

The extra keywords can only be used the first time the read_data -command is used. They are useful if you intend to add new atom, bond, -angle, etc types later with additional read_data commands. This is -because the maximum number of allowed atom, bond, angle, etc types is -set by LAMMPS when the system is first initialized. If you do not use -the extra keywords, then the number of these types will be limited -to what appears in the first data file you read. For example, if the -first data file is a solid substrate of Si, it will likely specify a -single atom type. If you read a second data file with a different -material (water molecules) that sit on top of the substrate, you will -want to use different atom types for those atoms. You can only do -this if you set the extra/atom/types keyword to a sufficiently large -value when reading the substrate data file. Note that use of the -extra keywords also allows each data file to contain sections like -Masses or Pair Coeffs or Bond Coeffs which are sized appropriately for -the number of types in that data file. If the offset keyword is -used appropriately when each data file is read, the values in those -sections will be stored correctly in the larger data structures -allocated by the use of the extra keywords. E.g. the substrate file -can list mass and pair coefficients for type 1 silicon atoms. The -water file can list mass and pair coeffcients for type 1 and type 2 -hydrogen and oxygen atoms. Use of the extra and offset keywords -will store those mass and pair coefficient values appropriately in -data structures that allow for 3 atom types (Si, H, O). Of course, -you would still need to specify coefficients for H/Si and O/Si -interactions in your input script to have a complete pairwise -interaction model.

-

An alternative to using the extra keywords with the read_data -command, is to use the create_box command to -initialize the simulation box and all the various type limits you need -via its extra keywords. Then use the read_data command one or more -times to populate the system with atoms, bonds, angles, etc, using the -offset keyword if desired to alter types used in the various data -files you read.

-
-

Format of a data file

-

The structure of the data file is important, though many settings and -sections are optional or can come in any order. See the examples -directory for sample data files for different problems.

-

A data file has a header and a body. The header appears first. The -first line of the header is always skipped; it typically contains a -description of the file. Then lines are read one at a time. Lines -can have a trailing comment starting with ‘#’ that is ignored. If the -line is blank (only whitespace after comment is deleted), it is -skipped. If the line contains a header keyword, the corresponding -value(s) is read from the line. If it doesn’t contain a header -keyword, the line begins the body of the file.

-

The body of the file contains zero or more sections. The first line -of a section has only a keyword. This line can have a trailing -comment starting with ‘#’ that is either ignored or can be used to -check for a style match, as described below. The next line is -skipped. The remaining lines of the section contain values. The -number of lines depends on the section keyword as described below. -Zero or more blank lines can be used between sections. Sections can -appear in any order, with a few exceptions as noted below.

-

The keyword fix can be used one or more times. Each usage specifies -a fix that will be used to process a specific portion of the data -file. Any header line containing header-string and any section with -a name containing section-string will be passed to the specified -fix. See the fix property/atom command for -an example of a fix that operates in this manner. The doc page for -the fix defines the syntax of the header line(s) and section(s) that -it reads from the data file. Note that the header-string can be -specified as NULL, in which case no header lines are passed to the -fix. This means that it can infer the length of its Section from -standard header settings, such as the number of atoms.

-

The formatting of individual lines in the data file (indentation, -spacing between words and numbers) is not important except that header -and section keywords (e.g. atoms, xlo xhi, Masses, Bond Coeffs) must -be capitalized as shown and can’t have extra white space between their -words - e.g. two spaces or a tab between the 2 words in “xlo xhi” or -the 2 words in “Bond Coeffs”, is not valid.

-
-

Format of the header of a data file

-

These are the recognized header keywords. Header lines can come in -any order. The value(s) are read from the beginning of the line. -Thus the keyword atoms should be in a line like “1000 atoms”; the -keyword ylo yhi should be in a line like “-10.0 10.0 ylo yhi”; the -keyword xy xz yz should be in a line like “0.0 5.0 6.0 xy xz yz”. -All these settings have a default value of 0, except the lo/hi box -size defaults are -0.5 and 0.5. A line need only appear if the value -is different than the default.

-
    -
  • atoms = # of atoms in system
  • -
  • bonds = # of bonds in system
  • -
  • angles = # of angles in system
  • -
  • dihedrals = # of dihedrals in system
  • -
  • impropers = # of impropers in system
  • -
  • atom types = # of atom types in system
  • -
  • bond types = # of bond types in system
  • -
  • angle types = # of angle types in system
  • -
  • dihedral types = # of dihedral types in system
  • -
  • improper types = # of improper types in system
  • -
  • extra bond per atom = leave space for this many new bonds per atom
  • -
  • extra angle per atom = leave space for this many new angles per atom
  • -
  • extra dihedral per atom = leave space for this many new dihedrals per atom
  • -
  • extra improper per atom = leave space for this many new impropers per atom
  • -
  • extra special per atom = leave space for this many new special bonds per atom
  • -
  • ellipsoids = # of ellipsoids in system
  • -
  • lines = # of line segments in system
  • -
  • triangles = # of triangles in system
  • -
  • bodies = # of bodies in system
  • -
  • xlo xhi = simulation box boundaries in x dimension
  • -
  • ylo yhi = simulation box boundaries in y dimension
  • -
  • zlo zhi = simulation box boundaries in z dimension
  • -
  • xy xz yz = simulation box tilt factors for triclinic system
  • -
-

The initial simulation box size is determined by the lo/hi settings. -In any dimension, the system may be periodic or non-periodic; see the -boundary command. When the simulation box is created -it is also partitioned into a regular 3d grid of rectangular bricks, -one per processor, based on the number of processors being used and -the settings of the processors command. The -partitioning can later be changed by the balance or -fix balance commands.

-

If the xy xz yz line does not appear, LAMMPS will set up an -axis-aligned (orthogonal) simulation box. If the line does appear, -LAMMPS creates a non-orthogonal simulation domain shaped as a -parallelepiped with triclinic symmetry. The parallelepiped has its -“origin” at (xlo,ylo,zlo) and is defined by 3 edge vectors starting -from the origin given by A = (xhi-xlo,0,0); B = (xy,yhi-ylo,0); C = -(xz,yz,zhi-zlo). Xy,xz,yz can be 0.0 or positive or negative values -and are called “tilt factors” because they are the amount of -displacement applied to faces of an originally orthogonal box to -transform it into the parallelepiped.

-

By default, the tilt factors (xy,xz,yz) can not skew the box more than -half the distance of the corresponding parallel box length. For -example, if xlo = 2 and xhi = 12, then the x box length is 10 and the -xy tilt factor must be between -5 and 5. Similarly, both xz and yz -must be between -(xhi-xlo)/2 and +(yhi-ylo)/2. Note that this is not -a limitation, since if the maximum tilt factor is 5 (as in this -example), then configurations with tilt = ..., -15, -5, 5, 15, 25, -... are all geometrically equivalent. If you wish to define a box -with tilt factors that exceed these limits, you can use the box tilt command, with a setting of large; a setting of -small is the default.

-

See Section_howto 12 of the doc pages -for a geometric description of triclinic boxes, as defined by LAMMPS, -and how to transform these parameters to and from other commonly used -triclinic representations.

-

When a triclinic system is used, the simulation domain should normally -be periodic in the dimension that the tilt is applied to, which is -given by the second dimension of the tilt factor (e.g. y for xy tilt). -This is so that pairs of atoms interacting across that boundary will -have one of them shifted by the tilt factor. Periodicity is set by -the boundary command. For example, if the xy tilt -factor is non-zero, then the y dimension should be periodic. -Similarly, the z dimension should be periodic if xz or yz is non-zero. -LAMMPS does not require this periodicity, but you may lose atoms if -this is not the case.

-

Also note that if your simulation will tilt the box, e.g. via the fix deform command, the simulation box must be setup to -be triclinic, even if the tilt factors are initially 0.0. You can -also change an orthogonal box to a triclinic box or vice versa by -using the change box command with its ortho and -triclinic options.

-

For 2d simulations, the zlo zhi values should be set to bound the z -coords for atoms that appear in the file; the default of -0.5 0.5 is -valid if all z coords are 0.0. For 2d triclinic simulations, the xz -and yz tilt factors must be 0.0.

-

If the system is periodic (in a dimension), then atom coordinates can -be outside the bounds (in that dimension); they will be remapped (in a -periodic sense) back inside the box. Note that if the add option is -being used to add atoms to a simulation box that already exists, this -periodic remapping will be performed using simulation box bounds that -are the union of the existing box and the box boundaries in the new -data file.

-
-

Note

-

If the system is non-periodic (in a dimension), then all atoms -in the data file must have coordinates (in that dimension) that are -“greater than or equal to” the lo value and “less than or equal to” -the hi value. If the non-periodic dimension is of style “fixed” (see -the boundary command), then the atom coords must be -strictly “less than” the hi value, due to the way LAMMPS assign atoms -to processors. Note that you should not make the lo/hi values -radically smaller/larger than the extent of the atoms. For example, -if your atoms extend from 0 to 50, you should not specify the box -bounds as -10000 and 10000. This is because LAMMPS uses the specified -box size to layout the 3d grid of processors. A huge (mostly empty) -box will be sub-optimal for performance when using “fixed” boundary -conditions (see the boundary command). When using -“shrink-wrap” boundary conditions (see the boundary -command), a huge (mostly empty) box may cause a parallel simulation to -lose atoms when LAMMPS shrink-wraps the box around the atoms. The -read_data command will generate an error in this case.

-
-

The “extra bond per atom” setting (angle, dihedral, improper) is only -needed if new bonds (angles, dihedrals, impropers) will be added to -the system when a simulation runs, e.g. by using the fix bond/create command. This will pre-allocate -space in LAMMPS data structures for storing the new bonds (angles, -dihedrals, impropers).

-

The “extra special per atom” setting is typically only needed if new -bonds/angles/etc will be added to the system, e.g. by using the fix bond/create command. Or if entire new molecules -will be added to the system, e.g. by using the fix deposit or fix pour commands, which -will have more special 1-2,1-3,1-4 neighbors than any other molecules -defined in the data file. Using this setting will pre-allocate space -in the LAMMPS data structures for storing these neighbors. See the -special_bonds and molecule doc -pages for more discussion of 1-2,1-3,1-4 neighbors.

-
-

Note

-

All of the “extra” settings are only used if they appear in the -first data file read; see the description of the add keyword above -for reading multiple data files. If they appear in later data files, -they are ignored.

-
-

The “ellipsoids” and “lines” and “triangles” and “bodies” settings are -only used with atom_style ellipsoid or line or tri or body and specify how many of the atoms are -finite-size ellipsoids or lines or triangles or bodies; the remainder -are point particles. See the discussion of ellipsoidflag and the -Ellipsoids section below. See the discussion of lineflag and the -Lines section below. See the discussion of triangleflag and the -Triangles section below. See the discussion of bodyflag and the -Bodies section below.

-
-

Note

-

For atom_style template, the molecular -topology (bonds,angles,etc) is contained in the molecule templates -read-in by the molecule command. This means you -cannot set the bonds, angles, etc header keywords in the data -file, nor can you define Bonds, Angles, etc sections as discussed -below. You can set the bond types, angle types, etc header -keywords, though it is not necessary. If specified, they must match -the maximum values defined in any of the template molecules.

-
-
-

Format of the body of a data file

-

These are the section keywords for the body of the file.

-
    -
  • Atoms, Velocities, Masses, Ellipsoids, Lines, Triangles, Bodies = atom-property sections
  • -
  • Bonds, Angles, Dihedrals, Impropers = molecular topology sections
  • -
  • Pair Coeffs, PairIJ Coeffs, Bond Coeffs, Angle Coeffs, Dihedral Coeffs, Improper Coeffs = force field sections
  • -
  • BondBond Coeffs, BondAngle Coeffs, MiddleBondTorsion Coeffs, EndBondTorsion Coeffs, AngleTorsion Coeffs, AngleAngleTorsion Coeffs, BondBond13 Coeffs, AngleAngle Coeffs = class 2 force field sections
  • -
-

These keywords will check an appended comment for a match with the -currently defined style:

-
    -
  • Atoms, Pair Coeffs, PairIJ Coeffs, Bond Coeffs, Angle Coeffs, Dihedral Coeffs, Improper Coeffs
  • -
-

For example, these lines:

-
Atoms # sphere
-Pair Coeffs # lj/cut
-
-
-

will check if the currently-defined atom_style is -sphere, and the current pair_style is lj/cut. If -not, LAMMPS will issue a warning to indicate that the data file -section likely does not contain the correct number or type of -parameters expected for the currently-defined style.

-

Each section is listed below in alphabetic order. The format of each -section is described including the number of lines it must contain and -rules (if any) for where it can appear in the data file.

-

Any individual line in the various sections can have a trailing -comment starting with “#” for annotation purposes. E.g. in the -Atoms section:

-
10 1 17 -1.0 10.0 5.0 6.0   # salt ion
-
-
-
-

Angle Coeffs section:

-
    -
  • one line per angle type
  • -
  • line syntax: ID coeffs
  • -
-
ID = angle type (1-N)
-coeffs = list of coeffs
-
-
-
    -
  • example:
  • -
-
6 70 108.5 0 0
-
-
-

The number and meaning of the coefficients are specific to the defined -angle style. See the angle_style and -angle_coeff commands for details. Coefficients can -also be set via the angle_coeff command in the -input script.

-
-

AngleAngle Coeffs section:

-
    -
  • one line per improper type
  • -
  • line syntax: ID coeffs
  • -
-
-ID = improper type (1-N)
-coeffs = list of coeffs (see improper_coeff)
-
-
-

AngleAngleTorsion Coeffs section:

-
    -
  • one line per dihedral type
  • -
  • line syntax: ID coeffs
  • -
-
-ID = dihedral type (1-N)
-coeffs = list of coeffs (see dihedral_coeff)
-
-
-

Angles section:

-
    -
  • one line per angle
  • -
  • line syntax: ID type atom1 atom2 atom3
  • -
-
ID = number of angle (1-Nangles)
-type = angle type (1-Nangletype)
-atom1,atom2,atom3 = IDs of 1st,2nd,3rd atoms in angle
-
-
-

example: -.. parsed-literal:

-
2 2 17 29 430
-
-
-

The 3 atoms are ordered linearly within the angle. Thus the central -atom (around which the angle is computed) is the atom2 in the list. -E.g. H,O,H for a water molecule. The Angles section must appear -after the Atoms section. All values in this section must be -integers (1, not 1.0).

-
-

AngleTorsion Coeffs section:

-
    -
  • one line per dihedral type
  • -
  • line syntax: ID coeffs
  • -
-
-ID = dihedral type (1-N)
-coeffs = list of coeffs (see dihedral_coeff)
-
-
-

Atoms section:

-
    -
  • one line per atom
  • -
  • line syntax: depends on atom style
  • -
-

An Atoms section must appear in the data file if natoms > 0 in the -header section. The atoms can be listed in any order. These are the -line formats for each atom style in LAMMPS. As -discussed below, each line can optionally have 3 flags (nx,ny,nz) -appended to it, which indicate which image of a periodic simulation -box the atom is in. These may be important to include for some kinds -of analysis.

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
angleatom-ID molecule-ID atom-type x y z
atomicatom-ID atom-type x y z
bodyatom-ID atom-type bodyflag mass x y z
bondatom-ID molecule-ID atom-type x y z
chargeatom-ID atom-type q x y z
dipoleatom-ID atom-type q x y z mux muy muz
dpdatom-ID atom-type theta x y z
electronatom-ID atom-type q spin eradius x y z
ellipsoidatom-ID atom-type ellipsoidflag density x y z
fullatom-ID molecule-ID atom-type q x y z
lineatom-ID molecule-ID atom-type lineflag density x y z
mesoatom-ID atom-type rho e cv x y z
molecularatom-ID molecule-ID atom-type x y z
periatom-ID atom-type volume density x y z
smdatom-ID atom-type molecule volume mass kernel-radius contact-radius x y z
sphereatom-ID atom-type diameter density x y z
templateatom-ID molecule-ID template-index template-atom atom-type x y z
triatom-ID molecule-ID atom-type triangleflag density x y z
wavepacketatom-ID atom-type charge spin eradius etag cs_re cs_im x y z
hybridatom-ID atom-type x y z sub-style1 sub-style2 ...
-

The per-atom values have these meanings and units, listed alphabetically:

-
    -
  • atom-ID = integer ID of atom
  • -
  • atom-type = type of atom (1-Ntype)
  • -
  • bodyflag = 1 for body particles, 0 for point particles
  • -
  • contact-radius = ??? (distance units)
  • -
  • cs_re,cs_im = real/imaginary parts of wavepacket coefficients
  • -
  • cv = heat capacity (need units) for SPH particles
  • -
  • density = density of particle (mass/distance^3 or mass/distance^2 or mass/distance units, depending on dimensionality of particle)
  • -
  • diameter = diameter of spherical atom (distance units)
  • -
  • e = energy (need units) for SPH particles
  • -
  • ellipsoidflag = 1 for ellipsoidal particles, 0 for point particles
  • -
  • eradius = electron radius (or fixed-core radius)
  • -
  • etag = integer ID of electron that each wavepacket belongs to
  • -
  • kernel-radius = ??? (distance units)
  • -
  • lineflag = 1 for line segment particles, 0 for point or spherical particles
  • -
  • mass = mass of particle (mass units)
  • -
  • molecule-ID = integer ID of molecule the atom belongs to
  • -
  • mux,muy,muz = components of dipole moment of atom (dipole units)
  • -
  • q = charge on atom (charge units)
  • -
  • rho = density (need units) for SPH particles
  • -
  • spin = electron spin (+1/-1), 0 = nuclei, 2 = fixed-core, 3 = pseudo-cores (i.e. ECP)
  • -
  • template-atom = which atom within a template molecule the atom is
  • -
  • template-index = which molecule within the molecule template the atom is part of
  • -
  • theta = internal temperature of a DPD particle
  • -
  • triangleflag = 1 for triangular particles, 0 for point or sperhical particles
  • -
  • volume = volume of Peridynamic particle (distance^3 units)
  • -
  • x,y,z = coordinates of atom (distance units)
  • -
-

The units for these quantities depend on the unit style; see the -units command for details.

-

For 2d simulations specify z as 0.0, or a value within the zlo zhi -setting in the data file header.

-

The atom-ID is used to identify the atom throughout the simulation and -in dump files. Normally, it is a unique value from 1 to Natoms for -each atom. Unique values larger than Natoms can be used, but they -will cause extra memory to be allocated on each processor, if an atom -map array is used, but not if an atom map hash is used; see the -atom_modify command for details. If an atom map is -not used (e.g. an atomic system with no bonds), and you don’t care if -unique atom IDs appear in dump files, then the atom-IDs can all be set -to 0.

-

The molecule ID is a 2nd identifier attached to an atom. Normally, it -is a number from 1 to N, identifying which molecule the atom belongs -to. It can be 0 if it is an unbonded atom or if you don’t care to -keep track of molecule assignments.

-

The diameter specifies the size of a finite-size spherical particle. -It can be set to 0.0, which means that atom is a point particle.

-

The ellipsoidflag, lineflag, triangleflag, and bodyflag determine -whether the particle is a finite-size ellipsoid or line or triangle or -body of finite size, or whether the particle is a point particle. -Additional attributes must be defined for each ellipsoid, line, -triangle, or body in the corresponding Ellipsoids, Lines, -Triangles, or Bodies section.

-

The template-index and template-atom are only defined used by -atom_style template. In this case the -molecule command is used to define a molecule template -which contains one or more molecules. If an atom belongs to one of -those molecules, its template-index and template-atom are both set -to positive integers; if not the values are both 0. The -template-index is which molecule (1 to Nmols) the atom belongs to. -The template-atom is which atom (1 to Natoms) within the molecule -the atom is.

-

Some pair styles and fixes and computes that operate on finite-size -particles allow for a mixture of finite-size and point particles. See -the doc pages of individual commands for details.

-

For finite-size particles, the density is used in conjunction with the -particle volume to set the mass of each particle as mass = density * -volume. In this context, volume can be a 3d quantity (for spheres or -ellipsoids), a 2d quantity (for triangles), or a 1d quantity (for line -segments). If the volume is 0.0, meaning a point particle, then the -density value is used as the mass. One exception is for the body atom -style, in which case the mass of each particle (body or point -particle) is specified explicitly. This is because the volume of the -body is unknown.

-

For atom_style hybrid, following the 5 initial values (ID,type,x,y,z), -specific values for each sub-style must be listed. The order of the -sub-styles is the same as they were listed in the -atom_style command. The sub-style specific values -are those that are not the 5 standard ones (ID,type,x,y,z). For -example, for the “charge” sub-style, a “q” value would appear. For -the “full” sub-style, a “molecule-ID” and “q” would appear. These are -listed in the same order they appear as listed above. Thus if

-
atom_style hybrid charge sphere
-
-
-

were used in the input script, each atom line would have these fields:

-
atom-ID atom-type x y z q diameter density
-
-
-

Note that if a non-standard value is defined by multiple sub-styles, -it must appear mutliple times in the atom line. E.g. the atom line -for atom_style hybrid dipole full would list “q” twice:

-
atom-ID atom-type x y z q mux muy myz molecule-ID q
-
-
-

Atom lines specify the (x,y,z) coordinates of atoms. These can be -inside or outside the simulation box. When the data file is read, -LAMMPS wraps coordinates outside the box back into the box for -dimensions that are periodic. As discussed above, if an atom is -outside the box in a non-periodic dimension, it will be lost.

-

LAMMPS always stores atom coordinates as values which are inside the -simulation box. It also stores 3 flags which indicate which image of -the simulation box (in each dimension) the atom would be in if its -coordinates were unwrapped across periodic boundaries. An image flag -of 0 means the atom is still inside the box when unwrapped. A value -of 2 means add 2 box lengths to get the unwrapped coordinate. A value -of -1 means subtract 1 box length to get the unwrapped coordinate. -LAMMPS updates these flags as atoms cross periodic boundaries during -the simulation. The dump command can output atom atom -coordinates in wrapped or unwrapped form, as well as the 3 image -flags.

-

In the data file, atom lines (all lines or none of them) can -optionally list 3 trailing integer values (nx,ny,nz), which are used -to initialize the atom’s image flags. If nx,ny,nz values are not -listed in the data file, LAMMPS initializes them to 0. Note that the -image flags are immediately updated if an atom’s coordinates need to -wrapped back into the simulation box.

-

It is only important to set image flags correctly in a data file if a -simulation model relies on unwrapped coordinates for some calculation; -otherwise they can be left unspecified. Examples of LAMMPS commands -that use unwrapped coordinates internally are as follows:

-
    -
  • Atoms in a rigid body (see fix rigid, fix rigid/small) must have consistent image flags, so that -when the atoms are unwrapped, they are near each other, i.e. as a -single body.
  • -
  • If the replicate command is used to generate a larger -system, image flags must be consistent for bonded atoms when the bond -crosses a periodic boundary. I.e. the values of the image flags -should be different by 1 (in the appropriate dimension) for the two -atoms in such a bond.
  • -
  • If you plan to dump image flags and perform post-analysis -that will unwrap atom coordinates, it may be important that a -continued run (restarted from a data file) begins with image flags -that are consistent with the previous run.
  • -
-
-

Note

-

If your system is an infinite periodic crystal with bonds then -it is impossible to have fully consistent image flags. This is because -some bonds will cross periodic boundaries and connect two atoms with the -same image flag.

-
-

Atom velocities and other atom quantities not defined above are set to -0.0 when the Atoms section is read. Velocities can be set later by -a Velocities section in the data file or by a -velocity or set command in the input -script.

-
-

Bodies section:

-
    -
  • one or more lines per body
  • -
  • first line syntax: atom-ID Ninteger Ndouble
  • -
-
Ninteger = # of integer quantities for this particle
-Ndouble = # of floating-point quantities for this particle
-
-
-
    -
  • 0 or more integer lines with total of Ninteger values
  • -
  • 0 or more double lines with total of Ndouble values
  • -
  • example:
  • -
-
12 3 6
-2 3 2
-1.0 2.0 3.0 1.0 2.0 4.0
-
-
-
    -
  • example:
  • -
-
12 0 14
-1.0 2.0 3.0 1.0 2.0 4.0 1.0
-2.0 3.0 1.0 2.0 4.0 4.0 2.0
-
-
-

The Bodies section must appear if atom_style body -is used and any atoms listed in the Atoms section have a bodyflag = -1. The number of bodies should be specified in the header section via -the “bodies” keyword.

-

Each body can have a variable number of integer and/or floating-point -values. The number and meaning of the values is defined by the body -style, as described in the body doc page. The body style -is given as an argument to the atom_style body -command.

-

The Ninteger and Ndouble values determine how many integer and -floating-point values are specified for this particle. Ninteger and -Ndouble can be as large as needed and can be different for every body. -Integer values are then listed next on subsequent lines. Lines are -read one at a time until Ninteger values are read. Floating-point -values follow on subsequent lines, Again lines are read one at a time -until Ndouble values are read. Note that if there are no values of a -particular type, no lines appear for that type.

-

The Bodies section must appear after the Atoms section.

-
-

Bond Coeffs section:

-
    -
  • one line per bond type
  • -
  • line syntax: ID coeffs
  • -
-
ID = bond type (1-N)
-coeffs = list of coeffs
-
-
-
    -
  • example:
  • -
-
4 250 1.49
-
-
-

The number and meaning of the coefficients are specific to the defined -bond style. See the bond_style and -bond_coeff commands for details. Coefficients can -also be set via the bond_coeff command in the input -script.

-
-

BondAngle Coeffs section:

-
    -
  • one line per angle type
  • -
  • line syntax: ID coeffs
  • -
-
-ID = angle type (1-N)
-coeffs = list of coeffs (see class 2 section of angle_coeff)
-
-
-

BondBond Coeffs section:

-
    -
  • one line per angle type
  • -
  • line syntax: ID coeffs
  • -
-
-ID = angle type (1-N)
-coeffs = list of coeffs (see class 2 section of angle_coeff)
-
-
-

BondBond13 Coeffs section:

-
    -
  • one line per dihedral type
  • -
  • line syntax: ID coeffs
  • -
-
-ID = dihedral type (1-N)
-coeffs = list of coeffs (see class 2 section of dihedral_coeff)
-
-
-

Bonds section:

-
    -
  • one line per bond
  • -
  • line syntax: ID type atom1 atom2
  • -
-
ID = bond number (1-Nbonds)
-type = bond type (1-Nbondtype)
-atom1,atom2 = IDs of 1st,2nd atoms in bond
-
-
-
    -
  • example:
  • -
-
12 3 17 29
-
-
-

The Bonds section must appear after the Atoms section. All values -in this section must be integers (1, not 1.0).

-
-

Dihedral Coeffs section:

-
    -
  • one line per dihedral type
  • -
  • line syntax: ID coeffs
  • -
-
ID = dihedral type (1-N)
-coeffs = list of coeffs
-
-
-
    -
  • example:
  • -
-
3 0.6 1 0 1
-
-
-

The number and meaning of the coefficients are specific to the defined -dihedral style. See the dihedral_style and -dihedral_coeff commands for details. -Coefficients can also be set via the -dihedral_coeff command in the input script.

-
-

Dihedrals section:

-
    -
  • one line per dihedral
  • -
  • line syntax: ID type atom1 atom2 atom3 atom4
  • -
-
ID = number of dihedral (1-Ndihedrals)
-type = dihedral type (1-Ndihedraltype)
-atom1,atom2,atom3,atom4 = IDs of 1st,2nd,3rd,4th atoms in dihedral
-
-
-
    -
  • example:
  • -
-
12 4 17 29 30 21
-
-
-

The 4 atoms are ordered linearly within the dihedral. The Dihedrals -section must appear after the Atoms section. All values in this -section must be integers (1, not 1.0).

-
-

Ellipsoids section:

-
    -
  • one line per ellipsoid
  • -
  • line syntax: atom-ID shapex shapey shapez quatw quati quatj quatk
  • -
-
atom-ID = ID of atom which is an ellipsoid
-shapex,shapey,shapez = 3 diameters of ellipsoid (distance units)
-quatw,quati,quatj,quatk = quaternion components for orientation of atom
-
-
-
    -
  • example:
  • -
-
12 1 2 1 1 0 0 0
-
-
-

The Ellipsoids section must appear if atom_style ellipsoid is used and any atoms are listed in the -Atoms section with an ellipsoidflag = 1. The number of ellipsoids -should be specified in the header section via the “ellipsoids” -keyword.

-

The 3 shape values specify the 3 diameters or aspect ratios of a -finite-size ellipsoidal particle, when it is oriented along the 3 -coordinate axes. They must all be non-zero values.

-

The values quatw, quati, quatj, and quatk set the orientation -of the atom as a quaternion (4-vector). Note that the shape -attributes specify the aspect ratios of an ellipsoidal particle, which -is oriented by default with its x-axis along the simulation box’s -x-axis, and similarly for y and z. If this body is rotated (via the -right-hand rule) by an angle theta around a unit vector (a,b,c), then -the quaternion that represents its new orientation is given by -(cos(theta/2), a*sin(theta/2), b*sin(theta/2), c*sin(theta/2)). These -4 components are quatw, quati, quatj, and quatk as specified above. -LAMMPS normalizes each atom’s quaternion in case (a,b,c) is not -specified as a unit vector.

-

The Ellipsoids section must appear after the Atoms section.

-
-

EndBondTorsion Coeffs section:

-
    -
  • one line per dihedral type
  • -
  • line syntax: ID coeffs
  • -
-
-ID = dihedral type (1-N)
-coeffs = list of coeffs (see class 2 section of dihedral_coeff)
-
-
-

Improper Coeffs section:

-
    -
  • one line per improper type
  • -
  • line syntax: ID coeffs
  • -
-
ID = improper type (1-N)
-coeffs = list of coeffs
-
-
-
    -
  • example:
  • -
-
2 20 0.0548311
-
-
-

The number and meaning of the coefficients are specific to the defined -improper style. See the improper_style and -improper_coeff commands for details. -Coefficients can also be set via the -improper_coeff command in the input script.

-
-

Impropers section:

-
    -
  • one line per improper
  • -
  • line syntax: ID type atom1 atom2 atom3 atom4
  • -
-
ID = number of improper (1-Nimpropers)
-type = improper type (1-Nimpropertype)
-atom1,atom2,atom3,atom4 = IDs of 1st,2nd,3rd,4th atoms in improper
-
-
-
    -
  • example:
  • -
-
12 3 17 29 13 100
-
-
-

The ordering of the 4 atoms determines the definition of the improper -angle used in the formula for each improper style. See the doc pages for individual styles -for details.

-

The Impropers section must appear after the Atoms section. All -values in this section must be integers (1, not 1.0).

-
-

Lines section:

-
    -
  • one line per line segment
  • -
  • line syntax: atom-ID x1 y1 x2 y2
  • -
-
atom-ID = ID of atom which is a line segment
-x1,y1 = 1st end point
-x2,y2 = 2nd end point
-
-
-
    -
  • example:
  • -
-
12 1.0 0.0 2.0 0.0
-
-
-

The Lines section must appear if atom_style line -is used and any atoms are listed in the Atoms section with a -lineflag = 1. The number of lines should be specified in the header -section via the “lines” keyword.

-

The 2 end points are the end points of the line segment. The ordering -of the 2 points should be such that using a right-hand rule to cross -the line segment with a unit vector in the +z direction, gives an -“outward” normal vector perpendicular to the line segment. -I.e. normal = (c2-c1) x (0,0,1). This orientation may be important -for defining some interactions.

-

The Lines section must appear after the Atoms section.

-
-

Masses section:

-
    -
  • one line per atom type
  • -
  • line syntax: ID mass
  • -
-
ID = atom type (1-N)
-mass = mass value
-
-
-
    -
  • example:
  • -
-
3 1.01
-
-
-

This defines the mass of each atom type. This can also be set via the -mass command in the input script. This section cannot be -used for atom styles that define a mass for individual atoms - -e.g. atom_style sphere.

-
-

MiddleBondTorsion Coeffs section:

-
    -
  • one line per dihedral type
  • -
  • line syntax: ID coeffs
  • -
-
-ID = dihedral type (1-N)
-coeffs = list of coeffs (see class 2 section of dihedral_coeff)
-
-
-

Pair Coeffs section:

-
    -
  • one line per atom type
  • -
  • line syntax: ID coeffs
  • -
-
ID = atom type (1-N)
-coeffs = list of coeffs
-
-
-
    -
  • example:
  • -
-
3 0.022 2.35197 0.022 2.35197
-
-
-

The number and meaning of the coefficients are specific to the defined -pair style. See the pair_style and -pair_coeff commands for details. Since pair -coefficients for types I != J are not specified, these will be -generated automatically by the pair style’s mixing rule. See the -individual pair_style doc pages and the pair_modify mix command for details. Pair coefficients can also -be set via the pair_coeff command in the input -script.

-
-

PairIJ Coeffs section:

-
    -
  • one line per pair of atom types for all I,J with I <= J
  • -
  • line syntax: ID1 ID2 coeffs
  • -
-
ID1 = atom type I = 1-N
-ID2 = atom type J = I-N, with I <= J
-coeffs = list of coeffs
-
-
-
    -
  • examples:
  • -
-
3 3 0.022 2.35197 0.022 2.35197
-3 5 0.022 2.35197 0.022 2.35197
-
-
-

This section must have N*(N+1)/2 lines where N = # of atom types. The -number and meaning of the coefficients are specific to the defined -pair style. See the pair_style and -pair_coeff commands for details. Since pair -coefficients for types I != J are all specified, these values will -turn off the default mixing rule defined by the pair style. See the -individual pair_style doc pages and the pair_modify mix command for details. Pair coefficients can also -be set via the pair_coeff command in the input -script.

-
-

Triangles section:

-
    -
  • one line per triangle
  • -
  • line syntax: atom-ID x1 y1 x2 y2
  • -
-
atom-ID = ID of atom which is a line segment
-x1,y1,z1 = 1st corner point
-x2,y2,z2 = 2nd corner point
-x3,y3,z3 = 3rd corner point
-
-
-
    -
  • example:
  • -
-
12 0.0 0.0 0.0 2.0 0.0 1.0 0.0 2.0 1.0
-
-
-

The Triangles section must appear if atom_style tri is used and any atoms are listed in the Atoms -section with a triangleflag = 1. The number of lines should be -specified in the header section via the “triangles” keyword.

-

The 3 corner points are the corner points of the triangle. The -ordering of the 3 points should be such that using a right-hand rule -to go from point1 to point2 to point3 gives an “outward” normal vector -to the face of the triangle. I.e. normal = (c2-c1) x (c3-c1). This -orientation may be important for defining some interactions.

-

The Triangles section must appear after the Atoms section.

-
-

Velocities section:

-
    -
  • one line per atom
  • -
  • line syntax: depends on atom style
  • -
- ---- - - - - - - - - - - - - - - - - - -
all styles except those listedatom-ID vx vy vz
electronatom-ID vx vy vz ervel
ellipsoidatom-ID vx vy vz lx ly lz
sphereatom-ID vx vy vz wx wy wz
hybridatom-ID vx vy vz sub-style1 sub-style2 ...
-

where the keywords have these meanings:

-

vx,vy,vz = translational velocity of atom -lx,ly,lz = angular momentum of aspherical atom -wx,wy,wz = angular velocity of spherical atom -ervel = electron radial velocity (0 for fixed-core):ul

-

The velocity lines can appear in any order. This section can only be -used after an Atoms section. This is because the Atoms section -must have assigned a unique atom ID to each atom so that velocities -can be assigned to them.

-

Vx, vy, vz, and ervel are in units of velocity. Lx, ly, -lz are in units of angular momentum (distance-velocity-mass). Wx, Wy, -Wz are in units of angular velocity (radians/time).

-

For atom_style hybrid, following the 4 initial values (ID,vx,vy,vz), -specific values for each sub-style must be listed. The order of the -sub-styles is the same as they were listed in the -atom_style command. The sub-style specific values -are those that are not the 5 standard ones (ID,vx,vy,vz). For -example, for the “sphere” sub-style, “wx”, “wy”, “wz” values would -appear. These are listed in the same order they appear as listed -above. Thus if

-
atom_style hybrid electron sphere
-
-
-

were used in the input script, each velocity line would have these -fields:

-
atom-ID vx vy vz ervel wx wy wz
-
-
-

Translational velocities can also be set by the -velocity command in the input script.

-
-
-
-

Restrictions

-

To read gzipped data files, you must compile LAMMPS with the --DLAMMPS_GZIP option - see the Making LAMMPS section of the documentation.

-
- -
-

Default

-

The default for all the extra keywords is 0.

-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/read_dump.html b/doc/read_dump.html deleted file mode 100644 index 570e0e0822..0000000000 --- a/doc/read_dump.html +++ /dev/null @@ -1,477 +0,0 @@ - - - - - - - - - - - read_dump command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

read_dump command

-
-

Syntax

-
read_dump file Nstep field1 field2 ... keyword values ...
-
-
-
    -
  • file = name of dump file to read
  • -
  • Nstep = snapshot timestep to read from file
  • -
  • one or more fields may be appended
  • -
-
-field = x or y or z or vx or vy or vz or q or ix or iy or iz
-  x,*y*,*z* = atom coordinates
-  vx,*vy*,*vz* = velocity components
-  q = charge
-  ix,*iy*,*iz* = image flags in each dimension
-
-
    -
  • zero or more keyword/value pairs may be appended
  • -
  • keyword = box or replace or purge or trim or add or label or scaled or wrapped or format
  • -
-
-box value = yes or no = replace simulation box with dump box
-replace value = yes or no = overwrite atoms with dump atoms
-purge value = yes or no = delete all atoms before adding dump atoms
-trim value = yes or no = trim atoms not in dump snapshot
-add value = yes or no = add new dump atoms to system
-label value = field column
-  field = one of the listed fields or id or type
-  column = label on corresponding column in dump file
-scaled value = yes or no = coords in dump file are scaled/unscaled
-wrapped value = yes or no = coords in dump file are wrapped/unwrapped
-format values = format of dump file, must be last keyword if used
-  native = native LAMMPS dump file
-  xyz = XYZ file
-  molfile style path = VMD molfile plugin interface
-    style = dcd or xyz or others supported by molfile plugins
-    path = optional path for location of molfile plugins
-
-
-
-

Examples

-
read_dump dump.file 5000 x y z
-read_dump dump.xyz 5 x y z box no format xyz
-read_dump dump.xyz 10 x y z box no format molfile xyz "../plugins"
-read_dump dump.dcd 0 x y z box yes format molfile dcd
-read_dump dump.file 1000 x y z vx vy vz box yes format molfile lammpstrj /usr/local/lib/vmd/plugins/LINUXAMD64/plugins/molfile
-read_dump dump.file 5000 x y vx vy trim yes
-read_dump ../run7/dump.file.gz 10000 x y z box yes
-read_dump dump.xyz 10 x y z box no format molfile xyz ../plugins
-read_dump dump.dcd 0 x y z format molfile dcd
-read_dump dump.file 1000 x y z vx vy vz format molfile lammpstrj /usr/local/lib/vmd/plugins/LINUXAMD64/plugins/molfile
-
-
-
-
-

Description

-

Read atom information from a dump file to overwrite the current atom -coordinates, and optionally the atom velocities and image flags and -the simluation box dimensions. This is useful for restarting a run -from a particular snapshot in a dump file. See the -read_restart and read_data -commands for alternative methods to do this. Also see the -rerun command for a means of reading multiple snapshots -from a dump file.

-

Note that a simulation box must already be defined before using the -read_dump command. This can be done by the -create_box, read_data, or -read_restart commands. The read_dump command can -reset the simulation box dimensions, as explained below.

-

Also note that reading per-atom information from a dump snapshot is -limited to the atom coordinates, velocities and image flags, as -explained below. Other atom properties, which may be necessary to run -a valid simulation, such as atom charge, or bond topology information -for a molecular system, are not read from (or even contained in) dump -files. Thus this auxiliary information should be defined in the usual -way, e.g. in a data file read in by a read_data -command, before using the read_dump command, or by the set -command, after the dump snapshot is read.

-
-

If the dump filename specified as file ends with ”.gz”, the dump -file is read in gzipped format. You cannot (yet) read a dump file -that was written in binary format with a ”.bin” suffix, or to multiple -files via the “%” option in the dump file name. See the -dump command for details.

-

The format of the dump file is selected through the format keyword. -If specified, it must be the last keyword used, since all remaining -arguments are passed on to the dump reader. The native format is -for native LAMMPS dump files, written with a dump atom or -dump custom command. The xyz format is for generic XYZ -formatted dump files. These formats take no additional values.

-

The molfile format supports reading data through using the VMD -molfile plugin interface. This dump reader format is only available, -if the USER-MOLFILE package has been installed when compiling -LAMMPS.

-

The molfile format takes one or two additional values. The style -value determines the file format to be used and can be any format that -the molfile plugins support, such as DCD or XYZ. Note that DCD dump -files can be written by LAMMPS via the dump dcd command. -The path value specifies a list of directories which LAMMPS will -search for the molfile plugins appropriate to the specified style. -The syntax of the path value is like other search paths: it can -contain multiple directories separated by a colon (or semi-colon on -windows). The path keyword is optional and defaults to ”.”, -i.e. the current directory.

-

Support for other dump format readers may be added in the future.

-
-

Global information is first read from the dump file, namely timestep -and box information.

-

The dump file is scanned for a snapshot with a time stamp that matches -the specified Nstep. This means the LAMMPS timestep the dump file -snapshot was written on for the native format. Note that the xyz -and molfile formats do not store the timestep. For these formats, -timesteps are numbered logically, in a sequential manner, starting -from 0. Thus to access the 10th snapshot in an xyz or mofile -formatted dump file, use Nstep = 9.

-

The dimensions of the simulation box for the selected snapshot are -also read; see the box keyword discussion below. For the native -format, an error is generated if the snapshot is for a triclinic box -and the current simulation box is orthogonal or vice versa. A warning -will be generated if the snapshot box boundary conditions (periodic, -shrink-wrapped, etc) do not match the current simulation boundary -conditions, but the boundary condition information in the snapshot is -otherwise ignored. See the “boundary” command for more details.

-

For the xyz format, no information about the box is available, so -you must set the box flag to no. See details below.

-

For the molfile format, reading simulation box information is -typically supported, but the location of the simulation box origin is -lost and no explicit information about periodicity or -orthogonal/triclinic box shape is available. The USER-MOLFILE package -makes a best effort to guess based on heuristics, but this may not -always work perfectly.

-
-

Per-atom information from the dump file snapshot is then read from the -dump file snapshot. This corresponds to the specified fields listed -in the read_dump command. It is an error to specify a z-dimension -field, namely z, vz, or iz, for a 2d simulation.

-

For dump files in native format, each column of per-atom data has a -text label listed in the file. A matching label for each field must -appear, e.g. the label “vy” for the field vy. For the x, y, z -fields any of the following labels are considered a match:

-
-x, xs, xu, xsu for field x
-y, ys, yu, ysu for field y
-z, zs, zu, zsu for field z
-
-

The meaning of xs (scaled), xu (unwrapped), and xsu (scaled and -unwrapped) is explained on the dump command doc page. -These labels are searched for in the list of column labels in the dump -file, in order, until a match is found.

-

The dump file must also contain atom IDs, with a column label of “id”.

-

If the add keyword is specified with a value of yes, as discussed -below, the dump file must contain atom types, with a column label of -“type”.

-

If a column label you want to read from the dump file is not a match -to a specified field, the label keyword can be used to specify the -specific column label from the dump file to associate with that field. -An example is if a time-averaged coordinate is written to the dump -file via the fix ave/atom command. The column -will then have a label corresponding to the fix-ID rather than “x” or -“xs”. The label keyword can also be used to specify new column -labels for fields id and type.

-

For dump files in xyz format, only the x, y, and z fields are -supported. The dump file does not store atom IDs, so these are -assigned consecutively to the atoms as they appear in the dump file, -starting from 1. Thus you should insure that order of atoms is -consistent from snapshot to snapshot in the the XYZ dump file. See -the dump_modify sort command if the XYZ dump file -was written by LAMMPS.

-

For dump files in molfile format, the x, y, z, vx, vy, and -vz fields can be specified. However, not all molfile formats store -velocities, or their respective plugins may not support reading of -velocities. The molfile dump files do not store atom IDs, so these -are assigned consecutively to the atoms as they appear in the dump -file, starting from 1. Thus you should insure that order of atoms are -consistent from snapshot to snapshot in the the molfile dump file. -See the dump_modify sort command if the dump file -was written by LAMMPS.

-
-

Information from the dump file snapshot is used to overwrite or -replace properties of the current system. There are various options -for how this is done, determined by the specified fields and optional -keywords.

-

The timestep of the snapshot becomes the current timestep for the -simulation. See the reset_timestep command if -you wish to change this after the dump snapshot is read.

-

If the box keyword is specified with a yes value, then the current -simulation box dimensions are replaced by the dump snapshot box -dimensions. If the box keyword is specified with a no value, the -current simulatoin box is unchanged.

-

If the purge keyword is specified with a yes value, then all -current atoms in the system are deleted before any of the operations -invoked by the replace, trim, or add keywords take place.

-

If the replace keyword is specified with a yes value, then atoms -with IDs that are in both the current system and the dump snapshot -have their properties overwritten by field values. If the replace -keyword is specified with a no value, atoms with IDs that are in -both the current system and the dump snapshot are not modified.

-

If the trim keyword is specified with a yes value, then atoms with -IDs that are in the current system but not in the dump snapshot are -deleted. These atoms are unaffected if the trim keyword is -specified with a no value.

-

If the add keyword is specified with a yes value, then atoms with -IDs that are in the dump snapshot, but not in the current system are -added to the system. These dump atoms are ignored if the add -keyword is specified with a no value.

-

Note that atoms added via the add keyword will have only the -attributes read from the dump file due to the field arguments. If -x or y or z is not specified as a field, a value of 0.0 is used -for added atoms. Added atoms must have an atom type, so this value -must appear in the dump file.

-

Any other attributes (e.g. charge or particle diameter for spherical -particles) will be set to default values, the same as if the -create_atoms command were used.

-

Note that atom IDs are not preserved for new dump snapshot atoms added -via the add keyword. The procedure for assigning new atom IDS to -added atoms is the same as is described for the -create_atoms command.

-
-

Atom coordinates read from the dump file are first converted into -unscaled coordinates, relative to the box dimensions of the snapshot. -These coordinates are then be assigned to an existing or new atom in -the current simulation. The coordinates will then be remapped to the -simulation box, whether it is the original box or the dump snapshot -box. If periodic boundary conditions apply, this means the atom will -be remapped back into the simulation box if necessary. If shrink-wrap -boundary conditions apply, the new coordinates may change the -simulation box dimensions. If fixed boundary conditions apply, the -atom will be lost if it is outside the simulation box.

-

For native format dump files, the 3 xyz image flags for an atom in -the dump file are set to the corresponding values appearing in the -dump file if the ix, iy, iz fields are specified. If not -specified, the image flags for replaced atoms are not changed and -image flags for new atoms are set to default values. If coordinates -read from the dump file are in unwrapped format (e.g. xu) then the -image flags for read-in atoms are also set to default values. The -remapping procedure described in the previous paragraph will then -change images flags for all atoms (old and new) if periodic boundary -conditions are applied to remap an atom back into the simulation box.

-
-

Note

-

If you get a warning about inconsistent image flags after -reading in a dump snapshot, it means one or more pairs of bonded atoms -now have inconsistent image flags. As discussed in Section errors this may or may not cause problems for -subsequent simulations, One way this can happen is if you read image -flag fields from the dump file but do not also use the dump file box -parameters.

-
-

LAMMPS knows how to compute unscaled and remapped coordinates for the -snapshot column labels discussed above, e.g. x, xs, xu, xsu. -If another column label is assigned to the x or y or z field via -the label keyword, e.g. for coordinates output by the fix ave/atom command, then LAMMPS needs to know whether -the coordinate information in the dump file is scaled and/or wrapped. -This can be set via the scaled and wrapped keywords. Note that -the value of the scaled and wrapped keywords is ignored for fields -x or y or z if the label keyword is not used to assign a -column label to that field.

-

The scaled/unscaled and wrapped/unwrapped setting must be identical -for any of the x, y, z fields that are specified. Thus you -cannot read xs and yu from the dump file. Also, if the dump file -coordinates are scaled and the simulation box is triclinic, then all 3 -of the x, y, z fields must be specified, since they are all -needed to generate absolute, unscaled coordinates.

-
-
-
-

Restrictions

-

To read gzipped dump files, you must compile LAMMPS with the --DLAMMPS_GZIP option - see the Making LAMMPS section of the documentation.

-

The molfile dump file formats are part of the USER-MOLFILE package. -They are only enabled if LAMMPS was built with that packages. See the -Making LAMMPS section for more info.

-
- -
-

Default

-

The option defaults are box = yes, replace = yes, purge = no, trim = -no, add = no, scaled = no, wrapped = yes, and format = native.

-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/read_restart.html b/doc/read_restart.html deleted file mode 100644 index 7218128d00..0000000000 --- a/doc/read_restart.html +++ /dev/null @@ -1,407 +0,0 @@ - - - - - - - - - - - read_restart command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

read_restart command

-
-

Syntax

-
read_restart file flag
-
-
-
    -
  • file = name of binary restart file to read in
  • -
  • flag = remap (optional)
  • -
-
-
-

Examples

-
read_restart save.10000
-read_restart save.10000 remap
-read_restart restart.*
-read_restart restart.*.mpiio
-read_restart poly.*.% remap
-
-
-
-
-

Description

-

Read in a previously saved system configuration from a restart file. -This allows continuation of a previous run. Details about what -information is stored (and not stored) in a restart file is given -below. Basically this operation will re-create the simulation box -with all its atoms and their attributes as well as some related global -settings, at the point in time it was written to the restart file by a -previous simluation. The simulation box will be partitioned into a -regular 3d grid of rectangular bricks, one per processor, based on the -number of processors in the current simulation and the settings of the -processors command. The partitioning can later be -changed by the balance or fix balance commands.

-
-

Note

-

Normally, restart files are written by the -restart or write_restart commands -so that all atoms in the restart file are inside the simulation box. -If this is not the case, the read_restart command will print an error -that atoms were “lost” when the file is read. This error should be -reported to the LAMMPS developers so the invalid writing of the -restart file can be fixed. If you still wish to use the restart file, -the optional remap flag can be appended to the read_restart command. -This should avoid the error, by explicitly remapping each atom back -into the simulation box, updating image flags for the atom -appropriately.

-
-

Restart files are saved in binary format to enable exact restarts, -meaning that the trajectories of a restarted run will precisely match -those produced by the original run had it continued on.

-

Several things can prevent exact restarts due to round-off effects, in -which case the trajectories in the 2 runs will slowly diverge. These -include running on a different number of processors or changing -certain settings such as those set by the newton or -processors commands. LAMMPS will issue a warning in -these cases.

-

Certain fixes will not restart exactly, though they should provide -statistically similar results. These include fix shake and fix langevin.

-

Certain pair styles will not restart exactly, though they should -provide statistically similar results. This is because the forces -they compute depend on atom velocities, which are used at half-step -values every timestep when forces are computed. When a run restarts, -forces are initially evaluated with a full-step velocity, which is -different than if the run had continued. These pair styles include -granular pair styles, pair dpd, and -pair lubricate.

-

If a restarted run is immediately different than the run which -produced the restart file, it could be a LAMMPS bug, so consider -reporting it if you think the behavior is -wrong.

-

Because restart files are binary, they may not be portable to other -machines. In this case, you can use the -restart command-line switch to convert a restart file to a data -file.

-

Similar to how restart files are written (see the -write_restart and restart -commands), the restart filename can contain two wild-card characters. -If a “*” appears in the filename, the directory is searched for all -filenames that match the pattern where “*” is replaced with a timestep -value. The file with the largest timestep value is read in. Thus, -this effectively means, read the latest restart file. It’s useful if -you want your script to continue a run from where it left off. See -the run command and its “upto” option for how to specify -the run command so it doesn’t need to be changed either.

-

If a “%” character appears in the restart filename, LAMMPS expects a -set of multiple files to exist. The restart and -write_restart commands explain how such sets are -created. Read_restart will first read a filename where “%” is -replaced by “base”. This file tells LAMMPS how many processors -created the set and how many files are in it. Read_restart then reads -the additional files. For example, if the restart file was specified -as save.% when it was written, then read_restart reads the files -save.base, save.0, save.1, ... save.P-1, where P is the number of -processors that created the restart file.

-

Note that P could be the total number of processors in the previous -simulation, or some subset of those processors, if the fileper or -nfile options were used when the restart file was written; see the -restart and write_restart commands -for details. The processors in the current LAMMPS simulation share -the work of reading these files; each reads a roughly equal subset of -the files. The number of processors which created the set can be -different the number of processors in the current LAMMPS simulation. -This can be a fast mode of input on parallel machines that support -parallel I/O.

-

A restart file can also be read in parallel as one large binary file -via the MPI-IO library, assuming it was also written with MPI-IO. -MPI-IO is part of the MPI standard for versions 2.0 and above. Using -MPI-IO requires two steps. First, build LAMMPS with its MPIIO package -installed, e.g.

-
make yes-mpiio    # installs the MPIIO package
-make g++          # build LAMMPS for your platform
-
-
-

Second, use a restart filename which contains ”.mpiio”. Note that it -does not have to end in ”.mpiio”, just contain those characters. -Unlike MPI-IO dump files, a particular restart file must be both -written and read using MPI-IO.

-
-

Here is the list of information included in a restart file, which -means these quantities do not need to be re-specified in the input -script that reads the restart file, though you can redefine many of -these settings after the restart file is read.

- -

Here is a list of information not stored in a restart file, which -means you must re-issue these commands in your input script, after -reading the restart file.

- -

Note that some force field styles (pair, bond, angle, etc) do not -store their coefficient info in restart files. Typically these are -many-body or tabulated potentials which read their parameters from -separate files. In these cases you will need to re-specify the “pair -pair_coeff, bond_coeff, etc -commands in your restart input script. The doc pages for individual -force field styles mention if this is the case. This is also true of -pair_style hybrid (bond hybrid, angle hybrid, etc) -commands; they do not store coefficient info.

-

As indicated in the above list, the fixes used for a -simulation are not stored in the restart file. This means the new -input script should specify all fixes it will use. However, note that -some fixes store an internal “state” which is written to the restart -file. This allows the fix to continue on with its calculations in a -restarted simulation. To re-enable such a fix, the fix command in the -new input script must use the same fix-ID and group-ID as was used in -the input script that wrote the restart file. If a match is found, -LAMMPS prints a message indicating that the fix is being re-enabled. -If no match is found before the first run or minimization is performed -by the new script, the “state” information for the saved fix is -discarded. See the doc pages for individual fixes for info on which -ones can be restarted in this manner.

-

Likewise, the computes used for a simulation are not stored -in the restart file. This means the new input script should specify -all computes it will use. However, some computes create a fix -internally to store “state” information that persists from timestep to -timestep. An example is the compute msd command -which uses a fix to store a reference coordinate for each atom, so -that a displacement can be calculated at any later time. If the -compute command in the new input script uses the same compute-ID and -group-ID as was used in the input script that wrote the restart file, -then it will create the same fix in the restarted run. This means the -re-created fix will be re-enabled with the stored state information as -described in the previous paragraph, so that the compute can continue -its calculations in a consistent manner.

-

Some pair styles, like the granular pair styles, also -use a fix to store “state” information that persists from timestep to -timestep. In the case of granular potentials, it is contact -information between pairs of touching particles. This info will also -be re-enabled in the restart script, assuming you re-use the same -granular pair style.

-

LAMMPS allows bond interactions (angle, etc) to be turned off or -deleted in various ways, which can affect how their info is stored in -a restart file.

-

If bonds (angles, etc) have been turned off by the fix shake or delete_bonds command, -their info will be written to a restart file as if they are turned on. -This means they will need to be turned off again in a new run after -the restart file is read.

-

Bonds that are broken (e.g. by a bond-breaking potential) are written -to the restart file as broken bonds with a type of 0. Thus these -bonds will still be broken when the restart file is read.

-

Bonds that have been broken by the fix bond/break command have disappeared from the -system. No information about these bonds is written to the restart -file.

-
-
-
-

Restrictions

-

To write and read restart files in parallel with MPI-IO, the MPIIO -package must be installed.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/region.html b/doc/region.html deleted file mode 100644 index 9533e77fb6..0000000000 --- a/doc/region.html +++ /dev/null @@ -1,505 +0,0 @@ - - - - - - - - - - - region command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

region command

-
-

Syntax

-
region ID style args keyword arg ...
-
-
-
    -
  • ID = user-assigned name for the region
  • -
  • style = delete or block or cone or cylinder or plane or prism or sphere or union or intersect
  • -
-
-delete = no args
-block args = xlo xhi ylo yhi zlo zhi
-  xlo,xhi,ylo,yhi,zlo,zhi = bounds of block in all dimensions (distance units)
-cone args = dim c1 c2 radlo radhi lo hi
-  dim = x or y or z = axis of cone
-  c1,c2 = coords of cone axis in other 2 dimensions (distance units)
-  radlo,radhi = cone radii at lo and hi end (distance units)
-  lo,hi = bounds of cone in dim (distance units)
-cylinder args = dim c1 c2 radius lo hi
-  dim = x or y or z = axis of cylinder
-  c1,c2 = coords of cylinder axis in other 2 dimensions (distance units)
-  radius = cylinder radius (distance units)
-    radius can be a variable (see below)
-  lo,hi = bounds of cylinder in dim (distance units)
-plane args = px py pz nx ny nz
-  px,py,pz = point on the plane (distance units)
-  nx,ny,nz = direction normal to plane (distance units)
-prism args = xlo xhi ylo yhi zlo zhi xy xz yz
-  xlo,xhi,ylo,yhi,zlo,zhi = bounds of untilted prism (distance units)
-  xy = distance to tilt y in x direction (distance units)
-  xz = distance to tilt z in x direction (distance units)
-  yz = distance to tilt z in y direction (distance units)
-sphere args = x y z radius
-  x,y,z = center of sphere (distance units)
-  radius = radius of sphere (distance units)
-    radius can be a variable (see below)
-union args = N reg-ID1 reg-ID2 ...
-  N = # of regions to follow, must be 2 or greater
-  reg-ID1,reg-ID2, ... = IDs of regions to join together
-intersect args = N reg-ID1 reg-ID2 ...
-  N = # of regions to follow, must be 2 or greater
-  reg-ID1,reg-ID2, ... = IDs of regions to intersect
-
-
    -
  • zero or more keyword/arg pairs may be appended
  • -
  • keyword = side or units or move or rotate
  • -
-
-side value = in or out
-  in = the region is inside the specified geometry
-  out = the region is outside the specified geometry
-units value = lattice or box
-  lattice = the geometry is defined in lattice units
-  box = the geometry is defined in simulation box units
-move args = v_x v_y v_z
-  v_x,v_y,v_z = equal-style variables for x,y,z displacement of region over time
-rotate args = v_theta Px Py Pz Rx Ry Rz
-  v_theta = equal-style variable for rotaton of region over time (in radians)
-  Px,Py,Pz = origin for axis of rotation (distance units)
-  Rx,Ry,Rz = axis of rotation vector
-
-
    -
  • accelerated styles (with same args) = block/kk
  • -
-
-
-

Examples

-
region 1 block -3.0 5.0 INF 10.0 INF INF
-region 2 sphere 0.0 0.0 0.0 5 side out
-region void cylinder y 2 3 5 -5.0 EDGE units box
-region 1 prism 0 10 0 10 0 10 2 0 0
-region outside union 4 side1 side2 side3 side4
-region 2 sphere 0.0 0.0 0.0 5 side out move v_left v_up NULL
-
-
-
-
-

Description

-

This command defines a geometric region of space. Various other -commands use regions. For example, the region can be filled with -atoms via the create_atoms command. Or a bounding -box around the region, can be used to define the simulation box via -the create_box command. Or the atoms in the region -can be identified as a group via the group command, or -deleted via the delete_atoms command. Or the -surface of the region can be used as a boundary wall via the fix wall/region command.

-

Commands which use regions typically test whether an atom’s position -is contained in the region or not. For this purpose, coordinates -exactly on the region boundary are considered to be interior to the -region. This means, for example, for a spherical region, an atom on -the sphere surface would be part of the region if the sphere were -defined with the side in keyword, but would not be part of the -region if it were defined using the side out keyword. See more -details on the side keyword below.

-

Normally, regions in LAMMPS are “static”, meaning their geometric -extent does not change with time. If the move or rotate keyword -is used, as described below, the region becomes “dynamic”, meaning -it’s location or orientation changes with time. This may be useful, -for example, when thermostatting a region, via the compute temp/region -command, or when the fix wall/region command uses a region surface as -a bounding wall on particle motion, i.e. a rotating container.

-

The delete style removes the named region. Since there is little -overhead to defining extra regions, there is normally no need to do -this, unless you are defining and discarding large numbers of regions -in your input script.

-

The lo/hi values for block or cone or cylinder or prism styles -can be specified as EDGE or INF. EDGE means they extend all the way -to the global simulation box boundary. Note that this is the current -box boundary; if the box changes size during a simulation, the region -does not. INF means a large negative or positive number (1.0e20), so -it should encompass the simulation box even if it changes size. If a -region is defined before the simulation box has been created (via -create_box or read_data or -read_restart commands), then an EDGE or INF -parameter cannot be used. For a prism region, a non-zero tilt -factor in any pair of dimensions cannot be used if both the lo/hi -values in either of those dimensions are INF. E.g. if the xy tilt is -non-zero, then xlo and xhi cannot both be INF, nor can ylo and yhi.

-
-

Note

-

Regions in LAMMPS do not get wrapped across periodic boundaries, -as specified by the boundary command. For example, a -spherical region that is defined so that it overlaps a periodic -boundary is not treated as 2 half-spheres, one on either side of the -simulation box.

-
-
-

Note

-

Regions in LAMMPS are always 3d geometric objects, regardless of -whether the dimension of a simulation is 2d or 3d. -Thus when using regions in a 2d simulation, you should be careful to -define the region so that its intersection with the 2d x-y plane of -the simulation has the 2d geometric extent you want.

-
-

For style cone, an axis-aligned cone is defined which is like a -cylinder except that two different radii (one at each end) can be -defined. Either of the radii (but not both) can be 0.0.

-

For style cone and cylinder, the c1,c2 params are coordinates in -the 2 other dimensions besides the cylinder axis dimension. For dim = -x, c1/c2 = y/z; for dim = y, c1/c2 = x/z; for dim = z, c1/c2 = x/y. -Thus the third example above specifies a cylinder with its axis in the -y-direction located at x = 2.0 and z = 3.0, with a radius of 5.0, and -extending in the y-direction from -5.0 to the upper box boundary.

-

For style plane, a plane is defined which contain the point -(px,py,pz) and has a normal vector (nx,ny,nz). The normal vector does -not have to be of unit length. The “inside” of the plane is the -half-space in the direction of the normal vector; see the discussion -of the side option below.

-

For style prism, a parallelepiped is defined (it’s too hard to spell -parallelepiped in an input script!). The parallelepiped has its -“origin” at (xlo,ylo,zlo) and is defined by 3 edge vectors starting -from the origin given by A = (xhi-xlo,0,0); B = (xy,yhi-ylo,0); C = -(xz,yz,zhi-zlo). Xy,xz,yz can be 0.0 or positive or negative values -and are called “tilt factors” because they are the amount of -displacement applied to faces of an originally orthogonal box to -transform it into the parallelepiped.

-

A prism region that will be used with the create_box -command to define a triclinic simulation box must have tilt factors -(xy,xz,yz) that do not skew the box more than half the distance of -corresponding the parallel box length. For example, if xlo = 2 and -xhi = 12, then the x box length is 10 and the xy tilt factor must be -between -5 and 5. Similarly, both xz and yz must be between --(xhi-xlo)/2 and +(yhi-ylo)/2. Note that this is not a limitation, -since if the maximum tilt factor is 5 (as in this example), then -configurations with tilt = ..., -15, -5, 5, 15, 25, ... are all -geometrically equivalent.

-

The radius value for style sphere and cylinder can be specified -as an equal-style variable. If the value is a -variable, it should be specified as v_name, where name is the variable -name. In this case, the variable will be evaluated each timestep, and -its value used to determine the radius of the region.

-

Equal-style variables can specify formulas with various mathematical -functions, and include thermo_style command -keywords for the simulation box parameters and timestep and elapsed -time. Thus it is easy to specify a time-dependent radius.

-

See Section_howto 12 of the doc pages -for a geometric description of triclinic boxes, as defined by LAMMPS, -and how to transform these parameters to and from other commonly used -triclinic representations.

-

The union style creates a region consisting of the volume of all the -listed regions combined. The intersect style creates a region -consisting of the volume that is common to all the listed regions.

-
-

Note

-

The union and intersect regions operate by invoking methods -from their list of sub-regions. Thus you cannot delete the -sub-regions after defining the union or intersection region.

-
-
-

The side keyword determines whether the region is considered to be -inside or outside of the specified geometry. Using this keyword in -conjunction with union and intersect regions, complex geometries -can be built up. For example, if the interior of two spheres were -each defined as regions, and a union style with side = out was -constructed listing the region-IDs of the 2 spheres, the resulting -region would be all the volume in the simulation box that was outside -both of the spheres.

-

The units keyword determines the meaning of the distance units used -to define the region for any argument above listed as having distance -units. It also affects the scaling of the velocity vector specfied -with the vel keyword, the amplitude vector specified with the -wiggle keyword, and the rotation point specified with the rotate -keyword, since they each involve a distance metric.

-

A box value selects standard distance units as defined by the -units command, e.g. Angstroms for units = real or metal. -A lattice value means the distance units are in lattice spacings. -The lattice command must have been previously used to -define the lattice spacings which are used as follows:

-
    -
  • For style block, the lattice spacing in dimension x is applied to -xlo and xhi, similarly the spacings in dimensions y,z are applied to -ylo/yhi and zlo/zhi.
  • -
  • For style cone, the lattice spacing in argument dim is applied to -lo and hi. The spacings in the two radial dimensions are applied to -c1 and c2. The two cone radii are scaled by the lattice -spacing in the dimension corresponding to c1.
  • -
  • For style cylinder, the lattice spacing in argument dim is applied -to lo and hi. The spacings in the two radial dimensions are applied -to c1 and c2. The cylinder radius is scaled by the lattice -spacing in the dimension corresponding to c1.
  • -
  • For style plane, the lattice spacing in dimension x is applied to -px and nx, similarly the spacings in dimensions y,z are applied to -py/ny and pz/nz.
  • -
  • For style prism, the lattice spacing in dimension x is applied to -xlo and xhi, similarly for ylo/yhi and zlo/zhi. The lattice spacing -in dimension x is applied to xy and xz, and the spacing in dimension y -to yz.
  • -
  • For style sphere, the lattice spacing in dimensions x,y,z are -applied to the sphere center x,y,z. The spacing in dimension x is -applied to the sphere radius.
  • -
-
-

If the move or rotate keywords are used, the region is “dynamic”, -meaning its location or orientation changes with time. These keywords -cannot be used with a union or intersect style region. Instead, -the keywords should be used to make the individual sub-regions of the -union or intersect region dynamic. Normally, each sub-region -should be “dynamic” in the same manner (e.g. rotate around the same -point), though this is not a requirement.

-

The move keyword allows one or more equal-style variables to be used to specify the x,y,z displacement -of the region, typically as a function of time. A variable is -specified as v_name, where name is the variable name. Any of the -three variables can be specified as NULL, in which case no -displacement is calculated in that dimension.

-

Note that equal-style variables can specify formulas with various -mathematical functions, and include thermo_style -command keywords for the simulation box parameters and timestep and -elapsed time. Thus it is easy to specify a region displacement that -change as a function of time or spans consecutive runs in a continuous -fashion. For the latter, see the start and stop keywords of the -run command and the elaplong keyword of thermo_style custom for details.

-

For example, these commands would displace a region from its initial -position, in the positive x direction, effectively at a constant -velocity:

-
variable dx equal ramp(0,10)
-region 2 sphere 10.0 10.0 0.0 5 move v_dx NULL NULL
-
-
-

Note that the initial displacemet is 0.0, though that is not required.

-

Either of these varaibles would “wiggle” the region back and forth in -the y direction:

-
variable dy equal swiggle(0,5,100)
-variable dysame equal 5*sin(2*PI*elaplong*dt/100)
-region 2 sphere 10.0 10.0 0.0 5 move NULL v_dy NULL
-
-
-

The rotate keyword rotates the region around a rotation axis R = -(Rx,Ry,Rz) that goes thru a point P = (Px,Py,Pz). The rotation -angle is calculated, presumably as a function of time, by a variable -specified as v_theta, where theta is the variable name. The variable -should generate its result in radians. The direction of rotation for -the region around the rotation axis is consistent with the right-hand -rule: if your right-hand thumb points along R, then your fingers -wrap around the axis in the direction of rotation.

-

The move and rotate keywords can be used together. In this case, -the displacement specified by the move keyword is applied to the P -point of the rotate keyword.

-
-

Styles with a kk suffix are functionally the same as the -corresponding style without the suffix. They have been optimized to -run faster, depending on your available hardware, as discussed in -Section_accelerate of the manual. The -accelerated styles take the same arguments and should produce the same -results, except for round-off and precision issues.

-

The code using the region (such as a fix or compute) must also be supported -by Kokkos or no acceleration will occur. Currently, only block style -regions are supported by Kokkos.

-

These accelerated styles are part of the Kokkos package. They are -only enabled if LAMMPS was built with that package. See the Making LAMMPS section for more info.

-

You can specify the accelerated styles explicitly in your input script -by including their suffix, or you can use the -suffix command-line switch when you invoke LAMMPS, or you can -use the suffix command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-
-
-

Restrictions

-

A prism cannot be of 0.0 thickness in any dimension; use a small z -thickness for 2d simulations. For 2d simulations, the xz and yz -parameters must be 0.0.

-
- -
-

Default

-

The option defaults are side = in, units = lattice, and no move or -rotation.

-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/replicate.html b/doc/replicate.html deleted file mode 100644 index 0ef551d21b..0000000000 --- a/doc/replicate.html +++ /dev/null @@ -1,277 +0,0 @@ - - - - - - - - - - - replicate command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

replicate command

-
-

Syntax

-
replicate nx ny nz
-
-
-
    -
  • nx,ny,nz = replication factors in each dimension
  • -
-
-
-

Examples

-
replicate 2 3 2
-
-
-
-
-

Description

-

Replicate the current simulation one or more times in each dimension. -For example, replication factors of 2,2,2 will create a simulation -with 8x as many atoms by doubling the simulation domain in each -dimension. A replication factor of 1 in a dimension leaves the -simulation domain unchanged. When the new simulation box is created -it is also partitioned into a regular 3d grid of rectangular bricks, -one per processor, based on the number of processors being used and -the settings of the processors command. The -partitioning can later be changed by the balance or -fix balance commands.

-

All properties of the atoms are replicated, including their -velocities, which may or may not be desirable. New atom IDs are -assigned to new atoms, as are molecule IDs. Bonds and other topology -interactions are created between pairs of new atoms as well as between -old and new atoms. This is done by using the image flag for each atom -to “unwrap” it out of the periodic box before replicating it.

-

This means that any molecular bond you specify in the original data -file that crosses a periodic boundary should be between two atoms with -image flags that differ by 1. This will allow the bond to be -unwrapped appropriately.

-
-
-

Restrictions

-

A 2d simulation cannot be replicated in the z dimension.

-

If a simulation is non-periodic in a dimension, care should be used -when replicating it in that dimension, as it may put atoms nearly on -top of each other.

-
-

Note

-

You cannot use the replicate command on a system which has a -molecule that spans the box and is bonded to itself across a periodic -boundary, so that the molecule is efffectively a loop. A simple -example would be a linear polymer chain that spans the simulation box -and bonds back to itself across the periodic boundary. More realistic -examples would be a CNT (meant to be an infinitely long CNT) or a -graphene sheet or a bulk periodic crystal where there are explicit -bonds specified between near neighbors. (Note that this only applies -to systems that have permanent bonds as specified in the data file. A -CNT that is just atoms modeled with the AIREBO potential has no such permanent bonds, so it can be -replicated.) The reason replication does not work with those systems -is that the image flag settings described above cannot be made -consistent. I.e. it is not possible to define images flags so that -when every pair of bonded atoms is unwrapped (using the image flags), -they will be close to each other. The only way the replicate command -could work in this scenario is for it to break a bond, insert more -atoms, and re-connect the loop for the larger simulation box. But it -is not clever enough to do this. So you will have to construct a -larger version of your molecule as a pre-processing step and input a -new data file to LAMMPS.

-
-

If the current simulation was read in from a restart file (before a -run is performed), there can have been no fix information stored in -the file for individual atoms. Similarly, no fixes can be defined at -the time the replicate command is used that require vectors of atom -information to be stored. This is because the replicate command does -not know how to replicate that information for new atoms it creates.

-

Replicating a system that has rigid bodies (defined via the fix rigid command), either currently defined or that -created the restart file which was read in before replicating, can -cause problems if there is a bond between a pair of rigid bodies that -straddle a periodic boundary. This is because the periodic image -information for particles in the rigid bodies are set differently than -for a non-rigid system and can result in a new bond being created that -spans the periodic box. Thus you cannot use the replicate command in -this scenario.

-

Related commands: none

-

Default: none

-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/rerun.html b/doc/rerun.html deleted file mode 100644 index 0373af5225..0000000000 --- a/doc/rerun.html +++ /dev/null @@ -1,367 +0,0 @@ - - - - - - - - - - - rerun command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

rerun command

-
-

Syntax

-
rerun file1 file2 ... keyword args ...
-
-
-
    -
  • file1,file2,... = dump file(s) to read
  • -
  • one or more keywords may be appended, keyword dump must appear and be last
  • -
-
-keyword = first or last or every or skip or start or stop or dump
- first args = Nfirts
-   Nfirst = dump timestep to start on
- last args = Nlast
-   Nlast = dumptimestep to stop on
- every args = Nevery
-   Nevery = read snapshots matching every this many timesteps
- skip args = Nskip
-   Nskip = read one out of every Nskip snapshots
- start args = Nstart
-   Nstart = timestep on which pseudo run will start
- stop args = Nstop
-   Nstop = timestep to which pseudo run will end
- dump args = same as read_dump command starting with its field arguments
-
-
-
-

Examples

-
rerun dump.file dump x y z vx vy vz
-rerun dump1.txt dump2.txt first 10000 every 1000 dump x y z
-rerun dump.vels dump x y z vx vy vz box yes format molfile lammpstrj
-rerun dump.dcd dump x y z box no format molfile dcd
-rerun ../run7/dump.file.gz skip 2 dump x y z box yes
-
-
-
-
-

Description

-

Perform a psuedo simulation run where atom information is read one -snapshot at a time from a dump file(s), and energies and forces are -computed on the shapshot to produce thermodynamic or other output.

-

This can be useful in the following kinds of scenarios, after an -initial simulation produced the dump file:

-
    -
  • Compute the energy and forces of snaphots using a different potential.
  • -
  • Calculate one or more diagnostic quantities on the snapshots that -weren’t computed in the initial run. These can also be computed with -settings not used in the initial run, e.g. computing an RDF via the -compute rdf command with a longer cutoff than was -used initially.
  • -
  • Calculate the portion of per-atom forces resulting from a subset of -the potential. E.g. compute only Coulombic forces. This can be done -by only defining only a Coulombic pair style in the rerun script. -Doing this in the original script would result in different (bad) -dynamics.
  • -
-

Conceptually, using the rerun command is like running an input script -that has a loop in it (see the next and jump -commands). Each iteration of the loop reads one snapshot from the -dump file via the read_dump command, sets the -timestep to the appropriate value, and then invokes a run -command for zero timesteps to simply compute energy and forces, and -any other thermodynamic output or diagnostic info -you have defined. This computation also invokes any fixes you have -defined that apply constraints to the system, such as fix shake or fix indent.

-

Note that a simulation box must already be defined before using the -rerun command. This can be done by the create_box, -read_data, or read_restart -commands.

-

Also note that reading per-atom information from dump snapshots is -limited to the atom coordinates, velocities and image flags as -explained in the read_dump command. Other atom -properties, which may be necessary to compute energies and forces, -such as atom charge, or bond topology information for a molecular -system, are not read from (or even contained in) dump files. Thus -this auxiliary information should be defined in the usual way, e.g. in -a data file read in by a read_data command, before -using the rerun command.

-
-

If more than one dump file is specified, the dump files are read one -after the other. It is assumed that snapshot timesteps will be in -ascending order. If a snapshot is encountered that is not in -ascending order, it will cause the rerun command to complete.

-

The first, last, every, skip keywords determine which -snapshots are read from the dump file(s). Snapshots are skipped until -they have a timestamp >= Nfirst. When a snapshot with a timestamp > -Nlast is encountered, the rerun command finishes. Note below that -the defaults for first and last are to read all snapshots. If the -every keyword is set to a value > 0, then only snapshots with -timestamps that are a multiple of Nevery are read (the first -snapshot is always read). If Nevery = 0, then this criterion is -ignored, i.e. every snapshot is read that meets the other criteria. -If the skip keyword is used, then after the first snapshot is read, -every Nth snapshot is read, where N = Nskip. E.g. if Nskip = 3, -then only 1 out of every 3 snapshots is read, assuming the snapshot -timestamp is also consistent with the other criteria.

-

The start and stop keywords do not affect which snapshots are read -from the dump file(s). Rather, they have the same meaning that they -do for the run command. They only need to be defined if -(a) you are using a fix command that changes some value -over time, and (b) you want the reference point for elapsed time (from -start to stop) to be different than the first and last settings. -See the doc page for individual fixes to see which ones can be used -with the start/stop keywords. Note that if you define neither of -the start/stop or first/last keywords, then LAMMPS treats the -pseudo run as going from 0 to a huge value (effectively infinity). -This means that any quantity that a fix scales as a fraction of -elapsed time in the run, will essentially remain at its intiial value. -Also note that an error will occur if you read a snapshot from the -dump file with a timestep value larger than the stop setting you -have specified.

-

The dump keyword is required and must be the last keyword specified. -Its arguments are passed internally to the read_dump -command. The first argument following the dump keyword should be -the field1 argument of the read_dump command. See -the read_dump doc page for details on the various -options it allows for extracting information from the dump file -snapshots, and for using that information to alter the LAMMPS -simulation.

-
-

In general, a LAMMPS input script that uses a rerun command can -include and perform all the usual operations of an input script that -uses the run command. There are a few exceptions and -points to consider, as discussed here.

-

Fixes that perform time integration, such as fix nve or -fix npt are not invoked, since no time integration is -performed. Fixes that perturb or constrain the forces on atoms will -be invoked, just as they would during a normal run. Examples are fix indent and fix langevin. So you -should think carefully as to whether that makes sense for the manner -in which you are reprocessing the dump snapshots.

-

If you only want the rerun script to perform analyses that do not -involve pair interactions, such as use compute msd to calculated -displacements over time, you do not need to define a pair style, which may also mean neighbor lists will not -need to be calculated which saves time. The comm_modify cutoff command can also be used to insure ghost -atoms are acquired from far enough away for operations like bond and -angle evaluations, if no pair style is being used.

-

Every time a snapshot is read, the timestep for the simulation is -reset, as if the reset_timestep command were -used. This command has some restrictions as to what fixes can be -defined. See its doc page for details. For example, the fix deposit and fix dt/reset fixes -are in this category. They also make no sense to use with a rerun -command.

-

If time-averaging fixes like fix ave/time are -used, they are invoked on timesteps that are a function of their -Nevery, Nrepeat, and Nfreq settings. As an example, see the -fix ave/time doc page for details. You must -insure those settings are consistent with the snapshot timestamps that -are read from the dump file(s). If an averaging fix is not invoked on -a timestep it expects to be, LAMMPS will flag an error.

-

The various forms of LAMMPS output, as defined by the -thermo_style, thermo, -dump, and restart commands occur on -specific timesteps. If successvive dump snapshots skip those -timesteps, then no output will be produced. E.g. if you request -thermodynamic output every 100 steps, but the dump file snapshots are -every 1000 steps, then you will only see thermodynamic output every -1000 steps.

-
-
-
-

Restrictions

-

To read gzipped dump files, you must compile LAMMPS with the --DLAMMPS_GZIP option - see the Making LAMMPS section of the documentation.

-
- -
-

Default

-

The option defaults are first = 0, last = a huge value (effectively -infinity), start = same as first, stop = same as last, every = 0, skip -= 1;

-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/reset_timestep.html b/doc/reset_timestep.html deleted file mode 100644 index 98c9873654..0000000000 --- a/doc/reset_timestep.html +++ /dev/null @@ -1,247 +0,0 @@ - - - - - - - - - - - reset_timestep command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

reset_timestep command

-
-

Syntax

-
reset_timestep N
-
-
-
    -
  • N = timestep number
  • -
-
-
-

Examples

-
reset_timestep 0
-reset_timestep 4000000
-
-
-
-
-

Description

-

Set the timestep counter to the specified value. This command -normally comes after the timestep has been set by reading a restart -file via the read_restart command, or a previous -simulation advanced the timestep.

-

The read_data and create_box -commands set the timestep to 0; the read_restart -command sets the timestep to the value it had when the restart file -was written.

-
-
-

Restrictions

-
-
none
-

This command cannot be used when any fixes are defined that keep track -of elapsed time to perform certain kinds of time-dependent operations. -Examples are the fix deposit and fix dt/reset commands. The former adds atoms on -specific timesteps. The latter keeps track of accumulated time.

-

Various fixes use the current timestep to calculate related -quantities. If the timestep is reset, this may produce unexpected -behavior, but LAMMPS allows the fixes to be defined even if the -timestep is reset. For example, commands which thermostat the system, -e.g. fix nvt, allow you to specify a target temperature -which ramps from Tstart to Tstop which may persist over several runs. -If you change the timestep, you may induce an instantaneous change in -the target temperature.

-

Resetting the timestep clears flags for computes that -may have calculated some quantity from a previous run. This means -these quantity cannot be accessed by a variable in between runs until -a new run is performed. See the variable command for -more details.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/restart.html b/doc/restart.html deleted file mode 100644 index 93ea692833..0000000000 --- a/doc/restart.html +++ /dev/null @@ -1,350 +0,0 @@ - - - - - - - - - - - restart command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

restart command

-
-

Syntax

-
restart 0
-restart N root keyword value ...
-restart N file1 file2 keyword value ...
-
-
-
    -
  • N = write a restart file every this many timesteps
  • -
  • N can be a variable (see below)
  • -
  • root = filename to which timestep # is appended
  • -
  • file1,file2 = two full filenames, toggle between them when writing file
  • -
  • zero or more keyword/value pairs may be appended
  • -
  • keyword = fileper or nfile
  • -
-
-fileper arg = Np
-  Np = write one file for every this many processors
-nfile arg = Nf
-  Nf = write this many files, one from each of Nf processors
-
-
-
-

Examples

-
restart 0
-restart 1000 poly.restart
-restart 1000 poly.restart.mpiio
-restart 1000 restart.*.equil
-restart 10000 poly.%.1 poly.%.2 nfile 10
-restart v_mystep poly.restart
-
-
-
-
-

Description

-

Write out a binary restart file with the current state of the -simulation every so many timesteps, in either or both of two modes, as -a run proceeds. A value of 0 means do not write out any restart -files. The two modes are as follows. If one filename is specified, a -series of filenames will be created which include the timestep in the -filename. If two filenames are specified, only 2 restart files will -be created, with those names. LAMMPS will toggle between the 2 names -as it writes successive restart files.

-

Note that you can specify the restart command twice, once with a -single filename and once with two filenames. This would allow you, -for example, to write out archival restart files every 100000 steps -using a single filenname, and more frequent temporary restart files -every 1000 steps, using two filenames. Using restart 0 will turn off -both modes of output.

-

Similar to dump files, the restart filename(s) can contain -two wild-card characters.

-

If a “*” appears in the single filename, it is replaced with the -current timestep value. This is only recognized when a single -filename is used (not when toggling back and forth). Thus, the 3rd -example above creates restart files as follows: restart.1000.equil, -restart.2000.equil, etc. If a single filename is used with no “*”, -then the timestep value is appended. E.g. the 2nd example above -creates restart files as follows: poly.restart.1000, -poly.restart.2000, etc.

-

If a “%” character appears in the restart filename(s), then one file -is written for each processor and the “%” character is replaced with -the processor ID from 0 to P-1. An additional file with the “%” -replaced by “base” is also written, which contains global information. -For example, the files written on step 1000 for filename restart.% -would be restart.base.1000, restart.0.1000, restart.1.1000, ..., -restart.P-1.1000. This creates smaller files and can be a fast mode -of output and subsequent input on parallel machines that support -parallel I/O. The optional fileper and nfile keywords discussed -below can alter the number of files written.

-

The restart file can also be written in parallel as one large binary -file via the MPI-IO library, which is part of the MPI standard for -versions 2.0 and above. Using MPI-IO requires two steps. First, -build LAMMPS with its MPIIO package installed, e.g.

-
make yes-mpiio    # installs the MPIIO package
-make g++          # build LAMMPS for your platform
-
-
-

Second, use a restart filename which contains ”.mpiio”. Note that it -does not have to end in ”.mpiio”, just contain those characters. -Unlike MPI-IO dump files, a particular restart file must be both -written and read using MPI-IO.

-

Restart files are written on timesteps that are a multiple of N but -not on the first timestep of a run or minimization. You can use the -write_restart command to write a restart file -before a run begins. A restart file is not written on the last -timestep of a run unless it is a multiple of N. A restart file is -written on the last timestep of a minimization if N > 0 and the -minimization converges.

-

Instead of a numeric value, N can be specifed as an equal-style variable, which should be specified as v_name, where -name is the variable name. In this case, the variable is evaluated at -the beginning of a run to determine the next timestep at which a -restart file will be written out. On that timestep, the variable will -be evaluated again to determine the next timestep, etc. Thus the -variable should return timestep values. See the stagger() and -logfreq() and stride() math functions for equal-style variables, as examples of useful functions to use in -this context. Other similar math functions could easily be added as -options for equal-style variables.

-

For example, the following commands will write restart files -every step from 1100 to 1200, and could be useful for debugging -a simulation where something goes wrong at step 1163:

-
variable     s equal stride(1100,1200,1)
-restart              v_s tmp.restart
-
-
-
-

See the read_restart command for information about -what is stored in a restart file.

-

Restart files can be read by a read_restart -command to restart a simulation from a particular state. Because the -file is binary (to enable exact restarts), it may not be readable on -another machine. In this case, you can use the -r command-line switch to convert a restart file to a data -file.

-
-

Note

-

Although the purpose of restart files is to enable restarting a -simulation from where it left off, not all information about a -simulation is stored in the file. For example, the list of fixes that -were specified during the initial run is not stored, which means the -new input script must specify any fixes you want to use. Even when -restart information is stored in the file, as it is for some fixes, -commands may need to be re-specified in the new input script, in order -to re-use that information. See the read_restart -command for information about what is stored in a restart file.

-
-
-

The optional nfile or fileper keywords can be used in conjunction -with the “%” wildcard character in the specified restart file name(s). -As explained above, the “%” character causes the restart file to be -written in pieces, one piece for each of P processors. By default P = -the number of processors the simulation is running on. The nfile or -fileper keyword can be used to set P to a smaller value, which can -be more efficient when running on a large number of processors.

-

The nfile keyword sets P to the specified Nf value. For example, if -Nf = 4, and the simulation is running on 100 processors, 4 files will -be written, by processors 0,25,50,75. Each will collect information -from itself and the next 24 processors and write it to a restart file.

-

For the fileper keyword, the specified value of Np means write one -file for every Np processors. For example, if Np = 4, every 4th -processor (0,4,8,12,etc) will collect information from itself and the -next 3 processors and write it to a restart file.

-
-
-
-

Restrictions

-

To write and read restart files in parallel with MPI-IO, the MPIIO -package must be installed.

-
- -
-

Default

-
restart 0
-
-
-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/run.html b/doc/run.html deleted file mode 100644 index a6b349295e..0000000000 --- a/doc/run.html +++ /dev/null @@ -1,385 +0,0 @@ - - - - - - - - - - - run command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

run command

-
-

Syntax

-
run N keyword values ...
-
-
-
    -
  • N = # of timesteps
  • -
  • zero or more keyword/value pairs may be appended
  • -
  • keyword = upto or start or stop or pre or post or every
  • -
-
-upto value = none
-start value = N1
-  N1 = timestep at which 1st run started
-stop value = N2
-  N2 = timestep at which last run will end
-pre value = no or yes
-post value = no or yes
-every values = M c1 c2 ...
-  M = break the run into M-timestep segments and invoke one or more commands between each segment
-  c1,c2,...,cN = one or more LAMMPS commands, each enclosed in quotes
-  c1 = NULL means no command will be invoked
-
-
-
-

Examples

-
run 10000
-run 1000000 upto
-run 100 start 0 stop 1000
-run 1000 pre no post yes
-run 100000 start 0 stop 1000000 every 1000 "print 'Protein Rg = $r'"
-run 100000 every 1000 NULL
-
-
-
-
-

Description

-

Run or continue dynamics for a specified number of timesteps.

-

When the run style is respa, N refers to outer -loop (largest) timesteps.

-

A value of N = 0 is acceptable; only the thermodynamics of the system -are computed and printed without taking a timestep.

-

The upto keyword means to perform a run starting at the current -timestep up to the specified timestep. E.g. if the current timestep -is 10,000 and “run 100000 upto” is used, then an additional 90,000 -timesteps will be run. This can be useful for very long runs on a -machine that allocates chunks of time and terminate your job when time -is exceeded. If you need to restart your script multiple times -(reading in the last restart file), you can keep restarting your -script with the same run command until the simulation finally -completes.

-

The start or stop keywords can be used if multiple runs are being -performed and you want a fix command that changes some -value over time (e.g. temperature) to make the change across the -entire set of runs and not just a single run. See the doc page for -individual fixes to see which ones can be used with the start/stop -keywords.

-

For example, consider this fix followed by 10 run commands:

-
fix       1 all nvt 200.0 300.0 1.0
-run       1000 start 0 stop 10000
-run       1000 start 0 stop 10000
-...
-run       1000 start 0 stop 10000
-
-
-

The NVT fix ramps the target temperature from 200.0 to 300.0 during a -run. If the run commands did not have the start/stop keywords (just -“run 1000”), then the temperature would ramp from 200.0 to 300.0 -during the 1000 steps of each run. With the start/stop keywords, the -ramping takes place over the 10000 steps of all runs together.

-

The pre and post keywords can be used to streamline the setup, -clean-up, and associated output to the screen that happens before and -after a run. This can be useful if you wish to do many short runs in -succession (e.g. LAMMPS is being called as a library which is doing -other computations between successive short LAMMPS runs).

-

By default (pre and post = yes), LAMMPS creates neighbor lists, -computes forces, and imposes fix constraints before every run. And -after every run it gathers and prints timings statistics. If a run is -just a continuation of a previous run (i.e. no settings are changed), -the initial computation is not necessary; the old neighbor list is -still valid as are the forces. So if pre is specified as “no” then -the initial setup is skipped, except for printing thermodynamic info. -Note that if pre is set to “no” for the very 1st run LAMMPS -performs, then it is overridden, since the initial setup computations -must be done.

-
-

Note

-

If your input script changes the system between 2 runs, then the -initial setup must be performed to insure the change is recognized by -all parts of the code that are affected. Examples are adding a -fix or dump or compute, changing -a neighbor list parameter, or writing restart file -which can migrate atoms between processors. LAMMPS has no easy way to -check if this has happened, but it is an error to use the pre no -option in this case.

-
-

If post is specified as “no”, the full timing summary is skipped; -only a one-line summary timing is printed.

-

The every keyword provides a means of breaking a LAMMPS run into a -series of shorter runs. Optionally, one or more LAMMPS commands (c1, -c2, ..., cN) will be executed in between the short runs. If used, the -every keyword must be the last keyword, since it has a variable -number of arguments. Each of the trailing arguments is a single -LAMMPS command, and each command should be enclosed in quotes, so that -the entire command will be treated as a single argument. This will -also prevent any variables in the command from being evaluated until -it is executed multiple times during the run. Note that if a command -itself needs one of its arguments quoted (e.g. the print -command), then you can use a combination of single and double quotes, -as in the example above or below.

-

The every keyword is a means to avoid listing a long series of runs -and interleaving commands in your input script. For example, a -print command could be invoked or a fix could -be redefined, e.g. to reset a thermostat temperature. Or this could -be useful for invoking a command you have added to LAMMPS that wraps -some other code (e.g. as a library) to perform a computation -periodically during a long LAMMPS run. See this section of the documentation for info about how -to add new commands to LAMMPS. See this section of the documentation for ideas -about how to couple LAMMPS to other codes.

-

With the every option, N total steps are simulated, in shorter runs -of M steps each. After each M-length run, the specified commands are -invoked. If only a single command is specified as NULL, then no -command is invoked. Thus these lines:

-
variable q equal x[100]
-run 6000 every 2000 "print 'Coord = $q'"
-
-
-

are the equivalent of:

-
variable q equal x[100]
-run 2000
-print "Coord = $q"
-run 2000
-print "Coord = $q"
-run 2000
-print "Coord = $q"
-
-
-

which does 3 runs of 2000 steps and prints the x-coordinate of a -particular atom between runs. Note that the variable “$q” will -be evaluated afresh each time the print command is executed.

-

Note that by using the line continuation character “&”, the run every -command can be spread across many lines, though it is still a single -command:

-
run 100000 every 1000 &
-  "print 'Minimum value = $a'" &
-  "print 'Maximum value = $b'" &
-  "print 'Temp = $c'" &
-  "print 'Press = $d'"
-
-
-

If the pre and post options are set to “no” when used with the -every keyword, then the 1st run will do the full setup and the last -run will print the full timing summary, but these operations will be -skipped for intermediate runs.

-
-

Note

-

You might hope to specify a command that exits the run by -jumping out of the loop, e.g.

-
-
variable t equal temp
-run 10000 every 100 "if '$t < 300.0' then 'jump SELF afterrun'"
-
-
-

Unfortunately this will not currently work. The run command simply -executes each command one at a time each time it pauses, then -continues the run. You can replace the jump command with a simple -quit command and cause LAMMPS to exit during the -middle of a run when the condition is met.

-
-
-

Restrictions

-

When not using the upto keyword, the number of specified timesteps N -must fit in a signed 32-bit integer, so you are limited to slightly -more than 2 billion steps (2^31) in a single run. When using upto, -N can be larger than a signed 32-bit integer, however the difference -between N and the current timestep must still be no larger than -2^31 steps.

-

However, with or without the upto keyword, you can perform -successive runs to run a simulation for any number of steps (ok, up to -2^63 total steps). I.e. the timestep counter within LAMMPS is a -64-bit signed integer.

-
- -
-

Default

-

The option defaults are start = the current timestep, stop = current -timestep + N, pre = yes, and post = yes.

-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/run_style.html b/doc/run_style.html deleted file mode 100644 index 53bb4b1ce3..0000000000 --- a/doc/run_style.html +++ /dev/null @@ -1,456 +0,0 @@ - - - - - - - - - - - run_style command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

run_style command

-
-

Syntax

-
run_style style args
-
-
-
    -
  • style = verlet or verlet/split or respa or respa/omp
  • -
-
-verlet args = none
-verlet/split args = none
-respa args = N n1 n2 ... keyword values ...
-  N = # of levels of rRESPA
-  n1, n2, ... = loop factor between rRESPA levels (N-1 values)
-  zero or more keyword/value pairings may be appended to the loop factors
-  keyword = bond or angle or dihedral or improper or
-         pair or inner or middle or outer or hybrid or kspace
-    bond value = M
-      M = which level (1-N) to compute bond forces in
-    angle value = M
-      M = which level (1-N) to compute angle forces in
-    dihedral value = M
-      M = which level (1-N) to compute dihedral forces in
-    improper value = M
-      M = which level (1-N) to compute improper forces in
-    pair value = M
-      M = which level (1-N) to compute pair forces in
-    inner values = M cut1 cut2
-      M = which level (1-N) to compute pair inner forces in
-   cut1 = inner cutoff between pair inner and
-          pair middle or outer  (distance units)
-   cut2 = outer cutoff between pair inner and
-          pair middle or outer  (distance units)
-    middle values = M cut1 cut2
-      M = which level (1-N) to compute pair middle forces in
-   cut1 = inner cutoff between pair middle and pair outer (distance units)
-   cut2 = outer cutoff between pair middle and pair outer (distance units)
-    outer value = M
-      M = which level (1-N) to compute pair outer forces in
-    hybrid values = M1 M2 ... (as many values as there are hybrid sub-styles
-      M1 = which level (1-N) to compute the first pair_style hybrid sub-style in
-      M2 = which level (1-N) to compute the second pair_style hybrid sub-style in
-      M3,etc
-    kspace value = M
-      M = which level (1-N) to compute kspace forces in
-
-
-
-

Examples

-
run_style verlet
-run_style respa 4 2 2 2 bond 1 dihedral 2 pair 3 kspace 4
-run_style respa 4 2 2 2 bond 1 dihedral 2 inner 3 5.0 6.0 outer 4 kspace 4
-
-
-
run_style respa 3 4 2 bond 1 hybrid 2 2 1 kspace 3
-
-
-
-
-

Description

-

Choose the style of time integrator used for molecular dynamics -simulations performed by LAMMPS.

-

The verlet style is a standard velocity-Verlet integrator.

-
-

The verlet/split style is also a velocity-Verlet integrator, but it -splits the force calculation within each timestep over 2 partitions of -processors. See Section_start 6 for an -explanation of the -partition command-line switch.

-

Specifically, this style performs all computation except the -kspace_style portion of the force field on the 1st -partition. This include the pair style, bond style, neighbor list building, -fixes including time intergration, and output. The -kspace_style portion of the calculation is -performed on the 2nd partition.

-

This is most useful for the PPPM kspace_style when its performance on -a large number of processors degrades due to the cost of communication -in its 3d FFTs. In this scenario, splitting your P total processors -into 2 subsets of processors, P1 in the 1st partition and P2 in the -2nd partition, can enable your simulation to run faster. This is -because the long-range forces in PPPM can be calculated at the same -time as pair-wise and bonded forces are being calculated, and the FFTs -can actually speed up when running on fewer processors.

-

To use this style, you must define 2 partitions where P1 is a multiple -of P2. Typically having P1 be 3x larger than P2 is a good choice. -The 3d processor layouts in each partition must overlay in the -following sense. If P1 is a Px1 by Py1 by Pz1 grid, and P2 = Px2 by -Py2 by Pz2, then Px1 must be an integer multiple of Px2, and similarly -for Py1 a multiple of Py2, and Pz1 a multiple of Pz2.

-

Typically the best way to do this is to let the 1st partition choose -its onn optimal layout, then require the 2nd partition’s layout to -match the integer multiple constraint. See the -processors command with its part keyword for a way -to control this, e.g.

-
procssors * * * part 1 2 multiple
-
-
-

You can also use the partition command to explicitly -specity the processor layout on each partition. E.g. for 2 partitions -of 60 and 15 processors each:

-
partition yes 1 processors 3 4 5
-partition yes 2 processors 3 1 5
-
-
-

When you run in 2-partition mode with the verlet/split style, the -thermodyanmic data for the entire simulation will be output to the log -and screen file of the 1st partition, which are log.lammps.0 and -screen.0 by default; see the “-plog and -pscreen command-line -switches”Section_start.html#start_7 to change this. The log and -screen file for the 2nd partition will not contain thermodynamic -output beyone the 1st timestep of the run.

-

See Section_accelerate of the manual for -performance details of the speed-up offered by the verlet/split -style. One important performance consideration is the assignemnt of -logical processors in the 2 partitions to the physical cores of a -parallel machine. The processors command has -options to support this, and strategies are discussed in -Section_accelerate of the manual.

-
-

The respa style implements the rRESPA multi-timescale integrator -(Tuckerman) with N hierarchical levels, where level 1 is -the innermost loop (shortest timestep) and level N is the outermost -loop (largest timestep). The loop factor arguments specify what the -looping factor is between levels. N1 specifies the number of -iterations of level 1 for a single iteration of level 2, N2 is the -iterations of level 2 per iteration of level 3, etc. N-1 looping -parameters must be specified.

-

The timestep command sets the timestep for the -outermost rRESPA level. Thus if the example command above for a -4-level rRESPA had an outer timestep of 4.0 fmsec, the inner timestep -would be 8x smaller or 0.5 fmsec. All other LAMMPS commands that -specify number of timesteps (e.g. neigh_modify -parameters, dump every N timesteps, etc) refer to the -outermost timesteps.

-

The rRESPA keywords enable you to specify at what level of the -hierarchy various forces will be computed. If not specified, the -defaults are that bond forces are computed at level 1 (innermost -loop), angle forces are computed where bond forces are, dihedral -forces are computed where angle forces are, improper forces are -computed where dihedral forces are, pair forces are computed at the -outermost level, and kspace forces are computed where pair forces are. -The inner, middle, outer forces have no defaults.

-

The inner and middle keywords take additional arguments for -cutoffs that are used by the pairwise force computations. If the 2 -cutoffs for inner are 5.0 and 6.0, this means that all pairs up to -6.0 apart are computed by the inner force. Those between 5.0 and 6.0 -have their force go ramped to 0.0 so the overlap with the next regime -(middle or outer) is smooth. The next regime (middle or outer) will -compute forces for all pairs from 5.0 outward, with those from 5.0 to -6.0 having their value ramped in an inverse manner.

-

Only some pair potentials support the use of the inner and middle -and outer keywords. If not, only the pair keyword can be used -with that pair style, meaning all pairwise forces are computed at the -same rRESPA level. See the doc pages for individual pair styles for -details.i

-

Another option for using pair potentials with rRESPA is with the -hybrid keyword, which requires the use of the pair_style hybrid or hybrid/overlay command. In this scenario, different -sub-styles of the hybrid pair style are evaluated at different rRESPA -levels. This can be useful, for example, to set different timesteps -for hybrid coarse-grained/all-atom models. The hybrid keyword -requires as many level assignments as there are hybrid substyles, -which assigns each sub-style to a rRESPA level, following their order -of definition in the pair_style command. Since the hybrid keyword -operates on pair style computations, it is mututally exclusive with -either the pair or the inner/middle/outer keywords.

-

When using rRESPA (or for any MD simulation) care must be taken to -choose a timestep size(s) that insures the Hamiltonian for the chosen -ensemble is conserved. For the constant NVE ensemble, total energy -must be conserved. Unfortunately, it is difficult to know a priori -how well energy will be conserved, and a fairly long test simulation -(~10 ps) is usually necessary in order to verify that no long-term -drift in energy occurs with the trial set of parameters.

-

With that caveat, a few rules-of-thumb may be useful in selecting -respa settings. The following applies mostly to biomolecular -simulations using the CHARMM or a similar all-atom force field, but -the concepts are adaptable to other problems. Without SHAKE, bonds -involving hydrogen atoms exhibit high-frequency vibrations and require -a timestep on the order of 0.5 fmsec in order to conserve energy. The -relatively inexpensive force computations for the bonds, angles, -impropers, and dihedrals can be computed on this innermost 0.5 fmsec -step. The outermost timestep cannot be greater than 4.0 fmsec without -risking energy drift. Smooth switching of forces between the levels -of the rRESPA hierarchy is also necessary to avoid drift, and a 1-2 -angstrom “healing distance” (the distance between the outer and inner -cutoffs) works reasonably well. We thus recommend the following -settings for use of the respa style without SHAKE in biomolecular -simulations:

-
timestep  4.0
-run_style respa 4 2 2 2 inner 2 4.5 6.0 middle 3 8.0 10.0 outer 4
-
-
-

With these settings, users can expect good energy conservation and -roughly a 2.5 fold speedup over the verlet style with a 0.5 fmsec -timestep.

-

If SHAKE is used with the respa style, time reversibility is lost, -but substantially longer time steps can be achieved. For biomolecular -simulations using the CHARMM or similar all-atom force field, bonds -involving hydrogen atoms exhibit high frequency vibrations and require -a time step on the order of 0.5 fmsec in order to conserve energy. -These high frequency modes also limit the outer time step sizes since -the modes are coupled. It is therefore desirable to use SHAKE with -respa in order to freeze out these high frequency motions and increase -the size of the time steps in the respa hierarchy. The following -settings can be used for biomolecular simulations with SHAKE and -rRESPA:

-
fix             2 all shake 0.000001 500 0 m 1.0 a 1
-timestep        4.0
-run_style    respa 2 2 inner 1 4.0 5.0 outer 2
-
-
-

With these settings, users can expect good energy conservation and -roughly a 1.5 fold speedup over the verlet style with SHAKE and a -2.0 fmsec timestep.

-

For non-biomolecular simulations, the respa style can be -advantageous if there is a clear separation of time scales - fast and -slow modes in the simulation. Even a LJ system can benefit from -rRESPA if the interactions are divided by the inner, middle and outer -keywords. A 2-fold or more speedup can be obtained while maintaining -good energy conservation. In real units, for a pure LJ fluid at -liquid density, with a sigma of 3.0 angstroms, and epsilon of 0.1 -Kcal/mol, the following settings seem to work well:

-
timestep  36.0
-run_style respa 3 3 4 inner 1 3.0 4.0 middle 2 6.0 7.0 outer 3
-
-
-
-

The respa/omp styles is a variant of respa adapted for use with -pair, bond, angle, dihedral, improper, or kspace styles with an omp -suffix. It is functionally equivalent to respa but performs additional -operations required for managing omp styles. For more on omp styles -see the Section_accelerate of the manual. -Accelerated styles take the same arguments and should produce the same -results, except for round-off and precision issues.

-

You can specify respa/omp explicitly in your input script, or -you can use the -suffix command-line switch -when you invoke LAMMPS, or you can use the suffix -command in your input script.

-

See Section_accelerate of the manual for -more instructions on how to use the accelerated styles effectively.

-
-
-
-

Restrictions

-

The verlet/split style can only be used if LAMMPS was built with the -REPLICA package. Correspondingly the respa/omp style is available only -if the USER-OMP package was included. See the Making LAMMPS -section for more info on packages.

-

Whenever using rRESPA, the user should experiment with trade-offs in -speed and accuracy for their system, and verify that they are -conserving energy to adequate precision.

-
- -
-

Default

-
run_style verlet
-
-
-
-

(Tuckerman) Tuckerman, Berne and Martyna, J Chem Phys, 97, p 1990 -(1992).

-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/search.html b/doc/search.html deleted file mode 100644 index b1adac2009..0000000000 --- a/doc/search.html +++ /dev/null @@ -1,206 +0,0 @@ - - - - - - - - - - - Search — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
-
    -
  • Docs »
  • - -
  • -
  • - -
  • -
-
- -
-
-
- - - - -
- -
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/set.html b/doc/set.html deleted file mode 100644 index ce138011f6..0000000000 --- a/doc/set.html +++ /dev/null @@ -1,559 +0,0 @@ - - - - - - - - - - - set command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

set command

-
-

Syntax

-
set style ID keyword values ...
-
-
-
    -
  • style = atom or type or mol or group or region
  • -
  • ID = atom ID range or type range or mol ID range or group ID or region ID
  • -
  • one or more keyword/value pairs may be appended
  • -
  • keyword = type or type/fraction or mol or x or y or z or charge or dipole or dipole/random or quat or quat/random or diameter or shape or length or tri or theta or theta/random or angmom or omega or mass or density or volume or image or bond or angle or dihedral or improper or meso/e or meso/cv or meso/rho or smd/contact/radius or smd/mass/density or dpd/theta or i_name or d_name
  • -
-
-type value = atom type
-  value can be an atom-style variable (see below)
-type/fraction values = type fraction seed
-  type = new atom type
-  fraction = fraction of selected atoms to set to new atom type
-  seed = random # seed (positive integer)
-mol value = molecule ID
-  value can be an atom-style variable (see below)
-x,*y*,*z* value = atom coordinate (distance units)
-  value can be an atom-style variable (see below)
-charge value = atomic charge (charge units)
-  value can be an atom-style variable (see below)
-dipole values = x y z
-  x,y,z = orientation of dipole moment vector
-  any of x,y,z can be an atom-style variable (see below)
-dipole/random value = seed Dlen
-  seed = random # seed (positive integer) for dipole moment orientations
-  Dlen = magnitude of dipole moment (dipole units)
-quat values = a b c theta
-  a,b,c = unit vector to rotate particle around via right-hand rule
-  theta = rotation angle (degrees)
-  any of a,b,c,theta can be an atom-style variable (see below)
-quat/random value = seed
-  seed = random # seed (positive integer) for quaternion orientations
-diameter value = diameter of spherical particle (distance units)
-  value can be an atom-style variable (see below)
-shape value = Sx Sy Sz
-  Sx,Sy,Sz = 3 diameters of ellipsoid (distance units)
-length value = len
-  len = length of line segment (distance units)
-  len can be an atom-style variable (see below)
-tri value = side
-  side = side length of equilateral triangle (distance units)
-  side can be an atom-style variable (see below)
-theta value = angle (degrees)
-  angle = orientation of line segment with respect to x-axis
-  angle can be an atom-style variable (see below)
-theta/random value = seed
-  seed = random # seed (positive integer) for line segment orienations
-angmom values = Lx Ly Lz
-  Lx,Ly,Lz = components of angular momentum vector (distance-mass-velocity units)
-  any of Lx,Ly,Lz can be an atom-style variable (see below)
-omega values = Wx Wy Wz
-  Wx,Wy,Wz = components of angular velocity vector (radians/time units)
-  any of wx,wy,wz can be an atom-style variable (see below)
-mass value = per-atom mass (mass units)
-  value can be an atom-style variable (see below)
-density value = particle density for sphere or ellipsoid (mass/distance^3 or mass/distance^2 or mass/distance units, depending on dimensionality of particle)
-  value can be an atom-style variable (see below)
-volume value = particle volume for Peridynamic particle (distance^3 units)
-  value can be an atom-style variable (see below)
-image nx ny nz
-  nx,ny,nz = which periodic image of the simulation box the atom is in
-bond value = bond type for all bonds between selected atoms
-angle value = angle type for all angles between selected atoms
-dihedral value = dihedral type for all dihedrals between selected atoms
-improper value = improper type for all impropers between selected atoms
-meso/e value = energy of SPH particles (need units)
-  value can be an atom-style variable (see below)
-meso/cv value = heat capacity of SPH particles (need units)
-  value can be an atom-style variable (see below)
-meso/rho value = density of SPH particles (need units)
-  value can be an atom-style variable (see below)
-smd/contact/radius = radius for short range interactions, i.e. contact and friction
-  value can be an atom-style variable (see below)
-smd/mass/density = set particle mass based on volume by providing a mass density
-  value can be an atom-style variable (see below)
-dpd/theta value = internal temperature of DPD particles (temperature units)
-i_name value = value for custom integer vector with name
-d_name value = value for custom floating-point vector with name
-
-
-
-

Examples

-
set group solvent type 2
-set group solvent type/fraction 2 0.5 12393
-set group edge bond 4
-set region half charge 0.5
-set type 3 charge 0.5
-set type 1*3 charge 0.5
-set atom * charge v_atomfile
-set atom 100*200 x 0.5 y 1.0
-set atom 1492 type 3
-
-
-
-
-

Description

-

Set one or more properties of one or more atoms. Since atom -properties are initially assigned by the read_data, -read_restart or create_atoms -commands, this command changes those assignments. This can be useful -for overriding the default values assigned by the -create_atoms command (e.g. charge = 0.0). It can -be useful for altering pairwise and molecular force interactions, -since force-field coefficients are defined in terms of types. It can -be used to change the labeling of atoms by atom type or molecule ID -when they are output in dump files. It can also be useful -for debugging purposes; i.e. positioning an atom at a precise location -to compute subsequent forces or energy.

-

Note that the style and ID arguments determine which atoms have -their properties reset. The remaining keywords specify which -properties to reset and what the new values are. Some strings like -type or mol can be used as a style and/or a keyword.

-
-

This section describes how to select which atoms to change -the properties of, via the style and ID arguments.

-

The style atom selects all the atoms in a range of atom IDs. The -style type selects all the atoms in a range of types. The style -mol selects all the atoms in a range of molecule IDs.

-

In each of the range cases, the range can be specified as a single -numeric value, or a wildcard asterisk can be used to specify a range -of values. This takes the form “*” or “n” or “n” or “m*n”. For -example, for the style type, if N = the number of atom types, then -an asterisk with no numeric values means all types from 1 to N. A -leading asterisk means all types from 1 to n (inclusive). A trailing -asterisk means all types from n to N (inclusive). A middle asterisk -means all types from m to n (inclusive). For all the styles except -mol, the lowest value for the wildcard is 1; for mol it is 0.

-

The style group selects all the atoms in the specified group. The -style region selects all the atoms in the specified geometric -region. See the group and region commands -for details of how to specify a group or region.

-
-

This section describes the keyword options for which properties to -change, for the selected atoms.

-

Note that except where explicitly prohibited below, all of the -keywords allow an atom-style or atomfile-style variable to be used as the specified value(s). If the -value is a variable, it should be specified as v_name, where name is -the variable name. In this case, the variable will be evaluated, and -its resulting per-atom value used to determine the value assigned to -each selected atom. Note that the per-atom value from the variable -will be ignored for atoms that are not selected via the style and -ID settings explained above. A simple way to use per-atom values -from the variable to reset a property for all atoms is to use style -atom with ID = “*”; this selects all atom IDs.

-

Atom-style variables can specify formulas with various mathematical -functions, and include thermo_style command -keywords for the simulation box parameters and timestep and elapsed -time. They can also include per-atom values, such as atom -coordinates. Thus it is easy to specify a time-dependent or -spatially-dependent set of per-atom values. As explained on the -variable doc page, atomfile-style variables can be -used in place of atom-style variables, and thus as arguments to the -set command. Atomfile-style variables read their per-atoms values -from a file.

-
-

Note

-

Atom-style and atomfile-style variables return floating point -per-atom values. If the values are assigned to an integer variable, -such as the molecule ID, then the floating point value is truncated to -its integer portion, e.g. a value of 2.6 would become 2.

-
-

Keyword type sets the atom type for all selected atoms. The -specified value must be from 1 to ntypes, where ntypes was set by the -create_box command or the atom types field in the -header of the data file read by the read_data -command.

-

Keyword type/fraction sets the atom type for a fraction of the -selected atoms. The actual number of atoms changed is not guaranteed -to be exactly the requested fraction, but should be statistically -close. Random numbers are used in such a way that a particular atom -is changed or not changed, regardless of how many processors are being -used. This keyword does not allow use of an atom-style variable.

-

Keyword mol sets the molecule ID for all selected atoms. The atom style being used must support the use of molecule -IDs.

-

Keywords x, y, z, and charge set the coordinates or charge of -all selected atoms. For charge, the atom style -being used must support the use of atomic charge.

-

Keyword dipole uses the specified x,y,z values as components of a -vector to set as the orientation of the dipole moment vectors of the -selected atoms. The magnitude of the dipole moment is set -by the length of this orientation vector.

-

Keyword dipole/random randomizes the orientation of the dipole -moment vectors for the selected atoms and sets the magnitude of each -to the specified Dlen value. For 2d systems, the z component of the -orientation is set to 0.0. Random numbers are used in such a way that -the orientation of a particular atom is the same, regardless of how -many processors are being used. This keyword does not allow use of an -atom-style variable.

-

Keyword quat uses the specified values to create a quaternion -(4-vector) that represents the orientation of the selected atoms. The -particles must define a quaternion for their orientation -(e.g. ellipsoids, triangles, body particles) as defined by the -atom_style command. Note that particles defined by -atom_style ellipsoid have 3 shape parameters. The 3 -values must be non-zero for each particle set by this command. They -are used to specify the aspect ratios of an ellipsoidal particle, -which is oriented by default with its x-axis along the simulation -box’s x-axis, and similarly for y and z. If this body is rotated (via -the right-hand rule) by an angle theta around a unit rotation vector -(a,b,c), then the quaternion that represents its new orientation is -given by (cos(theta/2), a*sin(theta/2), b*sin(theta/2), -c*sin(theta/2)). The theta and a,b,c values are the arguments to the -quat keyword. LAMMPS normalizes the quaternion in case (a,b,c) was -not specified as a unit vector. For 2d systems, the a,b,c values are -ignored, since a rotation vector of (0,0,1) is the only valid choice.

-

Keyword quat/random randomizes the orientation of the quaternion for -the selected atoms. The particles must define a quaternion for their -orientation (e.g. ellipsoids, triangles, body particles) as defined by -the atom_style command. Random numbers are used in -such a way that the orientation of a particular atom is the same, -regardless of how many processors are being used. For 2d systems, -only orientations in the xy plane are generated. As with keyword -quat, for ellipsoidal particles, the 3 shape values must be non-zero -for each particle set by this command. This keyword does not allow -use of an atom-style variable.

-

Keyword diameter sets the size of the selected atoms. The particles -must be finite-size spheres as defined by the atom_style sphere command. The diameter of a particle can be -set to 0.0, which means they will be treated as point particles. Note -that this command does not adjust the particle mass, even if it was -defined with a density, e.g. via the read_data -command.

-

Keyword shape sets the size and shape of the selected atoms. The -particles must be ellipsoids as defined by the atom_style ellipsoid command. The Sx, Sy, Sz settings are -the 3 diameters of the ellipsoid in each direction. All 3 can be set -to the same value, which means the ellipsoid is effectively a sphere. -They can also all be set to 0.0 which means the particle will be -treated as a point particle. Note that this command does not adjust -the particle mass, even if it was defined with a density, e.g. via the -read_data command.

-

Keyword length sets the length of selected atoms. The particles -must be line segments as defined by the atom_style line command. If the specified value is non-zero the -line segment is (re)set to a length = the specified value, centered -around the particle position, with an orientation along the x-axis. -If the specified value is 0.0, the particle will become a point -particle. Note that this command does not adjust the particle mass, -even if it was defined with a density, e.g. via the -read_data command.

-

Keyword tri sets the size of selected atoms. The particles must be -triangles as defined by the atom_style tri command. -If the specified value is non-zero the triangle is (re)set to be an -equilateral triangle in the xy plane with side length = the specified -value, with a centroid at the particle position, with its base -parallel to the x axis, and the y-axis running from the center of the -base to the top point of the triangle. If the specified value is 0.0, -the particle will become a point particle. Note that this command -does not adjust the particle mass, even if it was defined with a -density, e.g. via the read_data command.

-

Keyword theta sets the orientation of selected atoms. The particles -must be line segments as defined by the atom_style line command. The specified value is used to set the -orientation angle of the line segments with respect to the x axis.

-

Keyword theta/random randomizes the orientation of theta for the -selected atoms. The particles must be line segments as defined by the -atom_style line command. Random numbers are used in -such a way that the orientation of a particular atom is the same, -regardless of how many processors are being used. This keyword does -not allow use of an atom-style variable.

-

Keyword angmom sets the angular momentum of selected atoms. The -particles must be ellipsoids as defined by the atom_style ellipsoid command or triangles as defined by the -atom_style tri command. The angular momentum vector -of the particles is set to the 3 specified components.

-

Keyword omega sets the angular velocity of selected atoms. The -particles must be spheres as defined by the “atom_style sphere”_ -atom_style.html command. The angular velocity vector of the particles -is set to the 3 specified components.

-

Keyword mass sets the mass of all selected particles. The particles -must have a per-atom mass attribute, as defined by the -atom_style command. See the “mass” command for how -to set mass values on a per-type basis.

-

Keyword density also sets the mass of all selected particles, but in -a different way. The particles must have a per-atom mass attribute, -as defined by the atom_style command. If the atom -has a radius attribute (see atom_style sphere) and -its radius is non-zero, its mass is set from the density and particle -volume. If the atom has a shape attribute (see atom_style ellipsoid) and its 3 shape parameters are non-zero, -then its mass is set from the density and particle volume. If the -atom has a length attribute (see atom_style line) -and its length is non-zero, then its mass is set from the density and -line segment length (the input density is assumed to be in -mass/distance units). If the atom has an area attribute (see -atom_style tri) and its area is non-zero, then its -mass is set from the density and triangle area (the input density is -assumed to be in mass/distance^2 units). If none of these cases are -valid, then the mass is set to the density value directly (the input -density is assumed to be in mass units).

-

Keyword volume sets the volume of all selected particles. -Currently, only the atom_style peri command defines -particles with a volume attribute. Note that this command does not -adjust the particle mass.

-

Keyword image sets which image of the simulation box the atom is -considered to be in. An image of 0 means it is inside the box as -defined. A value of 2 means add 2 box lengths to get the true value. -A value of -1 means subtract 1 box length to get the true value. -LAMMPS updates these flags as atoms cross periodic boundaries during -the simulation. The flags can be output with atom snapshots via the -dump command. If a value of NULL is specified for any of -nx,ny,nz, then the current image value for that dimension is -unchanged. For non-periodic dimensions only a value of 0 can be -specified. This keyword does not allow use of atom-style variables. -This command can be useful after a system has been equilibrated and -atoms have diffused one or more box lengths in various directions. -This command can then reset the image values for atoms so that they -are effectively inside the simulation box, e.g if a diffusion -coefficient is about to be measured via the compute msd command. Care should be taken not to reset the -image flags of two atoms in a bond to the same value if the bond -straddles a periodic boundary (rather they should be different by +/- -1). This will not affect the dynamics of a simulation, but may mess -up analysis of the trajectories if a LAMMPS diagnostic or your own -analysis relies on the image flags to unwrap a molecule which -straddles the periodic box.

-

Keywords bond, angle, dihedral, and improper, set the bond -type (angle type, etc) of all bonds (angles, etc) of selected atoms to -the specified value from 1 to nbondtypes (nangletypes, etc). All -atoms in a particular bond (angle, etc) must be selected atoms in -order for the change to be made. The value of nbondtype (nangletypes, -etc) was set by the bond types (angle types, etc) field in the -header of the data file read by the read_data -command. These keywords do not allow use of an atom-style variable.

-

Keywords meso/e, meso/cv, and meso/rho set the energy, heat -capacity, and density of smmothed particle hydrodynamics (SPH) -particles. See this PDF guide to -using SPH in LAMMPS.

-

Keyword smd/mass/density sets the mass of all selected particles, -but it is only applicable to the Smooth Mach Dynamics package -USER-SMD. It assumes that the particle volume has already been -correctly set and calculates particle mass from the provided mass -density value.

-

Keyword smd/contact/radius only applies to simulations with the -Smooth Mach Dynamics package USER-SMD. Itsets an interaction radius -for computing short-range interactions, e.g. repulsive forces to -prevent different individual physical bodies from penetrating each -other. Note that the SPH smoothing kernel diameter used for computing -long range, nonlocal interactions, is set using the diameter -keyword.

-

Keyword dpd/theta sets the internal temperature of a DPD particle -as defined by the USER-DPD package.

-

Keywords i_name and d_name refer to custom integer and -floating-point properties that have been added to each atom via the -fix property/atom command. When that command -is used specific names are given to each attribute which are what is -specified as the “name” portion of i_name or d_name.

-
-
-

Restrictions

-

You cannot set an atom attribute (e.g. mol or q or volume) if -the atom_style does not have that attribute.

-

This command requires inter-processor communication to coordinate the -setting of bond types (angle types, etc). This means that your system -must be ready to perform a simulation before using one of these -keywords (force fields set, atom mass set, etc). This is not -necessary for other keywords.

-

Using the region style with the bond (angle, etc) keywords can give -unpredictable results if there are bonds (angles, etc) that straddle -periodic boundaries. This is because the region may only extend up to -the boundary and partner atoms in the bond (angle, etc) may have -coordinates outside the simulation box if they are ghost atoms.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/shell.html b/doc/shell.html deleted file mode 100644 index ff296797f2..0000000000 --- a/doc/shell.html +++ /dev/null @@ -1,286 +0,0 @@ - - - - - - - - - - - shell command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

shell command

-
-

Syntax

-
shell cmd args
-
-
-
    -
  • cmd = cd or mkdir or mv or rm or rmdir or putenv or arbitrary command
  • -
-
-cd arg = dir
-  dir = directory to change to
-mkdir args = dir1 dir2 ...
-  dir1,dir2 = one or more directories to create
-mv args = old new
-  old = old filename
-  new = new filename
-rm args = file1 file2 ...
-  file1,file2 = one or more filenames to delete
-rmdir args = dir1 dir2 ...
-  dir1,dir2 = one or more directories to delete
-putenv args = var1=value1 var2=value2
-  var=value = one of more definitions of environment variables
-anything else is passed as a command to the shell for direct execution
-
-
-
-

Examples

-
shell cd sub1
-shell cd ..
-shell mkdir tmp1 tmp2 tmp3
-shell rmdir tmp1
-shell mv log.lammps hold/log.1
-shell rm TMP/file1 TMP/file2
-shell putenv LAMMPS_POTENTIALS=../../potentials
-shell my_setup file1 10 file2
-shell my_post_process 100 dump.out
-
-
-
-
-

Description

-

Execute a shell command. A few simple file-based shell commands are -supported directly, in Unix-style syntax. Any command not listed -above is passed as-is to the C-library system() call, which invokes -the command in a shell.

-

This is means to invoke other commands from your input script. For -example, you can move files around in preparation for the next section -of the input script. Or you can run a program that pre-processes data -for input into LAMMPS. Or you can run a program that post-processes -LAMMPS output data.

-

With the exception of cd, all commands, including ones invoked via a -system() call, are executed by only a single processor, so that -files/directories are not being manipulated by multiple processors.

-

The cd cmd executes the Unix “cd” command to change the working -directory. All subsequent LAMMPS commands that read/write files will -use the new directory. All processors execute this command.

-

The mkdir cmd executes the Unix “mkdir” command to create one or -more directories.

-

The mv cmd executes the Unix “mv” command to rename a file and/or -move it to a new directory.

-

The rm cmd executes the Unix “rm” command to remove one or more -files.

-

The rmdir cmd executes the Unix “rmdir” command to remove one or -more directories. A directory must be empty to be successfully -removed.

-

The putenv cmd defines or updates an environment variable directly. -Since this command does not pass through the shell, no shell variable -expansion or globbing is performed, only the usual substitution for -LAMMPS variables defined with the variable command is -performed. The resulting string is then used literally.

-

Any other cmd is passed as-is to the shell along with its arguments as -one string, invoked by the C-library system() call. For example, -these lines in your input script:

-
variable n equal 10
-variable foo string file2
-shell my_setup file1 $n ${foo}
-
-
-

would be the same as invoking

-
% my_setup file1 10 file2
-
-
-

from a command-line prompt. The executable program “my_setup” is run -with 3 arguments: file1 10 file2.

-
-
-

Restrictions

-

LAMMPS does not detect errors or print warnings when any of these -commands execute. E.g. if the specified directory does not exist, -executing the cd command will silently do nothing.

-

Related commands: none

-

Default: none

-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/special_bonds.html b/doc/special_bonds.html deleted file mode 100644 index 8301e0b8c5..0000000000 --- a/doc/special_bonds.html +++ /dev/null @@ -1,431 +0,0 @@ - - - - - - - - - - - special_bonds command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

special_bonds command

-
-

Syntax

-
special_bonds keyword values ...
-
-
-
    -
  • one or more keyword/value pairs may be appended
  • -
  • keyword = amber or charmm or dreiding or fene or lj/coul or lj or coul or angle or dihedral or extra
  • -
-
-amber values = none
-charmm values = none
-dreiding values = none
-fene values = none
-lj/coul values = w1,w2,w3
-  w1,w2,w3 = weights (0.0 to 1.0) on pairwise Lennard-Jones and Coulombic interactions
-lj values = w1,w2,w3
-  w1,w2,w3 = weights (0.0 to 1.0) on pairwise Lennard-Jones interactions
-coul values = w1,w2,w3
-  w1,w2,w3 = weights (0.0 to 1.0) on pairwise Coulombic interactions
-angle value = yes or no
-dihedral value = yes or no
-extra value = N
-  N = number of extra 1-2,1-3,1-4 interactions to save space for
-
-

Examples:

-
special_bonds amber
-special_bonds charmm
-special_bonds fene dihedral no
-special_bonds lj/coul 0.0 0.0 0.5 angle yes dihedral yes
-special_bonds lj 0.0 0.0 0.5 coul 0.0 0.0 0.0 dihedral yes
-special_bonds lj/coul 0 1 1 extra 2
-
-
-
-
-

Description

-

Set weighting coefficients for pairwise energy and force contributions -between pairs of atoms that are also permanently bonded to each other, -either directly or via one or two intermediate bonds. These weighting -factors are used by nearly all pair styles in LAMMPS -that compute simple pairwise interactions. Permanent bonds between -atoms are specified by defining the bond topology in the data file -read by the read_data command. Typically a -bond_style command is also used to define a bond -potential. The rationale for using these weighting factors is that -the interaction between a pair of bonded atoms is all (or mostly) -specified by the bond, angle, dihedral potentials, and thus the -non-bonded Lennard-Jones or Coulombic interaction between the pair of -atoms should be excluded (or reduced by a weighting factor).

-
-

Note

-

These weighting factors are NOT used by pair styles that compute many-body interactions, since the -“bonds” that result from such interactions are not permanent, but are -created and broken dynamically as atom conformations change. Examples -of pair styles in this category are EAM, MEAM, Stillinger-Weber, -Tersoff, COMB, AIREBO, and ReaxFF. In fact, it generally makes no -sense to define permanent bonds between atoms that interact via these -potentials, though such bonds may exist elsewhere in your system, -e.g. when using the pair_style hybrid command. -Thus LAMMPS ignores special_bonds settings when manybody potentials -are calculated.

-
-
-

Note

-

Unlike some commands in LAMMPS, you cannot use this command -multiple times in an incremental fashion: e.g. to first set the LJ -settings and then the Coulombic ones. Each time you use this command -it sets all the coefficients to default values and only overrides the -one you specify, so you should set all the options you need each time -you use it. See more details at the bottom of this page.

-
-

The Coulomb factors are applied to any Coulomb (charge interaction) -term that the potential calculates. The LJ factors are applied to the -remaining terms that the potential calculates, whether they represent -LJ interactions or not. The weighting factors are a scaling -pre-factor on the energy and force between the pair of atoms. A value -of 1.0 means include the full interaction; a value of 0.0 means -exclude it completely.

-

The 1st of the 3 coefficients (LJ or Coulombic) is the weighting -factor on 1-2 atom pairs, which are pairs of atoms directly bonded to -each other. The 2nd coefficient is the weighting factor on 1-3 atom -pairs which are those separated by 2 bonds (e.g. the two H atoms in a -water molecule). The 3rd coefficient is the weighting factor on 1-4 -atom pairs which are those separated by 3 bonds (e.g. the 1st and 4th -atoms in a dihedral interaction). Thus if the 1-2 coefficient is set -to 0.0, then the pairwise interaction is effectively turned off for -all pairs of atoms bonded to each other. If it is set to 1.0, then -that interaction will be at full strength.

-
-

Note

-

For purposes of computing weighted pairwise interactions, 1-3 -and 1-4 interactions are not defined from the list of angles or -dihedrals used by the simulation. Rather, they are inferred -topologically from the set of bonds specified when the simulation is -defined from a data or restart file (see read_data or -read_restart commands). Thus the set of -1-2,1-3,1-4 interactions that the weights apply to is the same whether -angle and dihedral potentials are computed or not, and remains the -same even if bonds are constrained, or turned off, or removed during a -simulation.

-
-

The two exceptions to this rule are (a) if the angle or dihedral -keywords are set to yes (see below), or (b) if the -delete_bonds command is used with the special -option that recomputes the 1-2,1-3,1-4 topologies after bonds are -deleted; see the delete_bonds command for more -details.

-

The amber keyword sets the 3 coefficients to 0.0, 0.0, 0.5 for LJ -interactions and to 0.0, 0.0, 0.8333 for Coulombic interactions, which -is the default for a commonly used version of the AMBER force field, -where the last value is really 5/6. See (Cornell) for a -description of the AMBER force field.

-

The charmm keyword sets the 3 coefficients to 0.0, 0.0, 0.0 for both -LJ and Coulombic interactions, which is the default for a commonly -used version of the CHARMM force field. Note that in pair styles -lj/charmm/coul/charmm and lj/charmm/coul/long the 1-4 coefficients -are defined explicitly, and these pairwise contributions are computed -as part of the charmm dihedral style - see the -pair_coeff and dihedral_style -commands for more information. See (MacKerell) for a -description of the CHARMM force field.

-

The dreiding keyword sets the 3 coefficients to 0.0, 0.0, 1.0 for both -LJ and Coulombic interactions, which is the default for the Dreiding -force field, as discussed in (Mayo).

-

The fene keyword sets the 3 coefficients to 0.0, 1.0, 1.0 for both -LJ and Coulombic interactions, which is consistent with a -coarse-grained polymer model with FENE bonds. See -(Kremer) for a description of FENE bonds.

-

The lj/coul, lj, and coul keywords allow the 3 coefficients to -be set explicitly. The lj/coul keyword sets both the LJ and -Coulombic coefficients to the same 3 values. The lj and coul -keywords only set either the LJ or Coulombic coefficients. Use both -of them if you wish to set the LJ coefficients to different values -than the Coulombic coefficients.

-

The angle keyword allows the 1-3 weighting factor to be ignored for -individual atom pairs if they are not listed as the first and last -atoms in any angle defined in the simulation or as 1,3 or 2,4 atoms in -any dihedral defined in the simulation. For example, imagine the 1-3 -weighting factor is set to 0.5 and you have a linear molecule with 4 -atoms and bonds as follows: 1-2-3-4. If your data file defines 1-2-3 -as an angle, but does not define 2-3-4 as an angle or 1-2-3-4 as a -dihedral, then the pairwise interaction between atoms 1 and 3 will -always be weighted by 0.5, but different force fields use different -rules for weighting the pairwise interaction between atoms 2 and 4. -If the angle keyword is specified as yes, then the pairwise -interaction between atoms 2 and 4 will be unaffected (full weighting -of 1.0). If the angle keyword is specified as no which is the -default, then the 2,4 interaction will also be weighted by 0.5.

-

The dihedral keyword allows the 1-4 weighting factor to be ignored -for individual atom pairs if they are not listed as the first and last -atoms in any dihedral defined in the simulation. For example, imagine -the 1-4 weighting factor is set to 0.5 and you have a linear molecule -with 5 atoms and bonds as follows: 1-2-3-4-5. If your data file -defines 1-2-3-4 as a dihedral, but does not define 2-3-4-5 as a -dihedral, then the pairwise interaction between atoms 1 and 4 will -always be weighted by 0.5, but different force fields use different -rules for weighting the pairwise interaction between atoms 2 and 5. -If the dihedral keyword is specified as yes, then the pairwise -interaction between atoms 2 and 5 will be unaffected (full weighting -of 1.0). If the dihedral keyword is specified as no which is the -default, then the 2,5 interaction will also be weighted by 0.5.

-

The extra keyword can be used when additional bonds will be created -during a simulation run, e.g. by the fix bond/create command. It can also be used if -molecules will be added to the system, e.g. via the fix deposit, or fix pour commands, which -will have atoms with more special neighbors than any atom in the -current system has.

-
-
-

Note

-

LAMMPS stores and maintains a data structure with a list of the -1st, 2nd, and 3rd neighbors of each atom (within the bond topology of -the system). If new bonds are created (or molecules added containing -atoms with more special neighbors), the size of this list needs to -grow. Note that adding a single bond always adds a new 1st neighbor -but may also induce many new 2nd and 3rd neighbors, depending on the -molecular topology of your system. Using the extra keyword leaves -empty space in the list for this N additional 1st, 2nd, or 3rd -neighbors to be added. If you do not do this, you may get an error -when bonds (or molecules) are added.

-
-
-
-

Note

-

If you reuse this command in an input script, you should set all -the options you need each time. This command cannot be used a 2nd -time incrementally, e.g. to add some extra storage locations via the -extra keyword. E.g. these two commands:

-
-

special_bonds lj 0.0 1.0 1.0 -special_bonds coul 0.0 0.0 1.0

-

are not the same as

-

special_bonds lj 0.0 1.0 1.0 coul 0.0 0.0 1.0

-

In the first case you end up with (after the 2nd command):

-

LJ: 0.0 0.0 0.0 -Coul: coul 0.0 0.0 1.0

-

because the LJ settings are reset to their default values -each time the command is issued.

-

Likewise

-
special_bonds amber
-special_bonds extra 2
-
-
-

is not the same as this single command:

-
special_bonds amber extra 2
-
-
-

since in the former case, the 2nd command will reset all the LJ and -Coulombic weights to 0.0 (the default).

-

One exception to this rule is the extra option itself. It is not -reset to its default value of 0 each time the special_bonds command is -invoked. This is because it can also be set by the -read_data and create_box commands, -so this command will not override those settings unless you explicitly -use extra as an option.

-
-
-

Restrictions

-
-
none
-
- -
-

Default

-

All 3 Lennard-Jones and 3 Coulombic weighting coefficients = 0.0, -angle = no, dihedral = no, and extra = 0.

-
-

(Cornell) Cornell, Cieplak, Bayly, Gould, Merz, Ferguson, -Spellmeyer, Fox, Caldwell, Kollman, JACS 117, 5179-5197 (1995).

-

(Kremer) Kremer, Grest, J Chem Phys, 92, 5057 (1990).

-

(MacKerell) MacKerell, Bashford, Bellott, Dunbrack, Evanseck, Field, -Fischer, Gao, Guo, Ha, et al, J Phys Chem, 102, 3586 (1998).

-

(Mayo) Mayo, Olfason, Goddard III, J Phys Chem, 94, 8897-8909 -(1990).

-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/suffix.html b/doc/suffix.html deleted file mode 100644 index 168c0c55dd..0000000000 --- a/doc/suffix.html +++ /dev/null @@ -1,284 +0,0 @@ - - - - - - - - - - - suffix command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

suffix command

-
-

Syntax

-
suffix style args
-
-
-
    -
  • style = off or on or cuda or gpu or intel or kk or omp or opt or hybrid
  • -
  • args = for hybrid style, default suffix to be used and alternative suffix
  • -
-
-
-

Examples

-
suffix off
-suffix on
-suffix gpu
-suffix intel
-suffix hybrid intel omp
-suffix kk
-
-
-
-
-

Description

-

This command allows you to use variants of various styles if they -exist. In that respect it operates the same as the -suffix command-line switch. It also has options -to turn off or back on any suffix setting made via the command line.

-

The specified style can be cuda, gpu, intel, kk, omp, opt -or hybrid. These refer to optional packages that LAMMPS can be built -with, as described in this section of the manual. The “cuda” style corresponds to -the USER-CUDA package, the “gpu” style to the GPU package, the “intel” -style to the USER-INTEL package, the “kk” style to the KOKKOS package, -the “omp” style to the USER-OMP package, and the “opt” style to the -OPT package.

-

These are the variants these packages provide:

-
    -
  • USER-CUDA = a collection of atom, pair, fix, compute, and intergrate -styles, optimized to run on one or more NVIDIA GPUs
  • -
  • GPU = a handful of pair styles and the PPPM kspace_style, optimized to -run on one or more GPUs or multicore CPU/GPU nodes
  • -
  • USER-INTEL = a collection of pair styles and neighbor routines -optimized to run in single, mixed, or double precision on CPUs and -Intel(R) Xeon Phi(TM) coprocessors.
  • -
  • KOKKOS = a collection of atom, pair, and fix styles optimized to run -using the Kokkos library on various kinds of hardware, including GPUs -via Cuda and many-core chips via OpenMP or threading.
  • -
  • USER-OMP = a collection of pair, bond, angle, dihedral, improper, -kspace, compute, and fix styles with support for OpenMP -multi-threading
  • -
  • OPT = a handful of pair styles, cache-optimized for faster CPU -performance
  • -
  • HYBRID = a combination of two packages can be specified (see below)
  • -
-

As an example, all of the packages provide a pair_style lj/cut variant, with style names lj/cut/opt, lj/cut/omp, -lj/cut/gpu, lj/cut/intel, lj/cut/cuda, or lj/cut/kk. A variant styles -can be specified explicitly in your input script, e.g. pair_style -lj/cut/gpu. If the suffix command is used with the appropriate style, -you do not need to modify your input script. The specified suffix -(opt,omp,gpu,intel,cuda,kk) is automatically appended whenever your -input script command creates a new atom, -pair, bond, -angle, dihedral, -improper, kspace, -fix, compute, or run style. -If the variant version does not exist, the standard version is -created.

-

For “hybrid”, two packages are specified. The first is used whenever -available. If a style with the first suffix is not available, the style -with the suffix for the second package will be used if available. For -example, “hybrid intel omp” will use styles from the USER-INTEL package -as a first choice and styles from the USER-OMP package as a second choice -if no USER-INTEL variant is available.

-

If the specified style is off, then any previously specified suffix -is temporarily disabled, whether it was specified by a command-line -switch or a previous suffix command. If the specified style is on, -a disabled suffix is turned back on. The use of these 2 commands lets -your input script use a standard LAMMPS style (i.e. a non-accelerated -variant), which can be useful for testing or benchmarking purposes. -Of course this is also possible by not using any suffix commands, and -explictly appending or not appending the suffix to the relevant -commands in your input script.

-
-
-

Restrictions

-
-
none
-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/tad.html b/doc/tad.html deleted file mode 100644 index 440a18de7c..0000000000 --- a/doc/tad.html +++ /dev/null @@ -1,463 +0,0 @@ - - - - - - - - - - - tad command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

tad command

-
-

Syntax

-
tad N t_event T_lo T_hi delta tmax compute-ID keyword value ...
-
-
-
    -
  • N = # of timesteps to run (not including dephasing/quenching)
  • -
  • t_event = timestep interval between event checks
  • -
  • T_lo = temperature at which event times are desired
  • -
  • T_hi = temperature at which MD simulation is performed
  • -
  • delta = desired confidence level for stopping criterion
  • -
  • tmax = reciprocal of lowest expected preexponential factor (time units)
  • -
  • compute-ID = ID of the compute used for event detection
  • -
  • zero or more keyword/value pairs may be appended
  • -
  • keyword = min or neb or min_style or neb_style or neb_log
  • -
-
-min values = etol ftol maxiter maxeval
-  etol = stopping tolerance for energy (energy units)
-  ftol = stopping tolerance for force (force units)
-  maxiter = max iterations of minimize
-  maxeval = max number of force/energy evaluations
-neb values = ftol N1 N2 Nevery
-  etol = stopping tolerance for energy (energy units)
-  ftol = stopping tolerance for force (force units)
-  N1 = max # of iterations (timesteps) to run initial NEB
-  N2 = max # of iterations (timesteps) to run barrier-climbing NEB
-  Nevery = print NEB statistics every this many timesteps
-neb_style value = quickmin or fire
-neb_step value = dtneb
-  dtneb = timestep for NEB damped dynamics minimization
-neb_log value = file where NEB statistics are printed
-
-
-
-

Examples

-
tad 2000 50 1800 2300 0.01 0.01 event
-tad 2000 50 1800 2300 0.01 0.01 event &
-    min 1e-05 1e-05 100 100 &
-    neb 0.0 0.01 200 200 20 &
-    min_style cg &
-    neb_style fire &
-    neb_log log.neb
-
-
-
-
-

Description

-

Run a temperature accelerated dynamics (TAD) simulation. This method -requires two or more partitions to perform NEB transition state -searches.

-

TAD is described in this paper by Art Voter. It is a method -that uses accelerated dynamics at an elevated temperature to generate -results at a specified lower temperature. A good overview of -accelerated dynamics methods for such systems is given in this review paper from the same group. In general, these methods assume -that the long-time dynamics is dominated by infrequent events i.e. the -system is is confined to low energy basins for long periods, -punctuated by brief, randomly-occurring transitions to adjacent -basins. TAD is suitable for infrequent-event systems, where in -addition, the transition kinetics are well-approximated by harmonic -transition state theory (hTST). In hTST, the temperature dependence of -transition rates follows the Arrhenius relation. As a consequence a -set of event times generated in a high-temperature simulation can be -mapped to a set of much longer estimated times in the low-temperature -system. However, because this mapping involves the energy barrier of -the transition event, which is different for each event, the first -event at the high temperature may not be the earliest event at the low -temperature. TAD handles this by first generating a set of possible -events from the current basin. After each event, the simulation is -reflected backwards into the current basin. This is repeated until -the stopping criterion is satisfied, at which point the event with the -earliest low-temperature occurrence time is selected. The stopping -criterion is that the confidence measure be greater than -1-delta. The confidence measure is the probability that no earlier -low-temperature event will occur at some later time in the -high-temperature simulation. hTST provides an lower bound for this -probability, based on the user-specified minimum pre-exponential -factor (reciprocal of tmax).

-

In order to estimate the energy barrier for each event, the TAD method -invokes the NEB method. Each NEB replica runs on a -partition of processors. The current NEB implementation in LAMMPS -restricts you to having exactly one processor per replica. For more -information, see the documentation for the neb command. In -the current LAMMPS implementation of TAD, all the non-NEB TAD -operations are performed on the first partition, while the other -partitions remain idle. See Section_howto 5 of the manual for further discussion of -multi-replica simulations.

-

A TAD run has several stages, which are repeated each time an event is -performed. The logic for a TAD run is as follows:

-
while (time remains):
-  while (time < tstop):
-    until (event occurs):
-      run dynamics for t_event steps
-      quench
-    run neb calculation using all replicas
-    compute tlo from energy barrier
-    update earliest event
-    update tstop
-    reflect back into current basin
-  execute earliest event
-
-
-

Before this outer loop begins, the initial potential energy basin is -identified by quenching (an energy minimization, see below) the -initial state and storing the resulting coordinates for reference.

-

Inside the inner loop, dynamics is run continuously according to -whatever integrator has been specified by the user, stopping every -t_event steps to check if a transition event has occurred. This -check is performed by quenching the system and comparing the resulting -atom coordinates to the coordinates from the previous basin.

-

A quench is an energy minimization and is performed by whichever -algorithm has been defined by the min_style command; -its default is the CG minimizer. The tolerances and limits for each -quench can be set by the min keyword. Note that typically, you do -not need to perform a highly-converged minimization to detect a -transition event.

-

The event check is performed by a compute with the specified -compute-ID. Currently there is only one compute that works with the -TAD commmand, which is the compute event/displace command. Other -event-checking computes may be added. Compute event/displace checks whether any atom in -the compute group has moved further than a specified threshold -distance. If so, an “event” has occurred.

-

The NEB calculation is similar to that invoked by the neb -command, except that the final state is generated internally, instead -of being read in from a file. The style of minimization performed by -NEB is determined by the neb_style keyword and must be a damped -dynamics minimizer. The tolerances and limits for each NEB -calculation can be set by the neb keyword. As discussed on the -neb, it is often advantageous to use a larger timestep for -NEB than for normal dyanmics. Since the size of the timestep set by -the timestep command is used by TAD for performing -dynamics, there is a neb_step keyword which can be used to set a -larger timestep for each NEB calculation if desired.

-
-

A key aspect of the TAD method is setting the stopping criterion -appropriately. If this criterion is too conservative, then many -events must be generated before one is finally executed. Conversely, -if this criterion is too aggressive, high-entropy high-barrier events -will be over-sampled, while low-entropy low-barrier events will be -under-sampled. If the lowest pre-exponential factor is known fairly -accurately, then it can be used to estimate tmax, and the value of -delta can be set to the desired confidence level e.g. delta = 0.05 -corresponds to 95% confidence. However, for systems where the dynamics -are not well characterized (the most common case), it will be -necessary to experiment with the values of delta and tmax to get a -good trade-off between accuracy and performance.

-

A second key aspect is the choice of t_hi. A larger value greatly -increases the rate at which new events are generated. However, too -large a value introduces errors due to anharmonicity (not accounted -for within hTST). Once again, for any given system, experimentation is -necessary to determine the best value of t_hi.

-
-

Five kinds of output can be generated during a TAD run: event -statistics, NEB statistics, thermodynamic output by each replica, dump -files, and restart files.

-

Event statistics are printed to the screen and master log.lammps file -each time an event is executed. The quantities are the timestep, CPU -time, global event number N, local event number M, event status, -energy barrier, time margin, t_lo and delt_lo. The timestep is -the usual LAMMPS timestep, which corresponds to the high-temperature -time at which the event was detected, in units of timestep. The CPU -time is the total processor time since the start of the TAD run. The -global event number N is a counter that increments with each -executed event. The local event number M is a counter that resets to -zero upon entering each new basin. The event status is E when an -event is executed, and is D for an event that is detected, while -DF is for a detected event that is also the earliest (first) event -at the low temperature.

-

The time margin is the ratio of the high temperature time in the -current basin to the stopping time. This last number can be used to -judge whether the stopping time is too short or too long (see above).

-

t_lo is the low-temperature event time when the current basin was -entered, in units of timestep. del*t_lo* is the time of each detected -event, measured relative to t_lo. delt_lo is equal to the -high-temperature time since entering the current basin, scaled by an -exponential factor that depends on the hi/lo temperature ratio and the -energy barrier for that event.

-

On lines for executed events, with status E, the global event number -is incremented by one, -the local event number and time margin are reset to zero, -while the global event number, energy barrier, and -delt_lo match the last event with status DF -in the immediately preceding block of detected events. -The low-temperature event time t_lo is incremented by delt_lo.

-

NEB statistics are written to the file specified by the neb_log -keyword. If the keyword value is “none”, then no NEB statistics are -printed out. The statistics are written every Nevery timesteps. See -the neb command for a full description of the NEB -statistics. When invoked from TAD, NEB statistics are never printed to -the screen.

-

Because the NEB calculation must run on multiple partitions, LAMMPS -produces additional screen and log files for each partition, -e.g. log.lammps.0, log.lammps.1, etc. For the TAD command, these -contain the thermodynamic output of each NEB replica. In addition, the -log file for the first partition, log.lammps.0, will contain -thermodynamic output from short runs and minimizations corresponding -to the dynamics and quench operations, as well as a line for each new -detected event, as described above.

-

After the TAD command completes, timing statistics for the TAD run are -printed in each replica’s log file, giving a breakdown of how much CPU -time was spent in each stage (NEB, dynamics, quenching, etc).

-

Any dump files defined in the input script will be written -to during a TAD run at timesteps when an event is executed. This -means the the requested dump frequency in the dump command -is ignored. There will be one dump file (per dump command) created -for all partitions. The atom coordinates of the dump snapshot are -those of the minimum energy configuration resulting from quenching -following the executed event. The timesteps written into the dump -files correspond to the timestep at which the event occurred and NOT -the clock. A dump snapshot corresponding to the initial minimum state -used for event detection is written to the dump file at the beginning -of each TAD run.

-

If the restart command is used, a single restart file -for all the partitions is generated, which allows a TAD run to be -continued by a new input script in the usual manner. The restart file -is generated after an event is executed. The restart file contains a -snapshot of the system in the new quenched state, including the event -number and the low-temperature time. The restart frequency specified -in the restart command is interpreted differently when -performing a TAD run. It does not mean the timestep interval between -restart files. Instead it means an event interval for executed -events. Thus a frequency of 1 means write a restart file every time -an event is executed. A frequency of 10 means write a restart file -every 10th executed event. When an input script reads a restart file -from a previous TAD run, the new script can be run on a different -number of replicas or processors.

-

Note that within a single state, the dynamics will typically -temporarily continue beyond the event that is ultimately chosen, until -the stopping criterionis satisfied. When the event is eventually -executed, the timestep counter is reset to the value when the event -was detected. Similarly, after each quench and NEB minimization, the -timestep counter is reset to the value at the start of the -minimization. This means that the timesteps listed in the replica log -files do not always increase monotonically. However, the timestep -values printed to the master log file, dump files, and restart files -are always monotonically increasing.

-
-
-
-

Restrictions

-

This command can only be used if LAMMPS was built with the REPLICA -package. See the Making LAMMPS section -for more info on packages.

-

N setting must be integer multiple of t_event.

-

Runs restarted from restart files written during a TAD run will only -produce identical results if the user-specified integrator supports -exact restarts. So fix nvt will produce an exact -restart, but fix langevin will not.

-

This command cannot be used when any fixes are defined that keep track -of elapsed time to perform time-dependent operations. Examples -include the “ave” fixes such as fix ave/spatial. Also fix dt/reset and fix deposit.

-
- -
-

Default

-

The option defaults are min = 0.1 0.1 40 50, neb = 0.01 100 100 -10, neb_style = quickmin, neb_step = the same timestep set by -the timestep command, and neb_log = “none”.

-
-

(Voter) Sorensen and Voter, J Chem Phys, 112, 9599 (2000)

-

(Voter2) Voter, Montalenti, Germann, Annual Review of Materials -Research 32, 321 (2002).

-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/temper.html b/doc/temper.html deleted file mode 100644 index 4719db1d4c..0000000000 --- a/doc/temper.html +++ /dev/null @@ -1,330 +0,0 @@ - - - - - - - - - - - temper command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

temper command

-
-

Syntax

-
temper N M temp fix-ID seed1 seed2 index
-
-
-
    -
  • N = total # of timesteps to run
  • -
  • M = attempt a tempering swap every this many steps
  • -
  • temp = initial temperature for this ensemble
  • -
  • fix-ID = ID of the fix that will control temperature during the run
  • -
  • seed1 = random # seed used to decide on adjacent temperature to partner with
  • -
  • seed2 = random # seed for Boltzmann factor in Metropolis swap
  • -
  • index = which temperature (0 to N-1) I am simulating (optional)
  • -
-
-
-

Examples

-
temper 100000 100 $t tempfix 0 58728
-temper 40000 100 $t tempfix 0 32285 $w
-
-
-
-
-

Description

-

Run a parallel tempering or replica exchange simulation using multiple -replicas (ensembles) of a system. Two or more replicas must be used.

-

Each replica runs on a partition of one or more processors. Processor -partitions are defined at run-time using the -partition command-line -switch; see Section_start 6 of the -manual. Note that if you have MPI installed, you can run a -multi-replica simulation with more replicas (partitions) than you have -physical processors, e.g you can run a 10-replica simulation on one or -two processors. You will simply not get the performance speed-up you -would see with one or more physical processors per replica. See this section of the manual for further -discussion.

-

Each replica’s temperature is controlled at a different value by a fix -with fix-ID that controls temperature. Most thermostat fix styles -(with and without included time integration) are supported. The command -will print an error message and abort, if the chosen fix is unsupported. -The desired temperature is specified by temp, which is typically a -variable previously set in the input script, so that each partition is -assigned a different temperature. See the variable -command for more details. For example:

-
variable t world 300.0 310.0 320.0 330.0
-fix myfix all nvt temp $t $t 100.0
-temper 100000 100 $t myfix 3847 58382
-
-
-

would define 4 temperatures, and assign one of them to the thermostat -used by each replica, and to the temper command.

-

As the tempering simulation runs for N timesteps, a temperature swap -between adjacent ensembles will be attempted every M timesteps. If -seed1 is 0, then the swap attempts will alternate between odd and -even pairings. If seed1 is non-zero then it is used as a seed in a -random number generator to randomly choose an odd or even pairing each -time. Each attempted swap of temperatures is either accepted or -rejected based on a Boltzmann-weighted Metropolis criterion which uses -seed2 in the random number generator.

-

As a tempering run proceeds, multiple log files and screen output -files are created, one per replica. By default these files are named -log.lammps.M and screen.M where M is the replica number from 0 to N-1, -with N = # of replicas. See the section on command-line switches for info on how to change these -names.

-

The main screen and log file (log.lammps) will list information about -which temperature is assigned to each replica at each thermodynamic -output timestep. E.g. for a simulation with 16 replicas:

-
Running on 16 partitions of processors
-Step T0 T1 T2 T3 T4 T5 T6 T7 T8 T9 T10 T11 T12 T13 T14 T15
-0    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
-500  1 0 3 2 5 4 6 7 8 9 10 11 12 13 14 15
-1000 2 0 4 1 5 3 6 7 8 9 10 11 12 14 13 15
-1500 2 1 4 0 5 3 6 7 9 8 10 11 12 14 13 15
-2000 2 1 3 0 6 4 5 7 10 8 9 11 12 14 13 15
-2500 2 1 3 0 6 4 5 7 11 8 9 10 12 14 13 15
-...
-
-
-

The column headings T0 to TN-1 mean which temperature is currently -assigned to the replica 0 to N-1. Thus the columns represent replicas -and the value in each column is its temperature (also numbered 0 to -N-1). For example, a 0 in the 4th column (column T3, step 2500) means -that the 4th replica is assigned temperature 0, i.e. the lowest -temperature. You can verify this time sequence of temperature -assignments for the Nth replica by comparing the Nth column of screen -output to the thermodynamic data in the corresponding log.lammps.N or -screen.N files as time proceeds.

-

You can have each replica create its own dump file in the following -manner:

-
variable rep world 0 1 2 3 4 5 6 7
-dump 1 all atom 1000 dump.temper.$*rep*
-
-
-
-

Note

-

Each replica’s dump file will contain a continuous trajectory -for its atoms where the temperature varies over time as swaps take -place involving that replica. If you want a series of dump files, -each with snapshots (from all replicas) that are all at a single -temperature, then you will need to post-process the dump files using -the information from the log.lammps file. E.g. you could produce one -dump file with snapshots at 300K (from all replicas), another with -snapshots at 310K, etc. Note that these new dump files will not -contain “continuous trajectories” for individual atoms, because two -successive snapshots (in time) may be from different replicas.

-
-

The last argument index in the temper command is optional and is -used when restarting a tempering run from a set of restart files (one -for each replica) which had previously swapped to new temperatures. -The index value (from 0 to N-1, where N is the # of replicas) -identifies which temperature the replica was simulating on the -timestep the restart files were written. Obviously, this argument -must be a variable so that each partition has the correct value. Set -the variable to the N values listed in the log file for the previous -run for the replica temperatures at that timestep. For example if the -log file listed the following for a simulation with 5 replicas:

-
500000 2 4 0 1 3
-
-
-

then a setting of

-
variable w world 2 4 0 1 3
-
-
-

would be used to restart the run with a tempering command like the -example above with $w as the last argument.

-
-
-
-

Restrictions

-

This command can only be used if LAMMPS was built with the REPLICA -package. See the Making LAMMPS section -for more info on packages.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/thermo.html b/doc/thermo.html deleted file mode 100644 index 77eb4ad57d..0000000000 --- a/doc/thermo.html +++ /dev/null @@ -1,249 +0,0 @@ - - - - - - - - - - - thermo command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

thermo command

-
-

Syntax

-
thermo N
-
-
-
    -
  • N = output thermodynamics every N timesteps
  • -
  • N can be a variable (see below)
  • -
-
-
-

Examples

-
thermo 100
-
-
-
-
-

Description

-

Compute and print thermodynamic info (e.g. temperature, energy, -pressure) on timesteps that are a multiple of N and at the beginning -and end of a simulation. A value of 0 will only print thermodynamics -at the beginning and end.

-

The content and format of what is printed is controlled by the -thermo_style and -thermo_modify commands.

-

Instead of a numeric value, N can be specifed as an equal-style variable, which should be specified as v_name, where -name is the variable name. In this case, the variable is evaluated at -the beginning of a run to determine the next timestep at which -thermodynamic info will be written out. On that timestep, the -variable will be evaluated again to determine the next timestep, etc. -Thus the variable should return timestep values. See the stagger() -and logfreq() and stride() math functions for equal-style variables, as examples of useful functions to use in -this context. Other similar math functions could easily be added as -options for equal-style variables.

-

For example, the following commands will output thermodynamic info at -timesteps 0,10,20,30,100,200,300,1000,2000,etc:

-
variable     s equal logfreq(10,3,10)
-thermo               v_s
-
-
-
-
-

Restrictions

-
-
none
-
- -
-

Default

-
thermo 0
-
-
-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/thermo_modify.html b/doc/thermo_modify.html deleted file mode 100644 index d1807aad74..0000000000 --- a/doc/thermo_modify.html +++ /dev/null @@ -1,354 +0,0 @@ - - - - - - - - - - - thermo_modify command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

thermo_modify command

-
-

Syntax

-
thermo_modify keyword value ...
-
-
-
    -
  • one or more keyword/value pairs may be listed
  • -
-
-keyword = lost or lost/bond or norm or flush or line or format or temp or press:l
-  lost value = error or warn or ignore
-  lost/bond value = error or warn or ignore
-  norm value = yes or no
-  flush value = yes or no
-  line value = one or multi
-  format values = int string or float string or M string
-    M = integer from 1 to N, where N = # of quantities being printed
-    string = C-style format string
-  temp value = compute ID that calculates a temperature
-  press value = compute ID that calculates a pressure
-
-
-
-

Examples

-
thermo_modify lost ignore flush yes
-thermo_modify temp myTemp format 3 %15.8g
-thermo_modify line multi format float %g
-
-
-
-
-

Description

-

Set options for how thermodynamic information is computed and printed -by LAMMPS.

-
-

Note

-

These options apply to the currently defined thermo style. When -you specify a thermo_style command, all -thermodynamic settings are restored to their default values, including -those previously reset by a thermo_modify command. Thus if your input -script specifies a thermo_style command, you should use the -thermo_modify command after it.

-
-

The lost keyword determines whether LAMMPS checks for lost atoms -each time it computes thermodynamics and what it does if atoms are -lost. An atom can be “lost” if it moves across a non-periodic -simulation box boundary or if it moves more than a box -length outside the simulation domain (or more than a processor -sub-domain length) before reneighboring occurs. The latter case is -typically due to bad dynamics, e.g. too large a timestep or huge -forces and velocities. If the value is ignore, LAMMPS does not -check for lost atoms. If the value is error or warn, LAMMPS -checks and either issues an error or warning. The code will exit with -an error and continue with a warning. A warning will only be issued -once, the first time an atom is lost. This can be a useful debugging -option.

-

The lost/bond keyword determines whether LAMMPS throws an error or -not if an atom in a bonded interaction (bond, angle, etc) cannot be -found when it creates bonded neighbor lists. By default this is a -fatal error. However in some scenarios it may be desirable to only -issue a warning or ignore it and skip the computation of the missing -bond, angle, etc. An example would be when gas molecules in a vapor -are drifting out of the box through a fixed boundary condition (see -the boundary command). In this case one atom may be -deleted before the rest of the molecule is, on a later timestep.

-

The norm keyword determines whether various thermodynamic output -values are normalized by the number of atoms or not, depending on -whether it is set to yes or no. Different unit styles have -different defaults for this setting (see below). Even if norm is -set to yes, a value is only normalized if it is an “extensive” -quantity, meaning that it scales with the number of atoms in the -system. For the thermo keywords described by the doc page for the -thermo_style command, all energy-related keywords -are extensive, such as pe or ebond or enthalpy. Other keywords -such as temp or press are “intensive” meaning their value is -independent (in a statistical sense) of the number of atoms in the -system and thus are never normalized. For thermodynamic output values -extracted from fixes and computes in a thermo_style custom command, the doc page for the individual -fix or compute lists whether the value is -“extensive” or “intensive” and thus whether it is normalized. -Thermodynamic output values calculated by a variable formula are -assumed to be “intensive” and thus are never normalized. You can -always include a divide by the number of atoms in the variable formula -if this is not the case.

-

The flush keyword invokes a flush operation after thermodynamic info -is written to the log file. This insures the output in that file is -current (no buffering by the OS), even if LAMMPS halts before the -simulation completes.

-

The line keyword determines whether thermodynamics will be printed -as a series of numeric values on one line or in a multi-line format -with 3 quantities with text strings per line and a dashed-line header -containing the timestep and CPU time. This modify option overrides -the one and multi thermo_style settings.

-

The format keyword sets the numeric format of individual printed -quantities. The int and float keywords set the format for all -integer or floating-point quantities printed. The setting with a -numeric value M (e.g. format 5 %10.4g) sets the format of the Mth -value printed in each output line, e.g. the 5th column of output in -this case. If the format for a specific column has been set, it will -take precedent over the int or float setting.

-
-

Note

-

The thermo output values step and atoms are stored -internally as 8-byte signed integers, rather than the usual 4-byte -signed integers. When specifying the “format int” keyword you can use -a “%d”-style format identifier in the format string and LAMMPS will -convert this to the corresponding “%lu” form when it is applied to -those keywords. However, when specifying the “format M string” -keyword for step and natoms, you should specify a string -appropriate for an 8-byte signed integer, e.g. one with “%ld”.

-
-

The temp keyword is used to determine how thermodynamic temperature -is calculated, which is used by all thermo quantities that require a -temperature (“temp”, “press”, “ke”, “etotal”, “enthalpy”, “pxx”, etc). -The specified compute ID must have been previously defined by the user -via the compute command and it must be a style of -compute that calculates a temperature. As described in the -thermo_style command, thermo output uses a default -compute for temperature with ID = thermo_temp. This option allows -the user to override the default.

-

The press keyword is used to determine how thermodynamic pressure is -calculated, which is used by all thermo quantities that require a -pressure (“press”, “enthalpy”, “pxx”, etc). The specified compute ID -must have been previously defined by the user via the -compute command and it must be a style of compute that -calculates a pressure. As described in the -thermo_style command, thermo output uses a default -compute for pressure with ID = thermo_press. This option allows the -user to override the default.

-
-

Note

-

If both the temp and press keywords are used in a single -thermo_modify command (or in two separate commands), then the order in -which the keywords are specified is important. Note that a pressure compute defines its own temperature compute as -an argument when it is specified. The temp keyword will override -this (for the pressure compute being used by thermodynamics), but only -if the temp keyword comes after the press keyword. If the temp -keyword comes before the press keyword, then the new pressure -compute specified by the press keyword will be unaffected by the -temp setting.

-
-
-
-

Restrictions

-
-
none
-
- -
-

Default

-

The option defaults are lost = error, norm = yes for unit style of -lj, norm = no for unit style of real and metal, flush = no, -and temp/press = compute IDs defined by thermo_style.

-

The defaults for the line and format options depend on the thermo -style. For styles “one” and “custom”, the line and format defaults -are “one”, “%8d”, and “%12.8g”. For style “multi”, the line and -format defaults are “multi”, “%8d”, and “%14.4f”.

-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/thermo_style.html b/doc/thermo_style.html deleted file mode 100644 index 0ab91e7b40..0000000000 --- a/doc/thermo_style.html +++ /dev/null @@ -1,521 +0,0 @@ - - - - - - - - - - - thermo_style command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

thermo_style command

-
-

Syntax

-
thermo_style style args
-
-
-
    -
  • style = one or multi or custom
  • -
  • args = list of arguments for a particular style
  • -
-
-one args = none
-multi args = none
-custom args = list of keywords
-  possible keywords = step, elapsed, elaplong, dt, time,
-                      cpu, tpcpu, spcpu, cpuremain, part,
-                      atoms, temp, press, pe, ke, etotal, enthalpy,
-                      evdwl, ecoul, epair, ebond, eangle, edihed, eimp,
-                      emol, elong, etail,
-                      vol, density, lx, ly, lz, xlo, xhi, ylo, yhi, zlo, zhi,
-                   xy, xz, yz, xlat, ylat, zlat,
-                      bonds, angles, dihedrals, impropers,
-                   pxx, pyy, pzz, pxy, pxz, pyz,
-                   fmax, fnorm, nbuild, ndanger,
-                   cella, cellb, cellc, cellalpha, cellbeta, cellgamma,
-                   c_ID, c_ID[I], c_ID[I][J],
-                      f_ID, f_ID[I], f_ID[I][J],
-                      v_name, v_name[I]
-    step = timestep
-    elapsed = timesteps since start of this run
-    elaplong = timesteps since start of initial run in a series of runs
-    dt = timestep size
-    time = simulation time
-    cpu = elapsed CPU time in seconds
-    tpcpu = time per CPU second
-    spcpu = timesteps per CPU second
-    cpuremain = estimated CPU time remaining in run
-    part = which partition (0 to Npartition-1) this is
-    atoms = # of atoms
-    temp = temperature
-    press = pressure
-    pe = total potential energy
-    ke = kinetic energy
-    etotal = total energy (pe + ke)
-    enthalpy = enthalpy (etotal + press*vol)
-    evdwl = VanderWaal pairwise energy (includes etail)
-    ecoul = Coulombic pairwise energy
-    epair = pairwise energy (evdwl + ecoul + elong)
-    ebond = bond energy
-    eangle = angle energy
-    edihed = dihedral energy
-    eimp = improper energy
-    emol = molecular energy (ebond + eangle + edihed + eimp)
-    elong = long-range kspace energy
-    etail = VanderWaal energy long-range tail correction
-    vol = volume
-    density = mass density of system
-    lx,ly,lz = box lengths in x,y,z
-    xlo,xhi,ylo,yhi,zlo,zhi = box boundaries
-    xy,xz,yz = box tilt for triclinic (non-orthogonal) simulation boxes
-    xlat,ylat,zlat = lattice spacings as calculated by lattice command
-    bonds,angles,dihedrals,impropers = # of these interactions defined
-    pxx,pyy,pzz,pxy,pxz,pyz = 6 components of pressure tensor
-    fmax = max component of force on any atom in any dimension
-    fnorm = length of force vector for all atoms
-    nbuild = # of neighbor list builds
-    ndanger = # of dangerous neighbor list builds
-    cella,cellb,cellc = periodic cell lattice constants a,b,c
-    cellalpha, cellbeta, cellgamma = periodic cell angles alpha,beta,gamma
-    c_ID = global scalar value calculated by a compute with ID
-    c_ID[I] = Ith component of global vector calculated by a compute with ID
-    c_ID[I][J] = I,J component of global array calculated by a compute with ID
-    f_ID = global scalar value calculated by a fix with ID
-    f_ID[I] = Ith component of global vector calculated by a fix with ID
-    f_ID[I][J] = I,J component of global array calculated by a fix with ID
-    v_name = value calculated by an equal-style variable with name
-    v_name[I] = value calculated by a vector-style variable with name
-
-
-
-

Examples

-
thermo_style multi
-thermo_style custom step temp pe etotal press vol
-thermo_style custom step temp etotal c_myTemp v_abc
-
-
-
-
-

Description

-

Set the style and content for printing thermodynamic data to the -screen and log file.

-

Style one prints a one-line summary of thermodynamic info that is -the equivalent of “thermo_style custom step temp epair emol etotal -press”. The line contains only numeric values.

-

Style multi prints a multiple-line listing of thermodynamic info -that is the equivalent of “thermo_style custom etotal ke temp pe ebond -eangle edihed eimp evdwl ecoul elong press”. The listing contains -numeric values and a string ID for each quantity.

-

Style custom is the most general setting and allows you to specify -which of the keywords listed above you want printed on each -thermodynamic timestep. Note that the keywords c_ID, f_ID, v_name are -references to computes, fixes, and -equal-style variables that have been defined -elsewhere in the input script or can even be new styles which users -have added to LAMMPS (see the Section_modify -section of the documentation). Thus the custom style provides a -flexible means of outputting essentially any desired quantity as a -simulation proceeds.

-

All styles except custom have vol appended to their list of -outputs if the simulation box volume changes during the simulation.

-

The values printed by the various keywords are instantaneous values, -calculated on the current timestep. Time-averaged quantities, which -include values from previous timesteps, can be output by using the -f_ID keyword and accessing a fix that does time-averaging such as the -fix ave/time command.

-

Options invoked by the thermo_modify command can -be used to set the one- or multi-line format of the print-out, the -normalization of thermodynamic output (total values versus per-atom -values for extensive quantities (ones which scale with the number of -atoms in the system), and the numeric precision of each printed value.

-
-

Note

-

When you use a “thermo_style” command, all thermodynamic -settings are restored to their default values, including those -previously set by a thermo_modify command. Thus -if your input script specifies a thermo_style command, you should use -the thermo_modify command after it.

-
-
-

Several of the thermodynamic quantities require a temperature to be -computed: “temp”, “press”, “ke”, “etotal”, “enthalpy”, “pxx”, etc. By -default this is done by using a temperature compute which is created -when LAMMPS starts up, as if this command had been issued:

-
compute thermo_temp all temp
-
-
-

See the compute temp command for details. Note -that the ID of this compute is thermo_temp and the group is all. -You can change the attributes of this temperature (e.g. its -degrees-of-freedom) via the compute_modify -command. Alternatively, you can directly assign a new compute (that -calculates temperature) which you have defined, to be used for -calculating any thermodynamic quantity that requires a temperature. -This is done via the thermo_modify command.

-

Several of the thermodynamic quantities require a pressure to be -computed: “press”, “enthalpy”, “pxx”, etc. By default this is done by -using a pressure compute which is created when LAMMPS starts up, as -if this command had been issued:

-
compute thermo_press all pressure thermo_temp
-
-
-

See the compute pressure command for details. -Note that the ID of this compute is thermo_press and the group is -all. You can change the attributes of this pressure via the -compute_modify command. Alternatively, you can -directly assign a new compute (that calculates pressure) which you -have defined, to be used for calculating any thermodynamic quantity -that requires a pressure. This is done via the -thermo_modify command.

-

Several of the thermodynamic quantities require a potential energy to -be computed: “pe”, “etotal”, “ebond”, etc. This is done by using a -pe compute which is created when LAMMPS starts up, as if this -command had been issued:

-
compute thermo_pe all pe
-
-
-

See the compute pe command for details. Note that -the ID of this compute is thermo_pe and the group is all. You can -change the attributes of this potential energy via the -compute_modify command.

-
-

The kinetic energy of the system ke is inferred from the temperature -of the system with 1/2 Kb T of energy for each degree of freedom. -Thus, using different compute commands for calculating -temperature, via the thermo_modify temp command, -may yield different kinetic energies, since different computes that -calculate temperature can subtract out different non-thermal -components of velocity and/or include different degrees of freedom -(translational, rotational, etc).

-

The potential energy of the system pe will include contributions -from fixes if the fix_modify thermo option is set -for a fix that calculates such a contribution. For example, the fix wall/lj93 fix calculates the energy of atoms -interacting with the wall. See the doc pages for “individual fixes” -to see which ones contribute.

-

A long-range tail correction etail for the VanderWaal pairwise -energy will be non-zero only if the pair_modify tail option is turned on. The etail contribution -is included in evdwl, epair, pe, and etotal, and the -corresponding tail correction to the pressure is included in press -and pxx, pyy, etc.

-
-

The step, elapsed, and elaplong keywords refer to timestep -count. Step is the current timestep, or iteration count when a -minimization is being performed. Elapsed is the -number of timesteps elapsed since the beginning of this run. -Elaplong is the number of timesteps elapsed since the beginning of -an initial run in a series of runs. See the start and stop -keywords for the run for info on how to invoke a series of -runs that keep track of an initial starting time. If these keywords -are not used, then elapsed and elaplong are the same value.

-

The dt keyword is the current timestep size in time -units. The time keyword is the current elapsed -simulation time, also in time units, which is simply -(step*dt) if the timestep size has not changed and the timestep has -not been reset. If the timestep has changed (e.g. via fix dt/reset) or the timestep has been reset (e.g. via -the “reset_timestep” command), then the simulation time is effectively -a cummulative value up to the current point.

-

The cpu keyword is elapsed CPU seconds since the beginning of this -run. The tpcpu and spcpu keywords are measures of how fast your -simulation is currently running. The tpcpu keyword is simulation -time per CPU second, where simulation time is in time -units. E.g. for metal units, the tpcpu value would be -picoseconds per CPU second. The spcpu keyword is the number of -timesteps per CPU second. Both quantities are on-the-fly metrics, -measured relative to the last time they were invoked. Thus if you are -printing out thermodyamic output every 100 timesteps, the two keywords -will continually output the time and timestep rate for the last 100 -steps. The tpcpu keyword does not attempt to track any changes in -timestep size, e.g. due to using the fix dt/reset -command.

-

The cpuremain keyword estimates the CPU time remaining in the -current run, based on the time elapsed thus far. It will only be a -good estimate if the CPU time/timestep for the rest of the run is -similar to the preceding timesteps. On the initial timestep the value -will be 0.0 since there is no history to estimate from. For a -minimization run performed by the “minimize” command, the estimate is -based on the maxiter parameter, assuming the minimization will -proceed for the maximum number of allowed iterations.

-

The part keyword is useful for multi-replica or multi-partition -simulations to indicate which partition this output and this file -corresponds to, or for use in a variable to append to -a filename for output specific to this partition. See Section_start 7 of the manual for details on running in -multi-partition mode.

-

The fmax and fnorm keywords are useful for monitoring the progress -of an energy minimization. The fmax keyword -calculates the maximum force in any dimension on any atom in the -system, or the infinity-norm of the force vector for the system. The -fnorm keyword calculates the 2-norm or length of the force vector.

-

The nbuild and ndanger keywords are useful for monitoring neighbor -list builds during a run. Note that both these values are also -printed with the end-of-run statistics. The nbuild keyword is the -number of re-builds during the current run. The ndanger keyword is -the number of re-builds that LAMMPS considered potentially -“dangerous”. If atom movement triggered neighbor list rebuilding (see -the neigh_modify command), then dangerous -reneighborings are those that were triggered on the first timestep -atom movement was checked for. If this count is non-zero you may wish -to reduce the delay factor to insure no force interactions are missed -by atoms moving beyond the neighbor skin distance before a rebuild -takes place.

-

The keywords cella, cellb, cellc, cellalpha, cellbeta, -cellgamma, correspond to the usual crystallographic quantities that -define the periodic unit cell of a crystal. See this section of the doc pages for a geometric -description of triclinic periodic cells, including a precise defintion -of these quantities in terms of the internal LAMMPS cell dimensions -lx, ly, lz, yz, xz, xy.

-
-

The c_ID and c_ID[I] and c_ID[I][J] keywords allow global -values calculated by a compute to be output. As discussed on the -compute doc page, computes can calculate global, -per-atom, or local values. Only global values can be referenced by -this command. However, per-atom compute values can be referenced in a -variable and the variable referenced by thermo_style -custom, as discussed below.

-

The ID in the keyword should be replaced by the actual ID of a compute -that has been defined elsewhere in the input script. See the -compute command for details. If the compute calculates -a global scalar, vector, or array, then the keyword formats with 0, 1, -or 2 brackets will reference a scalar value from the compute.

-

Note that some computes calculate “intensive” global quantities like -temperature; others calculate “extensive” global quantities like -kinetic energy that are summed over all atoms in the compute group. -Intensive quantities are printed directly without normalization by -thermo_style custom. Extensive quantities may be normalized by the -total number of atoms in the simulation (NOT the number of atoms in -the compute group) when output, depending on the thermo_modify norm option being used.

-

The f_ID and f_ID[I] and f_ID[I][J] keywords allow global -values calculated by a fix to be output. As discussed on the -fix doc page, fixes can calculate global, per-atom, or -local values. Only global values can be referenced by this command. -However, per-atom fix values can be referenced in a -variable and the variable referenced by thermo_style -custom, as discussed below.

-

The ID in the keyword should be replaced by the actual ID of a fix -that has been defined elsewhere in the input script. See the -fix command for details. If the fix calculates a global -scalar, vector, or array, then the keyword formats with 0, 1, or 2 -brackets will reference a scalar value from the fix.

-

Note that some fixes calculate “intensive” global quantities like -timestep size; others calculate “extensive” global quantities like -energy that are summed over all atoms in the fix group. Intensive -quantities are printed directly without normalization by thermo_style -custom. Extensive quantities may be normalized by the total number of -atoms in the simulation (NOT the number of atoms in the fix group) -when output, depending on the thermo_modify norm -option being used.

-

The v_name keyword allow the current value of a variable to be -output. The name in the keyword should be replaced by the variable -name that has been defined elsewhere in the input script. Only -equal-style and vector-style variables can be referenced; the latter -requires a bracketed term to specify the Ith element of the vector -calculated by the variable. See the variable command -for details. Variables of style equal and vector define a formula -which can reference per-atom properties or thermodynamic keywords, or -they can invoke other computes, fixes, or variables when evaluated, so -this is a very general means of creating thermodynamic output.

-

Note that equal-style and vector-style variables are assumed to -produce “intensive” global quantities, which are thus printed as-is, -without normalization by thermo_style custom. You can include a -division by “natoms” in the variable formula if this is not the case.

-
-
-
-

Restrictions

-

This command must come after the simulation box is defined by a -read_data, read_restart, or -create_box command.

-
- -
-

Default

-
thermo_style one
-
-
-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/timer.html b/doc/timer.html deleted file mode 100644 index e73113e261..0000000000 --- a/doc/timer.html +++ /dev/null @@ -1,265 +0,0 @@ - - - - - - - - - - - timer command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

timer command

-
-

Syntax

-
timer args
-
-
-
    -
  • args = one or more of off or loop or normal or full or sync or nosync
  • -
-
-off = do not collect or print any timing information
-loop = collect only the total time for the simulation loop
-normal = collect timer information broken down by sections (default)
-full = like normal but also include CPU and thread utilzation
-sync = explicitly synchronize MPI tasks between sections
-nosync = do not synchronize MPI tasks between sections (default)
-
-
-
-

Examples

-
timer full sync
-timer loop
-
-
-
-
-

Description

-

Select the level of detail LAMMPS performs its CPU timings.

-

During a simulation run LAMMPS collects information about how much -time is spent in different sections of the code and thus can provide -valuable information for determining performance and load imbalance -problems. This can be done at different levels of detail and -accuracy. For more information about the timing output, see this -discussion of screen output.

-

The off setting will turn all time measurements off. The loop -setting will only measure the total time for a run and not collect any -detailed per section information. With the normal setting, timing -information for portions of the timestep (pairwise calculations, -neighbor list construction, output, etc) are collected as well as -information about load imbalances for those sections across -procsessors. The full setting adds information about CPU -utilization and thread utilization, when multi-threading is enabled.

-

With the sync setting, all MPI tasks are synchronized at each timer -call which meaures load imbalance more accuractly, though it can also -slow down the simulation. Using the nosync setting (which is the -default) turns off this synchronization.

-

Multiple keywords can be specified. For keywords that are mutually -exclusive, the last one specified takes effect.

-
-

Note

-

Using the full and sync options provides the most detailed -and accurate timing information, but can also have a negative -performance impact due to the overhead of the many required system -calls. It is thus recommended to use these settings only when testing -tests to identify performance bottlenecks. For calculations with few -atoms or a very large number of processors, even the normal setting -can have a measurable negative performance impact. In those cases you -can just use the loop or off setting.

-
-
-
-

Restrictions

-
-
none
-
- -
-

Default

-

timer normal nosync

-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/timestep.html b/doc/timestep.html deleted file mode 100644 index 3e3053bde4..0000000000 --- a/doc/timestep.html +++ /dev/null @@ -1,277 +0,0 @@ - - - - - - - - - - - timestep command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

timestep command

-
-

Syntax

-
timestep dt
-
-
-
    -
  • dt = timestep size (time units)
  • -
-
-
-

Examples

-
timestep 2.0
-timestep 0.003
-
-
-
-
-

Description

-

Set the timestep size for subsequent molecular dynamics simulations. -See the units command for the time units associated with -each choice of units that LAMMPS supports.

-

The default value for the timestep size also depends on the choice of -units for the simulation; see the default values below.

-

When the run style is respa, dt is the timestep for -the outer loop (largest) timestep.

-
-
-

Restrictions

-
-
none
-
- -
-

Default

- ----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
choice of unitstime unitsdefault timestep size
ljtau0.005 tau
realfmsec1.0 fmsec
metalpsec0.001 psec
sisec1.0e-8 sec (10 nsec)
cgssec1.0e-8 sec (10 nsec)
electronfmsec0.001 fmsec
microusec2.0 usec
nanonsec0.00045 nsec
-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/tutorial_drude.html b/doc/tutorial_drude.html deleted file mode 100644 index f45579662e..0000000000 --- a/doc/tutorial_drude.html +++ /dev/null @@ -1,595 +0,0 @@ - - - - - - - - - - - <no title> — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -

Overview of Drude induced dipoles

-

Polarizable atoms acquire an induced electric dipole moment under the -action of an external electric field, for example the electric field -created by the surrounding particles. Drude oscillators represent -these dipoles by two fixed charges: the core (DC) and the Drude -particle (DP) bound by a harmonic potential. The Drude particle can be -thought of as the electron cloud whose center can be displaced from -the position of the the corresponding nucleus.

-

The sum of the masses of a core-Drude pair should be the mass of the -initial (unsplit) atom, \(m_C + m_D = m\). The sum of their charges -should be the charge of the initial (unsplit) atom, \(q_C + q_D = q\). -A harmonic potential between the core and Drude partners should be -present, with force constant \(k_D\) and an equilibrium distance of -zero. The (half-)stiffness of the harmonic bond -\(K_D = k_D/2\) and the Drude charge \(q_D\) are related to the atom -polarizability \(\alpha\) by

-
-\[\begin{equation} K_D = \frac 1 2\, \frac {q_D^2} \alpha\end{equation}\]
-

Ideally, the mass of the Drude particle should be small, and the -stiffness of the harmonic bond should be large, so that the Drude -particle remains close ot the core. The values of Drude mass, Drude -charge, and force constant can be chosen following different -strategies, as in the following examples of polarizable force -fields.

-
    -
  • Lamoureux and Roux suggest adopting a global -half-stiffness, \(K_D\) = 500 kcal/(mol &Aring;<sup>2</sup>) &mdash; -which corresponds to a force constant \(k_D\) = 4184 kJ/(mol -&Aring;<sup>2</sup>) &mdash; for all types of core-Drude bond, a -global mass \(m_D\) = 0.4 g/mol (or u) for all types of Drude -particle, and to calculate the Drude charges for individual atom types -from the atom polarizabilities using equation (1). This choice is -followed in the polarizable CHARMM force field.
  • -
  • Schroeder and Steinhauser suggest adopting a global -charge \(q_D\) = -1.0e and a global mass \(m_D\) = 0.1 g/mol (or u) -for all Drude particles, and to calculate the force constant for each -type of core-Drude bond from equation (1). The timesteps used by these -authors are between 0.5 and 2 fs, with the degrees of freedom of the -Drude oscillators kept cold at 1 K. In both these force fields -hydrogen atoms are treated as non-polarizable.
  • -
-

The motion of of the Drude particles can be calculated by minimizing -the energy of the induced dipoles at each timestep, by an interative, -self-consistent procedure. The Drude particles can be massless and -therefore do not contribute to the kinetic energy. However, the -relaxed method is computationall slow. An extended-lagrangian method -can be used to calculate the positions of the Drude particles, but -this requires them to have mass. It is important in this case to -decouple the degrees of freedom associated with the Drude oscillators -from those of the normal atoms. Thermalizing the Drude dipoles at -temperatures comparable to the rest of the simulation leads to several -problems (kinetic energy transfer, very short timestep, etc.), which -can be remediated by the “cold Drude” technique (Lamoureux and Roux).

-

Two closely related models are used to represent polarization through -“charges on a spring”: the core-shell model and the Drude -model. Although the basic idea is the same, the core-shell model is -normally used for ionic/crystalline materials, whereas the Drude model -is normally used for molecular systems and fluid states. In ionic -crystals the symmetry around each ion and the distance between them -are such that the core-shell model is sufficiently stable. But to be -applicable to molecular/covalent systems the Drude model includes two -important features:

-
    -
  1. The possibility to thermostat the additional degrees of freedom
  2. -
-
-
associated with the induced dipoles at very low temperature, in terms -of the reduced coordinates of the Drude particles with respect to -their cores. This makes the trajectory close to that of relaxed -induced dipoles.
-
    -
  1. The Drude dipoles on covalently bonded atoms interact too strongly -due to the short distances, so an atom may capture the Drude particle -(shell) of a neighbor, or the induced dipoles within the same molecule -may align too much. To avoid this, damping at short of the -interactions between the point charges composing the induced dipole -can be done by Thole functions.
  2. -
-
-

Preparation of the data file

-

The data file is similar to a standard LAMMPS data file for -atom_style full. The DPs and the harmonic bonds connecting them -to their DC should appear in the data file as normal atoms and bonds.

-

You can use the polarizer tool (Python script distributed with the -USER-DRUDE package) to convert a non-polarizable data file (here -data.102494.lmp) to a polarizable data file (data-p.lmp)

-
polarizer -q -f phenol.dff data.102494.lmp data-p.lmp
-
-
-

This will automatically insert the new atoms and bonds. -The masses and charges of DCs and DPs are computed -from phenol.dff, as well as the DC-DP bond constants. The file -phenol.dff contains the polarizabilities of the atom types -and the mass of the Drude particles, for instance:

-
# units: kJ/mol, A, deg
-# kforce is in the form k/2 r_D^2
-# type  m_D/u   q_D/e    k_D   alpha/A3  thole
-OH      0.4    -1.0    4184.0   0.63     0.67
-CA      0.4    -1.0    4184.0   1.36     2.51
-CAI     0.4    -1.0    4184.0   1.09     2.51
-
-
-

The hydrogen atoms are absent from this file, so they will be treated -as non-polarizable atoms. In the non-polarizable data file -data.102494.lmp, atom names corresponding to the atom type numbers -have to be specified as comments at the end of lines of the Masses -section. You probably need to edit it to add these names. It should -look like

-
Masses
-
-
-
1 12.011 # CAI
-2 12.011 # CA
-3 15.999 # OH
-4 1.008  # HA
-5 1.008  # HO
-
-
-
-

Basic input file

-

The atom style should be set to (or derive from) full, so that you -can define atomic charges and molecular bonds, angles, dihedrals...

-

The polarizer tool also outputs certain lines related to the input -script (the use of these lines will be explained below). In order for -LAMMPS to recognize that you are using Drude oscillators, you should -use the fix drude. The command is

-
fix DRUDE all drude C C C N N D D D
-
-
-

The N, C, D following the drude keyword have the following meaning: -There is one tag for each atom type. This tag is C for DCs, D for DPs -and N for non-polarizable atoms. Here the atom types 1 to 3 (C and O -atoms) are DC, atom types 4 and 5 (H atoms) are non-polarizable and -the atom types 6 to 8 are the newly created DPs.

-

By recognizing the fix drude, LAMMPS will find and store matching -DC-DP pairs and will treat DP as equivalent to their DC in the -special bonds relations. It may be necessary to extend the space -for storing such special relations. In this case extra space should -be reserved by using the extra keyword of the special_bonds -command. With our phenol, there is 1 more special neighbor for which -space is required. Otherwise LAMMPS crashes and gives the required -value.

-
special_bonds lj/coul 0.0 0.0 0.5 extra 1
-
-
-

Let us assume we want to run a simple NVT simulation at 300 K. Note -that Drude oscillators need to be thermalized at a low temperature in -order to approximate a self-consistent field (SCF), therefore it is not -possible to simulate an NVE ensemble with this package. Since dipoles -are approximated by a charged DC-DP pair, the pair_style must -include Coulomb interactions, for instance lj/cut/coul/long with -kspace_style pppm. For example, with a cutoff of 10. and a precision -1.e-4:

-
pair_style lj/cut/coul/long 10.0
-kspace_style pppm 1.0e-4
-
-
-

As compared to the non-polarizable input file, pair_coeff lines need -to be added for the DPs. Since the DPs have no Lennard-Jones -interactions, their epsilon is 0. so the only pair_coeff line -that needs to be added is

-
pair_coeff * 6* 0.0 0.0 # All-DPs
-
-
-

Now for the thermalization, the simplest choice is to use the fix langevin/drude.

-
fix LANG all langevin/drude 300. 100 12435 1. 20 13977
-
-
-

This applies a Langevin thermostat at temperature 300. to the centers -of mass of the DC-DP pairs, with relaxation time 100 and with random -seed 12345. This fix applies also a Langevin thermostat at temperature -1. to the relative motion of the DPs around their DCs, with relaxation -time 20 and random seed 13977. Only the DCs and non-polarizable -atoms need to be in this fix’s group. LAMMPS will thermostate the DPs -together with their DC. For this, ghost atoms need to know their -velocities. Thus you need to add the following command:

-
comm_modify vel yes
-
-
-

In order to avoid that the center of mass of the whole system -drifts due to the random forces of the Langevin thermostat on DCs, you -can add the zero yes option at the end of the fix line.

-

If the fix shake is used to constrain the C-H bonds, it should be -invoked after the fix langevin/drude for more accuracy.

-
fix SHAKE ATOMS shake 0.0001 20 0 t 4 5
-
-
-
-

Note

-

The group of the fix shake must not include the DPs. If the -group ATOMS is defined by non-DPs atom types, you could use

-
-

Since the fix langevin/drude does not perform time integration (just -modification of forces but no position/velocity updates), the fix -nve should be used in conjunction.

-
fix NVE all nve
-
-
-

Finally, do not forget to update the atom type elements if you use -them in a dump_modify ... element ... command, by adding the element -type of the DPs. Here for instance

-
dump DUMP all custom 10 dump.lammpstrj id mol type element x y z ix iy iz
-dump_modify DUMP element C C O H H D D D
-
-
-

The input file should now be ready for use!

-

You will notice that the global temperature thermo_temp computed by -LAMMPS is not 300. K as wanted. This is because LAMMPS treats DPs as -standard atoms in his default compute. If you want to output the -temperatures of the DC-DP pair centers of mass and of the DPs relative -to their DCs, you should use the compute temp_drude

-
compute TDRUDE all temp/drude
-
-
-

And then output the correct temperatures of the Drude oscillators -using thermo_style custom with respectively c_TDRUDE[1] and -c_TDRUDE[2]. These should be close to 300.0 and 1.0 on average.

-
thermo_style custom step temp c_TDRUDE[1] c_TDRUDE[2]
-
-
-
-

Thole screening

-

Dipolar interactions represented by point charges on springs may not -be stable, for example if the atomic polarizability is too high for -instance, a DP can escape from its DC and be captured by another DC, -which makes the force and energy diverge and the simulation -crash. Even without reaching this extreme case, the correlation -between nearby dipoles on the same molecule may be exagerated. Often, -special bond relations prevent bonded neighboring atoms to see the -charge of each other’s DP, so that the problem does not always appear. -It is possible to use screened dipole dipole interactions by using the -*pair_style thole*. This is implemented as a -correction to the Coulomb pair_styles, which dampens at short distance -the interactions between the charges representing the induced dipoles. -It is to be used as hybrid/overlay with any standard coul pair -style. In our example, we would use

-
pair_style hybrid/overlay lj/cut/coul/long 10.0 thole 2.6 10.0
-
-
-

This tells LAMMPS that we are using two pair_styles. The first one is -as above (lj/cut/coul/long 10.0). The second one is a thole -pair_style with default screening factor 2.6 (Noskov) and -cutoff 10.0.

-

Since hybrid/overlay does not support mixing rules, the interaction -coefficients of all the pairs of atom types with i < j should be -explicitly defined. The output of the polarizer script can be used -to complete the pair_coeff section of the input file. In our -example, this will look like:

-
pair_coeff    1    1 lj/cut/coul/long    0.0700   3.550
-pair_coeff    1    2 lj/cut/coul/long    0.0700   3.550
-pair_coeff    1    3 lj/cut/coul/long    0.1091   3.310
-pair_coeff    1    4 lj/cut/coul/long    0.0458   2.985
-pair_coeff    2    2 lj/cut/coul/long    0.0700   3.550
-pair_coeff    2    3 lj/cut/coul/long    0.1091   3.310
-pair_coeff    2    4 lj/cut/coul/long    0.0458   2.985
-pair_coeff    3    3 lj/cut/coul/long    0.1700   3.070
-pair_coeff    3    4 lj/cut/coul/long    0.0714   2.745
-pair_coeff    4    4 lj/cut/coul/long    0.0300   2.420
-pair_coeff    *    5 lj/cut/coul/long    0.0000   0.000
-pair_coeff    *   6* lj/cut/coul/long    0.0000   0.000
-pair_coeff    1    1 thole   1.090   2.510
-pair_coeff    1    2 thole   1.218   2.510
-pair_coeff    1    3 thole   0.829   1.590
-pair_coeff    1    6 thole   1.090   2.510
-pair_coeff    1    7 thole   1.218   2.510
-pair_coeff    1    8 thole   0.829   1.590
-pair_coeff    2    2 thole   1.360   2.510
-pair_coeff    2    3 thole   0.926   1.590
-pair_coeff    2    6 thole   1.218   2.510
-pair_coeff    2    7 thole   1.360   2.510
-pair_coeff    2    8 thole   0.926   1.590
-pair_coeff    3    3 thole   0.630   0.670
-pair_coeff    3    6 thole   0.829   1.590
-pair_coeff    3    7 thole   0.926   1.590
-pair_coeff    3    8 thole   0.630   0.670
-pair_coeff    6    6 thole   1.090   2.510
-pair_coeff    6    7 thole   1.218   2.510
-pair_coeff    6    8 thole   0.829   1.590
-pair_coeff    7    7 thole   1.360   2.510
-pair_coeff    7    8 thole   0.926   1.590
-pair_coeff    8    8 thole   0.630   0.670
-
-
-

For the thole pair style the coefficients are

-
    -
  1. the atom polarizability in units of cubic length
  2. -
  3. the screening factor of the Thole function (optional, default value -specified by the pair_style command)
  4. -
-
    -
  • the cutoff (optional, default value defined by the pair_style command)
  • -
-

The special neighbors have charge-charge and charge-dipole -interactions screened by the coul factors of the special_bonds -command (0.0, 0.0, and 0.5 in the example above). Without using the -pair_style thole, dipole-dipole interactions are screened by the -same factor. By using the pair_style thole, dipole-dipole -interactions are screened by Thole’s function, whatever their special -relationship (except within each DC-DP pair of course). Consider for -example 1-2 neighbors: using the pair_style thole, their dipoles -will see each other (despite the coul factor being 0.) and the -interactions between these dipoles will be damped by Thole’s function.

-
-

Thermostats and barostats

-

Using a Nose-Hoover barostat with the langevin/drude thermostat is -straightforward using fix nph instead of nve. For example:

-
fix NPH all nph iso 1. 1. 500
-
-
-

It is also possible to use a Nose-Hoover instead of a Langevin -thermostat. This requires to use *fix drude/transform* just before and after the -time intergation fixes. The fix drude/transform/direct converts the -atomic masses, positions, velocities and forces into a reduced -representation, where the DCs transform into the centers of mass of -the DC-DP pairs and the DPs transform into their relative position -with respect to their DC. The fix drude/transform/inverse performs -the reverse transformation. For a NVT simulation, with the DCs and -atoms at 300 K and the DPs at 1 K relative to their DC one would use

-
fix DIRECT all drude/transform/direct
-fix NVT1 ATOMS nvt temp 300. 300. 100
-fix NVT2 DRUDES nvt temp 1. 1. 20
-fix INVERSE all drude/transform/inverse
-
-
-

For our phenol example, the groups would be defined as

-
group ATOMS  type 1 2 3 4 5 # DCs and non-polarizable atoms
-group CORES  type 1 2 3     # DCs
-group DRUDES type 6 7 8     # DPs
-
-
-

Note that with the fixes drude/transform, it is not required to -specify comm_modify vel yes because the fixes do it anyway (several -times and for the forces also). To avoid the flying ice cube artifact -(Lamoureux), where the atoms progressively freeze and the -center of mass of the whole system drifts faster and faster, the fix -momentum can be used. For instance:

-
fix MOMENTUM all momentum 100 linear 1 1 1
-
-
-

It is a bit more tricky to run a NPT simulation with Nose-Hoover -barostat and thermostat. First, the volume should be integrated only -once. So the fix for DCs and atoms should be npt while the fix for -DPs should be nvt (or vice versa). Second, the fix npt computes a -global pressure and thus a global temperature whatever the fix group. -We do want the pressure to correspond to the whole system, but we want -the temperature to correspond to the fix group only. We must then use -the fix_modify command for this. In the end, the block of -instructions for thermostating and barostating will look like

-
compute TATOMS ATOMS temp
-fix DIRECT all drude/transform/direct
-fix NPT ATOMS npt temp 300. 300. 100 iso 1. 1. 500
-fix_modify NPT temp TATOMS press thermo_press
-fix NVT DRUDES nvt temp 1. 1. 20
-fix INVERSE all drude/transform/inverse
-
-
-
-

Rigid bodies

-

You may want to simulate molecules as rigid bodies (but polarizable). -Common cases are water models such as SWM4-NDP, which is a -kind of polarizable TIP4P water. The rigid bodies and the DPs should -be integrated separately, even with the Langevin thermostat. Let us -review the different thermostats and ensemble combinations.

-

NVT ensemble using Langevin thermostat:

-
comm_modify vel yes
-fix LANG all langevin/drude 300. 100 12435 1. 20 13977
-fix RIGID ATOMS rigid/nve/small molecule
-fix NVE DRUDES nve
-
-
-

NVT ensemble using Nose-Hoover thermostat:

-
fix DIRECT all drude/transform/direct
-fix RIGID ATOMS rigid/nvt/small molecule temp 300. 300. 100
-fix NVT DRUDES nvt temp 1. 1. 20
-fix INVERSE all drude/transform/inverse
-
-
-

NPT ensemble with Langevin thermostat:

-
comm_modify vel yes
-fix LANG all langevin/drude 300. 100 12435 1. 20 13977
-fix RIGID ATOMS rigid/nph/small molecule iso 1. 1. 500
-fix NVE DRUDES nve
-
-
-

NPT ensemble using Nose-Hoover thermostat:

-
compute TATOM ATOMS temp
-fix DIRECT all drude/transform/direct
-fix RIGID ATOMS rigid/npt/small molecule temp 300. 300. 100 iso 1. 1. 500
-fix_modify RIGID temp TATOM press thermo_press
-fix NVT DRUDES nvt temp 1. 1. 20
-fix INVERSE all drude/transform/inverse
-
-
-
-

(Lamoureux) Lamoureux and Roux, J Chem Phys, 119, 3025-3039 (2003)

-

(Schroeder) Schr&ouml;der and Steinhauser, J Chem Phys, 133, -154511 (2010).

-
-
(Jiang) Jiang, Hardy, Phillips, MacKerell, Schulten, and Roux,
-
J Phys Chem Lett, 2, 87-92 (2011).
-
-

(Thole) Chem Phys, 59, 341 (1981).

-

(Noskov) Noskov, Lamoureux and Roux, J Phys Chem B, 109, 6705 (2005).

-

(SWM4-NDP) Lamoureux, Harder, Vorobyov, Roux, MacKerell, Chem Phys -Let, 418, 245-249 (2006)

- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/tutorial_github.html b/doc/tutorial_github.html deleted file mode 100644 index feddd0d722..0000000000 --- a/doc/tutorial_github.html +++ /dev/null @@ -1,362 +0,0 @@ - - - - - - - - - - - LAMMPS GitHub tutorial — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

LAMMPS GitHub tutorial

-
-

written by Stefan Paquay

-
-

This document briefly describes how to use GitHub to merge changes -into LAMMPS using GitHub. It assumes that you are familiar with -git. You may want to have a look at the Git book to reacquaint yourself.

-
-
-

Making an account

-

First of all, you need a GitHub account. This is fairly simple, just -go to GitHub and create an account by clicking -the ``Sign up for GitHub’’ button. Once your account is created, you -can sign in by clicking the button in the top left and filling in your -username or e-mail address and password.

-
-
-
-

Forking the repository

-

To get changes into LAMMPS, you need to first fork the repository. At -the time of writing, LAMMPS-ICMS is the preferred fork. Go to LAMMPS on GitHub and make sure branch is -set to ``lammps-icms’‘, see the figure below.

-_images/tutorial_branch.png -

Now, click on fork in the top right corner:

-_images/tutorial_fork.png -

This will create your own fork of the LAMMPS repository. You can make -changes in this fork and later file pull requests to allow the -upstream repository to merge changes from your own fork into the one -we just forked from. At the same time, you can set things up, so you -can include changes from upstream into your repository.

-
-
-
-

Adding changes to your own fork

-

Before adding changes, it is better to first create a new branch that -will contain these changes, a so-called feature branch.

-
-
-
-

Feature branches

-

Since LAMMPS is such a big project and most user contributions come in -small portions, the most ideal workflow for LAMMPS is the so-called -``Feature branch’’ workflow. It is explained in great detail here: -feature branch workflow.

-

The idea is that every new feature for LAMMPS gets its own -branch. This way, it is fairly painless to incorporate new features -into the upstream repository. I will explain briefly here how to do -it. In this feature branch, I will add a USER-package.

-

I assume that git is installed on the local machine and you know how -to use a command line.

-

First of all, you need to clone your own fork of LAMMPS:

-
$ git clone https://github.com/<your user name>/lammps.git
-
-
-

You can find the proper url to the right of the “HTTPS” block, see figure.

-_images/tutorial_https_block.png -

The above command copies (``clones’‘) the git repository to your local -machine. You can use this local clone to make changes and test them -without interfering with the repository on github. First, however, it -is recommended to make a new branch for a particular feature you would -like added to LAMMPS. In this example, I will try adding a new -USER-package called USER-MANIFOLD.

-

To create a new branch, run the following git command in your repository:

-
$ git checkout -b add-user-manifold
-
-
-

The name of this new branch is “add-user-manifold” in my case. Just -name it after something that resembles the feature you want added to -LAMMPS.

-

Now that you’ve changed branches, you can edit the files as you see -fit, add new files, and commit as much as you would like. Just -remember that if halfway you decide to add another, unrelated feature, -you should switch branches!

-

After everything is done, add the files to the branch and commit them:

-
$ git add src/USER-MANIFOLD examples/USER/manifold/
-$ git add doc/fix_nv*t,e*_manifold_rattle.txt
-$ git add doc/fix_manifoldforce.txt doc/user_manifolds.txt
-
-
-

After the files are added, the change should be comitted:

-
$ git commit -m 'Added user-manifold package'
-
-
-

The “-m” switch is used to add a message to the commit. Use this to -indicate what type of change was commited.

-

“Do not use “git commit -a”. the -a flag will automatically include -*all modified or new files. mercurial does that and it find it -hugely annoying and often leading to accidental commits of files you -don’t want. use git add, git rm, git mv for adding, removing, -renaming and then git commit to finalize the commit. personally, i -find it very convenient to use the bundled gui for commits, i.e. git -gui. typically, i will do git add and other operations, but then -verify and review them with git gui. git gui also allows to do -line-by-line unstaging and other convenient operations.”*

-

After the commit, the changes can be pushed to the same branch on GitHub:

-
$ git push
-
-
-

Git will ask you for your user name and password on GitHub if you have -not configured anything. If you correctly type your user name and -password, the change should be added to your fork on GitHub.

-

If you want to make really sure you push to the right repository -(which is good practice), you can provide it explicitly:

-
$ git push origin
-
-
-

or using an explicit URL:

-
$ git push git@github.com:Pakketeretet2/lammps.git
-
-
-

After that, you can file a new pull request based on this -branch. GitHub will now look like this:

-_images/tutorial_pull_request_feature_branch1.png -

Make sure that the current branch is set to the correct one, which, in -this case, is “add-user-manifold”. Now click “New pull request”. If -done correctly, the only changes you will see are those that were made -on this branch, so in my case, I will see nothing related to -$mathrm*pair_dzugatov*.$

-

This will open up a new window that lists changes made to the -repository. If you are just adding new files, there is not much to do, -but I suppose merge conflicts are to be resolved here if there are -changes in existing files. If all changes can automatically be merged, -green text at the top will say so and you can click the “Create pull -request” button, see image.

-_images/tutorial_pull_request2.png -

After this you have to specify a short title and a comment with -details about your pull request. I guess here you write what your -modifications do and why they should be incorporated upstream. After -that, click the “Create pull request” button, see image below.

-_images/tutorial_pull_request3.png -

Now just write some nice comments, click “Comment”, and that is it. It -is now up to the maintainer(s) of the upstream repository to -incorporate the changes into the repository and to close the pull -request.

-_images/tutorial_pull_request4.png -
-
-

Additional changes

-

Before the pull request is accepted, any additional changes you push -into your repository will automatically become part of the pull -request.

-
-
-
-

After a merge

-

When everything is fine the feature branch is merged into the LAMMPS -repositories:

-_images/tutorial_merged.png -

Now one question remains: What to do with the feature branch that got -merged into upstream?

-

It is in principle safe to delete them from your own fork. This helps -keep it a bit more tidy. Note that you first have to switch to another -branch!

-
$ git checkout lammps-icms
-$ git pull lammps-icms
-$ git branch -d add-user-manifold
-
-
-

If you do not pull first, it is not really a problem but git will warn -you at the next statement that you are deleting a local branch that -was not yet fully merged into HEAD. This is because git does not yet -know your branch just got merged into lammps-icms upstream. If you -first delete and then pull, everything should still be fine.

-

Finally, if you delete the branch locally, you might want to push this -to your remote(s) as well:

-
$ git push origin :add-user-manifold
-
-
-
-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/uncompute.html b/doc/uncompute.html deleted file mode 100644 index 09b1a92cb2..0000000000 --- a/doc/uncompute.html +++ /dev/null @@ -1,225 +0,0 @@ - - - - - - - - - - - uncompute command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

uncompute command

-
-

Syntax

-
uncompute compute-ID
-
-
-
    -
  • compute-ID = ID of a previously defined compute
  • -
-
-
-

Examples

-
uncompute 2
-uncompute lower-boundary
-
-
-
-
-

Description

-

Delete a compute that was previously defined with a compute -command. This also wipes out any additional changes made to the compute -via the compute_modify command.

-
-
-

Restrictions

-
-
none
-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/undump.html b/doc/undump.html deleted file mode 100644 index 3540e32149..0000000000 --- a/doc/undump.html +++ /dev/null @@ -1,224 +0,0 @@ - - - - - - - - - - - undump command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

undump command

-
-

Syntax

-
undump dump-ID
-
-
-
    -
  • dump-ID = ID of previously defined dump
  • -
-
-
-

Examples

-
undump mine
-undump 2
-
-
-
-
-

Description

-

Turn off a previously defined dump so that it is no longer active. -This closes the file associated with the dump.

-
-
-

Restrictions

-
-
none
-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/unfix.html b/doc/unfix.html deleted file mode 100644 index 447027fa33..0000000000 --- a/doc/unfix.html +++ /dev/null @@ -1,225 +0,0 @@ - - - - - - - - - - - unfix command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

unfix command

-
-

Syntax

-
unfix fix-ID
-
-
-
    -
  • fix-ID = ID of a previously defined fix
  • -
-
-
-

Examples

-
unfix 2
-unfix lower-boundary
-
-
-
-
-

Description

-

Delete a fix that was previously defined with a fix -command. This also wipes out any additional changes made to the fix -via the fix_modify command.

-
-
-

Restrictions

-
-
none
-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/units.html b/doc/units.html deleted file mode 100644 index e327e14c99..0000000000 --- a/doc/units.html +++ /dev/null @@ -1,406 +0,0 @@ - - - - - - - - - - - units command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

units command

-
-

Syntax

-
units style
-
-
-
    -
  • style = lj or real or metal or si or cgs or electron or micro or nano
  • -
-
-
-

Examples

-
units metal
-units lj
-
-
-
-
-

Description

-

This command sets the style of units used for a simulation. It -determines the units of all quantities specified in the input script -and data file, as well as quantities output to the screen, log file, -and dump files. Typically, this command is used at the very beginning -of an input script.

-

For all units except lj, LAMMPS uses physical constants from -www.physics.nist.gov. For the definition of Kcal in real units, -LAMMPS uses the thermochemical calorie = 4.184 J.

-

The choice you make for units simply sets some internal conversion -factors within LAMMPS. This means that any simulation you perform for -one choice of units can be duplicated with any other unit setting -LAMMPS supports. In this context “duplicate” means the particles will -have identical trajectories and all output generated by the simulation -will be identical. This will be the case for some number of timesteps -until round-off effects accumulate, since the conversion factors for -two different unit systems are not identical to infinite precision.

-

To perform the same simulation in a different set of units you must -change all the unit-based input parameters in your input script and -other input files (data file, potential files, etc) correctly to the -new units. And you must correctly convert all output from the new -units to the old units when comparing to the original results. That -is often not simple to do.

-
-

For style lj, all quantities are unitless. Without loss of -generality, LAMMPS sets the fundamental quantities mass, sigma, -epsilon, and the Boltzmann constant = 1. The masses, distances, -energies you specify are multiples of these fundamental values. The -formulas relating the reduced or unitless quantity (with an asterisk) -to the same quantity with units is also given. Thus you can use the -mass & sigma & epsilon values for a specific material and convert the -results from a unitless LJ simulation into physical quantities.

-
    -
  • mass = mass or m
  • -
  • distance = sigma, where x* = x / sigma
  • -
  • time = tau, where t* = t (epsilon / m / sigma^2)^1/2
  • -
  • energy = epsilon, where E* = E / epsilon
  • -
  • velocity = sigma/tau, where v* = v tau / sigma
  • -
  • force = epsilon/sigma, where f* = f sigma / epsilon
  • -
  • torque = epsilon, where t* = t / epsilon
  • -
  • temperature = reduced LJ temperature, where T* = T Kb / epsilon
  • -
  • pressure = reduced LJ pressure, where P* = P sigma^3 / epsilon
  • -
  • dynamic viscosity = reduced LJ viscosity, where eta* = eta sigma^3 / epsilon / tau
  • -
  • charge = reduced LJ charge, where q* = q / (4 pi perm0 sigma epsilon)^1/2
  • -
  • dipole = reduced LJ dipole, moment where *mu = mu / (4 pi perm0 sigma^3 epsilon)^1/2
  • -
  • electric field = force/charge, where E* = E (4 pi perm0 sigma epsilon)^1/2 sigma / epsilon
  • -
  • density = mass/volume, where rho* = rho sigma^dim
  • -
-

Note that for LJ units, the default mode of thermodyamic output via -the thermo_style command is to normalize all -extensive quantities by the number of atoms. E.g. potential energy is -extensive because it is summed over atoms, so it is output as -energy/atom. Temperature is intensive since it is already normalized -by the number of atoms, so it is output as-is. This behavior can be -changed via the thermo_modify norm command.

-

For style real, these are the units:

-
    -
  • mass = grams/mole
  • -
  • distance = Angstroms
  • -
  • time = femtoseconds
  • -
  • energy = Kcal/mole
  • -
  • velocity = Angstroms/femtosecond
  • -
  • force = Kcal/mole-Angstrom
  • -
  • torque = Kcal/mole
  • -
  • temperature = Kelvin
  • -
  • pressure = atmospheres
  • -
  • dynamic viscosity = Poise
  • -
  • charge = multiple of electron charge (1.0 is a proton)
  • -
  • dipole = charge*Angstroms
  • -
  • electric field = volts/Angstrom
  • -
  • density = gram/cm^dim
  • -
-

For style metal, these are the units:

-
    -
  • mass = grams/mole
  • -
  • distance = Angstroms
  • -
  • time = picoseconds
  • -
  • energy = eV
  • -
  • velocity = Angstroms/picosecond
  • -
  • force = eV/Angstrom
  • -
  • torque = eV
  • -
  • temperature = Kelvin
  • -
  • pressure = bars
  • -
  • dynamic viscosity = Poise
  • -
  • charge = multiple of electron charge (1.0 is a proton)
  • -
  • dipole = charge*Angstroms
  • -
  • electric field = volts/Angstrom
  • -
  • density = gram/cm^dim
  • -
-

For style si, these are the units:

-
    -
  • mass = kilograms
  • -
  • distance = meters
  • -
  • time = seconds
  • -
  • energy = Joules
  • -
  • velocity = meters/second
  • -
  • force = Newtons
  • -
  • torque = Newton-meters
  • -
  • temperature = Kelvin
  • -
  • pressure = Pascals
  • -
  • dynamic viscosity = Pascal*second
  • -
  • charge = Coulombs (1.6021765e-19 is a proton)
  • -
  • dipole = Coulombs*meters
  • -
  • electric field = volts/meter
  • -
  • density = kilograms/meter^dim
  • -
-

For style cgs, these are the units:

-
    -
  • mass = grams
  • -
  • distance = centimeters
  • -
  • time = seconds
  • -
  • energy = ergs
  • -
  • velocity = centimeters/second
  • -
  • force = dynes
  • -
  • torque = dyne-centimeters
  • -
  • temperature = Kelvin
  • -
  • pressure = dyne/cm^2 or barye = 1.0e-6 bars
  • -
  • dynamic viscosity = Poise
  • -
  • charge = statcoulombs or esu (4.8032044e-10 is a proton)
  • -
  • dipole = statcoul-cm = 10^18 debye
  • -
  • electric field = statvolt/cm or dyne/esu
  • -
  • density = grams/cm^dim
  • -
-

For style electron, these are the units:

-
    -
  • mass = atomic mass units
  • -
  • distance = Bohr
  • -
  • time = femtoseconds
  • -
  • energy = Hartrees
  • -
  • velocity = Bohr/atomic time units [1.03275e-15 seconds]
  • -
  • force = Hartrees/Bohr
  • -
  • temperature = Kelvin
  • -
  • pressure = Pascals
  • -
  • charge = multiple of electron charge (1.0 is a proton)
  • -
  • dipole moment = Debye
  • -
  • electric field = volts/cm
  • -
-

For style micro, these are the units:

-
    -
  • mass = picograms
  • -
  • distance = micrometers
  • -
  • time = microseconds
  • -
  • energy = picogram-micrometer^2/microsecond^2
  • -
  • velocity = micrometers/microsecond
  • -
  • force = picogram-micrometer/microsecond^2
  • -
  • torque = picogram-micrometer^2/microsecond^2
  • -
  • temperature = Kelvin
  • -
  • pressure = picogram/(micrometer-microsecond^2)
  • -
  • dynamic viscosity = picogram/(micrometer-microsecond)
  • -
  • charge = picocoulombs (1.6021765e-7 is a proton)
  • -
  • dipole = picocoulomb-micrometer
  • -
  • electric field = volt/micrometer
  • -
  • density = picograms/micrometer^dim
  • -
-

For style nano, these are the units:

-
    -
  • mass = attograms
  • -
  • distance = nanometers
  • -
  • time = nanoseconds
  • -
  • energy = attogram-nanometer^2/nanosecond^2
  • -
  • velocity = nanometers/nanosecond
  • -
  • force = attogram-nanometer/nanosecond^2
  • -
  • torque = attogram-nanometer^2/nanosecond^2
  • -
  • temperature = Kelvin
  • -
  • pressure = attogram/(nanometer-nanosecond^2)
  • -
  • dynamic viscosity = attogram/(nanometer-nanosecond)
  • -
  • charge = multiple of electron charge (1.0 is a proton)
  • -
  • dipole = charge-nanometer
  • -
  • electric field = volt/nanometer
  • -
  • density = attograms/nanometer^dim
  • -
-

The units command also sets the timestep size and neighbor skin -distance to default values for each style:

-
    -
  • For style lj these are dt = 0.005 tau and skin = 0.3 sigma.
  • -
  • For style real these are dt = 1.0 fmsec and skin = 2.0 Angstroms.
  • -
  • For style metal these are dt = 0.001 psec and skin = 2.0 Angstroms.
  • -
  • For style si these are dt = 1.0e-8 sec and skin = 0.001 meters.
  • -
  • For style cgs these are dt = 1.0e-8 sec and skin = 0.1 cm.
  • -
  • For style electron these are dt = 0.001 fmsec and skin = 2.0 Bohr.
  • -
  • For style micro these are dt = 2.0 microsec and skin = 0.1 micrometers.
  • -
  • For style nano these are dt = 0.00045 nanosec and skin = 0.1 nanometers.
  • -
-
-
-

Restrictions

-

This command cannot be used after the simulation box is defined by a -read_data or create_box command.

-

Related commands: none

-
-
-

Default

-
units lj
-
-
-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/variable.html b/doc/variable.html deleted file mode 100644 index 79346c627b..0000000000 --- a/doc/variable.html +++ /dev/null @@ -1,1423 +0,0 @@ - - - - - - - - - - - variable command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

variable command

-
-

Syntax

-
variable name style args ...
-
-
-
    -
  • name = name of variable to define
  • -
  • style = delete or index or loop or world or universe or uloop or string or format or getenv or file or atomfile or python or equal or vector or atom
  • -
-
-delete = no args
-index args = one or more strings
-loop args = N
-  N = integer size of loop, loop from 1 to N inclusive
-loop args = N pad
-  N = integer size of loop, loop from 1 to N inclusive
-  pad = all values will be same length, e.g. 001, 002, ..., 100
-loop args = N1 N2
-  N1,N2 = loop from N1 to N2 inclusive
-loop args = N1 N2 pad
-  N1,N2 = loop from N1 to N2 inclusive
-  pad = all values will be same length, e.g. 050, 051, ..., 100
-world args = one string for each partition of processors
-universe args = one or more strings
-uloop args = N
-  N = integer size of loop
-uloop args = N pad
-  N = integer size of loop
-  pad = all values will be same length, e.g. 001, 002, ..., 100
-string arg = one string
-format args = vname fstr
-  vname = name of equal-style variable to evaluate
-  fstr = C-style format string
-getenv arg = one string
-file arg = filename
-atomfile arg = filename
-python arg = function
-equal or vector or atom args = one formula containing numbers, thermo keywords, math operations, group functions, atom values and vectors, compute/fix/variable references
-  numbers = 0.0, 100, -5.4, 2.8e-4, etc
-  constants = PI, version, on, off, true, false, yes, no
-  thermo keywords = vol, ke, press, etc from thermo_style
-  math operators = (), -x, x+y, x-y, x*y, x/y, x^y, x%y,
-                   x == y, x != y, x &lt y, x &lt= y, x &gt y, x &gt= y, x && y, x || y, !x
-  math functions = sqrt(x), exp(x), ln(x), log(x), abs(x),
-                   sin(x), cos(x), tan(x), asin(x), acos(x), atan(x), atan2(y,x),
-                   random(x,y,z), normal(x,y,z), ceil(x), floor(x), round(x)
-                   ramp(x,y), stagger(x,y), logfreq(x,y,z), logfreq2(x,y,z),
-                stride(x,y,z), stride2(x,y,z,a,b,c),
-                vdisplace(x,y), swiggle(x,y,z), cwiggle(x,y,z)
-  group functions = count(group), mass(group), charge(group),
-                 xcm(group,dim), vcm(group,dim), fcm(group,dim),
-                 bound(group,dir), gyration(group), ke(group),
-                 angmom(group,dim), torque(group,dim),
-                    inertia(group,dimdim), omega(group,dim)
-  region functions = count(group,region), mass(group,region), charge(group,region),
-                 xcm(group,dim,region), vcm(group,dim,region), fcm(group,dim,region),
-                 bound(group,dir,region), gyration(group,region), ke(group,reigon),
-                 angmom(group,dim,region), torque(group,dim,region),
-                 inertia(group,dimdim,region), omega(group,dim,region)
-  special functions = sum(x), min(x), max(x), ave(x), trap(x), slope(x), gmask(x), rmask(x), grmask(x,y), next(x)
-  feature functions = is_active(category,feature,exact), is_defined(category,id,exact)
-  atom value = id[i], mass[i], type[i], mol[i], x[i], y[i], z[i], vx[i], vy[i], vz[i], fx[i], fy[i], fz[i], q[i]
-  atom vector = id, mass, type, mol, x, y, z, vx, vy, vz, fx, fy, fz, q
-  compute references = c_ID, c_ID[i], c_ID[i][j], C_ID, C_ID[i]
-  fix references = f_ID, f_ID[i], f_ID[i][j], F_ID, F_ID[i]
-  variable references = v_name, v_name[i]
-
-
-
-

Examples

-
variable x index run1 run2 run3 run4 run5 run6 run7 run8
-variable LoopVar loop $n
-variable beta equal temp/3.0
-variable b1 equal x[234]+0.5*vol
-variable b1 equal "x[234] + 0.5*vol"
-variable b equal xcm(mol1,x)/2.0
-variable b equal c_myTemp
-variable b atom x*y/vol
-variable foo string myfile
-variable myPy python increase
-variable f file values.txt
-variable temp world 300.0 310.0 320.0 ${Tfinal}
-variable x universe 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
-variable x uloop 15 pad
-variable str format x %.6g
-variable x delete
-
-
-
-
-

Description

-

This command assigns one or more strings to a variable name for -evaluation later in the input script or during a simulation.

-

Variables can thus be useful in several contexts. A variable can be -defined and then referenced elsewhere in an input script to become -part of a new input command. For variable styles that store multiple -strings, the next command can be used to increment which -string is assigned to the variable. Variables of style equal store -a formula which when evaluated produces a single numeric value which -can be output either directly (see the print, fix print, and run every commands) or as part -of thermodynamic output (see the thermo_style -command), or used as input to an averaging fix (see the fix ave/time command). Variables of style vector -store a formula which produces a vector of such values which can be -used as input to various averaging fixes, or elements of which can be -part of thermodynamic output. Variables of style atom store a -formula which when evaluated produces one numeric value per atom which -can be output to a dump file (see the dump custom command) -or used as input to an averaging fix (see the fix ave/chunk and fix ave/atom -commands). Variables of style atomfile can be used anywhere in an -input script that atom-style variables are used; they get their -per-atom values from a file rather than from a formula. Variables of -style python can be hooked to Python functions using code you -provide, so that the variable gets its value from the evaluation of -the Python code.

-
-

Note

-

As discussed in Section 3.2 of the -manual, an input script can use “immediate” variables, specified as -$(formula) with parenthesis, where the formula has the same syntax as -equal-style variables described on this page. This is a convenient -way to evaluate a formula immediately without using the variable -command to define a named variable and then evaluate that -variable. See below for a more detailed discussion of this feature.

-
-

In the discussion that follows, the “name” of the variable is the -arbitrary string that is the 1st argument in the variable command. -This name can only contain alphanumeric characters and underscores. -The “string” is one or more of the subsequent arguments. The “string” -can be simple text as in the 1st example above, it can contain other -variables as in the 2nd example, or it can be a formula as in the 3rd -example. The “value” is the numeric quantity resulting from -evaluation of the string. Note that the same string can generate -different values when it is evaluated at different times during a -simulation.

-
-

Note

-

When the input script line is encountered that defines a -variable of style equal or vector or atom or python that -contains a formula or Python code, the formula is NOT immediately -evaluated. It will be evaluated every time when the variable is -used instead. If you simply want to evaluate a formula in place you -can use as so-called. See the section below about “Immediate -Evaluation of Variables” for more details on the topic. This is also -true of a format style variable since it evaluates another variable -when it is invoked.

-
-
-

Note

-

Variables of style equal and vector and atom can be used -as inputs to various other LAMMPS commands which evaluate their -formulas as needed, e.g. at different timesteps during a -run. Variables of style python can be used in place of -an equal-style variable so long as the associated Python function, as -defined by the python command, returns a numeric value. -Thus any command that states it can use an equal-style variable as an -argument, can also use such a python-style variable. This means that -when the LAMMPS command evaluates the variable, the Python function -will be executed.

-
-
-

Note

-

When a variable command is encountered in the input script and -the variable name has already been specified, the command is ignored. -This means variables can NOT be re-defined in an input script (with -two exceptions, read further). This is to allow an input script to be -processed multiple times without resetting the variables; see the -jump or include commands. It also means -that using the command-line switch -var -will override a corresponding index variable setting in the input -script.

-
-

There are two exceptions to this rule. First, variables of style -string, getenv, equal, vector, atom, and python ARE -redefined each time the command is encountered. This allows these -style of variables to be redefined multiple times in an input script. -In a loop, this means the formula associated with an equal or atom -style variable can change if it contains a substitution for another -variable, e.g. $x or v_x.

-

Second, as described below, if a variable is iterated on to the end of -its list of strings via the next command, it is removed -from the list of active variables, and is thus available to be -re-defined in a subsequent variable command. The delete style does -the same thing.

-
-

This section of the manual explains how -occurrences of a variable name in an input script line are replaced by -the variable’s string. The variable name can be referenced as $x if -the name “x” is a single character, or as ${LoopVar} if the name -“LoopVar” is one or more characters.

-

As described below, for variable styles index, loop, file, -universe, and uloop, which string is assigned to a variable can be -incremented via the next command. When there are no more -strings to assign, the variable is exhausted and a flag is set that -causes the next jump command encountered in the input -script to be skipped. This enables the construction of simple loops -in the input script that are iterated over and then exited from.

-

As explained above, an exhausted variable can be re-used in an input -script. The delete style also removes the variable, the same as if -it were exhausted, allowing it to be redefined later in the input -script or when the input script is looped over. This can be useful -when breaking out of a loop via the if and jump -commands before the variable would become exhausted. For example,

-
label            loop
-variable    a loop 5
-print            "A = $a"
-if       "$a > 2" then "jump in.script break"
-next     a
-jump     in.script loop
-label            break
-variable    a delete
-
-
-
-

This section describes how all the various variable styles are defined -and what they store. Except for the equal and vector and atom -styles, which are explained in the next section.

-

Many of the styles store one or more strings. Note that a single -string can contain spaces (multiple words), if it is enclosed in -quotes in the variable command. When the variable is substituted for -in another input script command, its returned string will then be -interpreted as multiple arguments in the expanded command.

-

For the index style, one or more strings are specified. Initially, -the 1st string is assigned to the variable. Each time a -next command is used with the variable name, the next -string is assigned. All processors assign the same string to the -variable.

-

Index style variables with a single string value can also be set by -using the command-line switch -var; see this section for details.

-

The loop style is identical to the index style except that the -strings are the integers from 1 to N inclusive, if only one argument N -is specified. This allows generation of a long list of runs -(e.g. 1000) without having to list N strings in the input script. -Initially, the string “1” is assigned to the variable. Each time a -next command is used with the variable name, the next -string (“2”, “3”, etc) is assigned. All processors assign the same -string to the variable. The loop style can also be specified with -two arguments N1 and N2. In this case the loop runs from N1 to N2 -inclusive, and the string N1 is initially assigned to the variable. -N1 <= N2 and N2 >= 0 is required.

-

For the world style, one or more strings are specified. There must -be one string for each processor partition or “world”. See this section of the manual for information on -running LAMMPS with multiple partitions via the “-partition” -command-line switch. This variable command assigns one string to each -world. All processors in the world are assigned the same string. The -next command cannot be used with equal style variables, since there -is only one value per world. This style of variable is useful when -you wish to run different simulations on different partitions, or when -performing a parallel tempering simulation (see the -temper command), to assign different temperatures to -different partitions.

-

For the universe style, one or more strings are specified. There -must be at least as many strings as there are processor partitions or -“worlds”. See this page for information -on running LAMMPS with multiple partitions via the “-partition” -command-line switch. This variable command initially assigns one -string to each world. When a next command is encountered -using this variable, the first processor partition to encounter it, is -assigned the next available string. This continues until all the -variable strings are consumed. Thus, this command can be used to run -50 simulations on 8 processor partitions. The simulations will be run -one after the other on whatever partition becomes available, until -they are all finished. Universe style variables are incremented -using the files “tmp.lammps.variable” and “tmp.lammps.variable.lock” -which you will see in your directory during such a LAMMPS run.

-

The uloop style is identical to the universe style except that the -strings are the integers from 1 to N. This allows generation of long -list of runs (e.g. 1000) without having to list N strings in the input -script.

-

For the string style, a single string is assigned to the variable. -The only difference between this and using the index style with a -single string is that a variable with string style can be redefined. -E.g. by another command later in the input script, or if the script is -read again in a loop.

-

For the format style, an equal-style variable is specified along -with a C-style format string, e.g. “%f” or “%.10g”, which must be -appropriate for formatting a double-precision floating-point value. -This allows an equal-style variable to be formatted specifically for -output as a string, e.g. by the print command, if the -default format “%.15g” has too much precision.

-

For the getenv style, a single string is assigned to the variable -which should be the name of an environment variable. When the -variable is evaluated, it returns the value of the environment -variable, or an empty string if it not defined. This style of -variable can be used to adapt the behavior of LAMMPS input scripts via -environment variable settings, or to retrieve information that has -been previously stored with the shell putenv command. -Note that because environment variable settings are stored by the -operating systems, they persist beyond a clear command.

-

For the file style, a filename is provided which contains a list of -strings to assign to the variable, one per line. The strings can be -numeric values if desired. See the discussion of the next() function -below for equal-style variables, which will convert the string of a -file-style variable into a numeric value in a formula.

-

When a file-style variable is defined, the file is opened and the -string on the first line is read and stored with the variable. This -means the variable can then be evaluated as many times as desired and -will return that string. There are two ways to cause the next string -from the file to be read: use the next command or the -next() function in an equal- or atom-style variable, as discussed -below.

-

The rules for formatting the file are as follows. A comment character -“#” can be used anywhere on a line; text starting with the comment -character is stripped. Blank lines are skipped. The first “word” of -a non-blank line, delimited by white space, is the “string” assigned -to the variable.

-

For the atomfile style, a filename is provided which contains one or -more sets of values, to assign on a per-atom basis to the variable. -The format of the file is described below.

-

When an atomfile-style variable is defined, the file is opened and the -first set of per-atom values are read and stored with the variable. -This means the variable can then be evaluated as many times as desired -and will return those values. There are two ways to cause the next -set of per-atom values from the file to be read: use the -next command or the next() function in an atom-style -variable, as discussed below.

-

The rules for formatting the file are as follows. Each time a set of -per-atom values is read, a non-blank line is searched for in the file. -A comment character “#” can be used anywhere on a line; text starting -with the comment character is stripped. Blank lines are skipped. The -first “word” of a non-blank line, delimited by white space, is read as -the count N of per-atom lines to immediately follow. N can be be the -total number of atoms in the system, or only a subset. The next N -lines have the following format

-
ID value
-
-
-

where ID is an atom ID and value is the per-atom numeric value that -will be assigned to that atom. IDs can be listed in any order.

-
-

Note

-

Every time a set of per-atom lines is read, the value for all -atoms is first set to 0.0. Thus values for atoms whose ID does not -appear in the set, will remain 0.0.

-
-

For the python style a Python function name is provided. This needs -to match a function name specified in a python command -which returns a value to this variable as defined by its return -keyword. For exampe these two commands would be self-consistent:

-
variable foo python myMultiply
-python myMultiply return v_foo format f file funcs.py
-
-
-

The two commands can appear in either order so long as both are -specified before the Python function is invoked for the first time.

-

Each time the variable is evaluated, the associated Python function is -invoked, and the value it returns is also returned by the variable. -Since the Python function can use other LAMMPS variables as input, or -query interal LAMMPS quantities to perform its computation, this means -the variable can return a different value each time it is evaluated.

-

The type of value stored in the variable is determined by the format -keyword of the python command. It can be an integer -(i), floating point (f), or string (s) value. As mentioned above, if -it is a numeric value (integer or floating point), then the -python-style variable can be used in place of an equal-style variable -anywhere in an input script, e.g. as an argument to another command -that allows for equal-style variables.

-
-

For the equal and vector and atom styles, a single string is -specified which represents a formula that will be evaluated afresh -each time the variable is used. If you want spaces in the string, -enclose it in double quotes so the parser will treat it as a single -argument. For equal-style variables the formula computes a scalar -quantity, which becomes the value of the variable whenever it is -evaluated. For vector-style variables the formula must compute a -vector of quantities, which becomes the value of the variable whenever -it is evaluated. The calculated vector can be on length one, but it -cannot be a simple scalar value like that produced by an equal-style -compute. I.e. the formula for a vector-style variable must have at -least one quantity in it that refers to a global vector produced by a -compute, fix, or other vector-style variable. For atom-style -variables the formula computes one quantity for each atom whenever it -is evaluated.

-

Note that equal, vector, and atom variables can produce -different values at different stages of the input script or at -different times during a run. For example, if an equal variable is -used in a fix print command, different values could -be printed each timestep it was invoked. If you want a variable to be -evaluated immediately, so that the result is stored by the variable -instead of the string, see the section below on “Immediate Evaluation -of Variables”.

-

The next command cannot be used with equal or vector or atom -style variables, since there is only one string.

-

The formula for an equal, vector, or atom variable can contain a -variety of quantities. The syntax for each kind of quantity is -simple, but multiple quantities can be nested and combined in various -ways to build up formulas of arbitrary complexity. For example, this -is a valid (though strange) variable formula:

-
variable x equal "pe + c_MyTemp / vol^(1/3)"
-
-
-

Specifically, a formula can contain numbers, constants, thermo -keywords, math operators, math functions, group functions, region -functions, atom values, atom vectors, compute references, fix -references, and references to other variables.

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Number0.2, 100, 1.0e20, -15.4, etc
ConstantPI, version, on, off, true, false, yes, no
Thermo keywordsvol, pe, ebond, etc
Math operators(), -x, x+y, x-y, x*y, x/y, x^y, x%y,
Math operators(), -x, x+y, x-y, x*y, x/y, x^y, x%y, x == y, x != y, x &lt y, x &lt= y, x &gt y, x &gt= y, x && y, x || y, !x
Math functionssqrt(x), exp(x), ln(x), log(x), abs(x), sin(x), cos(x), tan(x), asin(x), acos(x), atan(x), atan2(y,x), random(x,y,z), normal(x,y,z), ceil(x), floor(x), round(x), ramp(x,y), stagger(x,y), logfreq(x,y,z), logfreq2(x,y,z), stride(x,y,z), stride2(x,y,z,a,b,c), vdisplace(x,y), swiggle(x,y,z), cwiggle(x,y,z)
Group functionscount(ID), mass(ID), charge(ID), xcm(ID,dim), vcm(ID,dim), fcm(ID,dim), bound(ID,dir), gyration(ID), ke(ID), angmom(ID,dim), torque(ID,dim), inertia(ID,dimdim), omega(ID,dim)
Region functionscount(ID,IDR), mass(ID,IDR), charge(ID,IDR), xcm(ID,dim,IDR), vcm(ID,dim,IDR), fcm(ID,dim,IDR), bound(ID,dir,IDR), gyration(ID,IDR), ke(ID,IDR), angmom(ID,dim,IDR), torque(ID,dim,IDR), inertia(ID,dimdim,IDR), omega(ID,dim,IDR)
Special functionssum(x), min(x), max(x), ave(x), trap(x), slope(x), gmask(x), rmask(x), grmask(x,y), next(x)
Atom valuesid[i], mass[i], type[i], mol[i], x[i], y[i], z[i], vx[i], vy[i], vz[i], fx[i], fy[i], fz[i], q[i]
Atom vectorsid, mass, type, mol, x, y, z, vx, vy, vz, fx, fy, fz, q
Compute referencesc_ID, c_ID[i], c_ID[i][j], C_ID, C_ID[i]
Fix referencesf_ID, f_ID[i], f_ID[i][j], F_ID, F_ID[i]
Other variablesv_name, v_name[i]
-

Most of the formula elements produce a scalar value. Some produce a -global or per-atom vector of values. Global vectors can be produced -by computes or fixes or by other vector-style variables. Per-atom -vectors are produced by atom vectors, compute references that -represent a per-atom vector, fix references that represent a per-atom -vector, and variables that are atom-style variables. Math functions -that operate on scalar values produce a scalar value; math function -that operate on global or per-atom vectors do so element-by-element -and produce a global or per-atom vector.

-

A formula for equal-style variables cannot use any formula element -that produces a global or per-atom vector. A formula for a -vector-style variable can use formula elements that produce either a -scalar value or a global vector value, but cannot use a formula -element that produces a per-atom vector. A formula for an atom-style -variable can use formula elements that produce either a scalar value -or a per-atom vector, but not one that produces a global vector. -Atom-style variables are evaluated by other commands that define a -group on which they operate, e.g. a dump or -compute or fix command. When they invoke -the atom-style variable, only atoms in the group are included in the -formula evaluation. The variable evaluates to 0.0 for atoms not in -the group.

-
-
-

Numers, constants, and thermo keywords

-

Numbers can contain digits, scientific notation -(3.0e20,3.0e-20,3.0E20,3.0E-20), and leading minus signs.

-

Constants are set at compile time and cannot be changed. PI will -return the number 3.14159265358979323846; on, true or yes will -return 1.0; off, false or no will return 0.0; version will -return a numeric version code of the current LAMMPS version (e.g. -version 2 Sep 2015 will return the number 20150902). The corresponding -value for newer versions of LAMMPS will be larger, for older versions -of LAMMPS will be smaller. This can be used to have input scripts -adapt automatically to LAMMPS versions, when non-backwards compatible -syntax changes are introduced. Here is an illustrative example (which -will not work, since the version has been introduced more recently):

-
if $(version<20140513) then "communicate vel yes" else "comm_modify vel yes"
-
-
-

The thermo keywords allowed in a formula are those defined by the -thermo_style custom command. Thermo keywords that -require a compute to calculate their values such as -“temp” or “press”, use computes stored and invoked by the -thermo_style command. This means that you can -only use those keywords in a variable if the style you are using with -the thermo_style command (and the thermo keywords associated with that -style) also define and use the needed compute. Note that some thermo -keywords use a compute indirectly to calculate their value (e.g. the -enthalpy keyword uses temp, pe, and pressure). If a variable is -evaluated directly in an input script (not during a run), then the -values accessed by the thermo keyword must be current. See the -discussion below about “Variable Accuracy”.

-
-
-
-

Math Operators

-

Math operators are written in the usual way, where the “x” and “y” in -the examples can themselves be arbitrarily complex formulas, as in the -examples above. In this syntax, “x” and “y” can be scalar values or -per-atom vectors. For example, “ke/natoms” is the division of two -scalars, where “vy+vz” is the element-by-element sum of two per-atom -vectors of y and z velocities.

-

Operators are evaluated left to right and have the usual C-style -precedence: unary minus and unary logical NOT operator ”!” have the -highest precedence, exponentiation “^” is next; multiplication and -division and the modulo operator “%” are next; addition and -subtraction are next; the 4 relational operators “<”, “<=”, “>”, and -“>=” are next; the two remaining relational operators “==” and ”!=” -are next; then the logical AND operator “&&”; and finally the logical -OR operator “||” has the lowest precedence. Parenthesis can be used -to group one or more portions of a formula and/or enforce a different -order of evaluation than what would occur with the default precedence.

-
-

Note

-

Because a unary minus is higher precedence than exponentiation, -the formula “-2^2” will evaluate to 4, not -4. This convention is -compatible with some programming languages, but not others. As -mentioned, this behavior can be easily overridden with parenthesis; -the formula “-(2^2)” will evaluate to -4.

-
-

The 6 relational operators return either a 1.0 or 0.0 depending on -whether the relationship between x and y is TRUE or FALSE. For -example the expression x<10.0 in an atom-style variable formula will -return 1.0 for all atoms whose x-coordinate is less than 10.0, and 0.0 -for the others. The logical AND operator will return 1.0 if both its -arguments are non-zero, else it returns 0.0. The logical OR operator -will return 1.0 if either of its arguments is non-zero, else it -returns 0.0. The logical NOT operator returns 1.0 if its argument is -0.0, else it returns 0.0.

-

These relational and logical operators can be used as a masking or -selection operation in a formula. For example, the number of atoms -whose properties satifsy one or more criteria could be calculated by -taking the returned per-atom vector of ones and zeroes and passing it -to the compute reduce command.

-
-
-
-

Math Functions

-

Math functions are specified as keywords followed by one or more -parenthesized arguments “x”, “y”, “z”, each of which can themselves be -arbitrarily complex formulas. In this syntax, the arguments can -represent scalar values or global vectors or per-atom vectors. In the -latter case, the math operation is performed on each element of the -vector. For example, “sqrt(natoms)” is the sqrt() of a scalar, where -“sqrt(y*z)” yields a per-atom vector with each element being the -sqrt() of the product of one atom’s y and z coordinates.

-

Most of the math functions perform obvious operations. The ln() is -the natural log; log() is the base 10 log.

-

The random(x,y,z) function takes 3 arguments: x = lo, y = hi, and z = -seed. It generates a uniform random number between lo and hi. The -normal(x,y,z) function also takes 3 arguments: x = mu, y = sigma, and -z = seed. It generates a Gaussian variate centered on mu with -variance sigma^2. In both cases the seed is used the first time the -internal random number generator is invoked, to initialize it. For -equal-style and vector-style variables, every processor uses the same -seed so that they each generate the same sequence of random numbers. -For atom-style variables, a unique seed is created for each processor, -based on the specified seed. This effectively generates a different -random number for each atom being looped over in the atom-style -variable.

-
-

Note

-

Internally, there is just one random number generator for all -equal-style and vector-style variables and another one for all -atom-style variables. If you define multiple variables (of each -style) which use the random() or normal() math functions, then the -internal random number generators will only be initialized once, which -means only one of the specified seeds will determine the sequence of -generated random numbers.

-
-

The ceil(), floor(), and round() functions are those in the C math -library. Ceil() is the smallest integer not less than its argument. -Floor() if the largest integer not greater than its argument. Round() -is the nearest integer to its argument.

-

The ramp(x,y) function uses the current timestep to generate a value -linearly intepolated between the specified x,y values over the course -of a run, according to this formula:

-
value = x + (y-x) * (timestep-startstep) / (stopstep-startstep)
-
-
-

The run begins on startstep and ends on stopstep. Startstep and -stopstep can span multiple runs, using the start and stop keywords -of the run command. See the run command for -details of how to do this.

-

The stagger(x,y) function uses the current timestep to generate a new -timestep. X,y > 0 and x > y are required. The generated timesteps -increase in a staggered fashion, as the sequence -x,x+y,2x,2x+y,3x,3x+y,etc. For any current timestep, the next -timestep in the sequence is returned. Thus if stagger(1000,100) is -used in a variable by the dump_modify every -command, it will generate the sequence of output timesteps:

-
100,1000,1100,2000,2100,3000,etc
-
-
-

The logfreq(x,y,z) function uses the current timestep to generate a -new timestep. X,y,z > 0 and y < z are required. The generated -timesteps are on a base-z logarithmic scale, starting with x, and the -y value is how many of the z-1 possible timesteps within one -logarithmic interval are generated. I.e. the timesteps follow the -sequence x,2x,3x,...y*x,x*z,2x*z,3x*z,...y*x*z,x*z^2,2x*z^2,etc. For -any current timestep, the next timestep in the sequence is returned. -Thus if logfreq(100,4,10) is used in a variable by the dump_modify every command, it will generate this sequence of -output timesteps:

-
100,200,300,400,1000,2000,3000,4000,10000,20000,etc
-
-
-

The logfreq2(x,y,z) function is similar to logfreq, except a single -logarithmic interval is divided into y equally-spaced timesteps and -all of them are output. Y < z is not required. Thus, if -logfreq2(100,18,10) is used in a variable by the dump_modify every command, then the interval between 100 and -1000 is divided as 900/18 = 50 steps, and it will generate the -sequence of output timesteps:

-
100,150,200,...950,1000,1500,2000,...9500,10000,15000,etc
-
-
-

The stride(x,y,z) function uses the current timestep to generate a new -timestep. X,y >= 0 and z > 0 and x <= y are required. The generated -timesteps increase in increments of z, from x to y, i.e. it generates -the sequece x,x+z,x+2z,...,y. If y-x is not a multiple of z, then -similar to the way a for loop operates, the last value will be one -that does not exceed y. For any current timestep, the next timestep -in the sequence is returned. Thus if stride(1000,2000,100) is used -in a variable by the dump_modify every command, it -will generate the sequence of output timesteps:

-
1000,1100,1200, ... ,1900,2000
-
-
-

The stride2(x,y,z,a,b,c) function is similar to the stride() function -except it generates two sets of strided timesteps, one at a coarser -level and one at a finer level. Thus it is useful for debugging, -e.g. to produce output every timestep at the point in simulation when -a problem occurs. X,y >= 0 and z > 0 and x <= y are required, as are -a,b >= 0 and c > 0 and a < b. Also, a >= x and b <= y are required so -that the second stride is inside the first. The generated timesteps -increase in increments of z, starting at x, until a is reached. At -that point the timestep increases in increments of c, from a to b, -then after b, increments by z are resumed until y is reached. For any -current timestep, the next timestep in the sequence is returned. Thus -if stride(1000,2000,100,1350,1360,1) is used in a variable by the -dump_modify every command, it will generate the -sequence of output timesteps:

-
1000,1100,1200,1300,1350,1351,1352, ... 1359,1360,1400,1500, ... ,2000
-
-
-

The vdisplace(x,y) function takes 2 arguments: x = value0 and y = -velocity, and uses the elapsed time to change the value by a linear -displacement due to the applied velocity over the course of a run, -according to this formula:

-
value = value0 + velocity*(timestep-startstep)*dt
-
-
-

where dt = the timestep size.

-

The run begins on startstep. Startstep can span multiple runs, using -the start keyword of the run command. See the -run command for details of how to do this. Note that the -thermo_style keyword elaplong = -timestep-startstep.

-

The swiggle(x,y,z) and cwiggle(x,y,z) functions each take 3 arguments: -x = value0, y = amplitude, z = period. They use the elapsed time to -oscillate the value by a sin() or cos() function over the course of a -run, according to one of these formulas, where omega = 2 PI / period:

-
value = value0 + Amplitude * sin(omega*(timestep-startstep)*dt)
-value = value0 + Amplitude * (1 - cos(omega*(timestep-startstep)*dt))
-
-
-

where dt = the timestep size.

-

The run begins on startstep. Startstep can span multiple runs, using -the start keyword of the run command. See the -run command for details of how to do this. Note that the -thermo_style keyword elaplong = -timestep-startstep.

-
-
-
-

Group and Region Functions

-

Group functions are specified as keywords followed by one or two -parenthesized arguments. The first argument ID is the group-ID. -The dim argument, if it exists, is x or y or z. The dir -argument, if it exists, is xmin, xmax, ymin, ymax, zmin, or -zmax. The dimdim argument, if it exists, is xx or yy or zz -or xy or yz or xz.

-

The group function count() is the number of atoms in the group. The -group functions mass() and charge() are the total mass and charge of -the group. Xcm() and vcm() return components of the position and -velocity of the center of mass of the group. Fcm() returns a -component of the total force on the group of atoms. Bound() returns -the min/max of a particular coordinate for all atoms in the group. -Gyration() computes the radius-of-gyration of the group of atoms. See -the compute gyration command for a definition -of the formula. Angmom() returns components of the angular momentum -of the group of atoms around its center of mass. Torque() returns -components of the torque on the group of atoms around its center of -mass, based on current forces on the atoms. Inertia() returns one of -6 components of the symmetric inertia tensor of the group of atoms -around its center of mass, ordered as Ixx,Iyy,Izz,Ixy,Iyz,Ixz. -Omega() returns components of the angular velocity of the group of -atoms around its center of mass.

-

Region functions are specified exactly the same way as group functions -except they take an extra final argument IDR which is the region ID. -The function is computed for all atoms that are in both the group and -the region. If the group is “all”, then the only criteria for atom -inclusion is that it be in the region.

-
-
-
-

Special Functions

-

Special functions take specific kinds of arguments, meaning their -arguments cannot be formulas themselves.

-

The sum(x), min(x), max(x), ave(x), trap(x), and slope(x) functions -each take 1 argument which is of the form “c_ID” or “c_ID[N]” or -“f_ID” or “f_ID[N]” or “v_name”. The first two are computes and the -second two are fixes; the ID in the reference should be replaced by -the ID of a compute or fix defined elsewhere in the input script. The -compute or fix must produce either a global vector or array. If it -produces a global vector, then the notation without “[N]” should be -used. If it produces a global array, then the notation with “[N]” -should be used, when N is an integer, to specify which column of the -global array is being referenced. The last form of argument “v_name” -is for a vector-style variable where “name” is replaced by the name of -the variable.

-

These functions operate on a global vector of inputs and reduce it to -a single scalar value. This is analagous to the operation of the -compute reduce command, which performs similar -operations on per-atom and local vectors.

-

The sum() function calculates the sum of all the vector elements. The -min() and max() functions find the minimum and maximum element -respectively. The ave() function is the same as sum() except that it -divides the result by the length of the vector.

-

The trap() function is the same as sum() except the first and last -elements are multiplied by a weighting factor of 1/2 when performing -the sum. This effectively implements an integration via the -trapezoidal rule on the global vector of data. I.e. consider a set of -points, equally spaced by 1 in their x coordinate: (1,V1), (2,V2), -..., (N,VN), where the Vi are the values in the global vector of -length N. The integral from 1 to N of these points is trap(). When -appropriately normalized by the timestep size, this function is useful -for calculating integrals of time-series data, like that generated by -the fix ave/correlate command.

-

The slope() function uses linear regression to fit a line to the set -of points, equally spaced by 1 in their x coordinate: (1,V1), (2,V2), -..., (N,VN), where the Vi are the values in the global vector of -length N. The returned value is the slope of the line. If the line -has a single point or is vertical, it returns 1.0e20.

-

The gmask(x) function takes 1 argument which is a group ID. It -can only be used in atom-style variables. It returns a 1 for -atoms that are in the group, and a 0 for atoms that are not.

-

The rmask(x) function takes 1 argument which is a region ID. It can -only be used in atom-style variables. It returns a 1 for atoms that -are in the geometric region, and a 0 for atoms that are not.

-

The grmask(x,y) function takes 2 arguments. The first is a group ID, -and the second is a region ID. It can only be used in atom-style -variables. It returns a 1 for atoms that are in both the group and -region, and a 0 for atoms that are not in both.

-

The next(x) function takes 1 argument which is a variable ID (not -“v_foo”, just “foo”). It must be for a file-style or atomfile-style -variable. Each time the next() function is invoked (i.e. each time -the equal-style or atom-style variable is evaluated), the following -steps occur.

-

For file-style variables, the current string value stored by the -file-style variable is converted to a numeric value and returned by -the function. And the next string value in the file is read and -stored. Note that if the line previously read from the file was not a -numeric string, then it will typically evaluate to 0.0, which is -likely not what you want.

-

For atomfile-style variables, the current per-atom values stored by -the atomfile-style variable are returned by the function. And the -next set of per-atom values in the file is read and stored.

-

Since file-style and atomfile-style variables read and store the first -line of the file or first set of per-atoms values when they are -defined in the input script, these are the value(s) that will be -returned the first time the next() function is invoked. If next() is -invoked more times than there are lines or sets of lines in the file, -the variable is deleted, similar to how the next command -operates.

-
-
-
-

Feature Functions

-

Feature functions allow to probe the running LAMMPS executable for -whether specific features are either active, defined, or available. -The functions take two arguments, a category and a corresponding -argument. The arguments are strings thus cannot be formulas -themselves (only $-style immediate variable expansion is possible). -Return value is either 1.0 or 0.0 depending on whether the function -evaluates to true or false, respectively.

-

The is_active() function allows to query for active settings which -are grouped by categories. Currently supported categories and -arguments are:

-
    -
  • package (argument = cuda or gpu or intel or kokkos or omp)
  • -
  • newton (argument = pair or bond or any)
  • -
  • pair (argument = single or respa or manybody or tail or shift)
  • -
  • comm_style (argument = brick or tiled)
  • -
  • min_style (argument = any of the compiled in minimizer styles)
  • -
  • run_style (argument = any of the compiled in run styles)
  • -
  • atom_style (argument = any of the compiled in atom styles)
  • -
  • pair_style (argument = any of the compiled in pair styles)
  • -
  • bond_style (argument = any of the compiled in bond styles)
  • -
  • angle_style (argument = any of the compiled in angle styles)
  • -
  • dihedral_style (argument = any of the compiled in dihedral styles)
  • -
  • improper_style (argument = any of the compiled in improper styles)
  • -
  • kspace_style (argument = any of the compiled in kspace styles)
  • -
-

Most of the settings are self-explanatory, the single argument in the -pair category allows to check whether a pair style supports a -Pair::single() function as needed by compute group/group and others -features or LAMMPS, respa allows to check whether the inner/middle/outer -mode of r-RESPA is supported. In the various style categories, -the checking is also done using suffix flags, if available and enabled.

-

Example 1: disable use of suffix for pppm when using GPU package (i.e. run it on the CPU concurrently to running the pair style on the GPU), but do use the suffix otherwise (e.g. with USER-OMP).

-
pair_style lj/cut/coul/long 14.0
-if $(is_active(package,gpu)) then "suffix off"
-kspace_style pppm
-
-
-

Example 2: use r-RESPA with inner/outer cutoff, if supported by pair style, otherwise fall back to using pair and reducing the outer time step

-
timestep $(2.0*(1.0+*is_active(pair,respa))
-if $(is_active(pair,respa)) then "run_style respa 4 3 2 2  improper 1 inner 2 5.5 7.0 outer 3 kspace 4" else "run_style respa 3 3 2  improper 1 pair 2 kspace 3"
-
-
-

The is_defined() function allows to query categories like compute, -dump, fix, group, region, and variable whether an entry -with the provided name or id is defined.

-

The is_available() function allows to query whether a specific -optional feature is available, i.e. compiled in. This currently -works for the following categories: command, compute, fix, -and pair_style. For all categories except command also appending -active suffixes is tried before reporting failure.

-
-
-
-

Atom Values and Vectors

-

Atom values take an integer argument I from 1 to N, where I is the -atom-ID, e.g. x[243], which means use the x coordinate of the atom -with ID = 243. Or they can take a variable name, specified as v_name, -where name is the name of the variable, like x[v_myIndex]. The -variable can be of any style except vector or atom or atomfile -variables. The variable is evaluated and the result is expected to be -numeric and is cast to an integer (i.e. 3.4 becomes 3), to use an an -index, which must be a value from 1 to N. Note that a “formula” -cannot be used as the argument between the brackets, e.g. x[243+10] -or x[v_myIndex+1] are not allowed. To do this a single variable can -be defined that contains the needed formula.

-

Note that the 0 < atom-ID <= N, where N is the largest atom ID -in the system. If an ID is specified for an atom that does not -currently exist, then the generated value is 0.0.

-

Atom vectors generate one value per atom, so that a reference like -“vx” means the x-component of each atom’s velocity will be used when -evaluating the variable.

-

The meaning of the different atom values and vectors is mostly -self-explanatory. Mol refers to the molecule ID of an atom, and is -only defined if an atom_style is being used that -defines molecule IDs.

-

Note that many other atom attributes can be used as inputs to a -variable by using the compute property/atom command and then specifying -a quantity from that compute.

-
-
-
-

Compute References

-

Compute references access quantities calculated by a -compute. The ID in the reference should be replaced by -the ID of a compute defined elsewhere in the input script. As -discussed in the doc page for the compute command, -computes can produce global, per-atom, or local values. Only global -and per-atom values can be used in a variable. Computes can also -produce a scalar, vector, or array.

-

An equal-style variable can only use scalar values, which means a -global scalar, or an element of a global or per-atom vector or array. -A vector-style variable can use scalar values or a global vector of -values, or a column of a global array of values. Atom-style variables -can use global scalar values. They can also use per-atom vector -values, or a column of a per-atom array. See the doc pages for -individual computes to see what kind of values they produce.

-

Examples of different kinds of compute references are as follows. -There is typically no ambiguity (see exception below) as to what a -reference means, since computes only produce either global or per-atom -quantities, never both.

- ---- - - - - - - - - - - - -
c_IDglobal scalar, or per-atom vector
c_ID[I]Ith element of global vector, or atom I’s value in per-atom vector, or Ith column from per-atom array
c_ID[I][J]I,J element of global array, or atom I’s Jth value in per-atom array
-

For I and J indices, integers can be specified or a variable name, -specified as v_name, where name is the name of the variable. The -rules for this syntax are the same as for the “Atom Values and -Vectors” discussion above.

-

One source of ambiguity for compute references is when a vector-style -variable refers to a compute that produces both a global scalar and a -global vector. Consider a compute with ID “foo” that does this, -referenced as follows by variable “a”, where “myVec” is another -vector-style variable:

-
variable a vector c_foo*v_myVec
-
-
-

The reference “c_foo” could refer to either the global scalar or -global vector produced by compute “foo”. In this case, “c_foo” will -always refer to the global scalar, and “C_foo” can be used to -reference the global vector. Similarly if the compute produces both a -global vector and global array, then “c_foo[I]” will always refer to -an element of the global vector, and “C_foo[I]” can be used to -reference the Ith column of the global array.

-

Note that if a variable containing a compute is evaluated directly in -an input script (not during a run), then the values accessed by the -compute must be current. See the discussion below about “Variable -Accuracy”.

-
-
-
-

Fix References

-

Fix references access quantities calculated by a fix. -The ID in the reference should be replaced by the ID of a fix defined -elsewhere in the input script. As discussed in the doc page for the -fix command, fixes can produce global, per-atom, or local -values. Only global and per-atom values can be used in a variable. -Fixes can also produce a scalar, vector, or array. An equal-style -variable can only use scalar values, which means a global scalar, or -an element of a global or per-atom vector or array. Atom-style -variables can use the same scalar values. They can also use per-atom -vector values. A vector value can be a per-atom vector itself, or a -column of an per-atom array. See the doc pages for individual fixes -to see what kind of values they produce.

-

The different kinds of fix references are exactly the same as the -compute references listed in the above table, where “c_” is replaced -by “f_”. Again, there is typically no ambiguity (see exception below) -as to what a reference means, since fixes only produce either global -or per-atom quantities, never both.

- ---- - - - - - - - - - - - -
f_IDglobal scalar, or per-atom vector
f_ID[I]Ith element of global vector, or atom I’s value in per-atom vector, or Ith column from per-atom array
f_ID[I][J]I,J element of global array, or atom I’s Jth value in per-atom array
-

For I and J indices, integers can be specified or a variable name, -specified as v_name, where name is the name of the variable. The -rules for this syntax are the same as for the “Atom Values and -Vectors” discussion above.

-

One source of ambiguity for fix references is the same ambiguity -discussed for compute references above. Namely when a vector-style -variable refers to a fix that produces both a global scalar and a -global vector. The solution is the same as for compute references. -For a fix with ID “foo”, “f_foo” will always refer to the global -scalar, and “F_foo” can be used to reference the global vector. And -similarly for distinguishing between a fix’s global vector versus -global array with “f_foo[I]” versus “F_foo[I]”.

-

Note that if a variable containing a fix is evaluated directly in an -input script (not during a run), then the values accessed by the fix -should be current. See the discussion below about “Variable -Accuracy”.

-

Note that some fixes only generate quantities on certain timesteps. -If a variable attempts to access the fix on non-allowed timesteps, an -error is generated. For example, the fix ave/time -command may only generate averaged quantities every 100 steps. See -the doc pages for individual fix commands for details.

-
-
-
-

Variable References

-

Variable references access quantities stored or calculated by other -variables, which will cause those variables to be evaluated. The name -in the reference should be replaced by the name of a variable defined -elsewhere in the input script.

-

As discussed on this doc page, equal-style variables generate a single -global numeric value, vector-style variables gerarate a vector of -global numeric values, and atom-style and atomfile-style variables -generate a per-atom vector of numeric values. All other variables -store one or more strings.

-

The formula for an equal-style variable can use any style of variable -including a vector_style or atom-style or atomfile-style. For these -3 styles, a subscript must be used to access a single value from -the vector-, atom-, or atomfile-style variable. If a string-storing -variable is used, the string is converted to a numeric value. Note -that this will typically produce a 0.0 if the string is not a numeric -string, which is likely not what you want.

-

The formula for a vector-style variable can use any style of variable, -including atom-style or atomfile-style variables. For these 2 styles, -a subscript must be used to access a single value from the atom-, or -atomfile-style variable.

-

The formula for an atom-style variable can use any style of variable, -including other atom-style or atomfile-style variables. If it uses a -vector-style variable, a subscript must be used to access a single -value from the vector-style variable.

-

Examples of different kinds of variable references are as follows. -There is no ambiguity as to what a reference means, since variables -produce only a global scalar or global vector or per-atom vector.

- ---- - - - - - - - - - - - - - - - - - -
v_nameglobal scalar from equal-style variable
v_nameglobal vector from vector-style variable
v_nameper-atom vector from atom-style or atomfile-style variable
v_name[I]Ith element of a global vector from vector-style variable
v_name[I]value of atom with ID = I from atom-style or atomfile-style variable
-

For the I index, an integer can be specified or a variable name, -specified as v_name, where name is the name of the variable. The -rules for this syntax are the same as for the “Atom Values and -Vectors” discussion above.

-
-

Immediate Evaluation of Variables:

-

If you want an equal-style variable to be evaluated immediately, it -may be the case that you do not need to define a variable at all. See -Section 3.2 of the manual, which -describes the use of “immediate” variables in an input script, -specified as $(formula) with parenthesis, where the formula has the -same syntax as equal-style variables described on this page. This -effectively evaluates a formula immediately without using the variable -command to define a named variable.

-

More generally, there is a difference between referencing a variable -with a leading $ sign (e.g. $x or ${abc}) versus with a leading “v_” -(e.g. v_x or v_abc). The former can be used in any input script -command, including a variable command. The input script parser -evaluates the reference variable immediately and substitutes its value -into the command. As explained in Section commands 3.2 for “Parsing rules”, you can also use -un-named “immediate” variables for this purpose. For example, a -string like this $((xlo+xhi)/2+sqrt(v_area)) in an input script -command evaluates the string between the parenthesis as an equal-style -variable formula.

-

Referencing a variable with a leading “v_” is an optional or required -kind of argument for some commands (e.g. the fix ave/spatial or dump custom or -thermo_style commands) if you wish it to evaluate -a variable periodically during a run. It can also be used in a -variable formula if you wish to reference a second variable. The -second variable will be evaluated whenever the first variable is -evaluated.

-

As an example, suppose you use this command in your input script to -define the variable “v” as

-
variable v equal vol
-
-
-

before a run where the simulation box size changes. You might think -this will assign the initial volume to the variable “v”. That is not -the case. Rather it assigns a formula which evaluates the volume -(using the thermo_style keyword “vol”) to the variable “v”. If you -use the variable “v” in some other command like fix ave/time then the current volume of the box will be -evaluated continuously during the run.

-

If you want to store the initial volume of the system, you can do it -this way:

-
variable v equal vol
-variable v0 equal $v
-
-
-

The second command will force “v” to be evaluated (yielding the -initial volume) and assign that value to the variable “v0”. Thus the -command

-
thermo_style custom step v_v v_v0
-
-
-

would print out both the current and initial volume periodically -during the run.

-

Note that it is a mistake to enclose a variable formula in double -quotes if it contains variables preceeded by $ signs. For example,

-
variable vratio equal "${vfinal}/${v0}"
-
-
-

This is because the quotes prevent variable substitution (see this section on parsing input script -commands), and thus an error will occur when the formula for “vratio” -is evaluated later.

-
-

Variable Accuracy:

-

Obviously, LAMMPS attempts to evaluate variables containing formulas -(equal and atom style variables) accurately whenever the -evaluation is performed. Depending on what is included in the -formula, this may require invoking a compute, either -directly or indirectly via a thermo keyword, or accessing a value -previously calculated by a compute, or accessing a value calculated -and stored by a fix. If the compute is one that calculates -the pressure or energy of the system, then these quantities need to be -tallied during the evaluation of the interatomic potentials (pair, -bond, etc) on timesteps that the variable will need the values.

-

LAMMPS keeps track of all of this during a run or energy minimization. An error will be generated if you -attempt to evaluate a variable on timesteps when it cannot produce -accurate values. For example, if a thermo_style custom command prints a variable which accesses -values stored by a fix ave/time command and the -timesteps on which thermo output is generated are not multiples of the -averaging frequency used in the fix command, then an error will occur.

-

An input script can also request variables be evaluated before or -after or in between runs, e.g. by including them in a -print command. In this case, if a compute is needed to -evaluate a variable (either directly or indirectly), LAMMPS will not -invoke the compute, but it will use a value previously calculated by -the compute, and can do this only if it was invoked on the current -timestep. Fixes will always provide a quantity needed by a variable, -but the quantity may or may not be current. This leads to one of -three kinds of behavior:

-

(1) The variable may be evaluated accurately. If it contains -references to a compute or fix, and these values were calculated on -the last timestep of a preceeding run, then they will be accessed and -used by the variable and the result will be accurate.

-

(2) LAMMPS may not be able to evaluate the variable and will generate -an error message stating so. For example, if the variable requires a -quantity from a compute that has not been invoked on -the current timestep, LAMMPS will generate an error. This means, for -example, that such a variable cannot be evaluated before the first run -has occurred. Likewise, in between runs, a variable containing a -compute cannot be evaluated unless the compute was invoked on the last -timestep of the preceding run, e.g. by thermodynamic output.

-

One way to get around this problem is to perform a 0-timestep run -before using the variable. For example, these commands

-
variable t equal temp
-print "Initial temperature = $t"
-run 1000
-
-
-

will generate an error if the run is the first run specified in the -input script, because generating a value for the “t” variable requires -a compute for calculating the temperature to be invoked.

-

However, this sequence of commands would be fine:

-
run 0
-variable t equal temp
-print "Initial temperature = $t"
-run 1000
-
-
-

The 0-timestep run initializes and invokes various computes, including -the one for temperature, so that the value it stores is current and -can be accessed by the variable “t” after the run has completed. Note -that a 0-timestep run does not alter the state of the system, so it -does not change the input state for the 1000-timestep run that -follows. Also note that the 0-timestep run must actually use and -invoke the compute in question (e.g. via thermo or -dump output) in order for it to enable the compute to be -used in a variable after the run. Thus if you are trying to print a -variable that uses a compute you have defined, you can insure it is -invoked on the last timestep of the preceding run by including it in -thermodynamic output.

-

Unlike computes, fixes will never generate an error if -their values are accessed by a variable in between runs. They always -return some value to the variable. However, the value may not be what -you expect if the fix has not yet calculated the quantity of interest -or it is not current. For example, the fix indent -command stores the force on the indenter. But this is not computed -until a run is performed. Thus if a variable attempts to print this -value before the first run, zeroes will be output. Again, performing -a 0-timestep run before printing the variable has the desired effect.

-

(3) The variable may be evaluated incorrectly and LAMMPS may have no -way to detect this has occurred. Consider the following sequence of -commands:

-
pair_coeff 1 1 1.0 1.0
-run 1000
-pair_coeff 1 1 1.5 1.0
-variable e equal pe
-print "Final potential energy = $e"
-
-
-

The first run is performed using one setting for the pairwise -potential defined by the pair_style and -pair_coeff commands. The potential energy is -evaluated on the final timestep and stored by the compute pe compute (this is done by the -thermo_style command). Then a pair coefficient is -changed, altering the potential energy of the system. When the -potential energy is printed via the “e” variable, LAMMPS will use the -potential energy value stored by the compute pe -compute, thinking it is current. There are many other commands which -could alter the state of the system between runs, causing a variable -to evaluate incorrectly.

-

The solution to this issue is the same as for case (2) above, namely -perform a 0-timestep run before the variable is evaluated to insure -the system is up-to-date. For example, this sequence of commands -would print a potential energy that reflected the changed pairwise -coefficient:

-
pair_coeff 1 1 1.0 1.0
-run 1000
-pair_coeff 1 1 1.5 1.0
-run 0
-variable e equal pe
-print "Final potential energy = $e"
-
-
-
-
-
-
-

Restrictions

-

Indexing any formula element by global atom ID, such as an atom value, -requires the atom style to use a global mapping in -order to look up the vector indices. By default, only atom styles -with molecular information create global maps. The atom_modify map command can override the default, e.g. for -atomic-style atom styles.

-

All universe- and uloop-style variables defined in an input script -must have the same number of values.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/velocity.html b/doc/velocity.html deleted file mode 100644 index 819b9bf31c..0000000000 --- a/doc/velocity.html +++ /dev/null @@ -1,419 +0,0 @@ - - - - - - - - - - - velocity command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

velocity command

-
-

Syntax

-
velocity group-ID style args keyword value ...
-
-
-
    -
  • group-ID = ID of group of atoms whose velocity will be changed
  • -
  • style = create or set or scale or ramp or zero
  • -
-
-create args = temp seed
-  temp = temperature value (temperature units)
-  seed = random # seed (positive integer)
-set args = vx vy vz
-  vx,vy,vz = velocity value or NULL (velocity units)
-  any of vx,vy,vz van be a variable (see below)
-scale arg = temp
-  temp = temperature value (temperature units)
-ramp args = vdim vlo vhi dim clo chi
-  vdim = vx or vy or vz
-  vlo,vhi = lower and upper velocity value (velocity units)
-  dim = x or y or z
-  clo,chi = lower and upper coordinate bound (distance units)
-zero arg = linear or angular
-  linear = zero the linear momentum
-  angular = zero the angular momentum
-
-
    -
  • zero or more keyword/value pairs may be appended
  • -
  • keyword = dist or sum or mom or rot or temp or bias or loop or units
  • -
-
-dist value = uniform or gaussian
-sum value = no or yes
-mom value = no or yes
-rot value = no or yes
-temp value = temperature compute ID
-bias value = no or yes
-loop value = all or local or geom
-rigid value = fix-ID
-  fix-ID = ID of rigid body fix
-units value = box or lattice
-
-
-
-

Examples

-
velocity all create 300.0 4928459 rot yes dist gaussian
-velocity border set NULL 4.0 v_vz sum yes units box
-velocity flow scale 300.0
-velocity flow ramp vx 0.0 5.0 y 5 25 temp mytemp
-velocity all zero linear
-
-
-
-
-

Description

-

Set or change the velocities of a group of atoms in one of several -styles. For each style, there are required arguments and optional -keyword/value parameters. Not all options are used by each style. -Each option has a default as listed below.

-

The create style generates an ensemble of velocities using a random -number generator with the specified seed as the specified temperature.

-

The set style sets the velocities of all atoms in the group to the -specified values. If any component is specified as NULL, then it is -not set. Any of the vx,vy,vz velocity components can be specified as -an equal-style or atom-style variable. If the value -is a variable, it should be specified as v_name, where name is the -variable name. In this case, the variable will be evaluated, and its -value used to determine the velocity component. Note that if a -variable is used, the velocity it calculates must be in box units, not -lattice units; see the discussion of the units keyword below.

-

Equal-style variables can specify formulas with various mathematical -functions, and include thermo_style command -keywords for the simulation box parameters or other parameters.

-

Atom-style variables can specify the same formulas as equal-style -variables but can also include per-atom values, such as atom -coordinates. Thus it is easy to specify a spatially-dependent -velocity field.

-

The scale style computes the current temperature of the group of -atoms and then rescales the velocities to the specified temperature.

-

The ramp style is similar to that used by the compute temp/ramp command. Velocities ramped -uniformly from vlo to vhi are applied to dimension vx, or vy, or vz. -The value assigned to a particular atom depends on its relative -coordinate value (in dim) from clo to chi. For the example above, an -atom with y-coordinate of 10 (1/4 of the way from 5 to 25), would be -assigned a x-velocity of 1.25 (1/4 of the way from 0.0 to 5.0). Atoms -outside the coordinate bounds (less than 5 or greater than 25 in this -case), are assigned velocities equal to vlo or vhi (0.0 or 5.0 in this -case).

-

The zero style adjusts the velocities of the group of atoms so that -the aggregate linear or angular momentum is zero. No other changes -are made to the velocities of the atoms. If the rigid option is -specified (see below), then the zeroing is performed on individual -rigid bodies, as defined by the fix rigid or fix rigid/small commands. In other words, zero linear -will set the linear momentum of each rigid body to zero, and zero -angular will set the angular momentum of each rigid body to zero. -This is done by adjusting the velocities of the atoms in each rigid -body.

-

All temperatures specified in the velocity command are in temperature -units; see the units command. The units of velocities and -coordinates depend on whether the units keyword is set to box or -lattice, as discussed below.

-

For all styles, no atoms are assigned z-component velocities if the -simulation is 2d; see the dimension command.

-
-

The keyword/value options are used in the following ways by the -various styles.

-

The dist keyword is used by create. The ensemble of generated -velocities can be a uniform distribution from some minimum to -maximum value, scaled to produce the requested temperature. Or it can -be a gaussian distribution with a mean of 0.0 and a sigma scaled to -produce the requested temperature.

-

The sum keyword is used by all styles, except zero. The new -velocities will be added to the existing ones if sum = yes, or will -replace them if sum = no.

-

The mom and rot keywords are used by create. If mom = yes, the -linear momentum of the newly created ensemble of velocities is zeroed; -if rot = yes, the angular momentum is zeroed.

-

*line

-

If specified, the temp keyword is used by create and scale to -specify a compute that calculates temperature in a -desired way, e.g. by first subtracting out a velocity bias, as -discussed in Section howto 16 of the doc -pages. If this keyword is not specified, create and scale -calculate temperature using a compute that is defined internally as -follows:

-
compute velocity_temp group-ID temp
-
-
-

where group-ID is the same ID used in the velocity command. i.e. the -group of atoms whose velocity is being altered. This compute is -deleted when the velocity command is finished. See the compute temp command for details. If the calculated -temperature should have degrees-of-freedom removed due to fix -constraints (e.g. SHAKE or rigid-body constraints), then the -appropriate fix command must be specified before the velocity command -is issued.

-

The bias keyword with a yes setting is used by create and -scale, but only if the temp keyword is also used to specify a -compute that calculates temperature in a desired way. -If the temperature compute also calculates a velocity bias, the the -bias is subtracted from atom velocities before the create and -scale operations are performed. After the operations, the bias is -added back to the atom velocities. See Section howto 16 of the doc pages for more discussion -of temperature computes with biases. Note that the velocity bias is -only applied to atoms in the temperature compute specified with the -temp keyword.

-

As an example, assume atoms are currently streaming in a flow -direction (which could be separately initialized with the ramp -style), and you wish to initialize their thermal velocity to a desired -temperature. In this context thermal velocity means the per-particle -velocity that remains when the streaming velocity is subtracted. This -can be done using the create style with the temp keyword -specifying the ID of a compute temp/ramp or -compute temp/profile command, and the -bias keyword set to a yes value.

-
-

The loop keyword is used by create in the following ways.

-

If loop = all, then each processor loops over all atoms in the -simulation to create velocities, but only stores velocities for atoms -it owns. This can be a slow loop for a large simulation. If atoms -were read from a data file, the velocity assigned to a particular atom -will be the same, independent of how many processors are being used. -This will not be the case if atoms were created using the -create_atoms command, since atom IDs will likely -be assigned to atoms differently.

-

If loop = local, then each processor loops over only its atoms to -produce velocities. The random number seed is adjusted to give a -different set of velocities on each processor. This is a fast loop, -but the velocity assigned to a particular atom will depend on which -processor owns it. Thus the results will always be different when a -simulation is run on a different number of processors.

-

If loop = geom, then each processor loops over only its atoms. For -each atom a unique random number seed is created, based on the atom’s -xyz coordinates. A velocity is generated using that seed. This is a -fast loop and the velocity assigned to a particular atom will be the -same, independent of how many processors are used. However, the set -of generated velocities may be more correlated than if the all or -local keywords are used.

-

Note that the loop geom keyword will not necessarily assign -identical velocities for two simulations run on different machines. -This is because the computations based on xyz coordinates are -sensitive to tiny differences in the double-precision value for a -coordinate as stored on a particular machine.

-
-

The rigid keyword only has meaning when used with the zero style. -It allows specification of a fix-ID for one of the rigid-body fix variants which defines a set of rigid bodies. The -zeroing of linear or angular momentum is then performed for each rigid -body defined by the fix, as described above.

-

The units keyword is used by set and ramp. If units = box, -the velocities and coordinates specified in the velocity command are -in the standard units described by the units command -(e.g. Angstroms/fmsec for real units). If units = lattice, velocities -are in units of lattice spacings per time (e.g. spacings/fmsec) and -coordinates are in lattice spacings. The lattice -command must have been previously used to define the lattice spacing.

-
-
-
-

Restrictions

-

Assigning a temperature via the create style to a system with rigid bodies or SHAKE constraints may not -have the desired outcome for two reasons. First, the velocity command -can be invoked before all of the relevant fixes are created and -initialized and the number of adjusted degrees of freedom (DOFs) is -known. Thus it is not possible to compute the target temperature -correctly. Second, the assigned velocities may be partially canceled -when constraints are first enforced, leading to a different -temperature than desired. A workaround for this is to perform a run 0 command, which insures all DOFs are accounted for -properly, and then rescale the temperature to the desired value before -performing a simulation. For example:

-
velocity all create 300.0 12345
-run 0                             # temperature may not be 300K
-velocity all scale 300.0          # now it should be
-
-
-
- -
-

Default

-

The keyword defaults are dist = uniform, sum = no, mom = yes, rot = -no, bias = no, loop = all, and units = lattice. The temp and rigid -keywords are not defined by default.

-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/write_coeff.html b/doc/write_coeff.html deleted file mode 100644 index ac195559bb..0000000000 --- a/doc/write_coeff.html +++ /dev/null @@ -1,234 +0,0 @@ - - - - - - - - - - - write_coeff command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

write_coeff command

-
-

Syntax

-
write_coeff file
-
-
-
file = name of data file to write out
-
-
-
-
-

Examples

-
write_coeff polymer.coeff
-
-
-
-
-

Description

-

Write a text format file with the currently defined force field -coefficients in a way, that it can be read by LAMMPS with the -include command. In combination with the nocoeff -option of write_data this can be used to move -the Coeffs sections from a data file into a separate file.

-
-

Note

-

The write_coeff command is not yet fully implemented in two -respects. First, some pair styles do not yet write their coefficient -information into the coeff file. This means you will need to specify -that information in your input script that reads the data file, via -the pair_coeff command.

-
-
-
-
-

Restrictions

-

none

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/write_data.html b/doc/write_data.html deleted file mode 100644 index 4ad90135b8..0000000000 --- a/doc/write_data.html +++ /dev/null @@ -1,304 +0,0 @@ - - - - - - - - - - - write_data command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

write_data command

-
-

Syntax

-
write_data file keyword value ...
-
-
-
    -
  • file = name of data file to write out
  • -
  • zero or more keyword/value pairs may be appended
  • -
  • keyword = pair or nocoeff
  • -
-
-nocoeff = do not write out force field info
-pair value = ii or ij
-  ii = write one line of pair coefficient info per atom type
-  ij = write one line of pair coefficient info per IJ atom type pair
-
-
-
-

Examples

-
write_data data.polymer
-write_data data.*
-
-
-
-
-

Description

-

Write a data file in text format of the current state of the -simulation. Data files can be read by the read data -command to begin a simulation. The read_data command -also describes their format.

-

Similar to dump files, the data filename can contain a “*” -wild-card character. The “*” is replaced with the current timestep -value.

-
-

Note

-

The write-data command is not yet fully implemented in two -respects. First, most pair styles do not yet write their coefficient -information into the data file. This means you will need to specify -that information in your input script that reads the data file, via -the pair_coeff command. Second, a few of the atom styles (body, ellipsoid, line, tri) that store -auxiliary “bonus” information about aspherical particles, do not yet -write the bonus info into the data file. Both these functionalities -will be added to the write_data command later.

-
-

Because a data file is in text format, if you use a data file written -out by this command to restart a simulation, the initial state of the -new run will be slightly different than the final state of the old run -(when the file was written) which was represented internally by LAMMPS -in binary format. A new simulation which reads the data file will -thus typically diverge from a simulation that continued in the -original input script.

-

If you want to do more exact restarts, using binary files, see the -restart, write_restart, and -read_restart commands. You can also convert -binary restart files to text data files, after a simulation has run, -using the -r command-line switch.

-
-

Note

-

Only limited information about a simulation is stored in a data -file. For example, no information about atom groups and -fixes are stored. Binary restart files -store more information.

-
-

Bond interactions (angle, etc) that have been turned off by the fix shake or delete_bonds command will -be written to a data file as if they are turned on. This means they -will need to be turned off again in a new run after the data file is -read.

-

Bonds that are broken (e.g. by a bond-breaking potential) are not -written to the data file. Thus these bonds will not exist when the -data file is read.

-
-

The nocoeff keyword requests that no force field parameters should -be written to the data file. This can be very helpful, if one wants -to make significant changes to the force field or if the parameters -are read in separately anyway, e.g. from an include file.

-

The pair keyword lets you specify in what format the pair -coefficient information is written into the data file. If the value -is specified as ii, then one line per atom type is written, to -specify the coefficients for each of the I=J interactions. This means -that no cross-interactions for I != J will be specified in the data -file and the pair style will apply its mixing rule, as documented on -individual pair_style doc pages. Of course this -behavior can be overridden in the input script after reading the data -file, by specifying additional pair_coeff commands -for any desired I,J pairs.

-

If the value is specified as ij, then one line of coefficients is -written for all I,J pairs where I <= J. These coefficients will -include any specific settings made in the input script up to that -point. The presence of these I != J coefficients in the data file -will effectively turn off the default mixing rule for the pair style. -Again, the coefficient values in the data file can can be overridden -in the input script after reading the data file, by specifying -additional pair_coeff commands for any desired I,J -pairs.

-
-
-
-

Restrictions

-

This command requires inter-processor communication to migrate atoms -before the data file is written. This means that your system must be -ready to perform a simulation before using this command (force fields -setup, atom masses initialized, etc).

-
- -
-

Default

-

The option defaults are pair = ii.

-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/write_dump.html b/doc/write_dump.html deleted file mode 100644 index 0ed0b45b02..0000000000 --- a/doc/write_dump.html +++ /dev/null @@ -1,273 +0,0 @@ - - - - - - - - - - - write_dump command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

write_dump command

-
-

Syntax

-
write_dump group-ID style file dump-args modify dump_modify-args
-
-
-
    -
  • group-ID = ID of the group of atoms to be dumped
  • -
  • style = any of the supported dump styles
  • -
  • file = name of file to write dump info to
  • -
  • dump-args = any additional args needed for a particular dump style
  • -
  • modify = all args after this keyword are passed to dump_modify (optional)
  • -
  • dump-modify-args = args for dump_modify (optional)
  • -
-
-
-

Examples

-
write_dump all atom dump.atom
-write_dump subgroup atom dump.run.bin
-write_dump all custom dump.myforce.* id type x y vx fx
-write_dump flow custom dump.%.myforce id type c_myF[3] v_ke modify sort id
-write_dump all xyz system.xyz modify sort id elements O H
-write_dump all image snap*.jpg type type size 960 960 modify backcolor white
-write_dump all image snap*.jpg element element &
-   bond atom 0.3 shiny 0.1 ssao yes 6345 0.2 size 1600 1600  &
-   modify backcolor white element C C O H N C C C O H H S O H
-
-
-
-
-

Description

-

Dump a single snapshot of atom quantities to one or more files for the -current state of the system. This is a one-time immediate operation, -in contrast to the dump command which will will set up a -dump style to write out snapshots periodically during a running -simulation.

-

The syntax for this command is mostly identical to that of the -dump and dump_modify commands as if -they were concatenated together, with the following exceptions: There -is no need for a dump ID or dump frequency and the keyword modify is -added. The latter is so that the full range of -dump_modify options can be specified for the single -snapshot, just as they can be for multiple snapshots. The modify -keyword separates the arguments that would normally be passed to the -dump command from those that would be given the dump_modify. Both -support optional arguments and thus LAMMPS needs to be able to cleanly -separate the two sets of args.

-

Note that if the specified filename uses wildcard characters “*” or -“%”, as supported by the dump commmand, they will operate -in the same fashion to create the new filename(s). Normally, dump image files require a filename with a “*” character -for the timestep. That is not the case for the write_dump command; no -wildcard “*” character is necessary.

-
-
-
-

Restrictions

-

All restrictions for the dump and -dump_modify commands apply to this command as well, -with the exception of the dump image filename not -requiring a wildcard “*” character, as noted above.

-

Since dumps are normally written during a run or energy minimization, the simulation has to be ready to run -before this command can be used. Similarly, if the dump requires -information from a compute, fix, or variable, the information needs to -have been calculated for the current timestep (e.g. by a prior run), -else LAMMPS will generate an error message.

-

For example, it is not possible to dump per-atom energy with this -command before a run has been performed, since no energies and forces -have yet been calculated. See the variable doc page -sectinn on Variable Accuracy for more information on this topic.

-
- -
-

Default

-

The defaults are listed on the doc pages for the dump and -dump image and dump_modify -commands.

-
-
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/write_restart.html b/doc/write_restart.html deleted file mode 100644 index cdd335051d..0000000000 --- a/doc/write_restart.html +++ /dev/null @@ -1,301 +0,0 @@ - - - - - - - - - - - write_restart command — LAMMPS documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
-
- -
- -
-
-
- -
-

write_restart command

-
-

Syntax

-
write_restart file keyword value ...
-
-
-
    -
  • file = name of file to write restart information to
  • -
  • zero or more keyword/value pairs may be appended
  • -
  • keyword = fileper or nfile
  • -
-
-fileper arg = Np
-  Np = write one file for every this many processors
-nfile arg = Nf
-  Nf = write this many files, one from each of Nf processors
-
-
-
-

Examples

-
write_restart restart.equil
-write_restart restart.equil.mpiio
-write_restart poly.%.* nfile 10
-
-
-
-
-

Description

-

Write a binary restart file of the current state of the simulation.

-

During a long simulation, the restart command is -typically used to output restart files periodically. The -write_restart command is useful after a minimization or whenever you -wish to write out a single current restart file.

-

Similar to dump files, the restart filename can contain -two wild-card characters. If a “*” appears in the filename, it is -replaced with the current timestep value. If a “%” character appears -in the filename, then one file is written by each processor and the -“%” character is replaced with the processor ID from 0 to P-1. An -additional file with the “%” replaced by “base” is also written, which -contains global information. For example, the files written for -filename restart.% would be restart.base, restart.0, restart.1, ... -restart.P-1. This creates smaller files and can be a fast mode of -output and subsequent input on parallel machines that support parallel -I/O. The optional fileper and nfile keywords discussed below can -alter the number of files written.

-

The restart file can also be written in parallel as one large binary -file via the MPI-IO library, which is part of the MPI standard for -versions 2.0 and above. Using MPI-IO requires two steps. First, -build LAMMPS with its MPIIO package installed, e.g.

-
make yes-mpiio    # installs the MPIIO package
-make g++          # build LAMMPS for your platform
-
-
-

Second, use a restart filename which contains ”.mpiio”. Note that it -does not have to end in ”.mpiio”, just contain those characters. -Unlike MPI-IO dump files, a particular restart file must be both -written and read using MPI-IO.

-

Restart files can be read by a read_restart -command to restart a simulation from a particular state. Because the -file is binary (to enable exact restarts), it may not be readable on -another machine. In this case, you can use the -r command-line switch to convert a restart file to a data -file.

-
-

Note

-

Although the purpose of restart files is to enable restarting a -simulation from where it left off, not all information about a -simulation is stored in the file. For example, the list of fixes that -were specified during the initial run is not stored, which means the -new input script must specify any fixes you want to use. Even when -restart information is stored in the file, as it is for some fixes, -commands may need to be re-specified in the new input script, in order -to re-use that information. Details are usually given in the -documentation of the respective command. Also, see the -read_restart command for general information about -what is stored in a restart file.

-
-
-

The optional nfile or fileper keywords can be used in conjunction -with the “%” wildcard character in the specified restart file name. -As explained above, the “%” character causes the restart file to be -written in pieces, one piece for each of P processors. By default P = -the number of processors the simulation is running on. The nfile or -fileper keyword can be used to set P to a smaller value, which can -be more efficient when running on a large number of processors.

-

The nfile keyword sets P to the specified Nf value. For example, if -Nf = 4, and the simulation is running on 100 processors, 4 files will -be written, by processors 0,25,50,75. Each will collect information -from itself and the next 24 processors and write it to a restart file.

-

For the fileper keyword, the specified value of Np means write one -file for every Np processors. For example, if Np = 4, every 4th -processor (0,4,8,12,etc) will collect information from itself and the -next 3 processors and write it to a restart file.

-
-
-
-

Restrictions

-

This command requires inter-processor communication to migrate atoms -before the restart file is written. This means that your system must -be ready to perform a simulation before using this command (force -fields setup, atom masses initialized, etc).

-

To write and read restart files in parallel with MPI-IO, the MPIIO -package must be installed.

-
- -
- - -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file