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
@@ -2774,18 +2773,34 @@ The following parameters apply to *[basis_type](#basis_type)==lcao/lcao_in_pw/pw
2774
2773
2775
2774
**Availablity**: *[dft_functional](#dft_functional)==hse/hf/pbe0/scan0/opt_orb* or *[rpa](#rpa)==True*.
2776
2775
2777
-
### exx_hybrid_alpha
2776
+
### exx_fock_alpha
2778
2777
2779
-
-**Type**: Real
2780
-
-**Description**: fraction of Fock exchange in hybrid functionals, so that $E_{X}=\alpha E_{X}+(1-\alpha)E_{X,\text{LDA/GGA}}$
2778
+
-**Type**: Real\[Real...\](optional)
2779
+
-**Description**: fraction of Fock exchange $\frac{1}{r}$ in hybrid functionals, so that $E_{X} = \alpha E_{X} + (1-\alpha)E_{X,\text{LDA/GGA}}$
2781
2780
-**Default**:
2782
2781
- 1: if *[dft_functional](#dft_functional)==hf*
2783
-
- 0.25: else
2782
+
- 0.25: if *[dft_functional](#dft_functional)==pbe0*
2783
+
- 0.2: if *[dft_functional](#dft_functional)==b3lyp*
2784
+
- 0.25: if *[dft_functional](#dft_functional)==scan0*
2785
+
- 1: if *[dft_functional](#dft_functional)==muller*
2786
+
- 1: if *[dft_functional](#dft_functional)==power*
2787
+
- 1: if *[dft_functional](#dft_functional)==wp22*
2788
+
- 0: else
2784
2789
2785
-
### exx_hse_omega
2790
+
### exx_erfc_alpha
2786
2791
2787
-
-**Type**: Real
2788
-
-**Description**: range-separation parameter in HSE functional, such that $1/r=\text{erfc}(\omega r)/r+\text{erf}(\omega r)/r$
2792
+
-**Type**: Real \[Real...\](optional)
2793
+
-**Description**: fraction of exchange $\frac{\text{erfc}(\omega r)}{r}$ in hybrid functionals, so that $E_{X} = \alpha E_{X}^{\text{SR}} + (1-\alpha)E_{X,\text{LDA/GGA}}^{\text{SR}} + E_{X,\text{LDA/GGA}}^{\text{LR}}$
2794
+
-**Default**:
2795
+
- 0.25: if *[dft_functional](#dft_functional)==hse*
2796
+
- 1: if *[dft_functional](#dft_functional)==cwp22*
2797
+
- -1: if *[dft_functional](#dft_functional)==wp22*
2798
+
- 0: else
2799
+
2800
+
### exx_erfc_omega
2801
+
2802
+
-**Type**: Real \[Real...\](optional)
2803
+
-**Description**: range-separation parameter in exchange, such that $\frac{1}{r}=\frac{\text{erfc}(\omega r)}{r}+\frac{\text{erf}(\omega r)}{r}$
2789
2804
-**Default**: 0.11
2790
2805
2791
2806
### exx_separate_loop
@@ -2796,10 +2811,6 @@ The following parameters apply to *[basis_type](#basis_type)==lcao/lcao_in_pw/pw
2796
2811
- True: A two-step method is employed, i.e. in the inner iterations, density matrix is updated, while in the outer iterations, $H_{exx}$ is calculated based on density matrix that converges in the inner iteration.
2797
2812
-**Default**: True
2798
2813
2799
-
## Exact Exchange (LCAO/LCAO in PW)
2800
-
2801
-
These variables are relevant when using hybrid functionals with *[basis_type](#basis_type)==lcao/lcao_in_pw*.
2802
-
2803
2814
### exx_hybrid_step
2804
2815
2805
2816
-**Type**: Integer
@@ -2814,72 +2825,68 @@ These variables are relevant when using hybrid functionals with *[basis_type](#b
2814
2825
-**Description**: mixing_beta for densty matrix in each iteration of the outer-loop
2815
2826
-**Default**: 1.0
2816
2827
2817
-
### exx_lambda
2828
+
##Exact Exchange (LCAO in PW)
2818
2829
2819
-
-**Type**: Real
2830
+
These variables are relevant when using hybrid functionals with *[basis_type](#basis_type)==lcao_in_pw*.
-**Description**: It is used to compensate for divergence points at G=0 in the evaluation of Fock exchange using *lcao_in_pw* method.
2822
2837
-**Default**: 0.3
2823
2838
2839
+
## Exact Exchange (LCAO)
2840
+
2841
+
These variables are relevant when using hybrid functionals with *[basis_type](#basis_type)==lcao*.
2842
+
2824
2843
### exx_pca_threshold
2825
2844
2826
2845
-**Type**: Real
2827
-
-**Description**: To accelerate the evaluation of four-center integrals ($ik|jl$), the product of atomic orbitals are expanded in the basis of auxiliary basis functions (ABF): $\Phi_{i}\Phi_{j}\sim C^{k}_{ij}P_{k}$. The size of the ABF (i.e. number of $P_{k}$) is reduced using principal component analysis. When a large PCA threshold is used, the number of ABF will be reduced, hence the calculation becomes faster. However, this comes at the cost of computational accuracy. A relatively safe choice of the value is 1e-4.
2846
+
-**Description**: To accelerate the evaluation of four-center integrals ($ik|jl$), the product of atomic orbitals are expanded in the basis of auxiliary basis functions (ABF): $\Phi_{i}\Phi_{k}\sim \sum_{a} C^{a}_{ik}P_{a}$. The size of the ABF (i.e. number of $P_{a}$) is reduced using principal component analysis. When a large PCA threshold is used, the number of ABF will be reduced, hence the calculation becomes faster. However, this comes at the cost of computational accuracy. A relatively safe choice of the value is 1e-4.
2828
2847
-**Default**: 1E-4
2829
2848
2830
2849
### exx_c_threshold
2831
2850
2832
2851
-**Type**: Real
2833
-
-**Description**: See also the entry [exx_pca_threshold](#exx_pca_threshold). Smaller components (less than exx_c_threshold) of the $C^{k}_{ij}$ matrix are neglected to accelerate calculation. The larger the threshold is, the faster the calculation and the lower the accuracy. A relatively safe choice of the value is 1e-4.
2852
+
-**Description**: See also the entry [exx_pca_threshold](#exx_pca_threshold). Smaller components (less than exx_c_threshold) of the $C^{a}_{ik}$ matrix are neglected to accelerate calculation. The larger the threshold is, the faster the calculation and the lower the accuracy. A relatively safe choice of the value is 1e-4.
2834
2853
-**Default**: 1E-4
2835
2854
2836
2855
### exx_v_threshold
2837
2856
2838
2857
-**Type**: Real
2839
-
-**Description**: See also the entry [exx_pca_threshold](#exx_pca_threshold). With the approximation $\Phi_{i}\Phi_{j}\sim C^{k}_{ij}P_{k}$, the four-center integral in Fock exchange is expressed as $(ik|jl)=\Sigma_{a,b}C^{a}_{ij}V_{ab}C^{b}_{kl}$, where $V_{ab}=(P_{a}|P_{b})$ is a double-center integral. Smaller values of the V matrix can be truncated to accelerate calculation. The larger the threshold is, the faster the calculation and the lower the accuracy. A relatively safe choice of the value is 0, i.e. no truncation.
2858
+
-**Description**: See also the entry [exx_pca_threshold](#exx_pca_threshold). With the approximation $\Phi_{i}\Phi_{k}\sim \sum_{a} C^{a}_{ik}P_{a}$, the four-center integral in Fock exchange is expressed as $(ik|jl)=\sum_{a,b}C^{a}_{ik}V_{ab}C^{b}_{jl}$, where $V_{ab}=(P_{a}|P_{b})$ is a double-center integral. Smaller values of the V matrix can be truncated to accelerate calculation. The larger the threshold is, the faster the calculation and the lower the accuracy. A relatively safe choice of the value is 0, i.e. no truncation.
2840
2859
-**Default**: 1E-1
2841
2860
2842
2861
### exx_dm_threshold
2843
2862
2844
2863
-**Type**: Real
2845
-
-**Description**: The Fock exchange can be expressed as $\Sigma_{k,l}(ik|jl)D_{kl}$ where D is the density matrix. Smaller values of the density matrix can be truncated to accelerate calculation. The larger the threshold is, the faster the calculation and the lower the accuracy. A relatively safe choice of the value is 1e-4.
2864
+
-**Description**: The Fock exchange can be expressed as $\sum_{k,l}(ik|jl)D_{kl}$ where D is the density matrix. Smaller values of the density matrix can be truncated to accelerate calculation. The larger the threshold is, the faster the calculation and the lower the accuracy. A relatively safe choice of the value is 1e-4.
2846
2865
-**Default**: 1E-4
2847
2866
2848
2867
### exx_c_grad_threshold
2849
2868
2850
2869
-**Type**: Real
2851
-
-**Description**: See also the entry [exx_pca_threshold](#exx_pca_threshold). $\nabla C^{k}_{ij}$ is used in force and stress. Smaller components (less than exx_c_grad_threshold) of the $\nabla C^{k}_{ij}$ matrix are neglected to accelerate calculation. The larger the threshold is, the faster the calculation and the lower the accuracy. A relatively safe choice of the value is 1e-4.
2870
+
-**Description**: See also the entry [exx_pca_threshold](#exx_pca_threshold). $\nabla C^{a}_{ik}$ is used in force. Smaller components (less than exx_c_grad_threshold) of the $\nabla C^{a}_{ik}$ matrix are neglected to accelerate calculation. The larger the threshold is, the faster the calculation and the lower the accuracy. A relatively safe choice of the value is 1e-4.
2852
2871
-**Default**: 1E-4
2853
2872
2854
2873
### exx_v_grad_threshold
2855
2874
2856
2875
-**Type**: Real
2857
-
-**Description**: See also the entry [exx_pca_threshold](#exx_pca_threshold). With the approximation $\Phi_{i}\Phi_{j}\sim C^{k}_{ij}P_{k}$, the four-center integral in Fock exchange is expressed as $(ik|jl)=\Sigma_{a,b}C^{a}_{ij}V_{ab}C^{b}_{kl}$, where $V_{ab}=(P_{a}|P_{b})$ is a double-center integral. $\nabla V_{ab}$ is used in force and stress. Smaller values of the V matrix can be truncated to accelerate calculation. The larger the threshold is, the faster the calculation and the lower the accuracy. A relatively safe choice of the value is 0, i.e. no truncation.
2876
+
-**Description**: See also the entry [exx_pca_threshold](#exx_pca_threshold). With the approximation $\Phi_{i}\Phi_{k}\sim C^{a}_{ik}P_{a}$, the four-center integral in Fock exchange is expressed as $(ik|jl)=\sum_{a,b}C^{a}_{ik}V_{ab}C^{b}_{jl}$, where $V_{ab}=(P_{a}|P_{b})$ is a double-center integral. $\nabla V_{ab}$ is used in force. Smaller values of the V matrix can be truncated to accelerate calculation. The larger the threshold is, the faster the calculation and the lower the accuracy. A relatively safe choice of the value is 0, i.e. no truncation.
2858
2877
-**Default**: 1E-1
2859
2878
2860
-
### exx_schwarz_threshold
2861
-
2862
-
-**Type**: Real
2863
-
-**Description**: In practice the four-center integrals are sparse, and using Cauchy-Schwartz inequality, we can find an upper bound of each integral before carrying out explicit evaluations. Those that are smaller than exx_schwarz_threshold will be truncated. The larger the threshold is, the faster the calculation and the lower the accuracy. A relatively safe choice of the value is 1e-5. (Currently not used)
2864
-
-**Default**: 0
2865
-
2866
-
### exx_cauchy_threshold
2867
-
2868
-
-**Type**: Real
2869
-
-**Description**: In practice the Fock exchange matrix is sparse, and using Cauchy-Schwartz inequality, we can find an upper bound of each matrix element before carrying out explicit evaluations. Those that are smaller than exx_cauchy_threshold will be truncated. The larger the threshold is, the faster the calculation and the lower the accuracy. A relatively safe choice of the value is 1e-7.
2870
-
-**Default**: 1E-7
2871
-
2872
-
### exx_cauchy_force_threshold
2879
+
### exx_c_grad_r_threshold
2873
2880
2874
2881
-**Type**: Real
2875
-
-**Description**: In practice the Fock exchange matrix in force is sparse, and using Cauchy-Schwartz inequality, we can find an upper bound of each matrix element before carrying out explicit evaluations. Those that are smaller than exx_cauchy_force_threshold will be truncated. The larger the threshold is, the faster the calculation and the lower the accuracy. A relatively safe choice of the value is 1e-7.
2876
-
-**Default**: 1E-7
2882
+
-**Description**: See also the entry [exx_pca_threshold](#exx_pca_threshold). $\nabla C^{a}_{ik} * R_{ik}$ is used in stress. Smaller components (less than exx_c_grad_r_threshold) of the $\nabla C^{a}_{ik} * R_{ik}$ matrix are neglected to accelerate calculation. The larger the threshold is, the faster the calculation and the lower the accuracy. A relatively safe choice of the value is 1e-4.
2883
+
-**Default**: 1E-4
2877
2884
2878
-
### exx_cauchy_stress_threshold
2885
+
### exx_v_grad_r_threshold
2879
2886
2880
2887
-**Type**: Real
2881
-
-**Description**: In practice the Fock exchange matrix in stress is sparse, and using Cauchy-Schwartz inequality, we can find an upper bound of each matrix element before carrying out explicit evaluations. Those that are smaller than exx_cauchy_stress_threshold will be truncated. The larger the threshold is, the faster the calculation and the lower the accuracy. A relatively safe choice of the value is 1e-7.
2882
-
-**Default**: 1E-7
2888
+
-**Description**: See also the entry [exx_pca_threshold](#exx_pca_threshold). With the approximation $\Phi_{i}\Phi_{k}\sim C^{a}_{ik}P_{a}$, the four-center integral in Fock exchange is expressed as $(ik|jl)=\sum_{a,b}C^{a}_{ik}V_{ab}C^{b}_{jl}$, where $V_{ab}=(P_{a}|P_{b})$ is a double-center integral. $\nabla V_{ab} *R_{ab}$ is used in force and stress. Smaller values of the V matrix can be truncated to accelerate calculation. The larger the threshold is, the faster the calculation and the lower the accuracy. A relatively safe choice of the value is 0, i.e. no truncation.
2889
+
-**Default**: 1E-1
2883
2890
2884
2891
### exx_ccp_threshold
2885
2892
@@ -2896,15 +2903,6 @@ These variables are relevant when using hybrid functionals with *[basis_type](#b
2896
2903
- 1.5: if *[dft_functional](#dft_functional)==hse/cwp22*
2897
2904
- 1: else
2898
2905
2899
-
### exx_distribute_type
2900
-
2901
-
-**Type**: String
2902
-
-**Description**: When running in parallel, the evaluation of Fock exchange is done by distributing atom pairs on different processes, then gather the results. exx_distribute_type governs the mechanism of distribution. Available options are `htime`, `order`, `kmean1` and `kmeans2`.
2903
-
-`order`: Atom pairs are simply distributed by their orders.
2904
-
-`htime`: The balance in time is achieved on each processor, hence if the memory is sufficient, this is the recommended method.
2905
-
-`kmeans1` , `kmeans2`: Two methods where the k-means clustering method is used to reduce memory requirement. They might be necessary for very large systems. (Currently not used)
0 commit comments