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
Fix: refactor of ESolver_KS_PW::init_after_vc with new psi initializer (#3031)
* add re-initialization after vcrelax
* append annotations in esolver_ks_pw
* correct esolver_ks_pw.cpp
oops, I deleted two lines by mistake, sorry!
* improve line coverage of psi_initializer
* remove newly added unittests, will re-design later
* refactor psi_initializer, add unit tests, add integrated tests, update documents
* update docs
* eliminate warning about forgetting to add override keyword
* fix compile bug from rename pseudo_nc to pseudo
* mock the full UnitCell, undefined reference will not see anymore
* delete redefinition of parameter and functions
* Update input-main.md according to suggestion from Tianqi
Copy file name to clipboardExpand all lines: docs/advanced/input_files/input-main.md
+17Lines changed: 17 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -12,6 +12,7 @@
12
12
-[kpar](#kpar)
13
13
-[bndpar](#bndpar)
14
14
-[latname](#latname)
15
+
-[psi\_initializer](#psi_initializer)
15
16
-[init\_wfc](#init_wfc)
16
17
-[init\_chg](#init_chg)
17
18
-[init\_vel](#init_vel)
@@ -463,16 +464,32 @@ These variables are used to control general system parameters.
463
464
- triclinic: triclinic (14)
464
465
-**Default**: none
465
466
467
+
### psi_initializer
468
+
469
+
-**Type**: Integer
470
+
-**Description**: enable the experimental feature psi_initializer, to support use numerical atomic orbitals initialize wavefunction (`basis_type pw` case).
471
+
472
+
NOTE: this feature is not well-implemented for `nspin 4` case (closed presently), and cannot use with `calculation nscf`/`esolver_type sdft` cases.
473
+
Available options are:
474
+
- 0: disable psi_initializer
475
+
- 1: enable psi_initializer
476
+
-**Default**: 0
477
+
466
478
### init_wfc
467
479
468
480
-**Type**: String
469
481
-**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.
470
482
471
483
Available options are:
484
+
472
485
- atomic: from atomic pseudo wave functions. If they are not enough, other wave functions are initialized with random numbers.
473
486
- atomic+random: add small random numbers on atomic pseudo-wavefunctions
474
487
- file: from file
475
488
- random: random numbers
489
+
490
+
with `psi_initializer 1`, two more options are supported:
491
+
- nao: from numerical atomic orbitals. If they are not enough, other wave functions are initialized with random numbers.
492
+
- nao+random: add small random numbers on numerical atomic orbitals
0 commit comments