PROPhet is a code to integrate machine learning techniques with first-principles quantum chemistry approaches
C++ Shell Makefile
Switch branches/tags
Nothing to show
Clone or download

//     _____________________________________      _____   |    
//     ___/ __ \__/ __ \_/ __ \__/ __ \__/ /________/ /   |
//     __/ /_/ /_/ /_/ // / / /_/ /_/ /_/ __ \/ _ \/ __/  |
//     _/ ____/_/ _, _// /_/ /_/ ____/_/ / / /  __/ /_    |
//     /_/     /_/ |_| \____/ /_/     /_/ /_/\___/\__/    |


PROPhet was ceated by
Brian Kolb and Levi Lentz
in the group of Alexie Kolpak at MIT

See the documentation for a full description of PROPhet.

Please see the LICENSE file for license information

If used for published work, please cite the following:

Scientific Reports 7, Article number: 1192 (2017) doi:10.1038/s41598-017-01251-z

Description of PROPhet

PROPhet (short for PROPerty Prophet) couples neural networks with first-principles physics and chemistry codes to allow sophisticated prediction of material properties. In general, PROPhet is used to find mappings between a set of material or system properties and other properties. Some specific uses of PROPhet are to:

  • Find a mapping between atomic configuration and other properties, including the total energy, creating an analytical potential, which can be used for molecular dynamics with the LAMMPS code
  • Construct density functionals for exchange-correlation energy, kinetic energy, or just about anything else
  • Find a mapping between a set of descriptors (an arbitrary combination of material properties) and other properties

See the PROPhet project page for more details.

Interfaces with other codes

At the moment, PROPhet can couple automatically to the first-principles codes

meaning it can extract many common properties directly from the output files of these codes, without user interaction. Interfaces to other codes can be easily added.

In addition, potentials created in PROPhet can be used for molecular dynamics runs with the freely-available LAMMPS MD code. See the documentation for more details.

Compiling Information

Compilation follows the standard linux paradigm:

./configure [options]
make install

If you want to use PROPhet potentials in the LAMMPS MD code, you should execute:

./configure [options] --enable-lammps=LAMMPS_DIR
make install

where LAMMPS_DIR is the directory with the LAMMPS source. This will make the lammps library of PROPhet, and attempt to insert it into the LAMMPS package system. The LAMMPS code must be relinked after completion to link in the PROPhet library. If automatic instalation fails, the library can be inserted into LAMMPS by following the instructions given in the documentation.

Usage Instructions

Usage instructions including a tutorial can be found in the documentation, and by looking in the doc/tutorial directory. A fully annotated input_file is also included in the doc directory.