v3.7.3
What's Changed
Feature
- (for development) support general realspace projection onto PW basis: SphericalBesselTransformer-based-FourierTransformation by @kirk0830 in #4864
- Support outputting partial charge densities for different k-points and spins separately when using PW basis set by @AsTonyshment in #4829
- automatically use gpu if possible by @caic99 in #4826
- enable SCF can converge if SCF reach a chosen energy threshold by @WHUweiqingzhou in #4898
- enable multi-k calculation for CUDA version of module_gint by @dzzz2001 in #4839
- stop abacus manually according to the keyword in EXIT by @YuLiu98 in #4822
Doc
- real spherical harmonics and basis ordering clarified by @jinzx10 in #4922
- SchmidtOrth in david by @Cstandardlib in #4855
Fix
- Fix a bug in stress op that could cause errors in OpenMP multithreading calculations. by @grysgreat in #4932
- Fix bug due to the forgotten
fix_gamma
in writing eband terms by @maki49 in #4934 - Fix bug in
add_HexxR
at nspin=4 by @maki49 in #4893 - Fix the issue of mete-vlocal not being initialized. by @A-006 in #4933
- Fix the issue of some
timer
instances not being closed, resulting in incorrect time statistics by @AsTonyshment in #4939 - Incorrect negative signs in length gague RT-TDDFT by @AsTonyshment in #4871
- Revert "Move the cal_nnrg file and modify the variable length. (#4886)" by @A-006 in #4921
- a possible bug when dir is auto by @Qianruipku in #4948
- avoid nan in the output of time percentage by @pxlxingliang in #4857
- avoid the redundant file-reading and remove the useless output in write_Vxc by @maki49 in #4902
- correct the behavior of profile1d function in cube_manipulator.py by @kirk0830 in #4892
- dcu error in pw_force calculation by @grysgreat in #4786
- delete the unexpected debug info during scf by @kirk0830 in #4936
- error with DFTU force&stress with NSPIN=4 by @dyzheng in #4825
- fix the bug induced by pseudo_dir and orbital_dir default value by @Qianruipku in #4881
- improve the experience of using
molden.py
postprocessing tool by both developer and user by @kirk0830 in #4942 - reference to parameter instead of global variable in tool functions in DiagoDavid by @Cstandardlib in #4873
Perf
- optimize the construction of HexxR in NSCF by @maki49 in #4952
- use openmp to accelerate fvnl_dbeta_gamma.cpp by @dzzz2001 in #4814
Refactor
- Add heterogeneous parallel code for the stress loc module. by @grysgreat in #4854
- Continue to move the deepks output files into the OUT folder by @xuan112358 in #4924
- Heterogeneous parallel acceleration hsolver-pw force_scc. by @grysgreat in #4759
- Make Hsolver_sdft a local variable in hamilt_to_density function by @Qianruipku in #4941
- Move
pseudo::set_pseudo
toPseudopot::complete_default
. by @sunliang98 in #4811 - Move the cal_nnrg file and modify the variable length. by @A-006 in #4886
- Relate to PEXSI-related changes caused by refactor #4767 by @Flying-dragon-boxing in #4858
- Remove INPUT class by @Qianruipku in #4815
- Replace
Esolver_OF::mu_
withefermi
. by @sunliang98 in #4849 - Replace the pointers in
pseudo
andPseudopot_upf
with std::vector. by @sunliang98 in #4862 - Use lambda expressions to reduce if conditions. by @grysgreat in #4828
- Use pointers instead of function calls in OpenMP by @A-006 in #4827
- add
cal_becp
-like example for radial projector-involving PW operators development by @kirk0830 in #4887 - change
HsolverPW
call manner by @haozhihan in #4795 - change hsolver-lcao call manner in SpinConstrain by @haozhihan in #4946
- change hsolver-lip call manner by @haozhihan in #4931
- change hsolver_lcao call manner by @haozhihan in #4929
- change the order of initializing member variables by @kirk0830 in #4865
- discourage part of the use of c-style array in psi initializer by @kirk0830 in #4866
- merge after_scf by @YuLiu98 in #4889
- move
set_is_occupied
func from hsolver to elecstate by @haozhihan in #4847 - remove
pelec
frome hsolverpwsolve
func by @haozhihan in #4846 - remove do_after_converge by @YuLiu98 in #4910
- remove function mult_psi_DM and mult_psi_DM_new by @dzzz2001 in #4926
- remove pes from hsolver by @haozhihan in #4861
- remove the inheritance of HSolverLR by @maki49 in #4917
- remove uncessary interfaces in module_io by @YuLiu98 in #4835
- remove useless values in Hsolverpw by @haozhihan in #4875
- replace dsytrf & dsytri & gemv by dsysv in
Broyden_mixing
by @WHUweiqingzhou in #4842
Tools
- Toolchain 202402 by @QuantumMisaka in #4945
- support molden file generation from ABACUS LCAO calculation via NAO2GTO by @kirk0830 in #4937
Full Changelog: v3.7.2...v3.7.3