forked from abacusmodeling/abacus-develop
-
Notifications
You must be signed in to change notification settings - Fork 145
Closed
Labels
DiagoIssues related to diagonalizaiton methodsIssues related to diagonalizaiton methodsEXX and lr-TDDFTRelated to EXX or lr-TDDFTRelated to EXX or lr-TDDFT
Description
Describe the bug
Now lr_solver=dav_subspace has mainly two problems in solving LR-TDDFT excited states:
- "Assertion ( psi_norm > 0 ) failed" when doing normalizaiton in
cal_grad(also appears inlr_solver=dav) - Large nonphysical negative eigenvalues (e.g., ~-1e10)
Both of them already exist before #5199, after which the problem 1 become worse.
To Reproduce
In tests/integrate/291_NO_KP_LR, enlarge lr_nstates (for example, 10), or use more k-points.
Possible Solution (with Refactor)
I'm going to try the following solutions that needs some refactor:
- Theoretically the number of initial-guess subspace basis vectors can be larger than the number of eigenpairs (bands or states) to be solved (expecially when the first several eigenpairs degenerate) , but in the present implementation, only
n_bandsinitial vectors are copied in. - Pass a precondition function similar to
hpsi_functo enable custom preconditioner (which is hard-coded at present), such as sTDA or rid-preconditioner
Metadata
Metadata
Assignees
Labels
DiagoIssues related to diagonalizaiton methodsIssues related to diagonalizaiton methodsEXX and lr-TDDFTRelated to EXX or lr-TDDFTRelated to EXX or lr-TDDFT