@ -656,28 +656,34 @@ if(PKG_USER-VTK)
|
||||
endif()
|
||||
|
||||
if(PKG_KIM)
|
||||
option(DOWNLOAD_KIM "Download KIM-API v1 from OpenKIM instead of using an already installed one)" OFF)
|
||||
option(DOWNLOAD_KIM "Download KIM-API v2 from OpenKIM instead of using an already installed one" OFF)
|
||||
if(DOWNLOAD_KIM)
|
||||
message(STATUS "KIM-API v1 download requested - we will build our own")
|
||||
message(STATUS "KIM-API v2 download requested - we will build our own")
|
||||
enable_language(C)
|
||||
enable_language(Fortran)
|
||||
include(ExternalProject)
|
||||
ExternalProject_Add(kim_build
|
||||
URL https://github.com/openkim/kim-api/archive/v1.9.5.tar.gz
|
||||
URL_MD5 9f66efc128da33039e30659f36fc6d00
|
||||
BUILD_IN_SOURCE 1
|
||||
CONFIGURE_COMMAND <SOURCE_DIR>/configure --prefix=<INSTALL_DIR>
|
||||
URL https://s3.openkim.org/kim-api/kim-api-v2-2.0.0.txz
|
||||
URL_MD5 1ff8f563ad5991f7a2a25b35a13d7308
|
||||
BINARY_DIR build
|
||||
CMAKE_ARGS -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
|
||||
-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
|
||||
-DCMAKE_Fortran_COMPILER=${CMAKE_Fortran_COMPILER}
|
||||
-DCMAKE_INSTALL_PREFIX=<INSTALL_DIR>
|
||||
-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
|
||||
)
|
||||
ExternalProject_get_property(kim_build INSTALL_DIR)
|
||||
set(KIM_INCLUDE_DIRS ${INSTALL_DIR}/include/kim-api-v1)
|
||||
set(KIM_LIBRARIES ${INSTALL_DIR}/lib/libkim-api-v1.so)
|
||||
set(KIM-API-V2_INCLUDE_DIRS ${INSTALL_DIR}/include/kim-api-v2)
|
||||
set(KIM-API-V2_LDFLAGS ${INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/libkim-api-v2${CMAKE_SHARED_LIBRARY_SUFFIX})
|
||||
list(APPEND LAMMPS_DEPS kim_build)
|
||||
else()
|
||||
find_package(KIM)
|
||||
if(NOT KIM_FOUND)
|
||||
message(FATAL_ERROR "KIM-API v1 not found, help CMake to find it by setting KIM_LIBRARY and KIM_INCLUDE_DIR, or set DOWNLOAD_KIM=ON to download it")
|
||||
find_package(KIM-API-V2)
|
||||
if(NOT KIM-API-V2_FOUND)
|
||||
message(FATAL_ERROR "KIM-API v2 not found, help CMake to find it by setting PKG_CONFIG_PATH, or set DOWNLOAD_KIM=ON to download it")
|
||||
endif()
|
||||
endif()
|
||||
list(APPEND LAMMPS_LINK_LIBS ${KIM_LIBRARIES})
|
||||
include_directories(${KIM_INCLUDE_DIRS})
|
||||
list(APPEND LAMMPS_LINK_LIBS "${KIM-API-V2_LDFLAGS}")
|
||||
include_directories(${KIM-API-V2_INCLUDE_DIRS})
|
||||
endif()
|
||||
|
||||
if(PKG_MESSAGE)
|
||||
|
||||
50
cmake/Modules/FindKIM-API-V2.cmake
Normal file
50
cmake/Modules/FindKIM-API-V2.cmake
Normal file
@ -0,0 +1,50 @@
|
||||
#
|
||||
# CDDL HEADER START
|
||||
#
|
||||
# The contents of this file are subject to the terms of the Common Development
|
||||
# and Distribution License Version 1.0 (the "License").
|
||||
#
|
||||
# You can obtain a copy of the license at
|
||||
# http://www.opensource.org/licenses/CDDL-1.0. See the License for the
|
||||
# specific language governing permissions and limitations under the License.
|
||||
#
|
||||
# When distributing Covered Code, include this CDDL HEADER in each file and
|
||||
# include the License file in a prominent location with the name LICENSE.CDDL.
|
||||
# If applicable, add the following below this CDDL HEADER, with the fields
|
||||
# enclosed by brackets "[]" replaced with your own identifying information:
|
||||
#
|
||||
# Portions Copyright (c) [yyyy] [name of copyright owner]. All rights reserved.
|
||||
#
|
||||
# CDDL HEADER END
|
||||
#
|
||||
|
||||
#
|
||||
# Copyright (c) 2013--2018, Regents of the University of Minnesota.
|
||||
# All rights reserved.
|
||||
#
|
||||
# Contributors:
|
||||
# Richard Berger
|
||||
# Christoph Junghans
|
||||
# Ryan S. Elliott
|
||||
#
|
||||
|
||||
# - Find KIM-API-V2
|
||||
#
|
||||
# sets standard pkg_check_modules variables plus:
|
||||
#
|
||||
# KIM-API-V2-CMAKE_C_COMPILER
|
||||
# KIM-API-V2-CMAKE_CXX_COMPILER
|
||||
# KIM-API-V2-CMAKE_Fortran_COMPILER
|
||||
#
|
||||
find_package(PkgConfig REQUIRED)
|
||||
include(FindPackageHandleStandardArgs)
|
||||
|
||||
pkg_check_modules(KIM-API-V2 REQUIRED libkim-api-v2>=2.0)
|
||||
|
||||
pkg_get_variable(KIM-API-V2-CMAKE_C_COMPILER libkim-api-v2 CMAKE_C_COMPILER)
|
||||
pkg_get_variable(KIM-API-V2-CMAKE_CXX_COMPILER libkim-api-v2 CMAKE_CXX_COMPILER)
|
||||
pkg_get_variable(KIM-API-V2_CMAKE_Fortran_COMPILER libkim-api-v2 CMAKE_Fortran_COMPILER)
|
||||
|
||||
# handle the QUIETLY and REQUIRED arguments and set KIM-API-V2_FOUND to TRUE
|
||||
# if all listed variables are TRUE
|
||||
find_package_handle_standard_args(KIM-API-V2 REQUIRED_VARS KIM-API-V2_LIBRARIES)
|
||||
@ -1,22 +0,0 @@
|
||||
# - Find kim
|
||||
# Find the native KIM headers and libraries.
|
||||
#
|
||||
# KIM_INCLUDE_DIRS - where to find kim.h, etc.
|
||||
# KIM_LIBRARIES - List of libraries when using kim.
|
||||
# KIM_FOUND - True if kim found.
|
||||
#
|
||||
|
||||
find_path(KIM_INCLUDE_DIR KIM_API.h PATH_SUFFIXES kim-api-v1)
|
||||
|
||||
find_library(KIM_LIBRARY NAMES kim-api-v1)
|
||||
|
||||
set(KIM_LIBRARIES ${KIM_LIBRARY})
|
||||
set(KIM_INCLUDE_DIRS ${KIM_INCLUDE_DIR})
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
# handle the QUIETLY and REQUIRED arguments and set KIM_FOUND to TRUE
|
||||
# if all listed variables are TRUE
|
||||
|
||||
find_package_handle_standard_args(KIM DEFAULT_MSG KIM_LIBRARY KIM_INCLUDE_DIR)
|
||||
|
||||
mark_as_advanced(KIM_INCLUDE_DIR KIM_LIBRARY )
|
||||
@ -191,16 +191,12 @@ package?" page.
|
||||
|
||||
[CMake build]:
|
||||
|
||||
-D DOWNLOAD_KIM=value # download OpenKIM API v1 for build, value = no (default) or yes
|
||||
-D KIM_LIBRARY=path # KIM library file (only needed if a custom location)
|
||||
-D KIM_INCLUDE_DIR=path # KIM include directory (only needed if a custom location) :pre
|
||||
-D DOWNLOAD_KIM=value # download OpenKIM API v2 for build, value = no (default) or yes :pre
|
||||
|
||||
If DOWNLOAD_KIM is set, the KIM library will be downloaded and built
|
||||
inside the CMake build directory. If the KIM library is already on
|
||||
your system (in a location CMake cannot find it), KIM_LIBRARY is the
|
||||
filename (plus path) of the KIM library file, not the directory the
|
||||
library file is in. KIM_INCLUDE_DIR is the directory the KIM include
|
||||
file is in.
|
||||
your system (in a location CMake cannot find it), set the PKG_CONFIG_PATH
|
||||
environment variable so that libkim-api-v2 can be found.
|
||||
|
||||
[Traditional make]:
|
||||
|
||||
@ -214,8 +210,8 @@ make lib-kim args="-b " # (re-)install KIM API lib with only example models
|
||||
make lib-kim args="-b -a Glue_Ercolessi_Adams_Al__MO_324507536345_001" # ditto plus one model
|
||||
make lib-kim args="-b -a everything" # install KIM API lib with all models
|
||||
make lib-kim args="-n -a EAM_Dynamo_Ackland_W__MO_141627196590_002" # add one model or model driver
|
||||
make lib-kim args="-p /usr/local/kim-api" # use an existing KIM API installation at the provided location
|
||||
make lib-kim args="-p /usr/local/kim-api -a EAM_Dynamo_Ackland_W__MO_141627196590_002" # ditto but add one model or driver :pre
|
||||
make lib-kim args="-p /usr/local" # use an existing KIM API installation at the provided location
|
||||
make lib-kim args="-p /usr/local -a EAM_Dynamo_Ackland_W__MO_141627196590_002" # ditto but add one model or driver :pre
|
||||
|
||||
:line
|
||||
|
||||
|
||||
@ -6988,12 +6988,6 @@ The atom style defined does not have this attribute. :dd
|
||||
|
||||
The atom style defined does not have these attributes. :dd
|
||||
|
||||
{KIM neighbor iterator exceeded range} :dt
|
||||
|
||||
This should not happen. It likely indicates a bug
|
||||
in the KIM implementation of the interatomic potential
|
||||
where it is requesting neighbors incorrectly. :dd
|
||||
|
||||
{KOKKOS package does not yet support comm_style tiled} :dt
|
||||
|
||||
Self-explanatory. :dd
|
||||
@ -10185,10 +10179,6 @@ valid. :dd
|
||||
|
||||
Self-explanatory. :dd
|
||||
|
||||
{Unrecognized virial argument in pair_style command} :dt
|
||||
|
||||
Only two options are supported: LAMMPSvirial and KIMvirial :dd
|
||||
|
||||
{Unsupported mixing rule in kspace_style ewald/disp} :dt
|
||||
|
||||
Only geometric mixing is supported. :dd
|
||||
|
||||
@ -346,12 +346,11 @@ system.
|
||||
|
||||
Information about the KIM project can be found at its website:
|
||||
https://openkim.org. The KIM project is led by Ellad Tadmor and Ryan
|
||||
Elliott (U Minnesota) and James Sethna (Cornell U).
|
||||
Elliott (U Minnesota).
|
||||
|
||||
[Authors:] Ryan Elliott (U Minnesota) is the main developer for the KIM
|
||||
API which the "pair_style kim"_pair_kim.html command uses. He
|
||||
developed the pair style in collaboration with Valeriu Smirichinski (U
|
||||
Minnesota).
|
||||
developed the pair style.
|
||||
|
||||
[Install:]
|
||||
|
||||
@ -2102,5 +2101,3 @@ src/USER-YAFF/README
|
||||
"pair_style mm3/switch3/coulgauss/long"_pair_mm3_switch3_coulgauss.html
|
||||
"pair_style lj/switch3/coulgauss/long"_pair_lj_switch3_coulgauss.html
|
||||
examples/USER/yaff :ul
|
||||
|
||||
|
||||
|
||||
@ -158,12 +158,6 @@ the pair_*.cpp file associated with the potential.
|
||||
|
||||
Some parameters are global settings for the pair style, e.g. the
|
||||
viscosity setting "mu" for "pair_style lubricate"_pair_lubricate.html.
|
||||
For "pair_kim"_pair_kim.html, all free parameters supported by the
|
||||
KIM Model are available (e.g., PARAM_FREE_sigmas provided by the
|
||||
LennardJones612_Universal__MO_826355984548_001 Model). If the free
|
||||
parameter corresponds to an array, then the particular array element
|
||||
to be adapted must be specified (e.g., "PARAM_FREE_sigmas:10", to
|
||||
adapt the tenth entry of the sigmas array).
|
||||
Other parameters apply to atom type pairs within the pair style,
|
||||
e.g. the prefactor "a" for "pair_style soft"_pair_soft.html.
|
||||
|
||||
|
||||
@ -10,18 +10,13 @@ pair_style kim command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
pair_style kim virialmode model printflag :pre
|
||||
pair_style kim model :pre
|
||||
|
||||
virialmode = KIMvirial or LAMMPSvirial
|
||||
model = name of KIM model (potential)
|
||||
printflag = 1/0 do or do not print KIM descriptor file, optional :ul
|
||||
|
||||
[Examples:]
|
||||
|
||||
pair_style kim KIMvirial model_Ar_P_Morse
|
||||
pair_coeff * * Ar Ar :pre
|
||||
|
||||
pair_style kim KIMvirial model_Ar_P_Morse 1
|
||||
pair_style kim ex_model_Ar_P_LJ
|
||||
pair_coeff * * Ar Ar :pre
|
||||
|
||||
[Description:]
|
||||
@ -51,25 +46,19 @@ section of the "Packages details"_Packages_details.html doc page has
|
||||
instructions on how to do this with a simple make command, when
|
||||
building LAMMPS.
|
||||
|
||||
See the examples/kim dir for an input script that uses a KIM model
|
||||
(potential) for Lennard-Jones.
|
||||
See the examples/kim dir for an input script that uses a KIM model (potential)
|
||||
for Lennard-Jones. Note, for this example input script, the example models
|
||||
shipped with with kim-api package must be installed. See the "Build
|
||||
package"_Build_package.html section and the ./lib/kim/README for details
|
||||
on how to build LAMMSPS with the kim-api and how to install the example models.
|
||||
|
||||
:line
|
||||
|
||||
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 descriptor 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
|
||||
@ -86,18 +75,14 @@ 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 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.
|
||||
as defined within KIM.
|
||||
|
||||
:line
|
||||
|
||||
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
|
||||
information. The 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
|
||||
@ -130,7 +115,7 @@ LAMMPS was built with that package. See the "Build
|
||||
package"_Build_package.html doc page for more info.
|
||||
|
||||
This current version of pair_style kim is compatible with the
|
||||
kim-api package version 1.6.0 and higher.
|
||||
kim-api package version 2.0.0 and higher.
|
||||
|
||||
[Related commands:]
|
||||
|
||||
|
||||
@ -1384,6 +1384,7 @@ libfftw
|
||||
libgcc
|
||||
libgpu
|
||||
libjpeg
|
||||
libkim
|
||||
liblammps
|
||||
Liblammps
|
||||
liblink
|
||||
|
||||
@ -10,6 +10,7 @@ variable zz equal 20*$z
|
||||
|
||||
units metal
|
||||
atom_style atomic
|
||||
newton off
|
||||
|
||||
lattice fcc 4.4300
|
||||
region box block 0 ${xx} 0 ${yy} 0 ${zz}
|
||||
@ -17,13 +18,12 @@ create_box 1 box
|
||||
create_atoms 1 box
|
||||
|
||||
pair_style lj/cut 8.1500
|
||||
pair_coeff 1 1 0.0031 2.7400
|
||||
pair_modify shift yes
|
||||
pair_coeff 1 1 0.0104 3.4000
|
||||
|
||||
#pair_style kim KIMvirial ex_model_Ne_P_fastLJ
|
||||
#pair_coeff * * Ne
|
||||
#pair_style kim LennardJones_Ar
|
||||
#pair_coeff * * Ar
|
||||
|
||||
mass 1 20.18
|
||||
mass 1 39.95
|
||||
velocity all create 200.0 232345 loop geom
|
||||
|
||||
neighbor 0.3 bin
|
||||
@ -10,20 +10,20 @@ variable zz equal 20*$z
|
||||
|
||||
units metal
|
||||
atom_style atomic
|
||||
newton on
|
||||
|
||||
lattice fcc 4.4300
|
||||
region box block 0 ${xx} 0 ${yy} 0 ${zz}
|
||||
create_box 1 box
|
||||
create_atoms 1 box
|
||||
|
||||
#pair_style lj/cut 8.1500
|
||||
#pair_coeff 1 1 0.0031 2.7400
|
||||
#pair_modify shift yes
|
||||
pair_style lj/cut 8.1500
|
||||
pair_coeff 1 1 0.0104 3.4000
|
||||
|
||||
pair_style kim KIMvirial ex_model_Ne_P_fastLJ
|
||||
pair_coeff * * Ne
|
||||
#pair_style kim LennardJones_Ar
|
||||
#pair_coeff * * Ar
|
||||
|
||||
mass 1 20.18
|
||||
mass 1 39.95
|
||||
velocity all create 200.0 232345 loop geom
|
||||
|
||||
neighbor 0.3 bin
|
||||
41
examples/kim/in.kim.lj.newton-off
Normal file
41
examples/kim/in.kim.lj.newton-off
Normal file
@ -0,0 +1,41 @@
|
||||
# 3d Lennard-Jones melt
|
||||
#
|
||||
# This example requires that the example models provided with
|
||||
# the kim-api package are installed. see the ./lib/kim/README or
|
||||
# ./lib/kim/Install.py files for details on how to install these
|
||||
# example models.
|
||||
#
|
||||
|
||||
variable x index 1
|
||||
variable y index 1
|
||||
variable z index 1
|
||||
|
||||
variable xx equal 20*$x
|
||||
variable yy equal 20*$y
|
||||
variable zz equal 20*$z
|
||||
|
||||
units metal
|
||||
atom_style atomic
|
||||
newton off
|
||||
|
||||
lattice fcc 4.4300
|
||||
region box block 0 ${xx} 0 ${yy} 0 ${zz}
|
||||
create_box 1 box
|
||||
create_atoms 1 box
|
||||
|
||||
#pair_style lj/cut 8.1500
|
||||
#pair_coeff 1 1 0.0104 3.4000
|
||||
|
||||
pair_style kim LennardJones_Ar
|
||||
pair_coeff * * Ar
|
||||
|
||||
mass 1 39.95
|
||||
velocity all create 200.0 232345 loop geom
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
fix 1 all nve
|
||||
#fix 1 all npt temp 1.0 1.0 1.0 iso 1.0 1.0 3.0
|
||||
|
||||
run 100
|
||||
41
examples/kim/in.kim.lj.newton-on
Normal file
41
examples/kim/in.kim.lj.newton-on
Normal file
@ -0,0 +1,41 @@
|
||||
# 3d Lennard-Jones melt
|
||||
#
|
||||
# This example requires that the example models provided with
|
||||
# the kim-api package are installed. see the ./lib/kim/README or
|
||||
# ./lib/kim/Install.py files for details on how to install these
|
||||
# example models.
|
||||
#
|
||||
|
||||
variable x index 1
|
||||
variable y index 1
|
||||
variable z index 1
|
||||
|
||||
variable xx equal 20*$x
|
||||
variable yy equal 20*$y
|
||||
variable zz equal 20*$z
|
||||
|
||||
units metal
|
||||
atom_style atomic
|
||||
newton on
|
||||
|
||||
lattice fcc 4.4300
|
||||
region box block 0 ${xx} 0 ${yy} 0 ${zz}
|
||||
create_box 1 box
|
||||
create_atoms 1 box
|
||||
|
||||
#pair_style lj/cut 8.1500
|
||||
#pair_coeff 1 1 0.0104 3.4000
|
||||
|
||||
pair_style kim LennardJones_Ar
|
||||
pair_coeff * * Ar
|
||||
|
||||
mass 1 39.95
|
||||
velocity all create 200.0 232345 loop geom
|
||||
|
||||
neighbor 0.3 bin
|
||||
neigh_modify delay 0 every 1 check yes
|
||||
|
||||
fix 1 all nve
|
||||
#fix 1 all npt temp 1.0 1.0 1.0 iso 1.0 1.0 3.0
|
||||
|
||||
run 100
|
||||
55
examples/kim/log.06Feb2019.in.kim.lj.lmp.newton-off.1
Normal file
55
examples/kim/log.06Feb2019.in.kim.lj.lmp.newton-off.1
Normal file
@ -0,0 +1,55 @@
|
||||
LAMMPS (1 Feb 2019)
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:87)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
Lattice spacing in x,y,z = 4.43 4.43 4.43
|
||||
Created orthogonal box = (0 0 0) to (88.6 88.6 88.6)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
Created 32000 atoms
|
||||
Time spent = 0.004499 secs
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 8.45
|
||||
ghost atom cutoff = 8.45
|
||||
binsize = 4.225, bins = 21 21 21
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cut, perpetual
|
||||
attributes: half, newton off
|
||||
pair build: half/bin/newtoff
|
||||
stencil: half/bin/3d/newtoff
|
||||
bin: standard
|
||||
Setting up Verlet run ...
|
||||
Unit style : metal
|
||||
Current step : 0
|
||||
Time step : 0.001
|
||||
Per MPI rank memory allocation (min/avg/max) = 20.37 | 20.37 | 20.37 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
0 200 6290.8194 0 7118.0584 129712.25
|
||||
100 95.179725 6718.814 0 7112.496 133346.59
|
||||
Loop time of 2.92885 on 1 procs for 100 steps with 32000 atoms
|
||||
|
||||
Performance: 2.950 ns/day, 8.136 hours/ns, 34.143 timesteps/s
|
||||
99.1% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 2.5638 | 2.5638 | 2.5638 | 0.0 | 87.54
|
||||
Neigh | 0.31935 | 0.31935 | 0.31935 | 0.0 | 10.90
|
||||
Comm | 0.006833 | 0.006833 | 0.006833 | 0.0 | 0.23
|
||||
Output | 0.000107 | 0.000107 | 0.000107 | 0.0 | 0.00
|
||||
Modify | 0.027806 | 0.027806 | 0.027806 | 0.0 | 0.95
|
||||
Other | | 0.01091 | | | 0.37
|
||||
|
||||
Nlocal: 32000 ave 32000 max 32000 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 19911 ave 19911 max 19911 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 2.3705e+06 ave 2.3705e+06 max 2.3705e+06 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 2370499
|
||||
Ave neighs/atom = 74.0781
|
||||
Neighbor list builds = 3
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:03
|
||||
55
examples/kim/log.06Feb2019.in.kim.lj.lmp.newton-off.4
Normal file
55
examples/kim/log.06Feb2019.in.kim.lj.lmp.newton-off.4
Normal file
@ -0,0 +1,55 @@
|
||||
LAMMPS (1 Feb 2019)
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:87)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
Lattice spacing in x,y,z = 4.43 4.43 4.43
|
||||
Created orthogonal box = (0 0 0) to (88.6 88.6 88.6)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
Created 32000 atoms
|
||||
Time spent = 0.001039 secs
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 8.45
|
||||
ghost atom cutoff = 8.45
|
||||
binsize = 4.225, bins = 21 21 21
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cut, perpetual
|
||||
attributes: half, newton off
|
||||
pair build: half/bin/newtoff
|
||||
stencil: half/bin/3d/newtoff
|
||||
bin: standard
|
||||
Setting up Verlet run ...
|
||||
Unit style : metal
|
||||
Current step : 0
|
||||
Time step : 0.001
|
||||
Per MPI rank memory allocation (min/avg/max) = 8.013 | 8.013 | 8.013 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
0 200 6290.8194 0 7118.0584 129712.25
|
||||
100 95.179725 6718.814 0 7112.496 133346.59
|
||||
Loop time of 0.778581 on 4 procs for 100 steps with 32000 atoms
|
||||
|
||||
Performance: 11.097 ns/day, 2.163 hours/ns, 128.439 timesteps/s
|
||||
99.8% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.65171 | 0.65891 | 0.67656 | 1.3 | 84.63
|
||||
Neigh | 0.07924 | 0.079548 | 0.07997 | 0.1 | 10.22
|
||||
Comm | 0.006755 | 0.0069015 | 0.007072 | 0.2 | 0.89
|
||||
Output | 4.6e-05 | 9.725e-05 | 0.000203 | 0.0 | 0.01
|
||||
Modify | 0.006841 | 0.006941 | 0.007015 | 0.1 | 0.89
|
||||
Other | | 0.02618 | | | 3.36
|
||||
|
||||
Nlocal: 8000 ave 8018 max 7967 min
|
||||
Histogram: 1 0 0 0 0 0 1 0 0 2
|
||||
Nghost: 9131 ave 9164 max 9113 min
|
||||
Histogram: 2 0 0 1 0 0 0 0 0 1
|
||||
Neighs: 630904 ave 632094 max 628209 min
|
||||
Histogram: 1 0 0 0 0 0 0 1 0 2
|
||||
|
||||
Total # of neighbors = 2523614
|
||||
Ave neighs/atom = 78.8629
|
||||
Neighbor list builds = 3
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:00
|
||||
55
examples/kim/log.06Feb2019.in.kim.lj.lmp.newton-on.1
Normal file
55
examples/kim/log.06Feb2019.in.kim.lj.lmp.newton-on.1
Normal file
@ -0,0 +1,55 @@
|
||||
LAMMPS (1 Feb 2019)
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:87)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
Lattice spacing in x,y,z = 4.43 4.43 4.43
|
||||
Created orthogonal box = (0 0 0) to (88.6 88.6 88.6)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
Created 32000 atoms
|
||||
Time spent = 0.003479 secs
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 8.45
|
||||
ghost atom cutoff = 8.45
|
||||
binsize = 4.225, bins = 21 21 21
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d/newton
|
||||
bin: standard
|
||||
Setting up Verlet run ...
|
||||
Unit style : metal
|
||||
Current step : 0
|
||||
Time step : 0.001
|
||||
Per MPI rank memory allocation (min/avg/max) = 19.23 | 19.23 | 19.23 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
0 200 6290.8194 0 7118.0584 129712.25
|
||||
100 95.179725 6718.814 0 7112.496 133346.59
|
||||
Loop time of 2.17978 on 1 procs for 100 steps with 32000 atoms
|
||||
|
||||
Performance: 3.964 ns/day, 6.055 hours/ns, 45.876 timesteps/s
|
||||
99.9% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 1.9892 | 1.9892 | 1.9892 | 0.0 | 91.26
|
||||
Neigh | 0.14506 | 0.14506 | 0.14506 | 0.0 | 6.65
|
||||
Comm | 0.011049 | 0.011049 | 0.011049 | 0.0 | 0.51
|
||||
Output | 9.1e-05 | 9.1e-05 | 9.1e-05 | 0.0 | 0.00
|
||||
Modify | 0.02347 | 0.02347 | 0.02347 | 0.0 | 1.08
|
||||
Other | | 0.01094 | | | 0.50
|
||||
|
||||
Nlocal: 32000 ave 32000 max 32000 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 19911 ave 19911 max 19911 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 2.12688e+06 ave 2.12688e+06 max 2.12688e+06 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 2126875
|
||||
Ave neighs/atom = 66.4648
|
||||
Neighbor list builds = 3
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:02
|
||||
55
examples/kim/log.06Feb2019.in.kim.lj.lmp.newton-on.4
Normal file
55
examples/kim/log.06Feb2019.in.kim.lj.lmp.newton-on.4
Normal file
@ -0,0 +1,55 @@
|
||||
LAMMPS (1 Feb 2019)
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:87)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
Lattice spacing in x,y,z = 4.43 4.43 4.43
|
||||
Created orthogonal box = (0 0 0) to (88.6 88.6 88.6)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
Created 32000 atoms
|
||||
Time spent = 0.000919 secs
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 8.45
|
||||
ghost atom cutoff = 8.45
|
||||
binsize = 4.225, bins = 21 21 21
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair lj/cut, perpetual
|
||||
attributes: half, newton on
|
||||
pair build: half/bin/atomonly/newton
|
||||
stencil: half/bin/3d/newton
|
||||
bin: standard
|
||||
Setting up Verlet run ...
|
||||
Unit style : metal
|
||||
Current step : 0
|
||||
Time step : 0.001
|
||||
Per MPI rank memory allocation (min/avg/max) = 7.632 | 7.632 | 7.632 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
0 200 6290.8194 0 7118.0584 129712.25
|
||||
100 95.179725 6718.814 0 7112.496 133346.59
|
||||
Loop time of 0.63515 on 4 procs for 100 steps with 32000 atoms
|
||||
|
||||
Performance: 13.603 ns/day, 1.764 hours/ns, 157.443 timesteps/s
|
||||
99.8% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.55365 | 0.5566 | 0.55868 | 0.2 | 87.63
|
||||
Neigh | 0.041495 | 0.0418 | 0.04211 | 0.1 | 6.58
|
||||
Comm | 0.019086 | 0.021075 | 0.023898 | 1.2 | 3.32
|
||||
Output | 4.4e-05 | 5.025e-05 | 6e-05 | 0.0 | 0.01
|
||||
Modify | 0.009315 | 0.0093595 | 0.009422 | 0.0 | 1.47
|
||||
Other | | 0.006263 | | | 0.99
|
||||
|
||||
Nlocal: 8000 ave 8018 max 7967 min
|
||||
Histogram: 1 0 0 0 0 0 1 0 0 2
|
||||
Nghost: 9131 ave 9164 max 9113 min
|
||||
Histogram: 2 0 0 1 0 0 0 0 0 1
|
||||
Neighs: 531719 ave 533273 max 529395 min
|
||||
Histogram: 1 0 0 0 1 0 0 0 0 2
|
||||
|
||||
Total # of neighbors = 2126875
|
||||
Ave neighs/atom = 66.4648
|
||||
Neighbor list builds = 3
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:00
|
||||
59
examples/kim/log.06Feb2019.in.kim.lj.newton-off.1
Normal file
59
examples/kim/log.06Feb2019.in.kim.lj.newton-off.1
Normal file
@ -0,0 +1,59 @@
|
||||
LAMMPS (1 Feb 2019)
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:87)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
Lattice spacing in x,y,z = 4.43 4.43 4.43
|
||||
Created orthogonal box = (0 0 0) to (88.6 88.6 88.6)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
Created 32000 atoms
|
||||
Time spent = 0.003446 secs
|
||||
WARNING: KIM Model does not provide `partialParticleEnergy'; energy per atom will be zero (src/KIM/pair_kim.cpp:1097)
|
||||
WARNING: KIM Model does not provide `partialParticleVirial'; virial per atom will be zero (src/KIM/pair_kim.cpp:1102)
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 8.45
|
||||
ghost atom cutoff = 8.45
|
||||
binsize = 4.225, bins = 21 21 21
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair kim, perpetual
|
||||
attributes: full, newton off, cut 8.45
|
||||
pair build: full/bin/atomonly
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Setting up Verlet run ...
|
||||
Unit style : metal
|
||||
Current step : 0
|
||||
Time step : 0.001
|
||||
Per MPI rank memory allocation (min/avg/max) = 28.51 | 28.51 | 28.51 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
0 200 6290.8194 0 7118.0584 129712.25
|
||||
100 95.179725 6718.814 0 7112.496 133346.59
|
||||
Loop time of 3.01669 on 1 procs for 100 steps with 32000 atoms
|
||||
|
||||
Performance: 2.864 ns/day, 8.380 hours/ns, 33.149 timesteps/s
|
||||
99.8% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 2.6562 | 2.6562 | 2.6562 | 0.0 | 88.05
|
||||
Neigh | 0.31903 | 0.31903 | 0.31903 | 0.0 | 10.58
|
||||
Comm | 0.00634 | 0.00634 | 0.00634 | 0.0 | 0.21
|
||||
Output | 9.1e-05 | 9.1e-05 | 9.1e-05 | 0.0 | 0.00
|
||||
Modify | 0.024723 | 0.024723 | 0.024723 | 0.0 | 0.82
|
||||
Other | | 0.01032 | | | 0.34
|
||||
|
||||
Nlocal: 32000 ave 32000 max 32000 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 19911 ave 19911 max 19911 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
FullNghs: 4.25375e+06 ave 4.25375e+06 max 4.25375e+06 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 4253750
|
||||
Ave neighs/atom = 132.93
|
||||
Neighbor list builds = 3
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:03
|
||||
65
examples/kim/log.06Feb2019.in.kim.lj.newton-off.4
Normal file
65
examples/kim/log.06Feb2019.in.kim.lj.newton-off.4
Normal file
@ -0,0 +1,65 @@
|
||||
LAMMPS (1 Feb 2019)
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:87)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
Lattice spacing in x,y,z = 4.43 4.43 4.43
|
||||
Created orthogonal box = (0 0 0) to (88.6 88.6 88.6)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
Created 32000 atoms
|
||||
Time spent = 0.000921 secs
|
||||
WARNING: KIM Model does not provide `partialParticleEnergy'; energy per atom will be zero (src/KIM/pair_kim.cpp:1097)
|
||||
WARNING: KIM Model does not provide `partialParticleVirial'; virial per atom will be zero (src/KIM/pair_kim.cpp:1102)
|
||||
WARNING: KIM Model does not provide `partialParticleEnergy'; energy per atom will be zero (src/KIM/pair_kim.cpp:1097)
|
||||
WARNING: KIM Model does not provide `partialParticleVirial'; virial per atom will be zero (src/KIM/pair_kim.cpp:1102)
|
||||
WARNING: KIM Model does not provide `partialParticleEnergy'; energy per atom will be zero (src/KIM/pair_kim.cpp:1097)
|
||||
WARNING: KIM Model does not provide `partialParticleVirial'; virial per atom will be zero (src/KIM/pair_kim.cpp:1102)
|
||||
WARNING: KIM Model does not provide `partialParticleEnergy'; energy per atom will be zero (src/KIM/pair_kim.cpp:1097)
|
||||
WARNING: KIM Model does not provide `partialParticleVirial'; virial per atom will be zero (src/KIM/pair_kim.cpp:1102)
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 8.45
|
||||
ghost atom cutoff = 8.45
|
||||
binsize = 4.225, bins = 21 21 21
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair kim, perpetual
|
||||
attributes: full, newton off, cut 8.45
|
||||
pair build: full/bin/atomonly
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Setting up Verlet run ...
|
||||
Unit style : metal
|
||||
Current step : 0
|
||||
Time step : 0.001
|
||||
Per MPI rank memory allocation (min/avg/max) = 10.05 | 10.05 | 10.05 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
0 200 6290.8194 0 7118.0584 129712.25
|
||||
100 95.179725 6718.814 0 7112.496 133346.59
|
||||
Loop time of 0.890192 on 4 procs for 100 steps with 32000 atoms
|
||||
|
||||
Performance: 9.706 ns/day, 2.473 hours/ns, 112.335 timesteps/s
|
||||
99.7% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.77867 | 0.77906 | 0.7794 | 0.0 | 87.52
|
||||
Neigh | 0.087831 | 0.088176 | 0.088805 | 0.1 | 9.91
|
||||
Comm | 0.006358 | 0.0065898 | 0.006815 | 0.3 | 0.74
|
||||
Output | 4.9e-05 | 5.975e-05 | 6.8e-05 | 0.0 | 0.01
|
||||
Modify | 0.010265 | 0.010429 | 0.010678 | 0.2 | 1.17
|
||||
Other | | 0.005874 | | | 0.66
|
||||
|
||||
Nlocal: 8000 ave 8018 max 7967 min
|
||||
Histogram: 1 0 0 0 0 0 1 0 0 2
|
||||
Nghost: 9131 ave 9164 max 9113 min
|
||||
Histogram: 2 0 0 1 0 0 0 0 0 1
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
FullNghs: 1.06344e+06 ave 1.06594e+06 max 1.05881e+06 min
|
||||
Histogram: 1 0 0 0 0 0 1 0 0 2
|
||||
|
||||
Total # of neighbors = 4253750
|
||||
Ave neighs/atom = 132.93
|
||||
Neighbor list builds = 3
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:00
|
||||
59
examples/kim/log.06Feb2019.in.kim.lj.newton-on.1
Normal file
59
examples/kim/log.06Feb2019.in.kim.lj.newton-on.1
Normal file
@ -0,0 +1,59 @@
|
||||
LAMMPS (1 Feb 2019)
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:87)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
Lattice spacing in x,y,z = 4.43 4.43 4.43
|
||||
Created orthogonal box = (0 0 0) to (88.6 88.6 88.6)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
Created 32000 atoms
|
||||
Time spent = 0.003089 secs
|
||||
WARNING: KIM Model does not provide `partialParticleEnergy'; energy per atom will be zero (src/KIM/pair_kim.cpp:1097)
|
||||
WARNING: KIM Model does not provide `partialParticleVirial'; virial per atom will be zero (src/KIM/pair_kim.cpp:1102)
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 8.45
|
||||
ghost atom cutoff = 8.45
|
||||
binsize = 4.225, bins = 21 21 21
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair kim, perpetual
|
||||
attributes: full, newton off, cut 8.45
|
||||
pair build: full/bin/atomonly
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Setting up Verlet run ...
|
||||
Unit style : metal
|
||||
Current step : 0
|
||||
Time step : 0.001
|
||||
Per MPI rank memory allocation (min/avg/max) = 28.12 | 28.12 | 28.12 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
0 200 6290.8194 0 7118.0584 129712.25
|
||||
100 95.179725 6718.814 0 7112.496 133346.59
|
||||
Loop time of 3.05849 on 1 procs for 100 steps with 32000 atoms
|
||||
|
||||
Performance: 2.825 ns/day, 8.496 hours/ns, 32.696 timesteps/s
|
||||
99.6% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 2.6786 | 2.6786 | 2.6786 | 0.0 | 87.58
|
||||
Neigh | 0.33105 | 0.33105 | 0.33105 | 0.0 | 10.82
|
||||
Comm | 0.012602 | 0.012602 | 0.012602 | 0.0 | 0.41
|
||||
Output | 9.5e-05 | 9.5e-05 | 9.5e-05 | 0.0 | 0.00
|
||||
Modify | 0.024858 | 0.024858 | 0.024858 | 0.0 | 0.81
|
||||
Other | | 0.01132 | | | 0.37
|
||||
|
||||
Nlocal: 32000 ave 32000 max 32000 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 19911 ave 19911 max 19911 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
FullNghs: 4.25375e+06 ave 4.25375e+06 max 4.25375e+06 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 4253750
|
||||
Ave neighs/atom = 132.93
|
||||
Neighbor list builds = 3
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:03
|
||||
65
examples/kim/log.06Feb2019.in.kim.lj.newton-on.4
Normal file
65
examples/kim/log.06Feb2019.in.kim.lj.newton-on.4
Normal file
@ -0,0 +1,65 @@
|
||||
LAMMPS (1 Feb 2019)
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:87)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
Lattice spacing in x,y,z = 4.43 4.43 4.43
|
||||
Created orthogonal box = (0 0 0) to (88.6 88.6 88.6)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
Created 32000 atoms
|
||||
Time spent = 0.000893 secs
|
||||
WARNING: KIM Model does not provide `partialParticleEnergy'; energy per atom will be zero (src/KIM/pair_kim.cpp:1097)
|
||||
WARNING: KIM Model does not provide `partialParticleVirial'; virial per atom will be zero (src/KIM/pair_kim.cpp:1102)
|
||||
WARNING: KIM Model does not provide `partialParticleEnergy'; energy per atom will be zero (src/KIM/pair_kim.cpp:1097)
|
||||
WARNING: KIM Model does not provide `partialParticleVirial'; virial per atom will be zero (src/KIM/pair_kim.cpp:1102)
|
||||
WARNING: KIM Model does not provide `partialParticleEnergy'; energy per atom will be zero (src/KIM/pair_kim.cpp:1097)
|
||||
WARNING: KIM Model does not provide `partialParticleVirial'; virial per atom will be zero (src/KIM/pair_kim.cpp:1102)
|
||||
WARNING: KIM Model does not provide `partialParticleEnergy'; energy per atom will be zero (src/KIM/pair_kim.cpp:1097)
|
||||
WARNING: KIM Model does not provide `partialParticleVirial'; virial per atom will be zero (src/KIM/pair_kim.cpp:1102)
|
||||
Neighbor list info ...
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 2000, page size: 100000
|
||||
master list distance cutoff = 8.45
|
||||
ghost atom cutoff = 8.45
|
||||
binsize = 4.225, bins = 21 21 21
|
||||
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||||
(1) pair kim, perpetual
|
||||
attributes: full, newton off, cut 8.45
|
||||
pair build: full/bin/atomonly
|
||||
stencil: full/bin/3d
|
||||
bin: standard
|
||||
Setting up Verlet run ...
|
||||
Unit style : metal
|
||||
Current step : 0
|
||||
Time step : 0.001
|
||||
Per MPI rank memory allocation (min/avg/max) = 9.789 | 9.789 | 9.789 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
0 200 6290.8194 0 7118.0584 129712.25
|
||||
100 95.179725 6718.814 0 7112.496 133346.59
|
||||
Loop time of 0.903182 on 4 procs for 100 steps with 32000 atoms
|
||||
|
||||
Performance: 9.566 ns/day, 2.509 hours/ns, 110.720 timesteps/s
|
||||
99.6% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0.76173 | 0.76349 | 0.76597 | 0.2 | 84.53
|
||||
Neigh | 0.088773 | 0.088938 | 0.089074 | 0.0 | 9.85
|
||||
Comm | 0.032018 | 0.03452 | 0.03638 | 0.9 | 3.82
|
||||
Output | 4e-05 | 4.425e-05 | 5.2e-05 | 0.0 | 0.00
|
||||
Modify | 0.009278 | 0.0093917 | 0.009528 | 0.1 | 1.04
|
||||
Other | | 0.006797 | | | 0.75
|
||||
|
||||
Nlocal: 8000 ave 8018 max 7967 min
|
||||
Histogram: 1 0 0 0 0 0 1 0 0 2
|
||||
Nghost: 9131 ave 9164 max 9113 min
|
||||
Histogram: 2 0 0 1 0 0 0 0 0 1
|
||||
Neighs: 0 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
FullNghs: 1.06344e+06 ave 1.06594e+06 max 1.05881e+06 min
|
||||
Histogram: 1 0 0 0 0 0 1 0 0 2
|
||||
|
||||
Total # of neighbors = 4253750
|
||||
Ave neighs/atom = 132.93
|
||||
Neighbor list builds = 3
|
||||
Dangerous builds = 0
|
||||
Total wall time: 0:00:00
|
||||
@ -1,33 +0,0 @@
|
||||
LAMMPS (15 May 2015)
|
||||
Lattice spacing in x,y,z = 4.43 4.43 4.43
|
||||
Created orthogonal box = (0 0 0) to (88.6 88.6 88.6)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
Created 32000 atoms
|
||||
Neighbor list info ...
|
||||
1 neighbor list requests
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
master list distance cutoff = 8.45
|
||||
Setting up run ...
|
||||
Memory usage per processor = 9.18789 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
0 200 -741.55469 0 85.684388 -34.939092
|
||||
100 108.37517 -362.56658 0 85.694308 3963.7892
|
||||
Loop time of 2.95205 on 1 procs for 100 steps with 32000 atoms
|
||||
|
||||
Pair time (%) = 2.52074 (85.3894)
|
||||
Neigh time (%) = 0.347949 (11.7867)
|
||||
Comm time (%) = 0.0228171 (0.772925)
|
||||
Outpt time (%) = 0.000188828 (0.00639649)
|
||||
Other time (%) = 0.0603588 (2.04464)
|
||||
|
||||
Nlocal: 32000 ave 32000 max 32000 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 20131 ave 20131 max 20131 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 1.88909e+06 ave 1.88909e+06 max 1.88909e+06 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 1889091
|
||||
Ave neighs/atom = 59.0341
|
||||
Neighbor list builds = 5
|
||||
Dangerous builds = 0
|
||||
@ -1,33 +0,0 @@
|
||||
LAMMPS (15 May 2015)
|
||||
Lattice spacing in x,y,z = 4.43 4.43 4.43
|
||||
Created orthogonal box = (0 0 0) to (88.6 88.6 88.6)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
Created 32000 atoms
|
||||
Neighbor list info ...
|
||||
1 neighbor list requests
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
master list distance cutoff = 8.45
|
||||
Setting up run ...
|
||||
Memory usage per processor = 4.58461 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
0 200 -741.55469 0 85.684388 -34.939092
|
||||
100 108.37517 -362.56658 0 85.694308 3963.7892
|
||||
Loop time of 6.15911 on 4 procs for 100 steps with 32000 atoms
|
||||
|
||||
Pair time (%) = 1.76201 (28.6083)
|
||||
Neigh time (%) = 0.265002 (4.30261)
|
||||
Comm time (%) = 3.64452 (59.1729)
|
||||
Outpt time (%) = 0.0169877 (0.275815)
|
||||
Other time (%) = 0.470582 (7.64042)
|
||||
|
||||
Nlocal: 8000 ave 8010 max 7989 min
|
||||
Histogram: 1 0 0 0 0 2 0 0 0 1
|
||||
Nghost: 9240.25 ave 9249 max 9228 min
|
||||
Histogram: 1 0 0 0 1 0 0 0 0 2
|
||||
Neighs: 472273 ave 473390 max 471652 min
|
||||
Histogram: 2 0 0 1 0 0 0 0 0 1
|
||||
|
||||
Total # of neighbors = 1889091
|
||||
Ave neighs/atom = 59.0341
|
||||
Neighbor list builds = 5
|
||||
Dangerous builds = 0
|
||||
@ -1,33 +0,0 @@
|
||||
LAMMPS (15 May 2015)
|
||||
Lattice spacing in x,y,z = 4.43 4.43 4.43
|
||||
Created orthogonal box = (0 0 0) to (88.6 88.6 88.6)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
Created 32000 atoms
|
||||
Neighbor list info ...
|
||||
1 neighbor list requests
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
master list distance cutoff = 8.45
|
||||
Setting up run ...
|
||||
Memory usage per processor = 9.43789 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
0 200 -741.55469 0 85.684388 -34.939092
|
||||
100 108.37517 -362.56658 0 85.694308 3963.7892
|
||||
Loop time of 3.79746 on 1 procs for 100 steps with 32000 atoms
|
||||
|
||||
Pair time (%) = 3.18686 (83.9207)
|
||||
Neigh time (%) = 0.524724 (13.8178)
|
||||
Comm time (%) = 0.0244031 (0.642616)
|
||||
Outpt time (%) = 0.000174046 (0.00458321)
|
||||
Other time (%) = 0.061305 (1.61437)
|
||||
|
||||
Nlocal: 32000 ave 32000 max 32000 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 20131 ave 20131 max 20131 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 2.09236e+06 ave 2.09236e+06 max 2.09236e+06 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 2092355
|
||||
Ave neighs/atom = 65.3861
|
||||
Neighbor list builds = 5
|
||||
Dangerous builds = 0
|
||||
@ -1,33 +0,0 @@
|
||||
LAMMPS (15 May 2015)
|
||||
Lattice spacing in x,y,z = 4.43 4.43 4.43
|
||||
Created orthogonal box = (0 0 0) to (88.6 88.6 88.6)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
Created 32000 atoms
|
||||
Neighbor list info ...
|
||||
1 neighbor list requests
|
||||
update every 1 steps, delay 0 steps, check yes
|
||||
master list distance cutoff = 8.45
|
||||
Setting up run ...
|
||||
Memory usage per processor = 4.70961 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
0 200 -741.55469 0 85.684388 -34.939092
|
||||
100 108.37517 -362.56658 0 85.694308 3963.7892
|
||||
Loop time of 7.25305 on 4 procs for 100 steps with 32000 atoms
|
||||
|
||||
Pair time (%) = 2.52571 (34.8227)
|
||||
Neigh time (%) = 0.500287 (6.8976)
|
||||
Comm time (%) = 3.70236 (51.0456)
|
||||
Outpt time (%) = 0.00146681 (0.0202234)
|
||||
Other time (%) = 0.523229 (7.21391)
|
||||
|
||||
Nlocal: 8000 ave 8010 max 7989 min
|
||||
Histogram: 1 0 0 0 0 2 0 0 0 1
|
||||
Nghost: 9240.25 ave 9249 max 9228 min
|
||||
Histogram: 1 0 0 0 1 0 0 0 0 2
|
||||
Neighs: 555266 ave 555920 max 554805 min
|
||||
Histogram: 2 0 0 0 0 1 0 0 0 1
|
||||
|
||||
Total # of neighbors = 2221065
|
||||
Ave neighs/atom = 69.4083
|
||||
Neighbor list builds = 5
|
||||
Dangerous builds = 0
|
||||
3
lib/kim/.gitignore
vendored
3
lib/kim/.gitignore
vendored
@ -1,3 +1,2 @@
|
||||
/Makefile.KIM_DIR
|
||||
/Makefile.KIM_Config
|
||||
/kim-prefix.txt
|
||||
/installed-kim-api-*
|
||||
|
||||
@ -18,7 +18,7 @@ parser = ArgumentParser(prog='Install.py',
|
||||
# settings
|
||||
|
||||
thisdir = fullpath('.')
|
||||
version = "kim-api-v1.9.5"
|
||||
version = "kim-api-v2-2.0.0"
|
||||
|
||||
# help message
|
||||
|
||||
@ -35,19 +35,15 @@ Syntax from lib dir: python Install.py -b -v version -a kim-name
|
||||
Examples:
|
||||
|
||||
make lib-kim args="-b" # install KIM API lib with only example models
|
||||
make lib-kim args="-b -a Glue_Ercolessi_Adams_Al__MO_324507536345_001" # Ditto plus one model
|
||||
make lib-kim args="-b -a EAM_ErcolessiAdams_1994_Al__MO_324507536345_002" # Ditto plus one model
|
||||
make lib-kim args="-b -a everything" # install KIM API lib with all models
|
||||
make lib-kim args="-n -a EAM_Dynamo_Ackland_W__MO_141627196590_002" # only add one model or model driver
|
||||
make lib-kim args="-n -a EAM_Dynamo_Ackland_2003_W__MO_141627196590_005" # only add one model or model driver
|
||||
|
||||
See the list of KIM model drivers here:
|
||||
https://openkim.org/kim-items/model-drivers/alphabetical
|
||||
|
||||
See the list of all KIM models here:
|
||||
https://openkim.org/kim-items/models/by-model-drivers
|
||||
|
||||
See the list of example KIM models included by default here:
|
||||
https://openkim.org/kim-api
|
||||
in the "What is in the KIM API source package?" section
|
||||
"""
|
||||
|
||||
pgroup = parser.add_mutually_exclusive_group()
|
||||
@ -94,13 +90,10 @@ url = "https://s3.openkim.org/kim-api/%s.txz" % version
|
||||
|
||||
if pathflag:
|
||||
# configure LAMMPS to use existing kim-api installation
|
||||
with open("%s/Makefile.KIM_DIR" % thisdir, 'w') as mkfile:
|
||||
mkfile.write("KIM_INSTALL_DIR=%s\n\n" % kimdir)
|
||||
mkfile.write(".DUMMY: print_dir\n\n")
|
||||
mkfile.write("print_dir:\n")
|
||||
mkfile.write(" @printf $(KIM_INSTALL_DIR)\n")
|
||||
with open("%s/kim-prefix.txt" % thisdir, 'w') as pffile:
|
||||
pffile.write("%s" % kimdir)
|
||||
|
||||
print("Created %s/Makefile.KIM_DIR\n using %s" % (thisdir, kimdir))
|
||||
print("Created %s/kim-prefix.txt\n using %s" % (thisdir,kimdir))
|
||||
else:
|
||||
kimdir = os.path.join(os.path.abspath(thisdir), "installed-" + version)
|
||||
if args.nobuild and not os.path.isdir(kimdir):
|
||||
@ -117,13 +110,10 @@ if buildflag:
|
||||
|
||||
# configure LAMMPS to use kim-api to be installed
|
||||
|
||||
with open("%s/Makefile.KIM_DIR" % thisdir, 'w') as mkfile:
|
||||
mkfile.write("KIM_INSTALL_DIR=%s\n\n" % kimdir)
|
||||
mkfile.write(".DUMMY: print_dir\n\n")
|
||||
mkfile.write("print_dir:\n")
|
||||
mkfile.write(" @printf $(KIM_INSTALL_DIR)\n")
|
||||
with open("%s/kim-prefix.txt" % thisdir, 'w') as pffile:
|
||||
pffile.write("%s" % kimdir)
|
||||
|
||||
print("Created %s/Makefile.KIM_DIR\n using %s" % (thisdir, kimdir))
|
||||
print("Created %s/kim-prefix.txt\n using %s" % (thisdir,kimdir))
|
||||
|
||||
# download entire kim-api tarball
|
||||
|
||||
@ -136,12 +126,13 @@ if buildflag:
|
||||
# configure kim-api
|
||||
|
||||
print("Configuring kim-api ...")
|
||||
cmd = 'cd "%s/%s"; ./configure --prefix="%s"' % (thisdir, version, kimdir)
|
||||
subprocess.check_output(cmd, stderr=subprocess.STDOUT, shell=True)
|
||||
cmd = 'cd "%s/%s" && mkdir build && cd build && cmake .. -DCMAKE_INSTALL_PREFIX="%s" -DCMAKE_BUILD_TYPE=Release' % (thisdir,version,kimdir)
|
||||
txt = subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||
if verboseflag: print(txt.decode("UTF-8"))
|
||||
|
||||
# build kim-api
|
||||
print("Building kim-api ...")
|
||||
cmd = 'cd "%s/%s"; make' % (thisdir, version)
|
||||
cmd = 'cd "%s/%s/build" && make' % (thisdir, version)
|
||||
txt = subprocess.check_output(cmd, stderr=subprocess.STDOUT, shell=True)
|
||||
if verboseflag:
|
||||
print(txt.decode("UTF-8"))
|
||||
@ -149,23 +140,13 @@ if buildflag:
|
||||
# install kim-api
|
||||
|
||||
print("Installing kim-api ...")
|
||||
cmd = 'cd "%s/%s"; make install' % (thisdir, version)
|
||||
cmd = 'cd "%s/%s/build" && make install' % (thisdir, version)
|
||||
txt = subprocess.check_output(cmd, stderr=subprocess.STDOUT, shell=True)
|
||||
if verboseflag:
|
||||
print(txt.decode("UTF-8"))
|
||||
|
||||
# remove source files
|
||||
|
||||
print("Building and installing example Models")
|
||||
cmd = 'cd "%s/%s/examples"; make model-drivers-all-system' % (thisdir, version)
|
||||
txt = subprocess.check_output(cmd, stderr=subprocess.STDOUT, shell=True)
|
||||
if verboseflag:
|
||||
print(txt.decode("UTF-8"))
|
||||
cmd = 'cd "%s/%s/examples"; make models-all-system' % (thisdir, version)
|
||||
txt = subprocess.check_output(cmd, stderr=subprocess.STDOUT, shell=True)
|
||||
if verboseflag:
|
||||
print(txt.decode("UTF-8"))
|
||||
|
||||
print("Removing kim-api source and build files ...")
|
||||
cmd = 'cd "%s"; rm -rf %s; rm -rf %s.txz' % (thisdir, version, version)
|
||||
subprocess.check_output(cmd, stderr=subprocess.STDOUT, shell=True)
|
||||
@ -173,7 +154,7 @@ if buildflag:
|
||||
# add all OpenKIM models, if desired
|
||||
if everythingflag:
|
||||
print("Adding all OpenKIM models, this will take a while ...")
|
||||
cmd = '%s/bin/kim-api-v1-collections-management install system OpenKIM' % (kimdir)
|
||||
cmd = '%s/bin/kim-api-v2-collections-management install system OpenKIM' % (kimdir)
|
||||
txt = subprocess.check_output(cmd, stderr=subprocess.STDOUT, shell=True)
|
||||
if verboseflag:
|
||||
print(txt.decode("UTF-8"))
|
||||
@ -181,16 +162,16 @@ if buildflag:
|
||||
# add single OpenKIM model
|
||||
if addflag:
|
||||
|
||||
makefile_path = os.path.join(thisdir, "Makefile.KIM_DIR")
|
||||
if os.path.isfile(makefile_path):
|
||||
cmd = 'make --no-print-directory -f %s print_dir' % makefile_path
|
||||
kimdir = subprocess.check_output(cmd, stderr=subprocess.STDOUT, shell=True)
|
||||
pf_path = os.path.join(thisdir, "kim-prefix.txt")
|
||||
if os.path.isfile(pf_path):
|
||||
cmd = 'cat %s' % pf_path
|
||||
kimdir = subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
|
||||
|
||||
if not os.path.isdir(kimdir):
|
||||
sys.exit("\nkim-api is not installed")
|
||||
|
||||
# download single model
|
||||
cmd = '%s/bin/kim-api-v1-collections-management install system %s' % (kimdir.decode("UTF-8"), addmodelname)
|
||||
cmd = '%s/bin/kim-api-v2-collections-management install system %s' % (kimdir.decode("UTF-8"), addmodelname)
|
||||
txt = subprocess.check_output(cmd, stderr=subprocess.STDOUT, shell=True)
|
||||
if verboseflag:
|
||||
print(txt.decode("UTF-8"))
|
||||
|
||||
@ -5,8 +5,6 @@
|
||||
# The KIM API package can be downloaded from https://openkim.org/kim-api
|
||||
# Follow the instructions in the INSTALL file to build and install the
|
||||
# KIM API. Add the openkim.org Models you are interested in using.
|
||||
# Make sure the directory where the "kim-api-build-conifg" utility is
|
||||
# located is on the PATH.
|
||||
#
|
||||
# As long as you have followed the KIM API build and install instructions,
|
||||
# there should not be any reason to change this file.
|
||||
@ -16,17 +14,17 @@
|
||||
# Settings that the LAMMPS build will import when this package is installed
|
||||
|
||||
|
||||
include ../../lib/kim/Makefile.KIM_DIR
|
||||
|
||||
ifeq ($(wildcard $(KIM_INSTALL_DIR)/bin/kim-api-v1-build-config),)
|
||||
KIM_CONFIG_HELPER = kim-api-v1-build-config
|
||||
else
|
||||
KIM_CONFIG_HELPER = $(KIM_INSTALL_DIR)/bin/kim-api-v1-build-config
|
||||
endif
|
||||
ifeq ($(shell $(KIM_CONFIG_HELPER) --version 2> /dev/null),)
|
||||
$(error $(KIM_CONFIG_HELPER) utility is not available. Something is wrong with your KIM API package setup)
|
||||
ifeq ($(strip $(shell pkg-config --version)),)
|
||||
$(error 'pkg-config' not found, but is required to configure the KIM API)
|
||||
endif
|
||||
|
||||
kim_SYSINC = $(shell $(KIM_CONFIG_HELPER) --includes)
|
||||
kim_SYSLIB = $(shell $(KIM_CONFIG_HELPER) --ldlibs)
|
||||
kim_SYSPATH = $(shell $(KIM_CONFIG_HELPER) --ldflags)
|
||||
kim_PREFIX := $(shell cat ../../lib/kim/kim-prefix.txt 2> /dev/null)
|
||||
kim_PREFIX := $(if $(kim_PREFIX),$(kim_PREFIX)/lib/pkgconfig,)
|
||||
kim_PREFIX := $(if $(shell printf -- "$${PKG_CONFIG_PATH}"),$(kim_PREFIX):$(shell printf -- "$${PKG_CONFIG_PATH}"),$(kim_PREFIX))
|
||||
|
||||
kim_SYSINC := $(shell export PKG_CONFIG_PATH="$(kim_PREFIX)"; pkg-config --cflags libkim-api-v2 2> /dev/null)
|
||||
kim_SYSLIB := $(shell export PKG_CONFIG_PATH="$(kim_PREFIX)"; pkg-config --libs libkim-api-v2 2> /dev/null)
|
||||
|
||||
ifeq ($(strip $(kim_SYSINC)),)
|
||||
$(error 'pkg-config' could not find an installed KIM API library.)
|
||||
endif
|
||||
|
||||
@ -3,10 +3,9 @@ is required to use the KIM package and its pair_style kim command in a
|
||||
LAMMPS input script.
|
||||
|
||||
Information about the KIM project can be found at https://openkim.org.
|
||||
The KIM project is lead by Ellad Tadmor and Ryan Elliott (U Minn) and
|
||||
James Sethna (Cornell U). Ryan Elliott is the main developer for the
|
||||
KIM API and he also maintains the code that implements the pair_style
|
||||
kim command.
|
||||
The KIM project is lead by Ellad Tadmor and Ryan Elliott (U Minn).
|
||||
Ryan Elliott is the main developer for the KIM API and he also
|
||||
maintains the code that implements the pair_style kim command.
|
||||
|
||||
You can type "make lib-kim" from the src directory to see help on
|
||||
how to download and build this library via make commands, or you can
|
||||
@ -21,33 +20,34 @@ Instructions:
|
||||
1. Configure lammps for use with the kim-api library installed in this directory
|
||||
|
||||
# replace X.Y.Z as appropriate here and below
|
||||
$ printf "KIM_INSTALL_DIR=${PWD}/installed-kim-api-vX.Y.Z\n" > ./Makefile.KIM_DIR
|
||||
$ printf "${PWD}/installed-kim-api-vX-X.Y.Z" > ./kim-prefix.txt
|
||||
|
||||
2. Download and unpack the kim-api
|
||||
|
||||
$ wget http://s3.openkim.org/kim-api/kim-api-vX.Y.Z.txz
|
||||
$ tar zxvf kim-api-vX.Y.Z.txz
|
||||
$ wget http://s3.openkim.org/kim-api/kim-api-vX-X.Y.Z.txz
|
||||
$ tar zxvf kim-api-vX-X.Y.Z.txz
|
||||
|
||||
# configure the kim-api
|
||||
$ cd kim-api-vX.Y.Z
|
||||
$ ./configure --prefix=${PWD}/../installed-kim-api-vX.Y.Z
|
||||
$ cd kim-api-vX-X.Y.Z
|
||||
$ mkdir build && cd build
|
||||
$ cmake .. -DCMAKE_INSTALL_PREFIX=${PWD}/../../installed-kim-api-vX-X.Y.Z
|
||||
|
||||
3. Build and install the kim-api and model
|
||||
|
||||
$ make
|
||||
$ make install
|
||||
$ cd ..
|
||||
|
||||
4. Remove source and build files
|
||||
|
||||
$ rm -rf kim-api-vX.Y.Z
|
||||
$ rm -rf kim-api-vX.Y.Z.txz
|
||||
$ cd ../../
|
||||
$ rm -rf kim-api-vX-X.Y.Z
|
||||
$ rm -rf kim-api-vX-X.Y.Z.txz
|
||||
|
||||
5. To add items do the following (replace the kim item name with your
|
||||
desired value)
|
||||
|
||||
$ source ${PWD}/kim-api-vX.Y.Z/bin/kim-api-v1-activate
|
||||
$ kim-api-v1-collections-management install system Pair_Johnson_Fe__MO_857282754307_002
|
||||
$ source ${PWD}/kim-api-vX-X.Y.Z/bin/kim-api-vX-activate
|
||||
$ kim-api-vX-collections-management install system Pair_Johnson_Fe__MO_857282754307_002
|
||||
|
||||
|
||||
-----------------
|
||||
@ -59,6 +59,6 @@ $ cd lammpos/src
|
||||
$ make yes-kim
|
||||
$ make g++ (or whatever target you wish)
|
||||
|
||||
Note that the Makefile.lammps and Makefile.KIM_DIR files in this directory
|
||||
are required to allow the LAMMPS build to find the necessary KIM files.
|
||||
You should not normally need to edit these files.
|
||||
Note that the Makefile.lammps file in this directory is required to
|
||||
allow the LAMMPS build to find the necessary KIM files. You should
|
||||
not normally need to edit these files.
|
||||
|
||||
@ -26,5 +26,4 @@ library you can test it using an input file from the examples dir:
|
||||
|
||||
./lmp_serial < lammps/examples/kim/in.kim.lj
|
||||
|
||||
This pair_style was written by Valeriu Smirichinski and Ryan
|
||||
S. Elliott (U Minn).
|
||||
This pair_style was written by Ryan S. Elliott (U Minn).
|
||||
|
||||
1526
src/KIM/pair_kim.cpp
1526
src/KIM/pair_kim.cpp
File diff suppressed because it is too large
Load Diff
@ -12,14 +12,45 @@
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
Contributing authors: Ryan S. Elliott,
|
||||
Valeriu Smirichinski,
|
||||
Ellad Tadmor (U Minn)
|
||||
Contributing authors: Ryan S. Elliott (UMinn)
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
Designed for use with the openkim-api-v1.5.0 package and for use with
|
||||
the kim-api-v1.6.0 (and newer) package
|
||||
This program is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the Free
|
||||
Software Foundation; either version 2 of the License, or (at your option)
|
||||
any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||
more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License along with
|
||||
this program; if not, see <https://www.gnu.org/licenses>.
|
||||
|
||||
Linking LAMMPS statically or dynamically with other modules is making a
|
||||
combined work based on LAMMPS. Thus, the terms and conditions of the GNU
|
||||
General Public License cover the whole combination.
|
||||
|
||||
In addition, as a special exception, the copyright holders of LAMMPS give
|
||||
you permission to combine LAMMPS with free software programs or libraries
|
||||
that are released under the GNU LGPL and with code included in the standard
|
||||
release of the "kim-api" under the CDDL (or modified versions of such code,
|
||||
with unchanged license). You may copy and distribute such a system following
|
||||
the terms of the GNU GPL for LAMMPS and the licenses of the other code
|
||||
concerned, provided that you include the source code of that other code
|
||||
when and as the GNU GPL requires distribution of source code.
|
||||
|
||||
Note that people who make modified versions of LAMMPS are not obligated to
|
||||
grant this special exception for their modified versions; it is their choice
|
||||
whether to do so. The GNU General Public License gives permission to release
|
||||
a modified version without this exception; this exception also makes it
|
||||
possible to release a modified version which carries forward this exception.
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
Designed for use with the kim-api-v2-2.0.0 (and newer) package
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
#ifdef PAIR_CLASS
|
||||
@ -34,6 +65,10 @@ PairStyle(kim,PairKIM)
|
||||
// includes from KIM & LAMMPS
|
||||
class KIM_API_model;
|
||||
#include "pair.h"
|
||||
extern "C" {
|
||||
#include "KIM_SimulatorHeaders.h"
|
||||
}
|
||||
#include <sstream>
|
||||
|
||||
|
||||
namespace LAMMPS_NS {
|
||||
@ -48,14 +83,13 @@ namespace LAMMPS_NS {
|
||||
virtual void settings(int, char**);
|
||||
virtual void coeff(int, char**);
|
||||
virtual void init_style();
|
||||
virtual void init_list(int id, NeighList *ptr);
|
||||
virtual double init_one(int, int);
|
||||
virtual void reinit();
|
||||
virtual int pack_reverse_comm(int, int, double*);
|
||||
virtual void unpack_reverse_comm(int, int*, double*);
|
||||
virtual double memory_usage();
|
||||
void *extract(const char *, int &);
|
||||
|
||||
private:
|
||||
protected:
|
||||
// (nearly) all bool flags are not initialized in constructor, but set
|
||||
// explicitly in the indicated function. All other data members are
|
||||
// initialized in constructor
|
||||
@ -64,12 +98,11 @@ namespace LAMMPS_NS {
|
||||
|
||||
// values set in settings()
|
||||
char* kim_modelname;
|
||||
bool print_kim_file;
|
||||
|
||||
// values set in coeff()
|
||||
|
||||
// values set in allocate(), called by coeff()
|
||||
void allocate();
|
||||
virtual void allocate();
|
||||
int* lmps_map_species_to_unique;
|
||||
|
||||
// values set in coeff(), after calling allocate()
|
||||
@ -80,74 +113,59 @@ namespace LAMMPS_NS {
|
||||
// values set in set_lmps_flags(), called from init_style()
|
||||
bool lmps_using_newton;
|
||||
bool lmps_using_molecular;
|
||||
bool lmps_hybrid; // true if running with pair hybrid
|
||||
bool lmps_support_cluster; // true if running in mode compat.
|
||||
// with CLUSTER
|
||||
enum unit_sys {REAL, METAL, SI, CGS, ELECTRON};
|
||||
unit_sys lmps_units;
|
||||
KIM_LengthUnit lengthUnit;
|
||||
KIM_EnergyUnit energyUnit;
|
||||
KIM_ChargeUnit chargeUnit;
|
||||
KIM_TemperatureUnit temperatureUnit;
|
||||
KIM_TimeUnit timeUnit;
|
||||
|
||||
KIM_Model * pkim;
|
||||
KIM_ComputeArguments * pargs;
|
||||
|
||||
// values set in set_kim_model_has_flags(), called by kim_init()
|
||||
KIM_API_model* pkim;
|
||||
bool kim_model_has_energy;
|
||||
bool kim_model_has_forces;
|
||||
bool kim_model_has_particleEnergy;
|
||||
bool kim_model_has_particleVirial;
|
||||
KIM_SupportStatus kim_model_support_for_energy;
|
||||
KIM_SupportStatus kim_model_support_for_forces;
|
||||
KIM_SupportStatus kim_model_support_for_particleEnergy;
|
||||
KIM_SupportStatus kim_model_support_for_particleVirial;
|
||||
|
||||
// values set in kim_init(), after call to string_init(_)
|
||||
// values set in kim_init()
|
||||
bool kim_init_ok;
|
||||
bool kim_model_using_half;
|
||||
bool kim_model_using_cluster;
|
||||
bool kim_model_using_Rij;
|
||||
int kim_ind_coordinates;
|
||||
int kim_ind_numberOfParticles;
|
||||
int kim_ind_numberContributingParticles;
|
||||
int kim_ind_numberOfSpecies;
|
||||
int kim_ind_particleSpecies;
|
||||
int kim_ind_get_neigh;
|
||||
int kim_ind_neighObject;
|
||||
int kim_ind_cutoff;
|
||||
int kim_ind_energy;
|
||||
int kim_ind_particleEnergy;
|
||||
int kim_ind_forces;
|
||||
int kim_ind_virial;
|
||||
int kim_ind_particleVirial;
|
||||
int lmps_local_tot_num_atoms;
|
||||
double kim_global_influence_distance; // KIM Model cutoff value
|
||||
int kim_number_of_neighbor_lists;
|
||||
double const * kim_cutoff_values;
|
||||
int const * modelWillNotRequestNeighborsOfNoncontributingParticles;
|
||||
class NeighList ** neighborLists;
|
||||
|
||||
// values set in init_style(), after calling pkim->model_init()
|
||||
bool kim_model_init_ok;
|
||||
// values set in init_style()
|
||||
bool kim_particle_codes_ok;
|
||||
int *kim_particle_codes;
|
||||
|
||||
// values set in set_statics(), called at end of kim_init(),
|
||||
// then again in set_volatiles(), called in compute()
|
||||
int lmps_local_tot_num_atoms;
|
||||
double kim_global_cutoff; // KIM Model cutoff value
|
||||
|
||||
// values set in compute()
|
||||
int lmps_maxalloc; // max allocated memory value
|
||||
int* kim_particleSpecies; // array of KIM particle species
|
||||
double** lmps_force_tmp; // temp storage for f, when running in
|
||||
// hybrid mode needed to avoid resetting
|
||||
// f to zero in each object
|
||||
int* kim_particleContributing; // array of KIM particle contributing
|
||||
int* lmps_stripped_neigh_list; // neighbors of one atom, used when LAMMPS
|
||||
// is in molecular mode
|
||||
|
||||
// values used in get_neigh()
|
||||
int kim_iterator_position; //get_neigh iterator current position
|
||||
double *Rij;
|
||||
int** lmps_stripped_neigh_ptr; // pointer into lists
|
||||
|
||||
// KIM specific helper functions
|
||||
void kim_error(int, const char *, int);
|
||||
void kim_init();
|
||||
void kim_free();
|
||||
void set_statics();
|
||||
void set_volatiles();
|
||||
void set_lmps_flags();
|
||||
void set_kim_model_has_flags();
|
||||
void write_descriptor(char** test_descriptor_string);
|
||||
virtual void set_contributing();
|
||||
virtual void kim_init();
|
||||
virtual void kim_free();
|
||||
virtual void set_argument_pointers();
|
||||
virtual void set_lmps_flags();
|
||||
virtual void set_kim_model_has_flags();
|
||||
virtual int check_for_routine_compatibility();
|
||||
// static methods used as callbacks from KIM
|
||||
static int get_neigh(void** kimmdl, int* mode, int* request,
|
||||
int* atom, int* numnei, int** nei1atom,
|
||||
double** pRij);
|
||||
static int get_neigh(
|
||||
void const * const dataObject,
|
||||
int const numberOfCutoffs, double const * const cutoffs,
|
||||
int const neighborListIndex, int const particleNumber,
|
||||
int * const numberOfNeighbors,
|
||||
int const ** const neighborsOfParticle);
|
||||
};
|
||||
}
|
||||
|
||||
@ -156,81 +174,92 @@ namespace LAMMPS_NS {
|
||||
|
||||
/* ERROR/WARNING messages:
|
||||
|
||||
E: Illegal ... command
|
||||
E: Unable to set KIM particle species codes and/or contributing
|
||||
|
||||
Self-explanatory. Check the input script syntax and compare to the
|
||||
documentation for the command. You can use -echo screen as a
|
||||
command-line option when running LAMMPS to see the offending line.
|
||||
A low-level kim-api error has occurred.
|
||||
|
||||
E: Unrecognized virial argument in pair_style command
|
||||
E: KIM Compute returned error
|
||||
|
||||
Only two options are supported: LAMMPSvirial and KIMvirial
|
||||
The KIM model was unable, for some reason, to complete the computation.
|
||||
|
||||
E: 'KIMvirial' or 'LAMMPSvirial' not supported with kim-api-v2.
|
||||
|
||||
"KIMvirial or "LAMMPSvirial" found on the pair_style line. These keys are not supported kim-api-v2. (The virial computation is always performed by LAMMPS.) Please remove these keys, make sure the KIM model you are using supports kim-api-v2, and rerun.
|
||||
|
||||
E: Illegal pair_style command
|
||||
|
||||
Self-explanatory.
|
||||
|
||||
E: Incorrect args for pair coefficients
|
||||
|
||||
Self-explanatory. Check the input script or data file.
|
||||
Self-explanatory.
|
||||
|
||||
E: Invalid args for non-hybrid pair coefficients
|
||||
E: create_kim_particle_codes: symbol not found: XX
|
||||
|
||||
"NULL" is only supported in pair_coeff calls when using pair hybrid
|
||||
The KIM model specified does not support the atomic species symbol
|
||||
|
||||
E: PairKIM only works with 3D problems
|
||||
|
||||
This is a current limitation.
|
||||
Self-explanatory.
|
||||
|
||||
E: All pair coeffs are not set
|
||||
|
||||
All pair coefficients must be set in the data file or by the
|
||||
pair_coeff command before running a simulation.
|
||||
Self-explanatory.
|
||||
|
||||
E: KIM neighbor iterator exceeded range
|
||||
E: Unable to destroy Compute Arguments Object
|
||||
|
||||
This should not happen. It likely indicates a bug
|
||||
in the KIM implementation of the interatomic potential
|
||||
where it is requesting neighbors incorrectly.
|
||||
A low-level kim-api error has occurred.
|
||||
|
||||
E: LAMMPS unit_style lj not supported by KIM models
|
||||
E: KIM ModelCreate failed
|
||||
|
||||
Self-explanatory. Check the input script or data file.
|
||||
The kim-api was not able to create a model object for the specified model.
|
||||
|
||||
E: Unknown unit_style
|
||||
E: KIM Model did not accept the requested unit system
|
||||
|
||||
Self-explanatory. Check the input script or data file.
|
||||
The KIM Model does not support the specified LAMMPS unit system
|
||||
|
||||
W: KIM Model does not provide `energy'; Potential energy will be zero
|
||||
E: KIM ComputeArgumentsCreate failed
|
||||
|
||||
UNDOCUMENTED
|
||||
A low-level kim-api error has occurred.
|
||||
|
||||
W: KIM Model does not provide `forces'; Forces will be zero
|
||||
E: Unable to register KIM pointers
|
||||
|
||||
UNDOCUMENTED
|
||||
A low-level kim-api error has occurred.
|
||||
|
||||
W: KIM Model does not provide `particleEnergy'; energy per atom will be zero
|
||||
E: Unable to set KIM argument pointers
|
||||
|
||||
UNDOCUMENTED
|
||||
A low-level kim-api error has occurred.
|
||||
|
||||
W: KIM Model does not provide `particleVirial'; virial per atom will be zero
|
||||
|
||||
UNDOCUMENTED
|
||||
|
||||
E: Test_descriptor_string already allocated
|
||||
|
||||
This is an internal error. Contact the developers.
|
||||
|
||||
U: KIM Model does not provide 'energy'; Potential energy will be zero
|
||||
E: pair_kim does not support hybrid
|
||||
|
||||
Self-explanatory.
|
||||
|
||||
U: KIM Model does not provide 'forces'; Forces will be zero
|
||||
E: LAMMPS unit_style lj not suppored by KIM models
|
||||
|
||||
Self-explanatory.
|
||||
|
||||
U: KIM Model does not provide 'particleEnergy'; energy per atom will be zero
|
||||
E: KIM Model requires unsupported compute argument: XXX
|
||||
|
||||
A low-level kim-api error has occurred.
|
||||
|
||||
W: KIM Model does not provide `partialEnergy'; Potential energy will be zero
|
||||
|
||||
Self-explanatory.
|
||||
|
||||
U: KIM Model does not provide 'particleVirial'; virial per atom will be zero
|
||||
W: KIM Model does not provide `partialForce'; Forces will be zero
|
||||
|
||||
Self-explanatory.
|
||||
|
||||
W: KIM Model does not provide `partialParticleEnergy'; energy per atom will be zero
|
||||
|
||||
Self-explanatory.
|
||||
|
||||
W: KIM Model does not provide `partialParticleVirial'; virial per atom will be zero
|
||||
|
||||
Self-explanatory.
|
||||
|
||||
E: KIM Model requires unsupported compute callback
|
||||
|
||||
A low-level kim-api error has occurred.
|
||||
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user