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/advanced/input_files/input-main.md
+29-30Lines changed: 29 additions & 30 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1005,23 +1005,22 @@ calculations.
1005
1005
-**Type**: Real
1006
1006
-**Description**:
1007
1007
1008
-
- 0.0: the total number of electrons will be calculated by the sum of valence electrons (i.e. assuming neutral system).
1008
+
- 0.0: The total number of electrons will be calculated by the sum of valence electrons (i.e. assuming neutral system).
1009
1009
-`>0.0`: this denotes the total number of electrons in the system. Must be less than 2*nbands.
1010
1010
-**Default**: 0.0
1011
1011
1012
1012
### nelec_delta
1013
1013
1014
1014
-**Type**: Real
1015
-
-**Description**:
1016
-
the total number of electrons will be calculated by `nelec`+`nelec_delta`.
1015
+
-**Description**: The total number of electrons will be calculated by `nelec`+`nelec_delta`.
1017
1016
-**Default**: 0.0
1018
1017
1019
1018
### nupdown
1020
1019
1021
1020
-**Type**: Real
1022
1021
-**Description**:
1023
1022
- 0.0: no constrain apply to system.
1024
-
-`>0.0`: this denotes the difference number of electrons between spin-up and spin-down in the system. The range of value must in [-nelec ~ nelec]. It is one method of constraint DFT, the fermi energy level will separate to E_Fermi_up and E_Fermi_down.
1023
+
-`>0.0`: The different number of electrons between spin-up and spin-down channels. The range of value must be in [-nelec ~ nelec]. It is one type of constrainted DFT method, two Fermi energies will be calculated.
1025
1024
-**Default**: 0.0
1026
1025
1027
1026
### dft_functional
@@ -1030,52 +1029,52 @@ calculations.
1030
1029
-**Description**: In our package, the XC functional can either be set explicitly using the `dft_functional` keyword in `INPUT` file. If `dft_functional` is not specified, ABACUS will use the xc functional indicated in the pseudopotential file.
1031
1030
On the other hand, if dft_functional is specified, it will overwrite the functional from pseudopotentials and performs calculation with whichever functional the user prefers. We further offer two ways of supplying exchange-correlation functional. The first is using 'short-hand' names such as 'LDA', 'PBE', 'SCAN'. A complete list of 'short-hand' expressions can be found in [the source code](../../../source/module_hamilt_general/module_xc/xc_functional.cpp). The other way is only available when ***compiling with LIBXC***, and it allows for supplying exchange-correlation functionals as combinations of LIBXC keywords for functional components, joined by a plus sign, for example, dft_functional='LDA_X_1D_EXPONENTIAL+LDA_C_1D_CSC'. The list of LIBXC keywords can be found on its [website](https://libxc.gitlab.io/functionals/). In this way, **we support all the LDA,GGA and mGGA functionals provided by LIBXC**.
1032
1031
1033
-
Furthermore, the old INPUT parameter exx_hybrid_type for hybrid functionals has been absorbed into dft_functional. Options are `hf` (pure Hartree-Fock), `pbe0`(PBE0), `hse` (Note: in order to use HSE functional, LIBXC is required). Note also that HSE has been tested while PBE0 has NOT been fully tested yet, and the maximum CPU cores for running exx in parallel is $N(N+1)/2$, with N being the number of atoms. And forces for hybrid functionals are not supported yet.
1032
+
Furthermore, the old INPUT parameter exx_hybrid_type for hybrid functionals has been absorbed into dft_functional. Options are `hf` (pure Hartree-Fock), `pbe0`(PBE0), `hse` (Note: in order to use HSE functional, LIBXC is required). Note also that HSE has been tested while PBE0 has NOT been fully tested yet, and the maximum CPU cores for running exx in parallel is $N(N+1)/2$, with N being the number of atoms.
1034
1033
1035
1034
If set to `opt_orb`, the program will not perform hybrid functional calculation. Instead, it is going to generate opt-ABFs as discussed in this [article](https://pubs.acs.org/doi/abs/10.1021/acs.jpclett.0c00481).
1036
-
-**Default**: same as UPF file.
1035
+
-**Default**: Used the same as DFT functional as specified in the pseudopotential files.
1037
1036
1038
1037
### xc_temperature
1039
1038
1040
1039
-**Type**: Real
1041
-
-**Description**: specifies temperature when using temperature-dependent XC functionals (KSDT and so on).
1042
-
-**Default**: 0.0
1040
+
-**Description**: Specifies temperature when using temperature-dependent XC functionals (KSDT and so on).
1041
+
-**Default**: 0.0
1043
1042
-**Unit**: Ry
1044
1043
1045
1044
### pseudo_rcut
1046
1045
1047
1046
-**Type**: Real
1048
-
-**Description**: Cut-off of radial integration for pseudopotentials
1047
+
-**Description**: Cut-off of radial integration for pseudopotentials.
1049
1048
-**Default**: 15
1050
1049
-**Unit**: Bohr
1051
1050
1052
1051
### pseudo_mesh
1053
1052
1054
1053
-**Type**: Integer
1055
1054
-**Description**:
1056
-
- 0: use our own mesh for radial integration of pseudopotentials
1057
-
- 1: use the mesh that is consistent with quantum espresso
1055
+
- 0: Use a mesh for radial integration of pseudopotentials.
1056
+
- 1: Use the mesh that is consistent with quantum espresso
1058
1057
-**Default**: 0
1059
1058
1060
1059
### nspin
1061
1060
1062
1061
-**Type**: Integer
1063
1062
-**Description**: The number of spin components of wave functions.
1064
-
-**1**: Spin degeneracy
1065
-
-**2**: Collinear spin polarized.
1066
-
-**4**: For the case of [noncollinear polarized](../scf/spin.md#noncollinear-spin-polarized-calculations), nspin will be automatically set to 4 without being specified by the user.
1063
+
-1: Spin degeneracy
1064
+
-2: Collinear spin polarized.
1065
+
-4: For the case of [noncollinear polarized](../scf/spin.md#noncollinear-spin-polarized-calculations), nspin will be automatically set to 4 without being specified by the user.
1067
1066
-**Default**: 1
1068
1067
1069
1068
### smearing_method
1070
1069
1071
1070
-**Type**: String
1072
1071
-**Description**: It indicates which occupation and smearing method is used in the calculation.
1073
-
-**fixed**: fixed occupations (available for non-coductors only)
1074
-
-**gauss** or **gaussian**: Gaussian smearing method.
1075
-
-**mp**: methfessel-paxton smearing method; recommended for metals.
1076
-
-**mp2**: 2-nd methfessel-paxton smearing method; recommended for metals.
1077
-
-**mv** or **cold**: marzari-vanderbilt smearing method.
1078
-
-**fd**: Fermi-Dirac smearing method: $f=1/\{1+\exp[(E-\mu)/kT]\}$ and smearing_sigma below is the temperature $T$ (in Ry).
1072
+
- fixed: fixed occupations (available for non-coductors only)
1073
+
- gauss or gaussian: Gaussian smearing method.
1074
+
-mp: methfessel-paxton smearing method; recommended for metals.
1075
+
- mp2: 2-nd methfessel-paxton smearing method; recommended for metals.
1076
+
-mv or cold: marzari-vanderbilt smearing method.
1077
+
-fd: Fermi-Dirac smearing method: $f=1/\{1+\exp[(E-\mu)/kT]\}$ and smearing_sigma below is the temperature $T$ (in Ry).
1079
1078
-**Default**: gauss
1080
1079
1081
1080
### smearing_sigma
@@ -1096,9 +1095,9 @@ calculations.
1096
1095
1097
1096
-**Type**: String
1098
1097
-**Description**: Charge mixing methods.
1099
-
-**plain**: Just simple mixing.
1100
-
-**pulay**: Standard Pulay method. [P. Pulay Chemical Physics Letters, (1980)](https://www.sciencedirect.com/science/article/abs/pii/0009261480803964)
1101
-
-**broyden**: Simplified modified Broyden method. [D.D. Johnson Physical Review B (1988)](https://journals.aps.org/prb/abstract/10.1103/PhysRevB.38.12807)
1098
+
- plain: Just simple mixing.
1099
+
- pulay: Standard Pulay method. [P. Pulay Chemical Physics Letters, (1980)](https://www.sciencedirect.com/science/article/abs/pii/0009261480803964)
1100
+
- broyden: Simplified modified Broyden method. [D.D. Johnson Physical Review B (1988)](https://journals.aps.org/prb/abstract/10.1103/PhysRevB.38.12807)
1102
1101
1103
1102
In general, the convergence of the Broyden method is slightly faster than that of the Pulay method.
1104
1103
-**Default**: broyden
@@ -1108,10 +1107,10 @@ calculations.
1108
1107
-**Type**: Real
1109
1108
-**Description**: In general, the formula of charge mixing can be written as $\rho_{new} = \rho_{old} + \beta * \rho_{update}$, where $\rho_{new}$ represents the new charge density after charge mixing, $\rho_{old}$ represents the charge density in previous step, $\rho_{update}$ is obtained through various mixing methods, and $\beta$ is set by the parameter `mixing_beta`. A lower value of 'mixing_beta' results in less influence of $\rho_{update}$ on $\rho_{new}$, making the self-consistent field (SCF) calculation more stable. However, it may require more steps to achieve convergence.
1110
1109
We recommend the following options:
1111
-
-**0.8**: `nspin=1`
1112
-
-**0.4**: `nspin=2` and `nspin=4`
1113
-
-**0**: keep charge density unchanged, usually used for restarting with `init_chg=file` or testing.
1114
-
-**0.1 or less**: if convergence of SCF calculation is difficult to reach, please try `0 < mixing_beta < 0.1`.
1110
+
- 0.8: `nspin=1`
1111
+
- 0.4: `nspin=2` and `nspin=4`
1112
+
-0: keep charge density unchanged, usually used for restarting with `init_chg=file` or testing.
1113
+
- 0.1 or less: if convergence of SCF calculation is difficult to reach, please try `0 < mixing_beta < 0.1`.
1115
1114
1116
1115
Note: For low-dimensional large systems, the setup of `mixing_beta=0.1`, `mixing_ndim=20`, and `mixing_gg0=1.0` usually works well.
1117
1116
@@ -1152,8 +1151,8 @@ Note that `mixing_beta_mag` is not euqal to `mixing_beta` means that $\rho_{up}$
1152
1151
1153
1152
-**Type**: Real
1154
1153
-**Description**: Whether to perfom Kerker scaling for charge density.
1155
-
-**>0**: The high frequency wave vectors will be suppressed by multiplying a scaling factor $\frac{k^2}{k^2+gg0^2}$. Setting `mixing_gg0 = 1.0` is normally a good starting point. Kerker preconditioner will be automatically turned off if `mixing_beta <= 0.1`.
1156
-
-**0**: No Kerker scaling is performed.
1154
+
->0: The high frequency wave vectors will be suppressed by multiplying a scaling factor $\frac{k^2}{k^2+gg0^2}$. Setting `mixing_gg0 = 1.0` is normally a good starting point. Kerker preconditioner will be automatically turned off if `mixing_beta <= 0.1`.
1155
+
-0: No Kerker scaling is performed.
1157
1156
1158
1157
For systems that are difficult to converge, particularly metallic systems, enabling Kerker scaling may aid in achieving convergence.
1159
1158
-**Default**: 1.0
@@ -1168,7 +1167,7 @@ Note that `mixing_beta_mag` is not euqal to `mixing_beta` means that $\rho_{up}$
0 commit comments