You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/CITATIONS.md
+8Lines changed: 8 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -47,3 +47,11 @@ The following references are required to be cited when using ABACUS. Specificall
47
47
Sun, Liang, and Mohan Chen. "Machine learning based nonlocal kinetic energy density functional for simple metals and alloys." Physical Review B 109.11 (2024): 115135.
48
48
49
49
Sun, Liang, and Mohan Chen. "Multi-channel machine learning based nonlocal kinetic energy density functional for semiconductors." Electronic Structure 6.4 (2024): 045006.
50
+
51
+
-**If DFT-D4 dispersion correction is used:**
52
+
53
+
Eike Caldeweyher, Sebastian Ehlert, Andreas Hansen, Hagen Neugebauer, Sebastian Spicher, Christoph Bannwarth, and Stefan Grimme. "A generally applicable atomic-charge dependent London dispersion correction." The Journal of Chemical Physics 150, 154122 (2019). DOI: 10.1063/1.5090222.
54
+
55
+
Eike Caldeweyher, Jan-Michael Mewes, Sebastian Ehlert, and Stefan Grimme. "Extension and evaluation of the D4 London-dispersion model for periodic systems." Physical Chemistry Chemical Physics 22, 8499-8512 (2020). DOI: 10.1039/D0CP00502A.
56
+
57
+
Nikolay V. Tkachenko, Linus B. Dittmer, Rebecca Tomann, and Martin Head-Gordon. "Smooth D4S model." The Journal of Physical Chemistry Letters 15, 10629-10637 (2024). DOI: 10.1021/acs.jpclett.4c02653.
- d4: Grimme's DFT-D4 dispersion correction method using the external DFT-D4 library
3643
3646
- none: no vdW correction
3644
3647
3645
3648
> Note: ABACUS supports automatic setting of DFT-D3 parameters for common functionals. To benefit from this feature, please specify the parameter dft_functional explicitly, otherwise the autoset procedure will crash. If not satisfied with the built-in parameters, any manual setting on vdw_s6, vdw_s8, vdw_a1 and vdw_a2 will overwrite the automatic values.
3649
+
3650
+
> Note: DFT-D4 support requires ABACUS to be configured with ENABLE_DFTD4=ON and a CMake-installed dftd4 library exporting dftd4-config.cmake. DFT-D4 damping parameters are loaded from the external library.
3646
3651
-**Default**: none
3647
3652
3653
+
### vdw_d4_xc
3654
+
3655
+
-**Type**: String
3656
+
-**Availability**: *vdw_method is set to d4*
3657
+
-**Description**: Functional name passed to the DFT-D4 library to load its internal damping parameters. If set to default, ABACUS infers the functional name from dft_functional or pseudopotential metadata.
3658
+
-**Default**: default
3659
+
3660
+
### vdw_d4_model
3661
+
3662
+
-**Type**: String
3663
+
-**Availability**: *vdw_method is set to d4*
3664
+
-**Description**: DFT-D4 dispersion model used by the external DFT-D4 library. Available options are d4 for the standard D4 model and d4s for the smooth D4S model.
3665
+
-**Default**: d4
3666
+
3648
3667
### vdw_s6
3649
3668
3650
3669
-**Type**: String
@@ -3737,7 +3756,7 @@
3737
3756
3738
3757
-**Type**: String
3739
3758
-**Availability**: *vdw_cutoff_type is set to radius*
3740
-
-**Description**: Defines the radius of the cutoff sphere when vdw_cutoff_type is set to radius. The default values depend on the chosen vdw_method.
3759
+
-**Description**: Defines the cutoff radius when vdw_cutoff_type is set to radius. The default values depend on the chosen vdw_method. For DFT-D4, this controls the two-body dispersion cutoff, while the three-body cutoff is internally limited to the DFT-D4 default value of 40 Bohr.
3741
3760
-**Unit**: defined by vdw_radius_unit (default Bohr)
3742
3761
3743
3762
### vdw_radius_unit
@@ -3759,8 +3778,8 @@
3759
3778
### vdw_cn_thr
3760
3779
3761
3780
-**Type**: Real
3762
-
-**Availability**: *vdw_method is set to d3_0or d3_bj*
3763
-
-**Description**: The cutoff radius when calculating coordination numbers.
3781
+
-**Availability**: *vdw_method is set to d3_0, d3_bj, or d4*
3782
+
-**Description**: The cutoff radius when calculating coordination numbers. The default is 40 Bohr for DFT-D3 and 30 Bohr for DFT-D4.
3764
3783
-**Default**: 40
3765
3784
-**Unit**: defined by vdw_cn_thr_unit (default: Bohr)
Copy file name to clipboardExpand all lines: docs/advanced/install.md
+19Lines changed: 19 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -77,6 +77,25 @@ These two libraries are added as submodules in the [deps](https://github.com/dee
77
77
78
78
If you prefer using manually downloaded libraries, provide `-DLIBRI_DIR=${path to your LibRI folder} -DLIBCOMM_DIR=${path to your LibComm folder}`.
79
79
80
+
81
+
## Build with DFT-D4 support
82
+
83
+
ABACUS can use the external [DFT-D4](https://github.com/dftd4/dftd4) library for Grimme's DFT-D4 dispersion correction. DFT-D4 support is optional and disabled by default.
84
+
85
+
DFT-D4 must be built and installed with CMake, so that ABACUS can locate it through the exported `dftd4-config.cmake` package. Meson-built installations, including the Conda package of `dftd4`, are not supported unless they provide a compatible CMake package file.
86
+
87
+
To build ABACUS with DFT-D4 support, pass `-DENABLE_DFTD4=ON` to CMake and provide `CMAKE_PREFIX_PATH` environment variable.
88
+
89
+
In the input file, enable DFT-D4 with:
90
+
91
+
```text
92
+
vdw_method d4
93
+
vdw_d4_xc pbe
94
+
vdw_d4_model d4 # or d4s for the smooth D4S model
95
+
```
96
+
97
+
If `vdw_d4_xc` is set to `default`, ABACUS will infer the functional name from `dft_functional` or pseudopotential metadata and pass it to the DFT-D4 library. The `vdw_d4_model` keyword selects the dispersion model inside the DFT-D4 library; the default is `d4`, while `d4s` enables the smooth D4S model.
98
+
80
99
## Build Unit Tests
81
100
82
101
To build tests for ABACUS, define `BUILD_TESTING` flag. You can also specify path to local installation of [Googletest](https://github.com/google/googletest) by setting `GTEST_DIR` flags. If not found in local, the configuration process will try to download it automatically.
* d4: Grimme's DFT-D4 dispersion correction method using the external DFT-D4 library
3741
3742
* none: no vdW correction
3742
3743
3743
3744
[NOTE] ABACUS supports automatic setting of DFT-D3 parameters for common functionals. To benefit from this feature, please specify the parameter dft_functional explicitly, otherwise the autoset procedure will crash. If not satisfied with the built-in parameters, any manual setting on vdw_s6, vdw_s8, vdw_a1 and vdw_a2 will overwrite the automatic values.
3745
+
3746
+
[NOTE] DFT-D4 support requires ABACUS to be configured with ENABLE_DFTD4=ON and a CMake-installed dftd4 library exporting `dftd4-config.cmake`. DFT-D4 damping parameters are loaded from the external library.
3744
3747
default_value: none
3745
3748
unit: ""
3746
3749
availability: ""
3750
+
- name: vdw_d4_xc
3751
+
category: vdW correction
3752
+
type: String
3753
+
description: |
3754
+
Functional name passed to the DFT-D4 library to load its internal damping parameters. If set to default, ABACUS infers the functional name from dft_functional or pseudopotential metadata.
3755
+
default_value: default
3756
+
unit: ""
3757
+
availability: vdw_method is set to d4
3758
+
- name: vdw_d4_model
3759
+
category: vdW correction
3760
+
type: String
3761
+
description: |
3762
+
DFT-D4 dispersion model used by the external DFT-D4 library. Available options are d4 for the standard D4 model and d4s for the smooth D4S model.
3763
+
default_value: d4
3764
+
unit: ""
3765
+
availability: vdw_method is set to d4
3747
3766
- name: vdw_s6
3748
3767
category: vdW correction
3749
3768
type: String
@@ -3852,7 +3871,7 @@ parameters:
3852
3871
category: vdW correction
3853
3872
type: String
3854
3873
description: |
3855
-
Defines the radius of the cutoff sphere when vdw_cutoff_type is set to radius. The default values depend on the chosen vdw_method.
3874
+
Defines the cutoff radius when vdw_cutoff_type is set to radius. The default values depend on the chosen vdw_method. For DFT-D4, this controls the two-body dispersion cutoff, while the three-body cutoff is internally limited to the DFT-D4 default value of 40 Bohr.
3856
3875
default_value: ""
3857
3876
unit: defined by vdw_radius_unit (default Bohr)
3858
3877
availability: vdw_cutoff_type is set to radius
@@ -3878,10 +3897,10 @@ parameters:
3878
3897
category: vdW correction
3879
3898
type: Real
3880
3899
description: |
3881
-
The cutoff radius when calculating coordination numbers.
3900
+
The cutoff radius when calculating coordination numbers. The default is 40 Bohr for DFT-D3 and 30 Bohr for DFT-D4.
3882
3901
default_value: "40"
3883
3902
unit: "defined by vdw_cn_thr_unit (default: Bohr)"
3884
-
availability: vdw_method is set to d3_0or d3_bj
3903
+
availability: vdw_method is set to d3_0, d3_bj, or d4
0 commit comments