The output files for the nep executable

From GPUMD
Jump to navigation Jump to search

Brief descriptions

  • There are a number of output files for the nep executble. They have fixed names as given below.
  • The descriptor.out file will be generated in the beginning of the training and will not be updated later.
  • All the other files will be updated every 100 generations during the training.
  • Except for the nep.txt file, all the other files contain pure numbers (no text) in matrix form.
  • All the files are plain text files (not binary ones).

Conventions

  • [math]N_{\rm c}[/math]: number of configurations in the training set.
  • [math]N[/math]: total number of atoms in the training set.
  • [math]N_{\rm des}[/math]: dimension of the descriptor.
  • [math]n_{\rm max}^{\rm R}[/math]: the Chebyshev expansion order for the radial components of the descriptor.
  • [math]n_{\rm max}^{\rm A}[/math]: the Chebyshev polynomial expansion order for the angular components of the descriptor.
  • [math]l_{\rm max}[/math]: the Legendre polynomial expansion order for the angular components of the descriptor.

The descriptor.out file

  • This file contains the descriptor components of all the atoms in the training set. It will be created in the beginning of the training.
  • This file has a matrix of data with [math]N[/math] rows and [math]N_{\rm des}[/math] columns.
  • The order of the atoms (from the first to the last row) is the same as that in the train.in input file.
  • The order of the descriptors (from the first to the last column) is as follows:
    • The first [math]n_{\rm max}^{\rm R}+1[/math] items correspond to the radial components of the descriptor.
    • The next [math](n_{\rm max}^{\rm A}+1)l_{\rm max}[/math] items correspond to the angular components of the descriptor. These items are arranged such that the first [math]n_{\rm max}^{\rm A}+1[/math] items with [math]l=1[/math] come first, then followed those with [math]l=2[/math], and so on.

The loss.out file

  • This files contains the various loss functions during the training, with an interval of 100 generations.
  • Each row of this file reads:
gen L_t L_1 L_2 L_e L_f L_v

Here:

  • gen is the current generation (step).
  • L_t is the total loss function (sum of the other loss functions).
  • L_1 is the loss function related to the [math]\mathcal{L}_1[/math] regularization.
  • L_2 is the loss function related to the [math]\mathcal{L}_2[/math] regularization.
  • L_e is the loss function related to the energies.
  • L_f is the loss function related to the forces.
  • L_v is the loss function related to the virials.

The nep.txt file

  • This is the NEP potential file generated by the training. It can be used by the gpumd executable to run MD simulations.
  • The user does not need to understand the contents of this file. In case the user wants to understand the contents, please refer to the source code.

The energy.out file

  • This file contains the predicted energies versus the training energies.
  • There are 2 columns. The first column gives the energies (in units of eV/atom) calculated from NEP. The second column gives the corresponding energies (in units of eV/atom) from train.in.
  • Each row corresponds to one configuration in train.in, with the same order.

The force.out file

  • This file contains the predicted forces versus the training forces.
  • There are 6 columns. The first three columns are the [math]x[/math], [math]y[/math], and [math]z[/math] force components (in units of eV/A) from NEP. The last three columns are the corresponding forces (in units of eV/A) from train.in.
  • Each row corresponds to one atom in train.in, with the same order.

The virial.out file

  • This file contains the predicted forces versus the training forces.
  • There are 2 columns. The first column gives the virials (in units of eV/atom) calculated from NEP. The second column gives the corresponding virials (in units of eV/atom) from train.in. The number of rows is [math]6N_{\rm c}[/math]. The first [math]N_{\rm c}[/math] rows correspond to the [math]xx[/math] component of the viral in the same order as the energy data in energy.out, followed by the [math]yy[/math], [math]zz[/math], [math]xy[/math], [math]yz[/math], and [math]zx[/math] components.