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
Browse filesBrowse the repository at this point in the historyBrowse files
abacus_fixer
committed
Refactor DFT+U base: unify DFTU_BASE namespace and slim Plus_U_Base
- Rename dftu_output.{h,cpp} -> dftu_base_io.{h,cpp},
dftu_tools_pw.{h,cpp} -> dftu_base_tools.{h,cpp},
dftu_cal_occ_pw.cpp -> dftu_base_occ.cpp (git mv)
- Unify all DFTU-related free functions in module_pwdft under a single
namespace DFTU_BASE (formerly dftu_io, dftu_pw, and pw::iter_init_dftu_pw)
- Extract read_occup_m and local_occup_bcast from Plus_U_Base as
DFTU_BASE:: free functions declared in dftu_base_io.h; dependencies
(occ_mat, orbital_corr, occ_mat_ctrl) are now passed explicitly
- Replace element-wise MPI_Bcast in local_occup_bcast with whole-matrix
Parallel_Common::bcast_double calls (rule: no direct MPI usage)
- dftu_lcao_test links one extra light source (dftu_base_io.cpp) so that
the heavy PW implementation dftu_base_occ.cpp stays out of the test
closure
- Move JacobiRotate/CalculateEigenvalues helpers into an anonymous
namespace and drop an unused local variable during migration
Verification: full incremental build passes in build/ (abacus_basic_para,
100%); in build_max_para_test/ the targets dftu_lcao_test and
dftu_pw_test build and link successfully (100%); grep confirms no
references remain to dftu_io, dftu_pw::, dftu_output, dftu_tools_pw,
dftu_cal_occ_pw, or the removed Plus_U_Base members.
0 commit comments