Releases: abacusmodeling/abacus-develop
Releases · abacusmodeling/abacus-develop
v3.8.0
What's Changed
Feature
- Add
davidson
function topyabacus
by @a1henu in deepmodeling#5112 - Calculate and output electron localization function (ELF) with KSDFT and OFDFT by @sunliang98 in deepmodeling#5139
- Delley's grid for quadrature on the unit sphere by @jinzx10 in deepmodeling#5131
- RI-Hartree for LR-TDDFT benchmark with FHI-aims by @maki49 in deepmodeling#5084
- Radial quadrature grid by @jinzx10 in deepmodeling#5173
- Space group symmetry for EXX based on LibRI v0.2.1.0 by @maki49 in deepmodeling#5063
- add new init_chg method with wavefunctions by @Qianruipku in deepmodeling#5082
Fix
- Fix docs according to #5133 by @Cstandardlib in deepmodeling#5169
- Fix parallel LR-EXX and add a test case by @maki49 in deepmodeling#5188
- Fix read/write HexxR at nspin=4 by @maki49 in deepmodeling#5142
- Fix serial version compiling bug by @Critsium-xy in deepmodeling#5079
- Fix the undefined behavior in sph_bessel_recursive by @maki49 in deepmodeling#5158
- If the number of NAOs for an angular momentum is 0, filter the NAOs in exx by @PeizeLin in deepmodeling#5152
- Update function calls in
pyabacus
to align with new function signature inhpsi_func
by @a1henu in deepmodeling#5176 timer
not closed in TDDFT code by @AsTonyshment in deepmodeling#5172- add MPI_Barrier in unittest of CifParser when necessary to avoid unexpected behavoir by @kirk0830 in deepmodeling#5167
- add threshold file and enlarge ecut in exx test cases to prevent CI test failure by randomness by @maki49 in deepmodeling#5096
- bug of cal_ux by @Qianruipku in deepmodeling#5165
- discourage
out_mul
for PW to prohibit segfault error by @kirk0830 in deepmodeling#5102 - enlarge the threshold of case 281 by @maki49 in deepmodeling#5117
- fix a bug in diago_elpa_native.cpp by @dzzz2001 in deepmodeling#5155
- fix a cuda runtime error introduced by PR #5061 by @dzzz2001 in deepmodeling#5071
- init_chg wfc support npsin = 4 by @Qianruipku in deepmodeling#5166
- let only one rank do file I/O in unittest of orb_io by @kirk0830 in deepmodeling#5185
- minor fixes in LR by @maki49 in deepmodeling#5187
- move back Kpoint when basis_type="pw" by @A-006 in deepmodeling#5129
- optimize the memory usage by psi_initializer by @kirk0830 in deepmodeling#5120
- recover the wannier90 interface for lcao_in_pw case by @kirk0830 in deepmodeling#5177
- segmentation fault when deepks_scf=0 but deepks_out_labels=1 by @xuan112358 in deepmodeling#5090
- support kpar > 1 case to write rhog by @kirk0830 in deepmodeling#5145
- wrong STRU read in md restart case by @YuLiu98 in deepmodeling#5157
- fix cusolvermp compiling error with icpc and update ks_solver doc by @dzzz2001 in deepmodeling#5196
Perf
- change default pw_seed=0 by @WHUweiqingzhou in deepmodeling#5179
- optimize td_current by @dzzz2001 in deepmodeling#5181
Refactor
- Refactor
ModuleIO::read/write_cube()
by @PeizeLin in deepmodeling#5150 - USE PARAM instead of GlobalV by @A-006 in deepmodeling#5053
- Use PARAM instead of GlobalV::dir* by @A-006 in deepmodeling#5097
- Use PARAM instead of GlobalV::domag* by @A-006 in deepmodeling#5115
- Use PARAM instead of GlobalV::test* by @A-006 in deepmodeling#5065
- Use PARAM instead of deepks* by @A-006 in deepmodeling#5104
- Use PARAM instead of ks_solver,nb2d,search_radius by @A-006 in deepmodeling#5138
- Use Param.inp insetead of GlobalV::MIXING* by @A-006 in deepmodeling#5070
- add CalAtomsInfo to modify parameter by @Qianruipku in deepmodeling#5132
- add
namespace XC_Functional_Libxc
by @PeizeLin in deepmodeling#5151 - consistent order of hpsi by @Cstandardlib in deepmodeling#5134
- optimize the performanace of psi_initializer with omp by @kirk0830 in deepmodeling#5146
- refactor HsolverPW & HsolverPW_SDFT func by @haozhihan in deepmodeling#5094
- refactor hsolver-lcao func by @haozhihan in deepmodeling#5148
- refactor paw code in HSolverLIP by @haozhihan in deepmodeling#5126
- remove GlobalC::ORB by @jinzx10 in deepmodeling#5085
- remove GlobalC::ORB in module_hamilt_lcao by @jinzx10 in deepmodeling#5068
- remove
hsolver
base class frommodule_hsolver
by @haozhihan in deepmodeling#5093 - remove my_conj func from hsolver_lcao by @haozhihan in deepmodeling#5128
- remove useless warning for dp by @YuLiu98 in deepmodeling#5153
- use ELPA_WITH_NVIDIA_GPU_VERSION to judge elpa setup gpu by @goodchong in deepmodeling#5163
- Use PARAM instead of nspin,cal_stress by @A-006 in deepmodeling#5136
Tools
- Toochain update: new download url and MPICH/OpenMPI version by @QuantumMisaka in deepmodeling#5088
- Toolchain 202403 by @QuantumMisaka in deepmodeling#5144
Build
- Bump pre-commit-ci/lite-action from 1.0.2 to 1.0.3 by @dependabot in deepmodeling#5110
Docs
- update hpsi_func requirements by @Cstandardlib in deepmodeling#5190
Full Changelog: v3.7.5...v3.8.0
v3.7.5
What's Changed
Feature
- Feature: support automatic binary output of charge density by @kirk0830 in deepmodeling#4991
- add elpa native to solver generate eigen by @goodchong in deepmodeling#4969
- Feature: add fparam and aparam for dp esolver by @YuLiu98 in deepmodeling#5047
- Feature: add rescaling parameter into dp by @Qianruipku in deepmodeling#5050
Performance
- Perf: optimize the openmp strategy in calculate_HR by @dzzz2001 in deepmodeling#5037
- Perf: optimize function snap_psibeta_half_tddft by @dzzz2001 in deepmodeling#5041
Fix
- Build: Fix ENABLE_CNPY Link Errors by @jieli-matrix in deepmodeling#5003
- Fix: bug in charge extrapolation by @YuLiu98 in deepmodeling#5007
- Fix toolchain scalapack problem by @QuantumMisaka in deepmodeling#5014
- Fix HexxR readin directory by @maki49 in deepmodeling#5025
- Fix bug in reallocating HContainter when not all the processors have elements of (0,0) atom pair by @maki49 in deepmodeling#5028
- Fix: close mixing_gg0 after PBE-loop in no-separate-loop EXX process by @maki49 in deepmodeling#5034
- Fix: fix the issue that
out_chg -1
not really work by @kirk0830 in deepmodeling#5046 - Fix: Assert the mesh of <PP_BETA> not exceeding pp.mesh. by @sunliang98 in deepmodeling#5049
- fix wrong dp_potential after rescaling by @Qianruipku in deepmodeling#5055
Refactor
- Refactor: refactor set_diagethr func and remove phsol from esolver [version 2] by @haozhihan in deepmodeling#5017
- Refactor:Replace GlobalV::KSPACING with PARAM.inp.kspacing. by @A-006 in deepmodeling#5040
- Fix&Refactor: support naive and complete CIF file I/O interface by @kirk0830 in deepmodeling#5023
- Refactor: remove GlobalC::ORB from module_io by @jinzx10 in deepmodeling#5056
- Refactor: remove useless code about phsol by @haozhihan in deepmodeling#5054
Full Changelog: v3.7.4...v3.7.5
v3.7.4
What's Changed
Feature
- Feature: update LibRI v0.2.0 by @PeizeLin in deepmodeling#4830
- Feature: support control on precison of charge cube output by @kirk0830 in deepmodeling#4958
- Feature: Add diago_dav_subspace module to pyabacus by @a1henu in deepmodeling#4883
- Feature: output T(k) by @jinzx10 in deepmodeling#4982
Fix
- Fix an EXX bug with out_mat_hs2 by @maki49 in deepmodeling#4956
- fix bug in catching properties for out_eband_terms by @maki49 in deepmodeling#4962
- Fix: Fix the I/O problem of Rappe pseudopotential caused by the change of mesh. by @sunliang98 in deepmodeling#4973
- Fix: do not always output HexxR but only for NSCF by @maki49 in deepmodeling#4994
- Fix: enable scf_ene_thr for EXX outer loop by @maki49 in deepmodeling#4993
- Fix compile warnings about after_scf by @maki49 in deepmodeling#4996
Refactor
- Refactor: rescale vel to temperature when read in vel by @YuLiu98 in deepmodeling#4953
- Refactor: reset_diag_ethr && cal_hsolve_error func in hsolver by @haozhihan in deepmodeling#4940
- Refactor: Remove Dependency on Custom Class const_nums in david by @Cstandardlib in deepmodeling#4950
- Refactor: update charge extra to accelerate md by @YuLiu98 in deepmodeling#4954
- Refactor: Remove the inheritance relationship between hsolverLCAO/hsolverLIP and hsolver by @haozhihan in deepmodeling#4960
- Refactor: remove template in Chebyshev by @Qianruipku in deepmodeling#4972
- Performance: heterogeneous operator of npw loop in force_cc. by @grysgreat in deepmodeling#4978
Tools
- Toolchain : libcomm version update by @QuantumMisaka in deepmodeling#4966
- add elpa gpu in docker cuda image by @goodchong in deepmodeling#4980
- update version by @pxlxingliang in deepmodeling#5001
New Contributors
- @a1henu made their first contribution in deepmodeling#4883
Full Changelog: v3.7.3...v3.7.4
v3.7.3
What's Changed
Feature
- (for development) support general realspace projection onto PW basis: SphericalBesselTransformer-based-FourierTransformation by @kirk0830 in deepmodeling#4864
- Support outputting partial charge densities for different k-points and spins separately when using PW basis set by @AsTonyshment in deepmodeling#4829
- automatically use gpu if possible by @caic99 in deepmodeling#4826
- enable SCF can converge if SCF reach a chosen energy threshold by @WHUweiqingzhou in deepmodeling#4898
- enable multi-k calculation for CUDA version of module_gint by @dzzz2001 in deepmodeling#4839
- stop abacus manually according to the keyword in EXIT by @YuLiu98 in deepmodeling#4822
Doc
- real spherical harmonics and basis ordering clarified by @jinzx10 in deepmodeling#4922
- SchmidtOrth in david by @Cstandardlib in deepmodeling#4855
Fix
- Fix a bug in stress op that could cause errors in OpenMP multithreading calculations. by @grysgreat in deepmodeling#4932
- Fix bug due to the forgotten
fix_gamma
in writing eband terms by @maki49 in deepmodeling#4934 - Fix bug in
add_HexxR
at nspin=4 by @maki49 in deepmodeling#4893 - Fix the issue of mete-vlocal not being initialized. by @A-006 in deepmodeling#4933
- Fix the issue of some
timer
instances not being closed, resulting in incorrect time statistics by @AsTonyshment in deepmodeling#4939 - Incorrect negative signs in length gague RT-TDDFT by @AsTonyshment in deepmodeling#4871
- Revert "Move the cal_nnrg file and modify the variable length. (#4886)" by @A-006 in deepmodeling#4921
- a possible bug when dir is auto by @Qianruipku in deepmodeling#4948
- avoid nan in the output of time percentage by @pxlxingliang in deepmodeling#4857
- avoid the redundant file-reading and remove the useless output in write_Vxc by @maki49 in deepmodeling#4902
- correct the behavior of profile1d function in cube_manipulator.py by @kirk0830 in deepmodeling#4892
- dcu error in pw_force calculation by @grysgreat in deepmodeling#4786
- delete the unexpected debug info during scf by @kirk0830 in deepmodeling#4936
- error with DFTU force&stress with NSPIN=4 by @dyzheng in deepmodeling#4825
- fix the bug induced by pseudo_dir and orbital_dir default value by @Qianruipku in deepmodeling#4881
- improve the experience of using
molden.py
postprocessing tool by both developer and user by @kirk0830 in deepmodeling#4942 - reference to parameter instead of global variable in tool functions in DiagoDavid by @Cstandardlib in deepmodeling#4873
Perf
- optimize the construction of HexxR in NSCF by @maki49 in deepmodeling#4952
- use openmp to accelerate fvnl_dbeta_gamma.cpp by @dzzz2001 in deepmodeling#4814
Refactor
- Add heterogeneous parallel code for the stress loc module. by @grysgreat in deepmodeling#4854
- Continue to move the deepks output files into the OUT folder by @xuan112358 in deepmodeling#4924
- Heterogeneous parallel acceleration hsolver-pw force_scc. by @grysgreat in deepmodeling#4759
- Make Hsolver_sdft a local variable in hamilt_to_density function by @Qianruipku in deepmodeling#4941
- Move
pseudo::set_pseudo
toPseudopot::complete_default
. by @sunliang98 in deepmodeling#4811 - Move the cal_nnrg file and modify the variable length. by @A-006 in deepmodeling#4886
- Relate to PEXSI-related changes caused by refactor #4767 by @Flying-dragon-boxing in deepmodeling#4858
- Remove INPUT class by @Qianruipku in deepmodeling#4815
- Replace
Esolver_OF::mu_
withefermi
. by @sunliang98 in deepmodeling#4849 - Replace the pointers in
pseudo
andPseudopot_upf
with std::vector. by @sunliang98 in deepmodeling#4862 - Use lambda expressions to reduce if conditions. by @grysgreat in deepmodeling#4828
- Use pointers instead of function calls in OpenMP by @A-006 in deepmodeling#4827
- add
cal_becp
-like example for radial projector-involving PW operators development by @kirk0830 in deepmodeling#4887 - change
HsolverPW
call manner by @haozhihan in deepmodeling#4795 - change hsolver-lcao call manner in SpinConstrain by @haozhihan in deepmodeling#4946
- change hsolver-lip call manner by @haozhihan in deepmodeling#4931
- change hsolver_lcao call manner by @haozhihan in deepmodeling#4929
- change the order of initializing member variables by @kirk0830 in deepmodeling#4865
- discourage part of the use of c-style array in psi initializer by @kirk0830 in deepmodeling#4866
- merge after_scf by @YuLiu98 in deepmodeling#4889
- move
set_is_occupied
func from hsolver to elecstate by @haozhihan in deepmodeling#4847 - remove
pelec
frome hsolverpwsolve
func by @haozhihan in deepmodeling#4846 - remove do_after_converge by @YuLiu98 in deepmodeling#4910
- remove function mult_psi_DM and mult_psi_DM_new by @dzzz2001 in deepmodeling#4926
- remove pes from hsolver by @haozhihan in deepmodeling#4861
- remove the inheritance of HSolverLR by @maki49 in deepmodeling#4917
- remove uncessary interfaces in module_io by @YuLiu98 in deepmodeling#4835
- remove useless values in Hsolverpw by @haozhihan in deepmodeling#4875
- replace dsytrf & dsytri & gemv by dsysv in
Broyden_mixing
by @WHUweiqingzhou in deepmodeling#4842
Tools
- Toolchain 202402 by @QuantumMisaka in deepmodeling#4945
- support molden file generation from ABACUS LCAO calculation via NAO2GTO by @kirk0830 in deepmodeling#4937
Full Changelog: deepmodeling/abacus-develop@v3.7.2...v3.7.3
v3.7.2
Feature
- Feature: LR-TDDFT by @maki49 in deepmodeling#4472
- Feature: enable multiple species in LJ by @YuLiu98 in deepmodeling#4659
- Feature : Add deepks_v_delta, which can help to train DeepKS model with loss term about Hamiltonian, psi and band by @xuan112358 in deepmodeling#4594
- Feature: nspin=2 LR-TDDFT solving singlet/triplet by @maki49 in deepmodeling#4710
- Feature: read a slice of bands from WFC_NAO files & enable custom close-to-HOMO nocc for LR by @maki49 in deepmodeling#4691
- Feature: Support calculation of multi-k point band-decomposed charge density under LCAO basis by @AsTonyshment in deepmodeling#4698
- Feature: output vacuum level when output electrostatic potential by @YuLiu98 in deepmodeling#4799
- Feature: write band energy of T, VL, VNL, Hartree and XC terms separately by @maki49 in deepmodeling#4805
- Feature: Partial function heterogeneous parallel acceleration of force/stress_cc. by @grysgreat in deepmodeling#4555
- Add normalization procedure for partial charge in multi-k calculations when if_separate_k=1 by @AsTonyshment in deepmodeling#4724
- Feature: support k-parallelism diagonalization in lcao basis by @hongriTianqi in deepmodeling#4650
- update out_dos_lcao of '2' for output PDOS by @Chentao168 in deepmodeling#4782
CI
- test: add an option to set thread number in Autotest.sh by @pxlxingliang in deepmodeling#4668
- Test: Unit test for diago_lapack, add a build test and update the document by @Critsium-xy in deepmodeling#4610
- Test: add ccache installation step to cuda.yml by @dzzz2001 in deepmodeling#4688
- test: to make test fail when execute catch_properties.sh failed by @pxlxingliang in deepmodeling#4700
- test: correct the inputs in /examples by @pxlxingliang in deepmodeling#4717
- Test: add return value for mock in tests to suppress compile warning by @Cstandardlib in deepmodeling#4775
Perf
- Perf: optimize function grad_rl_sph_harm by @dzzz2001 in deepmodeling#4671
- Perf: optimize function pow in module_gint by @dzzz2001 in deepmodeling#4680
- Perf: optimize force calculation in module_gint (Useful information about how to take advantages of data locality to improve the code efficiency) by @dzzz2001 in deepmodeling#4727
Fix
- Fix MKL problem in pyabacus example ex_s_rotate.py by @maki49 in deepmodeling#4669
- Fix a possible compile error in module_lr/lr_spectrum.cpp by @maki49 in deepmodeling#4672
- Fix the problematic logic in catch_properties.sh induced by #4472 by @maki49 in deepmodeling#4678
- Fix the exx-md/relax bug induced by LM refactor by @maki49 in deepmodeling#4686
- Fix: change C++14 codes to C++11 by @Qianruipku in deepmodeling#4682
- Fix the missing EXX operator and minor refactor in LR-HSE by @maki49 in deepmodeling#4696
- Fix: fix a typo related to pexsi in fedm_gamma.cpp by @Flying-dragon-boxing in deepmodeling#4702
- Fix the bug causing incorrect Berry phase calculations under the pw basis. by @jingan-181 in deepmodeling#4704
- Fix: error of non-diagonal nonlocal pseudopotential with LCAO by @dyzheng in deepmodeling#4705
- Fix: replace part of GlobalV::var by parameter by @Qianruipku in deepmodeling#4706
- Fix: memory leak of basis set in david by @Cstandardlib in deepmodeling#4731
- Fix: replace most of bare pointers with weak/unique_ptr in module_lr to prevent memory leak (Useful information about how to use smart pointers in C++11)) by @maki49 in deepmodeling#4720
- Fix: DeePKS MD calculation restart by DMK and fixed the lack of DeePKS tests by @dyzheng in deepmodeling#4605
- Fix: eliminate compilaton error due to the #define private public macro in all unittests by @kirk0830 in deepmodeling#4733
- Fix: no Fail of read_input_serial_test.cpp by @Qianruipku in deepmodeling#4749
- Fix: Fix the memory leak cause by kbeta in read_pp.cpp by @sunliang98 in deepmodeling#4758
- Fix: fix a memory leak in module_gint by @dzzz2001 in deepmodeling#4721
- Fix: consider fractional electron number by @Qianruipku in deepmodeling#4770
- Fix: eliminate the implicit type conversion when calculating number of electrons of system and repair bessel_nao_rcut behavior by @kirk0830 in deepmodeling#4788
- Fix a memory leak in LR constructor by @maki49 in deepmodeling#4793
- Fix bugs in deepks_v_delta by @xuan112358 in deepmodeling#4780
- fix: wrong use of bessel_nao_rcut by @Qianruipku in deepmodeling#4792
- Fix the incorrect calculation of partial charge for multi-k-points under both PW and LCAO when symmetry is turned on by @AsTonyshment in deepmodeling#4803
Refactor
- Refactor: adjust cif file output by @hongriTianqi in deepmodeling#4584
- Refactor: remove EXX in LM and finally remove LM by @maki49 in deepmodeling#4679
- Refactor: remove comm_2D from Parallel_2D (Useful Information: BLACS encapsulates MPI and maintains its own internal data structure for MPI communicators) by @jinzx10 in deepmodeling#4658
- delete redundant setting in STRU by @Satinelamp in deepmodeling#4689
- Refactor: replace most of input varibles by parameter by @Qianruipku in deepmodeling#4693
- Refactor david: transitionally replace the Psi-type variables basis and psi by @Cstandardlib in deepmodeling#4701
- Refactor david: remove HamiltPW::sPsi inside DiagoDavid by @Cstandardlib in deepmodeling#4708
- Refactor: reorganized HSolverPW<T, Device>::solve function in HSolverPW by @haozhihan in deepmodeling#4675
- Refactor: Remove useless variables from read_pp.h. by @sunliang98 in deepmodeling#4711
- Remove redundant code about david in hsolver by @Cstandardlib in deepmodeling#4713
- Refactor: separate parallel_comm from parallel_global by @haozhihan in deepmodeling#4715
- Refactor ESolver, separate out some functions that will be moved to other places later. by @mohanchen in deepmodeling#4812
- Refactor: enable const md_para as md_line passing parameter by @YuLiu98 in deepmodeling#4808
- Refactor david: complete removal of Psi and Hamilt datatypes by @Cstandardlib in deepmodeling#4722
- Refactor hsolver: redesign david interface to be consistent with dav_subspace by @Cstandardlib in deepmodeling#4726
- Refactor: Remove most usage of pdiagh in hsolver_lcao.cpp by @Critsium-xy in deepmodeling#4742
- Refactor: remove the explicit use of std::make_unique use in unittest by @kirk0830 in deepmodeling#4745
- Remove init_basis_lcao from ESolver_LCAO to LCAO_domain (Useful information about how to clean up ESolver) by @mohanchen in deepmodeling#4746
- Refactor for the DeePKS module by @mohanchen in deepmodeling#4762
- Refactor david: add docs and standardize the code by @Cstandardlib in deepmodeling#4734
- Refactor: Remove usage of pdiag_parak in hsolver_lcao by @Critsium-xy in deepmodeling#4767
- Reduce the size of LCAO_deepks_torch.cpp by @mohanchen in deepmodeling#4773
- Style: add braces to avoid dangling else in module_io/restart.cpp by @Cstandardlib in deepmodeling#4774
- Refactor: refactor set_diagethr, cal_hsolerror, cal_hsolerror func in hsolver class by @haozhihan in deepmodeling#4769
- Refactor: move GPU deallocation code in david by @Cstandardlib in deepmodeling#4794
- Refactor DeepKS (the fourth one) by @mohanchen in deepmodeling#4784
- Refactor: reorder INPUT parameters by @Qianruipku in https://github.com/deepmodeling/a...
v3.7.1
CI
Fix
- Move Vxc output from after_scf to after_all_runners by @maki49 #4497
- Remove the dependency of write_dmr on globalV::NLOCAL by @pxlxingliang #4500
- Fix no STRU_ION_1 file output by @hongriTianqi #4506
- Fix init_Table_Spherical_Bessel with correct k & r mesh multiple by @jinzx10 #4516
- Fix the bug which SCF restart for unconverged cases by @WHUweiqingzhou #4538
- Fix compile failure of main.cpp by @Qianruipku #4638
- Fix MKL scalapack linking by @caic99 #4644
- Fix DeePKS MD/Relax/Cell-relax calculation convergence by @dyzheng #4575
- Fix oneAPI runtime error when build with libtorch by @caic99 #4613
- Fix esolver.cpp by @pxlxingliang #4612
- Fix misunderstanding absolute path as annotation by @Qianruipku #4629
- Fix missing head of running.log by @Qianruipku #4630
- Fix the memory problem in berryphase by @pxlxingliang #4631
- Fix wrong running_*.log by @Qianruipku #4648
- Fix MKL finding problem in pyabacus by @maki49 #4656
- Fix some minor security risks with ModuleESolver::init_esolver() by @PeizeLin #4590
- Fix some minor security risks with ModuleIO::read_wfc_nao by @PeizeLin #4558
- Address the atomicAdd error by @denghuilu #4234
- Fix cusolver error under multi-k situation by @dzzz2001 #4278
- Fix makefile cannot compile tests in module_pw by @Qianruipku #4270
- Fix orb_matrix file is not safely written/renamed by @kirk0830 #4299
- Fix the bug in dav gpu code and add more integrate test for GPU by @haozhihan #4265
Refactor
- Remove pdiagh pointer and redundant code by @Cstandardlib #4520
- Change nkstot_ibz and kvec_d_ibz from members into local variables by @maki49 #4515
- Remove some variables from LCAO_Matrix class by @WHUweiqingzhou #4519
- Remove BasedOnStyle: Microsoft from clang-format by @haozhihan #4522
- Remove the useless loc in veff by @pxlxingliang #4532
- Removal of ORB_table_phi by @jinzx10 #4503
- Remove check_structure() from UnitCell by @sunliang98 #4499
- Remove some members from LCAO_Matrix class by @WHUweiqingzhou #4546
- Replace the interface of out_dm by using DensityMatrix.DMK instead of loc.DM by @pxlxingliang #4509
- Remove initDiagh function in hsolver by @Cstandardlib #4527
- Fully refactored original obsolete lapack hsolver by @Critsium-xy #4581
- Separate Class diag_comm_info and Class const_nums by @haozhihan #4582
- Remove additional dependencies of parallel_reduce.h by @haozhihan #4585
- Remove Hloc, Hloc2, Sloc, Sloc2 in LCAO_Matrix by @dyzheng #4574
- Remove some variables from LCAO_Matrix class by @WHUweiqingzhou #4568
- Remove the useless variables and functions in unkOverlap_lcao by @pxlxingliang #4569
- Remove redundant Local_Orbital_Charge in class Veff and DeepKS by @PeizeLin #4572
- Use alicloud image sync by @caic99 #4567
- Fix the wrong type of ibz2bz by @maki49 #4577
- Login to use alicloud image sync by @caic99 #4573
- Fix get_S failed when smearing_method is gauss by @hongriTianqi #4571
- Correct the warning message about ntype by @pxlxingliang #4562
- Split the function into different functionalities by @A-006 #4566
- Remove module_device additional dependencies by @haozhihan #4579
- update version to 3.7.1 by @dyzheng in deepmodeling#4662
Full Changelog: v3.7.0...v3.7.1
v3.7.0
What's Changed
Feature
- Feature: add the output of energy for all esolver types in abacus.json by @pxlxingliang in deepmodeling#4413
- Feature: add command line option --check-input to check input only by @hongriTianqi in deepmodeling#4424
- Feature: support nupdown = 0.0 calculation by @hongriTianqi in deepmodeling#4425
- Feature: add function get_nbasis in class HContainer by @pxlxingliang in deepmodeling#4447
- Add INPUT parameter
bands_to_print
forget_wf
calculation by @AsTonyshment in deepmodeling#4466
Fix
- Fix: BLACS lib in unit test by @jinzx10 in deepmodeling#4338
- Fix: report error when fr-uspp used in linear calculations by @YuLiu98 in deepmodeling#4348
- Fix: address memory leak with single precision by @denghuilu in deepmodeling#4492
- Fix: correct the dimension of wfc_k_grid for allocating memory in istate_envelope function by @kirk0830 in deepmodeling#4494
- fix the output format in aveElecStatPot.py by @xdzhu in deepmodeling#4367
- Fix: support cross-boundary structures in orbital generation by @jinzx10 in deepmodeling#4376
- Fix: matrix bug in uspp by @YuLiu98 in deepmodeling#4397
- Fix: no inversion symmetry, reset symmetry of SOC calculation to -1 by @dyzheng in deepmodeling#4375
- Fix: improve the precision according to issue#4183 by @kirk0830 in deepmodeling#4460
- Fix: remove the warning_quit when there are more than 50 basis of one atom by @kirk0830 in deepmodeling#4461
- Fix: correct function read_abacus_lowf by @kirk0830 in deepmodeling#4433
- fix: fix the incorrect usage of macro #elif by @pxlxingliang in deepmodeling#4478
- Fix: bug in mulliken output by @hongriTianqi in deepmodeling#4463
Test
- Test: fix clang-format settings by @haozhihan in deepmodeling#4382
- Test: compare the relative difference for Onsager.txt by @Qianruipku in deepmodeling#4378
- test: update the path of SR.csr in examples/matrix_hs/out_s_multik/run.sh by @pxlxingliang in deepmodeling#4352
- Test: use origin python in test.yml to support numpy by @dyzheng in deepmodeling#4383
- Test: accelerate integrate tests by @YuLiu98 in deepmodeling#4358
- Test: fix precommit failure by @caic99 in deepmodeling#4426
- test: support reading threshold from file 'threshold' in integrate test by @pxlxingliang in deepmodeling#4450
- CI: modify clang-tidy setting by @haozhihan in deepmodeling#4488
- CI: enable clang-tidy in CI by pre-commit-config by @haozhihan in deepmodeling#4384
- CI: add clang-tidy
readability-braces-around-statements
setting by @haozhihan in deepmodeling#4390
Perf
- Perf: Optimize
hsolver
GPU code (useful information of GPU optimization: __syncwarp() should be used instead of __syncthreads()) by @OldDriver233 in deepmodeling#4295 - Perf: remove unnecessary sync for cuda ops by @caic99 in deepmodeling#4361
- Perf: reduce data transmission in the GPU code of module_gint by @dzzz2001 in deepmodeling#4356
- Perf: use less memory and optimize performance to calculate force and stress in pw base by @dyzheng in deepmodeling#4047
Docs
- doc: correct the typo in input-main.md by @pxlxingliang in deepmodeling#4423
- Docs: add docs for --version and --check-input by @hongriTianqi in deepmodeling#4428
Refactor
- Refactor: redesign the constructor and member variables of davsubspace class by @haozhihan in deepmodeling#4330
- Update before_all_runners in ESolver by @mohanchen in deepmodeling#4334
- Add and Remove some functions in klist.h etc by @Haerxile in deepmodeling#4257
- Update write_potential and "others" function in ESolver by @mohanchen in deepmodeling#4336
- Update the 'calculation' description in the documents and fix a small bug in elecstate_energy.cpp, update set_force and set_stress in LCAO_matrix by @mohanchen in deepmodeling#4340
- refactor: separate the print_psi from wfc_2d_to_grid and remove the invalid call by @pxlxingliang in deepmodeling#4268
- refactor: remove the usused LOC in getForceStress by @pxlxingliang in deepmodeling#4343
- Modify the average electrostatic potential script (Useful Information:How to plot electrostatic potential) by @xdzhu in deepmodeling#4350
- Refactor: replace cudamalloc and cudafree with cuda_mem_wrapper by @dzzz2001 in deepmodeling#4347
- Refactor: Remove DiagoIterAssist dependencies in DiagoDavid by @Cstandardlib in deepmodeling#4346
- CI: add pre-commit.ci to apply clang-format and clang-tidy fixes by @caic99 in deepmodeling#4225
- Using the standard CUDA <<<...>>> syntax to avoid compilation errors. by @LiuXiaohui123321 in deepmodeling#4362
- Refactor: add alternatives to functions
LOWF::gamma_file
andLOWF::allocate_k
by @kirk0830 in deepmodeling#4331 - Refactor: change
R_index
in classAtomPair
to typeModuleBase::vector3<int>
by @DylanWRh in deepmodeling#4243 - Refactor: remove Kubo-Greenwood and DOS functions from esolver by @Qianruipku in deepmodeling#4355
- Add header file when using memset() function to avoid compi… by @LiuXiaohui123321 in deepmodeling#4380
- Refactor: replace pointer to Diago_DavSubspace with object by @Cstandardlib in deepmodeling#4386
- Refactor: delete some useless files in
module_psi/kernel/
folder by @haozhihan in deepmodeling#4391 - bug: warning_quit when reading WFC file failed. by @pxlxingliang in deepmodeling#4388
- Refactor
istate_charge.cpp
using new DensityMatrix class by @AsTonyshment in deepmodeling#4392 - Refactor: remove unused class Output_Interface by @hongriTianqi in deepmodeling#4394
- Update LCAO_matrix and related functions and delete LCAO_gen_fixedH by @mohanchen in deepmodeling#4400
- Add several warning quits in
DensityMatrix
andGint
when parameters are not initialized by @AsTonyshment in deepmodeling#4389 - delete 31 double arrays in LCAO_matrix, add a new class named force_stress_arrays.h used in force and stress calcualtions by @mohanchen in deepmodeling#4407
- Refactor: Initial removal of Hamilt from diag_once func in Davsubspace by @haozhihan in deepmodeling#4398
- Refactor: Mulliken output codes with more flexible io interfaces by @hongriTianqi in deepmodeling#4359
- Refactor: extracted transpose parameter checking routine of gemm/v by @OldDriver233 in deepmodeling#4279
- Adding comments and modifying properties in the PW module by @DoctorDra in deepmodeling#4405
- Refactor: remove useless function from wavefunc by @Qianruipku in deepmodeling#4408
- Refactor: move snap_psibeta_half_tddft to module_tddft by @jinzx10 in deepmodeling#4414
- Refactor: Initial removal of psi::Psi<T, Device> from Diago_DavSubspace by @haozhihan in deepmodeling#4416
- Use Vector to replace new and delete in gint,spilt gint_tools and change Makefile,remove ORB in gint by @A-006 in deepmodeling#4353
- Refactor: 1. change "enum calculation_type" to "enum class calculation_type" for safety by @PeizeLin in deepmodeling#4319
- Refactor: delete some variables of LCAO_Matrix by @WHUweiqingzhou in deepmodeling#4415
- refactor: output sparse DMR by Output_HContainer instead of output_dm1.h/cpp by @pxlxingliang in deepmodeling#4374
- Refactor: replace pointer to Diago classes with object by @Cstandardlib in deepmodeling#4409
- Build: disable build libm by default by @caic99 in https://github.com/deepmodeling/a...
v3.6.5
What's Changed
Feature
- Feature : set deepks_equiv as input variable by @wenfei-li in deepmodeling#4195
- Feature: Input and output vector potential in tddft calculation by @ESROAMER in deepmodeling#4173
- Feature: a better looking of SCF iteration information on screen by @kirk0830 in deepmodeling#4185
- Feature : printing initial charge density by @wenfei-li in deepmodeling#4254
Fix
- Fix: address the atomicAdd error by @denghuilu in deepmodeling#4234
- Fix: replace
cal_stress
in GPU relax calculation,use NUM_STREAM in INPUT file and fix memory leak in force calculation by @A-006 in deepmodeling#4200 - Fix: add one whitespaces between each column of scf stdout by @kirk0830 in deepmodeling#4252
- Fix: fix the bug in dav gpu code and add more integrate test for GPU by @haozhihan in deepmodeling#4265
- Fix: makefile cannot compile tests in module_pw by @Qianruipku in deepmodeling#4270
- Fix: fix cusolver error under multi-k situation by @dzzz2001 in deepmodeling#4278
- Fix: present orb_matrix file is not safely written/renamed by @kirk0830 in deepmodeling#4299
Perf
- Perf: split code_gen.cpp to reduce compilation time by @dzzz2001 in deepmodeling#4210
- Perf: optimize single-process performence of cusolver by @dzzz2001 in deepmodeling#4191
- Perf: optimize single-process performence of cusolver by @dzzz2001 in deepmodeling#4191
- Perf: Incorporate OpenMP in the force and rho computations on the GPU by @dzzz2001 in deepmodeling#4280
- Perf: optimize psir_dot function in gint_rho_gpu.cu by @dzzz2001 in deepmodeling#4326
Refactor
- Refactor: Remove unused function
Gint_Gamma::vl_grid_to_2D
and related variables by @DylanWRh in deepmodeling#4229 - Refactor: rename diago_blas to diago_scalapack by @haozhihan in deepmodeling#4233
- Refactor: Modify class
BaseMatrix
by @DylanWRh in deepmodeling#4239 - Refactor: remove all globalV in diago_david by @haozhihan in deepmodeling#4211
- Refactor: simplified Parallel_2d interface by @jinzx10 in deepmodeling#4237
- Refactor: Replace modify the functions form cu files to cpp files by @A-006 in deepmodeling#4245
- Refactor: Encapsulation of K_point modules by @jwsyzy in deepmodeling#4240
- Refactor LCAO force: merge gamma and k by @maki49 in deepmodeling#4263
- Refactor: Remove Unused
chg_extrap = dm
INPUT Parameter Code by @AsTonyshment in deepmodeling#4285 - Refactor: Remove redundant function and modify comments in the PW module by @yang2022i in deepmodeling#4271
- Refactor: eliminate most use of
LOWF
instance in esolver - step 1 by @kirk0830 in deepmodeling#4273 - Refactor Separate the coupled GPU task functions. by @A-006 in deepmodeling#4281
- Refactor: Improve the parallel part of the K-point module by @jwsyzy in deepmodeling#4289
- Refactor: delete GlobalV::CURRENT_SPIN in code by @dyzheng in deepmodeling#4301
- Refactor: removal of GlobalC::UOT by @jinzx10 in deepmodeling#4322
Test
- Test: Modify the input file of examples/interface_wannier90 to run the Wannier90 interface correctly. by @jingan-181 in deepmodeling#4236
- test: modify the script to read energy from running_wcf_xx.log in example/bsse by @pxlxingliang in deepmodeling#4259
- CI: build docs only for main repo by @caic99 in deepmodeling#4306
Doc
- Docs: Doxygen Documentation Deployment by @jinzx10 in deepmodeling#4264
Full Changelog: v3.6.4...v3.6.5
v3.6.4
What's Changed
Doc
- correct the description of angle1 and angle2 in stru.md by @pxlxingliang in deepmodeling#4213
Feature
- loading equivariant deepks model by @wenfei-li in deepmodeling#4137
Feature
- Add PEXSI Support for Gamma Only LCAO Calculation by @Flying-dragon-boxing in deepmodeling#3561
- compute module_gint by GPU by @dzzz2001 in deepmodeling#4109
- enable uspp in upf100 format by @YuLiu98 in deepmodeling#4151
- enhance PSI Constructor: Lower Peak Device Memory Usage by @denghuilu in deepmodeling#4154
- set OpenMP thread num to a proper default value by @caic99 in deepmodeling#3943
Fix
- add ModuleBase::timer::tick("Symmetry","analy_sys"); by @PeizeLin in deepmodeling#4221
- address single precision error of dcu by @denghuilu in deepmodeling#4201
- default and force set symmetry=0 with efield by @maki49 in deepmodeling#4209
- enable out_mat_r in nscf calculation by @dyzheng in deepmodeling#4084
- fix HR output in tddft by @ESROAMER in deepmodeling#4150
- fix add-Hexx condition and remove the redundant OperatorEXX in NSCF by @maki49 in deepmodeling#4186
- fix compiling failure in CI test by @Critsium-xy in deepmodeling#4198
- fix intel compiler warnings by @denghuilu in deepmodeling#4166
- fix wrong output of S(k) in TDDFT calculation by @AsTonyshment in deepmodeling#4148
- memory: modify hpsi interface in diagH_subspace_init func by @haozhihan in deepmodeling#4167
- recover the behavior of print_tau for ase interface by @kirk0830 in deepmodeling#4197
- revert "Test: supplementary use of Memory::record to record memory (#4129) by @dyzheng in deepmodeling#4189
- various matrix elements calculations in orbital generation by @jinzx10 in deepmodeling#3940
- wrong memory record in vkb by @dyzheng in deepmodeling#4206
Refactor
- SphericalBesselTransformer cleanup by @jinzx10 in deepmodeling#4152
- Update ESolver by @mohanchen in deepmodeling#4157
- clean up BLACS initialization in Parallel_2D by @jinzx10 in deepmodeling#4207
- more light-weighted formatter library by @kirk0830 in deepmodeling#4114
- optimize cast_memory_op by @denghuilu in deepmodeling#4160
- refactor
psi::memory
namespace and addmodule_device
inmodule_base
by @haozhihan in deepmodeling#4141 - remove template on relax_driver by @hongriTianqi in deepmodeling#4172
- replace GlobalC in module_gint by @A-006 in deepmodeling#4164
Test
- supplementary use of Memory::record to record memory by @Religious-J in deepmodeling#4129
- zdot_real_op (and some other math ops) benchmark on cpu by @Critsium-xy in deepmodeling#3840
New Contributors
- @Flying-dragon-boxing made their first contribution in deepmodeling#3561
- @Religious-J made their first contribution in deepmodeling#4129
Full Changelog: v3.6.3...v3.6.4
v3.6.3
What's Changed
Feature
- Feature : descriptors for equivariant DeePKS by @wenfei-li in deepmodeling#3894
- Feature : reading and writing of h(r) and dm(r) in npz format by @wenfei-li in deepmodeling#4066
- Feature: write local-XC and EXX part of band(orbital) energy along with the XC matrix by @maki49 in deepmodeling#4013
- Feature: add device error check for functions within device.cpp by @denghuilu in deepmodeling#4106
- Improve output of H and S matrices: output matrices when the self-consistent iteration steps reach scf_nmax, even if the charge density doesn't converge. by @LiuXiaohui123321 in deepmodeling#4147
Docs
- Docs: add docs about parameter symmetry by @WHUweiqingzhou in deepmodeling#4073
- Docs: remove extra ``` by @caic99 in deepmodeling#4133
- Docs: delay release of deltaspin due to bugs by @hongriTianqi in deepmodeling#4146
Fix
- Fix: use std::abs() instead of abs() by @WHUweiqingzhou in deepmodeling#4076
- Add a warning quit when parameters do not match in read_wfc_nao.cpp by @AsTonyshment in deepmodeling#4087
- Fix: remove non-used pointer in Gint by @maki49 in deepmodeling#4009
- Fix: dcu cmake compilation error by @denghuilu in deepmodeling#4097
- Fix: add some hint about error by @WHUweiqingzhou in deepmodeling#4100
- Fix: solve the convergence problem of E value in dav_subspace method by @haozhihan in deepmodeling#4052
- Fix: bug of plot-tools for nspin=2 and shift=True case by @1041176461 in deepmodeling#4116
- Fix: No warning is given if KPT is ill set by @Luc1anoo in deepmodeling#4134
Refactor
- Refactor istate_charge.cpp to reduce dependence on other modules by @AsTonyshment in deepmodeling#4086
- Refactor: optimized cubic spline by @jinzx10 in deepmodeling#4081
- Replace “lm->paraV” with “paraV” to simpifier parameters by @A-006 in deepmodeling#4110
Build & Test
- Test: increase the time limit of CI test by @WHUweiqingzhou in deepmodeling#4098
- fix: pin the version of intel mpi to 2021.11 by @pxlxingliang in deepmodeling#4105
- CI: modify CUDA test by @dzzz2001 in deepmodeling#4083
- Build: pin Intel MPI version to avoid performance degradation by @caic99 in deepmodeling#4065
- CI: update runner config by @caic99 in deepmodeling#4088
- CI: build images with tags on self-hosted runner by @caic99 in deepmodeling#4089
- CI: fix the incorrect argument order in Autotest.sh by @dzzz2001 in deepmodeling#4118
New Contributors
- @Luc1anoo made their first contribution in deepmodeling#4134
- @LiuXiaohui123321 made their first contribution in deepmodeling#4147
Full Changelog: v3.6.2...v3.6.3