Getting Started with KIM

Welcome to the Open Knowledgebase of Interatomic Models (OpenKIM) website!

OpenKIM is a major open source effort funded by the NSF to develop standards and improve the reliability of molecular simulations.

The OpenKIM Repository contains computer implementations of interatomic models (potentials and force fields), simulation codes (called "tests") that compute different material properties, and first-principles/experimental reference data. Whenever a new model is added to the system, it is automatically coupled with all compatible tests, and similarly any new test is automatically coupled with all compatible models. The test results obtained in this fashion are inserted into the OpenKIM Repository, where they can be visualized and compared with other test results and reference data. This allows users to select and download appropriate models for their application. Models that are compatible with the KIM Application Programming Interface (API) can be used seamlessly with several major simulation codes that support the KIM API.

This document briefly describes the main OpenKIM features and capabilities and points to more information on how to use them. This is a good place to start if you are new to KIM (or need a reminder on how to do something).

Archival Storage of KIM Content

The OpenKIM Repository provides permanent archival storage of interatomic models, tests for computing material properties, reference data, and model predictions (test results). (For details, see the types of KIM content.) Best practice revision and provenance control are employed to ensure content integrity.

  • Each KIM Item is associated with a KIM Item Page (KIM Model Page, KIM Test Page, etc.), which provides information on the item, simulation results, associated files, and a Wiki where contributors and users can comment on the item. See for example, the Model Page for the Stillinger-Weber potential.

  • Each KIM Item is identified by a unique, permanent KIM ID of the following form: CC_DDDDDDDDDDDDD_VVV, where CC denotes the item type, DDDDDDDDDDDDD is a 12-digit code, and VVV is a version number. (For details, see the Guide to KIM IDs.) KIM IDs can be cited in publications (see details here) and can be linked to from workflow tools, making it possible for simulations to be reproduced in the future.

  • The OpenKIM Repository is designed to be user-extendable. Contributions of new Models, Tests, Verification Checks, Reference Data, and Visualizers are welcome. See instructions on adding new content to KIM.

Testing and Verifying Models

Interatomic models stored in the OpenKIM Repository are exhaustively tested providing users with a wealth of information to help them select a suitable model for a given application.

  • Each Model is subjected to a series of Verification Checks evaluating its integrity, e.g. Are the forces returned by the model consistent with those obtained through numerical differentiation of the energy? Does the model have continuous energy and derivatives at its cutoff? and so on. The Model is graded on each Verification Check and the results are presented in a dashboard on its Model Page. To learn more, see About Verification Checks.

  • The OpenKIM Repository contains KIM Tests uploaded by researchers that compute material properties of interest (such as equilibrium crystal structures, elastic constants, surface energies, thermal properties, etc.). The Tests are applied to all compatible interatomic models in the repository. The results are stored and can be examined and compared using visualization tools and text-based tools. Timing information is also provided so that the relative expense of different Models for the same computation can be assessed.

  • OpenKIM provides a framework for researchers to distribute and realize their molecular simulations research broadly. It is the aim of the KIM project for high-quality KIM Tests to become standard, citeable methods for computing important material properties. A great deal of expertise is required to compute material properties rigorously and robustly. For more information on KIM Tests and to learn how you can work with the KIM Team on adapting your simulations and expertise to craft a new test, see the Introduction to KIM Tests.

Using KIM Models

  • An important part of the KIM Project is the creation of an Application Programming Interface (API) for molecular simulations. The KIM API is a standard for exchanging information between simulation codes and interatomic models. Simulators and models that conform to the KIM API work together seamlessly (much like a DVD and a DVD player). This means that you can download any KIM Model and use it in any "KIM-Compliant" simulation code that supports the KIM API; see here for the current list.

  • For interatomic models archived in that conform to the KIM API (aka KIM Models), the site stores the actual computer implementation of the model and not only parameter files that are read in by other programs. This is important since in some cases the same parameter file can lead to different results when read in by different programs. (For a discussion of this effect for tabulated EAM potentials, see this publication.)

  • To use KIM-Compliant software, you first need to install the KIM API. Installation from source as well as using binary package managers is possible. See detailed instructions on how to install the KIM API, how to download and install KIM Models, and how to use them with KIM-compliant simulators.

  • OpenKIM provides a framework for interatomic model developers to distribute their interatomic models in a secure fashion. By conforming to the KIM API, the developers will make their models available at once to a large number of simulation codes.

Becoming a KIM Member

If you are still not a member, we encourage you to sign up. Becoming a KIM member is free and allows you to vote on important issues related to the project and its administration. For more information, see benefits of membership. Note that you do not need to be a member to access the KIM content.

Getting Help

Support is always available by sending an email with a question and all relevant information to

The message will be posted to the openkim google group:

Members of the OpenKIM development team actively monitor this forum and will do their best to respond to questions in a timely fashion. This forum is also used to announce minor new releases and bug fixes.