diff --git a/doc/Section_commands.html b/doc/Section_commands.html index 9b94fa9595..d6656aa881 100644 --- a/doc/Section_commands.html +++ b/doc/Section_commands.html @@ -422,16 +422,16 @@ potentials. Click on the style itself for a full description:
These are pair styles contributed by users, which can be used if diff --git a/doc/Section_commands.txt b/doc/Section_commands.txt index 142d544212..5797353722 100644 --- a/doc/Section_commands.txt +++ b/doc/Section_commands.txt @@ -649,6 +649,7 @@ potentials. Click on the style itself for a full description: "gran/hooke/history"_pair_gran.html, "hbond/dreiding/lj"_pair_hbond_dreiding.html, "hbond/dreiding/morse"_pair_hbond_dreiding.html, +"kim"_pair_kim.html, "line/lj"_pair_line_lj.html, "lj/charmm/coul/charmm"_pair_charmm.html, "lj/charmm/coul/charmm/implicit"_pair_charmm.html, diff --git a/doc/pair_kim.html b/doc/pair_kim.html new file mode 100644 index 0000000000..86e882a16e --- /dev/null +++ b/doc/pair_kim.html @@ -0,0 +1,128 @@ + +
Syntax: +
+pair_style kim model ++
model = name of KIM model (potential) +
+Examples: +
+pair_style kim model_Ar_P_Morse +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 model is the name of the model for a specific potential +as KIM defines it. In principle, LAMMPS can invoke any KIM model. +You should get an error message from either LAMMPS or KIM if there is +an incompatibility. +
+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: +
+As an example, imagine the KIM model supports Si and C atoms. 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 * * 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 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. +
+Where to look for error messages +
+Some of the KIM models might fail to work with lammps. Check generated +kim.log file for error messages. +
+How to build KIM +
+ENV variables +
+setenv KIM_MODELS_DIR `pwd`/MODELs/ +setenv KIM_DIR `pwd`/ +setenv KIM_DYNAMIC yes +
+It is required that OPENKIM directory with +needed file structure is installed (can be downloaded from openkim.org) +and needed environment variables are set: +KIM_DIR = path openkim-api directory +KIM_DYNAMIC -- if dynamic linking is used during building (default --static) +KIM_MODELS_DIR = path to kim models directory (default -- $KIM_DIR/MODELs) +See openkim-api/INSTALL for detailed instruction. +
+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 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 pair style requires the newton setting to be "off" +for pair interactions. +
+Currently this pair style only works with LAMMPS metal +units, since KIM models are written using +those units. +
+Only KIM models that are using NEIGH-PURE-H, NEIGH-PURE-F and +NEIGH-RVEC-F can be used with lammps. (see KIM documentation on NBC +methods) +
+Related commands: +
+ +Default: none +
+ diff --git a/doc/pair_kim.txt b/doc/pair_kim.txt new file mode 100644 index 0000000000..6f77d2174d --- /dev/null +++ b/doc/pair_kim.txt @@ -0,0 +1,123 @@ +"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c + +:link(lws,http://lammps.sandia.gov) +:link(ld,Manual.html) +:link(lc,Section_commands.html#comm) + +:line + +pair_style kim command :h3 + +[Syntax:] + +pair_style kim model :pre + +model = name of KIM model (potential) + +[Examples:] + +pair_style kim model_Ar_P_Morse +pair_coeff * * Ar Ar :pre + +[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 {model} is the name of the model for a specific potential +as KIM defines it. In principle, LAMMPS can invoke any KIM model. +You should get an error message from either LAMMPS or KIM if there is +an incompatibility. + +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 :ul + +As an example, imagine the KIM model supports Si and C atoms. 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 * * Si Si Si C :pre + +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 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. + +:line + +Where to look for error messages + +Some of the KIM models might fail to work with lammps. Check generated +kim.log file for error messages. + +:line + +How to build KIM + +ENV variables + +setenv KIM_MODELS_DIR `pwd`/MODELs/ +setenv KIM_DIR `pwd`/ +setenv KIM_DYNAMIC yes + +It is required that OPENKIM directory with +needed file structure is installed (can be downloaded from openkim.org) +and needed environment variables are set: +KIM_DIR = path openkim-api directory +KIM_DYNAMIC -- if dynamic linking is used during building (default --static) +KIM_MODELS_DIR = path to kim models directory (default -- $KIM_DIR/MODELs) +See openkim-api/INSTALL for detailed instruction. + +:line + +[Mixing, shift, table, tail correction, restart, rRESPA info]: + +This pair style does not support the "pair_modify"_pair_modify.html +mix, shift, table, and tail options. + +This pair style does not write its information to "binary restart +files"_restart.html, since KIM stores the 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"_run_style.html command. It does not support the +{inner}, {middle}, {outer} keywords. + +:line + +[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_start.html#start_3 section for more info. + +This pair style requires the "newton"_newton.html setting to be "off" +for pair interactions. + +Currently this pair style only works with LAMMPS metal +"units"_units.html, since KIM models are written using +those units. + +Only KIM models that are using NEIGH-PURE-H, NEIGH-PURE-F and +NEIGH-RVEC-F can be used with lammps. (see KIM documentation on NBC +methods) + +[Related commands:] + +"pair_coeff"_pair_coeff.html, "pair_style eam"_pair_eam.html + +[Default:] none