Fix bug (deltaspin): restore LCAO spin rotation invariance - #7914
Fix bug (deltaspin): restore LCAO spin rotation invariance#7914Tao-Xia wants to merge 4 commits into
Conversation
dyzheng
left a comment
There was a problem hiding this comment.
LGTM,This PR may resolve the numerical instability issue in non‑collinear spin calculations with the LCAO basis set. Thank you for your submission.
|
该测试算例破坏了 /08_EXX/08_KP_HSE_symm 的结果 信息如下: 判定依据 |
Wrt EXX issues, I believe this was a bug and #7923 gave the right fix. |

Reminder
AGENTS.mdanddocs/developers_guide/agent_governance.md.source/changes.Linked Issue
Fixes #7913
Unit Tests and/or Case Tests for my changes
cmake --build build-elpa-cpu --target deltaspin_core_test MODULE_HSOLVER_LCAO abacus_basic_para -j 12build-elpa-cpu/source/source_lcao/module_deltaspin/test/deltaspin_core_testsource/source_hsolver/test:build-elpa-cpu/source/source_hsolver/test/MODULE_HSOLVER_LCAOmpirun -np 4 build-elpa-cpu/source/source_hsolver/test/MODULE_HSOLVER_LCAO --gtest_filter='DiagoElpaComplexTest.UsesAuthoritativeUpperTriangle:DiagoTest/DiagoKPointsTest.LCAO/0'xandytarget moments, no SOC, andks_solver genelpa.x/ytotal energies differ by only1.82e-8 eV; both target moments converge with transverse residuals of order1e-6 mu_B.What's changed?
PZHEMMwith the authoritative upper triangle when the complex custom ELPA solver forms the generalized Hamiltonian. This prevents stale lower-triangle entries from entering the eigensolve without allocating an extra full matrix.<psi | lambda dot sigma | psi> = lambda dot M, including the sign-sensitiveychannel.There are no INPUT parameter or serialized-data changes. The user-visible correction is restored non-SOC spin-rotation invariance for LCAO DeltaSpin with
genelpa.Governance Notes
HSolverchanges one complex generalized-transform kernel from general to Hermitian distributed multiplication;OperatorLCAOuses a shared DeltaSpin Pauli conversion.ESolver,ElecState, andPsiinterfaces are unchanged.