KIM API version 0.2.0 released

15-Sep-2011

The KIM development team is pleased to announce the release of version 0.2.0 of the KIM application programming interface (API). By conforming to this API, an atomistic simulation code will seamlessly work with any KIM-compliant interatomic model written in any supported language. The interface is computationally efficient and often requires relatively minor changes to existing codes.

Version 0.2.0 is a fully functioning API. It has the following main features:

  • support for C, C++, FORTRAN 77, Fortran 90/95
  • partial support for Fortran 2003 (more information available on request)
  • support for static and dynamic linking of programs using the OpenKIM API
  • communication of an arbitrary number of `arguments' to and from a Model
  • support for multiple atomic species
  • enables a simulation code to access and modify Model parameters
  • support for five NBC (neighbor list and boundary conditions) methods
  • support for `Model drivers' (Models that read in parameters)
  • incorporation of KIM descriptor files into a Model's binary library
  • improved error handling
  • up-to-date documentation

(See the CHANGELOG and README files described below for more information on these features.) The distribution includes the API code, examples of simulation codes (Tests) and interatomic models (Models) and documentation. The purpose of this release is to familiarize users with how the API works and to get feedback to help guide the design of future releases. Note that this is an "alpha" release in computer science terms (https://en.wikipedia.org/wiki/Software_release_life_cycle). Additional features will be added to the next release (see below) which may not be fully-downward compatible.

To obtain the code, visit the following page:

https://openkim.org/kim-api/

and click on the link for the current release of the KIM API on the bottom of the page. Then do the following:

  1. Unpack the tarball (on Unix/Linux/Mac OSX systems, type: tar zxvf openkim-api-latest.tgz) which will create the directory openkim-api-v0.2.0
  2. Read the CHANGELOG file in the root directory (openkim-api-v0.2.0/CHANGELOG) to see what is new in the current release.
  3. Read the README file in the root directory (openkim-api-v0.2.0/README).
  4. Install the package. See directions in the INSTALL file in the root directory.
  5. Read the file README in the DOCs directory for a step-by-step guide to learning the API.

SUPPORT

If you have problems or questions, send an email with your question and all relevant information to

openkim@googlegroups.com

Your message will be posted to the openkim google group:

https://groups.google.com/g/openkim

The members of the openkim development team actively monitor this forum and will do their best to help you with your question in a timely fashion. This forum is also used to announce minor new releases and bug fixes.

If you plan to work with the KIM API, it is highly recommended that you become a member of the openkim group. (Just go to the above link and click on "Join this group" on the right of the screen.)


The next release of the API is tentatively scheduled for early October 2011. Additional features which are planned for future releases include:

  • adoption of an appropriate open source license for OpenKIM API
  • various improvements related to API efficiency
  • automatic physical units conversion between Tests and Models
  • support for `Test drivers' (Tests that read in input files)
  • support for additional arguments (interatomic forces, Hessian, etc.)
  • improved handling of static and dynamic libraries
  • addressing issues raised by users working with version 0.2.0

(For more information on planned new features, see the TODO file in the root directory: openkim-api-v0.2.0/TODO)