diff --git a/doc/Section_commands.txt b/doc/Section_commands.txt index 28732b2ed1..35f3e486b0 100644 --- a/doc/Section_commands.txt +++ b/doc/Section_commands.txt @@ -686,9 +686,8 @@ package"_Section_start.html#start_3. "awpmd/cut"_pair_awpmd.html, "buck/coul"_pair_buck_coul.html, -"cg/cmm"_pair_cmm.html, -"cg/cmm/coul/cut"_pair_cmm.html, -"cg/cmm/coul/long"_pair_cmm.html, +"lj/sdk"_pair_sdk.html, +"lj/sdk/coul/long"_pair_sdk.html, "dipole/sf"_pair_dipole.html, "eam/cd"_pair_eam.html, "edip"_pair_edip.html, @@ -720,12 +719,10 @@ package"_Section_accelerate.html. "buck/coul/omp"_pair_buck_coul.html, "buck/cuda"_pair_buck.html, "buck/omp"_pair_buck.html, -"cg/cmm/coul/cut/cuda"_pair_cmm.html, -"cg/cmm/coul/debye/cuda"_pair_cmm.html, -"cg/cmm/coul/long/cuda"_pair_cmm.html, -"cg/cmm/coul/long/gpu"_pair_cmm.html, -"cg/cmm/cuda"_pair_cmm.html, -"cg/cmm/gpu"_pair_cmm.html, +"lj/sdk/gpu"_pair_sdk.html, +"lj/sdk/omp"_pair_sdk.html, +"lj/sdk/coul/long/gpu"_pair_sdk.html, +"lj/sdk/coul/long/omp"_pair_sdk.html, "colloid/omp"_pair_colloid.html, "comb/omp"_pair_comb.html, "coul/cut/omp"_pair_coul.html, @@ -890,7 +887,7 @@ These are angle styles contributed by users, which can be used if "LAMMPS is built with the appropriate package"_Section_start.html#start_3. -"cg/cmm"_angle_cmm.html, +"sdk"_angle_sdk.html, "cosine/shift"_angle_cosine_shift.html, "cosine/shift/exp"_angle_cosine_shift_exp.html :tb(c=4,ea=c) diff --git a/doc/Section_packages.txt b/doc/Section_packages.txt index aa7e7fb423..6467bd8c46 100644 --- a/doc/Section_packages.txt +++ b/doc/Section_packages.txt @@ -89,7 +89,7 @@ Package, Description, Author(s), Doc page, Example, Pic/movie, Library USER-MISC, single-file contributions, USER-MISC/README, -, -, -, - USER-ATC, atom-to-continuum coupling, Jones & Templeton & Zimmerman (2), "fix atc"_fix_atc.html, USER/atc, "atc"_atc, lib/atc USER-AWPMD, wave-packet MD, Ilya Valuev (JIHT), "pair_style awpmd/cut"_pair_awpmd.html, USER/awpmd, -, lib/awpmd -USER-CG-CMM, coarse-graining model, Axel Kohlmeyer (Temple U), "pair_style cg/cmm"_pair_cmm.html, USER/cg-cmm, "cg"_cg, - +USER-CG-CMM, coarse-graining model, Axel Kohlmeyer (Temple U), "pair_style lj/sdk"_pair_sdk.html, USER/cg-cmm, "cg"_cg, - USER-CUDA, NVIDIA GPU styles, Christian Trott (U Tech Ilmenau), "accelerate"_Section_accelerate.html#acc_4, USER/cuda, -, lib/cuda USER-EFF, electron force field, Andres Jaramillo-Botero (Caltech), "pair_style eff/cut"_pair_eff.html, USER/eff, "eff"_eff, - USER-EWALDN, Ewald for 1/R^n, Pieter in' t Veld (BASF), "kspace_style"_kspace_style.html, -, -, - @@ -199,28 +199,41 @@ have questions. USER-CG-CMM package :h4 -This package implements 4 commands which can be used in a LAMMPS input +This package implements 3 commands which can be used in a LAMMPS input script: -pair_style cg/cmm -pair_style cg/cmm/coul/cut -pair_style cg/cmm/coul/long -angle_style cg/cmm :ul +pair_style lj/sdk +pair_style lj/sdk/coul/long +angle_style sdk :ul These styles allow coarse grained MD simulations with the parametrization of Shinoda, DeVane, Klein, Mol Sim, 33, 27 (2007) -(cg/cmm), with extensions to simulate ionic liquids, electrolytes, -lipids and charged amino acids (to be published soon). +(SDK), with extensions to simulate ionic liquids, electrolytes, +lipids and charged amino acids. See the doc pages for these commands for details. There are example scripts for using this package in examples/USER/cg-cmm. -The current version of this package should be considered beta -quality. The CG potentials work correctly and well, but there will be -optimizations, cleanups and additional tools to aid in setting up and -analyzing simulations with this package added in the next months. +This is the second generation implementation reducing the +the clutter of the previous version. For many systems with +electrostatics, it will be faster to use pair_style hybrid/overlay +with lj/sdk and coul/long instead of the combined lj/sdk/coul/long style. +since the number of charged atom types is usually small. +For any other coulomb interactions this is now required. +To exploit this property, the use of the kspace_style +pppm/cg is recommended over regular pppm. For all +new styles, input file backward compatibility is provided. +The old implementation is still available through +appending the /old suffix. These will be discontinued +and removed after the new implementation has been +fully validated. + +The current version of this package should be considered +beta quality. The CG potentials work correctly for "normal" +situations, but have not been testing with all kinds of +potential parameters and simuation systems. The person who created this package is Axel Kohlmeyer at Temple U (akohlmey at gmail.com). Contact him directly if you have questions. diff --git a/doc/angle_cmm.html b/doc/angle_sdk.html similarity index 100% rename from doc/angle_cmm.html rename to doc/angle_sdk.html diff --git a/doc/angle_cmm.txt b/doc/angle_sdk.txt similarity index 55% rename from doc/angle_cmm.txt rename to doc/angle_sdk.txt index bbc5033ad6..3c70d42236 100644 --- a/doc/angle_cmm.txt +++ b/doc/angle_sdk.txt @@ -6,45 +6,42 @@ :line -angle_style cg/cmm command :h3 +angle_style sdk command :h3 [Syntax:] -angle_style cg/cmm :pre +angle_style sdk :pre +angle_style sdk/omp :pre [Examples:] -angle_style cg/cmm -angle_coeff 1 300.0 107.0 lj9_6 0.4491 3.7130 :pre +angle_style sdk +angle_coeff 1 300.0 107.0 :pre [Description:] -The {cg/cmm} angle style is a combination of the harmonic angle potential, +The {sdk} angle style is a combination of the harmonic angle potential, :c,image(Eqs/angle_harmonic.jpg) where theta0 is the equilibrium value of the angle and K a prefactor, -with the {repulsive} part of the non-bonded {cg/cmm} pair style +with the {repulsive} part of the non-bonded {lj/sdk} pair style between the atoms 1 and 3. This angle potential is intended for coarse grained MD simulations with the CMM parametrization using the -"pair_style cg/cmm"_pair_cmm.html. Relative to the pair_style -{cg/cmm}, however, the energy is shifted by {epsilon}, to avoid sudden +"pair_style lj/sdk"_pair_sdk.html. Relative to the pair_style +{lj/sdk}, however, the energy is shifted by {epsilon}, to avoid sudden jumps. Note that the usual 1/2 factor is included in K. The following coefficients must be defined for each angle type via the -"angle_coeff"_angle_coeff.html command as in the example above. As -with other CMM coarse grained parameters, they cannot be set in the -data file, but can be restored from restarts via the -"read_restart"_read_restart.html command: +"angle_coeff"_angle_coeff.html command as in the example above: K (energy/radian^2) -theta0 (degrees) -cg_type (string, one of lj9_6, lj12_4, lj12_6) -epsilon (energy units) -sigma (distance units) :ul +theta0 (degrees) :ul Theta0 is specified in degrees, but LAMMPS converts it to radians internally; hence the units of K are in energy/radian^2. +The also required {lj/sdk} parameters will be extracted automatically +from the pair_style. [Restrictions:] @@ -55,6 +52,7 @@ LAMMPS"_Section_start.html#start_3 section for more info on packages. [Related commands:] "angle_coeff"_angle_coeff.html, "angle_style -harmonic"_angle_harmonic.html, "pair_style cg/cmm"_pair_cmm.html +harmonic"_angle_harmonic.html, "pair_style lj/sdk"_pair_sdk.html, +"pair_style lj/sdk/coul/long"_pair_sdk.html [Default:] none diff --git a/doc/pair_cmm.html b/doc/pair_sdk.html similarity index 100% rename from doc/pair_cmm.html rename to doc/pair_sdk.html diff --git a/doc/pair_cmm.txt b/doc/pair_sdk.txt similarity index 52% rename from doc/pair_cmm.txt rename to doc/pair_sdk.txt index b330de4915..476fd06fef 100644 --- a/doc/pair_cmm.txt +++ b/doc/pair_sdk.txt @@ -6,82 +6,51 @@ :line -pair_style cg/cmm command :h3 -pair_style cg/cmm/cuda command :h3 -pair_style cg/cmm/gpu command :h3 -pair_style cg/cmm/coul/cut command :h3 -pair_style cg/cmm/coul/cut/cuda command :h3 -pair_style cg/cmm/coul/debye/cuda command :h3 -pair_style cg/cmm/coul/long command :h3 -pair_style cg/cmm/coul/long/gpu command :h3 -pair_style cg/cmm/coul/long/cuda command :h3 +pair_style lj/sdk command :h3 +pair_style lj/sdk/gpu command :h3 +pair_style lj/sdk/omp command :h3 +pair_style lj/sdk/coul/long command :h3 +pair_style lj/sdk/coul/long/gpu command :h3 +pair_style lj/sdk/coul/long/omp command :h3 [Syntax:] pair_style style args :pre -style = {cg/cmm} or {cg/cmm/coul/cut} or {cg/cmm/coul/long} +style = {lj/sdk} or {lj/sdk/coul/long} args = list of arguments for a particular style :ul - {cg/cmm} args = cutoff + {lj/sdk} args = cutoff cutoff = global cutoff for Lennard Jones interactions (distance units) - {cg/cmm/coul/cut} args = cutoff (cutoff2) (kappa) - cutoff = global cutoff for LJ (and Coulombic if only 1 arg) (distance units) - cutoff2 = global cutoff for Coulombic (optional) (distance units) - kappa = Debye length (optional, defaults to 0.0 = disabled) (inverse distance units) - {cg/cmm/coul/long} args = cutoff (cutoff2) + {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) :pre [Examples:] -pair_style cg/cmm 2.5 +pair_style lj/sdk 2.5 pair_coeff 1 1 lj12_6 1 1.1 2.8 :pre -pair_style cg/cmm/coul/cut 10.0 12.0 -pair_coeff 1 1 lj9_6 100.0 3.5 9.0 -pair_coeff 1 1 lj12_4 100.0 3.5 9.0 9.0 :pre - -pair_style cg/cmm/coul/long 10.0 -pair_style cg/cmm/coul/long 10.0 8.0 -pair_coeff 1 1 lj9_6 100.0 3.5 9.0 :pre +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 :pre [Description:] -The {cg/cmm} styles compute a 9/6, 12/4, or 12/6 Lennard-Jones potential, +The {lj/sdk} styles compute a 9/6, 12/4, or 12/6 Lennard-Jones potential, given by :c,image(Eqs/pair_cmm.jpg) -as required for the CMM Coarse-grained MD parametrization discussed in +as required for the SDK Coarse-grained MD parametrization discussed in "(Shinoda)"_#Shinoda and "(DeVane)"_#DeVane. Rc is the cutoff. -Style {cg/cmm/coul/cut} adds a Coulombic pairwise interaction given by - -:c,image(Eqs/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"_dielectric.html 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. - -This style also contains an additional exp() damping factor -to the Coulombic term, given by - -:c,image(Eqs/pair_debye.jpg) - -where kappa is the Debye length (kappa=0.0 is the unscreened coulomb). -This potential is another way to mimic the screening effect of a polar -solvent. - -Style {cg/cmm/coul/long} computes the same Coulombic interactions as -style {cg/cmm/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"_kspace_style.html 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/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"_kspace_style.html 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"_pair_coeff.html command as in the examples @@ -92,8 +61,7 @@ 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) -cutoff2 (distance units) :ul +cutoff1 (distance units) :ul Note that sigma is defined in the LJ formula as the zero-crossing distance for the potential, not as the energy minimum. The prefactors @@ -106,22 +74,22 @@ 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 {cg/cmm/coul/long} only the LJ cutoff can be specified since a +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. :line -Styles with a {cuda}, {gpu}, or {opt} suffix are functionally the same -as the corresponding style without the suffix. They have been +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 "this section"_Section_accelerate.html 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, and OPT -packages respectively. They are only enabled if LAMMPS was built with +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_start.html#start_3 section for more info. @@ -138,43 +106,41 @@ 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 cg/cmm pair styles {cannot} be mixed, +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 cg/cmm pair styles support the +All of the lj/sdk pair styles support the "pair_modify"_pair_modify.html shift option for the energy of the Lennard-Jones portion of the pair interaction. -The {cg/cmm/coul/long} pair styles support the +The {lj/sdk/coul/long} pair styles support the "pair_modify"_pair_modify.html table option since they can tabulate the short-range portion of the long-range Coulombic interaction. -All of the cg/cmm pair styles write their information to "binary +All of the lj/sdk pair styles write their information to "binary restart files"_restart.html, so pair_style and pair_coeff commands do not need to be specified in an input script that reads a restart file. -The cg/cmm, cg/cmm/coul/cut and lj/cut/coul/long pair styles support +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"_run_style.html command, meaning the pairwise forces can be -partitioned by distance at different levels of the rRESPA hierarchy. -See the "run_style"_run_style.html command for details. +respa"_run_style.html command. :line [Restrictions:] -All of the cg/cmm pair styles are part of the USER-CG-CMM package. -The {cg/cmm/coul/long} style also requires the KSPACE package to be +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_start.html#start_3 section for more info. [Related commands:] -"pair_coeff"_pair_coeff.html, "angle_style cg/cmm"_angle_cmm.html +"pair_coeff"_pair_coeff.html, "angle_style sdk"_angle_sdk.html [Default:] none