ML_MB

From VASP Wiki
Revision as of 08:57, 19 December 2022 by Kresse (talk | contribs)

ML_MB = [integer]
Default: ML_MB = 1500 

Description: This tag sets the maximum number of local reference configurations (i.e. basis functions in the kernel) in the machine learning force field method.


The default value is a relatively safe value for most materials. However one might need to increase it to a greater value for liquids, polymers and amorphous systems, or when a MLFF for many different polytypes is trained. When the number of local reference configurations exceeds this value, VASP stops and prompts an error instruction to increase ML_MB. The user can also force VASP to dispose of local reference configurations (basis functions in the kernel) by specifying the tag ML_LBASIS_DISCARD. In this case, VASP will not stop, but one should make extensive tests whether the generated MLFF is sufficiently accurate.

If VASP stops, subsequent training can be restarted from the existing ML_AB file. This avoids loss of already acquired training data.

The flag ML_MB also determines the maximum number of rows of the design matrix. This is usually a huge matrix. The design matrix is allocated statically at the beginning of the run, since several parts of the code use MPI shared memory and dynamic reallocation of these arrays can cause issues on many operating systems. An estimate of the size of the design matrix and all other large arrays is printed out to the ML_LOGFILE before allocation. The design matrix is fully distributed in a block cyclic fashion for scaLAPACK, and thus the memory requirements scale inverse proportionally to the number of used processors.


Related tags and articles

ML_LMLFF, ML_MCONF, ML_LBASIS_DISCARD

Examples that use this tag