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
+14-10Lines changed: 14 additions & 10 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -21,6 +21,7 @@
21
21
-[kspacing](#kspacing)
22
22
-[min\_dist\_coef](#min_dist_coef)
23
23
-[device](#device)
24
+
-[nb2d](#nb2d)
24
25
-[precision](#precision)
25
26
-[Variables related to input files](#variables-related-to-input-files)
26
27
-[stru\_file](#stru_file)
@@ -45,7 +46,6 @@
45
46
-[erf\_height](#erf_height)
46
47
-[erf\_sigma](#erf_sigma)
47
48
-[Numerical atomic orbitals related variables](#numerical-atomic-orbitals-related-variables)
48
-
-[nb2d](#nb2d)
49
49
-[lmaxmax](#lmaxmax)
50
50
-[lcao\_ecut](#lcao_ecut)
51
51
-[lcao\_dk](#lcao_dk)
@@ -667,6 +667,19 @@ If only one value is set (such as `kspacing 0.5`), then kspacing values of a/b/c
667
667
- cg/bpcg/dav ks_solver: required by the `single` precision options
668
668
-**Default**: double
669
669
670
+
### nb2d
671
+
672
+
-**Type**: Integer
673
+
-**Description**: When using elpa or scalapack to solver the eigenvalue problem, the data should be distributed by the two-dimensional block-cyclic distribution. This paramter specifies the size of the block. It is valid for:
674
+
-[ks_solver](#ks_solver) is genelpa or scalapack_gvx. If nb2d is set to 0, then it will be automatically set in the program according to the size of atomic orbital basis:
675
+
- if size <= 500: nb2d = 1
676
+
- if 500 < size <= 1000: nb2d = 32
677
+
- if size > 1000: nb2d = 64;
678
+
-[ks_solver](#ks_solver) is dav_subspace, and [diag_subspace](#diag_subspace) is 1 or 2. It is the block size for the diagonization of subspace. If it is set to 0, then it will be automatically set in the program according to the number of band:
679
+
- if number of band > 500: nb2d = 32
680
+
- if number of band < 500: nb2d = 16
681
+
-**Default**: 0
682
+
670
683
[back to top](#full-list-of-input-keywords)
671
684
672
685
## Variables related to input files
@@ -842,15 +855,6 @@ These variables are used to control the plane wave related parameters.
842
855
843
856
These variables are used to control the numerical atomic orbitals related parameters.
844
857
845
-
### nb2d
846
-
847
-
-**Type**: Integer
848
-
-**Description**: In LCAO calculations, we arrange the total number of processors in an 2D array, so that we can partition the wavefunction matrix (number of bands*total size of atomic orbital basis) and distribute them in this 2D array. When the system is large, we group processors into sizes of nb2d, so that multiple processors take care of one row block (a group of atomic orbitals) in the wavefunction matrix. If set to 0, nb2d will be automatically set in the program according to the size of atomic orbital basis:
0 commit comments