GPUMD
GPUMD copied to clipboard
typewise cutoffs
-
In this PR, I propose to make the NEP cutoffs (radial and angular) and the ZBL cutoffs (outer and inner) type (species) dependent. They will be calculated based on the so-called covalent radii of the elements (taken from the DFT-D3 method).
-
I also removed NEP2.
pseudo code:
rc_radial[i][j] = min(rc_radial_global, (covalent_radius[i] + covalent_radius[j]) * 2.5)
rc_angular[i][j] = min(rc_angular_global, (covalent_radius[i] + covalent_radius[j]) * 2.0)
rc_zbl_outer[i][j] = min(rc_zbl_global, (covalent_radius[i] + covalent_radius[j]) * 0.7)
Usage example for nep.in
:
cutoff 8 6 # global NEP cutoff
zbl 2 # global ZBL cutoff
use_typewise_cutoff # enable this feature
For C-C we will have
rc_radial = 5
rc_angular = 4
rc_zbl_outer = 1.4
For O-H we will have
rc_radial = 3.1667
rc_angular = 2.5333
rc_zbl_outer = 0.8867
Potential benefits compared to using large global cutoffs only:
- More accurate: there should be optimal cutoffs for different species, both for NEP and ZBL.
- More stable and data efficient: less redundant features
- More efficient: will have less neighbors
Status:
- Training part is finished and to be tested.
- MD part is to be done.