Commit a04393e
dyzheng
Feat(xc): implement gga_grad parameter for noncollinear GGA gradient methods
Add three methods for computing GGA gradients in nspin=4 systems:
- gga_grad=1: collinear approximation (grad|m|), fastest
- gga_grad=2: improved gradient with projected div(h) via m_hat
- gga_grad=3: Scalmani-Frisch transform (default), most accurate
Implementation:
- Add gga_grad INPUT parameter (default 3) in input_parameter.h
- Replace neg/ux_/lsign_ mechanism with mag_part[3*nrxx] in noncolin_rho
- Add gga_grad=2 per-component gradient and div(h) projection in gradcorr
- Create xc_functional_gga_noncol_sf_builtin.cpp/h for gga_grad=3 SF path
- Dispatch v_xc and gradcorr(stress) to SF builtin when gga_grad=3
Also remove obsolete design docs (SUBSPACE_USAGE.md, TRACE_VS_DMR_REPORT.md,
docs/superpowers/*) and fix broken test CMakeLists entries.1 parent f4548f4 commit a04393e
15 files changed
Lines changed: 539 additions & 1613 deletions
File tree
- docs/superpowers
- plans
- specs
- source
- source_hamilt/module_xc
- test
- source_io/module_parameter
- source_lcao/module_deltaspin
- test
Lines changed: 0 additions & 798 deletions
This file was deleted.
Lines changed: 0 additions & 228 deletions
This file was deleted.
0 commit comments