potfit wiki

open source force-matching

User Tools

Site Tools



The atomic configurations used for fitting are read from the configuration file which is specified in the parameter file. The format of the configuration is very simple and explained below.

There is a command line tool to generate configuration files from VASP output.

Configuration Files

A potfit configuration file is a plain text file, consisting of a header and a body, both of which are described below.

The header consists of at least six lines starting with the number sign # and has the following format:

 #N natoms useforce
 #C type_0 type_1 type_2 ...
 #X boxx.x boxx.y boxx.z
 #Y boxy.x boxy.y boxy.z
 #Z boxz.x boxz.y boxz.z
 #B_S x y z r
 #B_O x y z
 #B_A x y z
 #B_B x y z
 #B_C x y z
 #W weight
 #E coh_eng
 #S stress_xx stress_yy stress_zz stress_xy stress_yz stress_xz

The lines starting with #N, #X, #Y, #Z, #E and #F are mandatory, while the lines starting with #C, #W, #B and #S are optional. All other lines are ignored. #N must head the first line specifying the number of atoms in the configuration and an integer flag to control whether to use or to ignore force and stress information in this configuration. #F signifies the last header line. All parameters except the type_i are numbers and have the following meaning:

   number of atoms in configuration

   if 0, forces from this configuration are ignored

   component j of box vector i

   all contributions to the error sum from this configuration will be multiplied with this weight

   cohesive energy per atom

   components of stress tensor

Lines beginning with #B describe the Box of Contributing Particles and are optional.

The #C line contains information about the chemical elements and the corresponding atom types contained in this configuration. The elements are assigned to the corresponding atom types and have to be consistent throughout the configuration file.

Please note:

In all directions the sample should have a size of at least the potential cutoff distance. This distance is measured perpendicular to the corresponding face. If this is not the case, additional periodic copies of the configuration will be used for the simulation.

Deprecated header format

This “old” format is still read by potfit. Here, the header consists of six lines and has the following format:

 boxx.x boxx.y boxx.z
 boxy.x boxy.y boxy.z
 boxz.x boxz.y boxz.z
 stress_xx stress_yy stress_zz stress_yz stress_zx stress_xy

The parameters have the same meaning as in the new header. The parameter useforce is assumed to be 1, i.e. the forces are used as reference data.


Following the header, there is one line for each atom. The format of each line looks like this:

type x y z f_x f_y f_z

These items stand for:

   type of the atom; must be in the range [0,…,ntypes-1]

x, y, z
   absolute coordinates of the atom

f_x, f_y, f_z
   net force components on the atom

Please note that the forces cannot be omitted, even when they are ignored.

Boundary Conditions

potfit uses periodic boundary conditions. If a particle coordinate is not within the simulation box, it is mapped back into the simulation box.

Multiple Configurations

Multiple configuration files can just be concatenated. potfit continues reading from a reference file until it reaches the end of file. Should this not coincide with the end of a single configuration, an error will result.

config/main.txt · Last modified: 2018/09/22 13:35 by daniel