Skip to content

Commit 91c47da

Browse files
committed
add doc
1 parent 398796c commit 91c47da

File tree

2 files changed

+66
-10
lines changed

2 files changed

+66
-10
lines changed

docs/advanced/input_files/input-main.md

Lines changed: 56 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -164,9 +164,11 @@
164164
- [out\_interval](#out_interval)
165165
- [out\_element\_info](#out_element_info)
166166
- [restart\_save](#restart_save)
167-
- [rpa](#rpa)
167+
- [rpa (Under Development Feature)](#rpa-under-development-feature)
168168
- [nbands\_istate](#nbands_istate)
169169
- [out\_pchg](#out_pchg)
170+
- [out\_wfc\_norm](#out_wfc_norm)
171+
- [out\_wfc\_re\_im](#out_wfc_re_im)
170172
- [if\_separate\_k](#if_separate_k)
171173
- [out\_elf](#out_elf)
172174
- [Density of states](#density-of-states)
@@ -261,7 +263,9 @@
261263
- [block\_height](#block_height)
262264
- [Exact Exchange](#exact-exchange)
263265
- [exx\_hybrid\_alpha](#exx_hybrid_alpha)
266+
- [exx\_hybrid\_beta](#exx_hybrid_beta)
264267
- [exx\_hse\_omega](#exx_hse_omega)
268+
- [exx\_use\_ewald](#exx_use_ewald)
265269
- [exx\_separate\_loop](#exx_separate_loop)
266270
- [exx\_hybrid\_step](#exx_hybrid_step)
267271
- [exx\_mixing\_beta](#exx_mixing_beta)
@@ -283,6 +287,8 @@
283287
- [exx\_opt\_orb\_ecut](#exx_opt_orb_ecut)
284288
- [exx\_opt\_orb\_tolerence](#exx_opt_orb_tolerence)
285289
- [exx\_real\_number](#exx_real_number)
290+
- [exx\_spencer\_type](#exx_spencer_type)
291+
- [exx\_fq\_type](#exx_fq_type)
286292
- [rpa\_ccp\_rmesh\_times](#rpa_ccp_rmesh_times)
287293
- [exx\_symmetry\_realspace](#exx_symmetry_realspace)
288294
- [out\_ri\_cv](#out_ri_cv)
@@ -458,7 +464,7 @@
458464
- [pexsi\_mu\_guard](#pexsi_mu_guard)
459465
- [pexsi\_elec\_thr](#pexsi_elec_thr)
460466
- [pexsi\_zero\_thr](#pexsi_zero_thr)
461-
- [Linear Response TDDFT](#linear-response-tddft)
467+
- [Linear Response TDDFT (Under Development Feature)](#linear-response-tddft-under-development-feature)
462468
- [xc\_kernel](#xc_kernel)
463469
- [lr\_init\_xc\_kernel](#lr_init_xc_kernel)
464470
- [lr\_solver](#lr_solver)
@@ -472,7 +478,7 @@
472478
- [abs\_broadening](#abs_broadening)
473479
- [ri\_hartree\_benchmark](#ri_hartree_benchmark)
474480
- [aims\_nbasis](#aims_nbasis)
475-
- [Reduced Density Matrix Functional Theory](#reduced-density-matrix-functional-theory)
481+
- [Reduced Density Matrix Functional Theory (Under Development Feature)](#reduced-density-matrix-functional-theory-under-development-feature)
476482
- [rdmft](#rdmft)
477483
- [rdmft\_power\_alpha](#rdmft_power_alpha)
478484

@@ -2653,21 +2659,39 @@ These variables are relevant to gate field (compensating charge) [Detailed intro
26532659

26542660
These variables are relevant when using hybrid functionals.
26552661

2656-
**Availablity**: *[dft_functional](#dft_functional)==hse/hf/pbe0/scan0/opt_orb* or *[rpa](#rpa)==True*, and *[basis_type](#basis_type)==lcao/lcao_in_pw*
2662+
**Availablity**: *[dft_functional](#dft_functional)==hse/hf/pbe0/scan0/opt_orb/...* or *[rpa](#rpa)==True*, and *[basis_type](#basis_type)==lcao/lcao_in_pw*
2663+
2664+
#### Hybrid Functional Parameters {#hybrid_func_params}
2665+
|[dft_functional](#dft_functional)|[exx_hybrid_alpha](#exx_hybrid_alpha)|[exx_hybrid_beta](#exx_hybrid_beta)|[exx_hse_omega](#exx_hse_omega)|
2666+
|:-:|:-:|:-:|:-:|
2667+
|hf|1|0|0|
2668+
|lc_pbe|1|-1|0.33|
2669+
|lc_wpbe|1|-1|0.4|
2670+
|lrc_wpbe|1|-1|0.3|
2671+
|lrc_wpbeh|1|-0.8|0.2|
2672+
|pbe0|0.25|0|0|
2673+
|hse([exx_use_ewald](#exx_use_ewald)=0)|0.25|0|0.11|
2674+
|hse([exx_use_ewald](#exx_use_ewald)=1)|0.0|0.25|0.11|
2675+
|scan0|0.25|0|0|
2676+
|cam_pbeh|0.2|0.8|0.7|
26572677

26582678
### exx_hybrid_alpha
26592679

26602680
- **Type**: Real
26612681
- **Description**: fraction of Fock exchange in hybrid functionals, so that $E_{X}=\alpha E_{X}+(1-\alpha)E_{X,\text{LDA/GGA}}$
2662-
- **Default**:
2663-
- 1: if *[dft_functional](#dft_functional)==hf*
2664-
- 0.25: else
2682+
- **Default**: see [hybrid_func_params](#hybrid_func_params)
2683+
2684+
### exx_hybrid_beta
2685+
2686+
- **Type**: Real
2687+
- **Description**: another fraction of Fock exchange in range-separated hybrid funtionals, so that $E_{X} = \alpha E_{X}^\text{HF-LR}+(\alpha+\beta) E_{X}^\text{HF-SR}+(1-\alpha)E_{X}^\text{KS-LR}+[1-(\alpha+\beta)]E_{X}^\text{KS-SR}$
2688+
- **Default**: see [hybrid_func_params](#hybrid_func_params)
26652689

26662690
### exx_hse_omega
26672691

26682692
- **Type**: Real
26692693
- **Description**: range-separation parameter in HSE functional, such that $1/r=\text{erfc}(\omega r)/r+\text{erf}(\omega r)/r$
2670-
- **Default**: 0.11
2694+
- **Default**: see [hybrid_func_params](#hybrid_func_params)
26712695

26722696
### exx_separate_loop
26732697

@@ -2677,6 +2701,12 @@ These variables are relevant when using hybrid functionals.
26772701
- 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.
26782702
- **Default**: True
26792703

2704+
### exx_use_ewald
2705+
2706+
- **Type**: Boolean
2707+
- **Description**: if True, use Ewald method to construct V matrix
2708+
- **Default**: True
2709+
26802710
### exx_hybrid_step
26812711

26822712
- **Type**: Integer
@@ -2815,6 +2845,24 @@ These variables are relevant when using hybrid functionals.
28152845
- True: if gamma_only
28162846
- False: else
28172847

2848+
### exx_spencer_type
2849+
2850+
- **Type**: Integer
2851+
- **Description**:
2852+
- 0: see Phys. Rev. B 77, 193110 (2008).
2853+
- 1: see Phys. Rev. Mater. 5, 013807 (2021).
2854+
Set Spencer-Alavi scheme type.
2855+
- **Default**: 0
2856+
2857+
### exx_fq_type
2858+
2859+
- **Type**: Integer
2860+
- **Description**:
2861+
- 0: see Phys. Rev. B, 75:205126, May 2007. (In test)
2862+
- 1: see Phys. Rev. B 48, 5058. August 1993.
2863+
Auxiliary-function fq used in correction to V(q) at q->0.
2864+
- **Default**: 1
2865+
28182866
### rpa_ccp_rmesh_times
28192867

28202868
- **Type**: Real

source/module_io/read_input_item_exx_dftu.cpp

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,7 @@ void ReadInput::item_exx()
2424
{
2525
para.input.exx_hybrid_alpha = "1";
2626
}
27-
else if (dft_functional_lower == "pbe0" || dft_functional_lower == "hse"
28-
|| dft_functional_lower == "scan0")
27+
else if (dft_functional_lower == "pbe0" || dft_functional_lower == "scan0")
2928
{
3029
para.input.exx_hybrid_alpha = "0.25";
3130
}
@@ -43,6 +42,15 @@ void ReadInput::item_exx()
4342
{
4443
para.input.exx_hybrid_alpha = "0.2";
4544
}
45+
else if (dft_functional_lower == "hse")
46+
{
47+
if (para.input.exx_use_ewald)
48+
{
49+
para.input.exx_hybrid_alpha = "0";
50+
}
51+
else
52+
para.input.exx_hybrid_alpha = "0.25";
53+
}
4654
else
4755
{ // no exx in scf, but will change to non-zero in
4856
// postprocess like rpa

0 commit comments

Comments
 (0)