potfit wiki

open source force-matching

User Tools

Site Tools


potfiles:format0

This is an old revision of the document!


Potential File Format 0


The potential format 0 is used for analytical potentials exclusively. All header tokens are supported except for the #G line.

Each analytic potential function has to be specified as follows:

type identifier
cutoff value
param_1 value min max
param_2 value min max
...

type

The type keyword has to be followed by the unique identifier for the analytic function. To enable the smooth cutoff option _sc can be added at the end of the identifer (this also adds another parameter to the end potential function!).

Examples:

# plain Lennard-Jones potential
type lj
epsilon 1 0 2
sigma 1 0 2

# Lennard-Jones with smooth cutoff option enabled
type morse_sc
epsilon 1 0 2
sigma 1 0 2
h 1 0 2

cutoff

The cutoff keyword is required to specify the cutoff radius, which may be different for each potential function. The minimal distance for each potential function is calculated by potfit from the configuration file and will be present in the output potential as a comment after the cutoff line.

cutoff 7.0
# rmin 2.2

This indicates the minimum neighbor distance for this interaction is 2.2 units of distance.

parameter values

After the keywords the values for the analytic parameters have to be specified. Each line starts with an identifier for that parameter followed by the starting value, the minimum and maximum value for that parameter. The order of these parameters is fixed, for the implemented analytic functions the order can be found here.


Example

format_0_example.txt
#F 0 1
#C Al
## Al-Al
#E
 
type lj_sc
cutoff 7.000000
# rmin 2.159655
epsilon 2100.0633799282 0.500000 10000.000000
sigma 10.3066290006 1.000000 20.000000
h 1 0.5 2

A sample format 0 potential file for a binary EAM potential is available here.

Analytic potentials


Analytic potentials can be enabled in potfit by compiling it with the apot switch. There are some additional options for analytic potentials like the chemical potentials or the smooth cutoff.

Global parameters

potfit supports global parameters, which can occur in different potentials. With this feature it is possible for any potential to “share” parameters with each other. To use them, you need a section called global n after the header in your potential file, where n is the number of global parameters. The format for the parameters is the same as for normal parameters: name value min max. If you want to use a global parameter in a potential, use the name of the global parameter and add an exclamation mark.

#F 0 3
#C Mg Zn
#I 0 0 0
#E
 
global 2
glob1 1 0 2
glob2 2 0 5
 
type lj
cutoff 8
glob1!
glob2!
 
type lj
cutoff 8
glob2!
glob1!

Smooth Cutoff

The smooth cutoff function is very important for analytic potentials since it ensures that the potential and its gradient vanish at the desired cutoff radius. Therefore the potential is multiplied with a cutoff function $\Psi$.

$$V_{SC}(r)=\Psi\left(\frac{r-r_c}{h}\right)V(r)\qquad\text{where}\qquad\Psi(x)=\frac{x^4}{1+x^4}$$

To enable the smooth cutoff for a potential, _sc has to be added to the potential identifier.

type lj_sc
cutoff 7
epsilon 0.1 0 1
sigma 2.5 1 4
h 1 0 2

Potentials fitted with the _sc option will have an additional parameter h at the end. If you omit it, it will be kept fixed at a value of 1.

Implemented Potential Functions

The currently implemented analytic potential functions can be found here.

Adding New Potential Functions

If you want to add other analytic potentials see this guide.

potfiles/format0.1537719783.txt.gz · Last modified: 2018/09/23 18:23 by daniel