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-17Lines changed: 29 additions & 17 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -20,8 +20,8 @@
20
20
-[kspacing](#kspacing)
21
21
-[min\_dist\_coef](#min_dist_coef)
22
22
-[device](#device)
23
-
-[nb2d](#nb2d)
24
23
-[precision](#precision)
24
+
-[nb2d](#nb2d)
25
25
-[Variables related to input files](#variables-related-to-input-files)
26
26
-[stru\_file](#stru_file)
27
27
-[kpoint\_file](#kpoint_file)
@@ -224,6 +224,8 @@
224
224
-[of\_ml\_q](#of_ml_q)
225
225
-[of\_ml\_tanhp](#of_ml_tanhp)
226
226
-[of\_ml\_tanhq](#of_ml_tanhq)
227
+
-[of\_ml\_chi\_p](#of_ml_chi_p)
228
+
-[of\_ml\_chi\_q](#of_ml_chi_q)
227
229
-[of\_ml\_gammanl](#of_ml_gammanl)
228
230
-[of\_ml\_pnl](#of_ml_pnl)
229
231
-[of\_ml\_qnl](#of_ml_qnl)
@@ -234,8 +236,6 @@
234
236
-[of\_ml\_tanh\_qnl](#of_ml_tanh_qnl)
235
237
-[of\_ml\_tanhp\_nl](#of_ml_tanhp_nl)
236
238
-[of\_ml\_tanhq\_nl](#of_ml_tanhq_nl)
237
-
-[of\_ml\_chi\_p](#of_ml_chi_p)
238
-
-[of\_ml\_chi\_q](#of_ml_chi_q)
239
239
-[of\_ml\_chi\_xi](#of_ml_chi_xi)
240
240
-[of\_ml\_chi\_pnl](#of_ml_chi_pnl)
241
241
-[of\_ml\_chi\_qnl](#of_ml_chi_qnl)
@@ -583,7 +583,7 @@ These variables are used to control general system parameters.
583
583
### init_wfc
584
584
585
585
-**Type**: String
586
-
-**Description**: Only useful for plane wave basis only now. It is the name of the starting wave functions. In the future. we should also make this variable available for localized orbitals set.
586
+
-**Description**: The type of the starting wave functions.
587
587
588
588
Available options are:
589
589
@@ -593,6 +593,8 @@ These variables are used to control general system parameters.
593
593
- random: random numbers
594
594
- nao: from numerical atomic orbitals. If they are not enough, other wave functions are initialized with random numbers.
595
595
- nao+random: add small random numbers on numerical atomic orbitals
596
+
597
+
> Only the `file` option is useful for the lcao basis set, which is mostly used when [calculation](#calculation) is set to `set_wf` and `get_pchg`. See more details in [out_wfc_lcao](#out_wfc_lcao).
596
598
-**Default**: atomic
597
599
598
600
### init_chg
@@ -1234,6 +1236,7 @@ Note: In new angle mixing, you should set `mixing_beta_mag >> mixing_beta`. The
1234
1236
-**Type**: Real
1235
1237
-**Description**: It's the density threshold for electronic iteration. It represents the charge density error between two sequential densities from electronic iterations. Usually for local orbitals, usually 1e-6 may be accurate enough.
1236
1238
-**Default**: 1.0e-9 (plane-wave basis), or 1.0e-7 (localized atomic orbital basis).
1239
+
-**Unit**: Ry if `scf_thr_type=1`, **dimensionless** if `scf_thr_type=2`
1237
1240
1238
1241
### scf_ene_thr
1239
1242
@@ -1246,10 +1249,8 @@ Note: In new angle mixing, you should set `mixing_beta_mag >> mixing_beta`. The
1246
1249
1247
1250
-**Type**: Integer
1248
1251
-**Description**: Choose the calculation method of convergence criterion.
1249
-
-**1**: the criterion is defined as $\Delta\rho_G = \frac{1}{2}\iint{\frac{\Delta\rho(r)\Delta\rho(r')}{|r-r'|}d^3r d^3r'}$.
1250
-
-**2**: the criterion is defined as $\Delta\rho_R = \frac{1}{N_e}\int{|\Delta\rho(r)|d^3r}$, where $N_e$ is the number of electron.
1251
-
1252
-
Note: This parameter is still under testing and the default setting is usually sufficient.
1252
+
-**1**: the criterion is defined as $\Delta\rho_G = \frac{1}{2}\iint{\frac{\Delta\rho(r)\Delta\rho(r')}{|r-r'|}d^3r d^3r'}$, which is used in SCF of PW basis with unit Ry.
1253
+
-**2**: the criterion is defined as $\Delta\rho_R = \frac{1}{N_e}\int{|\Delta\rho(r)|d^3r}$, where $N_e$ is the number of electron, which is used in SCF of LCAO with unit **dimensionless**.
1253
1254
1254
1255
-**Default**: 1 (plane-wave basis), or 2 (localized atomic orbital basis).
1255
1256
@@ -2488,7 +2489,7 @@ These variables are relevant to electric field and dipole correction
2488
2489
- True:A dipole correction is also added to the bare ionic potential.
2489
2490
- False: A dipole correction is not added to the bare ionic potential.
2490
2491
2491
-
> Note: If you want no electric field, parameter efield_ampshould be zero. Must be used ONLY in a slab geometry for surface alculations, with the discontinuity FALLING IN THE EMPTY SPACE.
2492
+
> Note: If you do not want any electric field, the parameter `efield_amp`should be set to zero. This should ONLY be used in a slab geometry for surface calculations, with the discontinuity FALLING IN THE EMPTY SPACE.
2492
2493
2493
2494
-**Default**: False
2494
2495
@@ -3475,9 +3476,10 @@ These variables are used to control berry phase and wannier90 interface paramete
3475
3476
-**Type**: Integer
3476
3477
-**Description**:
3477
3478
method of propagator
3478
-
- 0: Crank-Nicolson.
3479
+
- 0: Crank-Nicolson, based on matrix inversion.
3479
3480
- 1: 4th Taylor expansions of exponential.
3480
3481
- 2: enforced time-reversal symmetry (ETRS).
3482
+
- 3: Crank-Nicolson, based on solving linear equation.
3481
3483
-**Default**: 0
3482
3484
3483
3485
### td_vext
@@ -3537,19 +3539,29 @@ These variables are used to control berry phase and wannier90 interface paramete
3537
3539
3538
3540
-**Type**: Real
3539
3541
-**Description**:
3540
-
cut1 of interval in length gauge\
3541
-
E = E0 , cut1<x<cut2\
3542
-
E = -E0/(cut1+1-cut2) , x<cut1 or cut2<x<1
3542
+
`td_lcut1` is the lower bound of the interval in the length gauge RT-TDDFT, where $x$ is the fractional coordinate:
3543
+
$$
3544
+
E(x)=
3545
+
\begin{cases}
3546
+
E_0, & \mathtt{cut1}\leqslant x \leqslant \mathtt{cut2} \\
3547
+
-E_0\left(\dfrac{1}{\mathtt{cut1}+1-\mathtt{cut2}}-1\right), & \text{$0<x<\mathtt{cut1}$ or $\mathtt{cut2}<x<1$}
3548
+
\end{cases}
3549
+
$$
3543
3550
-**Default**: 0.05
3544
3551
3545
3552
### td_lcut2
3546
3553
3547
3554
-**Type**: Real
3548
3555
-**Description**:
3549
-
cut2 of interval in length gauge\
3550
-
E = E0 , cut1<x<cut2\
3551
-
E = -E0/(cut1+1-cut2) , x<cut1 or cut2<x<1
3552
-
-**Default**: 0.05
3556
+
`td_lcut2` is the upper bound of the interval in the length gauge RT-TDDFT, where $x$ is the fractional coordinate:
3557
+
$$
3558
+
E(x)=
3559
+
\begin{cases}
3560
+
E_0, & \mathtt{cut1}\leqslant x \leqslant \mathtt{cut2} \\
3561
+
-E_0\left(\dfrac{1}{\mathtt{cut1}+1-\mathtt{cut2}}-1\right), & \text{$0<x<\mathtt{cut1}$ or $\mathtt{cut2}<x<1$}
Copy file name to clipboardExpand all lines: docs/advanced/install.md
+2Lines changed: 2 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -115,6 +115,8 @@ To build NVIDIA GPU support for ABACUS, define `USE_CUDA` flag. You can also spe
115
115
cmake -B build -DUSE_CUDA=1 -DCMAKE_CUDA_COMPILER=${path to cuda toolkit}/bin/nvcc
116
116
```
117
117
118
+
If you are confident that your MPI supports CUDA Aware, you can add `-DUSE_CUDA_MPI=ON`. In this case, the program will directly communicate data with the CUDA hardware, rather than transferring it to the CPU first before communication. But note that if CUDA Aware is not supported, adding `-DUSE_CUDA_MPI=ON` will cause the program to throw an error.
119
+
118
120
## Build math library from source
119
121
120
122
> Note: We recommend using the latest available compiler sets, since they offer faster implementations of math functions.
profile = AbacusProfile(command=f'mpirun -n {mpi_num}{abacus}') # directly the command for running ABACUS
61
85
```
62
86
63
87
in which `abacus` sets the absolute path of the `abacus` executable.
64
88
65
89
## MD Analysis
66
90
After molecular dynamics calculations, the log file `running_md.log` can be read. If the 'STRU_MD_*' files are not continuous (e.g. 'STRU_MD_0', 'STRU_MD_5', 'STRU_MD_10'...), the index parameter of read should be as a slice object. For example, when using the command `read('running_md.log', index=slice(0, 15, 5), format='abacus-out')` to parse 'running_md.log', 'STRU_MD_0', 'STRU_MD_5' and 'STRU_MD_10' will be read.
67
91
92
+
The `MD_dump` file is also supported to be read-in by `read('MD_dump', format='abacus-md')`
Copy file name to clipboardExpand all lines: docs/quick_start/input.md
+16-17Lines changed: 16 additions & 17 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -10,15 +10,14 @@ Below is an example `INPUT` file with some of the most important parameters that
10
10
11
11
```plaintext
12
12
INPUT_PARAMETERS
13
-
suffix MgO
14
-
ntype 2
15
-
pseudo_dir ./
16
-
orbital_dir ./
13
+
suffix MgO # the output files will be in OUT.{suffix} directory
14
+
pseudo_dir ./ # where the pseudopotential for each element is
15
+
orbital_dir ./ # where the orbital file for each element is
17
16
ecutwfc 100 # in Rydberg
18
-
scf_thr 1e-4 # Rydberg
19
-
basis_type lcao
17
+
scf_thr 1e-6 # dimensionless for LCAO, Rydberg for PW. See documents for details.
18
+
basis_type lcao # lcao or pw
20
19
calculation scf # this is the key parameter telling abacus to do a scf calculation
21
-
out_chg True
20
+
out_chg 0 # only output binary charge file for restart
22
21
```
23
22
24
23
The parameter list always starts with key word `INPUT_PARAMETERS`. Any content before `INPUT_PARAMETERS` will be ignored.
@@ -36,19 +35,18 @@ Furthermore, if a given parameter name appeared more than once in the input file
36
35
37
36
In the above example, the meanings of the parameters are:
38
37
39
-
-`suffix` : the name of the system, default `ABACUS`
40
-
-`ntype` : how many types of elements in the unit cell
41
-
-`pseudo_dir` : the directory where pseudopotential files are provided
42
-
-`orbital_dir` : the directory where orbital files are provided
43
-
-`ecutwfc` : the plane-wave energy cutoff for the wave function expansion (UNIT: Rydberg)
44
-
-`scf_thr` : the threshold for the convergence of charge density (UNIT: Rydberg)
45
-
-`basis_type` : the type of basis set for expanding the electronic wave functions
38
+
-`suffix` : the name of the system, default `ABACUS`, and output files will be in OUT.{suffix} directory.
39
+
-`pseudo_dir` : the directory where pseudopotential files are provided.
40
+
-`orbital_dir` : the directory where orbital files are provided.
41
+
-`ecutwfc` : the plane-wave energy cutoff for the wave function expansion (UNIT: Rydberg).
42
+
-`scf_thr` : the threshold for the convergence of charge density (UNIT: Rydberg for PW, dimensionless for LCAO), we recommend `1e-7` for LCAO and `1e-9` for PW basis.
43
+
-`basis_type` : the type of basis set for expanding the electronic wave functions, one can set lcao or pw.
46
44
-`calculation` : the type of calculation to be performed by ABACUS
47
-
-`out_chg` : if true, output the charge density on real space grid
45
+
-`out_chg` : setting for output the charge density in real space grid, -1 for no output, 0 for binary output, 1 for binary and cube output.
48
46
49
47
For a complete list of input parameters, please consult this [instruction](../advanced/input_files/input-main.md).
50
48
51
-
> **Note:** Users cannot change the filename “INPUT” to other names. Boolean paramerters such as `out_chg` can be set by using `True` and `False`, `1` and `0`, or `T` and `F`. It is case insensitive so that other preferences such as `true` and `false`, `TRUE` and `FALSE`, and `t` and `f` for setting boolean values are also supported. Specifically for the `out_chg`, `-1` option is also available, which means turn off the checkpoint of charge density in binary (always dumped in `OUT.{suffix}`, whose name ends with `CHARGE-DENSITY.restart`). Some parameters controlling the output also support a second option to control the output precision, e.g., `out_chg True 8` will output the charge density on realspace grid with 8 digits after the decimal point.
49
+
> **Note:** Users cannot change the filename “INPUT” to other names. Boolean paramerters such as `out_chg` can be set by using `True` and `False`, `1` and `0`, or `T` and `F`. It is case insensitive so that other preferences such as `true` and `false`, `TRUE` and `FALSE`, and `t` and `f` for setting boolean values are also supported. Specifically for the `out_chg`, `-1` option is also available, which means turn off the checkpoint of charge density in binary (always dumped in `OUT.{suffix}`, whose name ends with `CHARGE-DENSITY.restart`). Some parameters controlling the output also support a second option to control the output precision, e.g., `out_chg 1 8` will output the charge density on realspace grid with 8 digits after the decimal point.
0 commit comments